RTEMS  5.0.0
Data Structures | Macros
vbe3.h File Reference

VESA Bios Extension definitions. More...

#include <stdint.h>
#include <rtems/score/basedefs.h>

Go to the source code of this file.

Data Structures

struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 
struct  RTEMS_PACKED
 Used for passing and retrieving registers content to/from real mode interrupt call. More...
 

Macros

#define VBE_functionSupported   0x4F
 
#define VBE_callSuccessful   0x00
 
#define VBE_callFailed   0x01
 
#define VBE_notSupportedInCurHWConf   0x02
 
#define VBE_callInvalid   0x03
 
#define VBE_modeNumberMask   0x01FF
 
#define VBE_modeNumberShift   0x00
 
#define VBE_VESAmodeMask   0x0100
 
#define VBE_VESAmodeShift   0x08
 
#define VBE_refreshRateCtrlMask   0x0800
 
#define VBE_refreshRateCtrlShift   0x0B
 
#define VBE_linearFlatFrameBufMask   0x4000
 
#define VBE_linearFlatFrameBufShift   0x0E
 
#define VBE_preserveDispMemMask   0x8000
 
#define VBE_preserveDispMemShift   0x0F
 
#define VBE_R640x400C256   0x100
 
#define VBE_R640x480C256   0x101
 
#define VBE_R800x600C16   0x102
 
#define VBE_b7R800x600C16   0x6A
 
#define VBE_R800x600C256   0x103
 
#define VBE_R1024x768C16   0x104
 
#define VBE_R1024x768C256   0x105
 
#define VBE_R1280x1024C16   0x106
 
#define VBE_R1280x1024C256   0x107
 
#define VBE_R320x200C32K   0x10D
 
#define VBE_R320x200C64K   0x10E
 
#define VBE_R320x200C17M   0x10F
 
#define VBE_R640x480C32K   0x110
 
#define VBE_R640x480C64K   0x111
 
#define VBE_R640x480C17M   0x112
 
#define VBE_R800x600C32K   0x113
 
#define VBE_R800x600C64K   0x114
 
#define VBE_R800x600C17M   0x115
 
#define VBE_R1024x768C32K   0x116
 
#define VBE_R1024x768C64K   0x117
 
#define VBE_R1024x768C17M   0x118
 
#define VBE_R1280x1024C32K   0x119
 
#define VBE_R1280x1024C64K   0x11A
 
#define VBE_R1280x1024C17M   0x11B
 
#define VBE_SpecialMode   0x81FF
 
#define VBE_C80R60   0x108
 
#define VBE_C132R25   0x109
 
#define VBE_C132R43   0x10A
 
#define VBE_C132R50   0x10B
 
#define VBE_C132R60   0x10C
 
#define VBE_RetVBEConInf   0x4F00
 
#define VBE_RetVBEModInf   0x4F01
 
#define VBE_SetVBEMod   0x4F02
 
#define VBE_RetCurVBEMod   0x4F03
 
#define VBE_SavResSta   0x4F04
 
#define VBE_DisWinCon   0x4F05
 
#define VBE_SetGetLogScaLinLen   0x4F06
 
#define VBE_SetGetDisSta   0x4F07
 
#define VBE_SetGetDACPalFor   0x4F08
 
#define VBE_SetGetPalDat   0x4F09
 
#define VBE_RetVBEProModInt   0x4F0A
 
#define VBE_GetSetpixclo   0x4F0B
 
#define VBE_PowManExt   0x4F10
 
#define VBE_FlaPanIntExt   0x4F11
 
#define VBE_AudIntExt   0x4F13
 
#define VBE_OEMExt   0x4F14
 
#define VBE_DisDatCha   0x4F15
 
#define VBE_RetVBESupSpeInf   0x00
 
#define VBE_SIGNATURE   "VESA"
 
#define VBE20plus_SIGNATURE   "VBE2"
 
#define VBE_STUB_VideoModeList   0xFFFF
 
#define VBE_END_OF_VideoModeList   0xFFFF
 
#define VBE_DACswitchableMask   0x0001
 
#define VBE_notVGAcompatibleMask   0x0002
 
#define VBE_specialRAMDACopMask   0x0004
 
#define VBE_hwStereoscopicMask   0x0008
 
#define VBE_supportEVCconnMask   0x0010
 
#define VBE_modSupInHWMask   0x0001
 
#define VBE_TTYOutSupByBIOSMask   0x0004
 
#define VBE_ColorModeMask   0x0008
 
#define VBE_GraphicsModeMask   0x0010
 
#define VBE_VGACompModeMask   0x0020
 
#define VBE_VGACompWinMemModeMask   0x0040
 
#define VBE_LinFraBufModeAvaiMask   0x0080
 
#define VBE_DblScnModeAvaiMask   0x0100
 
#define VBE_InterlModeAvaiMask   0x0200
 
#define VBE_HWTripBufSupMask   0x0400
 
#define VBE_HWSterDispSupMask   0x0800
 
#define VBE_DualDispStAdrSupMask   0x1000
 
#define VBE_RelocWinSupMask   0x01
 
#define VBE_WinReadableMask   0x02
 
#define VBE_WinWritableMask   0x04
 
#define VBE_TextMode   0x00
 
#define VBE_CGAGraphics   0x01
 
#define VBE_HerculesGraphics   0x02
 
#define VBE_Planar   0x03
 
#define VBE_PackedPixel   0x04
 
#define VBE_NonChain4Color256   0x05
 
#define VBE_DirectColor   0x06
 
#define VBE_YUV   0x07
 
#define VBE_ColRampProgMask   0x01
 
#define VBE_RsvdBitsUsableMask   0x02
 
#define VBE_GrModeDblScanMask   0x01
 
#define VBE_GrModeInterlMask   0x02
 
#define VBE_HorSncPolNegMask   0x04
 
#define VBE_VerSncPolNegMask   0x08
 
#define VBEDDC_Capabilities   0x0
 
#define VBEDDC_ReadEDID   0x1
 
#define VBEDDC_1SupportedMask   0x1
 
#define VBEDDC_2SupportedMask   0x2
 
#define VBEDDC_scrBlnkDatTrMs   0x4
 
#define VBESCI_ReportCapabil   0x10
 
#define VBESCI_BegSCLSDACtrl   0x11
 
#define VBESCI_EndSCLSDACtrl   0x12
 
#define VBESCI_WrtSCLClkLine   0x13
 
#define VBESCI_WrtSDADatLine   0x14
 
#define VBESCI_RdySCLClkLine   0x15
 
#define VBESCI_RdySDADatLine   0x16
 
#define VBESCI_capSCLwrtMask   0x1
 
#define VBESCI_capSDAwrtMask   0x2
 
#define VBESCI_capSCLrdyMask   0x4
 
#define VBESCI_capSDArdyMask   0x8
 

Detailed Description

VESA Bios Extension definitions.

This file contains definitions for constants related to VBE. More information can be found at http://www.vesa.org/vesa-standards/free-standards/. VESA public standards may be found at http://www.vesa.org/wp-content/uploads/2010/12/thankspublic.htm.

Macro Definition Documentation

◆ VBE20plus_SIGNATURE

#define VBE20plus_SIGNATURE   "VBE2"

Signature for VBE 2.0 and higher

◆ VBE_AudIntExt

#define VBE_AudIntExt   0x4F13

VBE function - Audio Interface Extensions (AI)

◆ VBE_b7R800x600C16

#define VBE_b7R800x600C16   0x6A

7-bit mode, Resolution: 800x600, Colors: 16

◆ VBE_C132R25

#define VBE_C132R25   0x109

15-bit mode, Columns: 132, Rows: 25

◆ VBE_C132R43

#define VBE_C132R43   0x10A

15-bit mode, Columns: 132, Rows: 43

◆ VBE_C132R50

#define VBE_C132R50   0x10B

15-bit mode, Columns: 132, Rows: 50

◆ VBE_C132R60

#define VBE_C132R60   0x10C

15-bit mode, Columns: 132, Rows: 60

◆ VBE_C80R60

#define VBE_C80R60   0x108

15-bit mode, Columns: 80, Rows: 60

◆ VBE_callFailed

#define VBE_callFailed   0x01

AH == 01h: Function call failed

◆ VBE_callInvalid

#define VBE_callInvalid   0x03

AH == 03h: Function call invalid in current video mode

◆ VBE_callSuccessful

#define VBE_callSuccessful   0x00

AH == 00h: Function call successful

◆ VBE_ColorModeMask

#define VBE_ColorModeMask   0x0008

Mode Info Block - Mode Attributes
D3 = Monochrome/color mode (see note below). 0 = Monochrome mode
1 = Color mode

◆ VBE_ColRampProgMask

#define VBE_ColRampProgMask   0x01

D0 = Color ramp is fixed/programmable. 0 = Color ramp is fixed
1 = Color ramp is programmable

◆ VBE_DACswitchableMask

#define VBE_DACswitchableMask   0x0001

VBE Info Block - Capabilities
D0 = 0 DAC is fixed width, with 6 bits per primary color
D0 = 1 DAC width is switchable to 8 bits per primary color

◆ VBE_DblScnModeAvaiMask

#define VBE_DblScnModeAvaiMask   0x0100

Mode Info Block - Mode Attributes
D8 = Double scan mode is available. 0 = No
1 = Yes

◆ VBE_DisDatCha

#define VBE_DisDatCha   0x4F15

VBE function - Display Data Channel (DDC), Serial Control Interface (SCI)

◆ VBE_DisWinCon

#define VBE_DisWinCon   0x4F05

VBE function - Display Window Control

◆ VBE_DualDispStAdrSupMask

#define VBE_DualDispStAdrSupMask   0x1000

Mode Info Block - Mode Attributes
D12 = Dual display start address support. 0 = No
1 = Yes

◆ VBE_FlaPanIntExt

#define VBE_FlaPanIntExt   0x4F11

VBE function - Flat Panel Interface Extensions (FP)

◆ VBE_functionSupported

#define VBE_functionSupported   0x4F

AL == 4Fh: Function is supported
AL != 4Fh: Function is not supported

◆ VBE_GetSetpixclo

#define VBE_GetSetpixclo   0x4F0B

VBE function - Get/Set pixel clock

◆ VBE_GraphicsModeMask

#define VBE_GraphicsModeMask   0x0010

Mode Info Block - Mode Attributes
D4 = Mode type. 0 = Text mode
1 = Graphics mode

◆ VBE_GrModeDblScanMask

#define VBE_GrModeDblScanMask   0x01

CRTC Info Block - Flags
D0 = Double Scan Mode Enable. 0 = Graphics mode is not double scanned
1 = Graphics mode is double scanned

◆ VBE_GrModeInterlMask

#define VBE_GrModeInterlMask   0x02

CRTC Info Block - Flags
D1 = Interlaced Mode Enable. 0 = Graphics mode is non-interlaced
1 = Graphics mode is interlaced

◆ VBE_HorSncPolNegMask

#define VBE_HorSncPolNegMask   0x04

CRTC Info Block - Flags
D2 = Horizontal sync polarity. 0 = Horizontal sync polarity is positive (+)
1 = Horizontal sync polarity is negative (-)

◆ VBE_HWSterDispSupMask

#define VBE_HWSterDispSupMask   0x0800

Mode Info Block - Mode Attributes
D11 = Hardware stereoscopic display support. 0 = No
1 = Yes

◆ VBE_hwStereoscopicMask

#define VBE_hwStereoscopicMask   0x0008

VBE Info Block - Capabilities
D3 = 0 No hardware stereoscopic signaling support
D3 = 1 Hardware stereoscopic signaling supported by controller

◆ VBE_HWTripBufSupMask

#define VBE_HWTripBufSupMask   0x0400

Mode Info Block - Mode Attributes
D10 = Hardware triple buffering support. 0 = No
1 = Yes

◆ VBE_InterlModeAvaiMask

#define VBE_InterlModeAvaiMask   0x0200

Mode Info Block - Mode Attributes
D9 = Interlaced mode is available. 0 = No
1 = Yes

◆ VBE_linearFlatFrameBufMask

#define VBE_linearFlatFrameBufMask   0x4000

If D14 == 0, Use Banked/Windowed Frame Buffer
If D14 == 1, Use Linear/Flat Frame Buffer

◆ VBE_LinFraBufModeAvaiMask

#define VBE_LinFraBufModeAvaiMask   0x0080

Mode Info Block - Mode Attributes
D7 = Linear frame buffer mode is available. 0 = No
1 = Yes

◆ VBE_modeNumberMask

#define VBE_modeNumberMask   0x01FF

D0-D8 = Mode number

◆ VBE_modSupInHWMask

#define VBE_modSupInHWMask   0x0001

Mode Info Block - Mode Attributes
D0 = Mode supported by hardware configuration. 0 = Mode not supported in hardware
1 = Mode supported in hardware

◆ VBE_notSupportedInCurHWConf

#define VBE_notSupportedInCurHWConf   0x02

AH == 02h: Function is not supported in the current hardware configuration

◆ VBE_notVGAcompatibleMask

#define VBE_notVGAcompatibleMask   0x0002

VBE Info Block - Capabilities
D1 = 0 Controller is VGA compatible
D1 = 1 Controller is not VGA compatible

◆ VBE_OEMExt

#define VBE_OEMExt   0x4F14

VBE function - OEM Extensions

◆ VBE_PowManExt

#define VBE_PowManExt   0x4F10

VBE function - Power Management Extensions (PM)

◆ VBE_preserveDispMemMask

#define VBE_preserveDispMemMask   0x8000

If D15 == 0, Clear display memory
If D15 == 1, Preserve display memory

◆ VBE_R1024x768C16

#define VBE_R1024x768C16   0x104

15-bit mode, Resolution: 1024x768, Colors: 16

◆ VBE_R1024x768C17M

#define VBE_R1024x768C17M   0x118

15-bit mode, Resolution: 1024x768, Colors: 16.8M (8:8:8)

◆ VBE_R1024x768C256

#define VBE_R1024x768C256   0x105

15-bit mode, Resolution: 1024x768, Colors: 256

◆ VBE_R1024x768C32K

#define VBE_R1024x768C32K   0x116

15-bit mode, Resolution: 1024x768, Colors: 32K (1:5:5:5)

◆ VBE_R1024x768C64K

#define VBE_R1024x768C64K   0x117

15-bit mode, Resolution: 1024x768, Colors: 64K (5:6:5)

◆ VBE_R1280x1024C16

#define VBE_R1280x1024C16   0x106

15-bit mode, Resolution: 1280x1024, Colors: 16

◆ VBE_R1280x1024C17M

#define VBE_R1280x1024C17M   0x11B

15-bit mode, Resolution: 1280x1024, Colors: 16.8M (8:8:8)

◆ VBE_R1280x1024C256

#define VBE_R1280x1024C256   0x107

15-bit mode, Resolution: 1280x1024, Colors: 256

◆ VBE_R1280x1024C32K

#define VBE_R1280x1024C32K   0x119

15-bit mode, Resolution: 1280x1024, Colors: 32K (1:5:5:5)

◆ VBE_R1280x1024C64K

#define VBE_R1280x1024C64K   0x11A

15-bit mode, Resolution: 1280x1024, Colors: 64K (5:6:5)

◆ VBE_R320x200C17M

#define VBE_R320x200C17M   0x10F

15-bit mode, Resolution: 320x200, Colors: 16.8M (8:8:8)

◆ VBE_R320x200C32K

#define VBE_R320x200C32K   0x10D

15-bit mode, Resolution: 320x200, Colors: 32K (1:5:5:5)

◆ VBE_R320x200C64K

#define VBE_R320x200C64K   0x10E

15-bit mode, Resolution: 320x200, Colors: 64K (5:6:5)

◆ VBE_R640x400C256

#define VBE_R640x400C256   0x100

15-bit mode, Resolution: 640x400, Colors: 256

◆ VBE_R640x480C17M

#define VBE_R640x480C17M   0x112

15-bit mode, Resolution: 640x480, Colors: 16.8M (8:8:8)

◆ VBE_R640x480C256

#define VBE_R640x480C256   0x101

15-bit mode, Resolution: 640x480, Colors: 256

◆ VBE_R640x480C32K

#define VBE_R640x480C32K   0x110

15-bit mode, Resolution: 640x480, Colors: 32K (1:5:5:5)

◆ VBE_R640x480C64K

#define VBE_R640x480C64K   0x111

15-bit mode, Resolution: 640x480, Colors: 64K (5:6:5)

◆ VBE_R800x600C16

#define VBE_R800x600C16   0x102

15-bit mode, Resolution: 800x600, Colors: 16

◆ VBE_R800x600C17M

#define VBE_R800x600C17M   0x115

15-bit mode, Resolution: 800x600, Colors: 16.8M (8:8:8)

◆ VBE_R800x600C256

#define VBE_R800x600C256   0x103

15-bit mode, Resolution: 800x600, Colors: 256

◆ VBE_R800x600C32K

#define VBE_R800x600C32K   0x113

15-bit mode, Resolution: 800x600, Colors: 32K (1:5:5:5)

◆ VBE_R800x600C64K

#define VBE_R800x600C64K   0x114

15-bit mode, Resolution: 800x600, Colors: 64K (5:6:5)

◆ VBE_refreshRateCtrlMask

#define VBE_refreshRateCtrlMask   0x0800

If D11 == 0, Use current BIOS default refresh rate
If D11 == 1, Use user specified CRTC values for refresh rate

◆ VBE_RelocWinSupMask

#define VBE_RelocWinSupMask   0x01

D0 = Relocatable window(s) supported. 0 = Single non-relocatable window only
1 = Relocatable window(s) are supported

◆ VBE_RetCurVBEMod

#define VBE_RetCurVBEMod   0x4F03

VBE function - Return Current VBE Mode

◆ VBE_RetVBEConInf

#define VBE_RetVBEConInf   0x4F00

VBE function - Return VBE Controller Information

◆ VBE_RetVBEModInf

#define VBE_RetVBEModInf   0x4F01

VBE function - Return VBE Mode Information

◆ VBE_RetVBEProModInt

#define VBE_RetVBEProModInt   0x4F0A

VBE function - Return VBE Protected Mode Interface

◆ VBE_RetVBESupSpeInf

#define VBE_RetVBESupSpeInf   0x00

Return VBE Supplemental Specification Information

◆ VBE_RsvdBitsUsableMask

#define VBE_RsvdBitsUsableMask   0x02

D1 = Bits in Rsvd field are usable/reserved. 0 = Bits in Rsvd field are reserved
1 = Bits in Rsvd field are usable by the application

◆ VBE_SavResSta

#define VBE_SavResSta   0x4F04

VBE function - Save/Restore State

◆ VBE_SetGetDACPalFor

#define VBE_SetGetDACPalFor   0x4F08

VBE function - Set/Get DAC Palette Format

◆ VBE_SetGetDisSta

#define VBE_SetGetDisSta   0x4F07

VBE function - Set/Get Display Start

◆ VBE_SetGetLogScaLinLen

#define VBE_SetGetLogScaLinLen   0x4F06

VBE function - Set/Get Logical Scan Line Length

◆ VBE_SetGetPalDat

#define VBE_SetGetPalDat   0x4F09

VBE function - Set/Get Palette Data

◆ VBE_SetVBEMod

#define VBE_SetVBEMod   0x4F02

VBE function - Set VBE Mode

◆ VBE_SIGNATURE

#define VBE_SIGNATURE   "VESA"

General VBE signature

◆ VBE_specialRAMDACopMask

#define VBE_specialRAMDACopMask   0x0004

VBE Info Block - Capabilities
D2 = 0 Normal RAMDAC operation
D2 = 1 When programming large blocks of information to the RAMDAC, use the blank bit in Function 09h.

◆ VBE_STUB_VideoModeList

#define VBE_STUB_VideoModeList   0xFFFF

for STUB see VBE CORE FUNCTIONS VERSION 3.0 - Appendix 1

◆ VBE_supportEVCconnMask

#define VBE_supportEVCconnMask   0x0010

VBE Info Block - Capabilities
D4 = 0 Stereo signaling supported via external VESA stereo connector
D4 = 1 Stereo signaling supported via VESA EVC connector

◆ VBE_TTYOutSupByBIOSMask

#define VBE_TTYOutSupByBIOSMask   0x0004

Mode Info Block - Mode Attributes
D2 = TTY Output functions supported by BIOS. 0 = TTY Output functions not supported by BIOS
1 = TTY Output functions supported by BIOS

◆ VBE_VerSncPolNegMask

#define VBE_VerSncPolNegMask   0x08

CRTC Info Block - Flags
D3 = Vertical sync polarity. 0 = Vertical sync polarity is positive (+)
1 = Vertical sync polarity is negative (-)

◆ VBE_VESAmodeMask

#define VBE_VESAmodeMask   0x0100

If D8 == 0, this is not a VESA defined VBE mode
If D8 == 1, this is a VESA defined VBE mode

◆ VBE_VGACompModeMask

#define VBE_VGACompModeMask   0x0020

Mode Info Block - Mode Attributes
D5 = VGA compatible mode. 0 = Yes
1 = No

◆ VBE_VGACompWinMemModeMask

#define VBE_VGACompWinMemModeMask   0x0040

Mode Info Block - Mode Attributes
D6 = VGA compatible windowed memory mode is available. 0 = Yes
1 = No

◆ VBE_WinReadableMask

#define VBE_WinReadableMask   0x02

D1 = Window readable. 0 = Window is not readable
1 = Window is readable

◆ VBE_WinWritableMask

#define VBE_WinWritableMask   0x04

D2 = Window writeable. 0 = Window is not writeable
1 = Window is writeable

◆ VBEDDC_1SupportedMask

#define VBEDDC_1SupportedMask   0x1

0 - DDC1 not supported; 1 - DDC1 supported

◆ VBEDDC_2SupportedMask

#define VBEDDC_2SupportedMask   0x2

0 - DDC2 not supported; 1 - DDC2 supported

◆ VBEDDC_Capabilities

#define VBEDDC_Capabilities   0x0

VBE/DDC subfunction - Report VBE/DDC Capabilities

◆ VBEDDC_ReadEDID

#define VBEDDC_ReadEDID   0x1

VBE/DDC subfunction - Read EDID

◆ VBEDDC_scrBlnkDatTrMs

#define VBEDDC_scrBlnkDatTrMs   0x4

0 - Screen not blanked during data transfer
1 - Screen blanked during data transfer

◆ VBESCI_BegSCLSDACtrl

#define VBESCI_BegSCLSDACtrl   0x11

VBE/SCI subfunction - Begin SCL/SDA control

◆ VBESCI_capSCLrdyMask

#define VBESCI_capSCLrdyMask   0x4

Can read from SCL clock line

◆ VBESCI_capSCLwrtMask

#define VBESCI_capSCLwrtMask   0x1

Can write to SCL clock line

◆ VBESCI_capSDArdyMask

#define VBESCI_capSDArdyMask   0x8

Can read from SDA data line

◆ VBESCI_capSDAwrtMask

#define VBESCI_capSDAwrtMask   0x2

Can write to SDA data line

◆ VBESCI_EndSCLSDACtrl

#define VBESCI_EndSCLSDACtrl   0x12

VBE/SCI subfunction - End SCL/SDA control

◆ VBESCI_RdySCLClkLine

#define VBESCI_RdySCLClkLine   0x15

VBE/SCI subfunction - Read SCL clock line

◆ VBESCI_RdySDADatLine

#define VBESCI_RdySDADatLine   0x16

VBE/SCI subfunction - Read SDA data line

◆ VBESCI_ReportCapabil

#define VBESCI_ReportCapabil   0x10

VBE/SCI subfunction - Report VBE/SCI Capabilities

◆ VBESCI_WrtSCLClkLine

#define VBESCI_WrtSCLClkLine   0x13

VBE/SCI subfunction - Write SCL clock line

◆ VBESCI_WrtSDADatLine

#define VBESCI_WrtSDADatLine   0x14

VBE/SCI subfunction - Write SDA data line