[keith-snook.info]

~ My Old HP35670A FFT Analyser gets a USB Floppy Disk Emulator ~

It's 2020 and corona virus lockdown in the UK lets me start and sometimes even finish some long overdue projects like putting a USB Floppy Disk Drive emulator in my trusty HP35670A (Agilent AT35670A) FFT signal analyser ~ What should have been a simple purchase and fit project turned out to be more interesting due to a non standard TEAC Floppy Disk Drive (FDD)

Several years ago I managed to get the 16bit windows 2000 programs I use with the HP35670A analyser to run in 64bit windoze 10 using WineVDM and retired an old desktop that had a floppy drive ~ I then stored 35670A files in the analyser and down-loaded them via a USB GPIB lead but the analyser had to connect to a PC via a USB cable

Using a USB memory stick directly on the analyser as if it were in a FDD should be a good feature but in practice getting the 'cheap' Gotek emulator to work was not that simple ~ Apart from a non standard FD interface on my HP35670A the Gotek emulator has little support and the green LED indicated nothing useful

Pictured is the FDD in my HP35670A which is actually a later Agilent version made in Malaysia with a black fronted FD which you may have noticed has no 4pin power connector on the left side

The Floppy Drive is a TEAC model FD235HF C558 which is a special version that has a +5V power supply within the data cable as described in this advert under 'Another option'

Early versions of the HP35670A may have a standard FDD ~ I once had one of the first HP prototypes which was full of 'cut and strap' connections but I can not recall if the FDD had a separate power connector or not ~ it was long ago

This is the Gotek emulator fitted on the HP35670A FDD carrier ~ The data connector is offset to the middle and further forward and although the ribbon cable reached from the mother board it was tight so white heat shrink was fitted over the tab shown because it was surprisingly sharp edged for an internal part

The front top edge of the emulator was fitted with some 2mm black foam tape to close an odd looking gap

It fitted okay and did not look out of place apart from red LEDs but it needed a 5V supply and checking the pinout of the Gotek and the FD325HF(C558) revealed . . .

Standard Floppy Drive/Gotek interface No connection
No connection
No connection
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
HIGH DENSITY SENSE
No connection
No connection
INDEX
DRIVE SELECT 0
DRIVE SELECT 1
No connection
MOTOR ON
DIRECTION SELECT
STEP
WRITE DATA
WRITE GATE
TRACK 00
WRITE PROTECT
READ DATA
SIDE ONE SELECT
DISK CHANGE READY
Cable PIN

1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34

HP35670A (A100 Disk Drive FD325HF C558)

DISK CHANGE READY
SIDE ONE SELECT
READ DATA
WRITE PROTECT
TRACK 00
WRITE GATE
WRITE DATA
STEP
DIRECTION SELECT
MOTOR ON
DRV SEL N
DRIVE SELECT 1
DRIVE SELECT 0
INDEX
DRV SEL N
MOTOR ON

HIGH DENSITY SENSE

Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
Ground 0V
DISK IN
+5V
+5V
+5V
No connection
No connection
No connection

The table above was derived from data for a standard FDD and sections 9–34 and 9–35 of the HP35670A service guide ~ Apart from the introduction of the additional connections marked in Magenta the difference between the FD325HF C558 A100 Disk Drive and the Gotek standard FDD pinout is simply a reversal of the 34pin connector

The table also shows that the AT35670A A100 FDD +5V supply and an additional DISK IN line are via wires used for Ground connections on a standard FDD ~ As all grounds on a standard FDD and the Gotek are connected together this would short the +5V if these devices were fitted unmodified

The DISK IN line is used by the system to detect when the A100 FDD is ready with a disk and pin22 (pin13) on the FD325HF C558 is ground so no need to do anything ~ DRV SEL N pin29 needs to be grounded for the system to use the A100 FDD as INT: disk so solder a link from P1 pin14 to ground on the Gotek PCB

Unlike an old school FDD or a PC motherboard ~ the Gotek device does not have a keyed connector to locate orientation of the 34 pin ribbon cable

There is a cutout in the plastic housing of the Gotek to indicate which way up the cable should go but it does not prevent a cable being inserted 180˚

As seen in the first picture the short 34 pin ribbon cable to the A100 Disk in the AT35670A is reversed with pin 1 (marked red) on the right so no twist is required to connect to the Gotek

All that was needed was to hack the Gotek PCB to provide +5V from the 34 pin cable to the circuit ~ The cable is 180˚ rotated so pins 7 and 9 and 11 on the PCB need to be isolated from ground and connected to P2 pin 1 on the PCB

Another option would be to make a custom ribbon cable with 3 wires taken out to a 4pin power connector but where's the fun in that? ~ Or you may be able to buy an interface PCB from GLK Instruments who also have a lot of useful stuff relating to old HP and other test equipment

Because the Gotek PCB uses a pin header rather than an IDC34 male socket it is reasonably easy to remove a block of 12 pins to cut the ground away on the top side of the board as shown above as well as the bottom ~ The purple wire shown below connects P1 pins 7 and 9 and 11 to the +5V connector pin1 to power the Gotek as the A100 FDD

The green LED on the front of the Gotek did not correctly indicate MOTOR ON and in the HP35670A this was confusing as I expected it to operate in a particular way at boot sequence and when saving and copying ~ The white wire shown above now connects the green LED L4 cathode to P1 pin 16 to operate it from the system as MOTOR ON ~ The cathode of L4 was moved to the empty position at anode of L3 ~ R21 is not fitted so this pad is isolated
With the above modifications made the Gotek powered up and was recognised by the 35670A system and is seen here saving a file

The USB memory stick is 1GB and was the smallest I could find ~ after formatting it by pressing the 2 black buttons while powering the analyser and 4 minutes later I had 638 floppy images which was about 637 more than I wanted

If you use a 2GB or larger USB stick you can have up to 999 floppy images but whatever you do placing the USB in a PC only shows the first one ~ FD01 if Gotek formatted

Putting the USB stick in an Apple Mac still only showed the first partition although if there were a second (which there is) or more they should show ~ I think this is the same for Windoze 10 now ~ I eventually found several non Gotek programs that allowed formatting and reading less disc images but these are PC programs

Even with a low number of floppy images switching between them and with the HP35670A reading the catalog often caused errors and sometimes locked the analyser ~ Checking the waveforms and especially the read data showed the rise and fall times were very slow and somewhat distorted on the leading edge

The pull–up resistors on the 35670A motherboard are 2k2 for all inputs apart from READ DATA which is 1k ~ The FDD interface specification is 'open collector sources' ~ Pull–up resistors are required at the input/receiver end and in many cases these were 2k2 — 5k1 apart from the data lines which had 1k pull–up for 'speed'

The intermittent problem did not appear to be data corruption in either direction ~ it looked like pressing the buttons to select a different floppy image was not being registered correctly by the 35670A which attempts to read the catalog for each change and I found something similar on the internet along with a 'schematic' of the Gotek

Looking at the schematic it has a mod related to the buttons ~ which I did not apply ~ but what surprised me was the way the 6 'open collector' sources were configured using Mosfet 'open sources' driven from the processor via a 74HC04 Hex invertor and the diode DID across RN5 to 'speed up' the READ DATA signal

The source lines all have 1k pull–up resistors which are not required for 'open' collectors which the drivers Q1–Q6 turned out to be as they are SOT23 version of 2N2222 transistors and not Mosfets as drawn ~ This explains the distorted leading edge where the transistors are being over-driven even with the series base resistors RN1–RN6

Some FDD host interfaces back in the 1980s used the 74HC04 directly ~ The Gotek transistors Q1–Q6 invert the signal so here it is buffering the processor and providing signal inversion

A better solution and one which some actual FDDs used would be a 74F07 non inverting fast open collector driver and do away with Q1–Q6 and their associated base resistors and non required pull–up resistors

Here my 35670A A100 modified Gotek FDD has a 74F07D fitted and lot of parts removed and bypassed and the signals now have fast clean edges

A Sandisk cruzer fit USB stick is not much bigger than a USB plug and in 2020 the smallest storage was 8GB but now 2021 it is 16GB and no doubt as time goes by 32GB will be the smallest ~ I only required a single floppy disk image formatted FAT12 and although there are several programs like HxC and Flash Floppy that do this they render the rest of the memory space unusable

I did not look too deeply into how the Gotek works (or doesn't) but it appears to read any FAT12 partition that is 1st on a USB memory stick when the display is 000 ~ The partition does not need to be 1.44MB or 720kB or formatted with specific block size ~ it only needs to be the 1st partition and formated FAT12

Prior to version 10 (1703) Windows would only read the 1st partition on a removable device whereas my oldest Apple Mac computers with USB ports would read all the partitions but neither operating system will directly read the remaining Gotek 'floppy images' without specific software

I was seeking to copy the small (<10kB) .DAT data files from a HP35670A analyser on a USB stick and open the files in the HP35639A Data Viewer where the data could be displayed off–line in various ways with accurate level and phase markers etc. ~ Although Keysight state they still support the 35670A they have no Windows 10 software for it

As I say above Wine VDM is a program that can run old windows 2000 16bit programs like HP35639A in Windows 10 but for me a better option now is to use the Virtual Box emulator ~ which is more professionally produced by Oracle ~ on a MacBook or even in Windows

With a clean install of Windows 2000 in Virtual Box I installed a lot of my old software including HP35639A Data Viewer ~ Rather than formatting the USB sticks in the Gotek or using software specifically for FDD emulators I used the MiniTool partition wizard to create a FAT12 1st partition and a large useful exFAT 2nd partition

Experimenting with MiniTool I found it awkward to make a perfectly 1.44MB image or any partition with small FDD sized blocks but that didn't appear to be a problem becasue the 35670A was happy reading and writing to a partition as large a 128MB provided it was the 1st partition and formated FAT12

Although the 35670A was reading large FAT12 partitions okay the Catalog was very slow and an 8MB partition was much faster than any real floppy disk and more than enough space

There is a slight issue copying single files larger than 1.44MB where I guess either the 35670A system is trying to split the file and format the 'next floppy' or the Gotek is the problem ~ If you know the answer let me know

Pictured above is the screen of my HP35670A displayed on an external monitor showing the directory (catalog) of an 8MB 'floppy' image ~ The last 4 files in the list are frequency sweeps made on a pair of modified BBC AM8/16 amplifiers ~ Each file is only 4.5kB but when the 4 channels are opened together in the old HP Data Viewer software with multiple markers it is very easy to compare the 2 amplifiers to check the crossover response
Excess noise from LCD back light on source output 100mVpk to 5Vpk <30kHz <-60dBc actually ≈ -90dBc harmonics ?
QUAD Hi-Fi Buy Beer Button Valve Audio Articles QUAD Hi-Fi QUAD II info Component Colour Codes

" ~ "