diff options
Diffstat (limited to 'bootblocks/relocate.c')
-rw-r--r-- | bootblocks/relocate.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/bootblocks/relocate.c b/bootblocks/relocate.c index f409a4e..a2cced0 100644 --- a/bootblocks/relocate.c +++ b/bootblocks/relocate.c @@ -29,13 +29,17 @@ unsigned newseg; /* Where do we start */ if(memseg == 0) { + extern int _heap_top; memseg = __get_cs(); codelen = __get_ds()-memseg; __set_es(memseg-2); - if (__deek_es(0) == 0x0301 ) { - memlen = __deek_es( 24 ); - memlen >>=4; - } + + memlen = (((int)&_heap_top) >> 4); + + /* + if (__deek_es(0) == 0x0301 ) memlen = (__deek_es(24) >> 4); + */ + if( memlen == 0 ) memlen = 0x1000; memlen += codelen; __set_es(es); |