Rewind Issue with RetroPie & FBNeo
-
Good day,
[Raspberry Pi4B/4GB]
[Latest RetroPie binary for Libretro]
[Latest RetroPie binary for FBNeo]I recently updated FBNeo and found an issue with Rewind.
When a rom .cfg file contains both:
rewind_enable = "true"
andrun_ahead_enabled = "true"
The symptom is that various games that used to rewind properly for me in FBNeo no longer rewind. They may either crash, freeze or reset the game.
How I tested:
Using the FBNeo Donkey Kong ROM
dkong.7z
and a companion rom configuration filedkong.7z.cfg
- If rewind and run_ahead are enabled via the ROM .cfg file, regardless of if they're enabled by default in RetroArch the problem occurs.
- If Rewind is enabled in RetroArch, but NOT enabled in the ROM .cfg file, rewind behaves correctly.
- If Rewind is disabled in RetroArch and NOT enabled in the ROM .cfg file, and the user manually enables Rewind via RetroArch Core Options, rewind behaves correctly.
So it would seem that ROM .cfg's that enable both rewind and run_ahead is the issue here. I'm only seeing the problem with FBNeo, but wondering if it might have to do with how RetroPie patches Libretro? Are ROM .cfg overrides part of the patching? If not, it's more likely the issue is a change with FBNeo, since this bad behavior was not an issue with an earlier build of the emulator I've been using for several months.
I didn't see this as a known issue with FBNeo, and as I'm fairly extreme with how I handle my ROMs (with thousands of custom .cfg overrides) this might not be a common issue for many people. My cfg's allow individual games to use Rewind and run_ahead if I [previously] tested them and deemed them safe. So for me, it's a pretty big issue when most of these .cfg's now fail.
-
Okay... I dug even deeper and it appears this is not .cfg specific. Simply put, if both run_ahead and rewind are enabled at the time the game launches, rewind will fail.
There are two (2) ways to reproduce the bug w/dkong:
In RetroArch (or by modifying retroarch.cfg) enable both Latency/Run-Ahead to Reduce Latency and Frame Throttle/Rewind/Rewind Support. Ensure game launched does not have an override. Save... Launch dkong
orEdit a rom .cfg override and set both rewind_enable = "true" and run_ahead_enabled = "true". Save. Launch dkong.
Then try rewind. Results should be the same as in my video above. -
UPDATE: Issue has been fixed with commit de5055c.
Thank you @barbudreadmon
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.