第10章 MODEボタンによるアプリケーションの終了手順 |
アプリケーションは、その実行中にMODEボタンが押された場合、直ちに処理を中断しシステムアプリケーションのモード管理画面へ復帰する必要があります。
ここでは、アプリケーションからシステムアプリケーションへ制御を渡す手順についてを説明します。
10-1 各ラベルの処理内容 |
先のサンプルフローチャートにおいて、各ラベルの役割は次のようになっています。
![]() 『ビジュアルメモリSDK』に添付の“GHEAD.ASM”を合わせてご覧ください。 |
![]() 説明を簡素化するためにgame_endを除きすべて仮の名称になっています。 |
アプリケーションのメインプログラムです。
MODEボタンが押されたことで、下記のOSプログラム復帰サブルーチンにジャンプするようにプログラムする必要があります。
_game_endアプリケーションを終了し、OSプログラムへと処理を移行するサブルーチンです。実行中のアプリケーションのデータを保持する場合は、このサブルーチンにジャンプする前にデータを保存するようプログラムしてください。OSプログラムでは、データの保存は行ないません。
![]() アプリケーション内部で間接アドレスレジスタのBANKを切り替えて使用している場合は、このサブルーチンを実行する前に必ずBANKを0に設定し直す必要があります。 |
![]() このサブルーチンは、割り込み処理中には実行しないで下さい。 |
アプリケーション終了後、システムBIOSに復帰する際の窓口となる復帰ルーチンです。
ROM内のシステムアプリケーションに復帰し、モード選択プログラムを起動します。
![]() すべてのアプリケーションは、MODEボタンが押されたら直ちにgame_endへCHANGEするように設計してください。 なお、再突入時(アプリケーションを終了し再びゲームに戻る)に必要なRAM上のデータは、アプリケーション自身でその内容をフラッシュメモリに退避してください。データの退避は、game_endへのCHANGEよりも前に行なう必要があります。 また、再突入時のデータのリストアもアプリケーションで行なってください。 |
モード選択プログラムです。
![]() モード選択については「付録編」の「第19章 ビジュアルメモリのモード選択」を参照してください。 |
[←] | [INDEX] | [→] |
(C)SEGA ENTERPRISES, LTD., 1999