PSMS v1.2 - SMS Emulator for the PS2
------------------------------------

PS2 specific code By Nick Van Veen (aka Sjeep)
SMS emulation core coded by Charles Mac Donald


History:
--------

1.2 - Fixed bug in sound driver that prevented PSMS
      from booting with AR/GS swap. Improved FILES.TXT
      parsing code, changed key mapping.
1.1 - Fixed bug in rapid fire code.
1.0 - First release (preview).

Introduction:
-------------

PSMS is a Sega Mastersystem emulator that run's on the
Sony Playstation 2. It is a port of SMSPlus, the excellent
SMS emulator by Charles Mac Donald. Since the emulation core
was taken from an already very complete emulator, PSMS
inherits all the great features of SMSPlus, such as:

- Accurate emulation. Compatability rate is around 95%.
- Game Gear support.
- Accurate rendering - all graphics features of the SMS
  and GG are emulated and rendered properly.

PSMS is freeware. You may copy and distribute it as much
as you like. Please do not contact me regarding where to
find ROM's - I can not give out that kind of information.

Current Features:
-----------------

- Full frame rate (easily!!)
- Audio output
- PAL/NTSC auto-detection
- Loads games from the cdrom
- GUI for selecting roms and changing emulation options
- Game Gear Support
- Ability to save/load game states (not to memory card)
- Easy to create your own game compilation cd's
- Analog stick support

If you would like a feature implimented that is not listed above,
please contact me with your idea. See the contact section below.


Usage:
------

First you need to create a cd that includes the emulator, your
SMS/GG roms and a rom database file. See cdinfo.txt for details on
how to get this all set up. Once you've created the cd, boot it
with your favourite method (for most people this will involve a
swap with an Action Replay/Gameshark disk). If your cd has been
created properly, you should see the rom selection screen with a
scroll-box listing all your games. From here you can choose the
game you want to play. Once you've started playing a game, you can
press SELECT to enter the in-game menu where you can save/load the
game state or return to the rom selection screen to choose another
game.

Rom selection screen controls:

Up/Down    - Hold to scroll up/down.
Left/Right - Hold to scroll up/down a page at a time.
X          - Press to start emulation of selected game.

You may also use the left analog stick to scroll.

In-game controls:

PS2         -         SMS
-------------------------
Arrows      =       D-Pad
Left stick  =       D-Pad
Square      =    Button 1
Circle      =    Button 2
Start       =    PAUSE (START for GameGear)
L1          =    Button 1 Rapid fire
R1          =    Button 2 Rapid fire

Pressing select will bring up the ingame menu.

NOTE: Input is taken from both controller ports, so 2 player gaming
is supported. The in-game controls are the same for both controllers.
Only the 1st controller can be used in the rom selection screen.


Ingame menu:

From the ingame menu you can...

- Load/Save game state
- Change SMS region
- Toggle sound output on/off
- Reposition the display
- Return to the main menu

To reposition the display, hold down SELECT and use the arrow
buttons to move the display to the correct position on the screen.

State saving:

At any time during gameplay the state of the game may be
saved, and restored when desired (ie, if you loose a life).
Currently the state is stored in PS2 memory, you cannot store it on
a memory card. The state is valid until you leave the current game.
Once you return to the rom selection screen the state is destroyed.
This is to prevent loading an invalid state (ie, loading a state
saved in a different game to the one currently been emulated).

Contact:
--------

PSMS Homepage: http://psms.gamebase.ca


Nick Van Veen (aka Sjeep)
 - e-mail: sjeep@gamebase.ca
 - IRC: Sjeep, on EFNet

Charles Mac Donald
 - e-mail: cgfm2@hooked.net
 - WWW: http://cgfm2.emuviews.com

Thanks go to:
-------------

Vzzrzzn   - for releasing src to his demo's, which I learnt
            a lot from, and for writing the origional sound
			driver (which is no longer used).

Pukko     - for releasing padlib and for the many fixes to
            the sif code in psx2lib he has released.

Gustavo   - for the origional psx2lib.

Oobles    - for his IOP tutorial and example code.

Justice7  - for writing the FILES.TXT util.

Naplink Team - for Naplink. All development has been done
               using naplink.

Charles Mac Donald - for writing SMSPlus, the excellent
                   SMS emulator on which PSMS is based.

				   Contact him: cgfm2@hooked.net
                   SMSPlus website: http://cgfm2.emuviews.com.


Thanks also to the beta testers: Phex_X, Sykopieces, struct2,
                                 justice7 and Sparcky.


Greets to: Nagra, Stryder Hiryu, Now3d, Dreamtime, Vzzrzzn, Oobles,
---------  Gustavo, Pukko, Justice7, Jules, Karmix, Phed_X, Duke,
		   Adk, struct2, Sparcky, dayta, Sykopieces, adresd and
		   anybody that I've missed out.
LEGAL:
------

The emulator source code (including origional SMSPlus code and PSMS
code) is distributed under the terms of the GNU General Public License.
A copy of the GNU General Public License can be found in the "license"
file included in the PSMS archive.

Some PS2 specific src code such as pukko's padlib and vzzrzzn's gfxpipe is
NOT distributed under the terms of the GNU General Public License. Details
are included in the src archive.

The Z80 CPU emulator, SN76489 and YM3812 sound chip emulation are taken from
the MAME project, and terms of their use are covered under the MAME license.
(http://www.mame.net)

The YM2413 instrument parameter table is also taken from MAME.

SMSPlus is (c) Charles Mac Donald.
