VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/DevVGAModes.h@ 2477

Last change on this file since 2477 was 1, checked in by vboxsync, 55 years ago

import

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 60.1 KB
Line 
1/** @file
2 *
3 * VBox VGA/VESA device:
4 * List of static mode information, containing all "supported" VBE
5 * modes and their 'settings'
6 */
7
8/*
9 * Copyright (C) 2006 InnoTek Systemberatung GmbH
10 *
11 * This file is part of VirtualBox Open Source Edition (OSE), as
12 * available from http://www.virtualbox.org. This file is free software;
13 * you can redistribute it and/or modify it under the terms of the GNU
14 * General Public License as published by the Free Software Foundation,
15 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
16 * distribution. VirtualBox OSE is distributed in the hope that it will
17 * be useful, but WITHOUT ANY WARRANTY of any kind.
18 *
19 * If you received this file as part of a commercial VirtualBox
20 * distribution, then only the terms of your commercial VirtualBox
21 * license agreement apply instead of the previous paragraph.
22 */
23
24#ifdef VBE_NEW_DYN_LIST
25
26/* VBE Mode Numbers */
27#define VBE_MODE_VESA_DEFINED 0x0100
28#define VBE_MODE_REFRESH_RATE_USE_CRTC 0x0800
29#define VBE_MODE_LINEAR_FRAME_BUFFER 0x4000
30#define VBE_MODE_PRESERVE_DISPLAY_MEMORY 0x8000
31
32/* VBE GFX Mode Number */
33#define VBE_VESA_MODE_640X400X8 0x100
34#define VBE_VESA_MODE_640X480X8 0x101
35#define VBE_VESA_MODE_800X600X4 0x102
36#define VBE_VESA_MODE_800X600X8 0x103
37#define VBE_VESA_MODE_1024X768X4 0x104
38#define VBE_VESA_MODE_1024X768X8 0x105
39#define VBE_VESA_MODE_1280X1024X4 0x106
40#define VBE_VESA_MODE_1280X1024X8 0x107
41#define VBE_VESA_MODE_320X200X1555 0x10D
42#define VBE_VESA_MODE_320X200X565 0x10E
43#define VBE_VESA_MODE_320X200X888 0x10F
44#define VBE_VESA_MODE_640X480X1555 0x110
45#define VBE_VESA_MODE_640X480X565 0x111
46#define VBE_VESA_MODE_640X480X888 0x112
47#define VBE_VESA_MODE_800X600X1555 0x113
48#define VBE_VESA_MODE_800X600X565 0x114
49#define VBE_VESA_MODE_800X600X888 0x115
50#define VBE_VESA_MODE_1024X768X1555 0x116
51#define VBE_VESA_MODE_1024X768X565 0x117
52#define VBE_VESA_MODE_1024X768X888 0x118
53#define VBE_VESA_MODE_1280X1024X1555 0x119
54#define VBE_VESA_MODE_1280X1024X565 0x11A
55#define VBE_VESA_MODE_1280X1024X888 0x11B
56
57/* BOCHS/PLEX86 'own' mode numbers */
58#define VBE_OWN_MODE_320X200X8888 0x120
59#define VBE_OWN_MODE_640X400X8888 0x121
60#define VBE_OWN_MODE_640X480X8888 0x122
61#define VBE_OWN_MODE_800X600X8888 0x123
62#define VBE_OWN_MODE_1024X768X8888 0x124
63#define VBE_OWN_MODE_1280X1024X8888 0x125
64#define VBE_OWN_MODE_320X200X8 0x126
65
66#define VBE_VESA_MODE_END_OF_LIST 0xFFFF
67
68/* Capabilities */
69#define VBE_CAPABILITY_8BIT_DAC 0x0001
70#define VBE_CAPABILITY_NOT_VGA_COMPATIBLE 0x0002
71#define VBE_CAPABILITY_RAMDAC_USE_BLANK_BIT 0x0004
72#define VBE_CAPABILITY_STEREOSCOPIC_SUPPORT 0x0008
73#define VBE_CAPABILITY_STEREO_VIA_VESA_EVC 0x0010
74
75/* Mode Attributes */
76#define VBE_MODE_ATTRIBUTE_SUPPORTED 0x0001
77#define VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE 0x0002
78#define VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT 0x0004
79#define VBE_MODE_ATTRIBUTE_COLOR_MODE 0x0008
80#define VBE_MODE_ATTRIBUTE_GRAPHICS_MODE 0x0010
81#define VBE_MODE_ATTRIBUTE_NOT_VGA_COMPATIBLE 0x0020
82#define VBE_MODE_ATTRIBUTE_NO_VGA_COMPATIBLE_WINDOW 0x0040
83#define VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE 0x0080
84#define VBE_MODE_ATTRIBUTE_DOUBLE_SCAN_MODE 0x0100
85#define VBE_MODE_ATTRIBUTE_INTERLACE_MODE 0x0200
86#define VBE_MODE_ATTRIBUTE_HARDWARE_TRIPLE_BUFFER 0x0400
87#define VBE_MODE_ATTRIBUTE_HARDWARE_STEREOSCOPIC_DISPLAY 0x0800
88#define VBE_MODE_ATTRIBUTE_DUAL_DISPLAY_START_ADDRESS 0x1000
89
90#define VBE_MODE_ATTTRIBUTE_LFB_ONLY ( VBE_MODE_ATTRIBUTE_NO_VGA_COMPATIBLE_WINDOW | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE )
91
92/* Window attributes */
93#define VBE_WINDOW_ATTRIBUTE_RELOCATABLE 0x01
94#define VBE_WINDOW_ATTRIBUTE_READABLE 0x02
95#define VBE_WINDOW_ATTRIBUTE_WRITEABLE 0x04
96
97/* Memory model */
98#define VBE_MEMORYMODEL_TEXT_MODE 0x00
99#define VBE_MEMORYMODEL_CGA_GRAPHICS 0x01
100#define VBE_MEMORYMODEL_HERCULES_GRAPHICS 0x02
101#define VBE_MEMORYMODEL_PLANAR 0x03
102#define VBE_MEMORYMODEL_PACKED_PIXEL 0x04
103#define VBE_MEMORYMODEL_NON_CHAIN_4_256 0x05
104#define VBE_MEMORYMODEL_DIRECT_COLOR 0x06
105#define VBE_MEMORYMODEL_YUV 0x07
106
107/* DirectColorModeInfo */
108#define VBE_DIRECTCOLOR_COLOR_RAMP_PROGRAMMABLE 0x01
109#define VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE 0x02
110
111/* Video memory */
112#define VGAMEM_GRAPH 0xA000
113#define VBE_DISPI_BANK_SIZE_KB 64
114#define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000
115
116/*
117 * This one is for compactly storing a list of mode info blocks
118 */
119#pragma pack(1) /* pack(1) is important! (you'll get a byte extra for each of the u8 fields elsewise...) */
120typedef struct ModeInfoBlockCompact
121{
122 /* Mandatory information for all VBE revisions */
123 uint16_t ModeAttributes;
124 uint8_t WinAAttributes;
125 uint8_t WinBAttributes;
126 uint16_t WinGranularity;
127 uint16_t WinSize;
128 uint16_t WinASegment;
129 uint16_t WinBSegment;
130 uint32_t WinFuncPtr;
131 uint16_t BytesPerScanLine;
132 /* Mandatory information for VBE 1.2 and above */
133 uint16_t XResolution;
134 uint16_t YResolution;
135 uint8_t XCharSize;
136 uint8_t YCharSize;
137 uint8_t NumberOfPlanes;
138 uint8_t BitsPerPixel;
139 uint8_t NumberOfBanks;
140 uint8_t MemoryModel;
141 uint8_t BankSize;
142 uint8_t NumberOfImagePages;
143 uint8_t Reserved_page;
144 /* Direct Color fields (required for direct/6 and YUV/7 memory models) */
145 uint8_t RedMaskSize;
146 uint8_t RedFieldPosition;
147 uint8_t GreenMaskSize;
148 uint8_t GreenFieldPosition;
149 uint8_t BlueMaskSize;
150 uint8_t BlueFieldPosition;
151 uint8_t RsvdMaskSize;
152 uint8_t RsvdFieldPosition;
153 uint8_t DirectColorModeInfo;
154 /* Mandatory information for VBE 2.0 and above */
155 uint32_t PhysBasePtr;
156 uint32_t OffScreenMemOffset;
157 uint16_t OffScreenMemSize;
158 /* Mandatory information for VBE 3.0 and above */
159 uint16_t LinBytesPerScanLine;
160 uint8_t BnkNumberOfPages;
161 uint8_t LinNumberOfPages;
162 uint8_t LinRedMaskSize;
163 uint8_t LinRedFieldPosition;
164 uint8_t LinGreenMaskSize;
165 uint8_t LinGreenFieldPosition;
166 uint8_t LinBlueMaskSize;
167 uint8_t LinBlueFieldPosition;
168 uint8_t LinRsvdMaskSize;
169 uint8_t LinRsvdFieldPosition;
170 uint32_t MaxPixelClock;
171} ModeInfoBlockCompact;
172
173#pragma pack()
174
175
176typedef struct ModeInfoListItem
177{
178 uint16_t mode;
179 ModeInfoBlockCompact info;
180} ModeInfoListItem;
181
182
183static ModeInfoListItem mode_info_list[]=
184{
185 {
186 VBE_VESA_MODE_640X400X8,
187 {
188/*typedef struct ModeInfoBlock
189{*/
190/* Mandatory information for all VBE revisions */
191 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
192 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
193 VBE_MODE_ATTRIBUTE_COLOR_MODE |
194 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
195 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
196 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
197 VBE_WINDOW_ATTRIBUTE_READABLE |
198 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
199 /*Bit8u WinBAttributes*/ 0,
200 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
201 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
202 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
203 /*Bit16u WinBSegment*/ 0,
204 /*Bit32u WinFuncPtr*/ 0,
205 /*Bit16u BytesPerScanLine*/ 640,
206/* Mandatory information for VBE 1.2 and above */
207 /*Bit16u XResolution*/ 640,
208 /*Bit16u YResolution*/ 400,
209 /*Bit8u XCharSize*/ 8,
210 /*Bit8u YCharSize*/ 16,
211 /*Bit8u NumberOfPlanes*/ 1,
212 /*Bit8u BitsPerPixel*/ 8,
213 /*Bit8u NumberOfBanks*/ 4, /* 640x400/64kb == 4 */
214 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
215 /*Bit8u BankSize*/ 0,
216 /*Bit8u NumberOfImagePages*/ 15,
217 /*Bit8u Reserved_page*/ 0,
218/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
219 /*Bit8u RedMaskSize*/ 0,
220 /*Bit8u RedFieldPosition*/ 0,
221 /*Bit8u GreenMaskSize*/ 0,
222 /*Bit8u GreenFieldPosition*/ 0,
223 /*Bit8u BlueMaskSize*/ 0,
224 /*Bit8u BlueFieldPosition*/ 0,
225 /*Bit8u RsvdMaskSize*/ 0,
226 /*Bit8u RsvdFieldPosition*/ 0,
227 /*Bit8u DirectColorModeInfo*/ 0,
228/* Mandatory information for VBE 2.0 and above */
229 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
230 /*Bit32u OffScreenMemOffset*/ 0,
231 /*Bit16u OffScreenMemSize*/ 0,
232/* Mandatory information for VBE 3.0 and above */
233 /*Bit16u LinBytesPerScanLine*/ 640,
234 /*Bit8u BnkNumberOfPages*/ 0,
235 /*Bit8u LinNumberOfPages*/ 0,
236 /*Bit8u LinRedMaskSize*/ 0,
237 /*Bit8u LinRedFieldPosition*/ 0,
238 /*Bit8u LinGreenMaskSize*/ 0,
239 /*Bit8u LinGreenFieldPosition*/ 0,
240 /*Bit8u LinBlueMaskSize*/ 0,
241 /*Bit8u LinBlueFieldPosition*/ 0,
242 /*Bit8u LinRsvdMaskSize*/ 0,
243 /*Bit8u LinRsvdFieldPosition*/ 0,
244 /*Bit32u MaxPixelClock*/ 0,
245/*} ModeInfoBlock;*/
246 }
247 },
248
249 {
250 VBE_VESA_MODE_640X480X8,
251 {
252/*typedef struct ModeInfoBlock
253{*/
254/* Mandatory information for all VBE revisions */
255 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
256 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
257 VBE_MODE_ATTRIBUTE_COLOR_MODE |
258 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
259 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
260 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
261 VBE_WINDOW_ATTRIBUTE_READABLE |
262 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
263 /*Bit8u WinBAttributes*/ 0,
264 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
265 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
266 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
267 /*Bit16u WinBSegment*/ 0,
268 /*Bit32u WinFuncPtr*/ 0,
269 /*Bit16u BytesPerScanLine*/ 640,
270/* Mandatory information for VBE 1.2 and above */
271 /*Bit16u XResolution*/ 640,
272 /*Bit16u YResolution*/ 480,
273 /*Bit8u XCharSize*/ 8,
274 /*Bit8u YCharSize*/ 16,
275 /*Bit8u NumberOfPlanes*/ 1,
276 /*Bit8u BitsPerPixel*/ 8,
277 /*Bit8u NumberOfBanks*/ 5, /* 640x480/64kb == 5 */
278 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
279 /*Bit8u BankSize*/ 0,
280 /*Bit8u NumberOfImagePages*/ 11,
281 /*Bit8u Reserved_page*/ 0,
282/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
283 /*Bit8u RedMaskSize*/ 0,
284 /*Bit8u RedFieldPosition*/ 0,
285 /*Bit8u GreenMaskSize*/ 0,
286 /*Bit8u GreenFieldPosition*/ 0,
287 /*Bit8u BlueMaskSize*/ 0,
288 /*Bit8u BlueFieldPosition*/ 0,
289 /*Bit8u RsvdMaskSize*/ 0,
290 /*Bit8u RsvdFieldPosition*/ 0,
291 /*Bit8u DirectColorModeInfo*/ 0,
292/* Mandatory information for VBE 2.0 and above */
293 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
294 /*Bit32u OffScreenMemOffset*/ 0,
295 /*Bit16u OffScreenMemSize*/ 0,
296/* Mandatory information for VBE 3.0 and above */
297 /*Bit16u LinBytesPerScanLine*/ 640,
298 /*Bit8u BnkNumberOfPages*/ 0,
299 /*Bit8u LinNumberOfPages*/ 0,
300 /*Bit8u LinRedMaskSize*/ 0,
301 /*Bit8u LinRedFieldPosition*/ 0,
302 /*Bit8u LinGreenMaskSize*/ 0,
303 /*Bit8u LinGreenFieldPosition*/ 0,
304 /*Bit8u LinBlueMaskSize*/ 0,
305 /*Bit8u LinBlueFieldPosition*/ 0,
306 /*Bit8u LinRsvdMaskSize*/ 0,
307 /*Bit8u LinRsvdFieldPosition*/ 0,
308 /*Bit32u MaxPixelClock*/ 0,
309/*} ModeInfoBlock;*/
310 }
311 },
312
313 {
314 VBE_VESA_MODE_800X600X4,
315 {
316/*typedef struct ModeInfoBlock
317{*/
318/* Mandatory information for all VBE revisions */
319 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
320 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
321 VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT |
322 VBE_MODE_ATTRIBUTE_COLOR_MODE |
323 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
324 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
325 VBE_WINDOW_ATTRIBUTE_READABLE |
326 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
327 /*Bit8u WinBAttributes*/ 0,
328 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
329 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
330 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
331 /*Bit16u WinBSegment*/ 0,
332 /*Bit32u WinFuncPtr*/ 0,
333 /*Bit16u BytesPerScanLine*/ 100,
334/* Mandatory information for VBE 1.2 and above */
335 /*Bit16u XResolution*/ 800,
336 /*Bit16u YResolution*/ 600,
337 /*Bit8u XCharSize*/ 8,
338 /*Bit8u YCharSize*/ 16,
339 /*Bit8u NumberOfPlanes*/ 4,
340 /*Bit8u BitsPerPixel*/ 4,
341 /*Bit8u NumberOfBanks*/ 16,
342 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR,
343 /*Bit8u BankSize*/ 0,
344 /*Bit8u NumberOfImagePages*/ 15,
345 /*Bit8u Reserved_page*/ 0,
346/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
347 /*Bit8u RedMaskSize*/ 0,
348 /*Bit8u RedFieldPosition*/ 0,
349 /*Bit8u GreenMaskSize*/ 0,
350 /*Bit8u GreenFieldPosition*/ 0,
351 /*Bit8u BlueMaskSize*/ 0,
352 /*Bit8u BlueFieldPosition*/ 0,
353 /*Bit8u RsvdMaskSize*/ 0,
354 /*Bit8u RsvdFieldPosition*/ 0,
355 /*Bit8u DirectColorModeInfo*/ 0,
356/* Mandatory information for VBE 2.0 and above */
357 /*Bit32u PhysBasePtr*/ 0,
358 /*Bit32u OffScreenMemOffset*/ 0,
359 /*Bit16u OffScreenMemSize*/ 0,
360/* Mandatory information for VBE 3.0 and above */
361 /*Bit16u LinBytesPerScanLine*/ 100,
362 /*Bit8u BnkNumberOfPages*/ 0,
363 /*Bit8u LinNumberOfPages*/ 0,
364 /*Bit8u LinRedMaskSize*/ 0,
365 /*Bit8u LinRedFieldPosition*/ 0,
366 /*Bit8u LinGreenMaskSize*/ 0,
367 /*Bit8u LinGreenFieldPosition*/ 0,
368 /*Bit8u LinBlueMaskSize*/ 0,
369 /*Bit8u LinBlueFieldPosition*/ 0,
370 /*Bit8u LinRsvdMaskSize*/ 0,
371 /*Bit8u LinRsvdFieldPosition*/ 0,
372 /*Bit32u MaxPixelClock*/ 0,
373/*} ModeInfoBlock;*/
374 }
375 },
376
377 {
378 VBE_VESA_MODE_800X600X8,
379 {
380/*typedef struct ModeInfoBlock
381{*/
382/* Mandatory information for all VBE revisions */
383 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
384 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
385 VBE_MODE_ATTRIBUTE_COLOR_MODE |
386 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
387 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
388 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
389 VBE_WINDOW_ATTRIBUTE_READABLE |
390 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
391 /*Bit8u WinBAttributes*/ 0,
392 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
393 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
394 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
395 /*Bit16u WinBSegment*/ 0,
396 /*Bit32u WinFuncPtr*/ 0,
397 /*Bit16u BytesPerScanLine*/ 800,
398/* Mandatory information for VBE 1.2 and above */
399 /*Bit16u XResolution*/ 800,
400 /*Bit16u YResolution*/ 600,
401 /*Bit8u XCharSize*/ 8,
402 /*Bit8u YCharSize*/ 16,
403 /*Bit8u NumberOfPlanes*/ 1,
404 /*Bit8u BitsPerPixel*/ 8,
405 /*Bit8u NumberOfBanks*/ 8, /* 800x600/64kb == 8 */
406 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
407 /*Bit8u BankSize*/ 0,
408 /*Bit8u NumberOfImagePages*/ 7,
409 /*Bit8u Reserved_page*/ 0,
410/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
411 /*Bit8u RedMaskSize*/ 0,
412 /*Bit8u RedFieldPosition*/ 0,
413 /*Bit8u GreenMaskSize*/ 0,
414 /*Bit8u GreenFieldPosition*/ 0,
415 /*Bit8u BlueMaskSize*/ 0,
416 /*Bit8u BlueFieldPosition*/ 0,
417 /*Bit8u RsvdMaskSize*/ 0,
418 /*Bit8u RsvdFieldPosition*/ 0,
419 /*Bit8u DirectColorModeInfo*/ 0,
420/* Mandatory information for VBE 2.0 and above */
421 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
422 /*Bit32u OffScreenMemOffset*/ 0,
423 /*Bit16u OffScreenMemSize*/ 0,
424/* Mandatory information for VBE 3.0 and above */
425 /*Bit16u LinBytesPerScanLine*/ 800,
426 /*Bit8u BnkNumberOfPages*/ 0,
427 /*Bit8u LinNumberOfPages*/ 0,
428 /*Bit8u LinRedMaskSize*/ 0,
429 /*Bit8u LinRedFieldPosition*/ 0,
430 /*Bit8u LinGreenMaskSize*/ 0,
431 /*Bit8u LinGreenFieldPosition*/ 0,
432 /*Bit8u LinBlueMaskSize*/ 0,
433 /*Bit8u LinBlueFieldPosition*/ 0,
434 /*Bit8u LinRsvdMaskSize*/ 0,
435 /*Bit8u LinRsvdFieldPosition*/ 0,
436 /*Bit32u MaxPixelClock*/ 0,
437/*} ModeInfoBlock;*/
438 }
439 },
440
441 {
442 VBE_VESA_MODE_1024X768X8,
443 {
444/*typedef struct ModeInfoBlock
445{*/
446/* Mandatory information for all VBE revisions */
447 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
448 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
449 VBE_MODE_ATTRIBUTE_COLOR_MODE |
450 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
451 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
452 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
453 VBE_WINDOW_ATTRIBUTE_READABLE |
454 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
455 /*Bit8u WinBAttributes*/ 0,
456 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
457 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
458 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
459 /*Bit16u WinBSegment*/ 0,
460 /*Bit32u WinFuncPtr*/ 0,
461 /*Bit16u BytesPerScanLine*/ 1024,
462/* Mandatory information for VBE 1.2 and above */
463 /*Bit16u XResolution*/ 1024,
464 /*Bit16u YResolution*/ 768,
465 /*Bit8u XCharSize*/ 8,
466 /*Bit8u YCharSize*/ 16,
467 /*Bit8u NumberOfPlanes*/ 1,
468 /*Bit8u BitsPerPixel*/ 8,
469 /*Bit8u NumberOfBanks*/ 12, /* 1024x768/64kb == 12 */
470 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
471 /*Bit8u BankSize*/ 0,
472 /*Bit8u NumberOfImagePages*/ 3,
473 /*Bit8u Reserved_page*/ 0,
474/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
475 /*Bit8u RedMaskSize*/ 0,
476 /*Bit8u RedFieldPosition*/ 0,
477 /*Bit8u GreenMaskSize*/ 0,
478 /*Bit8u GreenFieldPosition*/ 0,
479 /*Bit8u BlueMaskSize*/ 0,
480 /*Bit8u BlueFieldPosition*/ 0,
481 /*Bit8u RsvdMaskSize*/ 0,
482 /*Bit8u RsvdFieldPosition*/ 0,
483 /*Bit8u DirectColorModeInfo*/ 0,
484/* Mandatory information for VBE 2.0 and above */
485 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
486 /*Bit32u OffScreenMemOffset*/ 0,
487 /*Bit16u OffScreenMemSize*/ 0,
488/* Mandatory information for VBE 3.0 and above */
489 /*Bit16u LinBytesPerScanLine*/ 1024,
490 /*Bit8u BnkNumberOfPages*/ 0,
491 /*Bit8u LinNumberOfPages*/ 0,
492 /*Bit8u LinRedMaskSize*/ 0,
493 /*Bit8u LinRedFieldPosition*/ 0,
494 /*Bit8u LinGreenMaskSize*/ 0,
495 /*Bit8u LinGreenFieldPosition*/ 0,
496 /*Bit8u LinBlueMaskSize*/ 0,
497 /*Bit8u LinBlueFieldPosition*/ 0,
498 /*Bit8u LinRsvdMaskSize*/ 0,
499 /*Bit8u LinRsvdFieldPosition*/ 0,
500 /*Bit32u MaxPixelClock*/ 0,
501/*} ModeInfoBlock;*/
502 }
503 },
504
505 {
506 VBE_VESA_MODE_640X480X1555,
507 {
508/*typedef struct ModeInfoBlock
509{*/
510/* Mandatory information for all VBE revisions */
511 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
512 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
513 VBE_MODE_ATTRIBUTE_COLOR_MODE |
514 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
515 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
516 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
517 VBE_WINDOW_ATTRIBUTE_READABLE |
518 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
519 /*Bit8u WinBAttributes*/ 0,
520 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
521 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
522 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
523 /*Bit16u WinBSegment*/ 0,
524 /*Bit32u WinFuncPtr*/ 0,
525 /*Bit16u BytesPerScanLine*/ 640*2,
526/* Mandatory information for VBE 1.2 and above */
527 /*Bit16u XResolution*/ 640,
528 /*Bit16u YResolution*/ 480,
529 /*Bit8u XCharSize*/ 8,
530 /*Bit8u YCharSize*/ 16,
531 /*Bit8u NumberOfPlanes*/ 1,
532 /*Bit8u BitsPerPixel*/ 15,
533 /*Bit8u NumberOfBanks*/ 1,
534 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
535 /*Bit8u BankSize*/ 0,
536 /*Bit8u NumberOfImagePages*/ 5,
537 /*Bit8u Reserved_page*/ 0,
538/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
539 /*Bit8u RedMaskSize*/ 5,
540 /*Bit8u RedFieldPosition*/ 10,
541 /*Bit8u GreenMaskSize*/ 5,
542 /*Bit8u GreenFieldPosition*/ 5,
543 /*Bit8u BlueMaskSize*/ 5,
544 /*Bit8u BlueFieldPosition*/ 0,
545 /*Bit8u RsvdMaskSize*/ 1,
546 /*Bit8u RsvdFieldPosition*/ 15,
547 /*Bit8u DirectColorModeInfo*/ 0,
548/* Mandatory information for VBE 2.0 and above */
549 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
550 /*Bit32u OffScreenMemOffset*/ 0,
551 /*Bit16u OffScreenMemSize*/ 0,
552/* Mandatory information for VBE 3.0 and above */
553 /*Bit16u LinBytesPerScanLine*/ 640*2,
554 /*Bit8u BnkNumberOfPages*/ 0,
555 /*Bit8u LinNumberOfPages*/ 0,
556 /*Bit8u LinRedMaskSize*/ 5,
557 /*Bit8u LinRedFieldPosition*/ 10,
558 /*Bit8u LinGreenMaskSize*/ 0,
559 /*Bit8u LinGreenFieldPosition*/ 5,
560 /*Bit8u LinBlueMaskSize*/ 5,
561 /*Bit8u LinBlueFieldPosition*/ 0,
562 /*Bit8u LinRsvdMaskSize*/ 1,
563 /*Bit8u LinRsvdFieldPosition*/ 15,
564 /*Bit32u MaxPixelClock*/ 0,
565/*} ModeInfoBlock;*/
566 }
567 },
568
569 {
570 VBE_VESA_MODE_800X600X1555,
571 {
572/*typedef struct ModeInfoBlock
573{*/
574/* Mandatory information for all VBE revisions */
575 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
576 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
577 VBE_MODE_ATTRIBUTE_COLOR_MODE |
578 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
579 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
580 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
581 VBE_WINDOW_ATTRIBUTE_READABLE |
582 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
583 /*Bit8u WinBAttributes*/ 0,
584 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
585 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
586 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
587 /*Bit16u WinBSegment*/ 0,
588 /*Bit32u WinFuncPtr*/ 0,
589 /*Bit16u BytesPerScanLine*/ 800*2,
590/* Mandatory information for VBE 1.2 and above */
591 /*Bit16u XResolution*/ 800,
592 /*Bit16u YResolution*/ 600,
593 /*Bit8u XCharSize*/ 8,
594 /*Bit8u YCharSize*/ 16,
595 /*Bit8u NumberOfPlanes*/ 1,
596 /*Bit8u BitsPerPixel*/ 15,
597 /*Bit8u NumberOfBanks*/ 1,
598 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
599 /*Bit8u BankSize*/ 0,
600 /*Bit8u NumberOfImagePages*/ 3,
601 /*Bit8u Reserved_page*/ 0,
602/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
603 /*Bit8u RedMaskSize*/ 5,
604 /*Bit8u RedFieldPosition*/ 10,
605 /*Bit8u GreenMaskSize*/ 5,
606 /*Bit8u GreenFieldPosition*/ 5,
607 /*Bit8u BlueMaskSize*/ 5,
608 /*Bit8u BlueFieldPosition*/ 0,
609 /*Bit8u RsvdMaskSize*/ 1,
610 /*Bit8u RsvdFieldPosition*/ 15,
611 /*Bit8u DirectColorModeInfo*/ 0,
612/* Mandatory information for VBE 2.0 and above */
613 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
614 /*Bit32u OffScreenMemOffset*/ 0,
615 /*Bit16u OffScreenMemSize*/ 0,
616/* Mandatory information for VBE 3.0 and above */
617 /*Bit16u LinBytesPerScanLine*/ 800*2,
618 /*Bit8u BnkNumberOfPages*/ 0,
619 /*Bit8u LinNumberOfPages*/ 0,
620 /*Bit8u LinRedMaskSize*/ 5,
621 /*Bit8u LinRedFieldPosition*/ 10,
622 /*Bit8u LinGreenMaskSize*/ 5,
623 /*Bit8u LinGreenFieldPosition*/ 5,
624 /*Bit8u LinBlueMaskSize*/ 5,
625 /*Bit8u LinBlueFieldPosition*/ 0,
626 /*Bit8u LinRsvdMaskSize*/ 1,
627 /*Bit8u LinRsvdFieldPosition*/ 15,
628 /*Bit32u MaxPixelClock*/ 0,
629/*} ModeInfoBlock;*/
630 }
631 },
632
633 {
634 VBE_VESA_MODE_1024X768X1555,
635 {
636/*typedef struct ModeInfoBlock
637{*/
638/* Mandatory information for all VBE revisions */
639 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
640 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
641 VBE_MODE_ATTRIBUTE_COLOR_MODE |
642 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
643 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
644 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
645 VBE_WINDOW_ATTRIBUTE_READABLE |
646 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
647 /*Bit8u WinBAttributes*/ 0,
648 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
649 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
650 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
651 /*Bit16u WinBSegment*/ 0,
652 /*Bit32u WinFuncPtr*/ 0,
653 /*Bit16u BytesPerScanLine*/ 1024*2,
654/* Mandatory information for VBE 1.2 and above */
655 /*Bit16u XResolution*/ 1024,
656 /*Bit16u YResolution*/ 768,
657 /*Bit8u XCharSize*/ 8,
658 /*Bit8u YCharSize*/ 16,
659 /*Bit8u NumberOfPlanes*/ 1,
660 /*Bit8u BitsPerPixel*/ 15,
661 /*Bit8u NumberOfBanks*/ 1,
662 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
663 /*Bit8u BankSize*/ 0,
664 /*Bit8u NumberOfImagePages*/ 1,
665 /*Bit8u Reserved_page*/ 0,
666/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
667 /*Bit8u RedMaskSize*/ 5,
668 /*Bit8u RedFieldPosition*/ 10,
669 /*Bit8u GreenMaskSize*/ 5,
670 /*Bit8u GreenFieldPosition*/ 5,
671 /*Bit8u BlueMaskSize*/ 5,
672 /*Bit8u BlueFieldPosition*/ 0,
673 /*Bit8u RsvdMaskSize*/ 1,
674 /*Bit8u RsvdFieldPosition*/ 15,
675 /*Bit8u DirectColorModeInfo*/ 0,
676/* Mandatory information for VBE 2.0 and above */
677 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
678 /*Bit32u OffScreenMemOffset*/ 0,
679 /*Bit16u OffScreenMemSize*/ 0,
680/* Mandatory information for VBE 3.0 and above */
681 /*Bit16u LinBytesPerScanLine*/ 1024*2,
682 /*Bit8u BnkNumberOfPages*/ 0,
683 /*Bit8u LinNumberOfPages*/ 0,
684 /*Bit8u LinRedMaskSize*/ 5,
685 /*Bit8u LinRedFieldPosition*/ 10,
686 /*Bit8u LinGreenMaskSize*/ 5,
687 /*Bit8u LinGreenFieldPosition*/ 5,
688 /*Bit8u LinBlueMaskSize*/ 5,
689 /*Bit8u LinBlueFieldPosition*/ 0,
690 /*Bit8u LinRsvdMaskSize*/ 1,
691 /*Bit8u LinRsvdFieldPosition*/ 15,
692 /*Bit32u MaxPixelClock*/ 0,
693/*} ModeInfoBlock;*/
694 }
695 },
696
697 {
698 VBE_VESA_MODE_640X480X565,
699 {
700/*typedef struct ModeInfoBlock
701{*/
702/* Mandatory information for all VBE revisions */
703 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
704 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
705 VBE_MODE_ATTRIBUTE_COLOR_MODE |
706 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
707 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
708 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
709 VBE_WINDOW_ATTRIBUTE_READABLE |
710 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
711 /*Bit8u WinBAttributes*/ 0,
712 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
713 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
714 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
715 /*Bit16u WinBSegment*/ 0,
716 /*Bit32u WinFuncPtr*/ 0,
717 /*Bit16u BytesPerScanLine*/ 640*2,
718/* Mandatory information for VBE 1.2 and above */
719 /*Bit16u XResolution*/ 640,
720 /*Bit16u YResolution*/ 480,
721 /*Bit8u XCharSize*/ 8,
722 /*Bit8u YCharSize*/ 16,
723 /*Bit8u NumberOfPlanes*/ 1,
724 /*Bit8u BitsPerPixel*/ 16,
725 /*Bit8u NumberOfBanks*/ 1,
726 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
727 /*Bit8u BankSize*/ 0,
728 /*Bit8u NumberOfImagePages*/ 5,
729 /*Bit8u Reserved_page*/ 0,
730/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
731 /*Bit8u RedMaskSize*/ 5,
732 /*Bit8u RedFieldPosition*/ 11,
733 /*Bit8u GreenMaskSize*/ 6,
734 /*Bit8u GreenFieldPosition*/ 5,
735 /*Bit8u BlueMaskSize*/ 5,
736 /*Bit8u BlueFieldPosition*/ 0,
737 /*Bit8u RsvdMaskSize*/ 0,
738 /*Bit8u RsvdFieldPosition*/ 0,
739 /*Bit8u DirectColorModeInfo*/ 0,
740/* Mandatory information for VBE 2.0 and above */
741 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
742 /*Bit32u OffScreenMemOffset*/ 0,
743 /*Bit16u OffScreenMemSize*/ 0,
744/* Mandatory information for VBE 3.0 and above */
745 /*Bit16u LinBytesPerScanLine*/ 640*2,
746 /*Bit8u BnkNumberOfPages*/ 0,
747 /*Bit8u LinNumberOfPages*/ 0,
748 /*Bit8u LinRedMaskSize*/ 5,
749 /*Bit8u LinRedFieldPosition*/ 11,
750 /*Bit8u LinGreenMaskSize*/ 6,
751 /*Bit8u LinGreenFieldPosition*/ 5,
752 /*Bit8u LinBlueMaskSize*/ 5,
753 /*Bit8u LinBlueFieldPosition*/ 0,
754 /*Bit8u LinRsvdMaskSize*/ 0,
755 /*Bit8u LinRsvdFieldPosition*/ 0,
756 /*Bit32u MaxPixelClock*/ 0,
757/*} ModeInfoBlock;*/
758 }
759 },
760
761 {
762 VBE_VESA_MODE_800X600X565,
763 {
764/*typedef struct ModeInfoBlock
765{*/
766/* Mandatory information for all VBE revisions */
767 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
768 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
769 VBE_MODE_ATTRIBUTE_COLOR_MODE |
770 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
771 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
772 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
773 VBE_WINDOW_ATTRIBUTE_READABLE |
774 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
775 /*Bit8u WinBAttributes*/ 0,
776 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
777 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
778 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
779 /*Bit16u WinBSegment*/ 0,
780 /*Bit32u WinFuncPtr*/ 0,
781 /*Bit16u BytesPerScanLine*/ 800*2,
782/* Mandatory information for VBE 1.2 and above */
783 /*Bit16u XResolution*/ 800,
784 /*Bit16u YResolution*/ 600,
785 /*Bit8u XCharSize*/ 8,
786 /*Bit8u YCharSize*/ 16,
787 /*Bit8u NumberOfPlanes*/ 1,
788 /*Bit8u BitsPerPixel*/ 16,
789 /*Bit8u NumberOfBanks*/ 1,
790 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
791 /*Bit8u BankSize*/ 0,
792 /*Bit8u NumberOfImagePages*/ 3,
793 /*Bit8u Reserved_page*/ 0,
794/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
795 /*Bit8u RedMaskSize*/ 5,
796 /*Bit8u RedFieldPosition*/ 11,
797 /*Bit8u GreenMaskSize*/ 6,
798 /*Bit8u GreenFieldPosition*/ 5,
799 /*Bit8u BlueMaskSize*/ 5,
800 /*Bit8u BlueFieldPosition*/ 0,
801 /*Bit8u RsvdMaskSize*/ 0,
802 /*Bit8u RsvdFieldPosition*/ 0,
803 /*Bit8u DirectColorModeInfo*/ 0,
804/* Mandatory information for VBE 2.0 and above */
805 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
806 /*Bit32u OffScreenMemOffset*/ 0,
807 /*Bit16u OffScreenMemSize*/ 0,
808/* Mandatory information for VBE 3.0 and above */
809 /*Bit16u LinBytesPerScanLine*/ 800*2,
810 /*Bit8u BnkNumberOfPages*/ 0,
811 /*Bit8u LinNumberOfPages*/ 0,
812 /*Bit8u LinRedMaskSize*/ 5,
813 /*Bit8u LinRedFieldPosition*/ 11,
814 /*Bit8u LinGreenMaskSize*/ 6,
815 /*Bit8u LinGreenFieldPosition*/ 5,
816 /*Bit8u LinBlueMaskSize*/ 5,
817 /*Bit8u LinBlueFieldPosition*/ 0,
818 /*Bit8u LinRsvdMaskSize*/ 0,
819 /*Bit8u LinRsvdFieldPosition*/ 0,
820 /*Bit32u MaxPixelClock*/ 0,
821/*} ModeInfoBlock;*/
822 }
823 },
824
825 {
826 VBE_VESA_MODE_1024X768X565,
827 {
828/*typedef struct ModeInfoBlock
829{*/
830/* Mandatory information for all VBE revisions */
831 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
832 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
833 VBE_MODE_ATTRIBUTE_COLOR_MODE |
834 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
835 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
836 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
837 VBE_WINDOW_ATTRIBUTE_READABLE |
838 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
839 /*Bit8u WinBAttributes*/ 0,
840 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
841 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
842 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
843 /*Bit16u WinBSegment*/ 0,
844 /*Bit32u WinFuncPtr*/ 0,
845 /*Bit16u BytesPerScanLine*/ 1024*2,
846/* Mandatory information for VBE 1.2 and above */
847 /*Bit16u XResolution*/ 1024,
848 /*Bit16u YResolution*/ 768,
849 /*Bit8u XCharSize*/ 8,
850 /*Bit8u YCharSize*/ 16,
851 /*Bit8u NumberOfPlanes*/ 1,
852 /*Bit8u BitsPerPixel*/ 16,
853 /*Bit8u NumberOfBanks*/ 1,
854 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
855 /*Bit8u BankSize*/ 0,
856 /*Bit8u NumberOfImagePages*/ 1,
857 /*Bit8u Reserved_page*/ 0,
858/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
859 /*Bit8u RedMaskSize*/ 5,
860 /*Bit8u RedFieldPosition*/ 11,
861 /*Bit8u GreenMaskSize*/ 6,
862 /*Bit8u GreenFieldPosition*/ 5,
863 /*Bit8u BlueMaskSize*/ 5,
864 /*Bit8u BlueFieldPosition*/ 0,
865 /*Bit8u RsvdMaskSize*/ 0,
866 /*Bit8u RsvdFieldPosition*/ 0,
867 /*Bit8u DirectColorModeInfo*/ 0,
868/* Mandatory information for VBE 2.0 and above */
869 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
870 /*Bit32u OffScreenMemOffset*/ 0,
871 /*Bit16u OffScreenMemSize*/ 0,
872/* Mandatory information for VBE 3.0 and above */
873 /*Bit16u LinBytesPerScanLine*/ 1024*2,
874 /*Bit8u BnkNumberOfPages*/ 0,
875 /*Bit8u LinNumberOfPages*/ 0,
876 /*Bit8u LinRedMaskSize*/ 5,
877 /*Bit8u LinRedFieldPosition*/ 11,
878 /*Bit8u LinGreenMaskSize*/ 6,
879 /*Bit8u LinGreenFieldPosition*/ 5,
880 /*Bit8u LinBlueMaskSize*/ 5,
881 /*Bit8u LinBlueFieldPosition*/ 0,
882 /*Bit8u LinRsvdMaskSize*/ 0,
883 /*Bit8u LinRsvdFieldPosition*/ 0,
884 /*Bit32u MaxPixelClock*/ 0,
885/*} ModeInfoBlock;*/
886 }
887 },
888
889 {
890 VBE_VESA_MODE_640X480X888,
891 {
892/*typedef struct ModeInfoBlock
893{*/
894/* Mandatory information for all VBE revisions */
895 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
896 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
897 VBE_MODE_ATTRIBUTE_COLOR_MODE |
898 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
899 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
900 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
901 VBE_WINDOW_ATTRIBUTE_READABLE |
902 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
903 /*Bit8u WinBAttributes*/ 0,
904 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
905 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
906 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
907 /*Bit16u WinBSegment*/ 0,
908 /*Bit32u WinFuncPtr*/ 0,
909 /*Bit16u BytesPerScanLine*/ 640*3,
910/* Mandatory information for VBE 1.2 and above */
911 /*Bit16u XResolution*/ 640,
912 /*Bit16u YResolution*/ 480,
913 /*Bit8u XCharSize*/ 8,
914 /*Bit8u YCharSize*/ 16,
915 /*Bit8u NumberOfPlanes*/ 1,
916 /*Bit8u BitsPerPixel*/ 24,
917 /*Bit8u NumberOfBanks*/ 1,
918 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
919 /*Bit8u BankSize*/ 0,
920 /*Bit8u NumberOfImagePages*/ 3,
921 /*Bit8u Reserved_page*/ 0,
922/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
923 /*Bit8u RedMaskSize*/ 8,
924 /*Bit8u RedFieldPosition*/ 16,
925 /*Bit8u GreenMaskSize*/ 8,
926 /*Bit8u GreenFieldPosition*/ 8,
927 /*Bit8u BlueMaskSize*/ 8,
928 /*Bit8u BlueFieldPosition*/ 0,
929 /*Bit8u RsvdMaskSize*/ 0,
930 /*Bit8u RsvdFieldPosition*/ 0,
931 /*Bit8u DirectColorModeInfo*/ 0,
932/* Mandatory information for VBE 2.0 and above */
933 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
934 /*Bit32u OffScreenMemOffset*/ 0,
935 /*Bit16u OffScreenMemSize*/ 0,
936/* Mandatory information for VBE 3.0 and above */
937 /*Bit16u LinBytesPerScanLine*/ 640*3,
938 /*Bit8u BnkNumberOfPages*/ 0,
939 /*Bit8u LinNumberOfPages*/ 0,
940 /*Bit8u LinRedMaskSize*/ 8,
941 /*Bit8u LinRedFieldPosition*/ 16,
942 /*Bit8u LinGreenMaskSize*/ 8,
943 /*Bit8u LinGreenFieldPosition*/ 8,
944 /*Bit8u LinBlueMaskSize*/ 8,
945 /*Bit8u LinBlueFieldPosition*/ 0,
946 /*Bit8u LinRsvdMaskSize*/ 0,
947 /*Bit8u LinRsvdFieldPosition*/ 0,
948 /*Bit32u MaxPixelClock*/ 0,
949/*} ModeInfoBlock;*/
950 }
951 },
952
953 {
954 VBE_VESA_MODE_800X600X888,
955 {
956/*typedef struct ModeInfoBlock
957{*/
958/* Mandatory information for all VBE revisions */
959 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
960 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
961 VBE_MODE_ATTRIBUTE_COLOR_MODE |
962 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
963 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
964 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
965 VBE_WINDOW_ATTRIBUTE_READABLE |
966 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
967 /*Bit8u WinBAttributes*/ 0,
968 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
969 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
970 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
971 /*Bit16u WinBSegment*/ 0,
972 /*Bit32u WinFuncPtr*/ 0,
973 /*Bit16u BytesPerScanLine*/ 800*3,
974/* Mandatory information for VBE 1.2 and above */
975 /*Bit16u XResolution*/ 800,
976 /*Bit16u YResolution*/ 600,
977 /*Bit8u XCharSize*/ 8,
978 /*Bit8u YCharSize*/ 16,
979 /*Bit8u NumberOfPlanes*/ 1,
980 /*Bit8u BitsPerPixel*/ 24,
981 /*Bit8u NumberOfBanks*/ 1,
982 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
983 /*Bit8u BankSize*/ 0,
984 /*Bit8u NumberOfImagePages*/ 1,
985 /*Bit8u Reserved_page*/ 0,
986/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
987 /*Bit8u RedMaskSize*/ 8,
988 /*Bit8u RedFieldPosition*/ 16,
989 /*Bit8u GreenMaskSize*/ 8,
990 /*Bit8u GreenFieldPosition*/ 8,
991 /*Bit8u BlueMaskSize*/ 8,
992 /*Bit8u BlueFieldPosition*/ 0,
993 /*Bit8u RsvdMaskSize*/ 0,
994 /*Bit8u RsvdFieldPosition*/ 0,
995 /*Bit8u DirectColorModeInfo*/ 0,
996/* Mandatory information for VBE 2.0 and above */
997 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
998 /*Bit32u OffScreenMemOffset*/ 0,
999 /*Bit16u OffScreenMemSize*/ 0,
1000/* Mandatory information for VBE 3.0 and above */
1001 /*Bit16u LinBytesPerScanLine*/ 800*3,
1002 /*Bit8u BnkNumberOfPages*/ 0,
1003 /*Bit8u LinNumberOfPages*/ 0,
1004 /*Bit8u LinRedMaskSize*/ 8,
1005 /*Bit8u LinRedFieldPosition*/ 16,
1006 /*Bit8u LinGreenMaskSize*/ 8,
1007 /*Bit8u LinGreenFieldPosition*/ 8,
1008 /*Bit8u LinBlueMaskSize*/ 8,
1009 /*Bit8u LinBlueFieldPosition*/ 0,
1010 /*Bit8u LinRsvdMaskSize*/ 0,
1011 /*Bit8u LinRsvdFieldPosition*/ 0,
1012 /*Bit32u MaxPixelClock*/ 0,
1013/*} ModeInfoBlock;*/
1014 }
1015 },
1016
1017 {
1018 VBE_VESA_MODE_1024X768X888,
1019 {
1020/*typedef struct ModeInfoBlock
1021{*/
1022/* Mandatory information for all VBE revisions */
1023 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
1024 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
1025 VBE_MODE_ATTRIBUTE_COLOR_MODE |
1026 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
1027 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
1028 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
1029 VBE_WINDOW_ATTRIBUTE_READABLE |
1030 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
1031 /*Bit8u WinBAttributes*/ 0,
1032 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
1033 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
1034 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
1035 /*Bit16u WinBSegment*/ 0,
1036 /*Bit32u WinFuncPtr*/ 0,
1037 /*Bit16u BytesPerScanLine*/ 1024*3,
1038/* Mandatory information for VBE 1.2 and above */
1039 /*Bit16u XResolution*/ 1024,
1040 /*Bit16u YResolution*/ 768,
1041 /*Bit8u XCharSize*/ 8,
1042 /*Bit8u YCharSize*/ 16,
1043 /*Bit8u NumberOfPlanes*/ 1,
1044 /*Bit8u BitsPerPixel*/ 24,
1045 /*Bit8u NumberOfBanks*/ 1,
1046 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
1047 /*Bit8u BankSize*/ 0,
1048 /*Bit8u NumberOfImagePages*/ 0,
1049 /*Bit8u Reserved_page*/ 0,
1050/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
1051 /*Bit8u RedMaskSize*/ 8,
1052 /*Bit8u RedFieldPosition*/ 16,
1053 /*Bit8u GreenMaskSize*/ 8,
1054 /*Bit8u GreenFieldPosition*/ 8,
1055 /*Bit8u BlueMaskSize*/ 8,
1056 /*Bit8u BlueFieldPosition*/ 0,
1057 /*Bit8u RsvdMaskSize*/ 0,
1058 /*Bit8u RsvdFieldPosition*/ 0,
1059 /*Bit8u DirectColorModeInfo*/ 0,
1060/* Mandatory information for VBE 2.0 and above */
1061 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
1062 /*Bit32u OffScreenMemOffset*/ 0,
1063 /*Bit16u OffScreenMemSize*/ 0,
1064/* Mandatory information for VBE 3.0 and above */
1065 /*Bit16u LinBytesPerScanLine*/ 1024*3,
1066 /*Bit8u BnkNumberOfPages*/ 0,
1067 /*Bit8u LinNumberOfPages*/ 0,
1068 /*Bit8u LinRedMaskSize*/ 8,
1069 /*Bit8u LinRedFieldPosition*/ 16,
1070 /*Bit8u LinGreenMaskSize*/ 8,
1071 /*Bit8u LinGreenFieldPosition*/ 8,
1072 /*Bit8u LinBlueMaskSize*/ 8,
1073 /*Bit8u LinBlueFieldPosition*/ 0,
1074 /*Bit8u LinRsvdMaskSize*/ 0,
1075 /*Bit8u LinRsvdFieldPosition*/ 0,
1076 /*Bit32u MaxPixelClock*/ 0,
1077/*} ModeInfoBlock;*/
1078 }
1079 },
1080
1081 {
1082 VBE_OWN_MODE_640X480X8888,
1083 {
1084/*typedef struct ModeInfoBlock
1085{*/
1086/* Mandatory information for all VBE revisions */
1087 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
1088 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
1089 VBE_MODE_ATTRIBUTE_COLOR_MODE |
1090 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
1091 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
1092 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
1093 VBE_WINDOW_ATTRIBUTE_READABLE |
1094 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
1095 /*Bit8u WinBAttributes*/ 0,
1096 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
1097 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
1098 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
1099 /*Bit16u WinBSegment*/ 0,
1100 /*Bit32u WinFuncPtr*/ 0,
1101 /*Bit16u BytesPerScanLine*/ 640*4,
1102/* Mandatory information for VBE 1.2 and above */
1103 /*Bit16u XResolution*/ 640,
1104 /*Bit16u YResolution*/ 480,
1105 /*Bit8u XCharSize*/ 8,
1106 /*Bit8u YCharSize*/ 16,
1107 /*Bit8u NumberOfPlanes*/ 1,
1108 /*Bit8u BitsPerPixel*/ 32,
1109 /*Bit8u NumberOfBanks*/ 1,
1110 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
1111 /*Bit8u BankSize*/ 0,
1112 /*Bit8u NumberOfImagePages*/ 1,
1113 /*Bit8u Reserved_page*/ 0,
1114/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
1115 /*Bit8u RedMaskSize*/ 8,
1116 /*Bit8u RedFieldPosition*/ 16,
1117 /*Bit8u GreenMaskSize*/ 8,
1118 /*Bit8u GreenFieldPosition*/ 8,
1119 /*Bit8u BlueMaskSize*/ 8,
1120 /*Bit8u BlueFieldPosition*/ 0,
1121 /*Bit8u RsvdMaskSize*/ 8,
1122 /*Bit8u RsvdFieldPosition*/ 24,
1123 /*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE,
1124/* Mandatory information for VBE 2.0 and above */
1125 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
1126 /*Bit32u OffScreenMemOffset*/ 0,
1127 /*Bit16u OffScreenMemSize*/ 0,
1128/* Mandatory information for VBE 3.0 and above */
1129 /*Bit16u LinBytesPerScanLine*/ 640*4,
1130 /*Bit8u BnkNumberOfPages*/ 0,
1131 /*Bit8u LinNumberOfPages*/ 0,
1132 /*Bit8u LinRedMaskSize*/ 8,
1133 /*Bit8u LinRedFieldPosition*/ 16,
1134 /*Bit8u LinGreenMaskSize*/ 8,
1135 /*Bit8u LinGreenFieldPosition*/ 8,
1136 /*Bit8u LinBlueMaskSize*/ 8,
1137 /*Bit8u LinBlueFieldPosition*/ 0,
1138 /*Bit8u LinRsvdMaskSize*/ 8,
1139 /*Bit8u LinRsvdFieldPosition*/ 24,
1140 /*Bit32u MaxPixelClock*/ 0,
1141/*} ModeInfoBlock;*/
1142 }
1143 },
1144
1145 {
1146 VBE_OWN_MODE_800X600X8888,
1147 {
1148/*typedef struct ModeInfoBlock
1149{*/
1150/* Mandatory information for all VBE revisions */
1151 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
1152 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
1153 VBE_MODE_ATTRIBUTE_COLOR_MODE |
1154 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
1155 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
1156 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
1157 VBE_WINDOW_ATTRIBUTE_READABLE |
1158 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
1159 /*Bit8u WinBAttributes*/ 0,
1160 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
1161 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
1162 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
1163 /*Bit16u WinBSegment*/ 0,
1164 /*Bit32u WinFuncPtr*/ 0,
1165 /*Bit16u BytesPerScanLine*/ 800*4,
1166/* Mandatory information for VBE 1.2 and above */
1167 /*Bit16u XResolution*/ 800,
1168 /*Bit16u YResolution*/ 600,
1169 /*Bit8u XCharSize*/ 8,
1170 /*Bit8u YCharSize*/ 16,
1171 /*Bit8u NumberOfPlanes*/ 1,
1172 /*Bit8u BitsPerPixel*/ 32,
1173 /*Bit8u NumberOfBanks*/ 1,
1174 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
1175 /*Bit8u BankSize*/ 0,
1176 /*Bit8u NumberOfImagePages*/ 1,
1177 /*Bit8u Reserved_page*/ 0,
1178/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
1179 /*Bit8u RedMaskSize*/ 8,
1180 /*Bit8u RedFieldPosition*/ 16,
1181 /*Bit8u GreenMaskSize*/ 8,
1182 /*Bit8u GreenFieldPosition*/ 8,
1183 /*Bit8u BlueMaskSize*/ 8,
1184 /*Bit8u BlueFieldPosition*/ 0,
1185 /*Bit8u RsvdMaskSize*/ 8,
1186 /*Bit8u RsvdFieldPosition*/ 24,
1187 /*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE,
1188/* Mandatory information for VBE 2.0 and above */
1189 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
1190 /*Bit32u OffScreenMemOffset*/ 0,
1191 /*Bit16u OffScreenMemSize*/ 0,
1192/* Mandatory information for VBE 3.0 and above */
1193 /*Bit16u LinBytesPerScanLine*/ 800*4,
1194 /*Bit8u BnkNumberOfPages*/ 0,
1195 /*Bit8u LinNumberOfPages*/ 0,
1196 /*Bit8u LinRedMaskSize*/ 8,
1197 /*Bit8u LinRedFieldPosition*/ 16,
1198 /*Bit8u LinGreenMaskSize*/ 8,
1199 /*Bit8u LinGreenFieldPosition*/ 8,
1200 /*Bit8u LinBlueMaskSize*/ 8,
1201 /*Bit8u LinBlueFieldPosition*/ 0,
1202 /*Bit8u LinRsvdMaskSize*/ 8,
1203 /*Bit8u LinRsvdFieldPosition*/ 24,
1204 /*Bit32u MaxPixelClock*/ 0,
1205/*} ModeInfoBlock;*/
1206 }
1207 },
1208
1209 {
1210 VBE_OWN_MODE_1024X768X8888,
1211 {
1212/*typedef struct ModeInfoBlock
1213{*/
1214/* Mandatory information for all VBE revisions */
1215 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
1216 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
1217 VBE_MODE_ATTRIBUTE_COLOR_MODE |
1218 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
1219 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
1220 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
1221 VBE_WINDOW_ATTRIBUTE_READABLE |
1222 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
1223 /*Bit8u WinBAttributes*/ 0,
1224 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
1225 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
1226 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
1227 /*Bit16u WinBSegment*/ 0,
1228 /*Bit32u WinFuncPtr*/ 0,
1229 /*Bit16u BytesPerScanLine*/ 1024*4,
1230/* Mandatory information for VBE 1.2 and above */
1231 /*Bit16u XResolution*/ 1024,
1232 /*Bit16u YResolution*/ 768,
1233 /*Bit8u XCharSize*/ 8,
1234 /*Bit8u YCharSize*/ 16,
1235 /*Bit8u NumberOfPlanes*/ 1,
1236 /*Bit8u BitsPerPixel*/ 32,
1237 /*Bit8u NumberOfBanks*/ 1,
1238 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR,
1239 /*Bit8u BankSize*/ 0,
1240 /*Bit8u NumberOfImagePages*/ 1,
1241 /*Bit8u Reserved_page*/ 0,
1242/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
1243 /*Bit8u RedMaskSize*/ 8,
1244 /*Bit8u RedFieldPosition*/ 16,
1245 /*Bit8u GreenMaskSize*/ 8,
1246 /*Bit8u GreenFieldPosition*/ 8,
1247 /*Bit8u BlueMaskSize*/ 8,
1248 /*Bit8u BlueFieldPosition*/ 0,
1249 /*Bit8u RsvdMaskSize*/ 8,
1250 /*Bit8u RsvdFieldPosition*/ 24,
1251 /*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE,
1252/* Mandatory information for VBE 2.0 and above */
1253 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
1254 /*Bit32u OffScreenMemOffset*/ 0,
1255 /*Bit16u OffScreenMemSize*/ 0,
1256/* Mandatory information for VBE 3.0 and above */
1257 /*Bit16u LinBytesPerScanLine*/ 1024*4,
1258 /*Bit8u BnkNumberOfPages*/ 0,
1259 /*Bit8u LinNumberOfPages*/ 0,
1260 /*Bit8u LinRedMaskSize*/ 8,
1261 /*Bit8u LinRedFieldPosition*/ 16,
1262 /*Bit8u LinGreenMaskSize*/ 8,
1263 /*Bit8u LinGreenFieldPosition*/ 8,
1264 /*Bit8u LinBlueMaskSize*/ 8,
1265 /*Bit8u LinBlueFieldPosition*/ 0,
1266 /*Bit8u LinRsvdMaskSize*/ 8,
1267 /*Bit8u LinRsvdFieldPosition*/ 24,
1268 /*Bit32u MaxPixelClock*/ 0,
1269/*} ModeInfoBlock;*/
1270 }
1271 },
1272
1273 {
1274 VBE_OWN_MODE_320X200X8,
1275 {
1276/*typedef struct ModeInfoBlock
1277{*/
1278/* Mandatory information for all VBE revisions */
1279 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
1280 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE |
1281 VBE_MODE_ATTRIBUTE_COLOR_MODE |
1282 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
1283 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
1284 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
1285 VBE_WINDOW_ATTRIBUTE_WRITEABLE,
1286 /*Bit8u WinBAttributes*/ 0,
1287 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
1288 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB,
1289 /*Bit16u WinASegment*/ VGAMEM_GRAPH,
1290 /*Bit16u WinBSegment*/ 0,
1291 /*Bit32u WinFuncPtr*/ 0,
1292 /*Bit16u BytesPerScanLine*/ 320,
1293/* Mandatory information for VBE 1.2 and above */
1294 /*Bit16u XResolution*/ 320,
1295 /*Bit16u YResolution*/ 200,
1296 /*Bit8u XCharSize*/ 8,
1297 /*Bit8u YCharSize*/ 16,
1298 /*Bit8u NumberOfPlanes*/ 1,
1299 /*Bit8u BitsPerPixel*/ 8,
1300 /*Bit8u NumberOfBanks*/ 1,
1301 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
1302 /*Bit8u BankSize*/ 0,
1303 /*Bit8u NumberOfImagePages*/ 3,
1304 /*Bit8u Reserved_page*/ 0,
1305/* Direct Color fields (required for direct/6 and YUV/7 memory models) */
1306 /*Bit8u RedMaskSize*/ 0,
1307 /*Bit8u RedFieldPosition*/ 0,
1308 /*Bit8u GreenMaskSize*/ 0,
1309 /*Bit8u GreenFieldPosition*/ 0,
1310 /*Bit8u BlueMaskSize*/ 0,
1311 /*Bit8u BlueFieldPosition*/ 0,
1312 /*Bit8u RsvdMaskSize*/ 0,
1313 /*Bit8u RsvdFieldPosition*/ 0,
1314 /*Bit8u DirectColorModeInfo*/ 0,
1315/* Mandatory information for VBE 2.0 and above */
1316 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
1317 /*Bit32u OffScreenMemOffset*/ 0,
1318 /*Bit16u OffScreenMemSize*/ 0,
1319/* Mandatory information for VBE 3.0 and above */
1320 /*Bit16u LinBytesPerScanLine*/ 320,
1321 /*Bit8u BnkNumberOfPages*/ 0,
1322 /*Bit8u LinNumberOfPages*/ 0,
1323 /*Bit8u LinRedMaskSize*/ 0,
1324 /*Bit8u LinRedFieldPosition*/ 0,
1325 /*Bit8u LinGreenMaskSize*/ 0,
1326 /*Bit8u LinGreenFieldPosition*/ 0,
1327 /*Bit8u LinBlueMaskSize*/ 0,
1328 /*Bit8u LinBlueFieldPosition*/ 0,
1329 /*Bit8u LinRsvdMaskSize*/ 0,
1330 /*Bit8u LinRsvdFieldPosition*/ 0,
1331 /*Bit32u MaxPixelClock*/ 0,
1332/*} ModeInfoBlock;*/
1333 }
1334 },
1335};
1336
1337#define MODE_INFO_SIZE ( sizeof(mode_info_list) / sizeof(ModeInfoListItem) )
1338
1339#endif /* VBE_NEW_DYN_LIST */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette