else gp2x_video_RGB_setscaling(0, (PicoOpt&0x100)&&!(Pico.video.reg[12]&1) ? 256 : 320, 240);\r
}\r
\r
-void plat_video_toggle_renderer(void)\r
+void plat_video_toggle_renderer(int is_next, int is_menu)\r
{\r
+ /* alt, 16bpp, 8bpp */\r
if (PicoOpt & POPT_ALT_RENDERER) {\r
PicoOpt &= ~POPT_ALT_RENDERER;\r
- currentConfig.EmuOpt |= EOPT_16BPP;\r
- } else if (!(currentConfig.EmuOpt & EOPT_16BPP))\r
- PicoOpt |= POPT_ALT_RENDERER;\r
- else\r
+ if (is_next)\r
+ currentConfig.EmuOpt |= EOPT_16BPP;\r
+ } else if (!(currentConfig.EmuOpt & EOPT_16BPP)) {\r
+ if (is_next)\r
+ PicoOpt |= POPT_ALT_RENDERER;\r
+ else\r
+ currentConfig.EmuOpt |= EOPT_16BPP;\r
+ } else {\r
currentConfig.EmuOpt &= ~EOPT_16BPP;\r
+ if (!is_next)\r
+ PicoOpt |= POPT_ALT_RENDERER;\r
+ }\r
+\r
+ if (is_menu)\r
+ return;\r
\r
vidResetMode();\r
\r