[Debugger] add missing code

This commit is contained in:
zilmar 2018-02-06 07:25:53 +11:00
parent 2fdf8e5a09
commit 91999a1eba
6 changed files with 19 additions and 2 deletions

View File

@ -26,6 +26,10 @@ __interface CDebugger
virtual void FrameDrawn(void) = 0; virtual void FrameDrawn(void) = 0;
virtual void WaitForStep(void) = 0; virtual void WaitForStep(void) = 0;
virtual bool ExecutionBP(uint32_t address) = 0; virtual bool ExecutionBP(uint32_t address) = 0;
virtual bool ReadBP8(uint32_t address) = 0;
virtual bool ReadBP16(uint32_t address) = 0;
virtual bool ReadBP32(uint32_t address) = 0;
virtual bool ReadBP64(uint32_t address) = 0;
virtual bool WriteBP8(uint32_t address) = 0; virtual bool WriteBP8(uint32_t address) = 0;
virtual bool WriteBP16(uint32_t address) = 0; virtual bool WriteBP16(uint32_t address) = 0;
virtual bool WriteBP32(uint32_t address) = 0; virtual bool WriteBP32(uint32_t address) = 0;

View File

@ -29,6 +29,7 @@ public:
static inline bool bRecordExecutionTimes(void) { return m_RecordExecutionTimes; } static inline bool bRecordExecutionTimes(void) { return m_RecordExecutionTimes; }
static inline bool HaveExecutionBP(void) { return m_HaveExecutionBP; } static inline bool HaveExecutionBP(void) { return m_HaveExecutionBP; }
static inline bool HaveWriteBP(void) { return m_HaveWriteBP; } static inline bool HaveWriteBP(void) { return m_HaveWriteBP; }
static inline bool HaveReadBP(void) { return m_HaveReadBP; }
private: private:
static void StaticRefreshSettings(CDebugSettings * _this) static void StaticRefreshSettings(CDebugSettings * _this)
@ -49,6 +50,7 @@ private:
static bool m_RecordExecutionTimes; static bool m_RecordExecutionTimes;
static bool m_HaveExecutionBP; static bool m_HaveExecutionBP;
static bool m_HaveWriteBP; static bool m_HaveWriteBP;
static bool m_HaveReadBP;
static int32_t m_RefCount; static int32_t m_RefCount;
static bool m_Registered; static bool m_Registered;

View File

@ -233,6 +233,7 @@ enum SettingID
Debugger_SkipOp, Debugger_SkipOp,
Debugger_HaveExecutionBP, Debugger_HaveExecutionBP,
Debugger_WriteBPExists, Debugger_WriteBPExists,
Debugger_ReadBPExists,
Debugger_WaitingForStep, Debugger_WaitingForStep,
//Trace //Trace

View File

@ -32,7 +32,10 @@ public:
const breakpoints_t & WriteMem(void) const { return m_WriteMem; } const breakpoints_t & WriteMem(void) const { return m_WriteMem; }
const breakpoints_t & Execution(void) const { return m_Execution; } const breakpoints_t & Execution(void) const { return m_Execution; }
BPSTATE ReadBPExists(uint32_t address); BPSTATE ReadBPExists8(uint32_t address);
BPSTATE ReadBPExists16(uint32_t address);
BPSTATE ReadBPExists32(uint32_t address);
BPSTATE ReadBPExists64(uint32_t address);
BPSTATE WriteBPExists8(uint32_t address); BPSTATE WriteBPExists8(uint32_t address);
BPSTATE WriteBPExists16(uint32_t address); BPSTATE WriteBPExists16(uint32_t address);
BPSTATE WriteBPExists32(uint32_t address); BPSTATE WriteBPExists32(uint32_t address);
@ -58,8 +61,9 @@ public:
private: private:
void UpdateAlignedWriteBP(void); void UpdateAlignedWriteBP(void);
void UpdateAlignedReadBP(void);
breakpoints_t m_ReadMem; breakpoints_t m_ReadMem, m_ReadMem16, m_ReadMem32, m_ReadMem64;
breakpoints_t m_WriteMem, m_WriteMem16, m_WriteMem32, m_WriteMem64; breakpoints_t m_WriteMem, m_WriteMem16, m_WriteMem32, m_WriteMem64;
breakpoints_t m_Execution; breakpoints_t m_Execution;
}; };

View File

@ -89,6 +89,7 @@ public:
private: private:
BEGIN_MSG_MAP_EX(CDebugCommandsView) BEGIN_MSG_MAP_EX(CDebugCommandsView)
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog) MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
MESSAGE_HANDLER(WM_ACTIVATE, OnActivate)
MESSAGE_HANDLER(WM_SIZING, OnSizing) MESSAGE_HANDLER(WM_SIZING, OnSizing)
MESSAGE_HANDLER(WM_GETMINMAXINFO, OnGetMinMaxInfo) MESSAGE_HANDLER(WM_GETMINMAXINFO, OnGetMinMaxInfo)
MESSAGE_HANDLER(WM_VSCROLL, OnScroll) MESSAGE_HANDLER(WM_VSCROLL, OnScroll)
@ -165,6 +166,7 @@ private:
static void StaticWaitingForStepChanged(CDebugCommandsView * __this) { __this->WaitingForStepChanged(); } static void StaticWaitingForStepChanged(CDebugCommandsView * __this) { __this->WaitingForStepChanged(); }
LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnSizing(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnSizing(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnScroll(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnScroll(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnMeasureItem(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnMeasureItem(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);

View File

@ -59,6 +59,10 @@ public:
void OpenDMALogWindow(void); void OpenDMALogWindow(void);
bool ExecutionBP(uint32_t address); bool ExecutionBP(uint32_t address);
bool ReadBP8(uint32_t address);
bool ReadBP16(uint32_t address);
bool ReadBP32(uint32_t address);
bool ReadBP64(uint32_t address);
bool WriteBP8(uint32_t address); bool WriteBP8(uint32_t address);
bool WriteBP16(uint32_t address); bool WriteBP16(uint32_t address);
bool WriteBP32(uint32_t address); bool WriteBP32(uint32_t address);