]> 4ch.mooo.com Git - 16.git/blob - src/test.c
new file: EMSTEST.EXE
[16.git] / src / test.c
1 #include "src\lib\modex16.h"\r
2 #include <stdio.h>\r
3 \r
4 word far* clock= (word far*) 0x046C; /* 18.2hz clock */\r
5 \r
6 void main() {\r
7     int i, j;\r
8     word start, end;\r
9     page_t page, page2;\r
10     byte *pal, *pal2=NULL;\r
11 \r
12     /* load our palette */\r
13     modexLoadPalFile("gfx.pal", &pal2);\r
14 \r
15     /* save the palette */\r
16     pal  = modexNewPal();\r
17     modexPalSave(pal);\r
18     modexFadeOff(1, pal);\r
19     modexPalBlack();\r
20 \r
21     modexEnter();\r
22     modexPalBlack();\r
23 \r
24     /* set up the page, but with 16 pixels on all borders in offscreen mem */\r
25     page=modexDefaultPage();\r
26     page2 = modexNextPage(&page);\r
27     page.width += 32;\r
28     page.height += 32;\r
29 \r
30 \r
31     /* fill the page with one color, but with a black border */\r
32     modexShowPage(&page2);\r
33     modexClearRegion(&page, 16, 16, SCREEN_WIDTH, SCREEN_HEIGHT, 128);\r
34     modexClearRegion(&page, 32, 32, SCREEN_WIDTH-32, SCREEN_HEIGHT-32, 42);\r
35     modexClearRegion(&page, 48, 48, SCREEN_WIDTH-64, SCREEN_HEIGHT-64, 128);\r
36     modexShowPage(&page);\r
37 \r
38     /* fade in */\r
39     modexFadeOn(1, pal2);\r
40 \r
41 \r
42     start = *clock;\r
43     for(i=0; i<5; i++) {\r
44         /* go right */\r
45         for(j=0; j<32; j++) {\r
46             page.dx++;\r
47             modexShowPage(&page);\r
48         }\r
49         /* go left */\r
50         for(j=0; j<32; j++) {\r
51             page.dx--;\r
52             modexShowPage(&page);\r
53         }\r
54         /* go up */\r
55         for(j=0; j<32; j++) {\r
56             page.dy++;\r
57             modexShowPage(&page);\r
58         }\r
59 \r
60         /* go down */\r
61         for(j=0; j<32; j++) {\r
62             page.dy--;\r
63             modexShowPage(&page);\r
64         }\r
65     }\r
66 \r
67     end = *clock;\r
68 \r
69     /* fade back to text mode */\r
70     modexFadeOff(1, pal2);\r
71     modexPalBlack();\r
72     modexLeave();\r
73     modexPalBlack();\r
74     modexFadeOn(1, pal);\r
75 }\r