![donkey kong country 2 soundtrack donkey kong country 2 soundtrack](https://images-na.ssl-images-amazon.com/images/I/31yEBJd0Q7L._AC_UL160_SR160,160_.jpg)
If the check fails during the former, the player is booted back to the map.
![donkey kong country 2 soundtrack donkey kong country 2 soundtrack](https://cdn.amebaowndme.com/madrid-prd/madrid-web/images/sites/1528161/61b56696b3bf9609edb225be0d451ad3_0574b8ed9e079f0cd33b2b2048d9bd58.jpg)
If the checksum generated doesn't match the hardcoded value it compares against (i.e., the anti-piracy routines were tampered with), RAM address $7E0AFD, which holds the total number of screens in the level, is decremented by one.
Donkey kong country 2 soundtrack code#
Normally, the cartridge has 2KB of SRAM, but this anti-piracy routine will not be executed if this amount is increased (the typical anti-piracy routine in SNES games).Īt the beginning of a level, a checksum is run on 544 bytes worth of code and data which includes all of the above tests, the PAL/NTSC region check, and various initialization routines. If the game detects 0KB of SRAM, this test is failed. This includes lowercase ASCII characters a-z.
![donkey kong country 2 soundtrack donkey kong country 2 soundtrack](https://vgmsite.com/soundtracks/donkey-kong-country-returns-original-sound-version/coverart.jpg)
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.Ĭhecks for operation $4C?, where ? is the Reset Vector.Ĭhecks for operation $6CFCFF, an indirect jump.Ĭhecks for the incrementing 32 byte string $60-7F (i.e., 60,61,62. The beginning of RAM (range $7E0000-7E1FFF) is searched for three types of fingerprints left behind by the unauthorized devices. Explained in more detail in the next section. If the Reset Vector was at the top of the stack, the test fails. 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. However, if the tests pass, the string Rareware is copied to $0907 instead if this string is detected at startup, the anti-piracy checks are skipped and the game boots normally.Īlmost immediately after booting, the Emulation Flag and Direct Page register are examined. If these tests fail again on the second boot (using the string saved in SRAM to determine if it's the second try), then the anti-piracy message is shown. Ten seconds powered off is necessary for the contents of RAM to decay. To account for this, an error message will be displayed first:īehind the scenes, the string A thief! is copied to both $0907 and the beginning of SRAM (battery-backed memory used to hold the save game data). Note: The console's RAM is mostly random on boot and can result in a false positive for the Stack Test and RAM Tests.
Donkey kong country 2 soundtrack verification#
Similar programming is also present in Donkey Kong Country 3 and Killer Instinct.įailing any of the below tests (except the Checksum Verification and Reset Vector Verification) will display the above unauthorized device message on bootup. The game contains a much more thorough set of anti-piracy tests than those seen in earlier SNES titles. It can sometimes be heard when performing the Castle Crush glitch. It is even called in the game's code, albeit too late, and on the same channel as the sound of the barrel breaking. This sound should be used when the Kongs are transforming inside an Animal Buddy Barrel.