annotate vidix/sis_defs.h @ 25317:7f3cb5408f28

Fixed VIDIX color bug that was introduced when Radeon VIDIX driver was synchronized with vidix.sf.net. The red color was saturating. Corrected value fixes the issue and restore the color to the level it used to have before synchronization. Meaning of the value remains unknow but was retrieved from register's value of a Radeon 9000 card, so it may need further testing. Patch by Guillaume Lecerf (foxcore at gmail dot com)
author ben
date Mon, 10 Dec 2007 19:27:46 +0000
parents 109c80c869ac
children a93e46adb54c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23074
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
1 /*
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
2 * SiS graphics misc definitions
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
3 *
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
4 * Taken from SiS Xv driver:
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
5 * Copyright (C) 2002-2003 by Thomas Winischhofer, Vienna, Austria
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
6 *
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
7 * This file is part of MPlayer.
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
8 *
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
9 * MPlayer is free software; you can redistribute it and/or modify
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
10 * it under the terms of the GNU General Public License as published by
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
12 * (at your option) any later version.
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
13 *
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
14 * MPlayer is distributed in the hope that it will be useful,
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
17 * GNU General Public License for more details.
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
18 *
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
19 * You should have received a copy of the GNU General Public License
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
20 * along with MPlayer; if not, write to the Free Software
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
109c80c869ac Use standard GPL header.
diego
parents: 22867
diff changeset
22 */
22850
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
23
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
24 #ifndef VIDIX_SIS_DEFS_H
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
25 #define VIDIX_SIS_DEFS_H
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
26
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
27 /** PCI IDs **/
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
28 #define VENDOR_SIS 0x1039
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
29
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
30 #define DEVICE_SIS_300 0x0300
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
31 #define DEVICE_SIS_315H 0x0310
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
32 #define DEVICE_SIS_315 0x0315
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
33 #define DEVICE_SIS_315PRO 0x0325
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
34 #define DEVICE_SIS_330 0x0330
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
35 #define DEVICE_SIS_540 0x0540
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
36 #define DEVICE_SIS_540_VGA 0x5300
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
37 #define DEVICE_SIS_550 0x0550
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
38 #define DEVICE_SIS_550_VGA 0x5315
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
39 #define DEVICE_SIS_630 0x0630
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
40 #define DEVICE_SIS_630_VGA 0x6300
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
41 #define DEVICE_SIS_650 0x0650
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
42 #define DEVICE_SIS_650_VGA 0x6325
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
43 #define DEVICE_SIS_730 0x0730
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
44
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
45
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
46 /* TW: VBFlags */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
47 #define CRT2_DEFAULT 0x00000001
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
48 #define CRT2_LCD 0x00000002 /* TW: Never change the order of the CRT2_XXX entries */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
49 #define CRT2_TV 0x00000004 /* (see SISCycleCRT2Type()) */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
50 #define CRT2_VGA 0x00000008
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
51 #define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA)
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
52 #define DISPTYPE_DISP2 CRT2_ENABLE
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
53 #define TV_NTSC 0x00000010
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
54 #define TV_PAL 0x00000020
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
55 #define TV_HIVISION 0x00000040
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
56 #define TV_HIVISION_LV 0x00000080
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
57 #define TV_TYPE (TV_NTSC | TV_PAL | TV_HIVISION | TV_HIVISION_LV)
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
58 #define TV_AVIDEO 0x00000100
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
59 #define TV_SVIDEO 0x00000200
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
60 #define TV_SCART 0x00000400
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
61 #define TV_INTERFACE (TV_AVIDEO | TV_SVIDEO | TV_SCART | TV_CHSCART | TV_CHHDTV)
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
62 #define VB_USELCDA 0x00000800
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
63 #define TV_PALM 0x00001000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
64 #define TV_PALN 0x00002000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
65 #define TV_CHSCART 0x00008000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
66 #define TV_CHHDTV 0x00010000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
67 #define VGA2_CONNECTED 0x00040000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
68 #define DISPTYPE_CRT1 0x00080000 /* TW: CRT1 connected and used */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
69 #define DISPTYPE_DISP1 DISPTYPE_CRT1
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
70 #define VB_301 0x00100000 /* Video bridge type */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
71 #define VB_301B 0x00200000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
72 #define VB_302B 0x00400000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
73 #define VB_30xBDH 0x00800000 /* 30xB DH version (w/o LCD support) */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
74 #define VB_LVDS 0x01000000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
75 #define VB_CHRONTEL 0x02000000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
76 #define VB_301LV 0x04000000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
77 #define VB_302LV 0x08000000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
78 #define VB_30xLV VB_301LV
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
79 #define VB_30xLVX VB_302LV
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
80 #define VB_TRUMPION 0x10000000
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
81 #define VB_VIDEOBRIDGE (VB_301|VB_301B|VB_302B|VB_301LV|VB_302LV| \
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
82 VB_LVDS|VB_CHRONTEL|VB_TRUMPION) /* TW */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
83 #define VB_SISBRIDGE (VB_301|VB_301B|VB_302B|VB_301LV|VB_302LV)
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
84 #define SINGLE_MODE 0x20000000 /* TW: CRT1 or CRT2; determined by DISPTYPE_CRTx */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
85 #define VB_DISPMODE_SINGLE SINGLE_MODE /* TW: alias */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
86 #define MIRROR_MODE 0x40000000 /* TW: CRT1 + CRT2 identical (mirror mode) */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
87 #define VB_DISPMODE_MIRROR MIRROR_MODE /* TW: alias */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
88 #define DUALVIEW_MODE 0x80000000 /* TW: CRT1 + CRT2 independent (dual head mode) */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
89 #define VB_DISPMODE_DUAL DUALVIEW_MODE /* TW: alias */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
90 #define DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE) /* TW */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
91
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
92 /* SiS vga engine type */
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
93 #define UNKNOWN_VGA 0
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
94 #define SIS_300_VGA 1
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
95 #define SIS_315_VGA 2
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
96
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
97 extern unsigned int sis_verbose;
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
98 extern unsigned short sis_iobase;
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
99 extern unsigned int sis_vga_engine;
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
100 extern unsigned int sis_vbflags;
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
101 extern unsigned int sis_overlay_on_crt1;
22867
d76307ffcb77 killed warnings in sis driver
ben
parents: 22850
diff changeset
102 extern int sis_crt1_off;
22850
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
103 extern unsigned int sis_detected_crt2_devices;
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
104 extern unsigned int sis_force_crt2_type;
22867
d76307ffcb77 killed warnings in sis driver
ben
parents: 22850
diff changeset
105 extern int sis_device_id;
22850
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
106
9a1e26fef45b Move driver files directly into the vidix directory.
diego
parents:
diff changeset
107 #endif /* VIDIX_SIS_DEFS_H */