From 6d73c3e8e33764147e3c552f9952caa376913d41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Mon, 7 Aug 2017 00:18:04 +0800 Subject: [PATCH] Boot/BS2: Don't write part of the debugger hook Writing to 0x60 does actually not "init exception[s]" or anything like that. Not at all. Rather, it *breaks* a check in Nintendo's SDK, which makes it fail to realise that the hook hasn't been set up. This prevents the SDK initialisation routines from writing the rest of the hook instructions (total: 0x20 bytes), which in turn causes an anti-piracy check to fail in some Ubisoft games (including Tintin). Dolphin can be really amazing sometimes. --- Source/Core/Core/Boot/Boot_BS2Emu.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/Source/Core/Core/Boot/Boot_BS2Emu.cpp b/Source/Core/Core/Boot/Boot_BS2Emu.cpp index a2a5ff0173..794e979aa1 100644 --- a/Source/Core/Core/Boot/Boot_BS2Emu.cpp +++ b/Source/Core/Core/Boot/Boot_BS2Emu.cpp @@ -286,7 +286,6 @@ bool CBoot::SetupWiiMemory(u64 ios_title_id) Memory::Write_U32(0x00000000, 0x00000030); // Init Memory::Write_U32(0x817FEC60, 0x00000034); // Init // 38, 3C should get start, size of FST through apploader - Memory::Write_U32(0x38a00040, 0x00000060); // Exception init Memory::Write_U32(0x8008f7b8, 0x000000e4); // Thread Init Memory::Write_U32(Memory::REALRAM_SIZE, 0x000000f0); // "Simulated memory size" (debug mode?) Memory::Write_U32(0x8179b500, 0x000000f4); // __start