DEC VT端末を調べていたときに知ったオペレーティングシステム RT-11 を使ってみる。今回はこちらのサイトにあるブラウザ上で動作するPDP-11エミュレーターを使用した。
→ DEC PDP-11/45with VT100 Terminal | PCjs Machines
PDP-11/45は1972年初頭にDigital Equipment Corporationから発売された16ビットミニコンピューター。サイクルタイム 300ナノ秒 (3.33MHz)、最大124kワードのメモリーをサポートし、価格は4kワードのメモリーとテレタイプ付きで961万6千円(日本での定価)だった。シングルユーザーで使うにはもったいない性能や拡張性を有している。RT-11はPDP-11で動作する、対話型モニタープログラムを備えたシングルユーザー向けオペレーティングシステム。

コンピュートピア1977年5月号より。
エミュレーターのブートストラップROMを使った起動方法
まず、ページを開くと上にVT100端末画面、下にコンソールパネルが表示され、ブートストラップローダーが読み込まれた状態でスタートする。コンソールパネルの下の “RK0” の横にある “None” のドロップダウンリストを開いて “RT-11 v4.0” を選択する。”Load” ボタンをクリックして “Boot” ボタンをクリックする、もしくは、”Load” ボタンをクリックした後、端末から “BOOT RK” を入力してEnterキーを押すと、RT-11が起動する。ここから先は端末でキーボード入力によって操作していく。

この方法が最も手っ取り早いのではあるが、せっかくコンソールパネルがあるのに、全く使わないとは拍子抜けするだろう。
このエミュレーターはブートストラップローダーを持っているため自動でディスクからOSを読み込んで起動するが、PDP-11実機ではブートストラップローダーはオプション機能だった。ブートストラップローダーがない場合、コンソールパネルのスイッチでブートストラップローダーのプログラムを入力することでOSを起動できた。

Henk’s DIGITAL PDP-11 Computer Roomより。
コンソールパネルからの入力で起動する方法
以下、エミュレーター上ではスイッチのフリップ操作、押し操作ともにクリック1回でOK。
- 上記と同様、リストから “RT-11 v4.0” を選択して、”Load” ボタンをクリックする。
- ENABLE/HALTスイッチをフリップしてHALTにする。(エミュレーターではENABLE側のみ表示)
- スイッチレジスターからアドレス 001000(8進数)を2進数で入力して、LOAD ADDRスイッチを押す。
- データ(後述)を入力して、DEP (deposit) スイッチを押すと、そのアドレスにデータがセットされる。
- 4を繰り返してプログラムデータを入力する。
- アドレス 001000 を入力して、LOAD ADDRスイッチを押す。
- EXAMスイッチを押すと、セットされているデータがLEDに表示される。
- EXAMスイッチを押すたびに次のアドレスに進みながらデータが表示されるので、入力したデータに間違いが無いか照合する。
- アドレス 001000 を入力して、LOAD ADDRスイッチを押す。
- ENABLE/HALTスイッチをフリップしてENABLEにする。
- STARTスイッチを押す。
ブートストラップローダーは起動元のデバイス(メディア)によって異なる。このエミュレーターではRK11 (DECpack) ディスクを使用している。以下、RT-11 v4.0 Installation Manual (1981) に記載されているブートストラップローダーのアドレスとデータ。下の数字は8進数表記で、コンソールパネルでは2進数で入力する。
Address Data
001000 012700
001002 177406
001004 012710
001006 177400
001010 012740
001012 000005
001014 105710
001016 100376
001020 005007
次のスクリーンショットは最初のデータを入力してDEPスイッチを押すところ。

次のスクリーンショットはEXAMスイッチを押して最初のアドレスのデータ内容を確認するところ。

成功するとRT-11のグリーティングメッセージが表示された後、キー入力待機状態になる。
RT-11で使えるコマンド
コマンドは先頭から最短一致で探索されるため、ASSIGNはAS、DIRECTORYはDIRでも認識される。MS-DOSとの共通点が多いので、DOSを使い慣れている私にとっては把握しやすい。
- ASSIGN
- BOOT
- COPY
- DATE
- DELETE
- DIFFERENCES
- DIRECTORY
- DIRECTORY/BRIEF
- EDIT
- EXECUTE
- GT ON
- HELP
- INITIALIZE
- LOAD
- RENAME
- RUN
- SHOW
- TIME
- TYPE
- UNLOAD
ユーザープログラムの実行にはRUNコマンドを使う。エミュレーターには “Dungeon” というゲームが入っている。ゲーム歴史オタクの間で有名な元祖テキストアドベンチャー “Zork I” の元になったゲームらしい(商用化する際にDungeonが商標として使えなかったためZorkになった)。
RT-11を起動後、端末上でR DUNGEOを入力してEnterキーを押すと、ゲーム Dungeon を起動できる。
