
Main Screen-NEWDOS/80

Disassembly View-LCOMM/CMD

DMK Analysis

DMK Granule Map

DMK Sector Map
Announcing TRSToolGui, a Windows program for working with TRS-80 disk and tape images. It is meant as a replacement for Matthew Reed's much-missed TRSTools, built on top of Lawrence Kesteloot's trs80-tool.
TRSToolGui is by Ira Goldklang and Claude AI Fable v5.2. I developed it using Claude, Anthropic's AI. Claude wrote the code, working from my direction, my testing and my research notes on TRS-80 disks, DOSes and assemblers.
Thank You, Lawrence
First, a big thank you to Lawrence Kesteloot. trs80-tool does the real work here. It reads the disks, lists and extracts files, adds, deletes and renames them, converts formats, repairs, assembles, disassembles, and runs the emulator.
To be clear: TRSToolGui is about 90% a graphical front end over Lawrence's work. Every change to a disk image is made by trs80-tool. The GUI decides which command to run, runs it, and shows the result. If you like what TRSToolGui does, most of the credit is Lawrence's.
Thanks also to the late Matthew Reed, whose TRSTools set the standard for how this should look and feel. TRSToolGui copies TRSTools' workflow, and in two places, the hi-res graphics viewer and the NEWDOS/80 PDRIVE calculation, it uses the same method TRSTools used. It contains none of TRSTools' code.
What It Does (Summary)
- Opens JV1, JV3, DMK, DSK, HDV (with partitions), SCP, HFE, IMD, CAS and WAV images: every format and DOS that trs80-tool reads.
- Shows the files in a TRSTools-style list (name, type, size, date, attributes, kind, damage), with sorting, invisible/system file toggles and a list of recent images.
- Adds files by dialog, paste or drag-and-drop from Explorer, and extracts them by dialog, copy or drag-out to Explorer. Files can also be deleted and renamed.
- Edits file properties (invisible, system, protection level, date, passwords) and disk properties (name, date, master password, write-protect).
- Creates new floppy images (JV1/JV3/DMK; TRSDOS 2.3, TRSDOS 1.3, LDOS 5.3, TRSDOS 6.2, LS-DOS 6.3), bootable or data-only.
- Includes a file viewer that picks the right view for each file: graphics, EDTASM, BASIC, disassembly, text or hex.
- Gives a GUI to the trs80-tool features TRSTools never had: sector map, granule map, check & repair, format, trim, convert to other image formats, boot in the emulator, the trs80-tool shell, file conversion, the Z80 assembler, hex dump and disassembly of Windows files.
- Has a built-in manual (F1).
New and Augmented Functionality
Almost all functionality is simply what Lawrence has developed and put into TRS80Tools. However, there are a few functions that Ira uses that are not quite implemented in TRSTools yet, and that additional functionality has been added to this program:
Assembler source detection
When you view an assembler source file, TRSToolGui works out:
- The layout: EDTASM A/B, TRS-80 text, ASCII text, or M-ZAL TED binary (TED files are shown as numbered lines).
- The line count.
- Any old text left past the end of the file by an earlier, longer version. This "slack" is cut off rather than shown as part of the source.
- Which assembler most likely wrote it: EDAS 3.5/IV/4.3, MISOSYS MRAS, EDTASM-PLUS, Macro-80, M-ZAL, Zeus, ZEN or Tandy ALDS, with plain Series I/Radio Shack EDTASM as the baseline. It also gives the earliest release that has the features the source uses, and the clues that decided it.
- When the evidence doesn't settle it, it says so ("EDTASM vocabulary only", or "fits X and Y equally") rather than guessing.
BASIC detection, including Model 4
The viewer recognises tokenized BASIC from the bytes themselves, by following the program's chain of line links. This doesn't depend on the file name or the DOS. The title bar names what it found:
- ASCII (a plain-text program with ascending line numbers);
- Model I/III tokenized;
- Model 4 tokenized. This is recognised by Model 4's FF-prefixed function tokens and binary number constants, outside strings and REMs, so it also works for Model 4 programs that load at higher addresses.
You can still force Model I/III or Model 4 tokens by hand.
Enhanced NEWDOS/80 PDRIVE
TRS80-TOOL shows PDRIVE only for some disks, and without TI and TSR. TRSToolGui reads the PDRIVE table straight from the disk and shows the full PDRIVE line, TI and TSR included, the way TRSTools did. For a blank sector 2 it falls back to cylinder 1, as TRSTools did.
DOS identification from the bytes
For DMK images, Disk properties shows a "From the bytes:" line: the DOS, model and version, worked out from the boot sector and the directory that FORMAT wrote. The rules come from a study of 123 disks freshly formatted under 72 DOS builds. When the boot sector and the directory disagree (one DOS's SYSTEM installed on a disk another DOS formatted), it reports both. If neither is recognised, it says so.
DMK analysis (Ctrl+D)
A read-only report on a DMK image:
- geometry per track;
- sector ID and data CRCs;
- formatter fill bytes;
- signs of copy protection and special formats;
- real damage told apart from imaging artifacts;
- tail tracks.
It includes a per-track table and a text report you can copy or save.
Sector map
A clickable grid of every track and sector, using trs80-tool's legend. Click a sector to see its header and a hex dump. A list shows every bad sector (missing or CRC error) and which files use it.
Hi-res graphics viewer
HR, CHR and SHR screen pictures (Model III and Model 4) are decoded and shown, as TRSTools did.
TRSTools-style safety and convenience
- Names are checked against the DOS's rules before adding, with an offer to rename.
- Before a file is replaced, both versions are shown.
- Free space is checked before adding.
- Text can be converted (CR to CR/LF or LF, and back) on the way in and out.
- Windows file dates can be recorded on added files.
- "Exit upon ESC" and delete confirmation are options.
Engine awareness:
At startup the GUI asks trs80-tool what it can do. Anything that version can't do is greyed out, so upgrading trs80-tool turns on the new features with no GUI update.
Smaller conveniences:
- Convert a file straight from the disk (right-click > Convert to...).
- After assembling or converting, you're offered to add the result to the open disk.
- Disassembly options are saved as your default (the standard set matches TRSTools' own listing).
- Images can be converted to another format with File > Save image as.
Requirements
- Windows 10 or later, 64-bit.
- trs80-tool. The first time TRSToolGui starts it asks where trs80-tool.exe is, and saves the answer in TRSToolGui.cfg next to TRSToolGui.exe. Edit > Preferences changes it later.
Which EXE to Use
The download has two copies of TRSToolGui.exe, in two folders. They are the same program and work the same way; they differ only in whether they carry .NET with them.
- No .NET needed: a large self-contained file with .NET built in. It runs on any 64-bit Windows 10 or 11 PC with nothing else installed. Use this one if you are not sure.
- With .NET 10 installed: a small file that uses the .NET 10 Desktop Runtime already on your PC. If the runtime is missing, Windows says so when you start it and offers the download.
Copy whichever one you choose to any folder you like; it keeps its settings in TRSToolGui.cfg next to the exe.
Status
This is the first release (v1.0). The engine calls have been tested against trs80-tool 5.0.1, and the analysers have been tested on a huge sample of files. Bug reports and odd disks that confuse it are very welcome.
You can download TRSToolGui at https://www.trs-80.com/main-emulation-multi-utilities.htm#trstoolgui