Skip to content

Commit

Permalink
Boot: Optionally allow preserving region settings in setting.txt
Browse files Browse the repository at this point in the history
See the discussion in https://bugs.dolphin-emu.org/issues/11930.
(This probably doesn't really fix that issue, but it's something
I thought would make sense anyway.)
  • Loading branch information
JosJuice committed Dec 14, 2019
1 parent a21fb96 commit 208c6a3
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 5 deletions.
8 changes: 4 additions & 4 deletions Source/Core/Core/Boot/Boot.h
Expand Up @@ -26,10 +26,10 @@ class IOFile;

struct RegionSetting
{
const std::string area;
const std::string video;
const std::string game;
const std::string code;
std::string area;
std::string video;
std::string game;
std::string code;
};

class BootExecutableReader;
Expand Down
7 changes: 6 additions & 1 deletion Source/Core/Core/Boot/Boot_BS2Emu.cpp
Expand Up @@ -233,7 +233,7 @@ bool CBoot::SetupWiiMemory(IOS::HLE::IOSC::ConsoleType console_type)
{DiscIO::Region::PAL, {"EUR", "PAL", "EU", "LE"}},
{DiscIO::Region::NTSC_K, {"KOR", "NTSC", "KR", "LKH"}}};
auto entryPos = region_settings.find(SConfig::GetInstance().m_region);
const RegionSetting& region_setting = entryPos->second;
RegionSetting region_setting = entryPos->second;

Common::SettingsHandler gen;
std::string serno;
Expand All @@ -250,6 +250,11 @@ bool CBoot::SetupWiiMemory(IOS::HLE::IOSC::ConsoleType console_type)
{
gen.SetBytes(std::move(data));
serno = gen.GetValue("SERNO");
if (SConfig::GetInstance().bOverrideRegionSettings)
{
region_setting = RegionSetting{gen.GetValue("AREA"), gen.GetValue("VIDEO"),
gen.GetValue("GAME"), gen.GetValue("CODE")};
}
gen.Reset();
}
}
Expand Down

0 comments on commit 208c6a3

Please sign in to comment.