debian/0000775000000000000000000000000012026345353007173 5ustar debian/clean0000664000000000000000000000011511766310574010204 0ustar VGABIOS-*.bin # map files vgabios[-.]*txt vbetables.h vbetables-gen biossums debian/docs0000664000000000000000000000002111713760476010050 0ustar BUGS README TODO debian/compat0000664000000000000000000000000211713760476010402 0ustar 7 debian/watch0000664000000000000000000000031611713760476010235 0ustar # You can run the "uscan" command to check for upstream updates and more. # Site Directory Pattern Version Script version=3 http://download.sv.gnu.org/releases/vgabios/ vgabios-(.*)\.tgz debian uupdate debian/rules0000775000000000000000000000064311766310574010265 0ustar #!/usr/bin/make -f biosdir := /usr/share/vgabios %: +dh $@ override_dh_auto_configure override_dh_auto_test: # nothing to do override_dh_auto_install: set -e; \ for v in "" .cirrus .qxl .vmware; do \ install -m 0644 VGABIOS-lgpl-latest$$v.bin \ debian/vgabios/$(biosdir)/vgabios$$v.bin ; \ install -m 0644 VGABIOS-lgpl-latest$$v.debug.bin \ debian/vgabios/$(biosdir)/vgabios$$v.debug.bin ; \ done debian/control0000664000000000000000000000167612016715446010613 0ustar Source: vgabios Section: misc Priority: extra Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Debian QEMU Team Uploaders: Michael Tokarev Homepage: http://savannah.nongnu.org/projects/vgabios/ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-qemu/vgabios.git Vcs-Git: git://git.debian.org/git/pkg-qemu/vgabios.git Build-Depends: debhelper (>= 7) Build-Depends-Indep: bcc, bin86, gawk | awk Standards-Version: 3.9.2 Package: vgabios Architecture: all Depends: ${misc:Depends} Conflicts: bochs (<< 2.1.1+20040903-1) Description: VGA BIOS software for the Bochs and Qemu emulated VGA card The goal of this project is to provide a Video BIOS for Bochs and Qemu. This VGA BIOS is very specific to the bochs/qemu emulated VGA card. . WARNING: It is NOT meant to drive a physical vga card. You will probably fry it if you try. You have been warned. debian/source/0000775000000000000000000000000011713760476010504 5ustar debian/source/format0000664000000000000000000000001411713760476011712 0ustar 3.0 (quilt) debian/changelog0000664000000000000000000002610712026345206011050 0ustar vgabios (0.7a-3ubuntu2) quantal; urgency=low [ Hiroshi Miura ] * use updated patch to fix 1920x1080 support (LP: #1022222) -- Serge Hallyn Wed, 19 Sep 2012 08:35:58 -0500 vgabios (0.7a-3ubuntu1) quantal; urgency=low * Add vgabios-edid.patch by Hiroshi Miura to support higher resolution guests with -vga std in qemu-kvm. (LP: #1022222) -- Serge Hallyn Mon, 27 Aug 2012 10:40:39 -0500 vgabios (0.7a-3) unstable; urgency=low * Adopt the package under qemu-pkg umbrella (Closes: #658776) Thank you Guillem for maintaining it so far * Move package git repository to git.debian.org * Update VCS links accordingly * Convert debian/rules to debhelper, remove more generated files in clean * Added debian/patches/disable-1280x768-and-1280x120-modes.patch to work around the problem described in #654823. The patch does not fix the bug, it just disables two useful video modes which are causing issues. (Closes: #654823) -- Michael Tokarev Mon, 06 Feb 2012 14:50:58 +0400 vgabios (0.7a-2) unstable; urgency=low * Orphan package, set maintainer to Debian QA Group. -- Guillem Jover Mon, 06 Feb 2012 00:19:33 +0100 vgabios (0.7a-1) unstable; urgency=low * New upstream release. - debian/patches/01-Makefile-cleanup: Remove, merged upstream. - debian/patches/02-Add-defines-for-PCI-IDs: Likewise. - debian/patches/03-Add-qemu-stdvga-pci-bios: Likewise. - debian/patches/04-update-pci_get_lfb_addr-for-vmware-vga: Likewise. - debian/patches/05-Add-qemu-vmware-vga-pci-bios: Refreshed. - debian/patches/06-Add-qemu-qxl-vga-pci-bios: Likewise. * Add compatibility symlinks from stdvga vgabios to the default vgabios ROM, as the latter is now exactly the same as the former. * Now using Standards-Version 3.9.2 (no changes needed). -- Guillem Jover Tue, 01 Nov 2011 00:57:42 +0100 vgabios (0.6c-3) unstable; urgency=low [ Guillem Jover ] * Now using Standards-Version 3.9.1 (no changes needed). * Add missing ${misc:Depends} to vgabios Depends field. [ Jonathan Nieder ] * Add support for additional PCI BIOS, by using proper PCI IDs. Patches taken from the QEMU tree by Gerd Hoffman: (Closes: #614200) - Makefile: factor out a single rule to build BIOS binaries, using variables to account for their differences. + debian/patches/01-Makefile-cleanup: New file. - Allow PCI vendor and device IDs to be set for each BIOS binary. + debian/patches/02-Add-defines-for-PCI-IDs: New file. - Introduce vgabios-stdvga.bin, for QEMU's standard VGA card (1234:1111). + debian/patches/03-Add-qemu-stdvga-bios: New file. - Make pci_get_lfb_addr check PCI region 1 in addition to region zero, so it can be used for the VmWare SVGA-II compatible adapter. + debian/patches/04-update-pci_get_lfb_addr-for...: New file. - Introduce vgabios-vmware.bin, for the VmWare SVGA-II card (15ad:0405). + debian/patches/05-Add-qemu-vmware-vga-pci-bios: New file. - Introduce vgabios-qxl.bin, for QEMU's QXL paravirtual graphics card (1b36:0100). + debian/patches/06-Add-qemu-qxl-vga-pci-bios: New file. * Install the new binaries in debian/rules. -- Guillem Jover Sun, 27 Feb 2011 03:44:20 +0100 vgabios (0.6c-2) unstable; urgency=low * Switch to source format “3.0 (quilt)”: - Remove quilt from Build-Depends. - Remove quilt.make include from debian/rules. - Remove patch and unpatch targets from debian/rules. - Remove now unneeded debian/README.source. * Use UTF-8 copyright symbol in debian/rules. * Now using Standards-Version 3.8.3 (no changes needed). -- Guillem Jover Wed, 02 Dec 2009 22:31:26 +0100 vgabios (0.6c-1) unstable; urgency=low * New upstream release. (Closes: #523303) - debian/patches/widescreen_modes_stolen_from_kvm.patch: Remove, fixed upstream. * Refer to LGPL-2.1 from common-licenses instead of just LGPL. * Switch to debhelper compatibility level 7. * Use dh_prep instead of “dh_clean -k”. * Now using Standards-Version 3.8.1 (no changes needed). -- Guillem Jover Thu, 09 Apr 2009 16:24:25 +0200 vgabios (0.6b-1) unstable; urgency=low * New upstream release. - debian/patches/01_pci_rom_header.patch: Remove, fixed upstream. - debian/patches/02_biossums_warning.patch: Likewise. - debian/patches/03_no_linemarkers.patch: Likewise. * The offending patches using the quilt series -p0 specific feature are no longer in the package. (Closes: #485361) * Update debian/watch file to new savannah url. * Improve debian/copyright: - Remove empty Copyright section. - Rename Acknowledgements to Copyright Holders. - List all copyright holders, with copyright sign and years. - Add more upstream authors. - Update upstream download url. * Add a README.source. * Add a Homepage field. * Update packaging VCS fields to the new url. * Now using Standards-Version 3.8.0. * Add support for widescreen modes, stolen from KVM. (Closes: #458477) - debian/patches/widescreen_modes_stolen_from_kvm.patch: New file. -- Guillem Jover Sun, 15 Jun 2008 07:56:46 +0300 vgabios (0.6a-3) unstable; urgency=low * Do not add linemarkers from gcc preprocessed output. (Closes: #441491) - debian/patches/03_no_linemarkers.patch: New file. * Add Vcs-Brwoser and Vcs-Git fields. -- Guillem Jover Tue, 11 Sep 2007 05:28:35 +0300 vgabios (0.6a-2) unstable; urgency=low * Add quilt support for patch management: - Add 'quilt (>= 0.40) to Build-Depends. - Include quilt.make from debian/rules. - Add a debian/patches/series file. * Add a PCI rom header. (Closes: #432766) - debian/patches/01_pci_rom_header.patch: New file. Thanks to Stefan Reinauer . * Fix warning in biossums.c by including . - debian/patches/02_biossums_warning.patch: New file. * Add build-indep and build-arch targets. * Create the binary package on binary-indep instead of binary-arch. -- Guillem Jover Tue, 17 Jul 2007 06:11:15 +0300 vgabios (0.6a-1) unstable; urgency=low * New upstream release. * Now using Standards-Version 3.7.2 (no changes needed). * Move debhelper from Build-Depends-Indep to Build-Depends as it's being used on clean. -- Guillem Jover Wed, 23 Aug 2006 03:22:04 +0300 vgabios (0.5d-1) unstable; urgency=low * New upstream release. * Updated FSF's address. * Upgraded to debhelper compat level 5. * Remove commented stuff on debian/rules. -- Guillem Jover Mon, 2 Jan 2006 00:26:09 +0200 vgabios (0.5c-1) unstable; urgency=low * New upstream release. -- Guillem Jover Mon, 11 Jul 2005 11:39:45 +0300 vgabios (0.5b-1) unstable; urgency=low * New upstream release. * Update watch file URL and increase version number to 3. * Now using Standards-Version 3.6.2 (no changes needed). -- Guillem Jover Tue, 5 Jul 2005 01:21:45 +0300 vgabios (0.5a-1) unstable; urgency=low * New upstream release. * Do not use a build-stamp file. -- Guillem Jover Mon, 4 Apr 2005 01:35:02 +0300 vgabios (0.4c+20041014-1) unstable; urgency=low * New Maintainer. (Closes: #276391) * New upstream snapshot. - Remove CVS dirs. - Not tar in tar anymore. * Clean debian/copyright. * Reworded package long description. * Removed emacs cruft from changelog. * Do not create the lintian overrides dir. * Remove the binary rom files on clean. * Switch back to plain debhelper. * Now using Standards-Version 3.6.1. -- Guillem Jover Thu, 14 Oct 2004 23:11:19 +0200 vgabios (0.4c+20040829-3) unstable; urgency=low * Orphaned. - control.in (Maintainer): Set to Debian QA group. -- Robert Millan Wed, 13 Oct 2004 20:55:58 +0200 vgabios (0.4c+20040829-2) unstable; urgency=low * control (Conflicts): Add bochs (<< 2.1.1+20040903-1). -- Robert Millan Fri, 3 Sep 2004 11:31:06 +0200 vgabios (0.4c+20040829-1) experimental; urgency=low * New upstream snapshot. - Adds totaly undocumented "-DCIRRUS" build. Whatever it is, it must be cool so we install it in debian/rules. - Uploading to experimental. This version of vgabios works for Qemu but breaks with Bochs. * control (Description): Nuke references to Plex86, and add some to Qemu. * rules: Nuke "_CPU = i386" check (this should now build on all cpus). - README.Debian: Kill. - rules: Stop installing lintian override file. - overrides: Nuke. -- Robert Millan Mon, 30 Aug 2004 19:09:41 +0200 vgabios (0.4b-1) unstable; urgency=low * New upstream release. * Switch to CDBS. - control: Add cdbs, set debhelper to (>= 4.1.0). - rules: Rewrite. -- Robert Millan Wed, 5 Nov 2003 12:39:36 +0100 vgabios (0.4a-1) unstable; urgency=low * New upstream release. -- Robert Millan Thu, 21 Aug 2003 02:54:43 +0000 vgabios (0.3a+20030324-1) unstable; urgency=low * First upload as a developer. * New upstream snapshot. * Removed tools86.c, which is not needed anymore. * Updated upstream URL in debian/copyright. -- Robert Millan Mon, 24 Mar 2003 18:17:45 +0000 vgabios (0.3a-2) unstable; urgency=low * Reworked i386 check to be kernel-independant. * Ported tools86.c to the Hurd, forwarding patch to dosemu. * Fixed the #asm / #endasm problem as explained in the mailing list. -- Robert Millan Tue, 16 Apr 2002 17:29:50 +0200 vgabios (0.3a-1) unstable; urgency=low * New upstream release * Added Jeroen Janssen to author list. * Missing awk in Build-Depends was added. -- Robert Millan Wed, 20 Mar 2002 00:11:45 +0100 vgabios (0.2b-2) unstable; urgency=low * Deactivated unnecessary dh_shlibdeps. -- Robert Millan Mon, 4 Mar 2002 15:18:25 +0100 vgabios (0.2b-1) unstable; urgency=low * New upstream release * Unset execution bit from vgabios.bin. * Lintian overrides build-depends-without-arch-dep, see README.Debian. * Set bash as interpreter of dataseghack to support upstream's bashisms. * Bulding an extra image with debugging support. * C shell no longer needed, got rid of it. -- Robert Millan Fri, 22 Feb 2002 12:59:59 +0100 vgabios (0.2a-2) unstable; urgency=low * Fixed a typo in debian/control. (Closes: #125457) * Moved vgabios.bin to /usr/share/vgabios/vgabios.bin. -- Robert Millan Tue, 18 Dec 2001 22:58:30 +0100 vgabios (0.2a-1) unstable; urgency=low * New upstream release. * Removed blank line in debian/control (Closes: #113976) * Documented reason not to build for non-i386 archs. Look at README.Debian. -- Robert Millan Sun, 11 Nov 2001 20:45:31 +0100 vgabios (0.01a-1) unstable; urgency=low * Initial Release. -- Robert Millan Sat, 1 Sep 2001 17:01:45 +0200 debian/copyright0000664000000000000000000000274711713760476011151 0ustar This package was debianized by Robert Millan on Sat, 1 Sep 2001 17:01:45 +0200. Now maintained by Guillem Jover . It was downloaded from Upstream Authors: Christophe Bothamy Jeroen Janssen Kevin Lawton Volker Ruppert and others Copyright Holders: Copyright © 2001-2003 Christophe Bothamy Copyright © 2002 Jeroen Janssen Copyright © 2002 Kevin Lawton Copyright © 2002-2003, 2005-2006, 2008 Volker Ruppert License: 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.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA On Debian systems, the complete text of the GNU Lesser General Public License can be found in '/usr/share/common-licenses/LGPL-2.1'. debian/links0000664000000000000000000000031111713760476010242 0ustar # Compatibility symlinks with Debian vgabios == 0.6c-3 usr/share/vgabios/vgabios.bin usr/share/vgabios/vgabios.stdvga.bin usr/share/vgabios/vgabios.debug.bin usr/share/vgabios/vgabios.stdvga.debug.bin debian/patches/0000775000000000000000000000000012026345333010620 5ustar debian/patches/series0000664000000000000000000000023212026344751012035 0ustar 05-Add-qemu-vmware-vga-pci-bios 06-Add-qemu-qxl-vga-pci-bios disable-1280x768-and-1280x720-modes.patch #vgabios-edid.patch vgabios_updated_20120918.patch debian/patches/05-Add-qemu-vmware-vga-pci-bios0000664000000000000000000000420611713760476016214 0ustar From: Gerd Hoffmann Date: Thu, 6 May 2010 10:47:01 +0200 Subject: Add qemu vmware vga pci bios Add PCI vgabios for the qemu vmeare vga (15ad:0405). Name it vgabios-vmware.bin. Signed-off-by: Gerd Hoffmann --- Makefile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) --- a/Makefile +++ b/Makefile @@ -14,12 +14,14 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" -all: bios cirrus-bios +all: bios cirrus-bios vmware-bios bios: vgabios.bin vgabios.debug.bin cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin +vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin + 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 := - vgabios.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DDEBUG vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS 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 # dist names vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin vgabios.debug.bin : DISTNAME := VGABIOS-lgpl-latest.debug.bin vgabios-cirrus.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin 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 # dependencies vgabios.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-cirrus.bin : $(VGA_FILES) clext.c biossums 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 # build rule %.bin: debian/patches/vgabios_updated_20120918.patch0000664000000000000000000004136312026345074016000 0ustar Index: vgabios-0.7a/Makefile =================================================================== --- vgabios-0.7a.orig/Makefile 2012-09-19 08:34:29.000000000 -0500 +++ vgabios-0.7a/Makefile 2012-09-19 08:35:50.262558422 -0500 @@ -14,12 +14,14 @@ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" -all: bios cirrus-bios vmware-bios qxl-bios +all: bios cirrus-bios vmware-bios qxl-bios lowres-bios bios: vgabios.bin vgabios.debug.bin cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin +lowres-bios: vgabios-lowres.bin vgabios-lowres.debug.bin + vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin qxl-bios: vgabios-qxl.bin vgabios-qxl.debug.bin @@ -39,6 +41,8 @@ vgabios.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DDEBUG vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG +vgabios-lowres.bin : VGAFLAGS := -DVBE -DPCIBIOS -DLOWRES +vgabios-lowres.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DLOWRES -DDEBUG 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 vgabios-qxl.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 @@ -49,6 +53,8 @@ vgabios.debug.bin : DISTNAME := VGABIOS-lgpl-latest.debug.bin vgabios-cirrus.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin +vgabios-lowres.bin : DISTNAME := VGABIOS-lgpl-latest.lowres.bin +vgabios-lowres.debug.bin : DISTNAME := VGABIOS-lgpl-latest.lowres.debug.bin vgabios-vmware.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.bin vgabios-vmware.debug.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.debug.bin vgabios-qxl.bin : DISTNAME := VGABIOS-lgpl-latest.qxl.bin @@ -59,6 +65,8 @@ vgabios.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-cirrus.bin : $(VGA_FILES) clext.c biossums vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums +vgabios-lowres.bin : $(VGA_FILES) $(VBE_FILES) biossums +vgabios-lowres.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-vmware.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums vgabios-qxl.bin : $(VGA_FILES) $(VBE_FILES) biossums Index: vgabios-0.7a/vbe.c =================================================================== --- vgabios-0.7a.orig/vbe.c 2012-09-19 08:34:29.000000000 -0500 +++ vgabios-0.7a/vbe.c 2012-09-19 08:34:43.110559629 -0500 @@ -1,6 +1,7 @@ // ============================================================================================ // // Copyright (C) 2002 Jeroen Janssen +// Copyright (C) 2012 Hiroshi Miura // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -1459,3 +1460,198 @@ mov ax, #0x014f ret ASM_END + +/* Virtual monitor EDID information */ +ASM_START +vesa_EDID: + db 0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00 + /* 0x0000 8-byte header */ + db 0x04,0x21 /* 0x0008 Vendor ID ("AAA") */ + db 0xAB,0xCD /* 0x000A Product ID */ + db 0x00,0x00,0x00,0x00 /* 0x000C Serial number (none) */ + db 54, 10 /* 0x0010 Week of manufactur (54) and year of manufacture (2000) */ + db 0x01, 0x03 /* 0x0012 EDID version number (1.3) */ + db 0x0F /* 0x0014 Video signal interface (analogue, 0.700 : 0.300 : 1.000 V p-p, + Video Setup: Blank Level = Black Level, Separate Sync H & V Signals are + supported, Composite Sync Signal on Horizontal is supported, Composite + Sync Signal on Green Video is supported, Serration on the Vertical Sync + is supported) */ + db 0x21,0x19 /* 0x0015 Scren size (330 mm * 250 mm) */ + db 0x78 /* 0x0017 Display gamma (2.2) */ + db 0x0F /* 0x0018 Feature flags (no DMPS states, RGB, display is continuous frequency) */ + db 0x78,0xF5 /* 0x0019 Least significant bits for chromaticity and default white point */ + db 0xA6,0x55,0x48,0x9B,0x26,0x12,0x50,0x54 + /* 0x001B Most significant bits for chromaticity and default white point */ + + db 0xFF /* 0x0023 Established timings 1 (720 x 400 @ 70Hz, 720 x 400 @ 88Hz, + 640 x 480 @ 60Hz, 640 x 480 @ 67Hz, 640 x 480 @ 72Hz, 640 x 480 @ 75Hz, + 800 x 600 @ 56Hz, 800 x 600 @ 60Hz) - historical resolutions */ + db 0xEF /* 0x0024 Established timings 2 (800 x 600 @ 72Hz, 800 x 600 @ 75Hz, 832 x 624 @ 75Hz + not 1024 x 768 @ 87Hz(I), 1024 x 768 @ 60Hz, 1024 x 768 @ 70Hz, + 1024 x 768 @ 75Hz, 1280 x 1024 @ 75Hz) - historical resolutions */ + db 0x80 /* 0x0025 Established timings 2 (1152 x 870 @ 75Hz and no manufacturer timings) */ + + /* Standard timing */ + /* First byte: X resolution, divided by 8, less 31 (256–2288 pixels) */ + /* bit 7-6, X:Y pixel ratio: 00=16:10; 01=4:3; 10=5:4; 11=16:9 */ + /* bit 5-0, Vertical frequency, less 60 (60–123 Hz), nop 01 01 */ +#ifdef LOWRES + db 0x81, 0x9A /* 0x0026 Standard timing #1 (1280 x 1024 @ 70Hz) */ + db 0x61, 0x59 /* 0x0028 Standard timing #2 (1024 x 768 @ 85 Hz) */ + db 0x45, 0x59 /* 0x002A Standard timing #3 (800 x 600 @ 85 Hz) */ + db 0x31, 0x4A /* 0x002C Standard timing #4 (640 x 480 @ 70 Hz) */ + db 0x31, 0x59 /* 0x002E Standard timing #5 (640 x 480 @ 85 Hz) */ + db 0x01, 0x01 /* 0x0030 Standard timing #6 (unused) */ + db 0x01, 0x01 /* 0x0032 Standard timing #7 (unused) */ + db 0x01, 0x01 /* 0x0034 Standard timing #8 (unused) */ + + /* 0x0036 First 18-byte descriptor (1280 x 1024) */ + db 0x30, 0x2a /* Pixel clock = 108000000 Hz */ + db 0x00 /* 0x0038 Horizontal addressable pixels low byte (0x0500 & 0xFF) */ + db 0x98 /* 0x0039 Horizontal blanking low byte (0x0198 & 0xFF) */ + db 0x51 /* 0x003A Horizontal addressable pixels high 4 bits (0x0500 >> 8), and */ + /* Horizontal blanking high 4 bits (0x0198 >> 8) */ + db 0x00 /* 0x003B Vertical addressable pixels low byte (0x0400 & 0xFF) */ + db 0x2A /* 0x003C Vertical blanking low byte (0x002A & 0xFF) */ + db 0x40 /* 0x003D Vertical addressable pixels high 4 bits (0x0400 >> 8), and */ + /* Vertical blanking high 4 bits (0x002A >> 8) */ + db 0x30 /* 0x003E Horizontal front porch in pixels low byte (0x0030 & 0xFF) */ + db 0x70 /* 0x003F Horizontal sync pulse width in pixels low byte (0x0070 & 0xFF) */ + db 0x13 /* 0x0040 Vertical front porch in lines low 4 bits (0x0001 & 0x0F), and */ + /* Vertical sync pulse width in lines low 4 bits (0x0003 & 0x0F) */ + db 0x00 /* 0x0041 Horizontal front porch pixels high 2 bits (0x0030 >> 8), and */ + /* Horizontal sync pulse width in pixels high 2 bits (0x0070 >> 8), and */ + /* Vertical front porch in lines high 2 bits (0x0001 >> 4), and */ + /* Vertical sync pulse width in lines high 2 bits (0x0003 >> 4) */ + db 0x2C /* 0x0042 Horizontal addressable video image size in mm low 8 bits (0x012C & 0xFF) */ + db 0xE1 /* 0x0043 Vertical addressable video image size in mm low 8 bits (0x00E1 & 0xFF) */ + db 0x10 /* 0x0044 Horizontal addressable video image size in mm low 8 bits (0x012C >> 8), and */ + /* Vertical addressable video image size in mm low 8 bits (0x00E1 >> 8) */ + db 0x00 /* 0x0045 Left and right border size in pixels (0x00) */ + db 0x00 /* 0x0046 Top and bottom border size in lines (0x00) */ + db 0x1E /* 0x0047 Flags (non-interlaced, no stereo, analog composite sync, sync on */ + /* all three (RGB) video signals) */ +#else + + db 0xD1, 0xC0 /* 0x0026 Standard timing #1 (1920 x 1080 @ 60 Hz) */ + db 0xA9, 0xC0 /* 0x0030 Standard timing #2 (1600 x 900 @ 60 Hz) */ + db 0xA9, 0x40 /* 0x0034 Standard timing #3 (1600 x 1200 @ 60 Hz) */ + db 0x61, 0x59 /* 0x0028 Standard timing #4 (1024 x 768 @ 85 Hz) */ + db 0x45, 0x59 /* 0x002A Standard timing #5 (800 x 600 @ 85 Hz) */ + db 0x81, 0xCA /* 0x002C Standard timing #6 (1280 x 720 @ 70 Hz) */ + db 0x81, 0x0A /* 0x002E Standard timing #7 (1280 x 800 @ 70 Hz) */ + db 0x01, 0x01 /* 0x0032 Standard timing #8 (unused) */ + + /* 0x0036 First 18-byte descriptor (1920 x 1080) */ + db 0x02, 0x3A /* Pixel clock = 148500000 Hz */ + db 0x80 /* 0x0038 Horizontal addressable pixels low byte (0x0780 & 0xFF) */ + db 0x90 /* 0x0039 Horizontal blanking low byte (0x0290 & 0xFF) */ + db 0x72 /* 0x003A Horizontal addressable pixels high 4 bits ((0x0780 & 0x0F00) >> 4), and */ + /* Horizontal blanking high 4 bits ((0x0290 & 0x0F00 ) >> 8) as low bits */ + db 0x38 /* 0x003B Vertical addressable pixels low byte (0x0438 & 0xFF) */ + db 0x26 /* 0x003C Vertical blanking low byte (0x0026 & 0xFF) */ + db 0x40 /* 0x003D Vertical addressable pixels high 4 bits ((0x0438 & 0x0F00) >> 4), and */ + /* Vertical blanking high 4 bits ((0x0026 & x0F00) >> 8) */ + db 0x78 /* 0x003E Horizontal front porch in pixels low byte (0x0078 & 0xFF) */ + db 0xD0 /* 0x003F Horizontal sync pulse width in pixels low byte (0x00D0 & 0xFF) */ + db 0x13 /* 0x0040 Vertical front porch in lines low 4 bits ((0x0001 & 0x0F) << 4), and */ + /* Vertical sync pulse width in lines low 4 bits (0x0003 & 0x0F) */ + db 0x00 /* 0x0041 Horizontal front porch pixels high 2 bits (0x0078 >> 8), and */ + /* Horizontal sync pulse width in pixels high 2 bits (0x00D0 >> 8), and */ + /* Vertical front porch in lines high 2 bits (0x0001 >> 4), and */ + /* Vertical sync pulse width in lines high 2 bits (0x0003 >> 4) */ + db 0x14 /* 0x0042 Horizontal addressable video image size in mm low 8 bits (0x0214 & 0xFF) */ + db 0x2B /* 0x0043 Vertical addressable video image size in mm low 8 bits (0x012B & 0xFF) */ + db 0x21 /* 0x0044 Horizontal addressable video image size in mm high 8 bits (0x0214 >> 8), and */ + /* Vertical addressable video image size in mm high 8 bits (0x012B >> 8) */ + db 0x00 /* 0x0045 Left and right border size in pixels (0x00) */ + db 0x00 /* 0x0046 Top and bottom border size in lines (0x00) */ + db 0x1E /* 0x0047 Flags (non-interlaced, no stereo, analog composite sync, sync on */ + /* all three (RGB) video signals) */ + +#endif + + db 0x00,0x00,0x00,0xfD,0x00 /* 0x0048 Second 18-byte descriptor - display range */ + db 50,150 /* Vertical 50Hz - 150Hz */ + db 31,135 /* Horiz 24kHz - 135kHz */ + db 15 /* clock 150MHz */ + db 0 + db 0x0A,0x20,0x20,0x20,0x20 + db 0x20,0x20 + + db 0x00,0x00,0x00,0xFF,0x00 /* 0x005A Third 18-byte descriptor - display product serial number */ + .ascii "0123456789" + db 0x0A,0x20,0x20 + + db 0x00,0x00,0x00,0xFC,0x00 /* 0x006C Fourth 18-byte descriptor - display product name */ + .ascii "Bochs Screen" + db 0x0A + + db 0x00 /* 0x007E Extension block count (none) */ + db 0x00 /* 0x007F Checksum (ignored - recalculated when needed) */ +ASM_END + +/** Function 15h - Display Identification Extensions + * Input: AX = 4F0Ah VBE 2.0 Protected Mode Interface + * BL = 00h Get capabilities + * BL = 01h Read EDID + * CX = Controller unit number + * DX = EDID block number (if BL = 01h) + * ES:DI = Null pointer/reserved (if BL = 00h) + * ES:DI = Pointer to buffer to store EDID block (if BL = 01h) + * + * Output: AX = Status + * BH = Approximate time to get EDID in seconds rounded up (if BL = 00h) + * BL = DDC level supported: (if BL = 00h) + * Bit Meaning if set + * 0 DDC1 supported + * 1 DDC2 supported + * 2 Screen blanked during transfer + * BH = Unchanged (if BL = 01h) + * CX = Unchanged + * ES:DI = Unchanged + */ + + +ASM_START +vbe_biosfn_display_identification_extensions: + cmp bl,#0x01 + jb _get_capabilities + je _read_EDID +_failed: + mov ax, #0x014f + ret + +_get_capabilities: + test cx,cx + jne _failed + mov ax, #0x004f + mov bx, #0x0101 + ret + +_read_EDID: + test cx,cx + jne _failed + test dx,dx + jne _failed + push si + push di + cld + mov cx,#127 + mov si, # vesa_EDID + xor ah,ah +_nextByte: + db 0x2E + lodsb + stosb + sub ah,al + loop _nextByte + mov al,ah + stosb + pop di + pop si + xor cx,cx + mov ax, #0x004f + ret + +ASM_END Index: vgabios-0.7a/vbe.h =================================================================== --- vgabios-0.7a.orig/vbe.h 2012-09-19 08:34:29.000000000 -0500 +++ vgabios-0.7a/vbe.h 2012-09-19 08:34:43.110559629 -0500 @@ -17,6 +17,7 @@ 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 Index: vgabios-0.7a/vbetables-gen.c =================================================================== --- vgabios-0.7a.orig/vbetables-gen.c 2012-09-19 08:34:29.000000000 -0500 +++ vgabios-0.7a/vbetables-gen.c 2012-09-19 08:34:43.110559629 -0500 @@ -85,6 +85,9 @@ { 1920, 1080, 16 , 0x190}, { 1920, 1080, 24 , 0x191}, { 1920, 1080, 32 , 0x192}, +{ 1600, 900, 16 , 0x193}, +{ 1600, 900, 24 , 0x194}, +{ 1600, 900, 32 , 0x195}, { 0, }, }; Index: vgabios-0.7a/vgabios.c =================================================================== --- vgabios-0.7a.orig/vgabios.c 2012-09-19 08:34:29.000000000 -0500 +++ vgabios-0.7a/vgabios.c 2012-09-19 08:34:43.114559628 -0500 @@ -389,9 +389,14 @@ jmp int10_end int10_test_vbe_0A: cmp al, #0x0A - jne int10_normal + jne int10_test_vbe_15 call vbe_biosfn_return_protected_mode_interface jmp int10_end +int10_test_vbe_15: + cmp al, #0x15 + jne int10_normal + call vbe_biosfn_display_identification_extensions + jmp int10_end #endif int10_normal: debian/patches/06-Add-qemu-qxl-vga-pci-bios0000664000000000000000000000457611713760476015532 0ustar From: Gerd Hoffmann Date: Thu, 6 May 2010 10:50:41 +0200 Subject: Add qemu qxl vga pci bios Add PCI vgabios for the qemu qxl vga (1b36:0100). Name it vgabios-qxl.bin. Signed-off-by: Gerd Hoffmann --- Makefile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" -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- vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin +qxl-bios: vgabios-qxl.bin vgabios-qxl.debug.bin + 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 := - 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 +vgabios-qxl.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 +vgabios-qxl.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 -DDEBUG # dist names vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin @@ -47,6 +51,8 @@ vgabios-cirrus.bin : DISTNAME := V 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 +vgabios-qxl.bin : DISTNAME := VGABIOS-lgpl-latest.qxl.bin +vgabios-qxl.debug.bin : DISTNAME := VGABIOS-lgpl-latest.qxl.debug.bin # dependencies vgabios.bin : $(VGA_FILES) $(VBE_FILES) biossums @@ -55,6 +61,8 @@ vgabios-cirrus.bin : $(VGA_FILES) 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 +vgabios-qxl.bin : $(VGA_FILES) $(VBE_FILES) biossums +vgabios-qxl.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums # build rule %.bin: debian/patches/disable-1280x768-and-1280x720-modes.patch0000664000000000000000000000207611766310604017157 0ustar This patch disables 1280x768 and 1280x720 video modes because it behaves in interesting manner with linux vesa driver, see #654823. -- 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 @@ { 1152, 864, 32 , 0x14c}, -{ 1280, 768, 16 , 0x175}, -{ 1280, 768, 24 , 0x176}, -{ 1280, 768, 32 , 0x177}, +//{ 1280, 768, 16 , 0x175}, +//{ 1280, 768, 24 , 0x176}, +//{ 1280, 768, 32 , 0x177}, { 1280, 800, 16 , 0x178}, @@ -81,5 +81,5 @@ { 2560, 1600, 32 , 0x18c}, -{ 1280, 720, 16 , 0x18d}, -{ 1280, 720, 24 , 0x18e}, -{ 1280, 720, 32 , 0x18f}, +//{ 1280, 720, 16 , 0x18d}, +//{ 1280, 720, 24 , 0x18e}, +//{ 1280, 720, 32 , 0x18f}, { 1920, 1080, 16 , 0x190}, debian/dirs0000664000000000000000000000002211713760476010062 0ustar usr/share/vgabios