Page 1 of 1

Save State Support

Posted: Tue Jun 21, 2022 3:27 am
by ferropop
Was there any roadmap to getting proper Save State support in the SNES core? This feels like a pretty glaring oversight in an otherwise pitch-perfect core, and unfortunately one that really is a QOL bummer.

Is this a fairly complex thing to implement? I remember savestates being a thing on NESTicle in the 90s haha, but maybe I'm uneducated on the subject and speaking out of turn. Just curious!

Re: Save State Support

Posted: Tue Jun 21, 2022 9:31 am
by AngelicLiver
Save states is not a straightforward feature to implement and the SNES core is one of the larger and more complex cores on MiSTer. With MSU-1 recently added it is really pushing it with how much room there is left on the FPGA.

I may be in the minority when I say I don't care about save states but I appreciate their utility.

Re: Save State Support

Posted: Tue Jun 21, 2022 11:35 am
by FoxbatStargazer
Save states are doable in FPGA but have a much larger cost than software emulation. Robert did cram in save state support into the playstation core which is incredible, but claimed it took up nearly a quarter of the board's LEs. He also claimed that you need a clock control on every single element so you can simultaneously pause all elements before creating the state, which is extremely tedious to add after-the-fact. The only reason he added save states to the NES core was because it already was created with clocks included.

Now if the freaking Playstation can fit save states I'd think its possible for SNES as well. But it's also a hell of a lot of work to put on anyone at this point. In the meantime I recommend the cheat database for level skips because I also don't like to sit down for hour+ gaming sessions too often.

Re: Save State Support

Posted: Tue Jun 21, 2022 3:38 pm
by ferropop
Thanks for the info, was curious what the reasons might be given that it has been such a standard thing for 20+ years.

Re: Save State Support

Posted: Tue Jun 21, 2022 3:54 pm
by hainer92
There's also something more charming about level skip cheats than save states - they're less exploitable to me. I remember a friend who'd reload a save state before every major RNG roll until he got the roll he wanted haha!

Re: Save State Support

Posted: Tue Jun 21, 2022 6:45 pm
by akeley
For me cheats are a not a substitute for save states. You can't really apply them in RPGs, where I'd mostly love to use them, and even in other games they feel like, well, cheating.

Re: Save State Support

Posted: Tue Jun 21, 2022 11:09 pm
by Wave
It was definitely a weird experience realizing that I wanted to play a SNES game on MiSTer but didn't want to keep at it long enough to finish it. So in the absence of save states suddenly level warp cheats felt waaaay more valuable than ever before. But yeah, such cheats don't apply to every genre, and some games don't have relevant cheats... no good solution sometimes.

Re: Save State Support

Posted: Wed Jun 22, 2022 2:52 am
by Reed_Solomon
ferropop wrote: Tue Jun 21, 2022 3:27 am Was there any roadmap to getting proper Save State support in the SNES core? This feels like a pretty glaring oversight in an otherwise pitch-perfect core, and unfortunately one that really is a QOL bummer.

Is this a fairly complex thing to implement? I remember savestates being a thing on NESTicle in the 90s haha, but maybe I'm uneducated on the subject and speaking out of turn. Just curious!
Save states exist on the FXPak/SD2SNES and that's open source. It would be nice to see save states on the SNES core for sure some day if anyone wants to take on that challenge.

Re: Save State Support

Posted: Wed Jun 22, 2022 5:32 am
by ferropop
Reed_Solomon wrote: Wed Jun 22, 2022 2:52 am
ferropop wrote: Tue Jun 21, 2022 3:27 am Was there any roadmap to getting proper Save State support in the SNES core? This feels like a pretty glaring oversight in an otherwise pitch-perfect core, and unfortunately one that really is a QOL bummer.

Is this a fairly complex thing to implement? I remember savestates being a thing on NESTicle in the 90s haha, but maybe I'm uneducated on the subject and speaking out of turn. Just curious!
Save states exist on the FXPak/SD2SNES and that's open source. It would be nice to see save states on the SNES core for sure some day if anyone wants to take on that challenge.
Would totally support a Patreon to incentivize this happening, no questions asked.

Re: Save State Support

Posted: Wed Jun 22, 2022 6:01 am
by Waifu4Life
Give it time. Console wize, we're getting close to hitting a wall soon, so I'm confident that we'll get save states in the Big 3 (SNES/Gen/PCE) this year if not the next one.

Re: Save State Support

Posted: Wed Jun 22, 2022 7:03 pm
by Mr. Encyclopedia
Yeah as time goes on and all the major consoles that can appear on MiSTer are complete I'm sure the developer community will circle back to add newer features to the older cores.

Re: Save State Support

Posted: Thu Feb 02, 2023 11:03 pm
by d909

The FXPAK Pro flash cart has this now: https://sd2snes.de/blog/archives/1261
I wonder if any of the lessons learned in that project can be applied here.


Re: Save State Support

Posted: Sun Feb 05, 2023 6:55 pm
by KremlingKuthroat19

For all the console cores that feel like they could benefit from save states to be able to complete games, we're actually about halfway there. The second-gen games don't need save states bc those games are meant to be high-score-focused and are geared towards quick pick-up and play sessions. The same is applicable for Neo Geo and arcade games.

Save states are only really beneficial for 3-5th gen consoles. Saving and memory cards became standard with pretty much all 6th gen games onward, before every console used internal storage in the 7th gen. Considering all the excellent work Robert was done on adding save states to cores, the only cores that feel like they could benefit from save states are the Master System/Game Gear, SNES, Genesis, Sega CD, 32X, TurboGrafx-16/CD, Atari 7800, FDS, and the upcoming Saturn core. Also Robert is working on another unannounced core behind the scenes atm and he mentioned all his future cores will have save states.

If there was one core that'd benefit the most from save states at the moment it'd be the Master System imo bc you'd accomplish 2 consoles in one, and I don't have the patience to beat Alex Kidd in one sitting lol


Re: Save State Support

Posted: Sun Feb 26, 2023 6:27 pm
by ferropop

There's two real scenarios that people want out of the MiSTer :

  1. absolutely authentic recreation of the original experience. Save States have no place here.
  2. as-quick-as-possible-arrival to #1, accelerated by Save States.

I'd argue most people want #2, to dive directly into the action. Experiencing the entire Donkey Kong intro sequence is wonderful the first 10 times, but after that I think most want to dive directly into the action, ideally from exactly where they left off.

My view anyways!


Re: Save State Support

Posted: Sun Feb 26, 2023 7:49 pm
by Wave

Yeah I'd actually disagree a bit, ferropop, in that I have sometimes found myself wanting to play a MD/SNES game on MiSTer but don't feel I have the gumption to commit to its entire length in one session. In such cases I wished save states were available to let me "pause" between sessions.

In their absence I have taken to looking for in-game level select codes and MiSTer core-level cheat codes that let you start at a later point in the game. This proves a reasonable solution at least half the time.


Re: Save State Support

Posted: Sun Feb 26, 2023 10:08 pm
by FoxbatStargazer

Metal Slug games have save support and I appreciate it, because its the kind of game like many others I'd rather take one or two levels at a time! Same with arcade belt scrollers even...

Is there something different about how cheats work with CD consoles? I don't get any to appear on the turbo CD and I could use some...


Re: Save State Support

Posted: Mon Feb 27, 2023 9:26 am
by 12characters
FoxbatStargazer wrote: Sun Feb 26, 2023 10:08 pm

Is there something different about how cheats work with CD consoles? I don't get any to appear on the turbo CD and I could use some...

Yes, from the readme:

For CD-ROM game all cheats must be zipped into a single zip file and placed inside game's CD-ROM folder.


Re: Save State Support

Posted: Mon Feb 27, 2023 7:06 pm
by JAJT
ferropop wrote: Sun Feb 26, 2023 6:27 pm

There's two real scenarios that people want out of the MiSTer :

  1. absolutely authentic recreation of the original experience. Save States have no place here.
  2. as-quick-as-possible-arrival to #1, accelerated by Save States.

I'd argue that save states don't affect people's ability to have a truly authentic recreation - it would be like arguing against graphic filters and other settings in the MiSTer menu. They exist but you are free to not use them.

Personally I desperately hope we (eventually) get Save States for any/all cores possible.

Save states make MANY retro games more accessible. I've personally been working through a lot of NES games I never, ever would have been able to finish thanks to save states. It might have been fun to only ever see the first level or two of a very hard game as a kid but when you're pushing 40, sometimes you just want to be able to jump in and play/retry without the mindless and needless repetition.

I fully respect the fact that technical limitations exist and this stuff takes time and energy from dedicated volunteers but I don't think a good argument exists against save states as a concept. If you don't like them - don't use them. If you like them - they add a lot of accessibility. Win-win.


Re: Save State Support

Posted: Mon Feb 27, 2023 7:15 pm
by Retro-Nerd
12characters wrote: Mon Feb 27, 2023 9:26 am
FoxbatStargazer wrote: Sun Feb 26, 2023 10:08 pm

Is there something different about how cheats work with CD consoles? I don't get any to appear on the turbo CD and I could use some...

Yes, from the readme:

For CD-ROM game all cheats must be zipped into a single zip file and placed inside game's CD-ROM folder.

Zipped, and exactly named after the used CD image. But don't expect too much. A lot of the PC-Engine/PC-Engine CD cheats were made for emulators. Often they don't work on the MiSTer. Trying them is the only way to know it for sure.


Re: Save State Support

Posted: Wed Mar 01, 2023 11:40 pm
by ferropop

Maybe I was unclear.

I'm PRO savestates. Like 100% I'm feature requesting for it. What I'm saying is that most people want MOST of the aspects of the authentic experience, but in the most practical possible way. I don't think anyone enjoys sitting around waiting for load times, and save states would allow you to snapshot directly "in the action" of the game if you chose to.

I'll bet people would use the SNES core more if they could just bam be placed right back where they were, and I don't think this detracts from the "authentic experience". Also you can just choose not to use them!


Re: Save State Support

Posted: Fri Mar 03, 2023 2:17 pm
by twonunpackmule
Wave wrote: Sun Feb 26, 2023 7:49 pm

Yeah I'd actually disagree a bit, ferropop, in that I have sometimes found myself wanting to play a MD/SNES game on MiSTer but don't feel I have the gumption to commit to its entire length in one session. In such cases I wished save states were available to let me "pause" between sessions.

In their absence I have taken to looking for in-game level select codes and MiSTer core-level cheat codes that let you start at a later point in the game. This proves a reasonable solution at least half the time.

Also, look at Romhacking.net. A lot of games have been getting SRAM mods. This has been a work around I've been using when bouncing between MiSTer and traditional consoles with flash cartridges. The Everdrive has support for Save States (depending on console) and its been how I've primarily play my Genesis library. However, I've run into a few games that do not handle save states well. Mainly, Shinobi III. As some of you here...I'm pushing 40. Don't have two hours or so to always be able to play a game from beginning to end in one sitting. So, save states make a very, very convenient solution. SRAM mods aren't as convenient but they do handle some of that issue on titles that don't work well with save states...or for something like the MiSTer if a core doesn't support it.

I'm pro-save states. I also understand the work involved. I'm not contributing anything to the project (other than Patreon) so I also know I cannot demand something. I just want to state that save states are great. Are completely optional feature but greatly expand a library and options to a player without taking anything away from another.

Thank you all who continue to work on this project. You bring many of us joy.


Re: Save State Support

Posted: Sun Mar 19, 2023 12:34 am
by Newsdee

Save states require a significant core rewrite. And the ones that Robert did were written from scratch with those features in mind.

So this isn't a small bugfix or enhancement you can do in a couple of weekends. And for those talking about money incentives, a few tips on patreon or kofi won't even begin to cover the time and dedication this requires.

That is the real bottlenecck, not whether somebody is pro or against save states. You need an experienced dev who really wants to spend a few months on it, and that is super rare (sadly). We can hope one may go for it one day, or somebody stubborn enough will learn all this to do it themselves.

Meanwhile, what we can do to keep this constructive is share specific hacks or cheats that enhance specific games .

Using save states to skip a level is cheating as well... even though touching that Cheats menu feels a bit wrong every time in comparison :)


Re: Save State Support

Posted: Sun Mar 19, 2023 5:32 am
by FPGAzumSpass

Yes, lack of developers working on it is the main thing holding it back.
Just look at the situation now: it's not even one main dev per system, but several systems per dev.
Srg320 did SNES, MegaCD and now Saturn, so it's hard to spend extra time for the older systems.

I know that by myself, some of the first cores (e.g. GBA) could really need a large rework to bring it up to date with research.

Maybe this situation changes once the missing systems are mostly there and improvements(accuracy or features) are the only things left.
But with the current dev count and systems missing, this can still take many years.
Creating a new core is still more interesting than improving an existing one.

But on the plus side, adding a savestate feature can be a good initial task for someone really dedicated.
You don't need to know super special things or research the original system. What needs to be done is more or less clear. It just takes time.
Ok, for cores like SNES that are already very big, knowing more about the system is useful so you don't have to save every internal register.
For smaller cores that doesn't matter.


Re: Save State Support

Posted: Sun Mar 19, 2023 6:05 pm
by dcubed
Newsdee wrote: Sun Mar 19, 2023 12:34 am

Save states require a significant core rewrite. And the ones that Robert did were written from scratch with those features in mind.

So this isn't a small bugfix or enhancement you can do in a couple of weekends. And for those talking about money incentives, a few tips on patreon or kofi won't even begin to cover the time and dedication this requires.

That is the real bottlenecck, not whether somebody is pro or against save states. You need an experienced dev who really wants to spend a few months on it, and that is super rare (sadly). We can hope one may go for it one day, or somebody stubborn enough will learn all this to do it themselves.

Meanwhile, what we can do to keep this constructive is share specific hacks or cheats that enhance specific games .

Using save states to skip a level is cheating as well... even though touching that Cheats menu feels a bit wrong every time in comparison :)

I think the biggest incentive to develop save state functionality is to enable the feature to be potentially ported over to the Analogue Pocket (which would allow the use of that device's Sleep Mode feature).

If save states were ever to happen for the SNES core, I think that there would really have to be some interest from that community in particular to contribute by digging into the MiSTer core and get that functionality working; especially since the developers working on MiSTer already have their hands full working on new cores and other projects (Not to mention that Srg320 is still living in an active warzone... we're lucky that he's still able to work on Saturn at all!).