wok-current rev 19637
linld: not above topseg()
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Fri Jan 20 11:51:22 2017 +0100 (2017-01-20) |
parents | 76087975885f |
children | 1fe20f9ae3ad |
files | linld/stuff/src/HIMEM.CPP linld/stuff/src/JUMP.ASM |
line diff
1.1 --- a/linld/stuff/src/HIMEM.CPP Fri Jan 20 09:55:25 2017 +0100 1.2 +++ b/linld/stuff/src/HIMEM.CPP Fri Jan 20 11:51:22 2017 +0100 1.3 @@ -30,8 +30,8 @@ 1.4 #endif 1.5 } 1.6 struct image_himem *m = ± 1.7 + vm2rm(); 1.8 if(((u16 *)&m->fallback)[1] >= 0x10) m->fallback = _1m; // >= _1m ? 1.9 - vm2rm(); 1.10 if(m->bufv==0) { 1.11 // Move kernel 1.12 memcpy_image(m);
2.1 --- a/linld/stuff/src/JUMP.ASM Fri Jan 20 09:55:25 2017 +0100 2.2 +++ b/linld/stuff/src/JUMP.ASM Fri Jan 20 11:51:22 2017 +0100 2.3 @@ -37,6 +37,7 @@ 2.4 extrn _topseg:near 2.5 call near _topseg 2.6 mov es,ax 2.7 + xchg ax,bx 2.8 else 2.9 push 9000h 2.10 pop es 2.11 @@ -66,6 +67,13 @@ 2.12 movsb 2.13 cmp al,cl ; load high ? 2.14 jne isbzimage 2.15 + ifdef NO386 2.16 + add bh,9 2.17 + push bx ; topseg()+0x0900 2.18 + else 2.19 + push 9900h ; 4096 bytes for cmdline 2.20 + ;push 9820h ; 512 bytes for cmdline 2.21 + endif 2.22 ; finish loading 2.23 extrn @last_ditch$qv:near 2.24 push cs 2.25 @@ -73,13 +81,6 @@ 2.26 mov ax,[word _pm+2+2] ; get pm->fallback high word 2.27 ; self move 2.28 ;cld 2.29 - ifdef NO386 2.30 - mov cx,9900h 2.31 - push cx 2.32 - else 2.33 - push 9900h ; 4096 bytes for cmdline 2.34 - ;push 9820h ; 512 bytes for cmdline 2.35 - endif 2.36 pop es ; min 2048 bytes for stack 2.37 xor si,si ; A000 -9000 -0800(>movedend) 2.38 xor di,di ; set ZF