ですが、ループしているから当然なのですが
ボタンの上にカーソルが乗っている間、ずっとループを繰り返し点滅してしまいます。
なので、

if %0=1 & %1<>1 mov %1,1 :gosub *数値1 :gosub *表示
if %0=2 & %1<>2 mov %1,2 :gosub *数値2 :gosub *表示
if %0=3 & %1<>3 mov %1,3 :gosub *数値3 :gosub *表示

としてみたのですが、今度は1度表示されたら何故かループから抜けてしまいます。
(別のボタンにカーソルが乗っても数値の表示が変わりません)

ボタンにカーソルが乗っている間に数値表示が点滅せず、
別のボタンにカーソルが移動した際に数値表示が変わる
何か良い方法はないでしょうか…?

因みに数値の変更をサブルーチンでしているのと、実際には
*表示先のスプライト数が30位あるので、制御文字列指定を行うのは厳しいです…。