added tunnel effect and SDL backend
[dosdemo] / src / dos / main.c
1 #include <stdio.h>
2 #include "demo.h"
3 #include "keyb.h"
4 #include "timer.h"
5 #include "gfx.h"
6
7 static int quit;
8
9 int main(int argc, char **argv)
10 {
11         init_timer(100);
12         kb_init(32);
13
14         if(!(fb_pixels = set_video_mode(fb_width, fb_height, fb_bpp))) {
15                 return 1;
16         }
17
18         if(demo_init(argc, argv) == -1) {
19                 set_text_mode();
20                 return 1;
21         }
22         reset_timer();
23
24         while(!quit) {
25                 int key;
26                 while((key = kb_getkey()) != -1) {
27                         demo_keyboard(key, 1);
28                 }
29                 if(quit) goto break_evloop;
30
31                 wait_vsync();
32                 time_msec = get_msec();
33                 demo_draw();
34         }
35
36 break_evloop:
37         set_text_mode();
38         demo_cleanup();
39         kb_shutdown();
40         return 0;
41 }
42
43 void demo_quit(void)
44 {
45         quit = 1;
46 }