Donkey Kong Country was among the most ambitious, popular and influential of Super Nintendo games. Technically, its big trick was taking animations rendered on Silicon Graphics workstations and putting them on the cartridge to be displayed as SNES sprites.

The cartridge was 32 megabits (4 MB). That was pretty big for a fourth-generation game cartridge, and ROM chips were a significant contributing factor to total cost. If I were the developer, I would have tried very hard to compress the animations, background images and other data on the cartridge, decompressing them into console RAM for use. I'm sure the developers at the time must've thought of it.

What data compression techniques did they use?

  • 3
    Not an answer, but here is a post-mortem of another 3-D game, also pre-rendered on SGI workstations, released for another console at the same time
    – Davislor
    Jan 3 '21 at 7:10
  • 1
    In particular, part 3 of the Crash Bandicoot war story talks about how they did it for that game.
    – Davislor
    Jan 3 '21 at 7:15
  • 2
    A speculation, thus not an answer: there are two factors to consider - the memory consumption for decompression must be relatively low, thus complex Markov model-based algorithms are out; and, at the time, several efficient LZ algorithms, as well as arithmetic coding, were still under patents. Thus, a homebrew quick-and-dirty variant of a LZ family algorithm is likely.
    – Leo B.
    Jan 3 '21 at 7:22
  • 1
    @LeoB. Was avoiding patent fees a higher priority than getting a better compression routine that works, right away? Especially one that’s willing to pay for $100K IRIX workstations in the ’90s?
    – Davislor
    Jan 3 '21 at 11:08
  • 5
    sounds like custom decompression was used (the SNES CPU is a 16-bit 6502 like), check out disassembly here: github.com/p4plus2/DKC2-disassembly Jan 3 '21 at 17:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.