Compare commits

...
Sign in to create a new pull request.

4 commits

Author SHA1 Message Date
Cole Robinson
c44d6ad8a5 Obsoleted by seabios provided seavgabios 2013-05-20 16:39:26 -04:00
Paolo Bonzini
6ec13e9a36 Merge branch 'f18'
Conflicts:
	vgabios.spec
2013-03-08 09:56:46 +01:00
Paolo Bonzini
683c826120 Merge branch 'f18'
Conflicts:
	vgabios.spec
2013-03-08 09:27:15 +01:00
Dennis Gilmore
f26eee73c4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild 2013-02-14 20:45:25 -06:00
13 changed files with 1 additions and 781 deletions

1
.gitignore vendored
View file

@ -1 +0,0 @@
vgabios-0.6c.tgz

View file

@ -1,119 +0,0 @@
From 4daf1128d4bb2c7e30b0c2f3d279c8fa5759bb39 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 09:58:40 +0200
Subject: [PATCH 1/7] Makefile cleanup
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.
---
Makefile | 76 +++++++++++++++++++++++++++----------------------------------
1 files changed, 34 insertions(+), 42 deletions(-)
diff --git a/Makefile b/Makefile
index 00e8c66..c3c744c 100644
--- a/Makefile
+++ b/Makefile
@@ -16,8 +16,7 @@ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
all: bios cirrus-bios
-
-bios: biossums vgabios.bin vgabios.debug.bin
+bios: vgabios.bin vgabios.debug.bin
cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
@@ -27,6 +26,39 @@ clean:
dist-clean: clean
+# source files
+VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
+VBE_FILES := vbe.h vbe.c vbetables.h
+
+# build flags
+vgabios.bin : VGAFLAGS := -DVBE
+vgabios.debug.bin : VGAFLAGS := -DVBE -DDEBUG
+vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS
+vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
+
+# 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
+
+# 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
+
+# build rule
+%.bin:
+ $(GCC) -E -P vgabios.c $(VGABIOS_VERS) $(VGAFLAGS) $(VGABIOS_DATE) > _$*_.c
+ $(BCC) -o $*.s -C-c -D__i86__ -S -0 _$*_.c
+ sed -e 's/^\.text//' -e 's/^\.data//' $*.s > _$*_.s
+ $(AS86) _$*_.s -b $*.bin -u -w- -g -0 -j -O -l $*.txt
+ rm -f _$*_.s _$*_.c $*.s
+ mv $*.bin $(DISTNAME)
+ ./biossums $(DISTNAME)
+ ls -l $(DISTNAME)
+
release:
VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios
/bin/rm -f *.o *.s *.ld86 \
@@ -37,46 +69,6 @@ release:
cp VGABIOS-lgpl-latest.cirrus.debug.bin ../$(RELEASE).cirrus.debug.bin
tar czvf ../$(RELEASE).tgz --exclude CVS -C .. $(RELEASE)/
-vgabios.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c vbetables.h
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE $(VGABIOS_DATE) > _vgabios_.c
- $(BCC) -o vgabios.s -C-c -D__i86__ -S -0 _vgabios_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios.s > _vgabios_.s
- $(AS86) _vgabios_.s -b vgabios.bin -u -w- -g -0 -j -O -l vgabios.txt
- rm -f _vgabios_.s _vgabios_.c vgabios.s
- mv vgabios.bin VGABIOS-lgpl-latest.bin
- ./biossums VGABIOS-lgpl-latest.bin
- ls -l VGABIOS-lgpl-latest.bin
-
-vgabios.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c vbetables.h
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE -DDEBUG $(VGABIOS_DATE) > _vgabios-debug_.c
- $(BCC) -o vgabios-debug.s -C-c -D__i86__ -S -0 _vgabios-debug_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-debug.s > _vgabios-debug_.s
- $(AS86) _vgabios-debug_.s -b vgabios.debug.bin -u -w- -g -0 -j -O -l vgabios.debug.txt
- rm -f _vgabios-debug_.s _vgabios-debug_.c vgabios-debug.s
- mv vgabios.debug.bin VGABIOS-lgpl-latest.debug.bin
- ./biossums VGABIOS-lgpl-latest.debug.bin
- ls -l VGABIOS-lgpl-latest.debug.bin
-
-vgabios-cirrus.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DPCIBIOS $(VGABIOS_DATE) > _vgabios-cirrus_.c
- $(BCC) -o vgabios-cirrus.s -C-c -D__i86__ -S -0 _vgabios-cirrus_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus.s > _vgabios-cirrus_.s
- $(AS86) _vgabios-cirrus_.s -b vgabios-cirrus.bin -u -w- -g -0 -j -O -l vgabios.cirrus.txt
- rm -f _vgabios-cirrus_.s _vgabios-cirrus_.c vgabios-cirrus.s
- mv vgabios-cirrus.bin VGABIOS-lgpl-latest.cirrus.bin
- ./biossums VGABIOS-lgpl-latest.cirrus.bin
- ls -l VGABIOS-lgpl-latest.cirrus.bin
-
-vgabios-cirrus.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DCIRRUS_DEBUG -DPCIBIOS $(VGABIOS_DATE) > _vgabios-cirrus-debug_.c
- $(BCC) -o vgabios-cirrus-debug.s -C-c -D__i86__ -S -0 _vgabios-cirrus-debug_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus-debug.s > _vgabios-cirrus-debug_.s
- $(AS86) _vgabios-cirrus-debug_.s -b vgabios.cirrus.debug.bin -u -w- -g -0 -j -O -l vgabios.cirrus.debug.txt
- rm -f _vgabios-cirrus-debug_.s _vgabios-cirrus-debug_.c vgabios-cirrus-debug.s
- mv vgabios.cirrus.debug.bin VGABIOS-lgpl-latest.cirrus.debug.bin
- ./biossums VGABIOS-lgpl-latest.cirrus.debug.bin
- ls -l VGABIOS-lgpl-latest.cirrus.debug.bin
-
biossums: biossums.c
$(CC) -o biossums biossums.c
--
1.7.2.1

View file

@ -1,66 +0,0 @@
From bb44e12f7b1b7ccd040c58ddb0e8cdaf2f9f5a67 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 10:21:47 +0200
Subject: [PATCH 2/7] Add defines for PCI IDs.
This patch allows to set PCI vendor and device IDs using defines
(PCI_VID and PCI_DID). Use it for vgabios.bin.
---
Makefile | 4 ++--
vbe.c | 6 +++++-
vgabios.c | 5 +++++
3 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index c3c744c..d440b93 100644
--- a/Makefile
+++ b/Makefile
@@ -31,8 +31,8 @@ VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
VBE_FILES := vbe.h vbe.c vbetables.h
# build flags
-vgabios.bin : VGAFLAGS := -DVBE
-vgabios.debug.bin : VGAFLAGS := -DVBE -DDEBUG
+vgabios.bin : VGAFLAGS := -DVBE -DPCI_VID=0x1234
+vgabios.debug.bin : VGAFLAGS := -DVBE -DPCI_VID=0x1234 -DDEBUG
vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS
vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
diff --git a/vbe.c b/vbe.c
index ecff90d..1fab2f9 100644
--- a/vbe.c
+++ b/vbe.c
@@ -925,7 +925,11 @@ Bit16u *AX;Bit16u CX; Bit16u ES;Bit16u DI;
if (using_lfb) {
info.NumberOfBanks = 1;
}
- lfb_addr = pci_get_lfb_addr(0x1234); // experimental vendor
+#ifdef PCI_VID
+ lfb_addr = pci_get_lfb_addr(PCI_VID);
+#else
+ lfb_addr = 0;
+#endif
if (lfb_addr > 0) {
info.PhysBasePtr = ((Bit32u)lfb_addr << 16);
}
diff --git a/vgabios.c b/vgabios.c
index ea3aae8..2e8b5d7 100644
--- a/vgabios.c
+++ b/vgabios.c
@@ -210,8 +210,13 @@ vgabios_pci_data:
.word 0x1013
.word 0x00b8 // CLGD5446
#else
+#ifdef PCI_VID
+.word PCI_VID
+.word PCI_DID
+#else
#error "Unknown PCI vendor and device id"
#endif
+#endif
.word 0 // reserved
.word 0x18 // dlen
.byte 0 // revision
--
1.7.2.1

View file

@ -1,59 +0,0 @@
From be965ab705738d3dfe21ab2bafb15a92639ae50c Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 10:39:33 +0200
Subject: [PATCH 3/7] Add qemu stdvga pci bios
Add PCI vgabios for the qemu standard vga (1234:1111).
Name it vgabios-stdvga.bin.
---
Makefile | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index d440b93..58f064e 100644
--- a/Makefile
+++ b/Makefile
@@ -14,12 +14,14 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
-all: bios cirrus-bios
+all: bios cirrus-bios stdvga-bios
bios: vgabios.bin vgabios.debug.bin
cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
+stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.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 := -DVBE -DPCI_VID=0x1234
vgabios.debug.bin : VGAFLAGS := -DVBE -DPCI_VID=0x1234 -DDEBUG
vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS
vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
+vgabios-stdvga.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111
+vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -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-stdvga.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
+vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.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-stdvga.bin : $(VGA_FILES) $(VBE_FILES) biossums
+vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
# build rule
%.bin:
--
1.7.2.1

View file

@ -1,60 +0,0 @@
From 846780ebcad7a907383173bd2f4fcc4e520e4611 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 15:11:39 +0200
Subject: [PATCH 4/7] update pci_get_lfb_addr for vmware vga
vmware vga has the framebuffer at pci region 1 not 0. This patch makes
pci_get_lfb_addr check region 1 too. It also gives names to the
numbered labels to make the code more readable.
---
vgabios.c | 23 ++++++++++++++---------
1 files changed, 14 insertions(+), 9 deletions(-)
diff --git a/vgabios.c b/vgabios.c
index 2e8b5d7..c1e312b 100644
--- a/vgabios.c
+++ b/vgabios.c
@@ -3852,26 +3852,31 @@ _pci_get_lfb_addr:
mov dl, #0x00
call pci_read_reg
cmp ax, #0xffff
- jz pci_get_lfb_addr_5
- pci_get_lfb_addr_3:
+ jz pci_get_lfb_addr_fail
+ pci_get_lfb_addr_next_dev:
mov dl, #0x00
call pci_read_reg
cmp ax, bx ;; check vendor
- jz pci_get_lfb_addr_4
+ jz pci_get_lfb_addr_found
add cx, #0x8
cmp cx, #0x200 ;; search bus #0 and #1
- jb pci_get_lfb_addr_3
- pci_get_lfb_addr_5:
+ jb pci_get_lfb_addr_next_dev
+ pci_get_lfb_addr_fail:
xor dx, dx ;; no LFB
- jmp pci_get_lfb_addr_6
- pci_get_lfb_addr_4:
+ jmp pci_get_lfb_addr_return
+ pci_get_lfb_addr_found:
mov dl, #0x10 ;; I/O space #0
call pci_read_reg
test ax, #0xfff1
- jnz pci_get_lfb_addr_5
+ jz pci_get_lfb_addr_success
+ mov dl, #0x14 ;; I/O space #1
+ call pci_read_reg
+ test ax, #0xfff1
+ jnz pci_get_lfb_addr_fail
+ pci_get_lfb_addr_success:
shr eax, #16
mov dx, ax ;; LFB address
- pci_get_lfb_addr_6:
+ pci_get_lfb_addr_return:
pop eax
mov ax, dx
pop dx
--
1.7.2.1

View file

@ -1,63 +0,0 @@
From 824c3dfda24e414ea111042483668ff3f14aadf5 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 10:47:01 +0200
Subject: [PATCH 5/7] Add qemu vmware vga pci bios
Add PCI vgabios for the qemu vmeare vga (15ad:0405).
Name it vgabios-vmware.bin.
---
Makefile | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index 58f064e..2a093e8 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
-all: bios cirrus-bios stdvga-bios
+all: bios cirrus-bios stdvga-bios vmware-bios
bios: vgabios.bin vgabios.debug.bin
@@ -22,6 +22,8 @@ cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.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
@@ -39,6 +41,8 @@ vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS
vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
vgabios-stdvga.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111
vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -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
# dist names
vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin
@@ -47,6 +51,8 @@ vgabios-cirrus.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
vgabios-stdvga.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.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
@@ -55,6 +61,8 @@ vgabios-cirrus.bin : $(VGA_FILES) clext.c biossums
vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
vgabios-stdvga.bin : $(VGA_FILES) $(VBE_FILES) biossums
vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
+vgabios-vmware.bin : $(VGA_FILES) $(VBE_FILES) biossums
+vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
# build rule
%.bin:
--
1.7.2.1

View file

@ -1,63 +0,0 @@
From 19ea12c230ded95928ecaef0db47a82231c2e485 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 6 May 2010 10:50:41 +0200
Subject: [PATCH 6/7] Add qemu qxl vga pci bios
Add PCI vgabios for the qemu qxl vga (1b36:0100).
Name it vgabios-qxl.bin.
---
Makefile | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index 2a093e8..578721a 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
-all: bios cirrus-bios stdvga-bios vmware-bios
+all: bios cirrus-bios stdvga-bios vmware-bios qxl-bios
bios: vgabios.bin vgabios.debug.bin
@@ -24,6 +24,8 @@ stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.debug.bin
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
@@ -43,6 +45,8 @@ vgabios-stdvga.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DI
vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -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
+vgabios-qxl.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 -DDEBUG
# dist names
vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin
@@ -53,6 +57,8 @@ vgabios-stdvga.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.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
@@ -63,6 +69,8 @@ vgabios-stdvga.bin : $(VGA_FILES) $(VBE_FILES) biossums
vgabios-stdvga.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
+vgabios-qxl.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
# build rule
%.bin:
--
1.7.2.1

View file

@ -1,151 +0,0 @@
--- vgabios-0.6c/vgabios.c 2009-04-07 20:18:20.000000000 +0200
+++ vgabios-0.6c_mod/vgabios.c 2011-08-24 13:36:49.000000000 +0200
@@ -1325,7 +1325,7 @@
else
{
// FIXME gfx mode not complete
- cheight=video_param_table[line_to_vpti[line]].cheight;
+ cheight=read_byte(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT);
switch(vga_modes[line].memmodel)
{
case PLANAR4:
@@ -1637,7 +1637,7 @@
else
{
// FIXME gfx mode not complete
- cheight=video_param_table[line_to_vpti[line]].cheight;
+ cheight=read_byte(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT);
bpp=vga_modes[line].pixbits;
while((count-->0) && (xcurs<nbcols))
{
@@ -1697,7 +1697,7 @@
else
{
// FIXME gfx mode not complete
- cheight=video_param_table[line_to_vpti[line]].cheight;
+ cheight=read_byte(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT);
bpp=vga_modes[line].pixbits;
while((count-->0) && (xcurs<nbcols))
{
@@ -2005,7 +2005,7 @@
else
{
// FIXME gfx mode not complete
- cheight=video_param_table[line_to_vpti[line]].cheight;
+ cheight=read_byte(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT);
bpp=vga_modes[line].pixbits;
switch(vga_modes[line].memmodel)
{
@@ -2767,33 +2767,97 @@
static void biosfn_load_gfx_8_8_chars (ES,BP) Bit16u ES;Bit16u BP;
{
-#ifdef DEBUG
- unimplemented();
-#endif
+ /* set 0x1F INT pointer */
+ write_word(0x0, 0x1F*4, BP);
+ write_word(0x0, 0x1F*4+2, ES);
+
+ write_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, 8);
}
static void biosfn_load_gfx_user_chars (ES,BP,CX,BL,DL) Bit16u ES;Bit16u BP;Bit16u CX;Bit8u BL;Bit8u DL;
{
-#ifdef DEBUG
- unimplemented();
-#endif
+ Bit8u mode; Bit8u line;
+
+ /* set 0x43 INT pointer */
+ write_word(0x0, 0x43*4, BP);
+ write_word(0x0, 0x43*4+2, ES);
+
+ switch (BL) {
+ case 0:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, DL-1);
+ break;
+ case 1:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 13);
+ break;
+ case 3:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 42);
+ break;
+ case 2:
+ default:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 24);
+ break;
+ }
+
+ write_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, CX);
}
static void biosfn_load_gfx_8_14_chars (BL) Bit8u BL;
{
-#ifdef DEBUG
- unimplemented();
-#endif
+ /* set 0x43 INT pointer */
+ write_word(0x0, 0x43*4, &vgafont14);
+ write_word(0x0, 0x43*4+2, 0xC000);
+
+ switch (BL) {
+ case 1:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 13);
+ break;
+ case 3:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 42);
+ break;
+ case 2:
+ default:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 24);
+ break;
+ }
+ write_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, 14);
}
static void biosfn_load_gfx_8_8_dd_chars (BL) Bit8u BL;
{
-#ifdef DEBUG
- unimplemented();
-#endif
+ /* set 0x43 INT pointer */
+ write_word(0x0, 0x43*4, &vgafont8);
+ write_word(0x0, 0x43*4+2, 0xC000);
+
+ switch (BL) {
+ case 1:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 13);
+ break;
+ case 3:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 42);
+ break;
+ case 2:
+ default:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 24);
+ break;
+ }
+ write_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, 8);
}
static void biosfn_load_gfx_8_16_chars (BL) Bit8u BL;
{
-#ifdef DEBUG
- unimplemented();
-#endif
+ /* set 0x43 INT pointer */
+ write_word(0x0, 0x43*4, &vgafont16);
+ write_word(0x0, 0x43*4+2, 0xC000);
+
+ switch (BL) {
+ case 1:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 13);
+ break;
+ case 3:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 42);
+ break;
+ case 2:
+ default:
+ write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, 24);
+ break;
+ }
+ write_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, 16);
}
// --------------------------------------------------------------------------------------------
static void biosfn_get_font_info (BH,ES,BP,CX,DX)

View file

@ -1,19 +0,0 @@
From: David Woodhouse <dwmw2@infradead.org>
Subject: [PATCH] Ensure PCIR is aligned to 4 bytes
The PCI Firmware Specification apparently requires that the PCI Data
Structure be DWORD-aligned. The implementation in OVMF also requires
this, so vgabios ROMs don't work there. With this fixed, I can now
initialise the VGA ROM from EFI, and EFI can display using INT 10h
services.
--- vgabios-0.6c/vgabios.c.orig 2013-01-20 11:33:36.138548472 -0600
+++ vgabios-0.6c/vgabios.c 2013-01-20 11:36:26.060270163 -0600
@@ -204,6 +204,7 @@ vgabios_website:
.byte 0x00
#ifdef PCIBIOS
+.align 4 // DWORD alignment required by PCI Firmware Specification
vgabios_pci_data:
.ascii "PCIR"
#ifdef CIRRUS

1
dead.package Normal file
View file

@ -0,0 +1 @@
Obsoleted by seabios provided seavgabios

View file

@ -1 +0,0 @@
2b0a5387594bb70cb1dbcc1f79ec824c vgabios-0.6c.tgz

View file

@ -1,56 +0,0 @@
From c3885286784174680811be037a8cef83c43c47c2 Mon Sep 17 00:00:00 2001
From: Glauber Costa <glommer@redhat.com>
Date: Thu, 18 Jun 2009 18:26:00 -0400
Subject: [PATCH] provide high res resolutions to non-cirrus devices.
Add widescreen modes to vbetables-gen.c , and increase device memory.
Signed-off-by: Glauber Costa <glommer@redhat.com>
---
vbetables-gen.c | 23 ++++++++++++++++++++++-
1 files changed, 22 insertions(+), 1 deletions(-)
diff --git a/vbetables-gen.c b/vbetables-gen.c
index 7014a16..96ac85a 100644
--- a/vbetables-gen.c
+++ b/vbetables-gen.c
@@ -2,7 +2,7 @@
#include <stdlib.h>
#include <stdio.h>
-#define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 8
+#define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 16
typedef struct {
int width;
@@ -55,6 +55,27 @@ ModeInfo modes[] = {
{ 1152, 864, 16 , 0x14a},
{ 1152, 864, 24 , 0x14b},
{ 1152, 864, 32 , 0x14c},
+{ 1280, 800, 16 , 0x178},
+{ 1280, 800, 24 , 0x179},
+{ 1280, 800, 32 , 0x17a},
+{ 1280, 960, 16 , 0x17b},
+{ 1280, 960, 24 , 0x17c},
+{ 1280, 960, 32 , 0x17d},
+{ 1440, 900, 16 , 0x17e},
+{ 1440, 900, 24 , 0x17f},
+{ 1440, 900, 32 , 0x180},
+{ 1400, 1050, 16 , 0x181},
+{ 1400, 1050, 24 , 0x182},
+{ 1400, 1050, 32 , 0x183},
+{ 1680, 1050, 16 , 0x184},
+{ 1680, 1050, 24 , 0x185},
+{ 1680, 1050, 32 , 0x186},
+{ 1920, 1200, 16 , 0x187},
+{ 1920, 1200, 24 , 0x188},
+{ 1920, 1200, 32 , 0x189},
+{ 2560, 1600, 16 , 0x18a},
+{ 2560, 1600, 24 , 0x18b},
+{ 2560, 1600, 32 , 0x18c},
{ 0, },
};
--
1.6.2.2

View file

@ -1,123 +0,0 @@
Name: vgabios
Version: 0.6c
Release: 8%{?dist}
Summary: LGPL implementation of a vga video bios
Group: Applications/Emulators
License: LGPLv2
URL: http://www.nongnu.org/vgabios/
Source0: http://savannah.gnu.org/download/%{name}/%{name}-%{version}.tgz
Patch01: 0001-Makefile-cleanup.patch
Patch02: 0002-Add-defines-for-PCI-IDs.patch
Patch03: 0003-Add-qemu-stdvga-pci-bios.patch
Patch04: 0004-update-pci_get_lfb_addr-for-vmware-vga.patch
Patch05: 0005-Add-qemu-vmware-vga-pci-bios.patch
Patch06: 0006-Add-qemu-qxl-vga-pci-bios.patch
Patch07: 0007-vgabios-int10-0x11xx.patch
Patch08: 0008-vgabios-Ensure-pcir4-is-aligned.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: dev86
BuildArch: noarch
%description
vgabios is an LPGL implementation of a bios for a video card.
It is tied to plex86/bochs, althoug it will likely work on other
emulators. It is not intended for use in real cards.
%prep
%setup -q -n %{name}-%{version}
%patch01 -p1
%patch02 -p1
%patch03 -p1
%patch04 -p1
%patch05 -p1
%patch06 -p1
%patch07 -p1
%patch08 -p1
%build
make clean
make biossums %{?_smp_mflags}
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_datadir}/vgabios
install -m 0644 VGABIOS-lgpl-*.bin $RPM_BUILD_ROOT%{_datadir}/vgabios
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%dir %{_datadir}/vgabios/
%doc README COPYING
%{_datadir}/vgabios/VGABIOS-lgpl-latest.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.cirrus.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.qxl.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.stdvga.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.vmware.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.debug.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.qxl.debug.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.stdvga.debug.bin
%{_datadir}/vgabios/VGABIOS-lgpl-latest.vmware.debug.bin
%changelog
* Fri Mar 8 2013 Paolo Bonzini <pbonzini@redhat.com> - 0.6c-8
- Regenerate patch 8
* Fri Mar 8 2013 Paolo Bonzini <pbonzini@redhat.com> - 0.6c-7
- Ensure PCIR is aligned to 4 bytes
* Thu Jan 10 2013 Paolo Bonzini <pbonzini@redhat.com> - 0.6c-6
- Complete implementation for int 10h AH=11h
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6c-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6c-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6c-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Aug 10 2010 Justin M. Forbes <jforbes@redhat.com> - 0.6c-2
- Patches from freedesktop.org to support newer qemu.
* Fri May 14 2010 Matthew Garrett <mjg@redhat.com> - 0.6c-1
- Update to newer upstream to permit S3 under Windows XP
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6b-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Jun 19 2009 Glauber Costa <glommer@redhat.com> - 0.6b-2
- properly add the patch
* Fri Jun 19 2009 Glauber Costa <glommer@redhat.com> - 0.6b-1
- applied vgabios-provide-high-res.patch, that should fix #499060
- Changed versioning naming, since the "b" in 0.6b does not stand for beta.
* Mon Mar 02 2009 Glauber Costa <glommer@redhat.com> - 0.6-0.5.b
- fixed naming to comply with guidelines.
* Tue Feb 17 2009 Glauber Costa <glommer@redhat.com> - 0.6-0.4beta
- removed leftovers and fixed rpmlint errors.
* Mon Feb 16 2009 Glauber Costa <glommer@redhat.com> - 0.6-0.3beta
- using dev86 to build directly on all arches, made package noarch.
No more binaries \o/
* Fri Feb 13 2009 Glauber Costa <glommer@redhat.com> - 0.6-0.2beta
- Addressing BZ 485418: added doc section, clean build root before
we proceed, own vgabios directory
* Fri Feb 13 2009 Glauber Costa <glommer@redhat.com> - 0.6-0.1beta
- Created initial package