mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-04-25 06:44:59 +00:00
Merge pull request #9663 from leoetlino/mios-hle-patch
Fix IPL crash when launching MIOS-patched games
This commit is contained in:
commit
f0bd6b105f
2 changed files with 9 additions and 0 deletions
|
@ -76,6 +76,14 @@ void Patch(u32 addr, std::string_view func_name)
|
||||||
|
|
||||||
void PatchFixedFunctions()
|
void PatchFixedFunctions()
|
||||||
{
|
{
|
||||||
|
// MIOS puts patch data in low MEM1 (0x1800-0x3000) for its own use.
|
||||||
|
// Overwriting data in this range can cause the IPL to crash when launching games
|
||||||
|
// that get patched by MIOS. See https://bugs.dolphin-emu.org/issues/11952 for more info.
|
||||||
|
// Not applying the Gecko HLE patches means that Gecko codes will not work under MIOS,
|
||||||
|
// but this is better than the alternative of having specific games crash.
|
||||||
|
if (SConfig::GetInstance().m_is_mios)
|
||||||
|
return;
|
||||||
|
|
||||||
// HLE jump to loader (homebrew). Disabled when Gecko is active as it interferes with the code
|
// HLE jump to loader (homebrew). Disabled when Gecko is active as it interferes with the code
|
||||||
// handler
|
// handler
|
||||||
if (!SConfig::GetInstance().bEnableCheats)
|
if (!SConfig::GetInstance().bEnableCheats)
|
||||||
|
|
|
@ -86,6 +86,7 @@ bool Load()
|
||||||
NOTICE_LOG_FMT(IOS, "IPL ready.");
|
NOTICE_LOG_FMT(IOS, "IPL ready.");
|
||||||
SConfig::GetInstance().m_is_mios = true;
|
SConfig::GetInstance().m_is_mios = true;
|
||||||
DVDInterface::UpdateRunningGameMetadata();
|
DVDInterface::UpdateRunningGameMetadata();
|
||||||
|
SConfig::OnNewTitleLoad();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} // namespace IOS::HLE::MIOS
|
} // namespace IOS::HLE::MIOS
|
||||||
|
|
Loading…
Add table
Reference in a new issue