EmuZWin v2.5 release 2.54

(Ñ) by Vladimir Kladov, 2003-2004

I represent my ZX-Spectrum 128 and 48 emulator for Windows 95 / 98 / ME / NT / 2K / XP / Longhorn.

Still now, it is always possible to download most fresh version via following link: http://bonanzas.rinet.ru/EmuZWin.zip .Size of the archive is 700K. Additionally, it is possible to download archive, containing plugin sources, documentation on plugins creation etc. at: http://bonanzas.rinet.ru/zx/EmuZWin_Addons.zip

If you wish, you can download previous versions too:
v2.4: http://bonanzas.rinet.ru/EmuZWin24.zip     585K
v2.3: http://bonanzas.rinet.ru/EmuZWin23.zip     463K
v2.2: http://bonanzas.rinet.ru/EmuZWin22.zip     349K
v2.1: http://bonanzas.rinet.ru/EmuZWin21.zip     286K
v2.0: http://bonanzas.rinet.ru/EmuZWin20.zip     265K

At this time EmuZWin is one of the fastest and correct among other windowed emulators. It emulates Spectrum-48K/128K/+2/+2A/+3/Pentagon/Scorpion models, TR-DOS (TRD, SCL, Hobeta, FDI, TD0), Interface-I with Microdrive (MDR), supports most popular snap-formats (SNA, Z80, SLT), most popular tape formats (TAP, TZX, BLK), saving screenshots (SCR, BMP, PNG) and this list can be extended writing plugins. There is very convenient feature in the EmuZWin: reprogramming keyboard and joystick (it is possible to define which Spectrum keys/joystick are pressed by certain PC keys/joystick).

In version 2.3, MULTICOLOR support added for Spectrum48, 128, 128+2, 128+2A/+3 and Pentagon. Also, custom timing models can be adjusted, and timing model can be changed on fly. In the multicolor mode, EmuZWin works fast as well in non-multicolor mode.

In version 2.4, Support for 256 colors games added. All existing games (12) from the Web-site http://www.emulatronia.com/emusdaqui/spec256/index-eng.htm are supported, and some additional modes provided to allow GFX-ing other games. A power GFX-editor embedded which allows to turn almost any sprite-made game to 256-colors one. See also new 256 Colors games hosted by Arjun on his Web-site: http://www.arjun.150m.com/ZX256games.html . See also http://home.earthlink.net/~zx_makeovers/ for some 256 Colorizations under construction (preview snapshots etc.)

Other nice effects supported by the EmuZWin are: High Quality Magnification Filter, GigaScreen, Snow effect, Flip vertical.

PC Speaker can be used for sound output only under Windows9x/ME, and sound quality in such case is absolutely disgust (but still sufficient to recognize puck-puck in most games). By default DirectX used, and AY sound is emulated only through DirectX, with normal or fine quality. For code writers who think that he can do better sound, an optional capability added to redirect sound to custom-made plugin DLL (welcome!).

Video output in window mode uses GUI only, Direct-X used only in full-screen mode (and it is possible to use full-screen without Direct-X too). Under Windows98 the EmuZWin runs on Pentium100MHz in a window with 100% speed  of original Spectrum.

Kempston Joystick, Sinclair I (S-I only with real joystick), Sinclair II and Fuller Box joysticks - both real and emulated on the num pad of the PC keyboard (work when Num Lock is turned on). Additionally drawn keyboard can help to enter Basic commands in 48K mode. Also it allows to fix some keys pressed down while playing game (right mouse click on a key). Also, this keyboard can be useful while reprogramming keyboard for a game. EmuZWin also support three types of mouse: Kempston Mouse, AMX Mouse and AY Mouse used in some Spectrum software.

In version 2.3, MAP BUILDER added, which allows to... build maps :). Hope, this feature will be useful for adventure/quest games.

Working with the most formats (load and save snap-formats, load tape formats, load and save disk images) implemented via plugins, and the own format EZX supported natively, without plugins. Plugins should be located in the directory, where the application itself is placed. Documentation on writing plugins published, and if you wish, you can write your own plugins.

Also, plugins can be added for saving screenshot (File|Save screenshot, or F5) in different graphic formats. At least, plugins to save screenshot in SCR, BMP and PNG formats are provided in the distributive.

Pokes are loaded automatically from pok-file, named exactly as Spectrum file loaded, but with extension .pok. This file can be located anywhere in the directory where loaded file is from, or in any nested subdirectory (all subdirectories are listed recursively), or in ZIP-archive. Icons for trainers are assigned automatically when possible. If pokes are available after loading the state, a "smile" icon is appear on the toolbar (it is hidden if a tape is still reading, and opening pokes window at that time does not allow applying pokes anyway). It is possible to load external pok-file (File|Open Pokes...). In EZX format, pokes are stored in the EZX-file itself.

The default ROM image file Spectrum.rom, containing ROM 32K or 16K, must be located in the directory where the application is placed too. If its size is greater than 16K, then the first 16K are S128 ROM, and the second 16K are S48 ROM. Using command line option /ROM=path or selecting menu item File/New/Custom ROM Image, it is possible to select another ROM image.
TR-DOS ROM image should be located in TRDOS.ROM file, size is 16K, also in the directory where the application is installed. And the same is for Interface-I ROM image (file if1.rom, 8K).

The embedded power step-by-step and trace visual DEBUGGER can be used for different purposes. For me, it is useful to debug the emulator itself. Also, built-in Assembler and Disassembler are there, now very correct and sufficiently power.


SYSTEM REQUIREMENTS:


INSTALLATION INSTRUCTION

  1. 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.
  2. 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.
  3. 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.
  4. 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.

COMMAND-LINE OPTIONS

EmuzWin can be started e.g. from MS-DOS console using following command-line:

>EmuZWin.exe [option...] [filename]

Options available are:

/SOUND8 Force 8 bit per sample for Direct-X sound. Options configured applied therefore first.
/FAST Ignore "slow machine" reporting from OS. Has no effect in most.
/NOMMTIMER Has effect in synchronization. Not recommended.
/LOGFRAMES For debug purposes only. You should not use it.
/FULLSCREEN Start in full-screen.
/PAUSED Start paused (ignore registry settings).
/ROM=path Load ROM from certain directory or file when available.
/ESCEXIT Exit the emulator when ESCAPE pressed.

TROUBLESHOOTTING


There were not planned in 2.1, but possibly in 2.2/2.3/2.4:

What is not planning at all:


HISTORY

Version 2.5 Release 2.54  (8-Nov-2004):

[-] When 256-Colors game is loading in the EmuZWin running on Pentium without MMX supported, it is no more switching to 256 Colors mode (a game is loaded but in usual graphics mode, without GFX).
[-] Autonaming screenshot files fixed for case when save dialog turned off (images were saving to the same file).

Version 2.5 Release 2.53  (5-Nov-2004):

[*] A folder last time used to store screenshots (F5) now also stored in the registry.

Version 2.5 Release 2.52  (5-Nov-2004):

[-] Compatibility with Windows 95 restored (the emulator could not start at all under Windows 95, without any message). The EmuZWin still is compatible with Windows 95/98/ME/NT4/2000/XP/Longhorn.
[-] Speed synchronization fixed for case when no sound device is attached (there were about 200% speed always unless /NOMMTIMER key were specified).
[-] A problem fixed with pressing special key combinations such as Shift+' " ' and further releasing first Shift then special key ( e.g. ' " '  ): in result Spectrum key P left in "pressed" state and emulated machine received ' " ' infinitely until pressing P or ' " ' on keyboard.
[-] A problem fixed with pressing Ctrl + Shift in case when such combination is set to switch input language in the system (only last released key from those two were actually released in such case in Spectrum machine emulated, another (CapsShift or SymbolShift left still pressed until pressing it again).
[*] Small change in keyboard layout: now key ' ; ' is pressed without key Shift, but ' : ' with Shift, as it should.

Version 2.5 Release 2.51  (2-Nov-2004):

[-] GFX Editor fixed (Copy/Paste when view is less then 8 pixels, Multi-Column incorrect behavior).

Version 2.5 Release 2.5  (30-Oct-2004):

[-] DAA instruction fixed.
[-] Manual resize could crash the emulator, fixed.
[*] An option added AndMaskCF for 256 Colors mode emulation (AticAtac), to stop affecting this mode other 256 Color games (Knight Lore).
[*] GFX Editor improved a bit: less flickering and faster drawing.
[*] GFX Editor improved: Multi-Column edit mode added, to edit sprites, located in memory in columns rather then in lines.

Version 2.5 Release 2.4  (25-Oct-2004):

[-] When the background was changed in 256 Colors mode, it was not redrawn internally until something else were changed in Spectrum screen. Fixed, and now background (Bnn) is changed immediately.
[+] In the Palette Editor, Gamma editing added affecting entire palette.
[*] Small changes in 256 Colors mode emulation, to prevent GFX data loosing during sprite rotation (AticAtac).

Version 2.5 Release 2.3 post-fix (24-Oct-2004):

[-] Sprite Finder fixed (could crash the emulator scrolling to bottom in View All Banks mode in the GFX Editor).
[-] In GFX Editor, toolbar button Edit Palette could be unavailable under XP with Themes turned on.

Version 2.5 Release 2.2 post-FINAL (16-Oct-2004):

[-] A small pause added between TAP blocks while loading tape from .TAP image (otherwise some tape-disk copy progs could not work properly).
[*] Some improvements of file open dialog (Back/Forward in history, pressing char moves to a next file with correspondent name).
[*] Small change in work with joysticks: now these are captured only on switching joysticks on (Alt+J or Control | Joystick On), or if joysticks are set on permanently.
[-] A problem fixed with non-restoring usual mouse cursor when emulated prog uses mouse and reset Spectrum by itself (e.g. in result of Quit command in some disk commanders).
[-] Loading memory block in the Dubugger did not lead to update code listing immediately. Fixed.
[*] Small change in TR-DOS disk saving: now all the sectors are stored including containing all zeroes. There were possible problems with non-standard sized sectors.
[-] Loading files from Disk Browser via double-click or enter selected file in the catalog did not reset video page to 0. Fixed.
[-] Debugger was crashed when debugging step-by-step in 256 colors mode, fixed.
[-] A crush fixed which could occur when using Time 2 seconds back on some 256 colors games (with GFX Screen XOR buffer turned on, actually seems not used until now yet though).
[+] LoadFDI.dll, LoadTD0.dll are provided to load and save FDI, TD0 disk images (though TD0 is saved without compression).
[+] LoadZX.dll and LoadSP.dll are provided to load and save .ZX and .SP snapshots.
[*] Sprite Finder made available without switching to 256 Colors mode.
[-] Some fixes for 256 Colors mode emulation.
[+] Command line option /ESCEXIT added (if run with this option, ESCAPE exits the emulator immediately).

I assure Respected Users that development of new version does not stop, though and is slowed in view of my employment. I would not like to announce all the new features expected in version 2.6, but I enumerate it briefly: Covox, GS, RZX (possible), formats .UDI, .SLT, Net-Play. Estimated release of a version 2.6: December, 2004- February, 2005.

Version 2.5 Release 2.1 post-FINAL (3-Aug-2004):

[-] A bug in TR-DOS fixed: selecting absent disk and attempting to access it from spectrum program crashed the emulator.
[*] Small change in ports address decoding (mouse emulation even if not active were influenced INs from AY port FFFD). Sound in KAZ demo became better.
[*] Small change in AY emulation (demo DigiSID). Better AY+MIC mixing (Target Renegade 2).
[-] Problem fixed with not unloading LoadTRDOS.dll from memory when emulator finished.
[-] LoadZ80.dll fixed for case of old 48K only Z80 format (save and load).

Version 2.5 Release 2.0 FINAL (26-Jul-2004):

[-] Problem fixed with restoring AY chip state when .EZX-file loaded.
[-] When loading program which uses only MIC just after program using AY, sound (MIC) was a bit not correct. Fixed.
[*] More accurate changes in MIC sound while changing volume.
[-] When Configuration opened first time on the first page (Keyboard Mapping), the page was not correctly sized. Fixed.
[+] An option added in configuration: "Joystick on at start of emulator".
[-] When opening another file from anywhere while running program which uses mouse (AMX, Kempston or AY), mouse still did not released in full. Fixed.
[-] When switched to another app or to another interface dialog emulation of mouse was not stop. Fixed.
[*] Wait window with button Cancel added for Disassemble operation. While taking this long operation, IDLE priority set for the emulator process to allow other applications to work normally.
[*] Better Gigascreen: now the emulator desides more smart when to stop gigascreen effect.
[*] Better tape loading (TZX): now autostop/autostart works correctly at tone blocks (in most cases).
[*] Faster tape loading (TZX): most of frames are skept while loading with Fast Tape option on. 

Version 2.5 Release 1.9 (24-Jul-2004):

[-] Problem with no responding to mouse/keyboard when 100% of processor utilizied and system just can not switch to thread handling mouse/keyboard, finally fixed.
[*] Better Tape Load noise.
[-] (Re-)Loading disk in Disk Browser affected AY sound emulating at this time. Fixed
[-] AY sound could be garbled just after (re-)opening state (.ezx) especially if there were no AY sound there. Fixed
[-] Loading disk in Disk Browser from ZIP could sometimes crash the emulator. Fixed
[-] When loaded TR-DOS multipart game or demo which loads its parts from the disk, it could not sometimes continue next part (unless using timestamps and trying continue again). Fixed
[-] Writing to TR-DOS disk fixed.
[-] Small fix (one more, yes) in AY Sound Emulation (Exact Sound Emulation). At least one game affected: POLE.CHUDES (TR-DOS game).
[-] Possible trouble fixed while loading Autosave.ezx file with incorrectly stored TR-DOS disk image there (now message shown about it, but all other info loaded OK. In earlier versions, this could crash  the emulator and make system working unstable for some minutes).
[-] High Quality Magnification + Direct-X full screen + desktop resolution = True color - in such combination of conditions the emulator crashed switching from full screen to a window. Fixed.
[-] When sound on and speed 1% (with sound at 44KHz) or near, the emulator became not responding and locked the system for a long time. Fixed.

Version 2.5 Release 1.8 (21-Jul-2004):

[-] Some problems loading TZX-files fixed (could not possible to close Tape Browser while loading, or to stop emulator. Could not find next block to load).
[+] Tape Noise added (optional, and does not work on load if flash load/fast load are on).
[*] Small changes in smooth drawing. (Especially for case when sound off, but something changed for usual mode). Now increasing priority does nothing but increases smoothing in the synchronization (for speed 100% exactly 20ms are between frames).

Version 2.5 Release 1.7 (21-Jul-2004):

[-] Speed synchronization fixed for case when Exact Sound Emulation turned off.
[*] MIC sound made a bit quieter (when emulated via DirectX).
[-] MIC sound via PC Speaker restored (still for Windows 9x/ME only) and improved.
[+] An option added Another Chip which allows to change a bit AY sound in Exact Sound mode (worst it).AY sound quality improved for case of Exact Sound.
[+] A 3-state button added to the status bar of main emulator window near sound volume control to indicate/change stereo mode (ABC, ACB, Mono). Pressing in sound control but not on volume thumb moves this thumb at the position pressed changing sound volume directly.
[*] Global sound focus used with Direct-X Sound, so in most cases switching to another application will no more stop sound.
[+] Disk browser improved: it is possible now to open disks from ZIP-files (there are no check there if there are disks actually is in ZIP) and it is possible to re-open one of last 9 files (recent list provided).
[+] Debugger improved a bit: double click left mouse button in stack moves disassembly to a correspondent memory by an address found in the stack.
[-] Debugger fixed: P/V and X flags were exchanged visually.
[*] Tape Flash Load improved: if a block is loading with certain name, but blocks on the tape are not in the order required by the program, it is searched faster now.
[*] TR-DOS Load from Disk Browser (by double clicking file) improved: now it loads in most cases (USR 0 mode used, calling TR-DOS via RANDOMIZE USR 15616).
[+] Two options provided (in Miscellanous page of Configuration): 'Switch to Pentagon multicolor when load disk file' and 'Switch to appropriate multicolor when Model changed'. When loaded from .ezx-file, multicolor saved there is applied always.

Version 2.5 Release 1.6 (17-Jul-2004):

[-] Turning AY Sound off did not remove the sound at all (some rustle still were there). Fixed.
[-] Minor bug in AY Sound emulation fixed (really Exact Sound).
[+] An option added in Configuration: Disable screen saver while running.
[-] Emulator was crashed if hobeta-file was passed as a parameter in command-line. Fixed.
[-] Scrolling with keyboard keys in the Debugger in Decimal view - fixed.

Version 2.5 Release 1.5 (14-Jul-2004):

[-] There were no digital sound while emulating with speed greater then 200%. Fixed.
[-] There were no keyboard responce while emulating with speed higher some value (more then 400%). Fixed.
[-] Working with high speed (greater then 200%) was lowered down since  all the frames were tried to be drawn even when Allow Skip Frames was on - fixed.
[-] Separate turning MIC sound off did not work - fixed.
[-] Worst smooth draw in full screen then in earlier releases - fixed.
[*] Processor usage for smooth draw lowered a half, but without reducing smooth effect.
[-] Worst speed syncronization on speed low then 100% - fixed.
[-] Incorrect syncronization after pause if sound off - fixed.
[-] When mouse (AMX/Kempston/AY) was emulating, F3 did not work - fixed.
[-] When mouse (AMX/Kempston/AY) was emulating, (re-)loading another file (tape, snapshot) did not release mouse and it still were emulated affecting loaded game/demo and disallowing using mouse by the usual way. Fixed.
[-] DirectX full screen mode now available on more hardware.
[+] XP themes manifest provided.
[-] Drawn Keyboard property On Top now works perfectly: it is on top of all the emulator windows itselves, but until another app becomes active.
[-] Turning to 8 bit per sample in sound options crashed the emulator. Now fixed.
[*] The option Exact Sound Emulation made available again in Configuration to allow turn it off for very slow machines. Now EmuZWin can be run with some options turned off even on Pentium-100 with 100% speed.

Version 2.5 Release 1.4 (10-Jul-2004):

[-] 256 colors mode not worked - fixed.
[-] Working in windowed mode when desktop is set to 256 colors fixed.
[-] Working under Windows 9x was failing - fixed.
[-] Starting in system without sound card installed was failing - fixed.
[-] In the Debugger, command Run To End Of Frame - fixed for non-multicolor modes.
[-] When Record and Save Sound dialog cancelled, no more ambigous dialog appear.
[+] Special SmoothTiming.dll added, which provides more smooth drawing.
[+] New function (menu Tools) added: Enter Poke(s) and also capabilities to save pokes as .POK-file and to edit pokes as text (from Pokes dialog). Keyboard, Map Builder and Pokes moved to the Tools menu (from the View menu).

Version 2.5 Release 1.3 (5-Jul-2004):

[*] Smooth draw made much more smooth in windowed mode. Drawing is smoother even if Smooth draw option turned off.
[-] Smooth draw also provided for case when sound is off.
[-] Restoring Sound On/Off state from registry fixed.
[+] Command-line option /FULLSCREEN added to run initially in full-screen.

Version 2.5 Release 1.2 (3-Jul-2004):

[+] An option added to control sound frequency (8 to 44KHz) and bits per sample (8 or 16) to use with DirectX sound.
[*] Exact Sound Emulation optimized a lot to work fast even on slow machines, and correspondent option removed from Configuration: now exact sound emulation used always until 200% of speed emulation. Better MIC sound emulation.
[*] High Quality Magnification optimized a lot, and works now in Full-Screen with Direct-X too. Since HQM works only with MMX/SSE2, it is not enabled on older machines.
[*] Skipping frames made more smart and effective, so Refresh Rate manual control no more needed: Refresh Rate menu item removed together with its submenu, but Allow Skip Frames left for manual control there.
[*] Smooth Draw improved a lot, and works now especially smooth  in Full-Screen (both GUI and Direct-X).
[-] In the Debugger, loading memory block into ROM enabled too when Edit ROM option checked.

Version 2.5 Release 1.1 (16-Jun-2004):

[+] Flip Vertical now works also when Multicolor is off and High Quality Magnification is on.
[*] Some changes in Refresh frames control (in XP, only setting Refresh Rate to Maximum could help to make view more smooth and only sometimes, now this fixed).
[-] In Full-screen with Direct-X in some video resolutions led bar could appear at incorrect place - fixed.
[-] In Full-screen with Direct-X after increasing speed keyboard were not responding or responding very slow. Fixed.
[*] Option Allow Skip Frames works now better and tries to avoid skip frames whenever possible.
[+] An option Smooth Draw added both for GUI and Direct-X. It takes more CPU, but gives much smoother video emulation.
[+] For Full-screen with Direct-X, an option added: Synchronize with Vertical Blank. It has no effect if Smooth Draw or Allow Skip Frames options are turned on therefore.
[+] Hot keys added: Alt+H to switch High Quality Magnification on/off, Alt+G to swith Gigascreen effect on/off.

Version 2.5 Release 1.0 (10-Jun-2004):

    Map Builder
[*] In the Map Builder, mouse DblClick, keyboard keys Enter and Escape switch to the main window (a toolbar button also added). In the main toolbar, optional button added: Add Room to Map (also switches to Map Builder, visible when Map Builder is visible only and Map Builder button also is visible on the main toolbar).
    GFX Editor
[-] Gradient line and Select Rectangle tool working fixed for case when view direction is reverted to view memory from bottom to top.
[-] Magic & Fill tools are fixed for case when View Even/Odd bytes selected and for selecting in ROM area.
[-] Loading GFX-files (if a game was saved as .SNA or .Z80 snapshot with additional GFX files) fixed for case of 128K game: earlier, all separately saved GFX-banks were loaded, even which were stored in the main part correspondent to 48K image.
    Loading & Saving
[+] While loading from .EZX, tape state (playing, position) restored more carefully (if saved in a new version too).
[*] Loading from tape improved: flash-load works a bit better, and flash- and fast tape load also applied when Tape Browser is visible (but still not, if a Debugger is visible).
[*] An option added Reset Tape Position when Spectrum reset (turned off by default).
[-] Problems with autostart tape while loading .TAP fixed.
[*] Reporting Tape loader signatures no more used.
[+] Saving a snapshot(!) in .TAP format provided via plugin.
[+] Saving sound in .OUT format now possible (as well as tracing any ports output as described in .OUT format specification).
    Sound & Video
[-] AY Noise generation fixed.
[+] An option Double Loud Center Channel added in configuration (controls AY stereo).
[-] If there were no sound card installed, the Emulator could not start normally - fixed.
[-] Flip Vertical works correctly for all timing models now.  
[*] High Quality Magnification Filter optimized a bit (for speed) and fixed (right and bottom lines eliminated). Saving High Quality Magnification state in a registry provided.
[+] An option View|Refresh|Allow Skip Frames added (turned on by default), which prevents slowing down the Emulator when a lot of operations should be done while rendering video output (e.g. in GigaScreen, High Quality Magnification, 256 Colors modes).
[+] An option Show Led Status in Direct-X full-screen mode added (off by default), which controls if to show speed in Direct-X full-screen. Now this option not depends on Show Status option, which has effect in windowed modes only.
[-] Direct-X mode fixed and optimized a lot (especially for multicolor).
   Speed control
[-] Speed now fixed when sound is turned off or Direct-X sound not used.
[-] Selecting speed via Num[*] fixed in full-screen (this bug appeared in a previous release).
[*] Minimal possible custom speed is 1% now.
[+] An option Disable [desktop] animation effects while running added: to prevent sound "flicks" while minimizing/restoring windows while running the emulator. This option affects entire desktop but allows to hear continues music which otherwise is interrupted while working with other applications.
    Debugger & Assembler
[-] Keys shortcuts for commands in the Debugger stopped functioning in a previous release. Fixed.
[+] In the Debugger, operation added Run To End Of Frame.
[*] The Debugger is improved a bit: now difference between TState counter is shown any way (by modulo on TStates-per-frame), even on Step Over command and after any stop on breakpoint, not only after Step Into command.
[*] The Debugger now shown and brought to front when break point occur.
[*] The Assembler is improved a bit: now 3rd step used if it is necessary (if a label of EQU-defined value is changed on 2nd step, this allow to define dependant EQUs in any place in a source).
    Core & Hardware Emulation
[*] Menu item File|New renamed to File|Model and in most cases switching between models does not require now reset.
[+] Models added: Pentagon256/512, Scorpion256/1024, KAY256/1024, Profi256/512/768/1024, ATM1 512/1024, ATM-turbo2/turbo2+ 1024. For now, switching memory provided in most cases. Additional video-modes and working with additional ROM banks is not yet supported in full.
[-] Contention fixed for some instructions and for ports. Loading custom contention timing settings from a registry fixed (RAM bank 0 always became contended by error).
[*] Contention options changed: ULA Buffer now measered in TStates, parameter Border  Granularity added (on Pentagon, default granularity is 1 TState, so Rage demo works now as it should).
[-] Working with +2A/+3 model with TR-DOS also turned on - fixed.


Version 2.4 Release 1.1b (24-Apr-2004):

[+] AY noise pitch control added to the Configuration.


Version 2.4 Release 1.1 (23-Apr-2004):

[+] High Quality Magnification Filter added (in Effects). Implemented for GUI modes (not planned for Direct-X), not working at the same time with Gigascreen or 256 Color, MMX and power processor are required.
[+] Another sound emulation algorithm with really exact sound (both AY and MIC). More sound options (AY Pitch, MIC On).
[+] Volume control in the status bar added (can be turned off in the Configuration).
[+] Custom Speed in percents added (from 48% to 10000%, actual top of speed depends on a host machine speed and current modes/effects selected). And now, Num[*] switches between last set Custom Speed (Alt+S) and 100% Speed (by default between 200% and 100% as earlier).
[-] Interface I and TR-DOS were not compatible in multicolor mode - fixed.
[-] Multicolor +3 timing fixed (tables were incorrectly initialized, could crash the emulator).
[-] Changes in port recognision: port 7FFD assumed if out XXFD and XX could not be treated as AY port (Eyeache2 demo).
[-] When ROM paths were reset in the Configuration, the emulator could not start properly. Fixed.


Version 2.4 Release 1.0 (18-Apr-2004):

[*] A lot of changes in AY sound emulation. Now it should be very close to real sound (very hope).
[-] Decoding ports fixed (sat.z80).
[+] In the Debugger, AY registers are added.


Version 2.4 Release 0.9 (17-Apr-2004):

[*] Better AY sound quality. More sound options.

[*] Some changes in the Debugger interface (select ROM page, IFF1/IFF2/IM panels placement changed).
[-] Compatibility Interface-I and TR-DOS provided.
[+] Keys Page Up and Page Down on 101/102 keys keyboard are assigned to emulated joystick buttons Up and Down too.
[+] ROMs now can be configured in Configuration dialog (path, offset in file for each kind of ROM).
[-] Some instructions (OUT (C),A, again :( ) compiled in the Assembler incorrectly. Fixed.
[+] In the Assembler, Jump Back in History button added (a history of positions before Find, Find Again and Find Label via Double Click commands).
[*] In the Assembler, operation Find Label via Double Click improved and now allows fast jumping to an address in a text obtained using disassembler with an option 'Code in Comments'.
[+] While disassembling, an option added 'Call/Jump References', which adds comments with references to given address from another ones (e.g.: ; CALL from addr1, addr2, ... ; JP from ...)
[-] In the Map Builder, manual dragging frames fixed.
[-] Resizing width in GFX Editor fixed (could lead to crash sometimes).
[-] Changing multicolor timing model on fly could sometimes crash the emulator, fixed.
[+] Two options are added for 256 Colors mode: DownMixPaper and UpMixPaper.


Version 2.4 Release 0.8 (7-Apr-2004):

[-] Instructions INIR/OTIR fixed.
[+] Interface-I Microdrive support added (8 slots).
[*] While loading TR-DOS files from the main menu File|Open item, it is now possible to define which drive to use to load to (A:..D:) as well as while loading .MDR file which slot to use to load to (Slot 1..Slot 8).
[-] Small fix in 256 Colors start converting Wizard: initially GFX Nullify function did not work.
[+] A capability added to discard entire GFX memory and turn off 256 Colors mode emulating at all from GFX Nullify dialog (in GFX editor).
[+] More options to adjust horizontal grid lines in GFX Editor (it is possible now to anchor it to a certain line and it scroll in such case together with vertical scroll of pixels).


Version 2.4 Release 0.7 (5-Apr-2004):

[-] Reñognizing AY presence fixed in some games/demos (AY input port recornision changed to allow other ports then FFFDh).
[*] All the dialogs last used directory saved now in the registry, not open file dialog only.
[-] Reloading from ZIP-archive fixed after loading another file.
[+] Optional grid added to GFX Editor.
[*] In the Assembler, leading '$' character allowed to define hexadecimal numbers and also leading '%' character  (like in TASM - Telemark table-driven Assembler). These both are optional and can be turned off in Assembler Options (new) dialog.


Version 2.4 Release 0.6 (3-Apr-2004):

[+] Reading GFX files for 256 Colors mode directly from ZIP archive provided.
[*] A rule changed in the Assembler to define if a number is binary: 00101.B (a dot necessary, since B could be treated as a hexadecimal digit). Also, trailing .O added to define octal numbers and trailing .H or .D can be freely used for decimals and hexadecimals (though earlier rules still works for these two).
[-] In the GFX Editor, Fill and Magic Tool did not work in a backward direction mode selected. Fixed.
[*] In the GFX Editor, Fill and Magic Tool now fill on base of usual memory content if View GFX turned off and View Usual &Memory (16 colors) turned on only.
[+] In the GFX Editor, additional mode implemented: View All/Even/Odd Bytes. It is intended to colorizy easy games having sprites with mask stored near the sparite itself (in each odd byte e.g.)
[+] GFX Sprite Finder special window added.


Version 2.4 Release 0.5 (1-Apr-2004):

[+] Kempston Mouse, AMX Mouse and AY Mouse support added.
[+] GigaScreen effect support added.
[+] A small wizard added to start new 256 Colors project when a switch to 256 Colors mode selected for usual game.
[*] Maximizing now controlled in Proportional Resize mode to maximize staying proportional. Proportional Resize made default mode for a first launch of the emulator.
[*] Now Assembler understands binary numbers (e.g. 00010110B). Also, a directive FILE added to include external binary file. And, to allow defining where to search included files, a button Search Directories added to a toolbar.
[-] While loading 48K snapshots, video bank was never reset, so just after working in 128K mode it was possible that 48K snapshots stopped working (nothing was seen on screen). Fixed.
[+] A utility Bmp2RawBk256 added (in the additional archive), which allows to convert bitmaps to 256 Colors background file .bNN.


Version 2.4 Release 0.4 (27-Mar-2004):

[+] GFX Colors Replace/Exchange operation added in the GFX Editor.
[-] The instruction SLA (HL) fixed again :(.
[+] Fast go to label on double click on its reference in the Assembler added.
[+] Saving assembler text provided in EZX format as documented.
[+] A menu item Tools|LensLok added. It is enabled if the LensLok.exe found in startup directory, and just launches this utility.
[-] Letter 'Y' was drawn twice on the Keyboard, whereas 'I' was absent at all. Fixed.
[-] Just after switching to non-DirectX full screen mode spectrum screen could be not accurate centered over screen - fixed.
[+] A plugin interface and main menu items Record and Save Sound As and Stop Recording Sound/Video added to provide saving sound using external plugins. Also a plugin interface added which allows to play AY sound via external plugin, and correspondent changes made in the Configuration, where it is possible to select one of such plugins to output music.


Version 2.4 Release 0.3 (26-Mar-2004):

[*] Small changes in some instructions implementation in 256 Colors mode (for Three Weeks in Paradise).
[-] Arrows and other control keys pressing fixed in the Assembler window (there were problems when GFX Editor is shown).
[-] Working with Map Builder and saving its content fixed, while a game is in 256 Colors mode.
[*] Selection area changes now also are subjust to Undo/Redo in the GFX Editor.
[-] Magic Tool working fixed in the GFX Editor: it was filling selected area like Fill tool, though should not.


Version 2.4 Release 0.2 (25-Mar-2004):

[*] Small changes in some instructions implementation in 256 Colors mode (for Dizzy). Options Up/DownMixChangeBright changed from boolean to percents. An option OrderPaletteSignedBytes added to allow treating palette indeces ordered as signed integers from -128 to 127 rather then unsigned ones from 0 to 255 while comparing it in Leveled XOR/OR/AND operations.
[+] Fast trace mode added (checkbox update each 100 steps) in the Debugger Trace operation.
[-] Rare situation fixed: when playing in 256 Colors mode, after cancelling Open dialog it was not possible to continue playing in 256 Colors.
[+] Flashed attributes are taken into consideration in 256 Colors mode (now start menu in those 256 Color games which use it, work with flash).


Version 2.4 Release 0.1 (24-Mar-2004):

[+] 256 color games partial support added (MMX required). Now, those games can be loaded as usual SNA-files, and if so-named GFX-file is present in the folder, the emulator is switching to 256-colors mode automatically. Such games can be downloaded at: http://www.emulatronia.com/emusdaqui/spec256/download-eng.htm
[+] GFX Editor window, GFX Memory and GFX Registers panes added in the Debugger (can be shown via popup menu on main disassembly window). With GFX Editor, any (almost any, yes: games with vector grathics are not) can be made 256-color.

[+] File associations tab added to the Configuration. EZX files are associated ALWAYS as earlier, and a check made each time when the EmuZWin is started if this association is OK. Hobeta files (*.$B, *.$C) and all the other file types available to load via plugins are added to the list of files available for association always (but are not associated by default).
[*] Application icon changed :-)
[*] Toolbar icon click works now on left mouse button up rather then down (otherwise, left click was accepted also by another tray icon at that place).
[*] Main toolbar button Configuration made visible by default (initially).
[+] Autosave on exit / autoload autosaved on startup option added (turned on by default). Also, an option Start paused when autoloaded on startup added (turned off by default).
[+] Priority|High option added.
[+] One more new tape loading signature added.


Version 2.3 Release 1.99 (15-Mar-2004):

Fixes:
[-] Configuring toolbar buttons Disk Browser, Play/Stop Tape fixed.
[-] In the emulator, instruction SLA (HL) fixed.
[-] In the assembler, hexadecimals not starting with 0 but finishing 'H' are always treated as hexadecimal numbers (e.g. D000H).
[-] Problems are fixed with resizing to a size smaller then 256x192 (in Multicolor On mode,the emulator was crashed).
[-] Loading some TZX files fixed (those were loaded correctly in version 2.1, but in version 2.2 a parameter DoublePilot was stopped to pass to a plugin normally). And loading of some other TZX files which were not loaded at all fixed (La Abadia del Crimen).
[-] Extracting some files having long names or containing spaces from ZIP archives using PKUNZIP fixed. See also about new PkUnZip.dll plugin below.
[-] Pressing Shift+letter without releasing Shift key was a problem, fixed. Releasing numpad key while emulating joystick fixed (one released key could release other yet pressed).
[-] Applying multicolor timing settings when a file is opened, fixed. Settings for Pentagon multicolor timing are corrected.

Changes:
[*] ESCAPE pauses the emulator if it is not yet paused, and minimizes it to tray if it is already paused. So to minimize to tray, press ESCAPE twice.
[*] Status bar visibility is stored in the registry and restored in the next session from the last one.
[*] Cursor changed now to specially shaped on a position where it is possible to set / remove a breakpoint in the Debugger and Tape Browser, and when click will lead to change view memory address (Ctrl-click at the address in the disassembled code, click on a registry).
[+] FullScreen without DirectX mode added. In the Configuration, uncheck a box "Use DirectX in Fill-Screen", and going to full screen and back to normal windowed mode becomes extremely fast. This mode is recommended on fast machines and also if there are some problems using Direct-X in the EmuzWin on your PC.
[*] For DirectSound, smaller buffer used to produce sound. Sound for 50% and 200% speed made more crefully.
[*] Display magnification can be increased up to 4:1 using Alt+Num[+].
[*] On start, size and position is restored to the last known when the window was in normal state (not full screen and not maximized).
[*] Reporting new unknown tape loading signature procedure works more carefully to decide if this actually is a tape loading code or something else, before suggesting to send a e-mail with new unknown tape loading procedure. 2 new loading signatures are added to a list of known signatures.
[*] While loading tape, time stamper now does not work saving state each 2 seconds.
[*] EZX format now compressed using great DIUCL library (by Ralf Junker), which uses the same compression which is used in popular executables compressor UPX. Old saves are read with no problem, and it is possible to turn compression off for saving new EZX too.
[+] PkUnZip.dll plugin provided which allows to extract files from Zip archives more correct then using old pkunzip.exe utility. If this plugin is found in the emulator directory, it is used always, so no more necessary to provide a path to pkunzip.exe or download it from somewhere.
[*] Keyboard is redrawn.
[*] Stay On Top Transparent menu item moved to Effects.

Version 2.3 Release 1.7 (3-Mar-2004): Fixes:

[-] Urgent: Multicolor fixed.
[-] /PAUSED command line option fixed.

Version 2.3 Release 1.6 (2-Mar-2004): Fixes:

[*] Right mouse click on tray icon when the Emulator is minimized to tray, pops up a menu now (with Exit and Restore items) rather then just restore the program from the tray.
[*] All pressed keys are unpressed when time 2 seconds back or time 2 seconds forward command applied.
[*] When ENTER pressed in paused state, this also resumes the emulation.
[-] Main window caption assigning fixed when e.g. state was reloaded from drop-down menu.
[-] Loading Pokes fixed for games loaded from tapes or ZIP-archives.
[-] TR-DOS fixed: now index impulse generated periodically, so Speccy programs which use it to detect disk presence, should work. Loading another TR-DOS disk image (TRD, SCL, Set of Hobeta files) from the main menu/toolbar fixed. Fast Disk mode loading fixed, so DCU program detects disk normally in Fast Disk Mode. Disk works now much faster in Fast Disk mode when the Disk Browser is shown. Restoring the Disk Browser window position from the last session fixed. Selecting disk typing disk letter in a unit selection combo box now possible, all other char input is ignored in this field.
[-] Program crash was possible on exit, when Disk Browser was shown. Fixed.
[-] When "48 BASIC" menu item was selected in the Spectrum menu, following Reset were to 48 Basic again. Fixed.
[*] When Reset, ROM image does not restored now, so if you changed it (by assembling or manual editing), it is preserved. But if one of the items New|Spectrum128 / New|Spectrum48 / New|Custom ROM selected from the menu, the ROM is reloaded to selected one.
[-] In the Assembler, OUTI instruction fixed.Duplicating system labels fixed.
[*] In the Disassembler, symbol '-' replaced with '_' in system labels. A capability to switch on/off system and/or user labels added while selecting disassembling options.
[+] In the main toolbar, buttons added: Debugger and Multicolor (invisible initially).

Version 2.3 Release 1.5 (28-Feb-2004): Some small improvements:

[+] The TAB key can be used as the FIRE button for joystick, together with numpad keyboard keys as earlier.
[*] LoadSNA plugin now sets ROM page to ROM48 bank when 48K state is loaded (no needs to switch to 48K mode manually).
[+] A capability added to Disassemble a range of memory as code or data block (DEFB, DEFW or DEFB with ASCII strings) and to store result as text (resulting text is inserted into the Assembler listing and then can be saved, copied, etc.) Also, the Assembler is improved a bit to allow compiling text from the disassemble directly without changes (e.g., the second argument in brackets treated as a comment always, so INC (IX+40H,2357H) can be compiled normally as INC (IX+40H) ). And, the Assembler works much faster now. Also, a service command added (drop-down toolbar button) to set PC in the emulator/debugger to one of ORGed addresses.
[-] Some bugs are fixed in the Assembler (instructions OUT (C),A; INC/DEC (IX/IY+offset); LD IX/IY,word were not understanded/compiled correctly).
[+] A capability added to edit ROM directly or while assembling (a button Allow Edit ROM added in the debugger, and a question asked to switch this mode on while assembling).
[+] Time Stamper added. When it is turned on (File|Time Back|Time History Enabled, enabled by default), with one of key combinations from ALT+< / Alt+>, Alt+LEFT / Alt+RIGHT, Alt+NUM4 / Alt+NUM6 (the last two when numlock is on) or with correspondent toolbar buttons it is possible to shift time 2 seconds back/forward (a lot of time stamps to go back in time can be available, from several minutes to several hours in deep, depending on a certain game). This feature requires up to 40Mbytes of free space on your hard disk for temporary files, if enabled.
[*] Now screen redrawn immediately in multicolor mode too, when a state loaded in "paused" emulator.
[*] Icons in menu now resized to smaller size to fit place available.
[*] Main toolbar now is configurable: it is possible to define which buttons to show. Additional buttons added to the toolbar: Reset, Disk Browser, Full Screen, Configuration (by default, these four hidden), and also Time 2 seconds Back and Time 2 seconds Forward.
[*] Display size is changed now with Alt+Num[+]/Alt+Num[-], rather then just Num[+]/Num[-] as earlier.

Version 2.3 Release 1.3 (15-Feb-2004): Some bug fixes:

[-] In main window, View|Toolbar did not work
[-] Z80 load and save plugin fixed. Save did not work correctly at all (PC was written at place where SP should be stored, some bugs in compression algorithm implementation were found). Load fixed especially for case of loading 48K games in 128K mode.
[-] Bug fixed in Load Memory Block dialog (called from the Debugger): when [<>] button was pressed to find first difference, and blocks were identical, the emulator were getting caught in an endless loop.
[-] Some problems fixed with loading states having some dirty data in advanced fields (such as "tacts from the last int" in Z80).

Version 2.3 Release 1.1 Beta (8-Dec-2003): Multicolor support added (contended memory and ports, exact byte-aligned video output of the screen and the border, snow effect emulation, IN FF emulation, switching timing model between 48, 128, 128+2, 128+2A/+3, Pentagon and Custom on fly, adjusting timing configuration, saving/restoring it in EZX save format). Save screenshot capability added (File|Save screenshot, or F5). Map Builder added.

Here is a history of Alpha builds of the version 2.3:

1.0.B - storing MC settings in EZX format implemented, new chunk type 'MULT' added to the EZX format.

1.0.A - save screen shot (F5) added (plugins extendable). Load from ZIP using PKUNZIP fixed. Open recent list (up to 9 files) added. Crash on exit fixed (seems). Reanimate option added (by suggestion of Alex Medvedev).

1.0.9 - crash fixed (when debugger is closed and emulator works in MC). Snow effect controlled by the config now (and by default it is off for +2A/+3/Pentagon). Port recognision works now better (LD A,XX; OUT (FD) now works in most cases correctly).

1.0.8 - Loading TZX fixed in MC. Sealing of some ZX keys pressed with SHIFT+correspondent PC key (",:,+,<,>,{,},|) fixed. Open by F3 fixed for full-screen mode (now slow but mostly correct). IN FF for MC implemented. Bug Z80 with LD A,R / LD A,I (when IntSignal ON, but except after EI) - implemented (for MC). Also, snow effect (bug in ULA) implemented, now for for all Timing models including +2A/+3 (later will be configurable and by default off for +2A/+3).

1.0.7 - DirectX output (full screen mode), configs are reworked. Status bar added (leds in full screen) with speed % and FPS.

1.0.6 - fixed TR-DOS off with multicolor

1.0.5 - first (ugly) configuration for MC, View | Effects | Flip Vertical

1.0.4 - optimized MC for +2A/+3, some configurations added, Show Border Only (in the Debugger)

1.0.3 - optimized MC for 48, 128, +2

1.0.2 - menu settings for MC

1.0.1 - dirty multicolor (MC) mode


Version 2.2 Release 1.0 (3-Nov-2003):
[+]TR-DOS support added. Formats supported are TRD, SCL, Hobeta (.$?). Direct loading certain HoBeta-file (or file, selected in Disk Browser, ALT+D), Magic Button (ALT+M), boot from the disk A: (ALT+B). The Disk Browser has a set of utilities to work with TR-DOS-disks (creation, loading, saving disks; deleting and renaming files; squeeze; saving selecting files in HoBeta-format, adding HoBeta-files to the disk, including using drag'n'drop from the explorer). The EZX format is extended (chunks ÷óíêè DISK, BETA, PRVW are added), and interface with plugins is extended (compatibility is preserved with the existing).

[+]Some small changes in the interface. File|New|Spectrum48K now locks the emulator in emulating 48K machine only, until File|New|Spectrum128K or Custom ROM image, containing 128K ROM image. Double click with right mouse button does not switches to full screen mode, only double click with left mouse button (right mouse button is used to pause/resume emulation only). Configurations window can be called separately from the main menu or by key combination Alt+C. In the Debugger, disassembled code can be now scrolled with the mouse wheel or with the scroll thumb as usual. Tooltips in the Debugger's top toolbar can be turned off (right click in the toolbar). In the Open Dialog a button added to go up to the parent folder. Some icons are changed on toolbars.

[-]Serios corrections in the built-in Assembler (a lot of instructions were compiled incorrectly).

[+]A list of all available instructions is available now in Assembler window. Labels list is available in a separate window. User labels are shown in the debugger (which also became better).

[-]A lot of small fixes in the emulation. Debugger problem with F7/F8 keys (when pressed often) seems fixed.


V2.1 Release 8.0 (21-Sep-2003): Assembler fixed again.

V2.1 Release 7.0 (13-Sep-2003): Assembler fixed.

V2.1 Release 6.0 (17-July-2003): Assembler window added.

V2.1 Release 5.0 (15-Jun-2003): Some fixes and improvements in Debugger:
[+] Search by text, including case insensitive, added.
[-] Crash fixed when search window closed without setting any search pattern.
[-] Ctrl+F and other keys now work correctly in the Debugger.

V2.1 Release 4.0 (27-May-2003): Some small improvements:
[+] In windowed mode, main display can be easy dragged over desktop using left mouse button on the main display.
[*] For slow machines (detected as 386, 486 or Pentium, below then Pentium II or Pertium Pro) exact sound synchronization is turned off. A command line option /FAST added to ignore slow machine detection (all machines are treated as fast, since the sound synchronization is always on).
[+] Application priority can be changed between Normal/Above Normal using menu (useful to hear non-interraptable music in the background while a processor is very busy with other tasks).
[=] Going to full-screen mode when the main window is maximized and returning back to windowed mode fixed (if it was maximized, it restored first).
[-] Scrolling fixed in keyboard remapping (Configuration dialog).
[-] Direct Sound and Joysticks initialization begin now when main window is shown already. This makes startup faster a bit.
[=] Dropping ZIP-files on the main form fixed.

V2.1 Release 3.0 (27-May-2003): Tape loader improved: Flash load added, Auto Play/Stop tape option added. When Tape Catalog is visible, this does not prevent tape from fast loading as earlier. Append tape fixed and improvied (a little bit: -------- line added before block appended). SNA format handling changed a bit: when 48K sna loaded, last value popped from the stack, replaced there by 0000; when 48K state is saved and SP < 4002, 128K sna format forced. Pokes form fixed (bad scroll, bad images).

V2.1 Release 2.0 (26-May-2003): TZX loader improved, thanks to Alexander Medvedev for a bug report. Z80 loader fixed, thanks to Mark Woodmass for a bug report on it. About window and header both show version 2.1 now as it should. Some fixes and small improvements in debugger.

V2.1 Release 1.0 (24-May-2003): Full-screen mode added, with Direct-X used. (Alt+Enter, or double click on the main window). Right mouse click on the main window can be used to pause/resume the emulator. In full screen, menu and toolbar are not available, but all shortcut key combinations are still functioning. Opening any other window switches mode from full screen to normal one. Num[ + ] and Num[ - ] are used in full-screen mode to change scale for full-screen only. Options added: Interlaced in Full Screen (Alt+I) and Normal Refresh Rate in Full Screen (default true).
    Real PC Joysticks support added. It is possible to use one or two joysticks (in latter case assigned to Kempston / Sinclair-I / Sinclair-II / Fuller Box / Cursor). Both joysticks can be remapped to ZX keys as usual, using Remapping Keys feature. Before using it, joystick(s) should be turned on (via Alt+J, or menu, or Configuration dialog).


V2.0 Final release F1.5 (20-May-2003): Sound buffer made larger, so sound becomes more stable when PC is busy with other tasks, or window is resized or moved over desktop.

V2.0 Final release F1.4 (19-May-2003): Append tape operation was broken, fixed. After stopping tape Play button was not enabled in some cases, fixed. Now it is possible to set break points on tape block load using mouse left click at the icon area. Long loading process (TZX can be cancelled now).
    Pokes were not loaded from ZIP, fixed.
    More safe: now toolbar and main menu are not available while decoding file selected to open (this are enabled again when tape load process started or snap-file is loaded). Also, PC keyboard is ignored while entering ZX key via keyboard window shown modal in Key remapping dialog.
    More convenient: when Preview is on in the Open dialog, smiling face icon is shown in top-right corner indicating that POKes are available for a file (if any).

V2.0 Final release F1.3 (18-May-2003): Fast LDIR/LDDR/CPIR/CPDR emulation added (true by defaut, can be turned off for a certain game or by default, though it does not affect emulation accuracy at all).
    Video output optimized more, and own stretching procedure used, which speeds up stretched output.
    Pressing ALT resumed the emulator, fixed. Now any key press when keyboard window focused, pass focus to the main window in Keyboard Transparent mode.
    Restoring main window position to (0,0) did not occur, fixed. Also if the main emulator window positioned above desktop for less then 30 pixels, it does not repositioned to the top on start.
    When EZX was loading from ZIP, pokes and key and color remappings were not loaded from EZX itself, fixed.
    Some small enchancements in the interface (own semi-transparent cursor over main window, collecting current folder and storing it in the registry when Open Dialog closed, Small Keyboard window mode).

V2.0 Final release F1.25 (15-May-2003): Slow video output under Windows 98 (when size was not 1x1) fixed.

V2.0 Final release F1.2 (15-May-2003): A bug with application crash on termination if another speed was used then 100% and another refresh rate was used then 50 frames/second, fixed. A bug with application failure if while working with configuration dialog (key remapping) a key was pressed, which might resume the emulation, so auto-resuming now is disabled while configuration window is visible.
    Small improvement: emulation speed can be switched between 50% and 800% using Alt+Num[ * ], in addition to Num[ * ] used as earlier to switch between 100% and 200%. Small change: now toolbar button with "flare" sign is hold checked down when any speed selected greater then 100%.
    Video output is much smoother now for case when display size is other then 1x1 or 2x2. Also, an option Proportional Size added (available via menu View|Proportional Size).

V2.0 Final release F1.1 (13-May-2003): Removing keyboard remappings (specifying empty values for PC key and for both ZX keys) was leading to crash, fixed. Loading POK-file when tape was not loading yet was lead to crash, fixed. Pressing keys 'P', 'O', 'K', 'T' was not leading to resume from paused state, fixed. Path to root folder accessed last in Open Dialog was not used as default on restart the emulator, fixed. Keyboard settings Transparent and Stay On Top were not restored perfectly on restart, fixed.
    Note about "final" word. This means mainly that new features or serious changes are not planned, but bugs will be fixed as soon as possible.

V2.0 Final release F1 (11-May-2003): ZIP file support provided (pkunzip.exe used, not in the distributive).
    Association with EZX-files added (done automatically when the emulator started each time).
    Now EZX is loaded exactly in the same state as it was saved, e.g., it is possible now to continue loading tape if a state was saved while loading from the tape.
     Tokens in block names are partially supported in Tape Browser window.
    If Open Dialog is called while loading from tape, previewing screens of other snapshots does not clear tape content now, so if the Open Dilog cancelled, tape loading can be continued.
    Position and size of Tape Catalog, Open Dialog, and position of Game Configuration windows also stored in the registry. Folders, selected in Open Dialog using Browse key or entered manually also stored in registry (maximum 10).
    On Escape, the emulator now minimized to tray without animation (fast).
    Key PAUSE also pauses now the application (but it is ignored to resume it).
    Main window can not be increased now to triple size using key Num[ + ], if current desktop less then 768 pixels in height.
    A lot of other small changes.

Beta release B10 (8-May-2003): Colors mapping added. Key mapping improved (loop, fixed, auto-up implemented, enter key name by pressing it added). Some bugs with pokes fixed. Some improvements for Debugger (e.g. code disassembled immediately when RAM or ROM bank changed manually). Small fix in Open dialog: preview now always refreshed if the dialog opened again.
  Most impotant settings are stored now in the registry.

Beta release B9 (7-May-2003): Key mapping added. It is now possible to redefine keys for a game on the emulator level, and even define fixed, auto-up or looping keys. Keyboard layout window inmproved: now it can be "on top" of main form, transparent (in Win2K or XP), and drawing faster. EZX format changed a bit (chunk 'KEYS'), but this does not effect already saved states.

Beta release B8 (5-May-2003): Display refresh rate options added (accessible by menu): Max(50 frames/emulated sec), Normal (50 frames/real sec), Slower (25 frames/real sec), Rare (10 frames/real sec). With Slower refresh rate emulation is faster on slow machines. Sinclair II turned now off automatically whenever reading from port 1F (Kempston) detected.
  Keyboard layout window positioning changed to fit desktop and to place near the main form when shown.
  Pokes (.pok-files) support added, with automatic iconization (!).
  Append of tape image fixed.
B8.a: Menu command File|Open Pokes... added. In the EZX, pokes are stored internally and loaded together with the file.
  Crash on close fixed.

Beta release B7 (3-May-2003): Toolbar added, with tape loading progress bar. Tape loader now always starts from typing LOAD "" in 48K Basic automatically, rather then from 128K tape loader. Sound now synchronized more accurately (less or no artefacts while playing with 100%, 50% or 200% speed). Key option /NoMMTimer added to disable exact synchronization (worst). Some fixes in sound (both AY and MIC), tape loading, port recognition, interface, Z80 emulation. EZX format changed to provide later capability to load exact tape loading state, signature changed to prevent loading earlier saved EZX-files. You will need earlier version of EmuZWin to load older EZX files!

Beta release B6 (30-Apr-2003): AY sound improved a lot. Simplified port selection scheme added, it is turned on automatically when first time attempt to access incorrect port detected. Int generating fixed. Z80 format loader fixed (3.0 for case when it contins non-compressed memory banks) and saving to Z80 format added.

Beta release B5 (29-Apr-2003): Automated report tool added to provide me with feedback about finding unknowntape loader signatures. Drag files on the main window accepted. Some more fixes in sound.

Beta release B4 (28-Apr-2003): Fast tape load now is really FAST even for protected loaders (TZX). Automated report tool added to provide me with feedback about finding unknown loader signatures. Some fixes in sound. Command-line options added: /Sound8 and /SoundExclusive.

Beta release B3 (27-Apr-2003): Fixes in: AY sound emulation, OUTD/OTDR/OUTI/OTIR instructions, some interface improvements, a bit faster tape loading.

Beta release B2 (25-Apr-2003): SpeedLock1 and 2 loading fixed (TZX). IN FF implemented (required by some games for synchronization). AY sound emulation added.

Beta release B1 (22-Apr-2003): Video output optimized for 32bit and 24bit display color depth too (earlier versions worked good only with color depth 16bit).

pre-beta pre-release 10 (21-Apr-2003): Fixes to yesterday fixes, all (I hope) TZX files loaded normally.

pre-beta pre-release 9 (20-Apr-2003): Some more fixes, mainly in TZX format loading (but not yet completed).

pre-beta pre-release 8 (19-Apr-2003): Command line option /ROM= and File menu item File/New/Custom ROM Image added to simplify another ROM selection. Option /9x allows to select emulation mode the same as under Windows 9x (this affects memory usage and emulation algorithm). Option /PAUSED allows to start emulator initially paused. Some improvements of Debugger, some fixes in command emulation (flags, T-states). But speedlock-protected TZX-files still could not be loaded.

pre-beta pre-release 7 (16-Apr-2003): Emulating RLD/RRD instructions fixed, tact length for instructions having (IX+offset), (IY+offset) fixed. MIC sound become better since this change (I hope).
7.1: DAA instruction fixed.

pre-beta pre-release 6 (16-Apr-2003): Loading from TAP and partially from TZX fixed. Saving SNA under 9x/ME/XP fiixed. Debugger under 9x/ME/XP fixed (could not reset breakpoints, and those did not work). Key combination ALT+K added to call keyboard.


http://bonanzas.rinet.ru

mailto: bonanzas@online.sinor.ru

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.