Add support for Ambir/Syscan DocketPORT 665

merge-requests/1/head
Pierre Willenbrock 2009-02-28 18:01:50 +00:00
rodzic ea76aef8a2
commit c8ce0f00ef
5 zmienionych plików z 121 dodań i 0 usunięć

Wyświetl plik

@ -1,3 +1,8 @@
2009-02-28 Pierre Willenbrock <pierre@pirsoft.dnsalias.org>
* backend/genesys.conf.in, backend/genesys_devices.c,
backend/genesys_gl841.c, backend/genesys_low.h: Add support for
Ambir/Syscan DocketPORT 665
2009-02-25 Chris Bagwell <cbagwell-guest at users.alioth.debian.org>
* acinclude.m4, backend/*.[ch], tools/*.[ch], frontend/*.[ch]:
Global replace of u_int??_t with C9x standard based uintxx_t

Wyświetl plik

@ -36,3 +36,9 @@ usb 0x04a9 0x221c
# Visioneer Strobe XP200
usb 0x04a7 0x0426
# Visioneer Strobe XP300
usb 0x04a7 0x0474
# Ambir/Syscan DocketPort 665
usb 0x0a82 0x4803

Wyświetl plik

@ -288,6 +288,29 @@ static Genesys_Sensor Sensor[] = {
,
1.0, 1.0, 1.0,
NULL, NULL, NULL}
,
/* Syscan DP 665 */
{CCD_DP665, 600,
/*TODO: find a good reason for keeping all three following variables*/
28, /*(black) */
28, /* (dummy) */
0, /* (startxoffset) */
2496, /*sensor_pixels */
210,
200,
{0x00, 0x00, 0x00, 0x00},
{0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x02, 0x04, 0x50,
0x10, 0x00, 0x20, 0x02
},
{0x04, 0x05,
0x00, 0x00, 0x00, 0x00, /*[GB](HI|LOW) not needed for cis */
0x54, 0x03,
0x00, /*TODO: bit7 */
0x00, 0x00, 0x00, 0x01 /*TODO (these do no harm, but may be neccessery for CCD) */
}
,
1.0, 1.0, 1.0,
NULL, NULL, NULL}
};
/** for General Purpose Output specific settings:
@ -371,6 +394,13 @@ static Genesys_Gpo Gpo[] = {
{0x09, 0xc6},
{0xbb, 0x00},
}
,
/* Syscan DP 665 */
{
GPO_DP665,
{0x18, 0x00},/*0x19,0x00*/
{0xbb, 0x00},
}
};
static Genesys_Motor Motor[] = {
@ -537,6 +567,24 @@ static Genesys_Motor Motor[] = {
0.8,
},},},
},
{MOTOR_DP665, /* Syscan DP 665 */
750,
1500,
1,
1,
{{{
3000,
2500,
10,
0.8,
},
{
11000,
11000,
2,
0.8,
},},},
},
};
/* here we have the various device settings...
@ -1118,6 +1166,56 @@ static Genesys_Model visioneer_xp300_model = {
400
};
static Genesys_Model syscan_docketport_665_model = {
"syscan-docketport-665", /* Name */
"Syscan/Ambir", /* Device vendor string */
"DocketPORT 665", /* Device model name */
GENESYS_GL841,
NULL,
{600, 300, 150, 75, 0}, /* possible x-resolutions */
{1200, 600, 300, 150, 75, 0}, /* possible y-resolutions */
{16, 8, 0}, /* possible depths in gray mode */
{16, 8, 0}, /* possible depths in color mode */
SANE_FIX (0.0), /* Start of scan area in mm (x) */
SANE_FIX (0.0), /* Start of scan area in mm (y) */
SANE_FIX (108.0), /* Size of scan area in mm (x) */
SANE_FIX (511), /* Size of scan area in mm (y) */
SANE_FIX (0.0), /* Start of white strip in mm (y) */
SANE_FIX (0.0), /* Start of black mark in mm (x) */
SANE_FIX (0.0), /* Start of scan area in TA mode in mm (x) */
SANE_FIX (0.0), /* Start of scan area in TA mode in mm (y) */
SANE_FIX (100.0), /* Size of scan area in TA mode in mm (x) */
SANE_FIX (100.0), /* Size of scan area in TA mode in mm (y) */
SANE_FIX (0.0), /* Start of white strip in TA mode in mm (y) */
SANE_FIX (17.5), /* Size of scan area after paper sensor stops
sensing document in mm */
SANE_FIX (0.0), /* Amount of feeding needed to eject document
after finishing scanning in mm */
0, 0, 0, /* RGB CCD Line-distance correction in pixel */
COLOR_ORDER_RGB, /* Order of the CCD/CIS colors */
SANE_TRUE, /* Is this a CIS scanner? */
SANE_TRUE, /* Is this a sheetfed scanner? */
CCD_DP665,
DAC_WOLFSON_XP300,
GPO_DP665,
MOTOR_DP665,
GENESYS_FLAG_LAZY_INIT /* Which flags are needed for this scanner? */
| GENESYS_FLAG_SKIP_WARMUP
| GENESYS_FLAG_NO_CALIBRATION,
GENESYS_HAS_SCAN_SW | GENESYS_HAS_PAGE_LOADED_SW,
300,
400
};
static Genesys_USB_Device_Entry genesys_usb_device_list[] = {
{0x0638, 0x0a10, &umax_astra_4500_model},
{0x04a9, 0x2213, &canon_lide_50_model},
@ -1130,5 +1228,6 @@ static Genesys_USB_Device_Entry genesys_usb_device_list[] = {
{0x0461, 0x0377, &medion_md5345_model},
{0x04a7, 0x0426, &visioneer_xp200_model},
{0x04a7, 0x0474, &visioneer_xp300_model},
{0x0a82, 0x4803, &syscan_docketport_665_model},
{0, 0, NULL}
};

Wyświetl plik

@ -3223,6 +3223,14 @@ gl841_save_power(Genesys_Device * dev, SANE_Bool enable) {
dev->calib_reg[reg_0x6b].value |= REG6B_GPO18;
}
if (dev->model->gpo_type == GPO_DP665)
{
sanei_genesys_read_register(dev, 0x6B, &val);
sanei_genesys_write_register(dev, 0x6B, val | REG6B_GPO17);
dev->reg[reg_0x6b].value |= REG6B_GPO17;
dev->calib_reg[reg_0x6b].value |= REG6B_GPO17;
}
}
return SANE_STATUS_GOOD;

Wyświetl plik

@ -264,6 +264,7 @@ Genesys_Color_Order;
#define CIS_XP200 7 /* CIS sensor for Strobe XP200 */
#define CCD_XP300 8
#define CCD_HP3670 9
#define CCD_DP665 10
#define GPO_UMAX 0
#define GPO_ST12 1
@ -275,6 +276,7 @@ Genesys_Color_Order;
#define GPO_XP200 7
#define GPO_XP300 8
#define GPO_HP3670 9
#define GPO_DP665 10
#define MOTOR_UMAX 0
#define MOTOR_5345 1
@ -285,6 +287,7 @@ Genesys_Color_Order;
#define MOTOR_XP200 6
#define MOTOR_XP300 7
#define MOTOR_HP3670 9
#define MOTOR_DP665 10
/* Forward typedefs */