Reading old floppies

From: Bob Brown <>
Date: Mon Jun 12 08:58:52 2000

Date: Sat, 10 Jun 2000 22:45:21 -0700 (PDT)
From: (Tim Mann)
Subject: Reading old floppies with Catweasel

Here's something that should be of interest to folks who have old TRS-80
disks they'd like to read but are having trouble doing it with modern
hardware. Actually, it could be of interest to folks with disks from obscure
old CP/M systems and the like too.

A small company in Germany makes a specialized PC ISA card that, with
the proper software, allows any kind of floppy disk to be read (and maybe
written, too). The company is called Individual Computers, and the card
is called the Catweasel ISA. There are also Amiga versions. See the
following URLs for information on the card and how to order one:, and

Catweasel cards were in short supply for a while, and I had some trouble
getting a working unit, but I have one now. I've just written a program
for it that can copy any TRS-80 disk (in fact, any disk written by a
WD177x/179x floppy disk controller, or by any PC floppy disk controller)
to the DMK format that's used by David Keil's TRS-80 emulator for MS-DOS
and by my TRS-80 emulator (xtrs) for Unix. The program auto-detects FM
(single density) vs. MFM (double or high density) encoding, even on disks
that have some sectors of each on the same track, like dual-boot Model
I/III disks.

My program (called cw2dmk, at least for now) works both on Linux and on
MS-DOS or Windows 95/98, and I'll be releasing it in source code form
after I've cleaned it up a little more. It's partly based on the Catweasel
driver for Linux (see written
by Michael Krause. His driver works only with MS-DOS and Amiga formats,
and only in double or high density, but it's nice because it lets Linux
treat the disks as having real file systems on them that the kernel
supports. My program only lets you make a disk image that works with
an emulator. The original driver is GPL'ed, so my program will be too.

I've already used the program to copy about 50 single density and "copy
protected" TRS-80 disks that I got from Kim Watt to DMK format, and they
all seem to work on xtrs. Even weird stuff like original TRSDOS 2.x single
density disks with FA data address marks on the directory (which even
PC's that can otherwise handle single density don't seem to be able to
read), and games that do a WD17xx Read Track command and look for specific
data in the gaps as part of their copy protection, were easy to read and
the images work on xtrs. I haven't tried the images on David Keil's emulator
yet, but I don't expect problems -- maybe a few minor ones with games
that do especially strange things with the floppy disk controller. I
did have to fix a couple of minor emulation inaccuracies (well, bugs)
in xtrs to make a couple of the games boot.

8" disks should even work, though I haven't plugged in my 8" drive yet.
I had no problems reading a 5.25" high density (1.2MB) disk, which looks
identical to 8" double density at the controller interface, so I think
true 8" will probably work on the first try.

The program seems to work well already, but there are two things I'd still
like to add: (1) Automatically detecting the type of drive you're using
and guessing the number of tracks (35, 40, or 80) and number of sides
on the media -- right now you have to tell the program this using
command-line options, and (2) Writing the older .DSK (or JV3) format that
Matthew Reed and Jeff Vavasour's TRS-80 emulators require, when the disk
is not so "protected" that it can't be represented in that format. Those
shouldn't be too hard once I get my next burst of energy.

I'm hoping a few other TRS-80 folks will buy Catweasel cards now that this
program is available. I don't get a commission or anything. :-) If
you do (or are thinking about it) and want a copy of cw2dmk before I get
around to putting it up on my Web page, let me know.

Tim Mann
Compaq Computer Corporation, Systems Research Center, Palo Alto, CA
Bob Brown
Saved by grace
Intranet Sysadmin Page:
Received on Mon Jun 12 2000 - 08:58:52 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:33:01 BST