pandora: some fixes for 2.0
authornotaz <notasas@gmail.com>
Sat, 18 May 2024 19:33:23 +0000 (22:33 +0300)
committerkub <derkub@gmail.com>
Sat, 18 May 2024 21:21:41 +0000 (23:21 +0200)
platform/pandora/plat.c

index 20f9ca8..bb7774f 100644 (file)
@@ -171,8 +171,13 @@ void pemu_finalize_frame(const char *fps, const char *notice)
        }\r
        if (notice && notice[0])\r
                emu_osd_text16(2 + g_osd_start_x, g_osd_y, notice);\r
-       if (fps && fps[0] && (currentConfig.EmuOpt & EOPT_SHOW_FPS))\r
-               emu_osd_text16(g_osd_fps_x, g_osd_y, fps);\r
+       if (fps && fps[0] && (currentConfig.EmuOpt & EOPT_SHOW_FPS)) {\r
+               const char *p;\r
+               // avoid wrapping when fps is very high\r
+               if (fps[5] != ' ' && (p = strchr(fps, '/')))\r
+                       fps = p;\r
+               emu_osd_text16(g_osd_fps_x, g_osd_y, fps);\r
+       }\r
        if ((PicoIn.AHW & PAHW_MCD) && (currentConfig.EmuOpt & EOPT_EN_CD_LEDS))\r
                draw_cd_leds();\r
 }\r
@@ -186,8 +191,12 @@ void plat_video_flip(void)
        xenv_update(NULL, NULL, NULL, NULL);\r
 }\r
 \r
+// pnd doesn't use multiple renderers, but we have to handle this since it's\r
+// called on 32x enable and PicoDrawSetOutFormat() sets up the 32x layers\r
 void plat_video_toggle_renderer(int change, int is_menu)\r
 {\r
+       if (!is_menu)\r
+               PicoDrawSetOutFormat(PDF_RGB555, 0);\r
 }\r
 \r
 void plat_video_menu_enter(int is_rom_loaded)\r