summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>2001-04-14 18:00:12 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>2001-04-14 18:00:12 +0000
commit29b7ca9bf73e466b236b60ac248314a3aac8e855 (patch)
treea9694e56257dcefb0979478213c4ac51abac10d4
parentUpdate to 0.9. (diff)
Remove hpscan port - it's totally obsolete
Notes
Notes: svn path=/head/; revision=41377
-rw-r--r--graphics/Makefile1
-rw-r--r--graphics/hpscan/Makefile30
-rw-r--r--graphics/hpscan/distinfo1
-rw-r--r--graphics/hpscan/files/Imakefile20
-rw-r--r--graphics/hpscan/files/patch-aa33
-rw-r--r--graphics/hpscan/files/patch-ab177
-rw-r--r--graphics/hpscan/files/patch-ac695
-rw-r--r--graphics/hpscan/files/patch-ad15
-rw-r--r--graphics/hpscan/files/patch-ae54
-rw-r--r--graphics/hpscan/files/patch-af58
-rw-r--r--graphics/hpscan/files/patch-ag102
-rw-r--r--graphics/hpscan/files/patch-ah20
-rw-r--r--graphics/hpscan/pkg-comment1
-rw-r--r--graphics/hpscan/pkg-descr21
-rw-r--r--graphics/hpscan/pkg-plist3
15 files changed, 0 insertions, 1231 deletions
diff --git a/graphics/Makefile b/graphics/Makefile
index 2ce82175d641..3a273a6f131a 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -84,7 +84,6 @@
SUBDIR += hdf
SUBDIR += hobbes-icons-xpm
SUBDIR += hppsmtools
- SUBDIR += hpscan
SUBDIR += icod
SUBDIR += imagesort
SUBDIR += imanager
diff --git a/graphics/hpscan/Makefile b/graphics/hpscan/Makefile
deleted file mode 100644
index eb7c423a7211..000000000000
--- a/graphics/hpscan/Makefile
+++ /dev/null
@@ -1,30 +0,0 @@
-# New ports collection makefile for: hpscan
-# Date created: 12 January 1996
-# Whom: nate
-#
-# $FreeBSD$
-#
-
-PORTNAME= hpscan
-PORTVERSION= 1.0
-CATEGORIES= graphics
-MASTER_SITES= ${MASTER_SITE_LOCAL} \
- ftp://ftp.cogsci.ed.ac.uk/pub/richard/
-MASTER_SITE_SUBDIR= asami/LOCAL_PORTS
-DISTNAME= scanner
-
-MAINTAINER= jkh@FreeBSD.org
-
-BROKEN= "SCSI low-level interface has changed and this needs re-porting"
-
-LIB_DEPENDS= jpeg.9:${PORTSDIR}/graphics/jpeg
-
-NO_WRKSUBDIR= yes
-USE_X_PREFIX= yes
-USE_IMAKE= yes
-NO_INSTALL_MANPAGES= yes
-
-pre-configure:
- ${CP} -f ${FILESDIR}/Imakefile ${WRKSRC}
-
-.include <bsd.port.mk>
diff --git a/graphics/hpscan/distinfo b/graphics/hpscan/distinfo
deleted file mode 100644
index fdddd1208e9a..000000000000
--- a/graphics/hpscan/distinfo
+++ /dev/null
@@ -1 +0,0 @@
-MD5 (scanner.tar.gz) = 8d881074dbe5502b88ae209a96e62549
diff --git a/graphics/hpscan/files/Imakefile b/graphics/hpscan/files/Imakefile
deleted file mode 100644
index a1f49e6fe5c4..000000000000
--- a/graphics/hpscan/files/Imakefile
+++ /dev/null
@@ -1,20 +0,0 @@
-XCOMM
-XCOMM Imakefile for Richard Tobin's HP scanner utility,
-XCOMM written by Jörg Wunsch, 96/01/12.
-XCOMM
-
-#if OSMajorVersion < 3
- EXTRA_INCLUDES = -I/sys -I/usr/local/include
-#else
- EXTRA_INCLUDES = -I/usr/include/cam -I/sys -I/usr/local/include
-#endif
- EXTRA_DEFINES = -DJPEG
- DEPLIBS = XawClientDepLibs /usr/local/lib/libjpeg.a
-LOCAL_LIBRARIES = XawClientLibs MathLibrary -L/usr/local/lib -ljpeg
-
- SRCS = main.c scsi.c scanner.c scl.c gui.c colour.c Plain.c
- OBJS = main.o scsi.o scanner.o scl.o gui.o colour.o Plain.o
-
-ComplexProgramTarget(hpscan)
-InstallAppDefaults(HPscan)
-InstallAppDefaultsLong(HPscan-co,HPscan-color)
diff --git a/graphics/hpscan/files/patch-aa b/graphics/hpscan/files/patch-aa
deleted file mode 100644
index 35ccb3f9e0fb..000000000000
--- a/graphics/hpscan/files/patch-aa
+++ /dev/null
@@ -1,33 +0,0 @@
-*** Makefile.orig Fri Jun 3 05:52:36 1994
---- Makefile Fri Jan 12 10:31:44 1996
-***************
-*** 1,13 ****
-! INCLUDES= -I/usr/X386/include
-! LIBS= -L/usr/X386/lib -lXaw -lXt -lXmu -lX11 -lm
- OPT= -g
- CFLAGS= $(OPT) $(INCLUDES)
-! CC= gcc
-
- OBJS= main.o scsi.o scanner.o scl.o gui.o colour.o Plain.o
-
-! scan: $(OBJS)
- $(CC) -o scanner $(OBJS) $(LIBS)
-
-! tarfile:
-! tar zcvf macbeth:/graphics/software/ftp/pub/scanner.tar.gz *.[ch] Makefile README TODO
---- 1,15 ----
-! INCLUDES= -I/usr/X11R6/include -I/sys
-! LIBS= -L/usr/X11R6/lib -lXaw -lXt -lXmu -lX11 -lm
- OPT= -g
- CFLAGS= $(OPT) $(INCLUDES)
-! CC= cc
-
- OBJS= main.o scsi.o scanner.o scl.o gui.o colour.o Plain.o
-
-! all: scanner
-!
-! scanner: $(OBJS)
- $(CC) -o scanner $(OBJS) $(LIBS)
-
-! install:
-! install -c -s -m 555 -o bin -g bin scanner ${X11BASE}/bin
diff --git a/graphics/hpscan/files/patch-ab b/graphics/hpscan/files/patch-ab
deleted file mode 100644
index 9b56b399e0be..000000000000
--- a/graphics/hpscan/files/patch-ab
+++ /dev/null
@@ -1,177 +0,0 @@
-diff -u old/colour.c colour.c
---- old/colour.c Fri Jun 3 14:39:39 1994
-+++ colour.c Fri Jan 12 17:25:53 1996
-@@ -19,7 +19,7 @@
-
- static int allocate_colours(Colormap c);
-
--static unsigned long colours[6*6*6], greys[33], black, white;
-+static unsigned long *colours, greys[33], black, white;
-
- /*
- * Create a colourmap with 6 levels each of red, green and blue,
-@@ -27,12 +27,19 @@
- * enough space, otherwise create a new one.
- */
-
-+#define shift(x) \
-+ for(i = 31, m = 0x80000000L; (m & v->x##_mask) == 0; i--, m >>= 1) \
-+ ; \
-+ x##_shift = i;
-+
- Colormap create_colourmap(void)
- {
-- int r, g, b, n;
-+ int r, g, b, n, i, m;
- XColor colour;
- Colormap cmap;
--
-+ Visual *v;
-+ int red_shift, green_shift, blue_shift;
-+
- if(screendepth == 1)
- {
- black = BlackPixelOfScreen(screen);
-@@ -51,42 +58,85 @@
- XAllocColor(display, cmap, &colour);
- }
-
-- /* Allocate the colours */
-+ if(screendepth <= 8)
-+ {
-+ /* Allocate the colours */
-
-- n = 0;
-- for(r=0; r<256; r+=51)
-- for(g=0; g<256; g+=51)
-- for(b=0; b<256; b+=51)
-- {
-- colour.red = r * 256;
-- colour.green = g * 256;
-- colour.blue = b * 256;
-- if(XAllocColor(display, cmap, &colour) == 0)
-+ colours = (unsigned long *)malloc(6*6*6 * sizeof(unsigned long));
-+ if(colours == 0)
-+ {
-+ fprintf(stderr, "Out of memory allocating the colour table.\n");
-+ exit(1);
-+ }
-+ n=0;
-+ for(r=0; r<256; r+=51)
-+ for(g=0; g<256; g+=51)
-+ for(b=0; b<256; b+=51)
- {
-- fprintf(stderr, "using private colormap\n");
-- cmap = XCopyColormapAndFree(display, cmap);
-- XAllocColor(display, cmap, &colour);
-+ colour.red = r * 256;
-+ colour.green = g * 256;
-+ colour.blue = b * 256;
-+ if(XAllocColor(display, cmap, &colour) == 0)
-+ {
-+ fprintf(stderr, "using private colormap\n");
-+ cmap = XCopyColormapAndFree(display, cmap);
-+ XAllocColor(display, cmap, &colour);
-+ }
-+ colours[n++] = colour.pixel;
- }
-- colours[n++] = colour.pixel;
-- }
-
-- /* Allocate the greys */
-+ /* Allocate the greys */
-
-- for(n=0; n<33; n++)
-- {
-- colour.red = colour.green = colour.blue = n * 8 * 256 - (n == 32);
-- if(XAllocColor(display, cmap, &colour) == 0)
-+ for(n=0; n<33; n++)
- {
-- fprintf(stderr, "using private colormap\n");
-- cmap = XCopyColormapAndFree(display, cmap);
-- XAllocColor(display, cmap, &colour);
-+ colour.red = colour.green = colour.blue = n * 8 * 256 - (n == 32);
-+ if(XAllocColor(display, cmap, &colour) == 0)
-+ {
-+ fprintf(stderr, "using private colormap\n");
-+ cmap = XCopyColormapAndFree(display, cmap);
-+ XAllocColor(display, cmap, &colour);
-+ }
-+ greys[n] = colour.pixel;
- }
-- greys[n] = colour.pixel;
-- }
-
-- black = greys[0];
-- white = greys[32];
-+ black = greys[0];
-+ white = greys[32];
-+ }
-+ else /* > 8 bit, assume truecolor display */
-+ {
-+ /* Use a 5*5*5 truecolor map */
-+ colours = (unsigned long *)malloc(32768 * sizeof(unsigned long));
-+ if(colours == 0)
-+ {
-+ fprintf(stderr, "Out of memory allocating the colour table.\n");
-+ exit(1);
-+ }
-+
-+ v = DefaultVisualOfScreen(screen);
-+ shift(red);
-+ shift(green);
-+ shift(blue);
-+ n=0;
-+ for(r=0; r<32; r++)
-+ for(g=0; g<32; g++)
-+ for(b=0; b<32; b++)
-+ {
-+ /*
-+ * We assume the default colormap has a certain
-+ * format, so we can compute the pixel values
-+ * without asking the XServer (which would take a
-+ * tremendous amount of time for 32k colours).
-+ */
-+ colours[n++] =
-+ (r << (red_shift - 4)) |
-+ (g << (green_shift - 4)) |
-+ (b << (blue_shift - 4));
-+ }
-
-+ black = BlackPixelOfScreen(screen);
-+ white = WhitePixelOfScreen(screen);
-+ }
-+
- return cmap;
- }
-
-@@ -112,7 +162,7 @@
- pix_best = black;
- }
- }
-- else
-+ else if(screendepth <= 8)
- {
- int min = r < g ? (r < b ? r : b) : (g < b ? g : b);
- int max = r > g ? (r > b ? r : b) : (g > b ? g : b);
-@@ -131,6 +181,21 @@
- b_best = ((b + 25) / 51) * 51;
-
- pix_best = colours[(r_best/51)*36 + (g_best/51)*6 + (b_best/51)];
-+ }
-+ }
-+ else /* > 8 bit */
-+ {
-+ if(r == 255 && g == 255 && b == 255)
-+ pix_best = white;
-+ else if(r == 0 && g == 0 && b == 0)
-+ pix_best = black;
-+ else
-+ {
-+ r_best = ((r + 4) / 8) * 8;
-+ g_best = ((g + 4) / 8) * 8;
-+ b_best = ((b + 4) / 8) * 8;
-+
-+ pix_best = colours[(r_best/8)*1024 + (g_best/8)*32 + (b_best/8)];
- }
- }
diff --git a/graphics/hpscan/files/patch-ac b/graphics/hpscan/files/patch-ac
deleted file mode 100644
index 95e6c62e30da..000000000000
--- a/graphics/hpscan/files/patch-ac
+++ /dev/null
@@ -1,695 +0,0 @@
---- gui.c.orig Thu Jul 28 05:53:01 1994
-+++ gui.c Thu Sep 26 03:42:22 1996
-@@ -12,10 +12,17 @@
- #include <string.h>
- #include <math.h>
-
-+#ifdef JPEG
-+#include <jpeglib.h>
-+#include <setjmp.h>
-+typedef unsigned char uint8;
-+#endif
-+
- #include <X11/Xlib.h>
- #include <X11/StringDefs.h>
- #include <X11/Intrinsic.h>
- #include <X11/Shell.h>
-+#include <X11/Xaw/Simple.h>
- #include <X11/Xaw/Command.h>
- #include <X11/Xaw/Label.h>
- #include <X11/Xaw/Form.h>
-@@ -24,16 +31,24 @@
- #include <X11/Xaw/SimpleMenu.h>
- #include <X11/Xaw/SmeBSB.h>
- #include <X11/Xaw/SmeLine.h>
-+#include <X11/Xaw/Scrollbar.h>
- #include "Plain.h"
-
- #include "gui.h"
- #include "colour.h"
- #include "scl.h"
-
-+#include "hpscan.icon"
-+
- static Widget shell, form, controlform, canvas;
- static Widget previewb, zoomb, scanb, quitb;
- static Widget resolutionl, resolutionb, resolutionm, messagel;
- static Widget filenamel, filenamet;
-+static Widget intensitylabel, intensityscr, intensityval;
-+static Widget contrastlabel, contrastscr, contrastval;
-+#ifdef JPEG
-+static Widget qualitylabel, qualityscr, qualityval;
-+#endif
-
- static XtAppContext app;
- Display *display;
-@@ -43,18 +58,57 @@
- int screendepth;
- static GC image_gc;
- static Colormap cmap;
-+static Atom delwin; /* the delete window atom */
-
--static int canvas_width = 300;
-+static int canvas_width;
- static int canvas_height;
-
- static int resolution_list[] = {75, 100, 150, 200, 300, 400, 600};
-
-+static int min_intensity, max_intensity, min_contrast, max_contrast;
-+static int intensity, contrast;
-+
- static char *fallback[] = {
- "*.canvas.translations: #override\\n\
- <Key>: input() \\n\
- <Motion>: input() \\n\
- <BtnDown>: input() \\n\
-- <BtnUp>: input() \\n",
-+ <BtnUp>: input() ",
-+ "*.preview.label: Preview",
-+ "*.zoom.label: Zoom",
-+ "*.scan.label: Scan",
-+ "*.quit.label: Quit",
-+ "*.resolution.label: Resolution",
-+ "*.resolutionVal.borderWidth: 0",
-+ "*.message.horizDistance: 40",
-+ "*.message.borderWidth: 0",
-+ "*.filenamelabel.label: Filename:",
-+ "*.filenamelabel.borderWidth: 0",
-+ "*.filename.width: 210",
-+ "*.canvas.width: 300",
-+ "*.intensityLabel.label: Intensity:",
-+ "*.intensityLabel.borderWidth: 0",
-+ "*.intensityVal.borderWidth: 0",
-+ "*.intensityScrollbar.width: 120",
-+ "*.intensityScrollbar.height: 15",
-+ "*.intensityScrollbar.minimumThumb: 8",
-+ "*.intensityScrollbar.topOfThumb: 0.5",
-+ "*.contrastLabel.label: Contrast: ",
-+ "*.contrastLabel.borderWidth: 0",
-+ "*.contrastVal.borderWidth: 0",
-+ "*.contrastScrollbar.width: 120",
-+ "*.contrastScrollbar.height: 15",
-+ "*.contrastScrollbar.minimumThumb: 8",
-+ "*.contrastScrollbar.topOfThumb: 0.5",
-+#ifdef JPEG
-+ "*.qualityLabel.label: Quality: ",
-+ "*.qualityLabel.borderWidth: 0",
-+ "*.qualityVal.borderWidth: 0",
-+ "*.qualityScrollbar.width: 120",
-+ "*.qualityScrollbar.height: 15",
-+ "*.qualityScrollbar.minimumThumb: 8",
-+ "*.qualityScrollbar.topOfThumb: 0.75",
-+#endif
- (char *)0
- };
-
-@@ -71,8 +125,16 @@
- static void scan(Widget w, XtPointer client, XtPointer call);
- static void quit(Widget w, XtPointer client, XtPointer call);
- static void resolution(Widget w, XtPointer client, XtPointer call);
-+static void movethumb(Widget w, XtPointer client, XtPointer call);
-+static void scrollthumb(Widget w, XtPointer client, XtPointer call);
-+#ifdef JPEG
-+static int writejpg(FILE *outfile, int quality, int height, int width,
-+ uint8 *src);
-+static int quality;
-+#endif
-
--static struct raw_image *do_scan(int l, int t, int w, int h, int res,int type);
-+static struct raw_image *do_scan(int l, int t, int w, int h, int res,
-+ int intensity, int contrast, int type);
- static XImage *make_image(struct raw_image *raw);
- static int gamma_correct(int input);
- static void find_box(struct raw_image *raw);
-@@ -82,6 +144,14 @@
- static void adjust_box(int edge, int x, int y);
- static void set_message(char *message);
-
-+static void actionHook(Widget w, XtPointer cld, String name, XEvent *xev,
-+ String *params, Cardinal *num_params);
-+static void GlobalProtoHandler(Widget w, XEvent *xev, String *p, Cardinal *n);
-+
-+static XtActionsRec actions[] = { {"GlobalProtoHandler", GlobalProtoHandler}};
-+
-+#define TransTableMessage "<Message>WM_PROTOCOLS : GlobalProtoHandler()"
-+
- static int scanner_to_canvas_x(int x);
- static int scanner_to_canvas_y(int y);
- static int canvas_to_scanner_x(int x);
-@@ -118,19 +188,39 @@
- {
- Widget w;
- Widget colourmap_widgets[2];
-- int i;
-+ int i, lo, hi;
- char buf[20];
-+ XtActionHookId ahid;
-+ XWMHints *wmhints;
-
- scanner_fd = fd;
-
- shell =
-- XtVaAppInitialize(&app, "Scanner", 0, 0, &argc, argv, fallback,
-+ XtVaAppInitialize(&app, "HPscan", 0, 0, &argc, argv, fallback,
- (String)0);
-
-+ ahid = XtAppAddActionHook(app, actionHook, NULL);
-+
- display = XtDisplay(shell);
- screen = XtScreen(shell);
-+ screendepth = DefaultDepthOfScreen(screen);
- root = RootWindowOfScreen(screen);
--
-+
-+ /* Get various values from the scanner for later processing. */
-+ GetMinIntensity(scanner_fd, &min_intensity);
-+ GetMaxIntensity(scanner_fd, &max_intensity);
-+ intensity = (max_intensity - min_intensity) / 2 + min_intensity;
-+ GetMinContrast(scanner_fd, &min_contrast);
-+ GetMaxContrast(scanner_fd, &max_contrast);
-+ contrast = (max_contrast - min_contrast) / 2 + min_contrast;
-+ GetMaxXExtentDecipoints(scanner_fd, &scanner_width);
-+ GetMaxYExtentDecipoints(scanner_fd, &scanner_height);
-+
-+#ifdef JPEG
-+ /* Set initial JPEG quality */
-+ quality = 75;
-+#endif
-+
- form =
- XtVaCreateManagedWidget("form", formWidgetClass, shell,
- (String)0);
-@@ -143,14 +233,12 @@
-
- previewb =
- XtVaCreateManagedWidget("preview", commandWidgetClass, controlform,
-- XtNlabel, "Preview",
- (String)0);
- XtAddCallback(previewb, XtNcallback, preview, (XtPointer)False);
-
- zoomb =
- XtVaCreateManagedWidget("zoom", commandWidgetClass, controlform,
- XtNfromHoriz, previewb,
-- XtNlabel, "Zoom",
- XtNsensitive, False,
- (String)0);
- XtAddCallback(zoomb, XtNcallback, preview, (XtPointer)True);
-@@ -158,7 +246,6 @@
- scanb =
- XtVaCreateManagedWidget("scan", commandWidgetClass, controlform,
- XtNfromHoriz, zoomb,
-- XtNlabel, "Scan",
- XtNsensitive, False,
- (String)0);
- XtAddCallback(scanb, XtNcallback, scan, (XtPointer)0);
-@@ -166,7 +253,6 @@
- quitb =
- XtVaCreateManagedWidget("quit", commandWidgetClass, controlform,
- XtNfromHoriz, scanb,
-- XtNlabel, "Quit",
- (String)0);
- XtAddCallback(quitb, XtNcallback, quit, (XtPointer)0);
-
-@@ -175,7 +261,6 @@
- controlform,
- XtNfromVert, previewb,
- XtNmenuName, "resolutionmenu",
-- XtNlabel, "Resolution",
- (String)0);
- resolutionm =
- XtVaCreatePopupShell("resolutionmenu", simpleMenuWidgetClass,
-@@ -196,7 +281,7 @@
-
- sprintf(buf, "%d dpi", final_resolution);
- resolutionl =
-- XtVaCreateManagedWidget("resolution", labelWidgetClass, controlform,
-+ XtVaCreateManagedWidget("resolutionVal", labelWidgetClass, controlform,
- XtNfromHoriz, resolutionb,
- XtNfromVert, previewb,
- XtNlabel, buf,
-@@ -205,46 +290,130 @@
- messagel =
- XtVaCreateManagedWidget("message", labelWidgetClass, controlform,
- XtNfromHoriz, resolutionl,
-- XtNhorizDistance, 40,
- XtNfromVert, previewb,
-- /* Scan failed fits in the space */
-- XtNlabel, " ",
-+ /* Out of memory! fits in the space */
-+ XtNlabel, " ",
- (String)0);
-
- filenamel =
- XtVaCreateManagedWidget("filenamelabel", labelWidgetClass, controlform,
- XtNfromVert, resolutionb,
-- XtNlabel, "Filename:",
- (String)0);
-
- filenamet =
- XtVaCreateManagedWidget("filename", asciiTextWidgetClass, controlform,
- XtNfromHoriz, filenamel,
- XtNfromVert, resolutionb,
-- XtNwidth, canvas_width - 90, /* XXX */
-+#ifdef JPEG
-+ XtNstring, "image.jpg",
-+#else
- XtNstring, "image.ppm",
-+#endif
- XtNeditType, XawtextEdit,
- (String)0);
-
-- /* Create the preview area */
-+ intensitylabel =
-+ XtVaCreateManagedWidget("intensityLabel", labelWidgetClass,
-+ controlform,
-+ XtNfromVert, filenamel,
-+ (String)0);
-
-- GetMaxXExtentDecipoints(scanner_fd, &scanner_width);
-- GetMaxYExtentDecipoints(scanner_fd, &scanner_height);
-+ sprintf(buf, "%5d", intensity);
-+ intensityval =
-+ XtVaCreateManagedWidget("intensityVal", labelWidgetClass,
-+ controlform,
-+ XtNfromHoriz, intensitylabel,
-+ XtNfromVert, filenamel,
-+ XtNlabel, buf,
-+ (String)0);
-
-- canvas_height = canvas_width * ((double)scanner_height / scanner_width);
-+ intensityscr =
-+ XtVaCreateManagedWidget("intensityScrollbar", scrollbarWidgetClass,
-+ controlform,
-+ XtNfromHoriz, intensityval,
-+ XtNfromVert, filenamel,
-+ XtNorientation, XtorientHorizontal,
-+ (String)0);
-+
-+ XtAddCallback(intensityscr, "jumpProc", movethumb, (XtPointer)&intensity);
-+ XtAddCallback(intensityscr, "scrollProc", scrollthumb, (XtPointer)&intensity);
-+
-+ contrastlabel =
-+ XtVaCreateManagedWidget("contrastLabel", labelWidgetClass,
-+ controlform,
-+ XtNfromVert, intensitylabel,
-+ (String)0);
-+
-+ sprintf(buf, "%5d", contrast);
-+ contrastval =
-+ XtVaCreateManagedWidget("contrastVal", labelWidgetClass,
-+ controlform,
-+ XtNfromHoriz, contrastlabel,
-+ XtNfromVert, intensitylabel,
-+ XtNlabel, buf,
-+ (String)0);
-+
-+ contrastscr =
-+ XtVaCreateManagedWidget("contrastScrollbar", scrollbarWidgetClass,
-+ controlform,
-+ XtNfromHoriz, contrastval,
-+ XtNfromVert, intensitylabel,
-+ XtNorientation, XtorientHorizontal,
-+ (String)0);
-+
-+ XtAddCallback(contrastscr, "jumpProc", movethumb, (XtPointer)&contrast);
-+ XtAddCallback(contrastscr, "scrollProc", scrollthumb, (XtPointer)&contrast);
-+
-+#ifdef JPEG
-+ qualitylabel =
-+ XtVaCreateManagedWidget("qualityLabel", labelWidgetClass,
-+ controlform,
-+ XtNfromVert, contrastlabel,
-+ (String)0);
-+
-+ sprintf(buf, "%5d", quality);
-+ qualityval =
-+ XtVaCreateManagedWidget("qualityVal", labelWidgetClass,
-+ controlform,
-+ XtNfromHoriz, qualitylabel,
-+ XtNfromVert, contrastlabel,
-+ XtNlabel, buf,
-+ (String)0);
-+
-+ qualityscr =
-+ XtVaCreateManagedWidget("qualityScrollbar", scrollbarWidgetClass,
-+ controlform,
-+ XtNfromHoriz, qualityval,
-+ XtNfromVert, contrastlabel,
-+ XtNorientation, XtorientHorizontal,
-+ (String)0);
-+
-+ XtAddCallback(qualityscr, "jumpProc", movethumb, (XtPointer)&quality);
-+ XtAddCallback(qualityscr, "scrollProc", scrollthumb, (XtPointer)&quality);
-+#endif /* JPEG */
-+
-+ /* Create the preview area */
-
- canvas =
- XtVaCreateManagedWidget("canvas", plainWidgetClass, form,
-- XtNwidth, canvas_width,
-- XtNheight, canvas_height,
- XtNfromVert, controlform,
-+ XtNheight, 1,
- (String)0);
-+ XtVaGetValues(canvas, XtNwidth, &canvas_width, (String)0);
-+
-+ /*
-+ * The width value is settable via a resource, the height value is
-+ * derived from it according to the scanner's aspect ratio.
-+ */
-+ canvas_height = canvas_width * ((double)scanner_height / scanner_width);
-+ XtVaSetValues(canvas, XtNheight, canvas_height, (String)0);
-+
- XtAddCallback(canvas, "exposeCallback", redraw, (XtPointer)0);
- XtAddCallback(canvas, "inputCallback", input, (XtPointer)0);
- XtVaGetValues(canvas, XtNvisual, &visual, (String)0);
-
- XtRealizeWidget(shell);
--
-+
- /* Set up colour map etc */
-
- colourmap_widgets[0] = canvas;
-@@ -258,6 +427,25 @@
- XSetForeground(display, image_gc, colour_match(0, 0, 0, 0, 0, 0));
- XSetBackground(display, image_gc, colour_match(255, 255, 255, 0, 0, 0));
-
-+ /* Make the `delete' window manager function happy. */
-+ delwin = XInternAtom(display, "WM_DELETE_WINDOW", False);
-+ XSetWMProtocols(display, XtWindow(shell), &delwin, 1);
-+ XtAppAddActions(app, actions, 1);
-+ XtOverrideTranslations(shell, XtParseTranslationTable(TransTableMessage));
-+
-+ /* Now finally, tell the WM about our icon wishes. */
-+ if((wmhints = XAllocWMHints()) == NULL)
-+ XtError("Out of memory.");
-+ wmhints->flags = IconPixmapHint;
-+ wmhints->icon_pixmap = XCreateBitmapFromData(display, XtWindow(shell),
-+ hpscan_bits,
-+ hpscan_width, hpscan_height);
-+ XmbSetWMProperties(display, XtWindow(shell),
-+ "HPscan", "HPscan",
-+ argv, argc,
-+ NULL, wmhints, NULL);
-+ XFree(wmhints);
-+
- XtAppMainLoop(app);
- }
-
-@@ -419,7 +607,13 @@
- prev_resolution = (canvas_width * 720) / prev_width;
-
- raw = do_scan(prev_left, prev_top, prev_width, prev_height,
-- prev_resolution, 5);
-+ prev_resolution, intensity, contrast, 5);
-+ if (raw == 0)
-+ {
-+ set_message("Out of memory!");
-+ return;
-+ }
-+
- prev_pixwidth = raw->width;
- prev_pixheight = raw->height;
-
-@@ -440,6 +634,8 @@
- XtSetSensitive(zoomb, image != 0);
- XtSetSensitive(scanb, image != 0);
-
-+ free(raw->data);
-+
- redraw(canvas, 0, 0);
- }
-
-@@ -455,28 +651,35 @@
-
- XtVaGetValues(filenamet, XtNstring, &filename, (String)0);
-
-- raw =
-- do_scan(box_left, box_top, box_right-box_left+1, box_bottom-box_top+1,
-- final_resolution, 5);
--
-- /* Write it out as a ppm file (nice and easy!) */
-+ raw = do_scan(box_left, box_top, box_right - box_left + 1,
-+ box_bottom-box_top + 1, final_resolution,
-+ intensity, contrast, 5);
-
- if(raw)
- {
- f = fopen(filename, "w");
-- if(!f)
-+ if (!f)
- {
- XBell(display, 0);
- fprintf(stderr, "can't open %s for writing\n", filename);
- return;
- }
-
-+#ifdef JPEG
-+ set_message("JPEGing...");
-+ writejpg(f, quality, raw->height, raw->width, raw->data);
-+#else
-+ set_message("PPMing...");
-+ /* Write it out as a ppm file (nice and easy!) */
- fprintf(f, "P6\n%d %d\n255\n", raw->width, raw->height);
- fwrite(raw->data, 1, raw->linebytes * raw->height, f);
--
-+#endif
- fclose(f);
-+ free(raw->data);
-+ set_message("Done!");
- }
--
-+ else
-+ set_message("Out of memory!");
- }
-
- /*
-@@ -502,17 +705,85 @@
- XtVaSetValues(resolutionl, XtNlabel, buf, (String)0);
- }
-
-+/*
-+ * Move the thumb of a scrollbar, update the according value as we go.
-+ */
-+
-+static void movethumb(Widget w, XtPointer client, XtPointer call)
-+{
-+ char buf[20];
-+ float percent = *(float *)call;
-+ int *val_p = (int *)client;
-+
-+ if (percent > 1.0)
-+ percent = 1.0;
-+ else if (percent < 0.0)
-+ percent = 0.0;
-+
-+ if (val_p == &intensity) {
-+ *val_p = (max_intensity - min_intensity) * percent + min_intensity;
-+ sprintf(buf, "%5d", *val_p);
-+ XtVaSetValues(intensityval, XtNlabel, buf, (String)0);
-+ } else if (val_p == &contrast) {
-+ *val_p = (max_contrast - min_contrast) * percent + min_contrast;
-+ sprintf(buf, "%5d", *val_p);
-+ XtVaSetValues(contrastval, XtNlabel, buf, (String)0);
-+#ifdef JPEG
-+ } else if (val_p == &quality) {
-+ *val_p = (int)(100 * percent);
-+ sprintf(buf, "%5d", *val_p);
-+ XtVaSetValues(qualityval, XtNlabel, buf, (String)0);
-+#endif
-+ } else
-+ XtAppError(app, "unknown client in movethumb()");
-+}
-+
-+/*
-+ * Almost the same as above, but called by the scrollProc callback.
-+ */
-+
-+static void scrollthumb(Widget w, XtPointer client, XtPointer call)
-+{
-+ char buf[20];
-+ int position = (int)call;
-+ int *val_p = (int *)client;
-+ float shown, topofthumb;
-+
-+ XtVaGetValues(w,
-+ XtNshown, &shown,
-+ XtNtopOfThumb, &topofthumb,
-+ (String)0);
-+ topofthumb -= 0.0001 * (float)position;
-+ if (topofthumb < 0.0) topofthumb = 0.0;
-+ else if (topofthumb > 1.0) topofthumb = 1.0;
-+ XawScrollbarSetThumb(w, topofthumb, shown);
-+
-+ if (val_p == &intensity) {
-+ *val_p = (max_intensity - min_intensity) * topofthumb + min_intensity;
-+ sprintf(buf, "%5d", *val_p);
-+ XtVaSetValues(intensityval,
-+ XtNlabel, buf,
-+ (String)0);
-+ } else if (val_p = &contrast) {
-+ *val_p = (max_contrast - min_contrast) * topofthumb + min_contrast;
-+ sprintf(buf, "%5d", *val_p);
-+ XtVaSetValues(contrastval,
-+ XtNlabel, buf,
-+ (String)0);
-+ } else
-+ XtAppError(app, "unknown client in movethumb()");
-+}
-+
- /*
- * Perform a scan, returning an XImage (return struct is statically allocated).
- */
-
--static struct raw_image *do_scan(int l, int t, int w, int h, int res, int type)
-+static struct raw_image *
-+do_scan(int l, int t, int w, int h, int res, int intensity,
-+ int contrast, int type)
- {
- static struct raw_image raw;
-
-- if(raw.data)
-- free(raw.data);
--
- SetXPositionDecipoints(scanner_fd, l);
- SetYPositionDecipoints(scanner_fd, t);
- SetXExtentDecipoints(scanner_fd, w);
-@@ -524,14 +795,17 @@
- SetXResolution(scanner_fd, res);
- SetYResolution(scanner_fd, res);
-
-+ SetIntensity(scanner_fd, intensity);
-+ SetContrast(scanner_fd, contrast);
-+
- GetPixelsPerLine(scanner_fd, &raw.width);
- GetLinesPerScan(scanner_fd, &raw.height);
- GetBytesPerLine(scanner_fd, &raw.linebytes);
- raw.type = type;
-- raw.data = malloc(raw.height * raw.linebytes);
-+ raw.data = malloc(raw.height * raw.width * 4);
- if(!raw.data)
- {
-- fprintf(stderr, "Can't malloc %d bytes\n", raw.height * raw.linebytes);
-+ fprintf(stderr, "Can't malloc %d bytes\n", raw.height * raw.width * 4);
- return 0;
- }
-
-@@ -555,26 +829,44 @@
- XImage *im;
- unsigned char *newdata, *p;
- int x, y;
-+ int pad;
-
-+ switch(screendepth)
-+ {
-+ case 1:
-+ case 8:
-+ pad = 8; break;
-+ case 15:
-+ case 16:
-+ pad = 16; break;
-+ case 24:
-+ case 32:
-+ pad = 32; break;
-+ default:
-+ fprintf(stderr, "Don't know how to handle depth %d\n", screendepth);
-+ return 0;
-+ }
-+
- if(!raw)
- return 0;
-
- switch(raw->type)
- {
- case 5: /* 24 bit colour */
-- newdata = malloc(raw->width * raw->height);
-+ newdata = malloc(raw->width * raw->height * (pad / 8));
- if(!newdata)
- {
- fprintf(stderr, "Can't malloc %d bytes\n", raw->width*raw->height);
- return 0;
- }
-- im = XCreateImage(display, visual, 8, ZPixmap, 0, newdata,
-- raw->width, raw->height, 8, raw->width);
-+ im = XCreateImage(display, visual, screendepth, ZPixmap, 0, newdata,
-+ raw->width, raw->height, pad,
-+ raw->width * (pad / 8));
-
- /* Convert to fixed colour map using simple error propagation */
-
- p = raw->data;
-- for(y=0; y<raw->height; y++)
-+ for (y = 0; y < raw->height; y++)
- {
- int r, g, b, r_err = 0, g_err = 0, b_err = 0;
-
-@@ -646,7 +938,7 @@
-
- for(y=MARGIN; y<raw->height-MARGIN; y++)
- {
-- p = raw->data + (y * raw->width + MARGIN) * 3;
-+ p = raw->data + y * raw->width + MARGIN * 3;
-
- for(x=MARGIN; x<raw->width-MARGIN; x++)
- {
-@@ -741,6 +1033,24 @@
- XFlush(display);
- }
-
-+
-+/*
-+ * Window manager legacy.
-+ */
-+
-+static void
-+actionHook(Widget w, XtPointer cld, String name, XEvent *xev,
-+ String *params, Cardinal *num_params)
-+{
-+}
-+
-+static void GlobalProtoHandler(Widget w, XEvent *xev, String *p, Cardinal *n)
-+{
-+ if (xev->xclient.data.l[0] == delwin) {
-+ if (w == shell) exit(EXIT_SUCCESS); else XtPopdown(w);
-+ }
-+}
-+
- /*
- * Functions for converting between a pixel position in the canvas
- * and a decipoint position on the scanner.
-@@ -766,3 +1076,35 @@
- return prev_top + (y * 720 + prev_resolution/2) / prev_resolution;
- }
-
-+#ifdef JPEG
-+static int
-+writejpg(FILE *outfile, int quality, int height, int width, uint8 *src)
-+{
-+ char *copybuf = NULL;
-+ struct jpeg_compress_struct cinfo;
-+ struct jpeg_error_mgr jerr;
-+ JSAMPROW row_pointer[1];
-+ int i;
-+ uint8 *p;
-+
-+ cinfo.err = jpeg_std_error(&jerr);
-+ jpeg_create_compress(&cinfo);
-+ jpeg_stdio_dest(&cinfo, outfile);
-+
-+ cinfo.image_width = width;
-+ cinfo.image_height = height;
-+ cinfo.input_components = 3;
-+ cinfo.in_color_space = JCS_RGB;
-+ jpeg_set_defaults(&cinfo);
-+ jpeg_set_quality(&cinfo, quality, TRUE);
-+
-+ jpeg_start_compress(&cinfo, TRUE);
-+ while (cinfo.next_scanline < cinfo.image_height) {
-+ row_pointer[0] = src;
-+ (void) jpeg_write_scanlines(&cinfo, row_pointer, 1);
-+ src += (width * 3);
-+ }
-+ jpeg_finish_compress(&cinfo);
-+ jpeg_destroy_compress(&cinfo);
-+}
-+#endif
diff --git a/graphics/hpscan/files/patch-ad b/graphics/hpscan/files/patch-ad
deleted file mode 100644
index 69a9d4be7687..000000000000
--- a/graphics/hpscan/files/patch-ad
+++ /dev/null
@@ -1,15 +0,0 @@
---- scsi.h.orig Sun Oct 11 21:30:07 1998
-+++ scsi.h Sun Oct 11 21:32:11 1998
-@@ -6,8 +6,8 @@
- typedef struct scsi_sense_data *ScsiSense;
- typedef struct scsi_inquiry_data *ScsiInquiry;
-
--ScsiStatus scsi_test_unit_ready(int fd, ScsiSense *sense);
--ScsiStatus scsi_inquiry(int fd, ScsiSense *sense, ScsiInquiry *inquiry);
--ScsiStatus scsi_send(int fd, ScsiSense *sense, u_char *data, int *len);
--ScsiStatus scsi_receive(int fd, ScsiSense *sense, u_char *data, int *len);
-+ScsiStatus Scsi_test_unit_ready(int fd, ScsiSense *sense);
-+ScsiStatus Scsi_inquiry(int fd, ScsiSense *sense, ScsiInquiry *inquiry);
-+ScsiStatus Scsi_send(int fd, ScsiSense *sense, u_char *data, int *len);
-+ScsiStatus Scsi_receive(int fd, ScsiSense *sense, u_char *data, int *len);
-
diff --git a/graphics/hpscan/files/patch-ae b/graphics/hpscan/files/patch-ae
deleted file mode 100644
index f3a14bcf0699..000000000000
--- a/graphics/hpscan/files/patch-ae
+++ /dev/null
@@ -1,54 +0,0 @@
-diff -u -N ../old/colour.c ./colour.c
---- ../old/colour.c Wed Mar 6 13:25:47 1996
-+++ ./colour.c Thu Mar 7 16:41:36 1996
-@@ -149,6 +149,10 @@
- int r_best, g_best, b_best;
- unsigned long pix_best;
-
-+ if (r > 255) r = 255;
-+ if (g > 255) g = 255;
-+ if (b > 255) b = 255;
-+
- if(screendepth == 1)
- {
- if(r+g+b >= 3*128)
-@@ -186,9 +190,15 @@
- else /* > 8 bit */
- {
- if(r == 255 && g == 255 && b == 255)
-+ {
- pix_best = white;
-+ r_best = g_best = b_best = 255;
-+ }
- else if(r == 0 && g == 0 && b == 0)
-+ {
- pix_best = black;
-+ r_best = g_best = b_best = 0;
-+ }
- else
- {
- r_best = ((r + 4) / 8) * 8;
---- ../old/hpscan.icon Thu Jan 1 01:00:00 1970
-+++ ./hpscan.icon Thu Mar 7 23:22:09 1996
-@@ -0,0 +1,21 @@
-+#define hpscan_width 50
-+#define hpscan_height 30
-+static unsigned char hpscan_bits[] = {
-+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x54, 0x55, 0x55, 0x55,
-+ 0x55, 0x01, 0x6a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x64, 0x55, 0x55,
-+ 0x55, 0x55, 0x55, 0x01, 0x62, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x34,
-+ 0x55, 0x55, 0x55, 0x55, 0x55, 0x01, 0xb2, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
-+ 0x00, 0x30, 0x55, 0x55, 0x55, 0x55, 0x55, 0x01, 0x32, 0x20, 0x80, 0xaa,
-+ 0xaa, 0xaa, 0x00, 0x18, 0x00, 0x00, 0x55, 0x55, 0x55, 0x01, 0xfa, 0x87,
-+ 0x3f, 0xaa, 0xaa, 0xaa, 0x00, 0xf8, 0x8f, 0x7f, 0x54, 0x55, 0x55, 0x01,
-+ 0x18, 0x8c, 0x61, 0xaa, 0xaa, 0xaa, 0x00, 0x0c, 0x86, 0x61, 0x54, 0x55,
-+ 0x55, 0x01, 0x0c, 0xc6, 0x30, 0xaa, 0xaa, 0xaa, 0x00, 0x0c, 0xc6, 0x30,
-+ 0x01, 0x00, 0x00, 0x00, 0x0c, 0xc6, 0x30, 0x00, 0x00, 0x00, 0x00, 0x06,
-+ 0xc3, 0x30, 0xfc, 0xff, 0xff, 0x01, 0x06, 0x63, 0x18, 0xfe, 0xff, 0xff,
-+ 0x01, 0x06, 0xe3, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x06, 0xe3, 0x0f, 0x03,
-+ 0x00, 0x00, 0x00, 0x00, 0x60, 0x40, 0x03, 0xef, 0xf9, 0x00, 0xaa, 0x32,
-+ 0x2a, 0x9f, 0xef, 0xfb, 0x01, 0x54, 0x35, 0x55, 0xbe, 0x01, 0x9b, 0x01,
-+ 0xaa, 0xb2, 0x2a, 0xb0, 0xe1, 0x9b, 0x01, 0x54, 0x31, 0x55, 0xb0, 0xe1,
-+ 0x9b, 0x01, 0xaa, 0x9a, 0x2a, 0xb0, 0x61, 0x9b, 0x01, 0x54, 0x59, 0x95,
-+ 0x9f, 0xef, 0x9b, 0x01, 0xaa, 0x9a, 0xaa, 0x1f, 0xef, 0x9b, 0x01, 0x00,
-+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
diff --git a/graphics/hpscan/files/patch-af b/graphics/hpscan/files/patch-af
deleted file mode 100644
index 9af351349a89..000000000000
--- a/graphics/hpscan/files/patch-af
+++ /dev/null
@@ -1,58 +0,0 @@
---- scsi.c.orig Fri Jun 3 07:26:15 1994
-+++ scsi.c Sun Oct 11 21:44:37 1998
-@@ -31,19 +31,23 @@
- return req->status;
- }
-
--ScsiStatus scsi_test_unit_ready(int fd, ScsiSense *sense)
-+ScsiStatus Scsi_test_unit_ready(int fd, ScsiSense *sense)
- {
- static scsireq_t req;
- struct scsi_test_unit_ready *cmd = (struct scsi_test_unit_ready *)&req.cmd;
-
-+#if __FreeBSD__ < 3
- cmd->op_code= TEST_UNIT_READY;
-+#else
-+ cmd->opcode = TEST_UNIT_READY;
-+#endif
- req.cmdlen = sizeof(*cmd);
-
- return scsi_do_command(fd, &req, sense);
- }
-
-
--ScsiStatus scsi_inquiry(int fd, ScsiSense *sense, ScsiInquiry *inquiry)
-+ScsiStatus Scsi_inquiry(int fd, ScsiSense *sense, ScsiInquiry *inquiry)
- {
- static scsireq_t req;
- struct scsi_inquiry *cmd = (struct scsi_inquiry *)&req.cmd;
-@@ -51,7 +55,11 @@
-
- *inquiry = &buf;
-
-+#if __FreeBSD__ < 3
- cmd->op_code = INQUIRY;
-+#else
-+ cmd->opcode = INQUIRY;
-+#endif
- cmd->length = sizeof(buf);
- req.cmdlen = sizeof(*cmd);
- req.databuf = (u_char *)&buf;
-@@ -71,7 +79,7 @@
- u_char unused;
- };
-
--ScsiStatus scsi_send(int fd, ScsiSense *sense, u_char *data, int *len)
-+ScsiStatus Scsi_send(int fd, ScsiSense *sense, u_char *data, int *len)
- {
- static scsireq_t req;
- struct scsi_send_receive *cmd = (struct scsi_send_receive *)&req.cmd;
-@@ -96,7 +104,7 @@
- return status;
- }
-
--ScsiStatus scsi_receive(int fd, ScsiSense *sense, u_char *data, int *len)
-+ScsiStatus Scsi_receive(int fd, ScsiSense *sense, u_char *data, int *len)
- {
- static scsireq_t req;
- struct scsi_send_receive *cmd = (struct scsi_send_receive *)&req.cmd;
diff --git a/graphics/hpscan/files/patch-ag b/graphics/hpscan/files/patch-ag
deleted file mode 100644
index 7184307410da..000000000000
--- a/graphics/hpscan/files/patch-ag
+++ /dev/null
@@ -1,102 +0,0 @@
---- HPscan-co.ad.orig Thu Sep 26 00:48:37 1996
-+++ HPscan-co.ad Thu Sep 26 00:49:48 1996
-@@ -0,0 +1,54 @@
-+HPscan*canvas.translations: #override\n\
-+ <Key>: input() \n\
-+ <Motion>: input() \n\
-+ <BtnDown>: input() \n\
-+ <BtnUp>: input()
-+HPscan*preview.label: Preview
-+HPscan*zoom.label: Zoom
-+HPscan*scan.label: Scan
-+HPscan*quit.label: Quit
-+HPscan*resolution.label: Resolution
-+HPscan*resolutionVal.borderWidth: 0
-+HPscan*message.horizDistance: 40
-+HPscan*message.borderWidth: 0
-+HPscan*filenamelabel.label: Filename:
-+HPscan*filenamelabel.borderWidth: 0
-+! Should be canvas.width - 90
-+HPscan*filename.width: 210
-+HPscan*canvas.width: 300
-+
-+HPscan*intensityLabel.label: Intensity:
-+HPscan*intensityLabel.borderWidth: 0
-+HPscan*intensityVal.borderWidth: 0
-+HPscan*intensityScrollbar.width: 120
-+HPscan*intensityScrollbar.height: 15
-+HPscan*intensityScrollbar.minimumThumb: 8
-+HPscan*intensityScrollbar.topOfThumb: 0.5
-+
-+HPscan*contrastLabel.label: Contrast:
-+HPscan*contrastLabel.borderWidth: 0
-+HPscan*contrastVal.borderWidth: 0
-+HPscan*contrastScrollbar.width: 120
-+HPscan*contrastScrollbar.height: 15
-+HPscan*contrastScrollbar.minimumThumb: 8
-+HPscan*contrastScrollbar.topOfThumb: 0.5
-+
-+HPscan*qualityLabel.label: Quality:
-+HPscan*qualityLabel.borderWidth: 0
-+HPscan*qualityVal.borderWidth: 0
-+HPscan*qualityScrollbar.width: 120
-+HPscan*qualityScrollbar.height: 15
-+HPscan*qualityScrollbar.minimumThumb: 8
-+HPscan*qualityScrollbar.topOfThumb: 0.75
-+
-+! some color stuff
-+HPscan*form.background: cornsilk
-+HPscan*canvas.background: gainsboro
-+HPscan*controlform.background: light cyan
-+HPscan*controlform*Label.background: light cyan
-+HPscan*resolution*background: lavender
-+HPscan*Command.background: navajowhite
-+HPscan*quit.background: red
-+HPscan*quit.foreground: yellow
-+HPscan*Scrollbar.background: misty rose
-+HPscan*filename*background: misty rose
---- HPscan.ad.orig Thu Sep 26 00:48:37 1996
-+++ HPscan.ad Thu Sep 26 00:49:55 1996
-@@ -0,0 +1,42 @@
-+HPscan*canvas.translations: #override\n\
-+ <Key>: input() \n\
-+ <Motion>: input() \n\
-+ <BtnDown>: input() \n\
-+ <BtnUp>: input()
-+HPscan*preview.label: Preview
-+HPscan*zoom.label: Zoom
-+HPscan*scan.label: Scan
-+HPscan*quit.label: Quit
-+HPscan*resolution.label: Resolution
-+HPscan*resolutionVal.borderWidth: 0
-+HPscan*message.horizDistance: 40
-+HPscan*message.borderWidth: 0
-+HPscan*filenamelabel.label: Filename:
-+HPscan*filenamelabel.borderWidth: 0
-+! Should be canvas.width - 90
-+HPscan*filename.width: 210
-+HPscan*canvas.width: 300
-+
-+HPscan*intensityLabel.label: Intensity:
-+HPscan*intensityLabel.borderWidth: 0
-+HPscan*intensityVal.borderWidth: 0
-+HPscan*intensityScrollbar.width: 120
-+HPscan*intensityScrollbar.height: 15
-+HPscan*intensityScrollbar.minimumThumb: 8
-+HPscan*intensityScrollbar.topOfThumb: 0.5
-+
-+HPscan*contrastLabel.label: Contrast:
-+HPscan*contrastLabel.borderWidth: 0
-+HPscan*contrastVal.borderWidth: 0
-+HPscan*contrastScrollbar.width: 120
-+HPscan*contrastScrollbar.height: 15
-+HPscan*contrastScrollbar.minimumThumb: 8
-+HPscan*contrastScrollbar.topOfThumb: 0.5
-+
-+HPscan*qualityLabel.label: Quality:
-+HPscan*qualityLabel.borderWidth: 0
-+HPscan*qualityVal.borderWidth: 0
-+HPscan*qualityScrollbar.width: 120
-+HPscan*qualityScrollbar.height: 15
-+HPscan*qualityScrollbar.minimumThumb: 8
-+HPscan*qualityScrollbar.topOfThumb: 0.75
diff --git a/graphics/hpscan/files/patch-ah b/graphics/hpscan/files/patch-ah
deleted file mode 100644
index 55e1cd41af46..000000000000
--- a/graphics/hpscan/files/patch-ah
+++ /dev/null
@@ -1,20 +0,0 @@
---- scanner.c.orig Sun Oct 11 21:46:19 1998
-+++ scanner.c Sun Oct 11 21:46:42 1998
-@@ -84,7 +84,7 @@
- ScsiStatus status;
- ScsiSense sense;
-
-- status = scsi_send(fd, &sense, data, &length);
-+ status = Scsi_send(fd, &sense, data, &length);
-
- if(decode_status(status, sense, "scanner_send") == -1)
- return -1;
-@@ -106,7 +106,7 @@
- ScsiStatus status;
- ScsiSense sense;
-
-- status = scsi_receive(fd, &sense, data, &length);
-+ status = Scsi_receive(fd, &sense, data, &length);
-
- if(decode_status(status, sense, "scanner_receive") == -1)
- return -1;
diff --git a/graphics/hpscan/pkg-comment b/graphics/hpscan/pkg-comment
deleted file mode 100644
index 42155c997960..000000000000
--- a/graphics/hpscan/pkg-comment
+++ /dev/null
@@ -1 +0,0 @@
-HP scanner driver
diff --git a/graphics/hpscan/pkg-descr b/graphics/hpscan/pkg-descr
deleted file mode 100644
index f8522a1390ad..000000000000
--- a/graphics/hpscan/pkg-descr
+++ /dev/null
@@ -1,21 +0,0 @@
-This is a HP SCSI scanner driver which uses the FreeBSD 'pt' (Processor
-Type) driver. It has been tested on the HP ScanJet 3C and 4A, and was
-written for the HP ScanJet IIcx, so I suspect it will work with all newer
-HP scanners without modifications.
-
-To install the driver you must add a line to your kernel config file
-like the following:
-# HP Scanner
-device pt0 at scbus?
-
-Next, you'll want to make a link from /dev/pt0 to /dev/scanner for the
-driver software.
-
-# cd /dev
-# ln -s pto0 scanner
-
-At this point, you should be able to run the scanner program and see
-results.
-
-This software is copyright Richard Tobin 1994. It may be freely
-redistributed provided the copyright notices are not removed.
diff --git a/graphics/hpscan/pkg-plist b/graphics/hpscan/pkg-plist
deleted file mode 100644
index ff5dd5705d26..000000000000
--- a/graphics/hpscan/pkg-plist
+++ /dev/null
@@ -1,3 +0,0 @@
-bin/hpscan
-lib/X11/app-defaults/HPscan
-lib/X11/app-defaults/HPscan-color