tashtwenty/reference/dcd.md
2022-10-14 08:49:30 -06:00

4.9 KiB

Directly Connected Disks

In order to be able to connect hard drives to Macintosh computers before adopting SCSI with the Macintosh Plus, Apple created the Directly Connected Disks (DCD) specification.

DCD uses the floppy disk drive controller (IWM/SWIM) as a high-speed serial interface communicating a high-level protocol at 47/96 (~0.490) MHz using a 7-to-8 encoding which reduces the effective speed to 329/768 (~0.428) MHz. This is almost double the maximum speed (230.4 kHz) that the SCC can achieve when internally clocked, but considerably less than the speed achievable using SCSI.

Multiple DCD devices can be connected to a single Macintosh in a daisy chain, optionally with a single floppy disk drive at the end of the chain. The protocol places no limit on the number of chained DCD devices, but in practice, it is limited by ROM support to 2 or 4. On Macs that only support 2 chained DCD devices, connecting a chain of more than 2 will cause the Mac to only recognize the first.

All signals from the IWM/SWIM are common to all floppy disk drive connectors in a Macintosh except for the enable (!ENBL) signal; the IWM/SWIM has two of these (!ENBL1 and !ENBL2) with the intention of being able to control two floppy disk drives. All known Macintosh ROMs that have support for DCD will only recognize DCD devices when !ENBL2 is used as the !ENBL signal. When a Macintosh has an external 19-pin D-sub (Often referred to as "DB-19", but this is incorrect as "DB" in the de facto D-subminiature standard refers to the shell size which accommodates 25 pins and is used for PC parallel ports.) floppy disk drive connector, !ENBL2 is always routed to it, but !ENBL2 can still be used to connect devices even on a Macintosh that does not have such a connector.

Macintosh Compatibility Matrix

Model Firmware Support !ENBL2 Location Max Devices Tested By
512K With Hard Disk 20 Patch External 19-Pin D-Sub 4?
512Ke In ROM External 19-Pin D-Sub 4 Tashtari
Plus In ROM External 19-Pin D-Sub 4
SE In ROM External 19-Pin D-Sub 2
IIx With Nonstandard ROM Second Internal Floppy Header 2
SE/30 With Nonstandard ROM External 19-Pin D-Sub 2
IIcx With Nonstandard ROM External 19-Pin D-Sub 2 demik
IIci In ROM External 19-Pin D-Sub 2?
Portable In ROM External 19-Pin D-Sub 2?
Classic In ROM External 19-Pin D-Sub 2 Tashtari
LC In ROM Second Internal Floppy Header 2?
IIsi In ROM External 19-Pin D-Sub 2?
Classic II In ROM External 19-Pin D-Sub 2 Tashtari
PowerBook 100 In ROM External HDI-20 Connector? 2?
LC II In ROM SWIM PLCC Pin 19 2?
IIvi In ROM SWIM PLCC Pin 19 2?
IIvx In ROM SWIM PLCC Pin 19 2? Fizzbinn

Cells marked with ? are speculated to be true but untested.

Implementations

Hard Disk 20

The Hard Disk 20 was the only contemporaneous product released by Apple or any other company following the DCD specification.

More Info:

Floppy Emu

In 2014, the Floppy Emu by Big Mess O' Wires added support for DCD.

More Info:

TashTwenty

TashTwenty is an open source firmware implementation of DCD written by Tashtari for the Microchip PIC16F1704.

More Info:

References