From 96baa875a01ab419dec6ae4724ca6284a647129d Mon Sep 17 00:00:00 2001 From: kub Date: Wed, 19 Jan 2022 22:00:23 +0000 Subject: [PATCH] core, improve save/load --- pico/32x/32x.c | 3 ++- pico/pico.c | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/pico/32x/32x.c b/pico/32x/32x.c index d1e08aa1..c99f5b35 100644 --- a/pico/32x/32x.c +++ b/pico/32x/32x.c @@ -616,7 +616,8 @@ void Pico32xStateLoaded(int is_early) return; } - sh2s[0].m68krcycles_done = sh2s[1].m68krcycles_done = SekCyclesDone(); + if (sh2s[0].m68krcycles_done == 0 && sh2s[1].m68krcycles_done == 0) + sh2s[0].m68krcycles_done = sh2s[1].m68krcycles_done = SekCyclesDone(); p32x_update_irls(NULL, SekCyclesDone()); p32x_timers_recalc(); p32x_pwm_state_loaded(); diff --git a/pico/pico.c b/pico/pico.c index b5ac2641..e924cc10 100644 --- a/pico/pico.c +++ b/pico/pico.c @@ -187,6 +187,7 @@ int PicoReset(void) PsndReset(); // pal must be known here // create an empty "dma" to cause 68k exec start at random frame location + Pico.t.m68c_line_start = Pico.t.m68c_cnt; PicoVideoFIFOWrite(rand() & 0x1fff, 0, 0, PVS_CPURD); SekFinishIdleDet(); -- 2.39.2