Difference between revisions of "President"

From Pin Eight
Jump to: navigation, search
(new page)
(No difference)

Revision as of 22:55, 13 January 2009

President will be a platformer engine for NES, designed to be slightly more general than the Super Mario Bros. (SMB1) engine. (The name stands for Another Side Scroller Hosted On a Limited Environment; see "Dai Hin Min" on Wikipedia to learn why.) It shares no code or graphics with any NES game from the classic era.


  • 16x16-pixel metatiles
  • 512x12-metatile maps (32 screens wide)
  • Multiple locales
  • Repeating background scenery layer similar to SMB1's clouds, fences, bushes, and rear walls
  • Object-based area data compression
  • Limited backtracking support
  • Sprite animation


Backtracking, destructible environments, no extra RAM: pick two.

The earliest side-scrolling games for NES, such as Mappy and Lode Runner, only scrolled back and forth across a 2-screen area. This level size easily fit into the NES's RAM.

Super Mario Bros. (SMB1) was designed to stream level data from the cart in such a way that the levels could be decoded only forward. This made the best use of the cart's 32 KiB of PRG ROM and the NES's 2 KiB of internal RAM. Some levels of SMB1, such as 1-2 and 4-2, had hundreds of breakable elements such as bricks, coins, and ? blocks. If the game allowed the player to backtrack, the game would have to remember whether each element has been broken.

Other platformers, such as the Mega Man series, allowed the player to move back and forth freely across a map. But they typically did not let the player destroy a lot of things in the map, not nearly to the extent of SMB1, so they didn't have to remember the state of the whole level. Most power-ups in such games were dropped by defeated enemies.

Later platformers, such as Super Mario Bros. 2, Super Mario Bros. 3, and M.C. Kids, allowed the player to backtrack in the level and destroy/collect things, but they had an extra 8 KiB of PRG RAM to store either the entire decompressed level or at least state related to the currently loaded map.

President will give the level designer a choice: either dial down the backtracking, or dial down the destructibility. In a level that has only one destructible item per column, the player can move back and forth freely. In a level that has more, the player can go back only one screen before running into an invisible wall. Either way, this is a significant improvement over the capabilities of SMB1.

System requirements

  • NES
  • UNROM/UOROM board with 64 to 256 KiB of PRG ROM and 8 KiB of CHR RAM


President hasn't been coded yet; first I have to draw the graphics that the engine will display. Here are some houses: A scene similar to Zelda II