Codebase list hoichess / debian/0.4.0-1 hoichess.6
debian/0.4.0-1

Tree @debian/0.4.0-1 (Download .tar.gz)

hoichess.6 @debian/0.4.0-1raw · history · blame

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sh \" Subsection heading
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  | will give a
.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
.\" expand to `' in nroff, nothing in troff, for use with C<>.
.tr \(*W-|\(bv\*(Tr
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
'br\}
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.if \nF \{\
.    de IX
.    tm Index:\\$1\t\\n%\t"\\$2"
..
.    nr % 0
.    rr F
.\}
.\"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.hy 0
.if n .na
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
.    \" fudge factors for nroff and troff
.if n \{\
.    ds #H 0
.    ds #V .8m
.    ds #F .3m
.    ds #[ \f1
.    ds #] \fP
.\}
.if t \{\
.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
.    ds #V .6m
.    ds #F 0
.    ds #[ \&
.    ds #] \&
.\}
.    \" simple accents for nroff and troff
.if n \{\
.    ds ' \&
.    ds ` \&
.    ds ^ \&
.    ds , \&
.    ds ~ ~
.    ds /
.\}
.if t \{\
.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
.    \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
.    \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
.    \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
.    ds : e
.    ds 8 ss
.    ds o a
.    ds d- d\h'-1'\(ga
.    ds D- D\h'-1'\(hy
.    ds th \o'bp'
.    ds Th \o'LP'
.    ds ae ae
.    ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "hoichess 6"
.TH hoichess 6 "2006-02-21" "hoichess-0.3" "Games"
.SH "NAME"
hoichess \- xboard compatible chess engine
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
\&\fBhoichess\fR [options]
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
\&\fBhoichess\fR is a chess playing program. It implements major parts of the
xboard/winboard chess engine protocol.
.PP
\&\fBhoichess\fR uses many of the standard techniques found in modern chess programs,
like rotated bitboards, principal variation search, quiescence search,
transposition table and iterative deepening.
.PP
See \fIxboard\fR\|(6) for instructions about how to use \fBhoichess\fR through xboard. To
start up quickly, you just need the command: \fBxboard \-fcp hoichess\fR.
.PP
If run \fBhoichess\fR at the command line, the \fBhelp\fR command gives you a brief
summary of available commands. See section \*(L"\s-1COMMANDS\s0\*(R" for more details
about those commands.
.SH "OPTIONS"
.IX Header "OPTIONS"
.IP "\fB\-h\fR, \fB\-\-help\fR" 8
.IX Item "-h, --help"
Display usage information.
.IP "\fB\-V\fR, \fB\-\-version\fR" 8
.IX Item "-V, --version"
Display version information.
.IP "\fB\-v\fR, \fB\-\-verbose[=n]\fR" 8
.IX Item "-v, --verbose[=n]"
Increase verbosity. Multiple \fB\-v\fR options may be given. \fB\-\-verbose=\fR\fIn\fR sets
verbosity level \fIn\fR.
.IP "\fB\-d\fR, \fB\-\-debug[=n]\fR" 8
.IX Item "-d, --debug[=n]"
Increase debug level. Multiple \fB\-d\fR options may be given. \fB\-\-debug=\fR\fIn\fR sets
debug level \fIn\fR.
.IP "\fB\-L\fR \fIfilename\fR, \fB\-\-logfile\fR \fIfilename\fR" 8
.IX Item "-L filename, --logfile filename"
Specify file name for logging. The log will be appended to this file.
\&\fINote: Logging is not yet implemented in the current version of HoiChess, so
the log will be empty.\fR
.IP "\fB\-x\fR, \fB\-\-xboard\fR[=\fIarg\fR]" 8
.IX Item "-x, --xboard[=arg]"
Start in xboard compatible mode. This turns off the input prompt and alters
the output format to meet the requirements of the xboard protocol. Normally,
this option should not be necessary because \fBhoichess\fR automatically detects
when it is started under xboard.
.Sp
The optional argument can be one of:
.RS 8
.IP "\fBoff\fR" 4
.IX Item "off"
Force non-xboard mode.
.IP "\fBon\fR" 4
.IX Item "on"
Force xboard mode.
.IP "\fBauto\fR" 4
.IX Item "auto"
Automatically enable xboard mode when stdout is not a terminal, which is
the case when HoiChess is started under xboard.
.Sp
This is the default.
.RE
.RS 8
.RE
.IP "\fB\-\-book\fR \fIfilename\fR" 8
.IX Item "--book filename"
Set location of opening book.
.IP "\fB\-\-nobook\fR" 8
.IX Item "--nobook"
Disable opening book.
.IP "\fB\-\-hashsize\fR \fIarg\fR" 8
.IX Item "--hashsize arg"
Set the size of the main hash table (transposition table). 
The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may
be used to specify size in kilobytes or megabytes, respectively.
.Sp
A size of 0 disables the hash table.
.IP "\fB\-\-pawnhashsize\fR \fIarg\fR" 8
.IX Item "--pawnhashsize arg"
Set the size of the pawn hash table.
The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may
be used to specify size in kilobytes or megabytes, respectively.
.Sp
A size of 0 disables the pawn hash table.
.IP "\fB\-\-evalcache\fR \fIarg\fR" 8
.IX Item "--evalcache arg"
Set the size of the evaluation cache.
The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may
be used to specify size in kilobytes or megabytes, respectively.
.Sp
A size of 0 disables the evaluation cache.
.IP "\fB\-\-name\fR \fIname\fR" 8
.IX Item "--name name"
Set engine's name to \fIname\fR.
.IP "\fB\-\-script\fR \fIfilename\fR" 8
.IX Item "--script filename"
Before accepting input from stdin, first read commands (and probably moves)
from \fIfilename\fR.
.IP "\fB\-\-color\fR \fIarg\fR" 8
.IX Item "--color arg"
Control usage of \s-1ANSI\s0 color control sequences, e.g. when displaying the
chess board.
.Sp
\&\fIarg\fR can be one of:
.RS 8
.IP "\fBoff\fR" 4
.IX Item "off"
Never use \s-1ANSI\s0 color sequences.
.IP "\fBon\fR" 4
.IX Item "on"
Always use \s-1ANSI\s0 color sequences.
.IP "\fBauto\fR" 4
.IX Item "auto"
Automatically use \s-1ANSI\s0 color sequences when stdout is a terminal.
.RE
.RS 8
.Sp
On Unix platforms, the default is \fBauto\fR. On Windows platforms, the default
is \fBoff\fR, because the Windows terminal is normally not \s-1ANSI\s0 capable.
.RE
.SH "COMMANDS"
.IX Header "COMMANDS"
\&\fBhoichess\fR supports most commands of the XBoard protocol. Those commands are
described in detail at \fIhttp://www.tim\-mann.org/xboard/engine\-intf.html\fR.
Furthermore, the following special commands are also available:
.IP "\fBhelp\fR" 8
.IX Item "help"
Give a brief summary about available commands.
.IP "\fBbench\fR \fBmovegen\fR" 8
.IX Item "bench movegen"
Run move generator benchmark.
.IP "\fBbench\fR \fBevaluator\fR" 8
.IX Item "bench evaluator"
Run evaluator benchmark.
.IP "\fBbench\fR \fBmakemove\fR" 8
.IX Item "bench makemove"
Run benchmark for make_move and unmake_move routines.
.IP "\fBbook\fR \fBopen\fR \fIbookfile\fR" 8
.IX Item "book open bookfile"
Use opening book \fIbookfile\fR.
.IP "\fBbook\fR \fBclose\fR" 8
.IX Item "book close"
Disable opening book.
.IP "\fBbook\fR \fBcreate\fR \fIbookfile\fR \fIpgnfile\fR \fIdepth\fR \fImin_move_count\fR" 8
.IX Item "book create bookfile pgnfile depth min_move_count"
Create a new opening book, from the games in \fIpgnfile\fR. The new book will
be written to \fIbookfile\fR.
.Sp
The parameter \fIdepth\fR specifies how many moves (half\-moves, ply) of each
game will be included in the opening book. If \fIdepth\fR is 0, there is no
depth limit, i.e. all moves of all games will be put into the book.
.Sp
The parameter \fImin_move_count\fR specifies how many times a move must be played
until it is added to the opening book.
.IP "\fBdebug\fR \fIlevel\fR" 8
.IX Item "debug level"
Set debug level to \fIlevel\fR.
.Sp
If \fIlevel\fR is omitted, the current debug level is printed.
.IP "\fBevalcache\fR \fBclear\fR" 8
.IX Item "evalcache clear"
Clear evaluation cache.
.IP "\fBevalcache\fR \fBsize\fR \fIarg\fR" 8
.IX Item "evalcache size arg"
Set the size of the evaluation cache.
The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may
be used to specify size in kilobytes or megabytes, respectively.
.Sp
A size of 0 disables the evaluation cache.
.IP "\fBevalcache\fR \fBoff\fR" 8
.IX Item "evalcache off"
Disable evaluation cache.
.IP "\fBevalcache\fR \fBinfo\fR" 8
.IX Item "evalcache info"
Print information about evaluation cache.
.IP "\fBevalcache\fR \fBstats\fR" 8
.IX Item "evalcache stats"
Print evaluation cache statistics.
.IP "\fBhash\fR \fBclear\fR" 8
.IX Item "hash clear"
Clear hash table.
.IP "\fBhash\fR \fBsize\fR \fIarg\fR" 8
.IX Item "hash size arg"
Set the size of the main hash table (transposition table).
The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may
be used to specify size in kilobytes or megabytes, respectively.
.Sp
A size of 0 disables the hash table.
.IP "\fBhash\fR \fBoff\fR" 8
.IX Item "hash off"
Disable hash table.
.IP "\fBhash\fR \fBinfo\fR" 8
.IX Item "hash info"
Print information about hash table.
.IP "\fBhash\fR \fBstats\fR" 8
.IX Item "hash stats"
Print hash table statistics.
.IP "\fBhash\fR \fBreplace\fR \fIscheme\fR" 8
.IX Item "hash replace scheme"
Set hash table replacement scheme. Currently available \fIscheme\fRs are:
.RS 8
.IP "* \fBalways\fR" 4
.IX Item "always"
Always replace existing entries by new entries.
.IP "* \fBdepth\fR" 4
.IX Item "depth"
Replace existing entries only by entries with same or higher search depth.
.RE
.RS 8
.RE
.IP "\fBignore\fR \fIcommand\fR" 8
.IX Item "ignore command"
From now on, ignore the command \fIcommand\fR. This is basically intended for
debugging.
.Sp
See also command \fBobey\fR.
.IP "\fBobey\fR \fIcommand\fR" 8
.IX Item "obey command"
Do not ignore the command \fIcommand\fR anymore.
.Sp
See also command \fBignore\fR.
.IP "\fBpawnhash\fR \fB...\fR" 8
.IX Item "pawnhash ..."
Configure the pawn hash table. The available options are the same as for
the main hash table (see command \fBhash\fR), with the exception that
\&\fBpawnhash\fR \fBreplace\fR is not available, because the pawn hash table
always uses the \*(L"always replace\*(R" strategy.
.IP "\fBverbose\fR \fIlevel\fR" 8
.IX Item "verbose level"
Set verbosity level to \fIlevel\fR.
.Sp
If \fIlevel\fR is omitted, the current verbosity level is printed.
.IP "\fBscript\fR \fIfile\fR" 8
.IX Item "script file"
Read commands from \fIfile\fR, just like command line option \fB\-\-script\fR does.
.IP "\fBshow\fR \fBboard\fR" 8
.IX Item "show board"
Display the chess board.
.IP "\fBshow\fR \fBfen\fR" 8
.IX Item "show fen"
Print the current position's \s-1FEN\s0.
.IP "\fBshow\fR \fBmoves\fR|\fBcaptures\fR|\fBnoncaptures\fR|\fBescapes\fR" 8
.IX Item "show moves|captures|noncaptures|escapes"
Show all legal moves, captures, non-captures or escapes.
.IP "\fBshow\fR \fBeval\fR" 8
.IX Item "show eval"
Evaluate current position and print result.
.IP "\fBshow\fR \fBclocks\fR" 8
.IX Item "show clocks"
Show both players' clocks.
.IP "\fBshow\fR \fBgame\fR" 8
.IX Item "show game"
Show information about entire game, e.g. past positions, moves played, etc..
.IP "\fBsolve\fR \fIepdfile\fR" 8
.IX Item "solve epdfile"
Run search on all positions in \fIepdfile\fR (testsuite mode).
.SH "EXPERIMENTAL FEATURES"
.IX Header "EXPERIMENTAL FEATURES"
Currently, the tree search code of \fBhoichess\fR includes some experimental
features. Those features can be enabled using the \fBset\fR command:
.Sp
.RS 8
set search_features \fIvalue\fR
.RE
.PP
where \fIvalue\fR is a combination of the following flags:
.IP "* 0x1" 8
.IX Item "0x1"
Extend allocated search time when search failed low.
.IP "* 0x2" 8
.IX Item "0x2"
Extend allocated search time when in check.
.IP "* 0x4" 8
.IX Item "0x4"
Extend allocated search time when near book.
.IP "* 0x8" 8
.IX Item "0x8"
Extend allocated search time when search failed high.
.PP
To combine two or more of the above flags, simply add their value.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
http://www.hoicher.de/hoichess
.PP
\&\fIxboard\fR\|(6)
.SH "AUTHOR"
.IX Header "AUTHOR"
\&\fBhoichess\fR was written by Holger Ruckdeschel <holger@hoicher.de>.
.PP
This manual page was generated with \fIpod2man\fR\|(1).