-----------------------------------
DCSpeccyal'K v0.3 (c) 2004 _tyrell_
--------- www.speccyal.be ---------
-----------------------------------

Features
--------

DCSpeccyal K is an easy to use Sinclair ZX Spectrum 48k & 128k emulator for the Dreamcast console.

Currently, it's quite advanced and supports the following features :

- DC Keyboard support
- Save / load memory snapshots (they are zipped for space efficiency) to VMU. Autodetects vmu card slot.
- Support for extra custom key files located on the cd (with .KEY extension)
- Emulates the 48k and 128k models
- Can load SNA / TAP / Z80 (v1.45, v2.01, v3) / SLT / TZX / SCR file formats
- Can handle most TZX turbo/special loaders 
- TAP/TZX files autoloading
- Virtual keyboard to enter any key. 
- Full speed
- Mame z80 cpu core for great compatibility
- Beeper Sound and AY-3-8910 sound fully supported
- Options screen with options to choose the joystick emulation (sinclair1, sinclair2, cursor), the emulated hardware ... 
Options are be saved on the memory card.
- Kempston / Fuller joy emulation (these emulations are automatically selected when used in a game)
- Easy to use file browser
- Correct line by line border emulation
- Custom keys : key configs are saved for each game
- Fullscreen mode (temporary disabled)
- Bilinear on/off option (temporary disabled)

Have fun !

_tyrell_

USAGE
-----

Put the roms (128A.rom and 128B.rom) and 1ST_READ.BIN in the cd root directory.
The snapshots files can be anywhere on the CD.

Put the autoload files (tape_48.z80 and tape_128.z80) in the /lib/ directory on the cd.

Keys :

- START + Y : reset

- START + B : rewind tape (when loading a .TAP file)

- L trigger : virtual keyboard (A to escape, START to confirm)
Note: if you want to load a .TAP file from 48k basic, press
'J' (LOAD), then " and then ", and finally enter ('en' in the virtual keyboard).
Y and B can be used to switch caps shift/symbol shift options on/off

- L + R : exit application (should never be used !)

- R trigger : options screen (A to escape, START to confirm and save options - and custom keys if custom option has been
selected - to the memory card). X is use to toggle options on/off or to set custom keys.

- X : fire 1 (default: key '0' on the speccy keyboard)
- A : fire 2 (default: key 'enter' on the speccy keyboard)

- Start + left trigger = load/save menu (press UP/DOWN to navigate through slots, left/right to select LOAD/SAVE)
- Start + right trigger = file browser

CUSTOM KEYS FILES
-----------------

The emulator also supports custom keys files. These files must have the same name as the snapshot 
files + .KEY extension.
Simply create a text file with this extension, and edit it.

There are 6 characters in these files, the 4 first ones are for the UP, DOWN, LEFT, RIGHT buttons, the following
2 ones are for fire 1 and fire 2.

These special chars can be used for the ENTER, SHIFT and SPACE keys :

# = ENTER
? = SHIFT
. = unused
^ = SPACE

Example:

PLAZ#^


SPECIAL NOTES
-------------

- If sprites are flickering try to turn off the rendering option. This is obviouisly slower but this will probably
fix the sprite flickering option (e.g. greenberet, bc quest, g'n'g)

TO DO
-----

- Display a tape deck to rewind/start/stop a tape and select a header to load (used with .TAP files)
- Fix several small bugs
- Contended memory emulation
- Better sound (less distortion)
- PAL / NTSC option
...

V0.3, 06-09-2004
----------------

- Added support for TZX files

V0.2, 22-06-2004
----------------

- Added loading/saving of compressed memory snapshots (4 slots available, display free VMU memory blocks). 
Accessible via start+left trigger. Can be used to save your hardly typed basic programs to memory card or 
save a game and play it later. 

- Correct border emulation (line by line). 

- Stability problems have been fixed once for all. But unfortunately I had to remove the bilinear and 
fullscreen options (temporary, I hope), until I find a way to add PVR/DMA support without the previous problems. 

- Autoload of .TAP files ! This will avoid typing the very annoying LOAD"" in basic. 
Requires 2 additional files on the cd, in the /lib/ directory. Multilevels .TAP games should also benefit 
from a complete rewrite of the .TAP handling code. Press START + B to rewind the tape if it's necessary (if the game
requires to rewind the tape to load a previous level)

- Fixed the interface issues quite a bit : left trigger = virtual keyboard, right trigger = options, 
start + left trigger = load/save, start + right trigger = file browser. start is still used in all 
screens as a confirmation key.

V0.1b, 25-05-2004
-----------------

- DC Keyboard support
- Enhanced speed (now 128k games are playable with music at full speed without any sound problems like previously)
- Fixed the bug which was freezing the screen
- Support for custom key files which are read from the cd in addition 
to those ones read from the VMU. Those .KEY files just contain up,down,left,right,fire1 & fire2 keys
- The reset key will has been changed (start + Y)

V0.1, 25-05-2004
----------------

First release.

THANKS
------

Thanks go to (in no particular order) : Kroustibat, Antiriad, MikeDX, Juergen Buchmueller (Mame z80 
cpu core), Don_Miguel (file browser), Phil Kendall (libspectrum, fuse), Takayama Fumihiko (NetsterDC, vmu & sound code),
Viktor Gars (vmu class), Chris Cowley (vbSpec, TZX code) and many others I certainly forget to mention...