1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-11-05 08:40:54 +11:00
Mirror of CollapseOS
Go to file
Virgil Dupras 838548843e boot: apply BIN( to stray stable ABI references
With cross compiling and IMMEDIATE words, things get icky with stable
ABI references. For the same reason that EXIT, (br) and (br?) need to
stay at stable offsets, these word references will not have BIN(
properly applied at Inner core xcomp.

The solution for now is to adjust during EXECUTE, which is ugly and
inefficient, but I don't see a better solution right now.
2020-04-28 08:52:47 -04:00
blk boot: apply BIN( to stray stable ABI references 2020-04-28 08:52:47 -04:00
emul Add [IF] .. [THEN] 2020-04-28 08:28:59 -04:00
fonts sms/vdp: use fonts from kernel/fnt 2020-01-07 22:15:35 -05:00
recipes recipes/trs80: wip 2020-04-28 07:51:41 -04:00
tests Give CASE's default branch access to its input value 2020-04-27 20:44:21 -04:00
tools recipes/rc2014/selfhost: add verification instructions 2020-04-27 09:24:40 -04:00
.gitignore cfspack: make into a library 2019-12-31 13:57:52 -05:00
.gitmodules Move "emul" folder to root 2019-12-31 13:34:24 -05:00
.travis.yml Add travis support 2019-10-30 19:12:02 -04:00
CONTRIBUTING.md Add CONTRIBUTING.md (#53) 2019-10-18 15:50:38 -04:00
COPYING Re-license to GPLv3 2019-05-08 20:18:05 -04:00
README.md Move notes.txt in blk 2020-04-14 14:54:42 -04:00
runtests.sh Add /tools/slatest 2020-04-02 23:20:47 -04:00
TRICKS.txt basic: add a print cmd 2019-11-18 13:40:23 -05:00

Collapse OS

Bootstrap post-collapse technology

Collapse OS is a z80 kernel and a collection of programs, tools and documentation that allows you to assemble an OS that, when completed, will be able to:

  1. Run on minimal and improvised machines.
  2. Interface through improvised means (serial, keyboard, display).
  3. Edit text files.
  4. Compile assembler source files for a wide range of MCUs and CPUs.
  5. Read and write from a wide range of storage devices.
  6. 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.

Forth reboot in process

You are currently looking at the forth branch of the project, which is a Forth reboot of Collapse OS. You can see why I'm doing this in the related github issue.

Documentation is lacking, it's not ready yet, this is a WIP branch.

See it in action

Michael Schierl has put together a set of emulators running in the browser that run Collapse OS in different contexts.

Using those while following along with the User Guide is your quickest path to giving Collapse OS a try.

Documentation

Usage documentation is in-system. Run 0 LIST for an introduction. You can also open blk/000 in a modern text editor.

See /emul/README.md for getting an emulated system running.

Organisation of this repository

  • forth: Forth is slowly taking over this project (see issue #4). It comes from this folder.
  • recipes: collection of recipes that assemble parts together on a specific machine.
  • blk: Collapse OS filesystem's content. See 000 for intro.
  • doc: User guide for when you've successfully installed Collapse OS.
  • tools: Tools for working with Collapse OS from "modern" environments. For example, tools for facilitating data upload to a Collapse OS machine through a serial port.
  • emul: Emulated applications.
  • tests: Automated test suite for the whole project.

Status

The project unfinished but is progressing well! See Collapse OS' website for more information.

Discussion

For a general discussion of Collapse OS and the ecosystem of technologies and ideas that may develop around it refer to r/collapseos

A more traditional mailing list and IRC (#collapseos on freenode) channels are also maintained.