GL843 ok up to 600 dpi optical

merge-requests/1/head
Stphane Voltz 2011-09-19 17:38:54 +02:00
rodzic 1ed7e3e589
commit 85eade8436
3 zmienionych plików z 16 dodań i 12 usunięć

Wyświetl plik

@ -3053,7 +3053,7 @@ genesys_send_shading_coefficient (Genesys_Device * dev)
break;
case CCD_KVSS080:
case CCD_G4050:
target_code = 0xe000;
target_code = 0xf000;
free(shading_data);
length=compute_gl843_coefficients (dev,
&shading_data,

Wyświetl plik

@ -506,12 +506,12 @@ static Genesys_Sensor Sensor[] = {
,
{CCD_G4050,
4800,
38*8, /* 38 at 600 dpi */
31*8, /* 31 at 600 dpi */
50*8, /* black_pixels */
31, /* 31 at 600 dpi dummy_pixels */
152,
5360*8, /* 5360 max at 600 dpi */
210,
230,
190,
190,
/* 08 09 0a 0b */
{0x00, 0x00, 0x18, 0x69} ,
/* 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d */
@ -1215,7 +1215,7 @@ static Genesys_Model hpg4050_model = {
{16, 8, 0}, /* possible depths in color mode */
SANE_FIX (6.55), /* Start of scan area in mm (x) */
SANE_FIX (15.00), /* Start of scan area in mm (y) */
SANE_FIX (13.00), /* Start of scan area in mm (y) */
SANE_FIX (217.9), /* Size of scan area in mm (x) 5148 pixels at 600 dpi*/
SANE_FIX (315.0), /* Size of scan area in mm (y) */
@ -1234,7 +1234,9 @@ static Genesys_Model hpg4050_model = {
SANE_FIX (0.0), /* Amount of feeding needed to eject document
after finishing scanning in mm */
0, 37, 74, /* RGB CCD Line-distance correction in line number */
0, 24, 48, /* RGB CCD Line-distance correction in line number */
/* 0 38 76 OK 1200/2400 */
/* 0 24 48 OK [100,600] dpi */
COLOR_ORDER_RGB, /* Order of the CCD/CIS colors */
@ -1246,8 +1248,9 @@ static Genesys_Model hpg4050_model = {
MOTOR_G4050,
GENESYS_FLAG_LAZY_INIT | /* Which flags are needed for this scanner? */
GENESYS_FLAG_OFFSET_CALIBRATION |
GENESYS_FLAG_DARK_CALIBRATION |
GENESYS_FLAG_STAGGERED_LINE |
GENESYS_FLAG_SKIP_WARMUP |
GENESYS_FLAG_DARK_CALIBRATION |
GENESYS_FLAG_CUSTOM_GAMMA,
GENESYS_HAS_SCAN_SW | GENESYS_HAS_FILE_SW | GENESYS_HAS_COPY_SW,
100,

Wyświetl plik

@ -1135,7 +1135,7 @@ gl843_init_optical_regs_scan (Genesys_Device * dev,
dpiset = used_res * cksel;
/* start and end coordinate in optical dpi coordinates */
startx = (start + dev->sensor.dummy_pixel)/cksel;
startx = (start + dev->sensor.dummy_pixel * tgtime)/cksel;
used_pixels=pixels/cksel;
endx = startx + used_pixels;
@ -1288,7 +1288,7 @@ gl843_init_optical_regs_scan (Genesys_Device * dev,
DBG (DBG_io2, "%s: exposure used=%d\n", __FUNCTION__, exposure/tgtime);
r = sanei_genesys_get_address (reg, REG_DUMMY);
r->value = dev->sensor.dummy_pixel/factor;
r->value = dev->sensor.dummy_pixel * tgtime;
DBGCOMPLETED;
return SANE_STATUS_GOOD;
@ -3116,7 +3116,7 @@ gl843_offset_calibration (Genesys_Device * dev)
/* offset calibration is always done in color mode */
channels = 3;
lines=1;
lines=8;
bpp=8;
/* compute divider factor to compute final pixels number */
@ -3283,7 +3283,7 @@ gl843_coarse_gain_calibration (Genesys_Device * dev, int dpi)
int bpp;
DBG (DBG_proc, "gl843_coarse_gain_calibration: dpi = %d\n", dpi);
dpihw=sanei_genesys_compute_dpihw(dev,dev->settings.xres);
dpihw=sanei_genesys_compute_dpihw(dev, dpi);
factor=dev->sensor.optical_res/dpihw;
/* coarse gain calibration is always done in color mode */
@ -3643,6 +3643,7 @@ gl843_init (Genesys_Device * dev)
/* move head away from park position */
gl843_feed (dev, 300);
usleep (100000);
/* now hardware part is OK, set up device struct */
FREE_IFNOT_NULL (dev->white_average_data);