Start NEWS entry for 1.5.0
[gnushogi.git] / doc / gnushogi.texi
blob10689b1b10fd331c483657cc6b3aa10c616377bb
1 \input texinfo   @c -*-texinfo-*-
3 @c % **  Start of header.
4 @setfilename gnushogi.info
5 @settitle GNU Shogi manual
6 @c % **  End of header.
8 @dircategory Games
9 @direntry
10 * gnushogi: (gnushogi).          Japanese chess
11 @end direntry
13 @setchapternewpage odd
15 @c ==================================
16 @c TeX-specific macros
17 @c ==================================
19 @c None yet!
21 @c ==================================
22 @c info-specific macros
23 @c ==================================
25 @c None yet!
27 @c ==================================
28 @c Summary description and copyright.
29 @c ==================================
31 @ifinfo
33 This file describes how to use GNU shogi, 
34 a program which plays Shogi (Japanese chess).
36 Copyright (C) 2013 Yann Dirson and the Free Software Foundation, Inc.
37 Copyright (C) 1999 Michael C. Vanier and the Free Software Foundation, Inc.
39 Permission is granted to make and distribute verbatim copies of
40 this manual provided the copyright notice and this permission notice
41 are preserved on all copies.
43 @ignore
44 Permission is granted to process this file through TeX and print the
45 results, provided the printed document carries copying permission
46 notice identical to this one except for the removal of this paragraph
47 (this paragraph not being relevant to the printed manual).
48 @end ignore
50 Permission is granted to copy and distribute modified versions of this
51 manual under the conditions for verbatim copying, provided that the entire
52 resulting derived work is distributed under the terms of a permission
53 notice identical to this one.
55 Permission is granted to copy and distribute translations of this manual
56 into another language, under the above conditions for modified versions,
57 except that this permission notice may be stated in a translation approved
58 by the Free Software Foundation.
60 @end ifinfo
62 @c =========================================
63 @c End of summary description and copyright.
64 @c =========================================
67 @c ====================
68 @c Title and copyright.
69 @c ====================
71 @titlepage
72 @sp 10
73 @comment The title is printed in a large font.
74 @center @titlefont{GNU Shogi (Japanese chess)}
75 @author   Mike Vanier
77 @c  The following two commands start the copyright page.
78 @page
79 @vskip 0pt plus 1filll
80 Copyright @copyright{} 2013-2014 Yann Dirson and the Free Software Foundation
81 Copyright @copyright{} 1999 Michael C. Vanier and the Free Software Foundation
83 @end titlepage
85 @c ===========================
86 @c End of title and copyright.
87 @c ===========================
90 @c =========================
91 @c Top node and master menu.
92 @c =========================
94 @node    Top, (dir), (dir), (dir)
95 @top     GNU Shogi (Japanese chess)
97 @ifnottex
98 @menu
99 * Introduction::         What is GNU shogi?
100 * About shogi::          General information, rules, etc.
101 * gnushogi::             How to play GNU shogi (gnushogi).
102 * xshogi::               The X interface to GNU shogi.
103 * References and links:: Where to go for more information.
104 * Acknowledgements::
105 * Bugs::                 Where and how to report bugs.
106 * Index::        
107 @end menu
108 @end ifnottex
110 @iftex
111 This document describes GNU shogi, a program which plays Japanese chess
112 (shogi) against a human opponent.
113 @end iftex
115 @c ================================
116 @c End of top node and master menu.
117 @c ================================
120 @c =====
121 @c Body.
122 @c =====
124 @node Introduction, About shogi, Top, Top
125 @chapter Introduction
126 @cindex Introduction
128 GNU shogi is a program that plays shogi, the Japanese version of chess,
129 against a human (or computer) opponent.  This file describes how to use
130 GNU shogi and also gives background information about the game of shogi.
132 This file describes GNU Shogi version 1.4.1, but most of it was
133 written for version 1.3.2 by Mike Vanier
134 @email{mvanier@@cs.caltech.edu}, maintainer of GNU shogi at that time.
136 GNU Shogi is currently maintained by Yann Dirson
137 @email{ydirson@@free.fr}.
140 GNU Shogi is actually one program, 'gnushogi', the text-based program
141 which also contains the game-playing engine.  By default it will play
142 Standard Shogi, but can be built to play Mini Shogi (with GNU Shogi
143 1.4.x, you will need to do that explicitely using `./configure
144 --enable-minishogi'', but 1.5 will make this more straightforward).
146 The GNU Shogi distribution also contains the 'xshogi' program, an
147 X-Window graphical interface to gnushogi.  XShogi was forked off GNU
148 XBoard years ago, is far from today's UI standards, and has barely
149 been maintained recently, while XBoard has grown much and is able to
150 play Shogi.  In future versions, GNU Shogi will be able to use XBoard
151 as a GUI and XShogi will be retired.
153 Since xshogi invokes gnushogi, most players will just type ``xshogi''
154 and start playing.
156 Disclaimer: I use the personal pronouns ``him'', ``his'' etc. to refer
157 to a shogi player regardless of gender.  That's easier than writing
158 ``his or her'' all over the place.  I don't mean to infer that women
159 don't play shogi; in fact shogi is very popular in Japan among women as
160 well as men.
163 @node    About shogi, gnushogi, Introduction, Top
164 @chapter About the game of shogi
165      
167 @quotation
168 ``Japanese chess cedes nothing in depth or beauty to the European
169 game... it is at least as interesting.''
171 --- Alexander Alekhine @*
172 (quoted in David Pritchard, @cite{The Encyclopedia of Chess Variants}) 
174 ``... shogi [is] by far the most complex form of chess that has ever
175 achieved widespread popularity.''
177 --- R. Wayne Schmittberger, @cite{New Rules for Classic Games}
178 @end quotation
180 Shogi is the version of chess played in Japan.  It is strikingly
181 different from standard chess (which I shall refer to henceforth as
182 ``international chess'') and also to all other regional variants,
183 because captured pieces can re-enter play on the side of the capturer.
184 This has several interesting effects on the play of the game:
186 @enumerate
187 @item
188 Shogi is much more complex than international chess, at least in
189 terms of the average number of possible moves per turn (estimated at
190 about 35 for chess and at about 80 for shogi).
192 @item
193 There are almost no draws (about 1-2% of all games in professional play).
195 @item
196 Exchanges complicate the play rather than simplifying it.
198 @item
199 There are no ``endgames'' in the standard chess sense; all pieces remain
200 in play throughout the game.  Games typically end in a race to
201 checkmate the other player before being checkmated oneself.
203 @item
204 Ownership of a piece is not indicated by the color of the piece;
205 instead, pieces are wedge-shaped and point towards the opponent.  The
206 name of the piece is inscribed in Kanji characters on the front of the
207 piece.
209 @item
210 Most importantly: it's more fun than other forms of chess :-)
212 @end enumerate
214 Shogi is extremely popular in Japan; it has been estimated that 20
215 million Japanese can play shogi, of which perhaps 1 million are active
216 players.  It is even more popular there than the game of go, Japan's
217 other favorite board game.  There are a number of professional players
218 who make a considerable amount of money playing in shogi tournaments,
219 and the game receives extensive newpaper and television coverage.
220 Despite this, the game has yet to become popular outside of Japan.  Part
221 of this is because the Kanji characters on the pieces scare away some
222 people, but mostly it's due, I think, to lack of exposure to the game
223 and to the difficulty of finding opponents.  I hope that GNU shogi will
224 help introduce shogi to a wider audience.
226 @ifnottex
227 @menu
228 * The rules of shogi::
229 * Sample game::
230 * Mating problems::
231 * Shogi variants::
232 * Differences between shogi and chess::
233 @end menu
234 @end ifnottex
237 @c -------------------------------------------------------
238 @c 
239 @c The rules of shogi.
241 @c -------------------------------------------------------
243 @node    The rules of shogi, Sample game, About shogi, About shogi
244 @section The rules of shogi
245 @cindex  Rules
247 Shogi is a two-person abstract strategy board game with full information
248 (i.e. all pieces and moves are visible to both players at all times).
249 It is in the chess family, being descended from the same ancestral game
250 as international chess: the Indian game of Chaturanga.  The two players
251 are referred to as ``Black'' and ``White'', with Black moving first
252 (unlike in international chess, where White moves first), and with
253 movement alternating between the two players.  Note that ``Black'' and
254 ``White'' are just names; the pieces are not colored.  Instead, they are
255 flat, wedge-shaped pieces which point towards the opponent.  The
256 identity of a given piece is indicated by two Japanese Kanji characters
257 on each piece.  In fact, only the top character is needed to identify
258 the piece and thus only the top character is used in shogi diagrams.  I
259 will use alphabetical equivalents in the diagrams here; to see what the
260 Kanji characters look like, start up xshogi (@pxref{xshogi}) and compare
261 the starting setup there with the starting setup in this file
262 (@pxref{The opening setup}).
264 The object of the game is to capture the opponent's King.  The board is
265 a grid of 9x9 uncolored squares, and pieces are placed on the squares.
266 Each player begins with 20 pieces, described in the next section.
267 Capture is by displacement, as in international chess.
269 @ifnottex
270 @menu
271 * The moves of the pieces::
272 * The opening setup::
273 * Promotion of pieces::
274 * Drops::
275 * Winning the game::
276 * Draws::
277 * Handicaps::
278 * Notes for chess players::
279 @end menu
280 @end ifnottex
282 @c The moves of the pieces.
284 @node       The moves of the pieces, The opening setup, The rules of shogi, The rules of shogi
285 @subsection The moves of the pieces
286 @cindex     Piece moves
288 Each player at the beginning of a shogi game has a total of 20 pieces of
289 eight different types.  The moves of the shogi pieces can be divided
290 into three classes: ``stepping'' pieces, that only move one square at a
291 time; ``ranging'' pieces that move any number of unobstructed squares in
292 a line, and ``jumping'' pieces that can jump over obstructing pieces to
293 reach their destination squares.  Most pieces can also promote to
294 different (usually stronger) pieces under certain circumstances (see the
295 next section).  All pieces capture the same way that they move (even
296 pawns).  The piece moves and promotions are as follows; each piece name
297 is followed by the standard piece abbreviation:
299 @enumerate
301 @item
302 The king (K).  The king can move one square in any horizontal, vertical,
303 or diagonal direction, just like the king in international chess.  The
304 king does not promote.
306 @item
307 The rook (R).  The rook can move any number of squares in a horizontal
308 or vertical direction.  The rook is the same as the rook in
309 international chess (except that it can promote).  A rook promotes to a
310 ``dragon king'' or ``dragon'' for short (often just referred to as a
311 ``promoted rook''), which can move as a rook or can move one square in
312 any diagonal direction.
314 @item
315 The bishop (B).  The bishop can move any number of squares in a diagonal
316 direction.  The bishop is the same as the bishop in international chess
317 (except that it can promote).  A bishop promotes to a ``dragon horse''
318 or ``horse'' for short (often just referred to as a ``promoted
319 bishop''), which can move as a bishop or can move one square in any
320 horizontal or vertical direction.  Note: the horse should not be
321 confused with a knight (see below), as they are two completely different
322 pieces.
324 @item
325 The gold general (G).  A gold general can move one square in any
326 horizontal or vertical direction, or one square in a forward diagonal
327 direction.  Gold generals do not promote.
329 @item
330 The silver general (S).  A silver general can move one square in any
331 diagonal direction, or one square straight forward.  A silver general
332 promotes to a gold general.
334 @item
335 The knight (N).  A knight can move one square straight forward followed
336 by one square to either forward diagonal, jumping over intervening
337 pieces if any.  In other words, a knight moves like its international
338 chess counterpart, but forward only.  A knight promotes to a gold
339 general.  The knight is the only jumping piece, as in chess.
341 @item
342 The lance (L).  A lance can move any number of squares straight forward.
343 A lance promotes to a gold general.
345 @item
346 The pawn (P).  A pawn can move one square straight forward.  The pawn
347 captures the same way that it moves, in contrast to international chess.
348 There is also no initial two-space move for pawns and no
349 @emph{en-passant} capture.  A pawn promotes to a gold general; a
350 promoted pawn is usually known as a ``Tokin''.
352 @end enumerate
355 @c The opening setup.
357 @node       The opening setup, Promotion of pieces, The moves of the pieces, The rules of shogi
358 @subsection The opening setup
359 @cindex     Opening setup
361 The opening setup for shogi is as follows:
363 @ifnottex
364 @verbatim
365    9    8    7    6    5    4    3    2    1
366 +--------------------------------------------+
367 | wL | wN | wS | wG | wK | wG | wS | wN | wL |  a
368 +--------------------------------------------+
369 |    | wR |    |    |    |    |    | wB |    |  b
370 +--------------------------------------------+
371 | wP | wP | wP | wP | wP | wP | wP | wP | wP |  c
372 +--------------------------------------------+
373 |    |    |    |    |    |    |    |    |    |  d
374 +--------------------------------------------+
375 |    |    |    |    |    |    |    |    |    |  e
376 +--------------------------------------------+
377 |    |    |    |    |    |    |    |    |    |  f
378 +--------------------------------------------+
379 | bP | bP | bP | bP | bP | bP | bP | bP | bP |  g
380 +--------------------------------------------+
381 |    | bB |    |    |    |    |    | bR |    |  h
382 +--------------------------------------------+
383 | bL | bN | bS | bG | bK | bG | bS | bN | bL |  i
384 +--------------------------------------------+
385 @end verbatim
386 @end ifnottex
388 @c The following TeX macros are taken with permission from 
389 @c "TeX for the Beginner" by Wynter Snow.
391 @tex
392 \def\startline{\par\nobreak\noindent}
394 {\obeylines\obeyspaces%
395 \gdef\beginVerbatim{\bigbreak%
396 \begingroup%
397 \parskip=0pt%
398 \obeylines\obeyspaces%
399 \let^^M=\startline%
400 \tt}}
401 \gdef\endVerbatim{\endgroup\bigbreak}
402 \beginVerbatim
405    9    8    7    6    5    4    3    2    1
406 +--------------------------------------------+     
407 | wL | wN | wS | wG | wK | wG | wS | wN | wL |  a   
408 +--------------------------------------------+     
409 |    | wR |    |    |    |    |    | wB |    |  b   
410 +--------------------------------------------+     
411 | wP | wP | wP | wP | wP | wP | wP | wP | wP |  c   
412 +--------------------------------------------+     
413 |    |    |    |    |    |    |    |    |    |  d   
414 +--------------------------------------------+     
415 |    |    |    |    |    |    |    |    |    |  e   
416 +--------------------------------------------+     
417 |    |    |    |    |    |    |    |    |    |  f   
418 +--------------------------------------------+     
419 | bP | bP | bP | bP | bP | bP | bP | bP | bP |  g   
420 +--------------------------------------------+     
421 |    | bB |    |    |    |    |    | bR |    |  h   
422 +--------------------------------------------+     
423 | bL | bN | bS | bG | bK | bG | bS | bN | bL |  i   
424 +--------------------------------------------+
426 \endVerbatim
427 @end tex
429 Here, ``b'' stands for ``black'' and ``w'' stands for ``white'', so
430 that, for instance, ``bL'' means ``black lance''.  The numbers above the
431 files and the letters to the right of the ranks represent the most
432 common notation system used for shogi by westerners (the Japanese also
433 use Arabic numerals for the files but use Japanese numerals for the
434 ranks).  
437 @c Promotion of pieces.
439 @node       Promotion of pieces, Drops, The opening setup, The rules of shogi
440 @subsection Promotion of pieces
441 @cindex     Piece promotion
443 In sharp contrast to international chess, where only pawns can promote
444 to higher-ranked pieces, most of the pieces in shogi can promote.  The
445 promoted ranks are discussed in the section on piece moves (@pxref{The
446 moves of the pieces}) but are repeated here for reference:
448 @table @asis
450 @item Pawn
451 promotes to gold general (called a `tokin' in this case only).
453 @item Lance
454 promotes to gold general.
456 @item Knight
457 promotes to gold general.
459 @item Silver general
460 promotes to gold general.
462 @item Gold general
463 does not promote.
465 @item Bishop
466 promotes to ``dragon horse'' or just ``horse'' for short.  The horse can
467 move as a bishop or can move one square in any orthogonal direction.
469 @item Rook
470 promotes to ``dragon king'' or just ``dragon'' for short.  The dragon
471 can move as a rook or can move one square in any diagonal direction.
473 @item King
474 does not promote.
476 @end table
478 The three ranks furthest away from each player constitute his/her
479 ``promotion zone''.  A player may, but is not required to, promote a
480 piece after making a move in which the piece begins and/or ends in the
481 promotion zone.  Thus you can promote a piece when moving the piece into
482 the promotion zone, out of the promotion zone, or entirely within the
483 promotion zone.  Promotion is mandatory in these cases:
485 @enumerate
487 @item You must promote a pawn or a lance after moving it to the last rank.
489 @item You must promote a knight after moving it to either of the last
490 two ranks.
492 @end enumerate
494 These forced promotions ensure that a piece cannot be moved to a square
495 from which it would have no further move.
497 Pieces ``dropped'' onto the board (@pxref{Drops}) always drop in the
498 unpromoted state, even if they drop into the promotion zone.
502 @c Drops.
504 @node       Drops, Winning the game, Promotion of pieces, The rules of shogi
505 @subsection Drops
506 @cindex     Drops
508 When a player captures a piece, that piece is not removed from play.
509 Instead, it becomes the property of the capturer and can re-enter play
510 by being placed on (almost) any vacant square during the player's move.
511 This is known as a ``drop'' and counts as a full move (in other words,
512 you can either move a piece on the board or drop a piece onto the board
513 during your move, but not both).  All pieces drop in the unpromoted
514 state.  Pieces may be legally dropped in their promotion zone, but they
515 do not promote on that turn.
517 There are several restrictions on drops:
519 @enumerate
521 @item A pawn may not be dropped onto a file if there is already an
522 unpromoted pawn belonging to the same player on that file.  It is legal
523 to drop a pawn on a file which contains a @emph{promoted} pawn belonging
524 to the same player, however.
526 @item A pawn may not be dropped to give immediate checkmate on the
527 move.  A pawn is, however, permitted to be moved on the board to give
528 immediate checkmate.  This is a curious rule, and if anyone knows the
529 reason for it I would appreciate it if they would contact me and explain
530 it to me :-)
532 @item A pawn or piece may not be dropped onto a square from which they
533 would have no legal move.  This means that pawns and lances may not be
534 dropped onto the last rank, and the knight may not be dropped onto the
535 last or second-to-last rank.
537 @end enumerate
539 It is entirely permissible (and often advisable) to drop a piece or pawn
540 between one's King and an attacking ranging piece.  For this reason,
541 the final checkmating move is nearly always an attack on the King from
542 an adjacent square (except for an attack by a Knight).
544 Captured pieces are said to be pieces ``in hand''.
546 The drop is the primary distinguishing feature of Japanese chess, shared
547 with no other popular chess-type game.  It gives shogi a very aggressive
548 quality, and dramatically increases the number of possible moves once a
549 few pieces have been captured.  Another interesting feature of shogi is
550 that exchanges complicate play rather than simplifying it (as in
551 international chess), because of the drop rule.
554 @c Winning.
556 @node       Winning the game, Draws, Drops, The rules of shogi
557 @subsection Winning the game
558 @cindex     Winning the game
560 A game of shogi is won by capturing the opponent's king.  In general,
561 this is done by checkmating the king: attacking the king in such a way
562 that the king cannot be defended no matter what the defending player
563 moves.  Note, though, that there is no rule that requires a player to
564 defend a king which is being attacked.  However, if he does not defend
565 his king, the opponent is entirely free to capture it on the next move,
566 thus winning the game.  As in international chess, in practice most
567 games end by resignation when one player realizes that he cannot escape
568 checkmate. 
571 @c Draws.
573 @node       Draws, Handicaps, Winning the game, The rules of shogi
574 @subsection Draws
575 @cindex     Draws
577 There are very few draws in shogi; only about 1-2% of professional games
578 end in a draw.  One reason for this is that material can never be
579 depleted as in chess, because captured pieces are constantly re-entering
580 play as a consequence of the drop rule.  In fact, most of the ways a
581 game can be drawn in chess are not allowed in shogi:
583 @itemize @bullet
585 @item Draws cannot be offered.
587 @item There is no fifty-move rule.
589 @item A stalemate counts as a win for the stalemater.  Stated otherwise:
590 if you can't move, you lose.
592 @item Perpetual check is illegal (see below).
594 @end itemize
596 There are only two legal ways in which a draw can occur:
598 @enumerate
600 @item A position (including the pieces in hand) occurs 4 times with the same
601 player to move (called ``Sennichite'').  However, if this is caused by
602 consecutive checks (direct attacks on the King, threatening to capture
603 it on the next move) by one side, the player giving these checks loses
604 the game.  In other words, perpetual check results in a loss for the
605 attacker who recreates the same position the 4th time.
607 @item Both players have moved their King into the the promotion zone (or they
608 cannot be prevented from doing so) and the Kings cannot be checkmated.
609 A King who has entered the promotion zone is known as an ``entering
610 King''; due to the forward orientation of most shogi pieces, it is very
611 hard to mate such a King.  In that case the players may decide to count
612 their pieces as follows: the King does not count, the Rook and Bishop
613 count as 5 points, and all other pieces as one point.  Promotion is
614 disregarded.  If both players have at least 24 points the game is a draw
615 (called ``Jishogi'').  If a player has less, he loses the game.
617 Of course, a player can refuse to count pieces when he still has mating
618 chances or chances to gain material which would affect the outcome of
619 the counting.  There is no strict rule about what to do if this is not
620 the case, but nonetheless a player refuses to count up (e.g. because he
621 does not have enough points for a draw).  It has been generally accepted
622 that in such a case the game ends and the pieces are counted after one
623 player has managed to get all his pieces protected in the promotion
624 zone.
626 @end enumerate
628 @c Handicaps.
630 @node       Handicaps, Notes for chess players, Draws, The rules of shogi
631 @subsection Handicaps
632 @cindex     Handicaps
634 Unlike international chess, shogi has a well-established handicap system
635 which is used when players of different strengths play against each
636 other.  Handicaps range from small to huge, which makes it possible for
637 weak players to play against even very strong players and have an even
638 chance of winning.
640 Shogi players are ranked as follows: the weakest rank is around 15
641 ``kyu'', which represents a beginner.  14 kyu is higher than 15 kyu, 13
642 kyu is higher still, and so on until you get to 1 kyu.  The next highest
643 rank is 1 ``dan'', followed by 2 dan, 3 dan and so forth.  The highest
644 amateur rank is 6 dan; professionals go up to 9 dan.  However,
645 professional ranks are not the same as amateur ranks; a professional 1
646 dan is @emph{much} stronger than an amateur 1 dan.  This system is
647 similar to that used by go players (and also other Japanese sports such
648 as karate).
650 A handicap consists of the stronger player playing White and removing
651 one or more pieces from his side of the board at the start of the game.
652 These pieces are permanently removed from play; they are not in hand.
654 The following is a list of the accepted handicaps, from weakest to
655 strongest.  The degree of the handicap, represented by the position in
656 the list, represents the difference in rank between the two players for
657 which the handicap is appropriate.  These rules are taken from the books
658 ``Shogi for Beginners'' by John Fairbairn and ``The Art of Shogi'' by
659 Tony Hoskings (@pxref{References and links}) and, I believe, represent
660 current Japanese practice.
662 @enumerate
664 @item 
665 The stronger player removes his left lance (on 1a).
667 @item 
668 The players play a two-game match; in the first game the stronger player
669 removes his left lance (on 1a), while in the second game he removes his
670 bishop.
672 @item 
673 The stronger player removes his bishop.
675 @item 
676 The stronger player removes his rook.
678 @item 
679 The stronger player removes his rook and left lance.
681 @item 
682 The players play a two-game match; in the first game the stronger player
683 removes his rook and left lance (on 1a), while in the second game he
684 removes his rook and bishop.
686 @item 
687 The stronger player removes his rook and bishop.  This is usually called
688 a ``two-piece'' handicap.
690 @item 
691 The stronger player removes his rook, bishop, and both lances.  This is
692 called a ``four-piece'' handicap.
694 @item 
695 The stronger player removes his rook, bishop, both lances, and both
696 knights.  This is called a ``six-piece'' handicap.
698 @item 
699 The stronger player removes his rook, bishop, both lances, both knights,
700 and both silvers.  This is called an ``eight-piece'' handicap.
702 @end enumerate
704 Another advantage of playing handicap games is that the handicaps alter
705 the optimal strategy for both players.  For instance, handicaps all have
706 their own opening lines which may bear little or no resemblance to those
707 used in non-handicap shogi.  This means that when learning handicap
708 shogi, you are essentially learning completely new games which use the
709 same equipment!
711 The reader may wonder how on earth a player giving an eight-piece
712 handicap, say, could possibly hope to win.  Don't forget, though, that
713 in shogi the opponent's pieces can be captured and then become part of
714 one's own army.  Thus, if the opponent plays badly enough, the number of
715 pieces will soon even out.
718 @c Notes for chess players.
720 @node       Notes for chess players,  , Handicaps, The rules of shogi
721 @subsection Notes for chess players
723 Here are a few miscellaneous things that may confuse chess players.
724 Some of these have been mentioned elsewhere, but they bear repeating.
726 @enumerate
727 @item There is no queen.
729 @item Pawns capture the same way they move.  There is no initial
730 two-space pawn move and no @emph{en-passant} move.
732 @item There is no special castling move.  There @emph{are} a large
733 number of possible defensive formations referred to as ``castles''
734 (@pxref{Sample game}) but there is no need for special moves to create
735 them.
737 @item A given piece can only promote to @emph{one} other kind of piece.
739 @end enumerate
741 @c 
742 @c Sample game.
743 @c 
745 @node    Sample game, Mating problems, The rules of shogi, About shogi
746 @section Sample game
747 @cindex  Sample game
749 @c This will have to be spruced up for the TeX version...
751 This game was annotated by Pieter Stouten (@pxref{References and
752 links}).  I have made some minor corrections.  Note that captures are
753 denoted by the ``x'' symbol e.g. Rx3f and drops are denoted by the ``*''
754 symbol e.g. R*3f.  Check is indicated by a ``+'' after the move,
755 e.g. R3f+.  I recommend you use gnushogi/xshogi to play along with this
756 game.  In xshogi simply hit the ``Force Moves'' button after starting
757 up, while in gnushogi enter the word ``force'' at the prompt.  This will
758 allow you to enter moves for both sides.
760 Note also that the move numbering system used here is the chess-type
761 system where one move means one move by each player.  The Japanese count
762 one move made by each player as two moves.
764 ---------------------------------------------------------------------------
766 Below you will find (the English translation of) an annotated game which
767 was published in the Dutch Shogi magazine ``81'' and in the Dutch
768 beginners booklet.  It has proven to be a very useful game to explain
769 some basic principles of Shogi.  Also, it is a rather straightforward
770 game compared to professional games where in most cases very diffuse
771 middle game fights take place.
773    Pieter Stouten, 14th May 1990.
775 ---------------------------------------------------------------------------
777 Black: Michael Trent (1-dan).  White: David Murphy (2-dan).
779    1. P2f P3d  2. P2e B3c @*
780 [ This move is necessary, as otherwise white can exchange pawns: 3. P2d
781 Px2d 4. Rx2d.  He would thus get a pawn in hand and open up his rook
782 file. ]
784    3. P7f P4d @*
785 [ White closes the bishop diagonal again.  He plans to play ranging rook
786 (the rook goes to 5b, 4b, 3 or 2b; a defensive strategy) and in that
787 case he'd better avoid an exchange of bishops.  One of the reasons is
788 that he will have problems developing his pieces without leaving holes
789 for bishop drops. ]
791    4. S4h R3b  5. P3f S4b  6. K6h K6b @*
792 [ In general the rook plays an important role in the attacks.  It is
793 wise to move the king away from the area where the initial fights will
794 be and both players act according to the Shogi proverb ``keep the rook
795 and king apart''. ]
797    7. K7h K7b  8. P5f P5d  9. G4i-5h G4a-5b @*
798 [ Both players use their second gold general to build their castle. ]
800    10. S6h @*
801 [ In itself this move is not bad.  However, it will become clear that
802 black plans a quick attack and in that case it is wiser to omit this
803 move. ]
805    10... S5c  11. P1f P1d @*
806 [ The advance of the edge pawns must be timed very well.  The remark at
807 black's tenth move applies here too: this move is good if black wants to
808 play a slow game, because it eliminates a future B1e. ]
810    12. P4f K8b  13. N3g S7b @*
811 [ Black develops his knight in order to start an attack over the second,
812 third and fourth files.  White strengthens his king's position and
813 awaits the attack.  He aims at a counterattack as soon as black has
814 broken through into the white camp.  Probably white's breakthrough will
815 take place later, but he has good compensation in the form of a stronger
816 castle.  This theme occurs very often in static rook versus ranging rook
817 games. ]
819    14. P4e R4b @*
820 [ Black starts his attack and white puts up a very passive defence.  His
821 rook has a hard task now to penetrate the black position.  Moreover, he
822 blocks his own bishop.  It seems much better to start a counterattack
823 with 14... P3e, later to be followed by B2b, B5a or Bx4d in order to use
824 his rook more actively. ]
826    15. Px4d Sx4d  16. P*4e S5c @*
827 [ 16... Sx4e is more active.  A silver general is normally more valuable
828 than a knight, but white gets two pawns in hand and black none, while
829 the knight might come in handy for white too. ]
831    17. Bx3c+ Nx3c  18. P2d Px2d @*
832 [ Black threatens to break through and white has to consider taking the
833 pawn on 2d or starting a counterattack with Nx4e.  If he chooses the
834 latter, black can play Px2c+ followed by +P3c.  The disadvantage is the
835 black ``tokin'' (=promoted pawn) that white will get in his camp; the
836 advantage is that it will cost black two more moves to promote his rook.
837 Because white did not trust that the result after engaging in a
838 ``semeai'' (=mutual attack) with 18...Nx4e would give a positive result,
839 he captured the pawn on 2d.  Making the right decision in moments like
840 this often makes the difference between a win and a loss: miss one
841 attacking chance and you will be forced to defend the whole game until
842 the unavoidable defeat; on the other hand, an unsound attack can destroy
843 all ``aji'' (=potential, meaning possibilities, threats) without getting
844 anything in return. ]
846    19. Rx2d Nx4e  20. Nx4e Rx4e  21. R2a+ P*4g @*
847 [ Now it becomes clear why black's 10. S6h was not good.  Had this move
848 been omitted, then white would not have had the time to play 13... S7b
849 and after R2a+ the gold on 6a would hang.  Thus black would have kept
850 ``sente'' (=initiative).  Instead of 21... P*4g, B*6d is a very good
851 move, because after 22. P*2h black does not have a pawn in hand anymore
852 and he is being threatened with the annoying 22... N*4f 23. G5g N3h+
853 24. S4g +N4h also.  Black can also counter 21... B*6d with 22. N*3g.
854 White would then reply with 22... R4b 23. B*3c P*4g 24. Bx4b+ Sx4b.  The
855 white rook has played its role and instead of spending moves on saving
856 it white starts to scatter black's defences by successive pawn drops on
857 the fourth file: 25. Gx4g P*4f 26. G5g N*6e 27. G5h P4g+ 28. Gx4g P*4f.
858 This analysis was provided by Kato Hifumi, 9-dan professional (the
859 highest regular grade).  Destroying the coherence of the enemy pieces
860 (their shape) by dropping pawns is one of the most important Shogi
861 techniques.  With the actual move 21... P*4g white missed a good
862 chance. ]
864    22. Sx4g P*4f  23. B*3g Px4g+  24. +Rx6a +Px3g @*
865 [ 23. B*3g seems pointless, but a closer look reveals that it is
866 actually quite mean.  On move 24 white cannot capture black's ``Ryu''
867 (=dragon =promoted rook) with his silver: 24... Sx6a 25. N*7d K7b
868 26. G*8b mate.  By attacking the front of the white castle and
869 threatening to mate him there, black has the chance to break down the
870 white defences from the side. ]
872    25. +Rx5b S*6b @*
873 [ Here 25... B*4d would be much better, because it is defensive and
874 attacking at the same time.  After e.g. 26. G*4c Bx9i+ 27. Gx5c black
875 threatens 28. +Rx7b Kx7b 29. S*6a K8b 30. S*7a Kx7a 31. G*7b mate.
876 White is one move quicker, however.  He has the following beautiful
877 ``tsume'' (mating sequence where every move is check): 27... N*8f 28. Px8f
878 S*8g 29. Kx8g B*9h 30. K7h Bx8i+ 31. K8g +B8i-8h 32. K9f L*9e mate.
879 This illustrates the sharpness of Shogi: one move can make the
880 difference between winning and losing. ]
882    26. P*4f Rx4f @*
883 [ This move eliminates white's last chances.  26... R4b 27. +Rx4b Sx4b
884 28. R*4a seems annoying, but after 28... B*3c 29. S7g B*3b white wins
885 the rook and with his ``tokin'' on 3g there still is some hope. ]
887    27. N*6e +P4g @*
888 [ White cannot defend anymore, so he starts a desperate attack.  Black
889 does not lose the right track, however. ]
891    28. Nx5c+ +Px5h  29. +Nx6b +Px6h  30. Gx6h N*8f  31. Px8f B*6i  32. Gx6i
892    R4h+  33. N*6h +Rx6h  34. Gx6h S*8g  35. Kx8g N*9e  36. K7h Resigns @*
893 [ White resigns here, because after 36... B*8g 27. K7g his attack has
894 petered out. ]
896 @page
899 @c 
900 @c Mating problems.
901 @c 
903 @node    Mating problems, Shogi variants, Sample game, About shogi
904 @section Mating problems
906 One good way to improve at shogi is to solve mating problems.  There are
907 several types of these problems, but the most common is called a
908 ``tsume-shogi'' problem, or ``tsume'' problem for short.  In a tsume
909 problem, all pieces that are not on the board are assumed to be in the
910 opponent's hand (except for your King, which is usually not shown).
911 Every move you make must be check until the final checkmate.  Your
912 opponent may play any piece on the board or drop any of his pieces in
913 hand in order to prevent the mate.  In a properly constructed tsume
914 problem, all of your pieces on the board and in hand must be essential
915 to the solution.  One consequence of this is that all of your pieces in
916 hand must be played during the solution.  There should only be one
917 correct solution for the given number of moves.  Tsume problems use
918 Japanese-style move numbering; thus, a problem where you move (and give
919 check), your opponent moves, and you move to give checkmate is called a
920 three-mover.  Here is a really trivial three-mover:
922 @ifnottex
923 @verbatim
924    3    2    1
925 ----------------+
926  |    |    |    |  a
927 ----------------+
928  |    |    | wK |  b
929 ----------------+
930  |    |    |    |  c
931 ----------------+
932  | bN |    |    |  d
933 ----------------+
934  |    |    |    |  e
935 ----------------+
936  |    | bN |    |  f
937 ----------------+
939 Black in hand: S, G
940 @end verbatim
941 @end ifnottex
944 @tex
945 \def\startline{\par\nobreak\noindent}
947 {\obeylines\obeyspaces%
948 \gdef\beginVerbatim{\bigbreak%
949 \begingroup%
950 \parskip=0pt%
951 \obeylines\obeyspaces%
952 \let^^M=\startline%
953 \tt}}
954 \gdef\endVerbatim{\endgroup\bigbreak}
955 \beginVerbatim
957    3    2    1            
958 ----------------+         
959  |    |    |    |  a         
960 ----------------+           
961  |    |    | wK |  b         
962 ----------------+           
963  |    |    |    |  c       
964 ----------------+         
965  | bN |    |    |  d       
966 ----------------+         
967  |    |    |    |  e       
968 ----------------+         
969  |    | bN |    |  f       
970 ----------------+
971      
972 Black in hand: 2G
974 \endVerbatim
975 @end tex
977 Here, Black plays G*2b, White plays K1c, and Black plays G*1d mate.
978 More typical tsume problems range from 5 moves to arbitrarily high
979 numbers of moves, and they can be quite brain-busting.  Tsume problems
980 may seem artificial, but in the closing stages of the game where both
981 players have a lot of pieces in hand, it is often necessary to give
982 check at every move, or else your opponent will start a counterattack
983 and will mate you before you mate him.  A tsume problem is a worst-case
984 scenario for the attacker: you have to mate your opponent even though he
985 has every piece not on the board in hand, which means you have to
986 develop sharp attacking skills.  Many more tsume problems can be found
987 on the internet; I particularly recommend Patrick Davin's ``Shogi
988 Nexus'' (@pxref{References and links}).
990 @page
992 @c 
993 @c Shogi variants.
994 @c 
996 @node    Shogi variants, Differences between shogi and chess, Mating problems, About shogi
997 @section Shogi variants
998 @cindex  Shogi variants
999 @cindex  Variants
1000 @cindex  Tori Shogi
1001 @cindex  Wa Shogi
1002 @cindex  Chu Shogi
1003 @cindex  Dai Shogi
1004 @cindex  Tenjiku Shogi
1005 @cindex  Dai-dai Shogi
1006 @cindex  Maka-dai-dai Shogi
1007 @cindex  Tai Shogi
1008 @cindex  Kyoku Tai Shogi
1010 Several historical variants of shogi exist.  Most of these were invented
1011 before modern shogi (in some cases hundreds of years before), are much
1012 larger than modern shogi and are not played with drops.  Thus, in many
1013 ways they are really more like giant chess games than like modern shogi.
1014 The only one of these games to have survived in Japan is Chu (middle)
1015 shogi, which is still played a little bit.  Thanks to the efforts of
1016 George Hodges and John Fairbairn of the Shogi Association (two British
1017 shogi enthusiasts), these games were resurrected and rules and sets for
1018 them can still be purchased from George Hodges (@pxref{References and
1019 links}).  I hope to eventually extend GNU shogi so that it can play at
1020 least some of these games.  There are also several non-historical
1021 variants of shogi; I don't know much about them but you can find
1022 information about them on the internet (@pxref{References and links}).
1024 The historical variants include:
1026 @enumerate
1028 @item
1029 Tori (bird) shogi, played on a 7x7 board with 32 pieces in all; this is
1030 the only variant that is known to have been played with drops.
1032 @item
1033 Wa shogi, played on an 11x11 board with 54 pieces.  This game can be
1034 played with or without drops but the historical evidence favors the view
1035 that it was played without drops.  However, most people who have tried
1036 it claim it is a much better game with drops, being even more intricate
1037 than standard shogi.
1039 @item
1040 Chu (middle) shogi, played on a 12x12 board with 92 pieces.  This was
1041 (and is) by far the most popular of the variants, and has 21 different
1042 kinds of pieces in the starting line-up alone (along with several others
1043 that appear upon promotion).  Unlike modern shogi, there are a
1044 tremendous number of ranging pieces and the game is definitely not
1045 played with drops.  There is also an amazing piece called the Lion which
1046 has a double king move and can capture two pieces at once!  Chu shogi
1047 has a small but fanatical following, some of whom consider it better
1048 than modern shogi.
1050 @item
1051 Dai (great) shogi, played on a 15x15 board with 130 pieces.  Other than
1052 the larger board, this game is very similar to Chu shogi.
1054 @item
1055 Tenjiku (exotic) shogi, played on a 16x16 board with 176 pieces.  This
1056 game is possibly the most complex tactical game in existence.  There are
1057 many astoundingly powerful pieces, including one (the Fire Demon) that
1058 can capture up to eight opposing pieces in a single move!  Despite the
1059 size of the game, checkmates can occur very suddenly (and often very
1060 early on) if one player makes a wrong move.  Tenjiku also has a small
1061 but fanatical following, one of whom (Colin Adams) has written a book on
1062 the game which is available for download at
1063 @uref{http://wayback.archive.org/web/20120717085827/http://www.colina.demon.co.uk/tenjiku.html}.
1065 @item
1066 Dai-dai (great-great) shogi, played on a 17x17 board with 192 pieces.
1067 The opening setup alone has 64 different kinds of pieces!  This game and
1068 the larger ones that follow sound pretty outlandish, but they have
1069 actually been played; a game of Dai-dai can supposedly be played in
1070 about 12 hours.
1072 @item
1073 Maka-dai-dai (great-great-great) shogi, played on a 19x19 board with 192
1074 pieces.  For those for whom Dai-dai shogi is just too small :-)
1076 @item
1077 Tai (grand) shogi, played on a 25x25 board with 354 pieces!  Until
1078 recently, this was thought to be the biggest chess game ever devised,
1079 but now there is...
1081 @item
1082 Kyoku tai (extremely grand?) shogi, played on a 36x36 board with 402
1083 pieces.  The rules for this have just been unearthed in an old Japanese
1084 book.  Hopefully someone will soon organize a postal Kyoku tai shogi
1085 championship; maybe their distant ancestors could finish it :-)
1087 It is thought that the really huge games (Dai-dai and up) were never
1088 really played to any significant extent (gee, wonder why?) and were
1089 devised merely so that the creators could have the fun of inventing
1090 enormous games, amazing their friends and confounding their enemies.
1091 However, the games up to Tenjiku shogi at least appear to be quite
1092 playable, assuming one has the time.
1094 @end enumerate
1096 Many modern variants have also been devised, usually on small boards,
1097 and often by western people.  Those include:
1099 @enumerate
1101 @item
1102 Mini Shogi, played on a 5x5 board with 12 pieces.  Its rules are
1103 nearly identical to Standard Shogi, and GNU Shogi has some support for
1106 @item
1107 Judkins Shogi, similar to Mini Shogi on a 6x6 board.
1109 @item
1110 Cannon Shogi, played on a 9x9 board, adds pieces inspired by the
1111 Cannon found in Xiang Qi (chinese chess)
1113 @item
1114 Sannin Shogi, a 3-player variant on an hexagonal board, with specific
1115 rules governing alliance between two players
1117 @item
1118 Kyoto Shogi, Micro Shogi, and several others are much more different.
1120 @end enumerate
1123 @c Differences between shogi and chess.
1126 @node    Differences between shogi and chess,  ,  Shogi variants, About shogi
1127 @section Differences between shogi and chess
1128 @cindex  Shogi vs. Chess
1130 Some differences between shogi and international chess have been
1131 mentioned elsewhere in this document; I summarize them here for people
1132 who are interested in game comparisons.  I won't try to deal with the
1133 thorny question of which game is ``better'' although my bias may have
1134 already come through :-) In fact, the drop rule makes the two games so
1135 different in character that arguing over which game is better is like
1136 comparing apples to oranges (you'd be better off comparing chess to Chu
1137 shogi (@pxref{Shogi variants}).  However, I believe that if you are a
1138 chess fan you'll really like shogi as well, and shogi is also popular
1139 with many people who don't particularly like chess.
1141 Here are the significant differences between chess and shogi:
1143 @enumerate
1145 @item
1146 In shogi, captured pieces become the property of the capturer and can
1147 re-enter play by being dropped onto almost any vacant square.  In chess,
1148 captured pieces are out of the game.  Thus, in shogi, piece exchanges
1149 complicate the play significantly while in chess they simplify it.
1151 @item
1152 The shogi board is 9x9; the chess board is 8x8.
1154 @item
1155 Shogi has five pieces with no counterpart in chess: the gold and silver
1156 generals, the lance, the promoted rook and the promoted bishop.  Chess
1157 has one piece with no counterpart in shogi: the queen.  The knight's
1158 move in shogi is much more restrictive than in chess.  Pieces in shogi
1159 generally have a much smaller range of movement than in chess (unless
1160 they are in hand).
1162 @item
1163 In shogi, all pieces except the gold general and the king can promote,
1164 but only to one kind of piece.  Promotion is easier in shogi because the
1165 promotion zone is closer to the starting position of the pieces
1166 (especially pawns).  In chess, only the pawn can promote, but it can
1167 promote to any other piece except the king.
1169 @item
1170 In shogi, pawns capture the same way they move.  There is no initial
1171 two-space pawn move and hence no @emph{en-passant} captures.  In chess,
1172 pawns capture diagonally which means that opposing pawns can block each
1173 other.
1175 @item
1176 In shogi, you only have one rook and one bishop.  Note that the bishop
1177 is not restricted to only one ``color'' square (squares in shogi aren't
1178 colored, but never mind) because promoted bishops can also move one
1179 square orthogonally.
1181 @item
1182 There is no special castling move in shogi.  The term ``castle'' is
1183 used in shogi to denote a defensive formation consisting of (usually)
1184 three generals which protect the king.  There are many such castles
1185 (about 40 or so have names).  @xref{Sample game}.
1187 @item
1188 Draws are much rarer in shogi than in chess.  Perpetual check is not
1189 allowed.  Stalemate is a virtual impossibility, and is a loss for the
1190 stalematee. 
1192 @item
1193 Since pieces are never out of play in shogi, chess-type endgames
1194 involving only a few pieces do not occur.
1196 @item
1197 Shogi games are generally longer than chess games (about 60-70 moves is
1198 typical).
1200 @item
1201 Shogi has a well-developed handicap system which is in general use;
1202 chess does not.
1204 @end enumerate
1206 The effects of all these differences on play include (in my opinion):
1208 @enumerate
1210 @item
1211 Piece/pawn structures in chess are more rigid than in shogi.  Pawns
1212 block each other and pawns, once advanced, cannot ever retreat.  In
1213 shogi, you can repair the hole caused by a pawn advance by exchanging
1214 the pawn and dropping it back where you want it.  Thus shogi is more
1215 fluid than chess and less ``structural''.
1217 @item
1218 Counterattack is MUCH more common in shogi than in chess.  Games
1219 typically end in mutual mating attacks, where each player is trying to
1220 checkmate the other player before being checkmated himself.  This makes
1221 tempo incredibly important and also makes sacrificial play quite common.
1223 @item
1224 Attacks involving only ranging pieces are more a feature of chess than
1225 of shogi.  A shogi attack typically uses a ranging piece or pieces to
1226 support an attack by short-range pieces (especially generals).  It is
1227 very rare to mate a king with a non-adjacent ranging piece in shogi
1228 since the player whose king is threatened can almost always interpose by
1229 dropping a piece.
1231 @end enumerate
1234 @c --------------------
1235 @c gnushogi.
1236 @c --------------------
1238 @node    gnushogi, xshogi, About shogi, Top
1239 @chapter gnushogi
1240 @cindex  gnushogi
1242 This section describes how to run the ``gnushogi'' program.
1244 SYNOPSIS
1245      
1246 gnushogi [ [[-]a] [-b bookfile] [-B binbookfile] [-C] [-h langfile] 
1247 [-L langfile] [-r length] [-R] [-s pathname] [-l pathname] [-S binbooksize]
1248 [-t] [-c size] [-T size] [-v] [-x] [-X] arg1 arg2 ]
1250 DESCRIPTION
1252 GNU shogi (gnushogi) plays a game of japanese chess (shogi) against the
1253 user or it plays against itself.
1255 At startup gnushogi reads the binbook file if it is present.  It then
1256 looks for a book file.  If it is present it adds its contents to the
1257 binbook data.  If the binbook file is writable a new combined binbook
1258 file is written.
1260 Gnushogi is a modified version of the gnuchess program.  It has a simple
1261 alphanumeric board display, or it can be used with the xshogi program
1262 under X windows.  The program gets its opening moves from the file
1263 gnushogi.bbk which is located in a directory specified in the Makefile.
1264 To invoke the program type:
1266 @table @samp
1268 @item  gnushogi -C
1269 simple curses based version
1271 @item  gnushogi -X (or just gnushogi)
1272 xshogi compatible version
1274 @item gnushogi -R
1275 raw test display version
1276 @end table
1278 TIME CONTROLS
1280 If one argument is given, it is the search time per move in
1281 [minutes:]seconds.  So gnushogi 30 will generate one move every 30
1282 seconds, while gnushogi 5:00 will generate one move every 5 minutes.
1284 If two or more arguments are given, they will be used to set tournament
1285 time controls with the first argument of each pair being the number of
1286 moves and the second being the total clock time in minutes[:seconds].
1287 Thus, entering gnushogi 60 5 will set the clocks for 5 minutes (300
1288 seconds) for the first 60 moves, and gnushogi 30 3:30 will allow 3
1289 minutes and 30 seconds for 30 moves.
1291 gnushogi 30 5 1 :30 will allow 5 minutes for the first 30 moves and 30
1292 seconds for each move after that.  Up to 4 pairs of controls may be
1293 specified.
1295 If no argument is given the program will prompt the user for level of
1296 play.
1298 For use with xshogi see the documentation on that program.
1299 @xref{xshogi}.
1301 @page
1303 BOOK
1305 The book gnushogi.tbk consists of a sequence of openings.  An opening
1306 begins with a line starting with a # (the rest of the line is a comment).
1307 Following this is a series of moves in algebraic notation alternating
1308 between black and white separated by whitespace.  A move may have a ?
1309 after it indicating this move should never be made in this position.  Moves
1310 are stored as position:move so transpositions between openings can take
1311 place.
1313 HASHFILE
1315 The hashfile if created should be on the order of 4 megabytes; you can
1316 create such a hashfile by typing ``gnushogi -c 22'' (see below).  This
1317 file contains positions and moves learned from previous games.  If a
1318 hashfile is used the computer makes use of the experience it gained in
1319 past games.  Tests run so far show that it plays no worse with the
1320 hashfile than without, but it is not clear yet whether it provides a
1321 real advantage.
1323 LEGAL MOVES
1325 Note: Piece letters are determined by the language file.  What is
1326 specified here is the default (English).
1328 Once gnushogi is invoked, the program will display the board and prompt
1329 the user for a move.  To enter a move, use the notation 7g7f where the
1330 first letter-number pair indicates the origin square and the second
1331 letter-number pair indicates the destination square.  An alternative is
1332 to use the notation P7f where the first letter indicates the piece type
1333 (P,L,N,S,G,B,R,K).  To promote append a + the type of the new piece to
1334 the move, as in 2d2c+ or P2c+. Note that you must use capital letters
1335 for the pieces by default.
1337 COMMAND-LINE OPTIONS
1339 @table @samp
1341 @item -a
1342 Do not search on opponent's time.
1344 @item a
1345 Do search on opponent's time.
1347 @item -b @var{bookfile}
1348 Use bookfile for opening book.
1350 @item -B @var{binbookfile}
1351 Use binbookfile for binary opening book.
1353 @item -c @var{size}          
1354 Create a new HASHFILE.  File size is 2^size entries of approximately 65+?
1355 bytes.
1357 @item -C
1358 Use curses-based display mode.
1360 @item -h   
1361 Do not use hashfile.
1363 @item h    
1364 Do use hashfile.
1366 @item -l @var{pathname}
1367 Pathname of the loadfile used with get or xget.
1369 @item -L @var{lang}
1370 Use language lang from the file gnushogi.lang.  If -L is not specified
1371 it uses the first language in the file.
1373 @item  -P @var{plylevels}
1374 Number of plys to include in the binbookfile.  For generating a
1375 binbookfile.
1377 @item  -r @var{length}
1378 Rehash @emph{length} times in searching entries for position in
1379 transposition table.
1381 @item  -R  
1382 Use raw text display mode.  This can be used for dumb terminals or for
1383 systems that don't have curses.
1385 @item  -s @var{pathname}
1386 Pathname of the save file to use with the save command.
1388 @item  -S @var{size}
1389 Size of binbookfile for memory based books.  For creating a binbookfile.
1391 @item  -t   
1392 Show statistics for HASHFILE.
1394 @item  -T @var{size}
1395 Set the transposition table size to 2^size entries.
1397 @item  -v   
1398 Show version and patchlevel.
1400 @item  -x @var{value}
1401 Use value as the evaluation window xwndw.
1403 @item  -X   
1404 Use xshogi display mode (the default).
1406 @end table
1409 COMMANDS
1411 In addition to legal moves, the following commands can be entered at the
1412 gnushogi prompt.  Note: command names are determined by the language
1413 file and may vary with the implementation.  The default language is
1414 English.
1416 @table @samp
1418 @item alg
1419 allow algebraic input (not implemented).
1421 @item Awindow 
1422 change Alpha window (default score + 90).
1424 @item Bwindow 
1425 change Beta window (default score - 90).
1427 @item beep 
1428 toggles beeping after each move (default: on).
1430 @item bd 
1431 updates the current board position on the display.
1433 @item book 
1434 turns off use of the opening library.
1436 @item both 
1437 causes the computer to play both sides of a shogi game.
1439 @item black 
1440 causes the computer to play as White, if the computer was to move
1441 first.
1443 @item bsave 
1444 saves a game to disk as a book textfile.  The program will prompt the
1445 user for a file name.
1447 @item gamein 
1448 toggles game mode time control.  Assumes the time specified for time
1449 control is the time for a complete game.  Input with the level command
1450 should be the game time and the expected number of moves in a game.  go
1451 command must be given.
1453 @item coords 
1454 show coordinates on the display (visual only).
1456 @item contempt 
1457 allows the value of @emph{contempt} to be modified.
1459 @item debug 
1460 asks for a piece as color piece, as wb or bn, and shows its calculated
1461 value on each square.
1463 @item debuglevel 
1464 sets level of debugging output if compiled with debug options.
1466 @item depth 
1467 allows the user to change the search depth of the program.  The maximum
1468 depth is 29 ply.  Normally the depth is set to 29 and the computer
1469 terminates its search based on elapsed time rather than depth.  If depth
1470 is set to (say) 4 ply, the program will search until all moves have been
1471 examined to a depth of 4 ply (with extensions up to 11 additional ply
1472 for sequences of checks and captures).  If you set a maximum time per
1473 move and also use the depth command, the search will stop at the
1474 specified time or the specified depth, whichever comes first.
1476 @item easy 
1477 toggles easy mode (thinking on opponents time) on and off. The default
1478 is easy mode ON.  If easy mode is disabled, the keyboard is polled for
1479 input every so often and when input is seen the search is terminated. It
1480 may also be terminated with a sigint.
1482 @item edit 
1483 allows the user to set up a board position.
1484 @itemize @minus
1486 @item #    
1487 clear the board.
1489 @item c
1490 toggle piece color.
1492 @item .
1493 command will exit setup mode.
1495 @item p3b
1496 place a pawn on 3b
1498 @item p3b+
1499 place a promoted pawn on 3b
1501 @item p*
1502 place a pawn in hand (among the captured pieces)
1504 @end itemize
1506 Pieces are entered by typing a letter (p,l,n,s,g,b,r,k)  for
1507 the piece followed by the coordinate.  Here, letter case is ignored.
1509 The usual warning about the language file applies.
1511 @item exit 
1512 exits gnushogi.
1514 @item first 
1515 tells the computer to move first.  Computer begins searching for a move.
1516 (same as ``go'').
1518 @item force 
1519 allows the user to enter moves for both sides.  To get the program to
1520 play after a sequence of moves has been entered use the ``black'' or
1521 ``white'' commands.
1523 @item get 
1524 retrieves a game from disk.  The program will prompt the user for a file
1525 name.
1527 @item go 
1528 tells the computer to move first.  Computer begins searching for a move.
1529 (same as ``first'').
1531 @item hash 
1532 use/don't use hashfile.
1534 @item hashdepth 
1535 allows the user to change the minimum depth for using the hashfile and
1536 the number of moves from the beginning of the game to use it.
1538 @item help 
1539 displays a short description of the commands and the current status of
1540 options.
1542 @item hint 
1543 causes the program to supply the user with its predicted move.
1545 @item level 
1546 allows the user to set time controls such as 60 moves in 5 minutes etc.
1547 In tournament mode, the program will vary the time it takes for each
1548 move depending on the situation.  If easy mode is disabled (using the
1549 ``easy'' command), the program will often respond with its move
1550 immediately, saving time on its clock for use later on.
1552 @item list 
1553 writes the game moves and some statistics on search depth, nodes, and
1554 time to the file ``shogi.lst''.
1556 @item material 
1557 toggle material flag - draws on no pawns and both sides < rook.
1559 @item new 
1560 starts a new game.
1562 @item p 
1563 evaluates the board and shows the point score for each piece.  The total
1564 score for a position is the sum of these individual piece scores.
1566 @item post 
1567 causes the program to display the principal variation and the score
1568 during the search.  A score of 100 is equivalent to a 1 pawn advantage
1569 for the computer.
1571 @item quit 
1572 exits the game.
1574 @item random 
1575 causes the program to randomize its move selection slightly.
1577 @item rcptr 
1578 set recapture mode.
1580 @item remove 
1581 backout the last level for both sides.  Equal to 2 undo's.
1583 @item reverse 
1584 causes the board display to be reversed.  That is, the Black's pieces will
1585 now appear at the top of the board.
1587 @item rv 
1588 reverse board display.
1590 @item save 
1591 saves a game to disk.  The program will prompt the user for a file name.
1593 @item switch 
1594 causes the program to switch places with the opponent and begin
1595 searching.
1597 @item test 
1598 performs some speed tests for MoveList and CaptureList generation, and
1599 ScorePosition position scoring for the current board.
1601 @item time 
1602 set computer's time remaining, intended for synchronizing clocks among
1603 multiple players.
1605 @item tsume 
1606 toggle tsume mode. In tsume mode, not all possible moves will be
1607 generated. If a king is in check, only moves that get the king out of
1608 check are generated.  If the king is not in check, only moves that give
1609 check to the opponent's king are generated.
1611 @item undo 
1612 undoes the last move whether it was the computer's or the human's.  You
1613 may also type ``remove''.  This is equivalent to two ``undo'''s
1614 (e.g. retract one move for each side).
1616 @item white 
1617 causes the computer to play as Black; if the computer is to move
1618 first the go command must be given.
1620 @item xget 
1621 read an xshogi position file.
1623 @item xsave 
1624 save as an xshogi position file.
1626 @item xwndw 
1627 change X window. The window around alpha/beta used to determine whether
1628 the position should be scored or just estimated.  Note: this has
1629 @emph{nothing} to do with xshogi or X windows; the terms are completely
1630 separate.
1632 @end table
1635 @c --------------------
1636 @c xshogi.
1637 @c --------------------
1639 @node    xshogi, References and links, gnushogi, Top
1640 @chapter xshogi
1641 @cindex  xshogi
1643 This section describes how to run the ``xshogi'' program.
1645 SYNOPSIS
1647 xshogi [ options ]
1649 DESCRIPTION
1651 xshogi provides an X11/Xt/Athena Widgets user interface for gnushogi.
1652 With xshogi you can play gnushogi, set up arbitrary positions, force
1653 variations, or watch xshogi manage a game between two shogi programs.
1654 Furthermore, it can be used as an interface between two players on
1655 different displays.
1657 xshogi can also be used as a shogi board to play out games.  It will
1658 read through a game file or allow a player to play through a variation
1659 manually (force mode).  This is useful for keeping track of email postal
1660 games or browsing games off the net.
1662 After starting xshogi, you can make moves by pressing mouse button 1
1663 while the cursor is over a square with your piece on it and dragging the
1664 mouse to another square.  If the move is illegal, gnushogi will not
1665 allow it.  xshogi will then retract the move.
1667 COMMAND-LINE OPTIONS
1669 The following command line options also correspond to X resources that
1670 you can set in your .Xdefaults file.
1672 @table @samp
1674 @item [standard Xt options]
1675 xshogi accepts standard Xt options like -display, -geometry, and
1676 -iconic.
1678 @item -tc or -timeControl minutes[:seconds]
1679 Amount of time for a set of moves determined by movesPerSession.  If
1680 this number of moves is played within the time control period, xshogi
1681 resets the time clocks.  Default: 5 minutes.
1683 @item -mps or -movesPerSession moves
1684 Number of moves in a time control period.  Default: 40 moves.
1686 @item -st or -searchTime minutes[:seconds]
1687 Tell gnushogi to spend at most the given amount of time searching for
1688 each of its moves.  Without this option, gnushogi chooses its search
1689 time based on the number of moves and amount of time remaining until the
1690 next time control.  Setting this option also sets -clockMode to False.
1692 @item -sd or -searchDepth number
1693 Tell gnushogi to look ahead at most the given number of moves when
1694 searching for a move to make.  Without this option, gnushogi chooses
1695 its search depth based on the number of moves and amount of time
1696 remaining until the next time control.  Setting this option also sets
1697 -clockMode to False.
1699 @item -clock or -clockMode (True | False)
1700 Determines whether or not to use the clock.  If clockMode is False, the
1701 clock does not run, but the side that is to play next is still
1702 highlighted.
1704 @item -td or -timeDelay seconds
1705 Time delay between moves during ``Load Game''.  This doesn't have to be
1706 a round number.  Try -td 0.4.  Default: 1 second.
1708 @item -nsp or -noShogiProgram (True | False)
1709 If this option is True, xshogi acts as a passive shogi board; it does
1710 not try to start a shogi program, not even to check whether moves made
1711 in Force mode are legal.  It also sets -clockMode to False.  Default:
1712 False.
1714 @item -fsp or -firstShogiProgram program
1715 Name of first shogi program.  In matches between two machines, this
1716 program plays white.  Default: ``gnushogi''.
1718 @item -ssp or -secondShogiProgram program
1719 Name of second shogi program, if needed.  In matches between two
1720 machines, this program plays black; otherwise it is not started.
1721 Default: ``gnushogi''.
1723 @item -fh or -firstHost host
1724 Name of host the first shogi program plays on.  Default: ``localhost''.
1726 @item -sh or -secondHost host
1727 Name of host the second shogi program plays on.  Default: ``localhost''.
1729 @item -rsh or -remoteShell shell_name
1730 Some systems do not use rsh as the remote shell.  This option allows a
1731 user to name the remote shell command.  This should be done in the
1732 resource file.
1734 @item -mm or -matchMode (False | Init | Position | Opening)
1735 Automatically run a game between firstShogiProgram and
1736 secondShogiProgram.  If matchMode is set to Init, xshogi will start the
1737 game with the initial shogi position.  If matchMode is set to Position,
1738 xshogi will start the game with the position specified by the
1739 loadPositionFile resource.  If matchMode is set to Opening, xshogi will
1740 play out the opening moves specified by the -loadGameFile resource.  If
1741 the -saveGameFile resource is set, a move record for the match will be
1742 saved in the specified file.  Default: ``False''.
1744 @item -lgf or -loadGameFile file
1745 Name of file to read a game record from.  Game files are found in the
1746 directory named by the SHOGIDIR environment variable.  If this variable
1747 is not set, the current directory is used unless the file name starts
1748 with a /.
1750 @item -lpf or -loadPositionFile file
1751 Name of file to read a game position from.  Position files are found in
1752 the directory named by the SHOGIDIR environment variable.  If this
1753 variable is not set, the current directory is used unless the file name
1754 starts with a /.
1756 @item -sgf or -saveGameFile file
1757 Name of file to save a game record to.  Game files are saved in the
1758 directory named by the SHOGIDIR environment variable.  If this variable
1759 is not set, the current directory is used unless the file name starts
1760 with a /.
1762 @item -spf or -savePositionFile file
1763 Name of file to save a game position to.  Position files are saved in
1764 the directory named by the SHOGIDIR environment variable.  If this
1765 variable is not set, the current directory is used unless the file name
1766 starts with a /.
1768 @item -coords or -showCoords (True | False)
1769 If this option is True, xshogi displays algebraic coordinates along the
1770 board's left and bottom edges.  The default is False.  The coordFont
1771 resource specifies what font to use.
1773 @item -mono or -monoMode (True | False)
1774 Determines whether xshogi displays its pieces and squares with two
1775 colors or four.  You shouldn't have to specify monochrome.  xshogi will
1776 determine if this is necessary.
1778 @item -pc or -pieceColor color
1779 Color specification for pieces suitable for XParseColor().
1780 Default: #FFFFD7.  
1782 @item -sc or -squareColor color
1783 Same for squares.  Default: #EBDFB0.
1785 @item -wps or -westernPieceSet (True | False)
1786 Choose the Western style piece set.
1788 @item -npb or -normalPawnBitmap file
1789 @item -nnb or -normalKnightBitmap file
1790 @item -nbb or -normalBishopBitmap file
1791 @item -nrb or -normalRookBitmap file
1792 @item -nkb or -normalKingBitmap file
1793 Names of the bitmap files for the bitmap piece icons.
1795 @item -rpb or -reversePawnBitmap file
1796 @item -rnb or -reverseKnightBitmap file
1797 @item -rbb or -reverseBishopBitmap file
1798 @item -rrb or -reverseRookBitmap file
1799 @item -rkb or -reverseKingBitmap file
1800 Names of the bitmap files for the outline piece icons.
1802 @item -debug or -debugMode (True | False)
1803 Turns on debugging printout.
1805 @end table
1807 @page
1809 OTHER X RESOURCES
1811 @table @samp
1813 @item initString
1814 The actual string that is sent to initialize the shogi program can be
1815 set from .Xdefaults.  It can't be set from the command line because of
1816 syntax problems.  The default value is ``new\nbeep\nrandom\neasy\n''.
1817 The ``new'' and ``beep'' commands are required. You can remove the
1818 ``random'' command if you like; including it causes gnushogi to
1819 randomize its move selection slightly so that it doesn't play the same
1820 moves in every game.  Even without ``random'', gnushogi randomizes its
1821 choice of moves from its opening book.  You can also remove ``easy'' if
1822 you like; including it toggles easy mode off, causing gnushogi to think
1823 on your time.  That is, if ``easy'' is included in the initString, GNU
1824 Shogi thinks on your time; if not, it does not.  (Yes, this does seem
1825 backwards, doesn't it.)  You can also try adding other commands to the
1826 initString; see the gnushogi documentation (@pxref{gnushogi}) for
1827 details.
1829 @item blackString and whiteString
1830 These resources control what is sent when the Machine Black and Machine
1831 White buttons are selected.  This is mostly for compatibility with
1832 obsolete versions of gnushogi.
1834 Alternate bitmaps for piece icons can be specified either by choosing
1835 one of the built-in sets or with the file name resources described
1836 above.  There are three built-in sets of piece bitmaps available, large
1837 (the default), medium, or small.  It is easiest to select the set you
1838 prefer in the .Xdefaults file:
1840      XShogi*boardSize:   Medium
1842 The font used for button labels and comments can be changed in the
1843 .Xdefaults file.  You may want to choose a smaller font if you are using
1844 the small pieces:
1846      XShogi*font:    helvetica_oblique12
1848 The font used for coordinates (when the showCoords option is True) can
1849 be set similarly:
1851      XShogi*coordFont:    helvetica_10
1853 If you are using a grayscale monitor, try setting the colors to:
1855      XShogi*pieceColor:     gray100 @*
1856      XShogi*squareColor:    gray60  @*
1858 @end table
1860 COMMAND BUTTONS AND KEYS
1862 @table @samp
1864 @item Quit    
1865 Quits xshogi.  Q or q is a keyboard equivalent.
1867 @item Reset   
1868 Resets xshogi to the beginning of a shogi game.  It also deselects any
1869 game or position files.
1871 @item Flip View
1872 inverts the view of the shogi board.
1874 @item Hint    
1875 displays a move hint from gnushogi.
1877 @item Load Game
1878 plays a game from a record file.  If no file is specified a popup dialog
1879 asks for a filename.  Game files are found in the directory named by the
1880 SHOGIDIR environment variable.  If this variable is not declared then
1881 the current directory is used unless the file name starts with a /.  G
1882 or g is a keyboard equivalent.  The game file parser will accept almost
1883 any file that contains moves in algebraic notation.  If the first line
1884 begins with `#', it is assumed to be a title and is displayed.  Text
1885 enclosed in parentheses or square brackets is assumed to be commentary
1886 and is displayed in a pop-up window.  Any other text in the file is
1887 ignored.
1889 @item Load Position
1890 sets up a position from a position file.  If no file is specified a
1891 popup dialog asks for a filename.  Position files are found in the
1892 directory named by the SHOGIDIR environment variable.  If this variable
1893 is not declared then the current directory is used unless the file name
1894 starts with a /.  Position files must be in the format that the Save
1895 Position command writes.
1897 @item Save Game
1898 saves a game to a record file.  If no file is specified a popup dialog
1899 asks for a filename.  If the filename exists, the user is asked whether
1900 the current game record is be appended to this file or if the file
1901 should be replaced.  Game files are saved in the directory named by the
1902 SHOGIDIR environment variable.  If this variable is not declared then
1903 the current directory is used unless the file name starts with a /.
1904 Game files are human-readable, and can also be read back by the Load
1905 Game command. Furthermore, they are accepted as gnushogi text bookfiles.
1907 @item Save Position
1908 saves a position to a position file.  If no file is specified a popup
1909 dialog asks for a filename.  Position files are saved in the directory
1910 named by the SHOGIDIR environment variable.  If this variable is not
1911 declared then the current directory is used unless the file name starts
1912 with a /.  Position files are human-readable, and can also be read back
1913 by the Load Position command.
1915 @item Machine White
1916 forces gnushogi to play white.
1918 @item Machine Black
1919 forces gnushogi to play black.
1921 @item Force Moves
1922 forces a series of moves.  That is, gnushogi stops playing and xshogi
1923 allows you to make moves for both white and black.
1925 @item Two Machines
1926 plays a game between two computer programs.
1928 @item Forward 
1929 moves forward through a series of remembered moves.  F or f is a
1930 keyboard equivalent.
1932 @item Backward
1933 moves backward through a series of remembered moves.  As a side effect,
1934 puts xshogi into Force Moves mode.  B or b is a keyboard equivalent.
1936 @item Pause   
1937 pauses the clocks or (in Load Game mode) pauses the game being loaded.
1938 Press Pause again to continue.  P or p is a keyboard equivalent.
1940 @item Edit Position
1941 lets you set up an arbitrary board position.  Use mouse button 1 to drag
1942 pieces to new squares, or to delete a piece by dragging it off the board
1943 or dragging an empty square on top of it.  To drop a new piece on a
1944 square, press mouse button 2 or 3 over the square.  This brings up a
1945 menu of black pieces (button 2) or white pieces (button 3).  Additional
1946 menu choices let you empty the square or clear the board.  You can set
1947 the side to play next by clicking on the Black or White indicator at the
1948 top of the screen.
1950 @item Challenge
1951 allows you to make a two display game between two human players.  Enter
1952 the display you want to connect to.  If you are allowed to connect, a
1953 new board is displayed at the remote display.  Challenge mode can only
1954 be stopped by pressing ``quit''.
1956 @item Select Level
1957 allows you to reset the clocks for both players.  Enter the number of
1958 moves and the number of minutes in which the moves should be done.
1960 @item Move NOW
1961 force computer to stop thinking and to make the current best move.
1963 @item Iconify I, i, C or c 
1964 iconifies xshogi.
1966 @end table
1968 LIMITATIONS
1970 If you press the  Pause  button  during  GNU  Shogi's  turn,
1971 xshogi will stop the clocks, but gnushogi will still make a
1972 move.
1974 After a mate or draw when playing against gnushogi, if  you
1975 back  up  with  the  Backward  button,  the clocks are reset
1976 (because gnushogi has exited and must be restarted).
1978 The game parser recognizes only algebraic notation.
1980 AUTHORS
1982 Original authors of XBoard:  Chris Sears and Dan Sears.
1984 Enhancements for XBoard (Version 2.0):  Tim Mann.
1986 Conversion to XShogi (Version 1.1):  Matthias Mutz.
1988 Current maintainer: Mike Vanier.
1990 COPYRIGHT INFORMATION
1992 XShogi borrows its piece bitmaps from CRANES Shogi.
1994 Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts.
1995 Enhancements Copyright 1992 Free Software Foundation, Inc.  Enhancements
1996 Copyright 1993 Matthias Mutz.  Further enhancements copyright 1999 by
1997 Michael Vanier and the Free Software Foundation, Inc.
1999 The following terms apply to Digital Equipment Corporation's copyright
2000 interest in XBoard:
2002 All Rights Reserved
2004 Permission to use, copy, modify, and distribute this software and its
2005 documentation for any purpose and without fee is hereby granted,
2006 provided that the above copyright notice appear in all copies and that
2007 both that copyright notice and this permission notice appear in
2008 supporting documentation, and that the name of Digital not be used in
2009 advertising or publicity pertaining to distribution of the software
2010 without specific, written prior permission.
2012 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
2013 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
2014 DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
2015 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
2016 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
2017 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
2018 SOFTWARE.
2020 The following terms apply to the enhanced version of XShogi distributed
2021 by the Free Software Foundation:
2023 This file is part of XSHOGI.
2025 XSHOGI is distributed in the hope that it will be useful, but WITHOUT
2026 ANY WARRANTY.  No author or distributor accepts responsibility to anyone
2027 for the consequences of using it or for whether it serves any particular
2028 purpose or works at all, unless he says so in writing.  Refer to the
2029 XSHOGI General Public License for full details.
2031 Everyone is granted permission to copy, modify and redistribute XSHOGI,
2032 but only under the conditions described in the XSHOGI General Public
2033 License. A copy of this license is supposed to have been given to you
2034 along with XSHOGI so you can know your rights and responsibilities.  It
2035 should be in a file named COPYING.  Among other things, the copyright
2036 notice and this notice must be preserved on all copies.
2039 @c ---------------------
2040 @c References and links.
2041 @c ---------------------
2043 @node    References and links, Acknowledgements, xshogi, Top
2044 @chapter References and links
2045 @cindex  References
2046 @cindex  Books
2047 @cindex  Mailing lists
2048 @cindex  Web sites
2051 There are very few English-language books for people learning shogi.
2052 The two I recommend are:
2054 @enumerate
2056 @item
2057 @cite{Shogi for Beginners, 2nd. Edition}, by John Fairbairn.  This is a
2058 superb beginner's book in every way, covering all phases of the game.
2059 It was out of print for a long time, but has now been reprinted and is
2060 available either from Kiseido (@uref{http://www.labnet.or.jp/~kiseido})
2061 or from George Hodges (see below).
2063 @item
2064 @cite{The Art of Shogi}, by Tony Hoskings.  This is one step up from the
2065 Fairbairn book.  It covers a lot of ground, and is especially noteworthy
2066 for its detailed treatment of opening lines.  You can order this book
2067 from Amazon.com's UK branch (@uref{http://www.amazon.co.uk}).
2069 @end enumerate
2071 Another book you may find is @cite{Shogi: Japan's Game of Strategy} by
2072 Trevor Leggett.  This book is very elementary and is somewhat outdated,
2073 having been published first in 1966.  However, it does feature a paper
2074 shogi board and punch-out pieces, so if you want a really cheap shogi
2075 set you might pick this book up.  It is still in print.
2077 Two books that are no longer in print but are definitely worth getting
2078 if you find them are @cite{Guide to Shogi Openings} and @cite{Better
2079 Moves for Better Shogi}, both by Aono Teriuchi.  They are published in a
2080 bilingual edition (English/Japanese) and are the only books on shogi in
2081 English written by a Japanese professional shogi player.  John Fairbairn
2082 did the translation from Japanese to English.
2084 Shogi sets are available from:
2086 @quotation
2087 George F. Hodges @*
2088 P.O. Box 77 @*
2089 Bromley, Kent @*
2090 United Kingdom BR1 2WT
2091 @end quotation
2093 George also sells equipment for all the historical shogi variants
2094 (@pxref{Shogi variants}) (except for Kyoku tai shogi) and also sells
2095 back issues of the magazine ``Shogi'' which he published for 70 issues
2096 in the late 70's to late 80's.  This magazine is STRONGLY recommended;
2097 it contains more information about shogi in English than you will ever
2098 find anywhere else.
2100 Here are some useful URLs:
2102 @table @asis
2104 @item Pieter Stouten's shogi page: @uref{http://www.shogi.net}
2105 This is the main shogi-related site on the internet, with links to
2106 almost all the other sites.
2108 @item Roger Hare's shogi page: @uref{http://www.ed.ac.uk/~rjhare/shogi}
2109 This has lots of information, including full rules to most of the shogi
2110 variants.
2112 @item Patrick Davin's Shogi Nexus: @uref{http://www.vega.or.jp/~patrick/shogi/}
2113 There's lots of cool stuff on this site; my favorite is the extensive
2114 collection of Tsume-shogi (mating) problems, both for beginners and
2115 more advanced players.
2117 @item Steve Evans' shogi page: @uref{http://www.netspace.net.au/~trout/index.html} 
2118 Steve has written a program that plays almost all of the shogi variants,
2119 unfortunately it only runs on Windows :-(
2121 @item Hans Bodlaender's chess variant pages: @uref{http://www.cs.ruu.nl/~hansb/d.chessvar}
2122 This page has an almost unimaginable variety of rules for different
2123 chess variants, including many shogi variants (historical and non-historical).
2125 @item Wikipedia's shogi variant pages: @uref{http://en.wikipedia.org/wiki/Category:Shogi_variants}
2126 Those pages contain a large number of variant rules, both ancient and
2127 modern.
2129 @end table
2131 @c -----------------
2132 @c Acknowledgements.
2133 @c -----------------
2135 @node    Acknowledgements, Bugs, References and links, Top
2136 @chapter Acknowledgements
2137 @cindex  Acknowledgements
2139 I would like to thank the following people:
2141 @itemize @bullet
2143 @item
2144 Matthias Mutz, who originally developed GNU shogi as a spin-off of GNU
2145 chess and who very kindly let me take over the maintenance of this very
2146 interesting project.
2148 @item
2149 Richard Stallman and the Free Software Foundation, for creating an
2150 organization where anyone can contribute software for the common good of
2151 all, for making GNU/Linux possible, and especially for writing emacs and
2152 gcc, without which my working life would be intolerable.
2154 @item
2155 Georges Hodges, for starting the Shogi Association in England, without
2156 which I would probably never have heard of shogi, for supplying shogi
2157 equipment, for publishing the excellent magazine ``Shogi'' (now sadly
2158 defunct), for personally answering all my silly questions by mail, and
2159 for being the ambassador of shogi to the West.
2161 @item
2162 Pieter Stouten, for having the most comprehensive shogi site on the
2163 World Wide Web (@uref{http://www.shogi.net}), and for
2164 maintaining the shogi-l mailing list.  Go to Pieter's web site for more
2165 information on subscribing to the list.  Also thanks to everyone who
2166 contributes and has contributed to that list.
2168 @item
2169 Matt Casters, for testing GNU shogi.  Matt and I will be working
2170 together on improving the solution engine in future versions of this
2171 program.
2173 @end itemize
2175 @c -----
2176 @c Bugs.
2177 @c -----
2179 @node    Bugs, Index, Acknowledgements, Top
2180 @chapter Bugs
2182 The motto of GNU shogi is ``100% bug-free or you don't pay!'' :-) In
2183 the extremely unlikely case (*ahem*) that you do find a bug, please
2184 report it to the bug tracker at
2185 @uref{https://savannah.gnu.org/projects/gnushogi/}.  Also, feel free
2186 to post comments, complaints, out-and-out raves, suggestions and such
2187 to one of the mailing lists at
2188 @uref{https://savannah.gnu.org/mail/?group=gnushogi}.
2191 @c ============
2192 @c End of body.
2193 @c ============
2197 @c ====
2198 @c End.
2199 @c ====
2201 @node    Index,  , Bugs, Top
2202 @chapter Index
2204 @printindex cp
2206 @contents
2208 @bye