ZEPLISいろいろメモ

開発当時の資料が全く残ってないので、当時のPiOを見ながらデータを書き写したり、思い出話を(思い出した都度)書いていきます。


ZEPLISシリーズのプログラムデータ(テープイメージ) や、操作方法等については、紅茶羊羹様のZEPLISシリーズ ダウンロードページをご覧下さい。



GENOSS(ジェノス) PiO 1984年10月号

スタート番地 $A000

A000-A01E イニシャライズ1(ハイスコア)
A022-A095 イニシャライズ2(スコアetc. タイトル表示ルーチンへ)
A099-A0EF イニシャライズ3(弾数etc.)
A0F4-A14A タイトル表示
A151-A192 メインルーチン
A199-A208 キー入力及びGENOSS座標移動
A20C-A26F GENOSSのミサイル座標セット
A273-A28C GENOSS書き込み
A290-A2EE GENOSS読み込み
A2F2-A37F 星スクロール
A383-A3BD GENOSSのミサイル書き込みおよび移動
A3C1-A57D 敵書き込みおよびパターンセレクト
A581-A61D GENOSSが壊れるとき
A622-A646 GENOSS爆発音
A64A-A725 敵の読み込みおよびスコア加算
A729-A73F 敵ミサイル座標セット
A743-A768 敵ミサイル書き込み
A76F-A7E6 50点加算およびハイスコアとの比較
A7EA-A804 GENOSSビーム発射音
A808-A835 GENOSSビーム数減らす
A839-A855 GENOSSビーム数増やす
A859-A898 PARSECTION表示
A89B-A8B1 面数インクリメント
A8B5-A8F2 マシラヒ移動および書き込み
A8F6-A911 マシラヒ読み込み(GENOSSに当たったか)
A912-A9E8 マシラヒを取った後の処理
A9EC-AA36 ハイパー攻撃時のギザギザの書き込み

・$A188番地の数値を変えることによりゲーム全体のスピード変更可能
・MZ-80K/C用で、MZ-700/1500の場合は一部ダンプリストの変更が必要
・10機編隊の敵を自機「GENOSS」の連射ビームでやっつけるゲーム
・ビーム残数がなくなると連続発射できなくなる。敵をやっつけるとビームが1発増える。
・マシラヒを取るとハイパー攻撃(当たり判定のあるギザギザの棒が出る)や無敵になる。
・マイコンは持ってなくて、部室にあったMZ-80K2を使って放課後にプログラムを作ってました。たしかK2はリセットボタンがないので電源を切るしかなく、暴走するとアセンブラ等のロードからやり直しで ヽ(`Д´)ノ ウワァァァン となった記憶です。どうにかロードすることなくリセットできないかと、電源スイッチを短時間で切入するなどいろいろ試しましたが、うまくいったことはない記憶です。(笑)
・他には確かPC-8001が部室にありました。「オリオン」(だっけか?)という3Dシューティングゲームにはまった記憶です。



ZEPLIS(ゼプリス) PiO 1985年2月号

スタート番地$9E00

9E00-9EF4 タイトル・メッセージ表示他
9EF5-9F55 イニシャライズ
9F56-9FBA メインルーチン
9FBB-9FCF 画面クリアルーチン
9FD0-A028 星移動・書き込み@
A029-A062 星移動・書き込みA
A063-A110 キー入力、ファイター移動
A111-A13B ファイター書き込み
A13C-A1BF ビーム発射
A1C0-A1EB ファイター読み込み
A1EC-A2D0 ファイター爆発、ゲームオーバー
A2D1-A2E9 ファイター残り表示
A2EA-A3E8 ビーム移動・書き込み・当たり判定
A3E9-A405 ビーム発射音
A406-A41C 3×3キャラクタ書き込み
A41D-A51F ZEPLIS移動・書き込み@
A520-A622 ZEPLIS移動・書き込みA
A623-A657 2×2キャラクタ書き込み
A658-A67E 敵爆発パターンセット
A67F-A6F0 敵爆発パターン書き込み
A6F1-A76A SULPAG移動・書き込み
A76B-A80D LOOPER移動・書き込み
A80E-A895 100点加算およびハイスコアとの比較
A896-A8F0 アルゴリズム
A8F1-AB8E 敵母艦出現・爆発他
AB8F-ABA3 時間待ち
ABA4-ABF9 メッセージプリント
ABFA-AF77 チャレンジングステージ
AF78-AFA9 マシラヒ出現

・$9F2F番地はゲーム全体のスピード(デフォルト0C)
・$9F1C番地はファイターの数(デフォルト04)
・$9EC5番地はゲーム説明のスクロールの早さ(デフォルト80)

・2つのキーを同時に押すと無敵になる隠しコマンドあり(ただしビームは出ない)
・7ステージ×9パーセク=63ステージ
・前年にアーケード用シューティングゲームとしてヒットしたナムコのギャプラス(GAPLUS)を見て、こんなゲームをマイコンで作れたらなあと考えたのがきっかけです。前作GENOSSで出来なかった色々な要素を取り込みました。
・ステージの最後に敵母艦が登場するというパターンは、当時のシューティングゲームの王道でした。
・30数年も経ってるのにまだ覚えておられる方がいらっしゃり、拙作ゲームを遊んでいただけるのはこの上ない幸せです。ありがとうございます。ZEPLIS含め、全て逆アセンブル・改造など自由に改変・公開していただいて構いません。



ZEPLISU(ゼプリス2) PiO 1985年7月号

V スタート番地$A500

A500-A52C MZ-80か700か判定
A52D-A576 ファイターが動くデモ
A577-A5A3 タイトル「ZEPLISU」表示
A5A4-A5CE ノイズ音
A5CF-A5F4 ゲームの説明表示
A5F5-A696 イニシャライズ
A697-A70C メインルーチン
A70D-A721 CLSルーチン
A722-A735 WAITルーチン
A736-A73E 長い時間待ち
A73F-A797 奥の星移動
A798-A7D1 手前の星移動
A7D2-A867 キー入力・移動
A868-A887 ファイター書き込み
A888-A902 ビーム発射
A903-A9BF ファイターPEEK,音,ゲームオーバー
A9C0-A9E0 残りシールド表示
A9E1-AA21 ビーム移動、書き込み
AA22-AA92 ビーム当たり判定
AA93-AAB5 ビーム発射音
AAB6-AB50 MUSICルーチン
AB51-AC8B ZEPLIS移動、書き込み
AC8C-ACB2 敵爆発パターンセット
ACB3-AD24 敵爆発パターン書き込み
AD25-ADAA SULPAGルーチン
ADAB-AE7C LOOPERルーチン
AE7D-AF09 100点加算、ハイスコアとの比較
AF0A-AF20 ハイスコア、ネーム呼び出し
AF21-AF2A ハイスコアデータ
AF2B-AFB6 敵出現コントロール
AFB7-B054 マシラヒ出現、ブラスター選択
B055-B097 ブラスター時間カウント
B098-B0E0 PUT@ルーチン
B0E1-B1C0 敵弾セットルーチン
B1C1-B227 敵弾WRITEルーチン
B228-B298 アステロイドリング
B299-B2E3 LOOPERミサイル
B2E4-B309 肉弾ファイター
B30A-B332 ムテキ
B333-B34E アンシューター
B34F-B3A0 EXTEND
B3A1-B44F 母艦@
B450-B4FE 母艦A
B4FF-B5C9 FLUSH
B5CA-B6E7 ZEPLIASTORM
B6E8-B77A ハイスコア入力
B77B-B7FF メッセージその他

・発射キー押したままでリピート発射
・敵の弾は16方向。
・割り込み機能を使ったMUSICルーチンで音楽を鳴らしました
・タイトル表示のときに出るノイズ音は直接音声出力ポートに書き込んでいます。かっこいいタイトル表示を目指して、波動エンジン始動みたいな音を出したくて…
・音声をテープから読み込んでデータにして、再生するなんてこともした記憶がありますが、データが膨大になるので使えませんでした
・前に進みながら撃つと、自分の弾に当たってしまうバグがあった記憶です。(確かインクリメントを1つ余分に入れてしまったような微かな記憶が…)
・ランダムなキャラクタを高速で表示させて爆発を表現したつもりだったのですが、画面がバグっているように受け取られたかもしれません




ZELBUS(ゼルバス) PiO 1985年11月号


スタート番地$9D00

・敵の弾の方向は360°無段階で自機を狙うようになりました。
・地上の特定の場所を対地ガンで撃つと1UPキャラが出現。場所はどこだか忘れましたが、森とか水のある地形だったような。
・ナムコ「ゼビウス」(1983年)のようなゲームをいつか作りたいという思いを実現しました
・多少、左右にもスクロールします。タイトーのジャイロダインの影響があったかも
・MZのキャラクタには人型があります。当然これは撃つと何か反応がないと駄目だよねと思い、セリフを入れました。
・ZEPLISシリーズのシューティングゲームはすべて、VRAMに直接書き込んで当たり判定等を行い、ウェイトを入れたあと全クリアして再び書き込み、の繰り返しです。キャラクタが移動したときに移動前を1つづつ消去するのではなく、VRAM全部クリアして再度、新たに順次書き込むことにより、画面上のキャラクタが多くなっても速度低下を最小限にしたんだと思います。仮想VRAMに書き込んでから転送すれば画面のチラツキを抑制できたかもしれませんが、速度的・容量的にそれが厳しかったような記憶です。ただし、ZELBUSでは左右にもスクロールさせる関係上、地形だけは仮想VRAMに展開したあと転送させました。あと、VRAMにアクセスするとノイズが出るのが、MZ-80の特徴(欠点?)でした。
・話は変わりますが、他にMZ-80/700のPiO投稿ゲームの中で印象に残っているのは、「馳(ハセル)」でした。ユニークな画面デザインのセンスや、キャラクタの動きなどがズバ抜けてた、すごいゲームでした。途中でHP回復のためドリンクを飲むのですが、その時の「間」が最高に味わい深かった記憶です。
・また話は変わりますが、PiO投稿作品では冒頭にちょっとしたゲームのストーリーを書くのが標準?な雰囲気だったので、私も最初に投稿したGENOSSから「オレは…感じていた」的なストーリーを書いてみました。だんだん調子に乗って長文化し、当時PiO紙面でも特異な電波を放っていたのでは?と今気づいても後の祭り。でもこの中2病感あふれつつも、昔を思い出しながらMZの世界に浸るのに良いではないか?とも思えるストーリーを、ダウンロードページにわざわざ記載して下さった紅茶羊羹様のお心遣いに感謝です。



ZELDIS(ゼルディス) PiO 1986年2月号



スタート番地$A300

A300-A352 MZ-80か700か
A353-A38F タイトル表示
A390-A3D8 イニシャライズ
A3D9-A442 メインルーチン
A443-A463 仮想VRAMクリア
A464-A473 時間待ち
A474-A47B 長い時間待ち
A47C-A498 仮想VRAM→VRAM
A499-A552 自動キー入力
A553-A584 自機WRITE
A585-A5A9 自機PEEK
A5AA-A62B 自機爆発、ゲームオーバー
A62C-A642 (X,Y)→VRAMアドレス
A643-A65E 乱数発生
A65F-A6BF 地形発生、スクロール
A6C0-A707 星イニシャライズ
A708-A755 星WRITE
A756-A794 ミサイル・キー入力
A795-A7F1 ミサイルWRITE
A7F2-A850 ビーム・キー入力
A851-A883 ビームWRITE
A884-A902 カラーPUT@ルーチン
A908-A94E 音出し
A94F-AB41 空中敵移動、WRITE
AB42-ABC4 空中敵中イニシャル
ACB5-ABE4 2×2 PEEK
ABE5-AC0C 小爆発パターンSET
AC0D-AC52 小爆発パターンWRITE
AC53-AC8D ミサイル・ビームPEEK
AC8E-AF0D 地上敵移動WRITE
AF0E-AF2D 4×4 PEEK
AF2E-AFD1 地上敵イニシャル
AFD2-AFF7 大爆発パターンSET
AFF8-B033 大爆発パターンWRITE
B034-B0B9 敵の弾SET
B0BA-B161 敵の弾WRITE
B162-B191 PSETルーチン
B192-B1BC 変形キー入力
B1BD-B2E3 ゼルディスT〜V
B2E4-B462 グレートゼルディス
B463-B477 グレートゼルディス・ビームセット
B478-B49C グレートゼルディス・ビームWRITE
B49D-B55A みどりくん
B55B-B5F4 敵出現コントロール
B6F5-B6F6 メッセージ表示
B6F7-B712 空中敵イニシャライズA
B713-B798 スコア
B799-B7E7 マシラヒWRITE
B7E8-B7F6 自機残り表示


・$A52F番地は変形スピード(デフォルトは06)
・$A665番地は地形スクロールスピード(デフォルトは08)
・$AB56番地は編隊を組んでる敵の数(デフォルトは06)
・$B190番地は敵の弾の色(700,1500のみ)(デフォルトは60)
・$B1D2番地はゼルディスT〜Vの移動スピード(デフォルトは03)
・$B701番地は空中敵出現数(デフォルトは0A)


・明らかに1985年5月に発表されたコナミのアーケードゲーム「グラディウス」をパクったにインスパイアされた、横スクロールシューティングです。
・グラディウスや、さらにその前の「スクランブル(1981年 コナミ)」のように、地形を迷路のように複雑にしたかったのですが、データ容量的に限界だったんだと思います。
・この頃、ようやく自分のマイコンを購入したんだと思います。(いや、よく考えればMZ-80/700の動作確認をしていたはずなので、もっと以前だったかも…) プロットプリンタ付きの中古のMZ-731でした。だからMZ-700ではカラー表示にできたんだと思います。
・弾の方向は360°無段階、セミグラフィックを使うことにより滑らかになっりました。
・メモリ不足(オンメモリでアセンブルしてるため)のためMUSICルーチンを入れられませんでした。




ZEPLISV(ゼプリス3) PiO 1986年6月号



・スタート番地$A900

A900-A943 MZ-80か700か
A944-A981 右側の表示
A982-AA31 タイトル表示
AA32-AA6E イニシャライズ
AA6F-AADF メインルーチン
AAE0-AAF3 画面クリア
AAF4-AB06 WAITループ
AB07-AB1F (X,Y)→VRAM
AB20-AB94 ファイター キー入力・移動
AB95-ABBB ファイターWRITE
ABBC-AC38 カラーPUT@ルーチン
AC39-AC50 乱数発生
AC51-AC9B 星イニシャライズ
AC9C-ACF0 星移動WRITE
ACF1-AD5D ファイタービーム キー入力
AD5E-ADB1 ファイタービーム移動WRITE
ADB2-B065 ZEPLIS移動WRITE
B066-B0B6 ZEPLISイニシャライズ@
B0B7-B0E6 ZEPLIS編隊イニシャライズ
B0E7-B10D ZEPLISイニシャライズA
B10E-B140 2×2 PEEK
B141-B180 ファイタービームPEEK
B181-B1A8 爆発パターンSET
B1A9-B1E9 爆発パターンWRITE
B1EA-B235 ビーム発射・爆発の音
B236-B2B9 敵の弾SET
B2BA-B35D 敵の弾移動WRITE
B35E-B395 PSETルーチン
B396-B39F 敵の弾発射調整
B3A0-B47C LOOPER
B47D-B642 母艦
B643-B67D バーストホークのビーム
B67E-B6C8 デビルの攻撃
B6C9-B787 得点
B788-B7DC マシラヒ移動WRITE
B7DD-B7FD エネルギーゲージ表示
B7FE-B919 ファイターPEEK・爆発
B91A-B963 エネルギーを減らす
B964-B97C 残り機数表示
B97D-B9BE パワーアップパーツ発生
B9BF-BA3A パワーアップパーツ移動 WRITE
BA3B-BA6D パワーアップパーツ名表示
BA6E-BB0C MUSICルーチン
BB0D-BB2C レーザーSET
BB2D-BB74 レーザーWRITE
BB75-BB91 ショックウェイブSET
BB92-BBE3 ショックウェイブWRITE
BBE4-BC02 ファイター爆発マークの移動
BC03-BC6F アステロイドリング
BC70-BCDE 特殊パーツ・キー入力
BCDF-BD2A クラッシュ
BD2B-BD5F LOOPERミサイル
BD60-BD7C BACK
BD7D-BE33 敵出現コントロール
BE34-BE4F ZEPLIS発生A
BE50-BE6B ZEPLIS発生B
BE6C-BEC5 ゲームスタートミュージック



・母艦の名称は登場順に
 @GALDUS(ガルダス)
 ABURST HAWK(バーストホーク)
 BJAILUS(ジャイラス)
 CGERODAS(ゲロダス)
 DDEVIL(デビル)

・今までのゲームの集大成として、いろいろ詰め込みました。ラスボスは見て分かる通り、セガのスペースハリアーの影響です。(汗) スペースハリアーは はまったなあ…(あれは今でも、プレイヤーは人間ではなく当初デザインの戦闘機にすべきだったと思います)
・とにかく撃って撃って撃ちまくる楽しさを表現したかったです。敵の爆発パターンも、美しく見えるように工夫しました。
・グラディウスで衝撃的だった「レーザー」も入れることができました。実はレーザーの形態にも拘りがあり、グラディウスのようなレーザー(自機と一緒にレーザーも移動)にするか、データイーストの「ザビガ」「B-WINGS」のような感じ(発射地点で固定&高速)にするか。いろいろ考えたような記憶が残ってます。
・突然話は飛びますが、あの頃、将来への夢がありました。日本経済の発展や、進化した科学技術で宇宙旅行に行けたりできるんじゃないかとかです。今になって思えば、実現したのはケータイ電話関連のみですね。





ページ最終更新:2017/10/28  SUZUKI.Y