• Please review our updated Terms and Rules here

Gotek Troubles on Model III

Joined
Aug 13, 2021
Messages
24
I am running the latest Flash Floppy on a Gotek with Artery AT32F-415CBT17 on a TRS-80 Model III with 48k RAM.
The Gotek is connected with the proper cable type from the Gotek to the external floppy edge connector.
Drive 1's internal cable is disconnected so the Gotek can be drive 1. My understanding is you can not run the Gotek as drive #2 on a Model III so as to make a 3 drive system (if there is a way, I'd love to know to try once this problem is resolved). Jumper S1 enabled and all other disabled. I added jumpers for the OLED and encoder. I went back and double checked my pins and no shorts on jumper points.

That being said, things were working and now they are not. FF.cfg is on the root of the USB. Only mod to FF.cfg is interface=shugart.

Same USB when working. I am using hfe files (converted from dsk with HXC Floppy Emulator). The file shows on the OLED but says 000/000 and when the machine accesses the Gotek it quickly moves between tracks and seems to get stuck on 19 & 20?
I have tried different files, tried converting the same DSK again, tried reformatting the USB, tried removing the OLED and encoder to return the Gotek to stock configuration. I do not have a spare cable. I have not tried a different USB.

Any thoughts on what is up? Cable gone bad perhaps? What does 000/000 indicate? (I can't find any references on Google)

Thanks all:
Mark
 
While I haven't tried External Floppy's on the Model 3, I have used them on the Model 4.
The Internal Floppy's are strapped for DS0 & DS1, and the External Floppy's (if used) are
strapped for DS0 & DS1. The hardware is what makes the selection of Internal or External
and that is the same for the Model 4. So, in CP/M I have the hardware strapped as DS0, DS1
and DS0 for my Floppy Drives. (You will notice that the External Floppy's are also using Pin 10
and Pin 12 for the External Floppy selections, but the manual specifies them as DS2 & DS3.)

That's likely what is causing your problem....Strap External Floppy 's as DS0 & DS1.

When you select the Image you want to execute on the GOTEK, then you need to boot that
image, if it's mounted as Internal DS0 the Boot Device. (I use a GOTEK for my Desktop to Boot
Different Versions of DOS.)

Larry
 
Last edited:
HI Larry,
Thank you for the response, but I am afraid I do not know what you mean by strapped? Do you mean set the jumper on the Gotek as DS0 & D1? I also do not know what you mean about pins 10 & 12.
If you can, a bit more detail might help. Apologies for my unfamiliarity.

Cheers,
mark
 
Drive 1's internal cable is disconnected so the Gotek can be drive 1. My understanding is you can not run the Gotek as drive #2 on a Model III so as to make a 3 drive system (if there is a way, I'd love to know to try once this problem is resolved). Jumper S1 enabled and all other disabled. I added jumpers for the OLED and encoder. I went back and double checked my pins and no shorts on jumper points.

So, here's your problem, which is kind of a repeat of what @ldkraemer said:

The internal and external connectors on the Model III can *each* only take two drives; it's four drives total, two on each chain, and, here's the important part: on each chain the drives are physically jumpered for DS0 and DS1. IE, from an electrical standpoint a three-drive Model III has two drive 0s.

If you want to attach an external Gotek to your III you should *not* be pulling the connector off the internal drive; leave it connected and jumper the external Gotek for DS0. This should make it available as drive :2 to TRSDOS. Generally speaking these DOSes do not appreciate having gaps in the drive sequence, which is what you’re creating by unplugging the internal drive :1, and you’ve compounded the problem by setting the Gotek to DS1; this would make it the *4th* drive, IE, :3.
 
Thanks. That makes a lot of sense. I'd like to add the following observations to see what you think.
When I had physical drive 1 attached, the two physical drives work as DS0 and DS1 should - that's good.
When the Gotek is set to DS0 and connected to the external drive connector, the machine does not want to boot from physical drive 0 (I have not tried booting from the Gotek as I am not sure how to build a boot USB yet) but tries to access both the physical and Gotek as though they are the same device.
When the Gotek is set to DS1 and physicl drive 1 is connected, the OS tries to access both as drive 1. This is the reason I disconnected physical 1 from the cable. With the physical drive 1 disconnected, the OS accesses the Gotek but just sins through the track numbers very fast.

So, it appears as though the OS thinks there is only one of the chains. Does that make sense?
Does that help with some details? What is so frustrating is it WAS working until I added pins for the encoder and swapped the LED for a 128x64 OLED. Both the encoder and OLED work when connected.
All I can think is maybe the cable is bad or I killed something on the Gotek while solder?
My next steps are to put the Gotek in place of physical drive 1 and see what happens. I also ordered another Gotek to see how it responds. (I have other vintage machines that can benefot from a Gotek as well so, always good to have a spare)

Mark
 
When the Gotek is set to DS0 and connected to the external drive connector, the machine does not want to boot from physical drive 0 (I have not tried booting from the Gotek as I am not sure how to build a boot USB yet) but tries to access both the physical and Gotek as though they are the same device.

If you look at the schematics for the TRS-80 Model III disk controller you can see that the *2* drive select signals (which are pins 10 and 12) present on each of the two card edges are driven by separate outputs of a 74LS174 latch at U6; unless the software is broken or this device is defective the internal and external drive selects should not be driven at the same time.

Speculation from looking at the Flashfloppy manual: Do you have a jumper on "JC" on the Gotek? That appears to be the signal to switch between "shugart" and "ibmpc" modes. (Or, alternatively, do you have: "interface = ibmpc" set in an FF.CFG file on the USB drive?) On a TRS-80 the drive select signals are separate but a common "motor on" signal comes on simultaneously for *all* attached floppy drives. On an IBM PC the motor-on and drive-select signals are combined so the motor comes on for only the drive that's actually selected. I kind of feel like what might be going on here is your attached Gotek is coming on whenever the motor signal is on, but if that's the case I'm not sure how it's letting the machine work with the internal drive 0.

I suppose it's possible your drive controller is damaged? Does this machine have the original Radio Shack controller, or a third-party one?
 
I'm not the original owner, so I will have to open the machine to get the info on the drive controller. I'll update the thread with that info.
I can tell the drives are original Radio Shack.
I do not have jumper "JC" set so, if I am correct, the Gotek is set to Shugart. I do have interface=shugart explicitly stated in the FF.cfg.
I is definitely appears the drives act as one. Perhaps the previous owner made some sort of mod? I will try to see if anything looks modified, etc when I have it opened.

So I am not sure why I didn't think of this sooner. When I bought the Model III, it came with a bunch of stuff. The seller had gotten it at an estate auction. There was an external (probably Radio Shack brand. No label) drive. I have tried connecting the external card connector in place of the Gotek. I lights up on boot of the machine but I am unable to access it from the OS. Could be the drive, could be the cable, could be the floppy card.

I'm going to do some testing.
  • Try the Gotek on a non-TRS-80 machine.
  • Try the external drive with my GreaseWeazle (just arrived so need to learn how to use it).
  • Make an edge card to 34 pin cable when my parts order arrives.
  • Check out the controller for brand and any homebrew mods by the previous owner.
  • Try the new Gotek when it arrives and see if it is the Gotek.
Worse case scenario, if I can make physical floppies with GW then the machine is usable as it is. But the Gotek issue will remain a mystery........
 
I have 3 real drives on my Model III and the external requires a terminating resistor. Does the gotek have a have a terminating resistor enable/disable option?
 
So I am not sure why I didn't think of this sooner. When I bought the Model III, it came with a bunch of stuff. The seller had gotten it at an estate auction. There was an external (probably Radio Shack brand. No label) drive. I have tried connecting the external card connector in place of the Gotek. I lights up on boot of the machine but I am unable to access it from the OS. Could be the drive, could be the cable, could be the floppy card.

This external drive that came with it, did it come with a cable, and is that the one you're using? (Also, did you re-connect the internal drive? Like I said, TRS-DOS doesn't like missing drives in the chain.) One of the annoying things about TRS-80 drive chains is how Tandy doctored the drives; think of it as the Tandy equivalent of the IBM "twisted cable". Short version: Tandy drive cables have missing teeth, so each edge connector has only one DSx signal present, and Tandy drives are hacked to they respond to *all* DS signals. If you have an external drive that's set up the Tandy way hooked up to a cable that expects the drives to be jumpered to their select position then weird things will happen.

(Also, if it is a "teeth missing" cable and drive, did you have the drive at the correct connector to show up as :2 instead of :3? How are you checking in DOS if the drive responds?)
 
Unfortunately no, the external drive did not have a cable. :-(
The cable I am using, for both the Gotel and to test the external drive, is a 34 pin IDC to Edge connector straight floppy cable from a Kaypro.
That is interesting to know about the Tandy drive cables.
I did reconnect the cable to physical drive 1. I did not check the controller yet.
I am starting to think cabling may be the issue. Why it worked before but doesn't now is puzzling, as I have been using the same 34 pin to edge connector cable. The cable is a standard floppy cable two edge connectors, one on the end, one in the middle and the 34 pin female on the other end. I hope the there is nothing funky about the cable that might have killed the Gotek. I would test it on my Kaypro, but I don't have a 34pin to edge converter to put it in line with the Kaypro or the TRS-80 as an internal drive.

Hopefully the parts I ordered to make cables will arrive soon.
 
Hi Folks:
I had some time today to open up the Model III. I am attaching some photos of the motherboard and the floppy controller. As I am just beginning down the TRS-80 restoration adventure, I am not sure what is normal and what is not, what is an OEM part and what is not.
So the motherboard has some jumper wires, but there are matching connections on the silkscreen so I suspect these belong there.
The floppy controller does not say Radio Shack or Tandy nor does it look like ones I see on eBay.
I also am including some photos of the top of physical drive 1 to see if that is of value and speaks to what Larry was calling "STRAP"ed?

Other differential diagnosis steps I have taken:
  • I checked the continuity of the floppy cable. All good and a straight through.
  • I re-flashed the Gotek. All good.
  • I formatted and tried another USB just to make sure I wasn't dealing with a bad one. Same results on both USB sticks.
  • I verified all lines of FF.cfg as default with one exception - I changed interface to be "interface = shugart".
  • I tried converting my dsk files to hfe again to make sure nothing wonky was happening there.
All of these efforts had no change in the results. The machine thinks both floppy channels are identical rather than making the external port Gotek, jumpered as DS0, into drive #2. Machine still tries to access the Gotek AND physical drive 0 when I `'DIR` drive 0 and gives a `ILLEGAL DRIVE NUMBER` error when I attempt `DIR :2`

Thanks again all for helping me walk through this debug. Again, most peculiar that it was working and now not. So puzzled.
 

Attachments

  • model_iii_floppy_closeup.jpg
    model_iii_floppy_closeup.jpg
    3.5 MB · Views: 7
  • model_iii_floppy_controller_2.jpg
    model_iii_floppy_controller_2.jpg
    3 MB · Views: 7
  • model_iii_floppy_controller.jpg
    model_iii_floppy_controller.jpg
    3 MB · Views: 7
  • model_III_floppy.jpg
    model_III_floppy.jpg
    4.3 MB · Views: 6
  • model_III_mb.jpg
    model_III_mb.jpg
    3.7 MB · Views: 7
That's definitely not a Radio Shack disk controller. The blurry writing on the bottom of it looks like it reads "Progressive Computer Products" and the model name is FDC-III. I found this PDF which mentions this controller, and it says that on the *internal* plug at least this controller supports four drives on a single cable. Poking around the 80 Microcomputing magazine archive it looks like this controller was mostly sold under the "Micro Mainframe" brand name... and if I keep following that trail of breadcrumbs I found this page for the "SVD" floppy disk emulator that says this:

But Wait...

Some of you have it easier. There are after market floppy controllers for the TRS-80 that don't have the the same "behavior" with the different controller connectors.

For example, the Micro Mainframe controller has two connectors just like the stock controller. However, the drive signals on both connectors are the same. This means that for the SVD to act as drive #2 to the TRS-80 you load the virtual drive #2 in the SVD software.

So... if this ridiculous wild goose chase is actually correct you were not hallucinating; on your particular Model III having the Gotek on the external plug jumpered for DS1 would in fact interfere with the internal drive 1! What an enormous pain in the rear end. To make life even more fun: that drive you took the picture of, is that the one you're unplugging to try to make this work? If that's so that's not great, because see that blue chip on it? That's the terminating resistor pack. It is expected behavior that drives might behave badly if you unplug that from the chain. If the two cable plugs on this card are literally in parallel that might explain why it was working intermittently.

Anyway... so, let's just accept at this point that everything above is true. Here's some options to try:

1: If you're happy with two drives, IE, one physical drive and the Gotek, either unplug drive 0 and use the Gotek in that position so you'll have drive 1 with its terminating resistor on the chain, OR move that blue terminating resistor from your unplugged drive 1 to drive 0, jumper the Gotek for 1 and see if magically everything works reliably now.

2: If you want three drives here's a dirty hack:

Look in the second table on this page for the Shugart drive pinout diagram. (Not the PC version.) The two drive positions the Gotek supports are /DS0 and /DS1, which are pins 10 and 12 respectively. /DS2 is pin 14. So let's turn pin 14 into pin 10.

Carefully pry the back off the cable connector you want to plug the Gotek into. (I would recommend you use the last connector on the cable, it'll be way easier than the middle) Count the wires from pin 1 (on most cables it'll be the side with the stripe) up to 10, and carefully separate wires 9 and 10 from each other without damaging the insulation. Then count up to 14 and do the same thing for 14 and 15. Now here's the fun part: Pull that section of wire loose from the little claws corresponding to pins 10-14 of the connector, lift it up, and free up enough of it that you can flip it upside-down relative to the cable section on either side. IE, flip it, just like the twisted cable in a PC, and push it back down on the little teeth. Then put the back back on the connector and snug it down with a clamp or some gentle hammering.

Verify with a continuity tester that pin 14 on the end of the cable you're going to plug into the external connector lights up pin 10 on your modified drive connector, jumper the Gotek for DS0, and with any luck your computer will now see it as drive "2".

(Edit: FWIW, swapping pin 14 with 12 is also a legit strategy. In this case you'd jumper the Gotek for DS1. I picked swapping 10 and 14 so you'd jumper the Gotek the same as you would for a "normal" model III.)
 
Last edited:
What TRS-80 Model 3 OS are you booting?

Drive 1 has the DIP shunt strapped for DS1 in a DS{0..3} configuration, but also has the
HS shunt strapped for Head Load with Motor Select. I don't remember seeing that before
on Tandon TM-100 Series Floppy Drives because they don't use a Head Load Solenoid.

But as Eudimorphodon points out the FDC appears not the Standard TRS-80 Controller.

Larry
 
Thank you both for all the input. Apologies for the blurry photos. You are correct. It does say "Progressive Computer Products" and the model name is FDC-III"
I am going to give the pin 10-14 swap trick a try when my parts arrive and make a custom cable. While I am waiting for my parts to arrive, I think I will see what additional material I can find about the controller card.

Regarding the drive photo. Yes, that is internal physical drive 1 that I tried unplugging to make the Gotek work as drive 1. Knowing that the blue chip is a terminator clears up a lot.

This is starting to make sense. I truly appreciate the community support here.
I'll post more as I experiment.
 
There is one other option you might want to consider. If you make your cable long enough
to add the GOTEK at the end of the cable, you can use the Card Edge ADAPTER Connector
to a 34 Pin connector connector to the GOTEK.

I have one that is designed such that you can jumper any Drive select to the one you want at
the end of the cable. It's also designed to allow pulling Pin 2 HIGH or LOW to make 3.5" Floppy
Drives be LOW or HIGH Density.

The problem is they are back in Missouri, and I am a Snow Bird in Sun City, AZ until April 1st.

I've attached a couple of Photo's of the Adapter. It's a lot easier to use an adapter versus swapping
one conductor in a 34 Conductor cable. I prefer to make all modifications on the adapter versus
modifying the cable.

I've also included my Document on connecting 3.5" floppy Drives to the TRS-80 Model 4. It should
help explain what you will be doing, except for the TERMINATOR Resistor which may or may not be
installed on your Model 3 with the different FDC. Either way, the TERMINATOR is already installed
on the GOTEK. Read over the attached PDF and see if it makes sense.



Larry
 

Attachments

  • FD01.png
    FD01.png
    20.9 KB · Views: 5
  • P1030298.PNG
    P1030298.PNG
    914.2 KB · Views: 5
  • P1030300.PNG
    P1030300.PNG
    863.5 KB · Views: 5
  • Model4_35_Drives.pdf
    124.7 KB · Views: 4
It's also designed to allow pulling Pin 2 HIGH or LOW to make 3.5" Floppy
Drives be LOW or HIGH Density.

FWIW, not all (at this point probably a small minority) of 3.5" drives listen to pin 2, they just follow the disk hole sensor for density select.

Either way, the TERMINATOR is already installed on the GOTEK.

Looking at a picture of a Gotek board the termination is 1K resistors. This should be enough for a short chain, but the terminators back in the day were usually in the 150-470 ohm ballpark; given this controller's odd layout of having the two card edges in parallel with *two* separate cables hanging loose it's at least a possibility that the weaker pullup provided by the Gotek might not be enough by itself.

Anyway. I guess my attitude when it comes to cabling is crimp-on 34 pin IDC connectors are still pretty easy to find (the edge connectors not so much?) so crimping on a new connector for your Goteks (or 3.5" drives) isn't too much of a big deal. Adapters are nice if you're going to reuse the old cable, but after dealing with Tandy cables with the teeth pulled out for their proprietary "all selects all the time" method of drive select I kind of prefer to not go there.

One thing I am curious about with this third-party disk controller is what line it puts the fourth drive select on. Radio Shack used pin 32 on the Model I and Color Computer, but that was later standardized as head select. This mixup limits the Model I to three drives if they're double-sided, curious if this Model III controller has the same limitation. The original SA400 drive manual only defines the first three drive selects, the Tandon TM 100 puts the fourth select at the "modern" pin 6 position.
 
Last edited:
One thing I am curious about with this third-party disk controller is what line it puts the fourth drive select on. Radio Shack used pin 32 on the Model I and Color Computer, but that was later standardized as head select. This mixup limits the Model I to three drives if they're double-sided, curious if this Model III controller has the same limitation. The original SA400 drive manual only defines the first three drive selects, the Tandon TM 100 puts the fourth select at the "modern" pin 6 position.

I have a similar controller from J&M Systems I bought back in '85. Manual refers to it as a JFD-III controller. Uses a straight through cable with none of that pulled pins or twists nonsense.
I believe it will allow for 4 half height internal drives off the internal cable.

Right now I have 2 DSDD internals and 1 SSDD external.
For fun, I just now added a 4th DSDD external. TRSDOS shows 4 drives and I can read/write to it fine. They are set DS0 to 3 with terminating resistor in last external.

The main J&M manual explains how to install the drive 0 kit with nice photos.
There's also a second generic manual with disk drive information. Under the TEAC section shows DS3*
* Model I fourth disk drive applications- please discuss with out technical staff.
So 4th drive may just be a Model I issue.
 
There's also a second generic manual with disk drive information. Under the TEAC section shows DS3*

So it probably uses pin #6. That's good to know.

The Radio Shack setup of using only DS0 and 1 separately on the two card edges sidesteps the whole problem, of course, which is probably why they did it that way.
 
I SOLVED IT!!!!!!
Oh there is dancing here tonight!!!!!

Ok: you guys were amazing teaching me what I needed to know and I was able to extrapolate a solution.
Larry's guidance on changing drive number by using a DIP switch in place of the programmable shunt socket.
Eudimorphodon: Your information about the FDC and showing me the terminator resistor.

These were the key factors to the solution.
Here it is.
  1. Swapped the shunt socket for a DIP switch on physical drive #1 (top drive)
  2. Changed physical drive #1 (top drive to #2) via DIP
  3. Connected the GoTek to the under-case edge card.
  4. Assigned the GoTek DS1
  5. Booted and physical drive 0 is seen as 0 and boots from floppy.
  6. GoTek is seen as Drive 1
  7. Top floppy is seen as drive 2
I first tried making the GoTek DS0 and keeping the physical drive 1 as 1 but removing the terminator resistor in hopes the FDC would see the GoTek as drive 2 and use its internal terminator.
No joy.
Switched physical drive 1 to drive 2 on DIP and GoTek to DS1, no terminator resistor on physical drive 2 (original drive #1)
No joy.
Replaced terminator resistor and there ya go.

Thank you all so much........... 😁🍾
🎆
 
Back
Top