PCSX2-WX: Force disable MTVU hack on safest preset

The safest preset should ideally try to provide
the highest accuracy and stability when emulating the
PS2, allowing the manipulation of the MTVU hack could
just destroy both of these things, hence the following patch
force disables the hack on safest preset.
This commit is contained in:
Akash 2017-07-26 22:57:53 +05:30
parent 20cc02c90d
commit ebe9b3368e
2 changed files with 11 additions and 6 deletions

View File

@ -1047,7 +1047,7 @@ bool AppConfig::IsOkApplyPreset(int n)
EmuOptions.Gamefixes = default_Pcsx2Config.Gamefixes;
EmuOptions.Speedhacks = default_Pcsx2Config.Speedhacks;
EmuOptions.Speedhacks.bitset = 0; //Turn off individual hacks to make it visually clear they're not used.
EmuOptions.Speedhacks.vuThread = original_SpeedHacks.vuThread; // MTVU is not modified by presets
EmuOptions.Speedhacks.vuThread = original_SpeedHacks.vuThread;
EnableSpeedHacks = true;
//Actual application of current preset over the base settings which all presets use (mostly pcsx2's default values).
@ -1079,11 +1079,13 @@ bool AppConfig::IsOkApplyPreset(int n)
EmuOptions.Speedhacks.IntcStat = true;
EmuOptions.Speedhacks.WaitLoop = true;
EmuOptions.Speedhacks.vuFlagHack = true;
break;
case 0 : //Base preset: Mostly pcsx2's defaults.
//Force disable MTVU hack on safest preset as it has lots of issues (Crashes/Slow downs) on various games.
EmuOptions.Speedhacks.vuThread = false;
break;
default: Console.WriteLn("Developer Warning: Preset #%d is not implemented. (--> Using application default).", n);
}

View File

@ -281,7 +281,8 @@ void Panels::SpeedHacksPanel::EnableStuff( AppConfig* configToUse )
m_check_waitloop->Enable(HacksEnabledAndNoPreset);
m_check_fastCDVD->Enable(HacksEnabledAndNoPreset);
m_check_vuThread->Enable(hacksEnabled); // MTVU is unaffected by presets
// Grayout MTVU on safest preset
m_check_vuThread->Enable(hacksEnabled && (!hasPreset || configToUse->PresetIndex != 0));
// Layout necessary to ensure changed slider text gets re-aligned properly
// and to properly gray/ungray pxStaticText stuff (I suspect it causes a
@ -309,12 +310,14 @@ void Panels::SpeedHacksPanel::ApplyConfigToGui( AppConfig& configToApply, int fl
SetVUcycleSliderMsg();
m_check_vuFlagHack->SetValue(opts.vuFlagHack);
if( !(flags & AppConfig::APPLY_FLAG_FROM_PRESET) )
m_check_vuThread ->SetValue(opts.vuThread);
m_check_intc->SetValue(opts.IntcStat);
m_check_waitloop->SetValue(opts.WaitLoop);
m_check_fastCDVD->SetValue(opts.fastCDVD);
const bool preset_request = flags & AppConfig::APPLY_FLAG_FROM_PRESET;
if (!preset_request || configToApply.PresetIndex == 0)
m_check_vuThread->SetValue(opts.vuThread);
// Then, lock(gray out)/unlock the widgets as necessary.
EnableStuff( &configToApply );