Tachibana

Astéroric › マニュアル

Astéroric — マニュアル

Oric-1 48K 向け Asteroids 研究クローン · EUPL 1.2 ライセンス。このマニュアルはダウンロードからプレイ、そしてソースからのビルドまでを扱います。機能と技術は機能ページをご覧ください。

目次

1. ダウンロードと起動

  1. 最新の GitHub リリースを開き、Assets から asteroric.tap を取得します。同じファイルは dist/asteroric.tap にもバージョン管理されています。GitHub の画面からは Raw / Download ボタンを使い、HTML ページのリンクは使わないでください(HTML が落ちてきます)。
  2. 実機またはエミュレータの Oric-1 48K(BASIC 1.0 ROM)でロードします。.tap にはオートランフラグがあり、ロードと同時に HIRES モードとゲームが始まります。CLOADCALL も不要です。
  3. ジングルが流れ、デモ付きのタイトル画面が表示されます。SPACE でゲーム開始、K でキー設定を開きます。

CALL 1280 の後に ILLEGAL QUANTITY ERROR が出た場合、コマンドが自動実行のに入力されたということです。プログラムはすでに実行済みです。.tap をロードし直してください。

Phosphoric で

エミュレータ Phosphoric で、ROM basic10.rom の Oric-1 として asteroric.tap を高速ロードします。ソースからは make run ですべて行えます。make run-joy は矢印キーと RCTRL/RALT をエミュレートした IJK ジョイスティックに振り向けます。

2. キー

初期割り当て(矢印 + SPACE)。すべてのキーは ROM を経由せず、キーボードマトリクスから直接読み取られます。

キーアクション
左回転
右回転
推進(thrust
ハイパースペース — ランダムなテレポート、25 % の死亡リスク
SPACE発射(押しっぱなしで連射)。タイトル画面:開始。ゲームオーバー時:再プレイ
Kタイトル画面:キー設定
ESCゲームオーバー時:BASIC に戻る。CONTROLS 内:キャンセル

3. CONTROLS 画面

5 つのアクションを再割り当て

タイトル画面で K を押します。LEFT、RIGHT、THRUST、FIRE、HYPER のアクションが順に下線表示されるので、割り当てたいキーを押します。すでに使われているキーや文書化されていないマトリクス位置は拒否されます(ゲームはキー名を捏造しません)。割り当てのたびに発射音が鳴って確認できます。

キャンセル

ESC で入力を中断し、以前の割り当てを復元します。割り当ては RAM 上にあり、再ロードすると初期キーに戻ります。ESC とジョイスティックは再割り当てできません。

4. IJK ジョイスティック

対応インターフェース

Oric で最も普及している IJK ジョイスティックインターフェースはプリンタポートに接続します。Astéroric はこれを直接読み取り(VIA ポート A、PB4 ストローブ)、存在を検出します。インターフェースがなければ何も読みません。左右で回転、上で推進、下でハイパースペース、ボタンで発射。キーボードとジョイスティックは同時に有効です。

検証

物理インターフェースでのテスターのフィードバックを受けてプロトコルを書き直し(初版は不正確なエミュレータモデルを再現していました)、Oricutron に対して検証しました。Phosphoric も並行して修正されています。

5. ゲーム

目的

撃たれずに小惑星を破壊すること。大きな小惑星は 3 つに割れ、各破片はさらに 2 段階小さいサイズに割れます。画面が空になると、次のより多いウェーブが始まります。

円盤

大型円盤はランダムに撃ちます。小型円盤は自機を狙い、スコアとともに精度が上がり、35,000 点を超えると小型のみになります。ウェーブ終盤には再登場が早まります。

スコアと残機

画面上部に 7 セグメントの数字、残機アイコン(表示は最大 4 つ)、「WAVE n」。10,000 点ごとに残機追加、60,000 点まで。死亡後、自機は短時間無敵で再出現します。

ゲームオーバー

爆発、「GAME OVER」、そしてセッションの上位 5 位の表。5 秒後、SPACE で再プレイ、ESC で BASIC に戻ります(RESET ベクター経由のクリーンな復帰)。

6. ソースからビルド

git clone https://github.com/benedictemarty/oric-asteroids.git
cd oric-asteroids
make            # build/asteroric.tap
make run        # Phosphoric で起動
make check      # キャプチャ == ビット単位で一致する参照
make host-test  # x86 ホストテスト

前提条件:cc65 2.19 以上、Python 3、インストール済みの Phosphoric(パスは Makefile 内)。make gen_shipmake gen_shapes は頂点テーブルを再生成、make bench は 2,500 万サイクルをプロファイル、make clean は後片付けをします。

7. 互換性

機種状態
実機 Oric-1 48K(BASIC 1.0)動作 — RGB2HDMI で 50 Hz ビデオを検証、IJK を検証
Phosphoric 上の Oric-1正常(本プロジェクトの開発用エミュレータ)
Oricutron 上の Oric-1動作
Oric Atmos(BASIC 1.1)、実機・エミュレータとも動作しない — 互換性は今後対応

8. ライセンスと権利

オリジナルコード:EUPL 1.2

描画エンジン、入力、サウンドエンジンと再現した効果音、ゲームループの Oric 向け適応、HUD、タイトル画面、ビルド、テスト、ドキュメントは欧州連合公衆ライセンス v1.2 で公開されています。

Atari 由来の要素:対象外

ゲームロジック(状態機械、物理、破砕、円盤 AI、擬似乱数生成器、得点表)はアーケード ROM rev 4 の逆アセンブルから適応され、ベクター形状は ROM データに由来します。これらの要素について権利は一切主張しません(Asteroids、© 1979 Atari, Inc.、Atari Interactive, Inc. の商標)。非商用の研究・保存プロジェクトであり、Atari とは提携も承認も受けていません。それが Astéroric というタイトルの理由です。詳細はリポジトリの NOTICE.md を参照。

← Astéroric · 機能 →