EasyManua.ls Logo

Commodore 1581 - Burst Transfer Protocol

Commodore 1581
138 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
1011
DISK
CHANGE
1100
DISK
FORMAT
NOT
LOGICAL
1101
RESERVED
1110......
SYNTAX
ERROR
1111
NO
DRIVE
PRESENT
BURST
TRANSFER
PROTOCOL
Before
using
the
following
burst
transfer
routines,
you
must
deter
mine
whether
or
not
the
peripheral
is
a
fast
device.
The
Fast
Serial
(byte
mode)
protocol
makes
that
determination
internally
when
you
include
a
query
routine
(send-cmd-string;).
This
routine
addresses
the
peripheral
as
a
listener
and
thereby
determines
its
speed.
BURST
READ
send-cmd-string;
if
device-fast
then
serial-in;
repeat
read-error;
toggle
clock;
repeat
wait-byte;
if
status
=
ok
then
toggle-clock;
repeat
wait-byte;
toggle-clock;
store-byte;
until
end-of-sector;
until
no-more-sectors;
set-clock-high;
eke
CloC
read-1541;
BURST WRITE
send-cmd-string;
if
device-fast
then
repeat
serial-out;
repeat
send-byte;
until
last-byte;
serial-in;
clock-low;
read-err;
clock-high;
until
last-sector;
else
write-1581;
(*determine
speed*)
(*turn
8520
to
input*)
(*repeat
for
all
sectors*)
(*retrieve
error
byte*)
(*wait
for
status*)
(Vait
for
byte*)
(*start
double
buffer*)
(*get
data*)
(*
start
next*)
(*save
data*)
(*release
clock
line*)
(*send
unit
read*)
(*determine
speed*)
(*repeat
for
multi-sector*)
(*serial
port
out*)
(*repeat
for
sector-size*)
(*sendbyte*)
(*last
byte
?*)
(*serial
port
in*)
(*ready
for
status*)
(*controller
error
?*)
(*restore
clock*)
(*until
last
sector*)
(*unit
write*)
97

Table of Contents

Other manuals for Commodore 1581

Related product manuals