6 static void handle_event(SDL_Event *ev);
9 static long start_time;
10 static SDL_Surface *fbsurf;
12 int main(int argc, char **argv)
14 unsigned int sdl_flags = SDL_SWSURFACE;
16 SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER);
17 if(!(fbsurf = SDL_SetVideoMode(fb_width, fb_height, fb_bpp, sdl_flags))) {
18 fprintf(stderr, "failed to set video mode %dx%d %dbpp\n", fb_width, fb_height, fb_bpp);
21 SDL_WM_SetCaption("dosdemo SDLemu", 0);
24 if(demo_init(argc, argv) == -1) {
27 start_time = SDL_GetTicks();
31 while(SDL_PollEvent(&ev)) {
33 if(quit) goto break_evloop;
36 time_msec = SDL_GetTicks() - start_time;
37 if(SDL_MUSTLOCK(fbsurf)) {
38 SDL_LockSurface(fbsurf);
40 fb_pixels = fbsurf->pixels;
44 if(SDL_MUSTLOCK(fbsurf)) {
45 SDL_UnlockSurface(fbsurf);
61 static void handle_event(SDL_Event *ev)
70 demo_keyboard(ev->key.keysym.sym, ev->key.state == SDL_PRESSED ? 1 : 0);