From: HimbeerserverDE Date: Thu, 15 Sep 2022 17:27:27 +0000 (+0200) Subject: Manual memory origin fix X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=f556a0940df3de8f7720a0a1e478ac25e0b47d92;p=loadnothing.git Manual memory origin fix --- diff --git a/Makefile b/Makefile index 8656af5..4c6632e 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ magic.bin: stage2/target/x86-loadnothing/release/stage2: stage2/src/main.rs cd stage2 && cargo rustc --release -- --emit=obj - ld -m elf_i386 -o stage2/target/x86-loadnothing/release/stage2.bin --oformat binary stage2/target/x86-loadnothing/release/stage2 -Ttext=0x7e00 + ld -T linker.ld -m elf_i386 -o stage2/target/x86-loadnothing/release/stage2.bin --oformat binary stage2/target/x86-loadnothing/release/stage2 -Ttext=0x7e00 mv stage2/target/x86-loadnothing/release/stage2.bin stage2/target/x86-loadnothing/release/stage2 nothing.img: magic.bin stage2/target/x86-loadnothing/release/stage2 stage1/boot.bin diff --git a/linker.ld b/linker.ld new file mode 100644 index 0000000..b9fb3e5 --- /dev/null +++ b/linker.ld @@ -0,0 +1,11 @@ +MEMORY { + RAM : org = 0x7e00, l = 12K +} + +SECTIONS { + . = 0x7e00; + .text : + { + *(.text) + } > RAM +} diff --git a/stage2/x86-loadnothing.json b/stage2/x86-loadnothing.json index ee812b3..556f46e 100644 --- a/stage2/x86-loadnothing.json +++ b/stage2/x86-loadnothing.json @@ -12,5 +12,6 @@ "panic-strategy": "abort", "disable-redzone": true, "features": "-mmx,-sse,+soft-float", - "cpu": "pentium" + "cpu": "pentium", + "relocation-model": "static" }