If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Killer Instinct (SNES)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Killer Instinct

Developer: Rare
Publisher: Nintendo
Platform: SNES
Released in US: August 30, 1995
Released in EU: September 21, 1995


PiracyIcon.png This game has anti-piracy features.


Hmmm...
To do:
Prototype

The Super Nintendo port of Killer Instinct cuts down on quite a few features of the arcade classic, but still manages to be a solid fighter while bringing offerings of its own, like tournament and training modes. While not outright confirmed, this port's existence owes itself to the arcade's promise that Killer Instinct would be available for your home in 1995 only on Nintendo Ultra 64 - a console that didn't actually come out that 1995.

Notably the sequel had a nearly finished port that went the way of Star Fox 2 due to the Nintendo 64 finally being out that next year.

Anti-Piracy

Killer Instinct SNES unauthorized device.png

A number of anti-piracy measures exist, sharing many of the same routines used in Donkey Kong Country 2 and 3.

Failing any of the below tests will write the string I PiRatE to RAM address $7E0200 and then display the above unauthorized device message on boot up.

Boot State Test

Almost immediately after booting, the Emulation Flag and Direct Page register are examined. The console already being in Native Mode and/or the Direct Page register containing a non-zero value fails the test as these are evidence that another program (e.g., a backup unit menu) was running before the game had a chance to boot.

Stack Test

If the Reset Vector was at the top of the stack, the test fails. Explained in more detail in the next section.

RAM Tests

The beginning of RAM (range $7E0000-7E1FFF) is searched for three types of fingerprints left behind by the unauthorized devices. The two jump tests, along with the stack test mentioned in the previous section, are looking for the various methods that attached hardware can use to switch from its programming to that of the game cartridge.

Jump $4C

Checks for operation $4Cxxxx, where xxxx is the Reset Vector.

Indirect Jump $6C

Checks for operation $6CFCFF, an indirect jump.

Incrementing RAM Pattern

Checks for the incrementing 32 byte string $60-7F (i.e., 60,61,62 ... 7D,7E,7F). This includes lowercase ASCII characters a-z.