DATA 39,39,39,39,39,39,39,39,39,39 DATA 39,39,39,39,39,39,39,39,39,39 DATA 39,14,10,12,15,16,11,09,13,39 DATA 39,05,04,03,02,01,08,07,06,39 DATA 39,00,00,00,00,00,00,00,00,39 DATA 39,00,00,00,00,00,00,00,00,39 DATA 39,00,00,00,00,00,00,00,00,39 DATA 39,00,00,00,00,00,00,00,00,39 DATA 39,25,24,23,22,21,28,27,26,39 DATA 39,34,30,32,35,36,31,29,33,39 DATA 39,39,39,39,39,39,39,39,39,39 DATA 39,39,39,39,39,39,39,39,39,39
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,X2R
,L2R
,L2R
,L2R
,L2R
,L2R
,L2R
,R2X
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,XER
,LER
,LER
,LER
,LER
,LER
,LER
,LEX
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,XPR
,LPR
,LPR
,LPR
,LPR
,LPR
,LPR
,LPX
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,XPR
,LPR
,LPR
,LPR
,LPR
,LPR
,LPR
,LPX
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,XER
,LER
,LER
,LER
,LER
,LER
,LER
,LEX
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,X1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1R
,L1X
,NON
DATA NON
,X2R
,L2R
,L2R
,L2R
,L2R
,L2R
,L2R
,R2X
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
,NON
DATA EMPTY
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,0,0 DATA EMPTY
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EK
,EK
,0,OB
DATA EMPTY
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EP
,EK
,EK
,0,0 DATA EMPTY
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,FP
,0,OB
DATA 1,9,10,11,-1,-9,-10,-11
DATA 8,12,19,21,-8,-12,-19,-21
piece_index = next_piece(start_index(wtm))
from_square = piece(piece_index).squ
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 20
target = chess_board(to_square)
Record_Move_Mark_ep from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 20
target = chess_board(to_square)
Record_Move_Mark_ep from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 20
target = chess_board(to_square)
Record_Move_Mark_ep from_square, to_square
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
IF to_square
= ep_square
(ply
) THEN Record_ep from_square
, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
IF to_square
= ep_square
(ply
) THEN Record_ep from_square
, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
IF to_square
= ep_square
(ply
) THEN Record_ep from_square
, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
IF to_square
= ep_square
(ply
) THEN Record_ep from_square
, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move from_square, to_square
to_square = from_square + 10
target = chess_board(to_square)
Record_Move_Promotion from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_capture_Promotion from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_capture_Promotion from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move_Promotion from_square, to_square
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_capture_Promotion from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_capture_Promotion from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
Record_Move_Promotion from_square, to_square
to_square = from_square + 8
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 19
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 21
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 12
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 8
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 19
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 21
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 12
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_targets(target)
Record_Move from_square, to_square
to_square = to_square + 9
Record_Capture from_square, to_square, target
to_square = from_square + 11
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 11
Record_Capture from_square, to_square, target
to_square = from_square - 9
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 9
Record_Capture from_square, to_square, target
to_square = from_square - 11
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 11
Record_Capture from_square, to_square, target
to_square = from_square + 1
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 1
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 10
Record_Capture from_square, to_square, target
to_square = from_square - 1
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 1
Record_Capture from_square, to_square, target
to_square = from_square - 10
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 10
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 9
Record_Capture from_square, to_square, target
to_square = from_square + 11
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 11
Record_Capture from_square, to_square, target
to_square = from_square - 9
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 9
Record_Capture from_square, to_square, target
to_square = from_square - 11
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 11
Record_Capture from_square, to_square, target
to_square = from_square + 1
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 1
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square + 10
Record_Capture from_square, to_square, target
to_square = from_square - 1
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 1
Record_Capture from_square, to_square, target
to_square = from_square - 10
target = white_targets(chess_board(to_square))
Record_Move from_square, to_square
to_square = to_square - 10
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 1
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 9
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 10
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 11
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 1
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 9
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 10
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 11
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square + 1
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 9
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 10
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 11
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
to_square = from_square - 1
target = chess_board(to_square)
action = white_target(target)
Record_Move from_square, to_square
Record_Capture from_square, to_square, target
Generate_Moves
i = move_stack_index(ply)
WHILE move_stack
(i
).special
<> TERMINATE
Make_Move i
move_stack(i).score = Qsearch(alpha, beta)
Take_Back
i = i - 1