DD-001 is a rare 3.5 floppy disk drive for C64, manufactured by UK company TIB PLC in 1991. It is connected via cartridge to the expansion port. The cartridge includes several common components, eprom and a floppy driver, the drive is built in an external case.
I’m a happy owner of this floppy drive, which is highly incompatible with all traditional (or less traditional, like IDE64) C64 drives. I’ve made a clone of DD-001, but I didn’t do a deep analysis, I just redrew the device and here are my notes, drawings and other files.
The cartridge and floppy drive
I have redrawn the PCB in Eagle. It is very similar to the original board. Originally, it included eprom 2764 which was replaced by flashrom (up to 29040) and a jumper JP1 for ROM files switching was added on (see below). The capacitor C4 isn’t even assembled on the original board and needn’t be installed.
Originally, DD-001 used a 3.5 DD drive with PC pinout and address DS0 but can be replaced by an ordinary internal PC HD floppy drive. They are usually addressed as DS1 (and there might be a problem changing this setting), therefore the DS0 and DS1 pins between the floppy driver and connector were swapped on my board. The cable between the cartridge and floppy drive is a usual uncrossed floppy cable with IDC connectors.
Power supply for the floppy drive in my original DD-001 is connected to the expansion port via unused wires in the data cable. It can cause overload of the original C64 power supply or blinking of the C64 screen (because of the voltage drop). I removed this supply from the cartridge and an external power supply for my cloned drive is required.
The original DD-001 and both of my clones, with several floppy drives, make a strange sound -knocking when they are idle. It's a feature of this device...
Software and documentation
The ROM file in my original drive is probably version 1.0. This ROM doesn’t support the SAVE command (returns the “file not found” error) and the tools from the bootdisk (my version is 1.1) aren’t working, either (because commands JSR $8xxx jump to different addresses). Fortunately, the ROM file version 1.1 is available, which includes the correct SAVE command and works with the bootdisk. The JP1 jumper enables the switching between ROMs 1.0 and 1.1 (but I don’t recommend to use version 1.0).
There is not a lot of documentation or software available for DD-001. I’ve made an image of the bootdisk and coded two small tools:
This tool restores the bootdisk from the image to a real floppy disk. Just copy the bootdisk image “dd001boot.img” and tool “dd001bootwr.prg“ in the same directory on SD2IEC (or disk in 1581), run the tool and insert an empty disk into DD-001.
This tool creates a disk-image from DD-001. Just copy the tool “dd001dump.prg“ to SD2IEC and run. The floppy disk in DD-001 will be read track-by-track and saved with fixed filename “dd001dump.img“.
These tools take some time to work, but Jiffydos can speed up the process. Caution – commands LOAD and SAVE “FILENAME”,9 from DD-001 ROM file are in collision with Jiffy. You can use Jiffy for copying disk-image, but you have to switch off before using DD-001 in Basic. Original tools (and therefore neither my tools) don't catch the "disk not present" error (I couldn't find this "exception handling").
The floppy disk contains 80 double-sided tracks, one track contains 9 sectors, one sector contains 512 Bytes.
2 (sides) * 80 (tracks) * 9 (sectors) * 512 (Bytes) = 737280 (Bytes) / 1024 = 720kB (whole image).
The DD-001 uses FAT and should be compatible with DOS floppy disks, but implementation of this file system includes some bugs.
I have scanned the warranty card and instructions for bootdisk games + I have downloaded DD-001 operation guide and a few articles from old C64 mags.
I would like to thank Steve Gray for the ROM file v1.1 and Jan Pedersen for the Operation guide.
Download files here.