summaryrefslogtreecommitdiff
path: root/sysutils/915resolution
diff options
context:
space:
mode:
Diffstat (limited to 'sysutils/915resolution')
-rw-r--r--sysutils/915resolution/DESCR12
-rw-r--r--sysutils/915resolution/Makefile20
-rw-r--r--sysutils/915resolution/PLIST4
-rw-r--r--sysutils/915resolution/distinfo7
-rw-r--r--sysutils/915resolution/patches/patch-aa89
-rw-r--r--sysutils/915resolution/patches/patch-ab26
6 files changed, 158 insertions, 0 deletions
diff --git a/sysutils/915resolution/DESCR b/sysutils/915resolution/DESCR
new file mode 100644
index 00000000000..0cf81a79d92
--- /dev/null
+++ b/sysutils/915resolution/DESCR
@@ -0,0 +1,12 @@
+915resolution is a tool to modify the video BIOS of the 800 and 900 series
+Intel graphics chipsets. This includes the 845G, 855G, and 865G chipsets,
+as well as 915G, 915GM, and 945G chipsets. This modification is neccessary
+to allow the display of certain graphics resolutions for an Xorg or XFree86
+graphics server.
+915resolution's modifications of the BIOS are transient. There is no risk
+of permanent modification of the BIOS. This also means that 915resolution
+must be run every time the computer boots in order for it's changes to
+take effect.
+915resolution is derived from the tool 855resolution. However, the code
+differs substantially. 915resolution's code base is much simpler.
+915resolution also allows the modification of bits per pixel.
diff --git a/sysutils/915resolution/Makefile b/sysutils/915resolution/Makefile
new file mode 100644
index 00000000000..b42674c56a2
--- /dev/null
+++ b/sysutils/915resolution/Makefile
@@ -0,0 +1,20 @@
+# $NetBSD: Makefile,v 1.1.1.1 2006/06/11 14:03:58 markd Exp $
+#
+
+DISTNAME= 915resolution-0.5.2
+CATEGORIES= sysutils
+MASTER_SITES= ${HOMEPAGE}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.geocities.com/stomljen/
+COMMENT= BIOS VESA resolution utility for 8XX/9XX Intel chips
+
+ONLY_FOR_PLATFORM= NetBSD-*-i386
+
+USE_TOOLS+= gmake
+
+post-install:
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/915resolution
+ ${INSTALL_DATA} ${WRKSRC}/README.txt ${PREFIX}/share/doc/915resolution
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/sysutils/915resolution/PLIST b/sysutils/915resolution/PLIST
new file mode 100644
index 00000000000..3cc8e909de3
--- /dev/null
+++ b/sysutils/915resolution/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2006/06/11 14:03:58 markd Exp $
+sbin/915resolution
+share/doc/915resolution/README.txt
+@dirrm share/doc/915resolution
diff --git a/sysutils/915resolution/distinfo b/sysutils/915resolution/distinfo
new file mode 100644
index 00000000000..b5c5a0216e5
--- /dev/null
+++ b/sysutils/915resolution/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2006/06/11 14:03:58 markd Exp $
+
+SHA1 (915resolution-0.5.2.tar.gz) = 9f26eb1b728ca0b2d28c948207b034a49b477089
+RMD160 (915resolution-0.5.2.tar.gz) = 722b352a83f41f0e9822ed4e096e8064f239dcc1
+Size (915resolution-0.5.2.tar.gz) = 21183 bytes
+SHA1 (patch-aa) = 00223a909139f74713aeb66d20ec5079f5afbfc0
+SHA1 (patch-ab) = 9bd666c93dcaa54ae01e140ed00c3f08874d694b
diff --git a/sysutils/915resolution/patches/patch-aa b/sysutils/915resolution/patches/patch-aa
new file mode 100644
index 00000000000..7f04c8d1d3e
--- /dev/null
+++ b/sysutils/915resolution/patches/patch-aa
@@ -0,0 +1,89 @@
+$NetBSD: patch-aa,v 1.1.1.1 2006/06/11 14:03:58 markd Exp $
+
+--- 915resolution.c.orig 2006-06-06 22:55:58.000000000 +1200
++++ 915resolution.c
+@@ -22,7 +22,18 @@
+ #include <string.h>
+ #include <sys/mman.h>
+ #include <fcntl.h>
++#ifdef __linux__
+ #include <sys/io.h>
++#define OUTL(a, b) outl(a, b)
++#define OUTB(a, b) outb(a, b)
++#endif
++#ifdef __NetBSD__
++#include <machine/pio.h>
++#include <machine/sysarch.h>
++#define iopl(a) i386_iopl(a)
++#define OUTL(a, b) outl(b, a)
++#define OUTB(a, b) outb(b, a)
++#endif
+ #include <unistd.h>
+ #include <assert.h>
+
+@@ -169,7 +180,7 @@ void initialize_system(char * filename)
+ }
+
+ cardinal get_chipset_id(void) {
+- outl(0x80000000, 0xcf8);
++ OUTL(0x80000000, 0xcf8);
+ return inl(0xcfc);
+ }
+
+@@ -476,11 +487,11 @@ void unlock_vbios(vbios_map * map) {
+ case CT_UNKWN:
+ break;
+ case CT_855GM:
+- outl(0x8000005a, 0xcf8);
++ OUTL(0x8000005a, 0xcf8);
+ map->b1 = inb(0xcfe);
+
+- outl(0x8000005a, 0xcf8);
+- outb(0x33, 0xcfe);
++ OUTL(0x8000005a, 0xcf8);
++ OUTB(0x33, 0xcfe);
+ break;
+ case CT_845G:
+ case CT_865G:
+@@ -488,13 +499,13 @@ void unlock_vbios(vbios_map * map) {
+ case CT_915GM:
+ case CT_945G:
+ case CT_945GM:
+- outl(0x80000090, 0xcf8);
++ OUTL(0x80000090, 0xcf8);
+ map->b1 = inb(0xcfd);
+ map->b2 = inb(0xcfe);
+
+- outl(0x80000090, 0xcf8);
+- outb(0x33, 0xcfd);
+- outb(0x33, 0xcfe);
++ OUTL(0x80000090, 0xcf8);
++ OUTB(0x33, 0xcfd);
++ OUTB(0x33, 0xcfe);
+ break;
+ }
+ }
+@@ -526,8 +537,8 @@ void relock_vbios(vbios_map * map) {
+ case CT_UNKWN:
+ break;
+ case CT_855GM:
+- outl(0x8000005a, 0xcf8);
+- outb(map->b1, 0xcfe);
++ OUTL(0x8000005a, 0xcf8);
++ OUTB(map->b1, 0xcfe);
+ break;
+ case CT_845G:
+ case CT_865G:
+@@ -535,9 +546,9 @@ void relock_vbios(vbios_map * map) {
+ case CT_915GM:
+ case CT_945G:
+ case CT_945GM:
+- outl(0x80000090, 0xcf8);
+- outb(map->b1, 0xcfd);
+- outb(map->b2, 0xcfe);
++ OUTL(0x80000090, 0xcf8);
++ OUTB(map->b1, 0xcfd);
++ OUTB(map->b2, 0xcfe);
+ break;
+ }
+ }
diff --git a/sysutils/915resolution/patches/patch-ab b/sysutils/915resolution/patches/patch-ab
new file mode 100644
index 00000000000..988cda90148
--- /dev/null
+++ b/sysutils/915resolution/patches/patch-ab
@@ -0,0 +1,26 @@
+$NetBSD: patch-ab,v 1.1.1.1 2006/06/11 14:03:58 markd Exp $
+
+--- Makefile.orig 2006-02-03 03:01:38.000000000 +1300
++++ Makefile
+@@ -1,9 +1,13 @@
+ PRG=915resolution
+
++PREFIX?=/usr
+ SRCS=915resolution.c
+ OBJS=${SRCS:.c=.o}
+
+-CFLAGS:=-s -Wall -ggdb
++#CFLAGS:=-s -Wall -ggdb
++LDLIBS=-li386
++
++all: ${PRG}
+
+ ${PRG}: ${OBJS}
+
+@@ -11,5 +15,5 @@ clean:
+ rm -f ${OBJS} ${PRG} *~
+
+ install: ${PRG}
+- cp ${PRG} /usr/sbin
++ install -m 555 ${PRG} ${PREFIX}/sbin
+