summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorPokechu22 <Pokechu022@gmail.com>2025-08-12 15:38:49 -0700
committerPokechu22 <Pokechu022@gmail.com>2025-08-13 11:55:40 -0700
commitdfbf39c768bbd080708772b518e663ae7a6c72a5 (patch)
tree49084d29b1dda0e00ffda0d6b6049a202c9a7af1 /Source/Core
parent72ef27c157e13075b656334657e46a3952ae2dff (diff)
Mention enable MMU in the DSI Exception message (Invalid read from ###/Invalid write to ###)
This has been possible for a long time now (see https://dolphin-emu.org/blog/2016/09/06/booting-the-final-gc-game/#side-effects-of-a-hardcode-rewrite), but it seems like people still aren't aware of it.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/PowerPC/MMU.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/Source/Core/Core/PowerPC/MMU.cpp b/Source/Core/Core/PowerPC/MMU.cpp
index 7cb9b9ac52..17f42e9d90 100644
--- a/Source/Core/Core/PowerPC/MMU.cpp
+++ b/Source/Core/Core/PowerPC/MMU.cpp
@@ -1273,8 +1273,20 @@ void MMU::GenerateDSIException(u32 effective_address, bool write)
// DSI exceptions are only supported in MMU mode.
if (!m_system.IsMMUMode())
{
- PanicAlertFmt("Invalid {} {:#010x}, PC = {:#010x}", write ? "write to" : "read from",
- effective_address, m_ppc_state.pc);
+ if (write)
+ {
+ PanicAlertFmtT(
+ "Invalid write to {0:#010x}, PC = {1:#010x}; the game probably would have crashed on "
+ "real hardware.\n\nFor accurate emulation, enable MMU in advanced settings.",
+ effective_address, m_ppc_state.pc);
+ }
+ else
+ {
+ PanicAlertFmtT(
+ "Invalid read from {0:#010x}, PC = {1:#010x}; the game probably would have crashed on "
+ "real hardware.\n\nFor accurate emulation, enable MMU in advanced settings.",
+ effective_address, m_ppc_state.pc);
+ }
if (m_system.IsPauseOnPanicMode())
{
m_system.GetCPU().Break();