diff --git a/backend/genesys_gl124.cc b/backend/genesys_gl124.cc index 55130bc93..89380d119 100644 --- a/backend/genesys_gl124.cc +++ b/backend/genesys_gl124.cc @@ -2187,7 +2187,7 @@ static void gl124_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s DBG( DBG_io2, "%s: STRPIXEL=%d, ENDPIXEL=%d, PIXELS=%d, SEGCNT=%d\n",__func__,strpixel,endpixel,endpixel-strpixel,segcnt); /* compute deletion factor */ - sanei_genesys_get_double(&dev->reg,REG_DPISET,&dpiset); + dpiset = dev->reg.get16(REG_DPISET); dpihw = sensor.get_register_hwdpi(dpiset); factor=dpihw/dpiset; DBG( DBG_io2, "%s: factor=%d\n",__func__,factor); diff --git a/backend/genesys_gl841.cc b/backend/genesys_gl841.cc index c376fe903..75a9394b2 100644 --- a/backend/genesys_gl841.cc +++ b/backend/genesys_gl841.cc @@ -1600,9 +1600,9 @@ static void gl841_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens if (flags & OPTICAL_FLAG_ENABLE_LEDADD) { r->value |= REG87_LEDADD; - sanei_genesys_get_double (reg, REG_EXPR, &expr); - sanei_genesys_get_double (reg, REG_EXPG, &expg); - sanei_genesys_get_double (reg, REG_EXPB, &expb); + expr = reg->get16(REG_EXPR); + expg = reg->get16(REG_EXPG); + expb = reg->get16(REG_EXPB); /* use minimal exposure for best image quality */ expavg = expg; @@ -4562,13 +4562,13 @@ static void gl841_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s /* data is whole line, we extract only the part for the scanned area */ length = (uint32_t) (size / 3); - sanei_genesys_get_double(&dev->reg,REG_STRPIXEL,&strpixel); - sanei_genesys_get_double(&dev->reg,REG_ENDPIXEL,&endpixel); + strpixel = dev->reg.get16(REG_STRPIXEL); + endpixel = dev->reg.get16(REG_ENDPIXEL); DBG(DBG_io2, "%s: STRPIXEL=%d, ENDPIXEL=%d, PIXELS=%d\n", __func__, strpixel, endpixel, endpixel-strpixel); /* compute deletion/average factor */ - sanei_genesys_get_double(&dev->reg,REG_DPISET,&dpiset); + dpiset = dev->reg.get16(REG_DPISET); dpihw = gl841_get_dpihw(dev); unsigned ccd_size_divisor = dev->current_setup.ccd_size_divisor; factor=dpihw/dpiset; diff --git a/backend/genesys_gl843.cc b/backend/genesys_gl843.cc index 56a8fbd0a..c86b27554 100644 --- a/backend/genesys_gl843.cc +++ b/backend/genesys_gl843.cc @@ -2080,8 +2080,8 @@ static void gl843_begin_scan(Genesys_Device* dev, const Genesys_Sensor& sensor, DBG_HELPER(dbg); uint16_t dpiset, dpihw; - /* get back the target dpihw */ - sanei_genesys_get_double (reg, REG_DPISET, &dpiset); + // get back the target dpihw + dpiset = reg->get16(REG_DPISET); dpihw = sensor.get_register_hwdpi(dpiset); /* set up GPIO for scan */ @@ -2558,7 +2558,6 @@ static void gl843_init_regs_for_shading(Genesys_Device* dev, const Genesys_Senso { DBG_HELPER(dbg); int move, resolution, dpihw, factor; - uint16_t strpixel; /* initial calibration reg values */ regs = dev->reg; @@ -2646,8 +2645,6 @@ static void gl843_init_regs_for_shading(Genesys_Device* dev, const Genesys_Senso dev->calib_total_bytes_to_read = dev->read_bytes_left; dev->scanhead_position_in_steps += dev->calib_lines + move; - sanei_genesys_get_double(®s,REG_STRPIXEL,&strpixel); - DBG(DBG_info, "%s: STRPIXEL=%d\n", __func__, strpixel); dev->write_registers(regs); } @@ -3863,15 +3860,15 @@ static void gl843_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s /* recompute STRPIXEL used shading calibration so we can * compute offset within data for SHDAREA case */ r = sanei_genesys_get_address(&dev->reg, REG18); - sanei_genesys_get_double(&dev->reg,REG_DPISET,&dpiset); + dpiset = dev->reg.get16(REG_DPISET); factor = sensor.optical_res / sensor.get_register_hwdpi(dpiset); /* start coordinate in optical dpi coordinates */ startx = (sensor.dummy_pixel / sensor.ccd_pixels_per_system_pixel()) / factor; /* current scan coordinates */ - sanei_genesys_get_double(&dev->reg,REG_STRPIXEL,&strpixel); - sanei_genesys_get_double(&dev->reg,REG_ENDPIXEL,&endpixel); + strpixel = dev->reg.get16(REG_STRPIXEL); + endpixel = dev->reg.get16(REG_ENDPIXEL); if (dev->model->model_id == MODEL_CANON_CANOSCAN_8600F) { diff --git a/backend/genesys_gl846.cc b/backend/genesys_gl846.cc index f993c5814..fc6932274 100644 --- a/backend/genesys_gl846.cc +++ b/backend/genesys_gl846.cc @@ -1916,7 +1916,6 @@ static void gl846_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s DBG_HELPER_ARGS(dbg, "writing %d bytes of shading data", size); uint32_t addr, length, i, x, factor, pixels; uint32_t dpiset, dpihw, strpixel, endpixel; - uint16_t tempo; uint32_t lines, channels; uint8_t val,*ptr,*src; @@ -1927,14 +1926,11 @@ static void gl846_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s write(0x10068000,0x00000dd8) */ length = (uint32_t) (size / 3); - sanei_genesys_get_double(&dev->reg,REG_STRPIXEL,&tempo); - strpixel=tempo; - sanei_genesys_get_double(&dev->reg,REG_ENDPIXEL,&tempo); - endpixel=tempo; + strpixel = dev->reg.get16(REG_STRPIXEL); + endpixel = dev->reg.get16(REG_ENDPIXEL); /* compute deletion factor */ - sanei_genesys_get_double(&dev->reg,REG_DPISET,&tempo); - dpiset=tempo; + dpiset = dev->reg.get16(REG_DPISET); DBG(DBG_io2, "%s: STRPIXEL=%d, ENDPIXEL=%d, PIXELS=%d, DPISET=%d\n", __func__, strpixel, endpixel, endpixel-strpixel, dpiset); dpihw = sensor.get_register_hwdpi(dpiset); diff --git a/backend/genesys_gl847.cc b/backend/genesys_gl847.cc index 2f2fdea07..48e61950a 100644 --- a/backend/genesys_gl847.cc +++ b/backend/genesys_gl847.cc @@ -1968,7 +1968,6 @@ static void gl847_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s DBG_HELPER_ARGS(dbg, "writing %d bytes of shading data", size); uint32_t addr, length, i, x, factor, pixels; uint32_t dpiset, dpihw, strpixel, endpixel; - uint16_t tempo; uint32_t lines, channels; uint8_t val,*ptr,*src; @@ -1979,14 +1978,11 @@ static void gl847_send_shading_data(Genesys_Device* dev, const Genesys_Sensor& s write(0x10068000,0x00000dd8) */ length = (uint32_t) (size / 3); - sanei_genesys_get_double(&dev->reg,REG_STRPIXEL,&tempo); - strpixel=tempo; - sanei_genesys_get_double(&dev->reg,REG_ENDPIXEL,&tempo); - endpixel=tempo; + strpixel = dev->reg.get16(REG_STRPIXEL); + endpixel = dev->reg.get16(REG_ENDPIXEL); /* compute deletion factor */ - sanei_genesys_get_double(&dev->reg,REG_DPISET,&tempo); - dpiset=tempo; + dpiset = dev->reg.get16(REG_DPISET); DBG(DBG_io2, "%s: STRPIXEL=%d, ENDPIXEL=%d, PIXELS=%d, DPISET=%d\n", __func__, strpixel, endpixel, endpixel-strpixel, dpiset); dpihw = sensor.get_register_hwdpi(dpiset); diff --git a/backend/genesys_low.h b/backend/genesys_low.h index cf62fbd26..44ce449ae 100644 --- a/backend/genesys_low.h +++ b/backend/genesys_low.h @@ -573,11 +573,6 @@ inline void sanei_genesys_set_triple(Genesys_Register_Set* regs, uint16_t addr, regs->set24(addr, value); } -inline void sanei_genesys_get_double(Genesys_Register_Set* regs, uint16_t addr, uint16_t* value) -{ - *value = regs->get16(addr); -} - inline void sanei_genesys_get_triple(Genesys_Register_Set* regs, uint16_t addr, uint32_t* value) { *value = regs->get24(addr);