Размер видео: 1280 X 720853 X 480640 X 360
Показать панель управления
Автовоспроизведение
Автоповтор
YAMAUCHIコマンドがなければ、FM-8/7ではアクションゲームは不可能という評価を受けたままで終わってたのか。動きがカクカクでキャラが単色ではありますが、当時としてはかなりレベルの高い移植だと思います。
現在のように、広大なネット空間に知識が分散している時代と違い、パソコン雑誌に知識が集奥された時代なので、少し歩けば伝説にぶつかるので面白いです^^
時代を考えると良い移植ですね。後の電波の移植に比べると敵の方向パターンが少なく、降下中に自機を向くことはありませんが、当時はどの移植もそうでした。
パソコン雑誌の読者投稿ページのゲームが、影響を与え合っていた時代ですね。時代の活力を感じます。
んーっと、これ芸夢狂人のプログラムを基にFM8へ移植した作品なのかな?っていうか、どう見ても80Bでプレイし尽くした物とキャラから敵のアルゴリズムまでほぼ同一なのでYAMAUCHIコマンドを使ってFM8へ移植・販売した物のようですね。さすが工学社っと言った所でしょうか😊
FM-8で高速ゲームが作れるよって部分が、重要だったんでしょうね^^;
良移植ですね。敵の飛び方も編隊もいい感じでおもしろ荘。速度もオリジナルに近いと思う。ただ秘密は明かしてほしかった。
秘密は前回のインベーダーゲームでは明かされませんでしたが、今回は明かされているので、全文を載せておきますね^^以下当該ページから抜粋*** 先月号のインベーダー・ゲームはいかがでしたか.FM-8でも高速ゲームができるという証明になったのではないでしょうか. 今回は, ゲーム・センターでおなじみのギャラクシアンを紹介するとともに, FM-8の表示を高速化するためのノウハウも紹介します. 遊び方 ゲーム自体は知らない人はいないと思うので特に説明はしません. キーの操作は前回と同様に. [1], [2], [3]で, それぞれ, 左, ストップ, 右に砲台が動き, [STOP]キーでビームの発射, [スペース]キーで再ゲームです. FM-8の高速化 YAMAUCHIの秘密 FM-8でゲームを作ろうとすると, 必らず突き当る壁が『V-RAMのアクセス』です. FM-8は, PC, MZなどの他のマイコンと異なり, V-RAMがメインCPUの管理下になく,すべてサブCPUがその管理をしているので, 画面に何か表示させるときはBIOSを使うか, またはサブCPUに直接コマンドを送ってやらなければなりません. しかし, この方法ではメインCPUはマシン謡により,スピード・アップするのに対して, サブCPUの表示速度はBASIC使用時と何ら変りなく, メインCPUはその大半の時間をサブCPUのWAITループに費やすことになります. 前回および今回のゲームは, サブCPUを少しでも速くするために, サブシステム内のROMを一叨使わずに, メインCPUからサブCPUを動かすためのプログラムをあらかじめ転送し, サブCPUの管理をそのプログラムに移す方法を使っています. サブCPUに対するコマンドはいくつか知られていますが, この中に『メインテナンス・コマンド』と言うのがあり, これはさらにサブコマンドを持っています. サブコマンドはサブコマンド・コードと複数個のオペランド(ない場合もある)で構成されています. また未定義のサブコードの場合は, このメインテナンス・コマンドを終了します. これらのコマンドを使ってメインCPUからサブCPUヘプログラムを転送し制御を移します. ただ, このとき注意しなければならないことは, プログラムの転送先と『V-RAMアクセス・フラグ』です. 転送先はサブシステムのRAM上であれば, ほとんどどこでも構わないようですが,V-RAM上への転送は後述する『V-RAMアクセス・フラグ』をSETする必要があり, また$ DOOO以降はI/Oや割り込みに対するワーク・エリアなどがあるため, 転送は避けた方が良いようです. 『V-RAMアクセス・フラグ』と言うのは文字通り, V-RAMをアクセスするときにSETするフラグで, $ D409番地をREADするとSET・・・つまりアクセス可能になり,WR I TEするとRESET・・・アクセス不可能になります.通常, 私達が使用するときは, 一番最初にSETしておけば特に問題はないようです. 以上説明したコマンドを使って, サブシステムにプログラムを転送します. 実際に私が行っている方法は最初に,『V-RAMアクセス・フラグ』をSETし, V-RAM上にプログラム転送のためのプログラムを転送してこのプログラムに制御を移し, ゲーム実行のためのプログラムを転送しています. なぜこのように面倒なことをやるのかと言うと, 『メインテナンス・コマンド』のMOVEサブコマンドでは一度に120バイトたらずのプログラムしか転送できず, 効率が悪い上にアドレスの計算が大変だからです. 腕に自信のある方はMOVEサブコマンドを何回も使って結構です. 高速化のテクニック サブCPUのメイン・プログラム(?)は,メインCPUとの共通領域の特定アドレスを常時読み込んで, それがコマンドであるかどうかを判断し, コマンドであれば, その処理ルーチンヘジャンプします. たとえば, "$ EE"であれば"ビーム砲の爆発パターンを表示する" などです. この点, サブCPUのモニタは汎用処理となっているのでアドレス, 色の指定, 表示すべきパターンなどを共通領域から読み取り計算しますが, この方法では色, 表示すべきパターンはすでに自分の領域に持っているため, かなりのスピード・アップとなります. おわりに FM-8の表示速度はお世辞にも速いとは言えませんが, 640×200ドットの分解能および1ドット単位での色指定は他のどんなマイコンにも負けないと思います. 2つの6809を上手に使い, あなたもFMの高速プログラムに挑戦してみてください!***
@@OldGameDatabase-Zasshi ありがとうございます。ワイの頭ではよくわからないのですが、FMはグラフィックRAMにメインCPUから直接アクセスできず、サブCPUも遅いので工夫しないとグラフィック描画が早くできないということなのですね。インベーダーがわざと速くして、高速ゲームもできる証明だったとは恐れ入り屋の鬼子母神でした。
BASICが爆速で動く現在と違い、当時は制約を回避する方法を見つけるのが楽しかったでしょうね^^
ビッグネ―厶 サラッと 使う 工学社. 😊
この頃はアーケードゲームの移植が大流行りしましたね。
意図が 違う 🌝
YAMAUCHIコマンドがなければ、FM-8/7ではアクションゲームは不可能という評価を受けたままで終わってたのか。動きがカクカクでキャラが単色ではありますが、当時としてはかなりレベルの高い移植だと思います。
現在のように、広大なネット空間に知識が分散している時代と違い、パソコン雑誌に知識が集奥された時代なので、少し歩けば伝説にぶつかるので面白いです^^
時代を考えると良い移植ですね。後の電波の移植に比べると敵の方向パターンが少なく、降下中に自機を向くことはありませんが、当時はどの移植もそうでした。
パソコン雑誌の読者投稿ページのゲームが、影響を与え合っていた時代ですね。
時代の活力を感じます。
んーっと、これ芸夢狂人のプログラムを基にFM8へ移植した作品なのかな?
っていうか、どう見ても80Bでプレイし尽くした物とキャラから敵のアルゴリズムまでほぼ同一なのでYAMAUCHIコマンドを使ってFM8へ移植・販売した物のようですね。さすが工学社っと言った所でしょうか😊
FM-8で高速ゲームが作れるよって部分が、重要だったんでしょうね^^;
良移植ですね。敵の飛び方も編隊もいい感じでおもしろ荘。速度もオリジナルに近いと思う。ただ秘密は明かしてほしかった。
秘密は前回のインベーダーゲームでは明かされませんでしたが、今回は明かされているので、全文を載せておきますね^^
以下当該ページから抜粋
***
先月号のインベーダー・ゲームはいかがでしたか.
FM-8でも高速ゲームができるという証明になったのではないでしょうか.
今回は, ゲーム・センターでおなじみのギャラクシアンを紹介するとともに, FM-8の表示を高速化するためのノウハウも紹介します.
遊び方
ゲーム自体は知らない人はいないと思うので特に説明はしません. キーの操作は前回と同様に. [1], [2], [3]で, それぞれ, 左, ストップ, 右に砲台が動き, [STOP]キーでビームの発射, [スペース]キーで再ゲームです.
FM-8の高速化
YAMAUCHIの秘密
FM-8でゲームを作ろうとすると, 必らず突き当る壁が『V-RAMのアクセス』です. FM-8は, PC, MZなどの他のマイコンと異なり, V-RAMがメインCPUの管理下になく,すべてサブCPUがその管理をしているので, 画面に何か表示させるときはBIOSを使うか, またはサブCPUに直接コマンドを送ってやらなければなりません.
しかし, この方法ではメインCPUはマシン謡により,スピード・アップするのに対して, サブCPUの表示速度はBASIC使用時と何ら変りなく, メインCPUはその大半の時間をサブCPUのWAITループに費やすことになります.
前回および今回のゲームは, サブCPUを少しでも速くするために, サブシステム内のROMを一叨使わずに, メインCPUからサブCPUを動かすためのプログラムをあらかじめ転送し, サブCPUの管理をそのプログラムに移す方法を使っています.
サブCPUに対するコマンドはいくつか知られていますが, この中に『メインテナンス・コマンド』と言うのがあり, これはさらにサブコマンドを持っています. サブコマンドはサブコマンド・コードと複数個のオペランド(ない場合もある)で構成されています. また未定義のサブコードの場合は, このメインテナンス・コマンドを終了します.
これらのコマンドを使ってメインCPUからサブCPUヘプログラムを転送し制御を移します. ただ, このとき注意しなければならないことは, プログラムの転送先と『V-RAMアクセス・フラグ』です. 転送先はサブシステムのRAM上であれば, ほとんどどこでも構わないようですが,V-RAM上への転送は後述する『V-RAMアクセス・フラグ』をSETする必要があり, また$ DOOO以降はI/Oや割り込みに対するワーク・エリアなどがあるため, 転送は避けた方が良いようです.
『V-RAMアクセス・フラグ』と言うのは文字通り, V-RAMをアクセスするときにSETするフラグで, $ D409番地をREADするとSET・・・つまりアクセス可能になり,WR I TEするとRESET・・・アクセス不可能になります.通常, 私達が使用するときは, 一番最初にSETしておけば特に問題はないようです.
以上説明したコマンドを使って, サブシステムにプログラムを転送します. 実際に私が行っている方法は最初に,『V-RAMアクセス・フラグ』をSETし, V-RAM上にプログラム転送のためのプログラムを転送してこのプログラムに制御を移し, ゲーム実行のためのプログラムを転送しています. なぜこのように面倒なことをやるのかと言うと, 『メインテナンス・コマンド』のMOVEサブコマンドでは一度に120バイトたらずのプログラムしか転送できず, 効率が悪い上にアドレスの計算が大変だからです. 腕に自信のある方はMOVEサブコマンドを何回も使って結構です.
高速化のテクニック
サブCPUのメイン・プログラム(?)は,メインCPUとの共通領域の特定アドレスを常時読み込んで, それがコマンドであるかどうかを判断し, コマンドであれば, その処理ルーチンヘジャンプします. たとえば, "$ EE"であれば"ビーム砲の爆発パターンを表示する" などです.
この点, サブCPUのモニタは汎用処理となっているのでアドレス, 色の指定, 表示すべきパターンなどを共通領域から読み取り計算しますが, この方法では色, 表示すべきパターンはすでに自分の領域に持っているため, かなりのスピード・アップとなります.
おわりに
FM-8の表示速度はお世辞にも速いとは言えませんが, 640×200ドットの分解能および1ドット単位での色指定は他のどんなマイコンにも負けないと思います. 2つの6809を上手に使い, あなたもFMの高速プログラムに挑戦してみてください!
***
@@OldGameDatabase-Zasshi ありがとうございます。ワイの頭ではよくわからないのですが、FMはグラフィックRAMにメインCPUから直接アクセスできず、サブCPUも遅いので工夫しないとグラフィック描画が早くできないということなのですね。インベーダーがわざと速くして、高速ゲームもできる証明だったとは恐れ入り屋の鬼子母神でした。
BASICが爆速で動く現在と違い、当時は制約を回避する方法を見つけるのが楽しかったでしょうね^^
ビッグネ―厶 サラッと 使う 工学社. 😊
この頃はアーケードゲームの移植が大流行りしましたね。
意図が 違う 🌝