driver.h 1.61 KB
/*
 *
 *
 *
 *
 */

#ifndef DRIVER_INCLUDE
#define DRIVER_INCLUDE


typedef struct {
  /* required */
  char *label;
  int gclk_old;
  int argc;
  char **argv;

  /* input */
  int gclk;

  /* output */
    int st_span;        /* start of span */
    int ncyc;           /* number of cycles per pixel */
    int bilerp0m;       /* cycle 0 mode bit */
    int bilerp1m;       /* cycle 1 mode bit */
    int convert_one;    /* loopback mode */
    int mid_texel;      /* mid mode (for 4 texel avg) */

    int k0_coeff;       /* [8:0], color convert coeffs */
    int k1_coeff;       /* [8:0], color convert coeffs */
    int k2_coeff;       /* [8:0], color convert coeffs */
    int k3_coeff;       /* [8:0], color convert coeffs */

    int lod_frac;       /* [8:0], s,8.0, pipe through to CCU */
    int lge1;           /* lod >= 1.0 */

    int sfrac_rg;       /* [7:0], 0.8, bilerp alphas */
    int tfrac_rg;       /* [7:0], 0.8, bilerp alphas */
    int sfrac_ba;       /* [7:0], 0.8, bilerp alphas */
    int tfrac_ba;       /* [7:0], 0.8, bilerp alphas */


    int tm_ra;          /* [8:0], s,8.0, texel A */
    int tm_ga;
    int tm_ba;
    int tm_aa;

    int tm_rb;          /* [8:0], s,8.0, texel B */
    int tm_gb;
    int tm_bb;
    int tm_ab;

    int tm_rc;          /* [8:0], s,8.0, texel C */
    int tm_gc;
    int tm_bc;
    int tm_ac;

    int tm_rd;          /* [8:0], s,8.0, texel D */
    int tm_gd;
    int tm_bd;
    int tm_ad;

    int dv;		/* data valid */

} driver_t;


/*
 *  Prototypes
 */
void driver(driver_t **pp0, driver_t **pp1);
void driver_init(driver_t *p0, driver_t *p1);

#endif /* DRIVER_INCLUDE */