Copal Linux Operating system
One Alpine installer. Many targets. An SD card for a Raspberry Pi, a UEFI disk for a PC, or a virtual machine under UTM on an Apple Silicon Mac — the same eighteen stages, whichever medium you point them at.
Electrical engineer · www.paulricheson.com · github.com/vonglurt
Systems, silicon, signals and software — and the things I build with them.
Paul Richeson is an electrical engineer whose working life began at a refinery and a power company and has since run through the data center: the deployment and lifecycle management of software applications, from first install to retirement. From there the work reaches outward into software architecture, CPU architecture and FPGA design, and down to the physics underneath — high-frequency radio communication, the propagation of electromagnetic signals, and digital signal processing. This site collects what he builds on his own time: an operating system and its tools, instruments that read the physical world, and games, both new and very old.
| Area | What it covers | On this site |
|---|---|---|
| Data centers | Operations of production computing; keeping a fleet observable and recoverable | Copal fleet tooling, Orrery, copal-tm |
| Software lifecycle | Deployment, packaging, release and retirement of applications | The Copal installer; releases on crates.io |
| Software architecture | Layered, source-pluggable systems with one read model | Orrery, Static Stream, TrendCatcher |
| CPU architecture | Instruction sets and machines, down to 8-bit | ASCITTY and UR FINKEL on the Commodore Plus/4 |
| FPGA design | Digital logic in programmable hardware | — |
| RF and propagation | High-frequency radio communication; how electromagnetic signals travel | — |
| Signal processing | Measurement, spectra, and error-correcting codes | RadBeeper's spectrogram; Static Stream's Reed–Solomon codes |
One Alpine installer. Many targets. An SD card for a Raspberry Pi, a UEFI disk for a PC, or a virtual machine under UTM on an Apple Silicon Mac — the same eighteen stages, whichever medium you point them at.
An instrument panel and a process browser, in one terminal window. The task manager for Copal Linux's full install. One Rust crate, zero dependencies.
The Copal fleet's console: the wall, the seat, and the verbs. A web console, a full-screen terminal seat, and a native museum interface — three faces on one read model, served by the warden. Zero dependencies, Rust.
A stream stopped in a file, and let go again. A stream written into a .sstr file with its order, its pace and its tolerance for damage intact — protected by Reed–Solomon codes and parity, checkpoints signed with your SSH key.
Art nouveau and old star charts, put on a keyboard. diinki's Linux Antiquity theme, distilled for Copal Linux: no systemd, no GPU required, and every part reachable without a mouse.
See what your Geiger counter is counting. Keep a record of it, and put it on a web page. For the GQ GMC-320 Plus, on Linux.
Bird and sky capture for the Raspberry Pi HQ Camera. An IMX477 on a Compute Module 4, driven properly: metered auto-exposure that holds through a changing sky, quality gates, and a storage cascade that runs until the last disk fills.
It's a crab mining game. Run a crew of robot crabs on the sea floor: scout for metal, drill it, smelt it in lava, and sell it up to the surface for crab profit. The sea behind this page comes from it.
A raytraced city, made of typeable characters. Rendered in real time on a colour terminal and on a Commodore Plus/4 — and a taxi game inside it.
An entire RPG in one HTML file. Combat engine, world map, NPC dialogue, quests, saves, hundreds of monsters and eight acts of story. No server, no build step, no install.
The ship got built. Team Yodacon revives ConEx, the 1997 Escape Velocity plugin, and expands it into a commodity-trading game with a landing sequence driven by real reentry-heating physics.
The Royal Game of Ur, for the Commodore Plus/4. The oldest playable board game, on an 8-bit computer. Play it in your browser: a Plus/4 boots inside the page and runs the game.
The third generation of the same little space war. A Go and Ebitengine port of konex — itself a 2005 C++/OpenGL remake of ConEx, the 1997 Escape Velocity plugin. Team deathmatch with twelve ships, plus one recovered from 1997.
ConEx, ported to the PC. Joshua Bussdieker's 2005 C++/OpenGL remake of ConEx, the 1997 Escape Velocity plugin — the middle generation between ConEx and Gonex.
The meme stock zeitgeist engine. A layered Node.js engine that aggregates r/wallstreetbets attention and congressional-trade disclosures into a ranked, terminal-styled pick list. Source-pluggable, and brutally honest.
A PDP-11, soldered together. A simulator of DEC’s 16-bit minicomputer, the machine Unix and C grew up on, built by hand on the bench.
A 1984 Commodore, back on the bench. Repairing a Commodore Plus/4, the 8-bit machine that ASCITTY and UR FINKEL are written for.
What’s worth playing on a 6502. A running log of games played on Commodore machines, the Commander X16 and other 6502 computers: the game, the machine, and a short review of each.
github.com/vonglurt (Personal projects) · github.com/copallinux (Copal Linux) · github.com/yodacon (Team Yodacon) · github.com/crabminer (Crabminer)
This is the text-only version of www.paulricheson.com, laid out for printing. Every project has a page of its own there, with pictures.