Save State Support

ferropop
Posts: 52
Joined: Wed Jul 14, 2021 2:44 pm
Been thanked: 4 times

Save State Support

Unread post 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!
AngelicLiver
Posts: 317
Joined: Fri May 29, 2020 8:50 am
Has thanked: 66 times
Been thanked: 87 times

Re: Save State Support

Unread post 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.
FoxbatStargazer
Top Contributor
Posts: 994
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Save State Support

Unread post 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.
ferropop
Posts: 52
Joined: Wed Jul 14, 2021 2:44 pm
Been thanked: 4 times

Re: Save State Support

Unread post 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.
hainer92
Posts: 10
Joined: Wed Jun 01, 2022 8:03 pm
Has thanked: 4 times
Been thanked: 1 time

Re: Save State Support

Unread post 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!
akeley
Top Contributor
Posts: 1303
Joined: Mon May 25, 2020 7:54 pm
Has thanked: 416 times
Been thanked: 399 times

Re: Save State Support

Unread post 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.
User avatar
Wave
Posts: 129
Joined: Tue Jan 04, 2022 6:57 pm
Has thanked: 86 times
Been thanked: 40 times

Re: Save State Support

Unread post 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.
she/her
User avatar
Reed_Solomon
Posts: 65
Joined: Sun May 24, 2020 7:37 pm
Has thanked: 40 times
Been thanked: 8 times

Re: Save State Support

Unread post 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.
ferropop
Posts: 52
Joined: Wed Jul 14, 2021 2:44 pm
Been thanked: 4 times

Re: Save State Support

Unread post 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.
User avatar
Waifu4Life
Posts: 232
Joined: Fri Jun 19, 2020 5:30 am
Has thanked: 19 times
Been thanked: 36 times

Re: Save State Support

Unread post 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.
User avatar
Mr. Encyclopedia
Posts: 111
Joined: Thu Aug 05, 2021 1:52 am
Has thanked: 50 times
Been thanked: 47 times
Contact:

Re: Save State Support

Unread post 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.
d909
Posts: 35
Joined: Sat Sep 12, 2020 3:21 am
Has thanked: 1 time
Been thanked: 10 times

Re: Save State Support

Unread post 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.

KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: Save State Support

Unread post 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

ferropop
Posts: 52
Joined: Wed Jul 14, 2021 2:44 pm
Been thanked: 4 times

Re: Save State Support

Unread post 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!

User avatar
Wave
Posts: 129
Joined: Tue Jan 04, 2022 6:57 pm
Has thanked: 86 times
Been thanked: 40 times

Re: Save State Support

Unread post 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.

she/her
FoxbatStargazer
Top Contributor
Posts: 994
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Save State Support

Unread post 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...

12characters
Posts: 112
Joined: Wed Jun 03, 2020 5:39 pm
Has thanked: 8 times
Been thanked: 30 times

Re: Save State Support

Unread post 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.

JAJT
Posts: 10
Joined: Tue Sep 20, 2022 4:21 pm
Has thanked: 4 times
Been thanked: 3 times

Re: Save State Support

Unread post 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.

User avatar
Retro-Nerd
Posts: 143
Joined: Fri Jul 08, 2022 2:47 am
Has thanked: 5 times
Been thanked: 40 times

Re: Save State Support

Unread post 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.

ferropop
Posts: 52
Joined: Wed Jul 14, 2021 2:44 pm
Been thanked: 4 times

Re: Save State Support

Unread post 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!

twonunpackmule
Posts: 58
Joined: Sat Jan 30, 2021 5:17 pm
Has thanked: 5 times
Been thanked: 6 times

Re: Save State Support

Unread post 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.

User avatar
Newsdee
Top Contributor
Posts: 830
Joined: Mon May 25, 2020 1:07 am
Has thanked: 98 times
Been thanked: 209 times

Re: Save State Support

Unread post 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 :)

FPGAzumSpass
Core Developer
Posts: 380
Joined: Sat May 23, 2020 12:55 pm
Has thanked: 38 times
Been thanked: 383 times

Re: Save State Support

Unread post 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.

dcubed
Posts: 45
Joined: Sat Sep 03, 2022 5:44 pm
Has thanked: 23 times
Been thanked: 22 times

Re: Save State Support

Unread post 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!).

Post Reply