Savestates don't work

AamirM's Regen forum

Moderator: AamirM

Post Reply
tryphon
Very interested
Posts: 316
Joined: Sat Aug 17, 2013 9:38 pm
Location: France

Savestates don't work

Post by tryphon » Wed Jan 01, 2014 10:09 am

Happy new year,

I use Regen with debugger for hacking purposes. I'm bothered because some (most) save states downloaded from here to there don't work.

Some were made with Genecyst, ithers with Fusion, and when I load them, the display is, most of the time, what it should be (but it could be that only the VRAM is correctly handled) but the game is frozen (reset is working though).

The games concerned are Phantasy Star 2 and 3.

Is it a known bug ?
Is there a particular way to load gamestates ?
Must have they been made with a specific emulator ?
Is it related to the fact these games have a save feature ?

tryphon
Very interested
Posts: 316
Joined: Sat Aug 17, 2013 9:38 pm
Location: France

Post by tryphon » Wed Jan 01, 2014 10:20 am

I see it has been reported there, sorry for double-posting.

But so far, no answer...

tryphon
Very interested
Posts: 316
Joined: Sat Aug 17, 2013 9:38 pm
Location: France

Post by tryphon » Wed Jan 01, 2014 6:51 pm

I'm examining two savestates, one done by Gens, another by Regen.

First, I notice that palettes are not saved in the same way : Gens save CRAM (colors are rrr0ggg0 bbb00000) whereas Regen seems to be something like rrgggbbb 0000000r.

tryphon
Very interested
Posts: 316
Joined: Sat Aug 17, 2013 9:38 pm
Location: France

Post by tryphon » Wed Jan 01, 2014 9:06 pm

When I load a Gens savestate, it seems the code is stuck into a loop where it asks for bit 0 of 0xa11100 to be set. So I think the problem has to do with the fact that GSx format doesn't handle Z80 BUSREQ.

What I don't understand, though, is why it works on another emulator, and how Regen handle that with its own savestates (that do work on both Regen and Gens).

King Of Chaos
Very interested
Posts: 273
Joined: Fri Feb 29, 2008 8:12 pm
Location: United States

Post by King Of Chaos » Fri Jan 03, 2014 12:52 am

I believe this is a known issue.

tryphon
Very interested
Posts: 316
Joined: Sat Aug 17, 2013 9:38 pm
Location: France

Post by tryphon » Fri Jan 03, 2014 1:04 pm

Yes it is (I didn't search in the forum before posting and am sorry for that), but I wanted to check if it could be solved by modifying a little the gsx file (for example, modifying the palette does give a result, but the game is still frozen). I'm afraid you need to look into the Regen source code, and since it's closed source...

r57shell
Very interested
Posts: 478
Joined: Sun Dec 23, 2012 1:30 pm
Location: Russia
Contact:

Post by r57shell » Sat Jan 04, 2014 5:31 am

Why you are trying to debug in this way?
There is no better way?
Try my version of Gens Rerecording... It has very good M68k debuger and it shows VRAM and Sprites... For now, I don't need anything more, so It is really outdated...

By the way, there is many reasons why savestate does not work.
There is two periods: VBLANK, NOT VBLANK
Some emulators make savestate always before VBLANK, other emulator, save after VBLANK. But both assume that it's its own savestate, and resume emulation in certain point. So even this can lead to wrong emulation.

Latest gens rerecording savestates are very crappy. They contains duplicates of data, and palette is swapped. But! They works very good if you use them in same emulator that made them :). You may try previous versions of gens rerecording.
Image

Post Reply