=========================================================
=                SPECCYAL readme & FAQ                  =
=========================================================


What is Speccyal ?
------------------

Speccyal is a 48k Spectrum emulator. It can play (almost) all your favorites games,
providing they are in .sna or .z80 format.

It has been exclusively written for Windows, and it uses DirectX (DirectDraw, DirectSound 
and DirectInput). It was my first step into the emulation world (and into the windows programming
world) and I'm happy with it ! It all started as a personnal challenge, and I decided that
everyone should benefit from my work. I hope everyone will be pleased with it!

What does it have to offer compared to other emulators ?
--------------------------------------------------------

Yeah, you are right, there are lotsa other speccy emulators out there. Why would you
use mine ? 

What I intended to do when I first created this program was to offer an easy to use and
straightforward Spectrum 48k only emulator. This is by no means the best spectrum emulator
and I know that but just read below ...

Until now (version 0.67), it can do the following things :

* Exclusively written for DirectX (DirectDraw, DirectInput and DirectSound)
* Runs in 16 or 32 bits color modes only for now (24 will maybe be supported later, 
8 bpp will never be, sorry !)
* Works in windowed mode only, but window is resizable and you can get an "almost fullscreen
mode"
* Compatible with up to 90% of all games and the number is growing every 
day (I wrote the z80 CPU from scratch, so it is not perfect)
* All z80 documented opcodes + most undocumented ones too (those widely used).
* Support for IM0, IM1 and IM2 Interrupt modes.
* Can load .SNA and .Z80 file formats and save .SNA files.
* Support for all windows attached joysticks
* Kempston/Sinclair1/Sinclair2/Cursor emulation (joystick or keyboard arrows keys)
* Sound (altough not perfect)
* Accurate speed (on a fast machine at least!)
* Ability to change speed up to 4 times the speccy speed if your machines enables it,
so sluggish 3d games like Driller are playable
* Change colors palette (Dark/Normal/Light).
* Save current (most usefull) options in an .INI file
* Basic integrated z80 debugger
* There is a shortkey for every menu option (you don't have time to lose on options screens
do you ?).
* It's TOTALLY FREE !! (who doubted it ??)

What are these menu options used for ?
--------------------------------------

Well, I think it's so straightforward I don't need to help you about this.

What are the requirements to run Speccyal ?
-------------------------------------------

- A powerful processor. Everything should run fine from a 266 mhz processor (I heard it
ran full framerates on such a machine, I guess a P200 should be allright too).
- A good DirectX compatible graphics cards.
- A joystick or your keyboard if you cannot afford it.
- A DirectSound compatible soundcard (no beeper support, sorry !).


Known bugs/limitations
----------------------

These are not really handicaping but I could reach one of the best Spectrum emulation
levels if I could fix all these problems (no one can claim his emulator is 100% bugsfree).

- Cpu core emulation is not 100% complete, some minor bugs are lurking, and thus some
games could not run (from what I have been able to test, more than 90% of games I have
can run without any problems). Don't forget I have completely written the cpu core from
scratch (I could have used one of the existing z80 emulators, but I like challenges !).

- The sound is a bit far from perfect. I have to think a bit more about it, and if someone
can help me, he's welcome ! Again, I sound has been programmed using empirical methods, it's
maybe not the best way but it is working.

- There are some cases where you could lose keyboard input, I know where it comes from but it's
not vital to the emulation, so I forget this bugfix for now.

- Sound is playing continuously even when you select a menu option. I have to say,
it's *very* annoying but like the above bug, not vital...

- It only supports .SNA and .Z80 files (easiest formats ... well, .z80 format is not that
easy to implement :) ). In the near future, other formats could be supported too.

- Crash when changing desktop mode while emulator is running. I require help from DirectX
programmers for fiwing this one.

- Slow if you don't have the appropriate hardware. Should be a lot better starting
from version V0.62 and even better in V0.63.


Is it free ?
------------

Yes it is completely free !


Where can I get the source code ?
---------------------------------

The source code will probably never be available. There are already lots of others spectrum
emulators source codes available here and there on the web. 

The Z80 cpu core is available on my homepage (version V0.1). 
Just head to http://user.online.be/~ota105875/ to download it !


Who is the Author ?
-------------------

My name is Stephane Schmitz, this is my first contribution to the emulation world.
If you want to send me comments (they are welcome), email me to : 

stephane.schmitz@online.be.

http://user.online.be/~ota105875/

Or if you are happy with it and want to contribute to future enhancements, you can 
motive me by sending a beautiful postal card to the following address :

Stephane Schmitz
Rue des Vergers, 6/bis
4801 Stembert
BELGIUM


********************
* Versions history *
********************

------------------------------
- Version V0.67/ 31-10-1999  -
------------------------------

UPDATE

- Fixed a bug that caused the emulator to crash if window was reduced
too much. Does not worth the download anyway if you didn't noticed the problem, and
IMHO you should wait until the next version.

I didn't want to make a new version, so I included this bugfix in the current V0.67 version.

Planned in the next version: better z80 debugger support, and maybe a scanline emulation
(your favorite border :) ), but I'm not sure at all if I'll be able to implement it, as
all my efforts to do so had previously resulted in crashs.

------------------------------
- Version V0.67/ 31-10-1999  -
------------------------------

- Now the main emulator window is resizable !
- Drawing surface not erased when another window overlaps it or when you resize it.
- At startup, the window is displayed at the center of the screen.

------------------------------
- Version V0.66/ 30-10-1999  -
------------------------------

- Added an integrated z80 debugger. 
- Added a Spectrum keymap picture. 

------------------------------
- Version V0.64b/27-09-1999  -
------------------------------

- 0.64b (bugfix) : Changing colors palette was not working in 32 bits desktop mode. Fixed now.

------------------------------
- Version V0.64/ 26-09-1999  -
------------------------------

- Added a speed selection option (x1,x2,x3,x4).

------------------------------
- Version V0.63/ 26-09-1999  -
------------------------------

- Added colors selection option.

------------------------------
- Version V0.62/ 26-09-1999   -
------------------------------

- I did some optimizations so the emulator is faster (I cannot exactly tell how much). 
Slower PC owners should be a bit more happy now. Please can you report me the speed difference
between V0.61/V0.62 ?

------------------------------
- Version V0.61/ 2-09-1999   -
------------------------------

- Added complete support for .Z80 files ! I promised it yesterday, here it is !

------------------------------
- Version V0.6/ 31-08-1999   -
------------------------------

- Added support for .Z80 files (48k snapshots only, 128k snapshots support will be included
in the next release). If the game resets, it is a version 2.01+ snapshot and sorry, you won't
 be able  to load those files right now. But support for Z80 files is a great step forward and 
should give access to a lot more games ! Please note that support has not been extensively tested 
so in some cases some games could not be working.

- Minor GUI bugfix: OK button from the joystick options dialog was not working if no joystick
was present. Should work now.

- ROM is packed with it now (a big "thanks!" goes to Amstrad).

------------------------------
- Version V0.55b/ 27-08-1999 -
------------------------------

- Minor update: fixed "save snapshot" option that was not working if filename was different.

------------------------------
- Version V0.55 / 27-08-1999 -
------------------------------

- Better timing ! Now I'm using high performance windows timers, thanks to Boris Donko
for his help. Please note that FPS counter is not accurate anymore, it shows the maximum 
framerate that your computer could display (but it is internally locked to 50 fps), and if 
it's below 50 fps it displays the real speed on your computer. I usually get between 100 and 
120 fps on my 450 mhz Celeron.

------------------------------
- Version V0.54 / 24-08-1999 -
------------------------------

- Added support for 32 bpp desktop graphics mode !

------------------------------
- Version V0.53b/ 23-08-1999 -
------------------------------

- First public release
