Compact Flash in 8-bit mode

I've gotten me one of those dual Compact Flash to IDE adapters to use as part of a project, which will interface with an 8-bit data bus. While I know that with some extra components it's possible to deal with true 16-bit IDE on an 8-bit bus, I simply don't want to add in such unnecessary (and space-consuming) parts when I'll likely never want to plug in an actual IDE drive. Most CF cards will work in an 8-bit only mode as far as I know, which is why I've chosen it. Plus, just for the ease of sticking it back in my PC to put data on it.

But the question is, how exactly can one get it into that mode? I've heard of an IDE register which can do it, but since most IDE drives don't support 8-bit mode, I can't seem to find mention of it in the IDE register references/tutorials I've come across.

The other, possibly older/unsupported method, is using /IOCS16, from what I understand. But I hear this is no longer used in the ATA3 spec. Though for a CF adapter, if I simply pulled that line high, would this make the card work in 8-bit mode in power up? If so, this would be the best method, since I could just use the card immediately without needing to set anything up. I'm not opposed to doing it via a register if I have to, if I can find out which that is, but if someone could help point me in the right direction either way, I'd be greatful!

Reply to
FyberOptic
Loading thread data ...

Just since I posted this, I decided to look up the OLDER specs for ATA, primarily ATA-2. Low and behold, there's the answer I was looking for. From the look if it, you simply use the Set Features command (0xEF), and use feature 0x01, which is "Enable 8-bit data transfer". ATA-3 and up seems to have removed it entirely.

I also came to find that /IOCS16 is apparently an output to notify when the drive is outputting 16-bit data, not an input to specify which is which.

Reply to
FyberOptic

If I read the ATA spec correctly, lots of registers want you to know the full 16-bit value; most IDE software won't be able to initialize without reading out the device info, so will never get to the command phase where you set up 8-bit options. The ATA-3 spec doesn't include an 8-bit option, though some vendors may support such.

Two alternatives to support IDE are a bit more obvious: USB and Firewire adapters for IDE are widely available (and would leave SATA an open possibility). You can even channel the CF through a USB, and drop its dedicated interface.

Reply to
whit3rd

Un bel giorno FyberOptic digitò:

Have you tried googling it?

formatting link

There are some very informative results:

formatting link
formatting link
formatting link
snipped-for-privacy@t13.org/msg02889.html
formatting link

--
asd
Reply to
dalai lamah

The CF spec requires that all compliant cards support 8-bit transfers in True-IDE mode using Set Features as you discovered. So you are guaranteed this will work for all CF cards.

Contrariwise, _no_ modern hard disk will support this feature. Only "XT-IDE" drives will support it - TTBOMK no XT-IDE drive larger than

40MB (yes M) was ever manufactured.
Reply to
zwsdotcom

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.