diff -Nru vgabios-0.7a+cvs20180116/biossums.c vgabios-0.7b+ds/biossums.c --- vgabios-0.7a+cvs20180116/biossums.c 2008-05-11 06:40:19.000000000 +0000 +++ vgabios-0.7b+ds/biossums.c 2019-12-30 23:40:08.411147055 +0000 @@ -1,7 +1,7 @@ -/* biossums.c --- written by Eike W. for the Bochs BIOS */ -/* adapted for the LGPL'd VGABIOS by vruppert */ - -/* This library is free software; you can redistribute it and/or +/* + * $Id: biossums.c 216 2019-12-30 23:40:08Z vruppert $ + * + * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. @@ -15,6 +15,11 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ + +/* biossums.c --- written by Eike W. for the Bochs BIOS + * adapted for the LGPL'd VGABIOS by vruppert + */ + #include #include #include diff -Nru vgabios-0.7a+cvs20180116/ChangeLog vgabios-0.7b+ds/ChangeLog --- vgabios-0.7a+cvs20180116/ChangeLog 2018-01-26 13:10:40.000000000 +0000 +++ vgabios-0.7b+ds/ChangeLog 1970-01-01 00:00:00.000000000 +0000 @@ -1,1416 +0,0 @@ -2018-01-26 11:59 vruppert - - * clext.c (1.17), vbe.c (1.66), vbe.h (1.29), vgabios.c (1.77): - - Added VESA BIOS function 0x4f15 (get EDID) to the Bochs VBE version - -2018-01-25 19:52 vruppert - - * clext.c (1.16): - - Added VESA BIOS function 0x4f15 (get EDID) to the Cirrus version - -2014-07-09 09:02 vruppert - - * README (1.22): - - Updated temporary changelog - -2014-07-08 20:02 vruppert - - * vbe.c (1.65): - - Added check for maximum y resolution for build a correct VBE modes list - -2014-05-31 08:44 vruppert - - * README (1.21): - - Updated Qemu link and added temporary changelog - -2013-02-10 09:07 vruppert - - * vgabios.c (1.76): - - Ensure PCIR is aligned to 4 bytes (patch by David Woodhouse) - -2012-11-19 22:04 vruppert - - * README (1.20): - - update feedback address (patch from Hiroshi Miura ) - -2011-10-30 13:42 vruppert - - * README (1.19): - - - updates for release 0.7a - -2011-10-15 16:07 vruppert - - * vgabios.c (1.75): - - - implemented vgabios functions with AX=0x112x (patch by Hugo Mercier) - -2011-07-19 22:17 vruppert - - * vgabios.c (1.74): - - - update pci_get_lfb_addr for vmware vga (patch by Gerd Hoffmann) - - pci_get_lfb_addr now checks BAR #1 too - - give names to the numbered labels to make the code more readable - -2011-07-19 20:25 vruppert - - * vbe.c (1.64), vgabios.c (1.73): - - - VBE: added support for setting PCI vendor and device IDs using defines - (PCI_VID and PCI_DID). Based on a patch by Gerd Hoffmann. - -2011-07-19 19:00 vruppert - - * Makefile (1.23): - - - Makefile cleanup patch by Gerd Hoffmann - - use a single rule for building bios binaries - - use target specific variables to set compile flags - This makes it more obvious what the differences between the versions are. - It also makes it easier to add new bios binaries with slightly different - settings. - -2011-06-27 19:58 vruppert - - * Makefile (1.22), vgabios.c (1.72): - - - added PCI ROM support to the VBE-specific images - -2011-04-14 18:10 vruppert - - * clext.c (1.15), vbe.c (1.63), vgabios.c (1.71): - - - fixed DAC palette in 8 bpp VBE and Cirrus modes (using the same palette - as VGA mode 0x13) - -2011-01-31 18:28 vruppert - - * vbetables-gen.c (1.6): - - - added HDTV resolutions (patch by Tristan Schmelcher) - -2011-01-29 09:42 vruppert - - * vgabios.c (1.70): - - - fixed vgabios init with logging disabled - -2009-04-07 20:18 vruppert - - * vgabios.c (1.69): - - - biosfn_write_teletype: fixed attribute when scrolling in text mode - -2009-04-06 20:17 vruppert - - * ChangeLog (1.28), README (1.17): - - - preparing for release 0.6c - -2009-01-25 16:46 vruppert - - * vbe.c (1.62), vbe.h (1.28), vbetables-gen.c (1.5): - - - added support for a lot more non-standard VBE modes (e.g. widescreen modes) - - requires latest Bochs VBE code (16 MB video memory, VBE_DISPI_ID5, VRAM size - in 64k pages stored in VBE register) - - check if VBE mode is supported with current VRAM size - -2009-01-24 11:02 vruppert - - * clext.c (1.14), vbe.c (1.61), vgabios.c (1.68): - - - use VBE LFB address from PCI base address if present (rewrite of the cirrus - specific function in main vgabios code) - - removed unnecessary spaces - -2008-12-14 09:29 vruppert - - * clext.c (1.13): - - - added DPMS support to cirrus vgabios (patch from Gleb Natapov) - -2008-05-30 17:28 vruppert - - * README (1.16): - - - updated for release 0.6b - -2008-05-22 12:55 vruppert - - * ChangeLog (1.27), README (1.15): - - - preparations for release 0.6b - -2008-05-11 08:40 vruppert - - * biossums.c (1.6): - - - fixed a warning - -2008-03-02 08:47 vruppert - - * vbe.c (1.60): - - - added debug message for unsupported VBE modes - -2008-02-24 09:18 vruppert - - * vbe.c (1.59): - - - in LFB modes the number of banks must be set to 1 - -2008-01-27 10:44 vruppert - - * Makefile (1.21), biossums.c (1.5), vgabios.c (1.67): - - - added PCI data structure for the Cirrus VGABIOS images - - added support for the PCI data structure in biossums - - updated year in copyright - -2008-01-26 11:46 vruppert - - * BUGS (1.4), Makefile (1.20), README (1.14), TODO (1.13), vbe_display_api.txt (1.14): - - - whitespace cleanup - -2006-11-26 10:43 vruppert - - * Makefile (1.19): - - - disable the generation of linemarkers by the preprocessor, since the latest - versions of bcc don't like them - -2006-09-02 13:15 vruppert - - * biossums.c (1.4): - - - the biossums utility no longer modifies VGABIOS images with proper checksum - and size - -2006-08-19 14:28 vruppert - - * Changelog (1.26), README (1.13), TODO (1.12): - - - updates for 0.6a release - -2006-08-19 09:39 vruppert - - * vbe.c (1.58): - - - improved VGA compatible setup for VBE modes (disable CGA and Hercules - compatible memory layout) - -2006-08-18 20:39 vruppert - - * vbe.c (1.57): - - - improved VGA compatible setup for >=8bpp VBE modes (CRTC doubleword mode and - GRDC shift register setting added) - - now using symbolic name for CRTC address register - -2006-08-15 20:42 vruppert - - * vbe.c (1.56), vbetables-gen.c (1.4): - - - init 4bpp VBE modes by a temporary switch to VGA mode 0x6A - - all 4bpp VBE modes now enabled - -2006-08-14 20:24 vruppert - - * vbe.c (1.55): - - - VGA compatible setup for VBE modes improved (Bochs hack can be removed now) - -2006-08-12 07:51 vruppert - - * .cvsignore (1.1): - - - .cvsignore added for auto-generated file - -2006-08-12 07:47 vruppert - - * vbe.c (1.54), vbe.h (1.27), vbe_display_api.txt (1.13), vbetables-gen.c (1.3): - - - cleaned up VBE memory size definitions (removed duplicate defines, main - definition now in vbetables-gen.c) - -2006-08-09 21:28 vruppert - - * vbetables.h (1.30): - - - removed auto-generated file - -2006-08-09 21:26 vruppert - - * vbe.c (1.53), vbe.h (1.26), vbe_display_api.txt (1.12), vbetables-gen.c (1.2), - vbetables.h (1.29): - - - VBE video memory increased to 8 MB - - VBE dispi ID changed to B0C4 - - documentation update - -2006-07-11 08:03 vruppert - - * Makefile (1.18), vbetables-gen.c (1.1), vbetables.h (1.28): - - - generate vbetables.h dynamicly - * initial patch from the qemu project by Fabrice Bellard - * only add modes that fit in video memory (still 4 MB) - * several other fixes (e.g. 4 bpp specific stuff, number of pages) - -2006-07-10 07:47 vruppert - - * vgabios.c (1.66): - - - biosfn_scroll(): check variable 'i' for underflowing when scrolling downwards - to avoid screen corruption - -2006-07-10 07:47 vruppert - - * vbe.c (1.52): - - - VBE set bank functions failure handling added - - VBE get/set logical scan line length fixes for the 4bpp mode - -2006-07-08 13:27 vruppert - - * vbe.c (1.51), vbetables.h (1.27): - - - added special case for the 4 bpp when setting VBE display start - - VBE mode table fixes - -2006-07-07 13:30 vruppert - - * clext.c (1.12): - - - bank pointer must be set to 0 after a mode set - -2006-06-21 16:58 vruppert - - * vbe.c (1.50), vbetables.h (1.26): - - - improved VBE display capabilities check (X resulution checked now) - - removed obsolete defines (LFB always available, always generate dynamic list) - - CR/LF to LF fixes - -2006-06-18 15:22 vruppert - - * clext.c (1.11), vbe.c (1.49), vbe.h (1.25), vbetables.h (1.25), vgabios.c - (1.65): - - - applied patch from the qemu project (Fabrice Bellard) - * Cirrus SVGA now supports the "no clear" bit when switching to Cirrus or - VESA mode - * Bochs VBE protected mode interface improved - * save/restore video state support for Bochs VBE and standard VGA added - * Bochs VBE prepared for more modi - -2006-03-25 10:19 vruppert - - * clext.c (1.10), vgabios.c (1.64), vgatables.h (1.10): - - - applied patch from Fabrice Bellard - * added minimal support for the video parameter table (VPT) - * added Cirrus SVGA mode 0x7b (1600x1200x8) - -2005-12-26 19:50 vruppert - - * vbe.c (1.48), vgabios.c (1.63): - - - Bochs VBE protected mode interface added (based on a patch by malc@pulsesoft.com) - -2005-12-26 19:50 vruppert - - * biossums.c (1.3): - - - biossums utility now supports VGABIOS sizes up to 64 kBytes - -2005-09-21 18:45 vruppert - - * vgatables.h (1.9): - - - mode 0x11: all color planes must be enabled in this 2-color VGA mode - -2005-08-30 18:41 vruppert - - * biossums.c (1.2): - - - missing license text added in biossums.c - -2005-07-02 18:39 vruppert - - * vgabios.c (1.62): - - - BIOS configuration word usually reports initial mode 80x25 color text - - vgabios function 0x0e (write teletype): linefeed (0x0a) only increments the - cursor row value - -2005-05-24 16:50 vruppert - - * vbe.c (1.47), vgabios.c (1.61): - - - output to the vgabios info port can be disabled now. It is still enabled by - default and always possible in debug mode. (based on a patch from Alex Beregszaszi) - -2005-05-20 16:06 vruppert - - * vbe.c (1.46), vgabios.c (1.60): - - - fixed return value for the default case in the VBE section (non-debug mode) - - removed unused macros HALT and PANIC_PORT - -2005-03-07 20:39 vruppert - - * README (1.9): - - - updates for 0.5a release - -2005-03-06 13:06 vruppert - - * Makefile (1.17): - - - vgabios files with cirrus support added to release target - -2005-03-06 12:24 vruppert - - * Makefile (1.16): - - - cross compilation support added (patch from Alex Beregszaszi) - -2005-03-05 13:03 vruppert - - * BUGS (1.3), README (1.8), TODO (1.11): - - - documentation updates - -2004-12-04 15:26 vruppert - - * VGABIOS-lgpl-latest.bin (1.61), VGABIOS-lgpl-latest.cirrus.bin - (1.13), VGABIOS-lgpl-latest.cirrus.debug.bin (1.13), - VGABIOS-lgpl-latest.debug.bin (1.61), clext.c (1.9): - - - Cirrus extension: support for 1280x1024x15 and 1280x1024x16 modes added (patch - from Fabrice Bellard) - -2004-08-08 16:53 vruppert - - * VGABIOS-lgpl-latest.bin (1.60), VGABIOS-lgpl-latest.cirrus.bin (1.12), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.12), - VGABIOS-lgpl-latest.debug.bin (1.60), clext.c (1.8): - - - use single bank mode for VBE - - enable 16k granularity for VBE only - -2004-07-30 19:33 vruppert - - * VGABIOS-lgpl-latest.bin (1.59), VGABIOS-lgpl-latest.cirrus.bin (1.11), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.11), - VGABIOS-lgpl-latest.debug.bin (1.59), clext.c (1.7): - - - cirrus init: set standard vga mode and reset bitblt - -2004-07-22 18:38 vruppert - - * VGABIOS-lgpl-latest.bin (1.58), VGABIOS-lgpl-latest.cirrus.bin (1.10), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.10), - VGABIOS-lgpl-latest.debug.bin (1.58), clext.c (1.6), vbe.c (1.45), - vbetables.h (1.24): - - - cirrus extension: tables for mode 1280x1024x8 added - - vbe: dispi_set_xres() and dispi_set_virt_width() now modify vga compatible - registers - - vbe: mode list entry for mode 800x600x4 fixed - -2004-07-18 20:23 vruppert - - * VGABIOS-lgpl-latest.bin (1.57), VGABIOS-lgpl-latest.cirrus.bin (1.9), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.9), - VGABIOS-lgpl-latest.debug.bin (1.57), vgabios.c (1.59), vgatables.h (1.8): - - - disable CRTC write protection before setting new values - - CRTC line for mode 0x6a fixed - -2004-07-07 16:08 vruppert - - * Makefile (1.15), VGABIOS-lgpl-latest.bin (1.56), - VGABIOS-lgpl-latest.cirrus.bin (1.8), VGABIOS-lgpl-latest.cirrus.debug.bin (1.8), - VGABIOS-lgpl-latest.debug.bin (1.56), biossums.c (1.1), clext.c (1.5): - - - biossums utility for the Bochs BIOS adapted for the LGPL'd VGABIOS - - VESA3 PMINFO checksum calculated in the source - - 24 bpp mode entries fixed (patch from Fabrice Bellard) - -2004-06-25 18:28 vruppert - - * VGABIOS-lgpl-latest.cirrus.bin (1.7), VGABIOS-lgpl-latest.cirrus.debug.bin (1.7), - clext.c (1.4): - - - 4MB memory probe added (patch from Fabrice Bellard) - -2004-06-25 17:31 vruppert - - * VGABIOS-lgpl-latest.bin (1.55), VGABIOS-lgpl-latest.cirrus.bin (1.6), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.6), - VGABIOS-lgpl-latest.debug.bin (1.55), clext.c (1.3): - - - fixed value of sequencer reset register in cirrus mode table - - fixed possible overflow error if cirrus start address is >256k - -2004-06-23 21:11 vruppert - - * VGABIOS-lgpl-latest.bin (1.54), VGABIOS-lgpl-latest.cirrus.bin (1.5), - VGABIOS-lgpl-latest.cirrus.debug.bin (1.5), - VGABIOS-lgpl-latest.debug.bin (1.54), clext.c (1.2): - - - applied new patch for the cirrus extension from suzu - * enable VESA LFB support if a Cirrus PCI adapter is detected - * prepared VBE3 protected mode info block (test case required) - - added VBE functions 4F06h and 4F07h - - some bugfixes - -2004-06-17 18:57 vruppert - - * Makefile (1.14), VGABIOS-lgpl-latest.bin (1.53), - VGABIOS-lgpl-latest.cirrus.bin (1.2), VGABIOS-lgpl-latest.cirrus.debug.bin (1.2), - VGABIOS-lgpl-latest.debug.bin (1.53): - - - fixed makefile targets for the binaries with cirrus extension - -2004-06-16 21:11 vruppert - - * Makefile (1.13), VGABIOS-lgpl-latest.bin (1.52), - VGABIOS-lgpl-latest.cirrus.bin (1.1), VGABIOS-lgpl-latest.cirrus.debug.bin (1.1), - VGABIOS-lgpl-latest.debug.bin (1.52), clext.c (1.1), vgabios.c (1.58): - - - applied suzu's cirrus extension patch. Cirrus SVGA detection, most of the - cirrus-specific modes and some basic VBE features are present now. - -2004-05-31 21:15 vruppert - - * VGABIOS-lgpl-latest.bin (1.51), VGABIOS-lgpl-latest.debug.bin (1.51), - vgabios.c (1.57): - - - write character in planar graphics modes: sequencer map mask must be 0x0f and - bit operation must be 'replace' if bit 7 of attribute is clear - - read/write pixel in planar graphics modes: bit mask setup simplified - -2004-05-11 18:08 vruppert - - * VGABIOS-lgpl-latest.bin (1.50), VGABIOS-lgpl-latest.debug.bin (1.50), - vgabios.c (1.56): - - - biosfn_select_vert_res rewritten in assembler - - scroll text in planar graphics modes: attribute for blank line fixed - - write character in planar graphics modes: graphics controller values fixed - -2004-05-09 20:32 vruppert - - * VGABIOS-lgpl-latest.bin (1.49), VGABIOS-lgpl-latest.debug.bin (1.49), - vbe.c (1.44), vbe.h (1.24), vgabios.c (1.55): - - - VBE init code and some dispi ioport functions rewritten in assembler - - text scroll functions for CGA graphics modes added - - scroll text in graphics modes: attribute for blank line fixed - -2004-05-08 16:06 vruppert - - * BUGS (1.2), README (1.7), TODO (1.10), VGABIOS-lgpl-latest.bin (1.48), - VGABIOS-lgpl-latest.debug.bin (1.48), vbe.c (1.43), vbe.h (1.23), - vbe_display_api.txt (1.11), vgabios.c (1.54): - - - VBE internal functions dispi_set_enable and dispi_set_bank now called both from C - and asm code - - VBE function 0x03 rewritten in assembler - - VBE function 0x08 cleaned up - - text output and scroll functions for graphics modes rewritten using case - structures - - documentation and comments updated - -2004-05-06 21:18 vruppert - - * VGABIOS-lgpl-latest.bin (1.47), VGABIOS-lgpl-latest.debug.bin (1.47), - vbe.c (1.42), vbe.h (1.22), vgabios.c (1.53): - - - VBE functions 0x05, 0x06, 0x07 and some dispi ioport functions rewritten in - assembler - - VBE functions 0x06 and 0x07: get functions now supported, 15 bpp bug fixed - -2004-05-05 19:24 vruppert - - * VGABIOS-lgpl-latest.bin (1.46), VGABIOS-lgpl-latest.debug.bin (1.46), - vbe.c (1.41), vbe.h (1.21), vbe_display_api.txt (1.10), vgabios.c (1.52): - - - 8 bit DAC capability flag set - - vbe_biosfn_set_get_dac_palette_format implemented - - VBE api description updated - - C definitions from header files now used assembler code - -2004-05-02 17:27 vruppert - - * VGABIOS-lgpl-latest.bin (1.45), VGABIOS-lgpl-latest.debug.bin (1.45), - vgabios.c (1.51): - - - text scroll functions for PLANAR1/PLANAR4 graphics modes added - - function biosfn_get_ega_info rewritten in assembler - - read/write graphics pixel functions rewritten using a case structure - -2004-05-01 16:03 vruppert - - * VGABIOS-lgpl-latest.bin (1.44), VGABIOS-lgpl-latest.debug.bin (1.44), - vgabios.c (1.50): - - - biosfn_enable_cursor_emulation rewritten in assembler - - remap of the cursor shape depends on modeset control bit 0 - - text output in PLANAR4 modes now supports attribute bit 7 (XOR with background) - -2004-04-25 20:13 vruppert - - * VGABIOS-lgpl-latest.bin (1.43), VGABIOS-lgpl-latest.debug.bin (1.43), - vgabios.c (1.49), vgatables.h (1.7): - - - table entries for vga mode 0x0f fixed (PLANAR2 exists on EGA only) - - function release_font_access now supports the monochrome text mode - - PLANAR1 modes now supported in text output functions and read/write pixel - - function AH=0x12/BL=0x32 rewritten in assembler - -2004-04-25 08:45 vruppert - - * VGABIOS-lgpl-latest.bin (1.42), VGABIOS-lgpl-latest.debug.bin (1.42), - vgabios.c (1.48): - - - block address calculation in font functions fixed - - functions AX=0x1103, AH=0x12/BL=0x31 and AH=0x12/BL=0x33 rewritten in assembler - -2004-04-24 09:59 vruppert - - * VGABIOS-lgpl-latest.bin (1.41), VGABIOS-lgpl-latest.debug.bin (1.41), - vgabios.c (1.47): - - - read/write graphics pixel for PLANAR4 modes added - - CGA specific functions (group AH = 0x0B) implemented - -2004-04-23 14:34 vruppert - - * VGABIOS-lgpl-latest.bin (1.40), VGABIOS-lgpl-latest.debug.bin (1.40), - vgabios.c (1.46): - - - remaining palette and dac read/write functions (except gray scale summing) - rewritten in assembler - -2004-04-18 13:43 vruppert - - * VGABIOS-lgpl-latest.bin (1.39), VGABIOS-lgpl-latest.debug.bin (1.39), - vgabios.c (1.45): - - - some palette and dac read/write functions rewritten in assembler - - main int10 debug message now works with assembler functions, too - -2004-04-18 09:15 japj - - * vbe.c (1.40): - - updated my email address + put vgabios url in the bios copyright string - (instead of my old email address) - -2004-04-17 07:18 vruppert - - * VGABIOS-lgpl-latest.bin (1.38), VGABIOS-lgpl-latest.debug.bin (1.38), - vgabios.c (1.44): - - - biosfn_set_video_mode: don't load DAC registers if default palette loading is - disabled. Perform gray scale summing if enabled. - - biosfn_perform_gray_scale_summing: switch between DAC read and write mode is - required to make this function work. Maximum DAC value always set to 0x3f. - -2004-04-08 17:50 vruppert - - * VGABIOS-lgpl-latest.bin (1.37), VGABIOS-lgpl-latest.debug.bin (1.37), - vgabios.c (1.43): - - - write character function for the LINEAR8 mode - - get_font_access() and release_font_access() rewritten in assembler - - fixed wrong variable name in the init code - -2004-04-06 19:31 vruppert - - * VGABIOS-lgpl-latest.bin (1.36), VGABIOS-lgpl-latest.debug.bin (1.36), - vgabios.c (1.42): - - - init functions rewitten in assembler - - function biosfn_set_display_code rewritten in assembler - -2004-04-05 19:40 vruppert - - * VGABIOS-lgpl-latest.bin (1.35), VGABIOS-lgpl-latest.debug.bin (1.35), - vgabios.c (1.41): - - - functions biosfn_get_video_mode() and biosfn_read_display_code() rewritten - in assembler - -2004-04-04 18:20 vruppert - - * VGABIOS-lgpl-latest.bin (1.34), VGABIOS-lgpl-latest.debug.bin (1.34), - vgabios.c (1.40): - - - write character function for CGA modes added - - read/write graphics pixel for CGA and LINEAR8 modes added - -2004-02-23 21:08 vruppert - - * VGABIOS-lgpl-latest.bin (1.33), VGABIOS-lgpl-latest.debug.bin (1.33), - vbe.c (1.39): - - - dispi_get_max_bpp(): restore the original value of the vbe enable register - -2004-02-22 14:17 vruppert - - * README (1.6), vbe.c (1.38), vbe.h (1.20), vbe_display_api.txt (1.9), - VGABIOS-lgpl-latest.bin (1.32), VGABIOS-lgpl-latest.debug.bin (1.32): - - - new function dispi_get_max_bpp() returns the bpp capabilities of the Bochs gui - - create the mode list depending on the supported bpp capability - - unused stuff removed - - documentation updated - -2004-02-21 18:20 vruppert - - * vbe.c (1.37), vbe.h (1.19), vbetables.h (1.23), - VGABIOS-lgpl-latest.bin (1.31), VGABIOS-lgpl-latest.debug.bin (1.31): - - - dynamicly genarated vbe mode_info list works now - -2003-11-17 21:04 vruppert - - * vbe.c (1.36), vbetables.h (1.22), vgabios.c (1.39), vgatables.h (1.6), - VGABIOS-lgpl-latest.bin (1.30), VGABIOS-lgpl-latest.debug.bin (1.30): - - - new VBE presence flag stored at unused BDA address 0xB9 - - VBE init code rewritten - - added BIOS TTY flag for VBE mode 0x0102 (TODO: scrolling) - - vgabios_init_func: load and activate text font already done by set_video_mode - - function biosfn_get_all_palette_reg() fixed - -2003-11-06 00:26 cbothamy - - * README (1.5): - - - add changes for 0.4c release - -2003-11-06 00:22 cbothamy - - * VGABIOS-lgpl-latest.bin (1.29), VGABIOS-lgpl-latest.debug.bin - (1.29): - - - compile vgabios.c rev1.38 - -2003-11-06 00:21 cbothamy - - * vgabios.c (1.38): - - - activate char table after loading it when setting a text video - mode - -2003-11-06 00:19 cbothamy - - * Makefile (1.12): - - - when making a release, remove unwanted files first, and exclude - CVS from the tarball - -2003-11-04 22:50 cbothamy - - * ChangeLog (1.20, v0_4b): - - - update ChangeLog for 0.4b release - -2003-11-04 22:49 cbothamy - - * README (1.4, v0_4b): - - - update Changes for 0.4b release - -2003-11-04 20:26 vruppert - - * vgabios.c (1.37), VGABIOS-lgpl-latest.bin (1.28), - VGABIOS-lgpl-latest.debug.bin (1.28) (utags: v0_4b): - - - biosfn_get_font_info(): character height must be returned in CX - -2003-11-03 21:57 vruppert - - * vbe.c (1.35, v0_4b), vgabios.c (1.36), VGABIOS-lgpl-latest.bin - (1.27), VGABIOS-lgpl-latest.debug.bin (1.27): - - - the 'noclearmem' flag is not stored in the 'current video mode' - register (0040h:0049h) - VBE also stores the 'noclear' flag in - the 'video control' register (0040h:0087h) - -2003-10-05 10:06 vruppert - - * vbe.h (1.18, v0_4b), vbe_display_api.txt (1.8, v0_4b), - VGABIOS-lgpl-latest.bin (1.26), VGABIOS-lgpl-latest.debug.bin - (1.26): - - - changed VBE i/o registers to 0x01CE/CF (suggestion from Daniel - Gimpelevich) - -2003-08-18 18:38 vruppert - - * VGABIOS-lgpl-latest.bin (1.25), VGABIOS-lgpl-latest.debug.bin - (1.25), vgabios.c (1.35): - - - wrong offsets to the character tables (INT 0x1F/0x43) fixed - (underscore added) - functions accessing the CRT controller - optimized using a local variable 'crtc_addr' - -2003-08-17 15:46 cbothamy - - * ChangeLog (1.19, v0_4a): - - - ChangeLog is now automatically generated by running "cvs2cl -r - -t -P -S" - update ChangeLog for 0.4a release - -2003-08-17 15:44 cbothamy - - * README (1.3, v0_4a): - - - added the old ChangeLog in the HOSTORY section of the README - file - update History for 0.4a release, with a summary of Changes - -2003-08-17 15:24 cbothamy - - * Makefile (1.11, v0_4b, v0_4a): - - - fix Makefile for "release" target - -2003-08-16 01:49 cbothamy - - * Makefile (1.10), README (1.2), VGABIOS-lgpl-latest.bin (1.24, - v0_4a), VGABIOS-lgpl-latest.debug.bin (1.24, v0_4a), vgabios.c - (1.34, v0_4a): - - - update the Makefile for releases - remove references to old - plex86 website - update the Makefile so it build - VGABIOS-lgpl-latest.bin and VGABIOS-lgpl-latest.debug.bin - -2003-08-07 18:17 vruppert - - * VGABIOS-lgpl-latest.bin (1.23), VGABIOS-lgpl-latest.debug.bin - (1.23): - - - current VBE mode now stored in BDA (unused address 0xBA) - -2003-08-07 17:54 vruppert - - * vbe.c (1.34), vgatables.h (1.5, v0_4b) (utags: v0_4a): - - - current VBE mode now stored in BDA (unused address 0xBA) - -2003-07-20 18:05 vruppert - - * vgabios.c (1.33), VGABIOS-lgpl-latest.bin (1.22), - VGABIOS-lgpl-latest.debug.bin (1.22): - - - fixed a few functions accessing the attribute controller - -2003-07-19 09:33 vruppert - - * vgabios.c (1.32), VGABIOS-lgpl-latest.bin (1.21), - VGABIOS-lgpl-latest.debug.bin (1.21): - - - re-enable video after programming the attribute controller - - biosfn_set_all_palette_reg(): number of palette registers fixed - -2003-07-16 22:32 vruppert - - * ChangeLog (1.18), vbe.c (1.33), vbe.h (1.17, v0_4a), - vbe_display_api.txt (1.7, v0_4a), vgabios.c (1.31), - VGABIOS-lgpl-latest.bin (1.20), VGABIOS-lgpl-latest.debug.bin - (1.20): - - - LFB flag now stored in the register VBE_DISPI_INDEX_ENABLE - - release date in Changelog fixed - release date of VBE BIOS 0.6 - was the same as VGA BIOS 0.3b - year changed in copyright - messages - -2003-07-15 12:40 vruppert - - * VGABIOS-lgpl-latest.bin (1.19), VGABIOS-lgpl-latest.debug.bin - (1.19): - - - new function dispi_get_bpp() - function - vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - - number of image pages of all VBE modes fixed - -2003-07-15 12:35 vruppert - - * vbe.c (1.32), vbetables.h (1.21, v0_4b, v0_4a): - - - new function dispi_get_bpp() - function - vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - - number of image pages of all VBE modes fixed - -2003-07-14 19:45 vruppert - - * vbe_display_api.txt (1.6): - - - description of VBE_DISPI_ interface 0xb0c2 added - -2003-07-10 19:07 vruppert - - * vbe.c (1.31), vbetables.h (1.20), VGABIOS-lgpl-latest.bin (1.18), - VGABIOS-lgpl-latest.debug.bin (1.18): - - - 15 bpp VBE modes added - "Bochs own" mode 0x142 (640x480x32bpp) - added - -2003-07-01 19:00 vruppert - - * vbe.c (1.30), vbe.h (1.16), vbetables.h (1.19), - VGABIOS-lgpl-latest.bin (1.17), VGABIOS-lgpl-latest.debug.bin - (1.17): - - - VBE preserve display memory feature implemented - VBE mode - entries 0x117 and 0x118 added - -2003-06-30 21:27 vruppert - - * vbe.c (1.29), vbe.h (1.15), vbetables.h (1.18), - VGABIOS-lgpl-latest.bin (1.16), VGABIOS-lgpl-latest.debug.bin - (1.16): - - - VBE mode info blocks of modes with >8bpp enabled - VBE modes - with 24 bpp: bytes per scanline fixed - vbe_biosfn_set_mode() now - supports >8bpp - VBE will be enabled with new VBE_DISPI_ID2 - (0xB0C2) - -2003-06-29 12:53 vruppert - - * vbetables.h (1.17), VGABIOS-lgpl-latest.bin (1.15), - VGABIOS-lgpl-latest.debug.bin (1.15): - - - duplicate lines with VBE_MODE_ATTRIBUTE_GRAPHICS_MODE removed - - VBE mode info items of currently unsupported modes fixed - -2003-06-15 21:19 vruppert - - * vgabios.c (1.30), VGABIOS-lgpl-latest.bin (1.14), - VGABIOS-lgpl-latest.debug.bin (1.14): - - - function write_gfx_char() rewritten - -2003-04-26 09:27 vruppert - - * VGABIOS-lgpl-latest.debug.bin (1.13): - - - added missing VBE function dispi_get_bank() - added missing - return codes for VBE function 4F05h - memory size is always - reported in VBE function 4F00h - fixed scan line length for VBE - mode 0102h - fixed function set_active_page() for graphics modes - - fixed the page sizes of some VGA modes - -2003-04-26 09:22 vruppert - - * vbe.c (1.28), vbetables.h (1.16), vgabios.c (1.29), vgatables.h - (1.4), VGABIOS-lgpl-latest.bin (1.13): - - - added missing VBE function dispi_get_bank() - added missing - return codes for VBE function 4F05h - memory size is always - reported in VBE function 4F00h - fixed scan line length for VBE - mode 0102h - fixed function set_active_page() for graphics modes - - fixed the page sizes of some VGA modes - -2003-04-20 09:51 vruppert - - * vgabios.c (1.28), vgatables.h (1.3), VGABIOS-lgpl-latest.bin - (1.12), VGABIOS-lgpl-latest.debug.bin (1.12): - - - function write_gfx_char() now supports different font sizes - - some entries of the static functionality table fixed - -2003-04-18 09:23 vruppert - - * vbe.c (1.27), vbe.h (1.14), vbetables.h (1.15): - - - applied patch #1331 * new function dispi_set_bank_farcall() - * VBE mode info item WinFuncPtr points to the new function if the - flag VBE_WINDOW_ATTRIBUTE_RELOCATABLE is set * flag - VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE added - -2003-02-11 20:17 vruppert - - * VGABIOS-lgpl-latest.bin (1.11), VGABIOS-lgpl-latest.debug.bin - (1.11), vbe.c (1.26), vbetables.h (1.14): - - - VBE mode search rewritten * improved function - mode_info_find_mode() is now used by the VBE functions 0x4F01 - and 0x4F02 * removed all mode list entries with the LFB bit - set. LFB detection is now present in the function - mode_info_find_mode() - -2003-02-09 20:59 vruppert - - * VGABIOS-lgpl-latest.bin (1.10), VGABIOS-lgpl-latest.debug.bin - (1.10), vgabios.c (1.27): - - - function write_gfx_char(): memory address now calculated in - this function; background color is always black - function - biosfn_write_char_attr(): the count parameter is now used in - graphics modes too - function biosfn_write_char_only() works - the same way as function biosfn_write_char_attr() in graphics - mode - copying charmap data optimized using memcpyb() - -2003-02-09 11:36 vruppert - - * VGABIOS-lgpl-latest.bin (1.9), VGABIOS-lgpl-latest.debug.bin - (1.9): - - - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA - modes with the LFB flag set removed from the list (Linux doesn't - like mode numbers > 0x07ff) - -2003-02-09 11:02 vruppert - - * vbe.c (1.25), vbe.h (1.13), vbetables.h (1.13): - - - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA - modes with the LFB flag set removed from the list (Linux doesn't - like mode numbers > 0x07ff) - -2003-02-08 13:04 vruppert - - * vbe.c (1.24), vgabios.c (1.26): - - - vbe_biosfn_return_current_mode() now returns the active - standard VGA mode TODO: return VESA mode if enabled - - biosfn_set_video_mode() now clears the screen in CGA mode - correctly - write character functions are now working in all - PLANAR4 graphics modes - added stubs for unimplemented features - in graphics modes - -2003-02-04 22:19 vruppert - - * VGABIOS-lgpl-latest.bin (1.8), VGABIOS-lgpl-latest.debug.bin - (1.8): - - - set video mode: clear vga memory in graphics mode - set video - mode: load default font in text mode - write character - implemented for graphics mode 0x12 - -2003-02-04 22:06 vruppert - - * vgabios.c (1.25): - - - set video mode: clear vga memory in graphics mode - set video - mode: load default font in text mode - write character - implemented for graphics mode 0x12 - -2003-01-21 19:30 vruppert - - * vgabios.c (1.24): - - - remap the cursor size if the char height is > 8 and the new - values are < 8 - -2003-01-20 18:24 cbothamy - - * Makefile (1.9): - - - fix so make -j2 does not overwrite temp files - -2003-01-19 12:35 vruppert - - * vgabios.c (1.23): - - - function set_scan_lines() recalculates the number of rows and - the page size - new values for char height, text rows and page - size are stored in the BIOS data segment - asm helper function - idiv_u added - -2003-01-15 18:49 cbothamy - - * VGABIOS-lgpl-latest.bin (1.7), VGABIOS-lgpl-latest.debug.bin - (1.7): - - - compile vgabios rev 1.22 - -2003-01-15 18:49 cbothamy - - * vgabios.c (1.22): - - - fix bug found by ams : a 8bits index value was compared to - 0x100 in some cases in biosfn_set_all_dac_reg, - biosfn_read_all_dac_reg, biosfn_perform_gray_scale_summing - -2003-01-15 17:34 cbothamy - - * Makefile (1.8): - - - fix symbol table file names, discovered by ams - -2003-01-04 21:20 vruppert - - * VGABIOS-lgpl-latest.bin (1.6), VGABIOS-lgpl-latest.debug.bin - (1.6), vgabios.c (1.21): - - - biosfn_set_video_mode(): reset attribute controller flip-flop - before setting up the controller's registers (bug found with - amidiag) - -2003-01-04 09:50 vruppert - - * vbe.c (1.23): - - - VBE function 0x00 returns VBE 1.x compatible information if no - VBE signature is present - -2003-01-01 12:44 vruppert - - * VGABIOS-lgpl-latest.bin (1.5), VGABIOS-lgpl-latest.debug.bin - (1.5): - - - SVGA mode 0x6A (800x600x4) added to the list of graphics modes - -2002-12-31 18:07 vruppert - - * vgatables.h (1.2): - - - SVGA mode 0x6A (800x600x4) added to the list of graphics modes - -2002-11-23 10:38 cbothamy - - * ChangeLog (1.17, v0_3b): - - - fix changelog for 0.3b release - -2002-10-20 17:12 vruppert - - * VGABIOS-lgpl-latest.bin (1.4), VGABIOS-lgpl-latest.debug.bin - (1.4), vgabios.c (1.20) (utags: v0_3b): - - - new function set_scan_lines() for the font size change (patch - from Hartmut Birr) - cursor shape start and end must be updated - in set_scan_lines() - set_scan_lines() is called by the functions - 0x1110, 0x1111, 0x1112 and 0x1114 after copying the font data - -2002-10-04 08:20 vruppert - - * VGABIOS-lgpl-latest.bin (1.3), VGABIOS-lgpl-latest.debug.bin - (1.3), vgabios.c (1.19): - - - biosfn_set_single_dac_reg(): the red value is stored in DH - -2002-09-19 19:05 cbothamy - - * VGABIOS-lgpl-latest.bin (1.2), VGABIOS-lgpl-latest.debug.bin - (1.2): - - - updated with latest changes - -2002-09-19 19:03 cbothamy - - * ChangeLog (1.16), Makefile (1.7, v0_3b), vbe.c (1.22, v0_3b), - vgabios.c (1.18), vgabios.h (1.3, v0_4b, v0_4a, v0_3b): - - - updated the Makefile - removed display of copyrights. - - changed the Copyright string to "LGPL VGABios developers" - -2002-09-08 21:14 vruppert - - * vgabios.c (1.17): - - - set the cursor shape depending on the current font height - - clear BL before calling int 0x10 function 0x1103 in - vgabios_init_func - -2002-08-23 22:58 cbothamy - - * vbe.c (1.21), vbetables.h (1.12, v0_3b): - - - added lfb-mode numbers (patch from mathis) - -2002-07-21 21:57 japj - - * vbe.c (1.20), vgabios.c (1.16): - - gcc2/3 preprocessing fix - -2002-05-18 16:55 cbothamy - - * vgabios.c (1.15): - - - include patch from Volker that adds some text font functions - -2002-05-01 23:13 japj - - * VGABIOS-lgpl-latest.bin (1.1), VGABIOS-lgpl-latest.debug.bin - (1.1): - - adding latest bin & debug bin of the vgabios - -2002-04-29 14:50 japj - - * ChangeLog (1.15), vbe.c (1.19), vbe.h (1.12, v0_3b), vbetables.h - (1.11), vgabios.c (1.14): - - - applying hw scrolling/multibuffering patch - -2002-04-25 21:59 japj - - * Makefile (1.6), vbe.c (1.18), vgabios.c (1.13): - - - reverting #asm/##asm & endasm patch (does not work with with - cygwin) - -2002-04-19 19:38 japj - - * Makefile (1.5), vbe.c (1.17), vgabios.c (1.12): - - - fixing preprocessing of vgabios with latest gcc (from Mandrake - 8.2) - -2002-04-08 23:44 japj - - * ChangeLog (1.14), vbe_display_api.txt (1.5, v0_3b): - - - preparing docs for new DISPI interface (for hardware scrolling) - -2002-04-03 19:06 japj - - * ChangeLog (1.13), TODO (1.9, v0_4b, v0_4a, v0_3b), vbe.c (1.16): - - - defaulting LFB on + updated changelog & todo - -2002-04-03 00:38 cbothamy - - * vbe.c (1.15), vgabios.c (1.11): - - - changed the logging ports to 0x500 -> 0x502 - -2002-03-14 17:54 japj - - * vbe.c (1.14): - - - vbetables.h is dependant upon some defines (VBE_HAVE_LFB), so - put the include *after* the define - -2002-03-13 21:47 japj - - * ChangeLog (1.12), TODO (1.8), vbe.c (1.13), vbetables.h (1.10), - vgabios.c (1.10): - - - made LFB dependant upon define - not implement vbe functions - return failure - updated todo & docs for things after bochs 1.4 - -2002-03-13 19:46 japj - - * vbe.h (1.11), vbe_display_api.txt (1.4): - - - added max video memory + documented what is in the 0xb0c0 - interface - -2002-03-12 02:33 cbothamy - - * ChangeLog (1.11), Makefile (1.4): - - - updated for 0.3a. Merged vgabios.bin and vbebios.bin - -2002-03-10 21:36 japj - - * ChangeLog (1.10), vbetables.h (1.9): - - - added LFB modes for testing with vbe-lfb patch in Bochs - -2002-03-10 17:42 japj - - * vbe.c (1.12, v0_3a): - - - show people when they do NOT have VBE support available - -2002-03-10 17:36 japj - - * TODO (1.7, v0_3a), vbe.c (1.11), vbe.h (1.10, v0_3a), vgabios.c - (1.9, v0_3a): - - - cleanup of vbe internal functions (set 8bpp mode is now - dependant on ModeInfo content instead of hardcoded functions) - -2002-03-10 17:20 cbothamy - - * ChangeLog (1.9, v0_3a), TODO (1.6): - - - updated for 0.3a - -2002-03-10 17:19 cbothamy - - * vbe.c (1.10), vbe.h (1.9): - - - added vbe_has_vbe_display function that detects an attached vbe - display - -2002-03-10 17:12 cbothamy - - * vgabios.c (1.8): - - - vbe calls are done only if a vbe display is detected - -2002-03-10 11:25 japj - - * vbe.h (1.8), vbe_display_api.txt (1.3, v0_3a): - - - preparing for LFB support - -2002-03-09 14:25 japj - - * vgabios.c (1.7): - - - fixing initial cursor shape to _ instead of - - -2002-03-08 23:08 japj - - * ChangeLog (1.8), TODO (1.5), vbe.c (1.9), vbe.h (1.7), vgabios.c - (1.6): - - - updating vbe code to new API - -2002-03-08 21:48 japj - - * vbe.c (1.8), vbe.h (1.6), vbetables.h (1.8, v0_3a): - - - updating vbe code with #defines from API - -2002-03-08 21:31 japj - - * vbe_display_api.txt (1.2): - - - adding some text about how banks work - -2002-03-08 21:09 japj - - * ChangeLog (1.7), vbe_display_api.txt (1.1): - - - adding vbe_display_api documentation - -2002-03-07 21:36 japj - - * ChangeLog (1.6), vbe.c (1.7), vbetables.h (1.7): - - - added 1024x768xbpp support - some more cleanups/comments - -2002-03-06 21:55 japj - - * ChangeLog (1.5), TODO (1.4), vbe.c (1.6), vbetables.h (1.6), - vgabios.c (1.5): - - - updated changelog with new modi - added 640x480x8 (Mandrake - Installer can use this!) - added pre VBE2 compatible 'detection' - - fixed problem when normal vga set mode wouldn't disable vbe - mode - -2002-03-06 20:59 japj - - * TODO (1.3), vbe.c (1.5), vbe.h (1.5), vbetables.h (1.5), - vgabios.c (1.4): - - - adding 640x400x8 and 800x600x8 vbe support (this depends - HEAVILY on my bochs vga code patch - japj) - -2002-03-06 18:00 japj - - * vbe.c (1.4), vbe.h (1.4), vbetables.h (1.4): - - - implemented banked & lfb support for 320x200x8bpp (some fixes - for vbetest program not displaying anything) - -2002-03-05 20:25 japj - - * Makefile (1.3, v0_3a): - - for vbe debug bios: - print debugging information in assembly - output - print source code in assembly output - -2002-03-01 19:39 japj - - * ChangeLog (1.4), TODO (1.2), vbe.c (1.3), vbe.h (1.3), - vbetables.h (1.3): - - - added vbe support for 320x200x8 using the standard vgamode - (0x13) - -2002-02-19 00:29 japj - - * ChangeLog (1.3): - - - updating ChangeLog with lfbprof - -2002-02-18 23:26 japj - - * tests/lfbprof/: lfbprof.c (1.2), lfbprof.h (1.2) (utags: v0_3a, - v0_3b, v0_4a, v0_4b): - - - fixed unsigned short for mode list (-1 != 0xffff otherwise) - - fixed LfbMapRealPointer macro mask problem (some modes were - skipped) - added some extra 'debugging' printf's - -2002-02-18 23:07 japj - - * tests/lfbprof/: Makefile (1.1, v0_4b, v0_4a, v0_3b, v0_3a), - lfbprof.c (1.1), lfbprof.h (1.1): - - - Adding lfbprof testprogram (for vbe testing purposes) It - needs to be compiled with the Watcom C Compiler - -2002-02-18 18:48 japj - - * vbe.c (1.2), vbe.h (1.2): - - - cosmetic updates to vbe.c/h + added bunch of FIXMEs for work - that needs to be done - -2002-02-18 18:34 japj - - * vbetables.h (1.2): - - - cosmetic updates in vbetables.h - -2002-02-18 18:32 japj - - * ChangeLog (1.2): - - updated changelog with merge of vbebios 0.2 - -2002-02-18 18:07 japj - - * vgabios.c (1.3): - - - small cosmetic cleanup in vgabios vbe code + added FIXMEs - -2002-02-18 17:55 japj - - * Makefile (1.2), dataseghack (1.2, v0_4b, v0_4a, v0_3b, v0_3a), - vbe.c (1.1), vbe.h (1.1), vbetables.h (1.1), vgabios.c (1.2), - vgabios.h (1.2, v0_3a): - - - merging with vbebios 0.2 release - -2002-02-18 11:31 cbothamy - - * BUGS (1.1, v0_4b, v0_4a, v0_3b, v0_3a), COPYING (1.1, v0_4b, - v0_4a, v0_3b, v0_3a), ChangeLog (1.1), Makefile (1.1), Notes - (1.1, v0_4b, v0_4a, v0_3b, v0_3a), README (1.1, v0_3b, v0_3a), - TODO (1.1), dataseghack (1.1), vgabios.c (1.1), vgabios.h (1.1), - vgafonts.h (1.1, v0_4b, v0_4a, v0_3b, v0_3a), vgatables.h (1.1, - v0_3b, v0_3a), tests/testbios.c (1.1, v0_4b, v0_4a, v0_3b, - v0_3a): - - - initial import - diff -Nru vgabios-0.7a+cvs20180116/ChangeLog.old vgabios-0.7b+ds/ChangeLog.old --- vgabios-0.7a+cvs20180116/ChangeLog.old 1970-01-01 00:00:00.000000000 +0000 +++ vgabios-0.7b+ds/ChangeLog.old 2019-12-27 19:45:05.000000000 +0000 @@ -0,0 +1,1422 @@ +2019-12-27 20:39 vruppert + + * clext.c (1.18), vbe.c (1.67): + + Fixed VESA BIOS function 0x4F15 (get EDID) for both the VBE and Cirrus version + +2018-01-26 11:59 vruppert + + * clext.c (1.17), vbe.c (1.66), vbe.h (1.29), vgabios.c (1.77): + + Added VESA BIOS function 0x4f15 (get EDID) to the Bochs VBE version + +2018-01-25 19:52 vruppert + + * clext.c (1.16): + + Added VESA BIOS function 0x4f15 (get EDID) to the Cirrus version + +2014-07-09 09:02 vruppert + + * README (1.22): + + Updated temporary changelog + +2014-07-08 20:02 vruppert + + * vbe.c (1.65): + + Added check for maximum y resolution for build a correct VBE modes list + +2014-05-31 08:44 vruppert + + * README (1.21): + + Updated Qemu link and added temporary changelog + +2013-02-10 09:07 vruppert + + * vgabios.c (1.76): + + Ensure PCIR is aligned to 4 bytes (patch by David Woodhouse) + +2012-11-19 22:04 vruppert + + * README (1.20): + + update feedback address (patch from Hiroshi Miura ) + +2011-10-30 13:42 vruppert + + * README (1.19): + + - updates for release 0.7a + +2011-10-15 16:07 vruppert + + * vgabios.c (1.75): + + - implemented vgabios functions with AX=0x112x (patch by Hugo Mercier) + +2011-07-19 22:17 vruppert + + * vgabios.c (1.74): + + - update pci_get_lfb_addr for vmware vga (patch by Gerd Hoffmann) + - pci_get_lfb_addr now checks BAR #1 too + - give names to the numbered labels to make the code more readable + +2011-07-19 20:25 vruppert + + * vbe.c (1.64), vgabios.c (1.73): + + - VBE: added support for setting PCI vendor and device IDs using defines + (PCI_VID and PCI_DID). Based on a patch by Gerd Hoffmann. + +2011-07-19 19:00 vruppert + + * Makefile (1.23): + + - Makefile cleanup patch by Gerd Hoffmann + - use a single rule for building bios binaries + - use target specific variables to set compile flags + This makes it more obvious what the differences between the versions are. + It also makes it easier to add new bios binaries with slightly different + settings. + +2011-06-27 19:58 vruppert + + * Makefile (1.22), vgabios.c (1.72): + + - added PCI ROM support to the VBE-specific images + +2011-04-14 18:10 vruppert + + * clext.c (1.15), vbe.c (1.63), vgabios.c (1.71): + + - fixed DAC palette in 8 bpp VBE and Cirrus modes (using the same palette + as VGA mode 0x13) + +2011-01-31 18:28 vruppert + + * vbetables-gen.c (1.6): + + - added HDTV resolutions (patch by Tristan Schmelcher) + +2011-01-29 09:42 vruppert + + * vgabios.c (1.70): + + - fixed vgabios init with logging disabled + +2009-04-07 20:18 vruppert + + * vgabios.c (1.69): + + - biosfn_write_teletype: fixed attribute when scrolling in text mode + +2009-04-06 20:17 vruppert + + * ChangeLog (1.28), README (1.17): + + - preparing for release 0.6c + +2009-01-25 16:46 vruppert + + * vbe.c (1.62), vbe.h (1.28), vbetables-gen.c (1.5): + + - added support for a lot more non-standard VBE modes (e.g. widescreen modes) + - requires latest Bochs VBE code (16 MB video memory, VBE_DISPI_ID5, VRAM size + in 64k pages stored in VBE register) + - check if VBE mode is supported with current VRAM size + +2009-01-24 11:02 vruppert + + * clext.c (1.14), vbe.c (1.61), vgabios.c (1.68): + + - use VBE LFB address from PCI base address if present (rewrite of the cirrus + specific function in main vgabios code) + - removed unnecessary spaces + +2008-12-14 09:29 vruppert + + * clext.c (1.13): + + - added DPMS support to cirrus vgabios (patch from Gleb Natapov) + +2008-05-30 17:28 vruppert + + * README (1.16): + + - updated for release 0.6b + +2008-05-22 12:55 vruppert + + * ChangeLog (1.27), README (1.15): + + - preparations for release 0.6b + +2008-05-11 08:40 vruppert + + * biossums.c (1.6): + + - fixed a warning + +2008-03-02 08:47 vruppert + + * vbe.c (1.60): + + - added debug message for unsupported VBE modes + +2008-02-24 09:18 vruppert + + * vbe.c (1.59): + + - in LFB modes the number of banks must be set to 1 + +2008-01-27 10:44 vruppert + + * Makefile (1.21), biossums.c (1.5), vgabios.c (1.67): + + - added PCI data structure for the Cirrus VGABIOS images + - added support for the PCI data structure in biossums + - updated year in copyright + +2008-01-26 11:46 vruppert + + * BUGS (1.4), Makefile (1.20), README (1.14), TODO (1.13), vbe_display_api.txt (1.14): + + - whitespace cleanup + +2006-11-26 10:43 vruppert + + * Makefile (1.19): + + - disable the generation of linemarkers by the preprocessor, since the latest + versions of bcc don't like them + +2006-09-02 13:15 vruppert + + * biossums.c (1.4): + + - the biossums utility no longer modifies VGABIOS images with proper checksum + and size + +2006-08-19 14:28 vruppert + + * Changelog (1.26), README (1.13), TODO (1.12): + + - updates for 0.6a release + +2006-08-19 09:39 vruppert + + * vbe.c (1.58): + + - improved VGA compatible setup for VBE modes (disable CGA and Hercules + compatible memory layout) + +2006-08-18 20:39 vruppert + + * vbe.c (1.57): + + - improved VGA compatible setup for >=8bpp VBE modes (CRTC doubleword mode and + GRDC shift register setting added) + - now using symbolic name for CRTC address register + +2006-08-15 20:42 vruppert + + * vbe.c (1.56), vbetables-gen.c (1.4): + + - init 4bpp VBE modes by a temporary switch to VGA mode 0x6A + - all 4bpp VBE modes now enabled + +2006-08-14 20:24 vruppert + + * vbe.c (1.55): + + - VGA compatible setup for VBE modes improved (Bochs hack can be removed now) + +2006-08-12 07:51 vruppert + + * .cvsignore (1.1): + + - .cvsignore added for auto-generated file + +2006-08-12 07:47 vruppert + + * vbe.c (1.54), vbe.h (1.27), vbe_display_api.txt (1.13), vbetables-gen.c (1.3): + + - cleaned up VBE memory size definitions (removed duplicate defines, main + definition now in vbetables-gen.c) + +2006-08-09 21:28 vruppert + + * vbetables.h (1.30): + + - removed auto-generated file + +2006-08-09 21:26 vruppert + + * vbe.c (1.53), vbe.h (1.26), vbe_display_api.txt (1.12), vbetables-gen.c (1.2), + vbetables.h (1.29): + + - VBE video memory increased to 8 MB + - VBE dispi ID changed to B0C4 + - documentation update + +2006-07-11 08:03 vruppert + + * Makefile (1.18), vbetables-gen.c (1.1), vbetables.h (1.28): + + - generate vbetables.h dynamicly + * initial patch from the qemu project by Fabrice Bellard + * only add modes that fit in video memory (still 4 MB) + * several other fixes (e.g. 4 bpp specific stuff, number of pages) + +2006-07-10 07:47 vruppert + + * vgabios.c (1.66): + + - biosfn_scroll(): check variable 'i' for underflowing when scrolling downwards + to avoid screen corruption + +2006-07-10 07:47 vruppert + + * vbe.c (1.52): + + - VBE set bank functions failure handling added + - VBE get/set logical scan line length fixes for the 4bpp mode + +2006-07-08 13:27 vruppert + + * vbe.c (1.51), vbetables.h (1.27): + + - added special case for the 4 bpp when setting VBE display start + - VBE mode table fixes + +2006-07-07 13:30 vruppert + + * clext.c (1.12): + + - bank pointer must be set to 0 after a mode set + +2006-06-21 16:58 vruppert + + * vbe.c (1.50), vbetables.h (1.26): + + - improved VBE display capabilities check (X resulution checked now) + - removed obsolete defines (LFB always available, always generate dynamic list) + - CR/LF to LF fixes + +2006-06-18 15:22 vruppert + + * clext.c (1.11), vbe.c (1.49), vbe.h (1.25), vbetables.h (1.25), vgabios.c + (1.65): + + - applied patch from the qemu project (Fabrice Bellard) + * Cirrus SVGA now supports the "no clear" bit when switching to Cirrus or + VESA mode + * Bochs VBE protected mode interface improved + * save/restore video state support for Bochs VBE and standard VGA added + * Bochs VBE prepared for more modi + +2006-03-25 10:19 vruppert + + * clext.c (1.10), vgabios.c (1.64), vgatables.h (1.10): + + - applied patch from Fabrice Bellard + * added minimal support for the video parameter table (VPT) + * added Cirrus SVGA mode 0x7b (1600x1200x8) + +2005-12-26 19:50 vruppert + + * vbe.c (1.48), vgabios.c (1.63): + + - Bochs VBE protected mode interface added (based on a patch by malc@pulsesoft.com) + +2005-12-26 19:50 vruppert + + * biossums.c (1.3): + + - biossums utility now supports VGABIOS sizes up to 64 kBytes + +2005-09-21 18:45 vruppert + + * vgatables.h (1.9): + + - mode 0x11: all color planes must be enabled in this 2-color VGA mode + +2005-08-30 18:41 vruppert + + * biossums.c (1.2): + + - missing license text added in biossums.c + +2005-07-02 18:39 vruppert + + * vgabios.c (1.62): + + - BIOS configuration word usually reports initial mode 80x25 color text + - vgabios function 0x0e (write teletype): linefeed (0x0a) only increments the + cursor row value + +2005-05-24 16:50 vruppert + + * vbe.c (1.47), vgabios.c (1.61): + + - output to the vgabios info port can be disabled now. It is still enabled by + default and always possible in debug mode. (based on a patch from Alex Beregszaszi) + +2005-05-20 16:06 vruppert + + * vbe.c (1.46), vgabios.c (1.60): + + - fixed return value for the default case in the VBE section (non-debug mode) + - removed unused macros HALT and PANIC_PORT + +2005-03-07 20:39 vruppert + + * README (1.9): + + - updates for 0.5a release + +2005-03-06 13:06 vruppert + + * Makefile (1.17): + + - vgabios files with cirrus support added to release target + +2005-03-06 12:24 vruppert + + * Makefile (1.16): + + - cross compilation support added (patch from Alex Beregszaszi) + +2005-03-05 13:03 vruppert + + * BUGS (1.3), README (1.8), TODO (1.11): + + - documentation updates + +2004-12-04 15:26 vruppert + + * VGABIOS-lgpl-latest.bin (1.61), VGABIOS-lgpl-latest.cirrus.bin + (1.13), VGABIOS-lgpl-latest.cirrus.debug.bin (1.13), + VGABIOS-lgpl-latest.debug.bin (1.61), clext.c (1.9): + + - Cirrus extension: support for 1280x1024x15 and 1280x1024x16 modes added (patch + from Fabrice Bellard) + +2004-08-08 16:53 vruppert + + * VGABIOS-lgpl-latest.bin (1.60), VGABIOS-lgpl-latest.cirrus.bin (1.12), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.12), + VGABIOS-lgpl-latest.debug.bin (1.60), clext.c (1.8): + + - use single bank mode for VBE + - enable 16k granularity for VBE only + +2004-07-30 19:33 vruppert + + * VGABIOS-lgpl-latest.bin (1.59), VGABIOS-lgpl-latest.cirrus.bin (1.11), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.11), + VGABIOS-lgpl-latest.debug.bin (1.59), clext.c (1.7): + + - cirrus init: set standard vga mode and reset bitblt + +2004-07-22 18:38 vruppert + + * VGABIOS-lgpl-latest.bin (1.58), VGABIOS-lgpl-latest.cirrus.bin (1.10), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.10), + VGABIOS-lgpl-latest.debug.bin (1.58), clext.c (1.6), vbe.c (1.45), + vbetables.h (1.24): + + - cirrus extension: tables for mode 1280x1024x8 added + - vbe: dispi_set_xres() and dispi_set_virt_width() now modify vga compatible + registers + - vbe: mode list entry for mode 800x600x4 fixed + +2004-07-18 20:23 vruppert + + * VGABIOS-lgpl-latest.bin (1.57), VGABIOS-lgpl-latest.cirrus.bin (1.9), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.9), + VGABIOS-lgpl-latest.debug.bin (1.57), vgabios.c (1.59), vgatables.h (1.8): + + - disable CRTC write protection before setting new values + - CRTC line for mode 0x6a fixed + +2004-07-07 16:08 vruppert + + * Makefile (1.15), VGABIOS-lgpl-latest.bin (1.56), + VGABIOS-lgpl-latest.cirrus.bin (1.8), VGABIOS-lgpl-latest.cirrus.debug.bin (1.8), + VGABIOS-lgpl-latest.debug.bin (1.56), biossums.c (1.1), clext.c (1.5): + + - biossums utility for the Bochs BIOS adapted for the LGPL'd VGABIOS + - VESA3 PMINFO checksum calculated in the source + - 24 bpp mode entries fixed (patch from Fabrice Bellard) + +2004-06-25 18:28 vruppert + + * VGABIOS-lgpl-latest.cirrus.bin (1.7), VGABIOS-lgpl-latest.cirrus.debug.bin (1.7), + clext.c (1.4): + + - 4MB memory probe added (patch from Fabrice Bellard) + +2004-06-25 17:31 vruppert + + * VGABIOS-lgpl-latest.bin (1.55), VGABIOS-lgpl-latest.cirrus.bin (1.6), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.6), + VGABIOS-lgpl-latest.debug.bin (1.55), clext.c (1.3): + + - fixed value of sequencer reset register in cirrus mode table + - fixed possible overflow error if cirrus start address is >256k + +2004-06-23 21:11 vruppert + + * VGABIOS-lgpl-latest.bin (1.54), VGABIOS-lgpl-latest.cirrus.bin (1.5), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.5), + VGABIOS-lgpl-latest.debug.bin (1.54), clext.c (1.2): + + - applied new patch for the cirrus extension from suzu + * enable VESA LFB support if a Cirrus PCI adapter is detected + * prepared VBE3 protected mode info block (test case required) + - added VBE functions 4F06h and 4F07h + - some bugfixes + +2004-06-17 18:57 vruppert + + * Makefile (1.14), VGABIOS-lgpl-latest.bin (1.53), + VGABIOS-lgpl-latest.cirrus.bin (1.2), VGABIOS-lgpl-latest.cirrus.debug.bin (1.2), + VGABIOS-lgpl-latest.debug.bin (1.53): + + - fixed makefile targets for the binaries with cirrus extension + +2004-06-16 21:11 vruppert + + * Makefile (1.13), VGABIOS-lgpl-latest.bin (1.52), + VGABIOS-lgpl-latest.cirrus.bin (1.1), VGABIOS-lgpl-latest.cirrus.debug.bin (1.1), + VGABIOS-lgpl-latest.debug.bin (1.52), clext.c (1.1), vgabios.c (1.58): + + - applied suzu's cirrus extension patch. Cirrus SVGA detection, most of the + cirrus-specific modes and some basic VBE features are present now. + +2004-05-31 21:15 vruppert + + * VGABIOS-lgpl-latest.bin (1.51), VGABIOS-lgpl-latest.debug.bin (1.51), + vgabios.c (1.57): + + - write character in planar graphics modes: sequencer map mask must be 0x0f and + bit operation must be 'replace' if bit 7 of attribute is clear + - read/write pixel in planar graphics modes: bit mask setup simplified + +2004-05-11 18:08 vruppert + + * VGABIOS-lgpl-latest.bin (1.50), VGABIOS-lgpl-latest.debug.bin (1.50), + vgabios.c (1.56): + + - biosfn_select_vert_res rewritten in assembler + - scroll text in planar graphics modes: attribute for blank line fixed + - write character in planar graphics modes: graphics controller values fixed + +2004-05-09 20:32 vruppert + + * VGABIOS-lgpl-latest.bin (1.49), VGABIOS-lgpl-latest.debug.bin (1.49), + vbe.c (1.44), vbe.h (1.24), vgabios.c (1.55): + + - VBE init code and some dispi ioport functions rewritten in assembler + - text scroll functions for CGA graphics modes added + - scroll text in graphics modes: attribute for blank line fixed + +2004-05-08 16:06 vruppert + + * BUGS (1.2), README (1.7), TODO (1.10), VGABIOS-lgpl-latest.bin (1.48), + VGABIOS-lgpl-latest.debug.bin (1.48), vbe.c (1.43), vbe.h (1.23), + vbe_display_api.txt (1.11), vgabios.c (1.54): + + - VBE internal functions dispi_set_enable and dispi_set_bank now called both from C + and asm code + - VBE function 0x03 rewritten in assembler + - VBE function 0x08 cleaned up + - text output and scroll functions for graphics modes rewritten using case + structures + - documentation and comments updated + +2004-05-06 21:18 vruppert + + * VGABIOS-lgpl-latest.bin (1.47), VGABIOS-lgpl-latest.debug.bin (1.47), + vbe.c (1.42), vbe.h (1.22), vgabios.c (1.53): + + - VBE functions 0x05, 0x06, 0x07 and some dispi ioport functions rewritten in + assembler + - VBE functions 0x06 and 0x07: get functions now supported, 15 bpp bug fixed + +2004-05-05 19:24 vruppert + + * VGABIOS-lgpl-latest.bin (1.46), VGABIOS-lgpl-latest.debug.bin (1.46), + vbe.c (1.41), vbe.h (1.21), vbe_display_api.txt (1.10), vgabios.c (1.52): + + - 8 bit DAC capability flag set + - vbe_biosfn_set_get_dac_palette_format implemented + - VBE api description updated + - C definitions from header files now used assembler code + +2004-05-02 17:27 vruppert + + * VGABIOS-lgpl-latest.bin (1.45), VGABIOS-lgpl-latest.debug.bin (1.45), + vgabios.c (1.51): + + - text scroll functions for PLANAR1/PLANAR4 graphics modes added + - function biosfn_get_ega_info rewritten in assembler + - read/write graphics pixel functions rewritten using a case structure + +2004-05-01 16:03 vruppert + + * VGABIOS-lgpl-latest.bin (1.44), VGABIOS-lgpl-latest.debug.bin (1.44), + vgabios.c (1.50): + + - biosfn_enable_cursor_emulation rewritten in assembler + - remap of the cursor shape depends on modeset control bit 0 + - text output in PLANAR4 modes now supports attribute bit 7 (XOR with background) + +2004-04-25 20:13 vruppert + + * VGABIOS-lgpl-latest.bin (1.43), VGABIOS-lgpl-latest.debug.bin (1.43), + vgabios.c (1.49), vgatables.h (1.7): + + - table entries for vga mode 0x0f fixed (PLANAR2 exists on EGA only) + - function release_font_access now supports the monochrome text mode + - PLANAR1 modes now supported in text output functions and read/write pixel + - function AH=0x12/BL=0x32 rewritten in assembler + +2004-04-25 08:45 vruppert + + * VGABIOS-lgpl-latest.bin (1.42), VGABIOS-lgpl-latest.debug.bin (1.42), + vgabios.c (1.48): + + - block address calculation in font functions fixed + - functions AX=0x1103, AH=0x12/BL=0x31 and AH=0x12/BL=0x33 rewritten in assembler + +2004-04-24 09:59 vruppert + + * VGABIOS-lgpl-latest.bin (1.41), VGABIOS-lgpl-latest.debug.bin (1.41), + vgabios.c (1.47): + + - read/write graphics pixel for PLANAR4 modes added + - CGA specific functions (group AH = 0x0B) implemented + +2004-04-23 14:34 vruppert + + * VGABIOS-lgpl-latest.bin (1.40), VGABIOS-lgpl-latest.debug.bin (1.40), + vgabios.c (1.46): + + - remaining palette and dac read/write functions (except gray scale summing) + rewritten in assembler + +2004-04-18 13:43 vruppert + + * VGABIOS-lgpl-latest.bin (1.39), VGABIOS-lgpl-latest.debug.bin (1.39), + vgabios.c (1.45): + + - some palette and dac read/write functions rewritten in assembler + - main int10 debug message now works with assembler functions, too + +2004-04-18 09:15 japj + + * vbe.c (1.40): + + updated my email address + put vgabios url in the bios copyright string + (instead of my old email address) + +2004-04-17 07:18 vruppert + + * VGABIOS-lgpl-latest.bin (1.38), VGABIOS-lgpl-latest.debug.bin (1.38), + vgabios.c (1.44): + + - biosfn_set_video_mode: don't load DAC registers if default palette loading is + disabled. Perform gray scale summing if enabled. + - biosfn_perform_gray_scale_summing: switch between DAC read and write mode is + required to make this function work. Maximum DAC value always set to 0x3f. + +2004-04-08 17:50 vruppert + + * VGABIOS-lgpl-latest.bin (1.37), VGABIOS-lgpl-latest.debug.bin (1.37), + vgabios.c (1.43): + + - write character function for the LINEAR8 mode + - get_font_access() and release_font_access() rewritten in assembler + - fixed wrong variable name in the init code + +2004-04-06 19:31 vruppert + + * VGABIOS-lgpl-latest.bin (1.36), VGABIOS-lgpl-latest.debug.bin (1.36), + vgabios.c (1.42): + + - init functions rewitten in assembler + - function biosfn_set_display_code rewritten in assembler + +2004-04-05 19:40 vruppert + + * VGABIOS-lgpl-latest.bin (1.35), VGABIOS-lgpl-latest.debug.bin (1.35), + vgabios.c (1.41): + + - functions biosfn_get_video_mode() and biosfn_read_display_code() rewritten + in assembler + +2004-04-04 18:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.34), VGABIOS-lgpl-latest.debug.bin (1.34), + vgabios.c (1.40): + + - write character function for CGA modes added + - read/write graphics pixel for CGA and LINEAR8 modes added + +2004-02-23 21:08 vruppert + + * VGABIOS-lgpl-latest.bin (1.33), VGABIOS-lgpl-latest.debug.bin (1.33), + vbe.c (1.39): + + - dispi_get_max_bpp(): restore the original value of the vbe enable register + +2004-02-22 14:17 vruppert + + * README (1.6), vbe.c (1.38), vbe.h (1.20), vbe_display_api.txt (1.9), + VGABIOS-lgpl-latest.bin (1.32), VGABIOS-lgpl-latest.debug.bin (1.32): + + - new function dispi_get_max_bpp() returns the bpp capabilities of the Bochs gui + - create the mode list depending on the supported bpp capability + - unused stuff removed + - documentation updated + +2004-02-21 18:20 vruppert + + * vbe.c (1.37), vbe.h (1.19), vbetables.h (1.23), + VGABIOS-lgpl-latest.bin (1.31), VGABIOS-lgpl-latest.debug.bin (1.31): + + - dynamicly genarated vbe mode_info list works now + +2003-11-17 21:04 vruppert + + * vbe.c (1.36), vbetables.h (1.22), vgabios.c (1.39), vgatables.h (1.6), + VGABIOS-lgpl-latest.bin (1.30), VGABIOS-lgpl-latest.debug.bin (1.30): + + - new VBE presence flag stored at unused BDA address 0xB9 + - VBE init code rewritten + - added BIOS TTY flag for VBE mode 0x0102 (TODO: scrolling) + - vgabios_init_func: load and activate text font already done by set_video_mode + - function biosfn_get_all_palette_reg() fixed + +2003-11-06 00:26 cbothamy + + * README (1.5): + + - add changes for 0.4c release + +2003-11-06 00:22 cbothamy + + * VGABIOS-lgpl-latest.bin (1.29), VGABIOS-lgpl-latest.debug.bin + (1.29): + + - compile vgabios.c rev1.38 + +2003-11-06 00:21 cbothamy + + * vgabios.c (1.38): + + - activate char table after loading it when setting a text video + mode + +2003-11-06 00:19 cbothamy + + * Makefile (1.12): + + - when making a release, remove unwanted files first, and exclude + CVS from the tarball + +2003-11-04 22:50 cbothamy + + * ChangeLog (1.20, v0_4b): + + - update ChangeLog for 0.4b release + +2003-11-04 22:49 cbothamy + + * README (1.4, v0_4b): + + - update Changes for 0.4b release + +2003-11-04 20:26 vruppert + + * vgabios.c (1.37), VGABIOS-lgpl-latest.bin (1.28), + VGABIOS-lgpl-latest.debug.bin (1.28) (utags: v0_4b): + + - biosfn_get_font_info(): character height must be returned in CX + +2003-11-03 21:57 vruppert + + * vbe.c (1.35, v0_4b), vgabios.c (1.36), VGABIOS-lgpl-latest.bin + (1.27), VGABIOS-lgpl-latest.debug.bin (1.27): + + - the 'noclearmem' flag is not stored in the 'current video mode' + register (0040h:0049h) - VBE also stores the 'noclear' flag in + the 'video control' register (0040h:0087h) + +2003-10-05 10:06 vruppert + + * vbe.h (1.18, v0_4b), vbe_display_api.txt (1.8, v0_4b), + VGABIOS-lgpl-latest.bin (1.26), VGABIOS-lgpl-latest.debug.bin + (1.26): + + - changed VBE i/o registers to 0x01CE/CF (suggestion from Daniel + Gimpelevich) + +2003-08-18 18:38 vruppert + + * VGABIOS-lgpl-latest.bin (1.25), VGABIOS-lgpl-latest.debug.bin + (1.25), vgabios.c (1.35): + + - wrong offsets to the character tables (INT 0x1F/0x43) fixed + (underscore added) - functions accessing the CRT controller + optimized using a local variable 'crtc_addr' + +2003-08-17 15:46 cbothamy + + * ChangeLog (1.19, v0_4a): + + - ChangeLog is now automatically generated by running "cvs2cl -r + -t -P -S" - update ChangeLog for 0.4a release + +2003-08-17 15:44 cbothamy + + * README (1.3, v0_4a): + + - added the old ChangeLog in the HOSTORY section of the README + file - update History for 0.4a release, with a summary of Changes + +2003-08-17 15:24 cbothamy + + * Makefile (1.11, v0_4b, v0_4a): + + - fix Makefile for "release" target + +2003-08-16 01:49 cbothamy + + * Makefile (1.10), README (1.2), VGABIOS-lgpl-latest.bin (1.24, + v0_4a), VGABIOS-lgpl-latest.debug.bin (1.24, v0_4a), vgabios.c + (1.34, v0_4a): + + - update the Makefile for releases - remove references to old + plex86 website - update the Makefile so it build + VGABIOS-lgpl-latest.bin and VGABIOS-lgpl-latest.debug.bin + +2003-08-07 18:17 vruppert + + * VGABIOS-lgpl-latest.bin (1.23), VGABIOS-lgpl-latest.debug.bin + (1.23): + + - current VBE mode now stored in BDA (unused address 0xBA) + +2003-08-07 17:54 vruppert + + * vbe.c (1.34), vgatables.h (1.5, v0_4b) (utags: v0_4a): + + - current VBE mode now stored in BDA (unused address 0xBA) + +2003-07-20 18:05 vruppert + + * vgabios.c (1.33), VGABIOS-lgpl-latest.bin (1.22), + VGABIOS-lgpl-latest.debug.bin (1.22): + + - fixed a few functions accessing the attribute controller + +2003-07-19 09:33 vruppert + + * vgabios.c (1.32), VGABIOS-lgpl-latest.bin (1.21), + VGABIOS-lgpl-latest.debug.bin (1.21): + + - re-enable video after programming the attribute controller - + biosfn_set_all_palette_reg(): number of palette registers fixed + +2003-07-16 22:32 vruppert + + * ChangeLog (1.18), vbe.c (1.33), vbe.h (1.17, v0_4a), + vbe_display_api.txt (1.7, v0_4a), vgabios.c (1.31), + VGABIOS-lgpl-latest.bin (1.20), VGABIOS-lgpl-latest.debug.bin + (1.20): + + - LFB flag now stored in the register VBE_DISPI_INDEX_ENABLE - + release date in Changelog fixed - release date of VBE BIOS 0.6 + was the same as VGA BIOS 0.3b - year changed in copyright + messages + +2003-07-15 12:40 vruppert + + * VGABIOS-lgpl-latest.bin (1.19), VGABIOS-lgpl-latest.debug.bin + (1.19): + + - new function dispi_get_bpp() - function + vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - + number of image pages of all VBE modes fixed + +2003-07-15 12:35 vruppert + + * vbe.c (1.32), vbetables.h (1.21, v0_4b, v0_4a): + + - new function dispi_get_bpp() - function + vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - + number of image pages of all VBE modes fixed + +2003-07-14 19:45 vruppert + + * vbe_display_api.txt (1.6): + + - description of VBE_DISPI_ interface 0xb0c2 added + +2003-07-10 19:07 vruppert + + * vbe.c (1.31), vbetables.h (1.20), VGABIOS-lgpl-latest.bin (1.18), + VGABIOS-lgpl-latest.debug.bin (1.18): + + - 15 bpp VBE modes added - "Bochs own" mode 0x142 (640x480x32bpp) + added + +2003-07-01 19:00 vruppert + + * vbe.c (1.30), vbe.h (1.16), vbetables.h (1.19), + VGABIOS-lgpl-latest.bin (1.17), VGABIOS-lgpl-latest.debug.bin + (1.17): + + - VBE preserve display memory feature implemented - VBE mode + entries 0x117 and 0x118 added + +2003-06-30 21:27 vruppert + + * vbe.c (1.29), vbe.h (1.15), vbetables.h (1.18), + VGABIOS-lgpl-latest.bin (1.16), VGABIOS-lgpl-latest.debug.bin + (1.16): + + - VBE mode info blocks of modes with >8bpp enabled - VBE modes + with 24 bpp: bytes per scanline fixed - vbe_biosfn_set_mode() now + supports >8bpp - VBE will be enabled with new VBE_DISPI_ID2 + (0xB0C2) + +2003-06-29 12:53 vruppert + + * vbetables.h (1.17), VGABIOS-lgpl-latest.bin (1.15), + VGABIOS-lgpl-latest.debug.bin (1.15): + + - duplicate lines with VBE_MODE_ATTRIBUTE_GRAPHICS_MODE removed - + VBE mode info items of currently unsupported modes fixed + +2003-06-15 21:19 vruppert + + * vgabios.c (1.30), VGABIOS-lgpl-latest.bin (1.14), + VGABIOS-lgpl-latest.debug.bin (1.14): + + - function write_gfx_char() rewritten + +2003-04-26 09:27 vruppert + + * VGABIOS-lgpl-latest.debug.bin (1.13): + + - added missing VBE function dispi_get_bank() - added missing + return codes for VBE function 4F05h - memory size is always + reported in VBE function 4F00h - fixed scan line length for VBE + mode 0102h - fixed function set_active_page() for graphics modes + - fixed the page sizes of some VGA modes + +2003-04-26 09:22 vruppert + + * vbe.c (1.28), vbetables.h (1.16), vgabios.c (1.29), vgatables.h + (1.4), VGABIOS-lgpl-latest.bin (1.13): + + - added missing VBE function dispi_get_bank() - added missing + return codes for VBE function 4F05h - memory size is always + reported in VBE function 4F00h - fixed scan line length for VBE + mode 0102h - fixed function set_active_page() for graphics modes + - fixed the page sizes of some VGA modes + +2003-04-20 09:51 vruppert + + * vgabios.c (1.28), vgatables.h (1.3), VGABIOS-lgpl-latest.bin + (1.12), VGABIOS-lgpl-latest.debug.bin (1.12): + + - function write_gfx_char() now supports different font sizes - + some entries of the static functionality table fixed + +2003-04-18 09:23 vruppert + + * vbe.c (1.27), vbe.h (1.14), vbetables.h (1.15): + + - applied patch #1331 * new function dispi_set_bank_farcall() + * VBE mode info item WinFuncPtr points to the new function if the + flag VBE_WINDOW_ATTRIBUTE_RELOCATABLE is set * flag + VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE added + +2003-02-11 20:17 vruppert + + * VGABIOS-lgpl-latest.bin (1.11), VGABIOS-lgpl-latest.debug.bin + (1.11), vbe.c (1.26), vbetables.h (1.14): + + - VBE mode search rewritten * improved function + mode_info_find_mode() is now used by the VBE functions 0x4F01 + and 0x4F02 * removed all mode list entries with the LFB bit + set. LFB detection is now present in the function + mode_info_find_mode() + +2003-02-09 20:59 vruppert + + * VGABIOS-lgpl-latest.bin (1.10), VGABIOS-lgpl-latest.debug.bin + (1.10), vgabios.c (1.27): + + - function write_gfx_char(): memory address now calculated in + this function; background color is always black - function + biosfn_write_char_attr(): the count parameter is now used in + graphics modes too - function biosfn_write_char_only() works + the same way as function biosfn_write_char_attr() in graphics + mode - copying charmap data optimized using memcpyb() + +2003-02-09 11:36 vruppert + + * VGABIOS-lgpl-latest.bin (1.9), VGABIOS-lgpl-latest.debug.bin + (1.9): + + - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA + modes with the LFB flag set removed from the list (Linux doesn't + like mode numbers > 0x07ff) + +2003-02-09 11:02 vruppert + + * vbe.c (1.25), vbe.h (1.13), vbetables.h (1.13): + + - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA + modes with the LFB flag set removed from the list (Linux doesn't + like mode numbers > 0x07ff) + +2003-02-08 13:04 vruppert + + * vbe.c (1.24), vgabios.c (1.26): + + - vbe_biosfn_return_current_mode() now returns the active + standard VGA mode TODO: return VESA mode if enabled - + biosfn_set_video_mode() now clears the screen in CGA mode + correctly - write character functions are now working in all + PLANAR4 graphics modes - added stubs for unimplemented features + in graphics modes + +2003-02-04 22:19 vruppert + + * VGABIOS-lgpl-latest.bin (1.8), VGABIOS-lgpl-latest.debug.bin + (1.8): + + - set video mode: clear vga memory in graphics mode - set video + mode: load default font in text mode - write character + implemented for graphics mode 0x12 + +2003-02-04 22:06 vruppert + + * vgabios.c (1.25): + + - set video mode: clear vga memory in graphics mode - set video + mode: load default font in text mode - write character + implemented for graphics mode 0x12 + +2003-01-21 19:30 vruppert + + * vgabios.c (1.24): + + - remap the cursor size if the char height is > 8 and the new + values are < 8 + +2003-01-20 18:24 cbothamy + + * Makefile (1.9): + + - fix so make -j2 does not overwrite temp files + +2003-01-19 12:35 vruppert + + * vgabios.c (1.23): + + - function set_scan_lines() recalculates the number of rows and + the page size - new values for char height, text rows and page + size are stored in the BIOS data segment - asm helper function + idiv_u added + +2003-01-15 18:49 cbothamy + + * VGABIOS-lgpl-latest.bin (1.7), VGABIOS-lgpl-latest.debug.bin + (1.7): + + - compile vgabios rev 1.22 + +2003-01-15 18:49 cbothamy + + * vgabios.c (1.22): + + - fix bug found by ams : a 8bits index value was compared to + 0x100 in some cases in biosfn_set_all_dac_reg, + biosfn_read_all_dac_reg, biosfn_perform_gray_scale_summing + +2003-01-15 17:34 cbothamy + + * Makefile (1.8): + + - fix symbol table file names, discovered by ams + +2003-01-04 21:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.6), VGABIOS-lgpl-latest.debug.bin + (1.6), vgabios.c (1.21): + + - biosfn_set_video_mode(): reset attribute controller flip-flop + before setting up the controller's registers (bug found with + amidiag) + +2003-01-04 09:50 vruppert + + * vbe.c (1.23): + + - VBE function 0x00 returns VBE 1.x compatible information if no + VBE signature is present + +2003-01-01 12:44 vruppert + + * VGABIOS-lgpl-latest.bin (1.5), VGABIOS-lgpl-latest.debug.bin + (1.5): + + - SVGA mode 0x6A (800x600x4) added to the list of graphics modes + +2002-12-31 18:07 vruppert + + * vgatables.h (1.2): + + - SVGA mode 0x6A (800x600x4) added to the list of graphics modes + +2002-11-23 10:38 cbothamy + + * ChangeLog (1.17, v0_3b): + + - fix changelog for 0.3b release + +2002-10-20 17:12 vruppert + + * VGABIOS-lgpl-latest.bin (1.4), VGABIOS-lgpl-latest.debug.bin + (1.4), vgabios.c (1.20) (utags: v0_3b): + + - new function set_scan_lines() for the font size change (patch + from Hartmut Birr) - cursor shape start and end must be updated + in set_scan_lines() - set_scan_lines() is called by the functions + 0x1110, 0x1111, 0x1112 and 0x1114 after copying the font data + +2002-10-04 08:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.3), VGABIOS-lgpl-latest.debug.bin + (1.3), vgabios.c (1.19): + + - biosfn_set_single_dac_reg(): the red value is stored in DH + +2002-09-19 19:05 cbothamy + + * VGABIOS-lgpl-latest.bin (1.2), VGABIOS-lgpl-latest.debug.bin + (1.2): + + - updated with latest changes + +2002-09-19 19:03 cbothamy + + * ChangeLog (1.16), Makefile (1.7, v0_3b), vbe.c (1.22, v0_3b), + vgabios.c (1.18), vgabios.h (1.3, v0_4b, v0_4a, v0_3b): + + - updated the Makefile - removed display of copyrights. - + changed the Copyright string to "LGPL VGABios developers" + +2002-09-08 21:14 vruppert + + * vgabios.c (1.17): + + - set the cursor shape depending on the current font height - + clear BL before calling int 0x10 function 0x1103 in + vgabios_init_func + +2002-08-23 22:58 cbothamy + + * vbe.c (1.21), vbetables.h (1.12, v0_3b): + + - added lfb-mode numbers (patch from mathis) + +2002-07-21 21:57 japj + + * vbe.c (1.20), vgabios.c (1.16): + + gcc2/3 preprocessing fix + +2002-05-18 16:55 cbothamy + + * vgabios.c (1.15): + + - include patch from Volker that adds some text font functions + +2002-05-01 23:13 japj + + * VGABIOS-lgpl-latest.bin (1.1), VGABIOS-lgpl-latest.debug.bin + (1.1): + + adding latest bin & debug bin of the vgabios + +2002-04-29 14:50 japj + + * ChangeLog (1.15), vbe.c (1.19), vbe.h (1.12, v0_3b), vbetables.h + (1.11), vgabios.c (1.14): + + - applying hw scrolling/multibuffering patch + +2002-04-25 21:59 japj + + * Makefile (1.6), vbe.c (1.18), vgabios.c (1.13): + + - reverting #asm/##asm & endasm patch (does not work with with + cygwin) + +2002-04-19 19:38 japj + + * Makefile (1.5), vbe.c (1.17), vgabios.c (1.12): + + - fixing preprocessing of vgabios with latest gcc (from Mandrake + 8.2) + +2002-04-08 23:44 japj + + * ChangeLog (1.14), vbe_display_api.txt (1.5, v0_3b): + + - preparing docs for new DISPI interface (for hardware scrolling) + +2002-04-03 19:06 japj + + * ChangeLog (1.13), TODO (1.9, v0_4b, v0_4a, v0_3b), vbe.c (1.16): + + - defaulting LFB on + updated changelog & todo + +2002-04-03 00:38 cbothamy + + * vbe.c (1.15), vgabios.c (1.11): + + - changed the logging ports to 0x500 -> 0x502 + +2002-03-14 17:54 japj + + * vbe.c (1.14): + + - vbetables.h is dependant upon some defines (VBE_HAVE_LFB), so + put the include *after* the define + +2002-03-13 21:47 japj + + * ChangeLog (1.12), TODO (1.8), vbe.c (1.13), vbetables.h (1.10), + vgabios.c (1.10): + + - made LFB dependant upon define - not implement vbe functions + return failure - updated todo & docs for things after bochs 1.4 + +2002-03-13 19:46 japj + + * vbe.h (1.11), vbe_display_api.txt (1.4): + + - added max video memory + documented what is in the 0xb0c0 + interface + +2002-03-12 02:33 cbothamy + + * ChangeLog (1.11), Makefile (1.4): + + - updated for 0.3a. Merged vgabios.bin and vbebios.bin + +2002-03-10 21:36 japj + + * ChangeLog (1.10), vbetables.h (1.9): + + - added LFB modes for testing with vbe-lfb patch in Bochs + +2002-03-10 17:42 japj + + * vbe.c (1.12, v0_3a): + + - show people when they do NOT have VBE support available + +2002-03-10 17:36 japj + + * TODO (1.7, v0_3a), vbe.c (1.11), vbe.h (1.10, v0_3a), vgabios.c + (1.9, v0_3a): + + - cleanup of vbe internal functions (set 8bpp mode is now + dependant on ModeInfo content instead of hardcoded functions) + +2002-03-10 17:20 cbothamy + + * ChangeLog (1.9, v0_3a), TODO (1.6): + + - updated for 0.3a + +2002-03-10 17:19 cbothamy + + * vbe.c (1.10), vbe.h (1.9): + + - added vbe_has_vbe_display function that detects an attached vbe + display + +2002-03-10 17:12 cbothamy + + * vgabios.c (1.8): + + - vbe calls are done only if a vbe display is detected + +2002-03-10 11:25 japj + + * vbe.h (1.8), vbe_display_api.txt (1.3, v0_3a): + + - preparing for LFB support + +2002-03-09 14:25 japj + + * vgabios.c (1.7): + + - fixing initial cursor shape to _ instead of - + +2002-03-08 23:08 japj + + * ChangeLog (1.8), TODO (1.5), vbe.c (1.9), vbe.h (1.7), vgabios.c + (1.6): + + - updating vbe code to new API + +2002-03-08 21:48 japj + + * vbe.c (1.8), vbe.h (1.6), vbetables.h (1.8, v0_3a): + + - updating vbe code with #defines from API + +2002-03-08 21:31 japj + + * vbe_display_api.txt (1.2): + + - adding some text about how banks work + +2002-03-08 21:09 japj + + * ChangeLog (1.7), vbe_display_api.txt (1.1): + + - adding vbe_display_api documentation + +2002-03-07 21:36 japj + + * ChangeLog (1.6), vbe.c (1.7), vbetables.h (1.7): + + - added 1024x768xbpp support - some more cleanups/comments + +2002-03-06 21:55 japj + + * ChangeLog (1.5), TODO (1.4), vbe.c (1.6), vbetables.h (1.6), + vgabios.c (1.5): + + - updated changelog with new modi - added 640x480x8 (Mandrake + Installer can use this!) - added pre VBE2 compatible 'detection' + - fixed problem when normal vga set mode wouldn't disable vbe + mode + +2002-03-06 20:59 japj + + * TODO (1.3), vbe.c (1.5), vbe.h (1.5), vbetables.h (1.5), + vgabios.c (1.4): + + - adding 640x400x8 and 800x600x8 vbe support (this depends + HEAVILY on my bochs vga code patch - japj) + +2002-03-06 18:00 japj + + * vbe.c (1.4), vbe.h (1.4), vbetables.h (1.4): + + - implemented banked & lfb support for 320x200x8bpp (some fixes + for vbetest program not displaying anything) + +2002-03-05 20:25 japj + + * Makefile (1.3, v0_3a): + + for vbe debug bios: - print debugging information in assembly + output - print source code in assembly output + +2002-03-01 19:39 japj + + * ChangeLog (1.4), TODO (1.2), vbe.c (1.3), vbe.h (1.3), + vbetables.h (1.3): + + - added vbe support for 320x200x8 using the standard vgamode + (0x13) + +2002-02-19 00:29 japj + + * ChangeLog (1.3): + + - updating ChangeLog with lfbprof + +2002-02-18 23:26 japj + + * tests/lfbprof/: lfbprof.c (1.2), lfbprof.h (1.2) (utags: v0_3a, + v0_3b, v0_4a, v0_4b): + + - fixed unsigned short for mode list (-1 != 0xffff otherwise) - + fixed LfbMapRealPointer macro mask problem (some modes were + skipped) - added some extra 'debugging' printf's + +2002-02-18 23:07 japj + + * tests/lfbprof/: Makefile (1.1, v0_4b, v0_4a, v0_3b, v0_3a), + lfbprof.c (1.1), lfbprof.h (1.1): + + - Adding lfbprof testprogram (for vbe testing purposes) It + needs to be compiled with the Watcom C Compiler + +2002-02-18 18:48 japj + + * vbe.c (1.2), vbe.h (1.2): + + - cosmetic updates to vbe.c/h + added bunch of FIXMEs for work + that needs to be done + +2002-02-18 18:34 japj + + * vbetables.h (1.2): + + - cosmetic updates in vbetables.h + +2002-02-18 18:32 japj + + * ChangeLog (1.2): + + updated changelog with merge of vbebios 0.2 + +2002-02-18 18:07 japj + + * vgabios.c (1.3): + + - small cosmetic cleanup in vgabios vbe code + added FIXMEs + +2002-02-18 17:55 japj + + * Makefile (1.2), dataseghack (1.2, v0_4b, v0_4a, v0_3b, v0_3a), + vbe.c (1.1), vbe.h (1.1), vbetables.h (1.1), vgabios.c (1.2), + vgabios.h (1.2, v0_3a): + + - merging with vbebios 0.2 release + +2002-02-18 11:31 cbothamy + + * BUGS (1.1, v0_4b, v0_4a, v0_3b, v0_3a), COPYING (1.1, v0_4b, + v0_4a, v0_3b, v0_3a), ChangeLog (1.1), Makefile (1.1), Notes + (1.1, v0_4b, v0_4a, v0_3b, v0_3a), README (1.1, v0_3b, v0_3a), + TODO (1.1), dataseghack (1.1), vgabios.c (1.1), vgabios.h (1.1), + vgafonts.h (1.1, v0_4b, v0_4a, v0_3b, v0_3a), vgatables.h (1.1, + v0_3b, v0_3a), tests/testbios.c (1.1, v0_4b, v0_4a, v0_3b, + v0_3a): + + - initial import + diff -Nru vgabios-0.7a+cvs20180116/clext.c vgabios-0.7b+ds/clext.c --- vgabios-0.7a+cvs20180116/clext.c 2018-01-26 10:59:46.000000000 +0000 +++ vgabios-0.7b+ds/clext.c 2020-01-01 10:17:21.533361069 +0000 @@ -1,8 +1,11 @@ +/* + * $Id: clext.c 220 2020-01-01 10:17:21Z vruppert $ + */ // // QEMU Cirrus CLGD 54xx VGABIOS Extension. // // Copyright (c) 2004 Makoto Suzuki (suzu) -// Copyright (C) 2004-2018 Volker Ruppert +// Copyright (C) 2004-2020 Volker Ruppert // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,8 +19,7 @@ // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA //#define CIRRUS_VESA3_PMINFO #ifdef VBE @@ -405,6 +407,23 @@ out dx, ax mov ax, #0x0031 out dx, ax + mov dx, #0x3C4 + mov ax, #0x4a0b ; VCLK #0 setup + out dx, ax + mov ax, #0x2b1b + out dx, ax + mov ax, #0x5b0c ; VCLK #1 setup + out dx, ax + mov ax, #0x2f1c + out dx, ax + mov ax, #0x420d ; VCLK #2 setup + out dx, ax + mov ax, #0x1f1d + out dx, ax + mov ax, #0x7e0e ; VCLK #3 setup + out dx, ax + mov ax, #0x331e + out dx, ax no_cirrus: ret @@ -455,7 +474,7 @@ cirrus_return: #ifdef CIRRUS_DEBUG - call cirrus_debug_dump + call cirrus_ret_debug_dump #endif pop bp popf @@ -463,7 +482,7 @@ cirrus_set_video_mode: #ifdef CIRRUS_DEBUG - call cirrus_debug_dump + call cirrus_call_debug_dump #endif push si push ax @@ -490,13 +509,13 @@ jmp cirrus_unhandled cirrus_extbios: -#ifdef CIRRUS_DEBUG - call cirrus_debug_dump -#endif cmp bl, #0x80 jb cirrus_unhandled cmp bl, #0xAF ja cirrus_unhandled +#ifdef CIRRUS_DEBUG + call cirrus_call_debug_dump +#endif push bx and bx, #0x7F shl bx, 1 @@ -509,7 +528,7 @@ cirrus_vesa: #ifdef CIRRUS_DEBUG - call cirrus_debug_dump + call cirrus_call_debug_dump #endif cmp al, #0x15 ja cirrus_vesa_not_handled @@ -529,13 +548,24 @@ jmp cirrus_return #ifdef CIRRUS_DEBUG -cirrus_debug_dump: +cirrus_call_debug_dump: push es push ds pusha push cs pop ds - call _cirrus_debugmsg + call _cirrus_call_debugmsg + popa + pop ds + pop es + ret +cirrus_ret_debug_dump: + push es + push ds + pusha + push cs + pop ds + call _cirrus_ret_debugmsg popa pop ds pop es @@ -1417,7 +1447,7 @@ jnz cirrus_vesa_unimplemented push cx push di - mov cx, #0x100 + mov cx, #0x0080 cld cirrus_vesa_15h_01: call cirrus_ddc_read_byte @@ -1840,10 +1870,15 @@ #ifdef CIRRUS_DEBUG -static void cirrus_debugmsg(DI, SI, BP, SP, BX, DX, CX, AX, DS, ES, FLAGS) +static void cirrus_call_debugmsg(DI, SI, BP, SP, BX, DX, CX, AX, DS, ES, FLAGS) + Bit16u DI, SI, BP, SP, BX, DX, CX, AX, ES, DS, FLAGS; +{ + printf("vgabios cirrus call ah%02x al%02x bx%04x cx%04x dx%04x\n",GET_AH(),GET_AL(),BX,CX,DX); +} + +static void cirrus_ret_debugmsg(DI, SI, BP, SP, BX, DX, CX, AX, DS, ES, FLAGS) Bit16u DI, SI, BP, SP, BX, DX, CX, AX, ES, DS, FLAGS; { - if((GET_AH()!=0x0E)&&(GET_AH()!=0x02)&&(GET_AH()!=0x09)&&(AX!=0x4F05)) - printf("vgabios call ah%02x al%02x bx%04x cx%04x dx%04x\n",GET_AH(),GET_AL(),BX,CX,DX); + printf("vgabios cirrus ret ah%02x al%02x bx%04x cx%04x dx%04x\n",GET_AH(),GET_AL(),BX,CX,DX); } #endif diff -Nru vgabios-0.7a+cvs20180116/COPYING vgabios-0.7b+ds/COPYING --- vgabios-0.7a+cvs20180116/COPYING 2002-02-18 10:31:48.000000000 +0000 +++ vgabios-0.7b+ds/COPYING 2019-12-31 09:31:52.854981473 +0000 @@ -2,7 +2,7 @@ Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -485,7 +485,7 @@ You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. diff -Nru vgabios-0.7a+cvs20180116/dataseghack vgabios-0.7b+ds/dataseghack --- vgabios-0.7a+cvs20180116/dataseghack 1970-01-01 00:00:00.000000000 +0000 +++ vgabios-0.7b+ds/dataseghack 2002-02-18 16:55:49.000000000 +0000 @@ -0,0 +1,23 @@ +#!/bin/bash + +awk \ + 'BEGIN { }\ + /^\.text/,/DATA_SEG_DEFS_HERE/ { print }\ + END { }'\ + $1 > temp.awk.1 + +awk \ + 'BEGIN { i = 0; last = "hello" }\ + /BLOCK_STRINGS_BEGIN/,/^\.bss/ { if ( i > 1 ) { print last } last = $0; i = i + 1 }\ + END { }'\ + $1 > temp.awk.2 + +awk \ + 'BEGIN { }\ + /DATA_SEG_DEFS_HERE/,/BLOCK_STRINGS_BEGIN/ { print }\ + END { }'\ + $1 > temp.awk.3 + +cp $1 $1.orig +cat temp.awk.1 temp.awk.2 temp.awk.3 | sed -e 's/^\.data//' -e 's/^\.bss//' -e 's/^\.text//' > $1 +/bin/rm -f temp.awk.1 temp.awk.2 temp.awk.3 $1.orig diff -Nru vgabios-0.7a+cvs20180116/debian/changelog vgabios-0.7b+ds/debian/changelog --- vgabios-0.7a+cvs20180116/debian/changelog 2018-11-15 07:48:51.000000000 +0000 +++ vgabios-0.7b+ds/debian/changelog 2020-01-07 17:05:56.000000000 +0000 @@ -1,3 +1,13 @@ +vgabios (0.7b+ds-1) unstable; urgency=medium + + * New upstream release. + * Exclude binary tarballs and drop binaries and debug files from the + upstream tarball. + * Switch to debhelper compatibility level 12. + * Standards-Version 4.4.1, no change required. + + -- Stephen Kitt Tue, 07 Jan 2020 18:05:56 +0100 + vgabios (0.7a+cvs20180116-1) unstable; urgency=medium * New upstream CVS snapshot. diff -Nru vgabios-0.7a+cvs20180116/debian/compat vgabios-0.7b+ds/debian/compat --- vgabios-0.7a+cvs20180116/debian/compat 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/compat 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -9 diff -Nru vgabios-0.7a+cvs20180116/debian/control vgabios-0.7b+ds/debian/control --- vgabios-0.7a+cvs20180116/debian/control 2018-11-15 07:46:33.000000000 +0000 +++ vgabios-0.7b+ds/debian/control 2020-01-07 17:01:34.000000000 +0000 @@ -5,9 +5,9 @@ Homepage: https://savannah.nongnu.org/projects/vgabios/ Vcs-Browser: https://salsa.debian.org/debian/vgabios Vcs-Git: https://salsa.debian.org/debian/vgabios.git -Build-Depends: debhelper (>= 9) +Build-Depends: debhelper-compat (= 12) Build-Depends-Indep: bcc, bin86, gawk | awk -Standards-Version: 4.2.1 +Standards-Version: 4.4.1 Rules-Requires-Root: no Package: vgabios diff -Nru vgabios-0.7a+cvs20180116/debian/copyright vgabios-0.7b+ds/debian/copyright --- vgabios-0.7a+cvs20180116/debian/copyright 2018-10-19 11:04:46.000000000 +0000 +++ vgabios-0.7b+ds/debian/copyright 2020-01-07 17:00:00.000000000 +0000 @@ -1,19 +1,21 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: VGABios Source: https://download.savannah.gnu.org/releases/vgabios/ +Files-Excluded: biossums vbetables-gen *.bin vgabios*.txt Files: * Copyright: 2001-2003 Christophe Bothamy + 2001-2020 The LGPL VGABios developers Team 2002 Jeroen Janssen 2002 Kevin Lawton - 2002-2003, 2005-2006, 2008 Volker Ruppert + 2003-2020 Volker Ruppert License: LGPL-2.1 Files: debian/* Copyright: 2001-2004 Robert Millan 2004-2012 Guillem Jover 2012-2014 Michael Tokarev - 2018 Stephen Kitt + 2018, 2020 Stephen Kitt License: LGPL-2.1 License: LGPL-2.1 diff -Nru vgabios-0.7a+cvs20180116/debian/patches/05-Add-qemu-vmware-vga-pci-bios vgabios-0.7b+ds/debian/patches/05-Add-qemu-vmware-vga-pci-bios --- vgabios-0.7a+cvs20180116/debian/patches/05-Add-qemu-vmware-vga-pci-bios 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/patches/05-Add-qemu-vmware-vga-pci-bios 2020-01-07 16:53:50.000000000 +0000 @@ -12,9 +12,9 @@ --- a/Makefile +++ b/Makefile -@@ -14,12 +14,14 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/ - - VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" +@@ -20,12 +20,14 @@ + RELEASE_BIN_LIST=README VGABIOS-lgpl-latest.bin VGABIOS-lgpl-latest.debug.bin \ + VGABIOS-lgpl-latest.cirrus.bin VGABIOS-lgpl-latest.cirrus.debug.bin -all: bios cirrus-bios +all: bios cirrus-bios vmware-bios @@ -28,7 +28,7 @@ clean: /bin/rm -f biossums vbetables-gen vbetables.h *.o *.s *.ld86 \ temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak -@@ -35,18 +37,24 @@ vgabios.bin : VGAFLAGS := - +@@ -41,18 +43,24 @@ vgabios.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DDEBUG vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG diff -Nru vgabios-0.7a+cvs20180116/debian/patches/06-Add-qemu-qxl-vga-pci-bios vgabios-0.7b+ds/debian/patches/06-Add-qemu-qxl-vga-pci-bios --- vgabios-0.7a+cvs20180116/debian/patches/06-Add-qemu-qxl-vga-pci-bios 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/patches/06-Add-qemu-qxl-vga-pci-bios 2020-01-07 16:53:51.000000000 +0000 @@ -12,16 +12,16 @@ --- a/Makefile +++ b/Makefile -@@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/ - - VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" +@@ -20,7 +20,7 @@ + RELEASE_BIN_LIST=README VGABIOS-lgpl-latest.bin VGABIOS-lgpl-latest.debug.bin \ + VGABIOS-lgpl-latest.cirrus.bin VGABIOS-lgpl-latest.cirrus.debug.bin -all: bios cirrus-bios vmware-bios +all: bios cirrus-bios vmware-bios qxl-bios bios: vgabios.bin vgabios.debug.bin -@@ -22,6 +22,8 @@ cirrus-bios: vgabios-cirrus.bin vgabios- +@@ -28,6 +28,8 @@ vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin @@ -30,7 +30,7 @@ clean: /bin/rm -f biossums vbetables-gen vbetables.h *.o *.s *.ld86 \ temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak -@@ -39,6 +41,8 @@ vgabios-cirrus.bin : VGAFLAGS := - +@@ -45,6 +47,8 @@ vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG vgabios-vmware.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405 vgabios-vmware.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405 -DDEBUG @@ -39,7 +39,7 @@ # dist names vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin -@@ -47,6 +51,8 @@ vgabios-cirrus.bin : DISTNAME := V +@@ -53,6 +57,8 @@ vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin vgabios-vmware.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.bin vgabios-vmware.debug.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.debug.bin @@ -48,7 +48,7 @@ # dependencies vgabios.bin : $(VGA_FILES) $(VBE_FILES) biossums -@@ -55,6 +61,8 @@ vgabios-cirrus.bin : $(VGA_FILES) +@@ -61,6 +67,8 @@ vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums vgabios-vmware.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums diff -Nru vgabios-0.7a+cvs20180116/debian/patches/disable-1280x768-and-1280x720-modes.patch vgabios-0.7b+ds/debian/patches/disable-1280x768-and-1280x720-modes.patch --- vgabios-0.7a+cvs20180116/debian/patches/disable-1280x768-and-1280x720-modes.patch 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/patches/disable-1280x768-and-1280x720-modes.patch 2020-01-07 16:53:53.000000000 +0000 @@ -3,9 +3,11 @@ -- mjt@tls.msk.ru ---- a/vbetables-gen.c 2011-01-31 20:27:54.000000000 +0300 -+++ b/vbetables-gen.c 2012-03-05 00:38:01.667283519 +0400 -@@ -57,5 +57,5 @@ +--- a/vbetables-gen.c ++++ b/vbetables-gen.c +@@ -59,9 +59,9 @@ + { 1152, 864, 16 , 0x14a}, + { 1152, 864, 24 , 0x14b}, { 1152, 864, 32 , 0x14c}, -{ 1280, 768, 16 , 0x175}, -{ 1280, 768, 24 , 0x176}, @@ -14,7 +16,11 @@ +//{ 1280, 768, 24 , 0x176}, +//{ 1280, 768, 32 , 0x177}, { 1280, 800, 16 , 0x178}, -@@ -81,5 +81,5 @@ + { 1280, 800, 24 , 0x179}, + { 1280, 800, 32 , 0x17a}, +@@ -83,9 +83,9 @@ + { 2560, 1600, 16 , 0x18a}, + { 2560, 1600, 24 , 0x18b}, { 2560, 1600, 32 , 0x18c}, -{ 1280, 720, 16 , 0x18d}, -{ 1280, 720, 24 , 0x18e}, @@ -23,3 +29,5 @@ +//{ 1280, 720, 24 , 0x18e}, +//{ 1280, 720, 32 , 0x18f}, { 1920, 1080, 16 , 0x190}, + { 1920, 1080, 24 , 0x191}, + { 1920, 1080, 32 , 0x192}, diff -Nru vgabios-0.7a+cvs20180116/debian/patches/qxga_resolutions.patch vgabios-0.7b+ds/debian/patches/qxga_resolutions.patch --- vgabios-0.7a+cvs20180116/debian/patches/qxga_resolutions.patch 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/patches/qxga_resolutions.patch 2020-01-07 16:53:56.000000000 +0000 @@ -4,7 +4,7 @@ --- a/vbetables-gen.c +++ b/vbetables-gen.c -@@ -85,6 +85,9 @@ +@@ -89,6 +89,9 @@ { 1920, 1080, 16 , 0x190}, { 1920, 1080, 24 , 0x191}, { 1920, 1080, 32 , 0x192}, diff -Nru vgabios-0.7a+cvs20180116/debian/patches/reproducible_build.patch vgabios-0.7b+ds/debian/patches/reproducible_build.patch --- vgabios-0.7a+cvs20180116/debian/patches/reproducible_build.patch 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/patches/reproducible_build.patch 2020-01-07 16:53:54.000000000 +0000 @@ -3,7 +3,7 @@ --- a/Makefile +++ b/Makefile -@@ -9,7 +9,11 @@ +@@ -13,7 +13,11 @@ AS86 = as86 RELEASE = `pwd | sed "s-.*/--"` diff -Nru vgabios-0.7a+cvs20180116/debian/rules vgabios-0.7b+ds/debian/rules --- vgabios-0.7a+cvs20180116/debian/rules 2018-10-14 16:04:43.000000000 +0000 +++ vgabios-0.7b+ds/debian/rules 2020-01-07 16:57:51.000000000 +0000 @@ -4,7 +4,7 @@ debbiosdir := debian/vgabios$(biosdir) %: - +dh $@ --parallel + dh $@ override_dh_auto_install: set -e; \ diff -Nru vgabios-0.7a+cvs20180116/debian/watch vgabios-0.7b+ds/debian/watch --- vgabios-0.7a+cvs20180116/debian/watch 2018-10-19 11:04:56.000000000 +0000 +++ vgabios-0.7b+ds/debian/watch 2020-01-07 16:51:14.000000000 +0000 @@ -1,2 +1,3 @@ version=3 -https://download.sv.gnu.org/releases/vgabios/ vgabios-(.*)\.tgz debian uupdate +opts="repacksuffix=+ds, dversionmangle=s/\+ds//, uversionmangle=s/.bin/~bin/" \ + https://download.sv.gnu.org/releases/vgabios/ vgabios-(.*)\.tgz debian uupdate diff -Nru vgabios-0.7a+cvs20180116/Makefile vgabios-0.7b+ds/Makefile --- vgabios-0.7a+cvs20180116/Makefile 2011-07-19 17:00:37.000000000 +0000 +++ vgabios-0.7b+ds/Makefile 2020-01-01 16:42:58.950785164 +0000 @@ -1,3 +1,7 @@ +# +# Copyright (C) 2001-2020 The LGPL VGABios developers Team +# + SHELL = /bin/sh CC = gcc @@ -13,6 +17,8 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"` VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" +RELEASE_BIN_LIST=README VGABIOS-lgpl-latest.bin VGABIOS-lgpl-latest.debug.bin \ + VGABIOS-lgpl-latest.cirrus.bin VGABIOS-lgpl-latest.cirrus.debug.bin all: bios cirrus-bios @@ -63,11 +69,8 @@ VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios /bin/rm -f *.o *.s *.ld86 \ temp.awk.* vgabios.*.orig _vgabios_.*.c core *.bak .#* - cp VGABIOS-lgpl-latest.bin ../$(RELEASE).bin - cp VGABIOS-lgpl-latest.debug.bin ../$(RELEASE).debug.bin - cp VGABIOS-lgpl-latest.cirrus.bin ../$(RELEASE).cirrus.bin - cp VGABIOS-lgpl-latest.cirrus.debug.bin ../$(RELEASE).cirrus.debug.bin - tar czvf ../$(RELEASE).tgz --exclude CVS -C .. $(RELEASE)/ + tar czvf ../$(RELEASE)-bin.tgz $(RELEASE_BIN_LIST) + tar czvf ../$(RELEASE).tgz --exclude .svn -C .. $(RELEASE)/ biossums: biossums.c $(CC) -o biossums biossums.c diff -Nru vgabios-0.7a+cvs20180116/README vgabios-0.7b+ds/README --- vgabios-0.7a+cvs20180116/README 2018-01-26 13:10:40.000000000 +0000 +++ vgabios-0.7b+ds/README 2020-01-03 08:17:19.823967808 +0000 @@ -17,28 +17,30 @@ Install ------- -To compile the VGA Bios you will need : -- gcc -- bcc -- as86 -- ld86 - -Untar the archive, and type make. You should get a "VGABIOS-lgpl-latest.bin" -file. Alternatively, you can use the binary file "VGABIOS-lgpl-latest.bin", -i have compiled for you. +To compile the VGA Bios you will need the following packages: +- make +- gcc (for 'biossums', 'vbetables-gen' and VGABIOS preprocessing) +- dev86 (bcc, as86) + +Untar the archive, and type 'make'. You should get this set of binary files: +"VGABIOS-lgpl-latest.bin", "VGABIOS-lgpl-latest.debug.bin", +"VGABIOS-lgpl-latest.cirrus.bin" and "VGABIOS-lgpl-latest.cirrus.debug.bin". +Alternatively, you can use one of the precompiled binary files present in +the archive. -Edit your plex86/bochs conf file, and modify the load-rom command in the -VGA BIOS section, to point to the new vgabios image file. +Edit your bochs config file, and modify the 'vgaromimage' directive to point +it to the VGABIOS image you want to use. Debugging --------- -You can get a very basic debugging system: messages printed by the vgabios. -You have to register the "unmapped" device driver in plex86 or bochs, and make -sure it grabs port 0xfff0. +You can get a very basic debugging system: the VGABIOS sends messages to a +usually unused ISA i/o port. The emulator prints the received characters to +log file or console. In Bochs the "unmapped" device plugin must be loaded. +It registers the VGABIOS info port 0x500. -Comment the #undef DEBUG at the beginning of vgabios.c. -You can then use the "printf" function in the bios. +VGABIOS images compiled with the DEBUG symbol set, will use the "printf" +function to write the messages to the info port. Testing @@ -50,7 +52,7 @@ Copyright and License --------------------- -This program has been written by Christophe Bothamy +The original version of this program has been written by Christophe Bothamy. It is protected by the GNU Lesser Public License, which you should have received a copy of along with this package. @@ -91,13 +93,14 @@ History ------- -vgabios-CVS : Jan 26 2018 +vgabios-0.7b : Jan 03 2020 - Volker + - added VESA BIOS function 0x4f09 (set/get palette data) to the Bochs VBE + version - added VESA BIOS function 0x4f15 (get EDID) to both the Bochs VBE and - the Cirrus version. + the Cirrus version - fixed building VBE modes list (check maximum y resolution) - ensure PCIR is aligned to 4 bytes (patch by David Woodhouse) - - README: update feedback address and Qemu link vgabios-0.7a : Oct 30 2011 - Volker diff -Nru vgabios-0.7a+cvs20180116/vbe.c vgabios-0.7b+ds/vbe.c --- vgabios-0.7a+cvs20180116/vbe.c 2018-01-26 10:59:46.000000000 +0000 +++ vgabios-0.7b+ds/vbe.c 2020-01-02 23:09:02.505284496 +0000 @@ -1,7 +1,10 @@ +/* + * $Id: vbe.c 228 2020-01-02 23:09:02Z vruppert $ + */ // ============================================================================================ // // Copyright (C) 2002 Jeroen Janssen -// Copyright (C) 2003-2018 Volker Ruppert +// Copyright (C) 2003-2020 Volker Ruppert // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -15,15 +18,15 @@ // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +// // ============================================================================================ -// +// // This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. // You can NOT drive any physical vga card with it. // // ============================================================================================ -// +// // This VBE Bios is based on information taken from : // - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org // @@ -50,19 +53,19 @@ ASM_START // FIXME: 'merge' these (c) etc strings with the vgabios.c strings? _vbebios_copyright: -.ascii "Bochs/Plex86 VBE(C) 2003 http://savannah.nongnu.org/projects/vgabios/" +.ascii "Bochs VBE (C) 2002-2020 http://savannah.nongnu.org/projects/vgabios/" .byte 0x00 _vbebios_vendor_name: -.ascii "Bochs/Plex86 Developers" +.ascii "LGPL VGABIOS Developers" .byte 0x00 _vbebios_product_name: -.ascii "Bochs/Plex86 VBE Adapter" +.ascii "Bochs VBE Adapter" .byte 0x00 _vbebios_product_revision: -.ascii "$Id: vbe.c,v 1.66 2018/01/26 10:59:46 vruppert Exp $" +.ascii "$Id: vbe.c 228 2020-01-02 23:09:02Z vruppert $" .byte 0x00 _vbebios_info_string: @@ -79,7 +82,7 @@ #if defined(USE_BX_INFO) || defined(DEBUG) msg_vbe_init: -.ascii "VBE Bios $Id: vbe.c,v 1.66 2018/01/26 10:59:46 vruppert Exp $" +.ascii "VBE Bios $Id: vbe.c 228 2020-01-02 23:09:02Z vruppert $" .byte 0x0a,0x0d, 0x00 #endif @@ -1443,28 +1446,80 @@ /** Function 09h - Set/Get Palette Data - * * Input: - * AX = 4F09h + * AX = 4F09h + * BL = 00h Set palette data + * BL = 01h Get palette data + * CX = Number of palette registers to read/write + * DX = First of palette registers to read/write + * ES:DI = Pointer to buffer with table of palette values + * * Output: * AX = VBE Return Status * - * FIXME: incomplete API description, Input & Output */ -void vbe_biosfn_set_get_palette_data(AX) -{ -} +ASM_START +vbe_biosfn_set_get_palette_data: + cmp bl,#0x01 + jb vbe_set_palette_data + je vbe_get_palette_data + mov ax, #0x024f ; unimplemented + ret +vbe_set_palette_data: + mov al, dl + mov dx, # VGAREG_DAC_WRITE_ADDRESS + out dx, al + push ds + push si + mov ax, es + mov ds, ax + mov si, di + mov dx, # VGAREG_DAC_DATA + cld +vbe_set_dac_loop: + lodsb + lodsb + out dx, al + lodsb + out dx, al + lodsb + out dx, al + loop vbe_set_dac_loop + pop si + pop ds + mov ax, #0x004f + ret +vbe_get_palette_data: + mov al, dl + mov dx, # VGAREG_DAC_READ_ADDRESS + out dx, al + mov dx, # VGAREG_DAC_DATA + push di + cld +vbe_get_dac_loop: + mov al, #0x00 + stosb + in al, dx + stosb + in al, dx + stosb + in al, dx + stosb + loop vbe_get_dac_loop + pop di + mov ax, #0x004f + ret +ASM_END /** Function 0Ah - Return VBE Protected Mode Interface - * Input: AX = 4F0Ah VBE 2.0 Protected Mode Interface - * BL = 00h Return protected mode table + * Input: AX = 4F0Ah VBE 2.0 Protected Mode Interface + * BL = 00h Return protected mode table * - * - * Output: AX = Status - * ES = Real Mode Segment of Table - * DI = Offset of Table - * CX = Length of Table including protected mode code - * (for copying purposes) + * Output: AX = Status + * ES = Real Mode Segment of Table + * DI = Offset of Table + * CX = Length of Table including protected mode code + * (for copying purposes) */ ASM_START vbe_biosfn_return_protected_mode_interface: @@ -1683,7 +1738,7 @@ jnz vbe_edid_unimplemented push cx push di - mov cx, #0x100 + mov cx, #0x0080 cld vbe_read_edid_loop: call vbe_ddc_read_byte diff -Nru vgabios-0.7a+cvs20180116/vbe_display_api.txt vgabios-0.7b+ds/vbe_display_api.txt --- vgabios-0.7a+cvs20180116/vbe_display_api.txt 2018-01-26 13:10:40.000000000 +0000 +++ vgabios-0.7b+ds/vbe_display_api.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,240 +0,0 @@ -VBE Display API -------------------------------------------------------------------------------------------------------------- - This document is part of the Bochs/VBEBios documentation, - it specifies the bochs host <-> vbebios client communication. - - That means, the display code implementation and the vbebios code depend - very heavily on each other. As such, this documents needs be synchronised - between bochs CVS and the vgabios CVS. - - This document does not describe how the VBEBios implements the VBE2/3 spec. - This document does not describe how the Bochs display code will display gfx based upon this spec. - - -API History ------------ -0xb0c0 supports the following VBE_DISPI_ interfaces (present in Bochs 1.4): - VBE_DISPI_INDEX_ID - VBE_DISPI_INDEX_XRES - VBE_DISPI_INDEX_YRES - VBE_DISPI_INDEX_BPP - VBE_DISPI_INDEX_ENABLE - VBE_DISPI_INDEX_BANK - - Bpp format supported is: - VBE_DISPI_BPP_8 - -0xb0c1 supports 0xb0c0 VBE_DISPI_ interfaces, additional interfaces (present in Bochs 2.0): - VBE_DISPI_INDEX_VIRT_WIDTH - VBE_DISPI_INDEX_VIRT_HEIGHT - VBE_DISPI_INDEX_X_OFFSET - VBE_DISPI_INDEX_Y_OFFSET - -0xb0c2 supports 0xb0c1 VBE_DISPI_ interfaces, interfaces updated for - additional features (present in Bochs 2.1): - VBE_DISPI_INDEX_BPP supports >8bpp color depth (value = bits) - VBE_DISPI_INDEX_ENABLE supports new flags VBE_DISPI_NOCLEARMEM and VBE_DISPI_LFB_ENABLED - VBE i/o registers changed from 0xFF80/81 to 0x01CE/CF - -0xb0c3 supports 0xb0c2 VBE_DISPI_ interfaces, interfaces updated for - additional features: - VBE_DISPI_INDEX_ENABLE supports new flags VBE_DISPI_GETCAPS and VBE_DISPI_8BIT_DAC - -0xb0c4 VBE video memory increased to 8 MB - -0xb0c5 VBE video memory increased to 16 MB. Video memory size stored - in new register VBE_DISPI_INDEX_VIDEO_MEMORY_64K. - - -History -------- - Version 0.6 2002 Nov 23 Jeroen Janssen - - Added LFB support - - Added Virt width, height and x,y offset - - Version 0.5 2002 March 08 Jeroen Janssen - - Added documentation about panic behaviour / current limits of the data values. - - Changed BPP API (in order to include future (A)RGB formats) - - Initial version (based upon extended display text of the vbe bochs display patch) - - -Todo ----- - Version 0.6+ [random order] - - Add lots of different (A)RGB formats - -References ----------- - [VBE3] VBE 3 Specification at - http://www.vesa.org/vbe3.pdf - - [BOCHS] Bochs Open Source IA-32 Emulator at - http://bochs.sourceforge.net - - [VBEBIOS] VBE Bios for Bochs at - http://savannah.gnu.org/projects/vgabios/ - - [Screenshots] Screenshots of programs using the VBE Bios at - http://japj.org/projects/bochs_plex86/screenshots.html - -Abbreviations -------------- - VBE Vesa Bios Extension - DISPI (Bochs) Display Interface - BPP Bits Per Pixel - LFB Linear Frame Buffer - - -#defines --------- -vbetables-gen.c - #define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 8 - -vbe.h - #define VBE_DISPI_BANK_ADDRESS 0xA0000 - #define VBE_DISPI_BANK_SIZE_KB 64 - - #define VBE_DISPI_MAX_XRES 1024 - #define VBE_DISPI_MAX_YRES 768 - - #define VBE_DISPI_IOPORT_INDEX 0x01CE - #define VBE_DISPI_IOPORT_DATA 0x01CF - - #define VBE_DISPI_INDEX_ID 0x0 - #define VBE_DISPI_INDEX_XRES 0x1 - #define VBE_DISPI_INDEX_YRES 0x2 - #define VBE_DISPI_INDEX_BPP 0x3 - #define VBE_DISPI_INDEX_ENABLE 0x4 - #define VBE_DISPI_INDEX_BANK 0x5 - #define VBE_DISPI_INDEX_VIRT_WIDTH 0x6 - #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x7 - #define VBE_DISPI_INDEX_X_OFFSET 0x8 - #define VBE_DISPI_INDEX_Y_OFFSET 0x9 - - #define VBE_DISPI_ID0 0xB0C0 - #define VBE_DISPI_ID1 0xB0C1 - #define VBE_DISPI_ID2 0xB0C2 - #define VBE_DISPI_ID3 0xB0C3 - #define VBE_DISPI_ID4 0xB0C4 - - #define VBE_DISPI_DISABLED 0x00 - #define VBE_DISPI_ENABLED 0x01 - #define VBE_DISPI_VBE_ENABLED 0x40 - #define VBE_DISPI_NOCLEARMEM 0x80 - - #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000 - -API ---- - The display api works by using a index (VBE_DISPI_IOPORT_INDEX) and - data (VBE_DISPI_IOPORT_DATA) ioport. One writes the index of the parameter to the index port. - Next, the parameter value can be read or written. - -[0xb0c0] - * VBE_DISPI_INDEX_ID : WORD {R,W} - This parameter can be used to detect the current display API (both bochs & vbebios). - The bios writes VBE_DISPI_ID0 to the dataport and reads it back again. - This way, the display code knows the vbebios 'ID' and the vbebios can check if the correct - display code is present. - As a result, a PANIC can be generated if an incompatible vbebios/display code combination is detected. - This panic can be generated from the bochs display code (NOT the bios, see Notes). - - Example values: VBE_DISPI_ID0 - - * VBE_DISPI_INDEX_XRES : WORD {R,W} - This parameter can be used to read/write the vbe display X resolution (in pixels). - It's illegal to set the XRES when the VBE is enabled (display code should generate PANIC). - - If the value written exceeds VBE_DISPI_MAX_XRES, the display code needs to generate a PANIC. - - Example values: 320,640,800,1024 - - * VBE_DISPI_INDEX_YRES : WORD {R,W} - This parameter can be used to read/write the vbe display Y resolution (in pixels). - It's illegal to set the YRES when the VBE is enabled (display code should generate PANIC). - - If the value written exceeds VBE_DISPI_MAX_YRES, the display code needs to generate a PANIC. - - Example values: 200,400,480,600,768 - - * VBE_DISPI_INDEX_BPP : WORD {R,W} - This parameter can be used to read/write the vbe display BPP. - It's illegal to set the BPP when the VBE is enabled (display code should generate PANIC). - - If the value written is an incompatible BPP, the display code needs to generate a PANIC. - - Example values: VBE_DISPI_BPP_8 - - * VBE_DISPI_INDEX_ENABLE : WORD {R,W} - This parameter can be used to read/write the vbe ENABLED state. - If the bios writes VBE_DISPI_ENABLED then the display code will setup a hostside display mode - with the current XRES, YRES and BPP settings. - If the bios write VBE_DISPI_DISABLED then the display code will switch back to normal vga mode behaviour. - - Example values: VBE_DISPI_ENABLED, VBE_DISPI_DISABLED - - * VBE_DISPI_INDEX_BANK : WORD {R,W} - This parameter can be used to read/write the current selected BANK (at 0xA0000). - This can be used for switching banks in banked mode. - -[0xb0c1] - * VBE_DISPI_INDEX_VIRT_WIDTH : WORD {R,W} - This parameter can be used to read/write the current virtual width. - Upon enabling a mode, this will be set to the current xres - Setting this field during enabled mode will result in the virtual width to be changed. - Value will be adjusted if current setting is not possible. - - * VBE_DISPI_INDEX_VIRT_HEIGHT : WORD {R} - This parameter can be read in order to obtain the current virtual height. - This setting will be adjusted after setting a virtual width in order to stay within limit of video memory. - - * VBE_DISPI_INDEX_X_OFFSET : WORD {R,W} - The current X offset (in pixels!) of the visible screen part. - Writing a new offset will also result in a complete screen refresh. - - * VBE_DISPI_INDEX_Y_OFFSET : WORD {R,W} - The current Y offset (in pixels!) of the visible screen part. - Writing a new offset will also result in a complete screen refresh. - - -[0xb0c2] - * VBE_DISPI_INDEX_BPP : WORD {R,W} - The value written is now the number of bits per pixel. A value of 0 is treated - the same as 8 for backward compatibilty. These values are supported: 8, 15, - 16, 24 and 32. The value of 4 is not yet handled in the VBE code. - * VBE_DISPI_INDEX_ENABLE : WORD {R,W} - The new flag VBE_DISPI_NOCLEARMEM allows to preserve the VBE video memory. - The new flag VBE_DISPI_LFB_ENABLED indicates the usage of the LFB. - -[0xb0c3] - * VBE_DISPI_INDEX_ENABLE : WORD {R,W} - If the new flag VBE_DISPI_GETCAPS is enabled, the xres, yres and bpp registers - return the gui capabilities. - The new flag VBE_DISPI_8BIT_DAC switches the DAC to 8 bit mode. - -[0xb0c4] - * VBE_DISPI_TOTAL_VIDEO_MEMORY_MB set to 8 (moved to auto-generated vbetables.h) - -Displaying GFX (banked mode) --------------- - What happens is that the total screen is devided in banks of 'VBE_DISPI_BANK_SIZE_KB' KiloByte in size. - If you want to set a pixel you can calculate its bank by doing: - - offset = pixel_x + pixel_y * resolution_x; - bank = offset / 64 Kb (rounded 1.9999 -> 1) - - bank_pixel_pos = offset - bank * 64Kb - - Now you can set the current bank and put the pixel at VBE_DISPI_BANK_ADDRESS + bank_pixel_pos - -Displaying GFX (linear frame buffer mode) --------------- - NOT WRITTEN YET - -Notes ------ - * Since the XRES/YRES/BPP may not be written when VBE is enabled, if you want to switch from one VBE mode - to another, you will need to disable VBE first. - - * Note when the bios doesn't find a valid DISPI_ID, it can disable the VBE functions. This allows people to - use the same bios for both vbe enabled and disabled bochs executables. diff -Nru vgabios-0.7a+cvs20180116/vbe.h vgabios-0.7b+ds/vbe.h --- vgabios-0.7a+cvs20180116/vbe.h 2018-01-26 10:59:46.000000000 +0000 +++ vgabios-0.7b+ds/vbe.h 2020-01-02 15:54:52.236430254 +0000 @@ -1,3 +1,7 @@ +/* + * $Id: vbe.h 223 2020-01-02 15:54:52Z vruppert $ + */ + #ifndef vbe_h_included #define vbe_h_included @@ -10,14 +14,10 @@ * * See the function descriptions in vbe.c for more information */ -Boolean vbe_has_vbe_display(); void vbe_biosfn_return_controller_information(AX, ES, DI); void vbe_biosfn_return_mode_information(AX, CX, ES, DI); void vbe_biosfn_set_mode(AX, BX, ES, DI); void vbe_biosfn_save_restore_state(AX, CX, DX, ES, BX); -void vbe_biosfn_set_get_palette_data(AX); -void vbe_biosfn_return_protected_mode_interface(AX); -void vbe_biosfn_display_identification_extensions(AX, BX, CX, DX, ES, DI); // The official VBE Information Block typedef struct VbeInfoBlock diff -Nru vgabios-0.7a+cvs20180116/vbetables-gen.c vgabios-0.7b+ds/vbetables-gen.c --- vgabios-0.7a+cvs20180116/vbetables-gen.c 2011-01-31 17:28:09.000000000 +0000 +++ vgabios-0.7b+ds/vbetables-gen.c 2019-12-30 23:40:08.415147129 +0000 @@ -1,3 +1,7 @@ +/* + * $Id: vbetables-gen.c 216 2019-12-30 23:40:08Z vruppert $ + */ + /* Generate the VGABIOS VBE Tables */ #include #include diff -Nru vgabios-0.7a+cvs20180116/vbetables.h vgabios-0.7b+ds/vbetables.h --- vgabios-0.7a+cvs20180116/vbetables.h 1970-01-01 00:00:00.000000000 +0000 +++ vgabios-0.7b+ds/vbetables.h 2020-01-03 08:19:19.678025539 +0000 @@ -0,0 +1,3230 @@ +/* THIS FILE IS AUTOMATICALLY GENERATED - DO NOT EDIT */ + +#define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 16 + +static ModeInfoListItem mode_info_list[]= +{ +{ 0x0100, /* 640x400x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 640, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 400, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 4, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 64, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*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, +} }, +{ 0x0101, /* 640x480x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 640, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 480, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 5, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 53, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*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, +} }, +{ 0x0102, /* 800x600x4 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 100, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 4, +/*Bit8u BitsPerPixel*/ 4, +/*Bit8u NumberOfBanks*/ 1, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 68, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ 0, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 100, +/*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, +} }, +{ 0x0103, /* 800x600x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 800, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 8, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 33, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 800, +/*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, +} }, +{ 0x0104, /* 1024x768x4 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 128, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 4, +/*Bit8u BitsPerPixel*/ 4, +/*Bit8u NumberOfBanks*/ 2, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 41, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ 0, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 128, +/*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, +} }, +{ 0x0105, /* 1024x768x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1024, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 12, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 20, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1024, +/*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, +} }, +{ 0x0106, /* 1280x1024x4 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 160, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 4, +/*Bit8u BitsPerPixel*/ 4, +/*Bit8u NumberOfBanks*/ 3, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PLANAR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 24, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ 0, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 160, +/*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, +} }, +{ 0x0107, /* 1280x1024x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1280, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 20, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 11, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1280, +/*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, +} }, +{ 0x010d, /* 320x200x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 640, +/*Bit16u XResolution*/ 320, +/*Bit16u YResolution*/ 200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 2, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 130, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 640, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x010e, /* 320x200x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 640, +/*Bit16u XResolution*/ 320, +/*Bit16u YResolution*/ 200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 2, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 130, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 640, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x010f, /* 320x200x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 960, +/*Bit16u XResolution*/ 320, +/*Bit16u YResolution*/ 200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 3, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 86, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 960, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0110, /* 640x480x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1280, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 480, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 10, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 26, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1280, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0111, /* 640x480x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1280, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 480, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 10, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 26, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1280, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0112, /* 640x480x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1920, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 480, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 15, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 17, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1920, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0113, /* 800x600x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1600, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 15, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 16, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1600, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0114, /* 800x600x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1600, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 15, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 16, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1600, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0115, /* 800x600x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2400, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 22, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 10, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2400, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0116, /* 1024x768x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2048, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 24, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 9, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2048, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0117, /* 1024x768x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2048, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 24, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 9, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2048, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0118, /* 1024x768x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3072, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 36, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 6, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3072, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0119, /* 1280x1024x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 40, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 5, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x011a, /* 1280x1024x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 40, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 5, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x011b, /* 1280x1024x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 60, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x011c, /* 1600x1200x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1600, +/*Bit16u XResolution*/ 1600, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 30, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1600, +/*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, +} }, +{ 0x011d, /* 1600x1200x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3200, +/*Bit16u XResolution*/ 1600, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 59, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3200, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x011e, /* 1600x1200x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3200, +/*Bit16u XResolution*/ 1600, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 59, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3200, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x011f, /* 1600x1200x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 4800, +/*Bit16u XResolution*/ 1600, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 88, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 4800, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0140, /* 320x200x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1280, +/*Bit16u XResolution*/ 320, +/*Bit16u YResolution*/ 200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 4, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 64, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1280, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0141, /* 640x400x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 400, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 16, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 15, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0142, /* 640x480x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 640, +/*Bit16u YResolution*/ 480, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 19, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 12, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0143, /* 800x600x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3200, +/*Bit16u XResolution*/ 800, +/*Bit16u YResolution*/ 600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 30, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3200, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0144, /* 1024x768x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 4096, +/*Bit16u XResolution*/ 1024, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 48, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 4, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 4096, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0145, /* 1280x1024x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 1024, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 80, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0146, /* 320x200x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 320, +/*Bit16u XResolution*/ 320, +/*Bit16u YResolution*/ 200, +/*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*/ 261, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 320, +/*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, +} }, +{ 0x0147, /* 1600x1200x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 6400, +/*Bit16u XResolution*/ 1600, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 118, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 6400, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0148, /* 1152x864x8 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 1152, +/*Bit16u XResolution*/ 1152, +/*Bit16u YResolution*/ 864, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 8, +/*Bit8u NumberOfBanks*/ 16, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_PACKED_PIXEL, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 15, +/*Bit8u Reserved_page*/ 0, +/*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, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 1152, +/*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, +} }, +{ 0x0149, /* 1152x864x15 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2304, +/*Bit16u XResolution*/ 1152, +/*Bit16u YResolution*/ 864, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 15, +/*Bit8u NumberOfBanks*/ 31, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 10, +/*Bit8u GreenMaskSize*/ 5, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 1, +/*Bit8u RsvdFieldPosition*/ 15, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2304, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 10, +/*Bit8u LinGreenMaskSize*/ 5, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 1, +/*Bit8u LinRsvdFieldPosition*/ 15, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x014a, /* 1152x864x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2304, +/*Bit16u XResolution*/ 1152, +/*Bit16u YResolution*/ 864, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 31, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2304, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x014b, /* 1152x864x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3456, +/*Bit16u XResolution*/ 1152, +/*Bit16u YResolution*/ 864, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 46, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 4, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3456, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x014c, /* 1152x864x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 4608, +/*Bit16u XResolution*/ 1152, +/*Bit16u YResolution*/ 864, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 61, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 4608, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0175, /* 1280x768x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 30, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0176, /* 1280x768x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 45, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 4, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0177, /* 1280x768x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 768, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 60, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0178, /* 1280x800x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 800, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 32, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 7, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0179, /* 1280x800x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 800, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 47, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 4, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017a, /* 1280x800x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 800, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 63, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017b, /* 1280x960x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 960, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 38, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 5, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017c, /* 1280x960x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 960, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 57, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017d, /* 1280x960x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 960, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 75, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017e, /* 1440x900x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2880, +/*Bit16u XResolution*/ 1440, +/*Bit16u YResolution*/ 900, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 40, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 5, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2880, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x017f, /* 1440x900x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 4320, +/*Bit16u XResolution*/ 1440, +/*Bit16u YResolution*/ 900, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 60, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 4320, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0180, /* 1440x900x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5760, +/*Bit16u XResolution*/ 1440, +/*Bit16u YResolution*/ 900, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 80, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5760, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0181, /* 1400x1050x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2800, +/*Bit16u XResolution*/ 1400, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 45, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 4, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2800, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0182, /* 1400x1050x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 4200, +/*Bit16u XResolution*/ 1400, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 68, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 4200, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0183, /* 1400x1050x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5600, +/*Bit16u XResolution*/ 1400, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 90, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5600, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0184, /* 1680x1050x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3360, +/*Bit16u XResolution*/ 1680, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 54, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3360, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0185, /* 1680x1050x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5040, +/*Bit16u XResolution*/ 1680, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 81, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5040, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0186, /* 1680x1050x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 6720, +/*Bit16u XResolution*/ 1680, +/*Bit16u YResolution*/ 1050, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 108, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 6720, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0187, /* 1920x1200x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 71, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 2, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0188, /* 1920x1200x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5760, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 106, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5760, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0189, /* 1920x1200x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 7680, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1200, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 141, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 0, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 7680, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018a, /* 2560x1600x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 2560, +/*Bit16u YResolution*/ 1600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 125, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018b, /* 2560x1600x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 7680, +/*Bit16u XResolution*/ 2560, +/*Bit16u YResolution*/ 1600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 188, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 0, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 7680, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018c, /* 2560x1600x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 10240, +/*Bit16u XResolution*/ 2560, +/*Bit16u YResolution*/ 1600, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 250, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 0, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 10240, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018d, /* 1280x720x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 2560, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 720, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 29, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 8, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 2560, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018e, /* 1280x720x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 720, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 43, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 5, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x018f, /* 1280x720x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5120, +/*Bit16u XResolution*/ 1280, +/*Bit16u YResolution*/ 720, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 57, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5120, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0190, /* 1920x1080x16 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 3840, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1080, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 16, +/*Bit8u NumberOfBanks*/ 64, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 3, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 5, +/*Bit8u RedFieldPosition*/ 11, +/*Bit8u GreenMaskSize*/ 6, +/*Bit8u GreenFieldPosition*/ 5, +/*Bit8u BlueMaskSize*/ 5, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 3840, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 5, +/*Bit8u LinRedFieldPosition*/ 11, +/*Bit8u LinGreenMaskSize*/ 6, +/*Bit8u LinGreenFieldPosition*/ 5, +/*Bit8u LinBlueMaskSize*/ 5, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0191, /* 1920x1080x24 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 5760, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1080, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 24, +/*Bit8u NumberOfBanks*/ 95, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 0, +/*Bit8u RsvdFieldPosition*/ 0, +/*Bit8u DirectColorModeInfo*/ 0, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 5760, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 0, +/*Bit8u LinRsvdFieldPosition*/ 0, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ 0x0192, /* 1920x1080x32 */ +{ /*Bit16u ModeAttributes*/ VBE_MODE_ATTRIBUTE_SUPPORTED | VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | VBE_MODE_ATTRIBUTE_COLOR_MODE | VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | VBE_MODE_ATTRIBUTE_GRAPHICS_MODE, +/*Bit8u WinAAttributes*/ VBE_WINDOW_ATTRIBUTE_RELOCATABLE | VBE_WINDOW_ATTRIBUTE_READABLE | VBE_WINDOW_ATTRIBUTE_WRITEABLE, +/*Bit8u WinBAttributes*/ 0, +/*Bit16u WinGranularity*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinSize*/ VBE_DISPI_BANK_SIZE_KB, +/*Bit16u WinASegment*/ VGAMEM_GRAPH, +/*Bit16u WinBSegment*/ 0x0000, +/*Bit32u WinFuncPtr*/ 0, +/*Bit16u BytesPerScanLine*/ 7680, +/*Bit16u XResolution*/ 1920, +/*Bit16u YResolution*/ 1080, +/*Bit8u XCharSize*/ 8, +/*Bit8u YCharSize*/ 16, +/*Bit8u NumberOfPlanes*/ 1, +/*Bit8u BitsPerPixel*/ 32, +/*Bit8u NumberOfBanks*/ 127, +/*Bit8u MemoryModel*/ VBE_MEMORYMODEL_DIRECT_COLOR, +/*Bit8u BankSize*/ 0, +/*Bit8u NumberOfImagePages*/ 1, +/*Bit8u Reserved_page*/ 0, +/*Bit8u RedMaskSize*/ 8, +/*Bit8u RedFieldPosition*/ 16, +/*Bit8u GreenMaskSize*/ 8, +/*Bit8u GreenFieldPosition*/ 8, +/*Bit8u BlueMaskSize*/ 8, +/*Bit8u BlueFieldPosition*/ 0, +/*Bit8u RsvdMaskSize*/ 8, +/*Bit8u RsvdFieldPosition*/ 24, +/*Bit8u DirectColorModeInfo*/ VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE, +/*Bit32u PhysBasePtr*/ VBE_DISPI_LFB_PHYSICAL_ADDRESS, +/*Bit32u OffScreenMemOffset*/ 0, +/*Bit16u OffScreenMemSize*/ 0, +/*Bit16u LinBytesPerScanLine*/ 7680, +/*Bit8u BnkNumberOfPages*/ 0, +/*Bit8u LinNumberOfPages*/ 0, +/*Bit8u LinRedMaskSize*/ 8, +/*Bit8u LinRedFieldPosition*/ 16, +/*Bit8u LinGreenMaskSize*/ 8, +/*Bit8u LinGreenFieldPosition*/ 8, +/*Bit8u LinBlueMaskSize*/ 8, +/*Bit8u LinBlueFieldPosition*/ 0, +/*Bit8u LinRsvdMaskSize*/ 8, +/*Bit8u LinRsvdFieldPosition*/ 24, +/*Bit32u MaxPixelClock*/ 0, +} }, +{ VBE_VESA_MODE_END_OF_LIST, +{ 0, +} }, +}; diff -Nru vgabios-0.7a+cvs20180116/vgabios.c vgabios-0.7b+ds/vgabios.c --- vgabios-0.7a+cvs20180116/vgabios.c 2018-01-26 10:59:46.000000000 +0000 +++ vgabios-0.7b+ds/vgabios.c 2020-01-02 21:36:23.963882071 +0000 @@ -1,10 +1,9 @@ -// ============================================================================================ /* - * vgabios.c + * $Id: vgabios.c 226 2020-01-02 21:36:23Z vruppert $ */ // ============================================================================================ // -// Copyright (C) 2001-2008 the LGPL VGABios developers Team +// Copyright (C) 2001-2020 The LGPL VGABios developers Team // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -18,7 +17,7 @@ // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // // ============================================================================================ // @@ -170,7 +169,7 @@ vgabios_version: #ifndef VGABIOS_VERS -.ascii "current-cvs" +.ascii "current-svn" #else .ascii VGABIOS_VERS #endif @@ -182,7 +181,7 @@ .byte 0x00 vgabios_copyright: -.ascii "(C) 2008 the LGPL VGABios developers Team" +.ascii "(C) 2002-2020 the LGPL VGABios developers Team" .byte 0x0a,0x0d .byte 0x00 @@ -385,9 +384,14 @@ jmp int10_end int10_test_vbe_08: cmp al, #0x08 - jne int10_test_vbe_0A + jne int10_test_vbe_09 call vbe_biosfn_set_get_dac_palette_format jmp int10_end +int10_test_vbe_09: + cmp al, #0x09 + jne int10_test_vbe_0A + call vbe_biosfn_set_get_palette_data + jmp int10_end int10_test_vbe_0A: cmp al, #0x0A jne int10_test_vbe_15 @@ -450,7 +454,7 @@ #if defined(USE_BX_INFO) || defined(DEBUG) msg_vga_init: -.ascii "VGABios $Id: vgabios.c,v 1.77 2018/01/26 10:59:46 vruppert Exp $" +.ascii "VGABios $Id: vgabios.c 226 2020-01-02 21:36:23Z vruppert $" .byte 0x0d,0x0a,0x00 #endif ASM_END @@ -2357,12 +2361,11 @@ biosfn_set_single_dac_reg: push ax push dx + mov ah, dh mov dx, # VGAREG_DAC_WRITE_ADDRESS mov al, bl out dx, al mov dx, # VGAREG_DAC_DATA - pop ax - push ax mov al, ah out dx, al mov al, ch @@ -2378,34 +2381,30 @@ ASM_START biosfn_set_all_dac_reg: push ax - push bx push cx push dx + push si + push ds + mov si, dx + mov ax, es + mov ds, ax mov dx, # VGAREG_DAC_WRITE_ADDRESS mov al, bl out dx, al - pop dx - push dx - mov bx, dx mov dx, # VGAREG_DAC_DATA + cld set_dac_loop: - seg es - mov al, [bx] + lodsb out dx, al - inc bx - seg es - mov al, [bx] + lodsb out dx, al - inc bx - seg es - mov al, [bx] + lodsb out dx, al - inc bx - dec cx - jnz set_dac_loop + loop set_dac_loop + pop ds + pop si pop dx pop cx - pop bx pop ax ret ASM_END @@ -2463,17 +2462,15 @@ mov dx, # VGAREG_DAC_READ_ADDRESS mov al, bl out dx, al - pop ax - mov ah, al mov dx, # VGAREG_DAC_DATA in al, dx - xchg al, ah - push ax + mov ah, al in al, dx mov ch, al in al, dx mov cl, al pop dx + mov dh, ah pop ax ret ASM_END @@ -2482,34 +2479,26 @@ ASM_START biosfn_read_all_dac_reg: push ax - push bx push cx push dx + push di + mov di, dx mov dx, # VGAREG_DAC_READ_ADDRESS mov al, bl out dx, al - pop dx - push dx - mov bx, dx mov dx, # VGAREG_DAC_DATA + cld read_dac_loop: in al, dx - seg es - mov [bx], al - inc bx + stosb in al, dx - seg es - mov [bx], al - inc bx + stosb in al, dx - seg es - mov [bx], al - inc bx - dec cx - jnz read_dac_loop + stosb + loop read_dac_loop + pop di pop dx pop cx - pop bx pop ax ret ASM_END diff -Nru vgabios-0.7a+cvs20180116/vgabios.h vgabios-0.7b+ds/vgabios.h --- vgabios-0.7a+cvs20180116/vgabios.h 2002-09-19 17:03:21.000000000 +0000 +++ vgabios-0.7b+ds/vgabios.h 2019-12-30 23:40:08.415147129 +0000 @@ -1,3 +1,7 @@ +/* + * $Id: vgabios.h 216 2019-12-30 23:40:08Z vruppert $ + */ + #ifndef vgabios_h_included #define vgabios_h_included diff -Nru vgabios-0.7a+cvs20180116/vgafonts.h vgabios-0.7b+ds/vgafonts.h --- vgabios-0.7a+cvs20180116/vgafonts.h 2002-02-18 10:31:48.000000000 +0000 +++ vgabios-0.7b+ds/vgafonts.h 2019-12-30 23:40:08.419147204 +0000 @@ -1,8 +1,11 @@ /* + * $Id: vgafonts.h 216 2019-12-30 23:40:08Z vruppert $ + * * These fonts come from ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip * The package is (c) by Joseph Gil * The individual fonts are public domain - */ + */ + static Bit8u vgafont8[256*8]= { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, diff -Nru vgabios-0.7a+cvs20180116/vgatables.h vgabios-0.7b+ds/vgatables.h --- vgabios-0.7a+cvs20180116/vgatables.h 2006-03-25 10:19:16.000000000 +0000 +++ vgabios-0.7b+ds/vgatables.h 2019-12-30 23:40:08.419147204 +0000 @@ -1,4 +1,5 @@ /* + * $Id: vgatables.h 216 2019-12-30 23:40:08Z vruppert $ * * BIOS Memory *