added two new global pointers in demo.h: vmem_back and vmem_front, and
[dosdemo] / src / demo.c
index 7d22dc4..ce06a44 100644 (file)
@@ -6,11 +6,12 @@
 #include <limits.h>
 #include "demo.h"
 #include "screen.h"
+#include "3dgfx.h"
 
 int fb_width = 320;
 int fb_height = 240;
 int fb_bpp = 16;
-void *fb_pixels;
+uint16_t *fb_pixels, *vmem_back, *vmem_front;
 unsigned long time_msec;
 int mouse_x, mouse_y;
 unsigned int mouse_bmask;
@@ -22,10 +23,16 @@ int demo_init(int argc, char **argv)
 {
        struct screen *scr;
 
+       start_scr_name = getenv("START_SCR");
        if(argv[1]) {
                start_scr_name = argv[1];
        }
 
+       if(g3d_init() == -1) {
+               return -1;
+       }
+       g3d_framebuffer(fb_width, fb_height, fb_pixels);
+
        if(scr_init() == -1) {
                return -1;
        }
@@ -48,6 +55,7 @@ int demo_init(int argc, char **argv)
 void demo_cleanup(void)
 {
        scr_shutdown();
+       g3d_destroy();
 
        if(time_msec) {
                float fps = (float)nframes / ((float)time_msec / 1000.0f);