diff --git a/ChangeLog b/ChangeLog index 627387905..a54ec6788 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-06-08 Gerhard Jaeger + + * doc/plustek/Pluste-USB.changes: Update + * backend/plustek.c backend/plustek-usbcal.c + backend/plustek-usbcalfile.c backend/plustek-usbhw.c: + Fixed calibration cache issues (coarse calibration for all modes, + correct fine calibration for sheetfed devices). + 2006-06-08 Mattias Ellert * po/sane-backends.*.po: updated with new translation keys from @@ -54,11 +62,11 @@ * backend/stv680.c backend/stv680.h backend/stv680.conf.in added * doc/sane-stv680.man doc/descriptions/stv680.desc added - * AUTHORS: added stv680 Gerard Klaver + * AUTHORS: added stv680 Gerard Klaver * configure configure.in doc/Makefile.in doc/sane.man backend/Makefile.in backend/dll.conf.in: added stv680 backend - * doc/descriptions-external/stv680.desc: removed because the backend - is now a part of sane-backends. + * doc/descriptions-external/stv680.desc: removed because the backend + is now a part of sane-backends. 2006-06-04 m. allan noah @@ -182,7 +190,7 @@ do_cmd() - simplify timeout handling * backend/fujitsu-scsi.h: increase default timeoutes -2006-05-15 St�hane Voltz +2006-05-15 Stephane Voltz * backend/genesys_devices.c backend/genesys_gl646.c: tuned HP 2300 geometry description and added a safeguard against failed origin @@ -226,10 +234,10 @@ * backend/genesys_devices.c: Increase length of acceleration slopes for Canon LiDE 35/40/50/60 -2006-04-21 St�hane Voltz +2006-04-21 Stephane Voltz - * backend/genesys.c: add workraound with issue related - to asic reset and data scan amount + * backend/genesys.c: add workraound with issue related + to asic reset and data scan amount 2006-04-20 Henning Meier-Geinitz @@ -362,19 +370,19 @@ * doc/descriptions/unsupported.desc: Added Microtek ScanMaker 4850 II and Plustek OpticPro ST 64+. -2006-03-12 St�hane Voltz +2006-03-12 Stephane Voltz - * backend/genesys_gl646.c: removed now unneeded #ifdef in - gl646_send_gamma_table. + * backend/genesys_gl646.c: removed now unneeded #ifdef in + gl646_send_gamma_table. 2006-03-12 Pierre Willenbrock - * backend/genesys_gl646.c: fixed silly thinko in - gl646_send_gamma_table. + * backend/genesys_gl646.c: fixed silly thinko in + gl646_send_gamma_table. -2006-03-12 St�hane Voltz +2006-03-12 Stephane Voltz - * backend/genesys_gl646.c: fixed gl646_send_gamma_table after + * backend/genesys_gl646.c: fixed gl646_send_gamma_table after endianess changes. Put again a little fix for power saving 2006-03-11 Henning Meier-Geinitz @@ -384,20 +392,20 @@ 2006-03-09 Pierre Willenbrock - * backend/genesys.c backend/genesys_low.h: Removed little endian - conversions in slope table creation functions - * backend/genesys_gl646.c backend/genesys_gl841.c: Added little - endian conversions to gl*_send_slope_table functions + * backend/genesys.c backend/genesys_low.h: Removed little endian + conversions in slope table creation functions + * backend/genesys_gl646.c backend/genesys_gl841.c: Added little + endian conversions to gl*_send_slope_table functions 2006-03-09 Pierre Willenbrock - * backend/genesys.c: Some annotations about endianess of scanned - data + * backend/genesys.c: Some annotations about endianess of scanned + data * backend/genesys_gl646.c: Convert gamma tables to little endian -2006-03-06 St�hane Voltz +2006-03-06 Stephane Voltz - * backend/genesys_gl646.c: power saving fixes + * backend/genesys_gl646.c: power saving fixes 2006-03-05 Henning Meier-Geinitz @@ -408,124 +416,124 @@ 2006-02-16 Gerhard Jaeger - * doc/plustek/Plustek-PARPORT.changes: Update. - * backend/plustek_pp.c: Bumped build number. - * backend/plustek-pp_ptdrv.c backend/plustek-pp_detec.c: - Fixed bug, that prevents backend from working, when the device - is another parport than parport0 - spotted by Christoph Steinbruchel. + * doc/plustek/Plustek-PARPORT.changes: Update. + * backend/plustek_pp.c: Bumped build number. + * backend/plustek-pp_ptdrv.c backend/plustek-pp_detec.c: + Fixed bug, that prevents backend from working, when the device + is another parport than parport0 - spotted by Christoph Steinbruchel. 2006-02-14 Gerhard Jaeger - * doc/u12/U12.changes: Update. - * backend/u12.c: Bumped build number. - * backend/u12-hw.c: SoftwareReset is now disabled in - cancelSequence when the device is a Genius scanner. + * doc/u12/U12.changes: Update. + * backend/u12.c: Bumped build number. + * backend/u12-hw.c: SoftwareReset is now disabled in + cancelSequence when the device is a Genius scanner. -2006-02-13 St�hane Voltz +2006-02-13 Stephane Voltz - * backend/genesys_gl646.c: disabled power saving for gl646. + * backend/genesys_gl646.c: disabled power saving for gl646. 2006-02-12 Henning Meier-Geinitz - * README.solaris: Added link to installation report. - * doc/descriptions/unsupported.desc: Removed HP ScanJet 8200 - (supported by Avision backend). Minor updates. + * README.solaris: Added link to installation report. + * doc/descriptions/unsupported.desc: Removed HP ScanJet 8200 + (supported by Avision backend). Minor updates. 2006-02-04 Henning Meier-Geinitz - * doc/descriptions/unsupported.desc: Removed Trust Office Scan USB - 19200 (now in niash.desc), added Xerox 4800 One Touch. - * include/sane/sanei_usb.h sanei/sanei_usb.c: Workaround for - compilation problem on Windows/cygwin. - * backend/dll.c: With cygwin, use ":" as DIR_SEP (patch from - Philip Aston ). + * doc/descriptions/unsupported.desc: Removed Trust Office Scan USB + 19200 (now in niash.desc), added Xerox 4800 One Touch. + * include/sane/sanei_usb.h sanei/sanei_usb.c: Workaround for + compilation problem on Windows/cygwin. + * backend/dll.c: With cygwin, use ":" as DIR_SEP (patch from + Philip Aston ). 2006-02-04 Ullrich Sigwanz - * backend/niash_xfer.c: Added Trust OfficeScan 19200 - * doc/descriptions/niash.desc: Added Trust OfficeScan 19200 - * backend/niash.c: Removed Reload on X,Y settings + * backend/niash_xfer.c: Added Trust OfficeScan 19200 + * doc/descriptions/niash.desc: Added Trust OfficeScan 19200 + * backend/niash.c: Removed Reload on X,Y settings 2006-02-02 Oliver Schwartz - * backend/snapscan.h: Corrected USB ID for Benq 310 + * backend/snapscan.h: Corrected USB ID for Benq 310 2006-01-31 Gerhard Jaeger - * doc/plustek/Plustek-USB.changes: Update. - * backend/plustek.c: Bumped build number. - * backend/plustek-usbdevs.c: Fixed CanoScan N1220U settings. + * doc/plustek/Plustek-USB.changes: Update. + * backend/plustek.c: Bumped build number. + * backend/plustek-usbdevs.c: Fixed CanoScan N1220U settings. 2006-01-29 Henning Meier-Geinitz - * doc/descriptions-external/brother2.desc: Changed status of - Brother MFC-410CN to "basic" (bug #302961). - * doc/descriptions/unsupported.desc: Added Benq 7400UT and Genius - Colorpage CS. + * doc/descriptions-external/brother2.desc: Changed status of + Brother MFC-410CN to "basic" (bug #302961). + * doc/descriptions/unsupported.desc: Added Benq 7400UT and Genius + Colorpage CS. 2006-01-26 Henning Meier-Geinitz - * backend/snapscan-usb.c: Added #defines for SHM_R/W for cygwin - (patch from Philip Aston ). - * AUTHORS: Troy Rollo is now active. + * backend/snapscan-usb.c: Added #defines for SHM_R/W for cygwin + (patch from Philip Aston ). + * AUTHORS: Troy Rollo is now active. 2006-01-22 Henning Meier-Geinitz - * doc/descriptions-external/epkowa.desc: Updated to match - iscan-1.18.0. Added usb ids (patch from Olaf Meeuwissen - ). - * doc/descriptions/unsupported.desc: Added Scanshell 800N and - Canon Smartbase MP360. - * sanei/sanei_usb.c tools/sane-find-scanner.c: Added checks for - altsetting =! 0. + * doc/descriptions-external/epkowa.desc: Updated to match + iscan-1.18.0. Added usb ids (patch from Olaf Meeuwissen + ). + * doc/descriptions/unsupported.desc: Added Scanshell 800N and + Canon Smartbase MP360. + * sanei/sanei_usb.c tools/sane-find-scanner.c: Added checks for + altsetting =! 0. 2006-01-22 Mattias Ellert - * backend/dll.c, backend/plustek-usbhw.c, backend/plustek-usbscan.c, - sanei/sanei_pio.c: Fixed warnings about C++ style comments. - * backend/hp5400_xfer.h: Fixed compilation warnings. + * backend/dll.c, backend/plustek-usbhw.c, backend/plustek-usbscan.c, + sanei/sanei_pio.c: Fixed warnings about C++ style comments. + * backend/hp5400_xfer.h: Fixed compilation warnings. 2006-01-21 Mattias Ellert - * backend/canon-sane.c: Fixed variable redeclaration. + * backend/canon-sane.c: Fixed variable redeclaration. -2006-01-05 St�hane Voltz +2006-01-05 Stephane Voltz - * tools/hotplug/libsane.usermap: Added Dell A920 (rebranded X1100) + * tools/hotplug/libsane.usermap: Added Dell A920 (rebranded X1100) 2006-01-19 Gerhard Jaeger - * doc/plustek/Plustek-USB.changes: Update. - * backend/plustek.c: Bumped build number. Fixed constraint_type for - OPT_BUTTON. - * backend/plustek-usbdevs.c: Added high-speed setting for HP2200. - Cleanup. + * doc/plustek/Plustek-USB.changes: Update. + * backend/plustek.c: Bumped build number. Fixed constraint_type for + OPT_BUTTON. + * backend/plustek-usbdevs.c: Added high-speed setting for HP2200. + Cleanup. 2006-01-18 Gerhard Jaeger - * doc/plustek/Plustek-USB.changes: Update. - * backend/plustek.c: Bumped build number. - * backend/plustek-usbdevs.c: Fixed CanoScan N670U settings, - see (bugreport #302738). + * doc/plustek/Plustek-USB.changes: Update. + * backend/plustek.c: Bumped build number. + * backend/plustek-usbdevs.c: Fixed CanoScan N670U settings, + see (bugreport #302738). 2006-01-15 Henning Meier-Geinitz - * doc/descriptions/canon630u.desc doc/descriptions/coolscan2.desc - doc/descriptions/hp5400.desc doc/descriptions/niash.desc - doc/descriptions/unsupported.desc: Added USB vendor and product - ids. Minor cleanup. - * backend/artec_eplus48u.conf.in doc/sane-artec_eplus48u.man - doc/descriptions/artec_eplus48u.desc: Added Yakumo Scan50. Minor - cleanup. - * doc/descriptions/gt68xx.desc: Added Mustek BearPaw 1248 CU. - * doc/descriptions/lexmark.desc: Added USB vendor and product - ids. Changed status of X1150 and X1170 according to reports on - sane-devel. + * doc/descriptions/canon630u.desc doc/descriptions/coolscan2.desc + doc/descriptions/hp5400.desc doc/descriptions/niash.desc + doc/descriptions/unsupported.desc: Added USB vendor and product + ids. Minor cleanup. + * backend/artec_eplus48u.conf.in doc/sane-artec_eplus48u.man + doc/descriptions/artec_eplus48u.desc: Added Yakumo Scan50. Minor + cleanup. + * doc/descriptions/gt68xx.desc: Added Mustek BearPaw 1248 CU. + * doc/descriptions/lexmark.desc: Added USB vendor and product + ids. Changed status of X1150 and X1170 according to reports on + sane-devel. 2006-01-15 Ulrich Deiters - * backend/canon-sane.c: fixed byte-swapping problem for little-endian - platforms (affects raw-mode scanning with FS2710 slide scanner) + * backend/canon-sane.c: fixed byte-swapping problem for little-endian + platforms (affects raw-mode scanning with FS2710 slide scanner) 2006-01-14 Henning Meier-Geinitz @@ -630,7 +638,7 @@ * backend/snapscan-scsi.c backend/snapscan-options.c backend/snapscan.c: Some fixes for the Epson Stylus CX1500 -2006-01-05 St�hane Voltz +2006-01-05 Stephane Voltz * backend/umax_pp_low.c: removed unused local variable @@ -761,45 +769,45 @@ 2005-12-27 Henning Meier-Geinitz - * README.linux: Mention ld.so.conf issue. - * doc/descriptions/unsupported.desc - doc/descriptions-external/hp3900.desc: Added external hp3900 - backend. Moved (possibly) supported scanners from - unsupported.desc. - * doc/backend-writing.c: Added some hints about what to do to add - a new backend to the existing sane-backends code. + * README.linux: Mention ld.so.conf issue. + * doc/descriptions/unsupported.desc + doc/descriptions-external/hp3900.desc: Added external hp3900 + backend. Moved (possibly) supported scanners from + unsupported.desc. + * doc/backend-writing.c: Added some hints about what to do to add + a new backend to the existing sane-backends code. 2005-12-24 Henning Meier-Geinitz - * doc/descriptions/unsupported.desc: Added Lexmark X2330. + * doc/descriptions/unsupported.desc: Added Lexmark X2330. 2005-12-23 Henning Meier-Geinitz - * doc/descriptions/unsupported.desc: Added Canon Pixma MP500. - * README.openbsd: Added hint about CPPFLAGS. - * doc/descriptions/artec.desc: Changed status of Artec AT6 to - "good" as reported in bug #302749. - * tools/hotplug/libsane.usermap: Added Brother MFC-7420. + * doc/descriptions/unsupported.desc: Added Canon Pixma MP500. + * README.openbsd: Added hint about CPPFLAGS. + * doc/descriptions/artec.desc: Changed status of Artec AT6 to + "good" as reported in bug #302749. + * tools/hotplug/libsane.usermap: Added Brother MFC-7420. 2005-12-20 Henning Meier-Geinitz - * backend/dll.c doc/descriptions/dll.desc: Fixed dynamic loading - on current HP/UX systems (bug #302732). - * AUTHORS ChangeLog configure configure.in backend/Makefile.in - backend/dll.conf backend/hp3500.c doc/Makefile.in - doc/sane-hp3500.man doc/sane.man doc/descriptions/hp3500.desc: - Added hp3500 backend which supports the HP ScanJet 3500 series, - including the 3500C, 3530C and 3570C (patch from Troy Rollo - ) (bug #302687). - * doc/descriptions-external/hp3500.desc: Deleted. - * doc/descriptions/hp4200.desc doc/descriptions/lexmark.desc - doc/descriptions/mustek_usb2.desc: Removed "NEW!" markers. + * backend/dll.c doc/descriptions/dll.desc: Fixed dynamic loading + on current HP/UX systems (bug #302732). + * AUTHORS ChangeLog configure configure.in backend/Makefile.in + backend/dll.conf backend/hp3500.c doc/Makefile.in + doc/sane-hp3500.man doc/sane.man doc/descriptions/hp3500.desc: + Added hp3500 backend which supports the HP ScanJet 3500 series, + including the 3500C, 3530C and 3570C (patch from Troy Rollo + ) (bug #302687). + * doc/descriptions-external/hp3500.desc: Deleted. + * doc/descriptions/hp4200.desc doc/descriptions/lexmark.desc + doc/descriptions/mustek_usb2.desc: Removed "NEW!" markers. 2005-12-18 Henning Meier-Geinitz - * Makefile.in: List ChangeLog-1.0.17 in DISTFILES. - * configure configure.in: Changed version to 1.0.17-cvs. Enabled - compilation warnings. - * doc/descriptions-external/brother2.desc: Added Brother MFC-215C. + * Makefile.in: List ChangeLog-1.0.17 in DISTFILES. + * configure configure.in: Changed version to 1.0.17-cvs. Enabled + compilation warnings. + * doc/descriptions-external/brother2.desc: Added Brother MFC-215C. Older entries can be found in ChangeLog-1.0.17. diff --git a/backend/plustek-usbcal.c b/backend/plustek-usbcal.c index 7feb48369..66eaff769 100644 --- a/backend/plustek-usbcal.c +++ b/backend/plustek-usbcal.c @@ -1137,7 +1137,7 @@ cano_DoCalibration( Plustek_Device *dev ) scaps->workaroundFlag &= ~_WAF_SKIP_FINE; scaps->workaroundFlag &= ~_WAF_BYPASS_CALIBRATION; - if( !dev->adj.cacheCalData ) + if( !dev->adj.cacheCalData && !usb_IsSheetFedDevice(dev)) usb_SpeedTest( dev ); /* here we handle that warmup stuff for CCD devices */ @@ -1198,6 +1198,12 @@ cano_DoCalibration( Plustek_Device *dev ) skip_fine = SANE_FALSE; idx_end = DIVIDER+1; + /* did I say any case? */ + if (scan->sParam.bBitDepth != 8) { + skip_fine = SANE_TRUE; + DBG( _DBG_INFO2, "No fine calibration for non-8bit modes!\n" ); + } + } else if( usb_IsSheetFedDevice(dev)) { /* we only to the calibration upon request !*/ diff --git a/backend/plustek-usbcalfile.c b/backend/plustek-usbcalfile.c index 8f2f87cde..9fd26b067 100644 --- a/backend/plustek-usbcalfile.c +++ b/backend/plustek-usbcalfile.c @@ -433,7 +433,13 @@ usb_ReadAndSetCalData( Plustek_Device *dev ) if( 13 == res ) { usb_RestoreCalData( dev, &cal ); ret = SANE_TRUE; + } else { + DBG( _DBG_ERROR, "Error reading coarse-calibration data, only " + "%d elements available!\n", res ); } + } else { + DBG( _DBG_ERROR, "Error reading coarse-calibration data for " + "PFX: >%s * This file is part of the SANE package. @@ -438,7 +440,7 @@ usb_WaitPos( Plustek_Device *dev, u_long to, SANE_Bool stay ) static SANE_Bool usb_ModuleMove( Plustek_Device *dev, u_char action, u_long dwStep ) { - SANE_Bool retval; + SANE_Bool retval, ejected; u_char bReg2, reg7, mclk_div; u_short wFastFeedStepSize; double dMaxMoveSpeed; @@ -466,12 +468,15 @@ usb_ModuleMove( Plustek_Device *dev, u_char action, u_long dwStep ) hw->dMaxMoveSpeed += 0.8; /* was 0.6 */ DBG( _DBG_INFO2, "Ejecting paper...\n" ); - retval = SANE_TRUE; + retval = SANE_TRUE; + ejected = SANE_FALSE; do { - if( usb_SensorPaper(dev) && - !usb_ModuleMove(dev,MOVE_SkipPaperSensor, 0 )) { - hw->dMaxMoveSpeed = d; - return SANE_FALSE; + if( usb_SensorPaper(dev)) { + if (!usb_ModuleMove(dev,MOVE_SkipPaperSensor, 0 )) { + hw->dMaxMoveSpeed = d; + return SANE_FALSE; + } + ejected = SANE_TRUE; } if( usb_SensorAdf(dev->fd) && @@ -490,7 +495,7 @@ usb_ModuleMove( Plustek_Device *dev, u_char action, u_long dwStep ) * to make sure, that the scanned sheet is out of the scanner * BUT: not at startup */ - if (dev->initialized >= 0) { + if (dev->initialized >= 0 || ejected) { if(!usb_ModuleMove( dev, MOVE_Forward, 300 /* *3 */)) { hw->dMaxMoveSpeed = d; return SANE_FALSE; diff --git a/backend/plustek.c b/backend/plustek.c index 7dd615312..0cccb0eb0 100644 --- a/backend/plustek.c +++ b/backend/plustek.c @@ -157,7 +157,7 @@ #include "../include/sane/sanei.h" #include "../include/sane/saneopts.h" -#define BACKEND_VERSION "0.51-10" +#define BACKEND_VERSION "0.51-11" #define BACKEND_NAME plustek #include "../include/sane/sanei_access.h" @@ -216,8 +216,8 @@ static const SANE_Device **devlist = 0; static unsigned long tsecs = 0; static Plustek_Scanner *sc = NULL; -static const SANE_Int bpp_lm9832_list [] = { 2, 8, 14 }; -static const SANE_Int bpp_lm9833_list [] = { 2, 8, 16 }; +static const SANE_Int bpp_lm9832_list [] = { 1, 8, 14 }; +static const SANE_Int bpp_lm9833_list [] = { 1, 8, 16 }; static const SANE_String_Const mode_list[] = { @@ -355,7 +355,7 @@ getScanMode( Plustek_Scanner *scanner ) } else { scanner->params.depth = 16; if( mode == 1 ) - scanmode = COLOR_GRAY16; + scanmode = COLOR_GRAY16; else scanmode = COLOR_TRUE48; } @@ -1760,27 +1760,28 @@ do_calibration( void *args ) Plustek_Device *dev = s->hw; DCapsDef *caps = &dev->usbDev.Caps; int scanmode, rc; + int modes[] = { COLOR_BW, COLOR_256GRAY, COLOR_GRAY16, + COLOR_TRUE24, COLOR_TRUE48 }; thread_entry(); - /* if the device does only supports color scanning, there's no need - * to calibrate the gray mode + /* if the device does only support color scanning, there's no need + * to calibrate the gray modes */ if (caps->workaroundFlag & _WAF_GRAY_FROM_COLOR) - scanmode = 2; + scanmode = 3; else - scanmode = 1; + scanmode = 0; - for ( ; scanmode < 3; scanmode++ ) { + for ( ; scanmode < 5; scanmode++ ) { dev->scanning.dwFlag |= SCANFLAG_Calibration; - if (SANE_STATUS_GOOD == local_sane_start(s, scanmode)) { - + if (SANE_STATUS_GOOD == local_sane_start(s, modes[scanmode])) { /* prepare for scanning: speed-test, warmup, calibration */ rc = usbDev_Prepare( dev, s->buf ); - if( rc != 0 || scanmode == 2) { + if( rc != 0 || scanmode == 4) { if (rc != 0 ) DBG(_DBG_INFO,"Calibration canceled!\n"); m_fStart = SANE_TRUE; @@ -1827,7 +1828,15 @@ sane_control_option( SANE_Handle handle, SANE_Int option, do_cancel(s, SANE_TRUE); return SANE_STATUS_GOOD; } - return SANE_STATUS_DEVICE_BUSY; + + /* okay, we need some exceptions */ + switch (option) { + case OPT_TL_X: + case OPT_TL_Y: + case OPT_BR_X: + case OPT_BR_Y: break; + default: return SANE_STATUS_DEVICE_BUSY; + } } } diff --git a/doc/plustek/Plustek-USB.changes b/doc/plustek/Plustek-USB.changes index e01210511..17b6bcb58 100644 --- a/doc/plustek/Plustek-USB.changes +++ b/doc/plustek/Plustek-USB.changes @@ -1,8 +1,18 @@ -Plustek.changes - Gerhard Jäger +Plustek.changes - Gerhard Jäger ==================================================== Note: All other not mentioned builds have never been released. +V 0.51-11 (2006-06-08) +---------------------- +Fixed calibration: All modes will be coarse calibrated now, fine calibration +will be done only for 8 bit modes. +Fixed paper eject during startup. + +V 0.51-10 (2006-05-28) +--------------------- +Released + V 0.51-8 (2006-04-09) --------------------- Added cache for fine calibration (CIS devices only)