Skip to content

Commit

Permalink
Merge pull request #3515 from booto/wii-region
Browse files Browse the repository at this point in the history
DiscIO: Use specified Wii region for discs
  • Loading branch information
delroth committed Jan 20, 2016
2 parents f98176f + 9227888 commit a14c074
Showing 1 changed file with 44 additions and 3 deletions.
47 changes: 44 additions & 3 deletions Source/Core/DiscIO/VolumeWiiCrypted.cpp
Expand Up @@ -160,10 +160,51 @@ IVolume::ECountry CVolumeWiiCrypted::GetCountry() const
if (!m_pReader)
return COUNTRY_UNKNOWN;

u8 country_code;
m_pReader->Read(3, 1, &country_code);
u8 country_byte;
if (!m_pReader->Read(3, 1, &country_byte))
{
return COUNTRY_UNKNOWN;
}

IVolume::ECountry country_value = CountrySwitch(country_byte);

u32 region_code;
if (!ReadSwapped(0x4E000, &region_code, false))
{
return country_value;
}

return CountrySwitch(country_code);
switch (region_code)
{
case 0:
switch (country_value)
{
case IVolume::COUNTRY_TAIWAN:
return IVolume::COUNTRY_TAIWAN;
default:
return IVolume::COUNTRY_JAPAN;
}
case 1:
return IVolume::COUNTRY_USA;
case 2:
switch (country_value)
{
case IVolume::COUNTRY_FRANCE:
case IVolume::COUNTRY_GERMANY:
case IVolume::COUNTRY_ITALY:
case IVolume::COUNTRY_NETHERLANDS:
case IVolume::COUNTRY_RUSSIA:
case IVolume::COUNTRY_SPAIN:
case IVolume::COUNTRY_AUSTRALIA:
return country_value;
default:
return IVolume::COUNTRY_EUROPE;
}
case 4:
return IVolume::COUNTRY_KOREA;
default:
return country_value;
}
}

std::string CVolumeWiiCrypted::GetMakerID() const
Expand Down

0 comments on commit a14c074

Please sign in to comment.