OSDN Git Service

hmmm
authorsparky4 <sparky4@cock.li>
Tue, 7 Jul 2015 03:56:00 +0000 (22:56 -0500)
committersparky4 <sparky4@cock.li>
Tue, 7 Jul 2015 03:56:00 +0000 (22:56 -0500)
modified:   exmmtest.exe
modified:   src/lib/16_mm.c
modified:   src/lib/16_mm.h

exmmtest.exe
src/lib/16_mm.c
src/lib/16_mm.h

index 528d1d8..e2b4fa1 100644 (file)
Binary files a/exmmtest.exe and b/exmmtest.exe differ
index c499ea2..5c658bb 100644 (file)
@@ -428,7 +428,6 @@ void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm)
 
        scan = last = mm->mmhead;
        mm->mmrover = mm->mmhead;               // reset rover to start of memory
-       scan->segm=1;
 
 //
 // search for the block that contains the range of segments
@@ -444,6 +443,7 @@ void MML_UseSpace(/*d*/word segstart, dword seglength, mminfo_t *mm)
        {
                scan->segm=seglength/0xfffflu;
        }
+       else scan->segm=1;
 
 //
 // take the given range out of the block
index 44ea845..8f064ce 100644 (file)
@@ -114,11 +114,11 @@ extern void               (* XMSaddr) (void);             // far pointer to XMS driver
 
 typedef struct mmblockstruct
 {
-       word    start,length;
+       word    start,length,segm;
        //dword start,length;
        //word  start;
        //dword length;
-       word 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;