SH2 drc, dummy soc for GP2X
[libpicofe.git] / gp2x / emu.c
index 97b28b6..49f7149 100644 (file)
@@ -78,7 +78,9 @@ void pemu_prep_defconfig(void)
 \r
        memset(&defaultConfig, 0, sizeof(defaultConfig));\r
        defaultConfig.EmuOpt    = 0x9d | EOPT_RAM_TIMINGS|EOPT_CONFIRM_SAVE|EOPT_EN_CD_LEDS;\r
-       defaultConfig.s_PicoOpt = 0x0f | POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_SVP_DRC|POPT_ACC_SPRITES;\r
+       defaultConfig.s_PicoOpt = POPT_EN_STEREO|POPT_EN_FM|POPT_EN_PSG|POPT_EN_Z80 |\r
+                                 POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_SVP_DRC|POPT_ACC_SPRITES |\r
+                                 POPT_EN_32X|POPT_EN_PWM;\r
        defaultConfig.s_PsndRate = 44100;\r
        defaultConfig.s_PicoRegion = 0; // auto\r
        defaultConfig.s_PicoAutoRgnOrder = 0x184; // US, EU, JP\r
@@ -498,10 +500,14 @@ static void vidResetMode(void)
        make_local_pal = (PicoAHW & PAHW_SMS) ? make_local_pal_sms : make_local_pal_md;\r
 }\r
 \r
-void plat_video_toggle_renderer(int is_next, int is_menu)\r
+void plat_video_toggle_renderer(int is_next, int force_16bpp, int is_menu)\r
 {\r
+       if (force_16bpp) {\r
+               PicoOpt &= ~POPT_ALT_RENDERER;\r
+               currentConfig.EmuOpt |= EOPT_16BPP;\r
+       }\r
        /* alt, 16bpp, 8bpp */\r
-       if (PicoOpt & POPT_ALT_RENDERER) {\r
+       else if (PicoOpt & POPT_ALT_RENDERER) {\r
                PicoOpt &= ~POPT_ALT_RENDERER;\r
                if (is_next)\r
                        currentConfig.EmuOpt |= EOPT_16BPP;\r