BGMPLAY命令やBEEP命令は演奏が始まったり音が鳴るとすぐ 次の命令の処理を行います。 このプログラムの場合すぐプログラムの最後まで 実行されてしまいプログラムが終了してしまいます。 曲が終わるまでプログラムが終了しないようにするには BGMCHK関数で演奏が終わる(TRUEになる)までループさせる のがいいのですが、この曲は終わりの無い曲なので演奏の 終わりは検出できません。 無条件のループにして中断ボタンでプログラムを停止する というのではいかがですか?