better menu screen
[gbajam22] / src / gba / main.c
index 8417df1..925aebf 100644 (file)
@@ -4,6 +4,8 @@
 #include "debug.h"
 #include "game.h"
 #include "maxmod.h"
+#include "input.h"
+#include "xgl.h"
 
 static void vblank(void);
 
@@ -32,29 +34,31 @@ int main(void)
        REG_DISPSTAT |= DISPSTAT_IEN_VBLANK;
        unmask(INTR_VBLANK);
 
-       intr_enable();
+       xgl_init();
 
        if(init_screens() == -1) {
                panic(get_pc(), "failed to initialize screens");
        }
 
        if(change_screen(find_screen("game")) == -1) {
-               panic(get_pc(), "failed to find game screen");
+               panic(get_pc(), "failed to find starting screen");
        }
 
+       intr_enable();
+
        for(;;) {
                curscr->frame();
        }
        return 0;
 }
 
+ARM_IWRAM
 static void vblank(void)
 {
        vblperf_count++;
 
-       if(curscr && curscr->vblank) {
-               curscr->vblank();
-       }
+       keyb_vblank();
+       curscr->vblank();
 
 #ifndef NOSOUND
        mmVBlank();