diff options
Diffstat (limited to 'hw/kdrive/vesa/vbe.h')
-rw-r--r-- | hw/kdrive/vesa/vbe.h | 166 |
1 files changed, 0 insertions, 166 deletions
diff --git a/hw/kdrive/vesa/vbe.h b/hw/kdrive/vesa/vbe.h deleted file mode 100644 index 5d0ff5142..000000000 --- a/hw/kdrive/vesa/vbe.h +++ /dev/null @@ -1,166 +0,0 @@ -/* -Copyright (c) 2000 by Juliusz Chroboczek - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -*/ -/* $RCSId: xc/programs/Xserver/hw/kdrive/vesa/vbe.h,v 1.6 2001/05/29 04:54:12 keithp Exp $ */ - -#ifndef _VBE_H -#define _VBE_H - -#define VBE_WINDOW_RELOCATE 1 -#define VBE_WINDOW_READ 2 -#define VBE_WINDOW_WRITE 4 - -typedef struct _VbeInfoBlock { - U8 VbeSignature[4]; /* VBE Signature */ - U16 VbeVersion; /* VBE Version */ - U32 OemStringPtr; /* Pointer to OEM String */ - U8 Capabilities[4]; /* Capabilities of graphics controller */ - U32 VideoModePtr; /* Pointer to VideoModeList */ - U16 TotalMemory; /* Number of 64kb memory blocks */ -/* Added for VBE 2.0 */ - U16 OemSoftwareRev; /* VBE implementation Software revision */ - U32 OemVendorNamePtr; /* Pointer to Vendor Name String */ - U32 OemProductNamePtr; /* Pointer to Product Name String */ - U32 OemProductRevPtr; /* Pointer to Product Revision String */ - U8 Reserved[222]; /* Reserved for VBE implementation */ - U8 OemData[256]; /* Data Area for OEM Strings*/ -} __attribute__((packed)) VbeInfoBlock; - -typedef struct _VbeModeInfoBlock { -/* Mandatory information for all VBE revisions */ - U16 ModeAttributes; /* mode attributes */ - U8 WinAAttributes; /* window A attributes */ - U8 WinBAttributes; /* window B attributes */ - U16 WinGranularity; /* window granularity */ - U16 WinSize; /* window size */ - U16 WinASegment; /* window A start segment */ - U16 WinBSegment; /* window B start segment */ - U32 WinFuncPtr; /* pointer to window function */ - U16 BytesPerScanLine; /* bytes per scan line */ -/* Mandatory information for VBE 1.2 and above */ - U16 XResolution; /* horizontal resolution */ - U16 YResolution; /* vertical resolution */ - U8 XCharSize; /* character cell width in pixels */ - U8 YCharSize; /* character cell height in pixels */ - U8 NumberOfPlanes; /* number of memory planes */ - U8 BitsPerPixel; /* bits per pixel */ - U8 NumberOfBanks; /* number of banks */ - U8 MemoryModel; /* memory model type */ - U8 BankSize; /* bank size in KB */ - U8 NumberOfImagePages; /* number of images */ - U8 Reserved; /* reserved for page function */ -/* Direct Color fields (required for direct/6 and YUV/7 memory models) */ - U8 RedMaskSize; /* size of direct color red mask in bits */ - U8 RedFieldPosition; /* bit position of lsb of red mask */ - U8 GreenMaskSize; /* size of direct color green mask in bits */ - U8 GreenFieldPosition; /* bit position of lsb of green mask */ - U8 BlueMaskSize; /* size of direct color blue mask in bits */ - U8 BlueFieldPosition; /* bit position of lsb of blue mask */ - U8 RsvdMaskSize; /* size of direct color reserved mask bits*/ - U8 RsvdFieldPosition; /* bit position of lsb of reserved mask */ - U8 DirectColorModeInfo; /* direct color mode attributes */ -/* Mandatory information for VBE 2.0 and above */ - U32 PhysBasePtr; /* physical address for flat memory fb */ - U32 OffScreenMemOffset; /* pointer to start of off screen memory */ - U16 OffScreenMemSize; /* amount of off screen memory in 1k units */ - U8 Reserved2[206]; /* remainder of ModeInfoBlock */ -} __attribute__((packed)) VbeModeInfoBlock; - -typedef struct _VbeInfoRec { - U8 palette_format; - int palette_wait; - int windowA_offset; - int windowB_offset; - int window_size; - int last_window; - VbeModeInfoBlock vmib; -} VbeInfoRec, *VbeInfoPtr; - -typedef struct _SupVbeInfoBlock { - U8 SupVbeSignature[7]; /* Supplemental VBE Signature */ - U16 SupVbeVersion; /* Supplemental VBE Version*/ - U8 SupVbeSubFunc[8]; /* Bitfield of supported subfunctions */ - U16 OemSoftwareRev; /* OEM Software revision */ - U32 OemVendorNamePtr; /* Pointer to Vendor Name String */ - U32 OemProductNamePtr; /* Pointer to Product Name String */ - U32 OemProductRevPtr; /* Pointer to Product Revision String */ - U32 OemStringPtr; /* Pointer to OEM String */ - U8 Reserved[221]; /* Reserved */ -} __attribute__((packed)) SupVbeInfoBlock; - -int -VbeGetVib (Vm86InfoPtr vi, VbeInfoBlock *vib); - -int -VbeGetVmib (Vm86InfoPtr vi, int mode, VbeModeInfoBlock *vmib); - -void -VbeReportInfo (Vm86InfoPtr vi); - -int -VbeGetNmode (Vm86InfoPtr vi); - -int -VbeGetModes (Vm86InfoPtr vi, VesaModePtr modes, int nmode); - -VbeInfoPtr -VbeInit (Vm86InfoPtr vi); - -void -VbeCleanup (Vm86InfoPtr vi, VbeInfoPtr vbe); - -int -VbeSetMode (Vm86InfoPtr vi, VbeInfoPtr vbe, int mode, int linear, int direct); - -int -VbeGetMode(Vm86InfoPtr vi, int *mode); - -void * -VbeMapFramebuffer(Vm86InfoPtr vi, VbeInfoPtr vbe, int mode, int *ret_size, CARD32 *ret_phys); - -void -VbeUnmapFramebuffer(Vm86InfoPtr vi, VbeInfoPtr vbe, int mode, void *fb); - -int -VbeSetPalette(Vm86InfoPtr vi, VbeInfoPtr vbe, int first, int number, U8 *entries); - -int -VbeGetPalette(Vm86InfoPtr vi, VbeInfoPtr vbe, int first, int number, U8 *entries); - -int -VbeSetPaletteOptions(Vm86InfoPtr vi, VbeInfoPtr vbe, U8 bits, int wait); - -void * -VbeSetWindow(Vm86InfoPtr vi, VbeInfoPtr vbe, int offset, int purpose, int *size_return); - -Bool -VbeDPMS(Vm86InfoPtr vi, int mode); - -int -VbeDoInterrupt10(Vm86InfoPtr vi); - -Bool -VbeBoot(Vm86InfoPtr vi); - -int -VbeDoInterruptE6(Vm86InfoPtr vi); - -#endif |