The official programmer from Zilog enables flashing and debugging of the eZ80, but at cost of over $100 USD is certainly not a cheap option.
An alternative solution, detailed here, is to use the low cost Raspberry Pi Pico (original V1) to flash your eZ80.
To make a Pi Pico Programmer, we need to do the following:
There are 2 downloads available. tagged Releases and general releases. The tagged releases will have more testing conducted compared to the general releases
programmer.uf2
file to the root of the mounted storage device.Pi Pico | ZDI Interface |
---|---|
GPIO 15 | ZCL |
GPIO 14 | ZDA |
GPIO 16 | RESET |
GPIO 17 | ZDI’s PWR (3V3) |
GND * | GND * |
* Make sure you have short leads, and that the 2 ground pins are connected to ground pins of the Pi Pico.
The Revisions V1.7 has incorrect silkscreen naming for main signal pins - (TDI -> ZDA and TCK -> ZCL)
When looking at the front of the eZ80 CPU module, the pin layout is as follows:
ZDA | GND |
ZCK | GND |
RESET | 3V3 |
You can use the images below, and follow the colours the ensure you have correct wiring:
Yellow - ZDA - GPIO 14 | Orange - GND |
Green - ZCK - GPIO 15 | Red - GND |
Blue - RESET - GPIO 16 | Brown - 3V3 - GPIO 17 |
ZDI Connection ......: (PWR: FAIL, RST: FAIL, ZDA: FAIL, ZCL: FAIL)
ZDI Connection OK: (PWR: OK, RST: OK, ZDA: OK, ZCL: OK)
eZ80 Detected: ID 0007 Rev AAitialisation...
Available Firmware Version: 0.1.2.0 (2024-10-03)
ZDI>
FLASH
REBOOT
to start it.
To see your retro computer, you will need to have the UART serial connection of the Interface Module connected to a terminal application.
Within your serial connection to the Pi Pico Programmer, you can issue a number of commands.
help
Will show the list of commands available
The current implemented commands are:
Commands:
help or h
Display this help message
status or s
Display the ZDI status register (ZDI_STAT)
flash [upload]
Flash the eZ80 with a new firmware image
default loads the firmware stored on Pi Pico
upload: expects an intel hex file to be streamed over stdin
verify [upload]
Read the current firmware version image
and compare to verify correctness
upload: expects an intel hex file to be streamed over stdin
break or b
break the ez80
continue or c
continue the ez80
reset
reset the ez80 (internal only reset line is not triggered)
mode or m [ADL|Z80]
Set the CPU mode to ADL or Z80
led [on|off]
Configure PC0 as output and turn led on or off
rd or read [ADDR]
Read bytes from memory
str [ADDR]
Read a null terminated string from memory
reboot
Reset and restart the eZ80 firmware
Please note that this is a kit, produced by a non-expert (me) for hackers, DIYers’ and retro lovers, to tinker with. Please exercise caution and follow good safety practices. You will be working with sharp knives, a hot soldering iron, and small metal components. Be mindful of the risks involved in the build process. I will do my best to answer any questions you may have.
This kit is provided as-is, with no guarantees or warranties. By assembling and using this kit, you acknowledge that you do so at your own risk.