Floppy Disk Notes
What follows is a set of links that I've collected over the past year that give technical information on how to encode/decode floppy disks signals, as well as the theory of operation behind this dying medium.
I find reading these documents important for preservation purposes, especially since computer programmers of the past relied on these engineering details for copy protection purposes.
Additionally, a deep understanding of internals may one day help to recover data that is thought to be lost using statistical analysis of the read signal.
Links are ordered relatively in the order I read them/I recommend reading them, and sections tend to build upon each other.
- The Floppy User Guide
- A good technical overall technical description of how a floppy drive accesses data.
- SA800/801 Diskette Storage Drive Theory of Operations
- Without question, the most important document on this list. If you read any document, read this. It's not quite enough information to build a floppy drive from scratch, but it's enough to bring someone interested up to speed. Hard to believe this document is 40 years old in 2016!
- SA850/SA450 Read Channel Analysis Internal Memo
- Includes a floppy drive transfer function based on experiments Shugart did in the late 70's.
Phase-Locked Loop (PLLs)
- Phaselock Techniques, Floyd M. Gardner
- A monograph on analog PLLs. Does not discuss All-Digital PLLs (ADPLLs).
- NXP Phase Locked Loops Design Fundamentals Application Note
- A quick reference for analog PLL design.
- Floppy Disk Data Separator Design Guide for the DP8473
- To be written.
- Encoding/Decoding Techniques Double Floppy Disc Capacity
- Gives background on more complicated physical phenomenon associated with floppy drive recording, such as magnetic domain shifting.
- Floppy Data Extractor
- A schematic for a minimum component data separator that does not require a PLL, but uses a digital equivalent. Perhaps a simple ADPLL?
- IBM's Patent for (1,8)/(2,7) RLL
- I'm not aware of any floppy formats that use (2,7) RLL, but hard drives that descend from MFM floppy drive encodings do use RLL. RLL decoding is far more involved than FM/MFM.
TODO when I have time to examine non-IBM formats.
IBM 3740 (FM, Single Density)
TODO. Described in Shugart's Theory of Operations manual.
IBM System 34 (MFM, Double Density)
TODO. Described in various documents on this page, but I've not yet found a document dedicated to explaining the format.
Floppy Disk Controller ICs
- 765 Datasheet
- The FDC used in IBM PCs. It is not capable of writing raw data at the level of the IBM track formats. Thus, attempting to write copy-protected floppies is likely to fail with this controller.
- 765 Application Note
- NEC created an application note to discuss how to integrate the 765 into a new system, either using DMA or polling on receipt of interrupts.
- TMS279X Datasheet
- Includes a diagram of the IBM System 34 track format.
- DP8473 Datasheet
- A successor to the 765 that is capable of handing formats such as 1.2MB High Density (HD) disks.
- Design Guide for DP8473 in a PC-AT
Floppy Disk Controller Cards
- IBM PC FDC Card (765)
- Includes schematics. The PLL circuit on the last page is in particular worth analyzing.