N88-BASIC(86) ON KEY GOSUB命令
ON KEY GOSUB
- 機能
- ファンクションキーによる割り込みルーチンの開始行を定義する
- 書式
- ON KEY GOSUB 行番号[,行番号...]
- 文例
- ON KEY GOSUB 100, 200, 300, 400
この命令を実行しておくと,以後プログラムの実行中にファンクションキーが押されるたびに,各ファンクションキーに対応する指定開始行から始まる割り込みルーチンに処理が移ります.
〈行番号〉には,割り込みが発生したときに分岐させる処理ルーチンの開始行番号を,ファンクションキーの番号順に並べて指定します.〈行番号〉の並び中で,行番号の指定を省略した場合は,それに対応するファンクションキーによる割り込みは起こりません.したがって,たとえばON KEY GOSUB 100,,300と指定した場合,f1キーおよひf3キー以外は割り込みの対象となりません.
〈行番号〉は最大10個まで並べて書くことができます.行番号の代わりにラベル名を使うこともできます.
処理ルーチンからの復帰は,一般のサブルーチンの場合と同じで, RETURNによって行います.たんにRETURNとしたときは,中断した所から再開し,後ろに行番号を指定したときは,その行から再開します.
ただし,行番号つきのRETURNでは,割り込みが発生した箇所と同じスタックレベルのプログラム行にもどるように指定してください.これを無視すると,スタック領域が異常消費され,プログラムは正しく動作しません.とくに必要がない限り,使用しないようにしてください.
注意:
この命令によって割り込み処理ルーチンに分岐させるには,割り込みが発生したとき,KEY ONの状態でなければなりません.
この命令を実行すると,ファンクションキ一本来の機能(ファンクションキーを押すとKEYで定義した文字列が入力される機能)は無視されます.ただし,定義された文字列の内容は, CONSOLEで指定することにより表示することは可能です.
参照:KEY ON/OFF/STOP, RETURN,サンプルプログラム30
出典:N88-日本語BASIC(86)(Ver6.2) リファレンスマニュアル、日本電気株式会社、1991年発行