Kevin Boone

Retrocomputing

The Gemini Protocol in 2026: growing, but still not setting the Internet aflame (Feb 2026)

The Gemini protocol has been around for over five years, but the world-wide web remains broken. This articles reviews what's changed for the better over the last five years -- and what hasn't.

Categories: general computing, retrocomputing

Predicting eclipses with clockwork (Dec 2025)

We're used to computing devices being electronic. But what can we do with a purely mechanical approach? This article looks at how eclipse prediction might have worked in the Antikythera Mechanism, c.2300 years ago.

Categories: retrocomputing, science and technology

Getting back into C programming for CP/M (Sep 2024)

This article is about how programming for CP/M, usng a 40-year-old C compiler, differs from modern C development, even for console applications.

Categories: retrocomputing, C, Z80

They don't make 'em like that any more: Borland Turbo Pascal 7 (Feb 2024)

Why half a million people learned to program in Pascal, when you'd think they had no earthly reason to.

Categories: TDMTLTAM, retrocomputing

Adventures with RC2014, Z80, and CP/M (Aug 2023)

This is a landing page for my various articles on building a period-appropriate CP/M system using the RC2014 bus.

Categories: Z80, retrocomputing

Designing a dual 5V-to-RS232 serial level converter for the RC2014 (Aug 2023)

Using an RC2014-based retrocomputer with genuine RS232 peripherals requires support for voltage level conversion. Although converter modules are inexpensive and widely available, I wanted to design something that would plug into an RC2014 backplane, just for neatness.

Categories: electronics, Z80, retrocomputing

CP/M resources (Jul 2023)

A landing page for my various CP/M articles and utilities.

Categories: Z80, retrocomputing

Adding a floppy disk controller to my RC2014 Z80 system (Jul 2023)

No 80s computer is complete without the chucka-chucka-chucka sound of a floppy disk drive doing its thing.

Categories: electronics, Z80, retrocomputing

Constructing and programming a YM2149 sound board my RC2014 Z80 system (Jun 2023)

An 80's-style 8-bit computer has to be cable of making 80's 8-bit sound. In this article I describe adding a sound board to my RC2014 system.

Categories: electronics, Z80, retrocomputing

Updating, building, and flashing RomWBW on an SC130 CP/M system (Jun 2023)

A step-by-step guide to building and installing a modified version of the RomWBW firmware on a CP/M Z80 board.

Categories: Z80, retrocomputing

Exchanging files between an SC130 CP/M board and a Linux system (Jun 2023)

This article describes a couple of methods for sharing data and code between a CP/M system with RomWBW BIOS and a Linux system.

Categories: C, electronics, Z80, retrocomputing

Some thoughts on a DS1302 real-time clock board for RC2014/Z80 and CP/M (Jun 2023)

Constructing and programming a real-time clock board for my Z80 CP/M system

Categories: C, electronics, Z80, retrocomputing

Using a CP/M machine to log into a Linux server using an RS232 connection (Jun 2023)

Because -- why not?

Categories: retrocomputing, Z80

Serial device mapping in CP/M (Jun 2023)

CP/M only recognized four serial devices. How did application cope when more than four serial ports were installed?

Categories: retrocomputing, Z80

The vexed problem of generating delays in a CP/M program (May 2023)

CP/M has no timing or delay functions, because CP/M never stipulated that compatible hardware have any kind of clock. So how do we implement short (fractions of a second) delays in a CP/M program?

Categories: retrocomputing, Z80

Is Collapse OS really a practical proposition? (May 2023)

Is it really possible to design an operating system for a computer built from scavenged parts after civilization has failed?

Categories: retrocomputing, Z80

Getting back into C programming for CP/M -- part 2 (May 2023)

Using the 1989 HI-TECH C compiler on CP/M, and some general observations about CP/M programming with real hardware.

Categories: retrocomputing, C, Z80

A self-contained CP/M computer based on the Z80 Playground (May 2023)

This article describes how to create a self-contained CP/M-based microcomputer using a Z80 single-board computer, a Raspberry Pi Zero, and some assorted electrical parts.

Categories: Z80, retrocomputing

How Microsoft Windows killed the palmtop computer (Jul 2022)

1999 was the golden year of palmtop computing. Within a couple of years, palmtops were obsolete. Why?

Categories: retrocomputing

cwordle -- A Wordle-like word-guessing game for CP/M (Feb 2022)

Building a CP/M implementation of the notorious Wordle game.

Categories: retrocomputing, C, Z80

Multi-source Z80 assembly programming for CP/M (Jan 2022)

How to use Microsoft's Macro80 and Link80 utilities on CP/M, to build a program consisting of multiple assembly-language files.

Categories: retrocomputing, Z80, assembly

Writing new interactive fiction games for CP/M using PunyInform and Linux (Jan 2022)

It's still possible to write text adventure games for CP/M and other small, vintage computers. Here is one approach, using Linux as the development platform.

Categories: retrocomputing, Z80

Back to BASICs with a Pro Micro microcontroller (Jun 2021)

Back in the 70s, desktop computers booted to BASIC. In this article, I describe my efforts to implement a BASIC programming environment on the SparkFun Pro Micro, a small Arduino-like 8-bit microcontroller.

Categories: general computing, retrocomputing, Arduino

Playing Zork 1 on a CP/M emulator on Linux (Jun 2021)

In the last few years there has been a revival of interest in 8-bit microcomputers from the 70s and 80s. Many of these were based on the Zilog Z80, and many ran CP/M. This article about getting started with CP/M using an emulator on Linux.

Categories: general computing, retrocomputing, Z80

JGemini -- a Java-based browser for Project Gemini protocols and content (Jun 2021)

Introducing a simple graphical browser for Project Gemini content; back to the 90s -- in a good way.

Categories: retrocomputing, Java

Using a Pi Zero and throw-away parts to provide a serial terminal for retrocomputing projects (Jun 2021)

Many retrocompting projects are designed to be used with a serial terminal. It's easy to emulate a terminal using a desktop workstation, but more authentic to use a dedicated serial terminal. Real VT52-style terminals are expensive, and difficult to transport because they use CRTs. VGA and small HDMI monitors, however, are dirt cheap, as are USB keyboards. This article is about using a Raspberry Pi Zero with a custom Linux to convert a cheap monitor and keyboard into a serial terminal.

Categories: Raspberry Pi, retrocomputing

Developing KCalc-CPM -- a scientific calculator utility for CP/M (May 2021)

My first CP/M program for nearly 40 years -- how, and why, I wrote it.

Categories: retrocomputing, C, Z80

CP/M forty years on -- what it was, and why it still matters (May 2021)

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

Categories: retrocomputing, Z80

Running CP/M on the Raspberry Pi Pico microcontroller (May 2021)

This article introduces CPICOM -- an emulator for CP/M 2.2 on the Raspberry Pi microcontroller.

Categories: retrocomputing, Pico, C, Z80

Can Project Gemini rewind the Web thirty years? (Mar 2021)

The modern World-Wide Web is broken. Is Gemini the repair?

Categories: general computing, retrocomputing

Reviving old keyboards for Arduino (Feb 2021)

Although connecting a USB keyboard to an Arduino-type microcontroller without addition hardware can be tricky, there are no such problems with many 90s keyboards. This article is about giving new life to old keyboards, by using them as input devices for microcontroller projects.

Categories: Arduino, embedded computing, retrocomputing

Why the fascination with retrocomputing? (Feb 2021)

Why do so many IT professionals like to tinker with vintage computers and software?

Categories: general computing, retrocomputing


Have you posted something in response to this page?
Feel free to send a webmention to notify me, giving the URL of the blog or page that refers to this one.