The Nintendo Entertainment System, or NES, is an 8-bit video game console released by Nintendo in North America, Brazil, Europe, Asia, and Australia. Its Japanese equivalent is known as the Nintendo Family Computer, or Famicom. The most successful gaming console of its time in Asia and North America (Nintendo claims to have sold over 60 million NES units worldwide [1]), it helped revitalize the video game industry following the video game crash of 1983, and set the standard for subsequent consoles in everything from game design (the first modern platform game, Super Mario Bros., was the system's first "killer app") to business practices. The NES was the first console for which the manufacturer openly courted third-party developers.
Technical specifications
CPU: Ricoh 8-bit processor based on MOS Technology 6502 core, custom sound hardware, and a restricted DMA controller on-die
Region differences
NTSC version, named RP2A03, runs at 1.79MHz
PAL version, named RP2A07, runs at 1.66MHz
PlayChoice-10 and Nintendo Vs. Series systems used the NTSC version CPU, and RGB version PPU
Main RAM: 2 KB, but more can be provided by cartridges
Video RAM: 2 KB, but 2 KB more can be provided by cartridges
1 Triangle-wave channel, fixed volume, supporting frequencies from 27Hz to 56kHz
1 White-noise channel, 16-level volume control, supporting two modes (by adjusting inputs on a Linear feedback shift register) at 16 preprogrammed frequencies
1 Delta pulse-code modulation (DPCM) channel with 7 bits of range, using 1-bit Delta encoding at 16 preprogrammed frequencies, also capable of playing standard PCM sound by writing individual 7-bit values at timed intervals.
PPU: Ricoh custom-made video processor
Region differences
NTSC version, named RP2C02, runs at 5.37MHz and outputs composite video
PAL version, named RP2C07, runs at 5.32MHz and outputs composite video
PlayChoice-10 version, named RP2C03, runs at 5.37MHz and outputs RGB video (at NTSC frequencies)
Nintendo Vs. Series versions, named RP2C04 and RP2C05, run at 5.37MHz and output RGB video (at NTSC frequencies) using irregular palettes
Palette: 48 colors and 5 grays in base palette; red, green, and blue can be individually darkened at specific screen regions using carefully timed code.
Onscreen colors: 25 colors on one scanline (background color + 4 sets of 3 tile colors + 4 sets of 3 sprite colors), not including color de-emphasis
Hardware-supported sprites
Maximum onscreen sprites: 64 (without reloading sprites mid-screen)
Sprite sizes: 8x8 or 8x16 pixels (selected globally for all sprites)
Maximum number of sprites on one scanline: 8, using a flag to indicate when additional sprites are dropped (to allow the software to rotate sprites, causing flicker)
Video memory: PPU has 2 KB tile/attribute RAM on its bus; 256 bytes of on-die sprite position/attribute RAM ("OAM") and 28 bytes of on-die palette RAM (allowing for selection of background and sprite colors); 8 KB of tile pattern ROM/RAM on cartridge (with bankswitching, virtually any amount can be used)
Scrolling layers: 1 layer, though horizontal scrolling can be changed on a per-scanline basis (as can vertical scrolling via more advanced programming methods)
Resolution: 256x240 pixels, though NTSC games usually used only 256x224, as the top and bottom 8 scanlines are not visible on most TV sets; for additional video memory bandwidth, it was possible to turn off the screen before the raster reached the very bottom.
Video output
Original NES: RCA composite output and RF modulator output
Original Famicom (Japan) and NES 2: RF modulator output only
AV Famicom: Composite video output only, via a nonstandard 12-pin connector