diff --git a/Source/Core/Common/DebugInterface.h b/Source/Core/Common/DebugInterface.h index a8fbea4efc..3aa8faec8f 100644 --- a/Source/Core/Common/DebugInterface.h +++ b/Source/Core/Common/DebugInterface.h @@ -28,7 +28,9 @@ public: virtual void AddWatch(unsigned int /*address*/) {} virtual void ClearAllMemChecks() {} virtual bool IsMemCheck(unsigned int /*address*/) { return false; } - virtual void ToggleMemCheck(unsigned int /*address*/) {} + virtual void ToggleMemCheck(unsigned int /*address*/, bool /*read*/, bool /*write*/, bool /*log*/) + { + } virtual unsigned int ReadMemory(unsigned int /*address*/) { return 0; } virtual void WriteExtraMemory(int /*memory*/, unsigned int /*value*/, unsigned int /*address*/) {} virtual unsigned int ReadExtraMemory(int /*memory*/, unsigned int /*address*/) { return 0; } diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.cpp b/Source/Core/Core/Debugger/PPCDebugInterface.cpp index b9a4a2f03d..4499e9ed0a 100644 --- a/Source/Core/Core/Debugger/PPCDebugInterface.cpp +++ b/Source/Core/Core/Debugger/PPCDebugInterface.cpp @@ -140,7 +140,7 @@ bool PPCDebugInterface::IsMemCheck(unsigned int address) return (Memory::AreMemoryBreakpointsActivated() && PowerPC::memchecks.GetMemCheck(address)); } -void PPCDebugInterface::ToggleMemCheck(unsigned int address) +void PPCDebugInterface::ToggleMemCheck(unsigned int address, bool read, bool write, bool log) { if (Memory::AreMemoryBreakpointsActivated() && !PowerPC::memchecks.GetMemCheck(address)) { @@ -148,10 +148,10 @@ void PPCDebugInterface::ToggleMemCheck(unsigned int address) TMemCheck MemCheck; MemCheck.StartAddress = address; MemCheck.EndAddress = address; - MemCheck.OnRead = true; - MemCheck.OnWrite = true; + MemCheck.OnRead = read; + MemCheck.OnWrite = write; - MemCheck.Log = true; + MemCheck.Log = log; MemCheck.Break = true; PowerPC::memchecks.Add(MemCheck); diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.h b/Source/Core/Core/Debugger/PPCDebugInterface.h index be4a7a1502..21777089de 100644 --- a/Source/Core/Core/Debugger/PPCDebugInterface.h +++ b/Source/Core/Core/Debugger/PPCDebugInterface.h @@ -26,7 +26,8 @@ public: void ToggleBreakpoint(unsigned int address) override; void ClearAllMemChecks() override; bool IsMemCheck(unsigned int address) override; - void ToggleMemCheck(unsigned int address) override; + void ToggleMemCheck(unsigned int address, bool read = true, bool write = true, + bool log = true) override; unsigned int ReadMemory(unsigned int address) override; enum diff --git a/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.cpp b/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.cpp index 4165581a65..963f0c319d 100644 --- a/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.cpp +++ b/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.cpp @@ -132,7 +132,7 @@ void DSPDebugInterface::ClearAllMemChecks() PanicAlert("MemCheck functionality not supported in DSP module."); } -void DSPDebugInterface::ToggleMemCheck(unsigned int address) +void DSPDebugInterface::ToggleMemCheck(unsigned int address, bool read, bool write, bool log) { PanicAlert("MemCheck functionality not supported in DSP module."); } diff --git a/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.h b/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.h index cb71639617..c492c8946f 100644 --- a/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.h +++ b/Source/Core/Core/HW/DSPLLE/DSPDebugInterface.h @@ -24,7 +24,8 @@ public: void ToggleBreakpoint(unsigned int address) override; void ClearAllMemChecks() override; bool IsMemCheck(unsigned int address) override; - void ToggleMemCheck(unsigned int address) override; + void ToggleMemCheck(unsigned int address, bool read = true, bool write = true, + bool log = true) override; unsigned int ReadMemory(unsigned int address) override; unsigned int ReadInstruction(unsigned int address) override; unsigned int GetPC() override;