The parameters for the bit-block transfer function are passed in the following structure:
typedef struct
{
int16_t b_wd, /* Width of the block in pixels */
b_ht, /* Height of the block in pixels */
plane_ct, /* Number of colour planes to blit */
fg_col, /* Foreground colour */
bg_col; /* Background colour */
int8_t op_tab[4]; /* Combination (for each plane) */
int16_t s_xmin, /* X offset to source top left */
s_ymin; /* Y offset to source top left */
void *s_form; /* Address of the source form */
int16_t s_nxwd, /* Offset to next word */
s_nxln, /* Byte width of form */
s_nxpl, /* Byte offset between planes */
d_xmin, /* X offset to destination top L */
d_ymin; /* Y offset to destination top L */
void *d_form; /* Address of the destination form */
int16_t d_nxwd, /* Offset to next word */
d_nxln, /* Byte width of form */
d_nxpl; /* Byte offset to next plane */
void *p_addr; /* 16-bit masks for ANDing */
int16_t p_nxln, /* Width of the mask in bytes */
p_nxpl, /* Byte offset to next plane */
p_mask; /* Height of mask in lines */
int8_t filler[24]; /* Internal buffer */
} BITBLT;