May 2021

This article introduces CPICOM -- an emulator for CP/M 2.2 on the Raspberry Pi microcontroller.
Categories: retrocomputing, Pico, C, Z80

Why was the CP/M operating system so successful? Forty years on, why should we care?
Categories: retrocomputing, Z80

On websites, and in hobbyist kits for Raspberry Pi and Arduino, you'll often see I2C devices connected that have different supply voltages. This is (usually) safe and, in non-critical applications, tends to work. But why?
Categories: Raspberry Pi, electronics, embedded computing, Pico

My first CP/M program for nearly 40 years -- how, and why, I wrote it.
Categories: retrocomputing, C, Z80

The MAX7219 IC is widely used to control an 8x8 matrix of LED, but they can be chained to create much larger displays. This article describes how the chaining works, and how to create a driver for the Raspberry Pi Pico.
Categories: software development, C, embedded computing, Pico