dolphin/Source/Core
Léo Lam 9000a042e4 Drop the direct WAD launch hack
This removes the hack that enables directly booting from WADs
without installing them first for the following reasons:

1. It makes the NAND content handling much more complicated than what
   it should be and makes future changes like permissions or booting
   NAND titles without a WAD more annoying to implement.

   Because of this hack, we needed an extra level of abstraction
   (NANDContent*) which has to read tons of things from the NAND, even
   most of the time it's useless. This in turn forces us to have
   caching, which is known to break titles and requires manual cache
   invalidations. Annoying and error prone.

2. It prevents the WAD boot code from being easily accurate. With this
   change, we can simply reuse the existing launch code, and ask IOS
   to launch the title from the NAND.

3. The hack did not work that well since it did not cover a lot of ES
   commands. And it works even less since the ES accuracy fixes.
   This results in Dolphin returning inconsistent results: a
   lot of the ES "DI" commands will just fail because the active title
   is not installed on the NAND. uid.sys is not changed, etc.

   And I'm not even talking about FS stuff -- where this would still
   totally fail, unless we add even more unnecessary hacks.

   This is not just theoretical -- the system menu and the Wii Shop are
   known to behave strangely because the hack damages the NAND
   structure, and we've already had several users report issues.

This commit makes it so WADs are always installed prior to launching.
A future commit will remove any code that was there only for the hack.
2017-10-24 11:41:54 +02:00
..
AudioCommon Merge pull request #6132 from ligfx/updatecubeb 2017-10-22 15:39:39 +02:00
Common MemArena: Name shared memory handle 2017-10-11 16:35:32 +02:00
Core Drop the direct WAD launch hack 2017-10-24 11:41:54 +02:00
DiscIO Drop the direct WAD launch hack 2017-10-24 11:41:54 +02:00
DolphinNoGUI Core: SetOnStoppedCallback -> SetOnStateChangedCallback 2017-09-13 17:30:18 -07:00
DolphinQt2 Boot: Add support for booting NAND titles with just the ID 2017-10-24 11:41:54 +02:00
DolphinWX Boot: Add support for booting NAND titles with just the ID 2017-10-24 11:41:54 +02:00
InputCommon Prevent multiple HID elements of same usage type on OSX 2017-09-15 19:19:46 +02:00
UICommon Update -d argument help message 2017-09-10 12:28:53 +02:00
VideoBackends Merge pull request #6124 from stenzek/vulkan-shutdown-vxfb 2017-10-22 16:42:24 +02:00
VideoCommon Merge pull request #6110 from lioncash/texture-config-hash 2017-10-11 11:07:09 +02:00
CMakeLists.txt