VOGONS


First post, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

It is well-known that the definitions of certain IDE pins have changed in different revisions of the ATA standard. CF-IDE adapters and CompactFlash cards themselves don't necessarily implement these changed pins in a backward compatible way when connected to a multi-I/O card that wires these directly to ISA.

Pin 27 is IOCHRDY (formerly reserved). On my QD-U386DX (UMC 481) board, having certain CF cards connected via CF-IDE causes a soft hang during boot (Ctrl-Alt-Del still works). In a conversation with another user, it was suggested that CF adapters should put a diode on this pin and many don't, and that this issue is well-known in the RiscPC community.

Pin 28 is Cable Select (formerly DALE). This pin is well known to cause mysterious issues involving VGA cards (Re: "Fixed" 386sx motherboard works but not with 16-bit VGA card). Another user reports POST beeps related to VGA card initialization, and parity errors when this was connected to a CF-IDE adapter.

Reviewing http://cd.textfiles.com/internetinfo/standard … 13/atbuscam.txt vs. https://en.wikipedia.org/wiki/Parallel_ATA these are the pins that changed meaning:

Pin 21 changed from reserved to DDRQ
Pin 27 changed from reserved to IOCHRDY
Pin 28 changed from DALE to Cable Select
Pin 29 changed from reserved to DDACK
Pin 32 changed from IOCS16# to NC
Pin 34 changed from PDIAG# to DMA66 Detect

If you pluck pin 27 on your CF-IDE adapter, it will break faster PIO modes that use this pin for flow control, so that adapter would have to be exclusively for ISA machines.
If you pluck pin 27 on your Multi-I/O card, it would theoretically break spinning hard drives that actually use this pin properly if they ever get put into such a faster PIO mode?

In contrast, is there any reason not to automatically pluck pin 28 on the IDE interface whenever you come across an ISA Multi-I/O card? Do any IDE drives ever have a legitimate need to connect to ALE?

The other pins seem innocuous, possibly with the exception of pin 34, is there any reason to remove it from the Multi-I/O card?

Reply 1 of 1, by mbalmer

User metadata
Rank Newbie
Rank
Newbie

Just adding a quick note from personal experience here:

I had a 386 board that seemed particularly persnickety when it came to multi-IO cards and CF adapters, especially in combination with VGA cards. It would produce parity errors with CF cards over a certain size pretty reliably, and it would become especially egregious with multiple CF cards on the same IDE channel.

Pulling pin 27 seemingly cured the parity error problem, and allowed me to be able to boot to drives pretty reliably with a CGA card installed, but it would still throw POST code beeps claiming the video card was bad if I had a VGA or EGA card in the system.

As it turns out, the CF cards themselves weren't actually the problem when it came to that last bit. The adapter itself turned out to be the problem, because pin 28 (ALE) is just tied to the GND pins, which in my limited understanding is causing glitching on the rest of the ISA bus because it's loading the pin down, causing runt pulses instead of fully-driven signals.

After removing pins 27 and 28 both from the adapter, the cards now work fine and no more bleeping computer.