]> 4ch.mooo.com Git - 16.git/blobdiff - 16/modex16/test.c
i did a butt load of tweaking to the paltest code and i did verious fixes here and...
[16.git] / 16 / modex16 / test.c
old mode 100644 (file)
new mode 100755 (executable)
index 48ecf0b..c5b9d7d
@@ -4,32 +4,72 @@
 word far* clock= (word far*) 0x046C; /* 18.2hz clock */\r
 \r
 void main() {\r
-    int plane;\r
-    int x, y, i;\r
+    int i, j;\r
     word start, end;\r
     page_t page, page2;\r
-    word far* ptr;\r
-    float elapsed;\r
+    byte *pal, *pal2=NULL;\r
+\r
+    /* load our palette */\r
+    modexLoadPalFile("gfx.pal", &pal2);\r
+\r
+    /* save the palette */\r
+    pal  = modexNewPal();\r
+    modexPalSave(pal);\r
+    modexFadeOff(1, pal);\r
+    modexPalBlack();\r
 \r
     modexEnter();\r
+    modexPalBlack();\r
+\r
+    /* set up the page, but with 16 pixels on all borders in offscreen mem */\r
+    page=modexDefaultPage();\r
+    page2 = modexNextPage(&page);\r
+    page.width += 32;\r
+    page.height += 32;\r
+\r
 \r
-    page= VGA;\r
-    page2=VGA+PAGE_SIZE;\r
+    /* fill the page with one color, but with a black border */\r
+    modexShowPage(&page2);\r
+    modexClearRegion(&page, 16, 16, SCREEN_WIDTH, SCREEN_HEIGHT, 128);\r
+    modexClearRegion(&page, 32, 32, SCREEN_WIDTH-32, SCREEN_HEIGHT-32, 42);\r
+    modexClearRegion(&page, 48, 48, SCREEN_WIDTH-64, SCREEN_HEIGHT-64, 128);\r
+    modexShowPage(&page);\r
+\r
+    /* fade in */\r
+    modexFadeOn(1, pal2);\r
 \r
-    /* fill the page with one color */\r
-    modexShowPage(page2);\r
-    modexClearRegion(page, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 42);\r
-    modexClearRegion(page, 17, 12, 30, 30, 19);\r
-    modexShowPage(page);\r
 \r
     start = *clock;\r
-    for(i=0; i<500; i++) {\r
-       modexShowPage(page);\r
-       page+=SCREEN_WIDTH/4;\r
+    for(i=0; i<5; i++) {\r
+       /* go right */\r
+       for(j=0; j<32; j++) {\r
+           page.dx++;\r
+           modexShowPage(&page);\r
+       }\r
+       /* go left */\r
+       for(j=0; j<32; j++) {\r
+           page.dx--;\r
+           modexShowPage(&page);\r
+       }\r
+       /* go up */\r
+       for(j=0; j<32; j++) {\r
+           page.dy++;\r
+           modexShowPage(&page);\r
+       }\r
+\r
+       /* go down */\r
+       for(j=0; j<32; j++) {\r
+           page.dy--;\r
+           modexShowPage(&page);\r
+       }\r
     }\r
+\r
     end = *clock;\r
 \r
+    /* fade back to text mode */\r
+    modexFadeOff(1, pal2);\r
+    modexPalBlack();\r
     modexLeave();\r
-    elapsed = (end-start)/18.2;\r
-    printf("500 frames in %f seconds for %f fps\n", elapsed, 500.0/elapsed);\r
+    modexPalBlack();\r
+    modexFadeOn(1, pal);\r
 }\r