Metal Gear Solid Peace Walker Chinese Patched blue screen
sum2012 opened this issue · 10 comments
Edit nothing
Did it ever previously work?
-[Unknown]
In the past, we are ignore invalid address to play.
Kernel only debug add this line
23:36:930 kfs io0 I[SCEMODULE]: hle\scekernelmodule.cpp:2507 322=sceKernelLoadModuleByID(4,flag=00000000,00000014,00000002,00000000,position = 00000001)
Jpcsp emulator run this game no problem without ignore invalid address
@unknownbrackets #14138 make this game no font.
Do you have suggestion ? Thanks
#14138 info log: https://gist.github.com/sum2012/9b3fe5bbd26ba5d720705d7b191aa6a6
debug log: https://gist.githubusercontent.com/sum2012/8ac1cc88077b577cff42dbf7471668be/raw/fbdb9407ac2cd5ab3141fb02fa998fce9c5498fc/gistfile1.txt
jmpLibFont
seems to be a custom font library that uses sceFont behind the scenes, so blocking it from loading seems like it would cause errors, based on that log.
The change I made recently to more correctly handle sceKernelModuleStart with no start address didn't help, did it?
Read Word: Invalid address 0a000000 PC 08e1b560 LR 08e1b560
looks like it's actually during relocations or module handling, because it's logged after the imports but before the exports. So this seems like something wrong with ELF loading or relocations...
Is this jmp prx specific to the Chinese patch? If so, is it open source? I'd like to look at it if it's not copyright restricted.
-[Unknown]
v1.11.2-355-g7db53d2f0-windows-amd64 still same problem.
log:
https://gist.github.com/sum2012/4109b087fa7b0ea535304263aef3e3b8
Chinese patched file are closed source.
The prx is different from this one right?
https://github.com/hz86/mgspw
Seems likely related, I guess the idea is it replaces the text using a lookup when being drawn through this prx.
-[Unknown]
I use binary compare.
Yes,It is same file
How does it work now?
-[Unknown]
PPSSPP v1.11.2-375-g50d5195b4
Fixed.log: https://gist.github.com/sum2012/9888cefec359143f0fbb335c8dd33c44
Thanks @unknownbrackets
Closing