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;