VOICE Homepage: http://de.os2voice.org | Juni 2002 [Inhaltsverzeichnis] [Vorherige Seite] [Nächste Seite] [Artikelverzeichnis] editor@os2voice.org

## IDE Compact Flash Card Leser für eCS

Von Lon Hooker © Juni 2002, Übersetzung: Thomas Klein

Seitdem ich mir vor ein paar Jahren eine Digitalkamera zugelegt habe, bin ich auf der Suche nach einem besseren Weg, die auf der Compact Flash (CF) Karte abgelegten Aufnahmen auf meinen PC zu übertragen. Zunächst hatte ich DCITU und ein serielles Kabel im Einsatz, aber das war fürchterlich langsam. Ansonsten war das einzige, das ich mit OS/2-Treibern finden konnte, die PCMCIA `"SwapBox"` von SCM. Ein gutes Produkt - aber leider nur für den ISA-Bus, den es auf meinem Mainboard (und sehr vielen anderen) nicht mehr gibt. SCM stellt zwar auch eine PCI-Version her, die aber unterm Strich ziemlich teuer ist: Die TCO [total cost of ownership; die Gesamtkosten aus Anschaffung und Betrieb - Anm.d.Übers.] beläuft sich auf über 200 US-Dollar, da darin auch die Kosten des zum Betrieb erforderlichen OS/2-Treibers eines Drittanbieters (erhältlich von AP-Soft) enthalten sind, der separat erworben werden muß.

Eines Tages, während ich bei eBay stöberte, fand ich dann einen IDE CF-Leser. Ich dachte mir "Na gut, wenn's IDE ist, sollte man doch eigentlich keine speziellen Treiber dafür brauchen, oder?". Ich entschloß mich, es einmal auszuprobieren. Ich verwende übrigens Daniela Engerts IDE-Treiber, da sie CF-Speichermedien explizit unterstützen und kann sie Ihnen wärmstens empfehlen. Die Treiber von IBM habe ich nicht ausprobiert.

Beim Lesegerät handelt es sich um das "Modell FD620 IDE CF-Kartenleser/-schreiber" welches von SVEC (Taiwan) hergestellt wird. Der aktuelle Preis liegt bei $34.95 (+ Versandkosten) bei eBay--suche nach "SVEC IDE CF" in der Kategorie Computer. Unter Umständen gibt es auch noch andere Bezugsquellen [1] für das Gerät, aber die habe ich nicht geprüft. Der Kartenleser wird mit dem Vermerk "Windows only" vertrieben, aber ein simples Neuformatieren des Mediums genügt bereits, um ihn unter eCS einsetzen zu können. Ich hatte die Gelegenheit, mit einigen Leuten aus dem Vertrieb bzw. dem Support von SVEC zu sprechen und es war angenehm und unkompliziert, mit Ihnen umzugehen. Allerdings sollten Sie im Gegenzug nicht zu viel von den Handbüchern erwarten - es handelt sich dabei eher um eine unzusammenhängende Aufzählung von Vokabeln, die aller Wahrscheinlichkeit nach einem außerirdischen Wörterbuch entnommen wurden.

Der größte Nachteil, der sich mir offenbarte, ist die Tatsache, daß man (da es sich ja um ein IDE-Gerät handelt) beim Hochfahren des Rechners eine Karte im Leser eingesteckt haben muß, damit daa BIOS dieses Laufwerk erkennt und dessen Existenz an das Betriebssystem weitermelden kann. Einmal hochgefahren sind die Karten dann natürlich frei austauschbar... bis zum Herunterfahren. Dann muß nämlich wieder eine präsent sein, sonst 'hängt' der Systemabschluß. Da ich zwei CF-Karten besitze, lasse ich immer eine im Leser, eine in der Kamera und tausche Sie nach Bedarf aus. Wenn Ihnen dagegen nur eine Karte zur Verfügung steht, könnten diese Einschränkungen ziemlich umständlich werden. (Mit Win98 müssen Sie beim Starten eine CF-Karte eingesteckt haben, um Probleme durch die Vergabe von Laufwerksbuchstaben zu umgehen).

Ein Hinweis an die OS/2-Anwender: Sofern Sie nicht das MCP einsetzen, sehe ich keine Chancen, daß das bei Ihnen funktioniert. Das hier beschriebene Verfahren basiert auf eCS und benötigt den LVM, der bestimmte Informationen in die Partitionstabelle der CF-Karte schreibt. Außerdem wird während der Installation von eCS im Laufwerksordner ein Programmobjekt angelegt, das den Titel "refresh removable media" ["Wechsellaufwerke aktualisieren", Anm.d.Übers.] trägt. Hierbei handelt es sich um einen Aufruf des LVM mit speziellen Parametern, der nach einem Wechsel der CF-Karte deren Inhalt neu liest und das Laufwerksobjekt neu anlegt. (Vielleicht findet sich ja ein abenteuerlustiger Leser, der es ausprobieren möchte und uns dann sagt, was passiert ist.)

Also, für die ungeduldigen...

### Auf die Schnelle

- Bauen Sie den Leser in einen freien 3-1/2" (Floppy) Laufwerksschacht ein, stecken Sie eine CF-Karte ein und starten Sie Ihren Rechner. Die Karte wird dann als ganz normale Festplatte im eCS-Laufwerksordner dargestellt.

Anmerkung: Sofern/solange die Karte nicht reformatiert wurde, sollten Sie mit nichts anderem außer DFSee darauf zugreifen. Im besten Fall wird das Laufwerksobjekt einfach nicht geöffnet; schlimmstenfalls erhalten Sie einen Trap 0003 beim Versuch, mit LVM darauf zuzugreifen.

- Löschen Sie die Karte mit Hilfe von DFSees "wipe" Befehl:

       disk n #wipe #q

  wobei "n" die physikalische Laufwerksnummer ist, die DFSee für die CF-Karte angibt.

  Um den "wipe" Befehl auszuführen, öffnen Sie ein OS/2-Fenster und geben Sie `dfs` ohne Parameter im Verzeichnis von DFSee ein. Damit wird ein DFSee-Befehlszeilenfenster gestartet, das eine Liste aller Laufwerke anzeigt. Dort finden Sie auch Ihre CF-Karte, zusammen mit der physikalischen Laufwerksnummer. Geben Sie dann in der Befehlszeile folgendes ein:

       disk n #wipe #q

  wobei "n" die physikalische Laufwerksnummer ist, die von DFSee ermittelt wurde. "q" gibt an, daß die DFSee-Sitzung nach Beendigung des "wipe" Befehls direkt beendet werden soll.

  Möglicherweise ist das Löschen der Karte nicht nötig, es schadet aber nicht. Meine 64MB-Karte büßte 7 MB Kapazität ein und hatte unter Win98 erhebliche Probleme, bis ich sie in der beschriebenen Weise formatierte und 'wipe'-te. Meine andere CF-Karte verfügt über 32MB Kapazität und funktionierte völlig problemlos, obwohl ich nur die letzten 3 Schritte (format, LVM, format) darauf angewendet hatte. Das könnte am Partitionstyp liegen -- Typ 04 (FAT16 <32) im Fall der 32MB-Karte und Typ 06 (FAT16) für die 64MB-Karte.

- Neustart. (Der Neustart nach dem 'wipe' ist erforderlich, da sonst der 'format' Befehl von eCS nicht funktioniert.)
- Klicken Sie mit Maustaste 2 auf das Laufwerksobjekt und wählen Sie aus dem Menü den Eintrag Datenträger formatieren, danach das Format FAT.
- Öffnen Sie den LVM, und wählen Sie -->tools -->commit changes (-->Werkzeuge -->Änderungen durchführen) und beenden Sie den LVM wieder.
- Formatieren Sie die Karte erneut mit FAT wie oben beschrieben.

Nun haben Sie in Ihrem Laufwerksordner ein Wechsellaufwerk, eCS hat kompletten Zugriff auf die Karte und deren Format wird von einer Kamera erkannt. Sobald Sie nun Ihr erstes Bild aufnehmen, werden dieselben Dateien und Verzeichnisstrukturen auf die Karte geschrieben, wie wenn die Formatierung durch die Kamera erfolgt wäre. [2] Die Karte ist voll funktionsfähig unter Windows 2000 [3] und Win98 [4], und kann (mit einem Adapter) auch an einem PCMCIA-Steckplatz betrieben werden. Da ich keine anderen Ausprägungen von Windows einsetze, kann ich zur weiteren Kompatibilität nichts sagen.

Ich habe das ganze mit drei Karten unterschiedlicher Größe getestet - 4 MB, 32 MB und 64 MB. Die beiden größeren Karten arbeiten perfekt, nachdem sie formatiert wurden, einzig die 4MB-Karte funktionierte partout nicht, weder mit eCS noch mit Windows. Wiederum vermute ich hier einen Zusammenhang mit dem Partitionstyp. Die 4MB-Karte wurde als Typ 01 (FAT12) erkannt und war nirgends einsetzbar außer in der Kamera. Die 32MB- und 64MB-Karten wurden als Typ 04 (FAT16 <32) bzw. als Typ 06 (FAT16) erkannt und funktionierten problemlos. Das würde bedeuten, daß die kleinste verwendbare Speicherkapazität bei 16 MB liegt (die Minimalgröße bei Typ 04).

Inwiefern das mit anderen Kameras als einer Kodak DC280 funktioniert, kann ich nicht sagen, denn die für einen umfangreichen Test notwendige Infrastruktur liegt weit über den bescheidenen Mitteln, die mir zur Verfügung standen. Auf der anderen Seite konnte ich mir Karten anschauen, die von Kodak und HP eingesetzt werden, und beide verwenden eine Form von FAT. Da es sich dabei um eine wahllose Zusammenstellung handelte und FAT einem universellen Format am nächsten kommt, kann ich mich mit gutem Gefühl zu der Aussage durchringen, daß Karten, die in der von mir beschriebenen Vorgehensweise formatiert wurden, in den meisten Kameras funktionieren werden. (Na, wenn ich mich da mal nicht zu weit aus dem Fenster lehne... okay, es ist Zeit für den altbekannten Zusatz: bei mir funktioniert's - Ihre Erfahrungen können andere sein.)

### Was Sie gar nicht wissen wollen

Nach dieser Lektüre wird sich nun der eine oder andere fragen, was denn LVM damit zu tun hat, ob eine CF-Karte in einer Digitalkamera funktioniert. Meine Antwort: Ich habe keinen blassen Schimmer. Ich bin kein Tekkie, nur ein OS/2-Anwender seit Version 2.0. Meine Möglichkeiten beschränken sich darauf, das, was ich während meiner Versuche beobachten konnte, nachzuvollziehen. Das grobe Verfahren, welches ich hier beschrieben habe, sieht zwar ziemlich simpel aus, hat mich aber mehrere arg frustrierende Tage gekostet, die größtenteils aus reinem Raten und Herumprobieren bestanden (und zahlreichen Neustarts). Ich habe so ziemlich alle Tests durchgeführt, die mit dem möglich waren, was mir zur Verfügung stand, und einige der Ergebnisse sehen recht merkwürdig aus - zumindest für mich. Warum, zum Beispiel, sind sowohl eCS als auch Windows in der Lage, auf eine Karte zuzugreifen, die nach dem ersten Formatieren als 'unformatiert' in DFSee und LVM erscheint? Ebenso unverständlich ist für mich, warum das Schreiben der LVM-Informationen dafür sorgt, daß das zweite Formatieren der Karte sauber funktioniert und diese (deshalb?) von der Kamera erkannt wird. Vielleicht kann ja jemand anders die Antworten dafür liefern - ich kann's jedenfalls nicht. Mit den Worten des unsterblichen wer-auch-immer: Es klappt eben einfach.

Sei's drum - aus meinen Notizen heraus hier nun das, was ich beim Arbeiten mit der 64 und 32MB-Karte herausgefunden habe:

#### Nach Formatierung durch die Kamera

- Unter Windows kann auf die Karten zugegriffen werden und man kann sie wechseln.
- Der Versuch, unter eCS mittels des Laufwerksobjekts auf die Karte zuzugreifen scheitert kläglich. Ein Ordner öffnet sich und behauptet er sammle Objekte. Das tut er dann scheinbar für eine sehr, sehr lange Zeit, denn das ist das letzte, was er behauptet. Das ganze System ist sogar ziemlich instabil, solange man den Ordner nicht wieder schließt.
- Ein Formatierungsversuch endet mit der Meldung "Auf das Laufwerk kann nicht zugegriffen werden".
- Ein 'chkdsk' von eCS meldet ebenfalls "Auf das Laufwerk kann nicht zugegriffen werden". (Windows meldet 63,930,368 Bytes verfügbar.)
- Der Aufruf von LVM endet mit einem Trap 0003 im "Modul os2lvm"
- Bei der 64MB-Karte (formatiert durch Kodak) meldet DFSee:

> `Id 17=-- WARNING :` | `Active (bootable), but not on 1st disk` `Aktiv (startfähig), aber nicht auf erster Festplatte`
> | `Will not boot using a standard BIOS` `Nicht startbar mit einem Standard-BIOS`
> `Id 17=-- WARNING :` | `Partition does not start on head-1 (cylinder boundary)` `Partition beginnt nicht bei Kopf 1 (Zylindergrenze)`
> `Id 17=-- WARNING :` | `Partition doesn't end on last head (cylinder boundary)` `Partition endet nicht bei letztem Kopf (Zylindergrenze)`
> `Id 17=-- WARNING :` | `Partition extends beyond end of the disk` `Partition überschreitet Festplattengrenze`

> `id` | `PD` | `Vol` | `Typ, Beschreibung` | `Format` | `Ersteller` | `Datenträgerbezeichnung` | `LVM Volume` | `Größe MB`
> `17` | `3` | `}- -` | `Prim 06 FAT16` | `EXTEN` | `MSDOS5.0` | `KODAK_PC` |  | `61.0`

- Für die 32MB-Karte (formatiert durch eine HP Kamera) meldet DFSee:

> `Pid17=-- minor-W :` | `Mismatch in LBA/Geometry and CHS-End sector with LBA offset` `Fehlende Übereinstimmung zwischen LBA/Geometrie und CHS-Endsektor mit LBA-Offset`
> `Causes:` `Ursachen:` | `- change in BIOS level or BIOS settings for LBA` `- Geänderte BIOS-Version oder BIOS-Einstellungen für LBA`
> | `- changed EIDE/SCSI disk adapter (or firmware)` `- geänderter EIDE/SCSI-Adapter (oder Firmware)`
> | `- changed DISK/SCSI device-drivers or filters` `- geänderte DISK/SCSI Gerätetreiber oder Filter`
> | `- partition-table corruption, possibly by a Virus` `- fehlerhafte Partitionstabelle, möglicherweise durch einen Virus`
> | `- bad CHS (dummy) values by buggy partitioning tool` `- ungültige CHS-(Dummy-) Werte durch ein fehlerhaftes Partitionierungsprogramm`
> `Id 17=-- WARNING :` | `Partition doesn't end on last head (cylinder boundary)` `Partition endet nicht bei letztem Kopf (Zylindergrenze)`
> `Id 17=-- WARNING :` | `Partition extends beyond end of the disk` `Partition überschreitet Festplattengrenze`

> `id` | `PD` | `Vol` | `Typ, Beschreibung` | `Format` | `Ersteller` | `Datenträgerbezeichnung` | `LVM Volume` | `Größe MB`
> `17` | `3` | `} - -` | `Prim 04 FAT16-32M` | `FAT16` | `*XWI9IHC` | `DSC_LABEL` |  | `30.5`
> `20` | `3` |  | `Pri/Log FreeSpace` | `- - - - - -` | `- - - - - -` | `- - - - - -` |  | `0.062`

#### Nach erstem Format in eCS

- Die Karte kann in der Kamera verwendet werden.
- Zugriff und Wechsel unter Windows möglich.
- Zugriff und Wechsel unter eCS möglich.
- Chkdsk meldet 63,950,848 (32,030,720) bytes frei
- LVM erkennt das Laufwerk als "wechselbar" und "unformatiert" (grau).

- DFSee meldet:

> `id` | `PD` | `Vol` | `Typ, Beschreibung` | `Format` | `Ersteller` | `Datenträgerbezeichnung` | `LVM Volume` | `Größe MB`
> `19` | `3` |  | `Pri/Log FreeSpace` | `-- -- --` | `-- -- --` | `- - - - - - - -` |  | `61.1 (30.6)`

#### Nach LVM und dem zweiten Formatieren

- Zugriff und Wechsel unter Windows möglich.
- Zugriff und Wechsel unter eCS möglich.
- LVM erkennt die Karte als wechselbar und FAT-formatiert (grün).
- Chkdsk meldet 63,934,464 (32,014,336) Bytes frei.
- Die Karte kann in der Kamera verwendet werden.
- Bei der 64MB-Karte meldet DFSee:

> `Id 17=-- WARNING :` | `Active (bootable), but not on 1st disk` `Aktiv (startfähig), aber nicht auf erster Festplatte`
> | `Will not boot using a standard BIOS` `Nicht startbar mit einem Standard-BIOS`

> `id` | `PD` | `Vol` | `Typ, Beschreibung` | `Format` | `Ersteller` | `Datenträgerbezeichnung` | `LVM Volume` | `Größe MB`
> `17` | `3` | `}*:` | `Prim 06 FAT16` | `FAT` | `IBM 4.50` | `NO NAME` |  | `61.1`

Und für die 32MB-Karte:

> `id` | `PD` | `Vol` | `Typ, Beschreibung` | `Format` | `Ersteller` | `Datenträgerbezeichnung` | `LVM Volume` | `Größe MB`
> `17` | `3` | `}*:` | `Prim 04 FAT16-32M` | `FAT` | `IBM 4.50` | `NO NAME` |  | `30.6`

### Fußnoten

[1] Unter Umständen kann man die Produkte auch direkt über den Hersteller (sales@svec.com.tw) beziehen... mir scheint, daß man dort ziemlich flexibel ist, was den Vetragspartner angeht. Das einzige, was ich hier zu bemängeln hätte, sind die Zahlungsweisen, die einem zur Verfügung stehen: Kreditkarte, International Money Order, Bar- oder Verrechnungsscheck; aber kein PayPal oder BidPay. Bezahlung über Kreditkarte ist wohl am bequemsten, allerdings gibt es keinen secure server (gesicherten Server), den man für die Transaktion verwenden könnte, es geht nur über E-Mail. Ups! Auf Rat des Herstellers habe ich meine Kreditkartennummer dann in zwei Ziffernfolgen aufgeteilt und diese in separaten Mails versandt. Ein zugegebenermaßen etwas abgedrehtes Verfahren, aber zumindest halbwegs sicher. Noch ein Wort zu den Versandkosten: SVEC übernimmt 30 Prozent der Gebühren. In meinem Fall - von Taiwan nach Las Vegas - habe ich 10$ bezahlt und SVEC 3$. Der Versand erfolgte mit TNT und erreichte Las Vegas in 5 Tagen.

[2] Manchmal benötigt das Programm "Refresh removable media" ("Wechsellaufwerke aktualisieren") mehr als eine Minute, um nach einem Wechseln der Karten meine 64MB-Karte zu lesen - also denken Sie daran, daß das auch Ihnen passieren könnte und... keine Panik: Es läuft schon, nur dauert's halt ein wenig. Die 32MB-Karte hatte dieses Problem nicht, ihr Inhalt wurde sofort angezeigt.

[3] Die Formatierung der Karte ist in Windows 2000 völlig unerheblich und hat keinen Einfluß auf das Arbeiten mit der Karte, denn das bleibt gleich: Unhandlich. Die Karte wird zwar als Wechsellaufwerk erkannt und es kann darauf zugegriffen werden, aber es steht keinerlei Methode zur Verfügung (weder auf dem Desktop noch in der Taskbar), das Laufwerk abzumelden und gefahrlos entfernen bzw. wechseln zu können. Der einzige Weg besteht darin, das Laufwerk im Gerätemanager zu 'deaktivieren'. Wenn Sie nun die selbe CF-Karte wieder einsetzen und 'aktivieren' wählen, ist alles in Ordnung. Sollten Sie aber auf die abwegige Idee kommen und etwa statt dessen eine andere Karte einsetzen, trifft Sie Onkel Bills ganzer Zorn: Sie werden zwar zunächst (mehr oder weniger) auf's übelste als Dilettant beschimpft, unfähig, das Laufwerk korrekt herunterzufahren, irgendwann aber wird dann doch die neue Karte geladen... treten Sie Ihrer Bestrafung mit Geduld gegenüber und ertragen Sie die Pein stillschweigend.

[4] Noch eine Warnung in Bezug auf Windows 98: Die Installation des Lesers kann sich gefährlich auf die Vergabe der Laufwerksbuchstaben auswirken. Ich habe zwei Festplatten, die beide an einem Promise ATA100-Controller angeschlossen sind (mit 80-Pin-Kabel). Aus irgendeinem Grund hat Windows 98 den Leser zwischen Laufwerk #1 und Laufwerk #2 gehängt. Dies hat dann natürlich die Laufwerksbuchstaben auf Laufwerk #2 verschoben, mit allen Konsequenzen, die so etwas mit sich bringt. Mit Partition Magics "DriveMapper" habe ich die Sachen dann wieder geradegebogen, aber muß nun sichergehen, daß beim Starten von Win98 immer eine Karte im Leser steckt um das Problem nicht wieder neu herauf zu beschwören... In eCS und Windows 2000 kann der Anwender Einfluß auf die Vergabe der Laufwerksbuchstaben nehmen und das Problem besteht dort somit nicht.

Daten und Quellen: FD620 IDE CF Card Reader/Writer, unterstützt Hot Swap Typ I/II Hersteller: SVEC Network Solutions - http://www.svec.com/PRODUCTS/FD620EDS.HTM/ Preis: $34.95 (+Versandkosten) bei eBay SVEC Tawain Website - http://www.svec.com.tw/ SVEC Vertrieb - sales@svec.com.tw PC-CardMart.com - http://www.pc-cardmart.com/PCMCIA_Adapters_Swapbox.htm AP-soft - http://www.tssc.de/products/cwos2/cardware_os2.htm DCITU - http://charette.dyn.tj/dcitu/index.html Daniela Engerts IDE-Treiber - http://hobbes.nmsu.edu/cgi-bin/h-search?key=DANIS506 DFSee - http://www.dfsee.com

[Artikelverzeichnis]
editor@os2voice.org
[Vorherige Seite] [Inhaltsverzeichnis] [Nächste Seite]
VOICE Homepage: http://de.os2voice.org