How the index works
Progress figures come from public trackers and the repositories themselves, never from a project's own description.
What is listed
Public projects that recover source code for a video game: matching decompilations, non-matching decompilations, matching disassemblies, static recompilations, source ports built on a decompilation, and reverse-engineered reimplementations. Each entry is a project for one game on one platform; a game can have several.
Verified and unverified
- Verified
- The project is publicly hosted, its progress is measured from a machine-readable source (decomp.dev, a frogress endpoint, a progress badge or the repository’s own progress data), and an editor has confirmed the entry.
- Unverified
- Listed from public claims or descriptions. Progress is not measured, or no editor has confirmed it yet. Treat figures and status as provisional.
Where progress comes from
A daily job reads every linked repository through the GitHub REST API (stars, last push, contributors, licence, archived flag, topics) and looks for progress in this order: the project’s report on decomp.dev, its entry on progress.deco.mp, a progress badge or badge endpoint in its README, and a progress file in the repository. The first source that answers is remembered and used from then on. Code progress is the share of code bytes that match the original build; data progress is the same for data sections, when the project reports it.
Numbers are never typed in by hand from a project’s description. When no machine-readable source exists, the entry says “Not measured” and stays unverified.
Status
| Planning | Announced or set up, with little or no decompiled code yet. |
|---|---|
| In progress | Code is being decompiled and the project is under active work. |
| Matching complete | The source builds a byte-identical copy of the original program. |
| Shiftable / modding-ready | Code and data can move without breaking the build, so modding is practical. |
| PC port available | A native build for modern systems exists, based on the decompiled source. |
| Stalled | No meaningful public activity for a long period. |
| Archived | Read-only, discontinued or no longer publicly available. |
Approach
| Matching decompilation | C or C++ that compiles to the exact original machine code with the original compiler. |
|---|---|
| Non-matching decompilation | Functionally equivalent source that does not reproduce the original binary byte for byte. |
| Matching disassembly | Annotated assembly that rebuilds the original program; common for 8-bit and 16-bit systems. |
| Static recompilation | The original machine code is translated into native code ahead of time. |
| Source port | A native port built on top of a decompilation of the original game. |
| Reverse-engineered source | Source recreated by reverse engineering, often a reimplementation of the original executable. |
Open data
The full catalog is available as JSON and CSV under CC BY 4.0, and recent changes are published as an Atom feed.
Corrections
To fix an entry or add a missing project, send a correction. The disclaimer covers what this site hosts.