X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Fexmmtest.c;h=a7a781885d3643d0c857ba9b16890fc7117a91b3;hb=de061bfbd47c0c86acefa16bb31d8c94dceea032;hp=db3059d2b713da612f74e9db3867129819c4b863;hpb=866232d8ee296189ab972a4c99c140dbe32c3353;p=16.git diff --git a/src/exmmtest.c b/src/exmmtest.c index db3059d2..a7a78188 100644 --- a/src/exmmtest.c +++ b/src/exmmtest.c @@ -22,11 +22,70 @@ /* input test */ +#include "src/lib/16_ca.h" #include "src/lib/16_mm.h" +#include "src/lib/modex16.h" void main(int argc, char *argv[]) { - MM_Startup(); - MM_Shutdown(); + mminfo_t mm; mminfotype mmi; + memptr bigbuffer; + __segment segu; + char *bakapee; + word baka; + page_t screen; + + bakapee = malloc(64); +// memset(bakapee, 0, 64); + mm.mmstarted=0; + + if(argv[1]) bakapee = argv[1]; + else bakapee = "data/koishi~~.pcx"; + //if(argv[2]) + // #define FILEINIT + + textInit(); + + /* setup camera and screen~ */ + screen = modexDefaultPage(); + screen.width += (16*2); + screen.height += (16*2); + + printf("start!\n"); + MM_Startup(&mm, &mmi); + printf("done!\n"); + printf("&main()=%Fp\n", *argv[0]); +#ifdef FILEINIT + printf("read\n"); + if(CA_ReadFile(bakapee, &bigbuffer, &mm/*, &mmi*/)) +#else + printf("load\n"); + if(CA_LoadFile(bakapee, &bigbuffer, &mm, &mmi)) +#endif + baka=1; + else + baka=0; + //MM_GetPtr(&bigbuffer, mmi.nearheap, &mm, &mmi); + //hmm functions in cache system use the buffered stuff + printf("size of big buffer~=%u\n", _bmsize(segu, bigbuffer)); + printf("dark purple = purgable\n"); + printf("medium blue = non purgable\n"); + printf("red = locked\n"); + getch(); + modexEnter(); + modexShowPage(&screen); + MM_ShowMemory(&screen, &mm); + getch(); + MM_DumpData(&mm); + modexLeave(); + MM_Report(&screen, &mm, &mmi); + printf("stop!\n"); + MM_FreePtr(&bigbuffer, &mm); + MM_Shutdown(&mm); + printf("done!\n"); + free(bakapee); + //printf("_bios_memsize=%u\n", _bios_memsize()); + if(baka) printf("\nyay!\n"); + else printf("\npoo!\n"); }