Els programes que he explicat fins ara, encara que siguin per al ZX Spectrum, podríem obrir-los en qualsevol màquina sense realitzar canvis de gran importància.
Aquesta vegada, perdonaràs al lector, però el programa que explicaré aquí cal expressar-lo en el ZX Spectrum, perquè em basaré en les seves pròpies característiques.
Aquest programa no té per si mateix un gran valor, però algunes de les instruccions que s'utilitzen en el mateix poden resultar de gran interès per a l'elaboració o elegància de qualsevol programa.
La màquina, concretament l'Spectrum, guarda una sèrie de posicions memorístiques per a controlar el seu sistema intern. En ell es recull la tecla que finalment s'ha premut, quina serà la següent línia d'instrucció, els colors, el tractament de la pantalla per a saber si la impressora està utilitzant, etc. (un total de 71 variables de sistema).
Entre aquestes 71 variables de sistema hi ha dos molt interessants en el nostre cas: Posicions 23677 i 23678.
En aquestes posicions es recullen les coordenades del punt final dibuixat. És a dir: Si fas PRINT PEEK 23677, la coordenada x del punt t'apareixerà
en la pantalla i si fas PRINT PEEK 23678 et donarà la coordenada i del punt.
Això ens ajuda molt en el disseny dels programes.
El programa que exposo a continuació es basa en les següents variables de sistema. El programa realitza dibuixos aleatoris i il·limitats.
Abans d'executar la instrucció DRAW x1,y1 obté els valors correctes de x1 e y1 en les línies 205 i 230, utilitzant les línies 210 i 240 per a la seva verificació. Les instruccions REM no tenen cap efecte sobre el programa, per la qual cosa si es desitja es pot deixar de teclejar.
ESBORRANY10 PRINT #0; "TECLA DE PARADA" |