ZEsarUX is an open source emulator for ZX machines including all the Sinclair computers.
The emulated systems are Science of Cambridge MK14, Sinclair ZX80, Sinclair ZX81, Sinclair ZX Spectrum (all models), Sinclair QL, and the Cambridge Z88.
There’s also emulation for the Timex TS 2068, Sam Coupe, Pentagon, Chloe 140 SE, 280 SE, Chrome, Prism, ZX-Uno, ZX-Evolution BaseConf, ZX-Evolution TS-Conf, TBBlue/ZX Spectrum Next, Jupiter Ace, and Amstrad CPC 464, CPC 4128.
- Almost perfect emulation of timing of all Spectrum machines.
- Supports undocumented Z80 flags, features, and MEMPTR register.
- Supports idle bus port, contended memory, ULA early/late timings.
- Supports Motorola CPU 68008 (Sinclair QL).
- Supports SC/MP CPU – INS8060 (MK14).
- Supports Pentagon timing.
- Supports perfect ZX Spectrum 16k/48k colour palette.
- Supports ULAplus: Standard 64 colour palette, linear modes with 16 colours per pixel: Radastan Mode: 128×96, ZEsarUX modes: 256×96, 128×192, 256×192.
- Supports Chroma81 ZX81 Colour mode.
- Supports Spectra Video Modes.
- Supports Timex Video modes (Mode 0 standard, 1 dual screen, 2 hires colour 8×1, 6 512×192 monochrome).
- Supports All Video modes from Prism machine.
- Supports ZGX Sprite Chip.
- Supports snow effect on Spectrum models.
- Supports interlaced, scanlines and Gigascreen effects.
- Supports hi-res modes on ZX Spectrum (rainbow effects and others) and ZX80/ZX81 (UDG, CHR$128, WRX, HRG and some other hi-res modes).
- Supports reducing the screen to 192×144 (0.75 scale).
- Can be used with joystick and environments without keyboard, like Raspiboy / Retropie.
- Emulates all the oddities of the Inves Spectrum +: 64 KB RAM, RAM initialization with FF00H pattern, OUT ula AND RAM, EAR and MIC XOR, no contended memory, snow in border, colour ula delay, interrupt starts at end of top border (not at the beginning of the border), corrupt memory on every interrupt, no idle bus.
- Uses Video drivers: X-Windows, SDL, Cocoa (Mac OS X), Framebuffer, ncurses, aalib, cacalib, stdout(console), simpletext(console).
- Uses Audio Drivers: PulseAudio, Alsa, SDL, DSP(OSS), CoreAudio (Mac OS X).
- Supports dumping audio & video to file.
- Supports real tape loading of file formats: RWA, SMP, WAV, TZX, CDT, TAP, P, O. It handles loading of turbo load tapes or any type of tape loading for standard/non standard loading routines.
- Handles binary tape format files (TAP, TZX, O, P, CDT) on standard BASIC ROM routines for ZX Spectrum, ZX80, ZX81, Jupiter Ace.
- Handles real audio loading (RWA, SMP, WAV) on standard BASIC ROM routines for ZX Spectrum, ZX80, ZX81, Amstrad CPC, Jupiter Ace.
- Simulates real tape loading on standard BASIC ROM routines for ZX Spectrum, ZX80, ZX81.
- Handles snapshot format: ZSF, ZX, Z80, SP, SPG, SNA (loading only), P, O, Z81 (loading only), ACE.
- Handles RZX playback.
- Emulates Multiface One, 128 and Three.
- Emulates Datagear/MB02 DMA.
- Handles DCK Timex dock cartridges.
- Emulates +3 Disk.
- Emulates Betadisk/TR-DOS.
- Emulates ZX Spectrum MMC Interfaces: ZXMMC, DivMMC.
- Emulates ZX Spectrum IDE Interface: DivIDE, 8-bit simple.
- Emulates Sam Coupe IDE Interface: Atom Lite.
- Emulates ZXPand MMC Interface on ZX80 and ZX81.
- Emulates ZX Dandanator! Mini, CPC Dandanator! Mini.
- Emulates Speccy Superupgrade.
- Emulates Kartusho.
- Handles RAM, EPROM, Intel Flash and Hybrid (RAM+EPROM) cards on Z88.
- Handles compressed formats zip, tar, rar, gz through external utilities.
- Supports AY Chip, Turbosound (2 AY Channels), 3 AY Channels, different DAC: Specdrum, Covox, ACB/ABC/BAC Stereo.
- Supports Quicksilva, ZON-X81, and VSYNC-based sound on ZX80/81.
- Supports Speaker and Soundbox sound on Jupiter Ace.
- Experimental simulation of the Sam Coupe Audio Chip (SAA1099).
- Supports RAM packs on ZX80/81 up to 56 KB.
- Supports RAM packs on Jupiter Ace up to 35 KB.
- Joystick emulation with real joystick (on Linux) and keyboard cursors: Kempston, Sinclair 1&2, Cursor Joystick, Cursor & Shift, OPQA, Fuller, Zebra, Mikro-Gen, ZXPand, SAM Coupe Cursors. Autofire function also.
- On Screen keyboard useful when playing with joystick, two types: one with keyboard letters, and another with words, useful for playing Text Adventures. Also a tool to extract words from text adventures and configure this on screen text keyboard.
- Emulates Spectrum keyboard ghosting error feature.
- ZX Spectrum Recreated keyboard support.
- Supports native turbo modes on ZX-Uno, Chloe, Prism and TBBlue and manual for other machines.
- ZX Printer emulation.
- Lightgun emulation: Almost perfect emulation of Gunstick from MHT Ingenieros S.L and experimental emulation of Magnum Light Phaser.
- Kempston mouse emulation.
- Supports Input spool text file to simulate keyboard press.
- Supports reading Pokes from .POK files.
- Supports playing .AY sound files.
- Supports ZEsarUX remote command protocol (ZRCP). You can do enhanced debugging on ZEsarUX by using a telnet client.
- Can use a reduced Spectrum core, with some features disabled, useful on slow devices, like Raspberry Pi 1/Zero.
- Powerful debug features: Registers, Dissassemble, Conditional Breakpoints using text expressions, Watches, Step-to-step, Step-over, Runto, Show TV electron position, Load source code, Hexadecimal Editor, View Sprites, Find byte (useful to find POKEs), CPU Transaction log, View BASIC, verbose messages on console.
- File utilities menu: Allowing to view, expand and convert some common file formats: tap, tzx, trd, dsk, mdv, hdf, etc.
- Accessibility support: Print char traps allows to capture generated text from almost any program or game, using standard ROM calls (RST 10H) or even non standard print character routines. Can send generated text from a game to a text-to-speech program. It’s ready for text to speech support for blind or visually impaired people. Menu emulator can be also read by a text-to-speech program.
- Simulates upper RAM memory refresh on Spectrum 48Kb, losing its contents when changing R register very quickly.
- Supports command line settings, configuration file settings and per-game configuration settings.
- Other features: Visualmem menu, CPU Statistics.
- Includes three Easter eggs.
Developer: Cesar Hernandez
License: GNU General Public License version 3
Click the button to make a donation via flattr. Donations help us to maintain and improve the site. You can also donate via PayPal.
Read our complete collection of recommended free and open source software. The collection covers all categories of software.
The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.