Tandy 1000 SL Technical Reference Manual page 197

Table of Contents

Advertisement

(control mark) flag of status register 2 to a 1 (high) in or-
derto show that a deleted sector has been encountered.
When either the STP (contiguous sectors = 01, or alter-
nate sectors=02) sectors are read or the MT (multi-
track) is programmed, it
is
necessary to remember that
the last sector on the track must be read. For example, if
STP=O2, MT=O, the sectors are numbered sequen-
tially 1 through
26
and the Scan command is started at
sector
21,
the following will happen: sectors 21,23, and
25 will be read, then the next sector (26) will be skipped
and the index hole will be encountered before the EOT
value of 26 can be read. This will result in an abnormal
termination of the command. If the EOT had been set at
25 or the scanning started at sector 20, then the Scan
command would be completed in a normal manner.
During the Scan command, data is supplied by either
the processor or DMA controller for comparison against
the data read from the diskette. In order to avoid having
the OR (overrun) flag set in status register 1, it is neces-
sary to have the data available in less than 27ps (FM
mode) or 13ps (MFM mode).
If
an overrun occurs, the
FDC ends the command with bits 7 and 6 of status reg
ister 0 set to 0 and 1 , respectively.
Seek
The readlwrite head within the FDD is moved from cylin-
dertocylinder under control of theSeekcommand. FDC
has four independent present cylinder registers for
each drive. They are cleared only after the Recalibrate
command. The FDC compares the PCN (present cylin-
der number) which is the current head position with the
NCN (new cylinder number), and if there is a difference,
performs the following operations:
PCN
<
NCN: Direction signal to FDD set to a 1 (high),
PCN
>
NCN: Direction signal to FDD set to a 0 (low),
The rate at which step pulses are issued is controlled by
SRT (stepping rate time) in the Specify command. After
each step pulse is issued NCN is compared against
PCN, and when NCN
=
PCN, the SE (seek end) flag is
set in status register0 to a 1 (high), and the command is
terminated. At this point FDC interrupt goes high. Bits
DoB-D~B in the main status register are set during the
seek operation and are cleared by the Sense Interrupt
Status command.
During the command phase of the seek operation the
FDC is in the FDC busy state, but during the execution
phase it is in the non-busy state. While the FDC is in the
non-busy state, another Seek command may be issued,
and in this manner parallel seek operations may be
done on up to four drives at once. No other command
and step pulses are issued. (Step in)
and step pulses are issued. (Step out)
can be issued for as long as the FDC is in the process of
sending step pulses to any drive.
If an FDD is in a not ready state at the beginning of the
command execution phase or during the seek opera-
tion, then the NR (not ready) flag is set in status register
0 to a 1 (high), and the command is terminated after
bits 7 and 6 of status register 0 are set to 0 and 1,
respectively.
If the time to write three bytes of Seek command ex-
ceeds 150ps, the timing between the first two step
pulses may be shorter than set in the Specify command
by as much as 1 ms.
Recalibrate
The function of this command is to retract the read/
write head within the FDD to the track 0 position. The
FDCclears the contents of the PCN counter and checks
the status of the track 0 signal from the FDD. As long as
the track 0 signal is low, the direction signal remains
0
(low) and step pulses are issued. When the track 0 s i g
nal goes high, the SE(seek end) flag in status register0
is set to a 1 (high) and the command is terminated. If the
track 0 signal is still low after 77 step pulses have been
issued, the FDC sets the SE (seek end) and EC (equip
ment check) flags of status register 0 to both 1s (highs)
and terminates the command after bits 7 and 6 of status
register 0 are set to 0 and 1, respectively.
The ability to do overlapping Recalibrate commands to
multiple FDDs and the loss of the ready signal, as de-
scribed in the Seek command, also applies to the Reca-
librate command. If the diskette has more than 77
tracks, then Recalibrate command should be issued
twice, in order to position the readlwrite head to the
track 0.
Sense Interrupt Status
An interrupt signal is generated by the FDC for one of
the following reasons:
(1) Upon entering the result phase of:
(a) Read Data command
(b) Read a Track command
(c) Read ID command
(d) Read Deleted Data command
(e) Write Data command
(9
Format a Cylinder command
(9) Write Deleted Data command
(h) Scan commands
(2) Ready line of FDD changes state
(3) End of Seek or Recalibrate command
(4) During execution phase in the non-DMA mode
Interrupts caused by reasons 1 and 4 above occur during
normal command operations and are easily discernible
by the processor. During an execution phase in non-
6-22

Advertisement

Chapters

Table of Contents
loading

Table of Contents