From 2fa06f324b3d3f955a4f6dc59bc9eb57e0ca22a6 Mon Sep 17 00:00:00 2001 From: sparky4 Date: Mon, 6 Jul 2015 12:17:36 -0500 Subject: [PATCH] ok! modified: exmmtest.exe modified: src/lib/16_mm.c modified: src/lib/16_mm.h --- exmmtest.exe | Bin 46057 -> 46170 bytes src/lib/16_mm.c | 8 +++++--- src/lib/16_mm.h | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/exmmtest.exe b/exmmtest.exe index ac2747e9e2ffa5f8062ff53bfafa62d23f663ba0..70d36418892f869e3b6182dc6baa8bb6068d0d46 100644 GIT binary patch delta 14729 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 delta 13653 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 diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 7ef1d7e0..f6477b4d 100644 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -425,11 +425,12 @@ void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm) mmblocktype huge *scan,huge *last; dword oldend; ///*d*/word fat=0; - word segm=0; dword extra; scan = last = mm->mmhead; mm->mmrover = mm->mmhead; // reset rover to start of memory + scan->segm=1; + scan->segmlen=seglength; // // search for the block that contains the range of segments @@ -440,9 +441,10 @@ void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm) scan = scan->next; } + //find out how many blocks it span! if(seglength>0xfffflu) { - segm=seglength/0xfffflu; + scan->segm=seglength/0xfffflu; } // @@ -460,8 +462,8 @@ void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm) inc ax mov ds,ax }*/ +printf("segm=%u ", scan->segm); printf("ex=%lu ", extra); -printf("segm=%u ", segm); printf("len=%u ", scan->length); printf("segsta=%u ", segstart); printf("seglen=%lu\n", seglength); diff --git a/src/lib/16_mm.h b/src/lib/16_mm.h index 1ef85c95..0b2bc451 100644 --- a/src/lib/16_mm.h +++ b/src/lib/16_mm.h @@ -118,6 +118,8 @@ typedef struct mmblockstruct //dword start,length; //word start; //dword length; + word segm; //how many 64kb segment blocks it takes up if there is many data! + dword segmlen; //length of the multi segment data unsigned attributes; memptr *useptr; // pointer to the segment start struct mmblockstruct huge *next; -- 2.39.5