summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/include/vbe3.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/i386/pc386/include/vbe3.h')
-rw-r--r--c/src/lib/libbsp/i386/pc386/include/vbe3.h619
1 files changed, 0 insertions, 619 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/include/vbe3.h b/c/src/lib/libbsp/i386/pc386/include/vbe3.h
deleted file mode 100644
index b62ab6f3ac..0000000000
--- a/c/src/lib/libbsp/i386/pc386/include/vbe3.h
+++ /dev/null
@@ -1,619 +0,0 @@
-/**
- * @file vbe3.h
- *
- * @ingroup i386_pc386
- *
- * @brief 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>.
- */
-
-/*
- * Copyright (C) 2014 Jan Doležal (dolezj21@fel.cvut.cz)
- * CTU in Prague.
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- */
-
-#ifndef _VBE_H
-#define _VBE_H
-
-#ifndef ASM /* ASM */
-
-#include <stdint.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-#include <rtems/score/basedefs.h>
-
-/* VESA BIOS EXTENSION (VBE) Core functions Standard
- Version: 3.0 Date: September 16, 1998 */
-
-/** AL == 4Fh: Function is supported \n
- * AL != 4Fh: Function is not supported */
-#define VBE_functionSupported 0x4F
-/** AH == 00h: Function call successful */
-#define VBE_callSuccessful 0x00
-/** AH == 01h: Function call failed */
-#define VBE_callFailed 0x01
-/** AH == 02h: Function is not supported in the current hardware configuration*/
-#define VBE_notSupportedInCurHWConf 0x02
-/** AH == 03h: Function call invalid in current video mode */
-#define VBE_callInvalid 0x03
-
-/* VBE Mode Numbers */
-/** D0-D8 = Mode number */
-#define VBE_modeNumberMask 0x01FF
-#define VBE_modeNumberShift 0x00
-/** If D8 == 0, this is not a VESA defined VBE mode \n
- If D8 == 1, this is a VESA defined VBE mode */
-#define VBE_VESAmodeMask 0x0100
-#define VBE_VESAmodeShift 0x08
-/* D9-D10 = Reserved by VESA for future expansion (= 0) */
-/** If D11 == 0, Use current BIOS default refresh rate \n
- If D11 == 1, Use user specified CRTC values for refresh rate */
-#define VBE_refreshRateCtrlMask 0x0800
-#define VBE_refreshRateCtrlShift 0x0B
-/* D12-13 = Reserved for VBE/AF (must be 0) */
-/** If D14 == 0, Use Banked/Windowed Frame Buffer \n
- If D14 == 1, Use Linear/Flat Frame Buffer */
-#define VBE_linearFlatFrameBufMask 0x4000
-#define VBE_linearFlatFrameBufShift 0x0E
-/** If D15 == 0, Clear display memory \n
- If D15 == 1, Preserve display memory */
-#define VBE_preserveDispMemMask 0x8000
-#define VBE_preserveDispMemShift 0x0F
-
-/* Graphics modes */
-/** 15-bit mode, Resolution: 640x400, Colors: 256 */
-#define VBE_R640x400C256 0x100
-/** 15-bit mode, Resolution: 640x480, Colors: 256 */
-#define VBE_R640x480C256 0x101
-/** 15-bit mode, Resolution: 800x600, Colors: 16 */
-#define VBE_R800x600C16 0x102
-/** 7-bit mode, Resolution: 800x600, Colors: 16 */
-#define VBE_b7R800x600C16 0x6A
-/** 15-bit mode, Resolution: 800x600, Colors: 256 */
-#define VBE_R800x600C256 0x103
-/** 15-bit mode, Resolution: 1024x768, Colors: 16 */
-#define VBE_R1024x768C16 0x104
-/** 15-bit mode, Resolution: 1024x768, Colors: 256 */
-#define VBE_R1024x768C256 0x105
-/** 15-bit mode, Resolution: 1280x1024, Colors: 16 */
-#define VBE_R1280x1024C16 0x106
-/** 15-bit mode, Resolution: 1280x1024, Colors: 256 */
-#define VBE_R1280x1024C256 0x107
-/** 15-bit mode, Resolution: 320x200, Colors: 32K (1:5:5:5) */
-#define VBE_R320x200C32K 0x10D
-/** 15-bit mode, Resolution: 320x200, Colors: 64K (5:6:5) */
-#define VBE_R320x200C64K 0x10E
-/** 15-bit mode, Resolution: 320x200, Colors: 16.8M (8:8:8) */
-#define VBE_R320x200C17M 0x10F
-/** 15-bit mode, Resolution: 640x480, Colors: 32K (1:5:5:5) */
-#define VBE_R640x480C32K 0x110
-/** 15-bit mode, Resolution: 640x480, Colors: 64K (5:6:5) */
-#define VBE_R640x480C64K 0x111
-/** 15-bit mode, Resolution: 640x480, Colors: 16.8M (8:8:8) */
-#define VBE_R640x480C17M 0x112
-/** 15-bit mode, Resolution: 800x600, Colors: 32K (1:5:5:5) */
-#define VBE_R800x600C32K 0x113
-/** 15-bit mode, Resolution: 800x600, Colors: 64K (5:6:5) */
-#define VBE_R800x600C64K 0x114
-/** 15-bit mode, Resolution: 800x600, Colors: 16.8M (8:8:8) */
-#define VBE_R800x600C17M 0x115
-/** 15-bit mode, Resolution: 1024x768, Colors: 32K (1:5:5:5) */
-#define VBE_R1024x768C32K 0x116
-/** 15-bit mode, Resolution: 1024x768, Colors: 64K (5:6:5) */
-#define VBE_R1024x768C64K 0x117
-/** 15-bit mode, Resolution: 1024x768, Colors: 16.8M (8:8:8) */
-#define VBE_R1024x768C17M 0x118
-/** 15-bit mode, Resolution: 1280x1024, Colors: 32K (1:5:5:5) */
-#define VBE_R1280x1024C32K 0x119
-/** 15-bit mode, Resolution: 1280x1024, Colors: 64K (5:6:5) */
-#define VBE_R1280x1024C64K 0x11A
-/** 15-bit mode, Resolution: 1280x1024, Colors: 16.8M (8:8:8) */
-#define VBE_R1280x1024C17M 0x11B
-#define VBE_SpecialMode 0x81FF
-
-/* Text modes */
-#define VBE_C80R60 0x108 /**< 15-bit mode, Columns: 80, Rows: 60 */
-#define VBE_C132R25 0x109 /**< 15-bit mode, Columns: 132, Rows: 25 */
-#define VBE_C132R43 0x10A /**< 15-bit mode, Columns: 132, Rows: 43 */
-#define VBE_C132R50 0x10B /**< 15-bit mode, Columns: 132, Rows: 50 */
-#define VBE_C132R60 0x10C /**< 15-bit mode, Columns: 132, Rows: 60 */
-
-/* VBE function numbers - passed in AX register */
-/** VBE function - Return VBE Controller Information */
-#define VBE_RetVBEConInf 0x4F00
-/** VBE function - Return VBE Mode Information */
-#define VBE_RetVBEModInf 0x4F01
-/** VBE function - Set VBE Mode */
-#define VBE_SetVBEMod 0x4F02
-/** VBE function - Return Current VBE Mode */
-#define VBE_RetCurVBEMod 0x4F03
-/** VBE function - Save/Restore State */
-#define VBE_SavResSta 0x4F04
-/** VBE function - Display Window Control */
-#define VBE_DisWinCon 0x4F05
-/** VBE function - Set/Get Logical Scan Line Length */
-#define VBE_SetGetLogScaLinLen 0x4F06
-/** VBE function - Set/Get Display Start */
-#define VBE_SetGetDisSta 0x4F07
-/** VBE function - Set/Get DAC Palette Format */
-#define VBE_SetGetDACPalFor 0x4F08
-/** VBE function - Set/Get Palette Data */
-#define VBE_SetGetPalDat 0x4F09
-/** VBE function - Return VBE Protected Mode Interface */
-#define VBE_RetVBEProModInt 0x4F0A
-/** VBE function - Get/Set pixel clock */
-#define VBE_GetSetpixclo 0x4F0B
-/** VBE function - Power Management Extensions (PM) */
-#define VBE_PowManExt 0x4F10
-/** VBE function - Flat Panel Interface Extensions (FP) */
-#define VBE_FlaPanIntExt 0x4F11
-/** VBE function - Audio Interface Extensions (AI) */
-#define VBE_AudIntExt 0x4F13
-/** VBE function - OEM Extensions */
-#define VBE_OEMExt 0x4F14
-/** VBE function - Display Data Channel (DDC), Serial Control Interface (SCI) */
-#define VBE_DisDatCha 0x4F15
-
-/* VBE subfunction numbers - passed in BL register */
-#define VBE_RetVBESupSpeInf 0x00 /**< Return VBE Supplemental
- * Specification Information */
-/* *** Structures *** */
-/**
- * @brief Far pointer as defined by VBE standard.
- */
-typedef struct {
- /** @brief Offset to segment described by \a selector. */
- uint16_t offset;
- /** @brief Selector or Segment depending on whether this is used from 16bit
- protected mode or from real mode. */
- uint16_t selector;
-} RTEMS_PACKED VBE_far_pointer;
-
-/**
- * @brief Protected mode info block as defined by VBE standard.
- */
-typedef struct {
- /** PM Info Block Signature */
- uint8_t Signature[4];
- /** Offset of PM entry point within BIOS */
- uint16_t EntryPoint;
- /** Offset of PM initialization entry point */
- uint16_t PMInitialize;
- /** Selector to BIOS data area emulation block */
- uint16_t BIOSDataSel;
- /** Selector to access A0000h physical memmory */
- uint16_t A0000Sel;
- /** Selector to access B0000h physical memmory */
- uint16_t B0000Sel;
- /** Selector to access B8000h physical memmory */
- uint16_t B8000Sel;
- /** Selector to access code segment as data */
- uint16_t CodeSegSel;
- /** Set to 1 when in protected mode */
- uint8_t InProtectMode;
- /** Checksum byte for structure. Sum over all structure bytes gives 0. */
- uint8_t Checksum;
-} RTEMS_PACKED VBE_protected_mode_info_block;
-
-/** General VBE signature */
-#define VBE_SIGNATURE "VESA"
-/** Signature for VBE 2.0 and higher */
-#define VBE20plus_SIGNATURE "VBE2"
-/** for STUB see VBE CORE FUNCTIONS VERSION 3.0 - Appendix 1 */
-#define VBE_STUB_VideoModeList 0xFFFF
-#define VBE_END_OF_VideoModeList 0xFFFF
-/**
- * @brief Information about VBE implementation.
- */
-typedef struct {
- /** VBE Signature */
- uint8_t VbeSignature[4];
- /** VBE Version */
- uint16_t VbeVersion;
- /** VBE_far_pointer to OEM String */
- uint8_t *OemStringPtr;
- /** Capabilities of graphics controller */
- uint8_t Capabilities[4];
- /** VBE_far_pointer to VideoModeList */
- uint32_t *VideoModePtr;
- /** Number of 64kb memory blocks */
- uint16_t TotalMemory;
- /* Added for VBE 2.0+ */
- /** VBE implementation Software revision */
- uint16_t OemSoftwareRev;
- /** VBE_far_pointer to Vendor Name String */
- uint8_t *OemVendorNamePtr;
- /** VBE_far_pointer to Product Name String */
- uint8_t *OemProductNamePtr;
- /** VBE_far_pointer to Product Revision String */
- uint8_t *OemProductRevPtr;
- /** Reserved for VBE implementation scratch */
- uint8_t Reserved[222];
- /** Data Area for OEM Strings */
- uint8_t OemData[256];
-} RTEMS_PACKED VBE_vbe_info_block;
-
-/**
- * @brief Describes graphic's mode parameter.
- */
-typedef struct {
- /* Mandatory information for all VBE revisions */
- /** mode attributes */
- uint16_t ModeAttributes;
- /** window A attributes */
- uint8_t WinAAttributes;
- /** window B attributes */
- uint8_t WinBAttributes;
- /** window granularity */
- uint16_t WinGranularity;
- /** window size */
- uint16_t WinSize;
- /** window A start segment */
- uint16_t WinASegment;
- /** window B start segment */
- uint16_t WinBSegment;
- /** real mode pointer to window function */
- uint32_t *WinFuncPtr;
- /** bytes per scan line */
- uint16_t BytesPerScanLine;
- /* Mandatory information for VBE 1.2 and above */
- /** horizontal resolution in px or chars */
- uint16_t XResolution;
- /** vertical resolution in px or chars */
- uint16_t YResolution;
- /** character cell width in pixels */
- uint8_t XCharSize;
- /** character cell height in pixels */
- uint8_t YCharSize;
- /** number of memory planes */
- uint8_t NumberOfPlanes;
- /** bits per pixel */
- uint8_t BitsPerPixel;
- /** number of banks */
- uint8_t NumberOfBanks;
- /** memory model type */
- uint8_t MemoryModel;
- /** bank size in KB */
- uint8_t BankSize;
- /** number of images */
- uint8_t NumberOfImagePages;
- /** reserved for page function */
- uint8_t Reserved0;
- /* Direct Color fields (required for direct/6 and YUV/7 memory models) */
- /** size of direct color red mask in bits */
- uint8_t RedMaskSize;
- /** bit position of lsb of red mask */
- uint8_t RedFieldPosition;
- /** size of direct color green mask in b */
- uint8_t GreenMaskSize;
- /** bit position of lsb of green mask */
- uint8_t GreenFieldPosition;
- /** size of direct color blue mask in b */
- uint8_t BlueMaskSize;
- /** bit position of lsb of blue mask */
- uint8_t BlueFieldPosition;
- /** size of direct color reserved mask */
- uint8_t RsvdMaskSize;
- /** bit position of lsb of reserved mask */
- uint8_t RsvdFieldPosition;
- /** direct color mode attributes */
- uint8_t DirectColorModeInfo;
- /* Mandatory information for VBE 2.0 and above */
- /** physical address for flat memory frame buffer */
- uint32_t *PhysBasePtr;
- /** Reserved - always set to 0 */
- uint32_t Reserved1;
- /** Reserved - always set to 0 */
- uint16_t Reserved2;
- /* Mandatory information for VBE 3.0 and above */
- /** bytes per scan line for linear modes */
- uint16_t LinBytesPerScanLine;
- /** number of images for banked modes */
- uint8_t BnkNumberOfImagePages;
- /** number of images for linear modes */
- uint8_t LinNumberOfImagePages;
- /* linear modes */
- /** size of direct color red mask */
- uint8_t LinRedMaskSize;
- /** bit position of lsb of red mask */
- uint8_t LinRedFieldPosition;
- /** size of direct color green mask */
- uint8_t LinGreenMaskSize;
- /** bit position of lsb of green mask */
- uint8_t LinGreenFieldPosition;
- /** size of direct color blue mask */
- uint8_t LinBlueMaskSize;
- /** bit position of lsb of blue mask */
- uint8_t LinBlueFieldPosition;
- /** size of direct color reserved mask */
- uint8_t LinRsvdMaskSize;
- /** bit position of lsb of reserved mask */
- uint8_t LinRsvdFieldPosition;
- /** maximum pixel clock (in Hz) for graphics mode */
- uint32_t MaxPixelClock;
- /** remainder of VBE_mode_info_block */
- uint8_t Reserved3[189];
-} RTEMS_PACKED VBE_mode_info_block;
-
-/**
- * @brief Describes monitor synchronization.
- */
-typedef struct {
- /** Horizontal total in pixels */
- uint16_t HorizontalTotal;
- /** Horizontal sync start in pixels */
- uint16_t HorizontalSyncStart;
- /** Horizontal sync end in pixels */
- uint16_t HorizontalSyncEnd;
- /** Vertical total in lines */
- uint16_t VerticalTotal;
- /** Vertical sync start in lines */
- uint16_t VerticalSyncStart;
- /** Vertical sync end in lines */
- uint16_t VerticalSyncEnd;
- /** Flags (Interlaced, Double Scan etc) */
- uint8_t Flags;
- /** Pixel clock in units of Hz */
- uint32_t PixelClock;
- /** Refresh rate in units of 0.01 Hz */
- uint16_t RefreshRate;
- /** remainder of VBE_mode_info_block */
- uint8_t Reserved[40];
-} RTEMS_PACKED VBE_CRTC_info_block;
-
-/**
- * @brief Describes palette entry.
- */
-typedef struct {
- /** Blue channel value (6 or 8 bits) */
- uint8_t Blue;
- /** Green channel value (6 or 8 bits) */
- uint8_t Green;
- /** Red channel value(6 or 8 bits) */
- uint8_t Red;
- /** DWORD alignment byte (unused) */
- uint8_t Alignment;
-} RTEMS_PACKED VBE_palette_entry;
-
-/**
- * @brief Supplemental VBE info block.
- */
-typedef struct {
- /** Supplemental VBE Signature */
- uint8_t SupVbeSignature[7];
- /** Supplemental VBE Version */
- uint16_t SupVbeVersion;
- /** Bitfield of supported subfunctions */
- uint8_t SupVbeSubFunc[8];
- /** OEM Software revision */
- uint16_t OemSoftwareRev;
- /** VBE_far_pointer to Vendor Name String */
- uint8_t *OemVendorNamePtr;
- /** VBE_far_pointer to Product Name String */
- uint8_t *OemProductNamePtr;
- /** VBE_far_pointer to Product Revision String */
- uint8_t *OemProductRevPtr;
- /** VBE_far_pointer to OEM String */
- uint8_t *OemStringPtr;
- /** Reserved for description strings and future expansion */
- uint8_t Reserved[221];
-} RTEMS_PACKED VBE_supplemental_vbe_info_block;
-
-/* VBE_vbe_info_block Capabilities */
-/** VBE Info Block - Capabilities\n
- D0 = 0 DAC is fixed width, with 6 bits per primary color \n
- D0 = 1 DAC width is switchable to 8 bits per primary color */
-#define VBE_DACswitchableMask 0x0001
-/** VBE Info Block - Capabilities\n
- D1 = 0 Controller is VGA compatible \n
- D1 = 1 Controller is not VGA compatible */
-#define VBE_notVGAcompatibleMask 0x0002
-/** VBE Info Block - Capabilities\n
- D2 = 0 Normal RAMDAC operation \n
- D2 = 1 When programming large blocks of information to the RAMDAC,
- use the blank bit in Function 09h. */
-#define VBE_specialRAMDACopMask 0x0004
-/** VBE Info Block - Capabilities\n
- D3 = 0 No hardware stereoscopic signaling support \n
- D3 = 1 Hardware stereoscopic signaling supported by controller */
-#define VBE_hwStereoscopicMask 0x0008
-/** VBE Info Block - Capabilities\n
- D4 = 0 Stereo signaling supported via external VESA stereo connector \n
- D4 = 1 Stereo signaling supported via VESA EVC connector */
-#define VBE_supportEVCconnMask 0x0010
-/* D5-31 = Reserved */
-
-/* VBE_mode_info_block ModeAttributes */
-/** Mode Info Block - Mode Attributes\n
- D0 = Mode supported by hardware configuration.
- 0 = Mode not supported in hardware\n
- 1 = Mode supported in hardware */
-#define VBE_modSupInHWMask 0x0001
-/* D1 = 1 (Reserved) */
-/** Mode Info Block - Mode Attributes\n
- D2 = TTY Output functions supported by BIOS.
- 0 = TTY Output functions not supported by BIOS\n
- 1 = TTY Output functions supported by BIOS */
-#define VBE_TTYOutSupByBIOSMask 0x0004
-/** Mode Info Block - Mode Attributes\n
- D3 = Monochrome/color mode (see note below).
- 0 = Monochrome mode\n
- 1 = Color mode */
-#define VBE_ColorModeMask 0x0008
-/** Mode Info Block - Mode Attributes\n
- D4 = Mode type.
- 0 = Text mode\n
- 1 = Graphics mode */
-#define VBE_GraphicsModeMask 0x0010
-/** Mode Info Block - Mode Attributes\n
- D5 = VGA compatible mode.
- 0 = Yes\n
- 1 = No */
-#define VBE_VGACompModeMask 0x0020
-/** Mode Info Block - Mode Attributes\n
- D6 = VGA compatible windowed memory mode is available.
- 0 = Yes\n
- 1 = No */
-#define VBE_VGACompWinMemModeMask 0x0040
-/** Mode Info Block - Mode Attributes\n
- D7 = Linear frame buffer mode is available.
- 0 = No\n
- 1 = Yes */
-#define VBE_LinFraBufModeAvaiMask 0x0080
-/** Mode Info Block - Mode Attributes\n
- D8 = Double scan mode is available.
- 0 = No\n
- 1 = Yes */
-#define VBE_DblScnModeAvaiMask 0x0100
-/** Mode Info Block - Mode Attributes\n
- D9 = Interlaced mode is available.
- 0 = No\n
- 1 = Yes */
-#define VBE_InterlModeAvaiMask 0x0200
-/** Mode Info Block - Mode Attributes\n
- D10 = Hardware triple buffering support.
- 0 = No\n
- 1 = Yes */
-#define VBE_HWTripBufSupMask 0x0400
-/** Mode Info Block - Mode Attributes\n
- D11 = Hardware stereoscopic display support.
- 0 = No\n
- 1 = Yes */
-#define VBE_HWSterDispSupMask 0x0800
-/** Mode Info Block - Mode Attributes\n
- D12 = Dual display start address support.
- 0 = No\n
- 1 = Yes */
-#define VBE_DualDispStAdrSupMask 0x1000
-/* D13-D15 = Reserved */
-
-/* VBE_mode_info_block WinXAttributes */
-/** D0 = Relocatable window(s) supported.
- 0 = Single non-relocatable window only\n
- 1 = Relocatable window(s) are supported */
-#define VBE_RelocWinSupMask 0x01
-/** D1 = Window readable.
- 0 = Window is not readable\n
- 1 = Window is readable */
-#define VBE_WinReadableMask 0x02
-/** D2 = Window writeable.
- 0 = Window is not writeable\n
- 1 = Window is writeable */
-#define VBE_WinWritableMask 0x04
-/* D3-D7 = Reserved */
-
-/* VBE_mode_info_block MemoryModel */
-#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
- /* 0x08-0x0F Reserved, to be defined by VESA */
- /* 0x10-0xFF To be defined by OEM */
-
-/* VBE_mode_info_block DirectColorModeInfo */
-/** D0 = Color ramp is fixed/programmable.
- 0 = Color ramp is fixed\n
- 1 = Color ramp is programmable */
-#define VBE_ColRampProgMask 0x01
-/** D1 = Bits in Rsvd field are usable/reserved.
- 0 = Bits in Rsvd field are reserved\n
- 1 = Bits in Rsvd field are usable by the application */
-#define VBE_RsvdBitsUsableMask 0x02
-
-/* VBE_CRTC_info_block Flags */
-/** CRTC Info Block - Flags\n
- D0 = Double Scan Mode Enable.
- 0 = Graphics mode is not double scanned\n
- 1 = Graphics mode is double scanned */
-#define VBE_GrModeDblScanMask 0x01
-/** CRTC Info Block - Flags\n
- D1 = Interlaced Mode Enable.
- 0 = Graphics mode is non-interlaced\n
- 1 = Graphics mode is interlaced */
-#define VBE_GrModeInterlMask 0x02
-/** CRTC Info Block - Flags\n
- D2 = Horizontal sync polarity.
- 0 = Horizontal sync polarity is positive (+)\n
- 1 = Horizontal sync polarity is negative (-) */
-#define VBE_HorSncPolNegMask 0x04
-/** CRTC Info Block - Flags\n
- D3 = Vertical sync polarity.
- 0 = Vertical sync polarity is positive (+)\n
- 1 = Vertical sync polarity is negative (-) */
-#define VBE_VerSncPolNegMask 0x08
-
-
-/* VESA BIOS Extensions/Display Data Channel Standard
- Version: 1.1 November 18, 1999 */
-
-/* VBE/DDC subfunction numbers - passed in BL register */
-/** VBE/DDC subfunction - Report VBE/DDC Capabilities */
-#define VBEDDC_Capabilities 0x0
-/** VBE/DDC subfunction - Read EDID */
-#define VBEDDC_ReadEDID 0x1
-
-/* DDC Capabilities */
-/* DDC level supported - returned in BL register */
-/** 0 - DDC1 not supported; 1 - DDC1 supported */
-#define VBEDDC_1SupportedMask 0x1
-/** 0 - DDC2 not supported; 1 - DDC2 supported */
-#define VBEDDC_2SupportedMask 0x2
-/** 0 - Screen not blanked during data transfer\n
- 1 - Screen blanked during data transfer */
-#define VBEDDC_scrBlnkDatTrMs 0x4
-
-
-/* VESA BIOS Extensions/Serial Control Interface Standard
- Version: 1.0 Revision: 2 Date: July 2, 1997 */
-
-/* VBE/SCI subfunction numbers - passed in BL register */
-/** VBE/SCI subfunction - Report VBE/SCI Capabilities */
-#define VBESCI_ReportCapabil 0x10
-/** VBE/SCI subfunction - Begin SCL/SDA control */
-#define VBESCI_BegSCLSDACtrl 0x11
-/** VBE/SCI subfunction - End SCL/SDA control */
-#define VBESCI_EndSCLSDACtrl 0x12
-/** VBE/SCI subfunction - Write SCL clock line */
-#define VBESCI_WrtSCLClkLine 0x13
-/** VBE/SCI subfunction - Write SDA data line */
-#define VBESCI_WrtSDADatLine 0x14
-/** VBE/SCI subfunction - Read SCL clock line */
-#define VBESCI_RdySCLClkLine 0x15
-/** VBE/SCI subfunction - Read SDA data line */
-#define VBESCI_RdySDADatLine 0x16
-
-/* SCI Capabilities */
-/* I2C level supported - returned in BL register */
-/** Can write to SCL clock line */
-#define VBESCI_capSCLwrtMask 0x1
-/** Can write to SDA data line */
-#define VBESCI_capSDAwrtMask 0x2
-/** Can read from SCL clock line */
-#define VBESCI_capSCLrdyMask 0x4
-/** Can read from SDA data line */
-#define VBESCI_capSDArdyMask 0x8
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* ASM */
-
-#endif /* _VBE_H */