Decompiled Retail Console Games

Edit on Github | Updated: 31st May 2021

This post contains either decompiled or disassembled source code projects for console games that were sold at retail stores.

If you are interested to see officially released or leaked source code check out this other post:

Retail Console Game Source code (C/C++)

For the official source code check out this post.

To be included in this list the project must have decompiled or disassembled at least 25% of the course code, in order to not pollute the post with hundreds of unfinished projects. An exemption to this rule can be made for consoles with very few reversering projects.

Nintendo Systems

Nintendo systems are by far the most popular for reverse engineering projects, especially related to 1st party titles such as Mario, Zelda and Pokemon.

Nintendo Entertainment System (NES)

Balloon Fight

Balloon Fight (USA) NES Disassembly

Project by LuigiBlood, requires BASS to assemble back into the retail ROM

Dragon Warrior

Complete Dragon warrior disassembly

Complete Dragon warrior disassembly by github user nmikstas, uses Ophis to assemble back into the original ROM

Donkey Kong

Donkey Kong (NES)

This is a disassembly of Donkey Kong for the NES and it's different revisions - Rev 0 (Japenese), Rev 1 (International) and Gamecube. It's fully disassembled but it's not fully documented. Doesn't include graphics data. You must rip it yourself. Assembles with asm6 assembler.

Final Fantasy

Final Fantasy 1 Disassembly

Completed documentation of all code, uses ca65 to assemble back to original ROM

Legend of Zelda

Disassembly of Legend of Zelda

This is a work in progress disassembly of The Legend of Zelda for the Nintendo Entertainment System, it uses CC65 to assemble back in to the original ROM

Mario Bros

Full disassembly of Mario Bros (NES)

Disassembly of Mario Bros for the NES

Mega Man 3

Full disassembly of Mega Man 3 (NES)

Fully complete disassembly of Mega Man 3 by Raidenthequick, it compiles into the US version of the ROM with the xkas assembler

Mega Man 4

Full disassembly of Mega Man 4

Fully complete disassembly of Mega Man 4 by Raidenthequick, it compiles into the US version of the ROM with the xkas assembler

Mega Man 5

Full disassembly of Mega Man 5

Fully complete disassembly of Mega Man 5 by Raidenthequick, it compiles into the US version of the ROM with the xkas assembler

Super Mario Bros

Full disassembly of Super Mario Bros

Complete disassembly of Super Mario Bros by doppelganger. Uses x816 to compile back to the original ROM.

Super Mario Bros 2 The Lost Levels (Japanese)

Super Mario Bros 3

Disassembly of Super Mario Bros 3

Looks like a fairly complete Disassembly of Super Mario Bros 3 that uses NESASM to re-assemble back into the original US ROM

Tetris

Disassembly of Tetris (NES)

This is a disassembly of Tetris (NES) that uses cc65 as the assembler


Super Nintendo (SNES)

Donkey Kong Country 2

DKC2 Disassembly

A repository dedicated to the reverse engineering of the SNES game DKC2.

Super Bomberman

Disassembly and remade build system for SNES game Super Bomberman

The Disassembly of Super Bomberman is about half complete and it uses ca65 to build the retail worldwide ROM images

Super Mario All-Stars

Disassembly of the Super Mario All-Stars ROM

Incomplete Super Mario All-Stars Disassembly project, has made great progress but still quite a lot of work to do. There are plans to make this disassembly assemble-able in either xkas or asar

Super Mario World

SMW Disassembly X

(Yet another) disassembly of Super Mario World. This disassembly will focus on code readability and the ability to assemble any of the four console releases of the original game (J, U, E 1.0, & E 1.1). It also assembles the Super System arcade version of the game. Uses the Asar v1.61 Assembler to build back into original ROMs

Super Mario World 2: Yoshi’s Island

Full disassembly of Yoshi's Island (SNES) version U 1.0

Disassembly is 100% finished, assembles under Asar and produces a fully clean ROM.

Super Mario RPG

Super Metroid SNES game, disassembled

This project is a disassembly of Super Metroid for the Super Famicom (SNES), it is still under active development.

Super Metroid

Super Metroid SNES game, disassembled

This project is a disassembly of Super Metroid for the Super Famicom (SNES), it is still under active development.


Nintendo 64

Recently, mainly in thanks to the huge success of the Super Mario 64 project, there has been revived interest in Nintendo 64 Decompilation. While most projects are still in very early stages, there are a few that meet the criteria for this list.

Banjo Kazooie

Decompilation of Banjo Kazooie

Decompilation of Banjo Kazooie, about 20% complete

Blast Corps

Decompilation of Banjo Kazooie

Decompilation of Banjo Kazooie, about 20% complete

Body Harvest

Decompilation of Banjo Kazooie

Decompilation of Banjo Kazooie, about 20% complete

Conker’s Bad Fur Day

Decompilation of Conker's Bad Fur Day

Decompilation of Conker, about 4% complete

Diddy Kong Racing

Diddy Kong Racing

A very early decompilation of Diddy Kong Racing source by DavidSM64

Dinosaur Planet

Decompilation of Doom 64

A decompilation of Doom 64 by the GEC Team

Doom 64

Decompilation of Doom 64

A decompilation of Doom 64 by the GEC Team

Goldeneye 007

Goldeneye 007 Decompilation

A an early decompilation of Goldeneye 007

Kirby 64: The Crystal Shards

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

Mario Party

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

Mario Party 3

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

Mario Kart 64

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

Neon Genesis Evangelion

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

Super Mario 64

Super Mario 64 decompilation

This repo contains a full decompilation of Super Mario 64 (J), (U), and (E) with minor exceptions in the audio subsystem. it uses the original IRIX based compiler toolchain to build wrapped in QEMU-IRIX for compatibility on modern systems.

Superman 64

A Mario Kart 64 disassembly

A decompilation of Mario Kart 64 source

The Legend of Zelda: Ocarina of Time

Decompilation of The Legend of Zelda: Ocarina of Time

This is a WIP decompilation of The Legend of Zelda: Ocarina of Time. The purpose of the project is to recreate a source code base for the game from scratch, using information found inside the game along with static and/or dynamic analysis. The only build currently supported is Master Quest (Debug), but other versions are planned to be supported.

The Legend of Zelda: Majora’s Mask

Decompilation of The Legend of Zelda: Majora's Mask

A decompilation of The Legend of Zelda: Majora's Mask brought to you by a bunch of clever folks

Paper Mario

Decompilation of Paper Mario

Decompilation of Paper Mario, about 30% complete

Pokemon Snap

Decompilation of Pokemon Snap

An early Decompilation of Pokemon Snap

Pokemon Stadium

Decompilation of Pokemon Stadium

Early Decompilation of Pokemon Stadium

Quest 64

Decompilation of Quest 64

Very early Decompilation of Quest 64


Nintendo GameCube

Naruto: Gekitō Ninja Taisen! 4

Legend of Zelda: Twilight Princess

Paper Mario: The Thousand Year Door

Super Smash Bros Melee

Super Mario Sunshine

Disassembly of Super Mario Sunshine

Disassembly of the main .dol-file of Super Mario Sunshine, lacks documentation but a very impressive project.


Nintendo Wii

Speed Racer

Wii Sports

Legend of Zelda Ocarina of Time (Wii Virtual Console)

Disassembly of Legend of Zelda Ocarina of Time

Disassembly of Legend of Zelda Ocarina of Time for the Wii Virtual Console


Nintendo Switch

The Legend of Zelda: Breath of the Wild

A decompilation of LOZ BOTW

Initial decompilation of the Nintendo switch version of BOTW, it uses the devkitA64 toolchain

Super Mario Odyssey

A decompilation of LOZ BOTW

Initial decompilation of the Nintendo switch version of BOTW, it uses the devkitA64 toolchain


Nintendo Handhelds

Nintendo Game Boy

Donkey Kong ‘94

Kirby’s Dream Land

Disassembly of Kirby's Dream Land

This is a disassembly of Kirby's Dream Land (Game Boy), still under active development but many subroutines still to be named. It uses the RGBDS assembler.

Mole Mania

Pokemon Red & Blue

Disassembly of Pokémon Red/Blue

This is a fully complete disassembly of Pokémon Red and Blue. It uses the RGBDS assembler.

Pokemon Yellow

Disassembly of Pokemon Yellow

This is a fully complete disassembly of Pokémon Yellow. It uses the RGBDS assembler.

Super Mario Land

Super Mario Land disassembly

Incomplete disassembly of Super Mario Land (World) (Rev A). It uses the RGBDS assembler.

Super Mario Land 2: Six Golden Coins

Super Mario Land 3: Wario Land

Wario Land 3


Nintendo Game Boy Color

Disassembly of Legend of Zelda: Links Awakening DX

Links Awakening DX Disassembly still under active development. It uses RGBDS to build into the worldwide ROM set.

The Legend of Zelda Oracle of Ages & Seasons

Disassembly of Oracle of Ages and Seasons

This is intended to be a full disassembly of Oracle of Ages and Seasons for the Gameboy Color. The disassembly uses WLA-DX as its assembler.

Looney Tunes: Carrot Crazy

Looney Tunes: Carrot Crazy

Links Awakening DX Disassembly still under active development. It uses RGBDS to build into the worldwide ROM set.

Pokemon Gold & Silver

Disassembly of Pokémon Gold/Silver

This is a fully documented disassembly of Pokemon Gold and Pokemon Silver. It uses the RGBDS assembler to build into the retail ROMs

Pokemon Crystal

Disassembly of Pokémon Crystal

This is a fully documented disassembly of Pokemon Crystal. It uses the RGBDS assembler to build into the retail ROMs

Pokemon Pinball

Disassembly of Pokémon Pinball

This is a disassembly of Pokémon Pinball (Game Boy Color), the assembler used is rgbds version 0.4.0.

Pokemon Trading Card Game

Disassembly of Pokémon TCG

This is a disassembly of Pokémon TCG that uses the RGBDS assembler toolchain to build the retail ROM.

Pokémon Puzzle Challenge

Disassembly of Pokémon Puzzle Challenge

This is a disassembly of Pokémon Puzzle Challenge that uses the RGBDS assembler toolchain to build the retail ROM.


Game Boy Advance

Banjo Kazooie Grunty’s Revenge

Fire Emblem: The Sacred Stones

Decompilation/disassembly of Fire Emblem: The Sacred Stones

This is a disassembly of Fire Emblem: The Sacred Stones (U)[!], it uses the devkitARM SDK to build the ROM

Kirby & The Amazing Mirror

Disassembly of Kirby & The Amazing Mirror (USA)

This is a disassembly of Kirby & The Amazing Mirror (USA), it uses the devkitARM SDK to build the ROM

The Legend of Zelda: The Minish Cap

Mario & Luigi Superstar Saga

Mario VS Donkey Kong

Pokemon Ruby & Sapphire

Decompilation of Pokémon Ruby/Sapphire

This is a disassembly of Pokémon Ruby and Sapphire, it uses the devkitARM SDK to build the ROM

Pokemon Emerald

Decompilation of Pokémon Emerald

This is a decompilation of Pokémon Emerald, it uses the devkitARM SDK to build the ROM

Pokemon FireRed & LeafGreen

Decompilation of Pokémon FireRed/LeafGreen

This is a disassembly of Pokémon FireRed and LeafGreen, it uses the devkitARM SDK to build the ROM

Pokémon Mystery Dungeon: Red Rescue Team

Decompilation of Pokémon Mystery Dungeon: Red Rescue Team

This is a disassembly of Pokémon Mystery Dungeon: Red Rescue Team, it uses the devkitARM SDK to build the ROM

Sonic Advance 2

Super Mario Advance 2: Super Mario World


Nintendo DS

Pokemon Platinum

Disassembly of Pokemon Platinum

Impressive Disassembly of the NDS game Pokemon Platinum. Uses the DevKitARM toolchain to build the ROM


Sega Systems

Sega is similar to Nintendo in that most of the games that people are interested in reverse engineering are 1st party titles such as Sonic and Phantasy Star.

32X

Knuckles Chaotix

Knuckles Chaotix

Knuckles Chaotix

Sega CD

Shining Force CD


Sega Master System

Although the Sega Master System was hugely popular in Europe, it can’t compete with the NES for number of disassembled projects created so far.

Phantasy Star

Phantasy Star Disassembly

Incomplete Phantasy Star Disassembly for Sega Master System from SonicRetro. It uses the wla-z80 assembler to build the ROM

Sonic 2 (SMS)

Sonic 2 SMS Disassembly

Sonic 2 for the Sega Master System Incomplete Disassembly from SonicRetro. It uses the wla-z80 assembler to build the ROM.


Sega Mega Drive

The Sega Mega Drive was Sega’s most popular console in terms of games developed, and as such it also seems to be the most popular for reverse engineering projects too.

Kid Chameleon

Split disassembly of Kid Chameleon

Kid Chameleon Disassembly seems to be fairly well documented but still needs much more work to document each subroutine

Knucles the Echidna in Sonic 2

Knucles the Echidna in Sonic 2

Knucles the Echidna in Sonic 2

Phantasy star II

Phantasy Star II Disassembly

Incomplete Phantasy star II Disassembly for Mega Drive/Genesis by lory90. It uses an assembler called ASW.

Phantasy star III

Phantasy Star III Disassembly

Incomplete Phantasy star III Disassembly for Mega Drive/Genesis by lory90. It uses an assembler called ASW.

Phantasy Star IV

Phantasy Star IV Disassembly

Incomplete Phantasy star IV Disassembly for Mega Drive/Genesis by lory90. It uses an assembler called ASW.

Ristar

Ristar Disassembly

A disassembly of Ristar for the Sega Mega Drive/Genesis by SonicRetro.

Sonic 1

Sonic 1 Disassembly

The very latest Sonic 1 Disassembly, under very active development by the SonicRetro team. It uses the ASM68K assembler.

Sonic 2

Sonic 2 Disassembly

A disassembly of Sonic the Hedgehog 2 for the Sega Mega Drive/Genesis by SonicRetro. It uses the AS Macroassembler.

Sonic 3

Sonic 3 Disassembly

A disassembly of Sonic the Hedgehog 3 for the Sega Mega Drive/Genesis by SonicRetro. It uses the AS Macroassembler.

Sonic 3D Blast

Sonic 3D Blast Disassembly

A disassembly of Sonic 3D Blast for the Sega Mega Drive/Genesis by SonicRetro. It uses the AS Macroassembler.

Sonic and Knuckles

Sonic and Knuckles Disassembly

A disassembly of Sonic and Knuckles for the Sega Mega Drive/Genesis by SonicRetro. It uses the AS Macroassembler.

Sonic Spinball

Sonic Spinball Disassembly

This is the Sonic Spinball disassembly by Andlabs converted to a .asm file and fixed up to produce an accurate build in asm68k.


Sega CD

Shining Force CD


Sega Game Gear (GG)

Sonic 1 (GG)


Sega Dreamcast (DC)

Sonic Adventure (DC)

Sonic Adventure (DC) Disassembly

Very early disassembly of Sonic Adventure for the Dreamcast


Sony Systems

Compared to the other systems, Sony doesn’t have many decompilation projects, mainly due to the higher complexity of the games developed by the PS1 era, requiring much larger teams to create the games in the first place.

Playstation 1

Tomb Raider: Chronicles

Tomb Raider: Chronicles Disassembly translated to C source code

This repository contains decompiled code for the game Tomb Raider: Chronicles. All decompiled code is based off the final PlayStation and PC version. The goal is to decompile as much as possible since the original source code is reportedly lost. It is not expected for decompiled code to be 1:1 with the original source code. However, functionality wise it will be the same.

Need for Speed: High Stakes

Need for Speed: High Stakes Disassembly translated to C source code

A very early decompilation project for Need For Speed 4, but the progress that has been made is very impressive.

PSX DOOM

Psx Doom Reverse Engineering

The complete reverse engineering of PSX Doom by [GEC], this effort took about 2 and a half years to complete.


Microsoft Systems

There are only a handful of reverse engineered games for Microsoft games consoles.

Xbox 360

Terraria

Broken Decompiled Terraria Xbox 360 Edition source code

Since Terraria is based on XNA which is a C# library, it is possible to decompile back into C# source code. This project is still very early but has some interesting results.

PC

Sonic CD

Sonic and Knuckles Collection


Atari Systems

Atari 2600

Multiple Atari 2600 Games

Various disassembled Atari 2600 games

Donkey Kong

Donkey Kong (Atari 2600)

Various disassembled Atari 2600 games

ColecoVision

Donkey Kong

Donkey Kong for ColecoVisio n Disassembly

Various disassembled Atari 2600 games


Mobile games

Mobile games are a special case that weren’t initially going to be included, but we have included a few games that are based on console games.

Java 2 Mobile Edition (J2ME)

Sonic 1 J2ME

Decompile of the 2005 mobile port of Sonic 1

A decompilation of the 2005 Java mobile port of Sonic the Hedgehog (1991). This decompilation focuses on the 240x320 resolution version, of part 1 as it uses the original game's graphics. However, there are lower resolutions that function similarily. And part 2 consists of the largest available resolution; 208x208. Part 1 was created by iFone, and 2 by Glu.


Android

Sonic Advance

A Monkey port of decompiled Java from Sonic Advance (Mobile)

Sonic GBA is a fan developed reinterpretation of decompiled Java output from the Android version of Sonic Advance.