• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › Support v
« Previous 1 ... 28 29 30 31 32 ... 1192 Next »

Extracting disc contents then converting/reassembling to ISO won't play on a real Wii
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Extracting disc contents then converting/reassembling to ISO won't play on a real Wii
02-15-2022, 01:19 PM (This post was last modified: 02-15-2022, 01:27 PM by Nintendo Maniac 64.)
#1
Nintendo Maniac 64 Offline
Posting Freak
*****
Posts: 840
Threads: 30
Joined: Jan 2011
As you may or may not know, you can use Dolphin to extract the entire contents of a disc and then similarly use Dolphin to reassemble those extracted files back into a new ISO:

Click for details on the process that I'm referring to: (Show Spoiler)
  1. in Dolphin, right-click on your game of choise and select Properties
  2. click on the Filesystem tab
  3. right-click on "Disc" and select Extract Entire Disc
  4. choose a location where you want to extract to and click Select Folder
  5. wait a bit (the progress bar and percentage completed will be deceptive)
  6. in Dolphin, make sure that the location mentioned in step #4 is in Dolphin's "Paths" so that Dolphin can find it - it should then appear on Dolphin's game list
  7. right-click on the newly-appeared game and select Convert File...
  8. make sure "Format" is set to ISO and then click Convert...
  9. type the file name of your choice and select a location to save a new ISO and click Save

However, I just recently discovered that ISO files created this way do not actually work on real Wii hardware (at least not when launched via USB Loader GX).  This surprised me as the process doesn't really seem all that different from what you've been able to do with Wii Backup Fusion for what has to be more than a decade now, yet extracting the entire contents of a disc through Wii Backup Fusion and then similarly reassembling the extracted files back into a new ISO file via Wii Backup Fusion will result in ISO iles that "just work" on real hardware.

So simply put, is this expected behavior?


For reference, this was tested with Link's Crossbow Training as well as Metroid: Other M - in fact it was when I was trying to get Other M Maxximum Edition working on real hardware that I discovered this issue and then decided to confirm if it also occurs with Link's Crossbow Training (since that game has a much smaller file size which made things easier to deal with).

And in terms of Dolphin versions, it was tested using some 9-month old beta version from May 2021 as well as the recent 2022-02-01 beta version, but the results were identical either way. And speaking of Dolphin, ISO files created by both Dolphin and Wii Backup Fusion will run just fine in Dolphin.
Dolphin 5.0 CPU benchmark

CPU: Pentium G3258 @ 4.5GHz 1.24v
GPU: Intel integrated
RAM: 4x4GB Corsair Vengence @ DDR3-1600
OS: Linux Mint of some variety + [VM] Win7 SP1 x64 
Find
Reply
02-16-2022, 05:07 AM
#2
JosJuice Offline
Developer
**********
Developers (Some Administrators and Super Moderators)
Posts: 8,873
Threads: 7
Joined: Oct 2014
This is a known bug, or a known missing feature depending on how you look at it.

The short summary is that Dolphin doesn't regenerate the H3 hashes and doesn't fakesign the disc. Dolphin with its IOS HLE ignores incorrect hashes and signing when you try to run a game, but a real Wii does care, and so the files that are generated by Dolphin don't work on real hardware. The incorrect H3 hashes generate a medium severity warning in Properties > Verify, by the way.

So why doesn't Dolphin support doing this? Well, the way that a normal converting program would most likely do it is: First you write out almost all of the disc, calculating the H3 hash for each part of the disc as you go. Then you seek back to the area close to the beginning of each partition where the H3 hashes are, and write the H3 hashes. Then you perform fakesigning, and write the fakesigned TMD just next to the H3 hashes.

Those steps have to be done in that exact order in order for all the necessary data to be available. Now, what you have to keep in mind is that Dolphin's support for extracted disc images was originally designed only for the purpose of running them, not for converting them back to a normal ISO. (The ability to convert them just kind of ended up being possible as a side effect of how Dolphin's disc formats code is constructed.) Implementing H3 hashing and fakesigning for when you run an extracted game would be rather awkward, since if you ever want to read the TMD or the H3 hashes, Dolphin would have to read through almost the entire game, which could cause it to have to pause for something like a minute. Technically it could be implemented in that way, and then converting would give you the result you're expecting, but then the conversion process would have to end up reading the whole game twice (first for calculating the H3 hashes and then for real), with the progress bar just being frozen the first time. Implementing a special solution just for converting (along the lines of steps I described earlier) wouldn't be impossible, but the way Dolphin's disc formats code is structured right now would make it rather ugly to implement. After all, Dolphin is primarily aimed at letting you play games, not at letting you convert them. And so this is a rather deprioritized feature.
Find
Reply
02-16-2022, 06:32 AM (This post was last modified: 02-16-2022, 06:34 AM by Nintendo Maniac 64.)
#3
Nintendo Maniac 64 Offline
Posting Freak
*****
Posts: 840
Threads: 30
Joined: Jan 2011
Maybe it's not my place to suggest this since I imagine that the user-facing UI side of things is super unimportant in terms of bottlenecks preventing this from being implemented, but a checkbox labeled something like "repair for playing on real hardware (not 1:1 clean)" on the conversion window which itself would be always be greyed out unless you were specifically converting from extracted files (which Dolphin seems to already be able to know when this is the case as it always labels the file size of extracted files as zero).
Dolphin 5.0 CPU benchmark

CPU: Pentium G3258 @ 4.5GHz 1.24v
GPU: Intel integrated
RAM: 4x4GB Corsair Vengence @ DDR3-1600
OS: Linux Mint of some variety + [VM] Win7 SP1 x64 
Find
Reply
02-16-2022, 12:58 PM
#4
mbc07 Offline
Wiki Caretaker
*******
Content Creators (Moderators)
Posts: 3,566
Threads: 47
Joined: Dec 2010
Why not use WIT to rebuild the ISO? AFAICT the folder structure generated by Dolphin's "Extract Entire Disc" command is the same as WIT, so it should be possible to use it to rebuild a fake signed ISO at the last step (e.g. Extract disc with Dolphin => Modify the game files => Build a new ISO with WIT)...
Avell A70 MOB: Core i7-11800H, GeForce RTX 3060, 16 GB DDR4-3200, Windows 11 (Insider Preview)
ASRock Z97M OC Formula: Pentium G3258, GeForce GT 440, 16 GB DDR3-1600, Windows 10 (22H2)
Find
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode