X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=Makefile;h=2a6c1d414f3e0e8a04b24df81cf2ec4ae9ffca68;hb=debe646a88734db7b10af422cc377a1abf6e2cd2;hp=9856b63fcfe611e0a0635fa366a5c4040aeb0ece;hpb=c3994cc0fa4362bb564195facf6c2195322e46bc;p=loadnothing.git diff --git a/Makefile b/Makefile index 9856b63..2a6c1d4 100644 --- a/Makefile +++ b/Makefile @@ -2,27 +2,19 @@ default_target: vm .PHONY: vm clean stage1/boot.bin: stage1/boot.asm - nasm -f bin -o stage1/boot.bin stage1/boot.asm + nasm -DSTAGE2SIZE=$$(du -b stage2/target/x86-loadnothing/release/stage2 | cut -f1) -f bin -o stage1/boot.bin stage1/boot.asm -magic.bin: - echo -en "\x55\xAA" > magic.bin +stage2/target/x86-loadnothing/release/stage2: stage2/src/main.rs stage2/src/vga.rs + cd stage2 && cargo build --release -stage2/target/x86_64-loadnothing/debug/stage2: stage2/src/main.rs - cd stage2 && cargo build - -nothing.img: magic.bin stage1/boot.bin stage2/target/x86_64-loadnothing/debug/stage2 - dd if=/dev/zero of=nothing.img bs=32M count=1 - parted -s nothing.img mklabel msdos - parted -s -a optimal nothing.img mkpart primary fat32 16M 100% - doas losetup /dev/loop1 nothing.img - doas mkfs.fat /dev/loop1p1 - doas losetup -d /dev/loop1 +nothing.img: stage2/target/x86-loadnothing/release/stage2 stage1/boot.bin + cp -p base.img nothing.img dd if=stage1/boot.bin of=nothing.img bs=1 count=446 conv=notrunc - dd if=magic.bin of=nothing.img bs=1 seek=510 count=2 conv=notrunc - dd if=stage2/target/x86_64-loadnothing/debug/stage2 of=nothing.img bs=512 seek=1 conv=notrunc + echo -en "\x55\xAA" | dd of=nothing.img bs=1 seek=510 count=2 conv=notrunc + dd if=stage2/target/x86-loadnothing/release/stage2 of=nothing.img bs=512 seek=1 conv=notrunc vm: nothing.img - qemu-system-x86_64 -hda nothing.img + qemu-system-x86_64 -drive format=raw,file=nothing.img clean: rm -f magic.bin stage1/boot.bin nothing.img