Boot: Always emulate BS2 once when booting a DOL

The old code could do it 0, 1 or 2 times.
This commit is contained in:
JosJuice 2017-04-08 18:48:22 +02:00
parent 31eec8c75b
commit 6263830d6d
1 changed files with 1 additions and 6 deletions

View File

@ -334,16 +334,12 @@ bool CBoot::BootUp()
PanicAlertT("Warning - starting DOL in wrong console mode!"); PanicAlertT("Warning - starting DOL in wrong console mode!");
} }
bool BS2Success = false;
if (dolWii) if (dolWii)
{ {
BS2Success = EmulatedBS2(dolWii);
} }
else if (!_StartupPara.m_strDefaultISO.empty()) else if (!_StartupPara.m_strDefaultISO.empty())
{ {
DVDInterface::SetVolumeName(_StartupPara.m_strDefaultISO); DVDInterface::SetVolumeName(_StartupPara.m_strDefaultISO);
BS2Success = EmulatedBS2(dolWii);
} }
if (!_StartupPara.m_strDVDRoot.empty()) if (!_StartupPara.m_strDVDRoot.empty())
@ -351,10 +347,9 @@ bool CBoot::BootUp()
NOTICE_LOG(BOOT, "Setting DVDRoot %s", _StartupPara.m_strDVDRoot.c_str()); NOTICE_LOG(BOOT, "Setting DVDRoot %s", _StartupPara.m_strDVDRoot.c_str());
DVDInterface::SetVolumeDirectory(_StartupPara.m_strDVDRoot, dolWii, DVDInterface::SetVolumeDirectory(_StartupPara.m_strDVDRoot, dolWii,
_StartupPara.m_strApploader, _StartupPara.m_strFilename); _StartupPara.m_strApploader, _StartupPara.m_strFilename);
BS2Success = EmulatedBS2(dolWii);
} }
if (!BS2Success) if (!EmulatedBS2(dolWii))
{ {
// 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);