/* --------------------------------------------------------------------------
Print Board is a debugging routine and should not be used for any other purpose
-------------------------------------------------------------------------- */
int p(BOARD b, int x)
{
int c=' '; /* empty square */
if (b[x] & RED) c = 'r';
if (b[x] & BLACK) c = 'b';
if (b[x] & KING) c = toupper(c);
return c;
}
void PrintBoard(BOARD b, int d)
{
const unsigned char rs=254; /* red square */
static char buf[256];
pdebug(stddbg," ");
wsprintf(buf," %c%c%c%c%c%c%c%c",( rs), (p(b, 1)), ( rs), (p(b, 2)), ( rs), (p(b, 3)), ( rs), (p(b, 4)) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",(p(b, 5)), ( rs), (p(b, 6)), ( rs), (p(b, 7)), ( rs), (p(b, 8)), ( rs) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",( rs), (p(b, 9)), ( rs), (p(b,10)), ( rs), (p(b,11)), ( rs), (p(b,12)) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",(p(b,13)), ( rs), (p(b,14)), ( rs), (p(b,15)), ( rs), (p(b,16)), ( rs) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",( rs), (p(b,17)), ( rs), (p(b,18)), ( rs), (p(b,19)), ( rs), (p(b,20)) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",(p(b,21)), ( rs), (p(b,22)), ( rs), (p(b,23)), ( rs), (p(b,24)), ( rs) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",( rs), (p(b,25)), ( rs), (p(b,26)), ( rs), (p(b,27)), ( rs), (p(b,28)) );
pdebug(stddbg,buf);
wsprintf(buf," %c%c%c%c%c%c%c%c",(p(b,29)), ( rs), (p(b,30)), ( rs), (p(b,31)), ( rs), (p(b,32)), ( rs) );
pdebug(stddbg,buf);
pdebug(stddbg," ");
}
/* --------------------------------------------------------------------------
TextizeBoard produces a text version of the board for people who did
not install this form.
-------------------------------------------------------------------------- */
char* TextizeBoard(BOARD b)
{
const unsigned char rs='='; /* red square */
static char buf[2048];
wsprintf(buf,
"IPM.Checkers\r\n\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n"
" %c%c%c%c%c%c%c%c\r\n",
( rs), (p(b, 1)), ( rs), (p(b, 2)), ( rs), (p(b, 3)), ( rs), (p(b, 4)) ,
(p(b, 5)), ( rs), (p(b, 6)), ( rs), (p(b, 7)), ( rs), (p(b, 8)), ( rs) ,
( rs), (p(b, 9)), ( rs), (p(b,10)), ( rs), (p(b,11)), ( rs), (p(b,12)) ,
(p(b,13)), ( rs), (p(b,14)), ( rs), (p(b,15)), ( rs), (p(b,16)), ( rs) ,
( rs), (p(b,17)), ( rs), (p(b,18)), ( rs), (p(b,19)), ( rs), (p(b,20)) ,
(p(b,21)), ( rs), (p(b,22)), ( rs), (p(b,23)), ( rs), (p(b,24)), ( rs) ,
( rs), (p(b,25)), ( rs), (p(b,26)), ( rs), (p(b,27)), ( rs), (p(b,28)) ,
(p(b,29)), ( rs), (p(b,30)), ( rs), (p(b,31)), ( rs), (p(b,32)), ( rs) );
return buf;
}