My email client (Pegasus) started eating outgoing mail yesterday, so
I'm going to summarize what I said in a message that was obviously
posted to the bit bucket.
On the subject of floppy controllers, etc...
All legacy floppy controllers in 100% "PC compatible" systems are
based on the Intel 8272/NEC 765. The systems that use other
controller families (e.g. the Sany MBC 550) are not considered to be
"PC Compatible".
But the 765 is a late 70's era chip essentially designed for use with
8" drive setups. It can poll a bank of drives and alert the system
when one has changed state; it can perform overlapped seeks and is
"intelligent" in that it pretty much has the IBM 3740 format "built
in". Data separator and write precompensation logic, as in other
chips of the day were provided by external logic.
Compared to it the WD 17/27xx chips are brain-dead (although by that
virtue, very flexible). For its time, the 765 is a tour de force.
Used on a 5.25" or 3.5" drive system, however, the benefits are
pretty useless. Small drives have motors that need to be turned on
and off and don't provide a "ready" signal. So the "drive ready"
line is tied high (meaning that if the drive being addressed isn't
ready, the 765 simply hangs); there's no motor control line on the
765, so that must be provided by an external register. That same
register also has the drive select logic, so the unit select pins (as
well as the head load signal) on the 765 are NC. The external
register that controls the motor signals and the drive select also
has 2 bits that allows the controller to tristate the interrupt and
DMA request lines, as well as to reset the controller.
The PC AT added another register to allow one to change the datarate
(for high-density drives) and monitor the "disk changed" signal line
that many drives have.
It wasn't too long before chip makers started integrating all of the
external logic with the 765 core. The WD37C65 was probably the first
such chip that contained all of the external logic (data separator,
precomp, motor control, drive select and data rate control). Later
on, more features were added (1 Mbps data rate for 2.88 MB drives,
special circuitry for floppy tape control, data FIFO, additional
configuration registers, etc.). Some of the integration wasn't done
too well. FM support is one of those areas--the Intel 82077
initially had pretty good FM support, but the 82077AA-1 has it
broken.
The Compaticard IV was designed around the 82077 chip, but when
reports of the new 82077AA-1 not working started to drift in,
Micrsolutions changed to the pin-compatible National 84077.
Basically, the CC IV is a PC-AT style controller that brings all 4
drives out to connectors and adds some beefier (74LS38 OC buffers)
drivers for use with 8" drives. There is also an auxiliary register
that provides a couple of bits on the connector for control of such
things as Reduced Write Current on 8" drives. And it allows for user-
selectable I/O port address, DMA and interrupt as well as an on-
board BIOS option ROM.
There are other floppy controller cards with selectable I/O port
addresses (or at least to a "secondary" address), but all others do
not allow changing from DMA 2, IRQ 6. Nor is driver support provided
than for the controller functioning as the primary one.
Hope this helps,
Chuck