Guides

Game Genie, Action Replay, GameShark: How to Read a Retro Cheat Code

The name above a code tells you what it does to the game, and the version beside it tells you whether it will do it at all.

By TheGameExtras Team Updated 4 min read
Game Genie, Action Replay, GameShark: How to Read a Retro Cheat Code

A retro cheat code looks like noise, but most of it is an address and a value. Once you can see which part is which, you can tell why a code works on one copy of a game and does nothing on another.

Verified

Open the emulator codes on any of our retro game pages and each set carries a heading such as Game Genie · SNES · USA version · 149 codes. Most people skip straight to the list, but the heading is the part that tells you whether a code will work for you.

Two kinds of device, two kinds of code

Nearly every name you will see belongs to one of two families, and they change the game in different ways.

Game Genie plugged in between the cartridge and the console. It changed what the console read from the cartridge, so the game was running slightly different program data. Its codes are written in letters or scrambled characters, so you cannot read the address off them by eye.

Action Replay, Pro Action Replay, GameShark, Code Breaker, Xploder and Game Buster work the other way. They leave the cartridge alone and keep writing a value into the console's working memory while you play. A lives counter stays at 5 because the device keeps putting 5 back. These codes are usually plain hexadecimal, and the address and value are sitting in the open.

Reading a memory code

Super Mario World is the clearest example, because the Action Replay set on our page lists three codes that differ by a single digit:

  • 7E001902 — Mario Cape
  • 7E001903 — Mario Fire
  • 7E1490FF — Mario Star

Split the first two after the sixth character. 7E0019 is the address in the SNES's memory that holds Mario's power-up, and the last two characters are the value written there: 02 for the cape, 03 for the fire flower. The address is the same in both. Only the value changes.

Other systems lay the parts out differently, but the idea holds:

  • Genesis / Mega Drive Action Replay puts a colon between them. Sonic the Hedgehog 2's stage select is FFFFD0:0100 — address on the left, value on the right.
  • PlayStation GameShark prefixes the address with a type. Metal Gear Solid's infinite health is 800B7526+03E7: 80 means "write a 16-bit value", 0B7526 is the address, and 03E7 is 999 written in hexadecimal.
  • Game Boy GameShark packs the value in first and stores the address backwards. Kirby's Dream Land's infinite lives is 010589D0: 01 is the type, 05 is the value, and 89D0 read in reverse byte order is address D089.

A + in a code joins pieces that are entered together. Super Mario World's "Mario On Ice" is three Game Genie codes, EDA5-0F6F+61A5-040F+61A6-0D6F, and it does nothing unless all three are on.

Why the version in the heading matters

An address is a location inside one particular build of a game. The Japanese release, a European release and a later revision can move things around, and a code written for one of them will write its value into the wrong place in another. Usually that just means nothing happens. Sometimes it means a crash, or a corrupted save.

This is why each set on our pages names the version it was written for, and why you should match it to your copy before trying one. On our Zelda: A Link to the Past page, the only set right now is for the Japan version. If your copy is the US one, treat those four codes as unlikely to work.

"Master code" and "must be on"

Some sets start with a line like Metroid Fusion's Enable Code (Must Be On). Code Breaker and some GameShark sets need that code switched on first, before any of the others do anything. If a set has one, turn it on together with the code you actually want.

What "RetroArch code" means

Some sets are labelled RetroArch code instead of naming a device. That means the source file was written for the RetroArch emulator and did not say which device the codes came from. It does not mean a separate code format. Look inside and you will find the same families as above. Sonic 2's RetroArch set is Game Genie codes such as ABLT-CAR2, and Kirby's Dream Land's RetroArch set opens with the same FA6-DBB-4C1 infinite-lives code as its Game Genie set.

Using them in RetroArch

  1. Load the game, then open the Quick Menu and go to Cheats.
  2. Either load a cheat file there, or add a new cheat and type in the code you copied from our page.
  3. Switch the cheat on and choose Apply Changes.

Two warnings. First, make a save before you try a code you have not used before, because memory codes can crash a game. Second, if you use RetroAchievements, its Hardcore mode turns cheats off. The codes only work in Casual mode.

What we have and have not checked

Every emulator code on this site comes from libretro-database, the open cheat collection RetroArch itself uses. Each set links to the exact file it came from. None of them has been tested by us, and they are kept in a separate section from the site's own cheat codes so the two are never confused. Our own codes show whether someone here has run them. These show where they came from, and nothing more.

New guides and tools, by email

Email me when TheGameExtras publishes new cheat guides and tools. I can unsubscribe with one click at any time. We send a confirmation link first. How we handle your address.

Read next