dolphin/Source/Core/DiscIO
JosJuice cec601f1fb Read Wii disc metadata from the unencrypted header
The header of a Wii disc can be read from two places: The
unencrypted area at the beginning of the disc, or the beginning of
the game partition. The two copies are usually identical (except
for 0x60 and 0x61), but there are exceptions. For most of Dolphin's
history, we have been reading from the header inside the game
partition when getting metadata. This was however not the case
starting with 4.0-4901 and ending with 5.0-3762. This commit once
again makes Dolphin read metadata from the unencrypted header,
because of the following reasons that I recently was informed about:

- The "pink fish" disc has the game ID 410E01 in the unencrypted
  header but the placeholder game ID RELSAB in the partition header.
- The revisions of some games differ between the two headers,
  with the unencrypted one making more sense.
  (See https://bugs.dolphin-emu.org/issues/11387)

For better or worse, this also means that sloppily hacked games where
only the game ID in the unencrypted header has been changed now will
use that modified game ID. And unlike with the partition header,
there is no signing or hashing that can tell us whether the
unencrypted header has been modified by someone other than Nintendo.
2018-09-12 13:41:30 +02:00
..
Blob.cpp CDUtils: Amend function names 2018-05-27 18:48:09 -04:00
Blob.h Unify ISOFile (wx) with GameFile (Qt) and put it in UICommon 2018-03-09 13:08:38 +01:00
CISOBlob.cpp Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
CISOBlob.h Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
CMakeLists.txt CMakeLists: Link in zlib privately where applicable 2018-04-13 08:29:46 -04:00
CompressedBlob.cpp Common/Hash: Namespace code under the Common namespace 2018-05-16 15:39:23 -04:00
CompressedBlob.h Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
DirectoryBlob.cpp Make the support for unencrypted Wii disc images less broken 2018-05-23 08:40:37 +02:00
DirectoryBlob.h Reformat all the things! 2018-04-12 21:28:39 +02:00
DiscExtractor.cpp ExportDOL: ActionReplay has a 0'd dol offset. Don't try to extract. 2018-08-02 05:32:05 -04:00
DiscExtractor.h DiscExtractor: Pass partition by reference rather than by value in ExtractDirectory() 2018-03-27 21:49:42 -04:00
DiscIO.vcxproj Add WiiSaveBanner class 2017-11-03 23:00:43 +01:00
DiscIO.vcxproj.filters Add WiiSaveBanner class 2017-11-03 23:00:43 +01:00
DiscScrubber.cpp DiscIO: Use Common::Lazy for loading filesystems 2017-09-15 18:57:05 +02:00
DiscScrubber.h Filesystem: Replace GetFileList() 2017-06-14 15:23:48 +02:00
DriveBlob.cpp Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
DriveBlob.h Reformat all the things! 2018-04-12 21:28:39 +02:00
Enums.cpp DiscIO: Don't use all uppercase for enum values 2018-03-31 14:11:32 +02:00
Enums.h DiscIO: Don't use all uppercase for enum values 2018-03-31 14:11:32 +02:00
FileBlob.cpp Don't create new IOFiles when creating a blob 2017-01-11 13:23:23 +01:00
FileBlob.h Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
Filesystem.cpp Qt/FilesystemWidget: Add size column 2018-06-02 18:59:56 +02:00
Filesystem.h Qt/FilesystemWidget: Add size column 2018-06-02 18:59:56 +02:00
FileSystemGCWii.cpp DiscIO: Remove m_partition and m_volume from FileSystem 2017-09-15 18:57:05 +02:00
FileSystemGCWii.h DiscIO: Add a Volume::ReadSwappedAndShifted function 2017-08-02 22:00:51 +02:00
NANDImporter.cpp Merge pull request #6148 from leoetlino/null-bug 2017-10-29 10:30:03 +01:00
NANDImporter.h Merge pull request #6148 from leoetlino/null-bug 2017-10-29 10:30:03 +01:00
TGCBlob.cpp TGCBlob: Fix brace style 2017-10-08 12:38:12 +02:00
TGCBlob.h TGCBlob: Make m_file_area_shift signed 2017-10-08 12:30:53 +02:00
Volume.cpp Avoid UB when reading Wii volume names 2017-11-03 23:17:40 +01:00
Volume.h Read Wii disc metadata from the unencrypted header 2018-09-12 13:41:30 +02:00
VolumeFileBlobReader.cpp DiscIO: Use Common::Lazy for loading filesystems 2017-09-15 18:57:05 +02:00
VolumeFileBlobReader.h DiscIO: Use Common::Lazy for loading filesystems 2017-09-15 18:57:05 +02:00
VolumeGC.cpp VolumeGC/VolumeWii: Dehardcode sizes where applicable 2018-05-30 04:14:42 -04:00
VolumeGC.h Volume/VolumeGC/VolumeWii: Amend variable naming 2018-05-30 03:33:12 -04:00
VolumeWad.cpp Reimplement custom PNG banners in game list 2018-05-20 15:34:03 +02:00
VolumeWad.h Reimplement custom PNG banners in game list 2018-05-20 15:34:03 +02:00
VolumeWii.cpp VolumeWii: Shorten padding checking code within CheckIntegrity() 2018-05-30 08:42:32 -04:00
VolumeWii.h Volume/VolumeGC/VolumeWii: Amend variable naming 2018-05-30 03:33:12 -04:00
WbfsBlob.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
WbfsBlob.h Move IOFile to a separate file 2017-06-15 21:33:50 +02:00
WiiSaveBanner.cpp ColorUtil: Amend function name casing 2018-05-27 21:04:48 -04:00
WiiSaveBanner.h Reimplement custom PNG banners in game list 2018-05-20 15:34:03 +02:00
WiiWad.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
WiiWad.h Drop the direct WAD launch hack 2017-10-24 11:41:54 +02:00