X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Flib%2Fexmm%2Fmemory.c;h=38b12255b41e45e2ef7c269f6fe9e64a4e793f13;hb=92159c1baca21e61dd975708e9f1bfef5c357f4b;hp=c73c7657f4975ef8fc610539059f70f23294e075;hpb=343a2db76f56796f02395439a5e01019c670748a;p=16.git diff --git a/src/lib/exmm/memory.c b/src/lib/exmm/memory.c index c73c7657..38b12255 100644 --- a/src/lib/exmm/memory.c +++ b/src/lib/exmm/memory.c @@ -42,6 +42,21 @@ static int GetNumPages(int Handle); static int EMStateSave(int Handle); static void EMStateRestore(int Handle); +/********************************************************************/ +//beta +unsigned long +EMInfo(void) +{ + int EMSinfo; + _asm + { + mov ah,0x58 + int 0x67 + mov EMSinfo,ax + } + return((unsigned long)EMSinfo); +} + /********************************************************************/ int @@ -57,7 +72,8 @@ EMVer(void) return(EMSver); } -/********************************************************************/ +/********************************************************************/ + int OpenEMM(void) { @@ -112,7 +128,7 @@ EMMCoreLeft(void) End: } if(!interr) - RtnVal = ((unsigned long)Pages); /* Pages * 16K rtns bytes*/ + RtnVal = ((unsigned long)Pages); /* Pages * 16K rtns bytes*/ //<< 14); return(RtnVal); } /* End of EMMCoreLeft() */ @@ -129,7 +145,7 @@ EMMalloc(int *Handle, int Pages) *Handle = NOTREADY; return(NULL); } - if ((Pages < 1) || (Pages > EMMCoreLeft())) { + if ((Pages < 1) || (Pages > EMMCoreLeft(/*1020*/))) { *Handle = VALUE_OUTF_RANGE; return (NULL); } @@ -152,7 +168,7 @@ EMMRealloc(int Handle, int Pages) { int RtnCode = FALSE; - if (!EMMSeg || (Pages < 0) || (Pages > 1020)) { + if (!EMMSeg || (Pages < 0) || (Pages > EMMCoreLeft(/*1020*/))) { return (FALSE); } _asm {