Oli's old stuff

Tinkering with retro and electronics

Apr 19, 2023 - 18 minute read - electronics hardware pcbs

Trials and tribulations of making PCBs at home

For a while now I’ve been designing my own PCBs for various projects and using board houses in China to fabricate them. The results were excellent however there’s a few issues I want to talk about. When I was working on my first board a couple of years ago (the TZX Cassette which I should post about) I was VERY excited to have the first delivery of the boards from China.

Mar 26, 2023 - 9 minute read - retro electronics hardware pio minicube64 rp2040 raspberry pi pico

Making the Minicube64 on the Raspberry Pi Pico - Part 2

Last time we talked about the initial foray into me trying to make the Minicube64 run on the Raspberry Pi Pico. We got an RGB332 screen running and the boot ROM was running. Can we make it run a real game? SD Card Until now the only ROM I have used is a version of the boot.bin ROM embedded in the Pico’s flash. This won’t do for loading a real ROM, so we need a storage solution.

Mar 24, 2023 - 8 minute read - retro electronics hardware pio minicube64 rp2040 raspberry pi pico

Making the Minicube64 on the Raspberry Pi Pico

The Minicube64 is a retro-inspired fantasy console created by MonstersGoBoom as a “joke” lowrez jam entry. It is now maintained by aeriform who is actively writing games for it. The Minicube64 is powered by Mike Chamber’s fake6502 emulation running at 6.4Mhz, it has 64Kb of RAM, outputs a 64x64 pixel screen at 60Hz and originally had a palette of 64 colours (the palette has since been extended to 256 colours). Games are loaded as ROM images, copied directly into the RAM and executed.

Mar 21, 2023 - 5 minute read - retro electronics hardware pio minicube64 rp2040 raspberry pi pico

Reading a Mega Drive Controller from Raspberry Pi Pico - Part 2

After the last post I ended up with a working system that could read the Mega Drive controller from a Raspberry Pi Pico. . Job done right? Well, I guess not as here we are again talking about the same subject again - this is a post I wasn’t expecting to write! Pins, pins, pins I was working on the Minicube64 project (will save that for another day) and I wanted some more pins for the video driver circuit.

Mar 13, 2023 - 8 minute read - retro electronics hardware pio minicube64 rp2040 raspberry pi pico

Reading a Mega Drive Controller from Raspberry Pi Pico

I have been experimenting with getting the Minicube64 running on the Raspberry Pi Pico. I’ll talk more about that another time, but today I’ll cover one part which was seemingly simple but caused me a few headaches along the way - reading a Sega Mega Drive pad. The Minicube64 has support for a 3 button pad with directional controls, so the Mega Drive pad is ideal here. The Sega Mega Drive originally shipped with a 3 button controller, it had the standard UP, DOWN, LEFT, RIGHT switches as well as buttons A, B, C and START.

Jan 26, 2023 - 4 minute read - z80 retro interak electronics hardware rc2014

The Interak Computer System - Part 4

In my last post I designed a Power-on ROM circuit (PROM) and put together a prototype of it. Unfortunately it didn’t work due to a couple of mistakes I made in the design. I rectified those errors and tested it on my bench - everything seemed to check out. First time boot The next thing to do was to install the PROM card into my BBZ80 and try it for real.

Jan 23, 2023 - 6 minute read - z80 retro interak electronics hardware rc2014

The Interak Computer System - Part 3

We took a little detour into the world of the Interak’s VDU system and have a reasonable approximation of the VDU-2K, LKP1 and PCG cards working on the Raspberry Pi Pico (handling display, keyboard and user character set). BBZ80 My homebrew BBZ80 machine (an RC2014-bus compatible computer I’ve been slowly building) has an Amstrad CPC 464 style memory map at the moment. I haven’t really posted much about that past the original couple of posts; but in short it’s based around the RC2014 bus, has a Z80A running at 4Mhz, 32K ROM (upper and lower), and 64K RAM.

Jan 20, 2023 - 10 minute read - z80 retro interak electronics hardware rc2014 rp2040 pio

Building an Interak-like VDU using the Raspberry Pi Pico - Part 4

We took a little detour into the realm of keyboard support for our VDU which would allow it to be part of a terminal system. This time we’re back on the display side, specifically looking at programmable character graphics. Interak Programmable Character Graphics Remember that the Interak’s VDU is a text-based display. It deals with taking a screen byte, using it as a lookup into a ROM that contains the pixel data and then outputting it to the screen.

Jan 17, 2023 - 14 minute read - z80 retro interak electronics hardware rc2014 rp2040 pio

Building an Interak-like VDU using the Raspberry Pi Pico - Part 3

Last time I talked about my project to create an Interak-like VDU for my Z80-based breadboard computer (which is based on the RC2014 bus); we ended up with a working character based monochrome composite display. There’s a little more to do, such as making the display support programmable graphics from the user, but before we do that I’m going to look at a different aspect. This time around I want to talk about adding keyboard support to the system which would make the machine fully interactive from the outside.

Jan 17, 2023 - 11 minute read - z80 retro interak electronics hardware rc2014 rp2040 pio

Building an Interak-like VDU using the Raspberry Pi Pico - Part 2

Last time I talked about the beginnings of a project to create an Interak-like VDU for my Z80-based breadboard computer (which is based on the RC2014 bus). To recap: Memory-mapped into the Z80 address space from $F000 to $F7FF Must be capable of keeping up with least 4Mhz CPU clock Monochrome composite output Character based, capable of 32, 64 and ideally 80 columns by 24. Ideally support “programmable graphics” (custom fonts) Based on te Raspberry Pi Pico I decided that I could achieve memory-mapping by making he Pico a passive bus participant, and effectively “spy” on the writes to the screen RAM.