Dr. Scott M. Baker Unveils NostOS, the Nostalgia Operating System, for RC2014 Microcomputers
Custom operating system includes CompactFlash support, run-time driver loading, and even "first-class" speech synthesis.
Vintage computing enthusiast Dr. Scott M. Baker has taken a break from hardware in order to develop an interesting piece of software: the Nostalgia Operating System, or NostOS, for the RC2014 family of do-it-yourself eight-bit microcomputers.
"Why implement a new operating system? Let’s face it, there’s already RomWBW and Fuzix for the RC2014, and if you’re not that ambitious, there’s plenty of options for running BASIC directly from ROM," Baker admits. "So why implement a new operating system? Well, I’ve always wanted to design my own operating system. Operating systems are often a product of the computers they were designed for. We have HDOS for the Heathkit H8 which is a really cool OS offering support for runtime loadable drivers. We have ISIS for 8080-based Intel development systems with its easily reassignable devices. Of course we have CP/M with its wealth of user applications. I’ve always wanted to design my own, and I could pull features from here and there."
NostOS, built with nostalgia in mind, is designed to be what today we might call an immutable operating system — in that it runs from a read-only memory (ROM) device. It was built with the RC2014 family of microcomputers in mind, and includes "robust support" for various serial and storage devices from the relatively modern (CompactFlash cards) to the unusual (bubble memory). Building on Baker's earlier projects, it also includes speech synthesis and text-to-speech as "first-class features" — while a key design goal to consider the OS ready for use is that it has to run the BASIC and Forth programming languages and be able to play Infocom's iconic Zork interactive fiction game.
The operating system was built around Baker's own version of the RC2014, an expanded microcomputer that includes a Zilog Z80 eight-bit processor, ACIA serial module, 512kB of ROM and 512kB of RAM, CompactFlash storage, a floppy drive, a speech synthesizer module, and a vacuum-fluorescent display (VFD) on its front — allowing it to display text directly, as well as over its serial connection. If the system is expanded in the future, NostOS is designed to support runtime-loadable extensions to drive additional hardware without the need to rebuild the OS and reflash the ROM.
An initial walkthrough of the operating system is available on Baker's blog, and in the video embedded above; more detail is promised to follow in future updates. Releases and source code, meanwhile, are available on GitHub under the permissive Apache 2.0 license.