ようこそゲストさん

80mkII愛友会 別館

2016/07/24(日) サイト更新 - テグザー for PC-8001mkII

お知らせ
本日の更新は「テグザー for PC-8001mkII」の紹介です。

テグザーはPC-8001mkIISR版が発売されていたので,これをPC-8001mkIIに移植してみました。

コンバータも公開しましたので,興味のある方はお試しください。

動画もアップロードしてみたので,よろしければこちらもどうぞ。



私が今まで最も遊んだテグザーは,実はMSX版だったりします。
面数は少なめとなっていますが,ファミコン版と違ってきちんとレーザー攻撃の部分も再現されており,とても良く出来た移植でした。
ただ,80SR/88SR版とは違ってシールドを使わずにLEVELクリア時のボーナスを取得した方が効率が良くなる様なゲームバランスになっていたと記憶しています。
そんな訳で,同じ感覚で80SR版を遊ぼうとしてもなかなか先へは進めないので,80SR版はいままで4面辺りまでしかクリアできていませんでした。
今回テストプレイを行って分かりましたが,80SR/88SR版では敵の攻撃が激しい箇所でシールドを使った方が効率よく進めるようなゲームバランスなのですね。
今では,80SR/88SR版も余裕で16面クリアできるようになりました。
開発時間の半分くらいはテストプレイと称して遊んでいた様な気もします。

移植作業の方は,今回はSRシリーズからの移植なので速度の問題があり,様々な重ね合わせ処理を省略しています。
処理を省略すると言っても,単純に爆風やシールドを描画/消去してしまうと背景が乱れてしまうので,描画時には画面上に何もない場所にのみ書き込みを行い,消去時には書き込んだデータと同じ値だった場合のみ消去するという処理にしました。
オリジナルでは,爆風やシールドは背景やキャラクターと別のプレーンへ単純に書き込むだけなので,80mkII版はこの辺の処理がかなり重くなってます。
と言っても,まともにマスクパターンを持ってANDやORで合成して描画したり,消去時に背景のパターンを調べて再描画するよりは高速なのですが。

また,背景とレーザーを同じプレーンに描画することで,当たり判定の処理にも問題が発生していました。
オリジナルでは,青プレーンのデータが0であればその場所には何も無いと判定されるのですが,80mkIIではこのままだと前回攻撃したときのレーザーや爆風が消去されるまで次の攻撃が届かなくなってしまい,攻撃力がガタ落ちになります。
これについても,80mkII版ではデータの内容を判別して赤だった場合は何も無いと判定させるというような処理にしているので,処理速度が遅くなっています。

以上の様に,割と強引な力技で問題を解決することになるので処理速度にかなりの不安があったのですが,一応それなりに遊べる速度にはなったと思います。
とはいえ,80SR版と並べて動かすと明らかに遅いですが。
ドラゴンスレイヤー移植の時は元がPC-8801用なので速度に余裕があり,自前で重ね合わせ処理を追加しても十分な速度だったのですけれど...

1: Karaki 2016年07月24日(日) 午後6時12分

あ、80SR版からのコンバートだったんですね。88版(SRに非ず)からのコンバートと思ってました....(・.・;)
しかし、これは入手が非常に困難極まりない....

2: apaslothy 2016年07月24日(日) 午後8時23分

VRAMのアドレスが同じ80SR版の方が簡単に移植できるので,最初はこちらにしました。
BEEP音に対応した88V1シリーズ用も,これから対応する予定です。

3: CD-R 2016年07月25日(月) 午前2時27分

動画みました。軽快な感じで動いてますね。FM音源に対応しているところがいいですね。

4: apaslothy 2016年07月26日(火) 午前1時16分

色々と処理を追加してもここまで動くのは,元のプログラムが高速だからでしょう。
表示ルーチンなどはかなり極限まで最適化されていて,とても美しいコードでした。
FM音源対応は元の機能をそのまま移植しただけなのですが,もしかしたら現在公開されて
いるPC-8001mkII用ゲームでは初めてのPC-8801-11対応になるのかも?

5: CD-R 2016年07月26日(火) 午前3時00分

>>PC-8001mkII用ゲームでは初めてのPC-8801-11対応になるのかも?
そうですね。音源ボードの用途は、ポプコムのMUSICプログラムぐらいで、対応したゲームはなかったですね。
88の場合は、月間誌ハッカーのがんばれ88mk2で市販ソフトにパッチを当てて対応させるとかあったのですが。


名前:  非公開コメント