Cloned Games

Contra US Annotated Disassembly

SporadicPlayableNES

About

This is an annotated, byte-for-byte disassembly of the US NES ROM for Contra, with build scripts (cc65-based) that reassemble it into a matching ROM, plus extensive supplemental documentation on enemy AI, graphics, sound, and ROM layout. It also supports building Probotector, the PAL-region variant of the same game, documented as mostly identical apart from different sprites.

Getting started

Building requires the player's own Contra (US) NES ROM (its MD5 hash is given in the readme for verification) placed in the project root, plus the cc65 compiler suite; running the platform-appropriate build script (PowerShell, batch, or bash) reassembles it into a working, byte-matching ROM.

History

The project began after the author watched a video on Contra speedrunning history that highlighted an unexplained bug where a player who died mid-level-1 was advanced straight to level 2; the disassembly builds on an earlier IDA Pro disassembly by 'Trax' from his Revenge of the Red Falcon project, with branch and jump offsets subsequently converted to labeled references and every line documented.

Requires original assets. Requires US NES Contra ROM (MD5: 7BDAD8B4A7A56A634C9649D20BD3011B) to build.

Additional notes

Documentation
The disassembly uses inline annotations to flag interesting code — e.g. `!(BUG?)` for possible bugs, `!(UNUSED)` for dead code, and `!(WHY?)` for unexplained logic.
Share:

We’d like to use analytics cookies to understand how visitors use this site. See our Privacy Policy for details. Nothing else is tracked, and the site works the same either way.