Collapse OS Documentation Browser


asm/ code/ hw/ arch.txt avr.txt blk.txt bootstrap.txt cross.txt dict.txt dis.txt ed.txt emul.txt faq.txt grid.txt hal.txt impl.txt intro.txt me.txt primer.txt protocol.txt rsh.txt sega.txt selfhost.txt usage.txt

Introduction to Collapse OS

Collapse OS is a minimal operating system created to preserve
the ability to program microcontrollers through civilizational
collapse. Its author expects the collapse of the global supply
chain means the loss of our computer production capability. Many
microcontrollers require a computer to program them.

Collapse OS innovates by self-hosting on extremely tight resour-
ces and is thus (theoretically thus far) able to operate and be
improved in a world without modern computers.


This OS is a Forth. It doesn't adhere to any pre-collapse stand-
ard, but is pretty close to the Forth described in Starting
Forth by Leo Brodie. It is therefore the recommended introduct-
ory material to learn Forth in the context of Collapse OS.

If you don't have access to this book and don't know anything
about Forth, learning Collapse OS could be a rough ride, but
don't despair. There's a Forth primer in primer.txt.

Documentation and self-hosting

Collapse OS is self-hosting, its documentation is not, that is,
Collapse OS cannot read this document you're reading. Text
blocks could, of course, be part of Collapse OS' blocks, but
doing so needlessly uses blocks and make the system heavier than
it should.

This documentation is expected to be printed before the last
modern computer of your community dies.

Virgil's workspaces

When you explore the contents of Collapse OS' code, you'll
notice "Virgil's workspace" littered around. Those blocks are
of no importance to you directly, but they contain code that I
use myself while I work from within Collapse OS. 

They can provide great insights as to how tools are supposed to
be used.

Where to begin?

If you're reading this and don't know where to begin, you're 
likely to have access to a modern computer. The best place to
begin is to build the C VM of Collapse OS in /cvm. You can then
begin playing with it with the help of usage.txt and impl.txt.

When you're ready to move to real hardware, read hw/intro.txt.

Other topics in this documentation

* Dictionary of core Forth words (dict.txt)
* Editing text (ed.txt)
* Editing binary memory (me.txt)
* Assembling binaries (asm/intro.txt)
* Disassembling binaries (dis.txt)
* Emulators (emul.txt)
* Remote Shell (rsh.txt)
* Programming AVR chips (avr.txt)
* How to read the code (code/intro.txt)
* The Harmonized Assembler Layer (hal.txt)
* Cross-compilation mechanisms (cross.txt)
* Architecture management (arch.txt)
* Bootstrap Collapse OS to a new system (bootstrap.txt)
* Protocols (protocol.txt)
* Grid subsystem (grid.txt)
* Sega Master System ROM signatures (sega.txt)
* Self-hosting notes (selfhost.txt)
* Frequently asked questions (faq.txt)

Collapse OS and its documentation are created by Virgil Dupras and licensed under the GNU GPL v3.

This documentation browser by James Stanley. Please report bugs on github or to

This page generated at 2021-12-06 21:05:03 from documentation in CollapseOS snapshot 20211126.