What is a game decompilation?
A decompilation rebuilds a game's source from the compiled program. People name functions, write C or C++ that should match the original, and check that work against the shipped binary. A finished matching decomp is a real codebase. Ports such as Ship of Harkinian are built from that source.
What “matching” means
Matching means the rebuilt function compiles to the same machine code as the original, or close enough that the project treats it as done. That proof is why a decomp can take years. The port usually arrives after a large part of the game already matches.
decomp.me is the practice version of that work. You pick one function, write C, and the site shows the diff against the original assembly. It does not host games, and it does not produce a playable port by itself.
What a finished decomp becomes
A PC port built from matching source is a native program. Higher frame rates, widescreen, and gameplay changes are ordinary code changes. They are not settings in an emulator. This directory lists those ports. It does not list emulators.
The same game can also have a static recompilation. That path translates the binary into C ahead of time. It does not reconstruct the original source, and it does not prove a match. Majora's Mask is listed both ways.
A place to start
- Match one function on decomp.me before you clone a multi-year repository.
- Read a finished project in this directory so the long version has a shape. Super Mario 64, Ocarina of Time, and Perfect Dark are matching decomp hubs.
- Follow that project's own README for the file it expects. A finished port still expects a game you own unless the project says otherwise. This site does not host those files.