diff --git a/bootloader/boot.asm b/bootloader/boot.asm index e321a10da5c818ffd616f9b3dd7f1e2bd1e130c8..ff513b2415bb64d4e07f4dfdf84ab8322e9380ea 100644 --- a/bootloader/boot.asm +++ b/bootloader/boot.asm @@ -1,3 +1,5 @@ +; This code file would be compiled and placed in MBR first block. + [bits 16] [org 0x7c00] diff --git a/kernel/Makefile b/kernel/Makefile index b38f33447dac45d9f7fddec355c80d0afb82a624..da488939cb7beaf9697c8027b97a633a5cfe14b2 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -2,13 +2,15 @@ assemble: kernel head ld -o kernel.img -Ttext 0x7e00 --oformat binary image_head.o kernel.o -m elf_i386 # Sector 1 = bootloader, Sector 2 - (512B TO 64K) = kernel + # Extend kernel.img to correct size. + test $$(stat -c %s kernel.img) -le 65024 truncate --size=65024 kernel.img head: nasm -f elf image_head.asm -o image_head.o kernel: - gcc -ffreestanding -fno-pie -c kernel.c -o kernel.o -m32 + g++ -ffreestanding -fno-pie -c kernel.cc -o kernel.o -m32 clean: rm *.o *.img diff --git a/kernel/kernel.c b/kernel/kernel.cc similarity index 100% rename from kernel/kernel.c rename to kernel/kernel.cc