mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 22:29:39 -06:00
Replace "Override Language on NTSC Games" with "Allow Mismatched Region Settings"
This new setting is like Override Language on NTSC Games, except instead of only applying to the GameCube language setting, it also applies to the Wii language setting. Fixes https://bugs.dolphin-emu.org/issues/11299
This commit is contained in:
@ -356,7 +356,7 @@ bool BootCore(std::unique_ptr<BootParameters> boot, const WindowSystemInfo& wsi)
|
||||
StartUp.bCopyWiiSaveNetplay = netplay_settings.m_CopyWiiSave;
|
||||
StartUp.cpu_core = netplay_settings.m_CPUcore;
|
||||
StartUp.SelectedLanguage = netplay_settings.m_SelectedLanguage;
|
||||
StartUp.bOverrideGCLanguage = netplay_settings.m_OverrideGCLanguage;
|
||||
StartUp.bOverrideRegionSettings = netplay_settings.m_OverrideRegionSettings;
|
||||
StartUp.m_DSPEnableJIT = netplay_settings.m_DSPEnableJIT;
|
||||
StartUp.m_OCEnable = netplay_settings.m_OCEnable;
|
||||
StartUp.m_OCFactor = netplay_settings.m_OCFactor;
|
||||
@ -387,19 +387,24 @@ bool BootCore(std::unique_ptr<BootParameters> boot, const WindowSystemInfo& wsi)
|
||||
g_SRAM_netplay_initialized = false;
|
||||
}
|
||||
|
||||
const bool ntsc = DiscIO::IsNTSC(StartUp.m_region);
|
||||
|
||||
// Apply overrides
|
||||
// Some NTSC GameCube games such as Baten Kaitos react strangely to
|
||||
// language settings that would be invalid on an NTSC system
|
||||
if (!StartUp.bOverrideGCLanguage && ntsc)
|
||||
// Override out-of-region languages to prevent games from crashing or behaving oddly
|
||||
if (!StartUp.bOverrideRegionSettings)
|
||||
{
|
||||
StartUp.SelectedLanguage = 0;
|
||||
const int gc_language =
|
||||
static_cast<int>(StartUp.GetLanguageAdjustedForRegion(false, StartUp.m_region));
|
||||
StartUp.SelectedLanguage = gc_language - (gc_language > 0);
|
||||
|
||||
if (StartUp.bWii)
|
||||
{
|
||||
const u32 wii_language =
|
||||
static_cast<u32>(StartUp.GetLanguageAdjustedForRegion(true, StartUp.m_region));
|
||||
Config::SetCurrent(Config::SYSCONF_LANGUAGE, wii_language);
|
||||
}
|
||||
}
|
||||
|
||||
// Some NTSC Wii games such as Doc Louis's Punch-Out!! and
|
||||
// 1942 (Virtual Console) crash if the PAL60 option is enabled
|
||||
if (StartUp.bWii && ntsc)
|
||||
if (StartUp.bWii && DiscIO::IsNTSC(StartUp.m_region))
|
||||
Config::SetCurrent(Config::SYSCONF_PAL60, false);
|
||||
|
||||
// Ensure any new settings are written to the SYSCONF
|
||||
|
Reference in New Issue
Block a user