Sitemap
Level Up Coding

Coding tutorials and news. The developer homepage gitconnected.com && skilled.dev && levelup.dev

Member-only story

REA: Atari 2600 Space Invaders

11 min read4 days ago

--

We now have a luxury the programmers of the late seventies never had: time. Their machines are frozen, fully documented and emulated down to the cycle, and their code can be taken apart at leisure, long after the deadline that shaped it. What comes out of that exercise is not nostalgia. It is a catalogue of techniques invented under constraints so tight that every byte and every cycle had to argue for its place, and a surprising number of them still teach something about how to split work between hardware and software today.

This is the first of a series of such excavations. The idea is not entirely new here: the fast inverse square root from Quake III Arena was the same kind of dig, one famous constant at a time. This series goes further back and makes it a habit, starting with a cartridge that had almost nothing to work with.

Press enter or click to view image in full size

In 1980 Atari shipped Space Invaders for the VCS, the console everyone now calls the 2600, and it became the first arcade game licensed for a home system and one of the reasons people bought the console at all. The arcade original had a frame buffer, a dedicated shifter for moving bitmaps and 55 invaders marching down the screen. The 2600 had 128 bytes of RAM, no frame buffer of any kind, and a video chip that could show…

--

--

Former Software Engineer at Google, still haven't found what I'm looking for. Retro computing, 6502 assembly, Rust. Full record: whois.enzolombardi.net