Manual Z80
Mini-referencia procesador Z80 y BIOS ..........
Compilación de Néstor Soriano
1. REGISTROS DEL Z80
Grupo principal
A ( cum ul dor a a ) B D H F ( ander s) b a C E L
® SECUENCIAS DE ESCAPE PARA USAR CON CHPUT (00A2H) A continuación se listan las secuencias de escape que pueden ser usadas para conseguir diversos efectos al imprimirtexto por pantalla. Para usarlas, primero hay que imprimir el carácter de escape Esc (código 27) y a continuación la secuencia deseada. Se han de respetar las mayúsculas y las minúsculas de las secuencias. Por ejemplo, el siguiente código borra la pantalla, imprime la cadena Esto es un ejemplo en las coordenadas 5,10 y a finalmente sitúa el cursor al principio de la pantalla. CHPUT: BUCLE: equ#00A2 ;Rutina BIOS de impresión de un caratcer ;Imprime los carácteres uno a uno ;Termina al encontrar un carácter 0
Grupo alternativo
A' B' D' H' F' C' E' L'
I ( ect ri t) v o n.
R (efesco m em . r r ) IX IY
SP ( unt r de l pi ) p eo a l a PC ( ont dorde pr gr m a) c a o a
}
! 8 bits
"
TEXTO:
LD LD OR RET CALL INC JR db db db db @>
HL,TEXTO A,(HL) A Z CHPUT HL BUCLERegistros de índice
M Esc A:
27, E 27, Y, 5+32, 10+32 Esto es un ejemplo 27, H
;Borra la pantalla ;Sitúa cursor en 5,10 ;Cadena ;Sitúa cursor al principio ;Fin de la cadena
Banderas (registro F)
7 6 5 4 3 2 1 0
Z H - P/ N V S C
S = Signo Z = Cero H = Acarreo mitad
P/V = Paridad/Desbordamiento N = Resta C = Acarreo
Cursor arriba M Esc B: Cursor abajo M Esc C: Cursora la derecha M Esc D: Cursor a la izquierda M Esc E: Borra la pantalla y sitúa el cursor al principio de la misma M Esc H: Sitúa el cursor al principio de la pantalla M Esc J: Borra desde el cursor hasta el final de la pantalla M Esc K: Borra desde el cursor hasta el final de la linea M Esc L: Inserta una línea encima de la línea del cursor M Esc l: Borra la línea del cursor M Esc M: Elimina lalínea del cursor M Esc x 4: Selecciona cursor de bloque M Esc x 5: Esconde el cursor M Esc Y +32 +32: Posiciona el cursor en las coordenadas , M Esc y 4: Selecciona cursor de línea M Esc y 5: Muestra el cursor
2
27
® EXTROM (015FH) Llama a una rutina de la SUB-ROM (BIOS extendida de los MSX2 y superiores) Entrada: IX = Dirección de la rutina a llamar Otros registros: depende de la rutina allamar
2. DESCRIPCION DE LAS BANDERAS
• S: Signo. Esta bandera refleja el signo (el MSB) del resultado
de determinadas operaciones aritméticas, lógicas, de rotación o desplazamiento, y de algunas operaciones de transferencia de datos entre registros.
Salida: depende de la rutina a llamar Registros: depende de la rutina a llamar ® EOL (0168H) Borra el texto hasta el final de la líneaEntrada: Salida: H = Coordenada X del cursor, L = Coordenada Y del cursor -
• Z: Cero. Se activa si el resultado de la operación realizada
previamente es cero (cuidado: el valor de la bandera es UNO cuando el resultado de la operación es CERO). También se usa en instrucciones de comparación, para detectar coincidencias.
Registros: Todos
® MATRIZ DEL TECLADO PARA USAR EN SNSMAT (0141H)Fila/Bit
! " # $ % &
%
7 ; B J R Z
$
6 ] A I
#
5 [
"
4 \
!
3 =
1
0 8
• H: Acarreo mitad. Se activa cuando hay acarreo del bit 3 al 4
en una operación aritmética. Es usada internamente por el Z80 y raramente resulta útil para el programador.
2 -
9
• P/V: Paridad/Desbordamiento. Esta bandera tiene dos
funciones distintas, dependiendo de lainstrucción. Tras una operación lógica o de rotación/desplazamiento, la bandera se activa si el número de bits puestos a 1 del resultado es par. Tras una operación aritmética se activa si se ha producido desbordamiento (el resultado de la operación no cabe en 8 bits).
ACENT
/
G O W
.
F N V
,
E M U
`
D L T
'
C K S
H P X F1 BS
Q Y F2
• N: Resta. Se activa tras una...
Regístrate para leer el documento completo.