--------------------------------------------------
LIKBEZ
--------------------------------------------------
(C) P. Yu Fedin
FULL DESCRIPTION + FULL ROM Disassembler
TR-DOS 5.04T (5.03)
For professionals
And as for those
WHO WANTS TO BE.
continued
Interface ports BETA DISC
To control the interface BETA DISC used
Ports:
31 - conclusion - the instruction register the SH-93, enter -
register state of SH-93.
63 - Register Track SH-93.
95 - Register sector SH-93.
127 - Register of data SH-93.
255 - conclusion - a system register, the input signals DRQ
and INTRQ.
Port 31.
Instruction register, the most important. With his program
the controller gives commands to conduct operations. Chip can
perform 11 teams:
BIN HEX
0000HVRR # 00 - # 0F recovery.
0001HVRR # 10 - # 1F search.
001THVRR # 20 - # 3F Step in the previous direction.
010THVRR # 40 - # 5F step forward.
011THVRR # 60 - # 7F Step back.
100MSECA # 80 - # 9F Reading sector.
101MSEC0 # A0 - # BF recording sector.
11000E00 # C0, # C4 Reading address.
11100E00 # E0, # E4 Reading track.
11110E00 # F0, # F4 track record.
1101IIII # D0 - # DF Forced interruption.
Flag bits:
RR - rate positioning of the head:
R1 R0 T step
0 0 6 ms
0 1 12 ms
1 0 20 ms
January 1, 1930 ms
This table is valid for a clock frequency of 1 MHz.
When the signal TEST = 0 the period is about 400 ms and not
changes.
V - checking track number after positioning.
H - head load.
T - modified track number in the register of the track after
each step. A - type of address labels (0 - # FB, 1 - # F8).
C - check if the number of the disc in the identification of
index field.
E - the delay after loading the head at 30 ms.
S - side of the disc.
M - multi-sectoral operation.
I - Interrupt condition:
I0 - Upgrade the drive in the Ready state.
I1 - Upgrade the drive in the state of "not ready".
I2 - on the index pulse.
I3 - immediately.
The command "restore" performs positioning on track 0. If
after 256 steps the signal TR00 does not appear, then the
command exits. Always satisfied when you reset the controller
regardless of the availability drive.
The command "search" - in case the track should be the
current track number and the register data - required. Move the
head occurs before their match.
The command "move" promotes the head on a step. The direction
set by Commands "forward" and "backward"
The command "read sector" reads with the current track
sector, whose number is specified in the register of the sector.
Side of the disc is given by the flag S (0, 1). When the flag
is set M reads all sectors by the end of the track. Flag A -
type of address labels: If A = 1 - # F8, erasing sector is
allowed, with A = 0 - # FB, erasing prohibited. At first read
the ID sector; if none is found, then status register flag is
set "array not found". Otherwise, if match track number, side,
sector, and the checksum, the data is read: regular bytes is
given in the data register and is accompanied signal DRQ. Byte
must be read from register data to the emergence of the next,
otherwise the register state flag is set on "data loss". In
the end of the reading verified the checksum and if
it does not match, the status register flag is set on "check
sum error". When This multi-sectoral operation is terminated.
The command "write sector in the identification of
sector performed like the previous one. Signal DRQ
appears at the request of the first byte of data. Then
evaluated 22 bytes for double-density (for
Single 11) - the gap between the index and the area
data. After that, if the data register has received
byte write strobe is issued and recorded data
starting with zero bytes and address labels. Register
Data should receive another byte in response to
Each signal DRQ speed record. If the byte is not
received, the status register is set
bit "data loss" and is written to disk 0 byte.
After data is recorded checksum and byte
- Space. WSTB signal is set to 0.
The command "read address" reads the first 6 bytes
got the ID sector, including the checksum. If the checksum does
not match, it sets a flag "check sum error" and continue
reading. This command byte from the register of the track is
placed in the register sector. At the end of the usual signal
is generated INTRQ and status register is reset bits "Busy".
Command "Read Track" reads all information from
tracks, including the service. It is not issued
gating read and checked the checksums.
The command "track record" is designed to format disks. All
information, including spaces and field indices and data from
all tags. Recorded all the bytes except # F5 - # FE, which is
interpreted as a control address labels. Thus when formatting
these bytes can not be recorded. A list of these bytes you see
in the table below:
Appointment
Bytes
In FM mode MFM
# F5 is not allowed to record labels # A1 in
MFM
Calculated cont
Roll amount
# F6 is not allowed to record labels in # C2
MFM
# F7 Write the calculated checksum
sum
# F8 - # FB Record # F8 - # FB with Record # F8 - # FB in
CLK = # C7 MFM
Record # FC # FC with CLK = # D7 Record # FC in the MFM
(Index mark before the first index
array)
Record # FD # FD with CLK = # FF # FD record in the MFM
Record # FE # FE with CLK = # C7 Record # FE in MFM
Calculated control
Naya sum
(Index mark at the beginning of the index
array)
# FF Write # FF with CLK = # FF Write # FF in MFM
The command "forced termination" is defined for
completion of any command being executed. Unlike
other teams it may be issued at any time
time. The condition interrupts depends on the bits of the
command. If they are 0, then the command is aborted and INTRQ
not produced. If I0 = 1 interrupt executed after the transition
signal CPRDY from 0 to 1; for I1 = 1 - from 1 to 0. If I2 = 1 -
Admissions index pulse. If I3 = 1 occurs immediately interrupt
command. After these conditions are met given signal INTRQ.
to be continued ...