There’s definitely a wide-spread nostalgia about 8-bit computing if only amongst the geeks. People of my generation learnt to code in the 1980s on BBC, Sinclair, Amstrad and Commodore computers. There were many others. Apple and Atari seemed less prevalent in the UK. I don’t think I saw an Apple II until 1993, but I had a schoolfriend who had both an Atari 800 and an Atari XL. All good fun.
By today’s standards, these computers are simple. They can be repaired by an amateur and there are many third-party add-ons appearing to extend their life. For example, there are many SD-Card convertors that can be used to load software directly onto the old systems and there are software development kits to target the computers themselves.
- The 8-Bit Guy hosts a YouTube channel with episodes on computer restorations, new computer kits and the history of 8-bit computing. He leans towards the Commodore 64 and VIC-20. Support him on Patreon. He is behind the Commander X16 project (see below)
- Retro Recipes is a YouTube channel hosted by Perifractic, an actor you will have seen in Star Wars Episode I and an electronic musician. His channel covers more than just 8-bit and he hosts it with his wife and dog(s). Support him on Patreon.
- Noel’s Retro Lab is channel from Spain. Noel goes into great detail repairing systems and soldering them together. There’s lots to learn about repair here. He leans more towards Amstrad and Sinclair systems. Also on Patreon.
There are various attempts out there to produce “new” computers based on 8-bit architecture. Here are the ones I’m following:
- Commander X16. Initiated by the 8-bit Guy, this is an 8-bit computer designed to provide the same experience we had in the 80s getting close to the machine, but in a modern format. Perifractic is designing the case and there is a group of people working on the software and motherboard. There is an emulator which runs on Mac, Linux and PC. It runs Commodore BASIC v2 and is inspired by the Commodore 64.
The VCS was one of the first consoles available. It’s based on the 6502 and has a dedicated chip for driving the television. It only has 128 bytes of RAM. To draw graphics on the screen, one needs to understand hardware timing, NTSCvsPAL signals and programming hardware directly.
- AtariAge has a lot of information about the 2600 and the 5200 & 7800 which replaced it.
- The Stella emulator – fully emulates the Atari 2600 on Raspberry Pi, Mac, Linux and Windows. ROMs can be found on the Internet.
- Gopher2600, an Atari 2600 emulator written in Go.
- Stella Programming guide, 1979. The internal Atari guide to coding for the 2600 (internally known as Stella)
- Learn Assembly Language by Making Games on the Atari 2600 (Udemy), a paid for Udemy course, Gustavo leads us through the process of creating a simple game. By the end of the course, you will understand about the issues faced by console programmers in the late 70s – hardware clock cycles, timing signals to the hardware and squeezing all the code into 4k of ROM.
- Carol Shaw – one of the first female game designers. She wrote River Raid at Activision. At Atari she was considered the expert on 2600 games kernels – the loop of code that is timed to output the display.
This microprocessor can be found in the BBC Microcomputer, Apple II, Atari and Commodore computers. It was one of the cheapest on the market in the late 70s and had a simple design.
- Programming the 65816, Eyes/Lichty. Still in print and available on Kindle, this book from the 80s describes the whole family of 6502 processors starting with the 6502, the 65C02 and the 16-bit versions 65802/65816. There are lots of techniques and example code segments.
- Programming the 6502, Zaks. Rodnay Zaks is a computer scientist who went to town on the subject of 8-bit microprocessors as we will see here. This book is an academic introduction to microprocessors and programming for the 6502. His texts are out of print, but are downloadable in several formats from archive.org.
- 6502 Games, Advanced 6502 Programming and 6502 Applications (Zaks) build on the previous books and provide plenty of examples.
- A course on emulating the 6502 in C++. This course is a follow-along approach to C++ coding (I learnt a lot about C++ watching it). There are a couple of mistakes to begin with but he corrects them as he goes – e.g. setting the programme counter to 0xFFFC is not right – the PC should be set to the word at 0xFFFC.
This chip from Zilog can be found in the Amstrad range (although rumour has it Sugar considered the 6502 due to the cost), the Sinclair range up to the Spectrum, the TRS-80 computer and various games cabinets. It is similar in design to the Intel 8080 and in fact part of the Intel team left to form the company Zilog. It has many more registers than the 6502 and is slightly more complicated. The CP/M operating system ran on the Z80, so the chip could be found in business computers in the early 80s.
- Programming the Z80, Zaks. Yes Zaks again. This is the 3rd edition of the classic book on assembly language programming. Archive.org also has the 2nd edition.
- There’s a Z80 assembler available I’ve written a patch to make this compile on Mac. Binaries for Catalina/Intel here.
- There’s newer Z80 assembler from GNU Savannah (I can get this to build on Mac OS X Catalina using GCC and with NLS disabled. With the Xcode compiler the assembler exits with a bus error. I can’t persuade Big Sur to build it.)
Out of the three chips, this is the one I know the least about. The team that designed the 6502 were involved with the 6809 and it was a more expensive chip. It is big endian, so multiply byte values are stored with the most significant byte first. The Z80 & 6502 store the least significant byte first. The 6809 was in the TRS-80 Color computer and the British Dragon 32.
- Programming the 6809, Zaks/Labiak. The 6809 gets the Rodnay Zaks treatment.
- The 6809 instruction set
- A 6809 assembler – binaries are available for Linux and Windows. I have binaries for Mac (Big Sur/Intel) here.
Dragon 32/64 and TRS-80 Color
I saw a Dragon 32 once at a museum and I don’t think I’ve seen one since. They are interesting to me because they were designed in the UK, more specifically Wales. Also, like the TRS-80 Color, they are based on a specification from Motorola. The two machines have limited compatibility on compiled software as a result. I haven’t used them as much as I would like.
- Dragon Computer resources at 6809.org.uk including the XRoar Dragon emulator
- Dragon Software at the World of Dragon
- TRS-80 Color Computer Archive
ZX81, ZX Spectrum et al.
- vdrivezx.com: Replacement ULAs for the ZX81, Spectrum et al. Also SD-card readers that appear as Microdrives. Eew.