From 5ca2764460883f5e9a5bd83db00f242ea1272e33 Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Thu, 30 Jul 2009 12:28:45 -0700 Subject: [PATCH] memdisk: move temporary variables away from the EDD data block Move a couple of variables away from the EDD data block. Without this change, FreeDOS doesn't boot on Thinkpads. Unfortunately, this should have been a null change, so it is really not clear why this happens. Stack overflows have been ruled out. Probably need to examine the FreeDOS kernel in some detail. Signed-off-by: H. Peter Anvin --- memdisk/memdisk.inc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/memdisk/memdisk.inc b/memdisk/memdisk.inc index 266b08a..2699c34 100644 --- a/memdisk/memdisk.inc +++ b/memdisk/memdisk.inc @@ -945,6 +945,12 @@ Mover_dst2: db 0 ; High 8 bits of source addy Mover_dummy2: dd 0, 0, 0, 0 ; More space for the BIOS alignb 4, db 0 +Stack dd 0 ; Saved SS:ESP on invocation + dw 0 +SavedAX dw 0 ; AX saved on invocation +Recursive dw 0 ; Recursion counter + + alignb 4, db 0 MemDisk_Info equ $ ; Pointed to by installation check MDI_Bytes dw MDI_Len ; Total bytes in MDI structure MDI_Version db VERSION_MINOR, VERSION_MAJOR ; MEMDISK version @@ -1006,12 +1012,6 @@ EDD_DPT: %endif ; End patch area - alignb 4, db 0 -Stack dd 0 ; Saved SS:ESP on invocation - dw 0 -SavedAX dw 0 ; AX saved on invocation -Recursive dw 0 ; Recursion counter - alignb 4, db 0 ; We *MUST* end on a dword boundary E820Table equ $ ; The installer loads the E820 table here -- 2.7.4