08-05-2015, 03:00 AM
(This post was last modified: 08-05-2015, 05:55 AM by DragonNeos.)
This homebrew application was tested with revision 6493ea6. The function Game Update now works on JPCSP, although a few errors pop up as the patching process occurs.
When JPCSP tries to load a game that was updated through iso_tool, a window pops up that says "Critical error: Check console output for details."
Code:
22:26:19 ERROR hle - user_main - Unmapped import at 0x08002D1C [0x4C537C72] Module 'semaphore' - $a0=0x09FFEE6C $a1=0x000000A4 $a2=0x09FFEE6C
22:26:21 ERROR hle - user_main - Unmapped import at 0x08002D1C [0x4C537C72] Module 'semaphore' - $a0=0x09FFEE6C $a1=0x00000064 $a2=0x09FFEE6C
22:26:21 ERROR hle - user_main - Unmapped import at 0x08002D1C [0x4C537C72] Module 'semaphore' - $a0=0x09FFEC68 $a1=0x00000074 $a2=0x09FFEC68
22:26:22 ERROR hle - user_main - Unmapped import at 0x08002D1C [0x4C537C72] Module 'semaphore' - $a0=0x09FFEE6C $a1=0x00000150 $a2=0x09FFEE6C
When JPCSP tries to load a game that was updated through iso_tool, a window pops up that says "Critical error: Check console output for details."
Code:
java.lang.IndexOutOfBoundsException
at java.io.ByteArrayOutputStream.write(Unknown Source)
at jpcsp.crypto.AES128.doUpdateCMAC(AES128.java:140)
at jpcsp.crypto.KIRK.executeKIRKCmd10(KIRK.java:662)
at jpcsp.crypto.KIRK.executeKIRKCmd1(KIRK.java:402)
at jpcsp.crypto.KIRK.hleUtilsBufferCopyWithRange(KIRK.java:859)
at jpcsp.crypto.PRX.DecryptPRX(PRX.java:749)
at jpcsp.format.PSP.decrypt(PSP.java:162)
at jpcsp.Loader.LoadPSP(Loader.java:332)
at jpcsp.Loader.LoadModule(Loader.java:173)
at jpcsp.Emulator.load(Emulator.java:160)
at jpcsp.Emulator.load(Emulator.java:153)
at jpcsp.MainGUI.loadUMD(MainGUI.java:1859)
at jpcsp.MainGUI.loadUMDGame(MainGUI.java:2027)
at jpcsp.MainGUI.loadUMD(MainGUI.java:1899)
at jpcsp.MainGUI$RecentElementActionListener.actionPerformed(MainGUI.java:3118)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$300(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)