02-09-2012, 05:12 PM
(01-22-2012, 05:37 AM)Itaru Wrote: Starting with r2438, Heroes Phantasia (NPJH50558) is unable to continue past the title screen even when you push Start or the circle button. After a few seconds in the title screen, it loops back to the opening movie and keeps looping indefinitely between opening movie and title screen with the controls being non-responsive. With r2437 and earlier revisions, I can continue past the title screen and play the game.
I've tracked the problem to the jpcsp.HLE.modules630.sceAtrac3plus class in the following part (lines 51 - 53):
If line 52 is commented out, then the game can continue past the title screen just like in r2437.Code:51 if (Memory.isAddressGood(samplesAddr.getAddress())) {
52 decodeAddr.setValue(samplesAddr.getAddress() - 2160); // Rewind to the sample's header block.
53 }
There is another unrelated bug with this game regarding MediaEngine. If MediaEngine is enabled, JPCSP will crash when it tries to play the opening movie with the following error in the console:
A workaround is to disable MediaEngine in the configuration option to get past the opening movie and to the title screen in this game.Code:java.lang.IllegalArgumentException: must pass in a non null handler
at com.xuggle.xuggler.io.XugglerIO.mapIO(XugglerIO.java:588)
at com.xuggle.xuggler.io.XugglerIO.map(XugglerIO.java:539)
at com.xuggle.xuggler.io.XugglerIO.map(XugglerIO.java:218)
at com.xuggle.xuggler.IContainer.open(IContainer.java:196)
at jpcsp.media.MediaEngine.init(MediaEngine.java:315)
at jpcsp.HLE.modules150.sceMpeg.sceMpegGetAtracAu(sceMpeg.java:1232)
at _S1_3_8A98634.s(_S1_3_8A98634.java:4)
at _S1_3_89287D8.s(_S1_3_89287D8.java:80)
at _S1_3_8927788.s(_S1_3_8927788.java:380)
at _S1_3_8927DF4.s(_S1_3_8927DF4.java:948)
at _S1_3_8851674.s(_S1_3_8851674.java:108)
at _S1_3_884E29C.s(_S1_3_884E29C.java:200)
at _S1_3_884E29C.exec(_S1_3_884E29C.java)
at jpcsp.Allegrex.compiler.RuntimeContext.jumpCall(RuntimeContext.java:137)
at jpcsp.Allegrex.compiler.RuntimeContext.jump(RuntimeContext.java:175)
at _S1_3_884E20C.s(_S1_3_884E20C.java:140)
at _S1_3_880C2FC.s(_S1_3_880C2FC.java:40)
at _S1_3_880C2FC.exec(_S1_3_880C2FC.java)
at jpcsp.Allegrex.compiler.RuntimeContext.jumpCall(RuntimeContext.java:137)
at jpcsp.Allegrex.compiler.RuntimeContext.call(RuntimeContext.java:216)
at _S1_3_880CD58.s(_S1_3_880CD58.java:88)
at _S1_3_88C5C20.s(_S1_3_88C5C20.java:96)
at _S1_3_880557C.s(_S1_3_880557C.java:196)
at _S1_3_88046EC.s(_S1_3_88046EC.java:260)
at _S1_3_892B334.s(_S1_3_892B334.java:284)
at _S1_3_892B334.exec(_S1_3_892B334.java)
at jpcsp.Allegrex.compiler.RuntimeContext.runThread(RuntimeContext.java:693)
at jpcsp.Allegrex.compiler.RuntimeThread.run(RuntimeThread.java:51)
Sorry for the late answer Itaru, I was away for some days. I'm now aware of this issue and already found a solution.
Working on a fix right away.