CHIP-8 is an interpreted programming language developed by Joseph Weisbecker in the mid-1970s for the COSMAC VIP and Telmac 1800 microcomputers, built around the RCA CDP1802 processor. It was designed to make game programming easier on those early systems. CHIP-8 is technically a virtual machine / interpreted language — not a hardware platform. Today, it's the classic "first emulator project" for anyone interested in emulation development.
▶
What is CHIP-8?
RAM:4 KB (4096 bytes)
Registers:16 general (V0-VF) + I, PC, SP
Display:64 × 32 pixels, monochrome
Input:16-key hexadecimal keypad
Timers:Delay Timer, Sound Timer (60 Hz)
Stack:16 levels of nesting
Clock:~500 Hz typical (varies)
Opcodes:35 instructions, 2 bytes each
▶
CHIP-8 Family Tree
CHIP-8 spawned several extensions over the decades:
1977CHIP-8
Original by Joseph Weisbecker for COSMAC VIP. 4KB RAM, 64×32 display, 35 opcodes.
1990CHIP-48
Port to HP-48 calculators by Andreas Gustafsson. Introduced some behavioral quirks that persist today.
1991Super-CHIP (SCHIP)
By Erik Bryntse for HP-48. Added 128×64 hi-res mode, scroll instructions, 16×16 sprites.
2014XO-CHIP
By John Earnest (Octo project). Added 4-color display (2 planes), custom audio, 64KB RAM.