X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fgba%2Fmain.c;h=4ade40476c0edeb4a0e5bb03fd61dc2bc6df267b;hb=068bc9262b77d134440d149c0e124f5510ae4c68;hp=8417df18d933bba04acb954cd6eedd99413c1f64;hpb=b0f9c6ecc15c2d4b5df77a7a963b742a6352ee1a;p=gbajam22 diff --git a/src/gba/main.c b/src/gba/main.c index 8417df1..4ade404 100644 --- a/src/gba/main.c +++ b/src/gba/main.c @@ -4,6 +4,10 @@ #include "debug.h" #include "game.h" #include "maxmod.h" +#include "input.h" +#include "timer.h" +#include "xgl.h" +#include "scoredb.h" static void vblank(void); @@ -32,29 +36,35 @@ int main(void) REG_DISPSTAT |= DISPSTAT_IEN_VBLANK; unmask(INTR_VBLANK); - intr_enable(); + load_scores(); + gba_colors = scores[10].score & 1; + + 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"); + if(change_screen(find_screen("logo")) == -1) { + panic(get_pc(), "failed to find starting screen"); } + reset_msec_timer(); + 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();