現リストの32~35行目の部分は、プログラム起動後1回だけ実行すればよい初期化部分だと思われるので、元の位置から移動する必要はなかったです。 39~45行目は現在位置でOKです。 問題は38行目です。この行は、条件に応じて39行目以降の@TEKIDERUサブルーチンを呼び出す役割があるので、@TEKIDERUサブルーチンの直上にあるのでは無意味です。38行目は本来、@MAINループの中にあるべきと思います。当方の思い違いであればご容赦ください。 なお、蛇足かも知れませんが念のために申しますと、BASICプログラムは、GOTOやGOSUBでジャンプする場合を除けば、行番号の若い方から順繰りに実行されます。