ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/include/video_defs.h
Revision: 1.6
Committed: 2001-06-27T19:03:38Z (23 years, 5 months ago) by cebix
Content type: text/plain
Branch: MAIN
Changes since 1.5: +31 -5 lines
Log Message:
added infrastructure for resolution/depth switching (currently, all video
drivers only support one mode, the one selected by the user)

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 cscReset = 0,
27     cscKillIO = 1,
28     cscSetMode = 2,
29     cscSetEntries = 3,
30     cscSetGamma = 4,
31     cscGrayPage = 5,
32     cscSetGray = 6,
33     cscSetInterrupt = 7,
34     cscDirectSetEntries = 8,
35     cscSetDefaultMode = 9,
36     cscSwitchMode = 10,
37     cscSetSync = 11,
38     cscSavePreferredConfiguration = 16,
39     cscSetHardwareCursor = 22,
40     cscDrawHardwareCursor = 23,
41     cscSetConvolution = 24,
42     cscSetPowerState = 25,
43     cscPrivateControlCall = 26,
44     cscSetMultiConnect = 27,
45     cscSetClutBehavior = 28,
46 cebix 1.1 cscUnusedCall = 127
47     };
48    
49     // Video driver status codes
50     enum {
51 cebix 1.4 cscGetMode = 2,
52     cscGetEntries = 3,
53     cscGetPageCnt = 4,
54     cscGetPageBase = 5,
55     cscGetGray = 6,
56     cscGetInterrupt = 7,
57     cscGetGamma = 8,
58     cscGetDefaultMode = 9,
59     cscGetCurMode = 10,
60     cscGetSync = 11,
61     cscGetConnection = 12,
62     cscGetModeTiming = 13,
63     cscGetModeBaseAddress = 14,
64     cscGetScanProc = 15,
65     cscGetPreferredConfiguration = 16,
66     cscGetNextResolution = 17,
67     cscGetVideoParameters = 18,
68     cscGetGammaInfoList = 20,
69     cscRetrieveGammaTable = 21,
70     cscSupportsHardwareCursor = 22,
71     cscGetHardwareCursorDrawState = 23,
72     cscGetConvolution = 24,
73     cscGetPowerState = 25,
74     cscPrivateStatusCall = 26,
75     cscGetDDCBlock = 27,
76     cscGetMultiConnect = 28,
77     cscGetClutBehavior = 29
78 cebix 1.1 };
79    
80     enum { // VDSwitchInfo struct
81     csMode = 0,
82     csData = 2,
83     csPage = 6,
84     csBaseAddr = 8,
85     csReserved = 12
86     };
87    
88     enum { // VDSetEntry struct
89     csTable = 0,
90     csStart = 4,
91     csCount = 6
92     };
93    
94     enum { // VDDisplayConnectInfo struct
95     csDisplayType = 0,
96     csConnectTaggedType = 2,
97     csConnectTaggedData = 3,
98     csConnectFlags = 4,
99     csDisplayComponent = 8,
100     csConnectReserved = 12
101     };
102    
103     enum { // VDTimingInfo struct
104     csTimingMode = 0,
105     csTimingReserved = 4,
106     csTimingFormat = 8,
107     csTimingData = 12,
108     csTimingFlags = 16
109     };
110    
111 cebix 1.6 enum { // VDResolutionInfo struct
112     csPreviousDisplayModeID = 0,
113     csRIDisplayModeID = 4,
114     csHorizontalPixels = 8,
115     csVerticalLines = 12,
116     csRefreshRate = 16,
117     csMaxDepthMode = 20,
118     csResolutionFlags = 22
119     };
120 jlachmann 1.3
121 cebix 1.6 enum { // VDVideoParametersInfo struct
122     csDisplayModeID = 0,
123     csDepthMode = 4,
124     csVPBlockPtr = 6,
125     csPageCount = 10,
126     csDeviceType = 14
127     };
128    
129     enum { // VPBlock struct
130     vpBaseOffset = 0,
131     vpRowBytes = 4,
132     vpBounds = 6,
133     vpVersion = 14,
134     vpPackType = 16,
135     vpPackSize = 18,
136     vpHRes = 22,
137     vpVRes = 26,
138     vpPixelType = 30,
139     vpPixelSize = 32,
140     vpCmpCount = 34,
141     vpCmpSize = 36,
142     vpPlaneBytes = 38
143 jlachmann 1.3 };
144    
145 cebix 1.1 #endif