There are many TRS-80 emulators out there for various operating systems. The top few on this list are excellent and any of them will provide you with an accurate emulation experience. Like every product out there, however, not every emulator emulates everything, and there are some features present in one which are not present in the other. This may mean you need to use 2 different emulators if you want to use all the features. The following is a short intro to what features TRS80GP and TRS32 do NOT share; otherwise they are equal.
- Ranged Breakpoints (Memory and Ports)
- Memory dumping
- Alpha Products
- Alpha Products
- Micro Matrix Photopoint
- Animated GIF
Model I/II/III/4 Emulator for Windows (Runs on MAC and OSX Catalina under CrossOver)
trs80gp emulates the “gray” line of TRS-80 computers made by Tandy in the late 1970s and early 1980s. They are known as the Model I, Model II, Model III, Model 4, Model 4P and Model 4D. It is generally easier to refer to them as the Model 1, Model 2, Model 3 and Model 4. The Model 1, 3 and 4 are a line of compatible computers. The Model 2 has its own line of compatibles including the Model 12, 16 and 6000 which are not yet emulated by trs80gp.
The emulator runs under Windows 10 and probably works on Windows 8, 7, Vista or XP. I’ve also heard it runs fine on OSX and Linux machines using Wine. It should run well on any machine produced in the past 7 or 8 years.
trs80gp provides accurate and near complete emulation with excellent programmer support. The source code is fully organic and hand-crafted by myself and my brother Peter.
- Emulates floppy disk, cassette, Aculab Floppy Tapes, hires graphics, orchestra 80 and printer.
- Window scalable to any size with realistic phosphor-dot rendering.
- Near perfect video emulation including beam drop-outs, wait states and various other subtle effects.
- Can visually indicate Z-80 video memory conflicts.
- Cycle perfect sub-instruction Z-80 and video timing.
- Built-in Z-80 debugger with source level debugging using zmac .bds output.
- Switchable turbo mode for high speed yet still accurate operation.
- Auto-turbo modes to go fast during slow operations (e.g., disk, cassette) and back to normal when typing.
- AVI and FLV (Flash) video capture.
- GIF and animated GIF screenshot capture.
- Audio capture to WAV file.
- Load programs directly from command line for fast development and testing.
- Can both “paste” and send files as input to keyboard (aka “fast type”).
- “Cut” to copy the screen in ASCII, Unicode or graphics format.
- Keyboard selectable between normal and game mode.
- Software keyboard to get around limits of PC keyboards.
- Brightness, contrast and display color controls.
- Batch mode and command line input to automate tasks (i.e.,
trs80gp -i "BASIC\r\r60000\r10 ?7*5\rRUN\r")
- Can open files and disk images within .zip archives.
- Light Pen support (enabled with the
- Joystick support (enabled with the
- Optional emulator extensions provide memory protection and timing to the Z-80. And emulator exit.
- Bus tracing, disassembling, profiling, memory dumping and other features for reverse engineering and debugging.
- Can be set to run as fast as your PC can handle, yet keeping drive access and keyboard access functional.
- Built in IMPORT and EXPORT to and from PC directory
- Support for hard drives [Feb 2020]
- Model 16 emulation [Feb 2020]
- Preliminary support for Model I Percom and Radio Shack double-density disk interfaces. [Feb 2020]
- Videotex terminal emulation [Dec 2020]
- Electric Crayon emulation [Dec 2020]
- TCP/IP printer support with
-p host:port[Dec 2020]
- Command line breakpoints support range syntax. e.g., “-b 5200:6000”. [Dec 2020]
- Omikron mapper emulation for Model I (enabled with the
-omikronoption) [Mar 2021]
- Support for HxC2001 HFE floppy format [Mar 2021]
- Drag and Drop to Run Programs [Jun 2021]
- (WIP) Track dump in Disk Debug (including HFE) [Sep 2021]
- (WIP) Corvus hard disk emulation [Sep 2021]
- Raspberry Pi 32-bit (Raspian) and 64-bit (Ubuntu) versions [Sep 2021]
- MX-70 printer emulation (-mx70 or -p :mx70) [Sep 2021]
- Additional views for Disk Debug window including a diskette summary [Sep 2021]
TRS32 Model I/III/4 Emulator for Windows
- Is a native Windows application (features such as sound and joystick support will work on all hardware, and you can run the emulator concurrently with other Windows applications without any adverse effects)
- Emulates the Model I (Levels I and II), Model III (Levels I and II), Model 4, and Model 4P with a variety of hardware add-ons, including doublers, graphics boards, joysticks, and additional memory
- Provides complete and “cycle accurate” hardware-level emulation (even protected disks work without problems)
- Includes optional realistic TRS-80 disk drive sound
- Supports all popular virtual disk (.DSK) formats
- Includes support for the rare Level I Model III
- Includes emulation of the Exatron Stringy Floppy
- Includes cut/paste of TRS-80 screen contents
- Supports true Model 4P Mode
- Hovering the mouse cursor over the floppy drive indicator light in the status bar will display the current drive status and position
Unregistered Shareware Version:
- Works under all current versions of Windows
- Full Windows application – no low-level hardware conflicts!
- Model I, Model III, and Model 4 emulation
- Four floppy disk drives (with optional realistic disk drive sound)
- Cassette tape drive with graphical on-screen controls
- Printer support
- Serial port for RS-232 communications
- Joystick support (using a Windows joystick – TRISSTICK and Alpha Products joysticks are emulated)
- All features included in the shareware version
- High resolution graphics (Radio Shack and MicroLabs)
- Up to 1 megabyte of additional memory in Model 4 mode
- Hard disk support
- Orchestra 85/90 music generation
- Built-in emulation of an Epson FX-80 dot matrix printer (including graphics and control codes)
SDLTRS (2020) Model I/III/4 Emulator
Jens Guenther made bug fixes to SDLTRS v1.1.0
- Runs on BSD, Haiku, Linux, MacOS(X), Solaris and Windows (95 to current)
- Included all patches by Alan Cox: support for banked memory, Lowe LE18
- Fixed various SegFaults: ROM Selection Menu, Scaling in Fullscreen
- Reworked the Interface: new shortcuts and key bindings, help screen
- Ctrl-A, Ctrl-C & Ctrl-V can now be used in the Emulator (CP/M & WordStar)
- Access to real floppy disks works now on Linux
- Port to SDL2
- Support for Exatron Stringy Floppy …
- Select and execute CMD files directly in the Emulator …
- Save screenshot of the Emulator window as BMP file …
- Show Z80 registers in the window title bar
- Display of Z80 speed in window title bar (1.2.9)
- “Turbo Paste” function (1.2.9)
- Adjust Z80 clock rate on the fly. (v1.2.9)
- Toggle joystick emulation with NumLock key. (v1.2.9a)
- Added Z80 refresh register. (v1.2.10)
- Added more accurate Z80 block moves. (v1.2.10)
- Added support for Sprinter II/III. (v1.2.10)
- Added CPU clock speed selection. (v1.2.11)
- Added R register to state file. (v1.2.11)
- Fixed issue #2 “Spurious return characters” (reported by David Barr). (v1.2.11)
- Fixed issue #3 “Handle CapsLock key in SDL2” (reported by David Barr). (v1.2.12)
- Fixed some crashes (Copy Buffer, “SuperMem” option). (v1.2.12)
- Made Z80 debugger an optional feature. (v1.2.12)
- Added brightness control for Scanlines (v1.2.14).
- Added shortcuts for: -borderwidth, -cassette and -fullscreen (v1.2.14).
- Merged some changes for the zbx debugger from xtrs (v1.2.14).
XTRS Model I/III/4 Emulator for Unix
xtrs is a Radio Shack TRS-80 Model I/III/4/4P emulator for Unix and the X Window System. It includes lower case, the real time clock, hi-res graphics, serial port, parallel printer, mouse, cassette, sound and music output (requires OSS), 5″ and 8″ floppy disk drives in single and double density, and even hard disk drives. The emulated floppy and hard disk file formats are compatible with the popular MSDOS-based emulators by Jeff Vavasour and Matthew Reed, and (if you choose a capable enough file format), all features of the original TRS-80 floppy disk controller are emulated. Under Linux, physical floppy disk drives are also supported. Physical cassettes can be read and written too.
- TRS-80 Model I, III, and 4/4p emulation.
- Emulated cassette drive.
- Emulated 5″ and 8″ floppy disk drives.
- Emulated Hard Drives.
- Data Import and Export from Host.
- Sound emulation.
- Mouse emulation.
- Joystick emulation.
- Printer emulation.
Model III Emulator in TypeScript (Online)
SHARP-80 Model III Emulator for Windows (Updated 3/9/2017)
- Complete and self contained with ROM and DOS built in
- Faithful Z-80 CPU emulation (including undocumented opcodes — passes all ZEXALL opcode tests)
- Runs at standard 2.03MHz (or run up to 100MHz on a modern PC)
- Bundled disk and tape library includes applications, utilities, operating systems, and games
- Supports up to four virtual floppy drives, and all major virtual floppy formats (DMK, JV3, JV1)
- Tape drive emulation supports high and low speed reading and writing (CAS format)
- Windowed and full-screen modes
- Built-in Z-80 assembler and disassembler
- Real-time monitor of Z-80 registers and state, and floppy controller status
- Printer to file support
- Support for all video modes, including wide characters and Kanji mode
- Bundled disk and tape library includes applications, utilities, operating systems, and games
TRS-80 Emulator for Android
This is the first version of a TRS-80 Emulator for Android. It is based on sdltrs that is itself derived from the popular xtrs emulator originally written for X-Windows.
- Model I & III (text mode only)
- Cassette support. A default blank tape is automatically created (a different cassette image can be mounted via the Edit Configuration dialog). Use the rewind button in the action bar to rewind the tape to the beginning
- Floppy disks
- Different keyboard types, including a tilt interface where the accelerometer triggers cursor keys (for games)
- Game controller support: joystick and DPAD buttons are mapped to appropriate cursor keys. Other game controller keys are mapped to space for now (future version might allow custom mapping)
- Define different keyboard layouts for landscape and portrait mode
- When an external keyboard is detected, it will automatically be used instead of the configured soft-keyboard.
- Use <Ctrl>-B and <Ctrl>-C for <BREAK> and <CLEAR> respectively
- Chromecast support: cast your TRS-80 application to your big screen!
SDLTRS (2010) Model I/III/4 Emulator
SDLTRS builds on XTRS and adds Windows and Mac OS X support, Fullscreen display, Text based GUI on Windows and Linux, and in Fullscreen mode on the Macintosh, Configuration files, Disk LED Indicators on screen, Creation of Disk images inside of the program, Saving and loading of disk sets, Saving and loading of emulator state, Copy and Paste of text to/from host and emulator, and USB Joystick support.
- Fullscreen display
- Text based GUI on Windows and Linux, and in Fullscreen mode on the Macintosh.
- Configuration files.
- Disk LED Indicators on screen.
- Creation of Disk images inside of the program.
- Saving and loading of disk sets.
- Saving and loading of emulator state.
- Copy and Paste of text to/from host and emulator.
- USB Joystick support.
- Graphical interface, include Media management with graphical representation of the disk drives and cassette [MAC Only]
- Printer emulation of Epson FX-80 and CGP-115 Plotter/Printer, with output to PDF files. [MAC Only]
- Debugger in separate program window. [MAC Only]
TRS-80 Model III Emulator in TypeScript
Can be run from a browser — try here.
To run a local build:
% npm install
% npm run build
% npm run serve
TRS-80 Model III Emulator in Go
This is a TRS-80 Model III emulator written in Go. It uses a web page for its interface. It can read diskettes and cassettes. It uses the Z80 emulation library from Andrea Fazzi.
You can change the contents of the disk drives with the selectors on the right. The red dots represent the drive motors. A few diskettes are included with the source. Add more into the “disks” directory. Only reading is implemented. All diskettes pretend to be write-protected.
You can change the contents of the cassette with the selector on the right. The red dot represents the cassette motor. Put the cassette files into the “cassettes” directory. Cassettes must be WAV files (mono, 16-bit). Both 500 and 1500 baud are supported.
go get github.com/lkesteloot/trs80
- Go to the source directory, which is probably:
$GOPATH/src/github.com/lkesteloot/trs80. Note: If you have more than one item in your $GOPATH, use only the first one.
- Execute it with
- Go to
https://localhost:8080/in your web browser
- Click the Boot button
Level I Simulator for the Web (Java)
Emulates a Level I TRS-80 Model on the Web (Java).
Much Older Emulators
Use at your own risk. May not be able to handle DMK images, Windows XP or later.
This emulator was amazing in its day. Full support for cassette (all baud rates), WAV file support, lower case, percom and Radio Shack doublers, RS-232 Port, Real time clock interrupt (30hz & 60hz), Cassette port sound, Parallel printer port (port & memory mapped), WD1793 floppy disk controller (4 double-sided double-density 80+ track drives), RS WD1010 hard disk controller (4 hard drives w/up to 8 heads and 1024 cylinders each), High resolution graphics boards (Radio Shack and Micro-Labs), Orchestra-90 stereo music, VS-100 voice synthesizer, multiple keyboard layouts, joystick, mouse, hardware clock, system snapshots, high resolution (Model III/4) and much more. One of its interesting strengths was that it could map your PC drive as a real TRS-80 boot drive and can aid in transferring data from a TRS-80 Disk to an IBM!
- The unregistered shareware version emulates a 64K Model 4 with four double-sided, 80-track floppy drives and a parallel printer port. All Model 4 sound can be routed through either the PC speaker or a Sound Blaster compatible sound card, and several international keyboard layouts are available.
- The registered version adds support for Model III mode, the 128K memory upgrade, a virtual hard drive, a hardware clock, RS-232 communications, high resolution graphics (Radio Shack and Micro-Labs), snapshots, a Model 4 mouse driver, and file transfer utilities.
- In any event, the emulator will use LPTx: for the TRS-80 printer port, and COMx: for the RS-232 port.
- I have personally used the registered version of this emulator. I put a real Model 4 disk in IBM Drive A: and set that as my emulator boot drive (:0). This emulator booted off of the physical Model 4 disk and performed flawlessly. To create a .DSK file image of that floppy all I had to do was mount my Model 4 disk as :0 (in A:), and a virtual disk as :1, and run BACKUP. That’s IT!!
- Matthew includes a utility which will allow you to import and export from a Model III/4 .DSK file to DOS which supports wildcards.
- Model I Emulator Rev. G
- Model I Emulator Supplement for Registered Version
- Model I Emulator v3.02u Source Code
- Download the Emulator
- Download the necessary Windows Fonts (install first)
- Download the Voice Synthesizer Add-On
- Download the Model I Emulator (BIN)
- Download the Model I Emulator (HQX)
- Download the Model I Emulator v1.6b2 (BIN)
(Source Code Only)
- Download the Windows Version.
- Download the MAC OSX 10.5 Version.
- Download the LINUX Version.
- Download the Source Code.
- Full and cycle exact Z80 CPU core
- Support for the VideoGenie-1/System-80, all 3 series of HT1080Z computers and the TRS80 Model I Level 2
- Support for 16 and 64 kb memory setups
- NMI interrupt (RESET)
- Video Cut (32 columns mode) and Page buttons
- 3 channel YM2149 sound chip emulation along with the noise and envelope generators
- TRS-80 compatible tape sound
- Full keyboard emulation
- Direct loading of the disk based CMD format files
- Read/write support for the CAS tape format
- WAV format support for tape output
- Simple printer support
- Lowe LE15 High Resolution Graphic Adapter emulation
- Very fast and accurate Z80 engine
- Z80 undocumented instructions/flag bits are implemented
- RESET and NMI support
- Four running speeds including ‘full’ for maximum performance
- 64*16 character video display (including 128*48 pixel graphics)
- Video cut / page with optional 200% magnifier
- 8*8 memory mapped ‘wired or’ keyboard matrix
- TRS-80 like ‘tape output’ sound is supported
- General Instruments AY-3-8910 (Yamaha YM2149) sound chip is emulated
- Tape emulation through CAS files for basic language and system programs
- Direct load of TRS80 CMD & CAS & Intel Hex files
- ROM extension is included (use SYSTEM and /12288 for activating)
- ROM includes simple monitor (use SYSTEM and /12710)
- Content of ROM can be loaded from binary file
- Character generator ROM can be loaded from bitmap file
- Keyboard mapping can be loaded from a text file
- Default settings including ROMs can be patched into the EXE file
- Built in port controlled timer/event counter
- Small sized single EXE program, no external files are needed
- Running on standard WIN32 environment (Windows 95 and up)
- 1.774 MHz CPU clock, precise Z80 cycles times, all Z80 op codes including the non defined ones and XF/YF flags.
- Z80 Reset, NMI, INT lines.
- All three HT-1080Z series ROMs and character generators included with selectable 16/48K memory.
- Full HT keyboard with CUT and PAGE keys, Pause mode.
- Tape recorder, printer, four 5 1/4″ SS SD floppy disk, internal clock
- Yamaha YM2149 sound chip (originally supported only in HT series)
- Micolor 01 (Hungarian expansion board) and Lowe Electronics LE18 graphic board.
- Built-in debugger
- Audio: 8 bits, Mono, 22050Hz
- Screen snapshot into BMP or JPEG file.
- Turbo mode, 2x or Full (20x).
- Program autostart, text file input as keyboard
- Predefined and custom “skins”
- Memory snapshot to CAS file
- Emulates Micolor 01, 256×256 color expansion board.
- Emulates Lowe Electronics LE18, 384×192 B/W expansion board.
- CoCo III Emulator
- v1.7 Beta Source
- MS-DOS file enhancements and extended error messages for CoCo 3 BASIC