X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Fexmmtest.c;h=c5e9b5ce3c7eb99273a982c8807e767ca359f80f;hb=3bccccc5b1bd97dc63e3caccc800959e9e5948db;hp=06835abf44815fd4e07e4114759f1aaacfedc5cb;hpb=0c47a862860b6ae769429092860ecd9ae1591ba9;p=16.git diff --git a/src/exmmtest.c b/src/exmmtest.c index 06835abf..c5e9b5ce 100755 --- a/src/exmmtest.c +++ b/src/exmmtest.c @@ -1,5 +1,5 @@ /* Project 16 Source Code~ - * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover + * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover * * This file is part of Project 16. * @@ -23,10 +23,12 @@ exmm test */ #include "src/lib/16_head.h" +#include "src/lib/16_tail.h" +#include "src/lib/16_pm.h" #include "src/lib/16_ca.h" #include "src/lib/16_mm.h" #include "src/lib/16_hc.h" -//#include "src/lib/modex16.h" +//#include "src/lib/16_vl.h" #pragma hdrstop #pragma warn -pro @@ -36,6 +38,7 @@ #define FILEREAD //#define EXMMVERBOSE +void VGAmodeX(sword vq, boolean cmem, global_game_variables_t *gv){} #define PRINTBB { printf("&main()= %Fp\n", argv[0]);printf("bigbuffer= %Fp\n", bigbuffer);printf("&bigbuffer= %Fp\n", &bigbuffer);printf("bigbuffer= %04x\n", bigbuffer);printf("&bigbuffer= %04x\n", &bigbuffer); } #ifdef __WATCOMC__ @@ -60,15 +63,16 @@ void segatesuto() // getch(); } #endif +//static global_game_variables_t gvar; void main(int argc, char *argv[]) { byte w=1; - global_game_variables_t gvar; -#ifdef __WATCOMC__ - __segment sega; -#endif + static global_game_variables_t gvar; +//#ifdef __WATCOMC__ +// __segment sega; +//#endif memptr bigbuffer; //static byte bakapee[64]; @@ -85,6 +89,10 @@ main(int argc, char *argv[]) gvar.mm.mmstarted=0; +#ifdef __DEBUG_PM__ + dbg_debugpm=1; //debug pm +#endif + //PRINTBB if(argv[1]){ bakapee1 = argv[1]; if(argv[2]) bakapee2 = argv[2]; } @@ -93,13 +101,25 @@ main(int argc, char *argv[]) bakapee1 = "data/koishi~.pcx"; bakapee2 = "data/test.map"; } -// printf("main()=%Fp start MM\n", *argv[0]); - MM_Startup(&gvar.mm, &gvar.mmi); - //PM_Startup(); - //PM_UnlockMainMem(); + //printf("main()=%Fp start MM\n", *argv[0]); + MM_Startup(&gvar); + //printf("ok\n"); +//#ifdef __WATCOMC__ +#ifdef __DEBUG_PM__ + if(dbg_debugpm>0) + { +#endif + PM_Startup(&gvar); + //printf("pmstarted ok\n"); + //PM_CheckMainMem(&gvar); + PM_UnlockMainMem(&gvar); +#ifdef __DEBUG_PM__ + } +#endif +//#endif CA_Startup(&gvar); // printf(" done!\n"); - PRINTBB; + //0000PRINTBB; // printf("press any key to continue!\n"); // getch(); #ifdef FILEREAD @@ -121,19 +141,16 @@ for(w=0;w<2;w++) } // close(bakapeehandle); //hmm functions in cache system use the buffered stuff -#ifdef __WATCOMC__ - printf("\nsize of big buffer~=%u\n", _bmsize(sega, bigbuffer)); -#endif +//#ifdef __WATCOMC__ +// printf("\nsize of big buffer~=%u\n", _bmsize(sega, bigbuffer)); +//#endif printf("contents of the buffer\n[\n%s\n]\n", bigbuffer); //printf("dark purple = purgable\n"); //printf("medium blue = non purgable\n"); //printf("red = locked\n"); - printf("press any key to continue!\n"); - getch(); - MM_ShowMemory(&gvar, &gvar.mm); - MM_DumpData(&gvar.mm); - MM_Report_(&gvar); +// printf("press any key to continue!\n"); +// DebugMemory_(&gvar, 1); if(baka) printf("\nyay!\n"); else printf("\npoo!\n"); printf("press any key to continue!\n"); @@ -141,10 +158,20 @@ for(w=0;w<2;w++) #ifdef FILEREAD } #endif - MM_FreePtr(&bigbuffer, &gvar.mm); - //PM_Shutdown(); + DebugMemory_(&gvar, 1); + MM_DumpData(&gvar); + MM_Report_(&gvar); + //printf("bakapee1=%s\n", bakapee1); + //printf("bakapee2=%s\n", bakapee2); + MM_FreePtr(&bigbuffer, &gvar); +//#ifdef __WATCOMC__ +#ifdef __DEBUG_PM__ + if(dbg_debugpm>0) +#endif + PM_Shutdown(&gvar); +//#endif CA_Shutdown(&gvar); - MM_Shutdown(&gvar.mm); + MM_Shutdown(&gvar); free(bakapee1); free(bakapee2); printf("========================================\n"); printf("near= %Fp ", gvar.mm.nearheap); @@ -160,16 +187,16 @@ for(w=0;w<2;w++) printf("&bigb=%Fp ", &bigbuffer); //printf("&bigb=%04x", &bigbuffer); printf("\n"); -#endif printf("========================================\n"); +#endif #ifdef __WATCOMC__ //this is far printf("Total free: %lu\n", (dword)(GetFreeSize())); - printf("Total near free: %lu\n", (dword)(GetNearFreeSize())); - printf("Total far free: %lu\n", (dword)(GetFarFreeSize())); + printf("Total near free: %lub\n", (dword)(GetNearFreeSize())); + printf("Total far free: %lub\n", (dword)(GetFarFreeSize())); heapdump(&gvar); segatesuto(); #endif - printf("Project 16 emmtest.exe. This is just a test file!\n"); + printf("Project 16 exmmtest.exe. This is just a test file!\n"); printf("version %s\n", VERSION); //printf("core left: %lu\n", (dword)_coreleft()); //printf("far core left: %lu\n", (dword)_farcoreleft());