Morrow Designs Micro Decision

Projects and Customisations

Flexfd is a FreeBSD 6.x utility to read and write floppies to/from teledisk images.  It is an active development project constantly undergoing change. 

Currently, flexfd can perform the following functions:
Flexfd can handle most any floppy format, from 90k 8" and 180k 5.25" FM-recorded CP/M diskettes to 3.5" MSDOS and musician synthesizer formats.

NOTE: Floppies must be fixed-format.  That is, they must have a constant sector count, sector size and recording format (i.e. no changes from FM to MFM recording among tracks).  In particular, flexfd cannot accomodate DEC RX02 or other such diskettes that have a first track recorded in FM, with remaining tracks in MFM.

To accomodate the functionality needed to support some of the more esoteric floppy formats (sector numbers starting with zero, side-spanning of tracks, 8-inch drive support, etc.), some enhancements are necessary to the FreeBSD fdc.c kernel floppy driver and associated utility programs such as fdformat(1), fdread(1), fdwrite(1) and fdcontrol(1).  FreeBSD 6.x as of October 2004 includes the basic functionality to make flexfd possible.

Work is currently underway to support the generation of Advanced Compression teledisk images.  This effort is proving to be difficult, as the LZH/LZSS compression algorithm used by teledisk has not been duplicated exactly yet.

Efforts will also be made to port flexfd to the following, however they are low-priority since their kernel floppy drivers will require significant changes.  The biggest problems are accessing sector IDs and formatting tracks from the userland:

The following are yet-to-be-documented projects:
Giving your Morrow MD2 or MD3 the capability of 3.5-inch 720k floppy drives is surprisingly easy.
The Ins and Outs of using teledisk under MSDOS/PCDOS/DRDOS.  Some bugs and problems to watch for, as well as some practical tips for using teledisk effectively.
How to access 8-inch floppy drives using teledisk, anadisk and 22dsk DOS utilities.
YES, this can be done!  Since the FreeBSD 6.x kernel floppy driver was rewritten in the fall of 2004, FreeBSD now has superb capabilities in handling the 8-inch drive beasts.  A bit of tweaking the kernel floppy driver, a little cable magic, and you too can have a FreeBSD system reading your old CP/M disks.
This off-and-on project (mostly off due to time) is a pursuit in providing the Morrow MD3 with hard disk via another project's Z80 IDE expansion circuitry.
One cold and snowy day, I disassembled, reworked and managed to produce a fully documented and compilable MD2 ROM version 1.3 assembler source.
One not-so-cold, but rainy day, I converted an old Sun 411 tape drive case into an external floppy for one of my Morrow MD2s.  This project will describe the conversion of the drive case (you can probably use most any external self-powered case, actually), the cabling and the CP/M regeneration to add such a drive to your own system.