From 86a3bdcff4baaa723755ec3bfa1417696aa9ff1b Mon Sep 17 00:00:00 2001 From: sparky4 Date: Fri, 3 Jul 2015 16:47:45 -0500 Subject: [PATCH] fack!! modified: exmmtest.exe modified: src/lib/16_mm.c modified: src/lib/16_mm.h --- exmmtest.exe | Bin 45831 -> 45707 bytes src/lib/16_mm.c | 32 +++++++++++++++++--------------- src/lib/16_mm.h | 9 +++++---- 3 files changed, 22 insertions(+), 19 deletions(-) diff --git a/exmmtest.exe b/exmmtest.exe index 94072751a86cbaba097e67b1426913cef5cd77d0..2a9c45f43ce3522e95982d40e642add6090b8833 100644 GIT binary patch delta 17913 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 diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 3ee4fc5f..87246929 100644 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -341,7 +341,7 @@ boolean MML_CheckForXMS(mminfo_t *mm) void MML_SetupXMS(mminfo_t *mm, mminfotype *mmi) { - word base,size; + unsigned base,size; getmemory: __asm @@ -371,9 +371,10 @@ gotone: mov [size],dx done: } + printf("base=%u ", base); printf("size=%u\n", size); MML_UseSpace(base,size, mm); - mmi->XMSmem += size*16; - mm->UMBbase[mm->numUMBs] = base; + mmi->XMSmem += ((dword)size)*16; + mm->UMBbase[mm->numUMBs] = (dword)base; mm->numUMBs++; if(mm->numUMBs < MAXUMBS) goto getmemory; @@ -442,16 +443,17 @@ void MML_UseSpace(unsigned segstart, dword seglength, mminfo_t *mm) // // take the given range out of the block // - oldend = scan->start + scan->length; - extra = oldend - (segstart+seglength); + oldend = scan->start + (dword)scan->length; + extra = oldend - (dword)(segstart+seglength); //++++emsver stuff! if(extra>0xfffflu) { - segm=(extra%(0xfffflu))-1; + /*segm=(extra%(0xfffflu))-1; fat=segm*(0xfffflu); - extra-=fat; -//printf("extra=%lu ", extra); -//printf("segm=%lu\n", segm); + extra-=fat;*/ +/*printf("extra=%lu ", extra); +printf("oldend=%lu ", oldend); +printf("segm=%lu\n", segm);*/ printf("MML_UseSpace: Segment spans two blocks!\n"); } @@ -469,7 +471,7 @@ void MML_UseSpace(unsigned segstart, dword seglength, mminfo_t *mm) // segm--; - if(0xfffflu > extra > 0) + if(extra > 0) { MM_GetNewBlock(mm); mm->mmnew->next = scan->next; @@ -598,7 +600,7 @@ void MM_Startup(mminfo_t *mm, mminfotype *mmi) // // detect EMS and allocate up to 64K at page frame // - printf("EMS\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"); //bug! + printf("EMS!\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"); //bug! mmi->EMSmem = 0; for(i = 1;i < __argc;i++) { @@ -612,11 +614,11 @@ void MM_Startup(mminfo_t *mm, mminfotype *mmi) MML_SetupEMS(mm); // allocate space printf("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"); //bug! //TODO: EMS4! AND EMS 3.2 MASSIVE DATA HANDLMENT! - MML_UseSpace(mm->EMSpageframe,((dword)mm->EMSpagesmapped)*0x4000lu, mm); + MML_UseSpace(mm->EMSpageframe,(mm->EMSpagesmapped)*0x4000lu, mm); //printf("EMS3\n"); MM_MapEMS(mm); // map in used pages //printf("EMS4\n"); - mmi->EMSmem = ((dword)mm->EMSpagesmapped)*0x4000lu; + mmi->EMSmem = (mm->EMSpagesmapped)*0x4000lu; } // @@ -632,7 +634,7 @@ emsskip: // printf("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"); //bug! if(MML_CheckForXMS(mm)) { -//printf("XMS!\n"); + printf("XMS!\n"); MML_SetupXMS(mm, mmi); // allocate as many UMBs as possible } @@ -1158,7 +1160,7 @@ void MM_Report(mminfo_t *mm, mminfotype *mmi) printf("freeEMSpages=%u\n", mm->freeEMSpages); printf("EMSpageframe=%x\n", mm->EMSpageframe); } - if(MML_CheckForXMS(mm)) printf("XMSaddr=%x\n", *XMSaddr); + if(MML_CheckForXMS(mm)) printf("XMSaddr=%Fp\n", *XMSaddr); printf("near=%lu\n", mmi->nearheap); printf("far=%lu\n", mmi->farheap); printf("EMSmem=%lu\n", mmi->EMSmem); diff --git a/src/lib/16_mm.h b/src/lib/16_mm.h index 373af5e3..38279368 100644 --- a/src/lib/16_mm.h +++ b/src/lib/16_mm.h @@ -110,12 +110,12 @@ extern void (* XMSaddr) (void); // far pointer to XMS driver #define PURGEMASK 0xfffc #define BASEATTRIBUTES 0 // unlocked, non purgable -#define MAXUMBS 10 +#define MAXUMBS 12 typedef struct mmblockstruct { - //unsigned start,length; - dword start,length; + unsigned start,length; + //dword start,length; unsigned attributes; memptr *useptr; // pointer to the segment start struct mmblockstruct huge *next; @@ -131,7 +131,8 @@ typedef struct void *nearheap; unsigned totalEMSpages,freeEMSpages,EMSpageframe,EMSpagesmapped,EMShandle; unsigned int EMSVer; - word numUMBs,UMBbase[MAXUMBS]; + unsigned numUMBs,UMBbase[MAXUMBS]; + //dword numUMBs,UMBbase[MAXUMBS]; mmblocktype huge mmblocks[MAXBLOCKS],huge *mmhead,huge *mmfree,huge *mmrover,huge *mmnew; } mminfo_t; -- 2.11.0