2016-01-27 09:11:59 +00:00
|
|
|
/****************************************************************************
|
|
|
|
* *
|
|
|
|
* Project64 - A Nintendo 64 emulator. *
|
|
|
|
* http://www.pj64-emu.com/ *
|
|
|
|
* Copyright (C) 2012 Project64. All rights reserved. *
|
|
|
|
* *
|
|
|
|
* License: *
|
|
|
|
* GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html *
|
|
|
|
* *
|
|
|
|
****************************************************************************/
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <Project64-core/N64System/N64Types.h>
|
|
|
|
|
|
|
|
class CDebugSettings
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CDebugSettings();
|
|
|
|
virtual ~CDebugSettings();
|
|
|
|
|
2018-01-15 21:23:21 +00:00
|
|
|
static inline bool HaveDebugger(void) { return m_HaveDebugger; }
|
|
|
|
static inline bool isDebugging(void) { return m_Debugging; }
|
2018-01-15 21:14:15 +00:00
|
|
|
static inline bool isStepping(void) { return m_Stepping; }
|
2018-01-17 11:36:28 +00:00
|
|
|
static inline bool SkipOp(void) { return m_SkipOp; }
|
2018-01-16 21:26:54 +00:00
|
|
|
static inline bool WaitingForStep(void) { return m_WaitingForStep; }
|
2016-12-12 19:11:47 +00:00
|
|
|
static inline bool bRecordRecompilerAsm(void) { return m_bRecordRecompilerAsm; }
|
2016-10-04 19:58:11 +00:00
|
|
|
static inline bool bShowTLBMisses(void) { return m_bShowTLBMisses; }
|
|
|
|
static inline bool bShowDivByZero(void) { return m_bShowDivByZero; }
|
2016-11-18 19:49:24 +00:00
|
|
|
static inline bool bRecordExecutionTimes(void) { return m_RecordExecutionTimes; }
|
2017-12-12 10:15:34 +00:00
|
|
|
static inline bool HaveExecutionBP(void) { return m_HaveExecutionBP; }
|
2018-02-01 17:28:08 +00:00
|
|
|
static inline bool HaveWriteBP(void) { return m_HaveWriteBP; }
|
2018-02-05 20:25:53 +00:00
|
|
|
static inline bool HaveReadBP(void) { return m_HaveReadBP; }
|
2018-02-16 05:38:00 +00:00
|
|
|
static inline bool bShowPifRamErrors(void) { return m_bShowPifRamErrors; }
|
2019-01-14 09:18:43 +00:00
|
|
|
static inline bool bCPULoggingEnabled(void) { return m_bCPULoggingEnabled; }
|
2019-01-17 09:34:24 +00:00
|
|
|
static inline uint32_t ExceptionBreakpoints(void) { return m_ExceptionBreakpoints; }
|
2018-02-16 05:38:00 +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;
|
|
|
|
static bool m_bShowDivByZero;
|
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;
|
2018-02-16 05:38:00 +00:00
|
|
|
|
2016-01-27 09:11:59 +00:00
|
|
|
static int32_t m_RefCount;
|
|
|
|
static bool m_Registered;
|
|
|
|
};
|