EmuZWin v2.7 release 2.8
(Ñ) by Vladimir Kladov, 2003-2006
I represent my ZX-Spectrum 128 and 48 emulator for Windows 95 / 98 / ME / NT / 2K / XP
/ Longhorn on IBM PC Pentium-I, II, III, IV and compatible.
Download the most fresh version via following link:
of the archive (v2.7) is about
1Mbyte. Additionally, it is possible to download archive,
containing plug-in sources, documentation on plug-in creation etc. at:
If you wish, you can download previous versions too:
At this time EmuZWin is one of the fastest and correct among other
windowed emulators. Its main features are:
- supporting for Spectrum models (including exact timing and floating bus
behavior - "multicolor", which can be turned off when
necessary): 48, 128+, 128/+2, 128/+2A/+3, Pentagon, Scorpion and also memory
models of ATM, ATM-Turbo-2, Profi; partial support for
Issue2/Issue3; also custom multicolor settings; it is possible to
switch models (in many cases) and timing (always) without resetting the emulation of
current Spectrum program;
- external ROM files are used, these can be configured as desired and to set up another
ROM in place of distributed if necessary;
- GigaScreen, Snow effect;
- 256 Color games (Spec256), power GFX-editor to convert usual games to
256 Color mode (existing until year 1999 such 12 games can be downloaded at http://www.emulatronia.com/emusdaqui/spec256/index-eng.htm
See also new ones on the Web-page of the Arjun (India, Bangalore): http://www.yantragames.com/ZX256.html
- full screen mode with DirectX and without DirectX; resized window
(scale from x1 to x4), including non-proportional resize, variable border size (from 8 to
48 pixels and to 56 pixels in full screen); additional effects in
full-screen mode: Interlace and Blur Motion. The last
is the most smooth (non-flickering) animation, and mainly for viewing demo.
It takes a lot of processor resources. If it does work not smoothly enough,
try to free up some additional resources for it: make display smaller
(Alt+'-'), turn on Interlacing ('Alt+'I'), disable Time History 2
Seconds Back, close all other tasks in the system including indexing
service, scheduler, anti-virus scanner... When Blur Motion on, sound
can be crapped sometimes (pause and resume to fix it), and video is late of
emulation on 1-2 frames. Moving parts of display can flicker in brightness a
bit, on non-divisible monitor frequencies, so use frequencies divisible by
50, for 100% emulation speed or change emulation speed to make it divisible
to monitor frequency (e.g. for 85Hz monitor, use 85% speed, or for 60Hz
monitor use 120% speed).
- graphic filters: Smooth Scale, High Quality Magnification,
Flip Vertical, Interlace (the last - for full-screen
- special filter: Equispaced Frames. It is intended for
Anti-Slowdown War (sometimes game speed depends a lot of amount of
objects to draw on screen, and in that case game become slower for a time.
E.g. Knight Lore). This effect allows to eliminate this behavior: all frames
become equidistant, and in some cases game is running smoother. But
sometimes speed become too fast, so do not forget to select another custom
speed. And, for some games this mode should not be on while it is loading or
showing menus, so to switch the mode quickly, key combination Alt+Q is reserved for turning this effect on/off.
- Net Play - game play "on a single Spectrum" from several PCs
in keyboard-separated or time-separated mode including hidden moves;
- devices: disk OS Beta128 (TR-DOS), microdrive (Interface-1),
tape (loading, including fast load and flash load); MIC sound (in Windows
9x it can be produced via PC-Speaker), AY (ABC / ACB / Mono),
Stereo-Covox, General Sound, ZX Printer.
- file formats: SNA, Z80, SLT
(read), ZX, TAP, TZX
(read), BLK (read), TRD,
SCL, HoBeta (*.$B, *.$C - read), UDI (read), FDI, TD0, MDR
(microdrive), OUT (write, sound), ZIP
(read), GFX, RZX (Action Replay, while replaying
allows to use Time 2 seconds back feature, and watch on "keyboard" which keys
were pressed while recording the RZX, when several RZX-files are dropped onto the main
window, such are played one by one); POK; and also own format EZX,
especially to save entire Spectrum and emulator state, including all opened disks, tapes,
cartridges, assembler text, maps, scenario etc.;
- it is possible to write your own plugins to extend a list of supported
- Tape and Disk browsers allows to perform some
operations to assemble/disassemble tape and disk images;
- screenshots can be saved to .SCR, .BMP or .PNG;
- saving sound to .WAV and .MP3;
- saving video to .AVI;
- variable emulation speed - from 4% to 10000% (it is real now on modern
PC to get about 2000-5000% actually) with step 1%;
- Time 2 seconds back/forward up to the start of playing the game;
- power Debugger/trasser (supports Undo, Breakpoints on execute in range,
on read/write memory, on port in/out, on additional conditions such register/memory value
check etc.), Assembler, Disassembler (can export
- Map Builder, including automatic build;
- emulation of several ZX joystick types (Kempston,
Sinclair-II, Fuller; supports up to 2 PC joysticks), mouse types (AMX, Kempston, AY),
optical types (Light Gun, Gun Stick; both emulated via mouse);
- allows remapping of any PC key/joystick direction to any ZX key /
joystick, or to one of 25 emulator commands;
- drawn keyboard allows not only to see Spectrum keyboard layout but also
to press keys via it;
- sound volume control (can be added to status bar);
- configured toolbar; recently opened files history;
- Autosave of the current state (in Autosave.ezx) when emulator is closed,
with automatic loading of autosaved state on the next start;
- storing settings in the registry or ini-file (command-line option);
- CPU: Pentium-II 450MHg or better; MINIMUM:
- RAM: 32 MBytes; MINIMUM: 16 MBytes
- HDD: 50 MBytes free space; MINIMUM: 20 MBytes free
- Display: 1024x768x64K colors or better; MINIMUM:
640x480x256 colors or shades
- Video Card: there are no special requirements
- Sound Card: presents (Sound Blaster compatible); MINIMUM:
no sound card
- Direct-X: version 5 or higher (better); MINIMUM: any
- OS: Windows 9x with IE 4.0 or higher / ME / NT4SP1 / 2000 / XP /
Longhorn; MINIMUM: Windows 95 without IE installed
Note: most of features are tested first in NT-based OS (Wondows2K, WindowsXP)
but the program still compatible in most with Windows95, Windows98,
WindowsME and even can be launched in the Linux under wine v9 and above.
- Select a directory of your choice (or create new one), e.g. C:\Games\EmuzWin\
and unpack there ALL THE FILES from the archive provided. Do not launch it
directly from a ZIP-archive - most archivers (except WinRAR though) do not support
extracting all the files when something is launched from it, so it could do some things.
- If some file(s) can not be replaced, restart Windows (or re-login, but in some cases
this possible can not help, e.g. in XP) and try again.
- That is all. Just run EmuZWin.exe and enjoy :-)
If you want you can create a shortcut to the exe somewhere (e.g. on desktop or in Start
menu) using common technique: e.g. dragging the executable with right mouse button pressed
to the destination.
- If you wish you can download LensKey.exe utility by Simon Owen (small but great) from
the author's Web-site ( http://homepage.ntlworld.com/simon.owen/lenskey
) and put it to a directory where EmuZWin installed, this will enable menu item Tools|Lens
Key which runs this utility.
EmuzWin can be started e.g. from MS-DOS console using following command-line:
>EmuZWin.exe [option...] [filename]
Options available are:
||Force 8 bit per sample for Direct-X sound. Options configured applied
||Ignore "slow machine" reporting from OS. Has no effect in most.
||Has effect in synchronization. Not recommended.
||For debug purposes only. You should not use it.
||Load ROM from certain directory or file when available. (Starting from
version 2.6, this key used only as a hint to the emulator where to search ROM if it is not
found at the path set in the Configuration, or when the emulator starts the first time).
||Start in full-screen.
||Start paused (ignore registry settings).
||Exit the emulator when ESCAPE pressed.
||Use ini-file (rather then registry) to load/save configuration. If Path
not specified, EmuZWin.ini from startup directory used. If Filename in Path not specified,
EmuZWin.ini in specified directory is used.
Switching to a certain model has no effect (e.g. in the Pentagon there is no
TR-DOS item in the system menu).
Some models still not
supported in total (only timing and some RAM / ROM switching). But for
implemented models, this mainly a problem of absent ROM image or configuring
it. Try unpack Roms.exe (self-extracting archive with ROM images) to \Roms
directory or provide your own ROM and then select it in the Configuration
dialog for a certain model).
- Game or demo can not load. Spectrum
resets, crashed or go into infinitive loop after loading (tape, snapshot or disk image).
Try to select another hardware model / multicolor timing / ROM image / or
for tape image try different ways to load it (may be it is required to go to USR 0, and
type LOAD '' (or LOAD ""CODE) from Basic48; or vice versa it is required to
reset in certain model like S128 and use Tape Loader there. In some rare cases turning off
options Fast Load / Flash Load can help - in menu
| Tape can help).
Check if this game/demo can be loaded in another emulator or on real Spectrum machine. If
yes, contact me describing a problem.
- Speed is not perfect in
Direct-X. Drawing is very slow, down to 1 frame a second.
Try to change Display resolution. If this did not help, turn option "Use
Direct-X in full-screen mode" off.
- Speed is very slow.
Try to disable your sound card. It
helps, but what to do, I want hear sound?
Reduce hardware acceleration of your sound card finding a level on which speed is enough
and sound still is not garble. In case of any problems with Direct-X or hardware
interfaced via Direct-X, a file directX.log is created in the directory of the emulator.
You can send it me or read it to get know what happens.
- When program go out from
Direct-X, display settings (refresh rate? horizontal refresh?) are incorrect and screen is
This can be so on some hardware (and if yes, this behavior is the same for
most of Direct-X applications).
Turn option "Use Direct-X in full-screen mode" off.
- The emulator does not want to
switch to Direct-X full-screen. Or, it can not use Direct-X sound (setting Sound On does
nothing - it stays always off).
Try to reinstall or install newer version of Direct-X. If this did not
help, compress (ZIP) and send me by e-mail directX.log file (it should be created in the
emulator directory). If you could not configure working EmuZWin in full-screen with
Direct-X, uncheck flag "Use Direct-X..." in the Configuration dialog: the emulator
can work in full-screen without Direct-X (and this even can give some advantages, e.g.
fastest switching to/from full-screen mode). Computer should be fast enough, certainly.
- The emulator crashed, when I ...
Please, e-mail me! This will help to fix a problem as soon as possible. Do
not forget to describe what happens (what you did) and may be other circumstances (OS
Windows version, the emulator version, game/demo/etc. you loaded, etc. - any info which
could be useful to reconstruct bad behavior). Thank you!
There were not planned in 2.1, but possibly in 2.2/2.3/2.4:
- kid-mode (minimum settings available in this mode)
- protocol, statistics of certain games running
- more disk systems
- more models support with shadow ROM/RAM: Scorpion, ATM, Profi, PLM
Automatica, Timex, etc.
- loading/saving tape from/to WAV, external line (via
sound card), saving tape to TZX
- other printers (then ZX Printer), RS-232
What is not planning at all:
- special installation pack.
- auto-update from the Internet.
- developing help system. All the functions should be simple and
main of them available to use by children from 4-6 years old.
See changes history
See also other my ZX-Spectrum 128K/48K emulators for DOS:
EMUZ, 1995. Written in C--. Source
found recently (2003) and published too.
Z.com, 2003, written in assembler.
Minimal by size (6K) but exact emulator (and playable) Spectrum-128K and 48K emulator.
Published with source code.