+ if((emmhandle = emmalloc(emsavail)) < 0)\r
+ {\r
+ printf("Insufficient pages available\n");\r
+ exit(0);\r
+ }*/\r
+
+ /* create the map */
+//0000 printf("Total used @ before map load: %zu\n", oldfreemem-GetFreeSize());
+ loadmap("data/test.map", &map);
+//---- map = allocMap(map.width,map.height); //20x15 is the resolution of the screen you can make maps smaller than 20x15 but the null space needs to be drawn properly
+ //if(isEMS()) printf("%d tesuto\n", coretotalEMS());
+//---- initMap(&map);
+ mv.map = ↦
+ mv2.map = ↦
+ mv3.map = ↦
+
+ /* draw the tiles */
+ ptr = map.data;
+ mappalptr = map.tiles->data->palette;
+ /* data */
+//0000 printf("Total used @ before image loading: %zu\n", oldfreemem-GetFreeSize());
+ ptmp = bitmapLoadPcx("data/ptmp.pcx"); // load sprite
+ //npctmp = bitmapLoadPcx("ptmp1.pcx"); // load sprite
+
+ /* create the planar buffer */
+//0000 printf("Total used @ before planar buffer creation: %zu\n", oldfreemem-GetFreeSize());
+ p = planar_buf_from_bitmap(&ptmp);\r
+//0000 printf("Total used @ after planar buffer creation: %zu\n", oldfreemem-GetFreeSize());
+
+ /*if(isEMS())\r
+ {\r
+ XMOVE mm;\r
+ mm.length=sizeof(map);\r
+ mm.sourceH=0;\r
+ mm.sourceOff=(long)↦\r
+ mm.destH=emmhandle;\r
+ mm.destOff=1;\r
+ //halp!\r
+ ist = move_emem(&mm);\r
+ printf("%d\n", coretotalEMS());\r
+ if(!ist){ dealloc_emem(emmhandle); exit(5); }\r
+ //printf("%d\n", emmhandle);\r
+ }\r
+\r
+ if(isEMS())\r
+ {\r
+ XMOVE mm;\r
+ mm.length=emmhandle;\r
+ mm.sourceH=0;\r
+ mm.sourceOff=(long)&ptmp;\r
+ mm.destH=emmhandle;\r
+ mm.destOff=0;\r
+ //halp!\r
+ ist = move_emem(&mm);\r
+ printf("%d\n", coretotalEMS());\r
+ if(!ist){ dealloc_emem(emmhandle); exit(5); }\r
+ //printf("%d\n", emmhandle);\r
+ }\r
+*/\r
+
+ /* save the palette */
+ dpal = modexNewPal();
+ modexPalSave(dpal);
+ modexFadeOff(4, dpal);
+
+ setkb(1);
+ modexEnter();
+ modexPalBlack(); //reset the palette~
+// printf("Total used @ before palette initiation: %zu\n", oldfreemem-GetFreeSize());
+ ptmp.offset=(paloffset/3);
+ modexPalUpdate(&ptmp, &paloffset, 0, 0);
+ //printf(" %d\n", sizeof(ptmp.data));
+ //printf("1: %d\n", paloffset);
+ map.tiles->data->offset=(paloffset/3);
+ modexPalUpdate(map.tiles->data, &paloffset, 0, 0);
+ printf("\n====\n");
+ printf("0 paloffset= %d\n", paloffset/3);
+ printf("====\n\n");
+ gpal = modexNewPal();\r
+ modexPalSave(gpal);
+ modexSavePalFile("data/g.pal", gpal);
+ modexPalBlack(); //so player will not see loadings~
+
+ /* setup camera and screen~ */
+ screen = modexDefaultPage();