libretro / flycast

Flycast is a multiplatform Sega Dreamcast emulator. NOTE: No longer actively developed, use upstream repo for libretro from now on - https://github.com/flyinghead/flycast
http://reicast.com
GNU General Public License v2.0
155 stars 77 forks source link

Flycast crashes on any/all roms loaded #1070

Closed jason-oliveira closed 3 years ago

jason-oliveira commented 3 years ago

Hello, standard Calculate Linux install, Retroarch 1.9.1 built from my repo (https://gitlab.com/jason.oliveira/retroarch), and Flycast binary downloaded from buildbot.

Flycast refuses to load any chd, dat, or cdi file, all of which work in standalone flycast. Error reported is always https://pastebin.com/5iiEng3X of which I'll paste the relevant output below:

[libretro ERROR] libretro/common.cpp:359 E[COMMON]: SIGSEGV @ 7f9ba1872715 ... 0x7f9a83ef0000 -> was not in vram (dyna code 0)
[libretro ERROR] libretro/libretro.cpp:3257 E[COMMON]: DEBUGBREAK!
[libretro ERROR] libretro/common.cpp:359 E[COMMON]: SIGSEGV @ 7f9a82f80cc8 ... 0x7f9a82f80cc8 -> was not in vram (dyna code 0)
[libretro ERROR] libretro/libretro.cpp:3257 E[COMMON]: DEBUGBREAK!
[1]    18065 illegal hardware instruction

Kcin2001 suggested getting the behavior with the GDI version, so https://pastebin.com/J4u66uSz is the result of that. He also suggested I just load only the GDI file and delete everything else in the directory, and the result was https://pastebin.com/trgWfNL2

Expected Behavior

Flycast loads the rom and begins playback as best it can.

Actual Results

Flycast chokes and dies, taking RetroArch with it.

bslenul commented 3 years ago

Settings > Latency > Run-Ahead enabled by any chance?

jason-oliveira commented 3 years ago

This was exactly the issue. Is there a way for a core to disable run-ahead, or is this now a bug that needs to be filed with libretro/RetroArch?

bslenul commented 3 years ago

You could manually create an override for Flycast: go to your retroarch/config/Flycast/ folder then create a Flycast.cfg file if you don't already have one, edit it with a text editor and put this line in it: run_ahead_enabled = "false". Now run-ahead should be disabled automatically when you'll start the core.

But no, it's not a RetroArch bug, some cores disable it automatically without the need of an override, Flycast is just not one of them :p

DewmBot commented 3 years ago

Not 100% sure if I should start a new thread or not; but I appear to have a similar issue; but with no proper error?

Launching the file succeeds (no matter which format) but after the Dreamcast bootup it proceeds to immediately crash taking Retroarch with it.

My Error log is here: https://pastebin.com/XdrubXke

I will note I am on Android; I have disabled run ahead as well have tried both the Google play version as well as the F-droid version. I am running the 64bit version of Retroarch.

Hardware: Motorola G9 Plus International Snapdragon 730G Retroarch is running on internal memory

Software: Android 10 (QPAS30.19-Q3-32-59-5) Retroarch Version: 1.9.0 (AArch64) Flycast (Latest as of May/10/2021)

File format does not seem to matter with this crash; all other cores work perfectly fine.

jason-oliveira commented 3 years ago

@DewmBot That's a new bug. Mine was completely resolved and caused by run-ahead needing to be disabled. Good luck.