FOR I=0 TO 16:SPOFS 2,X-I,Y:WAIT:NEXT:X=X-16 じゃ駄目? FOR命令でループ変数を終了値に使うとループする度に初期値、終了値を 評価するため誤動作の原因になりやすいです。