kopia lustrzana https://gitlab.com/sane-project/backends
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
rodzic
155790c61d
commit
ea9ad9a396
|
@ -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.
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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)
|
||||
|
|
Ładowanie…
Reference in New Issue