After testing God Eater 2 on revision 0f72f42, there are issues that still prevent the game from being able to load further on the emulator.
Issue #1: After a new game is started, if the user allows the second cutscene to play the emulator will crash. From revision
e38c3e9 to
58b8f19, the error displayed was shown as:
Code:
15:49:52 ERROR runtime - Main - Catched Throwable in RuntimeThread:
java.lang.NumberFormatException: radix 0 less than Character.MIN_RADIX
at java.lang.Integer.parseInt(Unknown Source)
at jpcsp.HLE.modules.SysclibForKernel.strtol(SysclibForKernel.java:219)
at _S1_2_8D87A28.s(_S1_2_8D87A28.java:4)
at _S1_2_8D779F4.s(_S1_2_8D779F4.java:80)
at _S1_2_8D79F9C.s(_S1_2_8D79F9C.java:948)
at _S1_2_8D79F9C.exec(_S1_2_8D79F9C.java)
at jpcsp.Allegrex.compiler.RuntimeContext.jumpCall(RuntimeContext.java:165)
at jpcsp.Allegrex.compiler.RuntimeContext.jump(RuntimeContext.java:197)
at _S1_2_8D7AB80.s(_S1_2_8D7AB80.java:60)
at _S1_2_8D7AB80.exec(_S1_2_8D7AB80.java)
at jpcsp.Allegrex.compiler.RuntimeContext.jumpCall(RuntimeContext.java:165)
at jpcsp.Allegrex.compiler.RuntimeContext.jump(RuntimeContext.java:197)
at _S1_2_8845DD0.s(_S1_2_8845DD0.java:84)
at _S1_2_8845DD0.exec(_S1_2_8845DD0.java)
at jpcsp.Allegrex.compiler.RuntimeContext.jumpCall(RuntimeContext.java:165)
at jpcsp.Allegrex.compiler.RuntimeContext.call(RuntimeContext.java:218)
at _S1_2_8840658.s(_S1_2_8840658.java:148)
at _S1_2_8845C28.s(_S1_2_8845C28.java:140)
at _S1_2_884618C.s(_S1_2_884618C.java:784)
at _S1_2_88469B0.s(_S1_2_88469B0.java:16)
at _S1_2_88470FC.s(_S1_2_88470FC.java:492)
at _S1_2_88040DC.s(_S1_2_88040DC.java:684)
at _S1_2_88040DC.exec(_S1_2_88040DC.java)
at jpcsp.Allegrex.compiler.RuntimeContext.execWithReturnAddress(RuntimeContext.java:685)
at jpcsp.Allegrex.compiler.RuntimeContext.runThread(RuntimeContext.java:746)
at jpcsp.Allegrex.compiler.RuntimeThread.run(RuntimeThread.java:50)
Starting from revision
31907c6, the error changed to:
Code:
21:56:15 INFO hle.IoFileMgrForUser - SndFile - hleIoOpen filename = disc0:/sce_lbn0xbff94_size0xfda8c flags = 1 permissions = 00
21:56:15 INFO stdout - Main - cassert : src/god_g001_Demo/event_demo.c 344 : : (N/A)
21:56:15 ERROR emu - Main - 0x088266C4 - Allegrex break 0x00000
Issue #2: This is a rare issue that can occur in other games as it deals with H264 video decoding. I can't pinpoint the exact revision (I assume it's between revision
2f3cae8 to
27eb47f) that started having this problem due to the infrequent appearance of this issue in God Eater 2 (may appear more often in other games). On this game, if the user starts a new game and allows the first cutscene to play, the game will randomly crash (with corrupted visuals in the 1st Screenshot) with this message in the console window:
Code:
Exception in thread "Video Decoder Thread" java.lang.NullPointerException
at com.twilight.h264.decoder.H264Context.ff_h264_decode_ref_pic_marking(
H264Context.java:7717)
at com.twilight.h264.decoder.H264Context.decode_slice_header(H264Context
.java:8310)
at com.twilight.h264.decoder.H264Context.decode_nal_units(H264Context.ja
va:6495)
at com.twilight.h264.decoder.H264Context.decode_frame(H264Context.java:8
605)
at com.twilight.h264.decoder.H264Decoder.decode(H264Decoder.java:35)
at com.twilight.h264.decoder.MpegEncContext.avcodec_decode_video2(MpegEn
cContext.java:2300)
at jpcsp.media.codec.h264.H264Decoder.decode(H264Decoder.java:71)
at jpcsp.HLE.modules.sceMpeg.decodeNextImage(sceMpeg.java:1374)
at jpcsp.HLE.modules.sceMpeg.hleVideoDecoderStep(sceMpeg.java:1440)
at jpcsp.HLE.modules.sceMpeg.access$500(sceMpeg.java:94)
at jpcsp.HLE.modules.sceMpeg$VideoDecoderThread.run(sceMpeg.java:1085)
Issue #3: The H264 video decoder needs improvements since most games that have videos get frequent error messages such as:
Code:
23:34:13 ERROR h264 - Video Decoder Thread - H264 decode error 0xFFFFFFFF
23:34:13 ERROR hle.sceMpeg - Video Decoder Thread - decodeNextImage codec returned 0xFFFFFFFF
As the above message appears, the video will display corrupted visuals and delayed audio (2nd Screenshot). There are instances where the corrupted video and delayed audio occur, but the error messages don't appear in the log.
Issue #4: There seems to be font display issues and lighting problems (lighting affects the background and the text making it look brighter than normal) during cutscenes in this game. The 3rd Screenshot is the cutscene shown from the PSP and the 4th Screenshot is shown with JPCSP. As you can see in the screenshots, there is an equal (=) sign appearing in the subtitles on the right corner (as shown with the red arrow). This issue only occurs when there are two lines of dialogue appearing on the screen at once. If there is only one line of dialogue on the screen, the equal sign doesn't appear at all.