diff --git a/pcsx2/DebugTools/Breakpoints.cpp b/pcsx2/DebugTools/Breakpoints.cpp index 34b7fa738817b..03046b2d81027 100644 --- a/pcsx2/DebugTools/Breakpoints.cpp +++ b/pcsx2/DebugTools/Breakpoints.cpp @@ -377,6 +377,14 @@ u32 CBreakPoints::CheckSkipFirst(BreakPointCpu cpu, u32 cmpPc) return 0; } +void CBreakPoints::ClearSkipFirst() +{ + breakSkipFirstAtEE_ = 0; + breakSkipFirstTicksEE_ = 0; + breakSkipFirstAtIop_ = 0; + breakSkipFirstTicksIop_ = 0; +} + const std::vector CBreakPoints::GetMemCheckRanges() { std::vector ranges = memChecks_; diff --git a/pcsx2/DebugTools/Breakpoints.h b/pcsx2/DebugTools/Breakpoints.h index 667552d9a9e9f..141c6442dee1c 100644 --- a/pcsx2/DebugTools/Breakpoints.h +++ b/pcsx2/DebugTools/Breakpoints.h @@ -138,6 +138,7 @@ class CBreakPoints static void SetSkipFirst(BreakPointCpu cpu, u32 pc); static u32 CheckSkipFirst(BreakPointCpu cpu, u32 pc); + static void ClearSkipFirst(); // Includes uncached addresses. static const std::vector GetMemCheckRanges(); diff --git a/pcsx2/R5900.cpp b/pcsx2/R5900.cpp index c353a0c25429f..cd2ba9bcf17f7 100644 --- a/pcsx2/R5900.cpp +++ b/pcsx2/R5900.cpp @@ -96,6 +96,8 @@ void cpuReset() g_eeloadMain = 0; g_eeloadExec = 0; g_osdsys_str = 0; + + CBreakPoints::ClearSkipFirst(); } __ri void cpuException(u32 code, u32 bd)