B_COLS
curscreen[D_LAST * B_COLS - 1] = -1;
t = c + r * B_COLS;
tr = t / B_COLS;
tc = t % B_COLS;
bp = &board[D_FIRST * B_COLS];
sp = &curscreen[D_FIRST * B_COLS];
for (i = 0; i < B_COLS; bp++, sp++, i++) {
#define STOP (B_COLS - 3)
#define TL -B_COLS-1 /* top left */
#define TC -B_COLS /* top center */
#define TR -B_COLS+1 /* top right */
#define BL B_COLS-1 /* bottom left */
#define BC B_COLS /* bottom center */
#define BR B_COLS+1 /* bottom right */
/*18*/ { 6, 6, { TC, BC, 2*B_COLS } }/* sticks out */
base = i * B_COLS + 1;
for (j = B_COLS - 2; *p++ != 0;) {
memset(&board[base], 0, B_COLS - 2);
board[base + B_COLS] = board[base];
memset(&board[1], 0, B_COLS - 2);
pos = A_FIRST*B_COLS + (B_COLS/2)-1;
if (fits_in(curshape, pos + B_COLS)) {
pos += B_COLS;
pos = A_FIRST*B_COLS + (B_COLS/2)-1;
while (fits_in(curshape, pos + B_COLS)) {
pos += B_COLS;
*p++ = i <= (2 * B_COLS) || (i % B_COLS) < 2;
#define B_SIZE (B_ROWS * B_COLS)
#define CTOD(x) ((x) * 2 + (((Cols - 2 * B_COLS) >> 1) - 1))