Gaming Literacy – Game Genie and the history of the cheat device
Want to take your game to the next level? Then you need to get yourself a Game Genie. This ingenious device made by Codemasters let young gamers cheat their hearts out on games in the 8 and 16-bit era. Want to start with 99 lives? No problem! Just type in a few letters and numbers and the power is yours!
For most gamers, the Game Genie was a curio piece, something that they picked up as a kid to help them beat Contra, but it’s so much more! This little device is a fascinating piece of video game history. It helped to set a legal precedent for what counts as fair use and we can still see its influence in the way we design games today.
How It Worked
For as powerful as the Game Genie was, it was a fairly simple device. One end plugged into a game cartridge while another end plugged into your game system. In the NES’s case, this caused the cart to stick out like a sore thumb, but it ran just as well.
The Game Genie’s job was to intercept calls to the video game’s ROM, or “read only memory.” It knew what to intercept through the codes that players would enter.
While appearing to be nothing more than alphanumeric gibberish, these codes actually contained simple instructions. First, they would contain a ROM address. Second, they would contain a value that the player wants to report back to the system. Third, they could contain a conditional value that the Game Genie checks before applying the code.
Let’s say you want to give Mario 99 lives. Somewhere on your game cartridge the value “3” is stored. This is what the game reads when it tries to figure out how many lives Mario starts with. When the NES attempts to read from this value, the Game Genie steps in and instead reports the value “99.” As a result, Mario now has 99 lives to play with.
Codes like “moon jump” were handled the same way. Somewhere in the game’s code Mario’s maximum jump height is stored as a numeric value. By causing the Game Genie to report back a higher value, Mario is able to jump higher than usual.
You might be wondering what the conditional value is for. Well, certain game consoles used a method of memory management called ROM Bank Switching. This article isn’t going to go into the process in detail, but it’s essentially a way to deal with larger amounts of memory than a console could usually handle.
Different sections of a ROM could be swapped in and out of the same ROM addresses. This means that ROM address that contained the value “3” for Mario’s lives might contain something completely different, like something related to graphical processing, later in the game. However, the Game Genie could not tell when this happened. It would always report back the value 99 any time a particular ROM address was read from, possibly breaking the game in the process.
The conditional value check was the Game Genie’s workaround. It was a very simple piece of if-then code that checked the value being reported first before reporting a new value back. In this case, it would make sure the console was trying to read the value “3” as a way to make sure that the game was reading from the right piece of ROM, i.e. the part that controls Mario’s starting lives. It would only replace the value “3” with “99” and would replace no other values. Thus, when different parts of the ROM were switched in to the ROM address, the Game Genie didn’t accidentally break the game. This didn’t completely eliminate glitches and errors, but it eliminated enough of them to make the Game Genie a viable product.
Unfortunately, the Game Genie wasn’t particularly powerful. You might remember that Game Genies only allowed you to enter a limited number of codes. That’s because it was all the Game Genie was able to handle. Some values in more complex games used two memory addresses instead of one (money in RPGs for example) and this meant they needed two codes instead of one to work properly. Since the Game Genie had no way to store data of its own, codes would be wiped out any time a console was shut off or reset. It was an incredibly cludgy piece of hardware, yet it was popular all the same.
Codebreaking the Law
Nintendo wasn’t particularly pleased with the Game Genie’s existence. It was, essentially, a commercial hacking tool. Not only could the Game Genie create game breaking glitches that ruined the gameplay experience, it could also open the floodgates to the boogey man of all game developers: piracy! YAAAR!
So Nintendo sued Galoob, the American distributor of the Game Genie, claiming that it allowed users to create derivative works of Nintendo products in violation of copyright. This is where Galoob’s marketing saved the day.
Galoob marketed the Game Genie as a “video game enhancer.” Their argument was that the Game Genie could do nothing on its own. It could only alter the play experience of an existing game. In that way it was not any different than, say, a controller with a turbo function. Tons of video game peripherals were flooding the market at the time of the Game Genie’s release, and Galoob argued that the Game Genie was just another one.
This is one of the reasons why Game Genie codes were encrypted. It would be easy for the Game Genie to write its codes in simple hexadecimal. At that point, anyone who knew the ROM address they wanted to alter could make whatever code they wanted. Encrypting their codes not only allowed Galoob to claim that they had a great deal of control over what modifications could be made to a game; it also made the codes easier to remember. Despite this, Game Genie manuals did include instructions for how to make your own codes, though it only suggested modifying codes that were already in the manual.
Galoob also argued that gamers “own” the later levels of a game as much as they own the earlier ones. If they wanted to start a game on level 10 instead of level 1, they should be able to do so. It’s like skipping to a later chapter in a book or fast forwarding to a certain act in a movie. You own the book or movie in its entirety, which is why you can’t be told how to watch it. You should also own games in their entirety and thus can’t be told how to play it.
In the end it was ruled that using the Game Genie did not create derivative works. It was also ruled that the right to alter a piece of software was a right you obtained when purchasing the software. This ruling has held up to this day, although the introduction of online gaming elements and digital distribution services has complicated the issue, but that’s a topic for another time.
The Console Wars
The Game Genie was also a big element in the war between Nintendo and Sega. Nintendo fought the Game Genie at every turn, using ROM checksums to try and detect the Game Genie or other cheat tools. However, Galoob would continue to update the Game Genie to bypass these routines.
Sega, on the other hand, fully endorsed the Game Genie. The Sega Game Genie was an officially licensed product. As a result, Sega’s Game Genie worked with far more titles and came with a manual including many more diverse codes than the Game Genies for Nintendo consoles did.
The Game Genie’s Successors
After the SNES era, the Codemasters stopped making Game Genie devices and instead focused on game creation. They spun their original operation, which mostly focused on publishing unlicensed games, into a full game development studio.
However, the cheat device didn’t go away. Devices like the Gameshark and Pro Action Replay were developed by companies such as MadCatz and Datel. In fact, the Game Genie name was eventually bought by Hyperkin, and is still in use today for modern gaming consoles.
These new cheat devices worked differently than the Game Genie did. Instead of interrupting access to the game’s ROM, these devices wrote directly to the console’s RAM. This actually made them much more powerful than the Game Genie was. They could, essentially, inject their own code as the game was running. This could mimic what the Game Genie could do by simply freezing and rewriting values, and this was what they were primarily used for. However, codes that were complex enough could rewrite game graphics, change where a game’s data was being read from, prevent game code from executing or even completely rewrite the game code itself. For example, Smash Bros. Brawl mods like Project M are essentially hundreds and hundreds and hundreds of lines of Gameshark codes.
For a brief period of time cheat devices used external ports, like the one on the back of the Playstation, to do all their cheating. They essentially worked as commercially available debug devices.
However, as consoles grew more advanced cheat devices fell out of use and cheat software became commonplace. In its early incarnation, cheat software would load a program that let you put in cheat codes, just like any other cheat device. However, it would then ask you to switch out the cheat software disc for the game disc. The cheat software would then run in the background while you played whatever game you wanted to play and it would essentially mimic the functions of a cheat device, intercepting values, rewriting code, and so forth.
Eventually cheat software became so powerful it could be integrated into console firmware. Owners of a modded Wii, PS3, or PSP could pause a game and enter new codes on the fly, turning them on and off as they please.
Similarly, the ability to cheat is integrated into pretty much every emulator in existence. In its simplest form, this means typing in old Game Genie codes into the emulator and enjoying 99 lives, but in more complex forms, the ability to access and alter a game’s ROM information has led to popular ROM hacks and fan games.
And what of our current generation consoles? Well believe it or not cheat devices are still being made. Most recently, the Save Wizard for the PS4 was announced, which allows you to edit PS4 save files to your liking. It’s a little less sophisticated than injecting code into RAM or intercepting reads to ROM, but it works.
If anything has truly changed it’s the culture that surrounds cheating. Most games have an online component these days, and while it’s not illegal to cheat offline, companies can say that cheating online is against their terms of service. This is enough to see the practice frowned upon in most gaming circles.
For that matter, cheating is now pointless in many games. Most of the time cheats were used to compensate for the arcade style difficulty of retro games. However, more and more games are including multiple difficulty modes that make cheating kind of irrelevant. Some games, like Persona 5 even include modes that flat out remove your ability to die, just to let you enjoy the game at your own pace. Cheating is essentially built in to modern day releases.
And if it’s not, you can probably buy an XP or Gold boost as a microtransaction.
In a way, we became so enamored with the Game Genie that we decided to integrate it into our gaming experience under other names, but that’s not to say that the practice of hacking isn’t still alive and well. The Switch, for example, has already been hacked and you can bet that someone is out there coding a piece of cheat software that will let you “enhance” your Super Mario Odyssey experience, just as you enhanced Super Mario Bros. as a kid.