

                        ******* ColEm *******
                 The Portable ColecoVision Emulator
                             version 1.0

                         by Marat Fayzullin
                      
	             Acorn Port by David McEwen 
	             Port Version : 1.15 (19/11/2000)
	             
New In This Version
-------------------

	- A wee bit more speed 
	- Better sound
	- Numerous screen options (Eagle/Scanlines/Greyscale)
	- Key redefinition

New in Previous versions :

	- FASTER!!
	- A few silly bugs fixed...
	- Use of ZLib :
		Means you can use GZipped or singularly Zipped files directly
	- Screen mode checking 	
	- Uses version 1.0 source
	  - This provides the following new features :
	    * Standardized Z80 emulation.
	    * Standardized PSG emulation.
	    * Soundtrack saved into .SND files.
	    * Screen refresh done line-by-line.
	    * Sprites are refreshed line-by-line.
	    * Limit on sprites per line introduced.
	    * General cleanup of the source code. 
	- SOUND!!!
	- Assembler plotting routines (for 256 colours modes)  
	- Choice of BIOS Roms
	- Frame locking


Introduction
------------

This is a port of Marat's Coleco emulator. This has improved emulation over the
old version and compatibility seems much higher.

OK so it emulates a Coleco, but what is one of these machines. It is an old 
videogame console not in the leagues of the Playstation here I'm afraid, however 
it does have some rather neat games... such as Zaxxon.


Note for users of old machines
------------------------------

The best way of using it is to increase the Uperiod and decrease the Iperiod in the 
options window. Please note that for older machines A5000... the screen mode will
always be 320 by 256. This will be Mode 13 in 256 colours or Mode 9 in 16.
The reasons for this are speed and guaranteeing the user has the right mode.
I am not saying this will be fast on old machines that would need a radical recoding
of the internal CPU emulation which I am not ready to do - I don't have that much 
time!!!


How do I use it ?
-----------------

Easy - just download a game from the internet there are various good sites around 
and few companies actually care what happens with these roms since they are in 
many cases over 10 years old and noone is really going to buy them in this day 
and age. One of the best sites is Daves Arcade Classics, great for MAME roms as well.

Once you have some ROMS you can run them by setting the filetype to Coleco and 
double clicking or dragging the game to the Coleco icon. This loads the ROM.
Now there is no need to decompress files!! You can run straight from a Gzipped or
singularly PKZipped file - save a bit of Hard Drive space... 

It is fairly intuitive to use... 

The keys during emulation are :


  Cursor keys control movement

  [SPACE] - Fire1 button   
  [LALT]  - Fire2 button 
  [0]-[9] - Digit buttons
  [-]     - # button
  [=]     - . button
  [ESC]   - Pause emulation (also: [F12]) (Click on icon to restart)
  [F5]    - Reset Emulation (can also be accessed via menu)

  [CAPSLOCK] switches between joypads      
  
The keys can be reconfigured by clicking on the Define Keys button and then clicking on the
relevant icons in the new window and then pressing the new key. Very simple...
  
The frontend allows you to alter various variables that will affect the
speed of the game - the Uperiod and Iperiod values. Uperiod is the number of 
interrupts per screen update and the Iperiod is the internal interrupt period. 
In simple terms to speed up the emulator either increase Uperiod, decrease 
Iperiod or both. To slow it down decrease Uperiod, increase Iperiod or both.

There are several resolution choices available. The first 4 are simple resolutions
no scaling is implemented. The last 2 are full screen modes and these are exactly
what they say. The slow version is slow because it plots 4 times the number of pixels.
The fast version is just y doubled. The MDF file included provides definitions for
the modes on an AKF60 monitor. They are : 512 by 384 and 256 by 384 modes if you 
wish to define your own.

The pause function mean that when you press Escape or F12 the emulation isn't killed
instead it is paused so that it can be continued from that point by clicking on the
icon. If you wish to reset the emulation either press F5 while in the emulator or
click on Reset in the menu.

Now you can select which BIOS Rom image you want : 
Normal, No delay and different font

The choice is yours!!
Note that to use the new bios on the same rom the rom has to be reloaded... as everything needs to be reset internally.

Also sound can be toggled on and off - the sound is not perfect, there is a definite
problem with tones, noises are fine in the main.

For those with StrongARMs there is a frame locking option, which forces update to 
50fps regardless of the refresh rate of the mode it is running in!!
 

Display Options
---------------

Both of these modes require double scale to be selected.

Eagle
-----

This is a feature for faster machines only. What it does is it improves the quality of a scaled 
image. This uses alot of processing due to the complexity of the technique. For those with
some technical knowledge or have seen the bilinear filtering routines in Doom+ or on a PC, this
is a completely different method. As you will note with bilinear filtering you get a blurry 
effect, because the pixels are a result of effectively averaging those around. This smooths the image, but crisp lines are merged into the background. With eagle this doesn't occur as much, 
although very small pieces of detail can be removed by the effect. However overall what it
provides in improved image quality is well worthwhile. You may say that Coleco games weren't up
to much graphically - which is true - but they look even worse if you scale them...

Scanlines
---------

This is a technique whereby a pseudo TV effect is created. What is done is that alternate lines are plotted darker than the others. This darkening can be varied from 25/50/75% or complete 
black. With a scaled image this can provide a more authentic emulation experience. You can 
combine this with eagle for an interesting display.


Once in the emulation you can use F5/F6 to turn on and off greyscale mode.
 
 
*FAQ*
----- 

Why are my Roms images not working ?
-------------------

Try downloading them again. If there is still no joy. Send the image to 
Marat and see if he can find a reason. 

Where's the sound ?
-------------------

It's much better now, enjoy it!


Do I need a special screen mode ?
---------------------------------

Nope the emulator runs happily in a 320 by 256 mode as the screen fits nicely. 
The full screen modes require  specially defined modes... a Mode Definition File 
is included. It runs in either 16 or 256 colours - it just depends on your taste!

Will you get it to run in the desktop ?
---------------------------------------

This will be coming shortly, hopefully with sound!


Will you be porting any other emulators ?
-----------------------------------------

Do you really want more ??? Are you sure ???

I've ported :

ColEm
AdamEm
xNes -> ArcNes (now deceased :-( )
madNes -> to replace the above
Atari800
fMsx
MGear
Stella
TI8x
VGB
Come Back 64

Copyright and Disclaimer
------------------------

This emulator is copyright Marat Fayzullin 1994-9, and the Acorn-specific
components are copyright David McEwen 1998-9. You may not attempt to pass off
any part of this work as your own, although you may distribute it freely as
long as you supply the complete archive (that is, all the files supplied to
you).

This software is supplied "as is". I make no claims about the reliability or
suitability for any purpose of this emulator, and any use of it is undertaken
at your own risk. No responsibility is taken for any failure of the software,
or for any loss or damage caused directly or indirectly by the software.

Whilst I will endeavour to help you if you have problems with this emulator,
no such support is guaranteed.

In the above "This emulator" refers to everything supplied within this
archive, which is specifically the !Colem application and all the files
contained within it, and also the documentation files (including the one you
are reading now).



COMMENTS
--------

Any comments about the emulator as such should go to Marat Fayzullin : 
email : fms@komkon.org
Website : http://www.komkon.org/fms

Any comments pertaining to the Acorn version please contact me :

email : david@acornemus.freeserve.co.uk (Home)
	davidm@argonaut.com (Work)
Website : http://www.lizjay.demon.co.uk/david

Thanks
------

Richard Hallas for the redesigned !Colem icon and resources file.
Gareth Moore for providing help on returning to the desktop mode and 
for the use of some of his code.
Peter Teichman for help with DataVox... although no longer used.
Andreas Dehmel for the excellent DigitalRenderer module.
Marat Fayzullin for writing this emulator and providing help!!
A massive thanks to Dirk Stevens for explaining the eagle method to me. To see 
what he is up to check out -> http://www.retrofx.com
Also a huge thanks to the ZLib guys for a brilliant library.
A big thanks to you for actually bothering to read this far...
