From 99fae0e9cff0b5609ca955a238ff22804c7fb2dc Mon Sep 17 00:00:00 2001 From: sparky4 <sparky4@cock.li> Date: Tue, 21 Jul 2015 17:27:03 -0500 Subject: [PATCH] damn! modified: DEBUG.TXT modified: MMDUMP.TXT modified: exmmtest.exe modified: src/exmmtest.c modified: src/lib/16_ca.c modified: src/lib/16_mm.c modified: src/lib/16_mm.h --- DEBUG.TXT | 5 +---- MMDUMP.TXT | Bin 104 -> 25 bytes exmmtest.exe | Bin 83330 -> 83062 bytes src/exmmtest.c | 12 ++++++------ src/lib/16_ca.c | 12 ++++++------ src/lib/16_mm.c | 15 ++++++++------- src/lib/16_mm.h | 6 +++--- 7 files changed, 24 insertions(+), 26 deletions(-) diff --git a/DEBUG.TXT b/DEBUG.TXT index bc6b5dd0..c72a4e78 100644 --- a/DEBUG.TXT +++ b/DEBUG.TXT @@ -1,6 +1,3 @@ -Seg:0 Size:92176 Owner:0xfe5e -Seg:1681 Size:4096 Owner:0x7298 -Seg:1caf Size:8752 Owner:0x80 -Seg:5ed0 Size:529152 Owner:0x80 +Seg:11c3 Size:811328 Owner:0xc918 MM_ShowMemory: Memory block order currupted! diff --git a/MMDUMP.TXT b/MMDUMP.TXT index b1326e93291392981216abdbb22b968ea799c1f2..27e324d2b491cc9eac3d4c8a771241ea46327f16 100644 GIT binary patch literal 25 gcmXr0FfcGmu`)<YHBivdWzbZxRWLCyGvVa|081SO1ONa4 literal 104 zcmXr0FfcGlwlXlVFi_CYRn}CnRWPzNHa6qsGJwh?C#L~r{-enlrC6C8Sy}*P7|>*Z OrlqBtrUGRekz@d+0TxaG diff --git a/exmmtest.exe b/exmmtest.exe index ef66fe39907788a925839cb5352a156fa741c461..64ece4170e2510d135e90fdc85f123dadb85b12a 100644 GIT binary patch delta 27089 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 delta 26617 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 JNHRg~{|`S@4>|w< diff --git a/src/exmmtest.c b/src/exmmtest.c index 1e40e9b9..ac19617b 100644 --- a/src/exmmtest.c +++ b/src/exmmtest.c @@ -26,17 +26,17 @@ #include "src/lib/16_mm.h" #include "src/lib/modex16.h" -//#define FILERL +#define FILERL //#define FILEINIT void main(int argc, char *argv[]) { - mminfo_t mm; mminfotype mmi; - memptr bigbuffer; - __segment segu; - char *bakapee; - word baka; + static mminfo_t mm; mminfotype mmi; + static memptr bigbuffer; + static __segment segu; + static char *bakapee; + static word baka; page_t screen; printf("&main()=%Fp\n", *argv[0]); diff --git a/src/lib/16_ca.c b/src/lib/16_ca.c index fc407353..bf94bc8c 100644 --- a/src/lib/16_ca.c +++ b/src/lib/16_ca.c @@ -218,7 +218,7 @@ void CAL_GetGrChunkLength (int chunk) boolean CA_FarRead(int handle, byte huge *dest, dword length, mminfo_t *mm) { boolean flag; - dword fat=0; + /*dword fat=0; word segm=0; //if(mm->EMSVer<0x40) if(length>0xfffflu) @@ -231,7 +231,7 @@ boolean CA_FarRead(int handle, byte huge *dest, dword length, mminfo_t *mm) } if(!fat&&!segm) - { + {*/ __asm { push ds @@ -257,7 +257,7 @@ done: End: } return flag; - }else return 0;//todo: EXPAND!!! + //}else return 0;//todo: EXPAND!!! } @@ -274,7 +274,7 @@ End: boolean CA_FarWrite(int handle, byte huge *source, dword length, mminfo_t *mm) { boolean flag; - dword fat=0; + /*dword fat=0; word segm=0; //if(mm->EMSVer<0x40) if(length>0xfffflu) @@ -287,7 +287,7 @@ boolean CA_FarWrite(int handle, byte huge *source, dword length, mminfo_t *mm) } if(!fat&&!segm) - { + {*/ __asm { push ds @@ -313,7 +313,7 @@ done: End: } return flag; - }else return 0; + //}else return 0; } diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 1bd9866a..e61b2deb 100644 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -641,7 +641,7 @@ void MM_Startup(mminfo_t *mm, mminfotype *mmi) // // set up the linked list (everything in the free list; // - printf(" linked list making!\n"); +// printf(" linked list making!\n"); mm->mmhead = NULL; mm->mmfree = &(mm->mmblocks[0]); for(i=0;i<MAXBLOCKS-1;i++) @@ -653,7 +653,7 @@ void MM_Startup(mminfo_t *mm, mminfotype *mmi) // // locked block of all memory until we punch out free space // - printf(" newblock making!\n"); +// printf(" newblock making!\n"); MM_GetNewBlock(mm); mm->mmhead = mm->mmnew; // this will allways be the first node mm->mmnew->start = 0; @@ -669,6 +669,7 @@ void MM_Startup(mminfo_t *mm, mminfotype *mmi) //---- length=coreleft(); //_nheapgrow(); length=_memmax(); + //printf(" %u\n", length); start = (void huge *)(mm->nearheap = _nmalloc(length)); length -= 16-(FP_OFF(start)&15); length -= SAVENEARHEAP; @@ -747,10 +748,10 @@ 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 MML_UseSpace(mm->EMSpageframe,(MAPPAGES)*0x4000lu, mm); 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! printf(" EMS4\n"); - if(mm->EMSVer<0x40) + //if(mm->EMSVer<0x40) MM_MapEMS(mm, mmi); // map in used pages - else - MM_MapXEMS(mm, mmi); // map in used pages + //else + //MM_MapXEMS(mm, mmi); // map in used pages } // @@ -1265,7 +1266,7 @@ void MM_DumpData(mminfo_t *mm) FILE *dumpfile; - free (mm->nearheap); + //++++free(mm->nearheap); dumpfile = fopen ("mmdump.txt","w"); if (!dumpfile){ printf("MM_DumpData: Couldn't open MMDUMP.TXT!\n"); @@ -1308,7 +1309,7 @@ void MM_DumpData(mminfo_t *mm) } while (lowest != 0xffff); - fclose (dumpfile); + fclose(dumpfile); printf("MMDUMP.TXT created.\n"); } diff --git a/src/lib/16_mm.h b/src/lib/16_mm.h index c40b9855..8d71369d 100644 --- a/src/lib/16_mm.h +++ b/src/lib/16_mm.h @@ -30,13 +30,13 @@ //++++mh #include "src/lib/16_in.h" #ifdef __DEBUG__ // 1 == Debug/Dev ; 0 == Production/final -#define OUT_OF_MEM_MSG "MM_GetPtr: Out of memory!\nYou were short :%ld bytes" +#define OUT_OF_MEM_MSG "MM_GetPtr: Out of memory!\nYou were short :%lu bytes" #else #define OUT_OF_MEM_MSG "\npee\n" #endif -#define SAVENEARHEAP 0x200 // space to leave in data segment +#define SAVENEARHEAP 0//x400 // space to leave in data segment #define SAVEFARHEAP 0//x4000 // space to leave in far heap #define BUFFERSIZE 0x1000 // miscelanious, allways available buffer @@ -115,7 +115,7 @@ extern void (* XMSaddr) (void); // far pointer to XMS driver #define BASEATTRIBUTES 0 // unlocked, non purgable #define MAXUMBS 12 -#define MAPPAGES mm->EMSpagesmapped +#define MAPPAGES 4//mm->EMSpagesmapped typedef struct mmblockstruct { -- 2.39.5