- All tests passing
- Updated README and image - Added itoa to stdlib - Implemented modulus math for bcc which has none in the stdlib - Updated the build scripts to work on Ubuntu 22 - Added bochsrc with some useful overrides (new bochs bios in ubuntu is broken, use the legacy) - Made most of stdlib compile and run under GNU C for testing - Improved the tokenizer so it will return tokens of more than one character - Moved the basic parser from using void pointers to store values to using basic_value unions to represent possible types - Added tests for the basic tokenizer
This commit is contained in:
3
Makefile
3
Makefile
@@ -13,7 +13,7 @@ kernel.bin: src/screen.o src/conio.o src/string.o src/stdlib.o src/basic.o src/k
|
||||
asm/kernel_syms.S: kernel.bin
|
||||
cat ld86.out | \
|
||||
grep -E "^\s+kernel\s+[a-zA-Z0-9_]+ 0 [0-9]+" | \
|
||||
python -c "import sys; print '\n'.join([\"_extern_c%s:\n jmp 0x1000:0x%04x\" % (x.lstrip(' ').replace('kernel', '').lstrip(' ').split(' ')[0], int(x.lstrip(' ').replace('kernel', '').lstrip(' ').split(' ')[4], 16)) for x in sys.stdin.readlines()])" > asm/kernel_syms.S
|
||||
python3 -c "import sys; print('\n'.join([\"_extern_c%s:\n jmp 0x1000:0x%04x\" % (x.lstrip(' ').replace('kernel', '').lstrip(' ').split(' ')[0], int(x.lstrip(' ').replace('kernel', '').lstrip(' ').split(' ')[4], 16)) for x in sys.stdin.readlines()]))" > asm/kernel_syms.S
|
||||
|
||||
boot.bin: asm/kernel_syms.S asm/bootloader.S asm/bootloader.S
|
||||
cd asm && nasm bootloader.S -f bin -o ../$@
|
||||
@@ -37,3 +37,4 @@ test:
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f boot.bin asm/*o src/*o
|
||||
cd tests && make clean
|
||||
|
||||
Reference in New Issue
Block a user