This program will show a circle moving its way across the screen. Every time that the O moves, it's horizontal position on the screen is increased by 1 until it gets to 16 (the edge of the screen). The animation effect is achieved by the second For( command. It creates a small pause between moving. Without this, the O would move too fast to be noticed at all (causing a blank screen).
Using For( commands along with changing text allows for more complex animations. Using algorithmic coding like that seen in this program can make bigger animations easier to program as well.
Another important thing to note is that when animating, using either ClrHome or ClrDraw causes the screen to "flash". While this effect might not be noticed in a slower program, using it in very rapid animation causes the screen to flash rapidly. A good way around using ClrHome/ClrDraw and ultimately making the program much more professional looking is by replacing the functions with Output( and Pxl-Off(, respectively. For example in the above program replace the second ClrHome with
Output(4,X," ". Making this simple change will ultimately make the program run smoother and better looking.