kopia lustrzana https://gitlab.com/sane-project/backends
working 2400 dpi mode for gl847
rodzic
49b9fa7c4b
commit
bfc3cad22f
|
@ -864,6 +864,7 @@ gl847_init_motor_regs_scan (Genesys_Device * dev,
|
|||
uint32_t z1, z2;
|
||||
unsigned int min_restep = 0x20;
|
||||
uint8_t val, effective;
|
||||
int fast_step_type;
|
||||
|
||||
DBGSTART;
|
||||
DBG (DBG_proc, "gl847_init_motor_regs_scan : scan_exposure_time=%d, "
|
||||
|
@ -897,7 +898,7 @@ gl847_init_motor_regs_scan (Genesys_Device * dev,
|
|||
if (flags & MOTOR_FLAG_AUTO_GO_HOME)
|
||||
r->value |= REG02_AGOHOME;
|
||||
|
||||
if (flags & MOTOR_FLAG_DISABLE_BUFFER_FULL_MOVE)
|
||||
if (flags & MOTOR_FLAG_DISABLE_BUFFER_FULL_MOVE || scan_yres>=2400)
|
||||
r->value |= REG02_ACDCDIS;
|
||||
|
||||
/* scan and backtracking slope table */
|
||||
|
@ -915,12 +916,17 @@ gl847_init_motor_regs_scan (Genesys_Device * dev,
|
|||
|
||||
/* fast table */
|
||||
fast_dpi=sanei_genesys_get_lowest_ydpi(dev);
|
||||
fast_step_type=scan_step_type;
|
||||
if(scan_step_type>=2)
|
||||
{
|
||||
fast_step_type=2;
|
||||
}
|
||||
fast_time=sanei_genesys_slope_table(fast_table,
|
||||
&fast_steps,
|
||||
fast_dpi,
|
||||
scan_exposure_time,
|
||||
dev->motor.base_ydpi,
|
||||
scan_step_type,
|
||||
fast_step_type,
|
||||
factor,
|
||||
dev->model->motor_type,
|
||||
gl847_motors);
|
||||
|
@ -930,9 +936,9 @@ gl847_init_motor_regs_scan (Genesys_Device * dev,
|
|||
RIE(gl847_send_slope_table (dev, FAST_TABLE, fast_table, fast_steps*factor));
|
||||
RIE(gl847_send_slope_table (dev, HOME_TABLE, fast_table, fast_steps*factor));
|
||||
|
||||
/* substract acceleration distance from feedl */
|
||||
/* substract acceleration distance from feedl XXX STEF XXX : 2 different step type */
|
||||
feedl=feed_steps;
|
||||
feedl<<=scan_step_type;
|
||||
feedl<<=fast_step_type;
|
||||
|
||||
dist = scan_steps;
|
||||
if (use_fast_fed)
|
||||
|
@ -997,7 +1003,7 @@ gl847_init_motor_regs_scan (Genesys_Device * dev,
|
|||
|
||||
DBG (DBG_info, "gl847_init_motor_regs_scan: z2 = %d\n", z2);
|
||||
r = sanei_genesys_get_address (reg, REG63);
|
||||
r->value = ((z2 >> 16) & REG63_Z2MOD) | (scan_step_type << REG63S_FSTPSEL);
|
||||
r->value = ((z2 >> 16) & REG63_Z2MOD) | (fast_step_type << REG63S_FSTPSEL);
|
||||
r = sanei_genesys_get_address (reg, REG64);
|
||||
r->value = ((z2 >> 8) & REG64_Z2MOD);
|
||||
r = sanei_genesys_get_address (reg, REG65);
|
||||
|
@ -1128,9 +1134,9 @@ gl847_init_optical_regs_scan (Genesys_Device * dev,
|
|||
* of the sensor crossed by the scan area */
|
||||
if (dev->model->flags & GENESYS_FLAG_SIS_SENSOR && segnb>1)
|
||||
{
|
||||
dev->dist = sensor->segcnt*(segnb-1);
|
||||
dev->dist = sensor->segcnt;
|
||||
}
|
||||
endx += dev->dist;
|
||||
endx += dev->dist*(segnb-1);
|
||||
used_pixels=endx-startx;
|
||||
|
||||
status = gl847_set_fe (dev, AFE_SET);
|
||||
|
|
|
@ -559,6 +559,8 @@ static uint16_t lide200_fast[] = { 46876, 2343, 2343, 2343, 2343, 2343, 2343, 23
|
|||
*/
|
||||
static uint16_t lide200_base[] = { 46876, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2336, 2329, 2322, 2314, 2307, 2300,2292,2285,2278,2271,2263,2256,2249,2241,2234,2227,2219,2212,2205,2198,2190,2183,2176,2168,2161,2154,2146,2139,2132,2125,2117,2110,2103,2095,2088,2081,2073,2066,2059,2052,2044,2037,2030,2022,2015,2008,2001,1993,1986,1979,1971,1964,1957,1949,1942,1935,1928,1920,1913,1906,1898,1891,1884,1876,1869,1862,1855,1847,1840,1833,1825,1818,1811,1803,1796,1789,1782,1774,1767,1760,1752,1745,1738,1731,1723,1716,1709,1701,1694,1687,1679,1672,1665,1658,1650,1643,1636,1628,1621,1614,1606,1599,1592,1585,1577,1570,1563,1555,1548,1541,1533,1526,1519,1512,1504,1497,1490,1482,1475,1468,1461,1453,1446,1439,1431,1424,1417,1409,1402,1395,1388,1380,1373,1366,1358,1351,1344,1336,1329,1322,1315,1307,1300,1293,1285,1278,1271,1263,1256,1249,1242,1234,1227,1220,1212,1205,1198,1191,1183,1176,1169,1161,1154,1147,1139,1132,1125,1118,1110,1103,1096,1088,1081,1074,1066,1059,1052,1045,1037,1030,1023,1015,1008,1001,993,986,979,972,964,957,950,942,935,928,921,913,906,899,891,884,877,869,862,855,848,840,833,826,818,811,804,796,789,782,775,767,760,753,745,738,731,723,716,709,702,694,687,680,672,665,658,651,643,636,629,621,614,607,599,592,585,578,570,563,556,534,534, 0};
|
||||
static uint16_t lide200_medium[] = { 46876, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136, 8136,2343, 2336, 2329, 2322, 2314, 2307, 2300,2292,2285,2278,2271,2263,2256,2249,2241,2234,2227,2219,2212,2205,2198,2190,2183,2176,2168,2161,2154,2146,2139,2132,2125,2117,2110,2103,2095,2088,2081,2073,2066,2059,2052,2044,2037,2030,2022,2015,2008,2001,1993,1986,1979,1971,1964,1957,1949,1942,1935,1928,1920,1913,1906,1898,1891,1884,1876,1869,1862,1855,1847,1840,1833,1825,1818,1811,1803,1796,1789,1782,1774,1767,1760,1752,1745,1738,1731,1723,1716,1709,1701,1694,1687,1679,1672,1665,1658,1650,1643,1636,1628,1621,1614,1606,1599,1592,1585,1577,1570,1563,1555,1548,1541,1533,1526,1519,1512,1504,1497,1490,1482,1475,1468,1461,1453,1446,1439,1431,1424,1417,1409,1402,1395,1388,1380,1373,1366,1358,1351,1344,1336,1329,1322,1315,1307,1300,1293,1285,1278,1271,1263,1256,1249,1242,1234,1227,1220,1212,1205,1198,1191,1183,1176,1169,1161,1154,1147,1139,1132,1125,1118,1110,1103,1096,1088,1081,1074,1066,1059,1052,1045,1037,1030,1023,1015,1008,1001,993,986,979,972,964,957,950,942,935,928,921,913,906,899,891,884,877,869,862,855,848,840,833,826,818,811,804,796,789,782,775,767,760,753,745,738,731,723,716,709,702,694,687,680,672,665,658,651,643,636,629,621,614,607,599,592,585,578,570,563,556,534,534, 0};
|
||||
static uint16_t lide200_high[] = { 46876, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 31680, 2219,2212,2205,2198,2190,2183,2176,2168,2161,2154,2146,2139,2132,2125,2117,2110,2103,2095,2088,2081,2073,2066,2059,2052,2044,2037,2030,2022,2015,2008,2001,1993,1986,1979,1971,1964,1957,1949,1942,1935,1928,1920,1913,1906,1898,1891,1884,1876,1869,1862,1855,1847,1840,1833,1825,1818,1811,1803,1796,1789,1782,1774,1767,1760,1752,1745,1738,1731,1723,1716,1709,1701,1694,1687,1679,1672,1665,1658,1650,1643,1636,1628,1621,1614,1606,1599,1592,1585,1577,1570,1563,1555,1548,1541,1533,1526,1519,1512,1504,1497,1490,1482,1475,1468,1461,1453,1446,1439,1431,1424,1417,1409,1402,1395,1388,1380,1373,1366,1358,1351,1344,1336,1329,1322,1315,1307,1300,1293,1285,1278,1271,1263,1256,1249,1242,1234,1227,1220,1212,1205,1198,1191,1183,1176,1169,1161,1154,1147,1139,1132,1125,1118,1110,1103,1096,1088,1081,1074,1066,1059,1052,1045,1037,1030,1023,1015,1008,1001,993,986,979,972,964,957,950,942,935,928,921,913,906,899,891,884,877,869,862,855,848,840,833,826,818,811,804,796,789,782,775,767,760,753,745,738,731,723,716,709,702,694,687,680,672,665,658,651,643,636,629,621,614,607,599,592,585,578,570,563,556,534,534, 0};
|
||||
static uint16_t lide200_max[] = { 46876, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 41664, 2343, 2336, 2329, 2322, 2314, 2307, 2300,2292,2285,2278,2271,2263,2256,2249,2241,2234,2227,2219,2212,2205,2198,2190,2183,2176,2168,2161,2154,2146,2139,2132,2125,2117,2110,2103,2095,2088,2081,2073,2066,2059,2052,2044,2037,2030,2022,2015,2008,2001,1993,1986,1979,1971,1964,1957,1949,1942,1935,1928,1920,1913,1906,1898,1891,1884,1876,1869,1862,1855,1847,1840,1833,1825,1818,1811,1803,1796,1789,1782,1774,1767,1760,1752,1745,1738,1731,1723,1716,1709,1701,1694,1687,1679,1672,1665,1658,1650,1643,1636,1628,1621,1614,1606,1599,1592,1585,1577,1570,1563,1555,1548,1541,1533,1526,1519,1512,1504,1497,1490,1482,1475,1468,1461,1453,1446,1439,1431,1424,1417,1409,1402,1395,1388,1380,1373,1366,1358,1351,1344,1336,1329,1322,1315,1307,1300,1293,1285,1278,1271,1263,1256,1249,1242,1234,1227,1220,1212,1205,1198,1191,1183,1176,1169,1161,1154,1147,1139,1132,1125,1118,1110,1103,1096,1088,1081,1074,1066,1059,1052,1045,1037,1030,1023,1015,1008,1001,993,986,979,972,964,957,950,942,935,928,921,913,906,899,891,884,877,869,862,855,848,840,833,826,818,811,804,796,789,782,775,767,760,753,745,738,731,723,716,709,702,694,687,680,672,665,658,651,643,636,629,621,614,607,599,592,585,578,570,563,556,534,534, 0};
|
||||
|
||||
/**
|
||||
* database of motor profiles
|
||||
|
@ -569,8 +571,8 @@ static Motor_Profile gl847_motors[]={
|
|||
{MOTOR_CANONLIDE200, 2848, 0, lide200_base},
|
||||
{MOTOR_CANONLIDE200, 1432, 0, lide200_base},
|
||||
{MOTOR_CANONLIDE200, 2712, 2, lide200_medium},
|
||||
{MOTOR_CANONLIDE200, 5280, 2, lide200_base},
|
||||
{MOTOR_CANONLIDE200, 10416, 2, lide200_base},
|
||||
{MOTOR_CANONLIDE200, 5280, 3, lide200_high},
|
||||
{MOTOR_CANONLIDE200, 10416, 3, lide200_max},
|
||||
/* end of database entry */
|
||||
{0, 0, 0, NULL},
|
||||
};
|
||||
|
|
Ładowanie…
Reference in New Issue