diff --git a/src/sm_85.c b/src/sm_85.c index 2665853..2aa7436 100644 --- a/src/sm_85.c +++ b/src/sm_85.c @@ -344,7 +344,7 @@ CoroutineRet HandleMessageBoxInteraction_Async(void) { // 0x85846D do { COROUTINE_AWAIT(3, WaitForNMI_NoUpdate_Async()); ReadJoypadInputs(); - } while (!joypad1_newkeys); + } while (!joypad1_lastkeys); } GETOUT:; COROUTINE_END(0); diff --git a/src/sm_cpu_infra.c b/src/sm_cpu_infra.c index 188f7de..22939c4 100644 --- a/src/sm_cpu_infra.c +++ b/src/sm_cpu_infra.c @@ -664,7 +664,7 @@ Snes *SnesInit(const char *filename) { // Patch HandleMessageBoxInteraction logic { uint8 t[] = { 0x20, 0x50, 0x96, 0x60 }; PatchBytes(0x8584A3, t, sizeof(t)); } - { uint8 t[] = { 0x20, 0x36, 0x81, 0x22, 0x59, 0x94, 0x80, 0xc2, 0x30, 0xa5, 0x8f, 0xf0, 0xf3, 0x60 }; PatchBytes(0x859650, t, sizeof(t)); } + { uint8 t[] = { 0x20, 0x36, 0x81, 0x22, 0x59, 0x94, 0x80, 0xc2, 0x30, 0xa5, 0x8b, 0xf0, 0xf3, 0x60 }; PatchBytes(0x859650, t, sizeof(t)); } { uint8 t[] = { 0x18, 0x18 }; PatchBytes(0x8584CC, t, sizeof(t)); } // Don't wait 2 loops // Patch RestorePpuForMessageBox