[Feature Request] Save State backward compatibility list for libretro cores
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Description
I propose adding a save state backward compatibility list for each Libretro core directly within the RetroArch interface. This information should be accessible via:
Main Menu → Information → Core Information (after a core has been loaded)
This feature would allow users to quickly see which previous versions of the same core are compatible with the current core’s save states, helping them make informed decisions when updating cores or managing save state data across different versions.
Motivation
- Save state compatibility between different versions of the same core is a frequent source of confusion and frustration, as save states often break between core updates or releases.
- Currently, there is no centralized, in-app resource that outlines backward save state compatibility for each core.
- Having this information easily accessible in the Core Information menu would improve transparency and reduce user error.
Scope
- The compatibility list would indicate which previous versions of the same core, if any, share compatible save state formats.
- Notes about special cases, known incompatibilities, or required conversion tools could also be included.
- This information should be displayed after a core has been loaded, alongside existing core information.
Benefits
- Reduces the risk of save state corruption or loss when updating cores.
- Provides immediate, in-context guidance to users.
- Enhances the documentation and usability of RetroArch.
Example: bsnes core
bsnes Save State Backward Compatibility Table
| Current Version | Compatible with Save States from Versions | Notes |
|---|---|---|
| v115 | v114, v113 | Minor updates; save states generally work |
| v114 | v113 | Mostly compatible, but some edge cases |
| v113 | v112 | Incompatible due to serialization changes |
| v112 | None | Major overhaul; not compatible |
- Special Cases:
- Save states created with the "Accuracy" profile may not be compatible with those from "Balanced" or "Performance" profiles, even within the same version.
- Always back up your save states before updating the core.
Request
- Feedback on the feasibility and design of this feature.
- Suggestions on how best to present backward compatibility information within the Core Information menu.
- Community contributions for compiling and maintaining the compatibility data.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at Main Menu → Information → Core Information after a core is loaded, and inspect how existing core information is presented. Define where compatibility data would come from and how special cases would be maintained; done means the interface displays accurate per-core backward-compatibility guidance without implying unsupported version relationships.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- documentation, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100