AnS
Emulator Coder, Experienced player (724)
Joined: 2/23/2006
Posts: 682
I'm having deja vu... Warp, you're not learning. http://tasvideos.org/forum/viewtopic.php?p=262771#262771 A game on any console can detect whether saving process was finished or it was interrupted. It can be as simple as clearing a validation flag at the beginning of saving to Battery RAM and setting it only after the saving is completed. As for consoles where Reset doesn't clear RAM (like NES, Sega Megadrive and many other consoles without built-in BIOS), here it's even possible to retry saving after Reset. So yes, theoretically it's possible for a game to be reset-safe in terms of "bulletproof saving". For example, if you reset mid-save in Metroid Zero Mission, after the title screen the game will tell you "File A is corrupted. Erasing File A..." I guess Nintendo has really good QA for their in-house studios.
Editor, Player (44)
Joined: 7/11/2010
Posts: 1022
After reset-during-save glitches in earlier Pokémon games were widely exploited, saving was made pretty much completely bulletproof in Pokémon Ruby and Sapphire. If you reset during a save, the game will reload at the previous save, with a message that the save didn't complete correctly. (Presumably it does this using two save files internally, and a flag that records which of them was being saved to and whether the save completed.) (Then, they went and screwed up again in Emerald…)
Joined: 1/5/2012
Posts: 52
Location: Maridia
A lot of games use a simple checksum to detect any save corruption. It kind of amazes me that Pokémon games didn't for so long... I don't know of any emulators that emulate a nonexistent "reset" button on handhelds, either. They just emulate a power cycle. (Most don't emulate the GB boot ROMs with the Nintendo logo, so it's effectively the same as a reset anyway.)
Joined: 1/13/2007
Posts: 335
Speaking of BIOS screens, i think in the case of non cd based systems they should not be skipped. The reason is that this can affect the luck manipulation. A piece of luck manipulation may only be possible without loosing significant time because the startup screen was skipped. Systems and games which use real time clocks of any sort are particularly affected. Additionally, if the bios is not skipped, the time saved from the reset may be an emulator only illusion, and may NOT save time on hardware. For a rest to truly save time, it must prove it by dealing with the bios sequence (quite long on GB, for example) Because cd based systems are a less exact science, i think skipping non deterministic boot times is reasonable. I repeat. grounding the reset line is definitely ok, if the console provides it to the player. THe power button, when it physically interrupts power, should generally be not allowed, in my opinion. However portable consoles seem to be considered an exception, and this exception seesm to be mostly used on pokemon games with save corruption. And save corruption is done regularly on real hardware.
Skilled player (1708)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
zaphod77 wrote:
The reason is that this can affect the luck manipulation. A piece of luck manipulation may only be possible without loosing significant time because the startup screen was skipped. Systems and games which use real time clocks of any sort are particularly affected. Additionally, if the bios is not skipped, the time saved from the reset may be an emulator only illusion, and may NOT save time on hardware. For a rest to truly save time, it must prove it by dealing with the bios sequence (quite long on GB, for example)
I agree. Especially with games like Pokemon Diamond/Pearl, where the RNG abuse trick heavily relies on resetting and starting the game at the right moment. Also, for the second point. Also agreed, unless if the reset is a soft reset, which in this case doesn't go back to the bios. I think. Edit: Someone should make a topic about using bios so not to completely derail the thread. Not me though, since I gotta go to bed. Good night.
Joined: 1/13/2007
Posts: 335
Well if it skips the bios screen on real hardware, then of course there's no issue. :) Of course, out favorite console, the NES< has no bios to skip, and i'm confident the reset line is emulated perfectly, because games can detect using it.