GE Debugger: Start a module/thread for dump runs.

Otherwise some things might get confused.
This commit is contained in:
Unknown W. Brackets
2017-06-03 15:29:12 -07:00
parent 4f07ec0df5
commit 60bf4ff99b
+12 -1
View File
@@ -1655,7 +1655,18 @@ bool __KernelLoadGEDump(std::string *error_string) {
Memory::WriteUnchecked_U32(runDumpCode[i], mipsr4k.pc + (int)i * sizeof(u32_le));
}
__KernelStartIdleThreads(0);
Module *module = new Module;
kernelObjects.Create(module);
loadedModules.insert(module->GetUID());
memset(&module->nm, 0, sizeof(module->nm));
module->isFake = true;
module->nm.entry_addr = mipsr4k.pc;
module->nm.gp_value = -1;
SceUID threadID = __KernelSetupRootThread(module->GetUID(), 0, nullptr, 0x20, 0x1000, 0);
__KernelSetThreadRA(threadID, NID_MODULERETURN);
__KernelStartIdleThreads(module->GetUID());
return true;
}