Winter is coming and Collapse OS aims to soften the blow. It is a z80 kernel and a collection of programs, tools and documentation that allows you to assemble an OS that can:
Run on minimal and improvised machines.
Interface through improvised means (serial, keyboard, display).
Edit text files.
Compile assembler source files for a wide range of MCUs and CPUs.
Read and write from a wide range of storage devices.
Replicate itself.
Additionally, the goal of this project is to be as self-contained as possible. With a copy of this project, a capable and creative person should be able to manage to build and install Collapse OS without external resources (i.e. internet) on a machine of her design, built from scavenged parts with low-tech tools.
Status
The project lives on github https://github.com/hsoft/collapseos [github.com] and is progressing well! Highlights:
Self replicates: Can assemble itself from within itself, given enough RAM and storage.
Known to run on:
A RC2014 through a serial link. It can also have a PS/2 keyboard directly plugged in.
A Sega Master System or a MegaDrive (Genesis) with video output and D-Pad input and/or a PS/2 keyboard adapter.
Has a shell that can poke memory, I/O, call arbitrary code from memory.
Can read SD cards.
Has a text editor modeled after UNIX's ed.
Compact:
Kernel: 2700 SLOC. binary size varies wildly. Generally around 3K.
zasm: 5K binary, 2400 SLOC, 8K RAM usage to assemble kernel or itself.
ed: 1K binary, 500 SLOC.
Extremely flexible: Kernel parts are written as loosely knit modules that are bound through glue code. This makes the kernel adaptable to many unforseen situations.
Built from a GNU environment with minimal tooling: only libz80 is needed.
An exciting roadmap! https://collapseos.org/roadmap.html [collapseos.org]