N88-BASIC(86) ON PLAY GOSUB命令

ON PLAY GOSUB

機能
PLAY割り込み処理ルーチンの開始行を定義
書式
ON PLAY(チャンネル番号,残りバイト数) GOSUB 行番号
文例
ON PLAY(1,1024) GOSUB *NEXT.PLAY

この命令を実行しておくと,バックグラウンド(BASICプログラムの実行と独立して演奏する形態. PLAYのMBコマンド参照)で演奏中に,〈チャンネル番号〉のサウンドバッファ内の未演奏音楽情報が〈残りバイト数〉以下になったとき,指定した〈行番号〉から始まる処理ルーチンに処理を移します.

〈チャンネル番号〉に指定する値とその意味の関係は次のとおりです.

〈残りバイト数〉は, 0〜32767の範囲です.

処理ルーチンからの復帰は, RETURNで行います.たんにRETURNとしたときには,中断した所から再開し,後ろに行番号を指定したときは,その行から再開します.

ただし,行番号つきのRETURNでは,割り込みが発生した箇所と同じスタックレベルのプログラム行にもどるように指定してください.これを無視すると,スタック領域が異常消費され,プログラムは正しく動作しません.とくに必要がない限り,使用しないでください.

注意

この命令によって割り込み処理ルーチンに分岐させるには,割り込みがあったときにPLAY ONの状態でなければなりません.

PLAYの割り込みは, BASICの他の割り込み命令と異なり,割り込み処理ルーチンに制御が移っても自動的に割り込み停止状態となりません.したがって,処理ルーチンの先頭ではPLAY OFFまたはPLAY STOPを実行し,終わりでPLAY ONを実行する必要があります.

参照:PLAY,. PLAY ON/OFF/STOP,サンプルプログラム41

出典:N88-日本語BASIC(86)(Ver6.2) リファレンスマニュアル、日本電気株式会社、1991年発行


inserted by FC2 system