44#define VBE_functionSupported 0x4F
46#define VBE_callSuccessful 0x00
48#define VBE_callFailed 0x01
50#define VBE_notSupportedInCurHWConf 0x02
52#define VBE_callInvalid 0x03
56#define VBE_modeNumberMask 0x01FF
57#define VBE_modeNumberShift 0x00
60#define VBE_VESAmodeMask 0x0100
61#define VBE_VESAmodeShift 0x08
65#define VBE_refreshRateCtrlMask 0x0800
66#define VBE_refreshRateCtrlShift 0x0B
70#define VBE_linearFlatFrameBufMask 0x4000
71#define VBE_linearFlatFrameBufShift 0x0E
74#define VBE_preserveDispMemMask 0x8000
75#define VBE_preserveDispMemShift 0x0F
79#define VBE_R640x400C256 0x100
81#define VBE_R640x480C256 0x101
83#define VBE_R800x600C16 0x102
85#define VBE_b7R800x600C16 0x6A
87#define VBE_R800x600C256 0x103
89#define VBE_R1024x768C16 0x104
91#define VBE_R1024x768C256 0x105
93#define VBE_R1280x1024C16 0x106
95#define VBE_R1280x1024C256 0x107
97#define VBE_R320x200C32K 0x10D
99#define VBE_R320x200C64K 0x10E
101#define VBE_R320x200C17M 0x10F
103#define VBE_R640x480C32K 0x110
105#define VBE_R640x480C64K 0x111
107#define VBE_R640x480C17M 0x112
109#define VBE_R800x600C32K 0x113
111#define VBE_R800x600C64K 0x114
113#define VBE_R800x600C17M 0x115
115#define VBE_R1024x768C32K 0x116
117#define VBE_R1024x768C64K 0x117
119#define VBE_R1024x768C17M 0x118
121#define VBE_R1280x1024C32K 0x119
123#define VBE_R1280x1024C64K 0x11A
125#define VBE_R1280x1024C17M 0x11B
126#define VBE_SpecialMode 0x81FF
129#define VBE_C80R60 0x108
130#define VBE_C132R25 0x109
131#define VBE_C132R43 0x10A
132#define VBE_C132R50 0x10B
133#define VBE_C132R60 0x10C
137#define VBE_RetVBEConInf 0x4F00
139#define VBE_RetVBEModInf 0x4F01
141#define VBE_SetVBEMod 0x4F02
143#define VBE_RetCurVBEMod 0x4F03
145#define VBE_SavResSta 0x4F04
147#define VBE_DisWinCon 0x4F05
149#define VBE_SetGetLogScaLinLen 0x4F06
151#define VBE_SetGetDisSta 0x4F07
153#define VBE_SetGetDACPalFor 0x4F08
155#define VBE_SetGetPalDat 0x4F09
157#define VBE_RetVBEProModInt 0x4F0A
159#define VBE_GetSetpixclo 0x4F0B
161#define VBE_PowManExt 0x4F10
163#define VBE_FlaPanIntExt 0x4F11
165#define VBE_AudIntExt 0x4F13
167#define VBE_OEMExt 0x4F14
169#define VBE_DisDatCha 0x4F15
172#define VBE_RetVBESupSpeInf 0x00
191 uint8_t Signature[4];
213#define VBE_SIGNATURE "VESA"
215#define VBE20plus_SIGNATURE "VBE2"
217#define VBE_STUB_VideoModeList 0xFFFF
218#define VBE_END_OF_VideoModeList 0xFFFF
224 uint8_t VbeSignature[4];
230 uint8_t Capabilities[4];
245 uint8_t Reserved[222];
247 uint8_t OemData[256];
349 uint8_t Reserved3[189];
375 uint8_t Reserved[40];
397 uint8_t SupVbeSignature[7];
401 uint8_t SupVbeSubFunc[8];
403 uint16_t OemSoftwareRev;
405 uint8_t *OemVendorNamePtr;
407 uint8_t *OemProductNamePtr;
409 uint8_t *OemProductRevPtr;
411 uint8_t *OemStringPtr;
413 uint8_t Reserved[221];
420#define VBE_DACswitchableMask 0x0001
424#define VBE_notVGAcompatibleMask 0x0002
429#define VBE_specialRAMDACopMask 0x0004
433#define VBE_hwStereoscopicMask 0x0008
437#define VBE_supportEVCconnMask 0x0010
445#define VBE_modSupInHWMask 0x0001
451#define VBE_TTYOutSupByBIOSMask 0x0004
456#define VBE_ColorModeMask 0x0008
461#define VBE_GraphicsModeMask 0x0010
466#define VBE_VGACompModeMask 0x0020
471#define VBE_VGACompWinMemModeMask 0x0040
476#define VBE_LinFraBufModeAvaiMask 0x0080
481#define VBE_DblScnModeAvaiMask 0x0100
486#define VBE_InterlModeAvaiMask 0x0200
491#define VBE_HWTripBufSupMask 0x0400
496#define VBE_HWSterDispSupMask 0x0800
501#define VBE_DualDispStAdrSupMask 0x1000
508#define VBE_RelocWinSupMask 0x01
512#define VBE_WinReadableMask 0x02
516#define VBE_WinWritableMask 0x04
520#define VBE_TextMode 0x00
521#define VBE_CGAGraphics 0x01
522#define VBE_HerculesGraphics 0x02
523#define VBE_Planar 0x03
524#define VBE_PackedPixel 0x04
525#define VBE_NonChain4Color256 0x05
526#define VBE_DirectColor 0x06
535#define VBE_ColRampProgMask 0x01
539#define VBE_RsvdBitsUsableMask 0x02
546#define VBE_GrModeDblScanMask 0x01
551#define VBE_GrModeInterlMask 0x02
556#define VBE_HorSncPolNegMask 0x04
561#define VBE_VerSncPolNegMask 0x08
569#define VBEDDC_Capabilities 0x0
571#define VBEDDC_ReadEDID 0x1
576#define VBEDDC_1SupportedMask 0x1
578#define VBEDDC_2SupportedMask 0x2
581#define VBEDDC_scrBlnkDatTrMs 0x4
589#define VBESCI_ReportCapabil 0x10
591#define VBESCI_BegSCLSDACtrl 0x11
593#define VBESCI_EndSCLSDACtrl 0x12
595#define VBESCI_WrtSCLClkLine 0x13
597#define VBESCI_WrtSDADatLine 0x14
599#define VBESCI_RdySCLClkLine 0x15
601#define VBESCI_RdySDADatLine 0x16
606#define VBESCI_capSCLwrtMask 0x1
608#define VBESCI_capSDAwrtMask 0x2
610#define VBESCI_capSCLrdyMask 0x4
612#define VBESCI_capSDArdyMask 0x8
This header file provides basic definitions used by the API and the implementation.
Used for passing and retrieving registers content to/from real mode interrupt call.
Definition: realmode_int.h:45
uint8_t RedMaskSize
Definition: vbe3.h:298
uint8_t BnkNumberOfImagePages
Definition: vbe3.h:326
uint32_t * WinFuncPtr
Definition: vbe3.h:270
uint16_t HorizontalSyncEnd
Definition: vbe3.h:361
uint8_t RsvdMaskSize
Definition: vbe3.h:310
uint8_t Checksum
Definition: vbe3.h:209
uint8_t LinBlueMaskSize
Definition: vbe3.h:339
uint16_t HorizontalSyncStart
Definition: vbe3.h:359
uint32_t PixelClock
Definition: vbe3.h:371
uint8_t GreenFieldPosition
Definition: vbe3.h:304
uint16_t WinBSegment
Definition: vbe3.h:268
uint8_t Green
Definition: vbe3.h:385
uint8_t MemoryModel
Definition: vbe3.h:289
uint16_t OemSoftwareRev
Definition: vbe3.h:237
uint16_t VerticalSyncEnd
Definition: vbe3.h:367
uint8_t XCharSize
Definition: vbe3.h:279
uint8_t LinNumberOfImagePages
Definition: vbe3.h:328
uint16_t BIOSDataSel
Definition: vbe3.h:197
uint8_t GreenMaskSize
Definition: vbe3.h:302
uint32_t * VideoModePtr
Definition: vbe3.h:232
uint8_t BankSize
Definition: vbe3.h:291
uint32_t MaxPixelClock
Definition: vbe3.h:347
uint8_t * OemStringPtr
Definition: vbe3.h:228
uint16_t PMInitialize
Definition: vbe3.h:195
uint16_t LinBytesPerScanLine
Definition: vbe3.h:324
uint16_t WinASegment
Definition: vbe3.h:266
uint16_t VbeVersion
Definition: vbe3.h:226
uint8_t Reserved0
Definition: vbe3.h:295
uint16_t VerticalSyncStart
Definition: vbe3.h:365
uint16_t VerticalTotal
Definition: vbe3.h:363
uint32_t * PhysBasePtr
Definition: vbe3.h:317
uint16_t offset
Offset to segment described by selector.
Definition: vbe3.h:180
uint16_t A0000Sel
Definition: vbe3.h:199
uint16_t BytesPerScanLine
Definition: vbe3.h:272
uint8_t LinRedMaskSize
Definition: vbe3.h:331
uint16_t RefreshRate
Definition: vbe3.h:373
uint8_t WinAAttributes
Definition: vbe3.h:258
uint32_t Reserved1
Definition: vbe3.h:319
uint8_t NumberOfBanks
Definition: vbe3.h:287
uint8_t LinRsvdMaskSize
Definition: vbe3.h:343
uint16_t ModeAttributes
Definition: vbe3.h:256
uint8_t Blue
Definition: vbe3.h:383
uint8_t * OemProductNamePtr
Definition: vbe3.h:241
uint8_t BitsPerPixel
Definition: vbe3.h:285
uint8_t NumberOfPlanes
Definition: vbe3.h:283
uint8_t LinRsvdFieldPosition
Definition: vbe3.h:345
uint16_t B8000Sel
Definition: vbe3.h:203
uint8_t DirectColorModeInfo
Definition: vbe3.h:314
uint8_t LinRedFieldPosition
Definition: vbe3.h:333
uint16_t SupVbeVersion
Definition: vbe3.h:399
uint8_t Red
Definition: vbe3.h:387
uint16_t Reserved2
Definition: vbe3.h:321
uint16_t CodeSegSel
Definition: vbe3.h:205
uint8_t Flags
Definition: vbe3.h:369
uint8_t RsvdFieldPosition
Definition: vbe3.h:312
uint8_t * OemVendorNamePtr
Definition: vbe3.h:239
uint8_t YCharSize
Definition: vbe3.h:281
uint8_t NumberOfImagePages
Definition: vbe3.h:293
uint8_t InProtectMode
Definition: vbe3.h:207
uint16_t YResolution
Definition: vbe3.h:277
uint16_t selector
Selector or Segment depending on whether this is used from 16bit protected mode or from real mode.
Definition: vbe3.h:183
uint8_t LinBlueFieldPosition
Definition: vbe3.h:341
uint8_t WinBAttributes
Definition: vbe3.h:260
uint8_t * OemProductRevPtr
Definition: vbe3.h:243
uint8_t LinGreenMaskSize
Definition: vbe3.h:335
uint16_t XResolution
Definition: vbe3.h:275
uint16_t WinGranularity
Definition: vbe3.h:262
uint8_t LinGreenFieldPosition
Definition: vbe3.h:337
uint16_t HorizontalTotal
Definition: vbe3.h:357
uint16_t WinSize
Definition: vbe3.h:264
uint8_t BlueMaskSize
Definition: vbe3.h:306
uint16_t B0000Sel
Definition: vbe3.h:201
uint8_t BlueFieldPosition
Definition: vbe3.h:308
uint8_t RedFieldPosition
Definition: vbe3.h:300
uint8_t Alignment
Definition: vbe3.h:389
uint16_t TotalMemory
Definition: vbe3.h:234
uint16_t EntryPoint
Definition: vbe3.h:193