 ============================== 	     Amstrad CPC emulator
==--####----------------------::	    for DOS, DPMI and WIN32
==-##..##---------------------::
==##.--..######---------------::	 (C) Cesar Nicolas Gonzalez /
==##-----.##..##--------------::	CNGSOFT (01.08.1997-12.12.2005)
==##------##--##--####--------::
==.##--##-#####.-##..##-------::	   http://cpce.emuunlim.com
==-.####.-##...-##.--..#######::
==--....--##----##-----.##...#::	     ##      ######  #####
==-------####---##------##-#-.::	    ###      ##...# ##...##
==-------....---.##--##-####--::	    .##      ##   . ##	###
==---------------.####.-##.#--::	     ##      #####  ## #.##
==----------------....--##-.-#::	     ##      ....## ###. ##
==---------------------#######::	     ##   ## ##  ## ##.  ##
==---------------------.......::	   ###### ## .####. .#####.
 :::::::::::::::::::::::::::::: 	   ...... ..  ....   .....

0.- Index
=========

	1.- Copyright and warranty
	2.- Requirements and installation
	3.- Configuration
	4.- Usage of CPCE
		4.1.- YMP
		4.2.- CSW, LPTCPC, LPTREC and LPTPC
	5.- Acknowledgements
	6.- Registered marks
	7.- History of CPCE

1.- Copyright and warranty
==========================

	CPCE was developed by me, Cesar Nicolas Gonzalez (CNGSOFT).

	CPCE is Freeware. Shareware distributors can distribute it if
they only take fee for copying. Software and documentation are provided
"as is" with no warranty. CPCE is not Public Domain. I retain the
copyright.

	CPC ROMs are (C) Amstrad and Locomotive Software, who gave
permission to distribute them within CPCE.

2.- Requirements and installation
=================================

	CPCE features three different executable files:

	-CPCE.EXE (DOS) requires i286 CPU, VGA graphics and DOS 3.0. It
supports SVGA graphics, joysticks and SoundBlaster sound cards.
	-CPCE32.EXE (DPMI, DOS protected mode interface) requires i386
CPU, VGA graphics and DOS 3.0; it also requires a DPMI extender such as
CWSDPMI under pure DOS. It supports SVGA graphics, joysticks and
SoundBlaster sound cards.
	-CPCE95.EXE (WIN32) requires i386 CPU, VGA graphics and Windows
95. It supports SVGA graphics, joystick and most digital sound cards.

	Compatibility and performance depend of the computer. CPCE.EXE
is the best choice for very old CPUs (286, slow 386), CPCE32.EXE is
better than CPCE.EXE in newer CPUs (486, Pentiums...), and CPCE95.EXE
features the advantages and disadvantages of softwares for Windows.

	CPCE is easily installed; just unpack the main ZIP file into a
folder. The ZIP file contains a folder structure that most unpackers
will build correctly, otherwise you'll have to do it by yourself.
The folder structure is as follows:
	CSW.COM (CSW utility)
	CPCE.EXE (DOS executable)
	CPCE.INI (configuration file)
	CPCE.TXT (this text file)
	CPCE32.EXE (DPMI executable)
	CPCE95.EXE (WIN32 executable)
	DISC\ (disc files folder)
	FILE\ (raw files folder)
	FILE_ID.DIZ (description file for BBS and FTP)
	LPTCPC.BAS (LPTCPC utility)
	LPTPC.COM (LPTPC utility)
	LPTREC.BAS (LPTREC utility)
	ROM\ (ROMs folder)
	ROM\CPC464.ROM (CPC 464 ROM file)
	ROM\CPC6128.ROM (CPC 6128 ROM file)
	ROM\CPC664.ROM (CPC 664 ROM file)
	ROM\CPCADOS.ROM (CPC AMSDOS ROM file)
	SNAP\ (snapshots folder)
	TAPE\ (tape files folder)
	YMP.EXE (YMP for DOS)
	YMP32.EXE (YMP for DPMI)
	YMP95.EXE (YMP for WIN32)

3.- Configuration
=================

	Configuration of CPCE may be done in two ways. The first one is
based on a configuration file, CPCE.INI, read by the emulator while
loading. The second one is the command line, where parameters may be
entered when launching the emulator.

	CPCE.INI is a text file whose lines feature the syntax
OPTION=VALUE; the value may be a number, a path or a file name. Lines
beginning with the semicolon (";") are ignored. Command line parameters
are preceded with a slash ("/") and may require a number, a plus ("+")
or a minus ("-"). Options are first read from the configuration file,
allowing command line parameters to override their values.

	Command line parameters are listed with the equivalent options;
boolean options are specified with "0" and "-" as FALSE, and "1" and
"+" as TRUE.

	-DEBUG=<0..1> - /d[+/-]: Debug mode. Enable it to study the
inner working of the emulator: microprocessor operations and registers,
memory contents, etc. Its usage is explained in the next chapter.
	-HI-RES=<0..1> - /h[+/-]: Hi-res mode. When disabled, the
emulator requires less machine power, but emulation quality becomes
simpler and may become buggy. When enabled, emulation is accurate, but
more processing time is required.
	-FRAMESKIP=<0..9> - /r<0..9>: Frame skip. Increase the value to
save machine power and get extra speed, but animation will lose
smoothness and quality.
	-REAL_SPEED=<0..1> - /r[+/-]: Real speed. Enable it to run the
emulator with the same speed the real machine had.
	-PERFORMANCE=<0..1> - /c[+/-]: Performance. Speed percentages
are displayed on screen.
	-IMAGE_WIDTH=<0..3> - /h<0..3>: Screen width: 0 means 320
pixels (standard), 1 means 256, 2 means 336 and 3 means 384.
	-IMAGE_HEIGHT=<0..3> - /v<0..3>:Screen height: 0 means 200
pixels (standard), 1 means 224, 2 means 240 and 3 means 256.
	-IMAGE_DITHER=<0..3> - /b<0..3>: Screen dithering and blending.
0 means no effects; 1, dithering; 2, blending; 3, both effects.
	-IMAGE_DOUBLE=<0..1> - /v[+/-]: Double screen definition (DOS
users require SVGA). High definition enhances image quality but needs
more machine power.
	-IMAGE_SCANLINES=<0..4> - /c<0..3>: Only for WIN32 version,
scanline mode for double screen definition. 0 means no scanlines; 1,
simple scanlines; 2, 50% intensity scanlines; 3, dithered scanlines;
4, hardware stretch. Fastest modes are 0 and 1. Slowest mode is 3.
	-IMAGE_FULLSCREEN=<0..1> - /m[+/-]: Only for WIN32 version,
full screen mode. ALT+ENTER (or RIGHT CLICK) switches it on and off.
	-SOUND=<0..1> - /s[+/-]: Sound playback. It won't have any
effect without a supported sound card.
	-SOUND_QUALITY=<0..2> - /s<0..2>: Sound quality. The quality is
11KHz with 0, 22KHz with 1 and 44KHz (CD quality) with 2.
	-SOUND_16BITS=<0..1> - /q[+/-]: 16-bits sound. Only useful if
the sound card supports 16-bits playback.
	-SOUND_STEREO=<0..1> - /e[+/-]: Stereo sound. Only useful if
the sound card supports stereo playback.
	-SOUND_FILTER=<0..1> - /f[+/-]: Sound filtering.
	-SOUND_LOG=<0..1> - /w[+/-]: Sound logging. Enable it to record
the sound as a WAV file.
	-AUTORUN=<0..1> - /a[+/-]: Autorun mode. Enable it to
automatically try to boot tape and disc files. Be aware that some files
may not be autorunnable and require manual usage instead.
	-RAM_64K=<0..1> - /k[+/-]: 64K RAM mode.
	-ROM_PATH=<PATH>: System ROMs location. The emulator needs the
CPC system ROMs to be located there.
	-ROM_TYPE=<0..5> - /t<0..5>: ROM type. Amstrad CPC computers
were sold in many types: CPC 464 (0), CPC 664 (1), CPC 6128 (2), etc.
CPC 464 had 64K RAM and tape drive; CPC 664 had 64K RAM and disc drive;
CPC 6128 had 128K RAM and disc drive. All CPCs allowed external disc
drives, and those not having a tape drive allowed an external one, too.
	-ROM_TYPE0=<FILE>: CPC 464 BIOS+BASIC 1.0 ROM file name.
	-ROM_TYPE1=<FILE>: CPC 664 BIOS+BASIC 1.1 ROM file name.
	-ROM_TYPE2=<FILE>: CPC 6128 BIOS+BASIC 1.1 ROM file name.
	-ROM_AMSDOS=<FILE>: CPC disc operating system ROM file name.
	-ROM_AMSDOS_DISABLE=<0..1> - /x[+/-]: AMSDOS usage flag.
Disabling AMSDOS emulates a computer without disc drive.
	-SNAP_PATH=<PATH>: Snapshot files location. Snapshot files
store exact machine data, allowing to store the current status and to
recover it later.
	-FILE_PATH=<PATH>: Raw files location. Standard files may be
used from the emulator by enabling the tape bypass.
	-FILE_ENCRYPT=<0..1>: Raw file encryption flag. Raw files could
be encrypted with commands such as SAVE"FILENAME",P, but many file
transfer tools discard encryption and resulting data are corrupted and
require to modify this option to be succesfully read.
	-DISC_PATH=<PATH>: Disc files location. Disc files are dumps
of real discs, that may be read and written by the emulator.
	-TAPE_PATH=<PATH>: Tape files location. CPC tapes may be read
as sound samples (VOC, WAV and CSW files) and as serial streams (TZX
and CDT files); they require tape bypass to be disabled.
	-TAPE_BYPASS=<0..1> - /z[+/-]: Tape trapping. By default, the
emulator plays and records tape files; enabling tape bypass redirects
CPC tape access to raw files located in the folder specified by
FILE_PATH.
	-TAPE_SPEEDUP=<0..1>: Faster tape handling. This flag forces
the emulator to run at 1000% speed when it plays or records tape files.
It can reach up to 2000% speed when HI-RES is disabled.
	-JOYSTICK=<0..1> - /j[+/-]: Joystick support.
	-PRINTER=<0..1> - /p[+/-]: Printer logging. Data sent to the
emulated CPC printer port will be stored in a file called CPCE.PRN.
	-DOUBLE_SPEED=<0..1> - /t[+/-]: Double microprocessor speed.
	-GREEN_SCREEN=<0..1> - /g[+/-]: Green screen. When buying a
CPC, screen could be green only (cheap) or full colour (expensive).
	-CRTC_TYPE=<0..4> - /g<0..4>: CRTC type. As the years passed,
CPCs were sold with different cathodic ray tube controllers (CRTCs),
that had different graphic performances.
	-YM2149_TYPE=<0..3> - /y<0..3>: YM2149 type. The standard sound
chip used a logarithmic volume table and a square wave; different
setups (linear volume, saw wave) may be chosen with this option.
	-YM2149_LOG=<0..1> - /y[+/-]: YM2149 logging. Sound chip data
can be recorded as a YM3 file that may be played back by utilities such
as YMP, ST-Sound, WinAmp YM plugins, etc. They may be up to 250 times
smaller than a WAV file, and can be easily compressed with LHA.

	There are two additional command line parameters:
	-/l[+/-]: Tape compatibility mode. By default, CPCE 1.50 plays
tapes slightly slower than previous releases: this allows certain
tricky tape schemes such as Speedlock to load, but old or incorrectly
generated tape files may not load now despite they did in earlier
releases.
	-/![+/-]: System compatibility mode. When this flag is enabled,
DOS and DPMI versions disable things that cause troubles in some
computers: timers, SVGA, sound, etc. WIN32 version uses the default GDI
services instead of DirectDraw.
	-/![0..1]: Only for WIN32 version, DirectDraw memory mode. By
default, CPCE tries to detect the best memory mode (video or system);
this flag forces the memory mode to video (0) or system (1).

	The configuration file is the same for all platforms, but you
can define different options with the prefixes "DOS.", "DPMI." and
"WIN32.", meaning the following option will only be used by the
specified platform. Non-prefixed options are always read.

	Command line allows file names, too; when launching, the
emulator will try to open them as snapshots, disc images or digital
tape files, and to boot them if autorun is enabled.

4.- Usage of CPCE
=================

	If no errors arise while launching, CPCE will start correctly
and display the familiar CPC screen. You can type BASIC programs, load
games, etc. Most PC keys emulate their CPC counterparts, with some
exceptions:
	-INSERT emulates COPY and DELETE emulates CLR.
	-Numeric pad keys can emulate the joystick. Press BLOCK.NUM. to
toggle joystick emulation. When enabled, 8 is UP, 2 is DOWN, 4 is LEFT,
6 is RIGHT, 5 and 0 are FIRE1 and "." is FIRE2; otherwise, they emulate
the CPC numeric pad.
	-HOME, END, PAGE UP and PAGE DOWN scroll the screen. Use them
when the CPC screen is larger than the real screen.
	-PAUSE pauses the emulator. Any alphanumerical key resumes it.

	There's a series of functions available through the main
menu (press F10) or their keyboard shortcuts:

	-File:
		-Select ROM.. (F5): Selects the CPC ROM type.
		-Reset (Ctrl+F5): Resets the virtual CPC.
		-Load snapshot.. (F3): Loads a snapshot. A window pops
	up and lets you to browse the file system and load a snapshot.
		-Reload snapshot (Ctrl+F3): Loads again the latest
	snapshot.
		-Save snapshot.. (F2): Saves a snapshot. You may save a
	new snapshot, or overwrite an old one.
		-Resave snapshot (Ctrl+F2): Saves again the latest
	snapshot.
		-Open drive A.. (F7): Inserts a disc file into the
        virtual drive A, and tries to boot it if autorun is enabled.
		-Close drive A (Ctrl+F7): Empties the virtual drive A
	and closes the disc file in it.
		-Open drive B.. (F8) and Close drive B (Ctrl+F8): same
	than previous functions, but with the virtual drive B.
		-Play tape.. (Alt+F3): Inserts a digital tape into the
        virtual tape drive, starts its playback, and tries to boot it
        if autorun is enabled.
		-Record tape.. (Alt+F2): Creates a new digital tape and
	starts its recording.
		-Browse tape (Alt+F1): If the digital tape is a TZX or
	CDT file, allows to select the currently playing block or to
	eject the tape; otherwise, it empties the virtual tape drive.
		-Exit (Alt+F4): Closes CPCE and goes back to the OS.

	-Options:
		-Debug (F9): Debug mode. Memory may be browsed with the
	cursor keys and the key G (Go to), and modified with the
	hexadecimal digits, 0-9 and A-F. Single instructions can be
	executed by pressing the space bar.
		-Breakpoint.. (Ctrl+F9): Microprocessor breakpoint. A
	breakpoint is an address that enables the debug mode when the
	microprocessor tries to execute the instruction located there.
	Breakpoints are disabled when entering a blank.
		-Performance (Alt+F9): Switches performance display.
		-Real speed (F6): Switches the real speed status.
		-Hi-res (Ctrl+F6): Switches the hi-res mode status.
		-Double speed (Alt+F7): Switches the double speed
	status.
		-Tape bypass (Alt+F8): Switches the tape bypass status.
		-Tape speedup: Switches the tape speedup status.
		-Autorun: Switches the autorun status.

	-Image:
		-Full screen (Alt+Return): Only in WIN32, switches the
	full screen mode.
		-Monochrome (F11): Switches the green screen status.
		-Dither (Ctrl+F11): Switches the image dithering.
		-Blend (Alt+F11): Switches the image blending.
		-Inc. frameskip (Num.pad +): Increases the frame skip.
		-Dec. frameskip (Num.pad -): Decreases the frame skip.
		-Max. frameskip (Num.pad *): Sets the frame skip to 9.
		-Min. frameskip (Num.pad /): Sets the frame skip to 0.
		-Save PCX image (F12): Saves the screen as a PCX file.
	-Sound:
		-Sound (F4): Switches sound playback, if available.
		-Filter (Ctrl+F4): Switches sound filtering.
		-Save WAV sound (Ctrl+F12): Switches sound logging.
		-Save YM3 sound (Alt+F12): Switches the YM2149 logging
	status.

	-Game:
		-Play movie..: Plays a movie. Movies are snapshot files
	with an appended sequence of pressed and released keys; this
	allows to record sessions. Several menu items such as Debug,
	Hi-res, Double speed, Load Snapshot, etc. are ignored during a
	movie playback.
		-Record movie..: Records a movie. A movie cannot be
	recorded from Debug mode or with a breakpoint; in the same way,
	movie recording ignores the abovementioned menu items.
		-Loop movie: Switches movie playback looping.
		-Stop movie: Stops the currently playing or recording
	movie. Closing the emulator stops movies too.
		-Join netplay..: Only in WIN32, it prompts for an IP
	number and optionally a port (separated with a ":") to connect.
	Netplay, like movies, isn't allowed from Debug mode or with a
	breakpoint, and ignores the abovementioned menu items.
		-Host netplay..: Only in WIN32, it prompts for a port
	(it's optional, the default value is 2399) and pauses the
	emulation until a remote user succesfully connects or the next
	function is used.
		-Disconnect: Only in WIN32, it stops the current
	netplay. Both the hosting and the joining users can do it.
		-100%,50%,33%,25%: Only in WIN32, it sets the netplay
	transfer rate. Higher values are more responsive to the
	controls but lower values spend less connection bandwidth.

	-Help:
		-Help.. (F1): Displays the keyboard shortcut table.
		-About.. (Ctrl+F1): Displays the splash text.

	File browsing supports ZIP archives. WIN32 version supports
"drag and drop" of snapshot, tape and disk files.

4.1.- YMP
---------

	YMP is a YM music player. It supports YM2, YM3 and YM5 files
(newer formats aren't supported yet); compressed YM files require
LHA.EXE to be available in the PATH system settings. Just like CPCE,
there are three executables: YMP.EXE (requires i286 CPU and DOS 3.0),
YMP32.EXE (requires i386 CPU, DOS 3.0 and DPMI extender) and YMP95.EXE
(requires i386 CPU and Windows 95). They all require a sound card (a
SoundBlaster one under DOS or DPMI, any card under WIN32), too.

	Most command line options work like CPCE equivalent ones:

	-/e[+/-]: Stereo sound.
	-/f[+/-]: Sound filtering.
	-/q[+/-]: 16-bits sound.
	-/r<0-9>: Frame skip.
	-/s<0-2>: Sound quality.
	-/t<0-3>: Timing. 0 is Atari ST PAL (2MHz:50Hz), 1 is Atari
ST NTSC (2MHz:60Hz), 2 is ZX Spectrum (1.77MHz:50Hz) and 3 is Amstrad
CPC (1MHz:50Hz). When CPCE generates a YM file, it automatically sets
it to 2MHz:50Hz so you don't need to set this option to 3 to play it.
	-/w[+/-]: Sound logging.
	-/y<0-3>: YM2149 type.

	If there's a file name in the command line, YMP will try to
read it; otherwise, it will ask you for a file when launching. If no
errors arise, music playback starts and the screen displays a waveform
behind the current playback pointer, pitch, speed and YM name. You can
use these keys:

	-LEFT, RIGHT, UP and DOWN move the playback pointer by adding
or substracting seconds or minutes.
	-INSERT moves the playback pointer to the track beginning.
	-DELETE moves the playback pointer to the track loop.
	-HOME and END increase and decrease the YM2149 speed.
	-PAGE UP and PAGE DOWN increase and decrease the YM2149 pitch.
	-SPACE pauses and unpauses the playback.
	-Num.pad +, Num.pad -, Num.pad *, and Num.pad / increase,
decrease, set to 9 and set to 0 the frame skip.

	There's a series of functions available through the main
menu (press F10 under DOS and DPMI or Alt+F10 under WIN32) or their
keyboard shortcuts:

	-File:
		-Load file.. (ESC): Loads a YM file. A window pops up
	and lets you to browse the file system and load a YM file. If
	you hit ESC or cancel the window, YMP closes and goes back to
	the OS.
	-Options:
		-Disable channel 1 (F1), disable channel 2 (F2) and
	Disable channel 3 (F3) switch off and on a YM2149 channel.
	Enable all channels (F4) switches on all channels.
		-Atari ST PAL (F5), Atari ST NTSC (F6), ZX Spectrum
	(F7) and Amstrad CPC (F8) set the timing to standard values
	(just like /t<0-3>).
		-Linear volume (F9) and SID-like wave (Ctrl+F9) set up
	the YM2149 type (just like /y<0-3> in CPCE).
		-Filter (F11) and Save WAV sound (F12) switch on and
	off sound filtering and logging (just like in CPCE).
	-Help:
		-About.. (Ctrl+F1): Displays the splash text.

	WIN32 version supports "drag and drop" of YM files, and the
interface allows mouse buttons to move the window, open the menus, move
the playback pointer, etc.

4.2.- CSW, LPTCPC, LPTREC and LPTPC
-----------------------------------

	Several small utilities are included within the CPCE package.

	CSW.COM can create CSW files from VOC and WAV ones, and VOC
files from CSW ones. Its syntax is "CSW <source file> <target file>"
and it accepts an optional parameter, /<0..9> that sets the filter
value from 0 (no filter at all) to 9 (very heavy filter). Filters
reduce the noise and size of CSW files but may create incorrect files.

	LPTCPC.BAS, LPTREC.BAS and LPTPC.COM can transfer files from a
real CPC to a PC through the parallel cable designed by Marco Vieth and
explained in the documentation of his emulator, CPCEMU. The protocol is
compatible with Marco Vieth's utilities, but several enhancements have
been made:
	-LPTREC.BAS is a very small (717 bytes) BASIC listing that has
to be typed and executed in the real CPC. It receives files sent from
the PC through the parallel cable.
	-LPTCPC.BAS is a quite small too (1024 bytes) binary program
that is run in the real CPC and allows to send both raw and disk files,
and to receive files too. Files are received by entering nothing at the
prompt; any key stops the file receiving loop. Raw files are sent by
typing their name, and disk files, by typing ":" plus their name. Hit
ESCAPE to abort and return to BASIC.
	-LPTPC.COM is also 1024 bytes long, and is used in the real PC
to send and receive files. Syntax for file sending is "LPTPC <files>"
and file receiving is done with "LPTPC" only. In both cases, the
optional parameters /1, /2 and /3 select the LPT port to use, LPT1 by
default.
	All these tools calculate and display CRCs to let the user
know if transmission was correct or not. Unfortunately, they don't
support tapes or protected raw or disk files.

5.- Acknowledgements
====================

	-Thanks to Amstrad in general and Cliff Lawson in particular
for allowing me to distribute the original Amstrad CPC ROMs with CPCE.
And, of course, for creating the CPC!
	-Thanks to Marco Vieth, Bernd Schmidt, Ulrich Doewich, Martin
Korth, Richard Wilson, Antoine Pitrou, Kevin Thacker... for writing CPC
emulators: CPCEMU, CPE, CaPriCe, NoCash CPC, WINAPE, YAGE, Arnold...
Good emulators. In fact, most of them are better than mine :)
	-Thanks to Pedro Gimeno, programmer of SPECTRUM and SPEC386,
for his great work and his encouraging letters.
	-Thanks to The Fox of Emulators Unlimited ( www.emuunlim.com )
for hosting CPCE. My Capcom CPS1&2 emulator, CPSE, may be found there,
too ( cpse.emuunlim.com ).
	-Thanks to Emumania ( www.emumania.com ), Emulatronia
( www.emulatronia.com ), Carsten ( www.terra.es/personal/rt95plus ),
Joseman ( www.terra.es/personal2/amstradweb ), Malc Jennings
( cpczone.emuunlim.com ), the whole Amstrad CPC Spanish forum and many
more for their interest in CPC emulation.
	-Thanks to Antonio Ortiz Carrasco (found a bug in CPCE 0.8.1),
Esteban Ruiz "Pinace" (found a bug in CPCE 1.11) and Ramon Garcia
Hevia (dragon droppings).
	-Thanks to Tomasz Gryzstar for creating FASM, the best
assembler ever! Without it, CPCE would have never able to break the DOS
barrier.
	-Thanks to Phil Katz, Jean-Loup Gailly, Mark Adler and the ZLIB
group for the excellently devised and explained ZIP archiving system.
	-Thanks to Markus F.X.J. Oberhumer and Laszlo Molnar for UPX,
the Ultimate Packer for eXecutables.
	-Thanks to Joergen Ibsen for APACK, the best DOS compressor to
date.
	-Thanks for reading!

6.- Registered marks
====================

	-CPC, AMSDOS (C) Amstrad Consumer Electronics & Locomotive
Software.
	-SoundBlaster (C) Creative Labs.
	-Mentioned emulators (C) Their programmers.

7.- History of CPCE
===================

	-01.08.1997: First ASM lines.
	-20.11.1998 (v0.0): First version. Documentation in Spanish
only.
	-12.12.1998 (v0.1): Better Z80 emulation, border emulation, YM
logging. Documentation in English. Snapshot filenames don't need SNA
extension.
	-02.02.1999 (v0.2): Frame skipping, joystick emulation, better
interface... "Zub", "Bubble Bobble" and "Rainbow Islands" don't work
yet!
	-12.03.1999 (v0.3): Tape support through standard AMSDOS files
placed in the TAPE directory; standard extensions BAS and BIN aren't
required, as in a true CPC; CAT does nothing (use a DIR TAPE\*.* from
DOS instead).
	-12.05.1999 (v0.4): Sound through SoundBlaster-compatible sound
cards. PCX screens are saved in order (CPCE0000.PCX, CPCE0001.PCX...).
	-30.07.1999 (v0.5): Better interface, more options. A bit
faster emulation. Printer emulation: printed data is sent to a file
called CPCE.PRN.
	-10.03.2000 (v0.6): Fully rewritten! The @#$%&! bug of "Zub",
"Bubble Bobble", etc. has been fixed! Graphic user interface, more
options... YM logging doesn't need pitch fixing any more.
	-15.06.2000 (v0.7): Many new features! Disc emulation, tweaked
VGA graphics (more resolution), rasters, overscan, split screens,
multilanguage, configuration file, digital SoundBlaster sound... The
price paid for all these enhancements is a slower emulation, and a
larger executable file.
	-12.12.2000 (v0.8): Many extras and bug fixes: protected tape
files, better debugger, better digital sound, VOC tape files, YMP...
	-14.12.2000 (v0.8.1): Fixed a bug in the keyboard handler.
	-21.12.2000 (v0.8.2): Fixed another keyboard bug (!). Enhanced
tape handling (cache, CSW compression).
	-09.07.2001 (v0.90): Fully rewritten, more compatible. general
CRTC ruptures, CSW.COM. Multilanguage removed, does anyone miss it?
	-19.11.2001 (v0.91): Using a new programming library (made by
me), digital SoundBlaster sound gets more compatible, ZIP files are
supported, and a fistful of new and enhanced features. CPC emulation
itself is a bit more exact ("Final Fight" and others: CRTC ghosting)
and complete (CDT support).
	-09.09.2002 (v1.00): First multiplatform version (DOS, DPMI
and WIN32), thanks to the great FASM compiler. Again fully rewritten,
everything is now much better, faster, cleaner... Removed YMP and CSW
(did anyone use them?). Just two problems: WIN32 platform can't browse
(yet) ZIP files, and WIN2K doesn't like my WIN32.LSEEK (disc handling).
	-12.09.2002 (v1.01): Gabriel Gag warned about a distribution
bug: the configuration file requested PARADOS.ROM but the released
AMSDOS ROM is CPCADOS.ROM! Fixed.
	-03.01.2003 (v1.10): Printer logging, joystick support, better
NEC765 emulation (error handling), safer (WINNT4: WIN32.LSEEK bug) and
handier (ZIP file handling from WIN32, fullscreen mode).
	-19.01.2003 (v1.11): Scanline modes, some bug fixes (FDC: EOF
flag and Read ID command), TIMER flag removed (timer is autodetected).
	-10.04.2003 (v1.20): CDT and YM2149 engines rewritten, safer
ZIP file handling, dragon droppings for WIN32, ALT+ENTER/RIGHT CLICK,
performance, WIN32 screen size and multi-platform options.
	-15.04.2003 (v1.21): YM2149 bug fix, better default setup.
	-30.06.2003 (v1.30): YMP is back! Many bug fixes, too.
	-02.07.2003 (v1.31): Z80 enhanced, PAUSE key.
	-16.12.2003 (v1.40): ROM selection, better FDC emulation
("Format Track" supported, plus some bugfixes), CRTC bugfix ("RTS demo"
and "CNGSoft Intro #1"), PIO bugfix ("Prehistorik I"), virtual tape
bugfix (output cache flush), YMP supports YM5 files, more bugfixes...
	-12.12.2005 (v1.50): Game recording and playback, netplay,
utilities CSW, LPTCPC, LPTREC and LPTPC, YMP features a "skin", faster
FDC formatting, CSW tape saving, DOUBLE_SPEED is disabled when using
tapes, DIRECT_TAPE becomes TAPE_BYPASS, compatibility modes, new GUI
font and quick sort instead of bubble sort, and tons of bugfixes.
