Close
0%
0%

Atari ST Floppy Drive Emulator Adapters

Connecting a floppy drive emulator (Gotek) to the Atari ST with a few small adapter boards.

Similar projects worth following
Getting old computers to work with modern equipment is a continual struggle. In this case, I am connecting a floppy drive emulator to the Atari ST computer. The Gotek is a popular floppy emulator which can house a USB drive with multiple disk images, and switch between them. However, connecting the emulator to the Atari ST can be a challenge. My solution is to use a few small PCBs as adapters to modern cables while minimizing cost. Other similar solutions exist, but many are closed projects and can be expensive for production and shipping. Ordering your own boards from PCB fabricators can be cheaper than overseas shipping from a homebrew vendor.

There are several goals for the project:

  1. Connect the Gotek floppy drive emulator to the Atari ST so that it can read and write emulated floppy disks.
  2. Do not irreparably damage the original Atari ST.  IMO these old computers deserve to be maintain as closely as possible to the original design.  Some solutions exist for the problems listed below, but they involve bending pins on chips which are no longer in production, or cutting traces on the PCB.  I would prefer not to damage parts if at all possible.  Also, I don't want to take apart any cables or external drives to make this work.
  3. Minimize cost to the end user.  The costs can be high especially when shipping back-and-forth overseas.
  4. Most Atari ST computers have a built-in floppy drive.  Many users replace the internal drive with the emulated drive, but my floppy drive works fine and I'd prefer not to replace a working drive.  However, there is also an external floppy connector on the back.  The external drive is always drive B while the internal is always drive A.  Most software requires the disk to be in drive A though.  So I would prefer to have the Gotek be the external drive, but also be the A drive.

The first part of the project is getting the Gotek to work as the drive B first.  Then trying to swap the logical drive letters to make Gotek drive A.

The first problem to be solved is connecting the Gotek to the Atari ST.  It has a standard 34-pin, 2-row, 100mil pitch pin interface.  The Atari ST has a 14-pin circular DIN which is not possible to find a cable for anymore.  So I made an adapter PCB that just takes in a 34-pin header and will plug straight in to the back of the Atari ST.

Next I need to provide power to the Gotek, and it's a standard floppy power input, but the drive only needs 5V power and not 12V power.  It's possible to just use USB to provide power to it, and so I made a tiny adapter from the 4-pin, 100mil pitch floppy interface to a mini-USB connector.  I also threw a switch in there in case you want to turn the drive off when the computer is off.

Another solution to provide power is to use the cartridge port of the Atari ST.  There already exists solutions for this, but they are closed source, so I have to redesign it myself.  They provide some USB type A ports which I can connect to the mini USB connector above.  Then when the power to the computer turns off, the drive will turn off automatically.

The last step is to swap the drives.  This requires swapping two pins on one of the chips on the board.  My plan is to desolder this chip from the board and replace it with a 40-pin socket.  Then I will make a 4th PCB which has headers to go down to the socket, and then another socket going up.  The chip will plug into the adapter which will plug into the socket on the board.  The pins to swap will have their own headers which can be jumpered for normal operation, or drives swapped.  This way, if the user wants, they can hardwire the swap, or put a jumper on some headers, or even run wires outside the Atari to a DPDT switch so it can be changed on the fly.

  • Success on Drive B

    Justin Davis09/22/2021 at 12:37 0 comments

    I was able to flash the drive with FlashFloppy firmware with no serious issues.  There was a slight problem of figuring out when to connect/disconnect the reset line, but a little trial and error got it working.  The instructions provided were not quite right for me.  I had a couple issues:

    It didn't get detected as a drive at first.  The instructions had me put the jumper on the wrong pins.  I moved the jumper down one set of pins, and the drive was now detected.  However, opening the contents looked like garbage folders and filenames.

    I wasn't sure the pinout of the cable was correct.  Some people have the drive select pins reversed on their cables. I finally cut traces, and soldered on jumper wires to swap the pins, and got the same behavior.  I should investigate this more, but I suspect the same signal may come out on both pins.

    I then loaded the logging firmware to get more insight.  The log said it was only loading the autoboot drive image and not finding any other images.  I switched from the HxC compatibility mode to the indexed mode where I can manually specify the disk images, and bam it worked.

    I think the HxC compatibility mode must set up its own sorted list of disk images, but it only works when you boot into it.  You can't run that program by opening the disk and launching it.  I think that's peculiar that some disk directories can't be read, but they can be booted.  Seems inefficient and awkward.  I can see some software which requires a cold boot, but you can always keep a directory structure, and give an error message if the software was loaded manually.  So I won't be able to use the HxC mode until I can boot from this drive.

    Anyway, three of the four boards are now working.  I may either look into modelling a 3D printable enclosure for the drive to make it neater.  Or I may look into the more dangerous task of disassembling the computer and desoldering that chip for the drive swap.

  • Gotek flashed

    Justin Davis09/17/2021 at 20:00 0 comments

    I finally got the Gotek drive flashed with the FlashFloppy firmware: https://github.com/keirf/FlashFloppy

    Unfortunately, I ordered the "wrong" board which requires the ST-Link to program it.  Fortunately, I happened to have an ST-Link here.  However, the drive is not quite working as planned.  I think since it's not a very supported board by the community, I may have something backwards.  Changing the jumper over to a different set of pins from what it recommended, the ST detects drive B and tries to read from it, but it comes up as garbage in the directory.  

  • Boards in

    Justin Davis09/16/2021 at 00:27 0 comments

    Received my boards and they look good.  See pictures below.  I had one small error on the cartridge board - I connect one too many pins to ground.  There are only 3 ground pins, and I connected 4 somehow.  I had to cut one trace.  I have only tested power and fit.  The drive did not work when connected, but I didn't insert a USB drive yet.  I also haven't flashed as better firmware yet - my plan is to load FlashFloppy.  That's up next.

    I haven't installed the drive swap chip yet.  I want to make sure everything external works first.  I figure if I can get it working as a B drive first, then swapping to an A drive will be easy.

View all 3 project logs

Enjoy this project?

Share

Discussions

Pedro wrote 4 days ago point

That would be awesome!

  Are you sure? yes | no

bluearcus wrote 4 days ago point

Do you have a part for the DIN pins your using? I have a similar idea for another retro machine encumbered with a rather irritating DIN interface that I'd much prefer as a DB-9!

  Are you sure? yes | no

Justin Davis wrote 4 days ago point

The part is Mill-Max Manufacturing Corp #4123-0-00-15-00-00-08-0.  Here's a link to Digikey: 

https://www.digikey.com/en/products/detail/mill-max-manufacturing-corp/4123-0-00-15-00-00-08-0/10063633 

  Are you sure? yes | no

Pedro wrote 09/18/2021 at 22:06 point

Are you willing to build and sell the emulator adapters? I would be interested in one! I got a GoTek emulator from Ebay, but came without cables (None have cables, I checked afterwards. Odd.)

  Are you sure? yes | no

Justin Davis wrote 4 days ago point

I think if there's interest I could put them up on Tindie.  I may contact some other hobbyist stores to produce them.  I may just share them on PCBWay so anybody can order them.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates