For Such A Small Program, ZX81 1K Chess Sure Packs A Lot In

The Sinclair ZX81 was hardly the most accomplished of 1980s 8-bit microcomputers, but its ultra-low-budget hardware was certainly pressed into service for some impressive work. Perhaps the most legendary piece of commercial software in this vein was 1K Chess, which packed an entire chess engine into the user-available bytes in the unexpanded 1K ZX’s memory map. [MarquisdeGeek] has taken this vintage piece of code in 2026 and subjected it to a thorough analysis, finding all the tricks along the way.

Though hackers have since found ways to trick the ’81 into displaying bitmap graphics, using it as intended is text-only with some limited block graphics. The chess board then is text-only, and its illusion of “thinking” about moves comes courtesy of the on-screen board doubling as the play area memory. In the GitHub repository you can find decompiled and annotated versions as well as the original ZX binary, with as a bonus a screen capture of the game as it appears as BASIC with the ZX’s odd means of storing Z80 code in REM statements.

If that wasn’t enough, in his note giving us the tip he reveals that much of the work was done in a ZX emulator running in a Dragon emulator, and gives us a fun glimpse of the game running in an emulator on a Cheap Yellow Display inside 1K Chess cassette box. We like it, a lot!

If you need a greater ZX81 fix, take a look at how this machine chased the beam to make TV graphics on the cheap.

12 thoughts on “For Such A Small Program, ZX81 1K Chess Sure Packs A Lot In

    1. There’s nothing really to say about the build: cut a hole in the back of a cassette tape, squeeze the display part of a CYD into the gap, and add a battery pack. Everything you see in the picture is all there is.

    2. I bought my 1st ZX80 while stationed at RAF Lakenheath back on 1980 and the ZX81shortly after. Both from a basement shop in Cambridge. We spent many a day typing in code from books and magazines to save on tape so we could play games and sims after a hard night on the flight line. I salvaged parts from a broken radio/tv that ran on twelve volts to bring into the flight line tool crib to play with on breaks. I remember adding 16k of ram and a thermal printer we used to print new cassette tape covers of our mixed music in the walkman days . I also soldered and external keyboard and bought optional character rom that let us have the game characters for asteroids, pacman and others that we played in the snack bars video games. The sinclair got me started on my computer career that I have retired from at 65 this year. It all started with a little Z- 80 processor for me.

  1. Try Atari 2600’s Video Chess. 4K ROM, 128 bytes RAM. Heck, displaying 8 sprites in a row wasn’t possible normally (Space Invaders did 6 by abusing a minor bug to triple up 2 sprites in a row). The programmer got around that by displaying 4 sprites in a row and used alternating scan lines to display one set of 4 on odd field and second set of 4 on even field.

    The chess game is known to cheat on higher level by moving pieces when it’s not supposed to move. This is due to 128 bytes of RAM inside 2600.

    1. I’ve had a chess app running with the 16k extension on my ZX81 the time beeing
      It was also really impressive for a poor chess player like me!
      It was probably writen in assembly language 😬

  2. I remember buying 1k chess in Hull it was incredible at the time. I too added the extra ram, keyboard and graphics pack. I wrote a stats program that I used at Hull university instead of the mainframe computer.

  3. I still have the timex Sinclair zx81. What fun that was to program. Then onto engineering and a few startups. Loved every minute of it

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.