← All Hardware

Ricoh RP2C02 (PPU)

Ricoh · 1983 · Ricoh RP2C02 Picture Processing Unit

The dedicated graphics chip of the NES, whose tile-and-sprite architecture and clever, memory-efficient design produced the console's distinctive look and enabled smooth scrolling that outclassed most home hardware of the early 1980s.

The Ricoh RP2C02 — the NTSC Picture Processing Unit, with the RP2C07 serving PAL regions — was the chip responsible for turning the NES's graphics data into a television signal, and it was remarkably advanced for a console that launched in Japan in 1983. At a time when many home systems drew blocky, flickering images, the PPU offered full hardware sprite support, smoothly movable backgrounds, and a reasonable number of colours on screen at once, all while using very little memory to store its graphical data — an efficiency that kept cartridge costs down and helped define the NES's economic and visual success. The PPU built its images from tiles, small 8×8 (or 8×16) pixel blocks that were reused across the screen to compose backgrounds. Moving characters and objects were handled by sprites, whose data lived in a dedicated 256-byte internal memory called Object Attribute Memory (OAM). Each of the 64 possible sprites was described by just four bytes — its position, its tile, and its attributes — an economical scheme that nevertheless imposed the console's most famous limitation: only eight sprites could be drawn on any single horizontal scanline. Exceeding that set an overflow flag and caused later sprites to disappear, producing the sprite flicker that NES players learned to recognise when the action grew busy. Colour on the NES was similarly constrained but carefully arranged. The PPU could select from a fixed hardware palette of 64 colours, and the current image drew on a 32-byte palette RAM divided into four background palettes and four sprite palettes, each holding three colours plus a shared transparency/backdrop entry — allowing roughly 25 distinct colours on screen at once. Artists worked within these limits with great ingenuity, and the resulting look became instantly identifiable as "the NES." Crucially, the PPU's background system supported hardware scrolling, letting games shift the visible window across a larger virtual playfield without redrawing everything by software. This is what enabled the fluid horizontal and vertical scrolling of Super Mario Bros. and countless other titles, a capability that felt effortless compared with the juddering scrolls of weaker hardware. Together with the Ricoh 2A03 CPU, the RP2C02 formed the technical foundation of the machine that revitalised the American console market, and its tile-and-sprite model influenced how 2D game graphics were conceived for years afterward.

Used In: Nintendo Entertainment System / Famicom
Sprites64 total via 256-byte OAM; 8 per scanline before overflow
Tiles8×8 or 8×16 pixel blocks
Master palette64 fixed hardware colours
On-screen colours~25 (4 background + 4 sprite palettes, 3 colours each)
BackgroundsHardware scrolling across a larger virtual playfield
RegionsRP2C02 (NTSC) / RP2C07 (PAL)