ついでにコメントすると、上記ソースの43行目は不要だと思います。というか無意味です。
もし上下左右ボタンを押してないならという判定をしたいのだったら、
IF (BUTTON() AND 15)==0 THEN GOSUB @NOMOVE
になります。なんでこうなるのかはビット演算のついて説明しなくてはならず現段階では難しいと思うので省略します。
また正常に動作してもGOSUBの先が何もなくRETURNで返ってきているだけなので、今のままではどちらにしても不要だと思いますし、とくに予定がないなら削除してしまった方がいいような気がします。今はなるべくシンプルにまとめることを考えた方がいいと思うので〜。