X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fcommon%2Femu.c;h=f995c1d4bcc006ca2736c0b592e193b3dfe2ae75;hb=7c18e34a745879c283ce517a799e648eef6d06ef;hp=a075abdf01620dedc36a65ce7f42c0642f77ddaf;hpb=fcdefcf62cb71969b456a6f27688adbeb5890bb9;p=picodrive.git diff --git a/platform/common/emu.c b/platform/common/emu.c index a075abd..f995c1d 100644 --- a/platform/common/emu.c +++ b/platform/common/emu.c @@ -453,11 +453,14 @@ static void shutdown_MCD(void) static void system_announce(void) { - const char *sys_name, *tv_standard; + const char *sys_name, *tv_standard, *extra = ""; int fps; if (PicoAHW & PAHW_SMS) { sys_name = "Master System"; +#ifdef NO_SMS + extra = " [no support]"; +#endif } else if (PicoAHW & PAHW_PICO) { sys_name = "Pico"; } else if (PicoAHW & PAHW_MCD) { @@ -474,7 +477,7 @@ static void system_announce(void) tv_standard = Pico.m.pal ? "PAL" : "NTSC"; fps = Pico.m.pal ? 50 : 60; - emu_status_msg("%s %s / %dFPS", tv_standard, sys_name, fps); + emu_status_msg("%s %s / %dFPS%s", tv_standard, sys_name, fps, extra); } // note: this function might mangle rom_fname @@ -1137,8 +1140,11 @@ static void emu_tray_close(void) void emu_32x_startup(void) { - plat_video_toggle_renderer(0, 0); + plat_video_toggle_renderer(0, 0); // HACK system_announce(); + + // force mode change event + rendstatus_old = -1; } void emu_reset_game(void) @@ -1428,6 +1434,14 @@ void emu_loop(void) Pico.m.dirtyPal = 1; rendstatus_old = -1; + PicoLoopPrepare(); + + // prepare CD buffer + if (PicoAHW & PAHW_MCD) + PicoCDBufferInit(); + + pemu_loop_prep(); + /* number of ticks per frame */ if (Pico.m.pal) { target_fps = 50; @@ -1437,13 +1451,6 @@ void emu_loop(void) target_frametime = ms_to_ticks(1000) / 60 + 1; } - // prepare CD buffer - if (PicoAHW & PAHW_MCD) - PicoCDBufferInit(); - PicoLoopPrepare(); - - pemu_loop_prep(); - timestamp_fps = get_ticks(); reset_timing = 1;