Floppy disk hardware emulator
This article needs additional citations for verification. (August 2011) |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/48/Floppy_hardware_emulator.jpg/320px-Floppy_hardware_emulator.jpg)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/ca/Floppy_hardware_emulator_front.jpg/320px-Floppy_hardware_emulator_front.jpg)
A floppy disk hardware emulator is a device that emulates a mechanical floppy disk drive with a solid state or network storage device plug compatible with the drive it replaces, similar to how solid-state drives replace mechanical hard disk drives.
History
Older models of computers, electronic keyboards and industrial automation often used floppy disk drives for data transfer. Older equipment may be difficult to replace or upgrade because of cost, requirement for continuous availability or unavailable upgrades. Proper operation may require operating system, software and data to be read and written from and to floppies, forcing users maintain floppy drives on supporting systems.[1]
Floppy disks and floppy drives are gradually going out of production,[2][3][4][5][6] and replacement of malfunctioning drives and systems hosting them, is becoming increasingly difficult. Floppy disks themselves are fragile, of may need to be replaced often. An alternative is to use a floppy disk hardware emulator, a device which appears to be a standard floppy drive to the old equipment by interfacing directly to the floppy disk controller, while storing data in another medium such as a USB thumb drive, Secure Digital card, or a shared drive on a computer network. Emulators can also be used as a higher-performance replacement for mechanical floppy disk drives.
Emulation process
A typical floppy disk controller sends an MFM / FM / GCR encoded signal to the drive to write data, and expects a similar signal returned when reading the drive.[7] On a write, a hardware PLL or a software-based filter component undoes the encoding, and stores the sector data as logically written by the host. An inverse mechanism translates the stored data back into an encoded signal when the data is read. Noisy raw data signals could require[citation needed] to be filtered and cleaned up before conversion.
FDC interfaces do not directly address tracks, rather provide "step-in" and "step-out" pulses. Those, and the current sector number virtually rotating under the emulated read/write head, are tracked by the emulator in order to determine which sector is to be accessed.[8][9]
The interface to the floppy drive is very low-level and emulators must maintain the exact timing of floppy disk operations. This may require the emulator to provide buffering, with some strict maximum delay in updating the storage. Permanent storage can be local (stand-alone emulators), or in a remote storage device or data exchange module (memoryless emulators).
Storage format
The floppy disk emulator can provide other systems access to the data on the emulated floppy in a number of ways:
- Direct access to some dedicated disk partitioning (e.g.: a 1.44Mb partition on a USB key)
- Floppy file system translation (e.g.: FAT12 floppy ↔ USB key folder)
- ISO floppy disk images (e.g.: raw floppy ↔ .iso USB key file)
Direct access and ISO image implementations can also emulate system / non-standard floppies, whose file system can't be simply translated.
ISO image implementation can also be coupled with a virtual drive to seamlessly emulate floppy drives on a computer.
Some devices can store multiple floppy images, and provide a mechanism to select which emulated floppy is mounted on the emulated drive.
References
- ^ Don't be too quick to dump the floppy
- ^ PC World says farewell to floppy
- ^ R.I.P. Floppy Disk
- ^ 3.5-inch floppy still available from Verbatim, Imation (3M), and Maxell
- ^ Tribute to Floppy Disk as Sony discontinues production
- ^ Drives are no longer manufactured
- ^ Magnetic recording fundamentals
- ^ Floppy user guide
- ^ Floppy drives PC guide