From 8f3e8e4ca34bf3c521e20f41f7a54f5e447e0dac Mon Sep 17 00:00:00 2001 From: iwubcode Date: Thu, 22 Dec 2022 23:17:09 -0600 Subject: [PATCH] Core: add locked state to watches --- Source/Core/Common/Debug/Watches.cpp | 5 +++++ Source/Core/Common/Debug/Watches.h | 2 ++ Source/Core/Common/DebugInterface.h | 1 + Source/Core/Core/Debugger/PPCDebugInterface.cpp | 5 +++++ Source/Core/Core/Debugger/PPCDebugInterface.h | 1 + 5 files changed, 14 insertions(+) diff --git a/Source/Core/Common/Debug/Watches.cpp b/Source/Core/Common/Debug/Watches.cpp index 0088c8f26a..dddb3f3435 100644 --- a/Source/Core/Common/Debug/Watches.cpp +++ b/Source/Core/Common/Debug/Watches.cpp @@ -62,6 +62,11 @@ void Watches::UpdateWatchName(std::size_t index, std::string name) m_watches[index].name = std::move(name); } +void Watches::UpdateWatchLockedState(std::size_t index, bool locked) +{ + m_watches[index].locked = locked; +} + void Watches::EnableWatch(std::size_t index) { m_watches[index].is_enabled = Watch::State::Enabled; diff --git a/Source/Core/Common/Debug/Watches.h b/Source/Core/Common/Debug/Watches.h index 9cb7e3e76d..fc16adb826 100644 --- a/Source/Core/Common/Debug/Watches.h +++ b/Source/Core/Common/Debug/Watches.h @@ -22,6 +22,7 @@ struct Watch u32 address; std::string name; State is_enabled; + bool locked = false; Watch(u32 address, std::string name, State is_enabled); }; @@ -36,6 +37,7 @@ public: void UpdateWatch(std::size_t index, u32 address, std::string name); void UpdateWatchAddress(std::size_t index, u32 address); void UpdateWatchName(std::size_t index, std::string name); + void UpdateWatchLockedState(std::size_t index, bool locked); void EnableWatch(std::size_t index); void DisableWatch(std::size_t index); bool HasEnabledWatch(u32 address) const; diff --git a/Source/Core/Common/DebugInterface.h b/Source/Core/Common/DebugInterface.h index 8949fd3276..17c10a1894 100644 --- a/Source/Core/Common/DebugInterface.h +++ b/Source/Core/Common/DebugInterface.h @@ -32,6 +32,7 @@ public: virtual void UpdateWatch(std::size_t index, u32 address, std::string name) = 0; virtual void UpdateWatchAddress(std::size_t index, u32 address) = 0; virtual void UpdateWatchName(std::size_t index, std::string name) = 0; + virtual void UpdateWatchLockedState(std::size_t index, bool locked) = 0; virtual void EnableWatch(std::size_t index) = 0; virtual void DisableWatch(std::size_t index) = 0; virtual bool HasEnabledWatch(u32 address) const = 0; diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.cpp b/Source/Core/Core/Debugger/PPCDebugInterface.cpp index 1cb3c0c42b..33042cef19 100644 --- a/Source/Core/Core/Debugger/PPCDebugInterface.cpp +++ b/Source/Core/Core/Debugger/PPCDebugInterface.cpp @@ -112,6 +112,11 @@ void PPCDebugInterface::UpdateWatchName(std::size_t index, std::string name) return m_watches.UpdateWatchName(index, std::move(name)); } +void PPCDebugInterface::UpdateWatchLockedState(std::size_t index, bool locked) +{ + return m_watches.UpdateWatchLockedState(index, locked); +} + void PPCDebugInterface::EnableWatch(std::size_t index) { m_watches.EnableWatch(index); diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.h b/Source/Core/Core/Debugger/PPCDebugInterface.h index 8afc1dddab..316ca14c10 100644 --- a/Source/Core/Core/Debugger/PPCDebugInterface.h +++ b/Source/Core/Core/Debugger/PPCDebugInterface.h @@ -40,6 +40,7 @@ public: void UpdateWatch(std::size_t index, u32 address, std::string name) override; void UpdateWatchAddress(std::size_t index, u32 address) override; void UpdateWatchName(std::size_t index, std::string name) override; + void UpdateWatchLockedState(std::size_t index, bool locked) override; void EnableWatch(std::size_t index) override; void DisableWatch(std::size_t index) override; bool HasEnabledWatch(u32 address) const override;