From 299c27ae6ef9a26da4a784bd5d938bc5036eae5c Mon Sep 17 00:00:00 2001 From: goyuken Date: Mon, 26 May 2014 01:29:00 +0000 Subject: [PATCH] NESHawk: fix desync bug when using reset or power and frame precise save/loadstate --- BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.cs index 68a333bdad..2956fd91fc 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.cs @@ -808,7 +808,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES void SyncState(Serializer ser) { - int version = 3; + int version = 4; ser.BeginSection("NES"); ser.Sync("version", ref version); ser.Sync("Frame", ref _frame); @@ -832,7 +832,9 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES apu.SyncState(ser); if (version >= 2) + { ser.Sync("DB", ref DB); + } if (version >= 3) { ser.Sync("latched4016", ref latched4016); @@ -840,6 +842,11 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES ControllerDeck.SyncState(ser); ser.EndSection(); } + if (version >= 4) + { + ser.Sync("resetSignal", ref resetSignal); + ser.Sync("hardResetSignal", ref hardResetSignal); + } ser.EndSection(); }