Floppy disks and images
[date: 2013, 2023, ...]
I do my floppy disk imaging in a dedicated machine:
Floppy Controllers
I have tried various floppy controllers in this machine:
- Via VT82C586B: Built into the motherboard. Poor compatibility. Disabled.
- Adaptec 1522: Very good FDC. I currently have the motherboard FDC disabled in favor of this. This passes all of IMD's TESTFDC.COM tests.
- Catweasel MK4: Operates as pass-through, normally, so does not generally make a crappy controller better.
- DTK PII-151B: 8-bit ISA, with optional BIOS. Supports 360k, 720k, 1.2M, 1.44M. This has pretty good compatibility, even supporting 128-byte sectors, but failed to support one common format (TODO I forget which). Worth keeping around, but not as good as the Adaptec 1522.
Use TESTFDC.COM (part of ImageDisk) to determine if your FD controller sucks.
Catweasel
Why does plugging the Catweasel in between the drives and the control cause the A and B drives to be swapped?
TODO Notes on using cw2dmk, and the converting DMK files to IMD files.
Writing raw images
NOTES TO ORGANIZE
I have tried various programs to write raw images to floppies. IMD seems to be the best (most flexible and most reliable).
https://forum.winworldpc.com/discussion/6931/how-to-convert-raw-images-to-imagedisk
Here is now to convert a raw 720k image to IMD format:
BIN2IMD <image.img> <image.imd> DM=5 N=80 SS=512 SM=1-9 /2
Then use IMD to write it to a physical floppy.
Converting Disk Formats
TODO Organize some notes around this formats and how to convert between them:
- ImageDisk (IMD) http://www.classiccmp.org/dunfield/img/index.htm Open source, documented replacement for Teledisk, by Dave Dunfield.
- raw
- DMK
- Teledisk (TD0) http://www.classiccmp.org/dunfield/img63549/teledisk.htm
- Reportedly, openMSX has dsk2dmk.cc. Current 0.9.1 version does not.
- [TRSREAD / TRSWRITE](http://www.trs-80emulators.com/trsread-trswrite/) can read/write files to/from DMK and DSK.
- Tim Mann's dmk2jv3 and jv2dmk
- Great catalog of tools at <a href="http://www.trs-80.com/wordpress/dsk-and-dmk-image-utilities/">trs-80.com</a>.
Troubleshooting
720k image won't mount on Linux
I want to get the actual files off a disk; I don't care about the physical format. I ran IMDU.COM on a 720k ImageDisk file to create a binary image. When trying to mount the raw image on Debian Linux, I got an error:
# mount -t msdos -o loop image.bin /mnt FAT: invalid media value (0xed) VFS: Can't find a valid FAT filesystem on dev loop0.
Used FreeBSD instead:
# mdconfig -f image.bin md0 # mount -t msdos image.bin /mnt
8" Disks
TODO
Hardware
Teac Drive Naming
Teac drive coding (the letter after the number) is fairly specific. Combinations of letters mean that the drive can support both types of media. The numbers before the letter dictate the physical size of the meidum. Letters and numbers after that indicate other features (e.g. right-hand latch lever, locking mechanism, head-load solenoid, bezel color, electronics version, SCSI interface, etc.).
The more common capacity letters are:
- B = 360K (DS2D)
- F = 720K (DS2D)
- G = 1.2MB (DSHD)
- H = 1.44MB (DSHD)
- J = 2.88MB (DSED)
The common size codes run as follows:
- 35,135,235,05 = 3.5"
- 5, 45, 55, 155 = 5.25"
So the bog-standard 360K 1/2 height 360K drive is the FD55B. The usual 1.2MB drive is FD55GF (because it supports both 1.2M and 720K formats). A half-height 5.25" 720K drive is an FD55F. A third-height 720K 3.5" drive is a FD23F; a 3-mode (720, 1.2M, 1.44M) one-third hieght 3.5" drive is an FD235HG. A 2.88MB 3.5" drive is an FD235J.
What you have is 720K (96 tpi, 300 RPM) drive. You can use it by declaring in your BIOS setup that it's a 3.5" 720K drive, but you'll be writing disks that few can read. The 720K format with a 1.2MB floppy is thwarted by the PC BIOS because it double-steps the head to simulate a 360K format (which is why 360K disks formatted or written in a 1.2MB drive often can't be read in a real 360K drive). Further, the PC BIOS expects a 360 RPM drive for the low density mode.