TRS-80 Virtual Floppy Disk Manager

Overview

Many TRS-80 floppy disks have been preserved until these days through imaging processes. Imaging consists of a PC file with a special format containing all the data captured from a real disk. Such virtual floppy disks can be used with TRS-80 emulators to recreate faithful experiences of 25-year-old computer systems.

In the early 2009 I started working on a Windows program which allows the easy handling of TRS-80 floppy images at the file level. The code is in development stage but it is already capable of reading many different operating systems and archiving formats.

How would this be useful? Back in the 1980's, there was a number of operating systems available to the user's choice. Most of them store files in ways that are incompatible with one another and, in some cases, incompatible even between succeeding versions of the same operating system. Moving files among such disks isn't that easy. In addition, there are cases of people who preserved documents of personal value in these systems and which would have great interest in recovering them.

Features

Here is a brief list of the TRS-80 Virtual Floppy Disk Manager features:

  • Imports and exports TRS-80 files from/to the Windows file system
  • Supports image files archived in the formats JV1, JV3 and DMK
  • Supports several TRS-80 operating systems (check the support matrix below)
  • Graphical User Interface (GUI) and Command-Line Interface (CLI) available
  • Windows XP/Vista/7 compatible, no installation required

Screenshots

Interface selection Menu options
Export dialog Disk properties
Sector viewer About

"Technicalities"

I started this project because I have been missing the thrill of the old days. I think this explains the odd design choices I've made, like writing the software in assembly language, adopting an object-oriented approach and trying to address some quite unusual problem like reading very old computer disks. My first idea was to deal with real TRS-80 floppies, but then Ira Goldklang convinced me that a software to handle those disk images already lying around would be of more value.

This code is built as a series of modules (or "classes" in object-oriented jargon), making their future extension or replacement easier. There are two main groups of such modules which share the same features: one does the Operating System Interface and the other does the Virtual Disk Interface. The latter is responsible for understanding the image file archiving format and presenting the data as standard sectors to the upper layer. The former understands how each operating system stores files in a disk and assembles their pieces together when requested by the upmost layer, the User Interface.

The picture below ilustrates the relationship between the specialized modules and the interfaces:

Blueprint

The user interface is still rudimentary, as I have been prioritizing the development of the core routines, but the final work should be very user friendly. It will be possible to exchange files between disks by just dragging and dropping them from one window to another; It is possible to open ".dsk" and ".dmk" images by just double-clicking over them. In addition, support for more and more OSes will be added as new versions are released.

Support Matrix

The following table lists every known TRS-80 Model I/III/4 operating system and also identifies whether or not the latest program version is able to handle them:

System Vendor Operating System Version Supported
Model I Lifeboat Associates CP/M 1.41 No
Model I FMG CP/M 1.5 No
Model I TPM CP/M 2.1 No
Model I Percom Data Co. Inc. DBLDOS 4.2 No
Model I Percom Data Co. Inc. DBLDOS 4.23 No
Model I Percom Data Co. Inc. DBLDOS 4.24 No
Model I Micro-Systems Software Inc. DOSPLUS 3.1 Yes
Model I Micro-Systems Software Inc. DOSPLUS 3.2.1 Yes
Model I Micro-Systems Software Inc. DOSPLUS 3.3 Yes
Model I Micro-Systems Software Inc. DOSPLUS 3.4 Yes
Model I Micro-Systems Software Inc. DOSPLUS 3.50 Yes
Model I Misosys, Inc. LDOS 5.3.1 Yes
Model I Percom Data Co. Inc. MICRODOS 1.12 Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.0 Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.4D Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.4S Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.5D Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.5P No
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.5S Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.5SK Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.6D Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.6S Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.7D Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS 1.7P No
Model I Cosmopolitan Elec. Corp. MULTIDOS 4.01 Yes
Model I Cosmopolitan Elec. Corp. MULTIDOS II 1.0 Yes
Model I Apparat, Inc. NEWDOS 2.1 Yes
Model I Apparat, Inc. NEWDOS 2.2 Yes
Model I Apparat, Inc. NEWDOS 3.0 Yes
Model I Apparat, Inc. NEWDOS/80 1.0 Yes
Model I Apparat, Inc. NEWDOS/80 2.0 Yes
Model I Apparat, Inc. NEWDOS/80 2.5 Yes
Model I Tandy Corp. TRSDOS 2.0 Yes
Model I Tandy Corp. TRSDOS 2.1 Yes
Model I Tandy Corp. TRSDOS 2.1C Yes
Model I Tandy Corp. TRSDOS 2.2 Yes
Model I Tandy Corp. TRSDOS 2.3 Yes
Model I Tandy Corp. TRSDOS 2.7 Yes
Model I Tandy Corp. TRSDOS 2.8 Yes
Model I Tandy Corp. TRSDOS 3.0 Yes
Model I Level IV Products, Inc. ULTRADOS 4.2 Yes
Model I Randolph Cook VTOS 3.0 Yes
Model I Randolph Cook VTOS 4.0 Yes
Model I Randolph Cook VTOS 4.0.2 Yes
Model III Prologica DOS500 1.3 Yes
Model III Micro-Systems Software Inc. DOSPLUS 3.3 Yes
Model III Micro-Systems Software Inc. DOSPLUS 3.4 Yes
Model III Micro-Systems Software Inc. DOSPLUS 3.50 Yes
Model III Logical Systems, Inc. LDOS 5.1.0 Yes
Model III Logical Systems, Inc. LDOS 5.1.3 Yes
Model III Logical Systems, Inc. LDOS 5.1.4 Yes
Model III Misosys, Inc. LDOS 5.3.0 Yes
Model III Misosys, Inc. LDOS 5.3.1 Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 1.2 Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 1.3 Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 1.6 Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 1.6d Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 1.7 Yes
Model III Cosmopolitan Elec. Corp. MULTIDOS 4.01 Yes
Model III Apparat, Inc. NEWDOS/80 2.0 Yes
Model III Apparat, Inc. NEWDOS/80 2.5 Yes
Model III Apparat, Inc. NEWDOS/80 3.0 Yes
Model III Apparat, Inc. NEWDOS/86 2.0 Yes
Model III Apparat, Inc. NEWDOS/90 2.0 Yes
Model III Percom Data Co. Inc. OS/80 III 2.02 No
Model III Percom Data Co. Inc. OS/80 III 2.10 No
Model III Rapidynamic Software, Inc. RAPIDOS 1.3 Yes
Model III Tandy Corp. TRSDOS 1.03.03 Yes
Model III Tandy Corp. TRSDOS 1.1 Yes
Model III Tandy Corp. TRSDOS 1.2 Yes
Model III Tandy Corp. TRSDOS 1.3 Yes
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 1.32 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 1.42 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 1.44 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 2.20 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 2.21 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 2.22 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 2.31 No
Model 4 Digital Research, Inc. / Montezuma Micro CP/M 2.2 2.32 No
Model 4 Tandy Corp. CP/M Plus 1.0 No
Model 4 Micro-Systems Software Inc. DOSPLUS IV 1.0 Yes
Model 4 Misosys, Inc. LS-DOS 6.3.1 Yes
Model 4 Cosmopolitan Elec. Corp. MULTIDOS 1.71 Yes
Model 4 Cosmopolitan Elec. Corp. MULTIDOS 2.10 Yes
Model 4 V. B. Hester MULTIDOS 5.11 Yes
Model 4 Apparat, Inc. NEWDOS/80 2.0 Yes
Model 4 Rapidynamic Software, Inc. RAPIDOS 1.3 Yes
Model 4 Rapidynamic Software, Inc. RAPIDOS 1.5 Yes
Model 4 Rapidynamic Software, Inc. RAPIDOS 2.0 Yes
Model 4 Logical Systems, Inc. TRSDOS 6.1.2 Yes
Model 4 Logical Systems, Inc. TRSDOS 6.2.0 Yes
Model 4 Logical Systems, Inc. TRSDOS 6.2.1 Yes

Downloads

This software is provided "AS IS", free of charge, with no warranties of any kind.  If you accept these terms, go ahead and download it! Your feedback would be also much appreciated.

There are two interfaces under development for the same core: the graphical user interface (GUI) and the command-line interface (CLI). They aren't updated with the same frequency, so choose the one that suits you best. I suggest that you always get the latest version, as several bugs are being found and fixed at this stage.

Go to the downloads page.