mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Added a game property to disable the clearing of the data cache. This is needed by one known game, "Rubik's Puzzle Galaxy: Rush".
Fixes Violin Paradise.
This commit is contained in:
@ -315,10 +315,10 @@ void CISOProperties::CreateGUIControls(bool IsWad)
|
||||
SkipIdle = new wxCheckBox(m_GameConfig, ID_IDLESKIP, _("Enable Idle Skipping"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
MMU = new wxCheckBox(m_GameConfig, ID_MMU, _("Enable MMU"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
MMU->SetToolTip(_("Enables the Memory Management Unit, needed for some games. (ON = Compatible, OFF = Fast)"));
|
||||
MMUBAT = new wxCheckBox(m_GameConfig, ID_MMUBAT, _("Enable BAT"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
MMUBAT->SetToolTip(_("Enables Block Address Translation (BAT); a function of the Memory Management Unit. Accurate to the hardware, but slow to emulate. (ON = Compatible, OFF = Fast)"));
|
||||
TLBHack = new wxCheckBox(m_GameConfig, ID_TLBHACK, _("MMU Speed Hack"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
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, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
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, _("Accurate VBeam emulation"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
VBeam->SetToolTip(_("If the FPS is erratic, this option may help. (ON = Compatible, OFF = Fast)"));
|
||||
FastDiscSpeed = new wxCheckBox(m_GameConfig, ID_DISCSPEED, _("Speed up Disc Transfer Rate"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||
@ -364,7 +364,7 @@ void CISOProperties::CreateGUIControls(bool IsWad)
|
||||
sbCoreOverrides->Add(CPUThread, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(SkipIdle, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(MMU, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(MMUBAT, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(DCBZOFF, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(TLBHack, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(VBeam, 0, wxLEFT, 5);
|
||||
sbCoreOverrides->Add(FastDiscSpeed, 0, wxLEFT, 5);
|
||||
@ -930,16 +930,16 @@ void CISOProperties::LoadGameConfig()
|
||||
else
|
||||
MMU->Set3StateValue(wxCHK_UNDETERMINED);
|
||||
|
||||
if (GameIni.Get("Core", "BAT", &bTemp))
|
||||
MMUBAT->Set3StateValue((wxCheckBoxState)bTemp);
|
||||
else
|
||||
MMUBAT->Set3StateValue(wxCHK_UNDETERMINED);
|
||||
|
||||
if (GameIni.Get("Core", "TLBHack", &bTemp))
|
||||
TLBHack->Set3StateValue((wxCheckBoxState)bTemp);
|
||||
else
|
||||
TLBHack->Set3StateValue(wxCHK_UNDETERMINED);
|
||||
|
||||
if (GameIni.Get("Core", "DCBZ", &bTemp))
|
||||
DCBZOFF->Set3StateValue((wxCheckBoxState)bTemp);
|
||||
else
|
||||
DCBZOFF->Set3StateValue(wxCHK_UNDETERMINED);
|
||||
|
||||
if (GameIni.Get("Core", "VBeam", &bTemp))
|
||||
VBeam->Set3StateValue((wxCheckBoxState)bTemp);
|
||||
else
|
||||
@ -1025,16 +1025,16 @@ bool CISOProperties::SaveGameConfig()
|
||||
else
|
||||
GameIni.Set("Core", "MMU", MMU->Get3StateValue());
|
||||
|
||||
if (MMUBAT->Get3StateValue() == wxCHK_UNDETERMINED)
|
||||
GameIni.DeleteKey("Core", "BAT");
|
||||
else
|
||||
GameIni.Set("Core", "BAT", MMUBAT->Get3StateValue());
|
||||
|
||||
if (TLBHack->Get3StateValue() == wxCHK_UNDETERMINED)
|
||||
GameIni.DeleteKey("Core", "TLBHack");
|
||||
else
|
||||
GameIni.Set("Core", "TLBHack", TLBHack->Get3StateValue());
|
||||
|
||||
if (DCBZOFF->Get3StateValue() == wxCHK_UNDETERMINED)
|
||||
GameIni.DeleteKey("Core", "DCBZ");
|
||||
else
|
||||
GameIni.Set("Core", "DCBZ", DCBZOFF->Get3StateValue());
|
||||
|
||||
if (VBeam->Get3StateValue() == wxCHK_UNDETERMINED)
|
||||
GameIni.DeleteKey("Core", "VBeam");
|
||||
else
|
||||
|
Reference in New Issue
Block a user