Morrow Designs Micro Decision
Projects and Customisations
- flexfd -- A UNIX (Specifically
FreeBSD 5.x) utility for reading and writing floppies to and from raw and teledisk
Flexfd is a FreeBSD 6.x utility to
read and write floppies to/from teledisk
images. It is an active development project constantly undergoing
Currently, flexfd can perform
the following functions:
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.
- Create a (standard compression) teledisk
image from a floppy or raw floppy image.
- Create a floppy from a teledisk
- Convert between Advanced
Compression teledisk image and Standard
- Convert between diskimage(IMD) image and floppy or teledisk(TD0).
- Create a raw disk file from a teledisk
- Automatically scan a floppy for sector size, sector count, number
of tracks, number of sides, recording method (FM or MFM), Interleave,
spanning (Osborne, etc), starting sector number (0 for Osborne, 1 for
most others), etc.
- On-the-fly formatting of diskettes being written.
- Config-file-driven floppy image parameter definitions.
- Verification of teledisk
- Duplicate floppies.
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:
- linux 2.6+
- NetBSD 2.0+
- OpenBSD 3.5+
following are yet-to-be-documented projects:
a 3.5-inch 720k floppy to your Morrow Rev. 2 MD2 or MD3 microcomputer.
your Morrow MD2 or MD3 the capability of 3.5-inch 720k floppy drives is
TELEDISK 2.15 for
archiving and recreating floppies.
Ins and Outs of using teledisk
Some bugs and problems to watch for, as well as some practical tips for
using teledisk effectively.
in interfacing and reading 8-inch diskettes on a PC Compatible running DOS.
access 8-inch floppy drives using teledisk,
anadisk and 22dsk DOS utilities.
and accessing 8-inch diskettes on a PC Compatible running FreeBSD 6.x.
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.
an IDE disk to an MD2
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
of the MD2 ROM Version 1.3
cold and snowy day, I disassembled, reworked and managed to produce a
fully documented and compilable MD2 ROM version 1.3 assembler source.
an External Floppy Drive to a Revision 1 MD2
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.