tree: drop last paragraph of GPL copyright header
[coreboot.git] / src / drivers / xgi / common / vstruct.h
blob8172b9fe98deb9fbbe5ea4ed65cc7b353a4031c8
1 /* $XFree86$ */
2 /* $XdotOrg$ */
3 /*
4 * General structure definitions for universal mode switching modules
6 * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria
8 * If distributed as part of the Linux kernel, the following license terms
9 * apply:
11 * * This program is free software; you can redistribute it and/or modify
12 * * it under the terms of the GNU General Public License as published by
13 * * the Free Software Foundation; either version 2 of the named License,
14 * * or any later version.
15 * *
16 * * This program is distributed in the hope that it will be useful,
17 * * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * * GNU General Public License for more details.
21 * Otherwise, the following license terms apply:
23 * * Redistribution and use in source and binary forms, with or without
24 * * modification, are permitted provided that the following conditions
25 * * are met:
26 * * 1) Redistributions of source code must retain the above copyright
27 * * notice, this list of conditions and the following disclaimer.
28 * * 2) Redistributions in binary form must reproduce the above copyright
29 * * notice, this list of conditions and the following disclaimer in the
30 * * documentation and/or other materials provided with the distribution.
31 * * 3) The name of the author may not be used to endorse or promote products
32 * * derived from this software without specific prior written permission.
33 * *
34 * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
35 * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
36 * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
37 * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
38 * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
39 * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
40 * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
41 * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
42 * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
43 * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 * Author: Thomas Winischhofer <thomas@winischhofer.net>
49 #ifndef _VSTRUCT_H_
50 #define _VSTRUCT_H_
52 struct SiS_PanelDelayTbl {
53 unsigned char timer[2];
56 struct SiS_LCDData {
57 unsigned short RVBHCMAX;
58 unsigned short RVBHCFACT;
59 unsigned short VGAHT;
60 unsigned short VGAVT;
61 unsigned short LCDHT;
62 unsigned short LCDVT;
65 struct SiS_TVData {
66 unsigned short RVBHCMAX;
67 unsigned short RVBHCFACT;
68 unsigned short VGAHT;
69 unsigned short VGAVT;
70 unsigned short TVHDE;
71 unsigned short TVVDE;
72 unsigned short RVBHRS;
73 unsigned char FlickerMode;
74 unsigned short HALFRVBHRS;
75 unsigned short RVBHRS2;
76 unsigned char RY1COE;
77 unsigned char RY2COE;
78 unsigned char RY3COE;
79 unsigned char RY4COE;
82 struct SiS_LVDSData {
83 unsigned short VGAHT;
84 unsigned short VGAVT;
85 unsigned short LCDHT;
86 unsigned short LCDVT;
89 struct SiS_LVDSDes {
90 unsigned short LCDHDES;
91 unsigned short LCDVDES;
94 struct SiS_LVDSCRT1Data {
95 unsigned char CR[15];
98 struct SiS_CHTVRegData {
99 unsigned char Reg[16];
102 struct SiS_St {
103 unsigned char St_ModeID;
104 unsigned short St_ModeFlag;
105 unsigned char St_StTableIndex;
106 unsigned char St_CRT2CRTC;
107 unsigned char St_ResInfo;
108 unsigned char VB_StTVFlickerIndex;
109 unsigned char VB_StTVEdgeIndex;
110 unsigned char VB_StTVYFilterIndex;
111 unsigned char St_PDC;
114 struct SiS_VBMode {
115 unsigned char ModeID;
116 unsigned char VB_TVDelayIndex;
117 unsigned char VB_TVFlickerIndex;
118 unsigned char VB_TVPhaseIndex;
119 unsigned char VB_TVYFilterIndex;
120 unsigned char VB_LCDDelayIndex;
121 unsigned char _VB_LCDHIndex;
122 unsigned char _VB_LCDVIndex;
125 struct SiS_StandTable_S {
126 unsigned char CRT_COLS;
127 unsigned char ROWS;
128 unsigned char CHAR_HEIGHT;
129 unsigned short CRT_LEN;
130 unsigned char SR[4];
131 unsigned char MISC;
132 unsigned char CRTC[0x19];
133 unsigned char ATTR[0x14];
134 unsigned char GRC[9];
137 struct SiS_Ext {
138 unsigned char Ext_ModeID;
139 unsigned short Ext_ModeFlag;
140 unsigned short Ext_VESAID;
141 unsigned char Ext_RESINFO;
142 unsigned char VB_ExtTVFlickerIndex;
143 unsigned char VB_ExtTVEdgeIndex;
144 unsigned char VB_ExtTVYFilterIndex;
145 unsigned char VB_ExtTVYFilterIndexROM661;
146 unsigned char REFindex;
147 char ROMMODEIDX661;
150 struct SiS_Ext2 {
151 unsigned short Ext_InfoFlag;
152 unsigned char Ext_CRT1CRTC;
153 unsigned char Ext_CRTVCLK;
154 unsigned char Ext_CRT2CRTC;
155 unsigned char Ext_CRT2CRTC_NS;
156 unsigned char ModeID;
157 unsigned short XRes;
158 unsigned short YRes;
159 unsigned char Ext_PDC;
160 unsigned char Ext_FakeCRT2CRTC;
161 unsigned char Ext_FakeCRT2Clk;
162 unsigned char Ext_CRT1CRTC_NORM;
163 unsigned char Ext_CRTVCLK_NORM;
164 unsigned char Ext_CRT1CRTC_WIDE;
165 unsigned char Ext_CRTVCLK_WIDE;
168 struct SiS_Part2PortTbl {
169 unsigned char CR[12];
172 struct SiS_CRT1Table {
173 unsigned char CR[17];
176 struct SiS_MCLKData {
177 unsigned char SR28,SR29,SR2A;
178 unsigned short CLOCK;
181 struct SiS_VCLKData {
182 unsigned char SR2B,SR2C;
183 unsigned short CLOCK;
186 struct SiS_VBVCLKData {
187 unsigned char Part4_A,Part4_B;
188 unsigned short CLOCK;
191 struct SiS_StResInfo_S {
192 unsigned short HTotal;
193 unsigned short VTotal;
196 struct SiS_ModeResInfo_S {
197 unsigned short HTotal;
198 unsigned short VTotal;
199 unsigned char XChar;
200 unsigned char YChar;
203 /* Defines for SiS_CustomT */
204 /* Never change these for sisfb compatibility */
205 #define CUT_NONE 0
206 #define CUT_FORCENONE 1
207 #define CUT_BARCO1366 2
208 #define CUT_BARCO1024 3
209 #define CUT_COMPAQ1280 4
210 #define CUT_COMPAQ12802 5
211 #define CUT_PANEL848 6
212 #define CUT_CLEVO1024 7
213 #define CUT_CLEVO10242 8
214 #define CUT_CLEVO1400 9
215 #define CUT_CLEVO14002 10
216 #define CUT_UNIWILL1024 11
217 #define CUT_ASUSL3000D 12
218 #define CUT_UNIWILL10242 13
219 #define CUT_ACER1280 14
220 #define CUT_COMPAL1400_1 15
221 #define CUT_COMPAL1400_2 16
222 #define CUT_ASUSA2H_1 17
223 #define CUT_ASUSA2H_2 18
224 #define CUT_UNKNOWNLCD 19
225 #define CUT_AOP8060 20
226 #define CUT_PANEL856 21
228 struct SiS_Private
230 unsigned char ChipType;
231 unsigned char ChipRevision;
232 void *ivideo;
233 unsigned char *VirtualRomBase;
234 bool UseROM;
235 unsigned char SISIOMEMTYPE *VideoMemoryAddress;
236 unsigned int VideoMemorySize;
237 SISIOADDRESS IOAddress;
238 SISIOADDRESS IOAddress2; /* For dual chip XGI volari */
240 SISIOADDRESS RelIO;
241 SISIOADDRESS SiS_P3c4;
242 SISIOADDRESS SiS_P3d4;
243 SISIOADDRESS SiS_P3c0;
244 SISIOADDRESS SiS_P3ce;
245 SISIOADDRESS SiS_P3c2;
246 SISIOADDRESS SiS_P3ca;
247 SISIOADDRESS SiS_P3c6;
248 SISIOADDRESS SiS_P3c7;
249 SISIOADDRESS SiS_P3c8;
250 SISIOADDRESS SiS_P3c9;
251 SISIOADDRESS SiS_P3cb;
252 SISIOADDRESS SiS_P3cc;
253 SISIOADDRESS SiS_P3cd;
254 SISIOADDRESS SiS_P3da;
255 SISIOADDRESS SiS_Part1Port;
256 SISIOADDRESS SiS_Part2Port;
257 SISIOADDRESS SiS_Part3Port;
258 SISIOADDRESS SiS_Part4Port;
259 SISIOADDRESS SiS_Part5Port;
260 SISIOADDRESS SiS_VidCapt;
261 SISIOADDRESS SiS_VidPlay;
262 unsigned short SiS_IF_DEF_LVDS;
263 unsigned short SiS_IF_DEF_CH70xx;
264 unsigned short SiS_IF_DEF_CONEX;
265 unsigned short SiS_IF_DEF_TRUMPION;
266 unsigned short SiS_IF_DEF_DSTN;
267 unsigned short SiS_IF_DEF_FSTN;
268 unsigned short SiS_SysFlags;
269 unsigned char SiS_VGAINFO;
270 bool SiS_UseROM;
271 bool SiS_ROMNew;
272 bool SiS_XGIROM;
273 bool SiS_NeedRomModeData;
274 bool PanelSelfDetected;
275 bool DDCPortMixup;
276 int SiS_CHOverScan;
277 bool SiS_CHSOverScan;
278 bool SiS_ChSW;
279 bool SiS_UseLCDA;
280 int SiS_UseOEM;
281 unsigned int SiS_CustomT;
282 int SiS_UseWide, SiS_UseWideCRT2;
283 int SiS_TVBlue;
284 unsigned short SiS_Backup70xx;
285 bool HaveEMI;
286 bool HaveEMILCD;
287 bool OverruleEMI;
288 unsigned char EMI_30,EMI_31,EMI_32,EMI_33;
289 unsigned short SiS_EMIOffset;
290 unsigned short SiS_PWDOffset;
291 short PDC, PDCA;
292 unsigned char SiS_MyCR63;
293 unsigned short SiS_CRT1Mode;
294 unsigned short SiS_flag_clearbuffer;
295 int SiS_RAMType;
296 unsigned char SiS_ChannelAB;
297 unsigned char SiS_DataBusWidth;
298 unsigned short SiS_ModeType;
299 unsigned short SiS_VBInfo;
300 unsigned short SiS_TVMode;
301 unsigned short SiS_LCDResInfo;
302 unsigned short SiS_LCDTypeInfo;
303 unsigned short SiS_LCDInfo;
304 unsigned short SiS_LCDInfo661;
305 unsigned short SiS_VBType;
306 unsigned short SiS_VBExtInfo;
307 unsigned short SiS_YPbPr;
308 unsigned short SiS_SelectCRT2Rate;
309 unsigned short SiS_SetFlag;
310 unsigned short SiS_RVBHCFACT;
311 unsigned short SiS_RVBHCMAX;
312 unsigned short SiS_RVBHRS;
313 unsigned short SiS_RVBHRS2;
314 unsigned short SiS_VGAVT;
315 unsigned short SiS_VGAHT;
316 unsigned short SiS_VT;
317 unsigned short SiS_HT;
318 unsigned short SiS_VGAVDE;
319 unsigned short SiS_VGAHDE;
320 unsigned short SiS_VDE;
321 unsigned short SiS_HDE;
322 unsigned short SiS_NewFlickerMode;
323 unsigned short SiS_RY1COE;
324 unsigned short SiS_RY2COE;
325 unsigned short SiS_RY3COE;
326 unsigned short SiS_RY4COE;
327 unsigned short SiS_LCDHDES;
328 unsigned short SiS_LCDVDES;
329 SISIOADDRESS SiS_DDC_Port;
330 unsigned short SiS_DDC_Index;
331 unsigned short SiS_DDC_Data;
332 unsigned short SiS_DDC_NData;
333 unsigned short SiS_DDC_Clk;
334 unsigned short SiS_DDC_NClk;
335 unsigned short SiS_DDC_DeviceAddr;
336 unsigned short SiS_DDC_ReadAddr;
337 unsigned short SiS_DDC_SecAddr;
338 unsigned short SiS_ChrontelInit;
339 bool SiS_SensibleSR11;
340 unsigned short SiS661LCD2TableSize;
342 unsigned short SiS_PanelMinLVDS;
343 unsigned short SiS_PanelMin301;
345 const struct SiS_St *SiS_SModeIDTable;
346 const struct SiS_StandTable_S *SiS_StandTable;
347 const struct SiS_Ext *SiS_EModeIDTable;
348 const struct SiS_Ext2 *SiS_RefIndex;
349 const struct SiS_VBMode *SiS_VBModeIDTable;
350 const struct SiS_CRT1Table *SiS_CRT1Table;
351 const struct SiS_MCLKData *SiS_MCLKData_0;
352 const struct SiS_MCLKData *SiS_MCLKData_1;
353 struct SiS_VCLKData *SiS_VCLKData;
354 struct SiS_VBVCLKData *SiS_VBVCLKData;
355 const struct SiS_StResInfo_S *SiS_StResInfo;
356 const struct SiS_ModeResInfo_S *SiS_ModeResInfo;
358 const unsigned char *pSiS_OutputSelect;
359 const unsigned char *pSiS_SoftSetting;
361 const unsigned char *SiS_SR15;
363 const struct SiS_PanelDelayTbl *SiS_PanelDelayTbl;
364 const struct SiS_PanelDelayTbl *SiS_PanelDelayTblLVDS;
366 /* SiS bridge */
368 const struct SiS_LCDData *SiS_ExtLCD1024x768Data;
369 const struct SiS_LCDData *SiS_St2LCD1024x768Data;
370 const struct SiS_LCDData *SiS_LCD1280x720Data;
371 const struct SiS_LCDData *SiS_StLCD1280x768_2Data;
372 const struct SiS_LCDData *SiS_ExtLCD1280x768_2Data;
373 const struct SiS_LCDData *SiS_LCD1280x800Data;
374 const struct SiS_LCDData *SiS_LCD1280x800_2Data;
375 const struct SiS_LCDData *SiS_LCD1280x854Data;
376 const struct SiS_LCDData *SiS_LCD1280x960Data;
377 const struct SiS_LCDData *SiS_ExtLCD1280x1024Data;
378 const struct SiS_LCDData *SiS_St2LCD1280x1024Data;
379 const struct SiS_LCDData *SiS_StLCD1400x1050Data;
380 const struct SiS_LCDData *SiS_ExtLCD1400x1050Data;
381 const struct SiS_LCDData *SiS_StLCD1600x1200Data;
382 const struct SiS_LCDData *SiS_ExtLCD1600x1200Data;
383 const struct SiS_LCDData *SiS_LCD1680x1050Data;
384 const struct SiS_LCDData *SiS_NoScaleData;
385 const struct SiS_TVData *SiS_StPALData;
386 const struct SiS_TVData *SiS_ExtPALData;
387 const struct SiS_TVData *SiS_StNTSCData;
388 const struct SiS_TVData *SiS_ExtNTSCData;
389 const struct SiS_TVData *SiS_St1HiTVData;
390 const struct SiS_TVData *SiS_St2HiTVData;
391 const struct SiS_TVData *SiS_ExtHiTVData;
392 const struct SiS_TVData *SiS_St525iData;
393 const struct SiS_TVData *SiS_St525pData;
394 const struct SiS_TVData *SiS_St750pData;
395 const struct SiS_TVData *SiS_Ext525iData;
396 const struct SiS_TVData *SiS_Ext525pData;
397 const struct SiS_TVData *SiS_Ext750pData;
398 const unsigned char *SiS_NTSCTiming;
399 const unsigned char *SiS_PALTiming;
400 const unsigned char *SiS_HiTVExtTiming;
401 const unsigned char *SiS_HiTVSt1Timing;
402 const unsigned char *SiS_HiTVSt2Timing;
403 const unsigned char *SiS_HiTVGroup3Data;
404 const unsigned char *SiS_HiTVGroup3Simu;
405 #if 0
406 const unsigned char *SiS_HiTVTextTiming;
407 const unsigned char *SiS_HiTVGroup3Text;
408 #endif
410 const struct SiS_Part2PortTbl *SiS_CRT2Part2_1024x768_1;
411 const struct SiS_Part2PortTbl *SiS_CRT2Part2_1024x768_2;
412 const struct SiS_Part2PortTbl *SiS_CRT2Part2_1024x768_3;
414 /* LVDS, Chrontel */
416 const struct SiS_LVDSData *SiS_LVDS320x240Data_1;
417 const struct SiS_LVDSData *SiS_LVDS320x240Data_2;
418 const struct SiS_LVDSData *SiS_LVDS640x480Data_1;
419 const struct SiS_LVDSData *SiS_LVDS800x600Data_1;
420 const struct SiS_LVDSData *SiS_LVDS1024x600Data_1;
421 const struct SiS_LVDSData *SiS_LVDS1024x768Data_1;
422 const struct SiS_LVDSData *SiS_LVDSBARCO1366Data_1;
423 const struct SiS_LVDSData *SiS_LVDSBARCO1366Data_2;
424 const struct SiS_LVDSData *SiS_LVDSBARCO1024Data_1;
425 const struct SiS_LVDSData *SiS_LVDS848x480Data_1;
426 const struct SiS_LVDSData *SiS_LVDS848x480Data_2;
427 const struct SiS_LVDSData *SiS_CHTVUNTSCData;
428 const struct SiS_LVDSData *SiS_CHTVONTSCData;
429 const struct SiS_LVDSData *SiS_CHTVUPALData;
430 const struct SiS_LVDSData *SiS_CHTVOPALData;
431 const struct SiS_LVDSData *SiS_CHTVUPALMData;
432 const struct SiS_LVDSData *SiS_CHTVOPALMData;
433 const struct SiS_LVDSData *SiS_CHTVUPALNData;
434 const struct SiS_LVDSData *SiS_CHTVOPALNData;
435 const struct SiS_LVDSData *SiS_CHTVSOPALData;
437 const struct SiS_LVDSDes *SiS_PanelType04_1a;
438 const struct SiS_LVDSDes *SiS_PanelType04_2a;
439 const struct SiS_LVDSDes *SiS_PanelType04_1b;
440 const struct SiS_LVDSDes *SiS_PanelType04_2b;
442 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1320x240_1;
443 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1320x240_2;
444 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1320x240_2_H;
445 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1320x240_3;
446 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1320x240_3_H;
447 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1640x480_1;
448 const struct SiS_LVDSCRT1Data *SiS_LVDSCRT1640x480_1_H;
449 const struct SiS_LVDSCRT1Data *SiS_CHTVCRT1UNTSC;
450 const struct SiS_LVDSCRT1Data *SiS_CHTVCRT1ONTSC;
451 const struct SiS_LVDSCRT1Data *SiS_CHTVCRT1UPAL;
452 const struct SiS_LVDSCRT1Data *SiS_CHTVCRT1OPAL;
453 const struct SiS_LVDSCRT1Data *SiS_CHTVCRT1SOPAL;
455 const struct SiS_CHTVRegData *SiS_CHTVReg_UNTSC;
456 const struct SiS_CHTVRegData *SiS_CHTVReg_ONTSC;
457 const struct SiS_CHTVRegData *SiS_CHTVReg_UPAL;
458 const struct SiS_CHTVRegData *SiS_CHTVReg_OPAL;
459 const struct SiS_CHTVRegData *SiS_CHTVReg_UPALM;
460 const struct SiS_CHTVRegData *SiS_CHTVReg_OPALM;
461 const struct SiS_CHTVRegData *SiS_CHTVReg_UPALN;
462 const struct SiS_CHTVRegData *SiS_CHTVReg_OPALN;
463 const struct SiS_CHTVRegData *SiS_CHTVReg_SOPAL;
465 const unsigned char *SiS_CHTVVCLKUNTSC;
466 const unsigned char *SiS_CHTVVCLKONTSC;
467 const unsigned char *SiS_CHTVVCLKUPAL;
468 const unsigned char *SiS_CHTVVCLKOPAL;
469 const unsigned char *SiS_CHTVVCLKUPALM;
470 const unsigned char *SiS_CHTVVCLKOPALM;
471 const unsigned char *SiS_CHTVVCLKUPALN;
472 const unsigned char *SiS_CHTVVCLKOPALN;
473 const unsigned char *SiS_CHTVVCLKSOPAL;
475 unsigned short PanelXRes, PanelHT;
476 unsigned short PanelYRes, PanelVT;
477 unsigned short PanelHRS, PanelHRE;
478 unsigned short PanelVRS, PanelVRE;
479 unsigned short PanelVCLKIdx300;
480 unsigned short PanelVCLKIdx315;
481 bool Alternate1600x1200;
483 bool UseCustomMode;
484 bool CRT1UsesCustomMode;
485 unsigned short CHDisplay;
486 unsigned short CHSyncStart;
487 unsigned short CHSyncEnd;
488 unsigned short CHTotal;
489 unsigned short CHBlankStart;
490 unsigned short CHBlankEnd;
491 unsigned short CVDisplay;
492 unsigned short CVSyncStart;
493 unsigned short CVSyncEnd;
494 unsigned short CVTotal;
495 unsigned short CVBlankStart;
496 unsigned short CVBlankEnd;
497 unsigned int CDClock;
498 unsigned int CFlags;
499 unsigned char CCRT1CRTC[17];
500 unsigned char CSR2B;
501 unsigned char CSR2C;
502 unsigned short CSRClock;
503 unsigned short CSRClock_CRT1;
504 unsigned short CModeFlag;
505 unsigned short CModeFlag_CRT1;
506 unsigned short CInfoFlag;
508 int LVDSHL;
510 bool Backup;
511 unsigned char Backup_Mode;
512 unsigned char Backup_14;
513 unsigned char Backup_15;
514 unsigned char Backup_16;
515 unsigned char Backup_17;
516 unsigned char Backup_18;
517 unsigned char Backup_19;
518 unsigned char Backup_1a;
519 unsigned char Backup_1b;
520 unsigned char Backup_1c;
521 unsigned char Backup_1d;
523 unsigned char Init_P4_0E;
525 int UsePanelScaler;
526 int CenterScreen;
528 unsigned short CP_Vendor, CP_Product;
529 bool CP_HaveCustomData;
530 int CP_PreferredX, CP_PreferredY, CP_PreferredIndex;
531 int CP_MaxX, CP_MaxY, CP_MaxClock;
532 unsigned char CP_PrefSR2B, CP_PrefSR2C;
533 unsigned short CP_PrefClock;
534 bool CP_Supports64048075;
535 int CP_HDisplay[7], CP_VDisplay[7]; /* For Custom LCD panel dimensions */
536 int CP_HTotal[7], CP_VTotal[7];
537 int CP_HSyncStart[7], CP_VSyncStart[7];
538 int CP_HSyncEnd[7], CP_VSyncEnd[7];
539 int CP_HBlankStart[7], CP_VBlankStart[7];
540 int CP_HBlankEnd[7], CP_VBlankEnd[7];
541 int CP_Clock[7];
542 bool CP_DataValid[7];
543 bool CP_HSync_P[7], CP_VSync_P[7], CP_SyncValid[7];
546 #endif