Preamble
I own a Gotek floppy emulator that I use with my BBC Model B. It is the latest model with the Artery AT32F435 MCU1, so there is a lot of memory space and processing power for future features in firmware updates. I am looking to minimise expense and trying to see if it is possible to use that same Gotek floppy emulator with a Macintosh, or Apple ][.
After looking on a couple of forums(2, 3) and then this question, Can the Gotek floppy emulator be made to work with classic Macs?, the answer seems to be:
"No, because the cable/connector/interface/operation/electrical_signalling of a standard floppy interface is different from that employed by Apple".
I am well aware that:
- Mac floppy drives were very different (or superior, depending upon your own particular bias) to standard floppy drives (auto-ejecting being the first thing that springs to mind), and;
- Electrically, the ID34 connector for the standard floppy, and the ID20 connector, for the Apple floppy, are not wired up in the same way and obviously don't fit together.
Standard floppy interface working on an Apple IIc
However, this question, What are the differences between the various HxC Floppy Emulator hardware options when used with an Apple II?, links to a short video, Slim HxC Floppy Emulator on Apple 2c, showing a standard floppy drive emulator being used on an Apple ][.
That video is produced by closed source commerical outfit HxC, and the hardware is not a Gotek. That seems to have been a side project and isn't commerically available, so that is a dead end.
Another example of it working with an Apple ][ system
This closed issue on Github, Using Flashfloppy with Trackstar 128 (reading Apple 2 disks) #333 also shows that it can be (partially) done (using HxC firmware)4:
I haven't had a lot of success so far; HXC firmware at least gets me far enough to boot an Apple II game but disks are read-only.
Joining the dots
Now seeing that:
- the Floppy Emu, referred to in this answer works with both a Mac and Apple ][ (as demonstrated in this video, Floppy Emu disk emulator for vintage Apple II, Macintosh, and Lisa computers ) - implying that the wiring of the 19/20 pin interface of the Apple ][ and Macintosh, respectively, is compatible, and;
- the Gotek has an open source firmware now available, FlashFloppy - implying that it can be changed/modded
it doesn't take much of a stretch of imagination to realise that some firmware changes could be made (either via a Feature Request, or a private fork and a bit of hacking) to add both Apple ][ and Macintosh functionality to a Gotek - just leaving the electrical interface needing to be sorted out.
TL;DR
So, my question is, ignoring for the moment the required firmware changes, what cable changes are required to get a Gotek half-way talking to an Apple ][ or Mac?
That is to say:
- What are the custom changes to the floppy cable that were made in that video, but not shown?
- What, if any, additional discrete logic is required (logic level shifting, glue logic, etc.)?
- Clearly any discrete logic could be dispensed with by having the logic handled in firmware. However, this would probably require a Gotek to be reflashed each time it is moved between an Apple device and a PC-floppy drive compatible device. So an external small logic board would be preferrable.
- Without trying to increase the scope of this question too much, I'm looking for an outline of this required logic.
Note: This question is for Apple ][ and classic Macintosh and a USB based solution will not work. Neither the Apple ][ nor Macintosh have USB, and the floppy was phased out for the modern Apple computers starting with the coloured 1999 iMac.
References
1 See Github: keirf/Flashfloppy - Wiki - Gotek Models
2 GOTEK Floppy Emulators in Classic Macs?
4 Photos of (and information about) the Trackstar can be found here, AppleLogic - Trackstar, and here, Trackstar 128.
Footnote
Here is the pinout of the Apple Floppy Drive Cable 821-0655 from Oldcrap.org - Apple Disk 5.25
And this would appear to be a standard floppy connector pinout