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