I’m going to do some more stuff with my RC2014 Z80 based computer, but having to plug a serial to USB dongle into it, plugging that into my PC and then running a terminal is a bit of a pain in the RS232.
Over on the RC2014 website is a terminal made from a Raspberry Pi Zero which is neat, small and installs as a board in the RC2014. However it uses a whole Raspberry Pi Zero which is that whole mad retro thing we do – use a computer capable of emulating the entire retro machine to do something convenient. I think my BBC Micro has at least two Raspberry Pis inside it…
However a different version of the Raspberry Pi terminal has been made, and it uses a Raspberry Pi Pico. This is still a pretty powerful microcontroller, but it’s not a whole computer.
It’s so powerful it’s capable of bit-banging VGA and being a serial terminal. There’s even a nice premade PCB kit you can buy for the RC2014. I could have bought one, but for a bit of a challenge I figured I must have enough junk to build my own. And it turns out I do!
And it works!
I know, I’m as surprised as you are. It wasn’t working to begin with because I’d got the VGA H-Sync and V-Sync swapped, but once they were the correct way around it sprang into life.
I’ve written countless programs and it’s always nice when they work. Building hardware and having it work is a completely different sense of achievement. There’s a lot more effort involved, so it’s even more rewarding when things go as planned. Especially since I didn’t really know what I was doing.
Well a dim life, my chosen monitor is a bit broken, but swapping it with another one made the image much more visible.
My next step is to turn the breadboard mess into a small protoboard that I can install in my RC2014. Then I can get on with some more Z80 programming. I don’t know what, but it’s been a while since I’ve counted cycles and fussed over registers.
I kind of feel it can’t be too hard to turn the Pico Pi into a real VGA controller capable of more than printing text characters. A BBC Micro style system of transmitting control codes to the display hardware sounds plausible.