
PilOth v. 1.1 documentation

---

Basics:

  Tap on a square to play your move there.  PilOth will emit a beep if the move
  is illegal.

  If you must pass (no legal move), tap on any square.

  You can use the hardware scroll key ("page up" / "page down") to navigate
  through the game like with "Take Back" / "Replay".

  Note: You can operate your Palm device while PilOth is thinking; however
  it might not be as responsive as when it is waiting for your commands.

---

Game menu:

* New Game

  Clear the current game and start a new one.

  Note: "Analyse" mode is turned off.

* Copy Game

  Save the current game as text into the ClipBoard buffer.

  Notes: Only the moves upto the current one are saved.  If you want the
         whole game to be saved, use "Replay All" first.

* Paste Game

  Load a game as text from the ClipBoard buffer.

  Notes: Only games starting with the standard position can be "loaded".
         PilOth can read games saved with Reversi Master.

* Set up position

  In this mode you can edit the position.  Use the "Select" menu to pick a
  colour (Black / White / Empty), then use taps in the board to affect squares.
  When you are done, validate the position in the "Set up" menu; you must then
  indicate which side is to move.

  Note: You can also use the scroll key to change the fill colour.

---

Move menu:

* Take Back

  "undo" the last move.

  Notes: You can use the "page up" key instead.  The moves are not erased:
         you can use "Replay".  It is always your turn to move after a
         "Take Back"; if you want PilOth to play then, use "Change Side".

* Take Back All

  Go to the start of the game.

  Note: Unlike with "New Game", the game is not erased: you can use
        "Replay" / "Replay All".

* Replay

  "redo" the next move ("undone" with "Take Back").

  Notes: You can use the "page down" key instead.  It is always your turn to
         move after a "Replay"; if you want PilOth to play then, use
         "Change Side".

* Replay All

  Go to the end of the game.

* Move Now

  Stop PilOth's current thinking process.  When it is its turn to move,
  the move is played immediately.

  Note: "Move Now" does not make PilOth think if it is your turn; use
        "Change Side" instead.

---

Mode menu:

* Change Side

  Make PilOth think if it was your turn and vice-versa.

  Note: This command also works if you were in "Two Players" or "Analyse" mode.

* Two Players

  Use PilOth as a passive Othello board.  The program does not think or play.
  You can use it to play with somebody else (on a single Palm device) or to
  submit a variation.

  Note: To quit this mode, select "Change Side"; PilOth will start thinking.

* Autoplay

  Make PilOth play against itself.

  Notes: To quit the "Autoplay" mode, you can select another mode in this menu
         like "Change Side".  If you use "Move Now", PilOth will play its move
         instantly but stay in "Autoplay" mode.

* Analyse

  Same mode as "Two Players", but PilOth displays its thinking all the time.
  You can use this mode to analyse a game.

  Notes: You can freely navigate through the game (by either playing moves or
         using "Take Back" / "Replay"), and PilOth will always think about the
         current position.  The search uses the "Infinite" mode, even if the
         position is in the opening book or there is only one legal move.
         The "Analyse" mode drains more batteries than in "Two Players" mode.
         To quit the "Analyse" mode, you can select another mode in this menu
         like "Two Players".  You can use your Palm device normally while in
         "Analyse" mode, but it might not be as responsive.

---

Options menu:

* Display Options

  With these options you can "customise" the layout of PilOth's main screen.

  - "Show Title Bar"

    Display information such as whose turn it is or the score when the game
    ends.

    Note: The menu is still usable even when the title bar is not shown.

  - "Show Coordinates"

    Display ranks and files.

    Note: The ranks are in opposit order as compared with chess!

  - "Show Last Move"

    Draw a "dot" in the last played disc.

  - "Show Legal Moves"

    Draw a "dot" in all squares you can place a disc in.

  - "Show Search Information"

    Show information about PilOth's thinking process below the board.

    Note: See the section "Notes on PilOth's thinking information" further in
          this document.

  - "Draw Squares in Relief"

    Draw a "3D like" board grid.

    Note: This option is only used on colour devices.

  - "Draw Shadow"

    Draw a shadow under discs and legal move dots.

    Note: This option is only used on colour devices.

  - "Use Graphics Buffer"

    Draw graphics in memory first to speed up display.  This option makes
    graphics faster and flicker-free.  However it is incompatible with
    high-resolution, due to a PalmOS limitation.

    My advice is: try both values.  If the display looks better with one
    value, keep it.  If the display looks unchanged, use the buffer.

* Notify Options

  In some cases PilOth displays additional information in a new window, and
  you need to confirm before going on.  With these options, you can switch
  the windows on or off.

  - "Confirm New Game"

    Ask for confirmation before starting a new game.

  - "Confirm Paste Game"

    Ask for confirmation before "loading" a game.

  - "Notify Pass"

    Notify when you or PilOth must pass.

    Notes: If you must pass and "Notify Pass" is on, the "pass move" is
           automatically played.  If "Notify Pass" if off, you must tap
           somewhere in the board to pass.

  - "Notify Game Result"

    Display the game result when the game ends.

    Note: The title bar - if shown - also contains the game result.

  - "Use Sound"

    Emit a beep when PilOth plays a move and in some error cases (like illegal
    move attempt).

    Note: Regardless of this option, PilOth does not emit sound if system sound
          is deactivated.

* Level Options

  With these options you can "customise" the way PilOth thinks.

  - "Opening Book"

    The opening book is a static collection of positions PilOth knows.  When
    PilOth knowns the current position, it plays its move instantly.

  - "Book Randomness"

    When the current position is in PilOth's opening book, several moves are
    often known.  This option influences the way one of them is picked.
    With a small randomness, PilOth will focus on playing good moves.  With a
    large one the games will be more varied, but PilOth can play some slightly
    bad moves.

    Note: Even when "Book randomness" is set to "None", PilOth can vary its
          play if several moves are equally good (during the opening only).

  - "Level Type"

    Strictly speaking, PilOth always thinks in the same way.  The time spent
    thinking however greatly influences the level of play.  This option and the
    followings select the way you restrict PilOth's thinking time.

    - Depth:    Think to a fixed depth.
    - Time:     Think for a fixed amount of time at each move.
    - Infinite: Think "forever"; you must interrupt PilOth yourself with
                "Move Now".

    Notes: In various situations, PilOth can play before the depth or time
           limit is reached.  This includes opening book moves, positions in
           which only one move is legal, and endgame positions which can be
           solved completely.  If "Pondering" is on, it is possible that PilOth
           goes past those depth or time limits, if you played the move PilOth
           predicted.

  - "Seconds per Move"

    Only used when "Level Type" is "Time".  PilOth thinks for at most this
    number of seconds for each move.

    Note: when "Level Type" is "Time", you do not need to configure WLD and
          Full solving (see below); this is automatic.

  - "Midgame Depth"

    Only used when "Level Type" is "Depth".  PilOth thinks upto the selected
    lookahead depth.

  - "WLD Solve Depth" and "Full Solve Depth"

    Only used when "Level Type" is "Depth".  In Othello it is possible to
    determine the best move near the end of the game.

    Notes: Endgame search usually takes a lot of time when the number of empty
           squares is high (say larger than 16).  If the search takes too much
           time, you can interrupt it with "Move Now".

    - "WLD Solve Depth"

      WLD stands for Win/Loss/Draw, or "outcome search".  When the number of
      remaining moves (the number of empty squares) is lower than or equal to
      "WLD Solve Depth", PilOth looks for a winning move, or a drawing move if
      no winning move is found.  You can see this as a "perfect play" move
      *restricted* to the Win/Loss/Draw result.

      Notes: This options is used only if "Level Type" is "Depth".
             If "WLD Solve Depth" is set to 0, the program never uses WLD
             searches.

    - "Full Solve Depth"

      Full solve stands for "exact search".  When the number of remaining moves
      (the number of empty squares) is lower than or equal to "Full Solve Depth",
      PilOth will play the move which leads to the highest score (in disc
      difference).  You can see this as a "perfect play" move.

      Notes: This options is used only if "Level Type" is "Depth".
             This Search takes even more time than the "WLD" one (see above).
             If "Full Solve Depth" is set to 0, the program never uses Full
             searches.

  - "Pondering"

    PilOth thinks even when it is your turn to move.  This can make PilOth play
    better or faster on its next move.

    Notes: "Pondering" drains more batteries.  You can use your Palm device
           normally while in "Pondering" mode, but it might not be as responsive.

* About

  Display information about version, status and contact.

---

Notes on PilOth's thinking information:

  PilOth displays information about its thinking if "Show Search Information"
  is selected in the menu "Display Options".

  Example:

  - While PilOth is thinking:

    The first line displays information about the best move so far.

    Example: "8 +10 g4 g5 c6 h5 e1 c1 c2 b5"

    The best move so far has been calculated to depth 8.
    The value is +10 for the side to move (usually PilOth).
    g4 is the best move and "g4 g5 c6 h5 e1 c1 c2 b5" is the expected sequence.

    Notes: The expected sequence can be shorter than the search depth.
           You can use "Show Coordinates" in the "Display Options" menu if you
           are not familiar with them.  PilOth can sometimes indicate a value
           bound instead of an exact value with "<" (resp. ">"); it actually
           means "<=" (resp. ">=").

    The second line displays information about the current state of search.

    Example: "8 3/10 g5 43s"

    The current search depth is 8.
    PilOth is analysing the 3rd move among 10 legal moves.
    This move is g5.
    PilOth has spent 43 seconds thinking so far.

    Note: The current search depth can be higher than the "best move" depth.

  - After PilOth has finished:

    The first line is unchanged.  The first move in the predicted line is the
    move played.

    The second line has changed.

    Example: "57.40s 146505 nodes 2552 n/s"

    PilOth has spent 57.40 seconds in total.
    146505 positions were analysed.
    The average speed was 2552 positions per second.

    Notes: The speed depends on game stage, time spent and of course Palm
           device speed.  Speed is usually much higher during the endgame.

---

