INTRODUCTION
------------

Thom is one of the best emulator of the Thomson TO7 
home computer running on MacOS, Windows and Unix.

It has been initially written by Sylvain Huet, then 
Eric Botcazou continued this project and added 
many news features.

PSPThom is a port on PSP of version 1.1.5

CONTROL
------------

- Virtual keyboard

In the THOM emulator window, there are three
different mapping (standard, left trigger, and right
Trigger mappings).  You can toggle between while
playing inside the emulator using the two PSP trigger
keys.

-------------------------------------
PSP        TO7-70          (standard)
  
Square     Space
Triangle   ENTER
Circle     1
Cross      Joystick Fire
Up         Up
Down       Down
Left       Left 
Right      Right

Analog     Joystick

-------------------------------------
PSP        TO7-70   (left trigger)
  
Square     FPS  
Triangle   LOAD Snapshot
Circle     Swap digital / Analog
Cross      SAVE Snapshot
Up         Inc delta Y
Down       Dec delta Y
Left       Render mode
Right      Render mode

-------------------------------------
PSP        TO7-70   (right trigger)
  
Square     Stop 
Triangle   Return
Circle     1
Cross      Auto-fire
Up         Up
Down       Down
Left       Dec Fire   
Right      Inc Fire   

Analog     Joystick
    
Press Start+L+R to exit and return to eloader.
Press Select    to enter in emulator main menu.
Press Start     open/close the On-Screen keyboard

In the main menu

RTrigger   Reset the emulator

Triangle   Go Up directory
Cross      Valid
Circle     Valid
Square     Go Back to the emulator window

The On-Screen Keyboard of "Danzel" and "Jeff Chen"

Use Analog stick to choose one of the 9 squares, and
use Triangle, Square, Cross and Circle to choose one
of the 4 letters of the highlighted square.

Use LTrigger and RTrigger to see other 9 squares
figures.

- IR keyboard

  You can also use IR keyboard. Edit the
pspirkeyb.ini file to specify your IR keyboard model,
and modify eventually layout keyboard files in the
keymap directory.

The following mapping is done :

  IR-keyboard   PSP

  Cursor        Digital Pad

  Tab           Start
  Ctrl-W        Start

  Escape        Select
  Ctrl-Q        Select

  Ctrl-E        Triangle
  Ctrl-X        Cross
  Ctrl-S        Square
  Ctrl-F        Circle
  Ctrl-Z        L-trigger
  Ctrl-C        R-trigger

In the emulator window you can use the IR keyboard to
enter letters, special characters and digits.

LOADING TAPE FILES (K7)
------------

If you want to load tape image in the virtual drive
of your emulator, you have to put your tape file
(with .zip or .k7 file extension) on your PSP memory
stick in the 'k7' directory. 

Then, while inside THOM emulator, just press SELECT
to enter in the emulator main menu, choose "Load K7",
and then using the file selector choose one tape file
to load in your emulator.

You can use the virtual keyboard in the file
requester menu to choose the first letter of the game
you search (it might be useful when you have tons of
games in the same folder). Entering several time the
same letter let you choose sequentially files
beginning with the given letter. You can use the
space key of the virtual keyboard to load the tape
file.

To run the game of your tape file, you have to use
the virtual keyboard (press START key) and type the
TO7-70 command 'LOADM"",,R' followed by ENTER
(Triangle).

You can also use directly the shortcut in the
emulator menu (Command LOADM option)

To RUN BASIC program, you have to type the TO7-70
command 'RUN""' followed by ENTER (Triangle)

You can also use directly the shortcut in the
emulator menu (Command RUN option)

It may happen that you need to rewind the tape using
the Rewind K7 menu ...

The command 'LOAD""' (without M) is sometimes needed,
when LOADM command doesn't work.

If you use the Basic rom 1.0 128, then you will have
to put the string "CASS:" in your 'LOADM', 'LOAD' or
'RUN' command as follows :

  LOADM"CASS:",,R 
  LOAD"CASS:",,R
  RUN"CASS:"

LOADING DISK FILES (SAP)
------------

If you want to load tape image in the virtual disk
drive of your emulator, you have to put your disk
file (with .sap file extension) on your PSP memory
stick in the 'disc' directory. 

Then, while inside THOM emulator, just press SELECT
to enter in the emulator main menu, choose 
"Load Disc 0" (or Disc 1), and then using the file 
selector choose one disc file to load in your
emulator.

Use the same commands as described in the "Load tape"
section.

If you want to specify the command to run for given
games then you can do it in the run.txt, using the
following syntax :

  tapename=LOAD"CASS:RunName",,R
  tapename=LOADM"CASS:RunName",,R
  tapename=RUN"CASS:RunName"
  diskname=LOAD"RunName",,R
  diskname=LOADM"RunName",,R
  diskname=RUN"RunName"

CHEAT CODE (.CHT)
----------

You can use cheat codes with PSP-Thom. 
You can add your own cheat codes in the cheat.txt file
and then import them in the cheat menu.
All cheat codes you have specified for a game can be 
save in a CHT file in 'cht' folder.
Those cheat codes would then be automatically loaded
when you start the game.

The CHT file format is the following :
#
# Enable, Address, Value, Comment
#
1,36f,3,Cheat comment

Using the Cheat menu you can search for modified bytes
in RAM between current time and the last time you
saved the RAM. It might be very usefull to find "poke"
address by yourself, monitoring for example life numbers.

To find a new "poke address" you can proceed as follow :

Let's say you're playing Pulsar and you want to find 
the memory address where "number lives" is stored.

. Start a new game in Pulsar
. Enter in the cheat menu. 
. Choose Save Ram to save initial state of the memory. 
. Specify the number of lives you want to find in
  "Scan Old Value" field.
  (for Pulsar the initial lives number is 5)
. Go back to the game and loose a life.
. Enter in the cheat menu. 
. Specify the number of lives you want to find in
  "Scan New Value" field.
  (for Pulsar the lives number is now 4)
. In Add Cheat you have now one matching Address
  (for Pulsar it's 6C51)
. Specify the Poke value you want (for example 5) 
  and add a new cheat with this address / value.

The cheat is now activated in the cheat list 
and you can save it using the "Save cheat" menu.

Let's enjoy Pulsar with infinite life !!

COMMENTS
------------

You can write your own comments for games using
the "Comment" menu.  The first line of your comments
would then be displayed in the file requester menu
while selecting the given file name (Tape, Disk,
keyboard, settings).


SETTINGS
------------

You can modify several settings value in the settings
menu of this emulator.  The following parameters are
available :

  Sound enable : 
    enable or disable the sound

  Active Joystick : 
    Joystick player, it could be 1 or 2

  Speed limiter :
    limit the speed to a given fps value

  Skip frame : 
    to skip frame and increase emulator speed

  Display fps : 
    display real time fps value 

  Render mode : 
    many render modes are available with different
    geometry that should covered all games
    requirements

  Delta Y : 
    move the center of the screen vertically

  Vsync : 
    wait for vertical signal between each frame displayed

  Swap Analog/Cursor : 
    swap key mapping between PSP analog pad and PSP
    digital pad

  Auto fire period : 
    auto fire period

  Auto fire mode : 
    auto fire mode active or not

  Display LR led : 
    draw a small blue rectangle in top of the screen
    when trigger keys are pressed

  Clock frequency : 
    PSP clock frequency, by default the value is set
    to 222Mhz, and should be enough for most of all
    games.
    But if you encounter graphical glitches then you
    may increase the PSP clock frequency for a better 
    emulation experience.

  Basic version :
    You may specify the basic version you want, with
    floppy or tape support.

  Enjoy,

            Zx

