mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
Removed the MMU Speed Hack option. The TLBHack is now enabled if the MMU option is disabled. This will help catch cases where a game requires the TLBHack but the option has not been set in the game ini. It also removes the possibility to mistakenly enable both the MMU and TLBHack.
This commit is contained in:
@ -48,7 +48,7 @@ namespace BootManager
|
|||||||
struct ConfigCache
|
struct ConfigCache
|
||||||
{
|
{
|
||||||
bool valid, bCPUThread, bSkipIdle, bEnableFPRF, bMMU, bDCBZOFF, m_EnableJIT, bDSPThread,
|
bool valid, bCPUThread, bSkipIdle, bEnableFPRF, bMMU, bDCBZOFF, m_EnableJIT, bDSPThread,
|
||||||
bVBeamSpeedHack, bSyncGPU, bFastDiscSpeed, bMergeBlocks, bDSPHLE, bHLE_BS2, bTLBHack, bProgressive;
|
bVBeamSpeedHack, bSyncGPU, bFastDiscSpeed, bMergeBlocks, bDSPHLE, bHLE_BS2, bProgressive;
|
||||||
int iCPUCore, Volume;
|
int iCPUCore, Volume;
|
||||||
int iWiimoteSource[MAX_BBMOTES];
|
int iWiimoteSource[MAX_BBMOTES];
|
||||||
SIDevices Pads[MAX_SI_CHANNELS];
|
SIDevices Pads[MAX_SI_CHANNELS];
|
||||||
@ -116,7 +116,6 @@ bool BootCore(const std::string& _rFilename)
|
|||||||
config_cache.bEnableFPRF = StartUp.bEnableFPRF;
|
config_cache.bEnableFPRF = StartUp.bEnableFPRF;
|
||||||
config_cache.bMMU = StartUp.bMMU;
|
config_cache.bMMU = StartUp.bMMU;
|
||||||
config_cache.bDCBZOFF = StartUp.bDCBZOFF;
|
config_cache.bDCBZOFF = StartUp.bDCBZOFF;
|
||||||
config_cache.bTLBHack = StartUp.bTLBHack;
|
|
||||||
config_cache.bVBeamSpeedHack = StartUp.bVBeamSpeedHack;
|
config_cache.bVBeamSpeedHack = StartUp.bVBeamSpeedHack;
|
||||||
config_cache.bSyncGPU = StartUp.bSyncGPU;
|
config_cache.bSyncGPU = StartUp.bSyncGPU;
|
||||||
config_cache.bFastDiscSpeed = StartUp.bFastDiscSpeed;
|
config_cache.bFastDiscSpeed = StartUp.bFastDiscSpeed;
|
||||||
@ -158,7 +157,6 @@ bool BootCore(const std::string& _rFilename)
|
|||||||
core_section->Get("SkipIdle", &StartUp.bSkipIdle, StartUp.bSkipIdle);
|
core_section->Get("SkipIdle", &StartUp.bSkipIdle, StartUp.bSkipIdle);
|
||||||
core_section->Get("EnableFPRF", &StartUp.bEnableFPRF, StartUp.bEnableFPRF);
|
core_section->Get("EnableFPRF", &StartUp.bEnableFPRF, StartUp.bEnableFPRF);
|
||||||
core_section->Get("MMU", &StartUp.bMMU, StartUp.bMMU);
|
core_section->Get("MMU", &StartUp.bMMU, StartUp.bMMU);
|
||||||
core_section->Get("TLBHack", &StartUp.bTLBHack, StartUp.bTLBHack);
|
|
||||||
core_section->Get("DCBZ", &StartUp.bDCBZOFF, StartUp.bDCBZOFF);
|
core_section->Get("DCBZ", &StartUp.bDCBZOFF, StartUp.bDCBZOFF);
|
||||||
core_section->Get("VBeam", &StartUp.bVBeamSpeedHack, StartUp.bVBeamSpeedHack);
|
core_section->Get("VBeam", &StartUp.bVBeamSpeedHack, StartUp.bVBeamSpeedHack);
|
||||||
core_section->Get("SyncGPU", &StartUp.bSyncGPU, StartUp.bSyncGPU);
|
core_section->Get("SyncGPU", &StartUp.bSyncGPU, StartUp.bSyncGPU);
|
||||||
@ -286,7 +284,6 @@ void Stop()
|
|||||||
StartUp.bEnableFPRF = config_cache.bEnableFPRF;
|
StartUp.bEnableFPRF = config_cache.bEnableFPRF;
|
||||||
StartUp.bMMU = config_cache.bMMU;
|
StartUp.bMMU = config_cache.bMMU;
|
||||||
StartUp.bDCBZOFF = config_cache.bDCBZOFF;
|
StartUp.bDCBZOFF = config_cache.bDCBZOFF;
|
||||||
StartUp.bTLBHack = config_cache.bTLBHack;
|
|
||||||
StartUp.bVBeamSpeedHack = config_cache.bVBeamSpeedHack;
|
StartUp.bVBeamSpeedHack = config_cache.bVBeamSpeedHack;
|
||||||
StartUp.bSyncGPU = config_cache.bSyncGPU;
|
StartUp.bSyncGPU = config_cache.bSyncGPU;
|
||||||
StartUp.bFastDiscSpeed = config_cache.bFastDiscSpeed;
|
StartUp.bFastDiscSpeed = config_cache.bFastDiscSpeed;
|
||||||
|
@ -536,7 +536,6 @@ void SConfig::LoadCoreSettings(IniFile& ini)
|
|||||||
core->Get("RunCompareServer", &m_LocalCoreStartupParameter.bRunCompareServer, false);
|
core->Get("RunCompareServer", &m_LocalCoreStartupParameter.bRunCompareServer, false);
|
||||||
core->Get("RunCompareClient", &m_LocalCoreStartupParameter.bRunCompareClient, false);
|
core->Get("RunCompareClient", &m_LocalCoreStartupParameter.bRunCompareClient, false);
|
||||||
core->Get("MMU", &m_LocalCoreStartupParameter.bMMU, false);
|
core->Get("MMU", &m_LocalCoreStartupParameter.bMMU, false);
|
||||||
core->Get("TLBHack", &m_LocalCoreStartupParameter.bTLBHack, false);
|
|
||||||
core->Get("BBDumpPort", &m_LocalCoreStartupParameter.iBBDumpPort, -1);
|
core->Get("BBDumpPort", &m_LocalCoreStartupParameter.iBBDumpPort, -1);
|
||||||
core->Get("VBeam", &m_LocalCoreStartupParameter.bVBeamSpeedHack, false);
|
core->Get("VBeam", &m_LocalCoreStartupParameter.bVBeamSpeedHack, false);
|
||||||
core->Get("SyncGPU", &m_LocalCoreStartupParameter.bSyncGPU, false);
|
core->Get("SyncGPU", &m_LocalCoreStartupParameter.bSyncGPU, false);
|
||||||
|
@ -39,7 +39,7 @@ SCoreStartupParameter::SCoreStartupParameter()
|
|||||||
bMergeBlocks(false), bEnableMemcardSaving(true),
|
bMergeBlocks(false), bEnableMemcardSaving(true),
|
||||||
bDPL2Decoder(false), iLatency(14),
|
bDPL2Decoder(false), iLatency(14),
|
||||||
bRunCompareServer(false), bRunCompareClient(false),
|
bRunCompareServer(false), bRunCompareClient(false),
|
||||||
bMMU(false), bDCBZOFF(false), bTLBHack(false), iBBDumpPort(0), bVBeamSpeedHack(false),
|
bMMU(false), bDCBZOFF(false), iBBDumpPort(0), bVBeamSpeedHack(false),
|
||||||
bSyncGPU(false), bFastDiscSpeed(false),
|
bSyncGPU(false), bFastDiscSpeed(false),
|
||||||
SelectedLanguage(0), bWii(false),
|
SelectedLanguage(0), bWii(false),
|
||||||
bConfirmStop(false), bHideCursor(false),
|
bConfirmStop(false), bHideCursor(false),
|
||||||
@ -75,7 +75,6 @@ void SCoreStartupParameter::LoadDefaults()
|
|||||||
bEnableFPRF = false;
|
bEnableFPRF = false;
|
||||||
bMMU = false;
|
bMMU = false;
|
||||||
bDCBZOFF = false;
|
bDCBZOFF = false;
|
||||||
bTLBHack = false;
|
|
||||||
iBBDumpPort = -1;
|
iBBDumpPort = -1;
|
||||||
bVBeamSpeedHack = false;
|
bVBeamSpeedHack = false;
|
||||||
bSyncGPU = false;
|
bSyncGPU = false;
|
||||||
|
@ -158,7 +158,6 @@ struct SCoreStartupParameter
|
|||||||
|
|
||||||
bool bMMU;
|
bool bMMU;
|
||||||
bool bDCBZOFF;
|
bool bDCBZOFF;
|
||||||
bool bTLBHack;
|
|
||||||
int iBBDumpPort;
|
int iBBDumpPort;
|
||||||
bool bVBeamSpeedHack;
|
bool bVBeamSpeedHack;
|
||||||
bool bSyncGPU;
|
bool bSyncGPU;
|
||||||
|
@ -43,8 +43,7 @@ namespace Memory
|
|||||||
// LOCAL SETTINGS
|
// LOCAL SETTINGS
|
||||||
// ----------------
|
// ----------------
|
||||||
|
|
||||||
/* Enable the Translation Lookaside Buffer functions. TLBHack = 1 in Dolphin.ini or a
|
// Enable the Translation Lookaside Buffer functions.
|
||||||
<GameID>.ini file will set this to true */
|
|
||||||
bool bFakeVMEM = false;
|
bool bFakeVMEM = false;
|
||||||
static bool bMMU = false;
|
static bool bMMU = false;
|
||||||
// ==============
|
// ==============
|
||||||
@ -143,8 +142,8 @@ static const int num_views = sizeof(views) / sizeof(MemoryView);
|
|||||||
void Init()
|
void Init()
|
||||||
{
|
{
|
||||||
bool wii = SConfig::GetInstance().m_LocalCoreStartupParameter.bWii;
|
bool wii = SConfig::GetInstance().m_LocalCoreStartupParameter.bWii;
|
||||||
bFakeVMEM = SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack == true;
|
|
||||||
bMMU = SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU;
|
bMMU = SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU;
|
||||||
|
bFakeVMEM = !bMMU;
|
||||||
|
|
||||||
u32 flags = 0;
|
u32 flags = 0;
|
||||||
if (wii) flags |= MV_WII_ONLY;
|
if (wii) flags |= MV_WII_ONLY;
|
||||||
|
@ -305,7 +305,6 @@ u32 Read_Opcode(u32 _Address)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU &&
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU &&
|
||||||
!SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack &&
|
|
||||||
(_Address & ADDR_MASK_MEM1))
|
(_Address & ADDR_MASK_MEM1))
|
||||||
{
|
{
|
||||||
// TODO: Check for MSR instruction address translation flag before translating
|
// TODO: Check for MSR instruction address translation flag before translating
|
||||||
|
@ -91,24 +91,15 @@ void Jit64AsmRoutineManager::Generate()
|
|||||||
FixupBranch exit_vmem;
|
FixupBranch exit_vmem;
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii)
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii)
|
||||||
mask = JIT_ICACHE_EXRAM_BIT;
|
mask = JIT_ICACHE_EXRAM_BIT;
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
mask |= JIT_ICACHE_VMEM_BIT;
|
mask |= JIT_ICACHE_VMEM_BIT;
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii || SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
{
|
|
||||||
TEST(32, R(RSCRATCH), Imm32(mask));
|
TEST(32, R(RSCRATCH), Imm32(mask));
|
||||||
no_mem = J_CC(CC_NZ);
|
no_mem = J_CC(CC_NZ);
|
||||||
}
|
|
||||||
AND(32, R(RSCRATCH), Imm32(JIT_ICACHE_MASK));
|
AND(32, R(RSCRATCH), Imm32(JIT_ICACHE_MASK));
|
||||||
MOV(64, R(RSCRATCH2), Imm64((u64)jit->GetBlockCache()->iCache));
|
MOV(64, R(RSCRATCH2), Imm64((u64)jit->GetBlockCache()->iCache));
|
||||||
MOV(32, R(RSCRATCH), MComplex(RSCRATCH2, RSCRATCH, SCALE_1, 0));
|
MOV(32, R(RSCRATCH), MComplex(RSCRATCH2, RSCRATCH, SCALE_1, 0));
|
||||||
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii || SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
{
|
|
||||||
exit_mem = J();
|
exit_mem = J();
|
||||||
SetJumpTarget(no_mem);
|
SetJumpTarget(no_mem);
|
||||||
}
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
{
|
|
||||||
TEST(32, R(RSCRATCH), Imm32(JIT_ICACHE_VMEM_BIT));
|
TEST(32, R(RSCRATCH), Imm32(JIT_ICACHE_VMEM_BIT));
|
||||||
FixupBranch no_vmem = J_CC(CC_Z);
|
FixupBranch no_vmem = J_CC(CC_Z);
|
||||||
AND(32, R(RSCRATCH), Imm32(JIT_ICACHE_MASK));
|
AND(32, R(RSCRATCH), Imm32(JIT_ICACHE_MASK));
|
||||||
@ -117,7 +108,6 @@ void Jit64AsmRoutineManager::Generate()
|
|||||||
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii) exit_vmem = J();
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii) exit_vmem = J();
|
||||||
SetJumpTarget(no_vmem);
|
SetJumpTarget(no_vmem);
|
||||||
}
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii)
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii)
|
||||||
{
|
{
|
||||||
TEST(32, R(RSCRATCH), Imm32(JIT_ICACHE_EXRAM_BIT));
|
TEST(32, R(RSCRATCH), Imm32(JIT_ICACHE_EXRAM_BIT));
|
||||||
@ -128,9 +118,8 @@ void Jit64AsmRoutineManager::Generate()
|
|||||||
|
|
||||||
SetJumpTarget(no_exram);
|
SetJumpTarget(no_exram);
|
||||||
}
|
}
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii || SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
SetJumpTarget(exit_mem);
|
SetJumpTarget(exit_mem);
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii && (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack))
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bWii)
|
||||||
SetJumpTarget(exit_vmem);
|
SetJumpTarget(exit_vmem);
|
||||||
|
|
||||||
TEST(32, R(RSCRATCH), R(RSCRATCH));
|
TEST(32, R(RSCRATCH), R(RSCRATCH));
|
||||||
|
@ -294,7 +294,8 @@ void Jit64::dcbz(UGeckoInstruction inst)
|
|||||||
int b = inst.RB;
|
int b = inst.RB;
|
||||||
|
|
||||||
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
|
// The following masks the region used by the GC/Wii virtual memory lib
|
||||||
mem_mask |= Memory::ADDR_MASK_MEM1;
|
mem_mask |= Memory::ADDR_MASK_MEM1;
|
||||||
|
|
||||||
MOV(32, R(RSCRATCH), gpr.R(b));
|
MOV(32, R(RSCRATCH), gpr.R(b));
|
||||||
|
@ -312,10 +312,9 @@ void EmuCodeBlock::SafeLoadToReg(X64Reg reg_value, const Gen::OpArg & opAddress,
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
|
||||||
{
|
// The following masks the region used by the GC/Wii virtual memory lib
|
||||||
mem_mask |= Memory::ADDR_MASK_MEM1;
|
mem_mask |= Memory::ADDR_MASK_MEM1;
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef ENABLE_MEM_CHECK
|
#ifdef ENABLE_MEM_CHECK
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
||||||
@ -517,10 +516,8 @@ void EmuCodeBlock::SafeWriteRegToReg(OpArg reg_value, X64Reg reg_addr, int acces
|
|||||||
|
|
||||||
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
u32 mem_mask = Memory::ADDR_MASK_HW_ACCESS;
|
||||||
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack)
|
// The following masks the region used by the GC/Wii virtual memory lib
|
||||||
{
|
|
||||||
mem_mask |= Memory::ADDR_MASK_MEM1;
|
mem_mask |= Memory::ADDR_MASK_MEM1;
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef ENABLE_MEM_CHECK
|
#ifdef ENABLE_MEM_CHECK
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
||||||
|
@ -46,8 +46,8 @@ namespace JitInterface
|
|||||||
}
|
}
|
||||||
CPUCoreBase *InitJitCore(int core)
|
CPUCoreBase *InitJitCore(int core)
|
||||||
{
|
{
|
||||||
bFakeVMEM = SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack == true;
|
|
||||||
bMMU = SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU;
|
bMMU = SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU;
|
||||||
|
bFakeVMEM = !bMMU;
|
||||||
|
|
||||||
CPUCoreBase *ptr = nullptr;
|
CPUCoreBase *ptr = nullptr;
|
||||||
switch (core)
|
switch (core)
|
||||||
|
@ -102,7 +102,7 @@ CMemoryWindow::CMemoryWindow(wxWindow* parent, wxWindowID id,
|
|||||||
sizerRight->Add(new wxButton(this, IDM_DUMP_MEMORY, _("&Dump MRAM")));
|
sizerRight->Add(new wxButton(this, IDM_DUMP_MEMORY, _("&Dump MRAM")));
|
||||||
sizerRight->Add(new wxButton(this, IDM_DUMP_MEM2, _("&Dump EXRAM")));
|
sizerRight->Add(new wxButton(this, IDM_DUMP_MEM2, _("&Dump EXRAM")));
|
||||||
|
|
||||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bTLBHack == true)
|
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU)
|
||||||
sizerRight->Add(new wxButton(this, IDM_DUMP_FAKEVMEM, _("&Dump FakeVMEM")));
|
sizerRight->Add(new wxButton(this, IDM_DUMP_FAKEVMEM, _("&Dump FakeVMEM")));
|
||||||
|
|
||||||
wxStaticBoxSizer* sizerSearchType = new wxStaticBoxSizer(wxVERTICAL, this, _("Search"));
|
wxStaticBoxSizer* sizerSearchType = new wxStaticBoxSizer(wxVERTICAL, this, _("Search"));
|
||||||
|
@ -389,8 +389,6 @@ void CISOProperties::CreateGUIControls(bool IsWad)
|
|||||||
SkipIdle = new wxCheckBox(m_GameConfig, ID_IDLESKIP, _("Enable Idle Skipping"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "SkipIdle"));
|
SkipIdle = new wxCheckBox(m_GameConfig, ID_IDLESKIP, _("Enable Idle Skipping"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "SkipIdle"));
|
||||||
MMU = new wxCheckBox(m_GameConfig, ID_MMU, _("Enable MMU"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "MMU"));
|
MMU = new wxCheckBox(m_GameConfig, ID_MMU, _("Enable MMU"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "MMU"));
|
||||||
MMU->SetToolTip(_("Enables the Memory Management Unit, needed for some games. (ON = Compatible, OFF = Fast)"));
|
MMU->SetToolTip(_("Enables the Memory Management Unit, needed for some games. (ON = Compatible, OFF = Fast)"));
|
||||||
TLBHack = new wxCheckBox(m_GameConfig, ID_TLBHACK, _("MMU Speed Hack"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "TLBHack"));
|
|
||||||
TLBHack->SetToolTip(_("Fast version of the MMU. Does not work for every game."));
|
|
||||||
DCBZOFF = new wxCheckBox(m_GameConfig, ID_DCBZOFF, _("Skip DCBZ clearing"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "DCBZ"));
|
DCBZOFF = new wxCheckBox(m_GameConfig, ID_DCBZOFF, _("Skip DCBZ clearing"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "DCBZ"));
|
||||||
DCBZOFF->SetToolTip(_("Bypass the clearing of the data cache by the DCBZ instruction. Usually leave this option disabled."));
|
DCBZOFF->SetToolTip(_("Bypass the clearing of the data cache by the DCBZ instruction. Usually leave this option disabled."));
|
||||||
VBeam = new wxCheckBox(m_GameConfig, ID_VBEAM, _("VBeam Speed Hack"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "VBeam"));
|
VBeam = new wxCheckBox(m_GameConfig, ID_VBEAM, _("VBeam Speed Hack"), wxDefaultPosition, wxDefaultSize, GetElementStyle("Core", "VBeam"));
|
||||||
@ -426,7 +424,6 @@ void CISOProperties::CreateGUIControls(bool IsWad)
|
|||||||
sbCoreOverrides->Add(CPUThread, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(CPUThread, 0, wxLEFT, 5);
|
||||||
sbCoreOverrides->Add(SkipIdle, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(SkipIdle, 0, wxLEFT, 5);
|
||||||
sbCoreOverrides->Add(MMU, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(MMU, 0, wxLEFT, 5);
|
||||||
sbCoreOverrides->Add(TLBHack, 0, wxLEFT, 5);
|
|
||||||
sbCoreOverrides->Add(DCBZOFF, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(DCBZOFF, 0, wxLEFT, 5);
|
||||||
sbCoreOverrides->Add(VBeam, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(VBeam, 0, wxLEFT, 5);
|
||||||
sbCoreOverrides->Add(SyncGPU, 0, wxLEFT, 5);
|
sbCoreOverrides->Add(SyncGPU, 0, wxLEFT, 5);
|
||||||
@ -1013,7 +1010,6 @@ void CISOProperties::LoadGameConfig()
|
|||||||
SetCheckboxValueFromGameini("Core", "CPUThread", CPUThread);
|
SetCheckboxValueFromGameini("Core", "CPUThread", CPUThread);
|
||||||
SetCheckboxValueFromGameini("Core", "SkipIdle", SkipIdle);
|
SetCheckboxValueFromGameini("Core", "SkipIdle", SkipIdle);
|
||||||
SetCheckboxValueFromGameini("Core", "MMU", MMU);
|
SetCheckboxValueFromGameini("Core", "MMU", MMU);
|
||||||
SetCheckboxValueFromGameini("Core", "TLBHack", TLBHack);
|
|
||||||
SetCheckboxValueFromGameini("Core", "DCBZ", DCBZOFF);
|
SetCheckboxValueFromGameini("Core", "DCBZ", DCBZOFF);
|
||||||
SetCheckboxValueFromGameini("Core", "VBeam", VBeam);
|
SetCheckboxValueFromGameini("Core", "VBeam", VBeam);
|
||||||
SetCheckboxValueFromGameini("Core", "SyncGPU", SyncGPU);
|
SetCheckboxValueFromGameini("Core", "SyncGPU", SyncGPU);
|
||||||
@ -1088,7 +1084,6 @@ bool CISOProperties::SaveGameConfig()
|
|||||||
SaveGameIniValueFrom3StateCheckbox("Core", "CPUThread", CPUThread);
|
SaveGameIniValueFrom3StateCheckbox("Core", "CPUThread", CPUThread);
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "SkipIdle", SkipIdle);
|
SaveGameIniValueFrom3StateCheckbox("Core", "SkipIdle", SkipIdle);
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "MMU", MMU);
|
SaveGameIniValueFrom3StateCheckbox("Core", "MMU", MMU);
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "TLBHack", TLBHack);
|
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "DCBZ", DCBZOFF);
|
SaveGameIniValueFrom3StateCheckbox("Core", "DCBZ", DCBZOFF);
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "VBeam", VBeam);
|
SaveGameIniValueFrom3StateCheckbox("Core", "VBeam", VBeam);
|
||||||
SaveGameIniValueFrom3StateCheckbox("Core", "SyncGPU", SyncGPU);
|
SaveGameIniValueFrom3StateCheckbox("Core", "SyncGPU", SyncGPU);
|
||||||
|
@ -67,7 +67,7 @@ private:
|
|||||||
DECLARE_EVENT_TABLE();
|
DECLARE_EVENT_TABLE();
|
||||||
|
|
||||||
// Core
|
// Core
|
||||||
wxCheckBox *CPUThread, *SkipIdle, *MMU, *DCBZOFF, *TLBHack;
|
wxCheckBox *CPUThread, *SkipIdle, *MMU, *DCBZOFF;
|
||||||
wxCheckBox *VBeam, *SyncGPU, *FastDiscSpeed, *BlockMerging, *DSPHLE;
|
wxCheckBox *VBeam, *SyncGPU, *FastDiscSpeed, *BlockMerging, *DSPHLE;
|
||||||
// Wii
|
// Wii
|
||||||
wxCheckBox *EnableWideScreen;
|
wxCheckBox *EnableWideScreen;
|
||||||
@ -128,7 +128,6 @@ private:
|
|||||||
ID_IDLESKIP,
|
ID_IDLESKIP,
|
||||||
ID_MMU,
|
ID_MMU,
|
||||||
ID_DCBZOFF,
|
ID_DCBZOFF,
|
||||||
ID_TLBHACK,
|
|
||||||
ID_VBEAM,
|
ID_VBEAM,
|
||||||
ID_SYNCGPU,
|
ID_SYNCGPU,
|
||||||
ID_DISCSPEED,
|
ID_DISCSPEED,
|
||||||
|
Reference in New Issue
Block a user