*
* GNU Shogi is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 1, or (at your option) any
- * later version.
+ * Free Software Foundation; either version 3 of the License,
+ * or (at your option) any later version.
*
* GNU Shogi is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* for more details.
*
* You should have received a copy of the GNU General Public License along
- * with GNU Shogi; see the file COPYING. If not, write to the Free
- * Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ * with GNU Shogi; see the file COPYING. If not, see
+ * <http://www.gnu.org/licenses/>.
* ----------------------------------------------------------------------
*
*/
/*
- * nextpos[piece][from-square], nextdir[piece][from-square] gives vector
- * of positions reachable from from-square in ppos with piece such that the
+ * nextpos[ptype][from-square], nextdir[ptype][from-square] gives vector
+ * of positions reachable from from-square in ppos with ptype such that the
* sequence
*
- * ppos = nextpos[piece][from-square];
- * pdir = nextdir[piece][from-square];
+ * ppos = nextpos[ptype][from-square];
+ * pdir = nextdir[ptype][from-square];
* u = ppos[sq];
*
* do
small_short diagonal(short d)
{
- return (abs(d) == 10 || abs(d) == 12);
+ return (abs(d) == (NO_COLS+1) || abs(d) == (NO_COLS+3));
}
short dest[8][9];
short sorted[9];
short steps[8];
- short fpo = 23, tpo = 120;
+ short fpo = inunmap[0], tpo = 1 + inunmap[NO_SQUARES-1];
+ /* pre-fill nextpos and nextdir with source position, probably so
+ * (color[u] == neutral) stops to match once all moves have been seen
+ */
for (ptyp = 0; ptyp < NO_PTYPE_PIECES; ptyp++)
{
for (po = 0; po < NO_SQUARES; po++)
if (XSHOGI)
{
- signal(SIGINT, TerminateSearch);
+ signal(SIGUSR1, TerminateSearch);
TCmoves = 40;
TCminutes = 5;