clean:
	rm *.o
	rm main.bin
	rm main_boot.bin
	rm main.img

clean_obj:
	rm *.o

kernel:
	wasm -0 src/init.asm
	wcc -0 -ms src/cstdlib/string.c
	wasm -0 src/kb/kb_int16.asm
	wcc -0 -ms src/kb/kb.c
	wasm -0 src/term/cursor_int10.asm
	wasm -0 src/term/term_int10.asm
	wcc -0 -ms src/term/vga.c
	wcc -0 -ms src/term/term.c
	wcc -0 -ms src/shell/shell.c
	wcc -0 -ms src/shell/parse.c
	wcc -0 -ms src/main.c
	wlink @mini16.lnk
	make clean_obj

bootloader:
	wasm -0 src/boot.asm
	wlink @mini16_boot.lnk
	make clean_obj

boot_img:
	python mkboot.py

all:
	make bootloader
	make kernel
	make boot_img

start:
	qemu-system-i386 -fda main.img
