7 int fb_width, fb_height;
14 void (*key_event)(int key, int pressed);
16 static struct sprites dbgfont;
19 int init(int argc, char **argv)
21 if(load_sprites(&dbgfont, "data/dbgfont.spr") == -1) {
24 if(intro_init() == -1) {
27 if(menu_init() == -1) {
41 void dbg_print(void *fb, int x, int y, const char *str)
43 uint16_t *dest = (uint16_t*)fb + y * fb_width + x;
48 if(c > ' ' && c < 128) {
49 draw_sprite(dest, fb_width * 2, &dbgfont, c - ' ');
55 void dbg_printf(void *fb, int x, int y, const char *fmt, ...)
57 static char buf[2048];
61 vsprintf(buf, fmt, ap);
64 dbg_print(fb, x, y, buf);
67 void dbg_fps(void *fb)
69 static char fpsbuf[8];
70 static long frame, prev_upd;
71 long msec = time_msec;
76 delta = msec - prev_upd;
79 sprintf(fpsbuf, "%2ld.%1ld", frame >> 10, 10 * (frame & 0x3ff) >> 10);
84 dbg_print(fb, 2, 2, fpsbuf);