+void pemu_validate_config(void)\r
+{\r
+ if (gp2x_dev_id != GP2X_DEV_GP2X)\r
+ PicoOpt &= ~POPT_EXT_FM;\r
+ if (gp2x_dev_id != GP2X_DEV_WIZ)\r
+ currentConfig.EmuOpt &= ~EOPT_WIZ_TEAR_FIX;\r
+\r
+ if (currentConfig.gamma < 10 || currentConfig.gamma > 300)\r
+ currentConfig.gamma = 100;\r
+\r
+ if (currentConfig.CPUclock < 10 || currentConfig.CPUclock > 1024)\r
+ currentConfig.CPUclock = default_cpu_clock;\r
+}\r
+\r
+static int get_renderer(void)\r
+{\r
+ if (PicoAHW & PAHW_32X)\r
+ return currentConfig.renderer32x;\r
+ else\r
+ return currentConfig.renderer;\r
+}\r
+\r
+static void change_renderer(int diff)\r
+{\r
+ int *r;\r
+ if (PicoAHW & PAHW_32X)\r
+ r = ¤tConfig.renderer32x;\r
+ else\r
+ r = ¤tConfig.renderer;\r
+ *r += diff;\r
+\r
+ // 8bpp fast is not there (yet?)\r
+ if ((PicoAHW & PAHW_SMS) && *r == RT_8BIT_FAST)\r
+ (*r)++;\r
+\r
+ if (*r >= RT_COUNT)\r
+ *r = 0;\r
+ else if (*r < 0)\r
+ *r = RT_COUNT - 1;\r
+}\r
+\r
+#define is_16bit_mode() \\r
+ (get_renderer() == RT_16BIT || (PicoAHW & PAHW_32X))\r
+\r