HP 1660A Logic Analyzer Floppy Drive Replacement

Replacing an Obsolete Floppy Drive to Make an old Tool More Modern.

Many, many years ago I scored an HP 1660A on eBay for 250 bucks. This is professional quality equipment that probably cost at least ten times that price when new. What a deal!

Of course the reason I got it dirt cheap was it was twenty years old when I bought it. Thirty, now that it’s 2022. Much has changed since then.

Back in those days, your only real choice for removable bulk read/write storage was the floppy disk. These little plastic squares enjoyed their heyday from about 1980 to 2000 when flash memory and CDs killed them off.

Since the floppy disk died a relatively quick death from 2000 onward, you’ll be hard pressed to find modern equipment that can read them. When you do get a working drive and disk in hand, you still have to ask yourself why? Why dig through increasingly expensive new old stock for replacements when you could replace it with a more modern solution?

After the 1660A’s floppy drive just stopped working one day, I decided to bring this old machine kicking and screaming into the 21st century. It turned out to be more complicated than perhaps it should have been.

Floppy Disk Drives

For those of you under a certain age, you will have never suffered the floppy disk drive. Let me explain.

A floppy disk is a thin plastic disk covered in magnetic dust. It’s mounted in a plastic sleeve to protect it. You had to put it into the drive, then wait for the mechanics to physically spin the disk up and move the read/write head to the correct spot. This would frequently make noises a computer should not make. Being mostly mechanical, the disk drive is sensitive to dust, moisture, foreign objects, poor quality components, and general wear and tear. Much of the same applies to the disk, which is far more vulnerable than it seems.

Electronics-wise things aren’t any better. Floppy drives are old enough that they are almost directly connected to the host CPU. They have no intelligence and must be explicitly managed, including inserting delays to slow your software down to match the glacial disk speed. Many of the signals are not standardized, so it’s entirely possible to have two almost, but not quite, compatible drives that can’t be interchanged.

Basically the floppy disk and drive are awful things that I am very happy we are (mostly) though with. Some people will insist the floppy is a wonderful thing, and the terrifying buzzing clicking noises are pleasing in some way. Do not believe them.

Fortunately, floppy emulators are readily available and relatively cheap. These are little gadgets that do all of the bullshit of talking to a floppy drive for you. It manages to convincingly fake all the nonsense a real floppy interface insists upon, while using a more modern data storage device instead of a disk. The target machine won’t know the difference! Though the floppy interface is so primitive it literally can’t know the difference!

Most of the time you can just do a 1:1 swap between floppy drive and floppy emulator. That will work for any “PC style” floppy drive. Unfortunately there are dozens of not-quite compatible drives out there. Guess which type the 1660A has? It took a while to chase down the magic bullshit needed to get things working, but I did get it working eventually!

Replacing the Drive

Opening the 1660A is relatively straightforward. This was made back when most stuff was designed for repair and service, something I do miss. You can even still get the service guide for these things over here. Service manuals are wonderful things that explain how to disassemble and test equipment. Definitely worth a read.

I should point out that equipment from this era typically has a cathode ray tube (CRT) for the display. CRTs are almost as bad as floppy drives, and far more likely to kill you. Careless contact with a CRT will result in one or all of the following:

  • A high voltage, high energy electric shock. Possibly enough to kill you, definitely enough to kick the shit out of you.
  • A violent shrapnel explosion. Pedants will insist on calling it an “implosion”, but the glass shards will slice their faces up just the same.
  • A loss of an expensive, likely impossible to obtain part that will render the device completely useless. Honestly this is the bit that worries me the most here. Make of that what you will.

TLDR summary: don’t fuck with CRTs. They will kill you.

Fortunately the disk drive is mounted on the opposite side from the CRT, and is held down by just two screws.

Apparently HP used several different types of floppy drive for their equipment. Some use standard PC style floppy drives. Some use HP-specific proprietary drives. This one uses an odd not-quite-standard drive. See if you can spot the difference here:

Turns out half of the floppy cable wires are grounds. While redundant grounds can improve signal integrity they are, well, redundant. Nobody’s going to mind if you take a few grounds away to use for something else.

Apparently HP decided running a separate power cable to the floppy drive was too much, so they used a drive that sends power over some of those redundant lines. Whether this was a deliberate attempt at gouging customers for repairs, an actual engineering decision of sound reasoning, or just an arbitrary decision has been lost to time.

You can get floppy emulators that let you take power from these pins. Unfortunately I chose the Gotek emulator because it was cheap. Apparently one of the cost cutting measures was to only support PC-style drives. So if I can’t just plug it straight in, what can I do?

Chasing down the information I needed was not easy, but I eventually came across two good sources. Of the two, the former was more useful. UPDATE: looks like the second link has gone down as of October 2022. If it stays down I’ll remove it.

There are two ways to get the Gotek emulator working with this kind of interface:

  • Modify the Gotek by physically cutting traces and soldering patch wires.
  • Modify the cable by physically cutting wires and soldering on a power connector.

The Gotek cost me thirty-some bucks and would require a fair amount of work to get it usable. Floppy cables are dirt cheap because nobody uses them anymore and I have at least one spare lying around. Ergo, modify the cable.

I got the Berg connector off an ATX power supply I scrapped years ago. It was literally just hanging around my workspace, waiting for this moment to shine. At least I like to think it was.

At this point, the drive is together enough to test, but I’ll quickly show the last problem I ran into when trying to button up.

The actual floppy drive is a “slim” type that is about 3/4 the height of the Gotek. In other words, the Gotek is too big to fit through the slot. After thinking about it for a while, I concluded the best way to fit it was to carefully cut out a little bit of the front panel.

Getting that far required removing the front panel itself, which is buried pretty deep. You have to remove the power supply and CPU boards, which is thankfully straightforward. A Dremel with a cutting disc made short work of the offending plastic.

Unfortunately the bracket doesn’t fit the Gotek. I had to cut the back “flap” off, then drill some new mounting holes. I didn’t get those holes in the right place, so the drive is too far forwards.

Eh, it’ll do for now.

Testing the Gotek Floppy Drive Emulator

First, dig out a USB drive to sacrifice to the gods of emulation. This is more literal than you might hope; it appears you must format the drive into tiny partitions. Gotek has multiple formatting tools, so just pick one and run with it I suppose. Get it ready, then keep it in the emulator during testing. You’ll see why in a bit.

It took a while to get the Gotek configured properly. I would remind you again, this source is the one that told me the magic configuration:

  • Jump S1
  • Jump JA
  • Jump JB
  • All others open

This is the only configuration that worked. Other arrangements of jumpers gave errors. At least shuffling the jumpers around is relatively painless.

One important caveat is that you need a disk in the drive for the 1660A to pass the self-test. Otherwise it will pretend you don’t have a working drive. That was very confusing. Once you figure that out, it’s smooth sailing.

Then, just test the virtual floppy disk can be read by both the 1660A and a modern PC.

Success! Well, of a sort. There are a few things missing, like the ability to change disks. I doubt I will ever need more than a handful of virtual disks, so I don’t consider that a big problem.

Finishing Up

When I started this site, a tune up of the HP 1660A was one of the earliest articles I was working on. I discarded it because it was so boring I didn’t feel like finishing it.

Well, part of my reason for doing this is to keep obscure information that others might find useful. It might not have been a particularly entertaining read, but it’s informative. Given what I had to go through to get this done, I figure it’s worth publishing for any hypothetical readers trying to do the same.

If you are following my advice, hypothetical reader, I wholeheartedly recommend modifying the cable before trying to modify the replacement drive. Much easier to do, and you need the same tools to do either mod. Cables are much easier to replace if you make a mistake. Alternatively, just buy an emulator that’s compatible straight out of the box.

This was done primarily to support my 6502 projects. I have other uses in mind, but the 6502 is proving hard to debug without hardware assistance. Without a disk you have to enter all the setup into the 1660A using the rubber keyboard and dial. Every. Single. Time. I also can’t get screenshots out of the 1660A without a working disk drive. Both are need-to-haves for this line of work.

Currently I’m just using the built-in Gotek firmware, but this emulator is just an ARM microcontroller. With just a little effort, you can completely re-write the firmware. I’m not nearly a good enough programmer to do that, but there exists a firmware known as HxC that can run on the Gotek. It has a lot of features, so I might try using it in the future- but I need to stress the basic default Gotek firmware is working just fine!

While the 1660A was open, I dusted it with some of that “canned air” you can get for just that purpose. Unfortunately 30 years of dust combined with 25KV coming off the CRT means most of that dust is firmly locked in place. I did clean the keypad contacts at the same time, which was more successful. Now the all-important run button works reliably.

Working on old equipment is a mixed experience. On the one hand, you can extend the life of expensive equipment. On the other hand, you have to do a lot of work to find replacement parts, work around short-sighted design choices, and sometimes do extensive reverse engineering. It’s not always easy to tell if it’s worth it at the outset.

Because I do use my logic analyzer, I needed to fix it eventually. It’s been invaluable for complex digital projects, like the 6502 stuff. I was afraid I’d blow something up, or break the CRT, or any number of nightmare scenarios. Now that I’ve finished, I’m once again wondering why I didn’t do this sooner.

With the logic analyzer fixed, I can get back into the 6502 stuff, along with some other computer-related projects. That’s for next time though.

Have a question? Comment? Insight? Post below!

Discover more from Some Disassembly Required

Subscribe now to keep reading and get access to the full archive.

Continue reading