Sega Genesis rom/sram address mapping
- poorstudenthobbyist
- Posts: 222
- Joined: Fri Jun 24, 2016 4:20 pm
Re: Sega Genesis rom/sram address mapping
I made this circuit but I'm having some trouble holding some saves - it looks like the trend is games that are greater than 16 Mbit do not have any issues, but 16 Mbit and less do. I don't see why that would be a problem here, though. I'm a bit stumped.
Check out my website for NES, SNES, and Genesis tutorials here. And visit my store for some custom tools and boards for making games here.
You can also follow me on Twitter for infrequent updates and bad jokes!
You can also follow me on Twitter for infrequent updates and bad jokes!
Re: Sega Genesis rom/sram address mapping
Don't 2MB (and smaller) games always leave RAM enabled?
- poorstudenthobbyist
- Posts: 222
- Joined: Fri Jun 24, 2016 4:20 pm
Re: Sega Genesis rom/sram address mapping
I'm having trouble finding the circuit, and I don't actually have a Genesis cart like that to check unfortunately. But even then, shouldn't this still work? Or do 16 Mbit games not use $A130F1 to pulse the /TIME signal?
Also, one game did show save data when booting it up for the first time, it was just garbage and the game froze when I tried to load it. But that makes it seem that it's at least reading the SRAM in some capacity.
Also, one game did show save data when booting it up for the first time, it was just garbage and the game froze when I tried to load it. But that makes it seem that it's at least reading the SRAM in some capacity.
Check out my website for NES, SNES, and Genesis tutorials here. And visit my store for some custom tools and boards for making games here.
You can also follow me on Twitter for infrequent updates and bad jokes!
You can also follow me on Twitter for infrequent updates and bad jokes!
Re: Sega Genesis rom/sram address mapping
Exactly that. They rely on RAM always being enabled... well, at least, not under software control. (They're still disabled by the battery management IC)poorstudenthobbyist wrote: ↑Sun Sep 20, 2020 9:46 pmOr do 16 Mbit games not use $A130F1 to pulse the /TIME signal?
- poorstudenthobbyist
- Posts: 222
- Joined: Fri Jun 24, 2016 4:20 pm
Re: Sega Genesis rom/sram address mapping
Ok, thanks for that. So, going by this which was said earlier:
Remove the '74 completely
Connected A and B to A21 on the top decoder (ignored the bottom one) so at $200000, A21 is 1. (A21 here being pin B9)
Switched SRAM and ROM locations on the decoder so when A21 is 0, the ROM is enabled, and when it's 1, the RAM is enabled.
This didn't end up working though. The game boots fine, but no saves work.
My save circuit is the same as the one I used for my SNES boards:

And going off the diagram from TmEE, what I did was:
Remove the '74 completely
Connected A and B to A21 on the top decoder (ignored the bottom one) so at $200000, A21 is 1. (A21 here being pin B9)
Switched SRAM and ROM locations on the decoder so when A21 is 0, the ROM is enabled, and when it's 1, the RAM is enabled.
This didn't end up working though. The game boots fine, but no saves work.
My save circuit is the same as the one I used for my SNES boards:

Check out my website for NES, SNES, and Genesis tutorials here. And visit my store for some custom tools and boards for making games here.
You can also follow me on Twitter for infrequent updates and bad jokes!
You can also follow me on Twitter for infrequent updates and bad jokes!
Re: Sega Genesis rom/sram address mapping
Krzysiobal made a schematic of a Sonic 3 a while ago here.
There are PCB p0rn pictures on the begining of that same thread.
Hope this can be usefull.
There are PCB p0rn pictures on the begining of that same thread.
Hope this can be usefull.
- poorstudenthobbyist
- Posts: 222
- Joined: Fri Jun 24, 2016 4:20 pm
Re: Sega Genesis rom/sram address mapping
Thanks for this, I did see this a while back and looked at it a bit again yesterday but missed the schematic. Though, I think that schematic raises more questions than it answers haha. I'm guessing some of that has to do with the "lock-on technology" with S&K.
As it turns out, my schematic did actually end up working... so far. Still going through some more rigorous testing. I'm testing on a Genesis 2 and a Super Retro Trio 3, and was having inconsistent results switching between the two consoles and various test set ups. What I realized was in my save circuit, I was using a 100k ohm for the base resistor instead of the 10k I originally had. This was because I was testing a different problem with the save circuit detailed on this post. The short explanation of that problem is, seemingly, the output of the 68000 processor on the Genesis for the /VRES line doesn't play nice if you use too small of a resistor to energize the base of a transistor for the save circuit.
Well, apparently, that problem also manifests itself if you use too LARGE of a resistor. Because changing the 100k with a 10k fixed the issue. I didn't immediately think that was an issue, because I had tested those boards with a 100k earlier and it worked fine. But maybe it was a borderline case where it was only barely working. The set up had some probes and hanging wires on the board, so maybe that interacted with the circuit and allowed the 100k to work normally, but after taking all that extra stuff off it stops working? Not sure. I might take some scope traces and put them here if they're interesting to look at.
I'm still going to be testing a few different ROMs to make sure the problem is fixed, but it's nice to know that the logic I proposed was indeed correct.
Check out my website for NES, SNES, and Genesis tutorials here. And visit my store for some custom tools and boards for making games here.
You can also follow me on Twitter for infrequent updates and bad jokes!
You can also follow me on Twitter for infrequent updates and bad jokes!
Re: Sega Genesis rom/sram address mapping
O yeah!
Glad to know it worked.
If I remember correctly, when I changed the broken FeRAM of that cartridge, I also used a 10K resistor as pull-up on the SRAM's /CE.
I used this circuit, that's pretty similar if not exactly the same you described.
There are some pictures of the fixed cartridge on that same thread, more preciselly here.
I tried that cartridge a while ago and indeed the saves are intact.
Looks like that's the way to go.
Glad to know it worked.

If I remember correctly, when I changed the broken FeRAM of that cartridge, I also used a 10K resistor as pull-up on the SRAM's /CE.
I used this circuit, that's pretty similar if not exactly the same you described.
There are some pictures of the fixed cartridge on that same thread, more preciselly here.
I tried that cartridge a while ago and indeed the saves are intact.
Looks like that's the way to go.