diff --git a/Source/Core/DiscIO/Enums.cpp b/Source/Core/DiscIO/Enums.cpp index 0939ae9174..f7069c0012 100644 --- a/Source/Core/DiscIO/Enums.cpp +++ b/Source/Core/DiscIO/Enums.cpp @@ -150,6 +150,9 @@ Region CountryCodeToRegion(u8 country_code, Platform platform, Region expected_r { switch (country_code) { + case '\2': + return expected_region; // Wii Menu (same title ID for all regions) + case 'J': return Region::NTSC_J; diff --git a/Source/Core/DiscIO/VolumeVerifier.cpp b/Source/Core/DiscIO/VolumeVerifier.cpp index 5e20803651..8192e14ff2 100644 --- a/Source/Core/DiscIO/VolumeVerifier.cpp +++ b/Source/Core/DiscIO/VolumeVerifier.cpp @@ -562,7 +562,11 @@ void VolumeVerifier::CheckMisc() } else { - const char country_code = game_id_encrypted[3]; + char country_code; + if (IsDisc(m_volume.GetVolumeType())) + country_code = game_id_encrypted[3]; + else + country_code = static_cast(m_volume.GetTitleID().value_or(0) & 0xff); if (CountryCodeToRegion(country_code, platform, region) != region) { AddProblem(Severity::Medium,