ねこはちさんのいうように移動させる前に移動先をチェックして移動出来ない場合は移動させないようにしましょう。 あとIFのENDIFは1行の場合は書く必要はないので、67,68,70,72,73などは不要ですよ。 あとFLOORを使っているのは少数を消すためだと思いますが、そういう場合に便利な命令にDIVというのがあって、これだと割り算の整数部だけ求められるので、BCX=CX DIV 16と書く方法がありますよ。余談でしたが…。