project64/Source/Project64/Settings/Game Settings.h

72 lines
3.4 KiB
C++

/****************************************************************************
* *
* Project 64 - 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 <N64 System/N64 Types.h>
class CGameSettings
{
public:
void RefreshGameSettings ( void );
inline static bool bRomInMemory ( void ) { return m_bRomInMemory; }
inline static bool bRegCaching ( void ) { return m_RegCaching; }
inline static bool bLinkBlocks ( void ) { return m_bLinkBlocks; }
inline static FUNC_LOOKUP_METHOD LookUpMode ( void ) { return (FUNC_LOOKUP_METHOD)m_LookUpMode; }
static inline bool bUseTlb ( void ) { return m_bUseTlb; }
inline static DWORD CountPerOp ( void ) { return m_CountPerOp; }
inline static DWORD ViRefreshRate ( void ) { return m_ViRefreshRate; }
inline static DWORD AiCountPerBytes ( void ) { return m_AiCountPerBytes; }
inline static bool bDelayDP ( void ) { return m_DelayDP; }
inline static bool bDelaySI ( void ) { return m_DelaySI; }
inline static DWORD RdramSize ( void ) { return m_RdramSize; }
inline static bool bFixedAudio ( void ) { return m_bFixedAudio; }
inline static bool bSyncToAudio ( void ) { return m_bSyncingToAudio; }
inline static bool bFastSP ( void ) { return m_bFastSP; }
inline static bool b32BitCore ( void ) { return m_b32Bit; }
inline static bool RspAudioSignal ( void ) { return m_RspAudioSignal; }
static inline bool bSMM_StoreInstruc ( void ) { return m_bSMM_StoreInstruc; }
static inline bool bSMM_Protect ( void ) { return m_bSMM_Protect; }
static inline bool bSMM_ValidFunc ( void ) { return m_bSMM_ValidFunc; }
static inline bool bSMM_PIDMA ( void ) { return m_bSMM_PIDMA; }
static inline bool bSMM_TLB ( void ) { return m_bSMM_TLB; }
inline static SYSTEM_TYPE SystemType ( void ) { return m_SystemType; }
protected:
static void SpeedChanged (int SpeedLimit );
private:
//Settings that can be changed on the fly
static bool m_bRomInMemory;
static bool m_RegCaching;
static bool m_bLinkBlocks;
static DWORD m_LookUpMode; //FUNC_LOOKUP_METHOD
static bool m_bUseTlb;
static DWORD m_CountPerOp;
static DWORD m_ViRefreshRate;
static DWORD m_AiCountPerBytes;
static bool m_DelayDP;
static bool m_DelaySI;
static DWORD m_RdramSize;
static bool m_bFixedAudio;
static bool m_bSyncingToAudio;
static bool m_bSyncToAudio;
static bool m_bFastSP;
static bool m_b32Bit;
static bool m_RspAudioSignal;
static bool m_bSMM_StoreInstruc;
static bool m_bSMM_Protect;
static bool m_bSMM_ValidFunc;
static bool m_bSMM_PIDMA;
static bool m_bSMM_TLB;
static SYSTEM_TYPE m_SystemType;
};