ZX81 Computer


Showcasing monthly programs, a retro look at my my first computer.

Crafting Black Hole Graphics on the ZX81

Black Hole, ZX81 Screenshot 3, 2023 by Steven Reid

I had forgotten about this Black Hole program until I ran across it while cleaning up some directories. It is a conversion, not an original, program that was shared on one of my BASIC forums. It doesn’t look quite as good as the original, but it was interesting to see what the ZX81 could do with its simplistic graphics.


ZX81 Aquarium Makeover—Revamping Kimmie Fish in Assembly

Aquarium Screenshot 1, 2024 by Steven Reid

While on vacation, I spent some relaxing time converting my Kimmie Fish BASIC program into something a bit more interesting. In addition to the normal speed improvements, I wanted to give it an aquarium like feeling with bubbles and depth. No color here, this is all stock ZX81 graphics. Only thing needed is the requisite 16K memory pack.





Beyond the Atari: A Pitfall! Simulator for the ZX81

Pitfall! Simulator, ZX81 Screenshot of the Starting Room, 2023 by Steven Reid

Pitfall! without the peril, with this accurate ZX81 simulator.--> While contemplating what ZX81 program to write about this month, I completely forgot that I had created a Pitfall! Simulator. It began as a fun project to occupy my time during winter break. My initial goal was to recreate David Crane's LSFR (Linear Feedback Shift Register) in Z80. However, after learning more about its functionality, I took the project much further than I had originally intended.


A Trip Down Memory Lane: Recreating “I Was Here” in ZX81 BASIC

Here, ZX81 screenshot, 2023 by Steven Reid

A recently posted meme reminded me of the silly things we did on computers. In the early eighties, most computers came with BASIC as their default OS. A common starting point was a s simple “hello world” program. But almost as often, someone wrote something a bit more personal. This is my tribute program to the “I was here” concept of those days.


How to Create an Infinite Maze on the ZX81

Infinite Maze, ZX81 Screenshot, 2023 by Steven Reid

I saw the Commodore 64 maze generator for years, but ignored it on my ZX81 for different reasons. For one, the characters needed didn’t exist on the ZX81 keyboard. The other was the lack of automatic scroll. Undeterred this month, I created my own version in Sinclair BASIC. I’m quite happy with the results, even if not quite the same.



Chunky Graphics for the ZX81: A New Way to See the Mandelbrot Set

Mandelbrot Set with Chunky Graphics, ZX81 Screenshot, 2022 by Steven Reid

After completing my Chunk Graphics mode, my thoughts went to how best to use it. My first idea was something new, such as a flight simulator. After pondering, I stuck with something current by modifying my Mandelbrot Set program. With three gradients, it would be an interesting use of the mode.


Exploring Chunky Graphics: A New 3-Color Screen Mode for ZX81

Chunky Plot, 2022 by Steven Reid

Out on a run back in November of last year, I had this idea to create a 3-color screen mode of the ZX81. The idea was to use the checkered, or gray, graphic characters to add a third color. After reading about the C64 color modes, I called it chunky graphics as an homage to its wide pixel format. The pixel’s are chunky due to the 2x1 ratio and not being square. Let’s dig into the details.


Meow in Motion: A Z80 Assembly Version of a Classic Cat Animation on the ZX81

Fast Cat (Cat ASM), ZX81 Screenshot #2, 2023 by Steven Reid

After finishing the basic version of the cat animation, I wanted to improve the frame speed. This meant converting from BASIC to machine code. My first thought was to do the conversion with MCODER II. I dropped that idea, deciding to focus on a custom z80 Assembly version. Ergo, cat written in assembly or Fast Cat is, well, a faster version and a bit more.


ZX81 Digital Rain: A Retro Display of the Matrix Code

ZX81 Rain, Chroma ZX81 Screenshot, 2023 by Steven Reid]

The holiday's provided me a nice break to enjoy writing code. During that time, I revisited my digital rain program. For ZX81 Rain, I cleaned up the colors and added a little randomness to where the drops start. Nothing super exciting, but the overall effect is much nicer and looked good in both black/white and color on the ZX81.


Accelerating FizzBuzz on the ZX81: A Basic Guide to High-Speed Integer Printing

FizzBuzz 2, ZX81 Screenshot, 2023 by Steven Reid

Reading some old programming books from the eighties, I saw that the ZX81 had an ABS command that made me think I could improve my FizzBuzz program. It was late and my mind mixed that command with a modulus one, which the ZX81 doesn’t have. In any case, it offered me an excuse to fix the latency introduced by printing numbers.


Playing With BASIC by Revisiting My Retro E.T. Game for the ZX81

E.T. 23, Getting a Phone Piece, ZX81 Screenshot, 2023 by Steven Reid

I had this idea the other day. One of the problems I’ve had with the ZX81 is printing numbers, which is pretty slow. Due to this, many of my games avoided printing them. delaying showing score until after play has ended. My idea was to try to find a way to speed that up. Not only did I find a way, I decided to implement it in an older game of mine: E.T.


Cat’s Can Be Fun on Computers Too

Cat Animation, 2023, ZX81 version by Steven Reid

A recent post in a Facebook BASIC group of a cat animation. A couple of other members converted it to their BASIC code of choice. Mine being the ZX81, I promptly worked on a version for it. I created a mostly full screen version, which tends to show how slow the ZX81 really was. In any case, it was quite a fun little exercise.



Let’s Have Fun Playing Snake on the ZX81

Snake! Growing Screenshot, 2022 by Steven Reid

I’ve been on a retro computing binge lately and was recently watching one on programming on what it was like to program in the 80’s. Having lived and programmed during that time, I know full well what that was like. But the narrator was showing off an Apple ][+, a computer I didn’t own. Although I programmed on an Apple ][ in high school, my memory of it is vague at best. But what was really interesting was what he was programming a snake game. Being something I’d never tried myself, I thought now would be as good time as any.




More Mandelbrot Set Fun in Z80 Assembly

Mandelbrot Sets Machine Code, ZX81 Zooming In Screenshot, 2022 by Steven Reid

Okay, after finishing my BASIC program version of Mandelbrot Sets, I decided I needed more speed. I wasn’t sure if I could write a version in assembly. My concern was the floating point math. After a good amount of research, and trial and error, I finally got a version working. This is my story.


A little BASIC fun with Mandelbrot Sets

Mandelbrot Sets, ZX81 Screenshot, 2022 by Steven Reid

Fun with Mandelbrot sets. I never thought I’d say that, but here I am doing just that on the ZX81. I ran across some fun discussions on them. They are often used as benchmarks, but I just wanted to create some interesting pictures. This is my version using Sinclair BASIC that creates a few interesting ones.



Wasting Time Watching Circles in This ZX81 Demo

Circles, ZX81 Screenshot, 2022 by Steven Reid

I ran across a ZX81 forum post showing a fast way to print a circle in BASIC. It was based on an article for the Atari back in 1983. I was surprised how fast the routine was and wondered how it would in assembly. Long story short, I built a screen saver for the ZX81. Sure, the ZX81 really didn’t need one, but the circles are fun to watch.