/* header file for move generator hes 890318
Modified: 890510 minor bug fixed in Newataks
890606 NEWMOVE levels 1-6 */
extern short distdata
[64][64];
extern short taxidata
[64][64];
#define taxicab(a,b) taxidata[a][b]
#define distance(a,b) distdata[a][b]
extern void Initialize_dist();
extern struct sqdata posdata
[3][8][64][64];
extern void Initialize_moves();
register struct sqdata *p;\
for (u = 64; u; a[--u] = 0); \
for (i = 0; i <= PieceCnt[side]; i++)\
p = posdata[side][piece][sq];\
u = p[sq].nextdir; /* follow captures thread */\
if (color[u] == neutral)\
extern short PieceList
[2][16];
extern short Kfield
[2][64],PINVAL
,control
[7],hung
[2],XRAY
;
extern short PieceCnt
[2],value
[7],svalue
[64];