		Readme  of  ZXAM Spectrum Emulator AGA v1.3 
		---------------------------------------------
 		    (read the addendum for v1.3 , below)


   Please,  read the DOCeng to know how  to use the emulator. Keep in mind that
this is a  version, that means, unfinished and with possible bugs, but I would
like  that the people  test the emulator and  give me their opinion, criticism,
etc...

   If you know about  a Dragon 32 emulator for  the Amiga,  please let me know.
I know a  friend of mine that  wants that I program such  an emulator.  I think
that some times there is a justification for murder...(AARGH!!)

   If you want to contact me,  please  send me  a letter to  the  address  that
appears in the DOC. If you know spanish, and you aren't afraid of big telephone
bills, read the LEEME!! file to contact me through a spanish BBS.

   The icons are designed for an 8 colours WorkBench.
   
   If you want to include the package in your Public Domain library, you can do
it only if  the package remains  complete and unmodified,  and you don't charge
more than the post and packing charges.

   Along  with the  emulator  there is a  drawer  with  23  Spectrum  programs,
compressed with PowerPacker.

   The package  can be included in a  magazine's coverdisk,  or uploaded to any
BBS.


Enjoy it (or suffer it...)

Antonio J. Pomar Rossell
(Palma de Mallorca, SPAIN)


	  >>>>>>>>>>>>>>> ADDENDUM FOR VERSION 1.3  <<<<<<<<<<<<<<<<


   The main motivation  for the release of version 1.3  is the addition of the
LOAD/SAVE to tape.  This is  not a  definitive  version,  but there  were  many
requests from  people that have sent to me messages to TANIT-BBS.  This way the
LOAD routine can be tested  on different configurations,  to report any kind of
problem.  Moreover, version 1.3  includes some attempts of synchronization for
stabilize the emulator, but they aren't completed. I need information about the
result of  these attempts  in other CPUs (68030/50MHz or 68040).  Changes since
version 1.2  are:



LOAD FROM TAPE: The LOAD routine is a patch of the ROM LOAD routine. This patch
is partial.  That means  that 90% of  code executed  while LOADing  is the  Z80
original routine. This way the emulator behaves like the original Spectrum, you
can see  the screen data and  attributes loading,  can do BREAK by pressing the
space key,  the border shows the old "loading colours" and the FLASH attributes
are  still "FLASHing" during the LOAD.  All this works even with an  Amiga 1200
without FAST memory and in colour mode!!.

The LIMITATIONS of the patch are:

   -The  border lines  aren't perfect,  but almost.  Some border change  are
    missed because of some  interference between the CPU and the copperlist.
    I  could do a perfect border,  but the LOAD/SAVE lines aren't  worth the
    speed loss.
    
   -The sound from tape can be heared ONLY DURING THE LOAD.  That means that
    you will  need to search the beginning of  the program with the cassette
    disconnected  from the computer.  A software  emulation of  the hardware
    connection between  MIC and EAR connectors would be a severe slowdown of
    the emulation.
    
   -NEEDS A CUSTOM INTERFACE: although I think that this is not a limitation
    because the  interface that  I have designed  is much more  cheaper  and
    practical than a sound sampler.  This interface plugs into  the Joystick
    port. You can plug and unplug it even with the computer switched on. The
    2 (yes, TWO!) components used in the interface are for protection of the
    computer.  If  you want,  you can make  a through-port  to  connect  the
    interface and the joystick at the same time. With this interface you can
    leave the printer connected to the parallel port permanently.
    
   -Because the LOAD is a patch, forget about loading Turbo games (al least,
    for the moment...;-).
   
   -In systems with  slower CPUs isn't  recommendable to touch  the keyboard
    while loading,  because any  key press/release  will cause an interrupt,
    that can produce  the dreaded "R Tape loading error".  You only need  to
    touch the keyboard to do a BREAK.

   Well,  I have to say that the effectiveness of the patch is much better than
any  prevision.  During the  first testing of  the patch I  have connected  the
internal  Spectrum +2A  cassette to  the tape  interface,  and  tried  to  load
simultaneously  the same program in the +2A and  in the Amiga 1200.  The aim of
the  test was  to find  some programs that the +2A  can load and the Amiga 1200
can't, to use it to adjust the timing of the patch. The inesperate results were
that  the computer with  problems to load some programs was the +2A,  while the
Amiga 1200  loaded everything that  I have throwed to it ;-).  I have passed to
disk 83 programs during the tests.



SAVE TO TAPE: This is a very easy one. Actually, this is not a patch, otherwise
it is a REAL TIME SAVE. It is the Z80 that is sending the data to the tape. The
only  thing  that I  haved to do  is to  stabilize the  sound output.  The same
explained above about the keyboard and border is applied to the SAVE.  The data
saved with  the emulator  has been  loaded succesfully  by the emulator  itself
and by my ZX Spectrum +2A.



SOUND:  The emulator  includes a  "sound stabilizer"  that tries to enhance the
cleaness of  the sound.  This stabilizer  is the real  guilty of the  REAL TIME
SAVE,  and the  pure sound of  the BEEP command.  Some games  sounds now  a lot
better  (like the ULTIMATE ones),  but some others  have slowed  down slightly.
Anyway,  this stabilizer is experimental,  and will be  much better  when I can
test it thoroughly with a computer with a fast CPU.
