root/dev/vesa/vesabiosreg.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


    1 /* $OpenBSD: vesabiosreg.h,v 1.1 2006/11/27 18:04:28 gwk Exp $ */
    2 
    3 /*
    4  * Written by M. Drochner
    5  * Public domain.
    6  */
    7 
    8 
    9 #ifndef _VESABIOSREG_H
   10 #define _VESABIOSREG_H
   11 
   12 struct modeinfoblock {
   13         /* Mandatory information for all VBE revisions */
   14         uint16_t ModeAttributes;
   15         uint8_t WinAAttributes, WinBAttributes;
   16         uint16_t WinGranularity, WinSize, WinASegment, WinBSegment;
   17         uint32_t WinFuncPtr;
   18         uint16_t BytesPerScanLine;
   19         /* Mandatory information for VBE 1.2 and above */
   20         uint16_t XResolution, YResolution;
   21         uint8_t XCharSize, YCharSize, NumberOfPlanes, BitsPerPixel;
   22         uint8_t NumberOfBanks, MemoryModel, BankSize, NumberOfImagePages;
   23         uint8_t Reserved1;
   24         /* Direct Color fields
   25            (required for direct/6 and YUV/7 memory models) */
   26         uint8_t RedMaskSize, RedFieldPosition;
   27         uint8_t GreenMaskSize, GreenFieldPosition;
   28         uint8_t BlueMaskSize, BlueFieldPosition;
   29         uint8_t RsvdMaskSize, RsvdFieldPosition;
   30         uint8_t DirectColorModeInfo;
   31         /* Mandatory information for VBE 2.0 and above */
   32         uint32_t PhysBasePtr;
   33 #ifdef VBE_2_0
   34         uint32_t OffScreenMemOffset;
   35         uint16_t OffScreenMemSize;
   36         uint8_t Reserved2[206];
   37 #else
   38         uint32_t Reserved2;
   39         uint16_t Reserved3;
   40 
   41         /* Mandatory information for VBE 3.0 and above */
   42         uint16_t LinBytesPerScanLine;
   43         uint8_t BnkNumberOfImagePages;
   44         uint8_t LinNumberOfImagePages;
   45         uint8_t LinRedMaskSize, LinRedFieldPosition;
   46         uint8_t LinGreenMaskSize, LinGreenFieldPosition;
   47         uint8_t LinBlueMaskSize, LinBlueFieldPosition;
   48         uint8_t LinRsvdMaskSize, LinRsvdFieldPosition;
   49         uint32_t MaxPixelClock;
   50         uint8_t Reserved4[189];
   51 #endif
   52 } __attribute__ ((packed));
   53 
   54 struct paletteentry {
   55         uint8_t Blue;
   56         uint8_t Green;
   57         uint8_t Red;
   58         uint8_t Alignment;
   59 } __attribute__ ((packed));
   60 
   61 #endif /* !_VESABIOSREG_H */

/* [<][>][^][v][top][bottom][index][help] */