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 (22 years, 11 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

# Content
1 /*
2 * video_defs.h - Definitions for MacOS video drivers
3 *
4 * Basilisk II (C) 1997-2001 Christian Bauer
5 *
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 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 cscUnusedCall = 127
47 };
48
49 // Video driver status codes
50 enum {
51 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 };
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 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
121 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 };
144
145 #endif