libretro / gw-libretro

A libretro core for Game & Watch simulators
zlib License
31 stars 34 forks source link

Game and Watch Crashes on Pi3 with Segmentation Fault #58

Open amurgshere opened 4 years ago

amurgshere commented 4 years ago

Hello everyone,

I am having an issue where all the Game and Watch ROMs crash with a segmentation fault, all my other emulators and ROMs are working fine (GB, GBA, GG, NES, SNES, GENESIS, ATARI) with a Playstation controller.

Im running RetroPie 4.5.1 and only just last night (10/1/2020) ran a full update of all packages.

When you load a Game and Watch ROM, it shows the initial box saying to press A to configure, then the screen goes black briefly, the box flashes very quickly again then it goes back to the ROM selection.

I would be greatful for any help to get this rectified if possible, I am a software engineer myself, but dont really work with Linux much so my knowledge of this stuff is limited but happy to learn if you point me in the right direction in order to gather furhter diagnostic information. I know there is a similar thread on here for the Pi Zero, and the request there was to get a call stack of the error, just not sure how to run it to get that level of debugging information for the fault.

I turned on detailed logging for this Emulator and found this in the log:

runcommand.log

Thank You

leiradel commented 4 years ago

I was able to run this core at the same version as reported in the log (1.6.3) without any issues, so maybe this is an issue with the RetroPie build. Have you asked about this in RetroPie's forums?

amurgshere commented 4 years ago

Thanks leiradel, I will give that go.

amurgshere commented 4 years ago

Hello everyone, in case someone else is having this issue, I finally sort it out. I had changed the default video driver to “dispmanx” for all emulators because it had less input lag, but this does not seem to be compatible with lr-gw, so i just overrode the video driver setting for lr-gw to use “gl” video driver instead, and now it works! Thanks for your help.

leiradel commented 4 years ago

@amurgshere maybe the dispmanx driver has issues with odd framebuffer sizes, which the gw-libretro core has plenty of, but that should be solved in the frontend (i.e. RetroArch) since the libretro API doesn't mention any constraints for the framebuffer dimensions.

@twinaphex ping.