Los programas que he explicado hasta ahora, aunque sean para el ZX Spectrum, podríamos abrirlos en cualquier máquina sin realizar cambios de gran importancia.
Esta vez, perdonarás al lector, pero el programa que voy a explicar aquí hay que expresarlo en el ZX Spectrum, porque me basaré en sus propias características.
Este programa no tiene por sí mismo un gran valor, pero algunas de las instrucciones que se utilizan en el mismo pueden resultar de gran interés para la elaboración o elegancia de cualquier programa.
La máquina, concretamente el Spectrum, guarda una serie de posiciones memorísticas para controlar su sistema interno. En él se recoge la tecla que finalmente se ha pulsado, cuál será la siguiente línea de instrucción, los colores, el tratamiento de la pantalla para saber si la impresora está utilizando, etc. (un total de 71 variables de sistema).
Entre estas 71 variables de sistema hay dos muy interesantes en nuestro caso: Posiciones 23677 y 23678.
En estas posiciones se recogen las coordenadas del punto final dibujado. Es decir: Si haces PRINT PEEK 23677, la coordenada x del punto te
aparecerá en la pantalla y si haces PRINT PEEK 23678 te dará la coordenada y del punto.
Esto nos ayuda mucho en el diseño de los programas.
El programa que expongo a continuación se basa en las siguientes variables de sistema. El programa realiza dibujos aleatorios e ilimitados.
Antes de ejecutar la instrucción DRAW x1,y1 obtiene los valores correctos de x1 e y1 en las líneas 205 y 230, utilizando las líneas 210 y 240 para su verificación. Las instrucciones REM no tienen ningún efecto sobre el programa, por lo que si se desea se puede dejar de teclear.
BORRADOR10 PRINT #0; "TECLA DE PARADA" |