*
* Reversi (a.k.a. Othello) for the Signetics S2650
*
* Adapted from the BASIC program published in the article:
* 
* "Programming Strategies in the Game of Reversi"
* Maggs, Peter B.
* BYTE, November 1979, pp. 66-79.
*
* S2650 Version:
*
* Author: Chris Burrows
* v1.0 May 1981
* v2.0 Nov 2008
*
* (c) 1981-2008 Chris Burrows
*
* chris@cfbsoftware.com
*
* CFB Software
* http://www.cfbsoftware.com
*
* This version of the software is distributed, and may be used, 
* free of charge. It may be given away to anyone, included on 
* CD-ROM libraries, uploaded to WWW pages, ftp sites and bulletin 
* boards, etc. etc. as long as it is distributed in its complete 
* original unmodified form, including this ReadMe file. 
*
For rules of the game of Reversi see:

  http://en.wikipedia.org/wiki/Reversi

The program occupies locations 0440H to 0A77H, and uses routines from
PIPBUG. It has been tested on an Electronics Australia 78up5 S2650 
Mini-computer with 2Kb of RAM and v8.33 of Amigan Software's Signetics-
based simulator WinArcadia:

  http://amigan.1emu.net/releases/

To run the program, type:

    G440<CR>


1. Board Display

The computer displays the 8x8 square Reversi board, with the column
numbers across the top and the row numbers down the side. The display
is followed by the prompt to make a move:

   12345678
  1........
  2........
  3........
  4...BW...
  5...WB...
  6........
  7........
  8........
  Black to move (Row,Col)


2. Entering Moves

When prompted to make a move enter a 2-digit number. The second 
digit completes the entry - you do not have to press CR / LF / Enter 
or any other key.

If you want the computer to make a move enter 00.

If you want to abandon the current game enter 99.

To make a move yourself enter the row number immediately followed by
the column number. 

The four valid first moves are:

  35
  46
  53
  64

If a valid move is entered, the computer will display the board 
again with the new piece added and any trapped pieces of
the opposite colour flipped.

Whenever it is the computer's turn to make a move you can make a move 
on its behalf by entering anything other than 00. Conversely, whenever
it is your turn the computer will make a move for you if you enter
00.


3. Illegal Moves

A move which 

  a) Is not 00 or has a row and / or column outside of the range 1..8
  b) does not trap existing pieces of the opposite colour
  
results in the error message:

  Illegal move
  
and the board is redisplayed.


4. No Valid Move

If at any time, the computer detects that there is no valid move for
whoever's turn it is to play, it will display the message:

  Black (White) has no play - misses turn
  
and the player whose turn it was previously has another turn.


5. End of Game

When the computer detects there are no valid plays remaining it displays
the final count:

  End of game
  Black has nn
  White has nn
  
and prompts:

  Play again?
  
If the reply is Y a new game is started, otherwise control is returned to
PipBug.

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

This file has come from Microbee Technology's File Repository.
