A Saved State is an emulation term used to describe a dump of what is happening at one exact moment during the emulation of a video game ROM. The Save state file, when created, will be put in a predefined folder (depending on the emulator) and when the player chooses to, it can be loaded again, reloading exactly what was happening at that moment. Almost all emulators will offer some sort of State saving function, as well as (usually) the saving to battery back up/memory card that is available to gamers who play on the original platforms. Many, such as Zsnes, offer 10 different slots and features such as incremental saving which switches slot each save.

As well as allowing games to be completed very easily (because you can save states and then load them when you make a mistake) save states can be very useful for other purposes. For example, when ROM translation patches are released, they are often very buggy (eg. the Bahamut Lagoon patch from Dejap needed huge updates until it was perfect). Reporting bugs can be very trick - "it crashes on the bit just after that boss that shoots lasers at you" isn't much use for a ROM hacker. But if you take a save state just before the problem, email it (the save state files are typically very small - a few KB usually) to the hacker, who then renames it to whatever his ROM is called (emulators create and load states with the same filename as the ROM they were made from), loads it, and assuming that they have exactly the same ROM, they will be able to recreate the problem. And if you want to swap save files with friends, then save states make it very easy.

A final use for Save States is that they can be hacked in the same way as full ROMs. A lot of the time, console developers would compress graphics such as fonts to save space. This meant that a program such as Tile Layer Pro, made for viewing and editing the graphics in a ROM file, would not be able to see the fonts, and so they cannot be edited. But obviously, when they are needed in the game, the graphics will be decompressed so that they can be displayed. So you can take a save state at a point where the graphics you want to find are displayed, and then load the save state into Tile Layer, and the previously unviewable graphics are available to edit.

Save states are looked down upon by a lot of the emulation community because they allow not very good players to complete games easily. But they have other less devious purposes, and are a great asset to the ROM hacking scene.


yerricde says "Of course, if you hack the graphics in the save state and then try to play the game from there, the game will just overwrite the graphics in VRAM at next scene change. In fact, some games overwrite sprite graphics every frame, making save state graphic hacking useless."

This is true, but the main reason for hacking graphics like this is so that then you can reverse engineer and work out how to edit the graphics in the ROM itself. I think, anyway - I don't know exactly how it's done myself.