1 #ifndef vbetables_h_included
2 #define vbetables_h_included
6 This file contains a static mode information list containing all
7 bochs/plex86 "supported" VBE modi and their 'settings'.
11 typedef struct ModeInfoListItem
14 ModeInfoBlockCompact info
;
17 // FIXME: check all member variables to be correct for the different modi
18 // FIXME: add more modi
19 static ModeInfoListItem mode_info_list
[]=
22 VBE_OWN_MODE_320X200X8
,
24 /*typedef struct ModeInfoBlock
26 // Mandatory information for all VBE revisions
27 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
28 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
29 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
31 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
33 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
34 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE
|
35 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
36 /*Bit8u WinBAttributes*/ 0,
37 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
38 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
39 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
40 /*Bit16u WinBSegment*/ 0,
41 /*Bit32u WinFuncPtr*/ 0,
42 /*Bit16u BytesPerScanLine*/ 320,
43 // Mandatory information for VBE 1.2 and above
44 /*Bit16u XResolution*/ 320,
45 /*Bit16u YResolution*/ 200,
46 /*Bit8u XCharSize*/ 8,
47 /*Bit8u YCharSize*/ 16,
48 /*Bit8u NumberOfPlanes*/ 1,
49 /*Bit8u BitsPerPixel*/ 8,
50 /*Bit8u NumberOfBanks*/ 1,
51 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL
,
53 /*Bit8u NumberOfImagePages*/ 3,
54 /*Bit8u Reserved_page*/ 0,
55 // Direct Color fields (required for direct/6 and YUV/7 memory models)
56 /*Bit8u RedMaskSize*/ 0,
57 /*Bit8u RedFieldPosition*/ 0,
58 /*Bit8u GreenMaskSize*/ 0,
59 /*Bit8u GreenFieldPosition*/ 0,
60 /*Bit8u BlueMaskSize*/ 0,
61 /*Bit8u BlueFieldPosition*/ 0,
62 /*Bit8u RsvdMaskSize*/ 0,
63 /*Bit8u RsvdFieldPosition*/ 0,
64 /*Bit8u DirectColorModeInfo*/ 0,
65 // Mandatory information for VBE 2.0 and above
67 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
69 /*Bit32u PhysBasePtr*/ 0,
71 /*Bit32u OffScreenMemOffset*/ 0,
72 /*Bit16u OffScreenMemSize*/ 0,
73 // Mandatory information for VBE 3.0 and above
74 /*Bit16u LinBytesPerScanLine*/ 320,
75 /*Bit8u BnkNumberOfPages*/ 0,
76 /*Bit8u LinNumberOfPages*/ 0,
77 /*Bit8u LinRedMaskSize*/ 0,
78 /*Bit8u LinRedFieldPosition*/ 0,
79 /*Bit8u LinGreenMaskSize*/ 0,
80 /*Bit8u LinGreenFieldPosition*/ 0,
81 /*Bit8u LinBlueMaskSize*/ 0,
82 /*Bit8u LinBlueFieldPosition*/ 0,
83 /*Bit8u LinRsvdMaskSize*/ 0,
84 /*Bit8u LinRsvdFieldPosition*/ 0,
85 /*Bit32u MaxPixelClock*/ 0,
91 VBE_VESA_MODE_640X400X8
,
93 /*typedef struct ModeInfoBlock
95 // Mandatory information for all VBE revisions
96 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
97 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
98 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
100 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
102 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
103 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
104 VBE_WINDOW_ATTRIBUTE_READABLE
|
105 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
106 /*Bit8u WinBAttributes*/ 0,
107 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
108 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
109 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
110 /*Bit16u WinBSegment*/ 0,
111 /*Bit32u WinFuncPtr*/ 0,
112 /*Bit16u BytesPerScanLine*/ 640,
113 // Mandatory information for VBE 1.2 and above
114 /*Bit16u XResolution*/ 640,
115 /*Bit16u YResolution*/ 400,
116 /*Bit8u XCharSize*/ 8,
117 /*Bit8u YCharSize*/ 16,
118 /*Bit8u NumberOfPlanes*/ 1,
119 /*Bit8u BitsPerPixel*/ 8,
120 /*Bit8u NumberOfBanks*/ 4, // 640x400/64kb == 4
121 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL
,
122 /*Bit8u BankSize*/ 0,
123 /*Bit8u NumberOfImagePages*/ 15,
124 /*Bit8u Reserved_page*/ 0,
125 // Direct Color fields (required for direct/6 and YUV/7 memory models)
126 /*Bit8u RedMaskSize*/ 0,
127 /*Bit8u RedFieldPosition*/ 0,
128 /*Bit8u GreenMaskSize*/ 0,
129 /*Bit8u GreenFieldPosition*/ 0,
130 /*Bit8u BlueMaskSize*/ 0,
131 /*Bit8u BlueFieldPosition*/ 0,
132 /*Bit8u RsvdMaskSize*/ 0,
133 /*Bit8u RsvdFieldPosition*/ 0,
134 /*Bit8u DirectColorModeInfo*/ 0,
135 // Mandatory information for VBE 2.0 and above
137 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
139 /*Bit32u PhysBasePtr*/ 0,
141 /*Bit32u OffScreenMemOffset*/ 0,
142 /*Bit16u OffScreenMemSize*/ 0,
143 // Mandatory information for VBE 3.0 and above
144 /*Bit16u LinBytesPerScanLine*/ 640,
145 /*Bit8u BnkNumberOfPages*/ 0,
146 /*Bit8u LinNumberOfPages*/ 0,
147 /*Bit8u LinRedMaskSize*/ 0,
148 /*Bit8u LinRedFieldPosition*/ 0,
149 /*Bit8u LinGreenMaskSize*/ 0,
150 /*Bit8u LinGreenFieldPosition*/ 0,
151 /*Bit8u LinBlueMaskSize*/ 0,
152 /*Bit8u LinBlueFieldPosition*/ 0,
153 /*Bit8u LinRsvdMaskSize*/ 0,
154 /*Bit8u LinRsvdFieldPosition*/ 0,
155 /*Bit32u MaxPixelClock*/ 0,
161 VBE_VESA_MODE_640X480X8
,
163 /*typedef struct ModeInfoBlock
165 // Mandatory information for all VBE revisions
166 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
167 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
168 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
170 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
172 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
173 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE
|
174 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
175 /*Bit8u WinBAttributes*/ 0,
176 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
177 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
178 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
179 /*Bit16u WinBSegment*/ 0,
180 /*Bit32u WinFuncPtr*/ 0,
181 /*Bit16u BytesPerScanLine*/ 640,
182 // Mandatory information for VBE 1.2 and above
183 /*Bit16u XResolution*/ 640,
184 /*Bit16u YResolution*/ 480,
185 /*Bit8u XCharSize*/ 8,
186 /*Bit8u YCharSize*/ 16,
187 /*Bit8u NumberOfPlanes*/ 1,
188 /*Bit8u BitsPerPixel*/ 8,
189 /*Bit8u NumberOfBanks*/ 5, // 640x480/64kb == 5
190 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL
,
191 /*Bit8u BankSize*/ 0,
192 /*Bit8u NumberOfImagePages*/ 11,
193 /*Bit8u Reserved_page*/ 0,
194 // Direct Color fields (required for direct/6 and YUV/7 memory models)
195 /*Bit8u RedMaskSize*/ 0,
196 /*Bit8u RedFieldPosition*/ 0,
197 /*Bit8u GreenMaskSize*/ 0,
198 /*Bit8u GreenFieldPosition*/ 0,
199 /*Bit8u BlueMaskSize*/ 0,
200 /*Bit8u BlueFieldPosition*/ 0,
201 /*Bit8u RsvdMaskSize*/ 0,
202 /*Bit8u RsvdFieldPosition*/ 0,
203 /*Bit8u DirectColorModeInfo*/ 0,
204 // Mandatory information for VBE 2.0 and above
206 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
208 /*Bit32u PhysBasePtr*/ 0,
210 /*Bit32u OffScreenMemOffset*/ 0,
211 /*Bit16u OffScreenMemSize*/ 0,
212 // Mandatory information for VBE 3.0 and above
213 /*Bit16u LinBytesPerScanLine*/ 640,
214 /*Bit8u BnkNumberOfPages*/ 0,
215 /*Bit8u LinNumberOfPages*/ 0,
216 /*Bit8u LinRedMaskSize*/ 0,
217 /*Bit8u LinRedFieldPosition*/ 0,
218 /*Bit8u LinGreenMaskSize*/ 0,
219 /*Bit8u LinGreenFieldPosition*/ 0,
220 /*Bit8u LinBlueMaskSize*/ 0,
221 /*Bit8u LinBlueFieldPosition*/ 0,
222 /*Bit8u LinRsvdMaskSize*/ 0,
223 /*Bit8u LinRsvdFieldPosition*/ 0,
224 /*Bit32u MaxPixelClock*/ 0,
230 VBE_VESA_MODE_800X600X4
,
232 /*typedef struct ModeInfoBlock
234 // Mandatory information for all VBE revisions
235 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
236 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
237 VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT
|
238 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
239 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
240 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
241 VBE_WINDOW_ATTRIBUTE_READABLE
|
242 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
243 /*Bit8u WinBAttributes*/ 0,
244 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
245 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
246 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
247 /*Bit16u WinBSegment*/ 0,
248 /*Bit32u WinFuncPtr*/ 0,
249 /*Bit16u BytesPerScanLine*/ 100,
250 // Mandatory information for VBE 1.2 and above
251 /*Bit16u XResolution*/ 800,
252 /*Bit16u YResolution*/ 600,
253 /*Bit8u XCharSize*/ 8,
254 /*Bit8u YCharSize*/ 16,
255 /*Bit8u NumberOfPlanes*/ 4,
256 /*Bit8u BitsPerPixel*/ 4,
257 /*Bit8u NumberOfBanks*/ 1,
258 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR
,
259 /*Bit8u BankSize*/ 0,
260 /*Bit8u NumberOfImagePages*/ 0,
261 /*Bit8u Reserved_page*/ 0,
262 // Direct Color fields (required for direct/6 and YUV/7 memory models)
263 /*Bit8u RedMaskSize*/ 0,
264 /*Bit8u RedFieldPosition*/ 0,
265 /*Bit8u GreenMaskSize*/ 0,
266 /*Bit8u GreenFieldPosition*/ 0,
267 /*Bit8u BlueMaskSize*/ 0,
268 /*Bit8u BlueFieldPosition*/ 0,
269 /*Bit8u RsvdMaskSize*/ 0,
270 /*Bit8u RsvdFieldPosition*/ 0,
271 /*Bit8u DirectColorModeInfo*/ 0,
272 // Mandatory information for VBE 2.0 and above
273 /*Bit32u PhysBasePtr*/ 0,
274 /*Bit32u OffScreenMemOffset*/ 0,
275 /*Bit16u OffScreenMemSize*/ 0,
276 // Mandatory information for VBE 3.0 and above
277 /*Bit16u LinBytesPerScanLine*/ 100,
278 /*Bit8u BnkNumberOfPages*/ 0,
279 /*Bit8u LinNumberOfPages*/ 0,
280 /*Bit8u LinRedMaskSize*/ 0,
281 /*Bit8u LinRedFieldPosition*/ 0,
282 /*Bit8u LinGreenMaskSize*/ 0,
283 /*Bit8u LinGreenFieldPosition*/ 0,
284 /*Bit8u LinBlueMaskSize*/ 0,
285 /*Bit8u LinBlueFieldPosition*/ 0,
286 /*Bit8u LinRsvdMaskSize*/ 0,
287 /*Bit8u LinRsvdFieldPosition*/ 0,
288 /*Bit32u MaxPixelClock*/ 0,
294 VBE_VESA_MODE_800X600X8
,
296 /*typedef struct ModeInfoBlock
298 // Mandatory information for all VBE revisions
299 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
300 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
301 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
303 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
305 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
306 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
307 VBE_WINDOW_ATTRIBUTE_READABLE
|
308 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
309 /*Bit8u WinBAttributes*/ 0,
310 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
311 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
312 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
313 /*Bit16u WinBSegment*/ 0,
314 /*Bit32u WinFuncPtr*/ 0,
315 /*Bit16u BytesPerScanLine*/ 800,
316 // Mandatory information for VBE 1.2 and above
317 /*Bit16u XResolution*/ 800,
318 /*Bit16u YResolution*/ 600,
319 /*Bit8u XCharSize*/ 8,
320 /*Bit8u YCharSize*/ 16,
321 /*Bit8u NumberOfPlanes*/ 1,
322 /*Bit8u BitsPerPixel*/ 8,
323 /*Bit8u NumberOfBanks*/ 8, // 800x600/64kb == 8
324 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL
,
325 /*Bit8u BankSize*/ 0,
326 /*Bit8u NumberOfImagePages*/ 7,
327 /*Bit8u Reserved_page*/ 0,
328 // Direct Color fields (required for direct/6 and YUV/7 memory models)
329 /*Bit8u RedMaskSize*/ 0,
330 /*Bit8u RedFieldPosition*/ 0,
331 /*Bit8u GreenMaskSize*/ 0,
332 /*Bit8u GreenFieldPosition*/ 0,
333 /*Bit8u BlueMaskSize*/ 0,
334 /*Bit8u BlueFieldPosition*/ 0,
335 /*Bit8u RsvdMaskSize*/ 0,
336 /*Bit8u RsvdFieldPosition*/ 0,
337 /*Bit8u DirectColorModeInfo*/ 0,
338 // Mandatory information for VBE 2.0 and above
340 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
342 /*Bit32u PhysBasePtr*/ 0,
344 /*Bit32u OffScreenMemOffset*/ 0,
345 /*Bit16u OffScreenMemSize*/ 0,
346 // Mandatory information for VBE 3.0 and above
347 /*Bit16u LinBytesPerScanLine*/ 800,
348 /*Bit8u BnkNumberOfPages*/ 0,
349 /*Bit8u LinNumberOfPages*/ 0,
350 /*Bit8u LinRedMaskSize*/ 0,
351 /*Bit8u LinRedFieldPosition*/ 0,
352 /*Bit8u LinGreenMaskSize*/ 0,
353 /*Bit8u LinGreenFieldPosition*/ 0,
354 /*Bit8u LinBlueMaskSize*/ 0,
355 /*Bit8u LinBlueFieldPosition*/ 0,
356 /*Bit8u LinRsvdMaskSize*/ 0,
357 /*Bit8u LinRsvdFieldPosition*/ 0,
358 /*Bit32u MaxPixelClock*/ 0,
364 VBE_VESA_MODE_1024X768X8
,
366 /*typedef struct ModeInfoBlock
368 // Mandatory information for all VBE revisions
369 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
370 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
371 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
373 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
375 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
376 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
377 VBE_WINDOW_ATTRIBUTE_READABLE
|
378 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
379 /*Bit8u WinBAttributes*/ 0,
380 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
381 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
382 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
383 /*Bit16u WinBSegment*/ 0,
384 /*Bit32u WinFuncPtr*/ 0,
385 /*Bit16u BytesPerScanLine*/ 1024,
386 // Mandatory information for VBE 1.2 and above
387 /*Bit16u XResolution*/ 1024,
388 /*Bit16u YResolution*/ 768,
389 /*Bit8u XCharSize*/ 8,
390 /*Bit8u YCharSize*/ 16,
391 /*Bit8u NumberOfPlanes*/ 1,
392 /*Bit8u BitsPerPixel*/ 8,
393 /*Bit8u NumberOfBanks*/ 12, // 1024x768/64kb == 12
394 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL
,
395 /*Bit8u BankSize*/ 0,
396 /*Bit8u NumberOfImagePages*/ 3,
397 /*Bit8u Reserved_page*/ 0,
398 // Direct Color fields (required for direct/6 and YUV/7 memory models)
399 /*Bit8u RedMaskSize*/ 0,
400 /*Bit8u RedFieldPosition*/ 0,
401 /*Bit8u GreenMaskSize*/ 0,
402 /*Bit8u GreenFieldPosition*/ 0,
403 /*Bit8u BlueMaskSize*/ 0,
404 /*Bit8u BlueFieldPosition*/ 0,
405 /*Bit8u RsvdMaskSize*/ 0,
406 /*Bit8u RsvdFieldPosition*/ 0,
407 /*Bit8u DirectColorModeInfo*/ 0,
408 // Mandatory information for VBE 2.0 and above
410 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
412 /*Bit32u PhysBasePtr*/ 0,
414 /*Bit32u OffScreenMemOffset*/ 0,
415 /*Bit16u OffScreenMemSize*/ 0,
416 // Mandatory information for VBE 3.0 and above
417 /*Bit16u LinBytesPerScanLine*/ 1024,
418 /*Bit8u BnkNumberOfPages*/ 0,
419 /*Bit8u LinNumberOfPages*/ 0,
420 /*Bit8u LinRedMaskSize*/ 0,
421 /*Bit8u LinRedFieldPosition*/ 0,
422 /*Bit8u LinGreenMaskSize*/ 0,
423 /*Bit8u LinGreenFieldPosition*/ 0,
424 /*Bit8u LinBlueMaskSize*/ 0,
425 /*Bit8u LinBlueFieldPosition*/ 0,
426 /*Bit8u LinRsvdMaskSize*/ 0,
427 /*Bit8u LinRsvdFieldPosition*/ 0,
428 /*Bit32u MaxPixelClock*/ 0,
434 VBE_VESA_MODE_640X480X1555
,
436 /*typedef struct ModeInfoBlock
438 // Mandatory information for all VBE revisions
439 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
440 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
441 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
443 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
445 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
446 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
447 VBE_WINDOW_ATTRIBUTE_READABLE
|
448 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
449 /*Bit8u WinBAttributes*/ 0,
450 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
451 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
452 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
453 /*Bit16u WinBSegment*/ 0,
454 /*Bit32u WinFuncPtr*/ 0,
455 /*Bit16u BytesPerScanLine*/ 640*2,
456 // Mandatory information for VBE 1.2 and above
457 /*Bit16u XResolution*/ 640,
458 /*Bit16u YResolution*/ 480,
459 /*Bit8u XCharSize*/ 8,
460 /*Bit8u YCharSize*/ 16,
461 /*Bit8u NumberOfPlanes*/ 1,
462 /*Bit8u BitsPerPixel*/ 15,
463 /*Bit8u NumberOfBanks*/ 1,
464 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
465 /*Bit8u BankSize*/ 0,
466 /*Bit8u NumberOfImagePages*/ 5,
467 /*Bit8u Reserved_page*/ 0,
468 // Direct Color fields (required for direct/6 and YUV/7 memory models)
469 /*Bit8u RedMaskSize*/ 5,
470 /*Bit8u RedFieldPosition*/ 10,
471 /*Bit8u GreenMaskSize*/ 5,
472 /*Bit8u GreenFieldPosition*/ 5,
473 /*Bit8u BlueMaskSize*/ 5,
474 /*Bit8u BlueFieldPosition*/ 0,
475 /*Bit8u RsvdMaskSize*/ 1,
476 /*Bit8u RsvdFieldPosition*/ 15,
477 /*Bit8u DirectColorModeInfo*/ 0,
478 // Mandatory information for VBE 2.0 and above
480 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
482 /*Bit32u PhysBasePtr*/ 0,
484 /*Bit32u OffScreenMemOffset*/ 0,
485 /*Bit16u OffScreenMemSize*/ 0,
486 // Mandatory information for VBE 3.0 and above
487 /*Bit16u LinBytesPerScanLine*/ 640*2,
488 /*Bit8u BnkNumberOfPages*/ 0,
489 /*Bit8u LinNumberOfPages*/ 0,
490 /*Bit8u LinRedMaskSize*/ 5,
491 /*Bit8u LinRedFieldPosition*/ 10,
492 /*Bit8u LinGreenMaskSize*/ 0,
493 /*Bit8u LinGreenFieldPosition*/ 5,
494 /*Bit8u LinBlueMaskSize*/ 5,
495 /*Bit8u LinBlueFieldPosition*/ 0,
496 /*Bit8u LinRsvdMaskSize*/ 1,
497 /*Bit8u LinRsvdFieldPosition*/ 15,
498 /*Bit32u MaxPixelClock*/ 0,
504 VBE_VESA_MODE_800X600X1555
,
506 /*typedef struct ModeInfoBlock
508 // Mandatory information for all VBE revisions
509 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
510 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
511 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
513 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*/ 800*2,
526 // Mandatory information for VBE 1.2 and above
527 /*Bit16u XResolution*/ 800,
528 /*Bit16u YResolution*/ 600,
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*/ 3,
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
550 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
552 /*Bit32u PhysBasePtr*/ 0,
554 /*Bit32u OffScreenMemOffset*/ 0,
555 /*Bit16u OffScreenMemSize*/ 0,
556 // Mandatory information for VBE 3.0 and above
557 /*Bit16u LinBytesPerScanLine*/ 800*2,
558 /*Bit8u BnkNumberOfPages*/ 0,
559 /*Bit8u LinNumberOfPages*/ 0,
560 /*Bit8u LinRedMaskSize*/ 5,
561 /*Bit8u LinRedFieldPosition*/ 10,
562 /*Bit8u LinGreenMaskSize*/ 5,
563 /*Bit8u LinGreenFieldPosition*/ 5,
564 /*Bit8u LinBlueMaskSize*/ 5,
565 /*Bit8u LinBlueFieldPosition*/ 0,
566 /*Bit8u LinRsvdMaskSize*/ 1,
567 /*Bit8u LinRsvdFieldPosition*/ 15,
568 /*Bit32u MaxPixelClock*/ 0,
574 VBE_VESA_MODE_1024X768X1555
,
576 /*typedef struct ModeInfoBlock
578 // Mandatory information for all VBE revisions
579 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
580 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
581 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
583 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
585 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
586 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
587 VBE_WINDOW_ATTRIBUTE_READABLE
|
588 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
589 /*Bit8u WinBAttributes*/ 0,
590 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
591 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
592 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
593 /*Bit16u WinBSegment*/ 0,
594 /*Bit32u WinFuncPtr*/ 0,
595 /*Bit16u BytesPerScanLine*/ 1024*2,
596 // Mandatory information for VBE 1.2 and above
597 /*Bit16u XResolution*/ 1024,
598 /*Bit16u YResolution*/ 768,
599 /*Bit8u XCharSize*/ 8,
600 /*Bit8u YCharSize*/ 16,
601 /*Bit8u NumberOfPlanes*/ 1,
602 /*Bit8u BitsPerPixel*/ 15,
603 /*Bit8u NumberOfBanks*/ 1,
604 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
605 /*Bit8u BankSize*/ 0,
606 /*Bit8u NumberOfImagePages*/ 1,
607 /*Bit8u Reserved_page*/ 0,
608 // Direct Color fields (required for direct/6 and YUV/7 memory models)
609 /*Bit8u RedMaskSize*/ 5,
610 /*Bit8u RedFieldPosition*/ 10,
611 /*Bit8u GreenMaskSize*/ 5,
612 /*Bit8u GreenFieldPosition*/ 5,
613 /*Bit8u BlueMaskSize*/ 5,
614 /*Bit8u BlueFieldPosition*/ 0,
615 /*Bit8u RsvdMaskSize*/ 1,
616 /*Bit8u RsvdFieldPosition*/ 15,
617 /*Bit8u DirectColorModeInfo*/ 0,
618 // Mandatory information for VBE 2.0 and above
620 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
622 /*Bit32u PhysBasePtr*/ 0,
624 /*Bit32u OffScreenMemOffset*/ 0,
625 /*Bit16u OffScreenMemSize*/ 0,
626 // Mandatory information for VBE 3.0 and above
627 /*Bit16u LinBytesPerScanLine*/ 1024*2,
628 /*Bit8u BnkNumberOfPages*/ 0,
629 /*Bit8u LinNumberOfPages*/ 0,
630 /*Bit8u LinRedMaskSize*/ 5,
631 /*Bit8u LinRedFieldPosition*/ 10,
632 /*Bit8u LinGreenMaskSize*/ 5,
633 /*Bit8u LinGreenFieldPosition*/ 5,
634 /*Bit8u LinBlueMaskSize*/ 5,
635 /*Bit8u LinBlueFieldPosition*/ 0,
636 /*Bit8u LinRsvdMaskSize*/ 1,
637 /*Bit8u LinRsvdFieldPosition*/ 15,
638 /*Bit32u MaxPixelClock*/ 0,
644 VBE_VESA_MODE_640X480X565
,
646 /*typedef struct ModeInfoBlock
648 // Mandatory information for all VBE revisions
649 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
650 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
651 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
653 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
655 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
656 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
657 VBE_WINDOW_ATTRIBUTE_READABLE
|
658 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
659 /*Bit8u WinBAttributes*/ 0,
660 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
661 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
662 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
663 /*Bit16u WinBSegment*/ 0,
664 /*Bit32u WinFuncPtr*/ 0,
665 /*Bit16u BytesPerScanLine*/ 640*2,
666 // Mandatory information for VBE 1.2 and above
667 /*Bit16u XResolution*/ 640,
668 /*Bit16u YResolution*/ 480,
669 /*Bit8u XCharSize*/ 8,
670 /*Bit8u YCharSize*/ 16,
671 /*Bit8u NumberOfPlanes*/ 1,
672 /*Bit8u BitsPerPixel*/ 16,
673 /*Bit8u NumberOfBanks*/ 1,
674 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
675 /*Bit8u BankSize*/ 0,
676 /*Bit8u NumberOfImagePages*/ 5,
677 /*Bit8u Reserved_page*/ 0,
678 // Direct Color fields (required for direct/6 and YUV/7 memory models)
679 /*Bit8u RedMaskSize*/ 5,
680 /*Bit8u RedFieldPosition*/ 11,
681 /*Bit8u GreenMaskSize*/ 6,
682 /*Bit8u GreenFieldPosition*/ 5,
683 /*Bit8u BlueMaskSize*/ 5,
684 /*Bit8u BlueFieldPosition*/ 0,
685 /*Bit8u RsvdMaskSize*/ 0,
686 /*Bit8u RsvdFieldPosition*/ 0,
687 /*Bit8u DirectColorModeInfo*/ 0,
688 // Mandatory information for VBE 2.0 and above
690 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
692 /*Bit32u PhysBasePtr*/ 0,
694 /*Bit32u OffScreenMemOffset*/ 0,
695 /*Bit16u OffScreenMemSize*/ 0,
696 // Mandatory information for VBE 3.0 and above
697 /*Bit16u LinBytesPerScanLine*/ 640*2,
698 /*Bit8u BnkNumberOfPages*/ 0,
699 /*Bit8u LinNumberOfPages*/ 0,
700 /*Bit8u LinRedMaskSize*/ 5,
701 /*Bit8u LinRedFieldPosition*/ 11,
702 /*Bit8u LinGreenMaskSize*/ 6,
703 /*Bit8u LinGreenFieldPosition*/ 5,
704 /*Bit8u LinBlueMaskSize*/ 5,
705 /*Bit8u LinBlueFieldPosition*/ 0,
706 /*Bit8u LinRsvdMaskSize*/ 0,
707 /*Bit8u LinRsvdFieldPosition*/ 0,
708 /*Bit32u MaxPixelClock*/ 0,
714 VBE_VESA_MODE_800X600X565
,
716 /*typedef struct ModeInfoBlock
718 // Mandatory information for all VBE revisions
719 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
720 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
721 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
723 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
725 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
726 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
727 VBE_WINDOW_ATTRIBUTE_READABLE
|
728 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
729 /*Bit8u WinBAttributes*/ 0,
730 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
731 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
732 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
733 /*Bit16u WinBSegment*/ 0,
734 /*Bit32u WinFuncPtr*/ 0,
735 /*Bit16u BytesPerScanLine*/ 800*2,
736 // Mandatory information for VBE 1.2 and above
737 /*Bit16u XResolution*/ 800,
738 /*Bit16u YResolution*/ 600,
739 /*Bit8u XCharSize*/ 8,
740 /*Bit8u YCharSize*/ 16,
741 /*Bit8u NumberOfPlanes*/ 1,
742 /*Bit8u BitsPerPixel*/ 16,
743 /*Bit8u NumberOfBanks*/ 1,
744 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
745 /*Bit8u BankSize*/ 0,
746 /*Bit8u NumberOfImagePages*/ 3,
747 /*Bit8u Reserved_page*/ 0,
748 // Direct Color fields (required for direct/6 and YUV/7 memory models)
749 /*Bit8u RedMaskSize*/ 5,
750 /*Bit8u RedFieldPosition*/ 11,
751 /*Bit8u GreenMaskSize*/ 6,
752 /*Bit8u GreenFieldPosition*/ 5,
753 /*Bit8u BlueMaskSize*/ 5,
754 /*Bit8u BlueFieldPosition*/ 0,
755 /*Bit8u RsvdMaskSize*/ 0,
756 /*Bit8u RsvdFieldPosition*/ 0,
757 /*Bit8u DirectColorModeInfo*/ 0,
758 // Mandatory information for VBE 2.0 and above
760 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
762 /*Bit32u PhysBasePtr*/ 0,
764 /*Bit32u OffScreenMemOffset*/ 0,
765 /*Bit16u OffScreenMemSize*/ 0,
766 // Mandatory information for VBE 3.0 and above
767 /*Bit16u LinBytesPerScanLine*/ 800*2,
768 /*Bit8u BnkNumberOfPages*/ 0,
769 /*Bit8u LinNumberOfPages*/ 0,
770 /*Bit8u LinRedMaskSize*/ 5,
771 /*Bit8u LinRedFieldPosition*/ 11,
772 /*Bit8u LinGreenMaskSize*/ 6,
773 /*Bit8u LinGreenFieldPosition*/ 5,
774 /*Bit8u LinBlueMaskSize*/ 5,
775 /*Bit8u LinBlueFieldPosition*/ 0,
776 /*Bit8u LinRsvdMaskSize*/ 0,
777 /*Bit8u LinRsvdFieldPosition*/ 0,
778 /*Bit32u MaxPixelClock*/ 0,
784 VBE_VESA_MODE_1024X768X565
,
786 /*typedef struct ModeInfoBlock
788 // Mandatory information for all VBE revisions
789 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
790 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
791 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
793 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
795 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
796 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
797 VBE_WINDOW_ATTRIBUTE_READABLE
|
798 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
799 /*Bit8u WinBAttributes*/ 0,
800 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
801 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
802 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
803 /*Bit16u WinBSegment*/ 0,
804 /*Bit32u WinFuncPtr*/ 0,
805 /*Bit16u BytesPerScanLine*/ 1024*2,
806 // Mandatory information for VBE 1.2 and above
807 /*Bit16u XResolution*/ 1024,
808 /*Bit16u YResolution*/ 768,
809 /*Bit8u XCharSize*/ 8,
810 /*Bit8u YCharSize*/ 16,
811 /*Bit8u NumberOfPlanes*/ 1,
812 /*Bit8u BitsPerPixel*/ 16,
813 /*Bit8u NumberOfBanks*/ 1,
814 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
815 /*Bit8u BankSize*/ 0,
816 /*Bit8u NumberOfImagePages*/ 1,
817 /*Bit8u Reserved_page*/ 0,
818 // Direct Color fields (required for direct/6 and YUV/7 memory models)
819 /*Bit8u RedMaskSize*/ 5,
820 /*Bit8u RedFieldPosition*/ 11,
821 /*Bit8u GreenMaskSize*/ 6,
822 /*Bit8u GreenFieldPosition*/ 5,
823 /*Bit8u BlueMaskSize*/ 5,
824 /*Bit8u BlueFieldPosition*/ 0,
825 /*Bit8u RsvdMaskSize*/ 0,
826 /*Bit8u RsvdFieldPosition*/ 0,
827 /*Bit8u DirectColorModeInfo*/ 0,
828 // Mandatory information for VBE 2.0 and above
830 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
832 /*Bit32u PhysBasePtr*/ 0,
834 /*Bit32u OffScreenMemOffset*/ 0,
835 /*Bit16u OffScreenMemSize*/ 0,
836 // Mandatory information for VBE 3.0 and above
837 /*Bit16u LinBytesPerScanLine*/ 1024*2,
838 /*Bit8u BnkNumberOfPages*/ 0,
839 /*Bit8u LinNumberOfPages*/ 0,
840 /*Bit8u LinRedMaskSize*/ 5,
841 /*Bit8u LinRedFieldPosition*/ 11,
842 /*Bit8u LinGreenMaskSize*/ 6,
843 /*Bit8u LinGreenFieldPosition*/ 5,
844 /*Bit8u LinBlueMaskSize*/ 5,
845 /*Bit8u LinBlueFieldPosition*/ 0,
846 /*Bit8u LinRsvdMaskSize*/ 0,
847 /*Bit8u LinRsvdFieldPosition*/ 0,
848 /*Bit32u MaxPixelClock*/ 0,
854 VBE_VESA_MODE_640X480X888
,
856 /*typedef struct ModeInfoBlock
858 // Mandatory information for all VBE revisions
859 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
860 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
861 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
863 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
865 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
866 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
867 VBE_WINDOW_ATTRIBUTE_READABLE
|
868 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
869 /*Bit8u WinBAttributes*/ 0,
870 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
871 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
872 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
873 /*Bit16u WinBSegment*/ 0,
874 /*Bit32u WinFuncPtr*/ 0,
875 /*Bit16u BytesPerScanLine*/ 640*3,
876 // Mandatory information for VBE 1.2 and above
877 /*Bit16u XResolution*/ 640,
878 /*Bit16u YResolution*/ 480,
879 /*Bit8u XCharSize*/ 8,
880 /*Bit8u YCharSize*/ 16,
881 /*Bit8u NumberOfPlanes*/ 1,
882 /*Bit8u BitsPerPixel*/ 24,
883 /*Bit8u NumberOfBanks*/ 1,
884 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
885 /*Bit8u BankSize*/ 0,
886 /*Bit8u NumberOfImagePages*/ 3,
887 /*Bit8u Reserved_page*/ 0,
888 // Direct Color fields (required for direct/6 and YUV/7 memory models)
889 /*Bit8u RedMaskSize*/ 8,
890 /*Bit8u RedFieldPosition*/ 16,
891 /*Bit8u GreenMaskSize*/ 8,
892 /*Bit8u GreenFieldPosition*/ 8,
893 /*Bit8u BlueMaskSize*/ 8,
894 /*Bit8u BlueFieldPosition*/ 0,
895 /*Bit8u RsvdMaskSize*/ 0,
896 /*Bit8u RsvdFieldPosition*/ 0,
897 /*Bit8u DirectColorModeInfo*/ 0,
898 // Mandatory information for VBE 2.0 and above
900 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
902 /*Bit32u PhysBasePtr*/ 0,
904 /*Bit32u OffScreenMemOffset*/ 0,
905 /*Bit16u OffScreenMemSize*/ 0,
906 // Mandatory information for VBE 3.0 and above
907 /*Bit16u LinBytesPerScanLine*/ 640*3,
908 /*Bit8u BnkNumberOfPages*/ 0,
909 /*Bit8u LinNumberOfPages*/ 0,
910 /*Bit8u LinRedMaskSize*/ 8,
911 /*Bit8u LinRedFieldPosition*/ 16,
912 /*Bit8u LinGreenMaskSize*/ 8,
913 /*Bit8u LinGreenFieldPosition*/ 8,
914 /*Bit8u LinBlueMaskSize*/ 8,
915 /*Bit8u LinBlueFieldPosition*/ 0,
916 /*Bit8u LinRsvdMaskSize*/ 0,
917 /*Bit8u LinRsvdFieldPosition*/ 0,
918 /*Bit32u MaxPixelClock*/ 0,
924 VBE_VESA_MODE_800X600X888
,
926 /*typedef struct ModeInfoBlock
928 // Mandatory information for all VBE revisions
929 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
930 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
931 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
933 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
935 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
936 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
937 VBE_WINDOW_ATTRIBUTE_READABLE
|
938 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
939 /*Bit8u WinBAttributes*/ 0,
940 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
941 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
942 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
943 /*Bit16u WinBSegment*/ 0,
944 /*Bit32u WinFuncPtr*/ 0,
945 /*Bit16u BytesPerScanLine*/ 800*3,
946 // Mandatory information for VBE 1.2 and above
947 /*Bit16u XResolution*/ 800,
948 /*Bit16u YResolution*/ 600,
949 /*Bit8u XCharSize*/ 8,
950 /*Bit8u YCharSize*/ 16,
951 /*Bit8u NumberOfPlanes*/ 1,
952 /*Bit8u BitsPerPixel*/ 24,
953 /*Bit8u NumberOfBanks*/ 1,
954 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
955 /*Bit8u BankSize*/ 0,
956 /*Bit8u NumberOfImagePages*/ 1,
957 /*Bit8u Reserved_page*/ 0,
958 // Direct Color fields (required for direct/6 and YUV/7 memory models)
959 /*Bit8u RedMaskSize*/ 8,
960 /*Bit8u RedFieldPosition*/ 16,
961 /*Bit8u GreenMaskSize*/ 8,
962 /*Bit8u GreenFieldPosition*/ 8,
963 /*Bit8u BlueMaskSize*/ 8,
964 /*Bit8u BlueFieldPosition*/ 0,
965 /*Bit8u RsvdMaskSize*/ 0,
966 /*Bit8u RsvdFieldPosition*/ 0,
967 /*Bit8u DirectColorModeInfo*/ 0,
968 // Mandatory information for VBE 2.0 and above
970 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
972 /*Bit32u PhysBasePtr*/ 0,
974 /*Bit32u OffScreenMemOffset*/ 0,
975 /*Bit16u OffScreenMemSize*/ 0,
976 // Mandatory information for VBE 3.0 and above
977 /*Bit16u LinBytesPerScanLine*/ 800*3,
978 /*Bit8u BnkNumberOfPages*/ 0,
979 /*Bit8u LinNumberOfPages*/ 0,
980 /*Bit8u LinRedMaskSize*/ 8,
981 /*Bit8u LinRedFieldPosition*/ 16,
982 /*Bit8u LinGreenMaskSize*/ 8,
983 /*Bit8u LinGreenFieldPosition*/ 8,
984 /*Bit8u LinBlueMaskSize*/ 8,
985 /*Bit8u LinBlueFieldPosition*/ 0,
986 /*Bit8u LinRsvdMaskSize*/ 0,
987 /*Bit8u LinRsvdFieldPosition*/ 0,
988 /*Bit32u MaxPixelClock*/ 0,
994 VBE_VESA_MODE_1024X768X888
,
996 /*typedef struct ModeInfoBlock
998 // Mandatory information for all VBE revisions
999 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
1000 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
1001 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
1003 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
1005 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
1006 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
1007 VBE_WINDOW_ATTRIBUTE_READABLE
|
1008 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
1009 /*Bit8u WinBAttributes*/ 0,
1010 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
1011 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
1012 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
1013 /*Bit16u WinBSegment*/ 0,
1014 /*Bit32u WinFuncPtr*/ 0,
1015 /*Bit16u BytesPerScanLine*/ 1024*3,
1016 // Mandatory information for VBE 1.2 and above
1017 /*Bit16u XResolution*/ 1024,
1018 /*Bit16u YResolution*/ 768,
1019 /*Bit8u XCharSize*/ 8,
1020 /*Bit8u YCharSize*/ 16,
1021 /*Bit8u NumberOfPlanes*/ 1,
1022 /*Bit8u BitsPerPixel*/ 24,
1023 /*Bit8u NumberOfBanks*/ 1,
1024 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
1025 /*Bit8u BankSize*/ 0,
1026 /*Bit8u NumberOfImagePages*/ 0,
1027 /*Bit8u Reserved_page*/ 0,
1028 // Direct Color fields (required for direct/6 and YUV/7 memory models)
1029 /*Bit8u RedMaskSize*/ 8,
1030 /*Bit8u RedFieldPosition*/ 16,
1031 /*Bit8u GreenMaskSize*/ 8,
1032 /*Bit8u GreenFieldPosition*/ 8,
1033 /*Bit8u BlueMaskSize*/ 8,
1034 /*Bit8u BlueFieldPosition*/ 0,
1035 /*Bit8u RsvdMaskSize*/ 0,
1036 /*Bit8u RsvdFieldPosition*/ 0,
1037 /*Bit8u DirectColorModeInfo*/ 0,
1038 // Mandatory information for VBE 2.0 and above
1040 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
1042 /*Bit32u PhysBasePtr*/ 0,
1044 /*Bit32u OffScreenMemOffset*/ 0,
1045 /*Bit16u OffScreenMemSize*/ 0,
1046 // Mandatory information for VBE 3.0 and above
1047 /*Bit16u LinBytesPerScanLine*/ 1024*3,
1048 /*Bit8u BnkNumberOfPages*/ 0,
1049 /*Bit8u LinNumberOfPages*/ 0,
1050 /*Bit8u LinRedMaskSize*/ 8,
1051 /*Bit8u LinRedFieldPosition*/ 16,
1052 /*Bit8u LinGreenMaskSize*/ 8,
1053 /*Bit8u LinGreenFieldPosition*/ 8,
1054 /*Bit8u LinBlueMaskSize*/ 8,
1055 /*Bit8u LinBlueFieldPosition*/ 0,
1056 /*Bit8u LinRsvdMaskSize*/ 0,
1057 /*Bit8u LinRsvdFieldPosition*/ 0,
1058 /*Bit32u MaxPixelClock*/ 0,
1059 /*} ModeInfoBlock;*/
1064 VBE_OWN_MODE_640X480X8888
,
1066 /*typedef struct ModeInfoBlock
1068 // Mandatory information for all VBE revisions
1069 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
1070 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
1071 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
1073 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
1075 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
1076 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
1077 VBE_WINDOW_ATTRIBUTE_READABLE
|
1078 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
1079 /*Bit8u WinBAttributes*/ 0,
1080 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
1081 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
1082 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
1083 /*Bit16u WinBSegment*/ 0,
1084 /*Bit32u WinFuncPtr*/ 0,
1085 /*Bit16u BytesPerScanLine*/ 640*4,
1086 // Mandatory information for VBE 1.2 and above
1087 /*Bit16u XResolution*/ 640,
1088 /*Bit16u YResolution*/ 480,
1089 /*Bit8u XCharSize*/ 8,
1090 /*Bit8u YCharSize*/ 16,
1091 /*Bit8u NumberOfPlanes*/ 1,
1092 /*Bit8u BitsPerPixel*/ 32,
1093 /*Bit8u NumberOfBanks*/ 1,
1094 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
1095 /*Bit8u BankSize*/ 0,
1096 /*Bit8u NumberOfImagePages*/ 1,
1097 /*Bit8u Reserved_page*/ 0,
1098 // Direct Color fields (required for direct/6 and YUV/7 memory models)
1099 /*Bit8u RedMaskSize*/ 8,
1100 /*Bit8u RedFieldPosition*/ 16,
1101 /*Bit8u GreenMaskSize*/ 8,
1102 /*Bit8u GreenFieldPosition*/ 8,
1103 /*Bit8u BlueMaskSize*/ 8,
1104 /*Bit8u BlueFieldPosition*/ 0,
1105 /*Bit8u RsvdMaskSize*/ 8,
1106 /*Bit8u RsvdFieldPosition*/ 24,
1107 /*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE
,
1108 // Mandatory information for VBE 2.0 and above
1110 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
1112 /*Bit32u PhysBasePtr*/ 0,
1114 /*Bit32u OffScreenMemOffset*/ 0,
1115 /*Bit16u OffScreenMemSize*/ 0,
1116 // Mandatory information for VBE 3.0 and above
1117 /*Bit16u LinBytesPerScanLine*/ 640*4,
1118 /*Bit8u BnkNumberOfPages*/ 0,
1119 /*Bit8u LinNumberOfPages*/ 0,
1120 /*Bit8u LinRedMaskSize*/ 8,
1121 /*Bit8u LinRedFieldPosition*/ 16,
1122 /*Bit8u LinGreenMaskSize*/ 8,
1123 /*Bit8u LinGreenFieldPosition*/ 8,
1124 /*Bit8u LinBlueMaskSize*/ 8,
1125 /*Bit8u LinBlueFieldPosition*/ 0,
1126 /*Bit8u LinRsvdMaskSize*/ 8,
1127 /*Bit8u LinRsvdFieldPosition*/ 24,
1128 /*Bit32u MaxPixelClock*/ 0,
1129 /*} ModeInfoBlock;*/
1134 VBE_OWN_MODE_800X600X8888
,
1136 /*typedef struct ModeInfoBlock
1138 // Mandatory information for all VBE revisions
1139 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
1140 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
1141 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
1143 VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE
|
1145 VBE_MODE_ATTRIBUTE_GRAPHICS_MODE
,
1146 /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE
|
1147 VBE_WINDOW_ATTRIBUTE_READABLE
|
1148 VBE_WINDOW_ATTRIBUTE_WRITEABLE
,
1149 /*Bit8u WinBAttributes*/ 0,
1150 /*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB
,
1151 /*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB
,
1152 /*Bit16u WinASegment*/ VGAMEM_GRAPH
,
1153 /*Bit16u WinBSegment*/ 0,
1154 /*Bit32u WinFuncPtr*/ 0,
1155 /*Bit16u BytesPerScanLine*/ 800*4,
1156 // Mandatory information for VBE 1.2 and above
1157 /*Bit16u XResolution*/ 800,
1158 /*Bit16u YResolution*/ 600,
1159 /*Bit8u XCharSize*/ 8,
1160 /*Bit8u YCharSize*/ 16,
1161 /*Bit8u NumberOfPlanes*/ 1,
1162 /*Bit8u BitsPerPixel*/ 32,
1163 /*Bit8u NumberOfBanks*/ 1,
1164 /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR
,
1165 /*Bit8u BankSize*/ 0,
1166 /*Bit8u NumberOfImagePages*/ 1,
1167 /*Bit8u Reserved_page*/ 0,
1168 // Direct Color fields (required for direct/6 and YUV/7 memory models)
1169 /*Bit8u RedMaskSize*/ 8,
1170 /*Bit8u RedFieldPosition*/ 16,
1171 /*Bit8u GreenMaskSize*/ 8,
1172 /*Bit8u GreenFieldPosition*/ 8,
1173 /*Bit8u BlueMaskSize*/ 8,
1174 /*Bit8u BlueFieldPosition*/ 0,
1175 /*Bit8u RsvdMaskSize*/ 8,
1176 /*Bit8u RsvdFieldPosition*/ 24,
1177 /*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE
,
1178 // Mandatory information for VBE 2.0 and above
1180 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
1182 /*Bit32u PhysBasePtr*/ 0,
1184 /*Bit32u OffScreenMemOffset*/ 0,
1185 /*Bit16u OffScreenMemSize*/ 0,
1186 // Mandatory information for VBE 3.0 and above
1187 /*Bit16u LinBytesPerScanLine*/ 800*4,
1188 /*Bit8u BnkNumberOfPages*/ 0,
1189 /*Bit8u LinNumberOfPages*/ 0,
1190 /*Bit8u LinRedMaskSize*/ 8,
1191 /*Bit8u LinRedFieldPosition*/ 16,
1192 /*Bit8u LinGreenMaskSize*/ 8,
1193 /*Bit8u LinGreenFieldPosition*/ 8,
1194 /*Bit8u LinBlueMaskSize*/ 8,
1195 /*Bit8u LinBlueFieldPosition*/ 0,
1196 /*Bit8u LinRsvdMaskSize*/ 8,
1197 /*Bit8u LinRsvdFieldPosition*/ 24,
1198 /*Bit32u MaxPixelClock*/ 0,
1199 /*} ModeInfoBlock;*/
1204 VBE_OWN_MODE_1024X768X8888
,
1206 /*typedef struct ModeInfoBlock
1208 // Mandatory information for all VBE revisions
1209 /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED
|
1210 VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE
|
1211 VBE_MODE_ATTRIBUTE_COLOR_MODE
|
1213 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
1250 /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS
,
1252 /*Bit32u PhysBasePtr*/ 0,
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;*/
1273 /** END OF THE LIST **/
1275 VBE_VESA_MODE_END_OF_LIST
,