Buenas,
Hay otras maneras de imprimir en diferentes posiciones de la pantalla, como si fuera un PRINT AT o un GOTO(X,Y) empleando una rutina del KERNEL.
Te pongo un ejemplo para que ratonees y hagas comparaciones de velocidad.
Lo bueno, es que puedes trabajar con coordenadas cartesianas, por lo que los calculos para el programa te resultarán mas sencillos.
10 FOR X=0 TO 37
20 POKE 781,15:POKE 782,X:SYS 65520
30 PRINT" ->"
40 NEXT X
50 FOR X=37 TO 0 STEP (-1)
60 POKE 781,15:POKE 782,X:SYS 65520
70 PRINT"<- "
80 NEXT X
90 GOTO 10
Como verás, con los POKES en las direcciones 782 y 781 son las posiciones cartesianas del cursor en X e Y.
Y el SYS a 65520 es la llamada a PLOT del KERNEL
Nota: El PRINT TAB (X) tiene limitación hasta 255, por si intentas emplearlo mas allá de una posición vertical.
Con el POKE 1024+X+Y*40, la limitación es la propia pantalla, es decir, hasta 2023.
De todos modos, usar variables, aumenta la velocidad de los programas en BASIC.
Si defines P=1024, entonces pokeas como POKE P+X+Y*40 y debería de ser mas eficiente.