External floppy drives on the Spectrum +3
The +3 External Drive Connector
The "Disk B:" connector on the +3 is slightly non standard and there is an error in the manual which adds to the confusion. The connector is rotated through 180 degrees so pin 1 is at the top right rather than the bottom left (looking in from the rear of the computer). The indexing slot is also at the opposite end to normal, instead between pins 31/32 and 33/34, this means that any standard PC floppy cable will only fit in the wrong orientation unless the polarising key is (re)moved.
Connecting the Amstrad FD-1
The Amstrad FD-1 external FDD is an external drive manufactured for the Amstrad CPC range of computers. The unit is mains powered and contains a single sided 3″ drive like the one in the +3. The main thing to be aware of when using these units with the +3 is that they place a 5v supply on four of the pins (needed to power the DDI-1 disk interface for the CPC464). This could cause issues if the connector is reversed when connecting to the +3. The 5v can be disconnected inside the FD-1 by unplugging the 0.1″ latched connector from the small 34-26 pin ribbon adapter board at the rear of the unit.
Connecting a modern 3½″ FDD
To connect a normal PC floppy drive as "drive B:" to the +3 you need a 34 way ribbon cable with an IDC card edge connector at one end, and an IDC socket connector at the other.
Modern floppy drives don't provide the drive ready signal, so the READY line needs shorting to ground to signal to the Spectrum that the drive is ready. A switch can be used to manually toggle the ready signal on and off, but a more convenient method is to place a diode between the READY and DRIVE 1 lines so that the ready signal is exerted whenever the external drive is accessed. Wiring the READY permanently to ground works, but is not recommended as this causes the loader to hang when no diskette is present in the internal drive, meaning that loading tape software from the loader option on the boot menu is impossible.
A detailed guide to constructing a suitable cable is available here
Any modern 3½″ floppy drive will work as drive B: with the above proviso, you must create a ready signal for the Spectrum otherwise it won't work. All modern drives are hard wired to appear as drive B: (hence the "twist" cable in a PC to make it appear as drive A:) so the cable is just a straight through wiring of all the signals.
The +3 doesn't know about High Density (1.44MB) diskettes so you need to use Double Density (720K) ones. You can also cheat and tape over the hole on a HD diskette to make it appear as a DD one. This may or may not work, and the data may only last weeks or days (or it might be fine! but better safe than sorry if you save anything vaguely important on them). If you're just going to use a single diskette to "ferry" files from a PC to 3″ disks then this is a perfectly adequate solution.
DSDD diskettes can be formatted as 720k DOS disks or with one of a variety of formats that +3DOS can use.
+3DOS format disks
3½″ disks can be formatted in a variety of different capacities as CP/M disks. The +3 ROM cannot format 3½″ disks itself so either a utility is required on the +3 (such as The Spectrum +3 Multiformatter by Garry Lancaster), or the disk must be prepared on the PC.
DOS format disks
to access a DOS formatted 720k disk on the +3 you can use Garry Lancaster's MSDOS utility This will allow you to "log on" to a DOS format disk in drive B: and copy files from it to a +3DOS formatted 3″ disk in drive A:
To read and format disks with formats other than 720kB (the +3multiformatter utility refers to this as 708K) on Windows NT you will need the FDrawcmd driver by simon owen. This will only work correctly on PCs with real floppy controllers. A good utility for writing the images is John Elliot's dsktool. It's possible to read and write 708K +3DOS format dsk images using dsktool on some USB floppy drives that have an SMSC USB97CFDC2 chipset. The Dell FDDM-101 module is known to work.
A guide to connecting a 3″ drive to a PC and reading/writing disks is available from the Spectrum Disk Preservation Project (mirror)
Writing individual files
To write individual files to a +3 formatted diskette (or dsk file) you can use cpcxfs