All Projects → hsoft → Collapseos

hsoft / Collapseos

Licence: gpl-3.0
Bootstrap post-collapse technology

Programming Languages

c
50402 projects - #5 most used programming language
forth
179 projects

Projects that are alternatives of or similar to Collapseos

z80count
A tool to annotate Z80 assembler with cycle counts
Stars: ✭ 28 (-99.34%)
Mutual labels:  asm, z80
msx diagnostics
Tool written in Z80 assembler to test the MSX hardware basics.
Stars: ✭ 34 (-99.2%)
Mutual labels:  asm, z80
zx-spectrum-games
Collection of ZX Spectrum annotated game source code dissasemblies as .skool files
Stars: ✭ 35 (-99.18%)
Mutual labels:  asm, z80
simplify
simplify 包含了一系列自我驱动学习的子项目。
Stars: ✭ 67 (-98.43%)
Mutual labels:  asm
RISVM
A low overhead, embeddable bytecode virtual machine in C++
Stars: ✭ 21 (-99.51%)
Mutual labels:  asm
Luffy
Android字节码插件,编译期间动态修改代码,改造添加全埋点日志采集功能模块,对常见控件进行监听处理
Stars: ✭ 347 (-91.86%)
Mutual labels:  asm
Codeguide
📚 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、点赞、分享)!
Stars: ✭ 6,750 (+58.34%)
Mutual labels:  asm
ronin-asm
ronin-asm is a Ruby DSL for crafting Assmebly programs and Shellcode.
Stars: ✭ 41 (-99.04%)
Mutual labels:  asm
Disasmo
VS2019 Add-in. Click on any method or class to see what .NET Core's JIT generates for them (ASM).
Stars: ✭ 380 (-91.09%)
Mutual labels:  asm
Pillman
Pillman boot sector game, a yellow thing eats pills and is chased by monsters.
Stars: ✭ 298 (-93.01%)
Mutual labels:  asm
SLAE
Example ASM code following SLAE course and exam assignments.
Stars: ✭ 36 (-99.16%)
Mutual labels:  asm
kick-c64-dead-test
Kick assembler personalized version of the C=64 rev. 781220 Dead Test + more
Stars: ✭ 24 (-99.44%)
Mutual labels:  asm
Expytableview
Make your table view expandable just by implementing one method.
Stars: ✭ 348 (-91.84%)
Mutual labels:  collapse
c64-game
A horizontal space shooter for Commodore 64.
Stars: ✭ 17 (-99.6%)
Mutual labels:  asm
Coobjc
coobjc provides coroutine support for Objective-C and Swift. We added await method、generator and actor model like C#、Javascript and Kotlin. For convenience, we added coroutine categories for some Foundation and UIKit API in cokit framework like NSFileManager, JSON, NSData, UIImage etc. We also add tuple support in coobjc.
Stars: ✭ 3,921 (-8.02%)
Mutual labels:  asm
zx-spec
A unit testing framework for Sinclair ZX Spectrum assembly
Stars: ✭ 32 (-99.25%)
Mutual labels:  z80
Androidautotrack
Android Asm 插桩 教学
Stars: ✭ 378 (-91.13%)
Mutual labels:  asm
tiny-wheels
一套基于原生JavaScript开发的组件库,无依赖、体积小、简单易用
Stars: ✭ 60 (-98.59%)
Mutual labels:  collapse
Doublelift
🦋 Expands and collapses a layout horizontally and vertically sequentially.
Stars: ✭ 343 (-91.95%)
Mutual labels:  collapse
Tiny Compiler
A tiny compiler for a language featuring LL(2) with Lexer, Parser, ASM-like codegen and VM. Complex enough to give you a flavour of how the "real" thing works whilst not being a mere toy example
Stars: ✭ 425 (-90.03%)
Mutual labels:  asm

Collapse OS

Bootstrap post-collapse technology

Collapse OS is a Forth operating system and a collection of tools and documentation with a single purpose: preserve the ability to program micro- controllers through civilizational collapse.

It it designed 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. Assemble itself and deploy to another machine.

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.

Git repository no longer updated

In the wake of my rejection of modern software and complexity, I've stopped using git to manage versioning in Collapse OS because I consider RCS to be sufficient. The commit adding this message is therefore the last I'm adding.

Further improvements of Collapse OS are available on Collapse OS' website as tarballs of the project including RCS metadata. Those tarballs are updated regularly.

Getting started

Documentation is in text files in doc/. Begin with intro.txt.

Collapse OS can run on any POSIX platform and builds easily. See /cvm/README.md for instructions.

Alternatively, there's also Michael Schierl's JS Collapse OS emulator which is awesome and allows you to run Collapse OS from your browser, but it isn't always up to date. The "Javascript Forth" version is especially awesome: it's not a z80 emulator, but a javascript port of Collapse OS!

Organisation of this repository

  • blk.fs: Collapse OS filesystem's content. See below.
  • cvm: A C implementation of Collapse OS, allowing it to run natively on any POSIX platform.
  • doc: Documentation.
  • arch: collection of makefiles that assemble Collapse OS on different machines.
  • 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: Tools for running Collapse OS in an emulated environment.
  • tests: Automated test suite for the whole project.

blk.fs

This file is a big text file containing the "real deal", that is, the contents of Collapse OS' filesystem. That filesystem contains everything that a post-collapse computer would manage, that is, all Forth and assembler source code for the tools it needs to fulfill its goals.

The Collapse OS filesystem is a simple sequence of 1024 bytes blocks. That is not very workable in the text editor of a modern system. blk.fs represents an "unpacked" view of that block system. Each block (16 lines max per block, 64 chars max per line) begins with a marker indicating the block number of the contents that follow.

Blocks must be in ascending order.

That file can be "packed" to a real blkfs with /tools/blkpack. A real blkfs can be "unpacked" to its text file form with /tools/blkunpack.

Status

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

Looking for the assembler version?

The Forth-based Collapse OS is the second incarnation of the concept. The first one was entirely written in z80 assembly. If you're interested in that incarnation, checkout the z80asm branch.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].