ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/include/video_defs.h
Revision: 1.7
Committed: 2001-06-28T21:20:01Z (23 years ago) by cebix
Content type: text/plain
Branch: MAIN
Changes since 1.6: +31 -7 lines
Log Message:
video_x.cpp supports resolution switching in windowed mode: the available
resolutions are 512x384, 640x480, 800x600, 1024x768 and 1280x1024 (the prefs
editor has to be updated to reflect this). The resolution selected in the
prefs editor is used as the default, but it can be changed in the Monitors
control panel. So far only tested with direct addressing.

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 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 cscSetClutBehavior = 28
44 };
45
46 // Video driver status codes
47 enum {
48 cscGetMode = 2,
49 cscGetEntries = 3,
50 cscGetPages = 4,
51 cscGetBaseAddress = 5,
52 cscGetGray = 6,
53 cscGetInterrupt = 7,
54 cscGetGamma = 8,
55 cscGetDefaultMode = 9,
56 cscGetCurrentMode = 10,
57 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 };
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 enum { // VDDisplayConnectInfo struct
92 csDisplayType = 0,
93 csConnectTaggedType = 2,
94 csConnectTaggedData = 3,
95 csConnectFlags = 4,
96 csDisplayComponent = 8,
97 csConnectReserved = 12
98 };
99
100 enum { // VDTimingInfo struct
101 csTimingMode = 0,
102 csTimingReserved = 4,
103 csTimingFormat = 8,
104 csTimingData = 12,
105 csTimingFlags = 16
106 };
107
108 enum { // VDResolutionInfo struct
109 csPreviousDisplayModeID = 0,
110 csRIDisplayModeID = 4,
111 csHorizontalPixels = 8,
112 csVerticalLines = 12,
113 csRefreshRate = 16,
114 csMaxDepthMode = 20,
115 csResolutionFlags = 22
116 };
117
118 enum { // VDVideoParametersInfo struct
119 csDisplayModeID = 0,
120 csDepthMode = 4,
121 csVPBlockPtr = 6,
122 csPageCount = 10,
123 csDeviceType = 14
124 };
125
126 enum { // VPBlock struct
127 vpBaseOffset = 0,
128 vpRowBytes = 4,
129 vpBounds = 6,
130 vpVersion = 14,
131 vpPackType = 16,
132 vpPackSize = 18,
133 vpHRes = 22,
134 vpVRes = 26,
135 vpPixelType = 30,
136 vpPixelSize = 32,
137 vpCmpCount = 34,
138 vpCmpSize = 36,
139 vpPlaneBytes = 38
140 };
141
142 enum { // SPBlock struct
143 spResult = 0,
144 spPointer = 4,
145 spSize = 8,
146 spOffsetData = 12,
147 spIOFileName = 16,
148 spExecPBlk = 20,
149 spParamData = 24,
150 spMisc = 28,
151 spReserved = 32,
152 spIOReserved = 36,
153 spRefNum = 38,
154 spCategory = 40,
155 spCType = 42,
156 spDrvrSW = 44,
157 spDrvrHW = 46,
158 spTBMask = 48,
159 spSlot = 49,
160 spID = 50,
161 spExtDev = 51,
162 spHwDev = 52,
163 spByteLanes = 53,
164 spFlags = 54,
165 spKey = 55,
166 SIZEOF_SPBlock = 56
167 };
168
169 #endif