/*
* TARGA: 400 to 482 rows x 512 pixels/row X 16 bits/pixel
*/
#define XMIN 0
#define YMIN 0
#define XMAX 512 /* maximum X value */
#define YMAX 512 /* maximum Y value */
#define XRES 512 /* X resolution */
#define YRES 512 /* Y Resolution */
#define YVISMAX (2*targa.LinesPerField) /* Maximum visible Y coordinate */
#define YVISMIN 0 /* Minimum visible Y coordiate */
#define DEF_ROWS 400 /* Default number of rows */
#define IOBASE targa.iobase /* io base location of graphics registers */
#define MEMSEG targa.memloc /* use the variable so we can use */
#define SCNSEG targa.memloc /* the one defined in TARGA */
#define SRCBANK (targa.memloc+0x0800) /* use high-bank as source bank */
#define DESTBANK targa.memloc /* use lo-bank as destination bank */
#define MSK_REGWRITE 0xFFBF /* mask for display register write */
#define SHF_REGWRITE 6
#define REGINDEX 0 /* to write an index value */
#define REGVALUE 1 /* to write a value */
#define MSK_BIT9 0xFF7F /* maks for high-order bit of DR's */
#define SHF_BIT9 7
#define MSK_TAPBITS 0xFCFF /* mask for setting the tap bits */
#define SHF_TAPBITS 8
typedef struct {
/* Board Configuration */
int memloc; /* memory segment */
int iobase; /* IOBASE segment */
int BytesPerPixel; /* number of words per pixel */
int RowsPerBank; /* number of row per 64K bank */
int MaxBanks; /* maximum bank id */
int AddressShift; /* number of bits to shift address */
/* Control registers */
int mode; /* mode register */
int Mask; /* mask register */
int PageMode; /* current page mode (screen res. and page) */
unsigned PageLower; /* Lower Page Select register */
unsigned PageUpper; /* upper Page select register */
int VCRCon; /* VCRContract register */
int SatHue; /* Hue and Saturation register */
long BorderColor; /* Border color register */
int VertShift; /* Vertical Pan Register */
int PanXOrig, PanYOrig; /* x,y pan origin */
/* TARGA-SET PARAMETERS */
int boardType; /* See TYPE_XX IN THIS FILE */
/* FOR DEFINITION OF Board Types */
int xOffset; /* X-offset */
int yOffset; /* Y-Offset */
int LinesPerField; /* maximum visible row count */
int InterlaceMode; /* desired interlace mode */
int AlwaysGenLock; /* Genlock always on or not */
int Contrast; /* Desired Contrast */
int Hue; /* Desired Hue */
int Saturation; /* Desired Satuation */
int RGBorCV; /* CV or RGB Input */
int VCRorCamera; /* VCR or Camera */
int ovrscnAvail, ovrscnOn; /* ovrscnAvail 1 if Overscan installed */
/* ovrscnOn 1 if overscan is stretching */
/* Display Registers */
int DisplayRegister[22];
} TARStruct;
/****************************************************************/
/* Data Definitions */