The Computer History Simulation Project が開発している SIMH は、 今は手に入らないレトロ・コンピュータを 実体験するには大変便利なシュミレータです。 私は執筆中の連載においても 良く活用しているのですが、 その連載の都合から SIMH の機能追加を試みざる得なくなりました。 このページに私が作業中の SIMH の改造について備忘録を残しておきます。
● SIMH のマニュアル
取り敢えず
SIMH
に関するマニュアルです。
その他にも、 ちょっとしたドキュメントがチョコチョコあります。
● SIMH による VAX-11/780 のエミュレーション
UNIX/32V をオリジナルの状態で動かすため、
VAX-11/780 のエミュレーションをする必要が出てきました。
困ったことに SIMH の VAX は
Micro VAX III
しかエミュレートできませんし、
更に UNIX/32V のディストリビューションテープは
RP0[456]
と
TE16
しかサポートしていません。
ということで、どうにかして SIMH で
VAX-11/780
のエミュレーションができるようにすることを決意しました。
SIMH はさまざまなレトロ・コンピュータをサポートしていますが、 そのソースコードは エミュレートを行う機種に依存するコードと 共通のコードがきれいに整理されています。 また、 "Writing a Simulator for the SIMH System" [PDF] という内部を解説した資料もあります。 なので 「機能追加は比較的楽なのでは?」 と私は考えました。(考えが甘かったかも知れない)
で、VAX-11/780 エミュレーションをサポートするための戦略ですが、、、
主要な課題は次の2つです。
● TM03/TE16 のサポート
結局 PDP-11 のエミュレータでの TE16 のサポートから着手することにしました。
理由はこっちの方が簡単そうに見えたから。(もちろん KA780 と比較しての話)
それに UNIX V7 もこのテープユニットをサポートしているので、
ほぼ完璧にエミュレーションができる PDP-11 を対象に、
SIMH の内部の勉強を兼ねて、
新しいデバイスを追加する作業をすることにしました。
詳細は こちら 。