Converting TRS-80 Disks to Virtual (and Back Again if you need it)
The Problem:
Modern hardware and operating systems are making it more difficult to convert actual TRS-80 disks into an emulator (DMK or DSK) format.
Some of the obstacles are:
- No ability to read single density disks whatsoever
- Current operating systems do not allow for direct hardware addressing
- No 5.25″ drive support in the BIOS
- Degrading media (See Warning below)
Different Methods:
There are a number of different methods you can try, all of which are covered on this page:
Send them to me:
Disks which are 35+ year old may have no more than 1 good read on them. If the disks were exposed to any level of humidity over the past 35+ years, odds are that the mylar will separate on the first read. While I cannot guarantee results, I can guarantee that if you try to read them first, I won’t be able to. Please see this FAQ.
WARNING!!!!


Click to Enlarge
Before putting a disk in your drive, make sure to inspect it. Improperly stored disks will degrade, and will shred in your drive. Inserting one of these disks in your drive will not only produce a disheartening noise, but will likely coat your read/write head with oxide, requiring you to clean the heads. Here are some pictures I took of some of these improperly stored or otherwise decayed disks.
Modern Day Solutions:
There are a number of third party products which can be used, to varying degrees of success, to read and TRS-80 disks.
Attached to a PC via USB (“Flux Readers”):
Inside a TRS-80:
- FreHD Controller installed in a real TRS-80. This will use the TRS-80 to treat images on a SD card as a virtual drive which can be backed up onto a real TRS-80 drive.
- Gotek/Lotharek installed in a real TRS-80. This will also use the TRS-80 to treat images on a SD card as a virtual drive which can be backed up onto a real TRS-80 drive. You will need apppropriate firmware:
- FlashFloppy Firmware – Free and Open Source: https://github.com/keirf/FlashFloppy/wiki.
- HxCDrive Emulator Firmware – Can be found http://hxc2001.com/download/floppy_drive_emulator/index.html.
Modern Day Solutions – GreaseWeazel
Main Information
A description as to the different GreaseWeazel models can be found at https://github.com/keirf/Greaseweazle/wiki/Greaseweazle-Models.
The current software can be found at https://github.com/keirf/Greaseweazle/wiki/Download-Host-Tools.
The issue …
The TRS-80 Model 1/3/4 have a very wide variety of disk formats, some by force, some by choice. Disks can be any number of tracks, either single density, double density, or mixed density, and that’s without special disk formats such as copy protection, dual booting disks, or other tricky formats. This means that unless you wrote the disk, you may not be in a position to specify up front what format each track might be in, etc.
Also, I have seen which disk makes are inherently bad (Wabash and CDC top that list), which parts of the world have disks the least likely to be readable (Brazil on top), and all kinds of errors and issues (spikes/erased tracks due to opening the TRS-80 disk drive at the wrong time, extraneous data due to not bulk erasing disks, etc.)
With all this experience, I would say that there is one rule above all else in reading old disks … You May Only Get One Read. Poorly made or stored disks are very likely to shred on their first read – the oxide is no longer fully bonded and the pressure of the disk head (and any dirt on that head) will tear up the oxide. If you want to get a good read on a diskette, your first read needs to be spot on.
SO … any solution to read TRS-80 disks must be one which does NOT require you to specify the geometry on a command line and one which also determines, on the fly, if a sector is bad, and does whatever it can to get a good read of that sector, without requiring you to stop and start again.
The GreaseWeazel software, as currently written, does neither of these things.
FORTUNATELY, Quentin Barnes has built upon the groundwork laid by Tim Mann on the Catweasel software, and has developed Greaseweazel software which can use a GreaseWeazel as if it was a CatWeasel; on the fly geometry determination and identification of CRC errors.
You can download it from Quentin’s GITHUB at
https://github.com/qbarnes/gw2dmk/releases/tag/v0.0.1.beta.1 or all compiled in one zip here.
The command line may be a bit daunting. It was set up to match the command line of the CatWeasel. For my reads, I use a batch file which contains the following:
gw2dmk.exe -d a -G COM3 -k1 -Mi -x90 -v72 %1.dmk
This tells the GreaseWeazel to:
-d a – Use Drive A
-G COM3 – My GreaseWeasel is currently on COM3
-k1 – I am using a 1.2MB drive
-Mi – I want to be able to hit BREAK and get into a menu where I can modify my retry count
-x90 – I want 90 retries per track
-v72 – I want as much output information as is possible
%1.dmk – %1 is where the filename would fill in from my calling the batch file with the filename as a parameter
BUT … if you really want to use the GreaseWeazel software …
A generic command line to write a 40 track double-density disk in an 80 track drive would be:
gw write --drive=a --tracks=c=0-39:h=0:step=2 --format=raw.250 filename.hfe
OR there is a rumor that the -dd function might also be of assistance and that specifying a track count is not necessary
gw write --drive=a --tracks=step=2 --dd=L filename.hfe
A generic command line to write a 40 track double-density disk in an 80 track drive would be:
gw read filename.hfe --drive=a --tracks=c=0-39:h=0:step=2 --format=raw.250 --adjust-speed=300rpm filename.hfe
OR
gw read --drive=a --tracks=c=0-39:h=0:step=2 --filename.hfe::bitrate=300
Scripts
Pete Cervasio has provided two BASH scripts to make using the GreaseWeazel a bit easier. Symlinks must be set per the instructions in the files
Ancient PC:
Reading single-density disks (which is what the Model I used; noting that even double density disks tended to have a single density track 0) is MUCH more complicated. “Modern” computers do not have the crystal needed to generate a single density clock, so they simply cannot read single density. Even those that can will have trouble with TRSDOS 2.x (DAM problem) or NEWDOS/80 v1.x (DAM problem) or NEWDOS/80 v2.0 (Inner Track Problem).
To use a really old PC, you need to be operating in either pure MSDOS or Windows ’98 and earlier as those are the only operating systems that allow you to access the hardware directly. If you are going the Windows ’98 or earlier route, you should set your system to boot straight into DOS instead of going into the GUI. To do this click START -> SHUTDOWN -> SHUTDOWN IN MSDOS. Then once in DOS type CD \ to get to the root directory. Then enter attrib msdos.sys -r -a -s -h. Then enter edit msdos.sys. Then find where it says BOOTGUI=1 and change 1 to 0. Once you do that, the next reboot should go straight to MSDOS.
Once you are set with a PC that boots straight to DOS, the next thing you should do is run Dave Dunfield’s PCTest Utility which will check your floppy drive controller to see how well it will read and write single density and double density disks. You can download that utility here.
- The Adaptec 1522 SCSI controller (ISA, non-bus-mastering, NS8473 Controller) can read/write/format FM (Single Density) floppies, including LDOS-format SD floppies. TRSDOS2.3 directory tracks CANNOT be handled on these because of the DAM.
- It is possible that the Adaptec 1542 SCSI controller (ISA, bus-mastering, NS8473 Controller)
- The Acculogic ISApport SCSI adapters (SMC FDC37C65) will read 360K Double Density but will not read single density on a 1.2MB HD drive.
If you have a PC (with a 5.25″ drive, of course), booting into pure DOS, that can read/write single and double density, then you would use the following programs and/or utilities:
Reading/Writing TRS-80 Disk Media on a PC
If you have a 5.25″ drive hooked up to your IBM PC, the following programs can be used to read TRS-80 disks into the DMK/DSK format. If you want to read Model 1/3/4 disks and have a Catweasel card, use Tim Mann’s CW2DMK utility. If you want to read Model 1/3/4 disks and do not have a Catweasel card, use Matt Read’s READDISK utility. If you want to read COCO disks, use Jeff Vavasour’s RETRIEVE utility.
David Keil’s emulators permit mounting a physical drive attached to a PC as a virtual disk drive inside the emulator. The floppy disk selection screen can be accessed inside the emulator by pressing the F9 key. Once on that screen, for example, if you wanted to backup a TRSDOS image in virtual drive :0 onto a real disk mounted in the PC Drive A: you would simply configure virtual drive :1 inside the emulator to be A:. Going this route has the virtual TRS-80 making the images, so any limitations of the TRS-80 in terms of backing up a disk would apply to this scenario.
David’s Model I emulator can be downloaded here, David’s Model III/4 emulator can be downloaded here.
Similar to David Keil’s emulators, Matthew Reed’s DOS emulators permit mounting a physical drive attached to a PC as a virtual disk drive inside the emulator. The floppy disk selection screen can be accessed inside the emulator by pressing the F8 key. Once on that screen, for example, if you wanted to backup a TRSDOS image in virtual drive :0 onto a real disk mounted in the PC Drive A: you would simply configure virtual drive :1 inside the emulator to be A:. Going this route has the virtual TRS-80 making the images, so any limitations of the TRS-80 in terms of backing up a disk would apply to this scenario.
Matthew’s Model I/III emulator can be downloaded here, Matthew’s Model 4 emulator can be downloaded here. Note: Matthew’s emulators do NOT come with the ROMs, which need to be downloaded elsewhere.
Transfer runs on a TRS-80 and will read/write to IBM PC Formatted 5.25″ disks.
The TRS-80 Model 4 Emulator’s virtual disk utilities have been provided free for download in order to allow you to determine whether your PC has the features necessary to read and write TRS-80 floppies directly. The emulator can either access your TRS-80 floppies directly in its floppy drive, or as images copied to your hard drive. Either way, you need to be able to determine whether the PC hardware can read the floppies.
Reading, writing, editing and formatting TRS-80 disks on a PC.
Standalone utility to transfer files from a COCO Diskette to a .DSK image.
READDISK transfers files from a TRS-80 Diskette to an IBM .DSK file without special equipment. This version can also read Tandy 1000 disks.
Please note that not all PC disk controllers are capable of reading TRS-80 disks. This is a limitation of the disk controller, not READDISK. If you have trouble, try running READDISK on other PC’s until you find one that can read your disks. Remember, you only need to read your TRS-80 disks once to convert them to disk images, so be sure to use the “Retry” command heavily.
I recently used spark plug cleaner to clean disks in bad condition and was able to read data from them after a little spray straight on to the platter ! as a last resort I was amazed it worked 🙂
I have a couple of 5 1/4 floppy disks that have our Christmas letters from 1982 & 1983 on them. I would like to get this data recovered. Any idea where I can go to get this done?
I have a TRS-80 Color Computer 3 and an original color computer disk drive, and I got my cassette programs onto disk on my own. However, I have no clue how to get my programs from the floppy disks into a virtual format that I could preserve on modern equipment, and I really wish I could do that. I do have a late 1980s/early 90s DOS/Windows 3.1 PC with a 5 1/4 floppy and a 3.5 floppy, and a late 1990s PC with a 3.5 floppy and a CD-R/W, and a couple of newer machines. But the PC could not read the TRS-80 disks, which I imagine is a problem of format but I am not up on these things. My programs are all basic and I saved them in ASCII format, but I’m guessing the problem is deeper than that. If you have the know-how and the equipment, I’d be happy to pay for a conversion of my disk (I have one disk to convert, at most I may have a second one but as of now I just have one). Thoughts?
Hello I have hundreds of 5 1/4 Double Density floppies formatted for MS DOS. I would like to have these converted to a contemporary media, is it possible? It’s for an archive project for a writer.
Thank you