X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=fceu.git;a=blobdiff_plain;f=drivers%2Fgp2x%2Fgp2x-video.c;h=8bd2be180999a20f2aaea2d1132d0b6f2b81d1f5;hp=6433724a49422d9929ddb1e6f31fbe89bf8c0771;hb=937bf65b1c80e9394547e5f105664bd26f3671de;hpb=9115e7d2b5e5b8dc00774fe92db97f1d02b2fee1 diff --git a/drivers/gp2x/gp2x-video.c b/drivers/gp2x/gp2x-video.c index 6433724..8bd2be1 100644 --- a/drivers/gp2x/gp2x-video.c +++ b/drivers/gp2x/gp2x-video.c @@ -19,6 +19,8 @@ #include #include +#include "../../video.h" + #include "gp2x.h" #include "minimal.h" @@ -27,7 +29,7 @@ extern int showfps; static char fps_str[32]; static int framesEmulated, framesRendered; -int stretch_offset=32; +int scaled_display=0; int paletterefresh; #define FPS_COLOR 61 @@ -136,6 +138,7 @@ void CleanSurface(void) memset (gp2x_screen8, 0x80, 320*240); gp2x_video_flip(); } + XBuf = gp2x_screen8; } @@ -154,6 +157,7 @@ int InitVideo(void) srendline=0; erendline=239; + XBuf = gp2x_screen8; // TODO: use mmuhacked upper mem return 1; } @@ -194,19 +198,19 @@ static INLINE void printFps(uint8 *screen) prevsec = tv_now.tv_sec; } - if (stretch_offset > 0) + if (!scaled_display) { if (needfpsflip) { int y, *destt = (int *) screen; - for (y = 240; y; y--) + for (y = 20/*240*/; y; y--) { *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; - destt += 64; + destt += 64+8; - *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; - *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; + //*destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; + //*destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; *destt++ = 0x3F3F3F3F; } if (showfps) { @@ -221,46 +225,23 @@ static INLINE void printFps(uint8 *screen) { if (showfps) { - gp2x_text(screen, 0, 0, fps_str, FPS_COLOR, 0); + gp2x_text(screen+32, 0, 0, fps_str, FPS_COLOR, 0); } } } -void BlitScreen(uint8 * XBuf) +void BlitScreen(uint8 *buf) { - int x, y, yinc; - framesEmulated++; - if (!XBuf) return; + if (!buf) return; framesRendered++; -#if 1 // 48->54 - y=240; - yinc=272*(y-1); - while (y--) - { - int* dest=(int *) (gp2x_screen8+((y << 8) + (y << 6))+stretch_offset); - - int* src=(int *) (XBuf+yinc); - x=64; - while (x--) - { - dest[x]=src[x]; - } - yinc-=272; - } - - if (paletterefresh) - { - gp2x_video_setpalette(); - paletterefresh = 0; - } -#endif printFps(gp2x_screen8); gp2x_video_flip(); + XBuf = gp2x_screen8; }