union REGS CPURegs;
unsigned int EMSVer = 0;
- byte EMS_status;
+ //byte EMS_status;
unsigned totalEMSpages,freeEMSpages,EMSpageframe,EMSpagesmapped,EMShandle;
totalEMSpages = freeEMSpages = EMSpageframe = EMSpagesmapped = 0;
mov ah,EMS_STATUS
int EMS_INT // make sure EMS hardware is present
or ah,ah
- mov [EMS_status],ah
+ //mov [EMS_status],ah
jnz error
mov ah,EMS_VERSION
return 0;
}
-/*
-SUB EMS.MapXPages (PhysicalStart, LogicalStart, NumPages, Handle)\r
+void MM_MapXEMS(mminfo_t *mm)
+{
+
+//SUB EMS.MapXPages (PhysicalStart, LogicalStart, NumPages, Handle)\r
\r
- 'Maps up to 4 logical EMS pages to physical pages in the page frame, where:\r
- '\r
- 'PhysicalStart = Physical page first logical page is mapped to\r
- 'LogicalStart = First logical page to map\r
- 'NumPages = Number of pages to map (1 to 4)\r
- 'Handle = EMS handle logical pages are allocated to\r
+ //Maps up to 4 logical EMS pages to physical pages in the page frame, where:\r
+ //PhysicalStart = Physical page first logical page is mapped to\r
+ //LogicalStart = First logical page to map\r
+ //NumPages = Number of pages to map (1 to 4)\r
+ //Handle = EMS handle logical pages are allocated to\r
\r
- 'Create a buffer containing the page information\r
- FOR x = 0 TO NumPages - 1\r
- MapInfo$ = MapInfo$ + MKI$(LogicalStart + x) + MKI$(PhysicalStart + x)\r
- NEXT\r
+ /*//Create a buffer containing the page information\r
+// FOR x = 0 TO NumPages - 1\r
+// MapInfo$ = MapInfo$ + MKI$(LogicalStart + x) + MKI$(PhysicalStart + x)\r
+// NEXT*/\r
\r
- Regs.ax = &H5000 'Map the pages in the buffer\r
- Regs.cx = NumPages 'to the pageframe\r
- Regs.dx = Handle\r
- Regs.ds = VARSEG(MapInfo$)\r
- Regs.si = SADD(MapInfo$)\r
- InterruptX &H67, Regs, Regs\r
- EMS.Error = (Regs.ax AND &HFF00&) \ &H100 'Store the status code\r
+// Regs.ax = &H5000 //Map the pages in the buffer\r
+// Regs.cx = NumPages //to the pageframe\r
+// Regs.dx = Handle\r
+// Regs.ds = VARSEG(MapInfo$)\r
+// Regs.si = SADD(MapInfo$)\r
+// InterruptX &H67, Regs, Regs\r
+// EMS.Error = (Regs.ax AND &HFF00&) \ &H100 //Store the status code\r
\r
-END SUB
-*/
-void MM_MapXEMS(mminfo_t *mm)
-{
-
+//END SUB
}
//==========================================================================
if(!scan)
{
- printf("MM_FreePtr: Block not found!");
+ printf("MM_FreePtr: Block not found!\n");
return;
}
free (mm->nearheap);
dumpfile = fopen ("mmdump.txt","w");
if (!dumpfile){
- printf("MM_DumpData: Couldn't open MMDUMP.TXT!");
+ printf("MM_DumpData: Couldn't open MMDUMP.TXT!\n");
return;
}
} while (lowest != 0xffff);
fclose (dumpfile);
- printf("MMDUMP.TXT created.");
+ printf("MMDUMP.TXT created.\n");
}
//==========================================================================