Lesen Sie Daten von einer alten MiniScribe-Festplatte



Übersetzung des Artikels von der Website des Programmierers und Liebhabers des alten Eisens Michael Slomkowski

Das alte MFM-Laufwerk MiniScribe 2012 mit dem Controller fiel mir in die Hände. MFM ist eine modifizierte Frequenzmodulation , und diese Technologie wird häufig mit sperrigen Festplatten aus der Zeit vor der IDE / Parallel ATA in Verbindung gebracht. Die alten Daten, die auf der Festplatte gespeichert waren (hauptsächlich MS Word 4.0-Dokumente), hatten einen bestimmten sentimentalen Wert für den Vorbesitzer, daher habe ich beschlossen, sie zu extrahieren.

MiniScribe 2012-Festplatte


Festplatte - MiniScribe 2012 MFM, wahrscheinlich 1984 hergestellt. Er stand in einem IBM XT-kompatiblen Computer. Dieses Monster belegt zwei 5,25-Zoll-Steckplätze und wiegt mehr als zwei Kilogramm. Wie in der Anleitung angegeben , ist sein Volumen einfach unglaublich - bis zu zehn Megabyte. Der Stromanschluss ist ein Standard-Molex. Das Laufwerk ist mit zwei Kabeln an die Controller-Karte angeschlossen.













Das MiniScribe-Laufwerk wird mit einem dedizierten 8-Bit-ISA-Controller namens WD1002A-WX1 geliefert. Die technischen Daten sind leicht zu finden. Die Textdatei enthält Installationsanweisungen. Außerdem kann eine Liste kompatibler Geräte nützlich sein.

Theoretisch kann der Controller mit jedem Laufwerk arbeiten, das die Protokolle ST506 / 412 unterstützt. In der Praxis ist dies jedoch nicht so einfach. Die Liste der fehlerhaften Sektoren sollte im Controller-ROM gespeichert werden. Dies erfordert spezielle Software. Oft funktioniert ein neues Laufwerk, nachdem es an einen neuen Controller angeschlossen und eine Formatierung auf niedriger Ebene durchgeführt wurde.


WD1002A-WX1 MFM-Festplattencontroller

Der Controller verfügt über ein eigenes BIOS, das normalerweise als Options-ROM bezeichnet wird . Es wird vom Motherboard-BIOS während der POST-Sequenz aufgerufen. Der Code registriert einen Hook für einen INT 13-Interrupt und wird dadurch über einen Standard-Interrupt-Aufruf von DOS aus zugänglich.

Gerät


Zum Glück hatte ich ein altes AT-Motherboard (ATC-1020) mit ISA-Steckplätzen und einem Pentium-Prozessor. Es gab keinen Kühlkörper am Prozessor, aber ich habe Jumper auf der Platine installiert, damit sie mit minimaler Geschwindigkeit funktionieren, und den temporären Kühlkörper mit einem Gummiband eingestellt. Ich habe auch ein 32 MB DIMM RAM-Modul auf die Platine gesetzt.



Ich hatte weder für PCI noch für ISA eine grafische VGA-Karte, daher verwendete ich MDPA mit einem speziellen gelben Monochrom-Display. Sein Motherboard hat erfolgreich erkannt, was auf dem Foto zu sehen ist.

Um die Festplatte zu überprüfen, habe ich den IDE-Controller im BIOS deaktiviert und versucht, zu starten. Die Festplatte wurde zum Leben erweckt und sogar gebootet - Prost!

Von PXE herunterladen


Ich schlug vor, dass ich zum Abspielen mit dieser MiniScribe-Disc DOS-Dienstprogramme benötigen würde, und entschied mich daher, von der MS-DOS-Diskette zu booten. Da es unpraktisch ist, mit physischen Festplatten herumzuspielen, habe ich mich für das Booten des Netzwerks entschieden. Glücklicherweise hatte ich eine PCI-Ethernet-Netzwerkkarte mit PXE- Unterstützung: 3com 3C905C-TXM

Um ein Disketten-Image über PXE zu starten, benötigen Sie einen speziellen Bootloader. Eines der beliebtesten ist PXELINUX, das Teil von Syslinux ist, dem Syslinux- Modul von Arch Linux. Auf einem Linux-Computer müssen Sie ein Verzeichnis für den Netzwerkstart erstellen und dort kopieren
PXELINUX:

cp /usr/lib/syslinux/bios/{ldlinux.c32,memdisk,pxelinux.0} . mkdir pxelinux.cfg 

Erstellen Sie dann eine Textdatei pxelinux.cfg / default mit folgendem Inhalt:

default dos
label dos
kernel memdisk
append initrd=fdboot.img


Das Bootdatenträger-Image muss als fdboot.img gespeichert werden. Diese Dateien können als ZIP-Archiv heruntergeladen werden.

Eine beliebte Methode zum Konfigurieren des PXE-Starts sind DHCP- und TFTP-Dämonen. Dies ist eine schwierige Aufgabe, aber zum Glück habe ich einen kleinen und einfach zu verwendenden Netboot-Server gefunden (aur / netboot für Arch Linux). Es kombiniert die Funktionen von DHCP- und TFTP-Servern. In meinem Router habe ich es gestartet, ohne den DHCP-Server zu trennen, da sie nicht in Konflikt zu geraten scheinen sollten.

Führen Sie netboot in dem Verzeichnis aus, in dem sich die PXE-Startdateien befinden. Nach einer DHCP-Anforderung gibt der Server die Datei pxelinux.0 * zurück.

 netboot {broadcast IP} {local machine IP} {IP for client machine} {MAC pattern} 

{MAC-Muster} muss mit der MAC-Adresse der Netzwerkkarte des Clients übereinstimmen.

Meine LAN-Adresse lautet beispielsweise 192.168.1.0, die IP-Adresse meines Linux-Computers lautet 192.168.1.10 und der MAC meiner 3com-Karte endet mit 66:

 netboot 192.168.1.255 192.168.1.10 192.168.0.20 -66 

Als fdboot.img habe ich das Standardlaufwerk MS-DOS 6.22 verwendet. Dann habe ich alles heruntergeladen - und es hat funktioniert!

Versuche, Daten von einem IDE-Laufwerk zu kopieren


Da der MFM-Controller über ein eigenes BIOS verfügt, war die Festplatte unter MS-DOS sichtbar. Aber ich brauchte ein Laufwerk, auf das ich Dateien kopieren konnte. Zuerst habe ich mich für ein IDE-Laufwerk entschieden. Das Motherboard hatte zwei IDE-Kanäle. Ich habe ein 40-GB-Laufwerk von Seagate angeschlossen. Das System hat es erkannt, aber leider war MFM danach nicht mehr verfügbar. Spiele mit Springern haben nicht geholfen. Möglicherweise ist ein Konflikt zwischen den beiden Festplattenprozeduren aufgetreten.

Kopieren Sie Daten auf einen USB-Stick


Dann habe ich einen anderen Ansatz versucht. Ich habe eine PCI-USB-Erweiterungskarte und USBASPI-Treiber für MS-DOS installiert. Jetzt gab es keine Konflikte mehr und ich konnte die gesamte Festplatte auf ein USB-Flash-Laufwerk kopieren!

 xcopy c:\ d:\ /e /k 





Vier Erweiterungskarten auf dem Motherboard. Von links nach rechts: MDA-Grafikkarte, MFM-Festplattencontroller, 3com-Ethernet-Netzwerkkarte, USB-Erweiterungskarte.

Als Ergebnis habe ich mehr als zweihundert Microsoft Word DOS-Dateien erhalten, die ich in RTF konvertiert habe .

Source: https://habr.com/ru/post/de427335/


All Articles