Gotek floppy-emulator SFR1M44-U100 at (inside) the Atari (ST)

Preamble or why GOTEK?

One can find a lot of stuff and rumors about the “HxC floppy emulators” in relevant forums and also, that “cheap” alternatives won’t work with computers like Amiga or Atari. This article should prove the opposite, since I successfully exchanged my internal HD-drive for the floppy-emu “SFR1M44-U100 updated version” from “Gotek”.
I decided for this paticular drive, because it (theoretically) can deal with 1000 disks and supports HD. Also, I feel the price of the HxC-emus a bit overdrawn. On Amazon or ebay there are always a lot offers for about 20€ for the Gotek devices. Here’s a product picture:

Image1

What means “updated version”?

“updated version” refers to a schematic error, that could have lead to the computer failing to detect that the drive is ready (please insert a disk…). For the updated version certain chip-resistors have been reduced in their values, so that the detection runs reliable. One can distinguish the updated version by the values of “RN4″ to “RN6″ (red square in the picture). If the value is 102 (= 1 kOhms), it’s already the updated version.
If one has the old version, it is recommended to replace the resistors by 1 kOhm-resistors. Regarding this I found a PDF document on the CD of my version with the name “REPAIR SOLUTION – VB516.pdf”. If you’re missing it, you can download it here.

DSCN0178

Requirements for a successful operation

The following criteria have to be met if one want’s to use the 1.44MB-model of the floppy-emu with an Atari:

  • The floppy-controller already needs to be fitted for HD-operation. That mean, it should run at 16MHz und should be able to stand this clockspeed permanently. So this means either the Ajax-FDC or a WD1772-0202.
  • Mixed operation with an additional, external drive may be possible, but hasn’t been tested so far.
  • On the floppy-emu the jumpers “MO” and “S0″ need to be set (see picture). The Atari (in contrast to a PC) expects the first drive to be ID0.
  • One needs an USB-key with enough space. Since the floppy-bus only runs with 500kb/s it doesn’t need to be fast.
  • For comfortable disk management on the key one needs a PC running Windows. Maybe there’s also appropriate software for Mac OS or Linux, but I don’t know.

DSCN0177

What works, what doesn’t work?

– What works:

  • Using either DD or HD virtual disks. One can mix them in any order.
  • Formatting virtual disks via software on the PC, writing and reading data, importing or exporting standard disk-images.
  • Formatting DD-disks any arbitrary disk-format using the Atari, writing and reading, importing and exporting disk-images in any format(*).
  • Formatting HD-disks using the Atari, writing and reading, importing and exporting images.
  • Boot from the first disk (or the currently selected one if you do a warm boot).

– What doesn’t work:

  • HD-disks with more than 18 sectors. 18 is the limit of the emu’s firmware. If one tries more, one gets an “illegal sector” error.
  • Trying to write disk-images with “strange” formats via the PC software. In that case the program refuses to work saying it’s not a “FAT-12″ image file.
  • Since the disks are put sequentially as binary images on the key, it’s not possible to access any other than the first disk directly via the Windows Explorer without additional software.

(*) Using JayMSA I was able to write *.ST-Images on the virtual disks. This, however, only worked running it on the Atari. So selecting the desired disk via the two buttons and then using the program to write the ST-image on the disk. More on that further down!

 

The sorry subject detecting media(disk) change

Unfortunately Atari saved a few pennies that days when designing the floppy-bus. So the disk change is not detected properly using the dedicated pin 2, but misusing the pin 28 (write protect) in that way, that this line is pulled to 0V (GND) for a short time when the user changes a disk. (Thanks to P. Putnik at this point for the analysis, further reading on this topic here.) A few older drives offered the option to get this demand by setting some jumper, but for modern drives or floppy-emus I’m quite sure there is no such option any more.

Hence I present a “dead simple” solution for this that is easy to build and at least works like a charm for my Gotek floppy-emu:

DSCN0186DSCN0188

My solution relies on the fact that pressing the buttons pulls a dedicated line to GND (0V). That’s exactly what we need to simulate the media change. Using two schottky-diodes this “pulling to ground” is fed to pin 28 of the floppy-bus. The diodes prevent that the buttons are short-cicuited and that signals on pin 28 coming from the bus can’t trigger an unwanted counting-up of the selected image.
On the pictures one can see the wire connected to pin 28. The other end of the wire is connected via one diode to the “free” pin of one button, respectively. In my case I just connected them to two through-holes of the traces to the buttons.
If one now presses one of the buttons the pin 28 is pulled to ground simultaneously. This is interpreted as a disk change by the Atari then.
Below you can find a schematic of the circuit with my modifications marked in red:

gotek_usb_floppy_mod

The floppy-emu in use

Here’s a picture of the floppy-emu in use. The funny case is from an old Commodore-PC. Inside there’s the mobo of an Atari 1040STF with lots of extensions (4MB RAM, SCSI-controller, 2 HDs, CDROM, real time clock, Lacescan, …). The bunch of wires crossing the case has nothing in common with the Atari, it’s just from my musicial equipment. But that just as an aside. 😉

Sorry at this point for the mediocre picture quality. These are “real” screen-shots and it seems my TFT and my digicam aren’t best friends. 😉

DSCN0191

Formatting of all available virtual disks at once / Initializing of the USB-key

If one wants to initialize or format all of the available virtual disks at once, one can simply use the inbuilt function of the emu’s firmware. To do so, keep both buttons pressed while powering up the computer. Shortly after switching on the version of the installed firmware will be displayed on the seven-segment displays, then there’s displayed “F01”. If one now releases the button, the drive INSTANTLY starts formatting all of the disks. Caution, there is no further security query.
So why one should use that function at least once with a new USB-key is a short story: The controller checks how many virtual disks can be created on the key and formats them. That way one knows the excact number of available disks and additionally can be sure that the key is working correctly on the drive.
However, doing so will result in all disks formatted with 1.44MB. If one wants other formats, the following procedure may help:

 

Formatting of custom formats

Like I already mentioned at “What works”, one can format disks with customs formats using the Atari. The number of tracks doesn’t seem to be limited, at least I was able to format a DD-disk with 85 tracks and 11 sectory/track using Kobold (thats the max Kobold can handle!). For testing I put as many files as possible on that “disk” from the GEM-desktop to see if they can be opened correctly again afterwards. Indeed, that works without any problems!

DSCN0204DSCN0206DSCN0207DSCN0209

Theoretically one could also format HD-disks that way, but like I already mentioned at “What doen’t work” 18 sectors is the maximum. So the only option that is left over is to increase the number of tracks. For me, it’s no big deal since I hardly saw any up-formatted HD-disks anyway.

 

Writing back of disk-images using JayMSA

Like I mentioned above, one can write back disk-images using JayMSA. On the following screenshots you can see me using that procedure to write back an image of “Zak MC Kracken”. When using that tool one should pay attention to two points: On the file selection dialog one has to change the extension to *.* manually (see red mark on the picture). If not, one can’t select *.ST images there. The physical writing-back is labeled “Extract” in the tool. For me, I’d suspect some other function behind that name. However, using that function the writing-back works perfectly like you can see on the additional screenshots.

DSCN0192DSCN0193DSCN0195DSCN0198DSCN0202

 

Questions and answers

Here I will collect and hopefully be able to answer questions I got via comments here or on the Atari forums

Q: Do you connect the floppy cable just the same way as to a ST floppy drive or do you need to twist the cable?
A: No, like I wrote the Atari expects the first drive to be “A” or ID0. So there is no need to twist the cable. Just plug the cable of the former disk drive on the emu’s connector.

Q: Do you have a picture of where the diodes are soldered to the switches?
A: I’ve just updated the relevant paragraph with a schematics picture that reflects the changes.

Q: Once all the mods are done, is it possible to write the game .ST images to the usb pendrive on a PC or can it only be done from a ST? And how to do this?
A: This is only possible for the first virtual disk since the PC “sees” only the first disk. The software supplied with the emu does not work with ST-images unfortunately. I’m planning to write an application that can access all virtual disks on the key and supports ST and STX images.

Q: With the program Winimage it is possible to make .img files from real Atari ST disks, this is the file format the gotek uses to put files on the usbstick in Windows, would these images work in the ST?
A: I can’t answer that since I haven’t tried it yet.

Q: Do the games boot from the floppy emulator and can disks be swapped for multidisk games? Can games be saved on the emulated disks?
A: Yes and yes if you have modified the media change circuit so that the game can detect the disk change correctly.

Q: What about images of copy-protected (original) disks? Any chance to get them running on the Gotek?
A: Sorry, but no chance. The Gotek only supports “cooked” images, no raw trackdata. Thus all copy-protected disks relying on “weak” sectors and stuff will certainly fail.

To be continued…

38 comments

  1. Sehr interessant. Wäre eine Alternative für den HxC. Würde diesen dann in einem ATARI 1040STe betreiben. Muß der Floppycontroller hier zwingend im 16Mhz Modus laufen? Wenn ja, wo das Clk Signal am Besten abgreifen? Hätte die Frage gerne per Email gestellt, leider habe ich das nicht auf der Seite gefunden.

    MFG Pascal

    1. Hallo,
      ja, leider benötigt man die 16MHz. Andernfalls stimmt die Datenrate auf dem Floppybus nicht und der Floppyemu kann nicht angesprochen werden. Die 16MHz findet man beim STE am Shifter Pin 52. Am sinnvollsten ist es, von dort ausgehend nach einer Leiterbahn zu suchen, die in die Nähe des Floppycontrolers führt und die 16MHz dort dann abzugreifen. Umbauanleitungen für HD-Betrieb findet man ja zu Hauf im Netz.
      Ich hoffe das hilft?

      1. Hallo Chris,

        ja das hilft schon einmal weiter Leider ist das nicht so einfach, bei dem ATARI 1040STE ein 16Mhz Signal abzugreifen. Das geht bei dem normalen ST auf jeden Fall, nur für den STE muß ich mir dann eine Platine mit einem Quartz basteln :/ Schade, dachte würde mit dem STE einfacher gehen…

        MFG Pascal

      2. Bevor ich hier was mißverstehe:
        Die 16MHz (HD-Aufrüstung) werden ja wohl nur benötigt, wenn man auch plant, HD Images zu nutzen. Die 16MHz wirken dor nur auf den im Atari verbauten Controller und nicht auf den GOTEK – oder hab’ ich was übersehen?

        Es ergeben sich auch noch einige Fragen für mich:
        Sind die Dioden beim Einsatz am Atari notwendig und und ist ein USB Stick anwendbar, der am PC (über normaler USB Buchse) formatiert und dann auch dort mit *.ST und *.MSA (Atari ST Images) beschrieben wurde?

        1. Hallo,
          ja, die 16MHz braucht man für HD-Images. Sie wirken aber auch auf den GOTEK, da der Busspeed bei HD doppelt so hoch ist wie bei DD. Daher muss der Emu beides “sprechen” können.
          Die Dioden sind nur notwendig, wenn man möchte dass der Atari einen Diskwechsel (sprich Anwahl eines anderen Images über die Taster) sauber mitbekommt. Sonst kann es nämlich sein, dass noch die alte FAT der vorigen Disk im Cache des TOS ist und dieser erst nach Drücken von ESC refresht wird. Das ist im GEM-Desktop sicher kein Problem, aber wenn ein Programm bspw. einen Diskettenwechsel erwartet, hat man oft keine Möglichkeit manuell zu refreshen.
          Das Beschreiben klappt mit dem mitgelieferten (chinesischen) Programm am PC einwandfrei. Dort kann man einzelne Images im “Explorer” öffnen und auf Dateilevel arbeiten. Das Importieren von Diskimages geht leider nur über *.img, da die Software *.st und *.msa nicht kennt. Hierfür will ich aber noch ein vernüftiges Programm schreiben, da mich dieser Umstand auch stört.

          1. Hallo Keith
            Ich habe einen Atari Mega STE und mein Diskettenlaufwerk will nicht mehr so richtig.Ich arbeite nur mit einem Sequenzer Prg.Notator logic von Emagic mit einem Dongle.Da ich nun von dem Laufwerk gehört habe, hätte ich gerne ein externes Laufwerk.Ich möchte vom PC auf den USB Stick midifiles drauf copieren mit Endung MID und diese dann in den Atari mittels USB einladen mit dem Sequenter Prg. des Ataris bearbeiten und wieder auf den USB zurück speichern.Diese abgespeicherten Daten dann per Stick auf meinen Yamaha Tyros 3 ziehen oder auf die Festplatte zum speichern auf den PC geht dies und wenn ja kannst Du so etwas bauen.Von der Firma Lotharek in Polen gibt es dieses Laufwerk, die Kommunizieren aber nur in english.Ich brauche jemanden der meine mails in Deutsch versteht und auch umsetzt.Kannst Du dies machen, oder weißt Du jemanden der dies machen kann?
            Mit den besten Grüßen Harry Tel.06237/1234

  2. I’ve started to use my Atari 1040ste as a music sequencer again after many years of neglect. I now use the Ste for nothing else..its a sequencer. I have many very old music sequences saved on floppy and would like nothing more than to be able to remove the Atari’s worn FDD and replace it with something cheap and reliable like one of the many Gotek drives you see available from the far east.
    I read many threads saying Gotek doesn’t work with the Atari, unyet you seem to say that getting a Gotek up and running is a relatively simple task?

    1. Well, it’s depending on what one wants to achieve. I think most people saying that the Gotek doesn’t work are trying to use disk-images of copy-protected stuff (games) with it. This indeed does not work since the Gotek stores only the userdata in “cooked” format on the USB key.
      In case you just want to use standard (unprotected) DD disks I’d simply go for a 720k-version of the emu, like this one here: http://www.amazon.com/SFRM72-TU100K-Emulator-Industrial-Control-Equipment/dp/B008HYUDV2/ref=sr_1_fkmr1_3?s=electronics&ie=UTF8&qid=1424626846&sr=1-3-fkmr1&keywords=gotek+720k
      It should work without any other hardware modification inside the STe.

  3. Hallo,
    Danke erstmal für die super anleitung und die ganzen Infos.
    Ich habe keine Schottky dioden , kann ich auch andere verwenden oder warum schottky?
    Mit MSa kann man st Images entpacken und mit dem programmm von ipcas gmbh kann man auch auf die ganzen Partitionen zugreifen ( http://www.ipcas.de/support/hardware/usb-disketten-emulator/ )
    Ich würde aber die 720kb version mit der Ordnerstruktur des Gotek empfehlen, wo es einfach 999 Ordner auf dem,usb Stick gibt und kein Tool dazu benötigt wird. Leider halt nur 720 kb aber kein löten, kein Tool, nur einbauen.

    1. Schottky habe ich genommen um möglichst wenig Spannungsabfall in der Durchlassrichtung zu haben. Das Drücken einer der beiden Taster soll ja die Bus-Leitung möglichst gegen logisch Null ziehen. Eine normale Diode mit ihren 0,6V Spannungsabfall ist da eventuell schon zu viel. Aber prinzipiell kann das auch funzen, klar. Müsstest du nur selbst einmal testen.
      Das ipcas-Tool kann leider nur 99 Ordner, daher habe ich es hier nicht verlinkt.

      1. Hallo,

        Hat mit einer normalen Diode funktioniert. Aber gut zu wissen was es für Alternativen gibt und was dahinter steckt.
        Das ipcas Tool kann bei mir 1000 Partitionen. Jedoch sollte es mit Administratorrechten gestartet werden, sonst gibt es bei mir Probleme mit den Rechten bezüglich schreiben auf die Festplatte.

        Danke

        Gruß

        1. Hallo Andi,
          hmm…dann weiß ich nicht, welches Tool du meinst. Das “Explorer-artige” Tool v1.41i kann hier definitiv nur 100 Ordner?!

    2. Wie hast Du geschafft, die Gotek am ST anzusprechen? Ich habe gestern mit dem einen 1GB STick formatiert und die ersten 5 Disketten mit Software bestückt, aber das Gotek an einer SF314 Elektrik läßt sich nicht öffnen! Getestet als Zweitlaufwerk an einem Mega ST4! Beim ersten Test mit nicht gesteckten USB Stick ließen sich weder “A:” noch “B:” öffnen, nach Eistecken des Sticks habe ich dann “A:” öffnen können, während bei “B:” (Gotek) wieder der Dialog [Disk “B:” antwortet nicht …] kam!

      1. Also,
        wenn man die 1,44MB-Variante der Gotek hat, so braucht dieser wie bereits geschrieben die doppelte Clockrate am FDD-Bus. Beim Atari erreicht man das entweder durch ein HD-Modul, oder einfach indem man dauerhaft 16MHz am Floppycontroler anschließt. Tut man dies, ist allerdings kein Mischbetrieb mit weiteren 720kB-Laufwerken mehr möglich.
        Anleitungen gibt es zu Hauf im Internet (manche gut, manche weniger): https://www.google.de/search?q=atari+st+hd+mod

  4. Hallo,

    Sie haben recht, es gehen wirklich nur 100.
    Ich probiere ob ich die Images mit Linux mit einem bestimmten Mount befehl ansprechen kann. Das ganze evtl dann in einer VM Ware.
    Besser ist aber die Gotek Version mit Ordnerstruktur zu wählen wie obern schon beschrieben. Kostet halt 50% mehr, aber funktioniert problemlos.

    Hab eine Frage:
    Wo finde ich das DS1 (Drive Select 1) für Floppys auf der Platine ? Am FDC (Floppy Disk Controller – WD1772 0202) ?
    Hab es am Floppy Connector gefunden doch ich hätte es gerne auf der Oberseite der Platine abgegriffen.

    Danke

    Gruß

  5. Hi,

    habs doch noch selbst gefunden. Am Yamaha Soundchip Pin19 (DS1) und Pin20(DS0).

    Gruß

  6. Ich habe so ‘ne GOTEK mit 3 Digit (für 1000 “Images”) in die Hände bekommen. Leider war keine offizielle PC-Software, sondern nur ein leerer Mini-CD-Rohling beigefügt. An den ursprünglichen Erstbesitzer komme ich nicht heran, finde aber nichts brauchbares im Netz! Wären Sie bereit, mir den zugehörigen Datenträger als Image (Entweder NERO oder als *.ISO) über meine eMail zur Verfügung zu stellen, indem Sie diese an meine eMail-Adresse senden, oder einen passenden Link zu vermitteln?

    1. Nachtrag:
      Die Sachen von weiter oben durch Andi verlinkter Seite habe ich mir gezogen – aber ich hätte auch gerne die dem Gerät offiziell beiliegende Software!

    2. Hallo Burkhard,

      klar kann ich das machen! Ich hoffe Ihr Postfach verträgt 13MB-Dateien?
      Falls nicht, kann ich das Image auch irgendwo hochladen.
      Erwarten Sie aber nicht zuviel von der mitgelieferten Software – sie ist komplett in Chinesisch. 😉

  7. Irgendwas läuft verkehrt! Entweder sind sind die Softwarepakete nur einmal startbar oder ich mache was verkehrt! Vor 3 Tagen habe ich einen ersten Test am ST machen wollen und mir dazu mit dem ipcas-Tool den an normaler USB Schnittstelle gesteckten Stick vorbereitet – erst formatiert und 100 Diskbereiche erhalten, die bei “open” auch schön leere Fenster öffneten, in die ich (ersten 5) erst einmal zufor aus MSA-Images (über STeEm) extrahierte Daten kopierte und mit “save” sicherte. Dann eine SF314 gestrippt und die mit MO un S0 gejumperte GOTEK an deren Elektronik anschloß – korrekte Pinbelegung beachtend. Anschließend habe ich diese Einheit an meinem Mega ST als Zweitlaufwerk angedockt und den Rechner gestartet. “Floppy … in Drive … antwortet nicht” erhalten, wonach mir auffiel, daß ich vergaß, den USB Stick auch einzustecken. Das habe ich bei laufendem Betrieb nachgeholt. Gleiches Ergebnis! Nachdem eine andere Disk ins Laufwerk A: gesteckt wurde, antwortete A: (interne Floppy), B: jedoch immer noch nicht. Auch nach Neuboot keine anderen Ergebnisse erzielt! Mega ST nebgst Floppy ausgeschaltet, Stick gezogen, am PC gegengecheckt und zerstörte Floppy-Liste erhalten. Neu Formatiert – Aber seither bekomme ich keine leeren Ordner mehr geöffnet, sondern nach “open” im ipcas-Manager immer den Ordener “Eigene Dateien – eigene Dokumente” angezeigt! Was mache ich verkehrt?

    Ich werde die GOTEK wohl mal am PC anschließen müssen, habe aber im Moment am Gehäuse keinen passenden Schacht frei!

    1. Läuft denn der Floppycontroller wirklich im HD-Modus (16Mhz) wenn er auf die 2. Floppy zugreift? Wie gesagt, im normalen DD-Modus funktioniert der Gotek nicht, dann wird immer “antwortet nicht” angezeigt werden.
      Tut mir leid, aber anders geht es leider nicht.

      1. Andi hat doch am 25. Januar geschrieben: “… aber kein löten, kein Tool, nur einbauen.”
        So habe ich es auch ganz ohne HD Erweiterung getestet, Da ich neben einem Mega STE und einem funktionierenden Mega ST4 auch noch eine Mega ST4 Baustelle in einem PC Gehäuse aus (mindestens) 3. Hand habe, bei dem eine abenteuerliche HD Erweiterung bei einem der Vorbesitzer dem Floppy-Controller den Tod brachte, möchte ich auf eine solche nämlich möglichst verzichten!

  8. Hi,
    ja 720 k ohne probleme. Alternativ gibt es jetzt eine HxC Firmware für das GOTEK mit Unterstützung für Image Dateien.
    Übringens nicht nur für Atari sonder auch Amiga, CPC , ZX80, usw…
    Ausserdem gibt es bei Ebay auch noch Display für 5 euro inlusive Versand die kompatibel sind.
    Habs noch nicht ausprobiert, werde ich aber bald mal testen.

    1. Hi Richy,
      I think I took two “BAT85” diodes. But you can take any schottky-diodes as long as the voltage-drop is low, for example 1N 5817.

  9. Why do you need the M0 jumper set? is that something specific to the 1.44mb?

    I run this on my megaste no M0 .. I have only tried 720k images so far, but why is the M0?

    1. I’m don’t remeber what it exactly was but for me it only worked correctly when I set these two jumpers.
      Sorry, but I didn’t make any notes about this.

  10. Can the SFR1M44-U100 be used for a Yamaha EL-90 organ? That is to say: is pin 34 settable to !RDY and can drive 0 be selected and shows pin 2 the ‘density’ (or has it always value ‘0’)?

    1. Hi Harry,
      if you look at the schematics, you can see that there’s an output connected to pin 2 and pin 34, named “DSKCHNGn” and “READYn” – so I’d assume it should work as expected in your organ.

      HTH,
      Chris

  11. Hi Chris,
    So you used a stock SFR1M44-U100 with an Atari ST without changing the Firmware?
    I was planning to change the firmware to FlashFloppy by following this guide:
    https://www.youtube.com/watch?v=yUOyZB9cro4

    I bought one and plan on using the device with ST and Amiga..

    How did you get the Atari ST disk images on to the memory stick from a PC? Or didn’t that work?

    1. Hi MrB,
      i think all your questions are already answered in my post?!
      Yes, it runs with the stock firmware that came with it and you need the tools that come on CD with the emulator if you want to write the images on a PC.
      If you want to use the emulator on an Amiga, you may need to flash a custom firmware. But I’m no expert for Amiga stuff.
      HTH
      cheers,
      Chris

    1. Hi Karl,
      wow, thanks for the great input. I’ll update my post with that info ASAP. 🙂
      cheers,
      Chris

  12. Hi! Something happened to the image links, and random occurences of “-1” seems to have been added, perhaps by a mistyped bash command?

    In any case, “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/DSCN0186-1-1.jpg” can be found at “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/DSCN0186.jpg” as well as “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/DSCN0186-1.jpg”, and similar for the other images.

    “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/gotek_usb_floppy_mod-12-1-1.png” can be found at “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/gotek_usb_floppy_mod2.png” and “https://www.tonmann.com/wordpress/wp-content/uploads/2014/08/gotek_usb_floppy_mod2-1.png”

    1. Hi,
      I have no idea what happened here, however, I corrected the broken links.
      Thanks for the hint!

Leave a Reply to Burkhard Mankel Cancel reply

Your email address will not be published. Required fields are marked *