• Please review our updated Terms and Rules here

I used an RLL controller on an MFM drive

Or is it the case that the TM-502 always works in your IBM AT, and always fails to seek in your 486 based clone ?

That is correct. And not only that, it also fails to seek in the Compaq Portable I AND the IBM PC that I used for testing- though I only tried it will RLL controllers in the Portable. It seems like it only likes the AT, as if the drive can tell what computer system it's in. Ditto with the Microscience. That is why it's so weird to me. I can't help but think that there are two unrelated problems- one with the RLL controllers, the other with the power supply.

I'm pretty sure the power-on seek isn't dependent on the controller sending any signals to the drive- at least this one.

I would really like to figure out what the heck's going on with the drives only working in one system, but I don't know where to start!

EDIT: Actually, here's where I'll start... how do I use an 8-bit RLL controller with the AT, and bypass the AT BIOS' int 0x13 implementation? My AT has a BIOS dated 1/10/84.
 
Last edited:
EDIT: Actually, here's where I'll start... how do I use an 8-bit RLL controller with the AT, and bypass the AT BIOS' int 0x13 implementation? My AT has a BIOS dated 1/10/84.
Set the HD drive type to NONE in your AT BIOS setup, and just plug in the 8-bit RLL controller. The BIOS on the controller will automatically take over and figure out what kind of drive it is and what to do.

Note that 8-bit controllers often operate slower in an AT and require a different optimal interleave.
 
Set the HD drive type to NONE in your AT BIOS setup, and just plug in the 8-bit RLL controller. The BIOS on the controller will automatically take over and figure out what kind of drive it is and what to do.

Note that 8-bit controllers often operate slower in an AT and require a different optimal interleave.

That's the issue- the Advanced Diagnostics diskette's Setup option asks for the drive type from 1-15 for Drives C and D, and doesn't permit a "None" value.

No need for me to worry about interleave- these drives aren't staying in the AT... it's just for testing.
 
"None" is also drive type "0". It would have to accept that somehow. But if that doesn't cooperate, there are friendlier generic AT setup programs that you could use instead.
 
I'm pretty sure the power-on seek isn't dependent on the controller sending any signals to the drive- at least this one.
So, prove it to yourself by powering up the drive with only power connected.

The BIOS on the controller will automatically take over and figure out what kind of drive it is and what to do.
That is misleading. The TM-502 drive has no way of reporting that it is a TM-502, nor its capacity, nor its geometry.
 
I would really like to figure out what the heck's going on with the drives only working in one system, but I don't know where to start!
Controller/drive incompatibility? There are combinations of controller and drive that will not work together. So, for example, the TM-502's timing requirement for stepper related signals is shown on page 3-11 of the TM501/TM502/TM503 User's Manual [here]. If a particular model of controller does not meet those requirements, intermittent or no stepping will occur.

And SpeedStor claims a Seek Test succeeds anyway!
SpeedStor has to believe the feedback that it gets from the controller. And, the controller is sure to be believing the feedback that it gets from the TM-502 drive ('MFM' with stepper); the SEEK COMPLETE status line going active after a burst of step pulses.
As explained [here], an 'MFM' (with stepper) drive doesn't really know if, for whatever reason, the heads successfully moved to the desired cylinder or not (well, except for cylinder 0). There's an act of faith happening within the drive.

Having written that, the controller gets feedback from the drive, via the TRACK 0 signal, as to whether or not the heads are on/off cylinder 0. So, if the controller is asked to seek to cylinder 0, and the controller does not see the TRACK 0 signal activate after a certain period of time, then I expect that the controller would report a failed seek command. And the opposite; if the heads are on cylinder 0 and the controller is asked to seek to a different cylinder, then if the controller does not see the TRACK 0 signal become inactive, then I expect that the controller would report a failed seek command.

SpeedStor's seek test is sure to involve seeking on and off cylinder 0, and thus by passing, suggests to me that the controller is seeing the TRACK 0 signal change as expected.

Are you sure that the heads are not moving at all - not even just a little bit.
 
So, prove it to yourself by powering up the drive with only power connected.
I made sure to park the drive in the AT before trying it on my test IBM PC motherboard... Tandon drive moved back to cylinder 0 rather shortly after power was applied- which of course is what is supposed to happen. Looks like I was wrong about this and I'm hallucinating.

Either that, or it really WASN'T seeking and decided to behave in a fashion akin to "Schrödinger's stepper motor".

And I don't get WHY there would be a controller incompatibility. Tandon has a microcontroller dedicated to handling the burst mode introduced on the ST-412, so it will therefore handle any step rates the ST-412 can, and should therefore work on my unmodified XT Xebec controller!
 
I made sure to park the drive in the AT before trying it on my test IBM PC motherboard... Tandon drive moved back to cylinder 0 rather shortly after power was applied- which of course is what is supposed to happen.
Yes, I read "Self-calibration on power-up" in the TM502 manual.

Tandon has a microcontroller dedicated to handling the burst mode introduced on the ST-412
Well, one of many functions that the TM502's CPU performs.

so it will therefore handle any step rates the ST-412 can
The TM502 manual indicates a range from 5 to 200 uS. One Seagate source of ST-412 specs indicates 5 to 500 uS. If the Seagate source is correct, then your statement is incorrect (e.g. a 300 uS rate would work for the ST-412 but not the TM502).

But beyond step pulse rate, there are other aspects of the step signal that also need to be met. The 'buffered seek' timing diagram in the TM502 manual shows two other timing requirements: pulse width, and inter-pulse gap.

Let's look at your situation of the TM502 connected to the Xebec card (the Xebec-made-for-IBM one supplied in the IBM XT), a situation where you cannot see any stepping (apart from that generated by the drive's self-calibration at power on).
I've just done something that I've wanted to do for a while; hook up an oscilloscope to the STEP output of the Xebec-made-for-IBM card. In fact, I looked at all three variations of the card. All three showed the same:
* Step pulse rate (period) = 70 uS
* Step pulse width = 17 uS
* Therefore (no need to measure), inter-pulse gap = 53 uS (70-17)

If we compare that to the 'buffered seek' timing diagram in the TM502 manual, the STEP output of the Xebec-made-for-IBM card meets all three criteria of the diagram.

So, from that, there is no incompatibility from a stepping point of view. You know that your TM502 is good (it works in your AT), and presumeably you know that your Xebec-made-for-IBM card is good. Assuming that the +12V to the TM502 is good, I can only see one thing left: the control cable on the Xebec-made-for-IBM card (bad or incorrectly connected).
 
I'll do more tests when I have a free moment, but I'd like to also mention- the Seagate ST-4038 which ALSO didn't appear to be working at all on any other board (getting seek errors all over the place and an inability to position itself over a track) also works correctly with the WD AT controller as a type 8 drive.

The cable can't be the issue, as I have an ST-412 attached to the Xebec controller that works inside my XT. Here's a list of drive/controller/power supply combinations I've tried, and their results. I made considerable effort to make sure cables, drive select jumpers, and terminators were applied properly:
HDHD ControllerPower SupplyWorks?
TM-502ST11RCompaq Portable INo Seek
-WD1002-27X--
Microscience HH-825ST11R-Power-on Seek only
-WD1002-27X--
ST-4038ST11R-Seek Errors (cannot hone in on tracks)
-WD1002-27X--
TM-502WD-1003V-MM2Generic 250W ATNo Seek
ST-4038--Seek Errors
Microscience HH-825--Seek Errors
ST-4098--Drive attempted to power on, reached full speed, then shut off after going slightly beyond full speed. LED blinking.
ST-412Xebec XTXT 130WNo Errors
TM-502--No Seek
--Generic 250W ATInitial Seek Okay after AT testing. LLFormat/HLFormat not tested.
-WD AT ControllerAT 192WNo Errors
ST-4038--No Errors
Microscience HH-825--LL Format OK, drive caught fire before testing HL Format




My honest-to-goodness guess at this point is that the power supply I was using wasn't providing correct voltage... or that the WD AT Controller is one of the few HD controllers worth its salt. Why the Compaq Portable, my bench 250 Watt AT-class, and an XT-class power supply all failed when the 192-Watt AT power supply succeeded is a mystery to me. But I'll do more tests later and get to the bottom of this once and for all.
 
Have you checked for different step rates? The default on most cards is different. Having it set too high, or even in some cases too low, will result in seek failures.

A little googling around turned this up:
Seagate ST4000 Series Drives
(Model/capacity/usec)
ST4026
21.4
25-50

ST4038
31.9
10-70

ST4051
42.5
10-70

ST4053
44.5
3-70

ST4096
80.2
3-70

And several sources suggest a 3msec for the TM-502
 
I don't know if it matters, but consider that the ST11 is a Seagate made controller. Apparently your WD controllers work fine with your 502. I've got an ST11R, but it's part of a hardcard-type assembly--and the hard drive is a 3.5" MFM Seagate drive.

I don't know if this has anything to do with the problem, but it just struck me as odd.
 
I don't know if it matters, but consider that the ST11 is a Seagate made controller. Apparently your WD controllers work fine with your 502. I've got an ST11R, but it's part of a hardcard-type assembly--and the hard drive is a 3.5" MFM Seagate drive.

I don't know if this has anything to do with the problem, but it just struck me as odd.
Back when my garbage Kalok worked, it was attached to the ST11R and worked just fine, so I don't think that's it.
 
Well, your garbage Kalok and your 502 share a common link--Jugi Tandon.

I've seen an interview with him before- he looks like a rather humble and laid back guy. I harbor no bad feelings toward him :p.
 
Nothing personal against Jugi, but his stuff was made mostly for price, not reliability., the "Mad Man Muntz" of the drive business. Take JTS drives--please.
 
The ST11M / ST11R series of controllers will work with any brand of drives -- remember, ST-506/412 is a "dumb" drive standard, so the controller has no way to tell which brand or model of drive you have it connected to, unless the drive has already been formatted using that controller. Seagate did sell so-called "paired program" MFM/RLL hard drives to go along with their controllers, but that really just meant that the drive came from the factory already low-level formatted and ready to install an operating system.
 
I have updated my matrix of drives vs computers vs power supplies and put them into an Excel sheet. So far, the only new one I've tested was the following:
HDHD ControllerPower SupplyWorks?
ST-4038WD-1003V-MM2Generic AT 400WNo Errors, was not LL Formatted since testing in WD PC AT Controller

I know WD wasn't the only manufacturer of 16-bit MFM controllers, so I'm wondering- was it standard for the same manufacturer to use the same Low Level Format (LLF) data structures between controllers, or was the format industry-standard by the time the PC/AT's controller was created? Is the WD-1003 format documented anywhere, like the data structures suggested by the ST-506 manual? I suppose only the "WD-1003" prefix is meaningful when determining LLF compatibility.


I'll test more drive controllers later today, but at this point, I conclude that my drive woes were a combination of faulty power supply and improper cabling in numerous combinations.

There are two last things I can think of- is it possible that a proper LL Format from the PC-AT controller somehow "reinitialized" the media so it will work in other controllers, or that the 8-bit controllers just somehow can't handle the drives anymore? I'd really like to get to the bottom of this, since I'd like adding MFM drives to new machines to go more smoothly in the future...
 

Attachments

  • mfm_matrix.zip
    2.1 KB · Views: 1
Back
Top