On 8/4/05, Jim Brain <brain at jbrain.com> wrote:
There is the older CF standard, and the newer CF+
standard. However,
both should function identically in "True IDE" mode.
Right. I'm not thinking of CF+... I'm thinking of older changes.
Well, the official CompactFlash spec (google for a
copy, or email me as
a last resort) tells quite a bit, but one must have a grounding in how
to communicate with an IDE drive first (to understand the command set
and sequence).
I have written real IDE drivers in the past (for the Amiga).
You can only do 8-bit mode when in CF "memory
mapped mode". But, as
that requires the same amount of lines and precludes the support of IDE
disks in a project, many opt to use True IDE mode. In IDE mode, you
have to send and receive data in 16 bit chunks, but I do it with a 8-bit
micro, and others have as well. You simply treat the 16 bit data as two
IO bytes, and twiddle the IDE lines via a third IO port as needed.
That sounds a little familar.
But, in the end, True IDE mode is simple enough and
supports IDE,
PCMCIA, and CF options (disk wise).
The interfaces I'm having issues with are CF-only (IOB6120 and ElfDisk
on an Elf2K).
They are _not_ designed and are not described as compatible with
"real" IDE disks... they are 8-bit CF only. The 40-pin IDE interfaces
I have that I'm using CF cards on (via a CF adapter) work perfectly
with these 4MB and 16MB cards.
As for the issue you decribed, if you want to mail me
a card, I can play
with it and see. I did notice an issue with a card previously mailed to
me; it did not have an MBR.
Neither of these that I'm playing with are FAT-type interfaces - they
read and write raw blocks. Completely MS-DOS-incompatible. Choices
are the native target interface, dd under UNIX, or via custom
applications under DOS/Windows.
There is no MBR, no partition table - in the case of the IOB6120 -
it's a fixed 2MB per partition, so you have as many partitions as you
have groups of 4096 blocks. With the Elf2K, it's an ElfOS issue, and
it has its own directory structure that has no correlation with
MS-DOS.
I have a *large* card that works fine. I would rather not have to use
a $70 card and leave 99% of it blank (I want to use it in my camera).
I'd like to find out why this stack of 4MB cards doesn't seem to work
with these particular machines.
Thanks,
-ethan