1*6752Srrh static char sccsid[] = "	board.c	1.1	82/05/11	";
2*6752Srrh 
3*6752Srrh #include "back.h"
4*6752Srrh 
5*6752Srrh static int	i, j, k;
6*6752Srrh static char	ln[60];
7*6752Srrh 
8*6752Srrh wrboard ()  {
9*6752Srrh 	register int	l;
10*6752Srrh 	static char	bl[] =
11*6752Srrh 		"|                       |   |                       |\n";
12*6752Srrh 	static char	sv[] =
13*6752Srrh 		"|                       |   |                       |    \n";
14*6752Srrh 
15*6752Srrh 	fixtty (noech);
16*6752Srrh 	clear();
17*6752Srrh 
18*6752Srrh 	if (tflag)  {
19*6752Srrh 		fboard();
20*6752Srrh 		goto lastline;
21*6752Srrh 	}
22*6752Srrh 
23*6752Srrh 	writel ("_____________________________________________________\n");
24*6752Srrh 	writel (bl);
25*6752Srrh 	strcpy (ln,bl);
26*6752Srrh 	for (j = 1; j < 50; j += 4) {
27*6752Srrh 		k = j/4+(j > 24? 12: 13);
28*6752Srrh 		ln[j+1] = k%10+'0';
29*6752Srrh 		ln[j] = k/10+'0';
30*6752Srrh 		if (j == 21)
31*6752Srrh 			j += 4;
32*6752Srrh 	}
33*6752Srrh 	writel (ln);
34*6752Srrh 	for (i = 0; i < 5; i++) {
35*6752Srrh 		strcpy (ln,sv);
36*6752Srrh 		for (j = 1; j < 50; j += 4) {
37*6752Srrh 			k = j/4+(j > 24? 12: 13);
38*6752Srrh 			wrbsub ();
39*6752Srrh 			if (j == 21)
40*6752Srrh 				j += 4;
41*6752Srrh 		}
42*6752Srrh 		if (-board[25] > i)
43*6752Srrh 			ln[26] = 'w';
44*6752Srrh 		if (-board[25] > i+5)
45*6752Srrh 			ln[25] = 'w';
46*6752Srrh 		if (-board[25] > i+10)
47*6752Srrh 			ln[27] = 'w';
48*6752Srrh 		l = 53;
49*6752Srrh 		if (off[1] > i || (off[1] < 0 && off[1]+15 > i))  {
50*6752Srrh 			ln[54] = 'r';
51*6752Srrh 			l = 55;
52*6752Srrh 		}
53*6752Srrh 		if (off[1] > i+5 || (off[1] < 0 && off[1]+15 > i+5))  {
54*6752Srrh 			ln[55] = 'r';
55*6752Srrh 			l = 56;
56*6752Srrh 		}
57*6752Srrh 		if (off[1] > i+10 || (off[1] < 0 && off[1]+15 > i+10))  {
58*6752Srrh 			ln[56] = 'r';
59*6752Srrh 			l = 57;
60*6752Srrh 		}
61*6752Srrh 		ln[l++] = '\n';
62*6752Srrh 		ln[l] = '\0';
63*6752Srrh 		writel (ln);
64*6752Srrh 	}
65*6752Srrh 	strcpy (ln,bl);
66*6752Srrh 	ln[25] = 'B';
67*6752Srrh 	ln[26] = 'A';
68*6752Srrh 	ln[27] = 'R';
69*6752Srrh 	writel (ln);
70*6752Srrh 	strcpy (ln,sv);
71*6752Srrh 	for (i = 4; i > -1; i--) {
72*6752Srrh 		for (j = 1; j < 50; j += 4) {
73*6752Srrh 			k = ((j > 24? 53: 49)-j)/4;
74*6752Srrh 			wrbsub();
75*6752Srrh 			if (j == 21)
76*6752Srrh 				j += 4;
77*6752Srrh 		}
78*6752Srrh 		if (board[0] > i)
79*6752Srrh 			ln[26] = 'r';
80*6752Srrh 		if (board[0] > i+5)
81*6752Srrh 			ln[25] = 'r';
82*6752Srrh 		if (board[0] > i+10)
83*6752Srrh 			ln[27] = 'r';
84*6752Srrh 		l = 53;
85*6752Srrh 		if (off[0] > i || (off[0] < 0 && off[0]+15 > i))  {
86*6752Srrh 			ln[54] = 'w';
87*6752Srrh 			l = 55;
88*6752Srrh 		}
89*6752Srrh 		if (off[0] > i+5 || (off[0] < 0 && off[0]+15 > i+5))  {
90*6752Srrh 			ln[55] = 'w';
91*6752Srrh 			l = 56;
92*6752Srrh 		}
93*6752Srrh 		if (off[0] > i+10 || (off[0] < 0 && off[0]+15 > i+10))  {
94*6752Srrh 			ln[56] = 'w';
95*6752Srrh 			l = 57;
96*6752Srrh 		}
97*6752Srrh 		ln[l++] = '\n';
98*6752Srrh 		ln[l] = '\0';
99*6752Srrh 		writel (ln);
100*6752Srrh 	}
101*6752Srrh 	strcpy (ln,bl);
102*6752Srrh 	for (j = 1; j < 50; j += 4) {
103*6752Srrh 		k = ((j > 24? 53: 49)-j)/4;
104*6752Srrh 		ln[j+1] = k%10+'0';
105*6752Srrh 		if (k > 9)
106*6752Srrh 			ln[j] = k/10+'0';
107*6752Srrh 		if (j == 21)
108*6752Srrh 			j += 4;
109*6752Srrh 	}
110*6752Srrh 	writel (ln);
111*6752Srrh 	writel ("|_______________________|___|_______________________|\n");
112*6752Srrh 
113*6752Srrh lastline:
114*6752Srrh 	gwrite ();
115*6752Srrh 	if (tflag)
116*6752Srrh 		curmove (18,0);
117*6752Srrh 	else  {
118*6752Srrh 		writec ('\n');
119*6752Srrh 		writec ('\n');
120*6752Srrh 	}
121*6752Srrh 	fixtty(raw);
122*6752Srrh }
123*6752Srrh 
124*6752Srrh wrbsub () {
125*6752Srrh 	register int	m;
126*6752Srrh 	register char	d;
127*6752Srrh 
128*6752Srrh 	if (board[k] > 0)  {
129*6752Srrh 		m = board[k];
130*6752Srrh 		d = 'r';
131*6752Srrh 	} else {
132*6752Srrh 		m = -board[k];
133*6752Srrh 		d = 'w';
134*6752Srrh 	}
135*6752Srrh 	if (m>i)
136*6752Srrh 		ln[j+1] = d;
137*6752Srrh 	if (m>i+5)
138*6752Srrh 		ln[j] = d;
139*6752Srrh 	if (m>i+10)
140*6752Srrh 		ln[j+2] = d;
141*6752Srrh }
142