NESDev and Strangulation Records messageboards
Forum Index | FAQ | New User | Login | Search

Previous ThreadView All ThreadsNext Thread*Show in Threaded Mode


SubjectSave RAM Questions new  
Posted byAnonymous
Posted on3/10/04 7:13 PM
From IP24.233.70.32  



1. Does a cartridge need a memory mapper like MMC1 to support Save RAM?

2. Why does the player need to hold in reset when turning the NES off to save data in MMC1 games?

3. Why does he not need to do this with a Top Loading NES?




SubjectRe: Save RAM Questions new  
Posted byMemblers
Posted on3/10/04 8:10 PM
From IP68.58.99.218  



1. I believe it would need a non-volatile controller chip, to disable access to the RAM while the system power transitions between on and off. The MMC mappers probably do something similar. There's also NV-SRAM chips available that have the controller + battery all in the same chip, those should work.

2. I'm not sure. I'm used to holding the reset button down, having little interest in losing my saves I usually did that with any game that used a battery. If it's unneccessary in MMC3 games, I'd guess it's a bug in the MMC1.

3. Have you tried that yourself? I know I've lost my save on Genghis Khan quite a few times (which uses MMC1) on a top-loader, but I'm not sure if that was related to the reset button or a bad contact. It worked fine after I was more careful with it (saved for few years now, and still unfinished, heheh).

Hopefully someone else knows more about this than I do. It'd be interesting to understand what the deal is with that.. and if any NVRAM controllers (like the ones made by Texas Instruments) can handle that problem.




SubjectRe: Save RAM Questions new  
Posted byblargg
Posted on3/11/04 01:07 AM
From IP199.170.89.130  



The static RAM I've used required a particular sequence of chip select signals to properly transition from full-power to low-power retention mode. Thus some external controller is necessary for games with battery-backed SRAM. Special NVRAM modules with the controller and battery already built-in do exist, but their cost rules out their use in cartridges.

I made a development cartridge which used the save RAM to store my program (a modified Zelda board, which uses MMC1). I found that if the program was executing from the save RAM and I turned power off, various locations would get corrupted. I worked around this by copying the main loop of the code to the NES system RAM. Holding reset suspends the processor (and thus memory accesses), which is another way to avoid power-down while the save RAM is being accessed. This is my guess as to why holding reset avoids corruption. The save RAM controller could also be designed to handle a power-down at any time, and perhaps the MMC3 and later do this (I don't know if they do).

If the top loading NES doesn't have the data loss issue, perhaps it suspends the processor just before power is lost, achieving the same as described as above.





SubjectRe: Save RAM Questions  
Posted bytepples
Posted on3/11/04 07:10 AM
From IP68.54.20.186  



"The save RAM controller could also be designed to handle a power-down at any time, and perhaps the MMC3 and later do this (I don't know if they do)."
Nintendo Power, in its late-1990 feature titled something to the effect of "Why Game Paks Never Forget", mentioned that the MMC5 had an improved circuit for SRAM protection on power down. Perhaps the MMC6 (if I recall correctly, MMC6 is an MMC3 with a built-in SRAM) has the improved circuit as well.




SubjectRe: Save RAM Questions new  
Posted bydXtr
Posted on3/13/04 2:42 PM
From IP194.47.158.137  



Hm.. I don't remember I've ever hold in the reset on my NES when shutting down Shadowgate.. =/
And I don't think I've lost any data yet..

sorry for misspellings


SubjectRe: Save RAM Questions new  
Posted byblargg
Posted on3/13/04 6:53 PM
From IP199.170.89.177  



I think that the corruption is predictable based on the way the RAM is accessed. Perhaps Shadowgate's save game data is small and stored in an area which isn't often corrupted. If the game isn't using the save RAM as scratch space, powering down won't cause any problems. As I remember Shadowgate doesn't have much going on actively, so it's likely it is mostly spending time in a player input loop.





SubjectRe: Save RAM Questions new  
Posted byMemblers
Posted on3/13/04 8:11 PM
From IP68.58.99.218  



Shadowgate uses a TKROM board (MMC3a). Everything so far seems to indicate that only MMC1 is affected.

If a game doesn't specifically tell you to hold the reset button in (like Zelda, Final Fantasy, some others), it should be safe to assume there's no chance of data loss.




SubjectRe: Save RAM Questions new  
Posted bymark_k
Posted on3/31/04 2:55 PM
From IP81.174.250.91  



There are also several revisions of the MMC1 chip. Maybe the memory-corruption-on-power-down issue was fixed in a later rev?

-- Mark





Previous ThreadView All ThreadsNext Thread*Show in Threaded Mode
Jump to

Memblers' homepage             Contact Me

Forums powered by WWWThreads Demo