Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Release of External Software Rendering for JPCSP
On the 32-bit version of the External Software Renderer, when you close JPCSP, Java will crash and create a hs_err_pidXXXXX.txt file. I have tested all revisions until 37bb9b7 and they produce the same result (any builds older than this were hosted on RapidGator or EmuNewz and have already been removed).

Most builds I have tested show the following as the issue when the emulator is closed:
Code:
# Problematic frame:
# C  [software-ge-renderer-SSE3.dll+0x2d92e]

Starting with revision 97c0bf3, the memory address is slightly different:
Code:
# Problematic frame:
# C  [software-ge-renderer-SSE3.dll+0x2d89e]


Attached Files
.7z   External Software Renderer Java Crash on exit (32-bit).7z (Size: 7.25 KB / Downloads: 3)
Reply

When the External Software Renderer is used, at least on revision 935ea155, the following message appears on the console window:
Code:
Running Jpcsp 64bit...
Exception in thread "GUI" java.lang.ArrayIndexOutOfBoundsException: -1
        at jpcsp.graphics.RE.StateProxy.matrixFirstUpdated(StateProxy.java:494)
        at jpcsp.graphics.RE.StateProxy.setMatrix(StateProxy.java:849)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setMatrix(BaseRenderingEngineProxy.java:232)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setMatrix(BaseRenderingEngineProxy.java:232)
        at jpcsp.graphics.RE.RenderingEngineLwjgl.setProjectionMatrix(RenderingEngineLwjgl.java:1292)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineFunction.startDirectRendering(BaseRenderingEngineFunction.java:391)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.ViewportFilter.startDirectRendering(ViewportFilter.java:73)
        at jpcsp.graphics.VideoEngineUtilities.drawTexture(VideoEngineUtilities.java:175)
        at jpcsp.graphics.VideoEngineUtilities.drawFrameBuffer(VideoEngineUtilities.java:262)
        at jpcsp.graphics.VideoEngineUtilities.drawFromMemory(VideoEngineUtilities.java:288)
        at jpcsp.graphics.VideoEngineUtilities.drawFrameBufferFromMemory(VideoEngineUtilities.java:277)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paintGL(sceDisplay.java:271)
        at org.lwjgl.opengl.awt.AWTGLCanvas.render(AWTGLCanvas.java:107)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paint(sceDisplay.java:153)
        at java.awt.Canvas.update(Unknown Source)
        at sun.awt.RepaintArea.updateComponent(Unknown Source)
        at sun.awt.RepaintArea.paint(Unknown Source)
        at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.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$JavaSecurityAccessImpl.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)

As the emulator continues to run over time, the console window will continue displaying this message periodically:
Code:
Exception in thread "GUI" java.lang.ArrayIndexOutOfBoundsException
Reply

Code:
Running Jpcsp 64bit...
Exception in thread "GUI" java.lang.ArrayIndexOutOfBoundsException: -1
        at jpcsp.graphics.RE.StateProxy.matrixFirstUpdated(StateProxy.java:494)
        at jpcsp.graphics.RE.StateProxy.setMatrix(StateProxy.java:849)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setMatrix(BaseRenderingEngineProxy.java:232)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setMatrix(BaseRenderingEngineProxy.java:232)
        at jpcsp.graphics.RE.RenderingEngineLwjgl.setProjectionMatrix(RenderingEngineLwjgl.java:1292)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setProjectionMatrix(BaseRenderingEngineProxy.java:277)
        at jpcsp.graphics.RE.BaseRenderingEngineFunction.startDirectRendering(BaseRenderingEngineFunction.java:391)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.startDirectRendering(BaseRenderingEngineProxy.java:77)
        at jpcsp.graphics.RE.ViewportFilter.startDirectRendering(ViewportFilter.java:73)
        at jpcsp.graphics.VideoEngineUtilities.drawTexture(VideoEngineUtilities.java:175)
        at jpcsp.graphics.VideoEngineUtilities.drawFrameBuffer(VideoEngineUtilities.java:262)
        at jpcsp.graphics.VideoEngineUtilities.drawFromMemory(VideoEngineUtilities.java:288)
        at jpcsp.graphics.VideoEngineUtilities.drawFrameBufferFromMemory(VideoEngineUtilities.java:277)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paintGL(sceDisplay.java:271)
        at org.lwjgl.opengl.awt.AWTGLCanvas.render(AWTGLCanvas.java:107)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paint(sceDisplay.java:153)
        at java.awt.Canvas.update(Unknown Source)
        at sun.awt.RepaintArea.updateComponent(Unknown Source)
        at sun.awt.RepaintArea.paint(Unknown Source)
        at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.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$JavaSecurityAccessImpl.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)
As this issue been fixed by 94802cf? I could not reproduce it myself...
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply

Yes, the issue has been fixed when I used the emulator on commit cf405d21.

The console error message can be reproduced on older commits like aabff280 using latest External Software Renderer commit 3d1bbb0 (see below screenshot).


Attached Files Thumbnail(s)
   
Reply

Starting on commit 84804dd, using the External Software Renderer causes the following message to appear on the console window:
Code:
Exception in thread "GUI" java.lang.IllegalArgumentException
        at java.nio.Buffer.limit(Unknown Source)
        at jpcsp.graphics.RE.DirectBufferUtilities.getDirectBuffer(DirectBufferUtilities.java:62)
        at jpcsp.graphics.RE.RenderingEngineLwjgl.setTexSubImage(RenderingEngineLwjgl.java:1122)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setTexSubImage(BaseRenderingEngineProxy.java:707)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setTexSubImage(BaseRenderingEngineProxy.java:707)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setTexSubImage(BaseRenderingEngineProxy.java:707)
        at jpcsp.graphics.RE.BaseRenderingEngineProxy.setTexSubImage(BaseRenderingEngineProxy.java:707)
        at jpcsp.graphics.VideoEngineUtilities.drawFromMemory(VideoEngineUtilities.java:291)
        at jpcsp.graphics.VideoEngineUtilities.drawFrameBufferFromMemory(VideoEngineUtilities.java:282)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paintGL(sceDisplay.java:320)
        at org.lwjgl.opengl.awt.AWTGLCanvas.render(AWTGLCanvas.java:107)
        at jpcsp.HLE.modules.sceDisplay$AWTGLCanvas_sceDisplay.paint(sceDisplay.java:151)
        at java.awt.Canvas.update(Unknown Source)
        at sun.awt.RepaintArea.updateComponent(Unknown Source)
        at sun.awt.RepaintArea.paint(Unknown Source)
        at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.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$JavaSecurityAccessImpl.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)
Note that this error message doesn't always appear on the console window when clicking Run on the emulator to start the game/application but appears a majority of the time.
Reply



Forum Jump:


Users browsing this thread:
2 Guest(s)

Powered By MyBB, © 2002-2022 iAndrew & Melroy van den Berg.