Short:    use CompactFlash cards in your PCMCIA slot
Kurz:     CompactFlash-Speicherkarten im PCMCIA-Steckplatz bearbeiten
Uploader: t.jager@gmx.de (Torsten Jager)
Author:   t.jager@gmx.de (Torsten Jager)
Version:  1.08
Type:     disk/misc
Date:     17-Apr-2002

(deutsche Beschreibung siehe unten - german description see below)
$VER: compactflash.device 1.08 (17.04.2002)

--- english section ----------------------------------------

Purpose
=======

Read and write your digital photos, mp3 files etc. directly from
CompactFlash cards as used by many mobile devices.

The OS supplied "carddisk.device" appeared to be unable to understand
CF cards. I already had bought that adapter card, so I decided to write
a suitable alternative myself.

After digging through loads of technical documentations, things are
slowly becoming comprehensive ;-)

compactflash.device is now much more stable and compatible.
At least it could convince my defective 64Mb card to cooperate by
auto-repeating every operation up to 5 times :-)
Anyway, when my camera too started making trouble, I got that card
replaced by vendor. The new one works fine with both camera and
Amiga (and is also much faster).

New:
Added debug tool.
Added workbench disk icon.
Changed interrupt handling.
Read access a bit faster.

A word on hardware:

you will need a special adapter card labelled "CompactFlash to
PCMCIA", to "PC Card" or to "ATA". It looks like a normal 5mm
PCMCIA card with a smaller slot for CF cards at the front side.

There are two types of such adapters sold in good computer
stores, for "CF Type 1" and "CF type 2" cards.
The only two differences: "CF Type 2" adapters can also cope
with thicker CF cards, like those expensive "MicroDrive"
harddisks; and b) they cost more.

Mine is a "CF Type 1" which I got for EUR 10 (but I also saw
the same model for the double price...).

Some testing results:
I have two CF cards, 16 and 64 Mbyte of capacity.
16Mbyte card (Hitachi): 1.0 Mb/s read, 600 kb/s write.
64Mbyte card (no name): 1.6 Mb/s read, 800 kb/s write.

WARNING:
"CompactFlash" is (TM) by CompactFlash Association ;-)


System requirements
===================

* AMIGA 1200 or 600, OS 2.0+
* "CompactFlash to PCMCIA/ATA" adapter card,
    see adapter.jpg for an example
* fat95 file system (disk/misc/fat95.lha)


Installation
============

Copy cfd/devs/compactflash.device to DEVS:
Have fat95 installed on your system.
Mount the drive by double-clicking cfd/devs/CF0.

If you run OS 3.5+:
Copy cfd/def_CF0.info to both sys:prefs/env-archive/sys and env:sys.


Problems
========

If some trouble occurs, like cards not recognized by cfd, please:

* mount CF0: if not already done.
* insert that very card.
* wait at least 1 second (yes, honestly).
* take cfd/c/cfddebug and type into a shell

    cfddebug ram:cfdlog

* send me the binary file just created (about 4 kbytes).
  I promise there are no passwords and such in it.


History
=======

v1.01    02/2002    First experiments.

v1.02    03/2002    Minimal exec command set to work with filesystems.

v1.03    03/2002    Added auto-repeat for faulty CF cards.

v1.04    03/2002    Removed numerous bugs.
                    Added quiet shutdown if non-CF cards are inserted.

v1.05    03/2002    Added TD64 and SCSI emulation support.

v1.06    03/2002    Card interface moved to PCMCIA I/O address space.

v1.07    04/2002    Added debug tool and disk icon.

v1.08    04/2002    Changed interrupt handling.
                    Made read access a bit faster.


Have Fun!


--- und noch einmal auf deutsch ----------------------------

Verwendungszweck
================

Lesen und schreiben Sie ihre digitalen Fotos, mp3 Dateien usw.
direkt von CompactFlash-Speicherkarten.

Das in OS3.9 enthaltene "carddisk.device" konnte leider mit CF-Karten
nichts anfangen. Ich wollte den schon gekauften PCMCIA-Adapter
aber nicht abschreiben, also griff ich zur Selbsthilfe.

Nach dem Durchwühlen bergeweiser technischer Dokumentationen
kommt langsam Licht in die Sache ;-)

compactflash.device ist jetzt deutlich stabiler und verträglicher.
Sogar meine fehlerhafte 64Mb Karte ließ sich durch beharrliche
automatische Wiederholungen zur Zusammenarbeit überreden :-)
Als dann aber auch meine Kamera Schwierigkeiten machte,
habe ich die Karte dann doch umgetauscht. Die neue läuft prima
in Kamera und Amiga (und ist außerdem auch viel schneller).

Neu:
Ferndiagnosemodul hinzugefügt.
Workbench Disk Icon hinzugefügt.
Veränderte Interruptverarbeitung.
Lesezugriffe etwas schneller.

Zum Thema Hardware:

Sie brauchen eine spezielle Adapterkarte, genannt "CompactFlash
auf PCMCIA", auf "PC Card" oder auf "ATA". Die sieht aus wie
eine gewöhnliche 5mm PCMCIA Karte mit einem kleineren
Einsteckschacht für CF Karten auf der Vorderseite.

Im gut sortierten Computerhandel gibt es zwei verschiedene
Ausführungen, für "CF Typ 1" und für "CF Typ 2". Letztere bieten
nur zwei Unterschiede: a) sie eignen sich auch für dickere CF
Karten, wie diese s**teuren "MicroDrive" Festplatten, und sie
sind b) etwas teurer.

Apropos Geld: mein "CF Typ 1" Adapter kam ca. EUR 10
(habe ich aber auch schon für den doppelten Preis gesehen...).

Ein paar Testergebnisse:
Ich habe zwei CF Karten, 16 und 64 Mbyte.
16 Mbyte (Hitachi): 1.0 Mb/s lesen, 600 kb/s schreiben.
64 Mbyte (no name): 1.6 Mb/s lesen, 800 kb/s schreiben.

WARNUNG:
"CompactFlash" ist ein eingetragenes Warenzeichen der
CompactFlash Association ;-)


Systemvoraussetzungen
=====================

* AMIGA 1200 oder 600, OS 2.0+
* "CompactFlash auf PCMCIA/ATA" Adapter-Karte,
    wie z.B. meine (adapter.jpg)
* fat95 Dateisystem (disk/misc/fat95.lha)


Installation
============

Kopieren Sie cfd/devs/compactflash.device nach DEVS:
Installieren Sie ggf. fat95 nach.
Melden Sie das Laufwerk an duch Doppelklicken auf cfd/devs/CF0.

Wenn Sie OS 3.5+ benutzen, kopieren Sie noch
cfd/def_CF0.info nach sys:prefs/env-archive/sys und env:sys.


Probleme
========

Bei Problemen, wie einer nicht erkannten Karte:

* Melden Sie CF0: an wenn nicht schon geschehen.
* Legen Sie die betreffende Karte ein.
* Warten Sie mindestens 1 Sekunde (ja wirklich ;)
* Nehmen Sie cfd/c/cfddebug und tippen Sie in eine Shell

    cfddebug ram:cfdlog

* Schicken Sie mir die soeben erzeugte Binärdatei (ca. 4 kbyte).
  Es sind keine Paßwörter oder so etwas drin, versprochen.


Geschichte
==========

v1.01    02/2002    Erste Versuche.

v1.02    03/2002    Brauchbare Version für Zusammenarbeit mit Dateisystem.

v1.03    03/2002    Automatische Wiederholungen hinzugefügt für
                    fehlerhafte CF Karten.

v1.04    03/2002    Zahlreiche Fehler behoben.
                    Treiber deaktiviert sich selbst bei Nicht-CF Karten.

v1.05    03/2002    TD64 und SCSI Emulation hinzugefügt.

v1.06    03/2002    Kartenzugriffe über PCMCIA I/O Adressen umgeleitet.

v1.07    04/2002    Ferndiagnosemodul und Disk Icon hinzugefügt.

v1.08    04/2002    Veränderte Interruptverarbeitung.
                    Lesezugriffe etwas schneller.

Viel Spaß!

