1.00 - april 2012
====
* New! Added the support of TZX tape files. Only standard data blocks via ROM hooks are supported atm.
* ZIP-compressed snaps/tapes/disks can now be directly loaded into ASCD
* Added the Recent Files list displaying 10 most recent snap/tape/disk files open
* FDI: Added correct emulation of Missing disk status
* FDI: Added correct emulation of Write protected disk status
* Added autofire option for joystick (-autofire switch)
* Open Tape/Snap menu option incorrectly offered only snapshot files in the filter list
* D3D: OSD (on-screen-display) has now black color when border color is 6 or 7 (yellow or white)
* Caps lock "fix" didn't work on many computers, so there is another fix in this version
* Added low pass filter to ZX Beeper audio -> better music quality in some games
* An OSD message is shown whenever DAC on IC 8255 is activated
* SAA1099 soundchip is now available in ZX Spectrum 48/128 mode too
* AY8910 soundchip is now available in Sam Coupé mode too
* AY8910 soundchip is responding on its ports even if audio emulation is off
* More precise attribute port 255 emulation
* Fixed AY8910 port decoding (thanks to Velesoft)
* Quickboot option is now configurable in config file and menu (it was always on)
* Fixed a bug in SCS loader which caused it to report a file error when a datablock is longer than expected
* Fixed problem with Sam Coupe Tab key behaviour after Alt+Tab 


0.98 final - april 2012
==========
* Sam: MODE 3 had switched palette entries 1 and 2
* Sam: MODEs 3 and 4 ignore VMPR bit 0 (this was missing)
* Sam: Better port access timings
* Fixed AY8910 deadlock bug (was caused by audio thread race condition)
* Added key shortcuts for floppy drives (F1, Shift+F1, F2, Shift+F2)
* Added variable emulation speed and shortcuts to control it (F3, F4)
* Added pause emulation option (available in menu and Ctrl+F3)
* Moved QuickSave shortcut from key F4 to F5
* Keyboard: Fixed caps lock problem
* Keyboard: Better mapping of symbols on PC keyboard to ZX Spectrum keyboard
* Video: Fixed palette problems in fullscreen mode when using DirectX 6 driver on Windows Vista and later
* Video: Fixed windows size after return from fullscreen to windowed mode when using DirectX 6 driver
* Video: User can now switch bilinear filtering (available in menu and Ctrl+F5)
* Audio: Many fixes in audio emulation and Win32 sound update routines
* Audio: Simplified DirectSound driver (because the support for old VXD drivers isn't needed anymore)
* Fixed ZX Printer's output, which was shifted one pixel
* Fixed minor incompatibility in kempston joystick emulation (top 3 bits were set instead of reset)
* Fiexd minor bug in ZXS48k quickboot (RAMTOP was set 1 byte less the correct value)
* Sam Coupé and ZXS 128k quickboots are now even faster
* Saving of SCS snapshots is now allowed in ZX SPectrum 48/128 modes as well
* Tape: Added VERIFY emulation to both ZXS and Sam modes
* Tape: Message "Press any key and start tape" is now skipped
* Tape: SAVE is faster on ZXS, because it doesn't wait 1 second after header anymore
* Tape: When a LOAD/VERIFY command is issued and no tape is inserted, user is asked to insert one


0.98 WIP 3 - march 2012
==========
* Added ROM patches to quickboot all machines :-)
* Added AVI recording feature - uses SCLS/MSUD/MJPG for video and MS-ADPCM for audio
* Updated to the latest Dave Hooper's SAASound library version
* Fixed: MouseStrobeTime was saved instead of LineNo in CPU structure of SCS file
* Fixed: EOF marker was missing when saving SCS snapshot
* Fixed: F4 QuickLoad falsely reported OK even when there was error when loading the snapshot


0.98 WIP 2 - march 2012
==========
* Sam Coupé Snapshots are now public; next goal is to implement AVI video file writer
* The snapshot code is still in development, now supported also for ZX Spectrum modes
* QuickSave/QuickLoad feature now uses new snapshot format in all modes, including air recording
* New file format for OpenAir recordings - files are now a lot smaller
* Sam: Added printer support (wasn't implemented in Windows version yet) - saves to printout.txt
* Sam: Improved floppy disk drive emulation, SAMDICE doesn't crash anymore, although it still doesn't work
* Sam: Improved mouse emulation code
* ZXS: Added support for 3x8bit DAC audio based on IC 8255 (ports 31,63,95,127 - MQM5 works :-))
* ZXS: Added support for Fullerbox AY audio (it's always turned on in ZXS 48/128k mode)
* ZXS: Added ZX Printer support - it saves the prints to zxprint.bmp file
* Z80: Fixed ADC HL,rr incorrectly setting N flag
* Z80: Added support for saving .z80 snapshot files (uncompressed 48KB only)
* Mouse was too fast, so it is set 2 times slower than before
* Changed contents of a disk images are now saved with a temp filename and then renamed back only if no error occurs


0.98 WIP 1 - march 2012
==========
* First public Win32 version - supports Windows 2000 and later, DirectX 6 (2D) and Direct3D 9 (3D)
* MS-DOS version is now officially dropped
* Updated to Visual C++ 2008 and Zlib 1.2.6
* Fixed many bugs in the emulation core
* Fixed Windows related bugs (especially in GUI)
* Added support for saving .sna snaps (both 48k and 128k)
* Added many items to Windows menu, but this is still quite incomplete
* Fixed wrong flash speed (it flashed every 25 frames, now it flashes every 16 frames)


0.97 - march 2003
====
* This is private (nonpublic) release for HCC Cup tournament
* We are moving to Windows!
* Fixed: uninitialized variable was used in fdi.c
* Files resource.c and resource.h renamed to cfg.cpp and cfg.h
* Huge changes in source code to strictly split platform dependent and platform independent code


0.96 - september 2002
====
* Public release of version 0.95 (see 0.95 notes below)
* WWW and e-mail addresses changed to www.keprt.cz and aley@keprt.cz respectively


0.95 - november 2001
====
* This version has never been publicly released (neither binaries nor sources).
* Many minor changes and fixes in source code, mostly just to get rid of C/C++ compiler warnings.
* AIR: upgraded to AIR 2A for forthcoming 6.HCC's Megaman Cup
* AIR: playback tries to find the needed disk/snap/tape file in the current, ascd.exe or ascd.exe/games directory
* AIR: when AIR is active, OSD is forced to display AIR SA codes & time info
* Fixed F6-F7 chaos (who did write this? - a hobgoblin in the source files?)
* version jumped to 0.95, because 0.91 thinks 0.92-0.94 are AIR 1B compliant
* Fixed a problem with ugly color pattern in 640x480 mode. It was caused by
  gcc's -O3 optimisations (gcc thought this is a good optimisation technique).
  I don't actually know what did I wrong, but I added a simple push-pop pair
  to the assembler code to let gcc do its "optimisations".
  I would never tracked this bug down without knowing the assembler, because
  I had to compare the compiled code with "how I wanted it" to find what
  was wrong - the C compiler "optimized" my code by throwing away one command!
  Note: There are now altogether 8 lines of assembler in ASCD! ;-)
* AY and SAA sources compared to the newest Mame 0.56. There are no changes
  in the parts which are utilised by ASCD, so we stay at Mame 0.37 beta 16.
* Simon Owen fixed a very old bug in floppy drive emulation, which caused problems when changing diskettes.
* Fixed (hopefully): Reset button sometimes didn't work.


0.91 - august 2001
====
* ascd.ini and ascd.log files are now saved to executable's directory
* fixed strange bug of 0.90 which caused ZXS/Sam reset after opening any file
* new .tap autoload strategy: Tape is autoloaded unless you specify different
  emulated computer model (i.e. -zx to suppress autoload at all).
* AIR: added SA codes support, F9 activates OSD message
* AIR: new slowdown detection - only +/- 5% speed difference is allowed
* some features are now disabled when using AIR: F2, F6, F9, mouse
* new switch -mon (system monitor)
* new switch -sam (Sam emulation mode, an opposite to -zx and -128)
* changed crt0 flags to keep ', " and \ characters in filenames (didn't work due
  to implicit C/C++ compiler's compatibility with Unix, which is now removed).
  Doublequotes must be now manually stripped off the filenames.
* different keyboard strategy: Both ctrl keys are used exclusively for joy fire,
  when emulation on arrows is active. When it is inactive, both ctrl keys are
  used for cntrl (Sam) or symbol shift (ZXS). Symbol shift is also mapped to alt.
* fdi.c - removed limit fof 10 sectors per track and disks can be now insterted
  in ZXS mode too, and they become accessible after switching to Sam mode
* minor changes to other source files
* AIR playback is now limited to versions 0.90-0.94 which have the same timing


0.90 final - august 2001
==========
changes to the previous WIP version:
* finally added main configuration file (ascd.ini)
* added fuller joystick supprt & joystick emulation on arrows+ctrl
* finished new joystick emulation layer, now any real joystick or arraws+ctrl
  can be mapped to any of kempston, sinclair 1/2, cursor or fuller joystick
* cursor emulation on arrows is automatically turned off when using arrows for
  another joystick emulation, also cntrl and symbol shift emulation on ctrl is
  turned off whenever ctrl is used for joystick emulation (fire)
* cursor joy on arrows doesn't use ctrl for fire, it is reserved for symbol-sh.
* kempston emulation is now also in Sam mode
* save tape emulation - configurable using -tape switch
* tape emulation is now also present in Sam mode, max.file size is 65533 bytes
* tape files are autoloaded in both ZX Spectrum and Sam Coupé mode
* note: you can use Mr.Copy+ or other copiers to copy files between .tap files
* note: first disk drive shares resources with tape files
* new (WIP2) keyboard driver seems to be the first ever without repeat-key
  problems, which prevented all older versions from any real usage
* fixed: sorting in file-open menu didn't work properly
* UPPERCASE filenames are converted to Lowercase in Windows' style 
* can load .fux files (Fuxoft Emulator snapshots) (24 registers + 49152 memory)
* fixed problem with audio buffers which caused crashes in plain DOS (hopefully)
* emulation mode can be now switched from main menu


0.90 WIP 2 - august 2001
==========
changes to the previous WIP version:
* massively reorganised source code (now use -include types.h when compiling)
* huge changes in keyboard emulation
* added Delete key handling (mapped to Shift+Backspace)
* US and UK keyboards combined together, use -uk switch to activate US keyboard
* huge changes in joystick emulation - now based on emulated->real connection
* huge optimizations of video emulation code - 2 to 4 times faster in all modes!

to do:
* ZX keyboard doesn't seem to be finished yet
* joystick emulation is in very basic stage - after rewriting it from WIP 1,
  it is now very poor, only emulating kempston on a real joystick


0.90 WIP 1 - july 2001
==========
what's new in this version:
* completely new audio emulation code - saa1099.c taken from Mame
* whole new graphics emulation code - now more compatible, more stable - based on Allegro
* completely new user interface - the old shit (surely written by an illman) has been
  strangely large and absolutely malfunctional (exe is now 20% smaller!)
* Sam disk images are autobooted - some people simply haven't know they should press F9 ;-)
  This feature is for sure turned on only for the very first disk image inserted.
* F10=save PCX screenshot, Ctrl+F10=save PCX screenshot with border (to a numbered file)
* F9=switch 50Hz sync on/off
* OSD (on-screen display) info when using F-key commands
* new smart "AutoScale" option to automatically switch between VGA-SVGA modes
  F5=switch scale (1x1-2x2), Ctrl+F5=switch autoscale feature (on/off)
* scanlines option in 640x480
* a bit reworked CPU emulation, and many other details with regard to get better stability
  and compatibility with several hosting hardware
* ROM images are loaded from exe's directory, not the current directory
* CPU (and now also audio) synchronization changed back to 50Hz
* heavily reworked CPU timing code
* timed beeper emulation - can now play music and speech correctly
* joystick emulation on real joystick (supporting whole Allegro set of joysticks)
* removed -lib_dir switch (not needed anymore)
* due to massive changes in system core, the emulator is now compatible with Windows NT/2000
* all files are now readed via zlib, so you can use gzip to pack ROM images, etc.
  (the only exception is .dsk, which is saved on-the-fly, so zlib is not applicable)
* new switch -pallines <num> to change emulation speed by altering number of PAL lines
* fixed: a very old bug, which caused errors in most upper line in mode 320x200
* fixed: emulator crashed when trying to format SAD image
* fixed: "write multiple sectors" disk command wrote only single sector
* note: many command line switches has been changed - type "ascd -help" for more information

what's new - ZX Spectrum specific (see also above for general news):
* ZX Spectrum 128 emulation - complete emulation with good CPU timing
* new switch -128 to start in ZX Spectrum 128 emulation mode
* added support of new 128k versions of .z80 and .sna snapshots
* added AY8910 sound emulation - ay8910.c taken from Mame
* port FF is now emulated more precisely, so games like Arkanoid started to work as well


0.82/AIR - apr 2001
========
* tournament version with AIR support and SA codes
* fixed many bugs in AIR library
* screen snapshots (Ctrl+F10) can be now done in all video modes
* yet more improved keyboard handler
* better stability (problems were seen in 0.80 and later)
* command line switch -rz renamed to -sa


0.81/AIR - apr 2001
========
* tournament version with AIR support and RZ codes
* improved keyboard handler
* new command line switches: -rz <number>, -record <file>, -playback <file>, -novesa


0.801 - jan 2001 (bugfix version)
=====
what's new in this release:
* fixed: ascd.log file was very long
* distributed in US and UK keyboard versions as before


0.80 - jan 2001
====
what's new in this release:
* renamed to ASCD aka. Aley's modified SimCoupe for DOS
* new command line option -audio <bool> (turns SAAemu audio on/off)
* SoundBlaster (digital) used for ZXS/Sam internal beeper
* SoundBlaster is autodetected (using SET BLASTER=A220 etc.)
* fixed PC speaker support for ZXS/Sam internal beeper
* fixed printer support (output to printer.out file)
* rewritten to support latest gcc 2.95 with incompatible inline asm
* fixed: SAA1099 audio emulation now uses A8 line
* improved 100Hz timing, now using hardware timer
* improved keyboard handler, but I'm not sure it really helped

what's new - ZX Spectrum emulation mode:
* new command line option -zx (ZX Spectrum emulation)
* Sam-ZXS modes are automatically switched as needed
* improved CPU emulation (3.5 MHz timing)
* improved beeper emulation (see above)
* proper i/o ports handling - border/keyboard (A0), kempston (A5-A7)
* loading and saving of .sna snapshots
* loading .z80 snapshots - all existing 48k file versions supported
* support for .z80.gz packed snapshots
* saving of .sna snapshots
* kempston joystick support (cursor keys + right ctrl)
* HCC Cup 5 compatible RZ codes (fair-play friendly snapshots)
