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

Tabla de contenido
; El sector de carga de inicialización lleva al principio, en 16 bytes, la especificación del disco. Los valores
; siguientes corresponden al formato AMSTRAD PCW CF2/Spectrum +3.
db
o
db
O
db
40
db
9
db
2
db
1
db
3
db
2
db
02Ah
db
052h
ds
5,0
suma:
db
O
;formato del +3
;una sola
cara
;40 pistas por cara
;9 sectores por pista
;log2(5121-7, tamaño de sector
;1
pista reservada
;bloques
;2 bloques de directorio
;Iongitud de intervalo (lectura/escritura)
;longhud de intervalo (formatol
;5
bytes reservados
;Ia suma de comprobación (módulo
256)
tiene que ser
3
para el sector
; Al entrar en el cargador estarán encajadas las péginas 4, 7, 6
Y 3
de la RAM.
; Para poder escribir algo necesitamos 48 BASIC abajo y la página 5 (pantalla y variables de sistema)
; inmediatamente por encima. La siguiente página será la O,
y
la de arriba seguirá siendo la 3 porque contiene el
; cargador
y
la pila (ésta se encuentra en FEOOh a la entrada).
di
Id
a.íbankrn)
and
OF8h
or
3
set
4,a
Id
be,baneol
Id
(bankrnl.a
out
(el.a
id
a,(bank6781
and
OF8h
or
4
Id
be,banco2
Id
Ibank6781,a
out
(el.a
Id
a,2
eall
selece
Id
hl,mensaje
call
escribir
buclefin:
;pégina
3
de la RAM (porque contiene el cargador)
; ROMs de la derecha
;conmutar
ROM
en horizontal y
RAM
; bit 2 a 1
y
bit O a O (para ROM
31
;rutina de la ROM de BASIC para abrir un canal
;escribir un mensaje
; Terminamos con un bucle sin fin que cambia el color del borde. Aqul es donde
pondrfamcs
un programa de juego,
; un sistema operativo, etc.
Id
a.r
out
(Ofehl,a
jr
buc1efin
escribir:
Id
a,lhll
cp
OFFh
ret
z
rst
lOh
inc
hl
jr
escribir
mensaje:
;un número no muy aleatorio
;eambiar el borde
;y otra
vez
al principio del bucle
;e510 es un bucle que imprime caracteres
;hasta que encuentra FFh
;con la ROM de 48 BASIC, esto escribe el carácter que esté en el acumulador
defb
16,2,17,7,19,0,22,10,1,"Hola, buenas noches, bienvenido",Offh
c1iff:
ds
512-lcliff-prinecargl,0
;rellenar con ceros hasta el final del sector
end
Sección 26. Utilización del código de máquina
219
Tabla de contenido
loading

Tabla de contenido