X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Fexmmtest.c;h=280cbf91dc7e3350bd9246f582d55cbb00d75b6b;hb=dfc3f62c2214445d5aec478f1b1275028338193b;hp=c0bbc33224d18064f33429a29e8cf753144a2a9e;hpb=f25bc68773faab4e860312669d8f19f6ce2ff737;p=16.git diff --git a/src/exmmtest.c b/src/exmmtest.c old mode 100644 new mode 100755 index c0bbc332..280cbf91 --- a/src/exmmtest.c +++ b/src/exmmtest.c @@ -1,5 +1,5 @@ /* Project 16 Source Code~ - * Copyright (C) 2012-2015 sparky4 & pngwen & andrius4669 + * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 * * This file is part of Project 16. * @@ -22,12 +22,13 @@ /* exmm test */ -#include -#include +//#include +//#include #include "src/lib/16_head.h" #include "src/lib/16_ca.h" #include "src/lib/16_mm.h" +#include "src/lib/16_hc.h" //#include "src/lib/modex16.h" #pragma hdrstop @@ -38,23 +39,34 @@ #define FILERL //#define FILEREAD +global_game_variables_t gvar; + void main(int argc, char *argv[]) { mminfo_t mm; mminfotype mmi; +#ifdef __WATCOMC__ __segment sega; void __based(sega)* bigbuffer; +#endif +#ifdef __BORLANDC__ + memptr bigbuffer; +#endif #ifdef FILERL + //static byte bakapee[64]; char *bakapee; word baka; #endif //static page_t screen; - 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 __BORLANDC__ + argc=argc; +#endif + //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 FILERL bakapee = malloc(64); @@ -62,30 +74,32 @@ main(int argc, char *argv[]) mm.mmstarted=0; #ifdef FILERL +// printf("filename!: "); +// scanf("%[^\n]", &bakapee); if(argv[1]) bakapee = argv[1]; else bakapee = "data/koishi~.pcx"; #endif - textInit(); +// textInit(); - /* setup camera and screen~ */ + // setup camera and screen~ //bug!!! //screen = modexDefaultPage(); - /*screen.width += (16*2); - screen.height += (16*2);*/ + //screen.width += (16*2); + //screen.height += (16*2); - printf("main()=%Fp start MM\n", *argv[0]); +// printf("main()=%Fp start MM\n", *argv[0]); MM_Startup(&mm, &mmi); //PM_Startup(); //PM_UnlockMainMem(); - CA_Startup(); - printf(" done!\n"); - 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); - getch(); + CA_Startup(&gvar); +// printf(" done!\n"); + //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); +// getch(); #ifdef FILERL // bakapeehandle = open(bakapee,O_RDONLY | O_BINARY, S_IREAD); // printf("size of big buffer~=%u\n", _bmsize(segu, bigbuffer)); @@ -102,45 +116,62 @@ main(int argc, char *argv[]) baka=0; // close(bakapeehandle); //hmm functions in cache system use the buffered stuff +#ifdef __WATCOMC__ printf("size of big buffer~=%u\n", _bmsize(sega, bigbuffer)); #endif - printf("dark purple = purgable\n"); - printf("medium blue = non purgable\n"); - printf("red = locked\n"); +#endif + printf("press any key to continue!\n"); + getch(); + printf("[\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(); //++++modexEnter(); //++++modexShowPage(&screen); - MM_ShowMemory(/*&screen, */&mm); + MM_ShowMemory(&gvar, &mm); //getch(); MM_DumpData(&mm); //++++modexLeave(); - MM_Report(&mm, &mmi); - printf(" stop!\n"); + //++++MM_Report(&mm, &mmi); +// printf(" stop!\n"); #ifdef FILERL MM_FreePtr(&bigbuffer, &mm); #endif //PM_Shutdown(); - CA_Shutdown(); + CA_Shutdown(&gvar); MM_Shutdown(&mm); - printf(" done!\n"); +// printf(" done!\n"); #ifdef FILERL free(bakapee); if(baka) printf("\nyay!\n"); else printf("\npoo!\n"); #endif - printf("bigbuffer= %Fp\n", bigbuffer); - printf("&bigbuffer= %Fp\n", &bigbuffer); - printf("bigbuffer= %04x\n", bigbuffer); - printf("&bigbuffer= %04x\n", &bigbuffer); - printf("\n\n"); + printf("========================================\n"); + printf("near= %Fp ", mm.nearheap); + printf("far= %Fp", mm.farheap); + printf("\n"); + printf("&near= %Fp ", &(mm.nearheap)); + printf("&far= %Fp", &(mm.farheap)); + printf("\n"); + printf("bigb= %Fp ", bigbuffer); + //printf("bigbr= %04x", bigbuffer); + //printf("\n"); + printf("&bigb=%Fp ", &bigbuffer); + //printf("&bigb=%04x", &bigbuffer); + printf("\n"); + printf("========================================\n"); +#ifdef __WATCOMC__ printf("Total free: %lu\n", (dword)(GetFreeSize())); printf("Total near free: %lu\n", (dword)(GetNearFreeSize())); printf("Total far free: %lu\n", (dword)(GetFarFreeSize())); - getch(); - printf("\n"); - heapdump(); - printf("core left: %lu\n", (dword)_coreleft()); - printf("far core left: %lu\n", (dword)_farcoreleft()); + heapdump(&gvar); + printf("Project 16 emmtest.exe. This is just a test file!\n"); + printf("version %s\n", VERSION); +#endif + //printf("core left: %lu\n", (dword)_coreleft()); + //printf("far core left: %lu\n", (dword)_farcoreleft()); //printf("based core left: %lu\n", (dword)_basedcoreleft()); //printf("huge core left: %lu\n", (dword)_hugecoreleft()); }