General Information
===================

Marvin is a chess engine that can be used either as a standalone commandline
program or with an external chess interface. The engine has been tested 
with the following interfaces:

Windows:
  	- Arena
  	- Winboard
  	- Chessmaster 9000
  	- Fritz 8

Linux:
	- XBoard

At startup the engine looks for two files in the current directory: 
marvin.ini and book.bin. marvin.ini is a configuration file that contains 
parameters that can be used to configure certain aspects of the engine. For 
more information look in the section "Configuration parameters". The file 
book.bin contains the opening book used by the engine. 

All recieved and sent commands are written to the file marvin.log in 
the current directory. Additional information, such as search statistics, 
are also written to this file. The file is overwritten each time the engine 
is started.

Configuration parameters
========================

	HASH_SIZE
	Tells the engine how much memory to use for hash tables. The memory
	is diveided between two tables, the main transposition table and a
	pawn table. The size is given in Mega bytes.
	Syntax: HASH_SIZE=<value> (min 1, max 1024, default 32)
	
	RESIGN
	Sets the resign limit for the engine. The engine resigns if
	the score is worse then a certain limit for a number of 
	consevutive moves. The limit is given in centipawns.
	Syntax: RESIGN=<moves>:<limit> (default 5:600)
	
	LOG
	Turns logging on or off. If logging is on the engine writes 
	a detailed log in a file called marvin.log.
	Syntax: LOG=<TRUE|FALSE> (default FALSE)

Commandline options
===================

	Benchmark (-b)
	Runs a small benchmark test based on a number of positions 
	taken from the Bratko-Kopec testsuite..
	Syntax: marvin -b

	Test suite (-t)
	Runs a testsuite in EPD format. The testsuite and the number 
	of seconds to search each position is given as parameters.
	Syntax: marvin -t <testsuite> <time>

	Static evaluation test (-e)
	Takes a file containing positions in EPD format as input and 
	displays the static evaluation for each position.
	Syntax: marvin -e <input file>

	Create Book (-c)
	Builds an opening book for the engine based on a file containing games
	in PGN format. The name of the input file and output file is given as 
	parameters. Three additional parameters specifies the number of 
	positions in the opening book, the number of games it should be based 
	on and the depth of each game.  
	Syntax: marvin -c <input> <output> <positions> <games> <depth>

	Script (-s)
	Runs a script at startup. The script should contain normal commands. 
	Each command should be placed on a separate line. The name of 
	the script is given as a parameter.
	Syntax: marvin -s <script>

Feature list
============

	Winboard 1      Yes
	Winboard 2      Yes
	UCI             Yes
	Pondering       No
	Analyze         Yes
	Edit            Yes
	Setboard        Yes
	Opening book    Yes
	Create book     Yes
	Hash tables     Yes
	EGTB            No
	Learning        No
	Resign          Yes
	FRC             No

Credits
=======
- Thanks to Alex Schmidt for the nice logo.
