*/
#include "src/lib/16_ca.h"
#include "src/lib/16_mm.h"
+//#include "src/lib/modex16.h"
+
+#define FILERL
+//#define FILEINIT
void
main(int argc, char *argv[])
{
- mminfo_t mm; mminfotype mmi;
- memptr bigbuffer;
- __segment segu;
- char *bakapee;
+ static mminfo_t mm; mminfotype mmi;
+ static memptr bigbuffer;
+ static __segment segu;
+ static char *bakapee;
word baka;
+ //static page_t screen;
+
+ printf("&main()=%Fp\n", *argv[0]);
+ printf("&argc=%Fp\n", FP_SEG(&argc));
+ printf("&segu=%Fp\n", segu);
- bakapee = malloc(64);
+ bakapee = _nmalloc(64);
// memset(bakapee, 0, 64);
mm.mmstarted=0;
- if(argv[1]) bakapee = strdup(argv[1]);
+ if(argv[1]) bakapee = argv[1];
else bakapee = "data/koishi~~.pcx";
-
- printf("start!\n");
+
+ textInit();\r
+
+ /* setup camera and screen~ */
+ //bug!!!\r
+ //screen = modexDefaultPage();\r
+ /*screen.width += (16*2);\r
+ screen.height += (16*2);*/
+
+ printf("&main()=%Fp start MM\n", *argv[0]);
MM_Startup(&mm, &mmi);
- printf("done!\n");
+ //segu=mmi.segu;
+ printf(" done!\n");
+ /*if(FP_SEG(*argv[0])==0)
+ {
+ MM_Report(&screen, &mm, &mmi);
+ MM_Shutdown(&mm);
+ printf("&main()=%Fp\n", *argv[0]);
+ printf("&main() == %u\n", FP_SEG(*argv[0]));
+ exit(-5);
+ }*/
printf("&main()=%Fp\n", *argv[0]);
- if(CA_LoadFile(bakapee, &bigbuffer, &mm, &mmi)) baka=1;
- else baka=0;
+ printf("&argc=%Fp\n", FP_SEG(&argc));
+ printf("&segu=%Fp\n", segu);
+#ifdef FILERL
+#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;
+#endif
//MM_GetPtr(&bigbuffer, mmi.nearheap, &mm, &mmi);
//hmm functions in cache system use the buffered stuff
- printf("size of big buffer~=%ul\n", _bmsize(segu, bigbuffer));
- MM_ShowMemory(&mm);
+ 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(&mm, &mmi);
- printf("stop!\n");
+ printf(" stop!\n");
MM_FreePtr(&bigbuffer, &mm);
MM_Shutdown(&mm);
- printf("done!\n");
+ printf(" done!\n");
+#ifdef FILERL
free(bakapee);
+ //printf("_bios_memsize=%u\n", _bios_memsize());
if(baka) printf("\nyay!\n");
else printf("\npoo!\n");
+#endif
}