After the fun of writing the Zombies game in Z80, I had a go at writing a version of Conway’s Life in Z80.
The source code and compiled binary can be obtained from my Github Repo here. Feel free to copy it and make modifications. If you fix or improve it, let me know!
Life is a type of program called a cellular automaton which is just a fancy way of saying it’s a simulation. In this simulation there are small units called cells, and each cell can be either alive or dead. Their state is dictated by a set of rules, and their neighbouring cells. The rules are really simple
- A cell with 2 or 3 neighbours remains alive if it already is
- A cell with 2 neighbours comes back alive if it’s dead
- A cell with anything else dies off, or stays dead
From these simple rules you can get incredibly fascinating patterns, and it’s a great example of something called emergent behaviour