From 023f7c1e7aa2ece47e943f157e6817290a121417 Mon Sep 17 00:00:00 2001 From: Rene Rebe Date: Tue, 28 Oct 2003 11:24:21 +0000 Subject: [PATCH] Also fixed Bugs #300288 and #300196, removed the conflicting Option_Value now present in sanei_backend.h and made requested clarifications (Bugs #300290, #300291) --- ChangeLog | 7 ++++-- backend/avision.c | 35 ++++++++++++++++++++--------- backend/avision.conf | 4 ++-- backend/avision.h | 7 ------ doc/sane-avision.man | 52 ++++++++++++++++++++++++-------------------- 5 files changed, 60 insertions(+), 45 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9881d9c27..c6114881a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,8 +5,11 @@ revision of SANE/Avision. The fixes include: endianess fixes, calibration code, ADF detection, correct lamp warmup, gamma table for new ASICs, some workarounds for ASIC variations and the - convertion to use OPT_SOURCE insteat of seperate OPT_ADF and - OPT_TRANS. + convertion to use OPT_SOURCE instead of seperate OPT_ADF and + OPT_TRANS. Also fixed Bugs #300288 and #300196 and removed + the conflicting Option_Valu now present in sanei_backend.h + * doc/sane-avision.man: made requested clarifications (Bugs #300290, + #300291) 2003-10-28 Gerhard Jaeger * doc/sane-plustek.man backend/plustek.conf backend/plustek.c: diff --git a/backend/avision.c b/backend/avision.c index 21c5d7dd6..7c27b263a 100644 --- a/backend/avision.c +++ b/backend/avision.c @@ -48,14 +48,14 @@ command set. Copyright 2003 by - "René Rebe" + "René Rebe" Copyright 2002 by - "René Rebe" + "René Rebe" "Jose Paulo Moitinho de Almeida" Copyright 1999, 2000, 2001 by - "René Rebe" + "René Rebe" "Meino Christian Cramer" Additional Contributers: @@ -85,7 +85,13 @@ 2003-10-28: René Rebe * merging with the new SANE CVS, converted the .desc to the new - format + format (Bug #300146) + * some textual changes incl. a rewrite of the sane-avision man-page + (Bugs #300290 and #300291) + * added another name overwrite for the Minolta Dimage Scan Dual II + (Bug #300288) + * fixed config file reading for non-terminated options (Bug #300196) + * removed Option_Value since it is now included in sanei_backend.h 2003-10-04: René Rebe * fixed adf model detection bug - could even crash (not functional @@ -785,7 +791,7 @@ static Avision_HWEntry Avision_Device_List [] = { "MINOLTA", "FS-V1", 0x0638, 0x026a, - "Minolta", "FS-V1", + "Minolta", "Dimage Scan Dual II", AV_USB, AV_FILM, AV_ONE_CALIB_CMD}, /* comment="1 pass, film-scanner" */ /* status="basic" */ @@ -2130,7 +2136,7 @@ attach (SANE_String_Const devname, Avision_ConnectionType con_type, memcpy (&rev, result + 32, 4); rev [4] = 0; - /* shorten strings ( -1 for last index + /* shorten strings (-1 for last index -1 for last 0; >0 because one char at least) */ for (i = sizeof (mfg) - 2; i > 0; i--) { if (mfg[i] == 0x20) @@ -2163,7 +2169,7 @@ attach (SANE_String_Const devname, Avision_ConnectionType con_type, if (!found) { DBG (1, "attach: model is not in the list of supported models!\n"); DBG (1, "attach: You might want to report this output. To:\n"); - DBG (1, "attach: rene@rocklinux.org (Backend author)\n"); + DBG (1, "attach: rene@rocklinux.org (the Avision backend author)\n"); status = SANE_STATUS_INVAL; goto close_scanner_and_return; @@ -4435,14 +4441,23 @@ sane_init (SANE_Int* version_code, SANE_Auth_Callback authorize) line); cp = sanei_config_get_string (line, &word); - + if (!word || cp == line) { DBG(5, "sane_init: config file line %d: ignoring empty line\n", linenumber); - free (word); - word = NULL; + if (word) { + free (word); + word = NULL; + } continue; } + + if (!word) { + DBG(1, "sane_init: config file line %d: could not be parsed\n", + linenumber); + continue; + } + if (word[0] == '#') { DBG(5, "sane_init: config file line %d: ignoring comment line\n", linenumber); diff --git a/backend/avision.conf b/backend/avision.conf index 95f33318e..bb8fe37a6 100644 --- a/backend/avision.conf +++ b/backend/avision.conf @@ -21,6 +21,6 @@ scsi HP scsi hp scsi /dev/scanner -usb /dev/usbscanner -usb /dev/usb/scanner +# usb libusb:002:003 +# usb 0x03f0 0x0701 diff --git a/backend/avision.h b/backend/avision.h index eb34d81cf..0bd605718 100644 --- a/backend/avision.h +++ b/backend/avision.h @@ -174,13 +174,6 @@ enum Avision_Option NUM_OPTIONS /* must come last */ }; -typedef union Option_Value -{ - SANE_Word w; - SANE_Word *wa; /* word array */ - SANE_String s; -} Option_Value; - typedef struct Avision_Dimensions { /* in dpi */ diff --git a/doc/sane-avision.man b/doc/sane-avision.man index dd5385616..cb04c31e4 100644 --- a/doc/sane-avision.man +++ b/doc/sane-avision.man @@ -3,11 +3,11 @@ .SH NAME sane-avision \- SANE backend for original Avision and Avision OEM scanners -(HP, Minolta, Mitsubishi, UMAX and possibly more) flatbed scanners +(HP, Minolta, Mitsubishi, UMAX and possibly more) flatbed scanners. .SH ABOUT THIS FILE -This file only is a short descripton of the avision-backend for sane! +This file is a short descripton for the avision-backend shipped with SANE. .SH DESCRIPTION The @@ -16,6 +16,9 @@ library implements a SANE (Scanner Access Now Easy) backend that provides access to various Avision scanners and the Avision OEM scanners labelled by HP, Minolta, Mitsubishi or Fujitsu. +.B I suggest you hold one hand on the power-button of the scanner while you try +the first scans! + .SH CONFIGURATION The configuration file for this backend resides in @@ -25,9 +28,6 @@ Its contents is a list of device names that correspond to Avision and Avision compatible scanners and backend-options. Empty lines and lines starting with a hash mark (#) are ignored. A sample configuration file is shown below: -.B I suggest you hold one hand on the power-button of the scanner while you try -the first scans! - # this is a comment option force-a4 @@ -82,32 +82,36 @@ the first scans! This backend expects device names of the form: .PP .RS -.I scsi special -.I usb special +.I scsi scsi-spec + +.I usb usb-sec .RE .PP Where -.I special -is the path-name for the device that corresponds to a SCSI scanner or -the USB vendor/product ID pair corresponding to the USB scanner. The -special device name must be a generic SCSI device or a -symlink to such a device. The program -.IR sane-find-scanner -helps to find out the correct device. Under Linux, such a device name -could be -.I /dev/sg0 -or -.IR /dev/sga , -for example. See sane-scsi(5) for details. +.I scsi-spec +is the path-name to a special device or a device ID for the device that +corresponds to a SCSI scanner. The special device name must be a generic +SCSI device or a symlink to such a device, for example on Linux "/dev/sga" +or "/dev/sg0". The device ID is the ID returned by the scanner, for example +"HP" or "AVISION". See sane-scsi(5) for details. Note: Since the backend now includes native USB access, it is no longer needed - even considered obsolete - - to access the scanner via the SCSI emulation (named + to access USB scanner via the SCSI emulation (named hpusbscsi on Linux) for Avision USB devices such as the HP 53xx, HP 74xx or Minolta film-scanners. - A list with supported devices is built into the avision backend so - normally specifying an ID should not be necessary. +.I usb-spec +is the USB device name, the vendor/product ID pair or the name used by +libusb corresponding to the USB scanner. For example "0x03f0 0x0701" or +"libusb:002:003". See sane-usb(5) for details. + +The program +.IR sane-find-scanner +helps to find out the correct scsi or usb device name. + +A list with supported devices is built into the avision backend so +normally specifying an ID should not be necessary. .SH FILES .TP @@ -149,9 +153,9 @@ Example: export SANE_DEBUG_AVISION=7 .SH "SEE ALSO" -sane(7), sane\-scsi(5) +sane(7), sane\-scsi(5), sane\-usb(5) .br -http://drocklinux.dyndns.org/rene/avision/index.html +http://www.rocklinux-consulting.de/oss/avision/ .SH AUTHOR René Rebe and Meino Christian Cramer