Replay+
=======
Version: 1.00
Date:    June 23, 1998
Author:  Kevin Brisley
E-Mail:  replay@icomm.ca
WWW:     http://www.icomm.ca/replay





Replay+ Binary License:
=-=-=-=-=-=-=-=-=-=-=-=

Replay+ Arcade Emulator
Copyright 1997, 1998, Kevin Brisley, All rights reserved.

The following license refers to the binary distributions of Replay+.  A 
separate license describing the developer distributions of Replay+ can
be found in the the repdev.txt file included with the developer distributions.
This separate license describes what can and cannot be done with the
Replay+ source code and as such, source code will not be mentioned again
in this license agreement.

- The Replay+ binary distributions can be distributed on any medium so long
  as they are distributed in their original archives with no files added,
  removed or modified.  

- Under no circumstance should ROM files created from the original Arcade 
  machines be included in a Replay+ binary distribution or on the same
  physical medium or within the same package as a Replay+ binary distribution.

- Replay+ binary distributions are FREE.  They may not be sold or included
  as a part of any for-profit distributions without the express written
  consent of the author.

- Replay+ binary distributions are provided "as-is" and as such, the
  author is not responsible for damage of any kind that may be caused by
  their use.


** Do not ask me for ROMs or where you can get them.  You will be ignored.

Otherwise, enjoy and have fun!

-------------------------------------------------------------------------------
Contents:

1.0  Introduction
 1.1  History
 1.2  Features

2.0  Installation
 2.1  DOS
 2.2  UNIX

3.0  Usage
 3.1  Command Line
 3.2  Navigation
 3.3  Front-End
 3.4  Key Configuration
 3.5  Joystick Configuration
 3.6  Dip Switch Settings
 3.7  Save/Load Game
 3.8  Record/Play Movie
 3.9  Network Play
  3.9.1  TCP/IP
  3.9.2  IPX
 3.10 Exit Replay
 3.11 High Scores

4.0  Troubleshooting

5.0  Supported Games
 5.1   Bump'n'Jump
 5.2   Burgertime
 5.3   Amidar
 5.4   Super Pac-Man
 5.5   Robocop
 5.6   Lock'n'Chase
 5.7   Turtles
 5.8   Pac & Pal

6.0  Contacting the Author

7.0  Thank You's

8.0  Copyright Notices
 8.1  Replay+
 8.2  M6502
 8.3  M6502
 8.1  Replay+
 8.2  M6502
 8.3  M6502
 8.4  MZ80
 8.5  Z80Em
 8.6  M6809
 8.7  68000Em
 8.8  Starscream

-------------------------------------------------------------------------------

1.0 Introduction:
-=-=-=-=-=-=-=-=-

1.1 History
-----------
Those of you that have been around the Arcade emulation scene for a while
may have seen my previous Arcade emulator entitled simply "Replay".  The
first version was released in February 1997.

I created Replay to be unique in that it was a generic emulator.  By itself
it would not emulate a single thing.  However, it allowed emulations to
be created, completely through a text file known as a .KEG.  

This meant that new games could be added to Replay without writing a single
line of code or recompiling the Replay executable.  In concept, I think this
was a good idea, however it had a few shortcomings in practice:

    1)  Most of the people creating emulations are programmers and as such
        would rather create the emulation in a familiar language (i.e. 'C'
        drivers in MAME) than in something new (like the .KEG language).
    2)  .KEG language is interpreted and therefore much slower than a compiled
        language like 'C'.
    3)  I felt that the language wasn't quite flexible enough.  For example,
        there would be no easy, generic way to add vector support.

What all this means is that I wasn't happy with Replay (are programmer's 
ever happy ;-) so I of course began rewriting it from scratch in October, 1997
and the result is a new emulator called Replay+.


1.2  Features
-------------
OK then, so what's the difference between Replay and Replay+?

Well, Replay+ tries to keep the spirit of Replay and add to it in the
area of speed, flexibility and features.

The following is a sample of what Replay+ has:

    *  Written in C++ with a variety of C & ASM CPU cores.
    *  Support for 6502, Z80, 6809 and 68000 CPUs.
    *  Support for many classic arcade games from the 70's, 80's.
    *  Hi Score saving for all games.
    *  Game Saving/Loading for all games.
    *  Movie Record/Playback for all games.
    *  Network play for all games.
    *  Global/Local key configuration.
    *  Auto-saving of key configuration.
    *  Auto-saving of dip switch settings.
    *  A new fancy front-end.
    *  Screen Rotation/Flipping at any time at the touch of a key.
    *  Built-in support for cocktail modes.
    *  A developer's version with full source code.
    *  An integrated debugger for stepping through emulated CPUs (developer's).
    *  Game driver shared library support in Unix.
    *  Much more!

-------------------------------------------------------------------------------


2.0 Installation:
-=-=-=-=-=-=-=-=-
2.1 DOS:
--------
1)  Create a directory for Replay+ (e.g. md c:\replayp).
2)  Change to the Replay+ directory (.e.g cd c:\replayp).
3)  Unzip the replay zip file (e.g. pkunzip -d c:\temp\rpdXXX.zip).
4)  Create a directory for the ROMs of a game under the Replay+ directory.
    (e.g. md c:\replayp\btime or md c:\replayp\roms\btime)
    NOTE:  The directory must match the ID for the game.  See section 6 for
           a list.
5)  Unzip the ROMs into the new directory.
    (e.g. cd c:\replayp\btime ; pkunzip c:\temp\btimerom.zip).

2.2 Unix:
---------
1)  Use gzip to uncompress the file (e.g. gzip -d rplXXX.tgz).
2)  Untar the file (e.g. tar xvf rplXXX.tar).
4)  Create a directory for the ROMs of a game under the Replay+ directory.
    (e.g. replayp/btime or replayp/roms/btime).
    NOTE:  The directory must match the ID for the game.  See section 6 for
           a list.
5)  Unzip the ROMs into the new directory.
    (e.g. cd btime ; unzip /tmp/btimerom.zip)
    (e.g. cd roms/btime ; unzip /tmp/btimerom.zip)



-------------------------------------------------------------------------------


3.0 Usage:
-=-=-=-=-=

3.1 Command Line
----------------

$ replay <options>

General <options> are:
    -game <name>    : Run the specified game directly.  Valid <name>s can be 
                      found in section 6.  
    -nojoy          : Disable joystick.
    -nonet          : Disable network play.
    -nosound        : Disable sound.
    -noopl          : Disable OPL chip emulation.
    -srate <rate>   : Sample rate (5000-65535 [44100]).
    -sbits <bits>   : Sample Bits (8,16 [8]). 
    -90,+90,-180,   : Rotate the screen the specified amount.
    +180
    -flipx          : Flip the screen horizontally.
    -flipy          : Flip the screen vertically.
    -path <path>    : A colon separated list of paths to search for ROMs.  
                      As an example, if the following is specified:
                          replay -path /a:/b/c:.
                      ROMs can be located in any of the following:
                          a/<gameId>/<rom>
                          a/roms/<gameId>/<rom>
                          a/roms/<rom>
                          b/c/<gameId>/<rom>
                          b/c/roms/<gameId>/<rom>
                          b/c/roms/<rom>
                          ./<gameId>/<rom>
                          ./roms/<gameId>/<rom>
                          ./roms/<rom>

Unix/X <options> are:
    -host <host>    : Host of the server machine for TCP/IP network play.
    -port <port>    : Port of the server for TCP/IP network play. 

Linux <options> are:
    -numfrags <num> : Number of fragments in sound driver.
    -fragsize <size>: Size of each sound driver fragment.

DOS <options> are:
    -vesa           : Use a VESA screen mode.
    -lines          : Draw with scanlines.
    -awe            : Force AWE32 sound driver if card found.
    -ipx            : Use IPX protocol for network play.
    -socket <num>   : Set socket number for IPX protocol.
    -irq <irqnum>   : Set software interrupt for IPX protocol.
    -tcp            : Use TCP/IP protocol for network play.
    -host <host>    : Host of the server machine for TCP/IP network play.
    -port <port>    : Port of the server for TCP/IP network play. 
    

3.2 Navigation
--------------

Use the arrow keys, 'Enter' and 'Escape' to navigate through the menus.

The following keys are used by Replay+ during a game:

ESC - Pause the game.
F4  - Reset the game.
F5  - Change the colour of the FPS display.
F6  - Toggle speed throttling on/off.
F7  - Display the FPS counter.
F9  - Flip the screen.  This will cycle through horizontal, vertical, and
      both horizontal and vertical flipping.
F10 - Rotate the screen 90 degrees clockwise.


3.3  Front-End
--------------

When first started, Replay+ displays a Graphical Front-End.  This screen
looks like a notebook and control of the emulator is done through this screen.

There are various important areas of the Front-End.  On the left page of the
notebook there is a list of supported games and an area that indicates the
keys that are valid in the FrontEnd and their functions.

On the right page of the notebook there is a viewport that displays various 
information depending on what you are doing within the front end.  For 
example, when Replay+ is started a preview of the current game appears in the 
viewport.  While this preview is active, you can traverse through the list of 
games available using the up/down arrows.  Each game that you stop at will 
display a preview in the cabinet screen.  Pressing ESC will bring up the 
main menu in the viewport.

Pressing Enter when the game preview appears in the viewport will select
the game and start the emulation.

Below the viewport is a very important area.  This is where you can find a 
list of the people that contributed to bringing the current
game to you.  Many people have put a lot of work into gathering information,
writing code, etc. so that these classics can be relived.


3.4  Key Configuration
----------------------

Key definitions can be changed by selecting the "Key Configuration" option
from the main menu.  Replay+ allows keys to be defined at two levels: Local
and Global.

A Local key definition affects only the current game and overrides any 
equivalent Global definition.  

A Global key definition defines what the function of the key is for all games.

For example, if I set 'A' to be player 1 up and 'B' to be player 1 down at
the global level and I set 'C' to be player 1 up in PacMan, then for 
Donkey Kong, the player would use A,B for up/down and in PacMan, the player
would use C,B for up/down.

An indicator will appear next to the setting indicating whether the value
is the global value (G) or a user specified value (U).

The TAB key is used to change between the Local and Global definitions.

To set a key, cursor to the appropriate line and press Enter followed by the
key you want to define the action to use.

To reset a key to it's original value, cursor to the appropriate line and 
press the BackSpace key.

When you have finished configuring the keys, ESC will return to the main menu.

All configuration information is stored in a "config" directory that will
be created in the first directory of the -path list (or under the Replay+
directory if -path isn't specified).  

The global configuration will be saved to a file called replay.cfg and the 
local configuration will be saved to a file constructed using the game Id
and the .cfg extension.  So for example, a PacMan configuration file will be
found in 'config/pacman.cfg'.


3.5  Joystick Configuration
---------------------------

Joystick definitions can be changed by selecting the "Joystick Configuration" 
option from the main menu.  Joystick configuration works in the same manner
as Keyboard Configuration.


3.6  Dip Switch Settings
------------------------

To change the dip switch settings, select "Dip Switch Settings" from the main
menu.  Replay+ will display a list of the current settings based on the current
values of the dip switches.

To change a setting, cursor to the appropriate line and use the left/right
arrow keys.

When you are finished changing the settings, ESC or Enter will return to the 
main menu.

Settings may not take affect in the game until the game is reset (F4) so it
may be a good idea to reset the game when you resume play.

Dip switch settings are stored to the same file as the Key and Joystick 
configuration.


3.7  Save/Load Game
-------------------

The state of a game can be saved by selecting "Save Game" from the main menu.
Only a single saved game can be stored for each game at the moment.  Subsequent
saves will overwrite the previous game.

Save games are stored in a "save" directory that will be automatically created
under the first directory in the -path list (or under the Replay+ directory if
the -path option isn't specified).

Save game file names are constructed using the game Id and the .sav extension.
So for example, a PacMan save game will be found in 'save/pacman.sav'.

The state of a game can be loaded by selecting "Load Game" from the main menu.


3.8  Record/Play Movie
----------------------

Replay+ also allows you to record a movie for playback at a later date.

To start recording a movie select "Record Movie" from the main menu.  The
recording will begin when you return to play the game.  Only a single
movie can be stored for each game at the moment.  Subsequent recordings
will overwrite the previous movie.

A flashing record indicator (small circle) will appear in the upper left of 
the game screen while you are playing to indicate that the game is being 
recorded.

When the movie is being recorded, the main menu options change to only
allow stopping of the movie or exiting of Replay+.  Recording will proceed
until "Stop Recording" has been selected.  At this time, the main menu will
return to its original state.

Movie games are stored in a "movie" directory that will be automatically 
created under the first directory in the -path list (or under the Replay+ 
directory if the -path option isn't specified).

Movie game file names are constructed using the game Id and the .mov 
extension.  So for example, a PacMan movie will be found in 'movie/pacman.mov'.

Movies can be played back by selecting "Play Movie" from the main menu.  The
playback will begin when you return to play the game.  During playback, none
of the game's controls will be available so that the user cannot interfere
with the playing of the movie.

A flashing playback indicator (small triangle) will appear in the upper left of
the game screen while the movie is being played.

When a movie is being played back, the main menu options change to only
allow stopping of the movie or exiting of Replay+.  Playback will proceed
until the movie ends or until "Stop Playback" has been selected.  At this 
time, the main menu will return to its original state.


3.9  Network Play
-----------------

Network play is based on a client/server architecture.  That is, one player
sets up Replay+ to act as the server and the rest of the players connect
to the first player as clients.

To start a server for the current game, select "Start Network Game" from the 
main menu.  The screen will then display the network connection screen.  The 
top portion of the screen will show who has currently connected successfully 
and the bottom portion of the screen (separated by a line) displays status 
messages.

The network game can be started by the server any time after the first client 
has successfully connected by pressing the Enter key.  The ESC key will 
terminate the setup of the network game and return to the main menu.

To start a client, select "Join Network Game" from the main menu.  The 
screen will display the network connection screen.  This differs slightly
from the server screen in that only the status messages will be displayed.
A client can only wait for the game to start or abort the connection by
pressing ESC.  If the client waits, the game will start automatically when
the server has started the game.  The only exception to this is when the
client does not have the ROMs for the game selected by the server.  In this
case, the clients connection to the network game will be automatically
terminated.

Once the game has started, the server will begin passing out the available 
players to the connected clients.  Once the players run out, the remainder
of the clients will be observers.

For example, if a network Joust game is being played there are only two
player positions available.  So if the game is started with the server and
3 clients, the following assignments will be made:

    Server   - Player 1
    Client 0 - Player 2
    Client 1 - Observer 3
    Client 2 - Observer 4

This will be noted by a message in the upper left hand corner of the screen
which looks something like "Net Game: Player 1" or "Net Game: Observer 3".
This message will appear until a control key is pressed by the client.

During play, all controls will be available to all players/observers.  This
means that Player 2 could interfere with Player 1 and an Observer could
interfere with any of the players by pressing keys associated with the
controls of that player.

This may change in the future but it is non-trivial to determine when controls
are active for each player.  However preliminary code has been added to 
support this.  For now, just play with people you trust and be honest!  Besides
it will be fairly obvious if someone is cheating when a player's pacman 
suddenly veers to the left into a ghost when no key was pressed.

Any player/observer can pause the game using ESC.  Unfortunately, the pausing
isn't very graceful at the moment.  It simply locks up the other players 
until the paused player/observer either returns to the game or disconnects
from the net game.  So don't leave a net game paused very long or the other
players/observers will get annoyed.  I'll try and clean this up in future
versions.

While playing a network game, the main menu only has the option to 
"Stop Network Game" (for the server) or "Leave Network Game" (for the client).

If the server stops the game, the net game is shut down and the clients
will automatically return to the Front-End in the paused state with a message
indicating that the net game has been shut down.  

If a client leaves the network game, the net game will continue without the 
player.  When this happens the server will reassign the player/observer 
positions by moving the last connection into the vacated spot.  So to use
the previous example, if Client 0 disconnects then Client 2 will move into
the vacated spot and become Player 2.  When a clients position changes,
the "Net Game: Player X" message will appear again indicating that the client
now has a different role.

If all clients leave the network game, the network game is shut down and the
server automatically returns to the Front-End in the paused state with a 
message indicating that the net game has been shut down.

Note that High Score loading/saving is disabled during network play.  This
is to prevent loss of synchronization when one client's memory (i.e. high
score area) differs from anothers.  The alternative was to have the high 
scores of the client overwritten by the server's high scores so that all
players have the same values.  Obviously, that would not be very desirable.


3.9.1  TCP/IP
-------------

If you are running a Unix version of Replay+ you must use the TCP/IP 
protocol for communication (in fact you have no other choice and it will
be selected automatically).

If you are running a DOS version of Replay+ you will use the TCP/IP
protocol by default unless you specify the '-ipx' command line option.

If you would like to be the server, you do not need to specify any command
line options.

If you would like to be a client, you must specify the '-host <host>'
parameter to indicate which machine the server is running on.  The Unix
version will accept either an IP address (i.e. dot-notation of the form
<a>.<b>.<c>.<d>) or a host name.  The DOS version only accepts IP addresses.

The server will open a connection on port 6444 by default.  You can change
this by either specifying the '-port <port>' command line option or
by specifying a port for 'replay' in your /etc/services file.  If the
server is using a non-default port then all clients must specify the same
port using the '-port <port>' option.

The DOS version of Replay+ makes use of the Windows 95 TCP/IP stack and 
will therefore will only work in a Windows 95 DOS box.


3.9.2  IPX
----------

*NOTE:  THE IPX CODE IS CURRENTLY BROKEN.  IF ANYONE CAN GET IT WORKING *
*       PLEASE LET ME KNOW!                                             *

If you are running a DOS version of Replay+ you can use the IPX protocol
by specifying the '-ipx' command line option.

The server will open a connection on socket 0x869c by default.  You can
change this by specifying the '-socket <socket>' command line option.
If the server is using a non-default socket then all clients must specify
the same socket using the '-socket <socket>' option.

To get an IPX network game going try following this procedure:

1)  Find out what network adapter you are using.
2)  Get pktd11.zip from www.crynwr.com.
3)  Install the appropriate packet driver from pktd11.zip into autoexec.bat.
4)  Install pdipx.com into autoexec.bat (from pktd11.zip).
5)  If pdipx.com causes an error then try specifying a different software
    interrupt number.
6)  Use the '-irq <software irq>' command line option with the interrupt
    number specified in 5.


3.10 Exit Replay+
-----------------

Selecting the "Exit Replay+" option from the main menu will do the obvious.


3.11 High Scores
----------------

High scores are automatically saved for each game supported.  They will be
saved in a "scores" directory that will be created in the first directory in 
the -path list (or in the Replay+ directory if -path isn't specified).

High Score file names are constructed using the game Id and the .scr extension.
So for example, a PacMan save game will be found in 'scores/pacman.scr'.



-------------------------------------------------------------------------------


4.0 Troubleshooting:
-=-=-=-=-=-=-=-=-=-=

"It's too fast"
    Make sure speed throttling is on (try tapping F6).

"It's too slow"
    Try the -frameskip command line option.

"It doesn't seem to work under Win95"
    Hmm, no general solution to this.  Let me know your problem.

"I can't get the sound to work under Linux"
    Make sure you have the OSS installed.  Check that /dev/dsp exists.

"I can't get the sound to work under DOS"
    Make sure the game you are running has sound support.  Check the 
    list in the following section.

"I can't start a TCP/IP network game"
    Make sure there isn't already a net game started on your machine.
    If you are using the DOS version make sure you are running it through
    a Windows 95 DOS window.

"I can't join a TCP/IP network game"
    Make sure you are specifying the correct host/port using the -host and
    -port command line options.
    If you are using the DOS version make sure you are running it through
    a Windows 95 DOS window.

"It won't accept the host name I specified with the '-host <host>' option.
    If you are using the DOS version, host names are not accepted, you must
    specify the host using IP notation (i.e. <a>.<b>.<c>.<d>).

"I can't start/join an IPX network game"
    IPX networking code is currently broken.  Try TCP/IP if possible.

"It doesn't work on my computer"
    Well, I've only tested it on mine where it works.  You'll have to 
    mail me the details.


-------------------------------------------------------------------------------


5.0 Supported Games
-=-=-=-=-=-=-=-=-=-

16 ROM sets are supported in this version.  In no particular order, they are:

Amidar (Japan),          Amidar (US),              Amigo,
Bump'n'Jump,             Burgertime (Midway),      Burgertime (DECO),
Burnin' Rubber,          Car Action,               Lock'n'Chase,
Robocop,                 Robocop (Pirate),         Super Pac-Man (Bally),
Super Pac-Man (Namco),   Turtles,                  Turpin,
Pac & Pal,


5.1 Bump'n'Jump
---------------
Game Ids:
  bnj     - Mfgd by Midway.
  brubber - Data East copyright (Burnin' Rubber).
  caractn - Bootleg (Car Action).
 
Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 jump     (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 jump              (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  None.


5.2 Burgertime
--------------
Game Ids:
  btime  - Mfgd by Midway.
  btimea - Data East copyright.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 pepper   (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 pepper            (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  None.


5.3 Amidar
----------
Game Ids:
  amidar   - The US version.
  amidarjp - The Japanese version.
  amigo    - A bootleg.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  5      - Insert coin in slot 3.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 jump     (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 pepper            (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  None.


5.4 Super Pac-Man
-----------------
Game Ids:
  superpac - Bally Midway copyright.
  superpcn - Namco copyright.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in left slot.
  4      - Insert coin in right slot.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 speed    (upright mode).
  tfghws - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 speed             (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  None.


5.5 Robocop
-----------
Game Ids:
  robocop  - The original Data East version.
  robocopp - The pirate version.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  5      - Insert coin in slot 3.
  arrows - Player 1/Player 2 movement.
  r-alt  - Player 1/Player 2 fire.
  r-ctrl - Player 1/Player 2 jump.

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  P - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  - The original version is not yet playable.  There are issues with some
    unknown external hardware.
  - The sound support is *very* preliminary.  A first cut at the YM3812
    emulation is done but is only available on the DOS version and only
    lasts for a couple of minutes due to issues with the sound CPU emulation.
    The YM2203 and OkiM6295 still need to be emulated.


5.6 Lock'n'Chase
----------------
Game Ids:
  lnc      - The original Data East version.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 lock     (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 lock              (cocktail mode).

Feature Checklist:
  ? - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  - I'm not sure if the colours are correct.  They look pretty good except
    for the fact that the cops are purple!  Can anyone confirm the colours?


5.7 Turtles
-----------
Game Ids:
  turtles  - Konami copyright.
  turpin   - Sega copyright (Turpin).

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in slot 1.
  4      - Insert coin in slot 2.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 drop     (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 drop              (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  None.


5.8 Pac & Pal
-------------
Game Ids:
  pacnpal  - Original.

Default Keys:
  1      - Start 1 player game.
  2      - Start 2 player game.
  3      - Insert coin in left slot.
  4      - Insert coin in right slot.
  arrows - Player 1/Player 2 movement (upright mode).
  r-alt  - Player 1/Player 2 fire     (upright mode).
  tfgh   - Player 2 movement          (cocktail mode).
  l-ctrl - Player 2 fire              (cocktail mode).

Feature Checklist:
  Y - Accurate Colours.
  Y - Cocktail Mode Support.
  Y - Sound.
  Y - Hi Score Saving.
  Y - Game Saving/Loading.
  Y - Movie Recording/Playback.
  Y - Network Play.
  Y - Static Driver.
  Y - Dynamic Driver.

Notes:
  There seems to be a problem with the third attract screen.  Where are the
  ghosts?  Other than that, fully playable.



-------------------------------------------------------------------------------

6.0 Contacting the Author:
-=-=-=-=-=-=-=-=-=-=-=-=-=
Please feel free to let me know of any bugs you find, or suggestions you
have for improving the emulator.  You can e-mail me and I'm also subscribed
to the MUL8R mailing list.

Name:   Kevin Brisley
e-mail: replay@icomm.ca
www:    http://www.icomm.ca/replay


-------------------------------------------------------------------------------

7.0 Thank You's
-=-=-=-=-=-=-=-
Sergio Munoz for initially pointing me in the right direction.

Michael M. Morrison for sharing what he knew about Burgertime.

Marat Fayzullin for his portable 6502 emulation package.

Marcel de Kogel for his Z80 emulation package.

Neil Bradley for his M6502 & MZ80 emulation cores which are used in the 
    x86 versions.

Patrick Lawrence for his 6809 emulation core.

Neill Corlett for his Starscream 68000 emulation core.

Lewin A.R.W. Edwards for his help with the Robocop hardware.

Nicola Salmoria and team for the MAME source code from which some of the 
    Replay+ routines are based.

Tom Chesser & Paul Thorn for their help on the finer points of schematic 
    reading.

Many other talented emulator authors who worked so hard in bringing these
    games back to life.  See the in-game credits for a full list.

-------------------------------------------------------------------------------
8.0  Copyright Notices
-=-=-=-=-=-=-=-=-=-=-=

8.1  Replay+
------------
Replay+
Multi-Game Arcade Emulator
Kevin Brisley
Copyright(c) 1997,1998
Version 1.00

8.2  M6502
----------
Multi-6502 CPU emulator
Neil Bradley (neil@synthcom.com)
Copyright(c) 1998
Version 1.3

8.3  M6502
----------
6502 Emulator
Marat Fayzullin, Alex Kasivsky
Copyright(c) 1996

8.4  MZ80
---------
Multi-Z80 CPU emulator
Neil Bradley (neil@synthcom.com)
Copyright(c) 1998
Version 2.1

8.5  Z80Em
----------
Z80 Emulator
Marcel de Kogel
Copyright(c) 1996,1997

8.6  M6809
----------
Multi-6809 CPU emulator
Patrick Lawrence
Copyright(c) 1997
Version 0.01

8.7  68000Em
------------
68000 Emulator
Bernd Schmidt

8.8  Starscream
---------------
68000 Emulator
Neill Corlett
Copyright(c) 1997
Version 0.24
