X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fpsqtab.h;h=113d264bc15b377edadb79cab89a7ac636d0e576;hp=cfbf4a4d2fc8b3492f9a52dca855cd29bd813dbb;hb=c9dcda6ac488c0058ebd567e1f52e30b8cd0db20;hpb=c555e1aa962a6a0230be42b87a3486b3c14ada4d diff --git a/src/psqtab.h b/src/psqtab.h index cfbf4a4d..113d264b 100644 --- a/src/psqtab.h +++ b/src/psqtab.h @@ -1,7 +1,7 @@ /* Stockfish, a UCI chess playing engine derived from Glaurung 2.1 Copyright (C) 2004-2008 Tord Romstad (Glaurung author) - Copyright (C) 2008-2010 Marco Costalba, Joona Kiiski, Tord Romstad + Copyright (C) 2008-2014 Marco Costalba, Joona Kiiski, Tord Romstad Stockfish is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,26 +17,28 @@ along with this program. If not, see . */ -#if !defined(PSQTAB_H_INCLUDED) +#ifndef PSQTAB_H_INCLUDED #define PSQTAB_H_INCLUDED #include "types.h" #define S(mg, eg) make_score(mg, eg) -// PSQT[PieceType][Square] contains Piece-Square scores. For each piece type on a -// given square a (midgame, endgame) score pair is assigned. PSQT is defined for -// white side, for black side the tables are symmetric. -static const Score PSQT[][64] = { + +/// PSQT[PieceType][Square] contains Piece-Square scores. For each piece type on +/// a given square a (middlegame, endgame) score pair is assigned. PSQT is defined +/// for the white side and the tables are symmetric for the black side. + +static const Score PSQT[][SQUARE_NB] = { { }, { // Pawn S( 0, 0), S( 0, 0), S( 0, 0), S( 0, 0), S(0, 0), S( 0, 0), S( 0, 0), S( 0, 0), - S(-28,-8), S(-6,-8), S( 4,-8), S(14,-8), S(14,-8), S( 4,-8), S(-6,-8), S(-28,-8), - S(-28,-8), S(-6,-8), S( 9,-8), S(36,-8), S(36,-8), S( 9,-8), S(-6,-8), S(-28,-8), - S(-28,-8), S(-6,-8), S(17,-8), S(58,-8), S(58,-8), S(17,-8), S(-6,-8), S(-28,-8), - S(-28,-8), S(-6,-8), S(17,-8), S(36,-8), S(36,-8), S(17,-8), S(-6,-8), S(-28,-8), - S(-28,-8), S(-6,-8), S( 9,-8), S(14,-8), S(14,-8), S( 9,-8), S(-6,-8), S(-28,-8), - S(-28,-8), S(-6,-8), S( 4,-8), S(14,-8), S(14,-8), S( 4,-8), S(-6,-8), S(-28,-8), + S(-20,-8), S(-6,-8), S( 4,-8), S(14,-8), S(14,-8), S( 4,-8), S(-6,-8), S(-20,-8), + S(-20,-8), S(-6,-8), S( 9,-8), S(34,-8), S(34,-8), S( 9,-8), S(-6,-8), S(-20,-8), + S(-20,-8), S(-6,-8), S(17,-8), S(54,-8), S(54,-8), S(17,-8), S(-6,-8), S(-20,-8), + S(-20,-8), S(-6,-8), S(17,-8), S(34,-8), S(34,-8), S(17,-8), S(-6,-8), S(-20,-8), + S(-20,-8), S(-6,-8), S( 9,-8), S(14,-8), S(14,-8), S( 9,-8), S(-6,-8), S(-20,-8), + S(-20,-8), S(-6,-8), S( 4,-8), S(14,-8), S(14,-8), S( 4,-8), S(-6,-8), S(-20,-8), S( 0, 0), S( 0, 0), S( 0, 0), S( 0, 0), S(0, 0), S( 0, 0), S( 0, 0), S( 0, 0) }, { // Knight @@ -80,17 +82,17 @@ static const Score PSQT[][64] = { S(8,-80), S(8,-54), S(8,-42), S(8,-30), S(8,-30), S(8,-42), S(8,-54), S(8,-80) }, { // King - S(287, 18), S(311, 77), S(262,105), S(214,135), S(214,135), S(262,105), S(311, 77), S(287, 18), - S(262, 77), S(287,135), S(238,165), S(190,193), S(190,193), S(238,165), S(287,135), S(262, 77), - S(214,105), S(238,165), S(190,193), S(142,222), S(142,222), S(190,193), S(238,165), S(214,105), - S(190,135), S(214,193), S(167,222), S(119,251), S(119,251), S(167,222), S(214,193), S(190,135), - S(167,135), S(190,193), S(142,222), S( 94,251), S( 94,251), S(142,222), S(190,193), S(167,135), - S(142,105), S(167,165), S(119,193), S( 69,222), S( 69,222), S(119,193), S(167,165), S(142,105), - S(119, 77), S(142,135), S( 94,165), S( 46,193), S( 46,193), S( 94,165), S(142,135), S(119, 77), - S(94, 18), S(119, 77), S( 69,105), S( 21,135), S( 21,135), S( 69,105), S(119, 77), S( 94, 18) + S(302, 18), S(326, 77), S(277,105), S(229,135), S(229,135), S(277,105), S(326, 77), S(302, 18), + S(277, 77), S(302,135), S(253,165), S(205,193), S(205,193), S(253,165), S(302,135), S(277, 77), + S(229,105), S(253,165), S(205,193), S(157,222), S(157,222), S(205,193), S(253,165), S(229,105), + S(205,135), S(229,193), S(182,222), S(134,251), S(134,251), S(182,222), S(229,193), S(205,135), + S(182,135), S(205,193), S(157,222), S(109,251), S(109,251), S(157,222), S(205,193), S(182,135), + S(149,105), S(177,165), S(131,193), S( 81,222), S( 81,222), S(131,193), S(177,165), S(149,105), + S(121, 77), S(144,135), S( 98,165), S( 54,193), S( 54,193), S( 98,165), S(144,135), S(121, 77), + S(96, 18), S(119, 77), S( 71,105), S( 26,135), S( 26,135), S( 71,105), S(119, 77), S( 96, 18) } }; #undef S -#endif // !defined(PSQTAB_H_INCLUDED) +#endif // #ifndef PSQTAB_H_INCLUDED