Error checking has been added when receiving the network
header and welcome message. Timeout has been added too and
a wrong buffer size has been corrected.
Image inversion is something that can be handled by a frontend,
in the epson2 backend I want to avoid to add any complexity
that doesn't belong to the hardware.
Internationalized backend options lead to incompatible shell
scripts, so they've been removed. A trailing dot has been removed
from some descriptions and a few includes moved around.
- backend/pixma_mp150.c:
Thanks to Vladimir Andreev patch, fix network scan for MP800R.
- doc/descriptions/pixma.desc and doc/sane-pixma.man:
. Documentation updates for latest MF5770 changes.
. Note: MF5770 grayscale mode appears to require some more work.
The probing code has been streamlined and is now more maintenable.
The backend will probe when required and the get_devices hook can
be called multiple times. Transfer buffers are now selected based
on the connection type.
* sanei/sanie_tcp.c, backend/epson2_net.c: Update
sanei_tcp_read() to better simulate old behavior of MSG_WAITALL.
recv() tends to return MTU sized chunks of data without that option. And at
least cygwin doesn't support MSG_WAITALL. Re-enable epson2 using that
function for big recieves.
* libgetopt.c, libgetopt1.c:
Revert some logic meant to be used only when we were always compiling
interal getopt() functions. Fix header filename.
- split coarse and fine cal to run independently
- add side option
- reset scan params to user request if calibration fails
- better handling of sane_cancel
- better handling of errors during sane_start and sane_read
The backend description comes from the epkowa.desc file
with appropriate changes to suit epson2.desc. The usb
device list is now generated from this file, skipping
the :unsupported models. This means epson2 now detects
32 more models.
Sometimes a "fatal error" is given back when the scanner is warming up.
The previousversion of the code checked for that issue only when
the ADF was in use.
Some subroutines have been moved from epson2.c to epson2-ops.c and
there's also a temporary fix for the networking code.
This is work in progress but should work.
- add side option to show which duplex image is being transferred
- convert front and simplex buffers to use much less ram
- add lowmemory option which makes duplex back buffer small too
- refactor image handling code to track eof's instead of lengths
- do color deinterlacing after reading from scanner, before buffering
ChangeLog to commit 1e381db161
For adding debug verbosity to sanei_usb.c patch, fixing the choice
of usb endpoints in the sanei_usb_open() seek for endpoints loop.
This commit adds some debug verbosity to the last committed sanei_usb.c patch
id 5b69fa8c6d
for fixing the choice of usb endpoints, in the sanei_usb_open() seek for endpoints loop.
- use average instead of min/max for fine offset and gain
- rewrite supported resolution list as x and y arrays
- merge x and y resolution options into single option
- move scan params into two new structs, s->u and s->s
- sane_get_parameters() just returns values from s->u
- dont call wait_scanner() in object_position()
- dont call ssm_*() from option handler
- refactor sane_start()
- read_from_buffer() can workaround missing res, modes and cropping
- set most DR-2xxx machines to use the read_from_buffer workarounds
- set default threshold to 90
- add option for button #3 of some machines
- don't eject paper during init
- add DR-2010 quirks
- switch counter to HARD_SELECT, not SOFT
Updated following files for Pixma MP730 support:
- backend/pixma_mp730.c:
Add width scan area fitting
Fix end scan sequence protocol
- sanei/sanei_usb.c:
In sanei_usb_open(), changed the "seek for endpoints" loop
so that it first looks for those interfaces (in config 0)
that have been detected as potential scanners in
sanei_usb_init()