LoginSignup
7
1

More than 1 year has passed since last update.

半導体不足時代のCollapseOS

Last updated at Posted at 2022-12-05

Z80-MBC2

シングルボードコンピュータのZ80-SBC2はROMとIO回路をATMELのATmega32に担当させ、後は、Z80CPU、128 kB RAM、74HC00を用意すれば完成する8ビットコンピュータです。
このZ80-MBC2で動作するOSには、8ビットCPU用DOSの、CP/M 3 、CP/M 2.2、QP/M 2.71やUCSD PascalだけでなくCollapse OSがあります。

Collapse OS

Collapse OSは、文明が崩壊した2030年にも動作可能なForthをOSに採用したコンピュータです。2019年10月7日にredditでその詳細が公開されます。

2020年から続くコロナ禍による、全世界的な半導体不足の時期に、2022年6月に改めてオンラインメディアのねとらぼで取り上げられました。

紹介されている動画では、ソースが公開されていない(?)ZX Spectrumでの動作が紹介されていましたが、日本でもおなじみのセガマスターシステムやセガメガドライブあるいはLegacyBIOSで起動可能なX86マシンでも動作可能です。

実は、エミュレータ上で動作する環境もありますので、windowsのWSL上でも動作確認できます。
ここでは、Collapse OS内蔵のエミューレータをLinux上でコンパイルして、動作させる方法を紹介します。

まず、コンパイルに必要な環境構築です。

$ sudo apt install -y make gcc libncurses5-dev

次に、Collapse OSをコンパイルするディレクトリを作成し、そのディレクトリでソースファイルをダウンロードします。

$ mkdir CollapseOS
$ cd CollapseOS
$ wget http://collapseos.org/files/collapseos-latest.tar.gz
$ tar xvf collapseos-latest.tar.gz

最後に、cvmディレクトリに移動して、エミュレータ―をコンパイルします。

$ cd cvm
$ make

コンパイルが成功すると、
./cos-grid
./cos-serial
./satage
の3つのエミュレータが生成します。

Collapse OSを起動

そのうち「stage」を実行すると、Collapse OSが起動します。

$ ./stage
Using blkfs blkfs
Collapse OS ok

Collapse OSのウィンドウで、例えば、「0 LIST」と入力すると、「MASTER INDEX」が表示されます。

Collapse OS ok
0 LIST
0 LIST
 1 MASTER INDEX
 2
 3 001 Useful little words       010 RX/TX tools
 4 020 Block editor              035 Memory Editor
 5 040 AVR SPI programmer        045 Sega ROM signer
 6 050 Virgil's workspace        060-199 unused
 7 200 Cross compilation
 8 210 Core words                230 BLK subsystem
 9 235 RX/TX subsystem           237 Media Span subsystem
10 240 Grid subsystem
11 245 PS/2 keyboard subsystem   250 SD Card subsystem
12 260 Fonts                     280-289 unused
13 290 Automated tests           300 Arch-specific content
14
15
16
 ok

Collapse OSはForthという言語をもとにしているので、Collapse OSのマニュアルだけでなく、Forth言語のマニュアルを参照して、プログラムすることができます。

例えば、「4+2」を計算したい場合、「4 2 + .」と入力したのち、エンターキーを押すと、答えの「6」と「OK」が表示されます。

4 2 + .
4 2 + .
6 ok
7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1