Cite as
vermiceli/nes-super-c
Original
https://github.com/vermiceli/nes-super-c
Pinned
vermiceli/nes-super-c @ be6ccce97a73ce1ea0d3ebace85e22fca01e4ed9
Accessed
2026-10-21
Licence
none stated
Credit
Annotated ca65 disassembly of Super C (US) by vermiceli (Michael Miceli); labels and comments quoted in super-c claims are theirs.
Notes
Builds Super C (US), and Probotector II with a flag. The repo holds no ROM data: the build extracts CHR and audio from a supplied baserom.nes. The atlas built it with super-c-nes-rom, and the output matched the build script's expected hash and the ROM byte for byte after the header.

Cited on

Claims (6)

The US NES Super C checks a different code from Contra's on its title screen: six presses, Right Left Down Up A B, against Contra's ten-press Up Up Down Down Left Right Left Right B A. Like Contra, a wrong press locks the check out. The code raises the starting lives byte from 2 to 9, where Contra's raises it from 2 to 29.src/bank-1.asm L539–565src/bank-f.asm L1154src/bank-f.asm L1504–1515Code
The US NES Super C allows 2 continues a game, where Contra allows 3: the count is set to 2 at the start, and each game over spends one before offering CONTINUE/END.src/bank-f.asm L1484–1490src/bank-f.asm L2465–2470src/bank-f.asm L1322–1323src/bank-f.asm L1478–1479Code
The US NES Super C awards its first extra life at 30,000 points and each later one 20,000 points past the last threshold, the reverse of Contra's 20,000 and 30,000, and caps lives at 99 as Contra does.src/bank-f.asm L1516–1519src/bank-f.asm L1757–1763src/bank-f.asm L1777–1781Code
The US NES Super C dispatches a weapon item on its type: M, S, L, and F replace the gun, R sets rapid fire, B sets an invincibility timer to $80, and the falcon destroys the enemies. A new gun drops rapid fire even when it's the gun already held, where Contra keeps it for the same gun.src/bank-3.asm L411–445Code
The US NES Super C takes 16 off the delay between random enemies once the game has been beaten and 4 for each living player holding the spread gun. The delay's start is read from an eight-entry per-level table with an index that isn't the level; the disassembly reads it as always $80, a value the table doesn't hold, and the atlas hasn't confirmed it. Where Contra counts loops up to 3, Super C keeps a beaten-once flag that stays at 1; where Contra reads every gun's strength, Super C counts only the spread gun.src/bank-0.asm L3755–3779src/bank-0.asm L4286–4287src/bank-0.asm L165–181src/bank-f.asm L2421–2431Code
The US NES Super C keeps Contra's outdoor jump: a take-off speed of $FB.$F0 (4.06 px/frame up) and gravity of $23 a frame. Super C caps a fall at 5 px/frame and jumps out of water at $FD.$00 (3 px/frame).src/bank-0.asm L1538–1573src/bank-0.asm L1755–1757Code