modified: exmmtest.exe
modified: src/lib/16_mm.c
modified: src/lib/16_mm.h
}
//==========================================================================
}
//==========================================================================
void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm)
{
mmblocktype huge *scan,huge *last;
void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm)
{
mmblocktype huge *scan,huge *last;
dword oldend;
dword extra;
dword oldend;
dword extra;
//find out how many blocks it spans!
if(seglength>0xffffu)
{
//find out how many blocks it spans!
if(seglength>0xffffu)
{
-// segm=seglength/0x4000u;
- segm=seglength/0xffffu;
+// scan->segm=seglength/0x4000u;
+ scan->segm=seglength/0xffffu;
- if(segm>1/*extra>0xfffflu*/)
+ if(scan->segm>1/*extra>0xfffflu*/)
oldend = scan->start + scan->length;
extra = oldend - (segstart+seglength);
oldend = scan->start + scan->length;
extra = oldend - (segstart+seglength);
-printf("segm=%u ", segm);
+printf("segm=%u ", scan->segm);
printf("ex=%lu ", extra);
printf("start+seglen=%lu ", segstart+seglength);
printf("len=%u ", scan->length);
printf("ex=%lu ", extra);
printf("start+seglen=%lu ", segstart+seglength);
printf("len=%u ", scan->length);
//dword start,length;
//word start;
//dword length;
//dword start,length;
//word start;
//dword length;
- //byte segm; //how many 64kb segment blocks it takes up if there is many data!
+ word segm; //how many 64kb segment blocks it takes up if there is many data!
unsigned attributes;
memptr *useptr; // pointer to the segment start
struct mmblockstruct huge *next;
unsigned attributes;
memptr *useptr; // pointer to the segment start
struct mmblockstruct huge *next;
{
memptr bufferseg;
boolean mmstarted, bombonerror, mmerror;
{
memptr bufferseg;
boolean mmstarted, bombonerror, mmerror;
void huge *farheap;
void *nearheap;
//byte EMS_status;
void huge *farheap;
void *nearheap;
//byte EMS_status;