CMD FD series


The CMD FD series was Creative Micro Designs 's range of third-party floppy disk drives for the Commodore 8-bit line of home computers. Using 3½" floppy disks, they provided a significantly larger storage capacity than Commodore-produced drives; the FD-2000 offered 1600 kB of storage using standard double-sided, high-density floppies, while the FD-4000 also allowed the use of 3200 kB extra-high density floppies. In contrast, the Commodore 1581 3½" drive only supported 800 kB double-sided, double-density disks.

Features

In addition to the higher storage capacity, the FD series also provided additional features not found on the Commodore 1581. A "SWAP" button on the front panel allowed the drive number to be easily switched with that of another Commodore drive on the serial bus, without the need to enter any commands into the computer. It also provided a "1541 emulation mode", allowing partitions on a 3½" disk to simulate the behavior of a 5¼" Commodore 1541 floppy. The ability to use partitions and subdirectories was also expanded beyond the rudimentary form found in the 1581. A real-time clock was also available as an add-on feature; it could be used to time-stamp files and to automatically set the system clock in the GEOS operating system. The CMD FD series also included native JiffyDOS compatibility; while using the JiffyDOS system with a Commodore drive required replacing both the KERNAL and drive ROM chips, for full JiffyDOS use, only the computer's KERNAL ROM needed to be replaced when used in conjunction with an FD-2000 or FD-4000.

Native Partition Structure

The System Partition header is at track 26, sectors 5, 8, 9, 10, and 11. Sector 5 is the Device Information Block, which is $FF filled except in a few specific places. Sectors 8 to 11 contain the System Partition Directory.
The first sector of a FD-2000 native partition is the header.
Header Contents
$00–01: T/S reference to root directory block of this
partition.
02: DOS Type
04-15: Disk label, $A0 padded
16-17: Disk ID
19-1A: DOS Version
20-21: T/S reference to present directory header block
22-23: T/S reference to parent directory header block

24-25: T/S reference to dir entry in previous directory

26: Index to parent directory entry
AB-AC: GEOS border sector
AD-BC: GEOS format string
The BAM starts at 1/2 and continues to 1/33.
BAM Contents
02: DOS Type
04-05: Disk ID
06: I/O byte
bit 7 set - Verify on
bit 7 clear - Verify off
bit 6 set - Check header CRC
bit 6 clear - Don't check header CRC
08: Last available track # in partition
20-FF: BAM for tracks 1-7
Its directory structure is slightly different from the Commodore structure.