Tandy MFM Hard Disk Drive Reference

[Copyright 1989,2001,2002 Frank Durda IV, All Rights Reserved.
Mirroring of any material on this site in any form is expressly prohibited.
The official web site for this material is: http://nemesis.lonestar.org
Contact this address for use clearances: clearance at nemesis.lonestar.org
Comments and queries to this address: web_reference at nemesis.lonestar.org]

This page is still being completed. Excuse the dust.

This article discusses how the different MFM hard disk controllers and
interfaces that were used by Radio Shack on the Model I, II, III, 4, 4D, 4P,
16, 12, 16B, 16BHD, 6000 and 6000HD systems work, what their limits are,
and how you can add more and faster drives to these systems.

(A version of this information was originally published in 1989 in the
newsletter "6000 > 4000 > 3000", Volume 1, Number 2, posted to the USENET
group comp.sys.tandy in a paper titled "Hard Disk Drives and your Tandy
16/6000 Computer system - Part 1", Copyright 1989, Frank Durda IV.)

ST506 - A Drive That Became An Interface Standard

The disk drives used by the Model I, II, III, 4, 4D, 4P, 16, 12, 16B, 16BHD,
6000 and 6000HD are mainly ST506-type drives. The Seagate ST506 was a disk
drive which had a MFM (Modified Frequency Modulation) interface that has been
duplicated on dozens of different drives over the years. Over time, that
interface has taken on the name of the original ST506 drive. The ST506
drive was a very low capacity drive by todays standards but the interface had
enough flexibility to allow more growth. (The ST506 interface was also
called the "S" interface by some manufacturers for a time who didn't want to
mention the ST506, a competitiors drive model, but the "S" name was no
longer used by the late 1980s. By that date, SCSI and IDE drives had started
to take over the storage market.

The ST506 interface itself consists of two cables which carry data and control
signals to and from the attached drives. The "Data" cable has 20 pins
that carry the actual serial data stream to and from the write/read heads
along with timing information used only in older drives. Although these
drives can be wired in other ways, most systems run a separate "Data" cable
to each drive to reduce the possibility of noise and line loss affecting the
data stream.

The "Control" cable has 34 pins and these are used to instruct the selected
drive as to where the heads should be positioned and which surface is to be
read or written at this time. The drive also reports its status using other
lines in the "Control" cable. (Drives compatible with the SA1000 series
drives used a 50 pin "Control" cable which had the same signals as the 34 pin
cable.) A single "Control" cable is attached to all of the ST506 drives
operated by a given controller.

The "Control" cable is terminated in the drive furthest (electrically) from
the disk controller. Most drives use a resistor pack that can be removed to
provide this termination. In systems where a separate "Data" cable is used
for each drive, signals in this cable are also terminated in the drive. Some
drives assume the use of separate "Data" cables and do not have a way to
disable termination on the "Data" cable. Other drives use a single jumper
to enable or disable the "Data" cable termination.

For all Radio Shack configurations, the "Data" cable must be terminated on
all drives.

Drives connected to the ST506 interface are restricted by two size limitations.
A maximum of eight (8) heads may be present on any drive on the ST506 bus and
a maximum of four (4) drives can be attached at any one time. All the other
size limitations or restrictions that exist in a given system are due to the
type of controller, support circuitry or software that is present. (If a
drive has more than 8 heads, it is not a ST506 drive. This limitation is
discussed in more detail later.)

Controllers and Host Interfaces

Radio Shack used four different MFM disk controller designs and two host
interface boards during the production of the Model I, II, III, 4, 4D,
4P, 16, 12, 16B, 16BHD, 6000 and 6000HD hard disk systems. Here is a
discussion of each MFM disk controller design.

#1.

The original MFM hard disk controller was only used with the 8"
8 Megabyte hard disk drives. This controller used the Signetics
0x300 processor (an early RISC device). The 8X300 processor was
being used to emulate the 1000 disk controller chip-set that Western
Digital had under development at that time. The firmware on most of
these controllers only allowed 512 byte sectors, which prevented them
from being used directly with the Model III/4 operating systems.
This controller provided connections for 34 and 50 pin "Control"
cables so that SA1000-compatible drives could be used. The 8 Meg
drive Tandy used was a Shugart SA1004, which requires a 4.34 Mbits/sec
transfer rate. This rate is incompatible with the 5.0 Mbits/sec rate
used by all ST506/ST412 drives that Tandy used in later designs.

These systems were introduced for use on the Model 2 in late 1981,
along with TRSDOS II 4.0, a modified version of TRSDOS 2.0. The
OS was changed to use 512 byte sectors (TRSDOS 2.0 used 256 byte
sectors but the first hard disk system did not support 256 byte
sectors), and include drivers to operate the hard disk subsystem.

This controller can be identified by the presence of an edge connector
for the 50-pin host interface cable.

The host interface adapter (the card that goes in the Model II, 16, 12,
16B or 6000 card cage) that was used with this controller can be
identified by the use of power strips, which appear as red strips of
plastic-coated metal running under the integrated circuits.

#2.

A modified version of the first controller. It was first designed to
be used with the 5" TM602, a 5 Megabyte drive with an interface
compatible with the ST506 which was deployed in the Model III Hard
Disk System.

This controller also used the 8X300 controller but had newer firmware
that would allow both 256 and 512 byte sectors. This and all
subsequent controller boards only provided a 34 pin "Control"
connector and the transfer rate from this point on was 5.0 Mbits/sec.
Like the original controller, it also supported up to four drives.

A 50 pin vertical header connector is used on this controller for the
host interface cable. The host interface cable pin-out was modified
so that the cable could be plugged directly into the expansion
interface (EI) on a Model III and the then-under-development Model V
(later renamed the Model IV and finally named the Model 4).

A small interface adapter was also developed that allowed this disk
controller to attach to the expansion interface port used in Model I
systems. This product was introduced in August of 1982, along with
the Model III Hard Disk System. Both Model III and Model I Hard Disk
systemsm both of which used versions of LDOS 5.1.3 (5.1.3/R) that
Tandy licensed from Logical Systems.

When a 12 Megabyte drive (TM603) became available, a new host
interface board was designed for the Model II/16/12/16B/6000 systems
which produced signals that looked like those produced by a
Model III/4 EI. This host interface card is incompatible
with the original disk controller (Type #1). The newer
Model II/12/16/16B/6000 interface card can be identified by the lack
of the red power strips running under the integrated circuits.

Because Tandy had large quantities of the now-obsolete 8-Meg
hard disk systems in its stock, the 5 Megabyte system was never sold
to Model II, 16 and 12 customers, even though its pricing was
substantially lower. Even when the 12 Megabyte systems were ready,
their delivery to stores was delayed until most primary 8 Megabyte
drives had been sold. Since the 8 Megabyte primary drives could only
use 8 Megabyte secondary drives, it was felt that the inventories
of the 8 Megabyte secondary drives would take care of themselves.

Because the second-generation host interface board for the Model II
family has signals that look just like the output of the Model
III/4/4P/4D, it also meant that add-on devices designed for those
systems could also be attached to II/12/16/6000 systems. For example,
a Network 4 card can be attached to a Model 16 by using the second
generation host interface card. The host interface card has address
jumpers that can be set so its Counter-Timer-Chip (CTC) can respond
at different port ranges. The disk controllers had similar jumpers
so that the I/O port numbers that the controller used can also be
changed. Together, this allowed a Model II/12/16/6000 system to have
more than one host interface card installed at a time. This
capability was never utilized by any Radio Shack software.

#3.

A new half-sized disk controller board was created when the WD1010 chip
set became available. Although the WD1010 controller was initially
advertised as being software compatible with the 8x300 emulation, new
releases of all Radio Shack operating systems were required to deal
with the differences.

On Model II/12/16/16B/6000 systems, this controller used the same host
interface board as controller type #2.

Controller type #3 was a reliable and apart from the software
compatibility issues, a workhorse design for many years. The most
commonly-sold controllers were type #3, followed by #2.

#4.

This was a special disk controller board was developed for the 16B HD
and was
used later in the 6000 HD. This controller was installed in the
Model 16BHD or 6000HD card cage and contained the host interface and
disk controller on a single board. This board also used the WD1010
controller chipset.

Due to the limited physical space on the board, it was decided that
only two drives would be allowed to be attached to this controller.
The extra "Data" connectors and line drivers were omitted from the
design.

Apart from the number of drives, this controller was designed to be
programmed the same as controller #3. However, slight timing
differences and hardware race-conditions required another round of
operating system updates to support this controller.

This table summarizes the four controller designs and what they allow:

Type

Name

Controller Type

Maximum Drives

Host Interface Type

Radio Shack Drives Allowed

#1

WD1000

8x300 CPU emulation

4

Incompatible

8 Meg (SA100x drives only)

#2

8X300

8x300 CPU emulation

4

Model III/4

5, 12, 15, 35, 70 Meg *

#3

WD1000-TB1

WD1010 state-machine

4

Model III/4

5, 12, 15, 35, 70 Meg *

#4

TAN 8898798

WD1010 state-machine

2

Combined in HDC

5, 12, 15, 35, 70 Meg *

*

Note that on controller types #2, #3 and #4, various marketing reasons
caused subsets of these drives to be officially supported by certain
controllers although all were hardware-capable of being used. For
example, Radio Shack only offered a TM503 (15 Meg) drive as the
internal drive on the 16B HD and 6000 HD (which used the internal
controller, type #4), although larger drives could certainly have been
used and probably would have reduced system power requirements, noise
levels and seek times, resulting in a more reliable and faster system.

Hard Disk Drives

The following tables contain information that will be useful in comparing
performance and power requirements of the various drives. The first table
shows drives that Tandy used in its external drive designs and the second
table mainly shows some popular MFM drives that can be used in most Tandy
systems. Color is used to group similar or related items together.

Model

Shugart SA1004

Tandon TM602

Tandon TM503

Tandon TM603

Quantum Q540

Micropolis
1325

Sold by Radio Shack

Yes

Yes

Yes

Yes

Yes

Yes

Formatted Size in Mbytes

8

5

15

12

35

70

Media Size

8"

5.25"

5.25"

5.25"

5.25"

5.25"

Media Height

FH

FH

FH

FH

FH

FH

Cylinders

256

153

306

230

512

1024

Heads

4

4

6

6

8

8

Seek TK to TK in msec

19

18

18

18

10

6

Seek Full Strk* in msec

150

(336)

(170)

(450)

80

62

Seek Average in msec

70

168

85

225

45

28

Latency Avg in msec.

9.6

8.34

8.33

8.34

8.5

8.33

Interface

SA1000

ST506

ST506

ST506

ST412

ST412

RWC from host

128

128

No

128

No

No

Write Precomp

128

128

Not Published

128

256

No

Rotational Speed (RPM)

3125

3600

3600

3600

3600

3600

MTBF (in hours)

8,000

Not Published

11,000

Not Published

10,000

20,000

Power Requirements in Amperes

5VDC Start

Not Published

1.2

Not Published

0.9

1.2

Not Published

5VDC Run

2.0

0.8

0.8

0.8

0.7

0.9

5VDC Max

3.6

Not Published

1.2

Not Published

1.0

0.9

12VDC Start

Not Used

5.0

5.0

5.0

4.5

3.9

12VDC Run

Not Used

1.5

1.5

1.5

2.0

2.1

12VDC Max

Not Used

Not Published

2.0

Not Published

2.4

3.3

24VDC Run

0.2

Not Used

Not Used

Not Used

Not Used

Not Used

24VDC Step

2.8

Not Used

Not Used

Not Used

Not Used

Not Used

-5VDC Start

Not Published

Not Used

Not Used

Not Used

Not Used

Not Used

-5VDC Run

0.2

Not Used

Not Used

Not Used

Not Used

Not Used

-5VDC Max

Not Published

Not Used

Not Used

Not Used

Not Used

Not Used

115VAC 60Hz

(spindle motor)

0.75

Not Used

Not Used

Not Used

Not Used

---

Typical Watts**

(102)

(22)

(22)

(22)

23

10

Model

Seagate ST225

Seagate ST251

Seagate ST251-1

Seagate ST4096

CDC 94205-51

Seagate ST151

Sold by Radio Shack

No

No

No

No

Yes

No

Formatted Size in Mbytes

20

40

40

80

40

42.5

Media Size

5.25"

5.25"

5.25"

5.25"

5.25"

3.5"

Media Height

HH

HH

HH

FH

HH

FH

Cylinders

615

820

820

1024

989

977

Heads

4

6

6

9

5

5

Seek TK to TK in msec

20

8

8

6

5

8

Seek Full Strk* in msec

190

95

70

55

65

44

Seek Average in msec

85

40

28

28

28

24

Latency Avg in msec.

8.33

8.33

8.33

8.33

8.33

8.33

Interface

ST412

ST412

ST412

ST412

ST412

ST412

RWC from host

No

No

No

No

No

No

Write Precomp

300

No

No

No

128

No

Rotational Speed (RPM)

3600

3600

3600

3600

3600

3600

MTBF (in hours)

50,000+

50,000+

50,000+

30,000+

30,000+

45,000+

Power Requirements in Amperes

5VDC Start

1.2

Not Published

Not Published

1.5

1.0

Not Published

5VDC Run

0.8

1.0

1.2

1.5

0.4

0.5

5VDC Max

Not Published

Not Published

Not Published

1.5

0.6

Not Published

12VDC Start

2.6

Not Published

Not Published

4.0

4.5

Not Published

12VDC Run

0.9

0.5

0.5

1.5

1.5

0.45

12VDC Max

2.4

2.0

2.5

2.5

2.0

2.0

Typical Watts**

14.8

11

12

23

(20)

8

*

Maximum seek rates in parentheses were not published and have been computed
as twice the average access. Note that some manufacturers compute the
average access time as the time it takes to seek 1/3rd the distance across
the drive, which means the actual maximum seek time could be higher.

**

Typical watts values in parentheses were not published and have been
computed with the formula W = V x I summed for each voltage used by the
drive.

+

MTBF values for these drives have increased since they originally became
available. Values shown are as of Seagate Pub 1000-002, March 1989.

Incompatibilities And Other Strangeness

Starting with controller #2, Radio Shack changed the "Cable Open" signal (line
7) in the "Data" cable into a signal to activate the power supply in the
secondary drive cabinets. When +12 VDC is present on this line, the secondary
power supplies are activated. The reason this was implemented was that the
old 8" system required the user to turn a keyswitch on all the drives (up to
four) to start the system and this was considered a nuisance. This local
variation of the ST506 standard can be found in all subsequent Radio Shack
disk controllers, even on versions built by Western Digital for IBM
AT-compatible computers.

Not all disk drives handle this deviation from the ST506 standard; some have
line 7 grounded, which can cause a resistor on the disk controller to burn
out. Some use line 7 for factory diagnostic control or some other test
signal. In addition, many start-up failures are caused by connecting
one or more of the data cables upside down, which will short +12 to ground
via that resistor. On the IBM AT-style controllers that Tandy sells,
this resistor is usually strapped across the solder side of the board.
The "Data" cable for the primary drive (drive 0) does not have +12 on
line 7 since that unit has the keyswitch.

So if you buy a drive that was not sold by Radio Shack and you use it
as a primary drive on one of the compatible Radio Shack controllers, it will
probably work fine. If a second drive of the same type is bought and
attached as a secondary, that is when the smoke may start pouring out.

To avoid this possibility when adding an additional drive, peel line 7 out of
the "Data" cable and run that wire over to the control relay in each secondary
cabinet. Then the drive will not have to contend with this non-compliance
with the ST506 standard but the remote power-up feature will work.

Radio Shack also implemented some other features that are really nice but are
literally tacked onto the drive with bits of wire. In all but the internal
drives on the 16B HD and 6000 HD, it is possible to write protect an
individual drive and get a visual indication of which drive is currently
selected. The connections are as follows:

+----------------------+
| | -|- = No Connection
[Drive Active Lamp] | -+- = Connection
| |
+----------------------|------------ 5 Red +5 (to controller
| +------------ 4 Purple in primary drive
[Write Protect Lamp] +--------- 3 Black Gnd or to lamp driver
| | +------ 2 Yellow board in second-
+----------------------+ | | +--- 1 White ary drives)
| | | | |
[Write Protect Switch] | | | |
| | | | | These lines were attached to test
| | | | | points or components on the drive:
| | | | |
+----------------------|--+ | +--- A Not Seek Complete
| +------ B Not Active
+------------ C Write Protect "Data" Line 5

Signals "A", "B" and "C" are attached to points on the disk drive electronics
and these points change from drive to drive. Signal "C", or Write Protect, is
attached to line 5 which on most drives is listed as "Reserved", although some
Tandon drives listed it as "Test/PK". The ST506/ST412 drives themselves use
the Write-Fault signal (Control cable, line 12) to alert the controller to
problems when attempting to write to media. The write protect signal is held
high by using the lamp as a pull-up resistor, but so little current is drawn,
the lamp never illuminates. When the write protect switch is closed, the
write protect lamp is lit and the signal line is pulled low. All four disk
controller boards monitor line 5 in the "Data" cable. The state of this
signal can be can normally be read in register 0xc0. This register is not a
part of the 1010/2010 controller chip and is implemented with external
components. All four drives' write-protect status is in the upper bits. Bit
7 is for Drive Select 1, Bit 6 is DS2, Bit 5 is DS3 and Bit 4 is DS4. As
suggested for line 7, you may want to peel line 5 out of the cable in case the
drive you have has it tied to ground.

Signals "A" and "B" are combined and when the drive is Active and Seek
Complete is true, the Active light is lit. The light goes out briefly during
seeks (Seek Complete false) and would stay off when another drive was
selected. Many drives provide a similar output capable of driving a LED, but
a marketing decision selected the incandescent lamps and a lamp driver became
necessary. The lamp driver consists of a 75453 or a 75452 with an additional
gate from a 7414. Here is that circuit:

Circuit from controllers #1 and #2 Circuit from controller #3

+------+ +------+
from 5 ---- +5 -------|8 7 | from 5 ---- +5 -------|8 7 |
drive/ 4 ---------------|3 S5 | drive/ 4 ---------------|3 S5 |
lamp 3 ---- Gnd ------|4 N4 | or lamp 3 ---- Gnd ------|4 N4 |
inter- 1 ---------------|1 5 | inter- 1 ---------------|1 5 |
connect 2 ---------------|2 3 | connect 2 ---+ +\ +---|2 2 |
+------+ | | \ | +------+
+-| >o-+
| / SN7414
+/

Some users who have installed their own drives have removed the incandescent
lamp and installed the LED from the drive in the ACTIVE socket. Then the
light defuser is removed and the old wiring is replaced with a direct
connection to the lamp contacts on the drive. Some of these arrangements only
indicate that the drive is selected (won't blink while seeking), but they are
simple to install.

The Other Limits

As mentioned earlier, the ST506 interface limits the number of drives and
heads. The 8X300 and 1010 controllers used by Radio Shack limit the number of
cylinders to 1024 that can be accessed on an attached drive.

However, the owner of controller #3 or #4 can use drives with up to 2048
cylinders by replacing the 1010 controller with a 2010 controller. On some of
these boards, the 1010 is even socketed, making the upgrade even easier. The
difference between the 1010 and the 2010 that makes this possible is an
additional bit in the Cylinder Number High register:

7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+----+---+---+
| x | x | x | x | x | x |(9)|(8)| | x | x | x | x | x |(10)|(9)|(8)|
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+----+---+---+
WD1010-05 WD2010-05

XENIX 3.2 supports the 2010 controller. (If you are still running TRSDOS-II,
don't bother getting a 2010, just keep using the Dumont.) The following patch
must be made to the diskutil utility so it will allow formatting of drives
larger than 1024 cylinders. DO NOT apply this patch if the 2010 controller is
not installed. Entering a cylinder count greater than 1024 if a 1010
controller is installed will result in an unusable format pattern.

This patch is only valid for the version of diskutil that came with
XENIX 3.2.0. The version message in diskutil must say: 3(42) 3-Mar-87

# patch /diskutil
byte offset ( to exit) ? 16be [ENTER]
16be: 04 |.| > 08 [ENTER]
16bf: b7 |.| > q [ENTER]
byte offset ( to exit) ? [ENTER]
#

When this article was written in 1989, the WD2010-05 controller is available
in single quantities from Hallmark in Dallas Tx. Even in 1989, this was
not a cheap part with prices of $85 each. Since they have not been made in
some years, they are probably even harder to locate. It is likely far cheaper
to locate an obsolete IBM XT compatible WA2 AT disk controller. Many of
these had socketed 2010 controllers.

Another factor in the favor of buying a 2010: the 1010 and 8X300 controllers
limit the top seek speeds to a rate lower than the speeds high performance
drives available today can provide. In other words, a 19 msec drive will
probably not actually run that fast if driven by a 1010 or 8X300 controller.
Even drives as slow as 28 msec can be slightly inhibited by the speed of these
controllers. The 2010 allows the higher seek rates to be achieved if software
changes are also made.

ST412 And The Death of Reduced Writing Current

The big difference between the ST506 and the ST412 is that the ST412 drive
does not have to be told by the disk controller when it should use a lower
writing current. Reduced writing current is used on the inner tracks of
drives because the bits are spaced closer together and if the writing current
is too high, the resulting magnetic field from the write head may alter bits
that were just written in addition to the bit that is supposed to be written
at a given instant. The host indicates when to use reduced writing current
(RWC) by setting line 2 on the "Control" cable to true (LOW).

All four controllers above use the "Write Precompensation Register" to control
both precompensation and reduced-write current. The assumption these
controllers made was that if the drive required precompensation, the write
current should be reduced at the same point. On most drives, this was usually
not the case.

A few ST506 and all ST412 drives use their on-board electronics to monitor the
head position and reduce the write current at the point that is correct for
that drive. Line 2 on the "Control" cable is ignored. With these newer
drives, the controller need only get the write precompensation starting point
right.

Lose Write Current, Gain A Head Select

When the hard disk drives started handling the reduced write current
management on their own, line 2 in the "Control" cable could be used for
something else. On the larger drives, line 2 has been designated as the
fourth head select (2^3), which will allow up to 16 heads to be present in
the drive. An example of this usage is the Seagate ST4096 which has 1024
cylinders and 9 heads. This drive provides a formatted disk capacity of
80 Megabytes.

If you attempted to use a drive like the ST4096 on your existing Radio
Shack system or after you upgrade to the 2010, you are still limited
to eight heads. But because this drive uses line 2 of the "Control" cable,
you must disconnect (or tape over) that pin. Otherwise when you reach
cylinder 512 and the reduced write current signal is asserted, the drive
will attempt to access heads 9 through 15, which will fail, resulting
in 7 out of every tracks being flawed-out. Covering the pin with a small
piece of electrician's tape will work fine unless you unplug and reconnect
the cables frequently.

The remainder of this paper (volume 1, number 4) has not yet been recovered
or is not yet formatted.

[Copyright 1989,2001,2002 Frank Durda IV, All Rights Reserved.
Mirroring of any material on this site in any form is expressly prohibited.
The official web site for this material is: http://nemesis.lonestar.org
Contact this address for use clearances: clearance at nemesis.lonestar.org
Comments and queries to this address: web_reference at nemesis.lonestar.org]

Visit the nemesis.lonestar.org
home page and index