1#ifndef _VB_STRUCT_
2#define _VB_STRUCT_
3
4#ifdef _INITNEW_
5#define EXTERN
6#else
7#define EXTERN extern
8#endif
9
10struct XGI_PanelDelayTblStruct {
11 unsigned char timer[2];
12};
13
14struct XGI_LCDDataStruct {
15 unsigned short RVBHCMAX;
16 unsigned short RVBHCFACT;
17 unsigned short VGAHT;
18 unsigned short VGAVT;
19 unsigned short LCDHT;
20 unsigned short LCDVT;
21};
22
23
24struct XGI_LVDSCRT1HDataStruct {
25 unsigned char Reg[8];
26};
27
28struct XGI_LVDSCRT1VDataStruct {
29 unsigned char Reg[7];
30};
31
32struct XGI_TVDataStruct {
33 unsigned short RVBHCMAX;
34 unsigned short RVBHCFACT;
35 unsigned short VGAHT;
36 unsigned short VGAVT;
37 unsigned short TVHDE;
38 unsigned short TVVDE;
39 unsigned short RVBHRS;
40 unsigned char FlickerMode;
41 unsigned short HALFRVBHRS;
42 unsigned char RY1COE;
43 unsigned char RY2COE;
44 unsigned char RY3COE;
45 unsigned char RY4COE;
46};
47
48struct XGI_LVDSDataStruct {
49 unsigned short VGAHT;
50 unsigned short VGAVT;
51 unsigned short LCDHT;
52 unsigned short LCDVT;
53};
54
55struct XGI_LVDSDesStruct {
56 unsigned short LCDHDES;
57 unsigned short LCDVDES;
58};
59
60struct XGI_LVDSCRT1DataStruct {
61 unsigned char CR[15];
62};
63
64
65
66struct XGI_StStruct {
67 unsigned char St_ModeID;
68 unsigned short St_ModeFlag;
69 unsigned char St_StTableIndex;
70 unsigned char St_CRT2CRTC;
71 unsigned char St_CRT2CRTC2;
72 unsigned char St_ResInfo;
73 unsigned char VB_StTVFlickerIndex;
74 unsigned char VB_StTVEdgeIndex;
75 unsigned char VB_StTVYFilterIndex;
76};
77
78struct XGI_StandTableStruct {
79 unsigned char CRT_COLS;
80 unsigned char ROWS;
81 unsigned char CHAR_HEIGHT;
82 unsigned short CRT_LEN;
83 unsigned char SR[4];
84 unsigned char MISC;
85 unsigned char CRTC[0x19];
86 unsigned char ATTR[0x14];
87 unsigned char GRC[9];
88};
89
90struct XGI_ExtStruct {
91 unsigned char Ext_ModeID;
92 unsigned short Ext_ModeFlag;
93 unsigned short Ext_ModeInfo;
94 unsigned short Ext_Point;
95 unsigned short Ext_VESAID;
96 unsigned char Ext_VESAMEMSize;
97 unsigned char Ext_RESINFO;
98 unsigned char VB_ExtTVFlickerIndex;
99 unsigned char VB_ExtTVEdgeIndex;
100 unsigned char VB_ExtTVYFilterIndex;
101 unsigned char REFindex;
102};
103
104struct XGI_Ext2Struct {
105 unsigned short Ext_InfoFlag;
106 unsigned char Ext_CRT1CRTC;
107 unsigned char Ext_CRTVCLK;
108 unsigned char Ext_CRT2CRTC;
109 unsigned char Ext_CRT2CRTC2;
110 unsigned char ModeID;
111 unsigned short XRes;
112 unsigned short YRes;
113
114};
115
116
117struct XGI_MCLKDataStruct {
118 unsigned char SR28, SR29, SR2A;
119 unsigned short CLOCK;
120};
121
122struct XGI_ECLKDataStruct {
123 unsigned char SR2E, SR2F, SR30;
124 unsigned short CLOCK;
125};
126
127struct XGI_VCLKDataStruct {
128 unsigned char SR2B, SR2C;
129 unsigned short CLOCK;
130};
131
132struct XGI_VBVCLKDataStruct {
133 unsigned char Part4_A, Part4_B;
134 unsigned short CLOCK;
135};
136
137struct XGI_StResInfoStruct {
138 unsigned short HTotal;
139 unsigned short VTotal;
140};
141
142struct XGI_ModeResInfoStruct {
143 unsigned short HTotal;
144 unsigned short VTotal;
145 unsigned char XChar;
146 unsigned char YChar;
147};
148
149struct XGI_LCDNBDesStruct {
150 unsigned char NB[12];
151};
152
153
154struct XGI_LCDDesStruct {
155 unsigned short LCDHDES;
156 unsigned short LCDHRS;
157 unsigned short LCDVDES;
158 unsigned short LCDVRS;
159};
160
161struct XGI_LCDDataTablStruct {
162 unsigned char PANELID;
163 unsigned short MASK;
164 unsigned short CAP;
165 unsigned short DATAPTR;
166};
167
168struct XGI_TVTablDataStruct {
169 unsigned short MASK;
170 unsigned short CAP;
171 unsigned short DATAPTR;
172};
173
174struct XGI330_LCDDataDesStruct {
175 unsigned short LCDHDES;
176 unsigned short LCDHRS;
177 unsigned short LCDVDES;
178 unsigned short LCDVRS;
179};
180
181
182struct XGI330_LVDSDataStruct {
183 unsigned short VGAHT;
184 unsigned short VGAVT;
185 unsigned short LCDHT;
186 unsigned short LCDVT;
187};
188
189struct XGI330_LCDDataDesStruct2 {
190 unsigned short LCDHDES;
191 unsigned short LCDHRS;
192 unsigned short LCDVDES;
193 unsigned short LCDVRS;
194 unsigned short LCDHSync;
195 unsigned short LCDVSync;
196};
197
198struct XGI330_LCDDataStruct {
199 unsigned short RVBHCMAX;
200 unsigned short RVBHCFACT;
201 unsigned short VGAHT;
202 unsigned short VGAVT;
203 unsigned short LCDHT;
204 unsigned short LCDVT;
205};
206
207
208struct XGI330_TVDataStruct {
209 unsigned short RVBHCMAX;
210 unsigned short RVBHCFACT;
211 unsigned short VGAHT;
212 unsigned short VGAVT;
213 unsigned short TVHDE;
214 unsigned short TVVDE;
215 unsigned short RVBHRS;
216 unsigned char FlickerMode;
217 unsigned short HALFRVBHRS;
218};
219
220struct XGI330_LCDDataTablStruct {
221 unsigned char PANELID;
222 unsigned short MASK;
223 unsigned short CAP;
224 unsigned short DATAPTR;
225};
226
227struct XGI330_TVDataTablStruct {
228 unsigned short MASK;
229 unsigned short CAP;
230 unsigned short DATAPTR;
231};
232
233
234struct XGI330_CHTVDataStruct {
235 unsigned short VGAHT;
236 unsigned short VGAVT;
237 unsigned short LCDHT;
238 unsigned short LCDVT;
239};
240
241struct XGI_TimingHStruct {
242 unsigned char data[8];
243};
244
245struct XGI_TimingVStruct {
246 unsigned char data[7];
247};
248
249struct XGI_CH7007TV_TimingHStruct {
250 unsigned char data[10];
251};
252
253struct XGI_CH7007TV_TimingVStruct {
254 unsigned char data[10];
255};
256
257struct XGI_XG21CRT1Struct {
258 unsigned char ModeID, CR02, CR03, CR15, CR16;
259};
260
261struct XGI330_CHTVRegDataStruct {
262 unsigned char Reg[16];
263};
264
265struct XGI330_LCDCapStruct {
266 unsigned char LCD_ID;
267 unsigned short LCD_Capability;
268 unsigned char LCD_SetFlag;
269 unsigned char LCD_DelayCompensation;
270 unsigned char LCD_HSyncWidth;
271 unsigned char LCD_VSyncWidth;
272 unsigned char LCD_VCLK;
273 unsigned char LCDA_VCLKData1;
274 unsigned char LCDA_VCLKData2;
275 unsigned char LCUCHAR_VCLKData1;
276 unsigned char LCUCHAR_VCLKData2;
277 unsigned char PSC_S1;
278 unsigned char PSC_S2;
279 unsigned char PSC_S3;
280 unsigned char PSC_S4;
281 unsigned char PSC_S5;
282 unsigned char PWD_2B;
283 unsigned char PWD_2C;
284 unsigned char PWD_2D;
285 unsigned char PWD_2E;
286 unsigned char PWD_2F;
287 unsigned char Spectrum_31;
288 unsigned char Spectrum_32;
289 unsigned char Spectrum_33;
290 unsigned char Spectrum_34;
291};
292
293struct XGI21_LVDSCapStruct {
294 unsigned short LVDS_Capability;
295 unsigned short LVDSHT;
296 unsigned short LVDSVT;
297 unsigned short LVDSHDE;
298 unsigned short LVDSVDE;
299 unsigned short LVDSHFP;
300 unsigned short LVDSVFP;
301 unsigned short LVDSHSYNC;
302 unsigned short LVDSVSYNC;
303 unsigned char VCLKData1;
304 unsigned char VCLKData2;
305 unsigned char PSC_S1;
306 unsigned char PSC_S2;
307 unsigned char PSC_S3;
308 unsigned char PSC_S4;
309 unsigned char PSC_S5;
310};
311
312struct XGI_CRT1TableStruct {
313 unsigned char CR[16];
314};
315
316
317struct XGI330_VCLKDataStruct {
318 unsigned char SR2B, SR2C;
319 unsigned short CLOCK;
320};
321
322struct XGI301C_Tap4TimingStruct {
323 unsigned short DE;
324 unsigned char Reg[64];
325};
326
327struct XGI_New_StandTableStruct {
328 unsigned char CRT_COLS;
329 unsigned char ROWS;
330 unsigned char CHAR_HEIGHT;
331 unsigned short CRT_LEN;
332 unsigned char SR[4];
333 unsigned char MISC;
334 unsigned char CRTC[0x19];
335 unsigned char ATTR[0x14];
336 unsigned char GRC[9];
337};
338
339struct vb_device_info {
340 unsigned char ISXPDOS;
341 unsigned long P3c4, P3d4, P3c0, P3ce, P3c2, P3cc;
342 unsigned long P3ca, P3c6, P3c7, P3c8, P3c9, P3da;
343 unsigned long Part0Port, Part1Port, Part2Port;
344 unsigned long Part3Port, Part4Port, Part5Port;
345 unsigned short RVBHCFACT, RVBHCMAX, RVBHRS;
346 unsigned short VGAVT, VGAHT, VGAVDE, VGAHDE;
347 unsigned short VT, HT, VDE, HDE;
348 unsigned short LCDHRS, LCDVRS, LCDHDES, LCDVDES;
349
350 unsigned short ModeType;
351
352 unsigned short IF_DEF_LVDS, IF_DEF_TRUMPION, IF_DEF_DSTN;
353 unsigned short IF_DEF_CRT2Monitor, IF_DEF_VideoCapture;
354 unsigned short IF_DEF_LCDA, IF_DEF_CH7017, IF_DEF_YPbPr,
355 IF_DEF_ScaleLCD, IF_DEF_OEMUtil, IF_DEF_PWD;
356 unsigned short IF_DEF_ExpLink;
357 unsigned short IF_DEF_CH7005, IF_DEF_HiVision;
358 unsigned short IF_DEF_CH7007;
359 unsigned short LCDResInfo, LCDTypeInfo, VBType;
360 unsigned short VBInfo, TVInfo, LCDInfo, Set_VGAType;
361 unsigned short VBExtInfo;
362 unsigned short SetFlag;
363 unsigned short NewFlickerMode;
364 unsigned short SelectCRT2Rate;
365
366 unsigned char *ROMAddr;
367 unsigned char *FBAddr;
368 unsigned long BaseAddr;
369 unsigned long RelIO;
370
371 unsigned char (*CR6B)[4];
372 unsigned char (*CR6E)[4];
373 unsigned char (*CR6F)[32];
374 unsigned char (*CR89)[2];
375
376 unsigned char (*SR15)[8];
377 unsigned char (*CR40)[8];
378
379 unsigned char *pSoftSetting;
380 unsigned char *pOutputSelect;
381
382 unsigned short *pRGBSenseData;
383 unsigned short *pRGBSenseData2;
384 unsigned short *pVideoSenseData;
385 unsigned short *pVideoSenseData2;
386 unsigned short *pYCSenseData;
387 unsigned short *pYCSenseData2;
388
389 unsigned char *pSR07;
390 unsigned char *CR49;
391 unsigned char *pSR1F;
392 unsigned char *AGPReg;
393 unsigned char *SR16;
394 unsigned char *pSR21;
395 unsigned char *pSR22;
396 unsigned char *pSR23;
397 unsigned char *pSR24;
398 unsigned char *SR25;
399 unsigned char *pSR31;
400 unsigned char *pSR32;
401 unsigned char *pSR33;
402 unsigned char *pSR36;
403 unsigned char *pCRCF;
404 unsigned char *pCRD0;
405 unsigned char *pCRDE;
406 unsigned char *pCR8F;
407 unsigned char *pSR40;
408 unsigned char *pSR41;
409 unsigned char *pDVOSetting;
410 unsigned char *pCR2E;
411 unsigned char *pCR2F;
412 unsigned char *pCR46;
413 unsigned char *pCR47;
414 unsigned char *pCRT2Data_1_2;
415 unsigned char *pCRT2Data_4_D;
416 unsigned char *pCRT2Data_4_E;
417 unsigned char *pCRT2Data_4_10;
418 struct XGI_MCLKDataStruct *MCLKData;
419 struct XGI_ECLKDataStruct *ECLKData;
420
421 unsigned char *XGI_TVDelayList;
422 unsigned char *XGI_TVDelayList2;
423 unsigned char *CHTVVCLKUNTSC;
424 unsigned char *CHTVVCLKONTSC;
425 unsigned char *CHTVVCLKUPAL;
426 unsigned char *CHTVVCLKOPAL;
427 unsigned char *NTSCTiming;
428 unsigned char *PALTiming;
429 unsigned char *HiTVExtTiming;
430 unsigned char *HiTVSt1Timing;
431 unsigned char *HiTVSt2Timing;
432 unsigned char *HiTVTextTiming;
433 unsigned char *YPbPr750pTiming;
434 unsigned char *YPbPr525pTiming;
435 unsigned char *YPbPr525iTiming;
436 unsigned char *HiTVGroup3Data;
437 unsigned char *HiTVGroup3Simu;
438 unsigned char *HiTVGroup3Text;
439 unsigned char *Ren525pGroup3;
440 unsigned char *Ren750pGroup3;
441 unsigned char *ScreenOffset;
442 unsigned char *pXGINew_DRAMTypeDefinition;
443 unsigned char *pXGINew_I2CDefinition ;
444 unsigned char *pXGINew_CR97 ;
445
446 struct XGI330_LCDCapStruct *LCDCapList;
447 struct XGI21_LVDSCapStruct *XG21_LVDSCapList;
448
449 struct XGI_TimingHStruct *TimingH;
450 struct XGI_TimingVStruct *TimingV;
451
452 struct XGI_StStruct *SModeIDTable;
453 struct XGI_StandTableStruct *StandTable;
454 struct XGI_ExtStruct *EModeIDTable;
455 struct XGI_Ext2Struct *RefIndex;
456
457 struct XGI_CRT1TableStruct *XGINEWUB_CRT1Table;
458 struct XGI_VCLKDataStruct *VCLKData;
459 struct XGI_VBVCLKDataStruct *VBVCLKData;
460 struct XGI_StResInfoStruct *StResInfo;
461 struct XGI_ModeResInfoStruct *ModeResInfo;
462 struct XGI_XG21CRT1Struct *UpdateCRT1;
463};
464
465
466struct TimingInfo {
467 unsigned short Horizontal_ACTIVE;
468 unsigned short Horizontal_FP;
469 unsigned short Horizontal_SYNC;
470 unsigned short Horizontal_BP;
471 unsigned short Vertical_ACTIVE;
472 unsigned short Vertical_FP;
473 unsigned short Vertical_SYNC;
474 unsigned short Vertical_BP;
475 double DCLK;
476 unsigned char FrameRate;
477 unsigned char Interlace;
478 unsigned short Margin;
479};
480
481#define _VB_STRUCT_
482#endif
483