VOGONS


First post, by keenmaster486

User metadata
Rank l33t
Rank
l33t

I have a non-working TM-100-2A from a 5150 I'm trying to fix.

Head assembly moves freely. I lubricated the rails to make sure. Heads look clean (and that's not my issue anyway, at least not yet).

Verified working floppy controller (IBM 5170)

If you move the heads back to track 0 before starting the computer, when doing its self test or attempting to read a disk the drive moves the heads to track 39 (or what looks like the end of the line, at least) and stays there.

It obviously won't read any disks in this state.

If you try to format, it does something interesting: it moves 2 tracks backwards (to track 37), then one forwards (to track 38), then one more and hits the stop (39). Then it repeats. It does this for every "track" it thinks it's formatting, gets all the way to 100%, and then fails with "Unable to write BOOT". So it goes 37, 38, 39... 37, 38, 39... over and over again.

Can't find anyone else describing this type of behavior online.

Not being well versed in the workings of this drive myself, I have to ask for help. Any ideas?

World's foremost 486 enjoyer.

Reply 1 of 8, by giantclam

User metadata
Rank Member
Rank
Member
keenmaster486 wrote on 2023-09-25, 04:21:

Verified working floppy controller (IBM 5170)

How did you verify controller? ..ie; known good floppy drive works?

edit: a quick glance of the service manual suggests the Track 0 switch would be a place to start diagnosing ... https://retrocmp.de/fdd/tandon/TM100-1_TM100- … al_1983_OCR.pdf

Reply 2 of 8, by keenmaster486

User metadata
Rank l33t
Rank
l33t
giantclam wrote on 2023-09-25, 05:13:

How did you verify controller? ..ie; known good floppy drive works?

I've been reading and writing disks with it since I got the machine, 5.25 and 3.5.

giantclam wrote on 2023-09-25, 05:13:

edit: a quick glance of the service manual suggests the Track 0 switch would be a place to start diagnosing ... https://retrocmp.de/fdd/tandon/TM100-1_TM100- … al_1983_OCR.pdf

I checked the Track 0 switch and it's making and breaking contact as and where it should. If it were the Track 0 switch I would expect that it is stuck closed, but that is not the case. Unless it's the Track 0 detect circuitry.

World's foremost 486 enjoyer.

Reply 3 of 8, by mkarcher

User metadata
Rank l33t
Rank
l33t

A floppy drive is not supposed to seek on its own. It should only seek when it receives pulses on the "STEP" line. If a drive moves the head either direction, it looks like the STEP signal is picking up noise (like 50/60/100/120 hz hum), and causes the drive to step at that rate. The "DIR" pin chooses whether the step will be inwards or outwards. As I understand it, early floppy drive systems worked using open-collector drivers on the controller for both the STEP and the DIR signal. These drivers can pull a signal to ground if it should be activated, but they do nothing if the signal is supposed to be high. Instead, this kind of signalling system relies on a pull-up resistor at the floppy drive to keep the signal deactivated when the controller is not activating it. Often, this pull-up resistor is called "termination resistor", although termination (like in reflection damping) is a secondary purpose at most.

In case your controller uses open-collector drivers and the floppy drive doesn't have a terminator installed (on the IBM 5150, only the A: drive at the end of the cable has that terminator installed, the B: drive should not have a terminator), the STEP input is open when it is not driven, and thus prone to noise pickup.

Reply 4 of 8, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Interesting. Well, the drive does have a terminator installed and I'm using it as the A drive with no other drive connected.

World's foremost 486 enjoyer.

Reply 5 of 8, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

It would be best to remove the drive, power it externally and see what it does. I'm not familiar with Tandon FDDs but even the older models would self-seek to track zero on power-on. If yours doesn't do that it might a sign of a problem, though (due to age) it just might be too "stupid" and requires external signals. Which is step 2 of the testing - connect wires to /DIR and /STEP and see if you can manually move the head both ways. Note that without a de-noiser a simple button setup might generate enough bounce transitions for the drive to step somewhat erratically - that's OK if it steps both ways and at most by a couple of steps at a time. It should not try to step below track zero, though again it might be too stupid to have that implemented, the mechanical stops will obviously prevent head movement eventually.

Reply 6 of 8, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Getting closer. Disconnected the Track 0 switch connector and the drive now seeks to 0 at boot and butts up against the stop. Discovered that that leaf switch is both momentary on and momentary off - it's supposed to make a connection both when depressed and when not depressed, to different pins on that connector. It works when depressed but is flaky when not. Going to see if I can clean it with DeOxit or something.

World's foremost 486 enjoyer.

Reply 7 of 8, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

It has mechanical track 0 sensor? Yeah, considering how many issues I had with media present/type and write protect sensors in 3.5" floppy drives much newer than this Tandon I can easily see it causing issues.

Reply 8 of 8, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Success. I slathered the Track 0 switch in DeOxit, hoping it'd seep through the cracks. When I came back to it several hours later it was making <1 ohm contact on both poles, a night and day improvement from before.

It also needed to be rotated back up into its original position from which it had slowly drooped over time so the head assembly would actuate it properly.

The drive now works properly.

World's foremost 486 enjoyer.