X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fgp2x%2Femu.c;h=64b439c17ed3f64fc11f9a3028414f91ac1d4a7c;hb=d90f5bd7488f5e5f41fd091fe05c1d67eccc276d;hp=e7993ec4131cb1864d1302c2a4bf0405fab6b513;hpb=a47dd66367c0d6d4ae2957dfd028125636ca9f65;p=picodrive.git diff --git a/platform/gp2x/emu.c b/platform/gp2x/emu.c index e7993ec..64b439c 100644 --- a/platform/gp2x/emu.c +++ b/platform/gp2x/emu.c @@ -341,15 +341,26 @@ static void vidResetMode(void) else gp2x_video_RGB_setscaling(0, (PicoOpt&0x100)&&!(Pico.video.reg[12]&1) ? 256 : 320, 240); } -void plat_video_toggle_renderer(void) +void plat_video_toggle_renderer(int is_next, int is_menu) { + /* alt, 16bpp, 8bpp */ if (PicoOpt & POPT_ALT_RENDERER) { PicoOpt &= ~POPT_ALT_RENDERER; - currentConfig.EmuOpt |= EOPT_16BPP; - } else if (!(currentConfig.EmuOpt & EOPT_16BPP)) - PicoOpt |= POPT_ALT_RENDERER; - else + if (is_next) + currentConfig.EmuOpt |= EOPT_16BPP; + } else if (!(currentConfig.EmuOpt & EOPT_16BPP)) { + if (is_next) + PicoOpt |= POPT_ALT_RENDERER; + else + currentConfig.EmuOpt |= EOPT_16BPP; + } else { currentConfig.EmuOpt &= ~EOPT_16BPP; + if (!is_next) + PicoOpt |= POPT_ALT_RENDERER; + } + + if (is_menu) + return; vidResetMode();