Emulating floppies on the Amiga

So while I was pretty happy with being able to get ADF’s into readable floppies using ADTWin, I had actually ordered a gotek floppy drive on Aliexpress. There are quite a few places selling these. I paid about $25. The gotek has a STM32 microcontroller running some firmware that can read disk image files off a FAT32 formatted USB stick, and emulate  the interface of a 34 pin floppy drive. An LED readout and some buttons on the gotek allow you to select different images. I think by default, a gotek is set up for use as a PC floppy drive emulator, but thanks to Hervé Messinger there is a firmware to emulate an Amiga floppy drive using the gotek drives.

You do have to get the firmware onto the gotek device. This was a bit of a saga for me. You need a TTL serial device. I had some old CP2102 ones which I was pretty sure would not work (and they didn’t), plus an FTDI one.  My first problem is that I had to install the FTDI drivers on XP. This is where I hit the ‘new FTDI drivers brick fake FTDI usb serial adapters’ (google ‘unbrick ftdi’). Of course my FTDI device ended up with a VID/PID of 0403/0000 which basically does not work. Lots of googling later I somehow had the older FTDI driver installed and the inf files changed so that 0403/0000 was a valid VID/PID combo. Then I needed XP SP3 (this machine is not connected to the internet) in order for the ST Programmer software to start and then after several attempts resetting the gotek, I eventually got it to program and verify OK. Then I made sure the S0/S1 selector on the gotek was on S0 and put it in one of my Amiga 500s.

For the USB stick, you need a FAT32 formatted one with the SELECTOR.ADF image on it as well as a few other adfs. So I tested it with the lid off the Amiga and the gotek and with the LED showing 000 it boots the SELECTOR.ADF which is a simple menu gui that allows you to select adf files off the USB stick and assign them to ‘slots’. eg. first you would pick an adf and assign it to slot 001, then pick another for slot 002 etc. Then you need to make sure you choose ‘Save and restart’. That will reboot your Amiga and it will probably not be set to boot 001 or 002 or whatever one you really want to boot , so some frantic fiddling with the two buttons on the gotek to select 001 or 002 or whatever and then ctrl-amiga-amiga again and it should boot off the one you want. I keep thinking there must be some way in the SELECTOR interface to go ‘reboot off the one I have selected’. I need to do a bit more research to see if I am missing something.

Speed wise the gotek seems to go at roughly the same speed as a regular Amiga floppy drive. It probably seems slower because you don’t have the sound of the head stepping as its reading.

Perhaps the main challenge with the gotek is figuring out how to (physically) mount it inside the Amiga case. It was obviously designed with a PC case in mind … I think if you drill a few holes in the plastic case you can screw it into the Amiga in such a way that you can shove a USB stick through the normal floppy opening and see enough of the LED digits to figure out which one it is booting … but trying to press the two buttons from outside the Amiga probably requires a small screw driver poked through. Honestly I’m not sure what to do with it at the moment. It may be easier to wire up a switch to swap the disk0/disk1 select lines, then mount the gotek in an external amiga floppy case (I’m not sure if that even works with the gotek).

Ultimately if you don’t want to rebuild up your floppy disk inventory the gotek with Hervé’s firmware is pretty good.