[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] 01/01: doc/chess.texi: Document AI, Crafty and GNU Chess engine m
From: |
Mario Lang |
Subject: |
[elpa] 01/01: doc/chess.texi: Document AI, Crafty and GNU Chess engine modules. |
Date: |
Thu, 05 Jun 2014 00:22:19 +0000 |
mlang pushed a commit to branch externals/chess
in repository elpa.
commit 7ec326905a9545e44842221a0bb4453cd79a88fe
Author: Mario Lang <address@hidden>
Date: Thu Jun 5 02:22:08 2014 +0200
doc/chess.texi: Document AI, Crafty and GNU Chess engine modules.
---
chess.info | 308 +++++++++++++++++++++++++++++++++-----------------------
doc/chess.texi | 174 ++++++++++++++++++++-----------
2 files changed, 295 insertions(+), 187 deletions(-)
diff --git a/chess.info b/chess.info
index 4477978..05d038a 100644
--- a/chess.info
+++ b/chess.info
@@ -28,14 +28,14 @@ structured for use as a library, and also how to use it as
a client.
* Menu:
-* The chess.el library::
-* Modules::
-* Chessboard displays::
-* Engines::
-* Internet Chess Servers::
-* Concept Index::
-* Function and Variable Index::
-* Key Index::
+* The chess.el library::
+* Modules::
+* Chessboard displays::
+* Engines::
+* Internet Chess Servers::
+* Concept Index::
+* Function and Variable Index::
+* Key Index::
File: chess.info, Node: The chess.el library, Next: Modules, Prev: Top,
Up: Top
@@ -45,11 +45,11 @@ File: chess.info, Node: The chess.el library, Next:
Modules, Prev: Top, Up:
* Menu:
-* Positions::
-* Plies::
-* Variations::
-* Games::
-* Collections::
+* Positions::
+* Plies::
+* Variations::
+* Games::
+* Collections::
File: chess.info, Node: Positions, Next: Plies, Prev: The chess.el library,
Up: The chess.el library
@@ -76,12 +76,12 @@ notation.
* Menu:
-* Creating positions::
-* Position coordinates::
-* Position details::
-* Annotations::
-* FEN notation::
-* EPD notation::
+* Creating positions::
+* Position coordinates::
+* Position details::
+* Annotations::
+* FEN notation::
+* EPD notation::
File: chess.info, Node: Creating positions, Next: Position coordinates,
Prev: Positions, Up: Positions
@@ -375,12 +375,12 @@ file name with the suffix ".epd".
* Menu:
-* Operations::
-* Opcode "acd" analysis count depth::
-* Opcode "acn" analysis count nodes::
-* Opcode "acs" analysis count seconds::
-* Opcode "am" avoid move(s)::
-* Opcode "bm" best move(s)::
+* Operations::
+* Opcode "acd" analysis count depth::
+* Opcode "acn" analysis count nodes::
+* Opcode "acs" analysis count seconds::
+* Opcode "am" avoid move(s)::
+* Opcode "bm" best move(s)::
File: chess.info, Node: Operations, Next: Opcode "acd" analysis count depth,
Prev: EPD notation, Up: EPD notation
@@ -482,10 +482,10 @@ form of confirmation during the course of a game.
* Menu:
-* Creating plies::
-* Ply details::
-* The "next" position::
-* Algebraic notation::
+* Creating plies::
+* Ply details::
+* The "next" position::
+* Algebraic notation::
File: chess.info, Node: Creating plies, Next: Ply details, Prev: Plies,
Up: Plies
@@ -609,10 +609,10 @@ turn, as mentioned above.
* Menu:
-* Creating variations::
-* Variation positions::
-* Varation plies::
-* Making a move in a variation::
+* Creating variations::
+* Variation positions::
+* Varation plies::
+* Making a move in a variation::
File: chess.info, Node: Creating variations, Next: Variation positions,
Prev: Variations, Up: Variations
@@ -717,12 +717,12 @@ variations.
* Menu:
-* Creating games::
-* Game tags::
-* Game positions::
-* Game plies::
-* Making a move::
-* PGN notation::
+* Creating games::
+* Game tags::
+* Game positions::
+* Game plies::
+* Making a move::
+* PGN notation::
File: chess.info, Node: Creating games, Next: Game tags, Prev: Games, Up:
Games
@@ -820,7 +820,7 @@ File: chess.info, Node: PGN notation, Prev: Making a
move, Up: Games
* Menu:
-* PGN mode::
+* PGN mode::
File: chess.info, Node: PGN mode, Prev: PGN notation, Up: PGN notation
@@ -851,11 +851,11 @@ and searches.
* Menu:
-* Opening Databases::
-* Querying Databases::
-* Modifying Databases::
-* Finalising Databases::
-* Database Modules::
+* Opening Databases::
+* Querying Databases::
+* Modifying Databases::
+* Finalising Databases::
+* Database Modules::
File: chess.info, Node: Opening Databases, Next: Querying Databases, Prev:
Collections, Up: Collections
@@ -913,8 +913,8 @@ base-class:
* Menu:
-* chess-file::
-* chess-scid::
+* chess-file::
+* chess-scid::
File: chess.info, Node: chess-file, Next: chess-scid, Prev: Database
Modules, Up: Database Modules
@@ -1076,10 +1076,10 @@ object.
* Menu:
-* Generic display manipulation functions::
-* Plain ASCII diagram displays::
-* ICS1 style ASCII displays::
-* Graphical displays::
+* Generic display manipulation functions::
+* Plain ASCII diagram displays::
+* ICS1 style ASCII displays::
+* Graphical displays::
File: chess.info, Node: Generic display manipulation functions, Next: Plain
ASCII diagram displays, Prev: Chessboard displays, Up: Chessboard displays
@@ -1214,14 +1214,16 @@ for playing with opponent over different types of
transports.
* Menu:
-* Common functions::
-* Crafty::
-* Gnu Chess::
-* Phalanx::
-* Sjeng::
+* Common functions::
+* AI::
+* Crafty::
+* Gnu Chess::
+* Phalanx::
+* Sjeng::
+* Stockfish::
-File: chess.info, Node: Common functions, Next: Crafty, Prev: Engines, Up:
Engines
+File: chess.info, Node: Common functions, Next: AI, Prev: Engines, Up:
Engines
4.1 Common functions
====================
@@ -1248,30 +1250,81 @@ File: chess.info, Node: Common functions, Next:
Crafty, Prev: Engines, Up: E
handler can take care of the data.
-File: chess.info, Node: Crafty, Next: Gnu Chess, Prev: Common functions,
Up: Engines
+File: chess.info, Node: AI, Next: Crafty, Prev: Common functions, Up:
Engines
-4.2 Crafty
+4.2 AI
+======
+
+The "AI" engine module defines a pure Emacs Lisp implementation of an
+opponent. Contrary to all other engine modules mentioned later on, it
+does not require any external programs to be installed.
+
+ To explicitly select this engine as an opponent, use 'C-u M-x chess
+RET ai RET'.
+
+ -- User Option: chess-ai-depth
+ Defines the default search depth for this engine.
+
+
+File: chess.info, Node: Crafty, Next: Gnu Chess, Prev: AI, Up: Engines
+
+4.3 Crafty
==========
+Crafty is a chess program written by Michael Byrne, UAB professor Dr.
+Robert Hyatt, Tracy Riegle, Peter Skinner and Ted Langreck. It is
+directly derived from Cray Blitz, winner of the 1983 and 1986 World
+Computer Chess Championships.
+
+ If Crafty is installed and can be found in the program search path,
+the 'chess-crafty' engine module will automatically detect it.
+
+ If Crafty is installed in a non-standard location, variable
+'chess-crafty-path' can be set to point to the executable.
+
+ If you have multiple engines installed you can explicitly select to
+play against Crafty by invoking 'C-u M-x chess RET crafty RET'.
+
File: chess.info, Node: Gnu Chess, Next: Phalanx, Prev: Crafty, Up: Engines
-4.3 Gnu Chess
+4.4 Gnu Chess
=============
+GNU Chess is free software, licensed under the terms of the GNU General
+Public License version 3 or any later version, and is maintained by
+collaborating developers. As one of the earliest computer chess
+programs with full source code available, it's one of the oldest for
+Unix-based systems and has since been ported to many other platforms.
+
+ If GNU Chess is installed and can be found in the program search
+path, the 'chess-gnuchess' engine module will automatically detect it.
+
+ If GNU Chess is installed in a non-standard location, variable
+'chess-gnuchess-path' can be set to point to the executable.
+
+ If you have multiple engines installed you can explicitly select to
+play against GNU Chess by invoking 'C-u M-x chess RET gnuchess RET'.
+
File: chess.info, Node: Phalanx, Next: Sjeng, Prev: Gnu Chess, Up: Engines
-4.4 Phalanx
+4.5 Phalanx
===========
-File: chess.info, Node: Sjeng, Prev: Phalanx, Up: Engines
+File: chess.info, Node: Sjeng, Next: Stockfish, Prev: Phalanx, Up: Engines
-4.5 Sjeng
+4.6 Sjeng
=========
+File: chess.info, Node: Stockfish, Prev: Sjeng, Up: Engines
+
+4.7 Stockfish
+=============
+
+
File: chess.info, Node: Internet Chess Servers, Next: Concept Index, Prev:
Engines, Up: Top
5 Internet Chess Servers
@@ -1296,9 +1349,9 @@ variable:
* Menu:
-* Connecting to a server::
-* Seeking an opponent for a new game::
-* The sought game display::
+* Connecting to a server::
+* Seeking an opponent for a new game::
+* The sought game display::
File: chess.info, Node: Connecting to a server, Next: Seeking an opponent
for a new game, Prev: Internet Chess Servers, Up: Internet Chess Servers
@@ -1375,9 +1428,11 @@ Function and Variable Index
[index ]
* Menu:
+* chess-ai-depth: AI. (line 13)
* chess-algebraic-regexp: Algebraic notation. (line 33)
* chess-algebraic-to-ply: Algebraic notation. (line 17)
* chess-coord-to-index: Position coordinates. (line 22)
+* chess-crafty-path: Crafty. (line 14)
* chess-database-filename: Querying Databases. (line 6)
* chess-database-modules: Opening Databases. (line 6)
* chess-database-open: Opening Databases. (line 10)
@@ -1450,6 +1505,7 @@ Function and Variable Index
* chess-game-tag: Game tags. (line 13)
* chess-game-tags: Game tags. (line 6)
* chess-game-to-pgn: PGN notation. (line 10)
+* chess-gnuchess-path: Gnu Chess. (line 15)
* chess-ics: Connecting to a server.
(line 8)
* chess-ics-ads-mode: The sought game display.
@@ -1537,64 +1593,66 @@ Key Index
Tag Table:
Node: Top437
-Node: The chess.el library1291
-Node: Positions1600
-Node: Creating positions2685
-Node: Position coordinates3456
-Node: Position details5984
-Node: Annotations10437
-Node: FEN notation10779
-Node: EPD notation12276
-Node: Operations13785
-Node: Opcode "acd" analysis count depth14759
-Node: Opcode "acn" analysis count nodes15113
-Node: Opcode "acs" analysis count seconds15638
-Node: Opcode "am" avoid move(s)16158
-Node: Opcode "bm" best move(s)16599
-Node: Plies16994
-Node: Creating plies18185
-Node: Ply details19369
-Node: The "next" position19849
-Node: Algebraic notation20207
-Node: Variations21635
-Node: Creating variations22763
-Node: Variation positions23071
-Node: Varation plies23672
-Node: Making a move in a variation24113
-Node: Games24688
-Node: Creating games26358
-Node: Game tags26799
-Node: Game positions27406
-Node: Game plies28030
-Node: Making a move28299
-Node: PGN notation28726
-Node: PGN mode29480
-Node: Collections29741
-Node: Opening Databases30542
-Node: Querying Databases30926
-Node: Modifying Databases31552
-Node: Finalising Databases31824
-Node: Database Modules31999
-Node: chess-file32293
-Node: chess-scid32935
-Node: Modules33172
-Node: Chessboard displays39921
-Node: Generic display manipulation functions40549
-Node: Plain ASCII diagram displays43474
-Node: ICS1 style ASCII displays44919
-Node: Graphical displays45223
-Node: Engines45377
-Node: Common functions45955
-Node: Crafty46995
-Node: Gnu Chess47110
-Node: Phalanx47222
-Node: Sjeng47329
-Node: Internet Chess Servers47414
-Node: Connecting to a server48333
-Node: Seeking an opponent for a new game49009
-Node: The sought game display49461
-Node: Concept Index50437
-Node: Function and Variable Index50680
-Node: Key Index61952
+Node: The chess.el library1190
+Node: Positions1399
+Node: Creating positions2405
+Node: Position coordinates3176
+Node: Position details5704
+Node: Annotations10157
+Node: FEN notation10499
+Node: EPD notation11996
+Node: Operations13474
+Node: Opcode "acd" analysis count depth14448
+Node: Opcode "acn" analysis count nodes14802
+Node: Opcode "acs" analysis count seconds15327
+Node: Opcode "am" avoid move(s)15847
+Node: Opcode "bm" best move(s)16288
+Node: Plies16683
+Node: Creating plies17824
+Node: Ply details19008
+Node: The "next" position19488
+Node: Algebraic notation19846
+Node: Variations21274
+Node: Creating variations22368
+Node: Variation positions22676
+Node: Varation plies23277
+Node: Making a move in a variation23718
+Node: Games24293
+Node: Creating games25867
+Node: Game tags26308
+Node: Game positions26915
+Node: Game plies27539
+Node: Making a move27808
+Node: PGN notation28235
+Node: PGN mode28969
+Node: Collections29230
+Node: Opening Databases29981
+Node: Querying Databases30365
+Node: Modifying Databases30991
+Node: Finalising Databases31263
+Node: Database Modules31438
+Node: chess-file31696
+Node: chess-scid32338
+Node: Modules32575
+Node: Chessboard displays39324
+Node: Generic display manipulation functions39935
+Node: Plain ASCII diagram displays42860
+Node: ICS1 style ASCII displays44305
+Node: Graphical displays44609
+Node: Engines44763
+Node: Common functions45265
+Node: AI46301
+Node: Crafty46772
+Node: Gnu Chess47503
+Node: Phalanx48369
+Node: Sjeng48476
+Node: Stockfish48579
+Node: Internet Chess Servers48674
+Node: Connecting to a server49580
+Node: Seeking an opponent for a new game50256
+Node: The sought game display50708
+Node: Concept Index51684
+Node: Function and Variable Index51927
+Node: Key Index63418
End Tag Table
diff --git a/doc/chess.texi b/doc/chess.texi
index 0e6fa8b..c4b3124 100644
--- a/doc/chess.texi
+++ b/doc/chess.texi
@@ -87,14 +87,14 @@ structured for use as a library, and also how to use it as
a client.
@end ifinfo
@menu
-* The chess.el library::
-* Modules::
-* Chessboard displays::
-* Engines::
-* Internet Chess Servers::
-* Concept Index::
-* Function and Variable Index::
-* Key Index::
+* The chess.el library::
+* Modules::
+* Chessboard displays::
+* Engines::
+* Internet Chess Servers::
+* Concept Index::
+* Function and Variable Index::
+* Key Index::
@end menu
@node The chess.el library, Modules, Top, Top
@@ -102,11 +102,11 @@ structured for use as a library, and also how to use it
as a client.
@cindex library
@menu
-* Positions::
-* Plies::
-* Variations::
-* Games::
-* Collections::
+* Positions::
+* Plies::
+* Variations::
+* Games::
+* Collections::
@end menu
@node Positions, Plies, The chess.el library, The chess.el library
@@ -130,12 +130,12 @@ notation.
Chess puzzles are most often provided as a set of positions.
@menu
-* Creating positions::
-* Position coordinates::
-* Position details::
-* Annotations::
-* FEN notation::
-* EPD notation::
+* Creating positions::
+* Position coordinates::
+* Position details::
+* Annotations::
+* FEN notation::
+* EPD notation::
@end menu
@node Creating positions, Position coordinates, Positions, Positions
@@ -501,12 +501,12 @@ Return a list of positions contained in @var{file}.
@end defun
@menu
-* Operations::
-* Opcode "acd" analysis count depth::
-* Opcode "acn" analysis count nodes::
-* Opcode "acs" analysis count seconds::
-* Opcode "am" avoid move(s)::
-* Opcode "bm" best move(s)::
+* Operations::
+* Opcode "acd" analysis count depth::
+* Opcode "acn" analysis count nodes::
+* Opcode "acs" analysis count seconds::
+* Opcode "am" avoid move(s)::
+* Opcode "bm" best move(s)::
@end menu
@node Operations, Opcode "acd" analysis count depth, EPD notation, EPD notation
@@ -584,10 +584,10 @@ Transmitting the base position's FEN string along with
the ply offers a
form of confirmation during the course of a game.
@menu
-* Creating plies::
-* Ply details::
-* The "next" position::
-* Algebraic notation::
+* Creating plies::
+* Ply details::
+* The "next" position::
+* Algebraic notation::
@end menu
@node Creating plies, Ply details, Plies, Plies
@@ -734,10 +734,10 @@ They may be represented verbally by announcing each of
the plies in
turn, as mentioned above.
@menu
-* Creating variations::
-* Variation positions::
-* Varation plies::
-* Making a move in a variation::
+* Creating variations::
+* Variation positions::
+* Varation plies::
+* Making a move in a variation::
@end menu
@node Creating variations, Variation positions, Variations, Variations
@@ -883,12 +883,12 @@ Set the list of plies which represents the main variation
of @var{game}.
@end defun
@menu
-* Creating games::
-* Game tags::
-* Game positions::
-* Game plies::
-* Making a move::
-* PGN notation::
+* Creating games::
+* Game tags::
+* Game positions::
+* Game plies::
+* Making a move::
+* PGN notation::
@end menu
@node Creating games, Game tags, Games, Games
@@ -1015,7 +1015,7 @@ If @var{to-string} is non-nil, return a string instead of
inserting the resultin
@end defun
@menu
-* PGN mode::
+* PGN mode::
@end menu
@node PGN mode, , PGN notation, PGN notation
@@ -1043,11 +1043,11 @@ games from the library, or performing library-wide
analyses and
searches.
@menu
-* Opening Databases::
-* Querying Databases::
-* Modifying Databases::
-* Finalising Databases::
-* Database Modules::
+* Opening Databases::
+* Querying Databases::
+* Modifying Databases::
+* Finalising Databases::
+* Database Modules::
@end menu
@node Opening Databases, Querying Databases, Collections, Collections
@@ -1116,8 +1116,8 @@ Currently, there are two subclasses of the above defined
database base-class:
@menu
-* chess-file::
-* chess-scid::
+* chess-file::
+* chess-scid::
@end menu
@node chess-file, chess-scid, Database Modules, Database Modules
@@ -1268,10 +1268,10 @@ fashion to a human reader, it is necessary to create
and use a display
object.
@menu
-* Generic display manipulation functions::
-* Plain ASCII diagram displays::
-* ICS1 style ASCII displays::
-* Graphical displays::
+* Generic display manipulation functions::
+* Plain ASCII diagram displays::
+* ICS1 style ASCII displays::
+* Graphical displays::
@end menu
@node Generic display manipulation functions, Plain ASCII diagram displays,
Chessboard displays, Chessboard displays
@@ -1461,14 +1461,16 @@ can be other uses for engine objects, such as providing
networked engined
for playing with opponent over different types of transports.
@menu
-* Common functions::
-* Crafty::
-* Gnu Chess::
-* Phalanx::
-* Sjeng::
+* Common functions::
+* AI::
+* Crafty::
+* Gnu Chess::
+* Phalanx::
+* Sjeng::
+* Stockfish::
@end menu
address@hidden Common functions, Crafty, Engines, Engines
address@hidden Common functions, AI, Engines, Engines
@section Common functions
@c lispfun chess-engine-create
@@ -1518,18 +1520,66 @@ to submit the data. Otherwise, the 'send event is
triggered and the engine
event handler can take care of the data.
@end defun
address@hidden Crafty, Gnu Chess, Common functions, Engines
address@hidden AI, Crafty, Common functions, Engines
address@hidden AI
+
+The @dfn{AI} engine module defines a pure Emacs Lisp implementation
+of an opponent. Contrary to all other engine modules mentioned later on,
+it does not require any external programs to be installed.
+
+To explicitly select this engine as an opponent,
+use @kbd{C-u M-x chess RET ai RET}.
+
address@hidden chess-ai-depth
+Defines the default search depth for this engine.
address@hidden defopt
+
address@hidden Crafty, Gnu Chess, AI, Engines
@section Crafty
+Crafty is a chess program written by Michael Byrne, UAB professor
+Dr. Robert Hyatt, Tracy Riegle, Peter Skinner and Ted Langreck. It is directly
+derived from Cray Blitz, winner of the 1983 and 1986 World Computer Chess
+Championships.
+
+If Crafty is installed and can be found in the program search path,
+the @code{chess-crafty} engine module will automatically detect it.
+
address@hidden chess-crafty-path
+If Crafty is installed in a non-standard location, variable
@code{chess-crafty-path}
+can be set to point to the executable.
+
+If you have multiple engines installed you can explicitly select
+to play against Crafty by invoking @kbd{C-u M-x chess RET crafty RET}.
+
@node Gnu Chess, Phalanx, Crafty, Engines
@section Gnu Chess
+GNU Chess is free software, licensed under the terms of the
+GNU General Public License version 3 or any later version,
+and is maintained by collaborating developers. As one of the earliest
+computer chess programs with full source code available, it's one of the oldest
+for Unix-based systems and has since been ported to many other platforms.
+
+If GNU Chess is installed and can be found in the program search path,
+the @code{chess-gnuchess} engine module will automatically detect it.
+
address@hidden chess-gnuchess-path
+If GNU Chess is installed in a non-standard location, variable
address@hidden can be set to point to the executable.
+
+If you have multiple engines installed you can explicitly select
+to play against GNU Chess by invoking @kbd{C-u M-x chess RET gnuchess RET}.
+
@node Phalanx, Sjeng, Gnu Chess, Engines
@section Phalanx
address@hidden Sjeng, , Phalanx, Engines
address@hidden Sjeng, Stockfish, Phalanx, Engines
@section Sjeng
address@hidden Stockfish, , Sjeng, Engines
address@hidden Stockfish
+
@node Internet Chess Servers, Concept Index, Engines, Top
@chapter Internet Chess Servers
@@ -1551,9 +1601,9 @@ The format of each entry is:
@end defvar
@menu
-* Connecting to a server::
-* Seeking an opponent for a new game::
-* The sought game display::
+* Connecting to a server::
+* Seeking an opponent for a new game::
+* The sought game display::
@end menu
@node Connecting to a server, Seeking an opponent for a new game, Internet
Chess Servers, Internet Chess Servers