Changeset 34399 in vbox
- Timestamp:
- Nov 26, 2010 4:30:44 PM (14 years ago)
- svn:sync-xref-src-repo-rev:
- 68170
- Location:
- trunk
- Files:
-
- 1 added
- 6 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/Hardware/VBoxVideoVBE.h
r34390 r34399 1 #ifndef vbe_h_included 2 #define vbe_h_included 1 /** @file 2 * 3 * VirtualBox graphics card port I/O definitions 4 */ 3 5 4 #include "vgabios.h" 5 6 // DISPI helper function 7 void dispi_set_enable(enable); 8 9 /** VBE int10 API 6 /* 7 * Copyright (C) 2006-2010 Oracle Corporation 10 8 * 11 * See the function descriptions in vbe.c for more information 9 * This file is part of VirtualBox Open Source Edition (OSE), as 10 * available from http://www.virtualbox.org. This file is free software; 11 * you can redistribute it and/or modify it under the terms of the GNU 12 * General Public License (GPL) as published by the Free Software 13 * Foundation, in version 2 as it comes in the "COPYING" file of the 14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the 15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. 16 * 17 * The contents of this file may alternatively be used under the terms 18 * of the Common Development and Distribution License Version 1.0 19 * (CDDL) only, as it comes in the "COPYING.CDDL" file of the 20 * VirtualBox OSE distribution, in which case the provisions of the 21 * CDDL are applicable instead of those of the GPL. 22 * 23 * You may elect to license modified versions of this file under the 24 * terms and conditions of either the GPL or the CDDL or both. 12 25 */ 13 Boolean vbe_has_vbe_display(); 14 void vbe_biosfn_return_controller_information(AX, ES, DI); 15 void vbe_biosfn_return_mode_information(AX, CX, ES, DI); 16 void vbe_biosfn_set_mode(AX, BX, ES, DI); 17 void vbe_biosfn_save_restore_state(AX, CX, DX, ES, BX); 18 void vbe_biosfn_return_protected_mode_interface(AX); 19 20 // The official VBE Information Block 21 typedef struct VbeInfoBlock 22 { 23 Bit8u VbeSignature[4]; 24 Bit16u VbeVersion; 25 Bit16u OemStringPtr_Off; 26 Bit16u OemStringPtr_Seg; 27 Bit8u Capabilities[4]; 28 Bit16u VideoModePtr_Off; 29 Bit16u VideoModePtr_Seg; 30 Bit16u TotalMemory; 31 Bit16u OemSoftwareRev; 32 Bit16u OemVendorNamePtr_Off; 33 Bit16u OemVendorNamePtr_Seg; 34 Bit16u OemProductNamePtr_Off; 35 Bit16u OemProductNamePtr_Seg; 36 Bit16u OemProductRevPtr_Off; 37 Bit16u OemProductRevPtr_Seg; 38 Bit16u Reserved[111]; // used for dynamicly generated mode list 39 Bit8u OemData[256]; 40 } VbeInfoBlock; 41 42 43 // This one is for compactly storing a static list of mode info blocks 44 // this saves us 189 bytes per block 45 typedef struct ModeInfoBlockCompact 46 { 47 // Mandatory information for all VBE revisions 48 Bit16u ModeAttributes; 49 Bit8u WinAAttributes; 50 Bit8u WinBAttributes; 51 Bit16u WinGranularity; 52 Bit16u WinSize; 53 Bit16u WinASegment; 54 Bit16u WinBSegment; 55 Bit32u WinFuncPtr; 56 Bit16u BytesPerScanLine; 57 // Mandatory information for VBE 1.2 and above 58 Bit16u XResolution; 59 Bit16u YResolution; 60 Bit8u XCharSize; 61 Bit8u YCharSize; 62 Bit8u NumberOfPlanes; 63 Bit8u BitsPerPixel; 64 Bit8u NumberOfBanks; 65 Bit8u MemoryModel; 66 Bit8u BankSize; 67 Bit8u NumberOfImagePages; 68 Bit8u Reserved_page; 69 // Direct Color fields (required for direct/6 and YUV/7 memory models) 70 Bit8u RedMaskSize; 71 Bit8u RedFieldPosition; 72 Bit8u GreenMaskSize; 73 Bit8u GreenFieldPosition; 74 Bit8u BlueMaskSize; 75 Bit8u BlueFieldPosition; 76 Bit8u RsvdMaskSize; 77 Bit8u RsvdFieldPosition; 78 Bit8u DirectColorModeInfo; 79 // Mandatory information for VBE 2.0 and above 80 Bit32u PhysBasePtr; 81 Bit32u OffScreenMemOffset; 82 Bit16u OffScreenMemSize; 83 // Mandatory information for VBE 3.0 and above 84 Bit16u LinBytesPerScanLine; 85 Bit8u BnkNumberOfPages; 86 Bit8u LinNumberOfPages; 87 Bit8u LinRedMaskSize; 88 Bit8u LinRedFieldPosition; 89 Bit8u LinGreenMaskSize; 90 Bit8u LinGreenFieldPosition; 91 Bit8u LinBlueMaskSize; 92 Bit8u LinBlueFieldPosition; 93 Bit8u LinRsvdMaskSize; 94 Bit8u LinRsvdFieldPosition; 95 Bit32u MaxPixelClock; 96 // Bit8u Reserved[189]; // DO NOT PUT THIS IN HERE because of Compact Mode Info storage in bios 97 } ModeInfoBlockCompact; 98 99 typedef struct ModeInfoBlock 100 { 101 // Mandatory information for all VBE revisions 102 Bit16u ModeAttributes; 103 Bit8u WinAAttributes; 104 Bit8u WinBAttributes; 105 Bit16u WinGranularity; 106 Bit16u WinSize; 107 Bit16u WinASegment; 108 Bit16u WinBSegment; 109 Bit32u WinFuncPtr; 110 Bit16u BytesPerScanLine; 111 // Mandatory information for VBE 1.2 and above 112 Bit16u XResolution; 113 Bit16u YResolution; 114 Bit8u XCharSize; 115 Bit8u YCharSize; 116 Bit8u NumberOfPlanes; 117 Bit8u BitsPerPixel; 118 Bit8u NumberOfBanks; 119 Bit8u MemoryModel; 120 Bit8u BankSize; 121 Bit8u NumberOfImagePages; 122 Bit8u Reserved_page; 123 // Direct Color fields (required for direct/6 and YUV/7 memory models) 124 Bit8u RedMaskSize; 125 Bit8u RedFieldPosition; 126 Bit8u GreenMaskSize; 127 Bit8u GreenFieldPosition; 128 Bit8u BlueMaskSize; 129 Bit8u BlueFieldPosition; 130 Bit8u RsvdMaskSize; 131 Bit8u RsvdFieldPosition; 132 Bit8u DirectColorModeInfo; 133 // Mandatory information for VBE 2.0 and above 134 Bit32u PhysBasePtr; 135 Bit32u OffScreenMemOffset; 136 Bit16u OffScreenMemSize; 137 // Mandatory information for VBE 3.0 and above 138 Bit16u LinBytesPerScanLine; 139 Bit8u BnkNumberOfPages; 140 Bit8u LinNumberOfPages; 141 Bit8u LinRedMaskSize; 142 Bit8u LinRedFieldPosition; 143 Bit8u LinGreenMaskSize; 144 Bit8u LinGreenFieldPosition; 145 Bit8u LinBlueMaskSize; 146 Bit8u LinBlueFieldPosition; 147 Bit8u LinRsvdMaskSize; 148 Bit8u LinRsvdFieldPosition; 149 Bit32u MaxPixelClock; 150 Bit8u Reserved[189]; 151 } ModeInfoBlock; 152 153 typedef struct ModeInfoListItem 154 { 155 Bit16u mode; 156 ModeInfoBlockCompact info; 157 } ModeInfoListItem; 158 159 // VBE Return Status Info 160 // AL 161 #define VBE_RETURN_STATUS_SUPPORTED 0x4F 162 #define VBE_RETURN_STATUS_UNSUPPORTED 0x00 163 // AH 164 #define VBE_RETURN_STATUS_SUCCESSFULL 0x00 165 #define VBE_RETURN_STATUS_FAILED 0x01 166 #define VBE_RETURN_STATUS_NOT_SUPPORTED 0x02 167 #define VBE_RETURN_STATUS_INVALID 0x03 168 169 // VBE Mode Numbers 170 171 #define VBE_MODE_VESA_DEFINED 0x0100 172 #define VBE_MODE_REFRESH_RATE_USE_CRTC 0x0800 173 #define VBE_MODE_LINEAR_FRAME_BUFFER 0x4000 174 #define VBE_MODE_PRESERVE_DISPLAY_MEMORY 0x8000 175 176 // VBE GFX Mode Number 177 178 #define VBE_VESA_MODE_640X400X8 0x100 179 #define VBE_VESA_MODE_640X480X8 0x101 180 #define VBE_VESA_MODE_800X600X4 0x102 181 #define VBE_VESA_MODE_800X600X8 0x103 182 #define VBE_VESA_MODE_1024X768X4 0x104 183 #define VBE_VESA_MODE_1024X768X8 0x105 184 #define VBE_VESA_MODE_1280X1024X4 0x106 185 #define VBE_VESA_MODE_1280X1024X8 0x107 186 #define VBE_VESA_MODE_320X200X1555 0x10D 187 #define VBE_VESA_MODE_320X200X565 0x10E 188 #define VBE_VESA_MODE_320X200X888 0x10F 189 #define VBE_VESA_MODE_640X480X1555 0x110 190 #define VBE_VESA_MODE_640X480X565 0x111 191 #define VBE_VESA_MODE_640X480X888 0x112 192 #define VBE_VESA_MODE_800X600X1555 0x113 193 #define VBE_VESA_MODE_800X600X565 0x114 194 #define VBE_VESA_MODE_800X600X888 0x115 195 #define VBE_VESA_MODE_1024X768X1555 0x116 196 #define VBE_VESA_MODE_1024X768X565 0x117 197 #define VBE_VESA_MODE_1024X768X888 0x118 198 #define VBE_VESA_MODE_1280X1024X1555 0x119 199 #define VBE_VESA_MODE_1280X1024X565 0x11A 200 #define VBE_VESA_MODE_1280X1024X888 0x11B 201 #define VBE_VESA_MODE_1600X1200X8 0x11C 202 #define VBE_VESA_MODE_1600X1200X1555 0x11D 203 #define VBE_VESA_MODE_1600X1200X565 0x11E 204 #define VBE_VESA_MODE_1600X1200X888 0x11F 205 206 // BOCHS/PLEX86 'own' mode numbers 207 #define VBE_OWN_MODE_320X200X8888 0x140 208 #define VBE_OWN_MODE_640X400X8888 0x141 209 #define VBE_OWN_MODE_640X480X8888 0x142 210 #define VBE_OWN_MODE_800X600X8888 0x143 211 #define VBE_OWN_MODE_1024X768X8888 0x144 212 #define VBE_OWN_MODE_1280X1024X8888 0x145 213 #define VBE_OWN_MODE_320X200X8 0x146 214 #define VBE_OWN_MODE_1600X1200X8888 0x147 215 #define VBE_OWN_MODE_1152X864X8 0x148 216 #define VBE_OWN_MODE_1152X864X1555 0x149 217 #define VBE_OWN_MODE_1152X864X565 0x14a 218 #define VBE_OWN_MODE_1152X864X888 0x14b 219 #define VBE_OWN_MODE_1152X864X8888 0x14c 220 221 #define VBE_VESA_MODE_END_OF_LIST 0xFFFF 222 223 // Capabilities 224 225 #define VBE_CAPABILITY_8BIT_DAC 0x0001 226 #define VBE_CAPABILITY_NOT_VGA_COMPATIBLE 0x0002 227 #define VBE_CAPABILITY_RAMDAC_USE_BLANK_BIT 0x0004 228 #define VBE_CAPABILITY_STEREOSCOPIC_SUPPORT 0x0008 229 #define VBE_CAPABILITY_STEREO_VIA_VESA_EVC 0x0010 230 231 // Mode Attributes 232 233 #define VBE_MODE_ATTRIBUTE_SUPPORTED 0x0001 234 #define VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE 0x0002 235 #define VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT 0x0004 236 #define VBE_MODE_ATTRIBUTE_COLOR_MODE 0x0008 237 #define VBE_MODE_ATTRIBUTE_GRAPHICS_MODE 0x0010 238 #define VBE_MODE_ATTRIBUTE_NOT_VGA_COMPATIBLE 0x0020 239 #define VBE_MODE_ATTRIBUTE_NO_VGA_COMPATIBLE_WINDOW 0x0040 240 #define VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE 0x0080 241 #define VBE_MODE_ATTRIBUTE_DOUBLE_SCAN_MODE 0x0100 242 #define VBE_MODE_ATTRIBUTE_INTERLACE_MODE 0x0200 243 #define VBE_MODE_ATTRIBUTE_HARDWARE_TRIPLE_BUFFER 0x0400 244 #define VBE_MODE_ATTRIBUTE_HARDWARE_STEREOSCOPIC_DISPLAY 0x0800 245 #define VBE_MODE_ATTRIBUTE_DUAL_DISPLAY_START_ADDRESS 0x1000 246 247 #define VBE_MODE_ATTTRIBUTE_LFB_ONLY ( VBE_MODE_ATTRIBUTE_NO_VGA_COMPATIBLE_WINDOW | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE ) 248 249 // Window attributes 250 251 #define VBE_WINDOW_ATTRIBUTE_RELOCATABLE 0x01 252 #define VBE_WINDOW_ATTRIBUTE_READABLE 0x02 253 #define VBE_WINDOW_ATTRIBUTE_WRITEABLE 0x04 254 255 // Memory model 256 257 #define VBE_MEMORYMODEL_TEXT_MODE 0x00 258 #define VBE_MEMORYMODEL_CGA_GRAPHICS 0x01 259 #define VBE_MEMORYMODEL_HERCULES_GRAPHICS 0x02 260 #define VBE_MEMORYMODEL_PLANAR 0x03 261 #define VBE_MEMORYMODEL_PACKED_PIXEL 0x04 262 #define VBE_MEMORYMODEL_NON_CHAIN_4_256 0x05 263 #define VBE_MEMORYMODEL_DIRECT_COLOR 0x06 264 #define VBE_MEMORYMODEL_YUV 0x07 265 266 // DirectColorModeInfo 267 268 #define VBE_DIRECTCOLOR_COLOR_RAMP_PROGRAMMABLE 0x01 269 #define VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE 0x02 26 #ifndef VBoxVideoVBE_h_included 27 # define VBoxVideoVBE_h_included 270 28 271 29 // GUEST <-> HOST Communication API … … 274 32 // like 0xE0000000 275 33 276 277 34 #define VBE_DISPI_BANK_ADDRESS 0xA0000 278 35 #define VBE_DISPI_BANK_SIZE_KB 64 279 36 280 #define VBE_DISPI_MAX_XRES 1024 281 #define VBE_DISPI_MAX_YRES 768 37 #define VBE_DISPI_MAX_XRES 16384 38 #define VBE_DISPI_MAX_YRES 16384 39 #define VBE_DISPI_MAX_BPP 32 282 40 283 41 #define VBE_DISPI_IOPORT_INDEX 0x01CE … … 294 52 #define VBE_DISPI_INDEX_X_OFFSET 0x8 295 53 #define VBE_DISPI_INDEX_Y_OFFSET 0x9 54 #define VBE_DISPI_INDEX_VBOX_VIDEO 0xa 55 #define VBE_DISPI_INDEX_NB_SAVED 0xb /* Number of saved registers (vbe_regs array) */ 56 #define VBE_DISPI_INDEX_NB 0xb /* Total number of VBE registers */ 296 57 297 58 #define VBE_DISPI_ID0 0xB0C0 … … 300 61 #define VBE_DISPI_ID3 0xB0C3 301 62 #define VBE_DISPI_ID4 0xB0C4 63 64 #define VBE_DISPI_ID_VBOX_VIDEO 0xBE00 65 /* The VBOX interface id. Indicates support for VBVA shared memory interface. */ 66 #define VBE_DISPI_ID_HGSMI 0xBE01 67 #define VBE_DISPI_ID_ANYX 0xBE02 302 68 303 69 #define VBE_DISPI_DISABLED 0x00 … … 310 76 #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000 311 77 312 /** 313 * VBE Bios Extra Data structure. 314 * @remark duplicated in DevVGA.h. 315 */ 316 typedef struct VBEHeader 317 { 318 /** Signature (VBEHEADER_MAGIC). */ 319 Bit16u u16Signature; 320 /** Data size. */ 321 Bit16u cbData; 322 } VBEHeader; 78 #define VGA_PORT_HGSMI_HOST 0x3b0 79 #define VGA_PORT_HGSMI_GUEST 0x3d0 323 80 324 /** The value of the VBEHEADER::u16Signature field. 325 * @remark duplicated in DevVGA.h. */ 326 #define VBEHEADER_MAGIC 0x77CC 327 328 /** The extra port which is used to read the mode list. 329 * @remark duplicated in DevVGA.h. */ 330 #define VBE_EXTRA_PORT 0x3b6 331 332 /** The extra port which is used for debug printf. 333 * @remark duplicated in DevVGA.h. */ 334 #define VBE_PRINTF_PORT 0x3b7 335 336 #endif 81 #endif /* VBoxVideoVBE_h_included */ -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/VBoxVideo.h
r34349 r34399 22 22 //#include <iprt/thread.h> 23 23 24 #include <VBox/Hardware/VBoxVideoVBE.h> 24 25 #include <VBox/VBoxVideoGuest.h> 25 26 #include <VBox/VBoxVideo.h> 26 27 #include "VBoxHGSMI.h" 27 28 28 #define VBE_DISPI_IOPORT_INDEX 0x01CE 29 #define VBE_DISPI_IOPORT_DATA 0x01CF 30 #define VBE_DISPI_INDEX_ID 0x0 31 #define VBE_DISPI_INDEX_XRES 0x1 32 #define VBE_DISPI_INDEX_YRES 0x2 33 #define VBE_DISPI_INDEX_BPP 0x3 34 #define VBE_DISPI_INDEX_ENABLE 0x4 35 #define VBE_DISPI_INDEX_VIRT_WIDTH 0x6 36 #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x7 37 #define VBE_DISPI_INDEX_X_OFFSET 0x8 38 #define VBE_DISPI_INDEX_Y_OFFSET 0x9 39 #define VBE_DISPI_INDEX_VBOX_VIDEO 0xa 40 41 #define VBE_DISPI_ID2 0xB0C2 42 /* The VBOX interface id. Indicates support for VBE_DISPI_INDEX_VBOX_VIDEO. */ 43 #define VBE_DISPI_ID_VBOX_VIDEO 0xBE00 44 #define VBE_DISPI_ID_HGSMI 0xBE01 45 #define VBE_DISPI_ID_ANYX 0xBE02 46 #define VBE_DISPI_DISABLED 0x00 47 #define VBE_DISPI_ENABLED 0x01 48 #define VBE_DISPI_LFB_ENABLED 0x40 49 #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000 29 /* This looks absolutely unnecessary to me, but harmless. */ 50 30 #define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 4 51 31 #define VBE_DISPI_TOTAL_VIDEO_MEMORY_KB (VBE_DISPI_TOTAL_VIDEO_MEMORY_MB * 1024) 52 32 #define VBE_DISPI_TOTAL_VIDEO_MEMORY_BYTES (VBE_DISPI_TOTAL_VIDEO_MEMORY_KB * 1024) 53 54 #define VGA_PORT_HGSMI_HOST 0x3b055 #define VGA_PORT_HGSMI_GUEST 0x3d056 33 57 34 typedef struct VBOXVIDEO_COMMON -
trunk/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
r33460 r34399 94 94 #define BOOL_STR(a) ((a) ? "TRUE" : "FALSE") 95 95 96 #include <VBox/Hardware/VBoxVideoVBE.h> 96 97 #include <VBox/VMMDev.h> 97 98 … … 124 125 /* ShadowFB support */ 125 126 #include "shadowfb.h" 126 127 /* VBox video related defines */128 129 #define VBE_DISPI_IOPORT_INDEX 0x01CE130 #define VBE_DISPI_IOPORT_DATA 0x01CF131 #define VBE_DISPI_INDEX_ID 0x0132 #define VBE_DISPI_INDEX_XRES 0x1133 #define VBE_DISPI_INDEX_YRES 0x2134 #define VBE_DISPI_INDEX_BPP 0x3135 #define VBE_DISPI_INDEX_ENABLE 0x4136 #define VBE_DISPI_INDEX_VIRT_WIDTH 0x6137 #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x7138 #define VBE_DISPI_ID2 0xB0C2139 #define VBE_DISPI_ID_ANYX 0xBE02140 #define VBE_DISPI_DISABLED 0x00141 #define VBE_DISPI_ENABLED 0x01142 #define VBE_DISPI_LFB_ENABLED 0x40143 127 144 128 /* Dga definitions */ … … 262 246 extern void VBOXDRICloseScreen(ScreenPtr pScreen, VBOXPtr pVBox); 263 247 248 /* Xinerama stuff */ 249 #define VBOXRAMA_MAJOR_VERSION 1 250 #define VBOXRAMA_MINOR_VERSION 0 251 264 252 #endif /* _VBOXVIDEO_H_ */ 265 253 -
trunk/src/VBox/Devices/Graphics/BIOS/Makefile.kmk
r28800 r34399 75 75 # 2. precompile 76 76 # WARNING! DEBUG is undefined here to keep the image size stable between debug and release builds. 77 $$(PATH_VgaBiosBin)/_vgabios_.c: $(addprefix $(PATH_SUB_CURRENT)/,vgabios.c vgabios.h vbe.h vgatables.h vgafonts.h vbe.c clext.c) $$(PATH_VgaBiosBin)/vbetables.h $( VBOX_VERSION_STAMP)77 $$(PATH_VgaBiosBin)/_vgabios_.c: $(addprefix $(PATH_SUB_CURRENT)/,vgabios.c vgabios.h vbe.h vgatables.h vgafonts.h vbe.c clext.c) $$(PATH_VgaBiosBin)/vbetables.h $(PATH_ROOT)/include/VBox/Hardware/VBoxVideoVBE.h $(VBOX_VERSION_STAMP) 78 78 $(call MSG_TOOL,cpp,VgaBiosBin,$<,$@) 79 79 $(QUIET)$(TOOL_$(VBOX_GCC_TOOL)_CC) -E -P \ … … 81 81 -DVBOX_VENDOR='"$(VBOX_VENDOR)"' -DVBOX_PRODUCT='"$(VBOX_PRODUCT)"' \ 82 82 -DVBE -DVGABIOS_DATE="''" $(addprefix -D,$(DEFS) $(DEFS.$(KBUILD_TYPE))) -UDEBUG \ 83 -I$(PATH_ROOT)/include \ 83 84 -o $@ $< 84 85 -
trunk/src/VBox/Devices/Graphics/BIOS/vbe.h
r26495 r34399 3 3 4 4 #include "vgabios.h" 5 6 #include <VBox/Hardware/VBoxVideoVBE.h> 5 7 6 8 // DISPI helper function … … 269 271 #define VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE 0x02 270 272 271 // GUEST <-> HOST Communication API272 273 // FIXME: either dynamicly ask host for this or put somewhere high in physical memory274 // like 0xE0000000275 276 277 #define VBE_DISPI_BANK_ADDRESS 0xA0000278 #define VBE_DISPI_BANK_SIZE_KB 64279 280 #define VBE_DISPI_MAX_XRES 1024281 #define VBE_DISPI_MAX_YRES 768282 283 #define VBE_DISPI_IOPORT_INDEX 0x01CE284 #define VBE_DISPI_IOPORT_DATA 0x01CF285 286 #define VBE_DISPI_INDEX_ID 0x0287 #define VBE_DISPI_INDEX_XRES 0x1288 #define VBE_DISPI_INDEX_YRES 0x2289 #define VBE_DISPI_INDEX_BPP 0x3290 #define VBE_DISPI_INDEX_ENABLE 0x4291 #define VBE_DISPI_INDEX_BANK 0x5292 #define VBE_DISPI_INDEX_VIRT_WIDTH 0x6293 #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x7294 #define VBE_DISPI_INDEX_X_OFFSET 0x8295 #define VBE_DISPI_INDEX_Y_OFFSET 0x9296 297 #define VBE_DISPI_ID0 0xB0C0298 #define VBE_DISPI_ID1 0xB0C1299 #define VBE_DISPI_ID2 0xB0C2300 #define VBE_DISPI_ID3 0xB0C3301 #define VBE_DISPI_ID4 0xB0C4302 303 #define VBE_DISPI_DISABLED 0x00304 #define VBE_DISPI_ENABLED 0x01305 #define VBE_DISPI_GETCAPS 0x02306 #define VBE_DISPI_8BIT_DAC 0x20307 #define VBE_DISPI_LFB_ENABLED 0x40308 #define VBE_DISPI_NOCLEARMEM 0x80309 310 #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000311 312 273 /** 313 274 * VBE Bios Extra Data structure. -
trunk/src/VBox/Devices/Graphics/DevVGA.h
r34188 r34399 58 58 #endif 59 59 60 #include <VBox/Hardware/VBoxVideoVBE.h> 61 60 62 #ifdef VBOX_WITH_HGSMI 61 63 # include "HGSMI/HGSMIHost.h" … … 71 73 /* bochs VBE support */ 72 74 #define CONFIG_BOCHS_VBE 73 74 #ifdef VBOX75 #define VBE_DISPI_MAX_XRES 1638476 #define VBE_DISPI_MAX_YRES 1638477 #else78 #define VBE_DISPI_MAX_XRES 160079 #define VBE_DISPI_MAX_YRES 120080 #endif81 #define VBE_DISPI_MAX_BPP 3282 83 #define VBE_DISPI_INDEX_ID 0x084 #define VBE_DISPI_INDEX_XRES 0x185 #define VBE_DISPI_INDEX_YRES 0x286 #define VBE_DISPI_INDEX_BPP 0x387 #define VBE_DISPI_INDEX_ENABLE 0x488 #define VBE_DISPI_INDEX_BANK 0x589 #define VBE_DISPI_INDEX_VIRT_WIDTH 0x690 #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x791 #define VBE_DISPI_INDEX_X_OFFSET 0x892 #define VBE_DISPI_INDEX_Y_OFFSET 0x993 #define VBE_DISPI_INDEX_VBOX_VIDEO 0xa94 #define VBE_DISPI_INDEX_NB_SAVED 0xb /* Number of saved registers (vbe_regs array) */95 #define VBE_DISPI_INDEX_NB 0xb /* Total number of VBE registers */96 97 #define VBE_DISPI_ID0 0xB0C098 #define VBE_DISPI_ID1 0xB0C199 #define VBE_DISPI_ID2 0xB0C2100 #define VBE_DISPI_ID3 0xB0C3101 #define VBE_DISPI_ID4 0xB0C4102 103 #ifdef VBOX104 /* The VBOX interface id. Indicates support for VBE_DISPI_INDEX_VBOX_VIDEO. */105 #define VBE_DISPI_ID_VBOX_VIDEO 0xBE00106 #ifdef VBOX_WITH_HGSMI107 /* The VBOX interface id. Indicates support for VBVA shared memory interface. */108 #define VBE_DISPI_ID_HGSMI 0xBE01109 #endif /* VBOX_WITH_HGSMI */110 /* Indicates support for unrestricted horizontal resolutions (not multiple of 8). */111 #define VBE_DISPI_ID_ANYX 0xBE02112 #endif /* VBOX */113 114 #define VBE_DISPI_DISABLED 0x00115 #define VBE_DISPI_ENABLED 0x01116 #define VBE_DISPI_GETCAPS 0x02117 #define VBE_DISPI_8BIT_DAC 0x20118 #define VBE_DISPI_LFB_ENABLED 0x40119 #define VBE_DISPI_NOCLEARMEM 0x80120 121 #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000122 75 123 76 #ifdef CONFIG_BOCHS_VBE -
trunk/src/VBox/Devices/Graphics/DevVGAModes.h
r28800 r34399 20 20 21 21 #ifdef VBE_NEW_DYN_LIST 22 23 #include <VBox/Hardware/VBoxVideoVBE.h> 22 24 23 25 /* VBE Mode Numbers */ … … 121 123 /* Video memory */ 122 124 #define VGAMEM_GRAPH 0xA000 123 #define VBE_DISPI_BANK_SIZE_KB 64124 #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000125 125 126 126 /*
Note:
See TracChangeset
for help on using the changeset viewer.