Apple 13-0010--001 Computer Drive User Manual


 
ELITE SERIES USER MANUAL THEORY OF OPERATION
7.2.12. Direct Use of Disk Drives
It is often necessary to access the drives di-
rectly from assembly language, without the use
of DOS. This is done using a section of 16
addresses that are latched toggles, interfacing
directly to the hardware. There are eight two
byte toggles that essentially represent pulling
a TTL line high or low. Applications which
could use direct access range from a user writ-
ten operating system to DOS—independent utility
programs. Tbe device address assignments are
illustrated in the figure below.
The addresses are slot-dependent and the offsets
are computed by multiplying the slot number by
16. This works well in hexadecimal where $n0
(with n as the slot number) can be added to the
base address. To engage drive i in slot #6, add
$60 to $C08A (device address assignment for
engaging drive 1) for a result of $COBA. How-
ever, for code that is not slot dependent use
$CO8A,x (where the x register contains the value
$n0).
In general, the addresses in the figure below
need only be accessed with any valid 6502 com-
mand. When reading and writing bytes, ensure the
data is in the appropriate register. All the
following engage Drive 1 (assume slot #6).
LDA $COEA
BIT $CO8A,x (where X-reg contains $60)
CMP $C08A,X (where X-reg contains $60)
Page 7—18