USB-Stick-Floppy-Emulator am Atari ST
Der folgende Text beschreibt die Nutzung eines Floppy-Emulators der Firma Gotek an einem Atari ST, einem Computer der 1980er-Jahre. Der Emulator verhält sich dem ST gegenüber wie ein normales Diskettenlaufwerk, jedoch liegen die Daten in Form von Diskettenimages als Dateien auf einem USB-Stick. Dies ermöglicht einerseits die platzsparende Archivierung und Erhaltung sehr vieler alter Disketten und vereinfacht andererseits den Datenaustausch mit einem modernen PC.
Diese Anleitung setzt Computer- und Elektronikkenntnisse sowie ein gewisses bastlerisches Geschick voraus. Gern bemühe ich mich, Fragen zu dieser Anleitung zu beantworten. Ich kann jedoch weder Support für den Floppy-Emulator oder dessen Firmware leisten, noch übernehme ich die Haftung für Schäden oder Datenverluste, die aus dieser Anleitung resultieren.
1. Benötigte Hardware
- Der eigentliche Floppy-Emulator der chinesischen Firma Gotek. Diese werden in vielen Varianten bei Amazon, eBay, AliExpress usw. für ca. 20 € angeboten. Ich habe das Modell SFR1M44-U100K gekauft. Da die Firmware ohnehin ausgetauscht wird (s. unten), sollte allerdings jede Version mit dreistelligem LED-Display und zwei Tasten verwendbar sein, siehe Foto rechts.
- Eine externe Floppy-Station Atari SF354 (oder SF314). Ich betreibe den Emulator als externes Laufwerk, da ich meinen Atari 1040STF unangetastet lassen wollte. Diese Anleitung kann auch sinngemäß für den Austausch des internen Laufwerks angewendet werden, dann ist allerdings eine Modifikation des Gehäuses des STs notwendig.
- Eine serielle Schnittstelle mit Pegelwandler auf 3,3 V. Diese wird nur einmalig zum Aufspielen eines neuen Bootloaders auf den Emulator (s. unten) benötigt. In einem gut sortierten Elektronikbastler-Haushalt ohnehin vorhanden, andernfalls sind geeignete USB-zu-Seriell-Kabel einfach zu beschaffen.
2. Austausch der Firmware
Von Jean-François del Nero, dem Entwickler des HxC-Floppy-Emulators, gibt es auch eine Firmware für die Emulatoren der Firma Gotek, die deren Funktionsumfang deutlich erweitert und sie damit erst am Atari ST sinnvoll nutzbar macht. Um diese Firmware zu nutzen, muss einmalig ein neuer Bootloader auf den Emulator überspielt werden. Die eigentliche Firmware (auch Updates) wird dann komfortabel via USB-Stick eingespielt.
Das Installationsprogramm für den Bootloader läuft unter Windows und ist auf der HxC-Downloadseite erhältlich: Online Bootloader programmer: STM32_SerialBridge.zip. Das Programm benötigt eine serielle Datenverbindung zum Floppy-Emulator, außerdem Benutzernamen und Passwort, die Jean-François del Nero für 10 € bereitstellt. Seine E-Mail-Adresse und Hinweise zur Benutzung des Installationsprogramms befinden sich in dessen ZIP-Datei, weshalb hier nur kurz auf Anschluss des Emulators eingegangen werden soll:
Achten Sie darauf, dass der hierzu verwendete USB-zu-Seriell-Adapter mit 3,3-V-Pegeln arbeitet.
Verbinden Sie die Masse (GND) des Emulators mit dem USB-zu-Seriell-Adapter, ferner dessen Empfangspin mit dem Sendeanschluss (TX) des Emulators und den Sendepin des Adapters mit dem Empfangsanschluss (RX) des Emulators. Wenn der USB-zu-Seriell-Wandler eine Spannung von 5 V bereitstellt, kann diese zur Versorgung des Floppy-Emulators verwendet werden (+5V), andernfalls muss hier ein separates 5-V-Netzteil zum Einsatz kommen. Weiterhin müssen noch die Anschlüsse BOOT0 und +3,3V für die Dauer der Übertragung des Bootloaders gebrückt werden. Alle diese Verbindungen müssen nach dem Aufspielen des Bootloaders wieder entfernt werden. Schließlich war es in meinem Fall nötig ‒ wie auch in der Beschreibung des Bootloader-Installationsprogramms erwähnt ‒, bei laufendem Installationsprogramm kurz den Anschluss RESET mit GND zu verbinden, damit der Emulator erkannt wurde.
Nachdem der Bootloader entsprechend der Anleitung des Installationsprogramms übertragen wurde und alle oben genannten Verbindungen wieder getrennt wurden, kann die eigentliche Firmware installiert werden. (Das ist auch später im Betrieb am Atari ST möglich.) Dazu wird der Emulator wieder mit 5 V versorgt, es erscheinen die Buchstaben "Ldr" im LED-Display. Die Firmware in Form einer UPD-Datei kann von der HxC-Downloadseite heruntergeladen werden: USB Stick STM32 HxC Floppy Emulator firmware update. Sie wird auf einen USB-Stick kopiert, dieser wird in den Floppy-Emulator gesteckt, die Installation beginnt dann automatisch. Nach einer erfolgreichen Installation wechselt das LED-Display auf "hXC". Um später wieder in den "Ldr"-Modus zu wechseln, um neue Firmware aufzuspielen, müssen beim Einschalten des Emulators beide Tasten gedrückt werden.
Firmware-Versionen ab 3.0.6.0a lösen einige Probleme, die sonst beim Beschreiben der Diskettenimages zu defekten Sektoren führen können. Versionen ab 3.0.6.6a enthalten eine verbesserte USB-Unterstützung. Achten Sie also darauf, die Firmware des Emulators immer aktuell zu halten. Grundsätzlich befindet sich die Firmware laut Entwickler noch im Beta-Stadium, sodass Fehler nicht ganz ausgeschlossen sind.
3. Einbau in die Floppy-Station
Auch wenn das Anschlusskabel vom ST zur Floppy-Station eine proprietäre Lösung von Atari ist, finden sich im Inneren der SF354/SF314 (oder auch im Inneren des Atari ST, falls der Emulator dort als internes Laufwerk eingebaut werden soll) die üblichen Kabel für die Stromversorgung (4-polig) und Daten (34-polig), sodass der Emulator ohne Umverdrahtung einfach angeschlossen werden kann. Egal ob der Emulator als externes Laufwerk B: oder im Atari ST als internes Laufwerk A: arbeiten soll, muss er immer auf Drive Select 0 (S0) gejumpert sein, siehe obiges Foto.
Der Anschluss für das Stromversorgungskabel ist verpolungssicher, der für das Datenkabel hingegen nicht. Pin 1 ist sowohl auf der Platine des Emulators als auch der Floppy-Station gekennzeichnet. Achten Sie darauf, dass Sie das Kabel richtig herum anschließen.
Schließlich muss noch die Frontblende der Floppy-Station modifiziert werden, damit der Emulator mechanisch passt. Ich habe mit einer Laubsäge einen rechteckigen Ausschnitt vorgenommen, siehe Foto oben.
4. Nutzung am Atari ST
Der Emulator liest Diskettenimages im HFE-Format vom USB-Stick. Dieses Dateiformat ist ein Eins-zu-eins-Abbild der Magnetisierung auf einer Diskette, sodass auch exotische Diskettenformate damit emuliert werden können. Die HxC-Downloadseite stellt ein Programm für Windows und Mac OS X bereit (HxCFloppyEmulator software), um diese Images zwischen den im ST-Umfeld gebräuchlicheren Formaten ST und MSA zu konvertieren, Dateien auf die Diskettenimages zu schreiben oder von ihnen zu lesen und mehr. Mit Einschränkungen kann das ST-Diskettenimageformat auch direkt im Emulator genutzt werden, siehe dazu den Eintrag zum Autoboot Mode weiter unten.
Der Emulator kann in drei Modi betrieben werden, um auszuwählen, welches Diskettenimage geladen werden soll:
Indexed Mode: Im Indexed Mode lädt der Emulator die Dateien DSKA0000.HFE, DSKA0001.HFE usw. im Wurzelverzeichnis des USB-Sticks, wobei die Auswahl über die Tasten am Emulator erfolgt und die gewählte Nummer im LED-Display angezeigt wird. Der Indexed Mode lässt sich über eine Konfigurationsdatei HXCSDFE.CFG auf dem USB-Stick aktivieren, die im entsprechenden unten stehenden Download enthalten ist.
Autoboot Mode: Im Autoboot Mode stehen 16 Slots für Diskettenimages zur Verfügung, die sich über die Tasten am Emulator wechseln lassen. Im Slot 0 steht stets das Image AUTOBOOT.HFE mit dem Konfigurationsprogramm HXCFEMNG.PRG für den ST zur Verfügung, das ich gegenüber der Version auf der HxC-Downloadseite (USB HxCFloppyEmulator Manager) so modifiziert habe, dass es für einen Emulator geeignet ist, der als Laufwerk B: betrieben wird. Mit dem Konfigurationsprogramm können die übrigen 15 Slots mit beliebigen Images im HFE-Format oder auch im ST-Format (diese jedoch nur lesend, nicht beschreibbar) belegt werden.
Hinweis: Auch wenn der Emulator als Laufwerk B: betrieben wird, müssen die Diskettenimages im Emulator dem Laufwerk A: zugewiesen werden.
Der Autoboot Mode lässt sich ebenfalls über eine Konfigurationsdatei HXCSDFE.CFG auf dem USB-Stick aktivieren, die zusammen mit dem Konfigurationsprogramm im entsprechenden unten stehenden Download enthalten ist.
File Selector Mode: Der File Selector Mode (in der Anleitung auch Normal Mode genannt) benötigt ein zusätzliches LC-Display, das an den Emulator angeschlossen werden muss. Dann können Diskettenimages vom USB-Stick über die Tasten und das Display ausgewählt werden. Details können den Release Notes der HxC-Firmware entnommen werden.
Mit der HxCFloppyEmulator-Software lassen sich auch leere (Button Load (sic!) Raw image) oder bereits formatierte und mit FAT-Dateisystem versehene (Button Disk Browser, dann Create Disk) Images erstellen und als HFE-Datei speichern (Button Export). Wichtig ist hierbei, immer DD-Aufzeichnungsdichte (Double Density, entsprechend einer Bitrate von 250 000 bit/s) zu wählen, denn ein (unmodifizierter) ST könnte mit HD-Diskettenimages (High Density), die der Emulator ebenfalls verarbeiten kann, nicht arbeiten. Außerdem sollte die Einstellung HFE file Interfacemode unter SD HxC Floppy Emulator settings auf Atari ST gestellt werden.
Die Images können dann am ST wie normale Disketten beschrieben, gelesen oder auch komplett neu formatiert werden, sei es über den Desktop oder mit einer der vielen Formatier-Softwares. Nur mit Software, die zu seltsame Hacks beim Formatieren anwendet, kommt der Emulator u.U. nicht zurecht, z.B. mit den Quickformat-Modi des exzellenten Hyperformat von Claus Brod und Jürgen Stessun.
Um den Einstieg zu erleichert, enthalten die folgenden Downloads neben der Konfiguration für den Indexed Mode bzw. für den Autoboot Mode folgende Diskimages, die natürlich kopiert und umbenannt werden können, um beliebig viele emulierte Disketten zu erzeugen:
- DSKA0000.HFE: Eine Diskette im DD-Standardformat des ST: 720 kiB, 80 Spuren, 9 Sektoren, doppelseitig.
- DSKA0001.HFE: Eine Hyperformat-Diskette mit „viel“ Platz: ca. 920 kiB, 84 Spuren, 11 Sektoren, doppelseitig.
- DSKA0002.HFE: Eine komplett unformatierte doppelseitige Diskette mit Platz für max. 84 Spuren und 11 Sektoren.
- DSKA0003.HFE: Eine Diskette mit dem Freeware-Kopierprogramm FastCopy III (s. unten).
- DSKA0004.HFE: Eine 1,44-MiB-DD-Diskette. Wie ist das möglich? Beim Emulator lässt sich die simulierte Umdrehungsgeschwindigkeit der Diskette einstellen. Dieses Diskimage „rotiert“ mit der halben Geschwindigkeit, sodass trotz DD-Aufzeichungsdichte die doppelte Anzahl an Sektoren in eine Spur passt: 80 Spuren, 18 Sektoren, doppelseitig. Obwohl dieses Format mit einem echten Diskettenlaufwerk so nie zu erzielen wäre, kommen der WD1772-Floppy-Controller und TOS 1.04 in meinem ST anscheinend damit zurecht. (Diskeditoren, Kopier- und Formatierprogramme, die direkt auf die Diskette zugreifen, hingegen teilweise nicht.) Geeignet zum Datenaustausch mit dem PC.
Download der Konfigurationsdatei für den Indexed Mode und der Diskimages.
Download der Konfigurationsdatei und des Konfigurationsprogramms für den Autoboot Mode inkl. Diskimages.
Benutzen Sie die beiliegende Version des Konfigurationsprogramms HXCFEMNG.PRG nur, wenn Sie den Emulator als Laufwerk B: betreiben. Ein echtes Diskettenlaufwerk B: könnte beim Ausführen von HXCFEMNG.PRG Schaden nehmen. Wenn Sie den Emulator als Laufwerk A: betreiben, verwenden Sie bitte die Version von der HxC-Downloadseite.
5. Datenaustausch mit dem PC
Vom ST zum PC
- Am ST auf emulierte Disketten kopierte Dateien lassen sich mit der HxCFloppyEmulator-Software im Disk Browser wieder aus den HFE-Images extrahieren. Wenn die Datenmenge selbst für die hyperformatierte oder die 1,44-MB-Diskette zu groß ist, bietet sich ein Packprogramm an. Leider ist mir mit ARJ nur ein einziger Packer für den ST bekannt, der a) Archive auf mehrere Disketten aufteilen kann und b) dessen Archive am PC wieder entpackt werden können.
- Komplette Disketten lassen sich am ST mit dem hervorragenden FastCopy III von Martin Backschat eins-zu-eins auf emulierte Disketten kopieren. Der Emulator verträgt sich dabei mit der Fast Format Destination Option der Software. Sollen wertvolle Disketten für die Zukunft archiviert werden, sollte auch die Option Verify Destination aktiv sein, um evtl. Schreibfehler in das Image zu erkennen.
FastCopy III ist auf dem Image DSKA0003.HFE enthalten. Mit der HxCFloppyEmulator-Software lassen sich die Images ‒ wie bereits erwähnt ‒ in viele Formate konvertieren, um sie z.B. mit einem Atari-ST-Emulator weiter benutzen zu können. - Auf der HxC-Downloadseite wird auch ein Treiber für Windows angeboten, um HFE-Images als virtuelles Diskettenlaufwerk einzubinden. Ich habe ihn jedoch nicht getestet.
Vom PC zum ST
- Vorhandene Diskimages z.B. im ST-, STX- oder MSA-Format lassen sich mit der HxCFloppyEmulator-Software ins HFE-Format konvertieren, mit dem Batch converter auch eine große Anzahl in einem Rutsch. Im Autoboot Mode (s. oben) können über das Konfigurationsprogramm Images im ST-Format auch direkt geladen werden, jedoch nur lesend, nicht beschreibbar.
- Einzelne Dateien oder auch komplette Verzeichnisse können per Drag-and-Drop in den Disk Browser der HxCFloppyEmulator-Software gezogen werden, um sie einem Diskimage hinzuzufügen.