TRS-80 Emulators for Windows and MS-DOS

Matthew Reed's emulators, utilities, and development tools for TRS-80 Models I/III/4

Z80Disasm — A TRS-80 Disassembler for Microsoft Windows

Z80Disasm is a freeware command-line Z80 disassembler for Windows. It is a symbolic labeling disassembler that supports all Z80 instructions and can read either TRS-80 CMD files or Intel HEX files.

The Z80Disasm command line looks like this:

Z80DISASM [options] [file]

The following options are supported:

-v: Read file from a TRS-80 virtual disk instead of a Windows directory.
-s: Use as a screening data file.
-o: Write disassembly to instead of screen.
-r Don't generate symbolic labels during disassembly.

For example, to disassemble the program SCRIPSIT.CMD to the screen, the command line would look like this:

Z80DISASM SCRIPSIT.CMD

To disassemble the program ROBOT.CMD to the file ROBOT.ASM, using the screening file ROBOT.SCR, the command line would look like this:

Z80DISASM -o:ROBOT.ASM -s:ROBOT.SCR ROBOT.CMD

To disassemble the program VC/CMD which is contained on VISICALC.DSK, the command line would look like this:

Z80DISASM -v:VISICALC.DSK VC/CMD

Screening files

Z80Disasm supports the use of screening files to separate data from code. By using a well designed screening file, data areas can be properly marked using DB and DW pseudo-ops instead of meaningless instructions.

A screening file follows a well-defined format, consisting of address ranges separated by commas. (Long time TRS-80 users may remember this format as similar to that used by DSMBLR, the MISOSYS disassembler for the TRS-80.)

Four different types of address ranges are supported:

aaaa one byte at aaaa
bbbb-cccc a range from bbbb to cccc
-dddd a range from 0x0000 to dddd
eeee- a range from eeee to 0xFFFE

Two types of prefixes are supported for ranges:

$ identify as byte data (the default)
# identify as word data

For example, here is a valid (albeit meaningless) sample screening file:

$3000,$3A1B-3A1D
#3010-3014,#E000-
$-1000

That screening file indicates the following areas of data:

Note

Z80Disasm is freeware, but remember that it is not public domain software. All copyrights connected with the program and its accompanying document files remain with me (Matthew Reed).

Z80Disasm is a Windows console application.