BASICといえば、ある意味お約束のStarTrekのAPPLE-1用のBASICプログラムが、[AppleStarTrek_8k.txt]というファイル名で下記のWEBページで公開されています。
行数は思いのほか少なく90行程度です。
このページの下の方に、[Instructions retyped by Pete Turnbull]という簡単な説明文書がついているので、参考にするとゲームをすぐに楽しめそうです。
ダウンロードしたプログラムは、以下のように修正しました。
- ファイルの改行コードがUNIX系のLFのみになっていたので、CRLFに変更して保存した。
- 最初の行の[LOMEM = 768]をREMでコメントアウトした。
StarTrek GAMEプログラムの読み込み
プログラムは、\ref{sec:benchmark-1}節の[BASICプログラムの入力]で紹介した、TeraTermの[Send file…]の機能を使用する方法でBASICにロードするとよいでしょう。
BASICプログラムをロードし終わった直後の画面の状態を「StarTrekのBASICプログラムの読み込み」に示します。

プログラムがロードされていることを確認するためにLISTで表示(内容が素早くスクロールして表示されるので、雰囲気しか確認できませんが。)してみましょう。
表示結果を「StarTrekのBASICプログラムのLIST表示」に示します。
一瞬何が起きたかと思いましたが、APPLE-1の画面は40X24文字構成だったので、その画面用に調整して出力するようになっているのですね。
リストの表示幅が40文字になっていることと、画面の左端が行番号表示専用のフィールドになっていることで、意図的にリストを40行に合致するように調整して出力していることがわかります。

StarTrek GAMEの起動
それでは、RUNコマンドを入力してStarTrekゲームを起動して見ましょう。ゲームの初期化用の数値の入力が求められるので適当な数字を入力します。
いきなりコンディション:レッド!と出てますねえ。
ここはあせらず、まず、長距離センサーで周囲を確認してみました。表示結果を「StarTrekの長距離センサー」に示します。

次に短距離センサーで周囲を確認してみました。表示結果を「StarTrekの短距離センサー」に示します。
エンタープライズは<*>で、クリンゴン艦は+++で表示されています。

フェーザーをぶちかましてみましょう。表示結果を「StarTrekのフェーザーによる攻撃」に示します。
ドカーンと響き渡りました。
コンピューター、レポート!

もう一度、短距離センサーで周囲を確認してみました。表示結果を「StarTrekの短距離センサー」に示します。
クリンゴン艦は霧散していますね。このセクターの平和は回復されました。

StarTrekをプレイしていると、画面の左側に偏った表示で少しバランスが悪いなと思いましたが、よくよく考えてみると、APPLE-1の画面は40文字なので、それをに合わせた表示になっていたということですよね。
APPLE-1のプログラムを楽しむ際には、本来は以下に示すように、画面を40文字幅に設定すべきかもしれませんね。


他にも様々なBASICプログラムが公開されているので、各自お気に入りを見つけて楽しんでください。