Amateur Radio: AE9RB
The lingua franca of 70s and 80s personal computers. BASIC programs were widely distributed in books and magazines for users to type in. I wanted to get good at Rust so I wrote this as a compiler and process virtual machine. What started as a learning exercise turned into a preservation project.
This radio uses skywave propogation to make 7000 km contacts across the Pacific Ocean with only one watt of transmitted power. Imagine an LED or a candle blinking on your roof in the United States and someone in Australia decoding the message.
It uses a quadrature mixer to sample I/Q with a Delta-Sigma ADC/DAC and connects as a USB device. The radio has its own PC and Mac software written in C++. The Cypress PSoC was programmed in C and Verilog.
I sold this as a kit for a few years. Reviews are in the November 2013 issue of QST pg 57-59 and on eHam (alt).
Swift was new and lacking native libraries, so I created an OpenGL interface, math library, and image decoding library. Despite type annotating everything possible, the inference system hit a performance wall when I was about 80% done. It’s 100% done now. Apple later deprecated OpenGL from all its products.
This is a device radio operators use to send morse code. I forced myself to build it with thru-hole parts as an Arduino shield, which made the hardware expensive and software complicated. But it works perfectly with shaped sine waves and zero-lag.
The text adventures from Infocom ran on a VM called the Z-machine. Making it run on Palm simply required the entire VM to be implemented as a state machine.
For the Commodore 64. Create labels for your 5.25” floppy diskettes using the built-in graphics editor. The source and manual are lost to time, but this is a cracked copy that survived because of the warez scene.