Fix DOL crash caused by VolumeHandler removal

Similar to the WAD crash (0b44d7c) but in another part of the boot code.
This commit is contained in:
JosJuice 2015-04-30 13:29:09 +02:00
parent 989c0f427f
commit f7d20204bb
1 changed files with 6 additions and 6 deletions

View File

@ -316,16 +316,16 @@ bool CBoot::EmulatedBS2_Wii()
if (SetupWiiMemory(country_code) == false) if (SetupWiiMemory(country_code) == false)
return false; return false;
// Execute the apploader
bool apploaderRan = false;
if (DVDInterface::VolumeIsValid() && DVDInterface::GetVolume().IsWiiDisc())
{
// This is some kind of consistency check that is compared to the 0x00 // This is some kind of consistency check that is compared to the 0x00
// values as the game boots. This location keep the 4 byte ID for as long // values as the game boots. This location keep the 4 byte ID for as long
// as the game is running. The 6 byte ID at 0x00 is overwritten sometime // as the game is running. The 6 byte ID at 0x00 is overwritten sometime
// after this check during booting. // after this check during booting.
DVDInterface::DVDRead(0, 0x3180, 4, true); DVDInterface::DVDRead(0, 0x3180, 4, true);
// Execute the apploader
bool apploaderRan = false;
if (DVDInterface::VolumeIsValid() && DVDInterface::GetVolume().IsWiiDisc())
{
// Set up MSR and the BAT SPR registers. // Set up MSR and the BAT SPR registers.
UReg_MSR& m_MSR = ((UReg_MSR&)PowerPC::ppcState.msr); UReg_MSR& m_MSR = ((UReg_MSR&)PowerPC::ppcState.msr);
m_MSR.FP = 1; m_MSR.FP = 1;