CF-Karten als IDE- und SCSI-Festplattenersatz

IDE, SCSI – ja, es geht offensichtlich um alte Computer. Solche mit kleinen, langsamen und altersschwachen Festplatten.

Eine Festplatte kann ziemlich einfach durch eine CF-Karte ersetzt werden. CF-Karten punkten mit kurzen Zugriffszeiten, Datenraten von um die 40 MByte/s, und mit einem USB-Kartenleser kann bequem und schnell eine Backup-Image erstellt/zurückgespielt werden.

CF-IDE-Adapter

Im Gegensatz zu gängigen SSDs sind CF-Karten sind IDE-kompatibel. Um eine CF-Karte an einen IDE-Controller anzuschließen braucht man nur einen billigen Adapter, der die Pins vom IDE-Kabel an die CF-Karte weiterleitet. Der Stromanschluss auf dem Adapter dient nur zur Stromversorgung der CF-Karte. Am praktischsten sind Slotblech-Adapter, weil man zum Wechseln der CF-Karte den Rechner nur ausschalten, aber nicht aufschrauben muss.

IDE und seine Tücken

Der IDE-Standard wurde im Laufe der Zeit immer wieder überarbeitet, hauptsächlich um mit der schnell wachsenden Kapazität der Festplatten und mitzuhalten, mehr Geräte zu unterstützen und höhere Übertragungsraten zu erreichen.

Größenbeschränkungen

Es gilt daher: Je älter der Computer, desto kleiner ist die maximal nutzbare Festplattengröße.

Die „magischen“ Grenzen (528 MByte, 2.1 GByte, 8 GByte usw. ) sind samt Ursache hier beschrieben: https://www.tldp.org/HOWTO/Large-Disk-HOWTO-4.html

Wenn man will (oder muss), kann man diese Grenzen überwinden: Wird die Festplatte/CF-Karte zumindest erkannt, aber nur mit zu kleiner Kapazität, hilft oft eine Drive-Overlay-Software wie Ontrack Disk Manager oder EZ-Drive von Micro House/Western Digital.

Das XTIDE Universal BIOS dagegen ersetzt gleich die sämtliche Festplattenroutinen im Original-BIOS und funktioniert sehr zuverlässig, muss jedoch in ein ROM gebrannt werden, das dann z.B. im Netzwerkkarten-Boot-ROM-Sockel den Weg in den Rechner findet.

Removable oder fixed?

Die meisten CF-Karten geben sich als „removable Disk“ zu erkennen, nur wenige als „fixed Disk“.

Bei DOS und Windows 9X macht das keinen Unterschied, ebenso bei Linux und IBM OS/2. Microsoft-Windows-NT-basierte Betriebssysteme können jedoch spätestens ab Windows 2000 nur installiert werden, wenn sich die CF-Karte als „fixed Disk“ meldet.

Ob sich eine CF-Karte als „removable“ oder „fixed“ ausgibt, steht in der Regel im Datenblatt des Herstellers, z.B. steht Im Datenblatt der „Industrial“-CF220-Karten-Reihe von Transcend steht beispielsweise „True IDE Mode: Fixed Disk (Default)“: Die Karte meldet sich als „fixed Disk“.

Im Internet werden gelegentlich Tools genannt, mit denen man CF-Karten von „removable“ auf „fixed“ umstellen könnte. Mir ist das mit keiner einzigen CF-Karte gelungen. Zielführender ist es, für Windows einen Filter-Treiber zu verwenden, der das „removable“-Attribut versteckt.

Zylinder, Sektoren und Köpfe

Die „C.H.S.-Table“ auf Seite 2 des Datenblatts braucht man, um bei Computern, die noch keine IDE-Autodetection können (z.B. 386er), im BIOS die richtige Anzahl von Köpfen, Sektoren und Zylindern eintragen zu können. Stehen die Werte nicht im Datenblatt, dann kann man die CF-Karte einfach in einen USB-Kartenleser stecken und sich unter Linux mit fdisk -c=dos -u=cylinders -l /dev/sdX anzeigen lassen.

Ich hatte mal den Fall, dass eine CF-Karte nach der Verwendung in einem Rechner mit LBA-Adressierung nicht mehr von einem Rechner mit CHS-Adressierung erkannt wurde.

„Reparieren“ konnte ich diese Karte dadurch, indem ich sie wieder in den Rechner mit LBA-Adressierung einsteckte, in dessen BIOS die Adressierung von „AUTO/LBA“ auf „Normal“ stellte und dann die CF-Karte neu partitionierte.

Wenn man die richtigen CHS-Werte kennt geht es aber auch einfacher: fdisk -c=dos -u=cylinders /dev/sdX Dann x, mit c Zylinder ändern, mit h die Heads und mit s die Sektoren/Track. Beenden und Speichern mit r, w, q

Bei echten Festplatten sind die „Heads“ übrigens die Anzahl der verwendeten Platter-Seiten (Platter sind die Scheiben in einer Festplatte, auf die die Daten gespeichert werden).  „Cylinders“ ist die Anzahl der ringförmigen Spuren auf einer Platterseite, von denen jede nochmals in „Sektors“ aufgeteilt wird.

SCSI-zu-IDE-zu-CF

Mit einem IDE-zu-SCSI-Konverter (auch als SCSI-Bridge bezeichnet) können IDE-Geräte an einem SCSI-Controller betrieben werden – und das IDE-Gerät kann dabei auch ein CF-IDE-Adapter sein.

SCSI-Bridges kosten um die 100€ und sind somit ziemlich teuer. Ich habe einige von Acard, die funktionieren problemlos.

Abraten möchte ich von den Konvertern, die Yamaha in den 2000ern benutzte um aus IDE-CD-Brennern SCSI-CD-Brenner zu machen (Modellbezeichnung: Yamaha V769970): Sie funktionieren nicht mit allen CF-Karten, unterstützt nur asynchronen Datentransfer und kommen damit höchstens auf 5 MByte/s.

Wenn eine SCSI-Bridge verwendet wird ist es egal ob sich die CF-Karte als „removable“ oder „fixed“ meldet: Sämtliche CF-Karten, auch egal welcher Größe, werden korrekt als normale SCSI-Festplatte (also „fixed“) erkannt. Nur manche SCSI-Controller aus der Computersteinzeit haben Schwierigkeiten mit Kapazitäten größer 1, 2 oder 8 GByte.

 

Fazit

Top! Allein schon das einfache Wechseln und Sichern/Wiederherstellen der CF-Karten ist Gold wert. Die im Vergleich zu Festplatten höhere Geschwindigkeit spielt beim Einsatz in alten Computern keine große Rolle, die sind so oder so langsam.

Um die oben beschriebenen BIOS-bedingten Größenbeschränkungen zu umgehen verwende ich meist einen SCSI-Controller, an den ich per IDE-zu-SCSI-Konverter ein CF-Kartenadapter-Slotblech angeschlossen habe. Man mag es kaum glauben, aber das funktioniert absolut stabil und problemlos.

Seltener benutze ich das XTIDE Universal BIOS. Es funktioniert auch problemlos und stabil, nur ist SCSI halt immer besser als IDE :)

 

Update Januar 2020:

Es gibt für mittelkleines Geld SD-zu-CF-Adapter, mit denen man billige SD-Karten als CF-Karten verwenden kann. Hier liegt es am Adapter, ob sich die SD-Karte als „fixed Disk“ oder „removable Disk“ meldet. Ich habe keine guten Erfahrungen mit SD-zu-CF-Adaptern gemacht: Zu oft hängt die „Platte“, oder verschwindet plötzlich.