summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/VolumeGC.cpp
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2022-03-15 18:56:49 +0100
committerJosJuice <josjuice@gmail.com>2022-03-15 18:56:49 +0100
commit479489c9992c014eca5c81e3d7025847f8f37632 (patch)
tree535190c47cb8e9b4cd3c933bbba2c62589af5cc4 /Source/Core/DiscIO/VolumeGC.cpp
parentbf261f6144a8cc75bcbdd4c09b19bdfa3dbe49b3 (diff)
DiscIO: Don't return GameTDB ID for any Datel disc
DTLX01 can be either a Freeloader or Action Replay, so it's inappropriate to always use the same title and cover for it.
Diffstat (limited to 'Source/Core/DiscIO/VolumeGC.cpp')
-rw-r--r--Source/Core/DiscIO/VolumeGC.cpp19
1 files changed, 15 insertions, 4 deletions
diff --git a/Source/Core/DiscIO/VolumeGC.cpp b/Source/Core/DiscIO/VolumeGC.cpp
index 6c7c8d8a9a..946364b4f7 100644
--- a/Source/Core/DiscIO/VolumeGC.cpp
+++ b/Source/Core/DiscIO/VolumeGC.cpp
@@ -61,10 +61,21 @@ const FileSystem* VolumeGC::GetFileSystem(const Partition& partition) const
std::string VolumeGC::GetGameTDBID(const Partition& partition) const
{
- const std::string game_id = GetGameID(partition);
-
- // Don't return an ID for Datel discs that are using the game ID of NHL Hitz 2002
- return game_id == "GNHE5d" && IsDatelDisc() ? "" : game_id;
+ // Datel discs for the GameCube can have one of two different game IDs:
+ //
+ // 1: GNHE5d. (Yes, with a lowercase d.) This game ID is used not only for
+ // all kinds of Datel discs, but also for the licensed release NHL Hitz 2002.
+ //
+ // 2: DTLX01. This game ID is used for a few late Datel releases. Both Action Replay
+ // and FreeLoader are known to have been released under this game ID.
+ //
+ // Since no game ID used for Datel discs uniquely represents one product,
+ // never use the game ID of a Datel disc for looking up the title or cover art.
+ if (IsDatelDisc())
+ return "";
+
+ // Normal case. Just return the usual game ID.
+ return GetGameID(partition);
}
Region VolumeGC::GetRegion() const