diff --git a/src/sm_rtl.c b/src/sm_rtl.c index 2128070..6bbbff4 100644 --- a/src/sm_rtl.c +++ b/src/sm_rtl.c @@ -151,14 +151,18 @@ void ReadFromFile(FILE *f, void *data, size_t n) { void RtlReset(bool preserve_sram) { snes_frame_counter = 0; - coroutine_state_0 = 1; snes_reset(g_snes, true); if (!preserve_sram) memset(g_sram, 0, 0x2000); + + coroutine_state_0 = 1; + RtlApuLock(); RtlRestoreMusicAfterLoad_Locked(true); RtlApuUnlock(); + + RtlSynchronizeWholeState(); }