X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fgp2x%2Fgp2x-video.c;h=d8524b6df410fd3aa55f954f7fccec8e0abda4ab;hb=3ee0ae39373065c2afa6ddd823a0f667d5875d8a;hp=e7022391ed8f9151fa47d5a3a9859f69dcf2213b;hpb=47d0839eef773569f1093b47d795714cac0dacd2;p=fceu.git diff --git a/drivers/gp2x/gp2x-video.c b/drivers/gp2x/gp2x-video.c index e702239..d8524b6 100644 --- a/drivers/gp2x/gp2x-video.c +++ b/drivers/gp2x/gp2x-video.c @@ -99,12 +99,7 @@ int InitVideo(void) } -void ToggleFS(void) -{ -} - - -// 16: rrrr rggg gggb bbbb +// 16: rrrr rggg gg0b bbbb void FCEUD_SetPalette(uint8 index, uint8 r, uint8 g, uint8 b) { /* note: menu depends on bit5 being 0 */ @@ -161,19 +156,17 @@ static INLINE void printFps(uint8 *screen) } -void BlitScreen(uint8 *buf) +void BlitPrepare(int skip) { framesEmulated++; - if (!buf) { + if (skip) { printFps(0); return; } framesRendered++; - printFps(gp2x_screen); - if (eoptions & EO_CLIPSIDES) { int i, *p = (int *) ((char *)gp2x_screen + 32); @@ -183,6 +176,8 @@ void BlitScreen(uint8 *buf) } } + printFps(gp2x_screen); + if (Settings.scaling == 3) { soft_scale((char *)gp2x_screen + 32, gp2x_palette16, srendline, erendline-srendline); @@ -190,8 +185,18 @@ void BlitScreen(uint8 *buf) memset32((int *)((char *)gp2x_screen + 32), 0, srendline*320*2/4); } - gp2x_video_flip(); - XBuf = gp2x_screen; + /* at this point we should be done with the frame */ + gp2x_video_flush_cache(); +} + + +void BlitScreen(int skip) +{ + if (!skip) + { + gp2x_video_flip(); + XBuf = gp2x_screen; + } }