Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!

Jeff Epler Turns Two Adafruit Feather RP2040 Boards Into a Fully-Functional CP/M Microcomputer

With one handling the display and another the keyboard, this two-processor micro works entirely standalone.

Gareth Halfacree
2 years ago β€’ Retro Tech / HW101

Maker Jeff Epler has penned a guide to turning a pair of Adafruit Feather RP2040 boards into a Digital CP/M-compatible microcomputer, of sorts, complete with an HDMI display and USB keyboard β€” using a port of MockbaTheBorg's RunCPM emulator.

"This project uses two Adafruit Feather [RP2040s]. Why's that? Both the digital video output and the USB Host are implemented using the RP2040's powerful PIO [Programmable Input/Output] peripheral β€” but each task requires almost all of the chip's capacity in order to do so," Epler explains of the reason behind the two-board project design. "That made it necessary to split the project in half. One of the Feathers does the CPU and OS emulation plus the video signal generation. The other reads keystrokes and transmits them over a UART connection to the first board."

If you're looking for a compact way to play with CP/M, this two-Feather RP2040 build could be it. (πŸ“Ή: Jeff Epler)

Created by Gary Kildall in the 1970s and originally known as the Control Program/Monitor, Digital's CP/M was a highly influential operating system for mini- and microcomputers β€” to the point that its similarity to Microsoft's later MS-DOS became a bone of contention between the two companies. Recently re-released under a clarified open-source license by current rights holder Bryan Sparks, president of DRDOS, CP/M would once have required a fairly beefy computer β€” but now can run on a $4 microcontroller, in emulation.

Epler's CP/M host project uses two different variants of the Feather RP2040 development board, one with a USB Type-A port to act as a USB Host device for an external keyboard and the other with a HDMI-style socket carrying a DVI video signal β€” allowing it to be connected directly to any HDMI display. An Adalogger FeatherWing adds microSD card storage and a real-time clock, while a compact 5" HDMI display completes the build.

"After putting the project together," Epler writes, "you'll want to do something with it! There's a great deal of software for CP/M readily available on the internet. This guide will cover where to download some classic & modern CP/M software. With an assembler or a BASIC interpreter, you can even write your own new CP/M software right on the device."

The full guide is now available on the Adafruit Learn portal.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles