summaryrefslogtreecommitdiff
path: root/vgabios
diff options
context:
space:
mode:
authorvruppert <vruppert>2006-07-08 13:27:08 +0000
committervruppert <vruppert>2006-07-08 13:27:08 +0000
commitcd9264b278923ca3f8a0369edc081b053daca32f (patch)
tree1d25b183f96b0937ca6d2e11f166c102d60158df /vgabios
parentfb6672adbc421b7a1f4828e3e13f21fb5fb777c6 (diff)
- added special case for the 4 bpp when setting VBE display start
- VBE mode table fixes
Diffstat (limited to 'vgabios')
-rw-r--r--vgabios/VGABIOS-lgpl-latest.binbin36864 -> 36864 bytes
-rw-r--r--vgabios/VGABIOS-lgpl-latest.cirrus.binbin35328 -> 35328 bytes
-rw-r--r--vgabios/VGABIOS-lgpl-latest.cirrus.debug.binbin35840 -> 35840 bytes
-rw-r--r--vgabios/VGABIOS-lgpl-latest.debug.binbin37888 -> 37888 bytes
-rw-r--r--vgabios/vbe.c16
-rw-r--r--vgabios/vbetables.h8
6 files changed, 19 insertions, 5 deletions
diff --git a/vgabios/VGABIOS-lgpl-latest.bin b/vgabios/VGABIOS-lgpl-latest.bin
index ce94be60..ea234d6d 100644
--- a/vgabios/VGABIOS-lgpl-latest.bin
+++ b/vgabios/VGABIOS-lgpl-latest.bin
Binary files differ
diff --git a/vgabios/VGABIOS-lgpl-latest.cirrus.bin b/vgabios/VGABIOS-lgpl-latest.cirrus.bin
index 1896bf09..b0a0d54a 100644
--- a/vgabios/VGABIOS-lgpl-latest.cirrus.bin
+++ b/vgabios/VGABIOS-lgpl-latest.cirrus.bin
Binary files differ
diff --git a/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin b/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
index cf233d65..c928b6bc 100644
--- a/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
+++ b/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
Binary files differ
diff --git a/vgabios/VGABIOS-lgpl-latest.debug.bin b/vgabios/VGABIOS-lgpl-latest.debug.bin
index d85cedde..041c6499 100644
--- a/vgabios/VGABIOS-lgpl-latest.debug.bin
+++ b/vgabios/VGABIOS-lgpl-latest.debug.bin
Binary files differ
diff --git a/vgabios/vbe.c b/vgabios/vbe.c
index 2242ba98..7d05bc9d 100644
--- a/vgabios/vbe.c
+++ b/vgabios/vbe.c
@@ -62,7 +62,7 @@ _vbebios_product_name:
.byte 0x00
_vbebios_product_revision:
-.ascii "$Id: vbe.c,v 1.50 2006/06/21 16:58:06 vruppert Exp $"
+.ascii "$Id: vbe.c,v 1.51 2006/07/08 13:27:08 vruppert Exp $"
.byte 0x00
_vbebios_info_string:
@@ -79,7 +79,7 @@ _no_vbebios_info_string:
#if defined(USE_BX_INFO) || defined(DEBUG)
msg_vbe_init:
-.ascii "VBE Bios $Id: vbe.c,v 1.50 2006/06/21 16:58:06 vruppert Exp $"
+.ascii "VBE Bios $Id: vbe.c,v 1.51 2006/07/08 13:27:08 vruppert Exp $"
.byte 0x0a,0x0d, 0x00
#endif
@@ -154,6 +154,8 @@ vesa_pm_set_display_start1:
movzx esi, ax
pop eax
+ cmp esi, #4
+ jz bpp4_mode
add esi, #7
shr esi, #3
imul ecx, esi
@@ -163,7 +165,17 @@ vesa_pm_set_display_start1:
mov eax, edx
xor edx, edx
div esi
+ jmp set_xy_regs
+bpp4_mode:
+ shr ecx, #1
+ xor edx, edx
+ div ecx
+ mov edi, eax
+ mov eax, edx
+ shl eax, #1
+
+set_xy_regs:
push dx
push ax
mov dx, # VBE_DISPI_IOPORT_INDEX
diff --git a/vgabios/vbetables.h b/vgabios/vbetables.h
index 412bb0c2..bde10bfb 100644
--- a/vgabios/vbetables.h
+++ b/vgabios/vbetables.h
@@ -87,7 +87,8 @@ static ModeInfoListItem mode_info_list[]=
VBE_MODE_ATTRIBUTE_COLOR_MODE |
VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
- /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
+ /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
+ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,
@@ -167,7 +168,7 @@ static ModeInfoListItem mode_info_list[]=
/*Bit8u YCharSize*/ 16,
/*Bit8u NumberOfPlanes*/ 4,
/*Bit8u BitsPerPixel*/ 4,
- /*Bit8u NumberOfBanks*/ 16,
+ /*Bit8u NumberOfBanks*/ 1,
/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR,
/*Bit8u BankSize*/ 0,
/*Bit8u NumberOfImagePages*/ 15,
@@ -1110,7 +1111,8 @@ static ModeInfoListItem mode_info_list[]=
VBE_MODE_ATTRIBUTE_COLOR_MODE |
VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE |
VBE_MODE_ATTRIBUTE_GRAPHICS_MODE,
- /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_READABLE |
+ /*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE |
+ VBE_WINDOW_ATTRIBUTE_READABLE |
VBE_WINDOW_ATTRIBUTE_WRITEABLE,
/*Bit8u WinBAttributes*/ 0,
/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB,