From 90b30f8bfeed5549a6cf77ca0854893a69a99393 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sat, 7 Jun 2014 06:28:23 -0700 Subject: [PATCH] Use module start func, not entry, if specified. Fixes #5539, Ranshima Monogatari Rare Land Story. Still logging in case it causes a problem. --- Core/HLE/sceKernelModule.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Core/HLE/sceKernelModule.cpp b/Core/HLE/sceKernelModule.cpp index 1c8fb46d60..88528d33ba 100644 --- a/Core/HLE/sceKernelModule.cpp +++ b/Core/HLE/sceKernelModule.cpp @@ -1390,6 +1390,8 @@ void __KernelStartModule(Module *m, int args, const char *argp, SceKernelSMOptio { if (m->nm.module_start_func != m->nm.entry_addr) WARN_LOG_REPORT(LOADER, "Main module has start func (%08x) different from entry (%08x)?", m->nm.module_start_func, m->nm.entry_addr); + // TODO: Should we try to run both? + currentMIPS->pc = m->nm.module_start_func; } SceUID threadID = __KernelSetupRootThread(m->GetUID(), args, argp, options->priority, options->stacksize, options->attribute);