Tobias Pfaff

Researcher. Game programmer. Stingray enthusiast.

Tetris Run

I made this game a few years back for a friend of mine who was very into old Super Nintendo games at that time. It is not really much of a “game” in terms of length and gameplay, it’s basically one long intro full of bad inside jokes and then 3 levels of jump-n-run, which is only hard because of the crappy controls. Apart from me being curious on how to program the SNES, (assembly is fun!) the intention was the “surprise effect”, since everyone seemed to assume that it would be impossible to write custom games for the SNES, due to the games coming on cartridges, not CDs. So I wrote this little something, burned it onto an EPROM chip, and the swapped the EPROM in one of her game cartridges with it. (later I built the SNES multigame to make that process easier)


There no real reason to play the game, it’s rather a proof-of-concept. From a technical view however, the game covers basically everything a “real” game would need:

  • graphics loader functions for text, tiled bitmaps
  • Animated user controlled sprites
  • Music output (by loading a modified captured Final Fantasy SPC image)
  • Soundfile output
  • game controller input
  • game loop for jump-n-run and tetris-minigame-in-game ;)
  • a set of tools to “tile” bitmaps and convert graphic blocks, text, sound etc. into a format that can be easily read from SNES memory


There’s not much good information on how to program SNES games; there doesn’t seem to be a large scene of people writing SNES games without the official Nintendo developer kit. The best information is usually available from the emulator guys. In case you are working on a SNES project, you may check out my source code and the mixed documentation zip (random documents partly by me, partly by other people in the emulation scene).

This post has been moved here from my old blog