# HG changeset patch # User Pascal Bellard # Date 1563124004 -7200 # Node ID 041c7e1cb0eb91f015df2e6b7a3b886ed2d22ece # Parent 97b8cb8c268b2a3d4685dd4acee33dd2dd623093 linld: DOS=UMB,LOADHIGH & co support diff -r 97b8cb8c268b -r 041c7e1cb0eb linld/stuff/src/JUMP.ASM --- a/linld/stuff/src/JUMP.ASM Sun Jul 14 10:28:47 2019 +0200 +++ b/linld/stuff/src/JUMP.ASM Sun Jul 14 19:06:44 2019 +0200 @@ -152,13 +152,12 @@ call near @@isbzimage ; pop cs ; ds=es=ss ; prepare memcpy32 size & srcofs param to move zImage pm + ifndef NO386 + push 8 ; size hi + else mov dx,8 - cmp ax,dx ; buf > 80000h ? - ja @@bufhigh - sub dx,ax - inc dx ; up to 90000h-1 -@@bufhigh: push dx ; size hi + endif push cx ; size lo=up to 512k push ax ; src ofs hi = pm.fallback diff -r 97b8cb8c268b -r 041c7e1cb0eb linld/stuff/src/LOAD.CPP --- a/linld/stuff/src/LOAD.CPP Sun Jul 14 10:28:47 2019 +0200 +++ b/linld/stuff/src/LOAD.CPP Sun Jul 14 19:06:44 2019 +0200 @@ -216,6 +216,10 @@ (u16)(topseg()>>12) || _pm_high) { m->fallback = base_himem; } + if (((u16 *)&m->fallback)[1] == 0) { + ((u16 *)&m->fallback)[0] &= 0; + ((u16 *)&m->fallback)[1]++; // m->fallback = _64k; + } load_image(m); return version_string;