X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=eradicate;a=blobdiff_plain;f=src%2Fgame.c;h=86170cb128b6c1d4104dff022a3749ac3ada3c4b;hp=4c220b5c6cfd39d38940c9406cffb7c6dd204f06;hb=713d33d0c193f880d665dc6f4e62eac9549b747e;hpb=ca4cf08917d2c51d7a98c4cea6dae71c0ae7225d diff --git a/src/game.c b/src/game.c index 4c220b5..86170cb 100644 --- a/src/game.c +++ b/src/game.c @@ -1,3 +1,5 @@ +#include +#include #include "game.h" #include "screens.h" #include "sprite.h" @@ -50,3 +52,34 @@ void dbg_print(void *fb, int x, int y, const char *str) } } +void dbg_printf(void *fb, int x, int y, const char *fmt, ...) +{ + static char buf[2048]; + va_list ap; + + va_start(ap, fmt); + vsprintf(buf, fmt, ap); + va_end(ap); + + dbg_print(fb, x, y, buf); +} + +void dbg_fps(void *fb) +{ + static char fpsbuf[8]; + static long frame, prev_upd; + long msec = time_msec; + long delta; + + frame++; + + delta = msec - prev_upd; + if(delta >= 1024) { + frame *= 1000; + sprintf(fpsbuf, "%2ld.%1ld", frame >> 10, 10 * (frame & 0x3ff) >> 10); + frame = 0; + prev_upd = msec; + } + + dbg_print(fb, 2, 2, fpsbuf); +}