2016-01-27 09:11:59 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <Project64-core/N64System/N64Types.h>
|
|
|
|
|
|
|
|
class CDebugSettings
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CDebugSettings();
|
|
|
|
virtual ~CDebugSettings();
|
|
|
|
|
2022-10-10 00:22:17 +00:00
|
|
|
static inline bool HaveDebugger(void)
|
|
|
|
{
|
|
|
|
return m_HaveDebugger;
|
|
|
|
}
|
|
|
|
static inline bool isDebugging(void)
|
|
|
|
{
|
|
|
|
return m_Debugging;
|
|
|
|
}
|
|
|
|
static inline bool isStepping(void)
|
|
|
|
{
|
|
|
|
return m_Stepping;
|
|
|
|
}
|
|
|
|
static inline bool SkipOp(void)
|
|
|
|
{
|
|
|
|
return m_SkipOp;
|
|
|
|
}
|
|
|
|
static inline bool WaitingForStep(void)
|
|
|
|
{
|
|
|
|
return m_WaitingForStep;
|
|
|
|
}
|
|
|
|
static inline bool bRecordRecompilerAsm(void)
|
|
|
|
{
|
|
|
|
return m_bRecordRecompilerAsm;
|
|
|
|
}
|
|
|
|
static inline bool bShowTLBMisses(void)
|
|
|
|
{
|
|
|
|
return m_bShowTLBMisses;
|
|
|
|
}
|
|
|
|
static inline bool bRecordExecutionTimes(void)
|
|
|
|
{
|
|
|
|
return m_RecordExecutionTimes;
|
|
|
|
}
|
|
|
|
static inline bool HaveExecutionBP(void)
|
|
|
|
{
|
|
|
|
return m_HaveExecutionBP;
|
|
|
|
}
|
|
|
|
static inline bool HaveWriteBP(void)
|
|
|
|
{
|
|
|
|
return m_HaveWriteBP;
|
|
|
|
}
|
|
|
|
static inline bool HaveReadBP(void)
|
|
|
|
{
|
|
|
|
return m_HaveReadBP;
|
|
|
|
}
|
|
|
|
static inline bool bShowPifRamErrors(void)
|
|
|
|
{
|
|
|
|
return m_bShowPifRamErrors;
|
|
|
|
}
|
|
|
|
static inline bool bCPULoggingEnabled(void)
|
|
|
|
{
|
|
|
|
return m_bCPULoggingEnabled;
|
|
|
|
}
|
|
|
|
static inline uint32_t ExceptionBreakpoints(void)
|
|
|
|
{
|
|
|
|
return m_ExceptionBreakpoints;
|
|
|
|
}
|
|
|
|
static inline uint32_t FpExceptionBreakpoints(void)
|
|
|
|
{
|
|
|
|
return m_FpExceptionBreakpoints;
|
|
|
|
}
|
|
|
|
static inline uint32_t IntrBreakpoints(void)
|
|
|
|
{
|
|
|
|
return m_IntrBreakpoints;
|
|
|
|
}
|
|
|
|
static inline uint32_t RcpIntrBreakpoints(void)
|
|
|
|
{
|
|
|
|
return m_RcpIntrBreakpoints;
|
|
|
|
}
|
|
|
|
static inline bool EndOnPermLoop(void)
|
|
|
|
{
|
|
|
|
return m_EndOnPermLoop;
|
|
|
|
}
|
|
|
|
static inline bool BreakOnUnhandledMemory(void)
|
|
|
|
{
|
|
|
|
return m_BreakOnUnhandledMemory;
|
|
|
|
}
|
|
|
|
static inline bool BreakOnAddressError(void)
|
|
|
|
{
|
|
|
|
return m_BreakOnAddressError;
|
|
|
|
}
|
|
|
|
static inline bool StepOnBreakOpCode(void)
|
|
|
|
{
|
|
|
|
return m_StepOnBreakOpCode;
|
|
|
|
}
|
2020-03-31 23:54:10 +00:00
|
|
|
|
2016-01-27 09:11:59 +00:00
|
|
|
private:
|
|
|
|
static void StaticRefreshSettings(CDebugSettings * _this)
|
|
|
|
{
|
|
|
|
_this->RefreshSettings();
|
|
|
|
}
|
|
|
|
|
|
|
|
void RefreshSettings(void);
|
|
|
|
|
2018-01-15 21:23:21 +00:00
|
|
|
static bool m_HaveDebugger;
|
|
|
|
static bool m_Debugging;
|
2018-01-15 21:14:15 +00:00
|
|
|
static bool m_Stepping;
|
2018-01-17 11:36:28 +00:00
|
|
|
static bool m_SkipOp;
|
2018-01-16 21:26:54 +00:00
|
|
|
static bool m_WaitingForStep;
|
2016-12-12 19:11:47 +00:00
|
|
|
static bool m_bRecordRecompilerAsm;
|
2016-01-27 09:11:59 +00:00
|
|
|
static bool m_bShowTLBMisses;
|
2016-10-02 21:46:05 +00:00
|
|
|
static bool m_RecordExecutionTimes;
|
2017-12-12 10:15:34 +00:00
|
|
|
static bool m_HaveExecutionBP;
|
2018-02-01 17:28:08 +00:00
|
|
|
static bool m_HaveWriteBP;
|
2018-02-05 20:25:53 +00:00
|
|
|
static bool m_HaveReadBP;
|
2018-02-16 05:38:00 +00:00
|
|
|
static bool m_bShowPifRamErrors;
|
2019-01-14 09:18:43 +00:00
|
|
|
static bool m_bCPULoggingEnabled;
|
2019-01-17 09:34:24 +00:00
|
|
|
static uint32_t m_ExceptionBreakpoints;
|
2019-08-20 22:20:49 +00:00
|
|
|
static uint32_t m_FpExceptionBreakpoints;
|
|
|
|
static uint32_t m_IntrBreakpoints;
|
|
|
|
static uint32_t m_RcpIntrBreakpoints;
|
2022-08-01 01:29:16 +00:00
|
|
|
static bool m_EndOnPermLoop;
|
2022-08-01 00:30:07 +00:00
|
|
|
static bool m_BreakOnUnhandledMemory;
|
2022-08-01 01:08:12 +00:00
|
|
|
static bool m_BreakOnAddressError;
|
2022-08-01 02:13:17 +00:00
|
|
|
static bool m_StepOnBreakOpCode;
|
2020-03-31 23:54:10 +00:00
|
|
|
|
2016-01-27 09:11:59 +00:00
|
|
|
static int32_t m_RefCount;
|
|
|
|
static bool m_Registered;
|
|
|
|
};
|