VirtualBox

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

Last change on this file since 5212 was 4071, checked in by vboxsync, 17 years ago

Biggest check-in ever. New source code headers for all (C) innotek files.

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