/* This file is automatically generated with "make proto". DO NOT EDIT */

int check_repitition(Position *b, int repeats);
int do_move_part1(Position *b, Position *oldb, Move *move);
int do_move_part2(Position *b);
int do_move(Position *b, Position *oldb, Move *move);
void setup_board(Position *b);
int create_pboard(Position *b);
void brain_fill_hash(Position *b);
int brain_open(char *fname);
int brain_lookup(Position *b, Move *move, Eval *v, int pondering);
int brain_insert(Position *b, Move *move);
void brain_close(void);
void brain_mull(void);
void analyse_game(void);
int brain_clean(void);
void brain_update();
void redraw(void);
void draw_all(void);
void start_display(int argc,char *argv[]);
void redraw(void);
void draw_all(void);
void init_eval_tables(void);
void update_pawns(Position *b) ;
void estimate_game_stage(Position *b, int root_node);
int egtb(Position *b) ;
int no_material(Position *b) ;
etype draw_value(Position *b);
etype eval_etype(Position *b, etype testv, int depth);
Eval eval(Position *b, etype testv, int depth);
Eval eval1(Position *b, etype testv, int depth);
void eval_debug(Position *b);
void eval_speed(Position *b, int loops);
void old_update_moves(Position *b, Position *oldb, Move *move);
void update_moves(Position *b, Position *oldb, Move *move);
void update_moves1(Position *b, Position *oldb, Move *move);
void regen_moves(Position *b);
int generate_moves(Position *b, Move *moves);
int generate_check_avoidance(Position *b, Move *moves);
int legal_move(Position *b, Move *move);
void gen_move_list(Position *b, int ply, Move *m1, Eval testv);
int possible_move(Position *b, int ply, Move *m);
unsigned hts() ;
void hash_reset_stats(void);
void hash_reset(void);
void init_hash_table(void);
int check_hash(Position *b, 
	       int depth, Eval testv, Eval *v, Move *move);
struct hash_entry *fetch_hash(Position *b);
void insert_hash(Position *b, int depth, Eval testv, Eval evaluation, Move *move);
void hash_change_tag(int move_num);
char *hashstats(void);
int check_hash2(Position *b, int depth, Eval testv, Eval *v);
int ettc_check_hash(Position *b, Move *moves, int num_moves,
		    int depth, Eval testv, Eval *v, Move *m1);
int hash_ordering(Position *b, Move *move, Eval testv);
void ics_thanks(void);
int parse_ics_move(char *line,int player, Move *move, Piece *promotion);
void sig_wake_up(int dum);
void wake_up(void);
void reset_board(void);
int player_moved(Square from, Square to);
int parse_stdin(char *line);
void update_display(void);
void match_hook(void);
void idle_func(void);
void save_game(char *fname);
void restore_game(char *fname);
void undo_menu(int n);
int main(int argc,char *argv[]);
void log_close(void);
int lprintf(int level, char *format_str, ...);
int status_printf(int rew, char *format_str, ...);
void lindent(int level, int ply);
int cprintf(int level, char *format_str, ...);
int ddprintf(int level, char *format_str, ...);
void move_slave(void);
int make_move(Position *b, Move *move);
void ponder_move(Position *b, Move *move);
void init_movements(void);
void order_reset(void);
void order_clear(int move_num);
void cutoff_hint(Position *b, int m, int depth, int ply);
void order_moves(Position *b, Move *moves, int n, int ply, Move *m1,Eval testv);
void prog_printf(char *format_str, ...);
void prog_start(char *prog);
int prog_running(void);
void prog_tell_move(Position *p, Move *move);
int prog_check_move(Move *move, int player);
void prog_exit(void);
etype eval_tactics(Position *b);
void update_tactics(Position *b);
etype eval_move_tactics(Position *b, Move *move);
void dump_coeffs(char *fname, int round);
int td_dump(char *fname);
int td_store_pos(Position *b);
int td_gradient(float *big_grad);
void td_save_bad(int fd, Position *b1);
int td_update();
void td_dummy(void) ;
void test_fin(char *fname);
float timer_elapsed(void);
float cpu_percent(void);
time_t timer_start_time(void);
void timer_start(int player);
int timer_extend(void);
void timer_estimate(int secs, int opp_secs, int increment);
int timer_expired(void);
void timer_reset(void);
void timer_off(void);
int timer_terminate(int depth, int player, int force);
float cputime(void);
float walltime(void);
float gettime(void);
void __dummy_trackball(void) ;
void beep(int n);
void sort_moves(Move *m, int n);
char *posstr(Square s);
char *piecestr(Piece p);
char piecechar(Piece p);
char *short_movestr(Position *p, Move *move);
char *movestr(Position *p, Move *move);
void print_move(Position *p, Move *move);
char *colorstr(Piece p);
int is_sliding(Piece p);
int charpiece(char c);
int parse_square(char *s, int *sq);
int parse_algebraic(char *s, Position *b, Move *move);
int parse_move(char *s, Position *b, Move *move);
void *Realloc(void *p, int size);
void ring_bell(void);
void print_board(Piece *board);
void print_bitboard(uint64 bitboard);
int process_exists(int pid);
int next_token(char **ptr,char *buff,char *sep);
void null_func(Position *b);
char *position_to_ppn(Position *b);
char *ppn_to_position(char *ppn, Position *b);
uint16 swapu16(uint16 x);
int16 swap16(int16 x);
uint32 swapu32(uint32 x);
int swap32(int x);
int Write(int fd, char *buf, size_t count);
int Read(int fd, char *buf, size_t count);
int result();
void p_coeff_vboard(etype *p);
char *evalstr(etype v);
void dump_ppn(Position *b);
void dump_history();
