Ralph Little
602b4f8d3d
genesys: add full button support for the Canon 5600F
...
This model spreads their GPIO buttons lines over 3 different registers:
0x6c, 0xa6 and 0x6d
2022-04-15 11:50:56 -07:00
Ralph Little
b3a04eae1a
genesys: added special PDF function definitions for Canon 4400f
2022-04-13 11:07:45 -07:00
Ralph Little
54766358b5
genesys: corrections for 4400f buttons.
...
Additional special PDF buttons not yet included.
We need a strategy to deal with them.
2022-04-13 11:06:02 -07:00
Ralph Little
ab7b3a38e2
genesys: added button definitions for Canoscan 8400F.
2022-04-03 14:47:51 -07:00
David Ward
5576d03afd
genesys: Fix forward declaration for type UsbDeviceEntry
...
This did not match the definition, causing a compiler warning.
2022-03-08 19:00:00 -05:00
David Ward
6be83f469b
Resolve compiler warnings about misleading indentation
...
This change is targeted at specific lines of code reported by GCC or
Clang as potentially causing unintended behavior.
2022-03-08 19:00:00 -05:00
Ralph Little
41866df6e1
genesys: fix for computation of total file size exceeding unsigned
...
Large scans that exceed 32-bits need cast to allow 64-bit size.
2022-02-27 18:55:26 -08:00
Povilas Kanapickas
2f17613dbb
genesys: Simplify gamma buffer setup
...
This also makes sure that we never access the source gamma tables out of
bounds which was possible previously.
2022-01-28 22:39:26 +02:00
Povilas Kanapickas
188cf63627
genesys: Simplify interface of generate_gamma_buffer()
2022-01-28 22:39:26 +02:00
Zdenek Dohnal
d8ebd5a4d7
genesys: GL845 has vector size 257 as well
...
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2042316
2022-01-28 22:31:09 +02:00
Povilas Kanapickas
cf7dde3c4b
genesys: Remove several accidental edits
...
Fixes 59506f866d
.
2021-12-30 20:21:31 +02:00
Povilas Kanapickas
59506f866d
genesys: Remove exception for the GPL license
...
Several files already don't have the exception that allows uses of the
code that are additional to the GPL license. I'm no longer comfortable
granting this exception for my subsequent contributions, thus the
exception has been removed.
2021-12-30 19:16:54 +02:00
Povilas Kanapickas
eca148dbf4
genesys: Remove unsupported 75 and 100 dpi resolutions on LiDE 200
2021-12-28 02:49:59 +02:00
Povilas Kanapickas
c86564a3e3
genesys: Remove unsupported 75 and 100 dpi resolutions on LiDE 100
2021-12-28 02:49:58 +02:00
Povilas Kanapickas
f5d5928346
genesys: Log the target motor speed in case it can't be acquired
2021-12-28 02:49:57 +02:00
Povilas Kanapickas
75ac76f87a
genesys: Remove unneeded per-scanner register setup
...
These register values are overwritten later.
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
f06e507de7
genesys: Fixed offset calibration on certain gl841 devices
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
334e4bd8d1
genesys: Use consistent initial exposure for led calibration on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
af175f6d4c
genesys: Fix inconsistent exposure values in led calib in testing mode
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
3e9431d079
genesys: Ensure sensor exposure is up-to-date when scanning on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
c11a0e7ab6
genesys: Reuse gl124 led calibration acceptability criteria for gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
d19ccd2fad
genesys: Remove no longer used led calibration fallback code on gl841
...
This was used only on scanners which did not have calibration target
intensity value. All gl841 scanners now have such setting, so the code
can be removed.
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
e540778cfa
genesys: Specify target white level for all gl841 devices
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
c1f731a7e0
genesys: Remove duplicate register write during led calibration on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
f1910ae58c
genesys: Reset registers after move during led calibration on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
86fe51e224
genesys: Remove erroneous register write on LiDE 80
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
0f341bf5a0
genesys: Clean up exposure calibration on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
4ee36a2e31
genesys: Use more robust gain calibration on gl841
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
bbc1543525
genesys: Remove duplicate register writes in gl841 calibration
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
675497fcd8
genesys: Use host-side gray instead of device-side true-gray on gl841
...
True gray mode is not handled correctly by devices: they have bugs that
lead to incorrect LED color being emitted (e.g. dark red) and thus this
feature is completely unusable. At least LiDE 35/40/50, LiDE 60 and LiDE
80 are affected.
Simpy disabling true-gray unfortunately leads to even worse outcome
because the scanner then simply proceeds to perform a color scan.
To work around these problems we do a normal color scan and then produce
gray output based on the color data. This will satisfy the use cases
when correct gray is needed. In cases when it is sufficient to construct
gray from a single color channel, the color filter setting could be
used.
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
7bbb6d8fdb
genesys: Implement host-side gray support
2021-12-27 22:39:19 +02:00
Povilas Kanapickas
2f030f04e2
genesys: Implement image pipeline for merging color channels to gray
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
ad84284186
genesys: Rename ImagePipelineNodeMergeMono{Lines -> LinesToColor}
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
bd4f009122
genesys: Remove true_gray variable by deriving its value directly
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
1e75025048
genesys: Fix incorrect scan exposure setup on gl841
...
When sensor exposure values are significantly different from each other
the total scan exposure will be too low leading to the device becoming
confused and significantly
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
601705fa3a
genesys: Inline gl841_get_led_exposure()
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
6c0fafac79
genesys: Remove broken two-table feeding support from gl841
...
At least on LiDE 50 two-table feeding caused unexplained motor spin-up
failures on certain motor exposures. Various register modifications
showed that there's high likelihood on device-side bug. Even the
official drivers don't use proper two-table feeding.
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
e27d991fdf
genesys: Remove unused two-table feeding support from gl847
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
d4dc13f527
genesys: Remove unused two-table feeding support from gl846
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
137a2d676f
genesys: Remove unused two-table feeding support from gl124
2021-12-27 22:22:44 +02:00
Povilas Kanapickas
b668e92047
genesys: Use {uint,int}{8,16,32,64} from std namespace
...
This is not strictly necessary as all known C++ compilers also inject
these types to the global namespace. However this is not guaranteed by
the C++ standard and accordingly some code completion tools don't
support this without additional configuration.
2021-12-26 16:09:17 +02:00
Povilas Kanapickas
7c76892b98
genesys: Remove empty file
2021-12-26 16:09:16 +02:00
Povilas Kanapickas
3752d11c34
genesys: Wrap very long lines
2021-12-26 16:09:15 +02:00
Povilas Kanapickas
80f6d21170
genesys: Enable gamma setting when contrast or brightness is adjusted
...
Brightness and contrast adjustments are handled via gamma tables and
thus gamma functionality is required for these settings to have any
effect.
Previously if the device has a sensor with identity gamma
(gamma = {1, 1, 1}), then gamma tables were turned off, consequently
brightness and contrast settings had no effect.
The underlying issue was identified by Gunnar Hjalmarsson
<gunnarhj@ubuntu.com> and STK.
2021-12-26 14:59:01 +02:00
Povilas Kanapickas
bf4614b76e
genesys: Store contrast and brightness adjustments in session params
2021-12-26 14:53:14 +02:00
Povilas Kanapickas
ea0e57a05e
genesys: Improve gray scan quality on LiDE 110
...
The fix has been suggested by Matthew Petroff <matthew@mpetroff.net>
2021-12-25 03:06:29 +02:00
Povilas Kanapickas
8ceb1dde8d
genesys: Improve gray scan quality on LiDE 120
...
The fix has been suggested by Matthew Petroff <matthew@mpetroff.net>
2021-12-25 03:06:28 +02:00
Povilas Kanapickas
711a3c5c14
genesys: Improve gray scan quality on LiDE 210
...
The fix has been suggested by Matthew Petroff <matthew@mpetroff.net>
2021-12-25 03:06:27 +02:00
Povilas Kanapickas
723eaa5917
genesys: Improve gray scan quality on LiDE 220
...
The fix has been suggested by Matthew Petroff <matthew@mpetroff.net>
2021-12-25 03:06:26 +02:00
Povilas Kanapickas
bd0f15f585
genesys: Move gl124 0x0c reg definition to sensor tables
2021-12-25 03:06:25 +02:00