ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/include/video_defs.h
Revision: 1.8
Committed: 2001-06-30T17:21:55Z (23 years, 5 months ago) by cebix
Content type: text/plain
Branch: MAIN
Changes since 1.7: +15 -0 lines
Log Message:
- experimental gamma table support
- restructured video_x.cpp: uses classes for display types

File Contents

# User Rev Content
1 cebix 1.1 /*
2     * video_defs.h - Definitions for MacOS video drivers
3     *
4 cebix 1.5 * Basilisk II (C) 1997-2001 Christian Bauer
5 cebix 1.1 *
6     * This program is free software; you can redistribute it and/or modify
7     * it under the terms of the GNU General Public License as published by
8     * the Free Software Foundation; either version 2 of the License, or
9     * (at your option) any later version.
10     *
11     * This program is distributed in the hope that it will be useful,
12     * but WITHOUT ANY WARRANTY; without even the implied warranty of
13     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     * GNU General Public License for more details.
15     *
16     * You should have received a copy of the GNU General Public License
17     * along with this program; if not, write to the Free Software
18     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19     */
20    
21     #ifndef VIDEO_DEFS_H
22     #define VIDEO_DEFS_H
23    
24     // Video driver control codes
25     enum {
26 cebix 1.4 cscSetMode = 2,
27     cscSetEntries = 3,
28     cscSetGamma = 4,
29     cscGrayPage = 5,
30     cscSetGray = 6,
31     cscSetInterrupt = 7,
32     cscDirectSetEntries = 8,
33     cscSetDefaultMode = 9,
34     cscSwitchMode = 10,
35     cscSetSync = 11,
36     cscSavePreferredConfiguration = 16,
37     cscSetHardwareCursor = 22,
38     cscDrawHardwareCursor = 23,
39     cscSetConvolution = 24,
40     cscSetPowerState = 25,
41     cscPrivateControlCall = 26,
42     cscSetMultiConnect = 27,
43 cebix 1.7 cscSetClutBehavior = 28
44 cebix 1.1 };
45    
46     // Video driver status codes
47     enum {
48 cebix 1.4 cscGetMode = 2,
49     cscGetEntries = 3,
50 cebix 1.7 cscGetPages = 4,
51     cscGetBaseAddress = 5,
52 cebix 1.4 cscGetGray = 6,
53     cscGetInterrupt = 7,
54     cscGetGamma = 8,
55     cscGetDefaultMode = 9,
56 cebix 1.7 cscGetCurrentMode = 10,
57 cebix 1.4 cscGetSync = 11,
58     cscGetConnection = 12,
59     cscGetModeTiming = 13,
60     cscGetModeBaseAddress = 14,
61     cscGetScanProc = 15,
62     cscGetPreferredConfiguration = 16,
63     cscGetNextResolution = 17,
64     cscGetVideoParameters = 18,
65     cscGetGammaInfoList = 20,
66     cscRetrieveGammaTable = 21,
67     cscSupportsHardwareCursor = 22,
68     cscGetHardwareCursorDrawState = 23,
69     cscGetConvolution = 24,
70     cscGetPowerState = 25,
71     cscPrivateStatusCall = 26,
72     cscGetDDCBlock = 27,
73     cscGetMultiConnect = 28,
74     cscGetClutBehavior = 29
75 cebix 1.1 };
76    
77     enum { // VDSwitchInfo struct
78     csMode = 0,
79     csData = 2,
80     csPage = 6,
81     csBaseAddr = 8,
82     csReserved = 12
83     };
84    
85     enum { // VDSetEntry struct
86     csTable = 0,
87     csStart = 4,
88     csCount = 6
89     };
90    
91 cebix 1.8 enum { // VDGammaRecord
92     csGTable = 0
93     };
94    
95 cebix 1.1 enum { // VDDisplayConnectInfo struct
96     csDisplayType = 0,
97     csConnectTaggedType = 2,
98     csConnectTaggedData = 3,
99     csConnectFlags = 4,
100     csDisplayComponent = 8,
101     csConnectReserved = 12
102     };
103    
104     enum { // VDTimingInfo struct
105     csTimingMode = 0,
106     csTimingReserved = 4,
107     csTimingFormat = 8,
108     csTimingData = 12,
109     csTimingFlags = 16
110     };
111    
112 cebix 1.6 enum { // VDResolutionInfo struct
113     csPreviousDisplayModeID = 0,
114     csRIDisplayModeID = 4,
115     csHorizontalPixels = 8,
116     csVerticalLines = 12,
117     csRefreshRate = 16,
118     csMaxDepthMode = 20,
119     csResolutionFlags = 22
120     };
121 jlachmann 1.3
122 cebix 1.6 enum { // VDVideoParametersInfo struct
123     csDisplayModeID = 0,
124     csDepthMode = 4,
125     csVPBlockPtr = 6,
126     csPageCount = 10,
127     csDeviceType = 14
128     };
129    
130     enum { // VPBlock struct
131     vpBaseOffset = 0,
132     vpRowBytes = 4,
133     vpBounds = 6,
134     vpVersion = 14,
135     vpPackType = 16,
136     vpPackSize = 18,
137     vpHRes = 22,
138     vpVRes = 26,
139     vpPixelType = 30,
140     vpPixelSize = 32,
141     vpCmpCount = 34,
142     vpCmpSize = 36,
143     vpPlaneBytes = 38
144 cebix 1.7 };
145    
146     enum { // SPBlock struct
147     spResult = 0,
148     spPointer = 4,
149     spSize = 8,
150     spOffsetData = 12,
151     spIOFileName = 16,
152     spExecPBlk = 20,
153     spParamData = 24,
154     spMisc = 28,
155     spReserved = 32,
156     spIOReserved = 36,
157     spRefNum = 38,
158     spCategory = 40,
159     spCType = 42,
160     spDrvrSW = 44,
161     spDrvrHW = 46,
162     spTBMask = 48,
163     spSlot = 49,
164     spID = 50,
165     spExtDev = 51,
166     spHwDev = 52,
167     spByteLanes = 53,
168     spFlags = 54,
169     spKey = 55,
170     SIZEOF_SPBlock = 56
171 cebix 1.8 };
172    
173     enum { // struct GammaTbl
174     gVersion = 0,
175     gType = 2,
176     gFormulaSize = 4,
177     gChanCnt = 6,
178     gDataCnt = 8,
179     gDataWidth = 10,
180     gFormulaData = 12, // variable size
181     SIZEOF_GammaTbl = 12
182 jlachmann 1.3 };
183    
184 cebix 1.1 #endif