Image: PDP-11エミュレーターでRT-11 (OS) を動かしてみる

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で動作する、対話型モニタープログラムを備えたシングルユーザー向けオペレーティングシステム。

Image: PDP-11 family
コンピュートピア1977年5月号より。

エミュレーターのブートストラップROMを使った起動方法

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

Image: PDP-11/45 emulator

この方法が最も手っ取り早いのではあるが、せっかくコンソールパネルがあるのに、全く使わないとは拍子抜けするだろう。

このエミュレーターはブートストラップローダーを持っているため自動でディスクからOSを読み込んで起動するが、PDP-11実機ではブートストラップローダーはオプション機能だった。ブートストラップローダーがない場合、コンソールパネルのスイッチでブートストラップローダーのプログラムを入力することでOSを起動できた。

Image: PDP-11/45 front switches
Henk’s DIGITAL PDP-11 Computer Roomより。

コンソールパネルからの入力で起動する方法

以下、エミュレーター上ではスイッチのフリップ操作、押し操作ともにクリック1回でOK。

  1. 上記と同様、リストから “RT-11 v4.0” を選択して、”Load” ボタンをクリックする。
  2. ENABLE/HALTスイッチをフリップしてHALTにする。(エミュレーターではENABLE側のみ表示)
  3. スイッチレジスターからアドレス 001000(8進数)を2進数で入力して、LOAD ADDRスイッチを押す。
  4. データ(後述)を入力して、DEP (deposit) スイッチを押すと、そのアドレスにデータがセットされる。
  5. 4を繰り返してプログラムデータを入力する。
  6. アドレス 001000 を入力して、LOAD ADDRスイッチを押す。
  7. EXAMスイッチを押すと、セットされているデータがLEDに表示される。
  8. EXAMスイッチを押すたびに次のアドレスに進みながらデータが表示されるので、入力したデータに間違いが無いか照合する。
  9. アドレス 001000 を入力して、LOAD ADDRスイッチを押す。
  10. ENABLE/HALTスイッチをフリップしてENABLEにする。
  11. 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スイッチを押すところ。

Image: PDP-11/45 emulator

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

Image: PDP-11/45 emulator

成功すると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
  • PRINT
  • RENAME
  • RUN
  • SHOW
  • TIME
  • TYPE
  • UNLOAD

ユーザープログラムの実行にはRUNコマンドを使う。エミュレーターには “Dungeon” というゲームが入っている。ゲーム歴史オタクの間で有名な元祖テキストアドベンチャー “Zork I” の元になったゲームらしい(商用化する際にDungeonが商標として使えなかったためZorkになった)。

RT-11を起動後、端末上でR DUNGEOを入力してEnterキーを押すと、ゲーム Dungeon を起動できる。

Image: PDP-11/45 emulator


※コメント欄が表示されない場合はdisqusについてJavascriptが有効であることを確認して下さい。コメントはスパム防止フィルターによる承認制のため、投稿してもすぐに反映されない場合があります。

管理人 : Akamaki (akm)

は、PCとVTuberに夢中になっている電気技術者です。

私はレトロコンピューティングの愛好家ですが、そのようなリグはもう収集していません。

私の活動はトップページで見ることができます。読んでくれてありがとう!