Diving deeper: Inside the Famicom

The Famicom's internal hardware was designed to be both relatively powerful and relatively inexpensive for the time. The result was something much more capable than the Atari 2600 and its contemporaries, even if it seems positively prehistoric by today's standards. The system had two main processors: the CPU was a variant of the 8-bit MOS Technology 6502. Other members of that processor family made it into everything from the Atari 2600 to the Apple IIe, so in this case the Famicom was in good company. The processor was clocked at about 1.79MHz, and it had access to a whopping 2KB of RAM.

Graphics were handled by a custom chip called the Picture Processing Unit (PPU), a 5.37MHz chip which itself had access to another 2KB of RAM. A further 256 bytes of memory, called Object Attribute Memory (OAM), was integrated directly into the PPU die, storing information needed to display sprites. There were 28 more bytes of RAM to hold information pertaining to the system's color palette. The PPU can output pictures at a resolution of 256×240. However, on most NTSC television sets the top eight pixels and the bottom eight pixels were usually hidden by overscan, giving many games an effective resolution of 256×224.

The OAM and palette memory on the NES severely restrict how many objects can be onscreen at a time and how many of the system's 54 colors can be displayed at a time. The OAM can store data for a total of 64 sprites, or four bytes for each sprite, set against a tiled background. The palette memory can display up to 25 colors on screen at a time: one background color, four sets of three tile colors, and four sets of three sprite colors.

Standard sprites can be either eight pixels wide by eight pixels high or eight pixels wide by 16 pixels high. Let's take Mario (above) as an example. From his earliest days as Jumpman, the light-skinned dark-haired Mario was depicted on the side of arcade cabinets and in instruction manuals wearing worn red overalls with a blue shirt, along with a black mustache and bright yellow buttons. The Famicom's technical limitations render his hair and his shirt the same color. His skin, the buttons on his overalls, and the spot on his hat are also the same color by hardware necessity.

Of course, these limits can be circumvented. Smaller sprites can be placed side-by-side to create larger "meta-sprites," which is how most sprites in NES games are actually put together. The mushroom sprite from Super Mario Bros., for example, is four eight by eight sprites put together, while Super (a.k.a "big") Mario himself is made of four eight by 16 sprites. Individual sprites can also be layered creatively to overcome the color limitations—this is how Mega Man's helmet is two shades of blue and his eyes are a different color than the rest of his face. None of these arrangements can be infinite, though—in addition to the 64 sprite limit, only eight sprites can be displayed on the same horizontal line of the screen at once before annoying and distracting sprite flickering sets in (see games like Super Dodge Ball for a prime example of this limitation).

Finally, there's the Famicom's audio hardware, a setup that transcended its limitations and gave us some of gaming's most memorable tunes, launching an entire musical subgenre in the process. The NES has five sound channels, each of which has its own distinct characteristics.

First up are the two identical pulse wave channels, which are generally used for melodies. The are capable of different "voices" depending on their pulse width, and they can each be set to one of sixteen volume levels. Pulse widths of 12.5, 25, 50, and 75 percent are available, with the 25 and 75 percent widths making identical sounds.

The triangle wave channel has only one voice and only one volume level, and it usually provides a bassline and augments the percussion. The noise channel can output a static-like sound in two modes with 16 different pitches per mode, and developers normally used it to create percussion tracks.

Finally, the sample channel is more rarely used because the samples take up a (comparatively) large amount of storage space. Still, these samples can be used to create slightly more complex sounds than the other channels are capable of. The bongo sound effects in Super Mario Bros. 3 and the cheering of the crowd in Mike Tyson's Punch Out!! are both prominent examples.

For a more detailed primer, this excellent video by YouTube user explod2A03 does a concise job of describing the basics about each channel (with examples!). He also has several other good explainer videos that show off how creative composers can work around the system's limitations to produce more complex sounds.

Extending the hardware

What we've talked about so far covers the capabilities that the Famicom and the NES had out of the box. In the seven years between the launch of the Famicom and its replacement by the Super Famicom in late 1990, the console received a number of performance boosts from a long series of hardware add-ons.

The most common way to extend the console's performance was through the use of Memory Management Controllers (MMCs, also called "mappers" in the emulation community), small chips that were embedded in the game cartridges themselves. Nintendo would continue to use similar on-cartridge chips to improve system performance well into the Super Nintendo era, even giving some of them their own branding—the SuperFX chip used in Star Fox and other games is probably the most prominent of these—but the practice started on the Famicom.

The most common chips used in NES games were MMC1 and MMC3. The former implemented support for game saves and for scrolling up and down as well as side-to-side (it was used in The Legend of Zelda among other titles). MMC3 allowed diagonal scrolling, and it also made it possible to keep a section of the screen static while scrolling another section normally. Both of these abilities are shown off to great effect in Super Mario Bros. 3.

These weren't the only add-on chips of course. Nintendo's MMC5 (used most prominently in Castlevania III) was its most powerful, adding a kilobyte of extra RAM, two extra sound channels, vertical split screen scrolling, and some additions to help overcome the NES' color palette limitations. Third-parties like Konami, Namco, and Sunsoft also made their own add-on chips, though these were mostly restricted to Japan. This self-described "Bigass NES Mapper List" is a reasonably comprehensive record of which games used which chips.

Accessories that used the Famicom's 15-pin expansion port were also relatively common, at least in Japan (The NES had a similar port on its bottom that went mostly unused). There was a package called "Family BASIC" that turned the Famicom into a computer that can write and run BASIC code, and a Famicom Modem allowed for some barebones pseudo-Internet access. The most widely adopted expansion hardware, though, was the Famicom Disk System (FDS).

The FDS was essentially a floppy disk drive that sat underneath the Famicom. Its double-sided proprietary disks can store about 112KB of data—larger games can use both sides of the disk or even multiple disks, and the disks can be rewritten with new games at in-store kiosks. The included RAM adapter, which plugged into the Famicom's cartridge slot, also extended the console's capabilities. It included two extra sound channels, 32KB of RAM to used to store data copied from the disk (to reduce the amount of time that the disk was active), and 8KB of RAM for storing tiles and sprites.

Its flagship launch title was none other than The Legend of Zelda, which would need the MMC1 chip and a battery to enable its game saving feature when it was released in the US as a cartridge the next year. Generally, the two extra sound channels afforded by the FDS were reserved for sound effects, to prevent those effects from making part of the music track cut out as they do on many standard NES games. In some cases, though, the FDS channels were used to add extra texture and complexity to the music. Compare the FDS version of the Zelda title theme to the NES version to hear how much of a difference they can make.

Like just about every console add-on accessory that has ever existed (the Sega CD and 32X, the Nintendo 64DD, Sony's EyeToy camera, etc. etc.), the Famicom Disk System wasn't a runaway success. Improvements in cartridge technology, including the aforementioned MMCs, rendered its technical improvements less necessary, while the amount that could be stored on a cartridge eventually outstripped the 112KB that can be stored on the disks. Late-period games like Dragon Warrior 4 can be up to 512KB in size. (Japan's Metal Slader Glory actually topped out at a full megabyte of data!) The disks lacked the protective coverings common on 3.5-inch floppy disks, which made it easy to damage the magnetic storage medium. Finally, onerous licensing terms (Nintendo wanted a partial copyright for any game published on the FDS) rendered many third parties uninterested in supporting the add-on, subject as they already were to Nintendo's stringent licensing requirements.

Several high-profile titles like Zelda, Metroid, Castlevania, and Super Mario Bros. 2 (the Japanese version, called The Lost Levels when it finally came to the US as part of the SNES' Super Mario All-Stars cartridge) all made their debuts on the FDS. Big-name games eventually moved back to cartridges, though, and FDS sales petered out at around 4.5 million units.