Open dcharles525 opened 4 years ago
I wonder if the GLSL backend could be the cause of the crash here. Can you try to run the example with the soft blitter instead and see if the crash goes away?
/usr/bin/ngdevkit-gngeo -b soft --scale 3 --no-resize -i rom puzzledp
Also, in any case, could you give me a stack trace of where the crash is happening, with:
gdb --args /usr/bin/ngdevkit-gngeo -b glsl --shaderpath="/mnt/6caf58d5-d873-41ac-930d-63ff042b1cad/Code/examples/shaders" --shader="qcrt-flat.glslp" --scale 3 --no-resize -i rom puzzledp
run
bt
@dciabrin The first command worked! Thank you!
Here is the stack trace:
#0 0x00007ffff65070c9 in ?? () from /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0
#1 0x000055555560eaae in ?? ()
#2 0x000055555559fbb8 in ?? ()
#3 0x00007ffff7099d7c in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#4 0x00007ffff710f0f9 in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#5 0x00007ffff62ad6db in start_thread (arg=0x7fffeb6af700) at pthread_create.c:463
#6 0x00007ffff6acd88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
@dciabrin The first command worked! Thank you!
Good to know.
Here is the stack trace:
Ok that definitely looks like the the way gngeo uses threads doesn't play nicely with the nvidia GL driver. It's going to be painful for me to replicate as I don't have an nvidia card around. But just to confirm the theory, can you give me a stack trace of all the threads running at the time:
gdb --args /usr/bin/ngdevkit-gngeo -b glsl --shaderpath="/mnt/6caf58d5-d873-41ac-930d-63ff042b1cad/Code/examples/shaders" --shader="qcrt-flat.glslp" --scale 3 --no-resize -i rom puzzledp
run
thread apply all bt
I suspect that the thread that created the GL context is not the one which performs the rendering, or something along those lines.
No worries if it can't be fixed, assuming I can use the other command it should work just fine for me exploring the Neo Geo. :)
This is the output I got:
Thread 2 (Thread 0x7fffeb6af700 (LWP 31434)):
#0 0x00007ffff65070c9 in ?? () from /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0
#1 0x000055555560eaae in ?? ()
#2 0x000055555559fbb8 in ?? ()
#3 0x00007ffff7099d7c in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#4 0x00007ffff710f0f9 in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#5 0x00007ffff62ad6db in start_thread (arg=0x7fffeb6af700) at pthread_create.c:463
#6 0x00007ffff6acd88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 1 (Thread 0x7ffff7fb87c0 (LWP 31430)):
#0 0x00007ffff6a2b489 in __GI__IO_fread (buf=0x7fffffffd6a9, size=1, count=1, fp=0x555556199690)
at iofread.c:37
#1 0x0000555555597331 in ?? ()
#2 0x00005555555a4b9c in ?? ()
#3 0x00005555555ab0b0 in ?? ()
#4 0x00005555555ab6db in ?? ()
#5 0x00005555555af5b5 in ?? ()
#6 0x00005555555797ea in main ()
Not sure why but I can't get it to run any of the examples, however I can start gngeo with no game loaded.
Edit: I should also mention I am running Ubuntu 18.04