Tuned null move and history prun... ops, late move reduction :)
[rattatechess.git] / static.cpp
blob7796a15b78261675771d3a920554aa7d0caca3fe
1 /***************************************************************************
2 static.cpp - description
3 -------------------
4 begin : Wed Mar 13 2002
5 copyright : (C) 2002-2005 by Maurizio Monge
6 email : monge@linuz.sns.it
7 ***************************************************************************/
9 /***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
18 #include "board.h"
19 #include "engine.h"
20 #include <stdio.h>
22 /*long long* Engine::hashvalues = NULL;
23 HASH* Engine::hashtable = NULL;
24 int Engine::hashmask = 0;*/
26 KnightMove* Board::knightmoves = NULL;
27 uint8_t Board::kingmoves[] = { LEFT, RIGHT, DOWN, UP,
28 (uint8_t)(LEFT+DOWN), (uint8_t)(RIGHT+UP), (uint8_t)(RIGHT+DOWN), (uint8_t)(LEFT+UP) };
29 uint8_t Board::bishmoves[] = { (uint8_t)(RIGHT+UP), (uint8_t)(RIGHT+DOWN), (uint8_t)(LEFT+DOWN), (uint8_t)(LEFT+UP) };
30 uint8_t Board::rookmoves[] = { LEFT, RIGHT, DOWN, UP };
31 uint8_t Board::up_dir[] = { DOWN, UP };
32 HashKey Board::hash_key_toggle( 0x986bcb9c798532a7ULL, 0xa5949da9 );
34 char Board::piecename[] = { ' ', 'R', 'B', 'Q', 'N', 'P', 'K'};
36 uint8_t Board::b_start[] =
38 WR,WN,WB,WQ,WK,WB,WN,WR,SENDL,
39 WP,WP,WP,WP,WP,WP,WP,WP,SENDL,
40 __,__,__,__,__,__,__,__,SENDL,
41 __,__,__,__,__,__,__,__,SENDL,
42 __,__,__,__,__,__,__,__,SENDL,
43 __,__,__,__,__,__,__,__,SENDL,
44 BP,BP,BP,BP,BP,BP,BP,BP,SENDL,
45 BR,BN,BB,BQ,BK,BB,BN,BR,SENDL
48 uint8_t Board::b_castle_adj[] =
50 0xd0,0xf0,0xf0,0xf0,0xc0,0xf0,0xf0,0xe0,ENDL,
51 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
52 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
53 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
54 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
55 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
56 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,ENDL,
57 0x70,0xf0,0xf0,0xf0,0x30,0xf0,0xf0,0xb0,ENDL
60 //----------------------------------------------------------------------------------
61 //----------------------------------------------------------------------------------