disk_numsec = 720 #disk_numsec = 2880 bin = bootldr img = bootldr.img CC = ia16-elf-gcc LD = ia16-elf-ld CFLAGS = -march=i8088 -mtune=i8088 -DFLOPPY360 $(img): $(bin) dd if=/dev/zero of=$@ bs=512 count=$(disk_numsec) dd if=$< of=$@ bs=512 conv=notrunc $(bin): boot/boot.o boot/boot2.o boot/main.o $(LD) -T boot.ld -Map boot.map -o $@ $^ %.o: %.asm nasm -o $@ -f elf $< .PHONY: clean clean: rm -f boot/*.o $(bin) .PHONY: run run: $(img) qemu-system-i386 -fda $(img) -serial file:serial.log .PHONY: debug debug: $(img) qemu-system-i386 -fda $(img) -serial file:serial.log -s -S .PHONY: disasm disasm: $(bin) ndisasm -o 0x7c00 $< >dis1 ndisasm -o 0x80000 -e 512 $< >dis2