From c85b21beda0b65118d6128df6e397c6f95c50281 Mon Sep 17 00:00:00 2001 From: ladevieq Date: Wed, 12 Nov 2025 13:01:27 +0100 Subject: Initial commit --- build.bat | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 build.bat (limited to 'build.bat') diff --git a/build.bat b/build.bat new file mode 100644 index 0000000..da1fbba --- /dev/null +++ b/build.bat @@ -0,0 +1,29 @@ +IF EXIST build ( + rmdir /s /q build +) + +mkdir build + +:: bootloader +nasm -g -O0 -f bin -o build/boot.bin src/boot.s + +:: kernel +clang --target=x86_64-unknown-linux-gnu -c src/kernel.c -o build/kernel.o -std=c23 -ffreestanding -Wall -Wextra +ld.lld -T linker.ld build/kernel.o -o build/kernel.bin + +:: create img +copy ref.img build/disk.img +:: qemu-img create -f raw build/disk.img 8M +:: qemu-img dd if=build/boot.bin of=build/disk.img +:: qemu-img dd count=2 skip=1 if=build/kernel.o of=build/disk.img + +:: -drive is equivalent to -hda +:: bootloader +::start qemu-system-x86_64 -drive file=build/boot.bin,index=0,media=disk,format=raw -s -S +:: img with bootload +start qemu-system-x86_64 -drive file=ref.img,index=0,media=disk,format=raw -s -S +:: start qemu-system-x86_64 -drive file=fat:build/boot.bin,index=0,media=disk,format=raw -s -S + +:: start lldb --arch x86_64 -s dbgcmd + +:: start windbgx -v -kx exdi:PathToSrvCfgFiles=exdiConfigData.xml,CLSID={29f9906e-9dbe-4d4b-b0fb-6acf7fb6d014},Kd=Guess,DataBreaks=Exdi -- cgit v1.3