home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
videotlk.zip
/
H
/
VCAI32.H
< prev
Wrap
Text File
|
1998-11-05
|
9KB
|
196 lines
#define DRIVERHANDLE short int
USHORT VcaiDllVersionQuery (VOID);
USHORT VcaiLastError (VOID);
VOID VcaiQuery (VOID);
DRIVERHANDLE VcaiDeviceOpen (CHAR *name, USHORT device);
USHORT VcaiDeviceClose (DRIVERHANDLE vcahand);
VOID VcaiDeviceConnect (DRIVERHANDLE vcahandle);
VOID VcaiDeviceStateSave (VOID);
VOID VcaiDeviceStateRestore (VOID);
VOID VcaiScreenInfoSet (PVCASCREENINFO vs);
ULONG VcaiVideoInputSet (LONG connector);
ULONG VcaiVideoDefaultSet (VOID);
ULONG VcaiVideoInputQuery (VOID);
VOID VcaiCaptureRectSet (USHORT sx, USHORT sy,
USHORT swid, USHORT sht,
USHORT dx, USHORT dy,
USHORT dwid, USHORT dht);
VOID VcaiImageScaleGet (USHORT len, ULONG address,
USHORT sx, USHORT sy,
USHORT swid, USHORT sht,
USHORT dx, USHORT dy,
USHORT dwid, USHORT dht);
VOID VcaiDeviceInfoGet (PVCADEVINFO info);
VOID VcaiVideoRectValidate (USHORT sx, USHORT sy,
USHORT swid, USHORT sht,
USHORT dx, USHORT dy,
USHORT dwid, USHORT dht);
VOID VcaiVideoGet (USHORT *b, USHORT *c, USHORT *s, USHORT *h);
VOID VcaiVideoSet (USHORT b, USHORT c, USHORT s, USHORT h);
VOID VcaiAudioGet (USHORT *lv, USHORT *rv, USHORT *lb, USHORT *rb,
USHORT *lt, USHORT *rt, USHORT *mute);
VOID VcaiAudioSet (USHORT lv, USHORT rv, USHORT lb, USHORT rb,
USHORT lt, USHORT rt, USHORT mute);
VOID VcaiFrameRateSet (ULONG fps, USHORT flag);
VOID VcaiOverlay (BOOL OnOffFlag);
VOID VcaiColourkey (BOOL OnOffFlag);
VOID VcaiColourkeySet (ULONG ckey);
ULONG VcaiColourkeyGet (VOID);
VOID VcaiChromakey (BOOL OnOffFlag);
VOID VcaiFreeze (BOOL OnOffFlag);
VOID VcaiAdvSet (PAF paf);
VOID VcaiAdvGet (PAF paf);
VOID VcaiSmartlockSet (USHORT settings[]);
VOID VcaiSmartlockGet (USHORT settings[]);
VOID VcaiConfigSet (USHORT settings[]);
VOID VcaiConfigGet (USHORT settings[]);
VOID VcaiInfoGet (USHORT settings[]);
VOID VcaiCkSet (USHORT settings[]);
VOID VcaiCkGet (USHORT settings[]);
VOID VcaiReset (VOID);
VOID VcaiRedraw (VOID);
USHORT VcaiI2cWrite (UCHAR id, USHORT length, UCHAR FAR *db);
USHORT VcaiI2cRead (UCHAR id, USHORT length, UCHAR FAR *db);
USHORT VcaiI2cWriteRead (UCHAR id, USHORT length_out, UCHAR FAR *db_out,
USHORT length_in, UCHAR FAR *db_in);
USHORT VcaiVarRead (UCHAR FAR *name, USHORT table, ULONG FAR *value);
USHORT VcaiVarWrite (UCHAR FAR *name, USHORT table, ULONG value);
USHORT VcaiVarEnum (UCHAR FAR *name, USHORT table, USHORT off, ULONG FAR *value);
VOID VcaiVxpSet (USHORT reg, USHORT value);
USHORT VcaiVxpGet (USHORT reg);
VOID VcaiBt812Set (USHORT reg, USHORT value);
USHORT VcaiBt812Get (USHORT reg);
USHORT VcaiTeletextStatus (PTTSTATUS ptt_status);
VOID VcaiTeletextAcquire (USHORT page_no, USHORT acq);
USHORT VcaiTeletextQuery (USHORT page_no);
USHORT VcaiTeletextGet (USHORT page_no, USHORT offset, USHORT length,
UCHAR FAR *buff);
USHORT VcaiTunerSignal (VOID);
USHORT VcaiTunerSet (ULONG region, ULONG channel, ULONG freq, LONG finetune,
BOOL afc, BOOL polarization);
VOID VcaiTunerGet (ULONG FAR *region, ULONG FAR *channel,
ULONG FAR *freq, LONG FAR *fine);
USHORT VcaiTunerFreqSet (ULONG freq, LONG finetune);
ULONG VcaiTunerFreqGet (VOID);
ULONG VcaiTunerRegionGet (VOID);
LONG VcaiTunerFineGet (VOID);
VOID VcaiPaletteGet (ULONG len, ULONG *address, USHORT type);
VOID VcaiSnapStart (USHORT width, USHORT height);
VOID VcaiSnapGet (ULONG address);
VOID VcaiSnapStop (VOID);
VOID VcaiPlayStart (USHORT width, USHORT height);
VOID VcaiPlaySet (ULONG address);
VOID VcaiPlayStop (VOID);
/* Driver specific functions for the WinCast board */
VOID VcaiWCastMonitor (ULONG width, ULONG height, ULONG address);
// VOID VcaiWCastPos (CRECT *prect);
// E S C
#define VCAI_USER_CODE (0x45534300L)
#define VCAI_GET_ADVANCED (0x01 | VCAI_USER_CODE)
#define VCAI_SET_ADVANCED (0x02 | VCAI_USER_CODE)
#define VCAI_GET_SL (0x03 | VCAI_USER_CODE)
#define VCAI_SET_SL (0x04 | VCAI_USER_CODE)
#define VCAI_GET_CONF (0x05 | VCAI_USER_CODE)
#define VCAI_SET_CONF (0x06 | VCAI_USER_CODE)
#define VCAI_GET_INFO (0x07 | VCAI_USER_CODE)
#define VCAI_I2CIO (0x08 | VCAI_USER_CODE)
#define VCAI_RESET (0x09 | VCAI_USER_CODE)
#define VCAI_HARDWARE (0x0A | VCAI_USER_CODE)
#define VCAI_SET_CK (0x0B | VCAI_USER_CODE)
#define VCAI_GET_CK (0x0C | VCAI_USER_CODE)
#define VCAI_SET_TUNER (0x0D | VCAI_USER_CODE)
#define VCAI_GET_TUNER (0x0E | VCAI_USER_CODE)
#define VCAI_VARIABLE (0x0F | VCAI_USER_CODE)
#define VCAI_GET_PALETTE (0x10 | VCAI_USER_CODE)
#define VCAI_REDRAW (0x11 | VCAI_USER_CODE)
#define VCAI_SNAP_START (0x12 | VCAI_USER_CODE)
#define VCAI_SNAP_GET (0x13 | VCAI_USER_CODE)
#define VCAI_SNAP_STOP (0x14 | VCAI_USER_CODE)
#define VCAI_PLAY_START (0x15 | VCAI_USER_CODE)
#define VCAI_PLAY_SET (0x16 | VCAI_USER_CODE)
#define VCAI_PLAY_STOP (0x17 | VCAI_USER_CODE)
/* Added in support of the Hauppauge WinCast board. */
#define VCAI_WCAST_MONITOR (0x18 | VCAI_USER_CODE)
#define VCAI_WCAST_POS (0x19 | VCAI_USER_CODE)
#define VCAI_DMA_START (0x1C | VCAI_USER_CODE)
#define VCAI_GRADD_MODEINFO (0x20 | VCAI_USER_CODE)
#define VCAI_GRADD_MOVEPTR (0x21 | VCAI_USER_CODE)
#define VCAI_GRADD_SETPTR (0x22 | VCAI_USER_CODE)
#define VCAI_GRADD_SHOWPTR (0x23 | VCAI_USER_CODE)
// This is a USER EScape IOCTL and is provided
// because the MCI layer does not set or
// get Region or channel information from the
// driver. But the driver needs the information !
typedef struct VCATUNER
{
ULONG tune_region;
ULONG tune_channel;
ULONG tune_freq;
LONG tune_fine;
BOOL tune_afc;
BOOL tune_polarization;
} VCATUNER, FAR * PVCATUNER;
// This is a USER EScape IOCTL and is provided
// to allow configuration utilities access to
// internal variables within the device driver.
typedef struct VCAVARIABLE
{
USHORT var_func; // ENUM, GET, SET
USHORT var_type; // VCA Generic, or HW specific variable table
UCHAR var_name[40]; // Null terminated variable name
ULONG var_value; // Value to set or value to return
USHORT var_offset; // Offset of variable in its table
} VCAVARIABLE, FAR * PVCAVARIABLE;
#define VCA_VARIABLE_GET (0) // Get the value for a variable
#define VCA_VARIABLE_SET (1) // Set a variables value
#define VCA_VARIABLE_ENUM (2) // Get the name of a variable
#define VCA_VARIABLE_GENERIC (0) // Use the generic variable table
#define VCA_VARIABLE_HW (1) // Use the hardware specific table
typedef struct VCAPALETTE
{
ULONG pal_len;
ULONG FAR *pal_address;
USHORT pal_type;
} VCAPALETTE, FAR * PVCAPALETTE;
#define VCA_HW_PALETTE (0)
#define VCA_MCI_PALETTE (1)
#define VCA_CFG_WIDTH (0)
#define VCA_CFG_HEIGHT (1)
#define VCA_CFG_HSCALE (2)
#define VCA_CFG_VSCALE (3)
#define VCA_CFG_XOFFSET (4)
#define VCA_CFG_YOFFSET (5)
#define VCA_CFG_INPUT (6)
#define VCA_CFG_INTERLACE (7)
#define VCA_CFG_HSYNC (8)
#define VCA_CFG_VSYNC (9)
#define VCA_CFG_SLAUTO (10)
#define VCA_CFG_DIVIDER (11)
#define VCA_CFG_VCOGAIN (12)
#define VCA_CFG_PHDETGAIN (13)
#define VCA_CFG_VGA_CLOCK (11)
#define VCA_CFG_VGA_COLOUR (12)
#define VCAI_DLL_VERSION (0x502)
#define VCAI_DLL_MIN_VERSION (PMTV_DLL_VERSION)