User Tools

Site Tools


en:sinclair-zx80-klon

Building a Sinclair-ZX80 Clone

Alexander Vollschwitz

A common problem with collections - you're missing one piece to make it complete, but you just can't get your hands on that particular item. For me that's the case with my Sinclair collection: a ZX80 would close the last gap, but by now, prices for one are way beyond what I'm ready to invest. However, PCBs and kits for building a ZX80 clone have been available for some time now. So owning the functional equivalent of a ZX80 on a budget has come into reach.

Recently, I came across the Minstrel PCB from Tynemouth Software, which is now waiting to get assembled, together with all the required parts. So what better occasion than the VCFB to get this done, all the more so since the ZX80 turns 40 this year! The fun building this clone should well make up for the fact that it's just a replica.

So, in a nutshell: the goal is to assemble what's on below picture into something that's functional and behaves like a ZX80 during the two days of the VCFB:

General Data of Original

Manufacturer Science of Cambridge Ltd. (later Sinclair Research)
Model Name Sinclair ZX80
Year of Introduction 1980
Country UK
Price at the time of introduction £99.95 (£79.95 in kit form)

Photo by Daniel Ryde, Skövde - Originally from the Swedish Wikipedia., CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=439384

Technical Data of Original

CPU Zilog Z80 @ 3.25MHz
RAM 1KB (16KB max)
ROM 4KB
Graphics alphanumerical + block graphics 32x24, output to TV set
Sound none
Mass storage audio cassette

Details

The circuit of the Minstrel by Tynemouth closely follows the original, with the exception of RAM -16KB are used- and the video output. The RF modulator is dropped and instead a composite video signal is output that can be processed by modern TV sets. PCB layout however deviates completely from the original. It's designed such that the board easily fits into the case of a ZX81.

Preparation

The keyboard of the ZX80 consists of 40 switches arranged in a 5x8 matrix. I currently don't have a suitable keyboard for this, so I will be using a small keyboard adapter based on an Arduino Nano + MT8808 (8x8 switch matrix), which I've assembled already. With this, key strokes can be sent to the finished clone, either from a PC or a USB keyboard connected directly to the adapter.

Update 18.10.: The software for this adapter is now available on GitHub.

Status

I will most likely proceed in below order and keep signing things off here as I go along, so you can check progress here:

Day 1:

  • [x] IC sockets
  • [x] connectors
  • [x] power supply
  • [x] capacitors
  • [x] switching diodes
  • [x] transistors
  • [x] oscillator
  • [x] switch

Day 2:

  • [x] resistors
  • [x] plug ICs
  • [x] function test m( - After switching the machine on I get a white screen. Since the graphics in the ZX80 is done by the CPU, this suggests that it's essentially running. Initially, the machine crashed when touching the PCB, but that turned out to be caused by a wrong power supply plug (loose contact). I will troubleshoot in the next days. If I still have access here, I'll report back.
  • This was really a lot of fun! thanks to everyone involved in making VCFB 2020 happen!!!

Troubleshooting

  • I found a first hint on Tynemouth's troubleshooting page (the maker of the PCB). A white screen after power on is a known problem. It's usually caused by Vintage (sic! :-?) TTL chips in the graphics part of the circuit. These older chips are often not fast enough. In my case, this is probably a 74LS10, which I did not order new but used from my stock. I swapped it for a D110 (7410), just to check. This chip is also too slow, but I already see a change, so looks like I'm on the right track.

  • Update 13.10.: Replacements for IC13 (74LS04) and IC17 (74LS32) arrived. After swapping, I get below picture. You can already imagine that there's something like a cursor, so definitely going in the right direction. Replacement for the remaining "Vintage" chips is on the way.
  • Update 16.10.: And now replacements for ICs 11, 12 (74LS00) & 16 (74LS10). After swapping them out, the picture improved again, but was still not correct. Then I noticed that when getting close to the ROM with my hand, the machine crashed. That triggered something, and I remembered that there are three jumpers that need to be placed according what type of ROM you're using (24 or 28 pins). According to the instructions, those jumpers should not be required when using a 28 pin ROM, but maybe that was meant for a different revision of the board. Due to the missing jumpers, three pins of the ROM were floating, and caused frequent crashes.
  • So,I quickly soldered them in place, and voilà…

Virtual Exhibition Desk and Room

Availability Times

Day Day
Saturday 10:30 - 13:00
Saturday 14:00 - 19:00
Sunday 10:30 - 12:30
Sunday 13:30 - 17:00

What now?

Today during the first day the question came up a few times about whether I'd thought about a case already. A 3D print of the original would be an option. Personally though, I prefer to reuse the cases of decommissioned devices in my projects, to give them a new life. Here for example is an old SCSI case housing a Sinclair ZX Spectrum. For the ZX80 I might be using the case of an old network switch.

Update 10.11: I finally decided to use the case of an old ISDN modem, which has more space.

Update 18.12: Finally done! Everything's in the case - ZX80 board, keyboard adapter and a USB sound card, for saving and loading programs via the USB connection.

en/sinclair-zx80-klon.txt · Last modified: 2020/12/31 12:52 by xelalex