Next: , Previous: , Up: Developers   [Contents][Index]


9.2 Guidelines followed to develop GNU Chess v6

The idea was to use Fruit 2.1 as the base for GNU Chess v6, keeping external interfaces backwards compatible. This is particularly important since GNU Chess has been world-wide used for long.

GNU Chess can be used in two modes: interactively using the command-line interface on a text console, and used as backend engine from a graphical frontend. Both cases rely on almost identical grammar. The former is described in GNU Chess help.

When GNU Chess is used as a pure chess engine, for instance, as backend for XBoard, it uses the Chess Engine Communication Protocol (aka XBoard protocol), which is described here:

http://home.hccnet.nl/h.g.muller/engine-intf.html

Since Fruit uses the Universal Chess Interface (UCI), keeping the former interface was the main challenge of GNU Chess v6. UCI is described here:

http://wbec-ridderkerk.nl/html/UCIProtocol.html

GNU Chess can also run as a UCI chess engine, if the --uci command-line option is specified.