aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeroen Janssen <japj@xs4all.nl>2002-03-10 20:36:23 +0000
committerJeroen Janssen <japj@xs4all.nl>2002-03-10 20:36:23 +0000
commite7bcd0240ecd96297d2da1de5de66b9e5b6a0457 (patch)
tree3b3139abde9a2c831e1136a46df5f08069b22710
parent7ae4903125e01af820fe134823ff65684d181839 (diff)
downloadvgabios-e7bcd0240ecd96297d2da1de5de66b9e5b6a0457.tar.gz
- added LFB modes for testing with vbe-lfb patch in Bochs
-rw-r--r--ChangeLog3
-rw-r--r--vbetables.h160
2 files changed, 32 insertions, 131 deletions
diff --git a/ChangeLog b/ChangeLog
index fd9dac3..560a2e8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+vgabios-????
+ - "Jeroen Janssen" <japj@darius.demon.nl>
+ . Added LFB modes (to be used with the vbe-lfb patch in bochs)
vgabios-0.3a
- "Christophe Bothamy" <cbothamy@free.fr>: Feb 10 2002
diff --git a/vbetables.h b/vbetables.h
index f0ff2cc..84d1957 100644
--- a/vbetables.h
+++ b/vbetables.h
@@ -63,7 +63,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u RsvdFieldPosition*/ 0,
/*Bit8u DirectColorModeInfo*/ 0,
// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ VBE_DISPI_BANK_ADDRESS, //FIXME: this allows this mode to be displayed using the standard 320x200x8 vga mode
+ /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
/*Bit32u OffScreenMemOffset*/ 0,
/*Bit16u OffScreenMemSize*/ 0,
// Mandatory information for VBE 3.0 and above
@@ -92,6 +92,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
@@ -125,7 +126,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u RsvdFieldPosition*/ 0,
/*Bit8u DirectColorModeInfo*/ 0,
// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ 0,
+ /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
/*Bit32u OffScreenMemOffset*/ 0,
/*Bit16u OffScreenMemSize*/ 0,
// Mandatory information for VBE 3.0 and above
@@ -154,6 +155,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
@@ -187,7 +189,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u RsvdFieldPosition*/ 0,
/*Bit8u DirectColorModeInfo*/ 0,
// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ 0,
+ /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
/*Bit32u OffScreenMemOffset*/ 0,
/*Bit16u OffScreenMemSize*/ 0,
// Mandatory information for VBE 3.0 and above
@@ -216,6 +218,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
@@ -249,7 +252,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u RsvdFieldPosition*/ 0,
/*Bit8u DirectColorModeInfo*/ 0,
// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ 0,
+ /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
/*Bit32u OffScreenMemOffset*/ 0,
/*Bit16u OffScreenMemSize*/ 0,
// Mandatory information for VBE 3.0 and above
@@ -278,6 +281,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
@@ -311,7 +315,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u RsvdFieldPosition*/ 0,
/*Bit8u DirectColorModeInfo*/ 0,
// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ 0,
+ /*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS,
/*Bit32u OffScreenMemOffset*/ 0,
/*Bit16u OffScreenMemSize*/ 0,
// Mandatory information for VBE 3.0 and above
@@ -333,126 +337,6 @@ static ModeInfoListItem mode_info_list[]=
#ifdef LIST_UNSUPPORTED_MODI
{
- VBE_VESA_MODE_640X400X8,
- {
-/*typedef struct ModeInfoBlock
-{*/
-// Mandatory information for all VBE revisions
- /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
- VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
- /*Bit8u WinAAttributes*/ 0,
- /*Bit8u WinBAttributes*/ 0,
- /*Bit16u WinGranularity*/ 0,
- /*Bit16u WinSize*/ 0,
- /*Bit16u WinASegment*/ 0,
- /*Bit16u WinBSegment*/ 0,
- /*Bit32u WinFuncPtr*/ 0,
- /*Bit16u BytesPerScanLine*/ 640,
-// Mandatory information for VBE 1.2 and above
- /*Bit16u XResolution*/ 640,
- /*Bit16u YResolution*/ 400,
- /*Bit8u XCharSize*/ 8,
- /*Bit8u YCharSize*/ 16,
- /*Bit8u NumberOfPlanes*/ 1,
- /*Bit8u BitsPerPixel*/ 8,
- /*Bit8u NumberOfBanks*/ 1,
- /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
- /*Bit8u BankSize*/ 0,
- /*Bit8u NumberOfImagePages*/ 0,
- /*Bit8u Reserved_page*/ 0,
-// Direct Color fields (required for direct/6 and YUV/7 memory models)
- /*Bit8u RedMaskSize*/ 0,
- /*Bit8u RedFieldPosition*/ 0,
- /*Bit8u GreenMaskSize*/ 0,
- /*Bit8u GreenFieldPosition*/ 0,
- /*Bit8u BlueMaskSize*/ 0,
- /*Bit8u BlueFieldPosition*/ 0,
- /*Bit8u RsvdMaskSize*/ 0,
- /*Bit8u RsvdFieldPosition*/ 0,
- /*Bit8u DirectColorModeInfo*/ 0,
-// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ VBE_PHYSICAL_BASE_ADDRESS,
- /*Bit32u OffScreenMemOffset*/ 0,
- /*Bit16u OffScreenMemSize*/ 0,
-// Mandatory information for VBE 3.0 and above
- /*Bit16u LinBytesPerScanLine*/ 640,
- /*Bit8u BnkNumberOfPages*/ 0,
- /*Bit8u LinNumberOfPages*/ 0,
- /*Bit8u LinRedMaskSize*/ 0,
- /*Bit8u LinRedFieldPosition*/ 0,
- /*Bit8u LinGreenMaskSize*/ 0,
- /*Bit8u LinGreenFieldPosition*/ 0,
- /*Bit8u LinBlueMaskSize*/ 0,
- /*Bit8u LinBlueFieldPosition*/ 0,
- /*Bit8u LinRsvdMaskSize*/ 0,
- /*Bit8u LinRsvdFieldPosition*/ 0,
- /*Bit32u MaxPixelClock*/ 0,
-/*} ModeInfoBlock;*/
- }
- },
-
- {
- VBE_VESA_MODE_640X480X8,
- {
-/*typedef struct ModeInfoBlock
-{*/
-// Mandatory information for all VBE revisions
- /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
- VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
- /*Bit8u WinAAttributes*/ 0,
- /*Bit8u WinBAttributes*/ 0,
- /*Bit16u WinGranularity*/ 0,
- /*Bit16u WinSize*/ 0,
- /*Bit16u WinASegment*/ 0,
- /*Bit16u WinBSegment*/ 0,
- /*Bit32u WinFuncPtr*/ 0,
- /*Bit16u BytesPerScanLine*/ 640,
-// Mandatory information for VBE 1.2 and above
- /*Bit16u XResolution*/ 640,
- /*Bit16u YResolution*/ 480,
- /*Bit8u XCharSize*/ 8,
- /*Bit8u YCharSize*/ 16,
- /*Bit8u NumberOfPlanes*/ 1,
- /*Bit8u BitsPerPixel*/ 8,
- /*Bit8u NumberOfBanks*/ 1,
- /*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL,
- /*Bit8u BankSize*/ 0,
- /*Bit8u NumberOfImagePages*/ 0,
- /*Bit8u Reserved_page*/ 0,
-// Direct Color fields (required for direct/6 and YUV/7 memory models)
- /*Bit8u RedMaskSize*/ 0,
- /*Bit8u RedFieldPosition*/ 0,
- /*Bit8u GreenMaskSize*/ 0,
- /*Bit8u GreenFieldPosition*/ 0,
- /*Bit8u BlueMaskSize*/ 0,
- /*Bit8u BlueFieldPosition*/ 0,
- /*Bit8u RsvdMaskSize*/ 0,
- /*Bit8u RsvdFieldPosition*/ 0,
- /*Bit8u DirectColorModeInfo*/ 0,
-// Mandatory information for VBE 2.0 and above
- /*Bit32u PhysBasePtr*/ VBE_PHYSICAL_BASE_ADDRESS,
- /*Bit32u OffScreenMemOffset*/ 0,
- /*Bit16u OffScreenMemSize*/ 0,
-// Mandatory information for VBE 3.0 and above
- /*Bit16u LinBytesPerScanLine*/ 640,
- /*Bit8u BnkNumberOfPages*/ 0,
- /*Bit8u LinNumberOfPages*/ 0,
- /*Bit8u LinRedMaskSize*/ 0,
- /*Bit8u LinRedFieldPosition*/ 0,
- /*Bit8u LinGreenMaskSize*/ 0,
- /*Bit8u LinGreenFieldPosition*/ 0,
- /*Bit8u LinBlueMaskSize*/ 0,
- /*Bit8u LinBlueFieldPosition*/ 0,
- /*Bit8u LinRsvdMaskSize*/ 0,
- /*Bit8u LinRsvdFieldPosition*/ 0,
- /*Bit32u MaxPixelClock*/ 0,
-/*} ModeInfoBlock;*/
- }
- },
-
- {
VBE_VESA_MODE_640X480X565,
{
/*typedef struct ModeInfoBlock
@@ -460,7 +344,9 @@ static ModeInfoListItem mode_info_list[]=
// Mandatory information for all VBE revisions
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,
@@ -518,7 +404,11 @@ static ModeInfoListItem mode_info_list[]=
/*typedef struct ModeInfoBlock
{*/
// Mandatory information for all VBE revisions
- /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE | VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,
@@ -578,7 +468,9 @@ static ModeInfoListItem mode_info_list[]=
// Mandatory information for all VBE revisions
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,
@@ -638,7 +530,9 @@ static ModeInfoListItem mode_info_list[]=
// Mandatory information for all VBE revisions
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,
@@ -698,7 +592,9 @@ static ModeInfoListItem mode_info_list[]=
// Mandatory information for all VBE revisions
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,
@@ -758,7 +654,9 @@ static ModeInfoListItem mode_info_list[]=
// Mandatory information for all VBE revisions
/*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE |
- VBE_MODE_ATTTRIBUTE_LFB_ONLY,
+ VBE_MODE_ATTRIBUTE_COLOR_MODE |
+ VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
+ VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
/*Bit8u WinAAttributes*/ 0,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ 0,