Plustek OpticSlim 2400: Fixed list of resolutions. That fixed the

preview. Removed "untested" warning. Adjusted scan area.  Updated gt68xx.TODO.
Find firmwares independent of capitalization (bug #301580).
merge-requests/1/head
Henning Geinitz 2005-05-07 17:16:30 +00:00
rodzic 155790c61d
commit ea9ad9a396
6 zmienionych plików z 109 dodań i 39 usunięć

Wyświetl plik

@ -1,3 +1,12 @@
2005-05-05 Henning Meier-Geinitz <henning@meier-geinitz.de>
* backend/gt68xx.c backend/gt68xx_devices.c
doc/descriptions/gt68xx.desc doc/gt68xx/gt68xx.CHANGES
doc/gt68xx/gt68xx.TODO: Plustek OpticSlim 2400: Fixed list of
resolutions. That fixed the preview. Removed "untested"
warning. Adjusted scan area. Updated gt68xx.TODO. Find firmwares
independent of capitalization (bug #301580).
2005-05-07 Julien Blache <jb@jblache.org>
* tools/hotplug/libsane.usermap: Added Microtek ScanMaker 3700
(05da/40cb). From Ian Beckwith.

Wyświetl plik

@ -1,7 +1,7 @@
/* sane - Scanner Access Now Easy.
Copyright (C) 2002 Sergey Vlasov <vsu@altlinux.ru>
Copyright (C) 2002 - 2004 Henning Meier-Geinitz <henning@meier-geinitz.de>
Copyright (C) 2002 - 2005 Henning Meier-Geinitz <henning@meier-geinitz.de>
This file is part of the SANE package.
@ -48,7 +48,7 @@
#include "../include/sane/config.h"
#define BUILD 67
#define BUILD 68
#define MAX_DEBUG
#define WARMUP_TIME 60
#define CALIBRATION_HEIGHT 2.5
@ -91,6 +91,7 @@
#include <sys/time.h>
#include <time.h>
#include <math.h>
#include <dirent.h>
#include "../include/sane/sane.h"
#include "../include/sane/sanei.h"
@ -853,46 +854,92 @@ download_firmware_file (GT68xx_Device * dev)
SANE_Status status = SANE_STATUS_GOOD;
SANE_Byte *buf = NULL;
int size = -1;
SANE_Char filename[PATH_MAX];
SANE_Char filename[PATH_MAX], dirname[PATH_MAX], basename[PATH_MAX];
FILE *f;
if (strncmp (dev->model->firmware_name, PATH_SEP, 1) != 0)
{
/* probably filename only */
snprintf (filename, PATH_MAX, "%s%s%s%s%s%s%s",
STRINGIFY (PATH_SANE_DATA_DIR),
PATH_SEP, "sane", PATH_SEP, "gt68xx", PATH_SEP,
dev->model->firmware_name);
snprintf (dirname, PATH_MAX, "%s%s%s%s%s",
STRINGIFY (PATH_SANE_DATA_DIR),
PATH_SEP, "sane", PATH_SEP, "gt68xx");
strncpy (basename, dev->model->firmware_name, PATH_MAX);
}
else
{
/* absolute path */
char * pos;
strncpy (filename, dev->model->firmware_name, PATH_MAX);
strncpy (dirname, dev->model->firmware_name, PATH_MAX);
pos = strrchr (dirname, PATH_SEP[0]);
if (pos)
pos[0] = '\0';
strncpy (basename, pos + 1, PATH_MAX);
}
else /* absolute path */
strncpy (filename, dev->model->firmware_name, PATH_MAX);
/* Check both mixed and lower case */
/* first, try to open with exact case */
DBG (5, "download_firmware: trying %s\n", filename);
f = fopen (filename, "rb");
if (!f)
{
SANE_Char filename_lower[PATH_MAX];
unsigned int i;
/* and now any case */
DIR * dir;
struct dirent *direntry;
DBG (5,
"download_firmware_file: Couldn't open firmware file `%s': %s\n",
filename, strerror (errno));
for (i = 0; i <= strlen (filename); i++)
filename_lower[i] = tolower (filename[i]);
DBG (5, "download_firmware: trying %s\n", filename_lower);
f = fopen (filename_lower, "rb");
if (!f)
dir = opendir (dirname);
if (!dir)
{
DBG (5,
"download_firmware_file: Couldn't open firmware file `%s': %s\n",
filename, strerror (errno));
DBG (0, "Couldn't open firmware file (neither `%s' nor `%s'): %s\n",
filename, filename_lower, strerror (errno));
DBG (5, "download_firmware: couldn't open directory `%s': %s\n",
dirname, strerror (errno));
status = SANE_STATUS_INVAL;
}
if (status == SANE_STATUS_GOOD)
{
do
{
direntry = readdir (dir);
if (direntry && (strncasecmp (direntry->d_name, basename, PATH_MAX) == 0))
{
snprintf (filename, PATH_MAX, "%s%s%s",
dirname, PATH_SEP, direntry->d_name);
DBG (5, "download_firmware: trying %s\n", filename);
break;
}
}
while (direntry != 0);
if (direntry == 0)
{
DBG (5, "download_firmware: file `%s' not found\n", filename);
status = SANE_STATUS_INVAL;
}
closedir (dir);
}
if (status == SANE_STATUS_GOOD)
{
DBG (5, "download_firmware: trying %s\n", filename);
f = fopen (filename, "rb");
if (!f)
{
DBG (5,
"download_firmware_file: Couldn't open firmware file `%s': %s\n",
filename, strerror (errno));
status = SANE_STATUS_INVAL;
}
}
if (status != SANE_STATUS_GOOD)
{
DBG (0, "Couldn't open firmware file (`%s'): %s\n",
filename, strerror (errno));
}
}
if (status == SANE_STATUS_GOOD)

Wyświetl plik

@ -1,7 +1,7 @@
/* sane - Scanner Access Now Easy.
Copyright (C) 2002 Sergey Vlasov <vsu@altlinux.ru>
Copyright (C) 2002 - 2004 Henning Meier-Geinitz <henning@meier-geinitz.de>
Copyright (C) 2002 - 2005 Henning Meier-Geinitz <henning@meier-geinitz.de>
This file is part of the SANE package.
@ -1394,14 +1394,14 @@ static GT68xx_Model plustek_opticslim2400_model = {
1200, /* if ydpi is equal or higher, disable backtracking */
SANE_FALSE, /* Use base_ydpi for all resolutions */
{1200, 600, 300, 150, 75, 50, 0}, /* possible x-resolutions */
{2400, 1200, 600, 300, 150, 75, 50, 0}, /* possible y-resolutions */
{16, 8, 0}, /* possible depths in gray mode */
{16, 8, 0}, /* possible depths in color mode */
{1200, 600, 300, 150, 100, 50, 0}, /* possible x-resolutions */
{1200, 600, 300, 150, 100, 50, 0}, /* possible y-resolutions */
{12, 8, 0}, /* possible depths in gray mode */
{12, 8, 0}, /* possible depths in color mode */
SANE_FIX (1.0), /* Start of scan area in mm (x) */
SANE_FIX (9.5), /* Start of scan area in mm (y) */
SANE_FIX (218.0), /* Size of scan area in mm (x) */
SANE_FIX (217.0), /* Size of scan area in mm (x) */
SANE_FIX (299.0), /* Size of scan area in mm (y) */
SANE_FIX (0.0), /* Start of white strip in mm (y) */
@ -1423,9 +1423,10 @@ static GT68xx_Model plustek_opticslim2400_model = {
SANE_FIX (2.0), /* Default gamma value */
SANE_TRUE, /* Is this a CIS scanner? */
GT68XX_FLAG_UNTESTED
0
/* By Detlef Gausepohl <detlef@psych.rwth-aachen.de>. Fixed and tested by hmg.
2400 dpi y doesn't seem to work? */
};
/* By Detlef Gausepohl <detlef at sunrise.psycho.rwth-aachen.de> */
static GT68xx_Model visioneer_onetouch_7300_model = {
"visioneer-onetouch-7300", /* Name */

Wyświetl plik

@ -1,5 +1,5 @@
:backend "gt68xx"
:version "1.0-67"
:version "1.0-68"
:manpage "sane-gt68xx"
:url "http://www.meier-geinitz.de/sane/gt68xx-backend/"
:comment "Only the USB scanners mentioned below are supported. For other Mustek BearPaws, look at the Plustek and the MA-1509 backend."
@ -216,7 +216,7 @@
:model "ScanExpress 1248 UB"
:interface "USB"
:status :basic
:comment "Woeks but image quality is not perfect yet (stripes). Please contact me if you want to help fixing that."
:comment "Works but image quality is not perfect yet (stripes). Please contact me if you want to help fixing that."
:model "ScanExpress A3 USB"
:interface "USB"
@ -245,7 +245,12 @@
:model "Diamond 1200 Plus"
:status :good
:interface "USB"
:comment "Similar to Mustek BearPaw 1200 Plus"
:comment "Product id 0x021c. Similar to Mustek BearPaw 1200 Plus"
:model "Diamond 1200 Plus"
:status :minimal
:interface "USB"
:comment "Product id 0x021b: Still doesn't work correctly. Similar to Mustek BearPaw 1200 Plus"
:model "Diamond 2450"
:status :good
@ -281,9 +286,8 @@
:model "OpticSlim 2400"
:interface "USB"
:status :basic
:comment "Calibration doesn't seem to work correctly on all scanners yet. Needs more testing. Please tell me how well this scanner works."
:status :good
:comment "Works up to 1200 dpi."
; -----------------------------------------------------------------------------
:mfg "RevScan"

Wyświetl plik

@ -1,5 +1,13 @@
gt68xx.CHANGES -*-text-*-
V 1.0.68 (2005-05-07)
* GT68XX_FLAG_NO_STOP is needed for BearPaw 2448 TA Plus.
* Plustek OpticSlim 2400: Fixed list of resolutions. That fixed the
preview. Removed "untested" warning. Adjusted scan area.
* Updated gt68xx.TODO.
* Find firmwares independent of capitalization (bug #301580).
V 1.0.67 (2004-11-14)
* Fixed test to move home sensor at the start of scan.

Wyświetl plik

@ -3,14 +3,10 @@ General:
- some sort of fixed lookup-table is necessary to compensate for the non-linear
CCD/CIS behaviour. A gamma value is not good enough. Or maybe line calibration
can be used for that?
- should backtracking be disabled in high resolutions? add a minimum res?
check if disabling at >= 1/2 max res is ok
- Scanning on *BSD works only once for all scanners but 2448. firmware
upload sometimes works more than once
- remove gain/offset options when everything works
- check how many shm buffers are acually used
- update German translation
- debug options -> advanced
- check fast preview
- check calib for first scan only
- setup exposure start per scanner (?)
@ -21,7 +17,9 @@ General:
- Check autobandwidth
- check several get scanner info functions
- check exposure (start + stop)?
- check misc control (motor settings?)
- Some Plustek scanners are advertised with e.g. 1200x2400 but the maximum
vertical resolution seems to be limited to the horizontal one. Check if
that's really the case.
CCD:
----
@ -84,3 +82,6 @@ Mustek ScanExpress A3 USB
Mustek ScanExpress 2400 USB
- make it work
Plustek OpticSlim 2400
- only upto 1200 dpi vertical works
- only 8 and 12 bit work, 16 doesn't (check Windows)