PyCon UK 2023

I plugged a Z80 into a Pi Pico, here's how it happened
09-22, 16:00–16:30 (Europe/London), Assembly Room

I've always wanted to build a retro computer based on an old-stock Z80 cpu. The biggest roadblock for me in this endeavor has always been finding a way to manage I/O and a modern display.

The Pi Pico solved all this for me.


Introducing the Raspberry Pi Pico Z80-Based Retro Computer: A Revolutionary Fusion of Modern Technology, geekiness and Nostalgic Computing!

Prepare to be blown away by this project, where the almighty Pi Pico take on the role of the ultimate multitasker —a graphics card, clock, ROM, and keyboard controller— for a Z80-based retro computer. Did I ignite your inner geek yet?!

Imagine a Z80 cpu, like the one that powers the BBC micro but with vibrant 8-bit color graphics coming to life on a VGA screen! All thanks the Raspberry Pi Pico and its PIO capabilities. The Pico in this project has been turned into a somewhat efficient graphics card, enabling smooth rendering of retro-style visuals on modern screens. Experience the nostalgia of blocky pixels.... in 4K (with an HDMI adapter)

The Raspberry Pi Pico's versatility extends beyond its graphics capabilities. Acting as the clock, it allows for varying the speed of the cpu and do "fancy" things like step by step debugging of Z80 assembly.

One of the most delightful aspects of the project is using the Pico as a ROM. Gone are the days of meticulously erasing and rewriting chips, as this setup allows you to effortlessly load files instead.

And with the Pico acting as a USB host, you are free to plug in modern hardware directly into this fancy retro computer! USB keyboard and mouse, SD-card reader, you name it!


Is your proposal suitable for beginners? – yes
See also: Slides

Long-time pythonista, Django fan, electronics enthusiast, co-maintainer and co-author of DRF-Schema-Adapter and other OSS libraries

I am from Belgium and have been involved in open-source at different levels for about 20 years.

One of the things I enjoy the most is sharing knowledge with others. And this is why I enjoy writing tutorials as well as giving talks and workshops.