Descargar Imprimir esta página

AMSTRAD sinclair ZX Spectrum +3 Manual Del Usario página 140

Publicidad

Sus dos argumentos son los números de fila y columna que ya sabemos utilizar en la cláu­
sula
AT.
El resultado de la función es un número que informa sobre los colores y los de­
más atributos de la posición de carácter especificada. Esta función puede intervenir en
expresiones, con la misma libertad que cualquier otra función.
El número resultante es una combinación de cuatro números que se construye de la si­
guiente forma:
sumar 128 si la celda de carácter está parpadeando; O en otro caso
sumar 64 si la celda de carácter es brillante; O si es normal
sumar
8 multiplicado por el código del color del papel
sumar
1 multiplicado por el código del color de la tinta
Por ejemplo, si la celda de carácter está parpadeando, tiene un brillo normal, papel amari ­
llo y tinta azul, los cuatro números que debemos sumar son 128, O, 8*6=48 Y 1, lo que
da un total de 177. Cornpruébelo escribiendo:
PRINT AT 0.0; FLASH 1; PAPER 6; INK 1;" ";ATTR (0.0)
Ejercicios
1. Pruebe la siguiente orden:
PRINT "-"; CHR$ 8; OVER 1;"/,,;
En el lugar de intersección de la barra con el signo menos ha quedado un punto blanco.
Ésta es la forma de sobreimpresión en el +3: papel más papel y tinta más tinta dan
papel; tinta más papel da tinta. Este sistema tiene la interesante propiedad de que si
sobreescribimos la misma cosa dos veces. se restaura el carácter original. Sabido esto,
si ahora hacemos
PRINT CHR$ 8; OVER 1;"/"
¿por qué recuperamos un ,_o incólume?
2. Ejecute este programa:
10 POKE 225227+ RND *704. RND *127
20
GO TO 10
(No se preocupe por cómo funciona el programa.) El programa está cambiando los
colores de las celdas de la pantalla; RND garantiza que esto ocurre de forma aleatoria.
Las rayas diagonales que finalmente llegan a aparecer son la manifestación del hecho
de que RND no genera verdaderos números aleatorios, sino pseudoaleatorios.
Capítulo 8. Guía de programación en +3 BASIC
130

Publicidad

loading