Skip to content

Conversation

@leiradel
Copy link
Contributor

Guidelines

  1. Rebase before opening a pull request
  2. If you are sending several unrelated fixes or features, use a branch and a separate pull request for each
  3. If possible try squashing everything in a single commit. This is particularly beneficial in the case of feature merges since it allows easy bisecting when a problem arises

Description

Added RETRO_SAVESTATE_CONTEXT_REWIND_SAME_INSTANCE for rewind savestate contexts.

Related Issues

[Any issues this pull request may be addressing]

Related Pull Requests

[Any other PRs from related repositories that might be needed for this pull request to work]

Reviewers

[If possible @mention all the people that should review your pull request]

@barbudreadmon
Copy link
Contributor

barbudreadmon commented Nov 27, 2025

I tried investigating #16374 once again, and i still can't fully understand what's happening.
Adding more logs to FBNeo's retro_serialize/retro_unserialize shows that the size for each contexts are most likely correctly stored and used by RA (second arg size_t size is matching the expected size for the context).

My best guess is that the serialized data sent to retro_unserialize is wrong, because from what is happening visually in ga2, either FBNeo is receiving rewind's serialized data for the runahead context, or it receives a truncated version of runahead's serialized data (maybe because the ptr was allocated from the wrong size or something ?).

The problem is that RA's code is confusing, so i'm struggling figuring out what is used for what.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants