TRS-80 Diskette to DMK Conversion

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.

Inside a PC:

Attached to a PC via USB (“Flux Readers”):

Inside a TRS-80:

I am not a fan of Flux readers for rescuing old disks. If you just want to read and write disks for a TRS-80 you have right now, then they are a perfectly fine solution. But for archiving a disk of unknown quality, I strongly recommend against them.

Please understand, I have read tens of thousands of disks as of this point. 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.

And this is where current Flux Readers fail in my opinion. The hardware is fine. No question about that. But the issue is in the software.

If you are going to try to maximize your first (and possibly only) read, you need to have on-the-fly CRC checking. If a track CRC tests good, then move on (no need to keep reading the same track, which will add wear). If the track CRC tests bad, then re-read the track while you can … and keep rereading until you get a good read, or you know you won’t.

Having that level of control on the initial read makes it infintely more likely to get a good read. Current Flux Reader software does not do this.

I have read some tracks 120 times to get a good read, all by being in control. If you were to say “flux reader software can be set to read multiple times”, I would say, that’s fine – but you could have nothing but bad tracks, and a 50GB disk image as a result.

So if your only choice is a Flux Reader, then go for it, but if the disks are valuable or in bad shape, I would recommend against it.

Also, even if you get a good read, you are now stuck with SCP, HFE, or other formats that are not emulator friendly. The current champion to convert out of those formats is HxCFloppyEmulator software, but as of this writing it has bugs in its DMK conversion routine, and the DSK format cannot handle special formats or copy protected disks.

Currently, only the Catweasel is free of such issues as it has software which will read and write directly to and from DMK but it is not currently in production:

Utility Name
Platform
Last Updated
Author
Home Page
Catweasel Utilities v4.10.1
March 17, 2024
Quentin Barnes

Utilizes special hardware called a Catweasel card to read all formats of TRS-80 disks on a PC. Also includes a utility of general use for converting DMK format disks to DSK format.


Modern Day Solutions – AppleSauce

What Is It:

The Applesauce Floppy Drive Controller is a stand-alone box which acts as a middleman in reading TRS-80 disks. It can read hard sectored disks as well as Apple II, Apple III, Apple Lisa, Apple Macintosh, Atari 8-Bit, Atari ST, Commodore 1541, Commodore Amiga, Heathkit/Zenith, IBM PC, North Star, TI-99/4, and Victor 9000.


Hardware:

Front

Back

On the hardware side, there are 3 drive connections on the unit: a 20-pin Apple Disk II-compatible, a DB-19 for Apple compatible 5.25″ and 3.5″ drives, and a Shugart-compatible 34-pin port for 5.25″ and 3.5″ PC drives. At the other end is a USB A connector for plugging into your computer. All of the popular drives used for imaging should be good to go: TEAC FD-55B (5.25 360K), TEAD FD-55GFR (5.25 1.2M), Panasonic JU-475 (5.25 1.2M), Sony MPF920 (3.5 1.44M), etc. Applesauce will test the drive jumper settings when you set up a profile for your drive.

The Applesauce unit provides +12V, +5V, and -12V power for the floppy drive so that no separate power supply is needed and it watches the power consumption of the drive (checks 20,000 times per second) to detect electrical shorts or other unusual conditions and can shut off the power to the drive within milliseconds in order to minimize damage to your equipment.


Software:

On the software side, the Applesauce Client Software controls the Applesauce hardware and is also a standalone disk image analysis/repair/conversion tool. The software currently only supports macOS 10.11 or better. Runs natively on 64-bit Intel and M1 Macintosh computers. You can download v1.71 of the software here or from the Applesauce Software Download Page.

One of the things the client can do is convert between disk formats, such as A2R, KryoFlux, SCP, DiscFerret, etc to DMK. The HxC conversion program does NOT do this reliably, so this software would be recommended even if you do not own the Applesauce hardware.


What if I have a PC?

You can run the Applesauce Client Software in VMWare once you have run VMware Unlocker; a program which patches VMWare to permit the installation of Mac operating systems.

Steps:

  1. Buy, Download, and/or Install
    • VMWare
    • VMwareUnlocker v3.0.4 or later. I’m not including links because they will likely be bad.
    • An ISO of macOS v10.12. I’m not including links because they will likely be bad.
    • VMWare Tools DARWIN. I’m not including links because they will likely be bad.
  2. Run VMWare
  3. Choose FILE -> New Virtual Machine
  4. Choose CUSTOM (advanced) and click NEXT
  5. Choose Workstation 16.2.x (or whatever you are offered) and click NEXT
  6. Choose “I WILL INSTALL THE OPERATING SYSTEM LATER” and click NEXT
  7. Choose the newly added “APPLE MC OS X” and then macOS 11 in the pulldown. Then click NEXT
  8. Verify you are happy with the name and file location and click NEXT
  9. Choose 1 processor and 4 cores per processor and click NEXT
  10. Select a memory size (not less than 4GB) and click NEXT
  11. Select USE NETWORK ADDRSS TRANSLATION and click NEXT
  12. Select LSI LOGIC and click NEXT
  13. Select SATA and click NEXT
  14. Click CREATE A NEW VIRTUAL DISK and click NEXT
  15. Choose 80GB and STORE VIRTUAL DISK AS A SINGLE FILE and click NEXT
  16. Verify you are happy with the name and click NEXT
  17. Click on CUSTOMIZE HARDWARE
  18. Click on PROCESSORS on the left and some check boxes will appear on the right. Click all 3 check boxes
  19. Click on NEW CD/DVD on the left and USE ISO IMAGE FILE on the right. Select the macOS 10.12 image you downloaded.
  20. Click CLOSE
  21. Click FINISH
  22. Right click on mac OS in the library and choose OPEN VM DIRECTORY
  23. Open the macos 11.vmx file in a text editor
  24. Add the following and save the file:
    smbios.reflectHost = “TRUE”
    hw.model = “MacBookPro14,3”
    board-id = “Mac-551B86E5744E2388”
    smc.version = “0”
  25. Click POWER ON THIS VIRTUAL MACHINE
  26. After you answer a few questions you will be told you don’t have enough space
  27. Go to UTILITIES -> DISK UTILITY
  28. Select the VMWare Drive and click ERASE and then click ENTER. When that’s done, exit the Disk Utility and you will now see an available hard drive. Pick that drive.
  29. When its down installing, choose all your options, and then shut down.
  30. Mount the DARWIN.ISO into the drive.
  31. Start the VM again.
  32. Run DARWIN
  33. Start the VM again.

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.


Command line

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


More information:


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.

Utility Name
Platform
Last Updated
Author
Home Page
David Keil’s Emulators
DOS
1998
David M Keil
N/A

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.


Matthew Reed’s DOS Emulators
DOS
2004
David M Keil

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.


TRS-80
Jan 5, 1999
Timothy Purves

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.


DOS
Mar 20, 1990
Powersoft


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.

4 thoughts to “TRS-80 Diskette to DMK Conversion”

  1. 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 🙂

  2. 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?

  3. 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?

  4. 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

Leave a Reply

Your email address will not be published. Required fields are marked *