This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Critical error: Invalid Device
#1
This very rare error appears when the user clicks on an encrypted EBOOT.PBP game on the UMD Browser. It might also be possible that this error can appear when the user clicks on a disk image as well.

The following error message appears on the console after the user selects the game and clicks on "Load":
Code:
AL lib: (EE) DoReset: Failed to initialize audio client: 0x88890017
org.lwjgl.openal.OpenALException: Invalid Device
    at org.lwjgl.openal.Util.checkALCError(Util.java:55)
    at org.lwjgl.openal.ALC10.alcCreateContext(ALC10.java:251)
    at org.lwjgl.openal.AL.init(AL.java:173)
    at org.lwjgl.openal.AL.create(AL.java:143)
    at org.lwjgl.openal.AL.create(AL.java:102)
    at org.lwjgl.openal.AL.create(AL.java:206)
    at jpcsp.sound.SoundChannel.init(SoundChannel.java:68)
    at jpcsp.HLE.modules.sceAudio.start(sceAudio.java:59)
    at jpcsp.HLE.HLEModuleManager.startModules(HLEModuleManager.java:541)
    at jpcsp.Emulator.initCpu(Emulator.java:211)
    at jpcsp.Emulator.load(Emulator.java:185)
    at jpcsp.Emulator.load(Emulator.java:154)
    at jpcsp.MainGUI.loadUMD(MainGUI.java:1847)
    at jpcsp.MainGUI.loadUMDGame(MainGUI.java:2024)
    at jpcsp.MainGUI.loadUMD(MainGUI.java:1902)
    at jpcsp.MainGUI.loadAndRunUMD(MainGUI.java:1880)
    at jpcsp.GUI.UmdBrowser.loadSelectedfile(UmdBrowser.java:773)
    at jpcsp.GUI.UmdBrowser.loadButtonActionPerformed(UmdBrowser.java:1090)
    at jpcsp.GUI.UmdBrowser.access$1900(UmdBrowser.java:65)
    at jpcsp.GUI.UmdBrowser$6.actionPerformed(UmdBrowser.java:966)
    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.plaf.basic.BasicButtonListener.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.pumpEventsForFilter(Unknown Source)
    at java.awt.WaitDispatchSupport$2.run(Unknown Source)
    at java.awt.WaitDispatchSupport$4.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.awt.WaitDispatchSupport.enter(Unknown Source)
    at java.awt.Dialog.show(Unknown Source)
    at java.awt.Component.show(Unknown Source)
    at java.awt.Component.setVisible(Unknown Source)
    at java.awt.Window.setVisible(Unknown Source)
    at java.awt.Dialog.setVisible(Unknown Source)
    at jpcsp.MainGUI.openUmdActionPerformed(MainGUI.java:1772)
    at jpcsp.MainGUI.access$500(MainGUI.java:104)
    at jpcsp.MainGUI$7.actionPerformed(MainGUI.java:450)
    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)

While I was checking options in the emulator to see if they still work, the option "Unpack PBP on load" doesn't do anything with an encrypted EBOOT.PBP file. I'm assuming that if a PBP file is loaded, the emulator would unpack its contents into a directory (unless it only works with homebrew EBOOT.PBP files).


Attached Files Thumbnail(s)
   

.zip   Log_rb7a1d8b(64bit)_INFO.zip (Size: 5.05 KB / Downloads: 254)
Reply
#2
Strange, I never saw that error. I found the same error reported in a Microsoft forum

https://social.msdn.microsoft.com/Forums...evelopment

This is not related to lwjgl, but maybe lwjgl only reports the error code it is receiving from the Windows API. Is it happening only on a weak PC/Laptop?
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#3
Since I only have one computer (which is considered below mid-range in specifications), I don't know if this issue would affect a computer or laptop that has better specifications than mine. It is possible that it could be a operating system issue: https://steamcommunity.com/app/215080/di...1247306654

Quote:If you are playing on Windows 7, there is something about Win7 that makes Windows Audio sometimes go into a coma for some reason or another, and that can also cause this error to happen.
Reply
#4
How do you resolve the issue when it happens? Is it sufficient just to restart Jpcsp or do you need to do something at the Windows level?
If a restart of Jpcsp is sufficient, I could try to perform the audio initialization in Jpcsp multiple times in case it is failing...
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#5
(12-19-2017, 11:15 AM)DragonNeos Wrote: While I was checking options in the emulator to see if they still work, the option "Unpack PBP on load" doesn't do anything with an encrypted EBOOT.PBP file. I'm assuming that if a PBP file is loaded, the emulator would unpack its contents into a directory (unless it only works with homebrew EBOOT.PBP files).
I found a place where this option was not considered. Is it now resolved in a3ed731?
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#6
Since it is a very rare error, when I do encounter the issue, I just close and restart the emulator. After restarting the emulator, there aren't any issues when I select a game or application.

Although the option "Unpack PBP on load" now works with encrypted EBOOT.PBP files, it should probably be listed somewhere on the README.txt that the -Xmx Size should be increased to a greater capacity (depending on the size of the EBOOT) when using this option or else the following occurs:
Code:
Exception in thread "Umd Browser - Umd Info Loader" java.lang.OutOfMemoryError: Java heap space
    at jpcsp.util.Utilities.readAsByteBuffer(Utilities.java:1901)
    at jpcsp.filesystems.umdiso.UmdIsoReader.init(UmdIsoReader.java:79)
    at jpcsp.filesystems.umdiso.UmdIsoReader.<init>(UmdIsoReader.java:56)
    at jpcsp.GUI.UmdBrowser.loadUmdInfo(UmdBrowser.java:453)
    at jpcsp.GUI.UmdBrowser.access$800(UmdBrowser.java:65)
    at jpcsp.GUI.UmdBrowser$UmdInfoLoader.run(UmdBrowser.java:802)

For example, I had to raise the -Xmx Size to 2560 MB in order for the emulator to dump the contents of Final Fantasy Type-0 Trial [Zeroshiki] into the unpacked-pbp directory.

A similar error may appear when selecting an encrypted EBOOT.PBP from the UMD Browser:
Code:
Exception in thread "GUI" java.lang.OutOfMemoryError: Java heap space
    at jpcsp.util.Utilities.readAsByteBuffer(Utilities.java:1901)
    at jpcsp.filesystems.umdiso.UmdIsoReader.init(UmdIsoReader.java:79)
    at jpcsp.filesystems.umdiso.UmdIsoReader.<init>(UmdIsoReader.java:56)
    at jpcsp.GUI.UmdBrowser.onSelectionChanged(UmdBrowser.java:524)
    at jpcsp.GUI.UmdBrowser.access$1600(UmdBrowser.java:65)
    at jpcsp.GUI.UmdBrowser$3.valueChanged(UmdBrowser.java:340)
    at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
    at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
    at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
    at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
    at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
    at javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown Source)
    at javax.swing.JTable.changeSelectionModel(Unknown Source)
    at javax.swing.JTable.changeSelection(Unknown Source)
    at javax.swing.plaf.basic.BasicTableUI$Handler.adjustSelection(Unknown Source)
    at javax.swing.plaf.basic.BasicTableUI$Handler.mousePressed(Unknown Source)
    at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
    at java.awt.AWTEventMulticaster.mousePressed(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)
Exception in thread "GUI" java.lang.OutOfMemoryError: Java heap space
    at jpcsp.util.Utilities.readAsByteBuffer(Utilities.java:1901)
    at jpcsp.filesystems.umdiso.UmdIsoReader.init(UmdIsoReader.java:79)
    at jpcsp.filesystems.umdiso.UmdIsoReader.<init>(UmdIsoReader.java:56)
    at jpcsp.GUI.UmdBrowser.onSelectionChanged(UmdBrowser.java:524)
    at jpcsp.GUI.UmdBrowser.access$1600(UmdBrowser.java:65)
    at jpcsp.GUI.UmdBrowser$3.valueChanged(UmdBrowser.java:340)
    at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
    at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
    at javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
    at javax.swing.plaf.basic.BasicTableUI$Handler.setValueIsAdjusting(Unknown Source)
    at javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)
    at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
    at java.awt.AWTEventMulticaster.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)

The first error seems to occur when the -Xmx Size is never touched (UMD Browser displays a white screen and is frozen). The second error seems to occur after the -Xmx Size has changed to a lower value (I lowered the value from 2560 MB back to 1024 MB). Both cases require using the Task Manager to close the emulator.


Attached Files
.zip   Log_r7bda5b7(64bit)_INFO (1st Error).zip (Size: 1.42 KB / Downloads: 214)
.zip   Log_r7bda5b7(64bit)_INFO (Alternate Error).zip (Size: 1.75 KB / Downloads: 219)
Reply
#7
(12-23-2017, 08:45 PM)DragonNeos Wrote: Although the option "Unpack PBP on load" now works with encrypted EBOOT.PBP files, it should probably be listed somewhere on the README.txt that the -Xmx Size should be increased to a greater capacity (depending on the size of the EBOOT) when using this option or else the following occurs:
The memory consumption of "Unpack PBP" has been improved in 737acb7. No change of -Xmx should be required now for "Unpack PBP".
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#8
Is it possible to make the option "Unpack PBP on load" only activate on the UMD Browser after a user selects a game and clicks "Load"? For example, I have more than one encrypted EBOOT.PBP in the ms0/PSP/GAME directory. As soon as I open the UMD Browser, I am greeted with a white screen from the UMD Browser as the emulator is attempting to unpack a random EBOOT.PBP.

The option "Unpack PBP on load" works fine when a user selects a game from the UMD Browser beforehand and chooses to load it from the option "Load recent...".


Attached Files Thumbnail(s)
   
Reply
#9
(12-29-2017, 04:55 PM)DragonNeos Wrote: Is it possible to make the option "Unpack PBP on load" only activate on the UMD Browser after a user selects a game and clicks "Load"? For example, I have more than one encrypted EBOOT.PBP in the ms0/PSP/GAME directory. As soon as I open the UMD Browser, I am greeted with a white screen from the UMD Browser as the emulator is attempting to unpack a random EBOOT.PBP.
OK, this should now work as expected in dbe2ca4. Thank you for your reports Smile
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#10
I can confirm that the option "Unpack PBP on load" works properly when it is used while on the UMD Browser. Could an option for the reverse (repack PBP) be added as well?
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)