I don't have this game to test, but you could try just a stub function, like:
in sceKernelThread.cpp
Matched with this:
in sceKernel.cpp
You can see what the debug log prints.
Code:
int sceKernelRegisterThreadEventHandler(const char *name, SceUID threadId, int mask, u32 handlerAddr, u32 commonAddr)
{
DEBUG_LOG(SCEKERNEL, "sceKernelRegisterThreadEventHandler(name=%s, threadId=%x, mask=%x, handler=%08x, common=%08x)", name, threadId, mask, handlerAddr, commonAddr);
// handlerInfo handler = new createHandler(name, threadId, mask, handlerAddr, commonAddr);
Thread *t = kernelObjects.Get<Thread>(threadID, error);
// TODO: Handle thread event
if (t) {
// Insert handler.uid and handler in to event handler map
// Insert threadId and handler.uid in to event map
// return handler.uid
}
else {
// TODO
}
return SCE_KERNEL_ERROR_UNKNOWN_THID;
}in sceKernelThread.cpp
Matched with this:
Code:
{0x0C106E53,WrapI_CIIUU<sceKernelRegisterThreadEventHandler>,"sceKernelRegisterThreadEventHandler", HLE_NOT_IN_INTERRUPT},You can see what the debug log prints.

