Introduction to Emulators and DMK’s

This page will try to give a quick start to getting a TRS-80 emulator running.

This page is broken into 4 section. The first is for those who are absoutely new to emulating a TRS-80 and have no idea how to begin. The second is for those who know how to use an emulator, but have disk images that they want to use, including disk images which I have prepared for them. The third invites you to let me know if anything is unclear. The fourth was a request to add Hard Drive Emulation

Except for some limited instructions in Part 5, this page does NOT attempt to teach you how to use a TRS-80, and assumes you know how to use one.

Section 1 – Basics of Emulation

Part 1 – Pick an Emulator

First, you need to pick an emulator. While there are quite a few emulators, all of which can be found on the emulator page, two stand out as being the most complete – TRS80GP and TRS32. These two are equal except for the following, so if any of the below is something you are interested, you will need to go with the listed emulator:

Use This Emulator
Do you run LINUX or MAC
Does it have to be free
Do you need ROM files
Do you need 100% GUI (Windows)
Do you need to use Model III High Speed Tapes
Do you need to use WAV files for cassette input
Do you need ORCH-85/90 in Stereo
Do you need to print out EPSON Graphics
Do you need 1MB of RAM support in Model 4 Mode
Do you need to emulate a mouse
Do you need to emulate a lightpen
Do you need to emulate the Electric Crayon
Do you need to emulate a Trisstick
Do you need to emulate an Exatron Stringly Floppy
Do you need to emulate an Aculab Stringly Floppy
Do you need to emulate a Smartwatch or NEWCLOCK/80
Do you need to emulate a custom character set
Do you need to pass through the RS-232 to the computer Serial Port
Do you need to emulate the Omikrom Mapper
Do you want to use HFE or IMG images

Other than the above, they either emulate the same things or neither does (like a voice synthesizer, speed-up card). You will need to register TRS32 to get all of its features. TRS80GP is completely free.

Now that you have picked and downloaded your emulator, either install TRS32 on your system or unzip TRS80GP to a directory of your choosing.

Part 2 – ROMs

TRS80GP has ROMs built in for the Model I, III, 4, and 4P. TRS32 does not come with ROMs.

For those choosing TRS32, you will need to get the ROMs, which you can find packaged in an older emulator by googling david keil emulator download. Once you have the ROM’s you will need to put them into a directory and point the TRS32 emulator to that directory under OPTIONS -> Image Path.

Part 3 – Starting Up

Next, you can need to start up the emulator. TRS80GP for Windows and Linux requires you to enter everything on a command line, and the instructions for using that emulator can be found here. To run TRS32 or TRS80GP on a mac, just double click on the icon.

Part 4 – Do you want Cassette BASIC or DOS?

If you want to just get into non-DOS BASIC, and load tapes (SYSTEM or BASIC) tapes, you would need to do either of the following to get to the READY prompt:

Double-click on the icon to get the emulator to run. You will see a blank screen.

Press and hold the ESC key (which is the TRS-80 equivalent of BREAK) and while holding that down, hit both the SHIFT + F8 keys (which is a cold reboot code).

You should now see MEMORY SIZE? or MEM SIZE? or CASS? depending on which Model and which ROM you used.
If you do not need to set a memory size, just hit ENTER. If you have CASS, the answers are either H for HIGH SPEED tapes and L for low speed.
Enter trs80gp -m1 -dx from the command line.

The emulator is set up to bypass the MEMORY SIZE question and go straight to BASIC. If you do not want to bypass the MEMORY SIZE question, you will need to add -nlc to the command line to turn off the lower case driver. If you do want lower case, then type SYSTEM followed by ENTER and /0 followed by ENTER at the /? prompt, and you will restart back at MEMORY SIZE.

To mount a tape, both emulators will be GUI driven at this point, so:

Press F9 and choose your file.

You will also need to virtually push PLAY on the controls by hitting CTRL + F9 and then pressing PLAY.
Go to Cassette -> Insert and choose your file.

Alternatively, if you wan to do this from the command line then you would use trs80gp -m1 -dx -c filename where filename is the full filename of the image you wish to use, including 3 letter extension.

If you want to boot into DOS:

Press F6 and choose the disk image you want to boot.

Then hit SHIFT + F8 to cold reboot the emulator.
  • To run boot.dmk as a Model 1 disk:
    trs80gp -m1 -d0 boot.dmk
  • To run TRSDOS v1.3 as a Model I disk:
    trs80gp -m1
  • To run LDOS v5.3.1 as a Model I disk:
    trs80gp -m1 -ld
  • To run boot.dmk as a Model III disk:
    trs80gp -m3 -d0 boot.dmk
  • To run boot.dmk as a Model IV disk:
    trs80gp -m4 -d0 boot.dmk
  • To run boot.dmk in drive 0 and data.dmk in drive 1 as a Model III disk:
    trs80gp -m3 -d0 boot.dmk -d1 data.dmk

Part 5 – Some TRS-80 Basics

In case you do not remember how your TRS-80 works, here are a few commands to get you started:

  • To load a BASIC program called “FILE” in non-DOS BASIC: At the prompt you would type the word CLOAD and hit enter. When it is done you would type RUN.
  • To load a SYSTEM (machine language) program called “FILE” in non-DOS BASIC: At the prompt you would type the word SYSTEM and hit enter. At the first *? prompt type FILE and hit enter. At the second *? prompt, hit / and hit ENTER. If you do not know the filename you can use TRS80GP to show it to you (after you mount it, go back to CASSETTE and it will show you the filename and speed), you can use Lawrence Kesteloot’s site, or you can use any viewer and look at the file … it will be in the beginning.
  • To run a BASIC program called “FILE/BAS” in DOS BASIC: At the prompt you would type the word BASIC and hit enter to any prompts given to you. Once in BASIC you would type RUN”file/bas” and it will load and run.
  • To run a CMD program called “FILE/CMD” in DOS: At the DOS command line you would type FILE and hit enter.
  • To see a directory of drive 0: At the prompt you would type DIR :0
  • To see a directory of drive 1: At the prompt you would type DIR :1
  • To read the NEWDOS/80 Manual click Here.
  • To download the Model I BASIC Manual click Here.
  • To download the Model III BASIC and TRSDOS Manual click Here.
  • To download the Model 4 BASIC and TRSDOS Manual click Here.
  • To download the LDOS and LSDOS Manual click Here.
  • To download the MULTIDOS Manual click Here.

Section 2 – You Know How to use an Emulator and Have Disk Images

Part 1 – Manipulating Disk Images

If you have disk images, such as disk images that I might have read for you, things get a little trickier. The various DOS’s in some cases cannot read each other and not every disk has a DOS on it. What makes things easier is to extract the contents of the disk image, and put it on a different disk image that you know will work with the DOS you want to use.

The best tool out there to manipulate disk images is a Windows utility called TRSTools, written by the author of TRS32. TRSTools can be downloaded here.

TRSTools is a Windows Explorer-like utility that makes it easier to work with virtual disk images. With TRSTools you can:

  • Drag and drop files to and from TRSTools and the Windows Explorer
  • Open an existing virtual disk image
  • Create a new virtual disk image
  • Add files to or extract files from the disk image (with file dates preserved)
  • Preview files (with integrated viewer)
  • Rename files
  • Delete files
  • Change the disk label and volume date

The integrated viewer is actually really powerful. If you make sure you select the the right thing in the dropdown box, you can view a BASIC file as ASCII (so you can just copy the ASCII straight out of the viewer and have the ASCII dump of a program), you can view a CMD file as a disassembly or as text, you can view a high res picture as the picture! And as mentioned above, these things will allow you to see if a program is corrupt or not, as corrupt files will not show as ASCII, Disassembly, or graphics.

TRSTools will also attempt to show you the PDRIVE of the disk if it was written on NEWDOS/80 and the DOS of the disk, under PROPERTIES.

Part 2 – A note to those who had disk images read by me

I have named each DMK according to the label of the disk so you know which is which. Damaged disks will have a code at the end in brackets such as [Tx-a b c d e, or Txsy-a b c d e, or Tx-Align]. These mean:

  • Tx-y: Track number x has bad sectors a, b, c, d, and e.
  • Txsy-z: Track number x on side y has z bad sectors a, b, c, d, and e. This would be for double sided disks.
  • Tx-Align: Track x reported a non-standard number of sectors, but reported it as a good read. An example would be if a Model III disk, which will ordinarily have 18 sectors per track, reports a single track as having 17 sectors without also reporting that one is missing!

In these cases, I would recommend using TRSTOOLS to look at each program on the disk. If you come across a /CMD file or a /BAS file which looks like junk, chances are that the file was corrupted because of the bad sector. For other types of files, it is just not possible to see if data is missing or corrupted by looking at them through TRSTools. If you are desperate to learn what file was corrupted, you can use SuperUtility to see what was on the bad sector. What I usually do is [1] Run DMKCheck on the DMK image, [2] configure SuperUtility for the appropriate DOS under item 9, and then [3] use the FILE LOCATIONS (Menu item 8 and then 7) to see what file was on the bad sector.

Section 3 – Did I miss anything

If you are new to emulation and you have questions I haven’t answered (that are not about how to work a TRS-80), please contact me and I will update this page.

Section 4 – I was asked to add HARD DRIVE support to this FAQ so …

Pick a directory you want to use to house your boot image and hard drive If it doesn’t exist, create it.

Next, download the Hard Drive Operating System v6.02.00 to that directory and unpack the ZIP file.

Next, rename “Hard Drive Operating System v6.02.00 (1984)(Logical System)[M4][Original][Set 1][Initialization].dmk” to “boot.dmk”.

The next steps are broken down by emulator of choice …

  • Double click on the TRS32 Icon to run the emualtor
  • Choose File -> Autostart
  • Choose boot.dmk and click OPEN
  • Hit F7 to choose a Hard Drive Image
  • Enter the hard drive filename you wish to use and click OPEN
  • Click the YES button to create the hard drive
  • Go to the directory where boot.dmk is located.
  • Type
    trs80gp -m4 -turbo -h harddrive.hdv -d0 boot.dmk

The rest of the steps are inside the emulator …

  • Enter the date
  • Is your system ready? Y <ENTER>
  • How many floppy drives are connected? 4 <ENTER>
  • How many hard drives are connected? 1 <ENTER>
  • Serial Number: Enter a 5 digit number
  • Did you enter all the seial numbers? Y <ENTER>
  • Number of Megabytes: 10 <ENTER>
  • Press any key when ready to continue: <ENTER>
  • How many logical drives: 2 <ENTER>
  • How many floppy drives? 1 <ENTER>
  • Do you want to reserve a local drive? N <ENTER>
  • How many logical drives do you want to use? 1 <ENTER>
  • Do you want to change any value? N <ENTER>
  • Which Method do you Prefer? A <ENTER>
  • Press any key when ready to continue: <ENTER>
  • Do you want the hard disk to be the system device? N <ENTER>
  • Do you want the hard drive to be searched first? N <ENTER>
  • Is the configuration correct? Y <ENTER>
  • Enter the Disk Pack name? <ENTER>
  • Enter the Master Password? <ENTER>
  • To Proceed, type “YES”? YES <ENTER>

The emulator will start formatting and verifying when its done it will say press Enter. So … press <ENTER>.

At this point, you have a hard drive as :1. Make sure to use the boot.dmk as your boot disk when you want to access the hard drive image.