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

Valid HTML 4.01!