diff --git a/kernel/trunk/Tupfile.lua b/kernel/trunk/Tupfile.lua index 432f079b25..cfcc3610c8 100644 --- a/kernel/trunk/Tupfile.lua +++ b/kernel/trunk/Tupfile.lua @@ -1,5 +1,8 @@ if tup.getconfig("NO_FASM") ~= "" then return end tup.rule("echo lang fix " .. ((tup.getconfig("LANG") == "") and "en" or tup.getconfig("LANG")) .. " > %o", {"lang.inc"}) -tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 131072 %f %o " .. tup.getconfig("KERPACK_CMD"), "kernel.mnt") -tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 131072 %f %o -dextended_primary_loader=1" .. tup.getconfig("KERPACK_CMD"), "kernel.mnt.ext_loader") -tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 131072 %f %o -dpretest_build=1 -ddebug_com_base=0xe9", "kernel.mnt.pretest") +tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 262144 %f %o " .. tup.getconfig("KERPACK_CMD"), "kernel.mnt") +--tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 262144 %f %o -s %o.fas" .. tup.getconfig("KERPACK_CMD"), {"kernel.mnt", extra_outputs = {"kernel.mnt.fas"}}) +--tup.rule({"kernel.mnt.fas", extra_inputs = {"kernel.mnt"}}, "symbols %f %o", "kernel.mnt.sym") +--tup.rule({"kernel.mnt.fas", extra_inputs = {"kernel.mnt"}}, "listing %f %o", "kernel.mnt.lst") +tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 262144 %f %o -dextended_primary_loader=1" .. tup.getconfig("KERPACK_CMD"), "kernel.mnt.ext_loader") +tup.rule({"kernel.asm", extra_inputs = {"lang.inc"}}, "fasm -m 262144 %f %o -dpretest_build=1 -ddebug_com_base=0xe9", "kernel.mnt.pretest") diff --git a/kernel/trunk/kernel.asm b/kernel/trunk/kernel.asm index dd89e3e681..15d4bb046a 100644 --- a/kernel/trunk/kernel.asm +++ b/kernel/trunk/kernel.asm @@ -115,9 +115,9 @@ B32: cld rep stosd -; Clear kernel undefined globals and slots +; Clear kernel undefined globals and some more (what exactly?) mov edi, endofcode - OS_BASE - mov ecx, VGABasePtr - endofcode ; why uglobals_size isn't enough? + mov ecx, 0x90000 ; why uglobals_size isn't enough? sub ecx, edi shr ecx, 2 rep stosd