Released on 20 October 2025
Download VIC 20 and C-64 versions at:
Tip jar:
ko-fi.com/aleksieeben
Video Chess manual at archive.org:
archive.org/details/Video_Chess_1978_Atari
Original Video Chess disassembly:
nanochess.org/video_chess.html
Video Chess: Atari Archive Episode 31:
www.youtube.com/watch?v=ERdpCddJ3S8
Other VIC 20 ports by Aleksi Eeben
Elite: vic20elite.wordpress.com
Ultima III: vic20ultima3.wordpress.com
Ultima II: vic20ultima2.wordpress.com
Ultima I: vic20ultima1.wordpress.com
About Video Chess
Video Chess is a chess game released by Atari in November 1979 for the Atari VCS / 2600, programmed by Larry Wagner and Bob Whitehead. Despite the severe hardware limits (only 128 bytes of RAM and a 4 KB ROM cartridge), the game implements a functional chess engine with multiple difficulty levels, en passant, castling, and a full-depth (albeit shallow) search. The achievement is historically significant as one of the earliest microcomputer chess programs squeezed into minimal memory, showing what was possible with extreme optimization.
The disassembly and analysis by Oscar Toledo G. in 2023 reveals that the game keeps the board in memory from addresses $80 to $BF (one byte per square), storing piece type in the lower nibble and reusing bits in upper nibble as scratch / side / flags. Move generation is table-driven using displacement tables (e.g. queen moves in rays) and BCD arithmetic for position handling. The program simulates a stack (within the same memory region) to push and pop board states when exploring moves. It implements quiescence search logic, king opposition heuristics, and dynamic depth increases in low-material endgames.
There is also code for castling (although the computer itself can only castle on the king side) and en passant. Some players have speculated a bug on levels 6–7 (apparently “moving two pieces at once”), but the reverse-engineering did not conclusively validate it, treating it more as legend than confirmed flaw.
In the landscape of early microcomputer chess programs, Video Chess stands out as a demonstration of how far you can push severe constraints. It may not match the playing strength of Sargon II (released around the same era, which was more ambitious and respected as a chess engine) — especially in deeper play or sophisticated positional understanding — but Video Chess is remarkable for fitting a working chess engine (with special rules) into just 4 KB plus 128 bytes of RAM. Many chess programs on microcomputers used much more resources. Dedicated chess computers, such as the Fidelity Chess Challenger, had four times more ROM and RAM to work with, and only used a simple digital display to show the moves. The design is a testament to extreme optimization, code reuse, and clever tricks. It also served to show that even “toy” game platforms could host nontrivial AI.