Instrucciones del Basic
Guía rápida de los comando del lenguaje ATARI BASIC1. Sentencias de programa
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
BYE | B. | Sale del BASIC. En los modelos 400/800, va al MEMO PAD. En los modelos XL/XE, va al SELF TEST. |
CLR | CLR | Borra todas las variables. |
CONT | CON. | Continúa la ejecución del programa. |
DIM | DI. A$(30) DI. B(17, 3) | Reserva 30 bytes para la variable A$. Define un arreglo B de 18 filas por 4 columnas. |
END | END | Fin del programa. Cierra los archivos y apaga los sonidos. |
LET | LE. X = 2 | Define una variable X y le asigna el valor 2. |
LIST | L. L. 400,500 | Lista un programa por pantalla. Lista un programa, desde la línea 400 hasta la línea 500. |
NEW | NEW | Borra el programa de la memoria del computador. |
POKE | POK. 752,1 | Escribe el valor 1 en la dirección de memoria 752. |
REM | R. comentario | Permite escribir comentarios. |
RUN | RU. | Comienza la ejecución del programa. |
STOP | STO. | Detiene la ejecución del programa, sin cerrar los archivos. |
2. Sentencias de bifurcación
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
FOR, TO | F. X=3 TO 9 STEP 2 | Ejecuta un ciclo repetitivo. 3, 9 y 2 pueden ser expresiones aritméticas. |
STEP/NEXT | N. X | |
GOSUB RETURN | 100 GOS. 300 300 ? 400 RET. | RETURN vuelve a la sentencia que sigue a los dos puntos. |
GOTO | G. X | Va a la línea X, donde X puede ser una variable o un número de línea. |
IF/THEN | IF Y=5 THEN 500 IF X=6 THEN Y=6 | Bifurcación condicional. Si la condición se cumple, se ejecuta lo que viene a continuación del THEN. En caso contrario, pasa a la línea siguiente. |
ON/GOSUB | ON X GOSUB 20,30,40 | Si X<1 ó X>3, pasa a la línea siguiente. |
ON/GOTO | ON X GOTO 50,60,70 | Si X=1, va a línea 50. Si X=2, va a la línea 60. Y si X=3, va a la línea 70. |
POP | POP | Se usa cuando el RETURN no se ejecuta. |
TRAP | T. 200 | Va a la línea 200 si se produce un error. |
3. Comandos de entrada y de salida
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
CLOAD | CLOA. | Carga un programa desde el cassette. |
CLOSE | CL. #2 | Cierra un archivo. |
CSAVE | CS. | Graba un programa en cassette. |
DOS | DO. | Despliega el menú del DOS. |
ENTER | E. "D1:PROG1" | Carga un programa grabado con LIST. |
INPUT | I. Y$ | Recibe datos desde el teclado. |
LIST | L. "D1:PROG1" | Graba un programa en formato ATASCII. |
LOAD | LO. "D1:PR2" | Carga un programa grabado con SAVE. |
LPRINT | LP. X | Imprime una línea en la impresora. |
NOTE | NO. #2,5,B | Detecta el sector (5) del byte (B) dentro de un archivo. |
OPEN | O. #2,4,0,"D1:T2X" | Abre un archivo, según: 4=Entrada, 6=Directorio, 8=Salida, 9=Agrega y 12=Entrada/Salida. |
POINT | P. #3,5,B | Ubica el sector (5) del byte (B) dentro de un archivo. |
? A,B; "HOLA" | Imprime por pantalla. Con coma imprime tabulado, y con punto y coma imprime seguido. | |
PUT/GET | PU. #6,Y GE. #6,Y | Coloca en un dispositivo el byte almacenado en la variable Y. Lee un byte desde un dispositivo y lo almacena en la variable Y. |
READ | READ. A,B | Asigna a las variables A y B los datos almacenados en líneas DATA. |
DATA | D. 5, 8 | Almacena los valores que serán leídos por el comando READ. |
RESTORE | RES. 350 | 350 es el número de línea DATA para la siguiente instrucción READ. |
SAVE | S. "D1:PROG3" | Graba un programa en diskette. |
STATUS | ST. #3,A | Coloca en la variable A el valor del estado del archivo abierto con el dispositivo #3. |
XIO | XIO cmdno,#5,aux1,aux2,"S:" | Ver códigos del comando XIO. |
4. Funciones aritméticas
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
ABS | Y = ABS(X) | Valor absoluto de X |
CLOG | Y = CLOG(X) | Logaritmo en base 10 de X |
EXP | Y = EXP(X) | Exponencial de X. ex |
INT | Y = INT(X) | Valor entero de X |
LOG | Y = LOG(X) | Logaritmo natural de X |
RND | Y = RND(X) | Número aleatorio entre 0 y 1 |
SGN | Y = SGN(X) | Evalúa el signo. Y = —1,0, + 1 |
SQR | Y = SQR(X) | Raíz cuadrada de X |
5. Funciones trigonométricas
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
ATN | Y = ATN(X) | Arcotangente de X |
COS | Y = COS(X) | Coseno de X |
SIN | Y = SIN(X) | Seno de X |
DEG/RAD | DEG | Grados o radianes |
6. Funciones especiales
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
ADR | Y = ADR(Y$) | Dirección de memoria del string Y$ |
FRE | ? FRE(0) | Memoria libre en bytes |
PEEK | Y = PEEK(X) | Contenido de memoria en dirección X |
USR | Y = USR(X) | Resultado de un programa en lenguaje de máquina que está en la dirección de memoria X |
Funciones de string (cadenas)
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
ASC | Y = ASC(X$) | Valor ASCII del primer byte de X$ |
CHR$ | Y = CHR$(X) | Carácter con valor ASCII de X |
LEN | Y = LEN(X$) | Largo del string X$ en bytes |
STRS | Y$ = STR(X) | Convierte a string el numero X |
VAL | Y = VAL(X$) | Convierte a número el string X$ |
substring | Y = X$(5,8) | Y$ contiene desde el quinto hasta el octavo carácter de X$ |
7. Sentencias gráficas y de sonido
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
GET | GE. #6,A | Ingresa un byte en A desde la pantalla |
GRAPHICS | GR. 7 | Modo gráfico a utilizar (0, 1, ... 15) |
COLOR | C. 3 | Número de color para PLOT o DRAWTO |
DRAWTO | DR. X,Y | Dibuja hasta la coordenada X, Y |
LOCATE | LOCATE X,Y,A | Coloca en A el número de COLOR que hay en la coordenada X, Y |
PLOT | PL. X,Y | Dibuja un punto en la coordenada X, Y |
POSITION | POS. X,Y | Posiciona el cursor en la coordenada X, Y |
PUT | PU. #6,A | Coloca el byte A en pantalla |
SETCOLOR | SE. 1,2,4 | Registro de color, matiz, luminosidad |
SOUND | SO. 1,100,10,4 | Voz (0, 3), tono (0-255), distorsión (0-14 par), volumen (0-15) |
XIO | X. 18,46,0,0,"S:" | Rellena un área con el color almacenado en la posición de memoria 765 |
8. Sentencias de controles
Comando | Abreviación o ejemplo | Comentario |
---|---|---|
PADDLE | Y = PADDLE(X) | X=0 a 3,Y=0 a 228 |
PTRIG | Y = PTRIG (X) | X = 0 a 3, Y = 0 (botón presionado) Y = 1 (botón sin presionar) |
STICK | Y = STICK(X) | X =0 ó 1,Y = ver JOYSTICK |
STRIG | Y = STRIG(X) | X =0 ó 1, Y = 0 (botón presionado) Y = 1 (botón sin presionar) |