Advice from a veteran: X=X+TX is the same as INC X,TX Also you should not use a loop to move a sprite consider this: VAR SX,SY,TX,TY STICK OUT TX,TY SPOFS 0 OUT SX,SY SPANIM 0,"XY",-10,SX+TX*100,SY+TY*100 Experiment with the -10 and 100s Its not tested but I am almost certain it works, and it will never show signs of lag