Skip to content
Marvin - An UCI/XBoard compatible chess engine
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
import/fathom Fixed compile problem when building for non-x86 targets Jul 18, 2017
res Lazy SMP support Jan 27, 2018
scripts Implemented Adam optimizer for the tuner Jan 24, 2019
src Call select_init_node() as late as possible Jun 4, 2019
.gitignore Added initial .gitignore file Mar 20, 2017
LICENSE Initial commit Mar 20, 2017
Makefile Rename table.* to history.* May 5, 2019


Marvin is a free UCI/XBoard compatible chess engine. It does not provide it's own user interface, instead is is intended to be used with an UCI or XBoard compatible GUI, such as XBoard/WinBoard, Arena, HIARCS Chess Explorer, Shredder or Fritz. For instructions on how to install the engine see the documentation for the respective GUI.


Marvin was originally released as closed source in 2002 and activly developed until 2005. The last release was 1.3.0. In 2015 the development was restarted and a completely rewritten version was released as open source in 2017.


When started Marvin looks for a configuration file called marvin.ini in the same directory as the excutable. This file can be used to configure the engine. Currently the following options are recognized:

  • HASH_SIZE: The amount of memory used for the main hash table (in MB). For best performance the size should be a power-of-2.
  • LOG_LEVEL: The log level. If set to 2 the engine will log all commands that are sent and received.
  • SYZYGY_PATH: Path to where the Syzygy tablebases are located.
  • NUM_THREADS: The number of threads to use for searching.

Additionally Marvin looks for a file called book.bin in the same directory. The book.bin file should be an opening book file in Polyglot format.


The easiest way to build Marvin is to use GCC and the included Makefile. Running make should produce a binary that is compatible with your system. For more information about availbale targets and options run make help.


The source code is provided under the GPL3 license. For details see the LICENSE file.

Marvin uses the Fathom library ( for probing Syzygy tablebases. The Fathom library is licensed under the MIT license. For details see the LICENSE file in the import/fathom folder.

You can’t perform that action at this time.