CPU: The Ricoh RP2A03, a custom MOS 6502 with a few extras added on like a sound generator. It runs at 1.79 MHz, or 1.66 MHz in PAL regions.
The system's sprites are generated by the Picture Processing Unit, which is a lot faster. Its speed is 5.37 MHz (5.32 MHz for PAL), which allows it to lay a lot of sprites at once, and render huge backgrounds compared to the pre-crash systems.
The NES had sound circuitry built into its main CPU. It was capable of generating 5 channels of sound: two (largely identical) pulse waves, with 16 volume levels, hardware sweep, and 4 duty cycle settings; one triangle wave channel; one noise channel, with 16 volume levels and 2 sequence settings; and one 7-bit delta modulation channel capable of rendering primitive samples. The delta channel was used mostly for drums and sound effects and occasionally for bass.
Konami VRC6: 2 square waves and 1 saw wave, for a example of how this chip sounds like, hears a 11 part (parts 1 to 9 and 2 encores, with some remix tracks of whole games as well) video (and on going, but the next volumes of the videos take a while) of fan made remix music tracks from Konami games useing the VRC6 chip, and it's awesome.
Konami VRC7: 6 FM channels, based on the YM2413.
RAM: The NES had 2 KB (2048 bytes, 0x800 in hexadecimal) of on-board main memory, although chips on the Cartridges could expand that.
Some cartridge circuit boards based on Nintendo's MMC1 and MMC5 chips allowed one to bank-switch the expanded RAM area, meaning one could access a whopping 32 KB of extra memory.
The system can read a ROM size of up to 32 KB, but like the 2600 it used bank switching (however, mappers can make the banks bigger). Cartridge sizes ranged from 24KB (most games from 1983-4, such as Donkey Kong and Duck Hunt) to 1MB (Metal Slader Glory was the only such game, released in 1991, apart from multicarts and much later Chinese releases).
The NES could display sprites of 8×8 or 8×16 pixels; anything larger is actually two or more sprites acting as one (Super Mario in Super Mario Bros. 3 is four sprites), or a background object made to act like a sprite (e.g., the dragon boss in Mega Man 2). The choice was global; all sprites on the screen were the same size, unless one used carefully timed code to change the setting mid-frame.
The picture processor can generate up to 64 sprites per screen, but no more than 8 sprites could be displayed on a single horizontal line (such as firing the machine gun in Contra) — in order to deal with this limitation, games would cycle which sprites were visible on alternating frames, resulting in the NES' infamous flickering. This was the main reason a game like Mighty Final Fight had such small sprites. It would take at least four NES sprites just to make one of the characters in the arcade size, and with so many characters on-screen it would've been impossible to make out anything properly.
Total palette of 64 colors (with several duplicates, reducing the effective count to about 53) with up to 25 on-screen at once (potentially more using special tricks). Up to eight different tints could be applied to the screen, or to horizontal strips of the screen using carefully-timed code.
From the programmer's point of view, the NES palette had 32 entries. This was divided into eight 4-color palettes, four for the background and four for the sprites. The first palette entry was shared between all eight, giving a maximum of 25 colors per screen.
Screen Resolution: 256×240 pixels, though NTSC televisions would often crop it to 256×224.
Backgrounds: The NES supported only one background layer. In the absence of cartridge-provided expansions, the PPU in the NES has enough memory for two screens' worth of background. Each background or "nametable" is a matrix of 8×8 pixel tiles, with each byte in the table being an index into a bank of 256 tiles. The NES has support for up to four nametables; without cartridge expansions, only two of these are useable; the other two are duplicates. The background can be scrolled horizontally and vertically. Color information is stored separately in an "attribute table"; one 4-color palette can be selected per 16×16 pixel block. This might be why 16×16 pixel blocks are pretty much a universal feature of NES games.
The Nintendo MMC5 chip provided extra memory which could be used as extra attribute data, allowing for each 8×8 pixel block to get its own palette and bank number.
R.O.B. (Robotic Operating Buddy), the NES robot which worked with Gyromite and Stack-Up.
R.O.B. was really never intended to be anything more than a Trojan Horse outside of Japan: it was intended outside of Japan to camouflage the NES as a "toy", and not as a "video game"— the crash made retailers wary of anything video-game related. This got Nintendo their initial American distribution deal with Worlds of Wonder, the builders of the Teddy Ruxpin line of animatronic dolls. Ironically, once the NES started to take off, the fact that R.O.B. was a Trojan Horse caused the deal to fall apart. But of course, by then the console was already a hit, so they didn't need R.O.B. anymore.
The Zapper Light Gun. Capable of detecting brightness and vertical position, but not horizontal. When targets were close together, the game would light up one target at a time to see which one the player is aiming at.
The original Famicom Zapper resembled a realistic-looking revolver. The NES Zapper was redesigned to make it look less like a real gun, and later on the original grey NES Zapper was changed again to be bright orange.
The Power Pad, a floor mat with buttons used for track and field-type games.
The Famicom Disk System, a floppy disk drive add-on. It was introduced in 1986, as was a Twin Famicom model that could play both disks and cartridges. The Disk System was only released in Japan, and even there was moribund by the end of the 1980s due to improvements in cartridge construction and rampant piracy concerns (though Nintendo continued to support it until 2003).note While FDS didn't use the common 3.5" floppy, it nevertheless utilized the more or less standard design, namely Mitsumi's 3" Quick Disk floppies, widely used in home computers and word processors in Japan at the time, so copying them wasn't a problem. The experience with piracy in particular caused Nintendo to be reluctant to accept disks until the Gamecube, and only accepted standard-size optical disks with the Wii. The Legend of Zelda (its first title), Castlevania, Doki Doki Panic (AKASuper Mario Bros. 2), Kid Icarus and Metroid were all originally released as Disk System games.
Famicom Modem: A Japan only adapter that make your Famicom go online; It takes it's own card based (like NEC's/Hudson Soft's PC Engine) format, and the only games made for it were ports of cartridge games (like Super Mario Bros. 3) with online game play, however the cards are quite rare to find.
The combined size of all the commercial NES games ever produced would be around 88 MB.