101

Why are these directions required? Do some games actually run instructions that would be interrupted if the player just hits the power button?

Note I'm not looking for speculation, but rather a technical distinction between what would happen when the user holds down reset then power vs. just when the power button is struck.

Example:

A game with 'Hold RESET while you turn POWER off!!' on screen

  • 5
    And now I have Final fantasy Inn's song in my head... damn you! – Jonathan Drapeau Jul 28 '15 at 11:44
  • I have never heard of this. But my only battery backed-up games were the Zelda series. – VictorySaber Feb 16 '16 at 16:15
83

After Googling for a while, I unfortunately couldn't turn up any specific answer. The only thing we know for certain, is that holding RESET was required for pretty much every game that offered a battery-backed saving mechanism, as opposed to password-based savegames.

The answers I found included:

  • Holding RESET allowed the NES to finish saving data before it is powered off.
  • Holding RESET would send both the console and the cartridge into a low-power state, that would prevent power surges from damaging the battery when powering off (unlikely)
  • When powering off, the NES' CPU would experience power spikes that potentially could write data at random locations, including the battery-powered registers of the cartridge, overwriting and corrupting savegames in the process. Holding RESET would send the CPU into a low-power state which would prevent any power surge from overwriting any register.

The reason why this was required on the NES and not on newer consoles, was because the NES was never designed for saving data in the first place. The first game to have supported saving onto the cartridge directly was The Legend of Zelda which was released 3 years after the original Famicom, and 1 year after the NES. Back then, data loss didn't matter because data wasn't supposed to be persistent anyways.

  • 1
    It's also noteworthy that the games that originally supported saves were originally Famicom Disk System games. Although Metroid, when ported, ended up with a password system instead. – Powerlord Jul 28 '15 at 2:03
  • 64
    The last point is correct. Back in the day, switches were physical, and they could end up "bouncing" between the on and off states rapidly while physically releasing the power button. It was also well-known that cartridges could lose data during these "bounces." I remember explicitly trying this once on a Legend of Zelda cartridge by powering the game on and off about 10 times in rapid succession. The cartridge did save files later, but the original data I had before I tried it was lost. Holding reset prevented the bounces that caused data loss. – phyrfox Jul 28 '15 at 2:35
  • 2
    We were always told to switch off at the power plug, and did it, and never had issues. I guess that is then the same reason as no3 and pretty much rules out no1 – PlasmaHH Jul 28 '15 at 10:21
  • 1
    Can't believe this is accepted and beats the rock-solid answer below. – Johannes Pille May 31 '16 at 7:15
  • @JohannesPille. Well, it technically answers the question, and was posted 21 hours before the other answers. Unfortunately, I can't change which answer is accepted, but I did upvote the other answers accordingly. You can do so too. – Nolonar May 31 '16 at 8:12
89

I don't own a NES or know the reason for this message for certain, but from an electronics perspective the reason is fairly obvious.

Yes, the reason is to prevent corruption of game saves but no, it is not because of "power spikes" or switch bouncing as mentioned in the other answer and comments.

The first thing to know is that there is no such thing as an infinitely fast power supply. The power supply stabilizes and buffers its output (and the circuit itself does more buffering) and that means the output voltage will ramp up within a certain time on powering up. For the same reason, the voltage will not immediately go to zero on powering down.

The second thing to know is that electronic devices such as the CPU have a specified voltage range within which they work. They can't do anything when the voltage is lower than certain threshold voltages for the transistors. That means there is still a voltage range between "doing nothing" and "working properly" where it will work unreliably.

Now on power-up, there are trivial circuits that will hold the reset line for a little while so that the CPU comes out of reset only after power is good. There are a little more involved circuits (brown-out detectors) that can generate a reset anytime the supply voltage drops below a threshold, not just on powering up. Obviously that wasn't built into the NES because it costs money and isn't really needed. Sure, the NES may glitch and crash on powering down, but so what? The user probably won't notice and certainly won't care because it has no lasting effect.

That changes when non-volatile memories are involved. The CPU may continue to execute code in brown-out conditions but errors may creep in. For example, when it writes to memory it might write to the wrong location and that location might just be within your precious save game, corrupting it.

Since the NES lacks one, the game manufacturers could have included a brown-out detector on their own module that write protects their memory. The obvious cheaper solution is to just tell the gamer to hold the reset button while powering down. That prevents the CPU from doing anything at all, brown-out or not, and so also prevents it from drunkenly walking all over your saves.

  • NES save games didn't use non-volatile memory, they used battery-backed RAM. – fluffy May 31 '16 at 3:26
  • 9
    @fluffy Battery-backed RAM is one form of non-volatile memory. – Andreas Bombe May 31 '16 at 3:34
  • 3
    +1 This should be the accepted answer. Solid electrical engineering / computer science principles. Can't believe this is beaten by an answer that starts with "After Googling for a while", just because it's by a high-rep user... – Johannes Pille May 31 '16 at 7:15
  • 4
    It's not because of higher rep. It's because of the Fastest Gun in the West problem. – Nelson Oct 11 '16 at 9:53
43

http://creek.doorblog.jp/archives/51212263.html

元々バッテリバックアップを前提に作られていないファミコンでは、 バッテリバックアップの仕様上、電池やSRAMに通電している時に電源を切ると 電源ノイズが発生して電池からSRAMへの電力供給が不安定になったりする。結果データが一部書き換わってしまうことがある。

The Family Computer (NES) was not designed wtih SRAM backup in mind. Therefore, it was challenging to protect the SRAM from noise or fluctuation in power supply, which might alter the state of SRAM. Holding down the RESET button isolates the SRAM, in fact, the whole game cartridge, from power supply by design. This significantly reduces the electrical noise due to powering the system off by hardware switch from reaching the SRAM encased in the game cartridge.

-4

It always just made sense to me from a basic hardware point of view.

Holding reset keeps the RAM slightly alive while also controlling the power supply from possibly skipping around like it would do in a power off.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.