kopia lustrzana https://gitlab.com/sane-project/backends
253 wiersze
9.3 KiB
Groff
253 wiersze
9.3 KiB
Groff
.TH sane\-apple 5 "11 Jul 2008" "@PACKAGEVERSION@" "SANE Scanner Access Now Easy"
|
|
.IX sane\-apple
|
|
.SH NAME
|
|
sane\-apple \- SANE backend for Apple flatbed scanners
|
|
.SH DESCRIPTION
|
|
The
|
|
.B sane\-apple
|
|
library implements a SANE (Scanner Access Now Easy) backend that
|
|
provides access to Apple flatbed scanners. At present, the following
|
|
scanners are supported from this backend:
|
|
.PP
|
|
.br
|
|
.ft CR
|
|
.nf
|
|
--------------- ----- ------------------ ------
|
|
AppleScanner 4bit 16 Shades of Gray
|
|
OneScanner 8bit 256 Shades of Gray
|
|
ColorOneScanner 24bit RGB color 3-pass
|
|
.fi
|
|
.ft R
|
|
|
|
.PP
|
|
If you own a Apple scanner other than the ones listed above that
|
|
works with this backend, please let us know by sending the scanner's
|
|
model name, SCSI id, and firmware revision to
|
|
.IR sane\-devel@lists.alioth.debian.org .
|
|
See http://www.sane\-project.org/mailing\-lists.html for details on how to subscribe to
|
|
sane\-devel.
|
|
|
|
.SH "DEVICE NAMES"
|
|
This backend expects device names of the form:
|
|
.PP
|
|
.RS
|
|
.I special
|
|
.RE
|
|
.PP
|
|
Where
|
|
.I special
|
|
is either the path-name for the special device that corresponds to a
|
|
SCSI scanner. For SCSI
|
|
scanners, the special device name must be a generic SCSI device or a
|
|
symlink to such a device. Under Linux, such a device name could be
|
|
.I /dev/sga
|
|
or
|
|
.IR /dev/sge ,
|
|
for example. See sane\-scsi(5) for details.
|
|
.SH CONFIGURATION
|
|
The
|
|
.I apple.conf
|
|
file is a list of options and device names that correspond to Apple
|
|
scanners. Empty lines and lines starting with a hash mark (#) are
|
|
ignored. See sane\-scsi(5) on details of what constitutes a valid
|
|
device name.
|
|
.PP
|
|
Options come in two flavors: global and positional ones. Global
|
|
options apply to all devices managed by the backend, whereas positional
|
|
options apply just to the most recently mentioned device. Note that
|
|
this means that the order in which the options appear matters!
|
|
|
|
.SH SCSI ADAPTER TIPS
|
|
SCSI scanners are typically delivered with an ISA SCSI adapter.
|
|
Unfortunately, that adapter is not worth much since it is not
|
|
interrupt driven. It is sometimes possible to get the supplied card
|
|
to work, but without an interrupt line, scanning will put so much load on
|
|
the system that it becomes almost unusable for other tasks.
|
|
.SH FILES
|
|
.TP
|
|
.I @CONFIGDIR@/apple.conf
|
|
The backend configuration file (see also description of
|
|
.B SANE_CONFIG_DIR
|
|
below).
|
|
.TP
|
|
.I @LIBDIR@/libsane\-apple.a
|
|
The static library implementing this backend.
|
|
.TP
|
|
.I @LIBDIR@/libsane\-apple.so
|
|
The shared library implementing this backend (present on systems that
|
|
support dynamic loading).
|
|
.SH ENVIRONMENT
|
|
.TP
|
|
.B SANE_CONFIG_DIR
|
|
This environment variable is list of directories where SANE looks
|
|
for the configuration file. Under UNIX directory names are
|
|
separated by a colon (`:'), under OS/2 by a semi-colon (`;').
|
|
If SANE_CONFIG_DIR is not set, SANE defaults to
|
|
searching the current working directory (".") and then /etc/sane.d.
|
|
If the value of $SANE_CONFIG_DIR ends with the separator
|
|
character, the default directories are searched after the directory list.
|
|
For example, setting
|
|
.B SANE_CONFIG_DIR
|
|
to "/tmp/config:" would result in directories "tmp/config", ".", and
|
|
"@CONFIGDIR@" being searched (in that order).
|
|
.TP
|
|
.B SANE_DEBUG_APPLE
|
|
Controls the debug level. A value of 255 prints
|
|
all debug output. Smaller values reduce verbosity. Requires a
|
|
library compiled with debug support.
|
|
|
|
.SH CURRENT STATUS
|
|
The apple backend is now in version 0.3 (Tue Jul 21 1998). Since
|
|
I only have the AppleScanner and not the other models (OneScanner,
|
|
ColorOneScanner) I can only develop/test for the AppleScanner effectively.
|
|
However with this release I almost completed the gui part of all scanners.
|
|
Most of the functionality is there. At least OneScanner should scan
|
|
at the AppleScanner's compatible modes (LineArt, HalfTone, Gray16). My
|
|
personal belief is that with a slight touch of debugging the OneScanner
|
|
could be actually usable. The ColorOneScanner needs more work. AppleScanner
|
|
is of course almost fully supported.
|
|
|
|
.SH MISSING FUNCTIONALITY
|
|
Currently all three models lack upload/download support.
|
|
.TP
|
|
.B AppleScanner
|
|
Cannot up/download a halftone pattern.
|
|
.TP
|
|
.B OneScanner
|
|
Cannot up/download halftone patterns or calibration vectors.
|
|
.TP
|
|
.B ColorOneScanner
|
|
Cannot up/download halftone patterns, calibration vectors,
|
|
custom Color Correction Tables (CCT) and of course custom gamma tables.
|
|
.TP
|
|
.B Park/UnPark (OneScanner, ColorOneScanner)
|
|
.PP
|
|
The above functionalities are missing because I don't
|
|
have the hardware to experiment on. Another reason is my lack
|
|
of understanding as to how or if the SANE API provide means
|
|
to describe any array type besides gamma.
|
|
|
|
|
|
.SH UNSUPPORTED FEATURES
|
|
The following "features" will never be supported, at least while I maintain
|
|
the sane\-apple backend.
|
|
.TP
|
|
.B NoHome (AppleScanner)
|
|
The scanner lamp stays on and the carriage assembly remains where it stops
|
|
at the end of the scan. After two minutes, if the scanner does not receive
|
|
another SCAN command, the lamp goes off and the carriage returns to the home
|
|
position.
|
|
.TP
|
|
.B Compression (AppleScanner)
|
|
The Scanner can compress data with CCITT Group III one dimensional algorithm
|
|
(fax) and the Skip White Line algorithm.
|
|
.TP
|
|
.B Multiple Windows (AppleScanner)
|
|
AppleScanner may support multiple windows. It would be a cool feature
|
|
and a challenge for me to code if it could intermix different options
|
|
for different windows (scan areas). This way it could scan a document
|
|
in LineArt mode but the figures in it in Gray and at a different resolution.
|
|
Unfortunately this is impossible.
|
|
.TP
|
|
.B Scan Direction (OneScanner)
|
|
It controls the scan direction. (?)
|
|
.TP
|
|
.B Status/Reset Button (OneScanner)
|
|
This option controls the status of the button on the OneScanner model. You can
|
|
also reset the button status by software.
|
|
|
|
.SH BUGS
|
|
SANE backend bugs are divided in two classes. We have
|
|
.B GUI
|
|
bugs and
|
|
.B scanner specific
|
|
bugs.
|
|
.PP
|
|
We know we have a GUI bug when a parameter is not showing up when it
|
|
should (active) or vice versa. Finding out which parameters are active
|
|
across various Apple modes and models from the documentation
|
|
.B ftp://ftpdev.info.apple.com/devworld/Technical_Documentation/Peripherals_Documentation/
|
|
is an interesting exercise. I may have missed some dependencies. For example
|
|
of the threshold parameter the Apple Scanners Programming Guide says
|
|
nothing. I had to assume it is valid only in LineArt mode.
|
|
.PP
|
|
Scanner specific bugs are mostly due to mandatory round-offs in order to
|
|
scan. In the documentation in one place states that the width of the
|
|
scan area should be a byte multiple. In another place it says that the
|
|
width of the scan area should be an even byte multiple. Go figure...
|
|
.PP
|
|
Other sources of bugs are due to scsi communication, scsi connects and
|
|
disconnects. However the classical bugs are still there. So you may
|
|
encounter buffer overruns, null pointers, memory corruption and
|
|
.B SANE
|
|
API violations.
|
|
.TP
|
|
.B SIGSEGV on SliceBars
|
|
When you try to modify the scan area from the slice bar you have a nice
|
|
little cute core dump. I don't know why. If you select the scan area from
|
|
the preview window or by hand typing the numbers everything is fine. The
|
|
SIGSEGV happens deep in gtk library (gdk). I really cannot debug it.
|
|
.TP
|
|
.B Options too much
|
|
It is possible, especially for the ColorOneScanner, for the backend's
|
|
options panel to extend beyond your screen. It happens with mine
|
|
and I am running my X Server at 1024x768. What can I say? Try smaller
|
|
fonts in the X server, or virtual screens.
|
|
.TP
|
|
.B Weird SCSI behaviour
|
|
I am quoting David Myers Here...
|
|
|
|
>> OS: FreeBSD 2.2.6
|
|
.br
|
|
>> CC: egcs-1.02
|
|
.br
|
|
Just wanted to follow up on this... I recently changed my SCSI card from
|
|
the Adaptec 2940UW to a dual-channel Symbios 786 chipset. When I started up
|
|
SANE with your driver, I managed to scan line art drawings okay, but Gray16
|
|
scans led to a stream of SCSI error messages on the console, ultimately
|
|
hanging with a message saying the scanner wasn't releasing the SCSI bus.
|
|
This may be that the Symbios is simply less tolerant of ancient
|
|
hardware, or may be bugs in your driver or in SANE itself...
|
|
|
|
.SH DEBUG
|
|
If you encounter a GUI bug please set the environmental variable
|
|
SANE_DEBUG_APPLE to 255 and rerun the exact sequence of keystrokes
|
|
and menu selections to reproduce it. Then send me a report with the
|
|
log attached.
|
|
.PP
|
|
If you have an Apple Macintosh with the AppleScanners driver installed,
|
|
reporting to me which options are grayed out (inactive) in what modes
|
|
would be very helpful.
|
|
.PP
|
|
If you want to offer some help but you don't have a scanner, or you
|
|
don't have the model you would like to help with, or you are
|
|
a SANE developer and you just want to take a look at how the apple backend
|
|
looks like, goto to apple.h and #define the NEUTRALIZE_BACKEND
|
|
macro. You can select the scanner model through the APPLE_MODEL_SELECT
|
|
macro. Available options are APPLESCANNER, ONESCANNER, COLORONESCANNER.
|
|
.PP
|
|
If you encounter a SCSI bus error or trimmed and/or displaced images please
|
|
set the environment variable SANE_DEBUG_SANEI_SCSI to 255 before sending me
|
|
the report.
|
|
|
|
.SH TODO
|
|
.TP
|
|
.B Non Blocking Support
|
|
Make sane\-apple a non blocking backend. Properly support
|
|
.B sane_set_io_mode
|
|
and
|
|
.B sane_get_select_fd
|
|
.TP
|
|
.B Scan
|
|
Make scanning possible for all models in all supported modes.
|
|
.TP
|
|
.B Missing Functionality
|
|
|
|
.SH "SEE ALSO"
|
|
sane(7), sane\-scsi(5)
|
|
|
|
.SH AUTHOR
|
|
The sane\-apple backend was written not entirely from scratch by
|
|
Milon Firikis. It is mostly based on the mustek backend from
|
|
David Mosberger and Andreas Czechanowski
|