パチンコ&アレンジゲーム


I/O 1980年6月号掲載。パチンコゲームとパチンコをベースにしたアレンジゲームを楽しむことができます。球の動きは本物の挙動とは違いますけど、それなりに楽しめると思います。

サポートされるエディタ

標準でサポートされるエディタはEmacsです。本家とは違い、VOS用にカスタマイズされたものです。Emacs LISPは使えませんが、カスタマイズは可能です。unformatted edit(通称edit)というワードプロセッサもプロダクツとして提供されており、購入してると利用可能です。やや重いですが、行選択などで反転表示してくれたり、わかりやすい操作性で愛用してる人も多かった印象です。インターネットが普及してから、公式のFTPサイトからフリーウェアなども利用でき、viも利用できました。

一応、line_editというラインエディタもありますが、これをメインで使うことはなく、シェルスクリプトに相当するコマンドマクロから呼び出して使うときに利用されます。また、PC性能がアップしてからは、PC側でソース編集をしてFTPでアップロードというやり方もできます。FTPサイトからSambaを入手して設定しておけばWindowsからエクスプローラ経由でアップロードも可能でした。

DEEP SCAN


I/O 1980年5月号掲載。セガのアーケードゲームを移植したもの。うまく移植されてると思います。当時、アーケードで遊んだ記憶がありませんが、見たことがあるくらいかな?

ファイルシステム

Stratus VOSには、いくつかファイル属性を持ってます。1回の読み書きで扱うデータを1レコードすると、レコード長が固定となる固定長ファイル、固定長にレコード番号を持つ相対ファイル、レコード前後にレコード長を持つシーケンシャルファイルがあります。また、パソコンのDOSやUNIX系ファイルと互換をとるためと思われるストリームファイルというものも存在します。特殊なファイルとして、プロセス間通信で使われるキューファイルもサポートされてます。プログラムのソースファイルには、シーケンシャルファイルかストリームファイルが使えますが、シーケンシャルファイルで作るのが一般的です。

ファイルにはキーをつけることができ、レコードの一部を使う組み込みキーをよく使われます。例えば、レコードを識別する通番や社員番号などの位置をキーにして、昇順に読み取ったり、ユーザー指定のキー内容で当該レコードを読み取ったりするのに使われます。この強力なキー機能により、データベースを使わなくても業務アプリの開発ができるので、使い勝手がいいです。トランザクション保護も使い込むと使えるのですが、自分の携わった業務では使わない方向で作られてました。

GUNDAM


マイコンゲームの本2に掲載。ガンダムの名前を使ってますが、アーケードゲームのコズミックゲリラのアレンジ移植です。ゲーム自体はなかなかよくできてると思います。

迷宮伝説

マイコンゲームの本4に掲載。迷路をうろついて武器を拾ってモンスターを倒していくゲーム。迷路を動いた軌跡を表示できるのは、MZ-80Bのラーメン入り三次元迷路みたいと思った。

サポートされるコンパイラ

Stratus VOSでサポートされるコンパイラ言語は、PL/I、COBOL、Pascal、Fortran、BASIC、Cが使えます。OpenVOSのサポートがあるとGNU C、C++も使えたと思います。自分が辞める時にはこの辺りが曖昧でしたので、実際にGNU関係は使ってませんでした。まあ、メジャーなツールはFTPで落としてコンパイルして使ってましたけどね。PL/Iはデフォルトでサポートされますが、他の言語は有償サポートだったと思います。C言語はソケットを使う上で必須なので、TCP/IPが普通に使われるようになってからインストールされてる可能性が高いと思われます。それ以外の言語はまず使われることがないと思われます。使えればかなりマニアックな環境と思います。最初に使ったマシンは、すべての言語と数多くのパッケージが入ってました。何らかの大人の事情で使えてるっぽかったけど、詳細は聞かずじまいだった。

何でPL/Iなんだ?って思いますけど、カーネルがPL/Iで書かれており、システム提供のAPI(s$・・・エス・ダラーで始まる名前のサブルーチン(関数)群)の引数受け渡しがPL/I言語でサポートされるデータタイプを持つので、プログラムを書くのに一番ストレスなくできます。他の言語でも受け渡しが出来るように言語拡張されてますので、どの言語で書いても問題ないです。生成されるオブジェクトもPL/Iが一番スマートだったと思います。

NEW TENNIS


マイコンゲームの本4に掲載。二人用で基本はPONGです。風車(*)を配置することができ、球は風車に当たると方向を変えます。ボールを受けそこなうとミスとなります。

Non Stop Computing

IT業種から離れて結構経つので思い出話でも。所属していた会社の社外秘には触れないように書きます。

約20年間ストラタスコンピュータ社(現ストラタステクノロジー)のフォルトトレラントマシンで開発を行ってました。引き合いに出されるライバルマシンはTANDEM社のマシンです。停止しては困るミッションクリティカルな業種で使われており、証券取引やクレジットカードのオンライン業務で活躍してました。Stratusの無停止技術は、ハード的に二重化していて、システム稼働中にボードを抜き差ししても動き続ける一風変わったシステムでした(当然二重化されてる双方のボードを抜けば止まりますが)。TANDEMのソフト的に障害復旧処理を記述しておかないとだめだったのに対してソフト的には何も特別な処理を必要としなかった点が面白かった。

最初に使ったマシンはモトローラ68000を搭載していて、当時携わったプロジェクトでのアプリケーションプログラムの5000ステップくらいのソースプログラムをコンパイルするのに20分くらいかかったりしてました。その後、Intel i860を搭載したマシンを使ったときは早くて感動したものです。今のご時世なら、ソースをコンパイルし、エラーを訂正してコンパイル・・・って感じに開発していくと思いますが、当時はソースリストを印刷してエラー修正を書き込んでおき、一気に直してコンパイル、コンパイルの間コーヒータイムって感じだったかな。作るプログラムは1本じゃないからコンパイル中に別のソース編集って感じでしたけどね。i860の後にPA-RISCマシンが出た辺りからはソースの印刷は、目が疲れて机上で確認するときくらいになっていったかな。
StratusのOSはVOSというMulticsから派生したUNIXみたいな独自OSでした。利用はシリアルケーブルを直結した端末か、telnet経由での端末での作業がメインとなります。シリアルケーブル接続時代は、端末はマシンルームにあり、デスクでソースを紙に書いて作成し、マシンルームにもっていって端末から打ち込み、コンパイルって感じだった。この時代にテストフェーズになると端末を複数利用して行うのですけど、端末の奪い合いになるので夕方に出社して夜中に作業、始発で帰るって日も結構ありました。今となっては、一人一台PCが与えられ、telnetで複数端末を立ち上げて作業が出来て快適になりましたけどね。

Stratusで会社のメインパッケージを作る前に、Sequioa SystemのUNIXマシンを使ったことがあります。このマシンもフォルトトレラントマシンでした。それと、辞める前の数年間はTANDEM・・・後のNonStop Serverも使って開発をしてました。当時、ヤフオクにNonStop Serverが出品されて内輪で話題になりまして、結局hpの中の人が落札して使える部品を確保したとかという話を聞いたような聞かないような。

WATER GATE2


PiO 1985年7月号掲載。よくある上から障害物が降ってきて避けるゲームなのだが、どのキャラを避けてどのキャラを捕まえればいいのか説明がないので試行錯誤して楽しむといいかも。