1141cc406Sopenharmony_ci/*............................................................................. 2141cc406Sopenharmony_ci * Project : SANE library for Plustek flatbed scanners. 3141cc406Sopenharmony_ci *............................................................................. 4141cc406Sopenharmony_ci */ 5141cc406Sopenharmony_ci 6141cc406Sopenharmony_ci/** @file plustek-usbdevs.c 7141cc406Sopenharmony_ci * @brief Here we have our USB device definitions. 8141cc406Sopenharmony_ci * 9141cc406Sopenharmony_ci * Based on sources acquired from Plustek Inc.<br> 10141cc406Sopenharmony_ci * Copyright (C) 2001-2013 Gerhard Jaeger <gerhard@gjaeger.de> 11141cc406Sopenharmony_ci * 12141cc406Sopenharmony_ci * History: 13141cc406Sopenharmony_ci * - 0.40 - starting version of the USB support 14141cc406Sopenharmony_ci * - 0.41 - added EPSON1250 entries 15141cc406Sopenharmony_ci * - changed reg 0x58 of EPSON Hw0x04B8_0x010F to 0x0d 16141cc406Sopenharmony_ci * - reduced memory size of EPSON to 512 17141cc406Sopenharmony_ci * - adjusted tpa origin of UT24 18141cc406Sopenharmony_ci * - 0.42 - added register 0x27, 0x2c-0x37 19141cc406Sopenharmony_ci * - tweaked EPSON1250 settings according to Gene and Reinhard 20141cc406Sopenharmony_ci * - tweaked HP2200 settings according to Stefan 21141cc406Sopenharmony_ci * - added UMAX 3400 entries 22141cc406Sopenharmony_ci * - added HP2100 settings according to Craig Smoothey 23141cc406Sopenharmony_ci * - added LM9832 based U24 24141cc406Sopenharmony_ci * - added Canon N650U entry 25141cc406Sopenharmony_ci * - 0.43 - tweaked HP 2200C entries 26141cc406Sopenharmony_ci * - added _WAF_MISC_IO5 for HP lamp switching 27141cc406Sopenharmony_ci * - added motor profiles 28141cc406Sopenharmony_ci * - cleanup 29141cc406Sopenharmony_ci * - 0.44 - added EPSON 1260 and 660 30141cc406Sopenharmony_ci * - added Genius Model strings 31141cc406Sopenharmony_ci * - added Canon N670U entry 32141cc406Sopenharmony_ci * - added bStepsToReverse to the HwDesc structure 33141cc406Sopenharmony_ci * - tweaked EPSON1250 settings for TPA (thanks to Till Kamppeter) 34141cc406Sopenharmony_ci * - 0.45 - added UMAX motor settings 35141cc406Sopenharmony_ci * - added UMAX 5400 settings 36141cc406Sopenharmony_ci * - added CanoScan1240 settings (thanks to Johann Philipp) 37141cc406Sopenharmony_ci * - tweaked EPSON 1260 settings 38141cc406Sopenharmony_ci * - removed EPSON 660 stuff 39141cc406Sopenharmony_ci * - added Canon 1220U entry 40141cc406Sopenharmony_ci * - added entry for Compaq S4-100 41141cc406Sopenharmony_ci * - 0.46 - fine-tuning for the CanoScan devices 42141cc406Sopenharmony_ci * - fixed HP2200 shading position 43141cc406Sopenharmony_ci * - renamed to plustek-usbdevs.c 44141cc406Sopenharmony_ci * - 0.47 - added BearPaw 1200 settings for PID 0x4001 (LM9832) 45141cc406Sopenharmony_ci * - tweaked the LiDE20 MCLK setting for 75DPI grayscale 46141cc406Sopenharmony_ci * - enlarged the scan-area of the UMAX3400 to 11.7" 47141cc406Sopenharmony_ci * - added CanoScan D660U 48141cc406Sopenharmony_ci * - 0.48 - added another incarnation of the UMAX 3400 49141cc406Sopenharmony_ci * - added parameters for UMAX 3450 TPA 50141cc406Sopenharmony_ci * - parameter tuning for CanoScan D660U 51141cc406Sopenharmony_ci * - cleanup 52141cc406Sopenharmony_ci * - 0.49 - tweaked motor settings for EPSON and CANON1200 53141cc406Sopenharmony_ci * - added support for CanoScan LiDE25 54141cc406Sopenharmony_ci * - 0.50 - cleanup 55141cc406Sopenharmony_ci * - removed obsolete _WAF_BLACKFINE 56141cc406Sopenharmony_ci * - LiDE20 does not seem to have a reliable black calibration area 57141cc406Sopenharmony_ci * so the devices now will switch off the lamp for dark calibration 58141cc406Sopenharmony_ci * - added Stephan Februarys' <stephanf@singnet.com.sg> LiDE25 changes 59141cc406Sopenharmony_ci * - fixed high-speed feature of CanoScan D660U 60141cc406Sopenharmony_ci * - tweaked LiDE25, LiDE30 and N1220U settings 61141cc406Sopenharmony_ci * - changed high-speed setting for UMAX 3400, due to bugreport #302317 62141cc406Sopenharmony_ci * - fixed CanoScan N650U settings 63141cc406Sopenharmony_ci * - fixed CanoScan N670U settings, see (bugreport #302738) 64141cc406Sopenharmony_ci * - added high-speed setting for HP2200 65141cc406Sopenharmony_ci * - 0.51 - tweaked CanoScan N1220U settings again 66141cc406Sopenharmony_ci * - added settings for Syscan TravelScan 662 67141cc406Sopenharmony_ci * - tweaked settings for Bearpaw 1200 68141cc406Sopenharmony_ci * - fixed CanoScan LiDE20 settings, cause of various reports, seems 69141cc406Sopenharmony_ci * Canon has built-in different motortypes 70141cc406Sopenharmony_ci * - also fixed Motorsettings for LiDE30 71141cc406Sopenharmony_ci * - 0.52 - added Q-Scan USB001 settings 72141cc406Sopenharmony_ci * - added Q-Scan USB201 settings (thanks to Hiroshi Miura) 73141cc406Sopenharmony_ci * - tweaked motor settings for Bearpaw 1200 74141cc406Sopenharmony_ci * - added TravelScan 464 settings 75141cc406Sopenharmony_ci * - tweaked highspeed motor settings for Epson 1260 76141cc406Sopenharmony_ci * - tweaked CanoScan N650U motor settings 77141cc406Sopenharmony_ci * 78141cc406Sopenharmony_ci * <hr> 79141cc406Sopenharmony_ci * This file is part of the SANE package. 80141cc406Sopenharmony_ci * 81141cc406Sopenharmony_ci * This program is free software; you can redistribute it and/or 82141cc406Sopenharmony_ci * modify it under the terms of the GNU General Public License as 83141cc406Sopenharmony_ci * published by the Free Software Foundation; either version 2 of the 84141cc406Sopenharmony_ci * License, or (at your option) any later version. 85141cc406Sopenharmony_ci * 86141cc406Sopenharmony_ci * This program is distributed in the hope that it will be useful, but 87141cc406Sopenharmony_ci * WITHOUT ANY WARRANTY; without even the implied warranty of 88141cc406Sopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 89141cc406Sopenharmony_ci * General Public License for more details. 90141cc406Sopenharmony_ci * 91141cc406Sopenharmony_ci * You should have received a copy of the GNU General Public License 92141cc406Sopenharmony_ci * along with this program. If not, see <https://www.gnu.org/licenses/>. 93141cc406Sopenharmony_ci * 94141cc406Sopenharmony_ci * As a special exception, the authors of SANE give permission for 95141cc406Sopenharmony_ci * additional uses of the libraries contained in this release of SANE. 96141cc406Sopenharmony_ci * 97141cc406Sopenharmony_ci * The exception is that, if you link a SANE library with other files 98141cc406Sopenharmony_ci * to produce an executable, this does not by itself cause the 99141cc406Sopenharmony_ci * resulting executable to be covered by the GNU General Public 100141cc406Sopenharmony_ci * License. Your use of that executable is in no way restricted on 101141cc406Sopenharmony_ci * account of linking the SANE library code into it. 102141cc406Sopenharmony_ci * 103141cc406Sopenharmony_ci * This exception does not, however, invalidate any other reasons why 104141cc406Sopenharmony_ci * the executable file might be covered by the GNU General Public 105141cc406Sopenharmony_ci * License. 106141cc406Sopenharmony_ci * 107141cc406Sopenharmony_ci * If you submit changes to SANE to the maintainers to be included in 108141cc406Sopenharmony_ci * a subsequent release, you agree by submitting the changes that 109141cc406Sopenharmony_ci * those changes may be distributed with this exception intact. 110141cc406Sopenharmony_ci * 111141cc406Sopenharmony_ci * If you write modifications of your own for SANE, it is your choice 112141cc406Sopenharmony_ci * whether to permit this exception to apply to your modifications. 113141cc406Sopenharmony_ci * If you do not wish that, delete this exception notice. 114141cc406Sopenharmony_ci * <hr> 115141cc406Sopenharmony_ci */ 116141cc406Sopenharmony_ci 117141cc406Sopenharmony_ci/* the other stuff is included by plustek.c ...*/ 118141cc406Sopenharmony_ci#include "plustek-usb.h" 119141cc406Sopenharmony_ci 120141cc406Sopenharmony_ci/** for Register 0x26 121141cc406Sopenharmony_ci */ 122141cc406Sopenharmony_ci#define _ONE_CH_COLOR 0x04 123141cc406Sopenharmony_ci#define _RED_CH 0x00 124141cc406Sopenharmony_ci#define _GREEN_CH 0x08 125141cc406Sopenharmony_ci#define _BLUE_CH 0x10 126141cc406Sopenharmony_ci 127141cc406Sopenharmony_ci 128141cc406Sopenharmony_ci/* Plustek Model: UT12/UT16 129141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 130141cc406Sopenharmony_ci */ 131141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0017_0 = 132141cc406Sopenharmony_ci{ 133141cc406Sopenharmony_ci { /* Normal */ 134141cc406Sopenharmony_ci {0, 93}, /* DataOrigin (X: 0, Y: 8mm from home) */ 135141cc406Sopenharmony_ci 0, -1, /* ShadingOriginY, DarkShadOrgY */ 136141cc406Sopenharmony_ci {2550, 3508}, /* Size */ 137141cc406Sopenharmony_ci {50, 50} /* MinDpi */ 138141cc406Sopenharmony_ci }, 139141cc406Sopenharmony_ci { /* Positive */ 140141cc406Sopenharmony_ci {1040 + 15, 744 - 32},/* DataOrigin (X: 7cm + 1.8cm, Y: 8mm + 5.5cm)*/ 141141cc406Sopenharmony_ci 543, -1, /* ShadingOriginY (Y: 8mm + 3.8cm) */ 142141cc406Sopenharmony_ci {473, 414}, /* Size (X: 4cm, Y: 3.5cm) */ 143141cc406Sopenharmony_ci {150, 150} /* MinDpi */ 144141cc406Sopenharmony_ci }, 145141cc406Sopenharmony_ci { /* Negative */ 146141cc406Sopenharmony_ci {1004 + 55, 744 + 12}, /* DataOrigin (X: 7cm + 1.5cm, Y: 8mm + 5.5cm)*/ 147141cc406Sopenharmony_ci 148141cc406Sopenharmony_ci /* 533 blaustichig */ 149141cc406Sopenharmony_ci 537 /* hell */ 150141cc406Sopenharmony_ci /* 543 gruenstichig */ 151141cc406Sopenharmony_ci 152141cc406Sopenharmony_ci /*543*/, -1, /* ShadingOriginY (Y: 8mm + 3.8cm) */ 153141cc406Sopenharmony_ci {567, 414}, /* Size (X: 4.8cm, Y: 3.5cm) */ 154141cc406Sopenharmony_ci {150, 150} /* MinDpi */ 155141cc406Sopenharmony_ci }, 156141cc406Sopenharmony_ci { /* Adf */ 157141cc406Sopenharmony_ci {0, 95}, /* DataOrigin (X: 0, Y: 8mm from home) */ 158141cc406Sopenharmony_ci 0, -1, /* ShadingOriginY, DarkShadOrgY */ 159141cc406Sopenharmony_ci {2550, 3508}, /* Size */ 160141cc406Sopenharmony_ci {50, 50} /* MinDpi */ 161141cc406Sopenharmony_ci }, 162141cc406Sopenharmony_ci {600, 600}, /* OpticDpi */ 163141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, /* wFlags */ 164141cc406Sopenharmony_ci SENSORORDER_rgb, /* bSensorOrder */ 165141cc406Sopenharmony_ci 4, /* bSensorDistance */ 166141cc406Sopenharmony_ci 4, /* bButtons */ 167141cc406Sopenharmony_ci kNEC3799, /* bCCD */ 168141cc406Sopenharmony_ci 0x07, /* bPCB */ 169141cc406Sopenharmony_ci _WAF_NONE, /* no workarounds or other special stuff needed */ 170141cc406Sopenharmony_ci _NO_MIO /* does not use misc I/O for lamp */ 171141cc406Sopenharmony_ci}; 172141cc406Sopenharmony_ci 173141cc406Sopenharmony_ci/* Plustek Model: U24 174141cc406Sopenharmony_ci * Description of the entries, see above... 175141cc406Sopenharmony_ci */ 176141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0015_0 = 177141cc406Sopenharmony_ci{ 178141cc406Sopenharmony_ci {{0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 179141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, {473, 414}, {150, 150}}, 180141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, {567, 414}, {150, 150}}, 181141cc406Sopenharmony_ci {{0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 182141cc406Sopenharmony_ci {600, 600}, 183141cc406Sopenharmony_ci 0, 184141cc406Sopenharmony_ci SENSORORDER_rgb, 185141cc406Sopenharmony_ci 4, 4, kNEC3799, 0x05, _WAF_NONE, _NO_MIO 186141cc406Sopenharmony_ci}; 187141cc406Sopenharmony_ci 188141cc406Sopenharmony_ci/* Plustek Model: ??? 189141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 190141cc406Sopenharmony_ci */ 191141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0014_0 = 192141cc406Sopenharmony_ci{ 193141cc406Sopenharmony_ci {{0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 194141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, {473, 414}, {150, 150}}, 195141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, {567, 414}, {150, 150}}, 196141cc406Sopenharmony_ci {{0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 197141cc406Sopenharmony_ci {600, 600}, 198141cc406Sopenharmony_ci 0, 199141cc406Sopenharmony_ci SENSORORDER_rgb, 200141cc406Sopenharmony_ci 4, 0, kNEC3799, 0x04, _WAF_NONE, _NO_MIO 201141cc406Sopenharmony_ci}; 202141cc406Sopenharmony_ci 203141cc406Sopenharmony_ci/* Plustek Model: ??? and Genius ColorPage-HR6 V2 204141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 205141cc406Sopenharmony_ci*/ 206141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0007_0 = 207141cc406Sopenharmony_ci{ 208141cc406Sopenharmony_ci {{0, 124}, 36, -1, {2550, 3508}, { 50, 50 }}, 209141cc406Sopenharmony_ci {{1040, 744}, 543, -1, { 473, 414 }, {150, 150}}, 210141cc406Sopenharmony_ci {{1004, 744}, 543, -1, { 567, 414 }, {150, 150}}, 211141cc406Sopenharmony_ci {{0, 95}, 0, -1, {2550, 3508}, { 50, 50 }}, 212141cc406Sopenharmony_ci {600, 600}, 213141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 214141cc406Sopenharmony_ci SENSORORDER_rgb, 215141cc406Sopenharmony_ci 4, 5, kNEC3799, 0x07, _WAF_NONE, _NO_MIO 216141cc406Sopenharmony_ci}; 217141cc406Sopenharmony_ci 218141cc406Sopenharmony_ci/* Plustek Model: ??? 219141cc406Sopenharmony_ci * Tokyo: NS9832 + Button + SONY548 220141cc406Sopenharmony_ci */ 221141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0005_2 = 222141cc406Sopenharmony_ci{ 223141cc406Sopenharmony_ci {{ 0, 64}, 0, -1, {2550, 3508}, { 50, 50 }}, 224141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 225141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 226141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 227141cc406Sopenharmony_ci {600, 600}, 228141cc406Sopenharmony_ci 0, 229141cc406Sopenharmony_ci SENSORORDER_rgb, 230141cc406Sopenharmony_ci 8, 2, kSONY548, 0x05, _WAF_NONE, _NO_MIO 231141cc406Sopenharmony_ci}; 232141cc406Sopenharmony_ci 233141cc406Sopenharmony_ci/* Genius ColorPage-HR7 234141cc406Sopenharmony_ci * Hualien: NS9832 + TPA + Button + NEC3778 235141cc406Sopenharmony_ci */ 236141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0007_4 = 237141cc406Sopenharmony_ci{ 238141cc406Sopenharmony_ci {{ 0, 111 - 4 }, 0, -1, {2550, 3508}, { 50, 50 }}, 239141cc406Sopenharmony_ci {{1040 + 5, 744 - 32}, 543, -1, { 473, 414 }, {150, 150}}, 240141cc406Sopenharmony_ci {{1040 - 20, 768 }, 543, -1, { 567, 414 }, {150, 150}}, 241141cc406Sopenharmony_ci {{ 0, 95 }, 0, -1, {2550, 3508}, { 50, 50 }}, 242141cc406Sopenharmony_ci {1200, 1200}, 243141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 244141cc406Sopenharmony_ci SENSORORDER_rgb, 245141cc406Sopenharmony_ci 12, 5, kNEC3778, 0x07, _WAF_NONE, _NO_MIO 246141cc406Sopenharmony_ci}; 247141cc406Sopenharmony_ci 248141cc406Sopenharmony_ci/* Genius ColorPage-HR7LE and ColorPage-HR6X 249141cc406Sopenharmony_ci * Hualien: NS9832 + Button + NEC3778 250141cc406Sopenharmony_ci */ 251141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0005_4 = 252141cc406Sopenharmony_ci{ 253141cc406Sopenharmony_ci {{ 0, 111 - 4 }, 0, -1, {2550, 3508}, {50, 50}}, 254141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 255141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 256141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 257141cc406Sopenharmony_ci {1200, 1200}, 258141cc406Sopenharmony_ci 0, 259141cc406Sopenharmony_ci SENSORORDER_rgb, 260141cc406Sopenharmony_ci 12, 5, kNEC3778, 0x05, _WAF_NONE, _NO_MIO 261141cc406Sopenharmony_ci}; 262141cc406Sopenharmony_ci 263141cc406Sopenharmony_ci/* Plustek Model: ???, Genius ColorPage HR6A 264141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 265141cc406Sopenharmony_ci */ 266141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x000F_0 = 267141cc406Sopenharmony_ci{ 268141cc406Sopenharmony_ci {{ 0, 130}, 12, -1, {2550, 3508}, { 50, 50 }}, 269141cc406Sopenharmony_ci {{1040, 744}, 543, -1, { 473, 414 }, {150, 150}}, 270141cc406Sopenharmony_ci {{1004, 744}, 543, -1, { 567, 414 }, {150, 150}}, 271141cc406Sopenharmony_ci {{ 0, 244}, 12, -1, {2550, 4200}, { 50, 50 }}, 272141cc406Sopenharmony_ci {600, 600}, 273141cc406Sopenharmony_ci DEVCAPSFLAG_Normal + DEVCAPSFLAG_Adf, 274141cc406Sopenharmony_ci SENSORORDER_rgb, 275141cc406Sopenharmony_ci 4, 5, kNEC3799, 0x0F, _WAF_NONE, _NO_MIO 276141cc406Sopenharmony_ci}; 277141cc406Sopenharmony_ci 278141cc406Sopenharmony_ci/* Plustek Model: UT12 279141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 280141cc406Sopenharmony_ci */ 281141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0013_0 = 282141cc406Sopenharmony_ci{ 283141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 284141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 285141cc406Sopenharmony_ci {{1004 + 30, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 286141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 287141cc406Sopenharmony_ci {600, 600}, 288141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 289141cc406Sopenharmony_ci SENSORORDER_rgb, 290141cc406Sopenharmony_ci 4, 4, kNEC3799, 0x03, _WAF_NONE, _NO_MIO 291141cc406Sopenharmony_ci}; 292141cc406Sopenharmony_ci 293141cc406Sopenharmony_ci/* Plustek Model: U24 294141cc406Sopenharmony_ci * KH: NS9831 + Button + NEC3799 295141cc406Sopenharmony_ci// */ 296141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0011_0 = 297141cc406Sopenharmony_ci{ 298141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 299141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 300141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 301141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 302141cc406Sopenharmony_ci {600, 600}, 303141cc406Sopenharmony_ci 0, 304141cc406Sopenharmony_ci SENSORORDER_rgb, 305141cc406Sopenharmony_ci 4, 4, kNEC3799, 0x01, _WAF_NONE, _NO_MIO 306141cc406Sopenharmony_ci}; 307141cc406Sopenharmony_ci 308141cc406Sopenharmony_ci/* Plustek Model: U12 309141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 310141cc406Sopenharmony_ci */ 311141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0010_0 = 312141cc406Sopenharmony_ci{ 313141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 314141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 315141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 316141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 317141cc406Sopenharmony_ci {600, 600}, 318141cc406Sopenharmony_ci 0, 319141cc406Sopenharmony_ci SENSORORDER_rgb, 320141cc406Sopenharmony_ci 4, 0, kNEC3799, 0x00, _WAF_BSHIFT7_BUG, _NO_MIO 321141cc406Sopenharmony_ci}; 322141cc406Sopenharmony_ci 323141cc406Sopenharmony_ci/* Plustek Model: ??? 324141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3778 325141cc406Sopenharmony_ci */ 326141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0013_4 = 327141cc406Sopenharmony_ci{ 328141cc406Sopenharmony_ci {{ 0, 99 /*114*/}, 0, -1, {2550, 3508}, { 50, 50}}, 329141cc406Sopenharmony_ci {{ 1055, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 330141cc406Sopenharmony_ci {{1004 + 20, 744 - 20}, 543, -1, { 567, 414}, {150, 150}}, 331141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 332141cc406Sopenharmony_ci {1200, 1200}, 333141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 334141cc406Sopenharmony_ci SENSORORDER_rgb, 335141cc406Sopenharmony_ci 12, 4, kNEC3778, 0x03, _WAF_NONE, _NO_MIO 336141cc406Sopenharmony_ci}; 337141cc406Sopenharmony_ci 338141cc406Sopenharmony_ci/* Plustek Model: ??? 339141cc406Sopenharmony_ci * KH: NS9831 + Button + NEC3778 340141cc406Sopenharmony_ci */ 341141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0011_4 = 342141cc406Sopenharmony_ci{ 343141cc406Sopenharmony_ci {{ 0, 99 /*114*/}, 0, -1, {2550, 3508}, { 50, 50}}, 344141cc406Sopenharmony_ci {{ 1055, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 345141cc406Sopenharmony_ci {{1004 + 20, 744 - 20}, 543, -1 ,{ 567, 414}, {150, 150}}, 346141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 347141cc406Sopenharmony_ci {1200, 1200}, 348141cc406Sopenharmony_ci 0, 349141cc406Sopenharmony_ci SENSORORDER_rgb, 350141cc406Sopenharmony_ci 12, 4, kNEC3778, 0x01, _WAF_NONE, _NO_MIO 351141cc406Sopenharmony_ci}; 352141cc406Sopenharmony_ci 353141cc406Sopenharmony_ci/* Plustek Model: ??? 354141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3778 355141cc406Sopenharmony_ci */ 356141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0010_4 = 357141cc406Sopenharmony_ci{ 358141cc406Sopenharmony_ci {{ 0, 99 /*114*/}, 0, -1, {2550, 3508}, { 50, 50}}, 359141cc406Sopenharmony_ci {{ 1055, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 360141cc406Sopenharmony_ci {{1004 + 20, 744 - 20}, 543, -1, { 567, 414}, {150, 150}}, 361141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 362141cc406Sopenharmony_ci {1200, 1200}, 363141cc406Sopenharmony_ci 0, 364141cc406Sopenharmony_ci SENSORORDER_rgb, 365141cc406Sopenharmony_ci 12, 0, kNEC3778, 0x00, _WAF_NONE, _NO_MIO 366141cc406Sopenharmony_ci}; 367141cc406Sopenharmony_ci 368141cc406Sopenharmony_ci/* Plustek Model: UA18? 369141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3778 370141cc406Sopenharmony_ci */ 371141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x000F_4 = 372141cc406Sopenharmony_ci{ 373141cc406Sopenharmony_ci {{ 0, 107}, 0, -1, {2550, 3508}, { 50, 50}}, 374141cc406Sopenharmony_ci {{ 1040 + 5, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 375141cc406Sopenharmony_ci {{1040 - 20, 768}, 543, -1, { 567, 414}, {150, 150}}, 376141cc406Sopenharmony_ci {{ 0, 244}, 0, -1, {2550, 4200}, { 50, 50}}, 377141cc406Sopenharmony_ci {1200, 1200}, 378141cc406Sopenharmony_ci DEVCAPSFLAG_Normal + DEVCAPSFLAG_Adf, 379141cc406Sopenharmony_ci SENSORORDER_rgb, 380141cc406Sopenharmony_ci 12, 5, kNEC3778, 0x0F, _WAF_NONE, _NO_MIO 381141cc406Sopenharmony_ci}; 382141cc406Sopenharmony_ci 383141cc406Sopenharmony_ci/* Plustek Model: ??? 384141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3778 385141cc406Sopenharmony_ci */ 386141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0016_4 = 387141cc406Sopenharmony_ci{ 388141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 389141cc406Sopenharmony_ci {{ 954, 422}, 272, -1, { 624, 1940}, {150, 150}}, 390141cc406Sopenharmony_ci {{1120, 438}, 275, -1, { 304, 1940}, {150, 150}}, 391141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 392141cc406Sopenharmony_ci {1200, 1200}, 393141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 394141cc406Sopenharmony_ci SENSORORDER_rgb, 395141cc406Sopenharmony_ci 12, 4, kNEC3778, 0x06, _WAF_NONE, _NO_MIO 396141cc406Sopenharmony_ci}; 397141cc406Sopenharmony_ci 398141cc406Sopenharmony_ci/* Plustek Model: UT24 399141cc406Sopenharmony_ci * KH: NS9832 + TPA + Button + NEC3778 400141cc406Sopenharmony_ci */ 401141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0017_4 = 402141cc406Sopenharmony_ci{ 403141cc406Sopenharmony_ci {{ 0, 99 - 6}, 0, -1, {2550, 3508}, { 50, 50}}, 404141cc406Sopenharmony_ci {{1025 /*1055*/, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 405141cc406Sopenharmony_ci {{1048 /*1024*/, 754/*724*/}, 543, -1, { 567, 414}, {150, 150}}, 406141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 407141cc406Sopenharmony_ci {1200, 1200}, 408141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 409141cc406Sopenharmony_ci SENSORORDER_rgb, 410141cc406Sopenharmony_ci 12, 4, kNEC3778, 0x07, _WAF_NONE, _NO_MIO 411141cc406Sopenharmony_ci}; 412141cc406Sopenharmony_ci 413141cc406Sopenharmony_ci/* Plustek Model: U24 414141cc406Sopenharmony_ci * KH: NS9832 + Button + NEC3778 415141cc406Sopenharmony_ci */ 416141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0015_4 = 417141cc406Sopenharmony_ci{ 418141cc406Sopenharmony_ci {{ 0, 99 - 6}, 0, -1, {2550, 3508}, { 50, 50}}, 419141cc406Sopenharmony_ci {{ 1055, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 420141cc406Sopenharmony_ci {{1004 + 20, 744 - 20}, 543, -1, { 567, 414}, {150, 150}}, 421141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 422141cc406Sopenharmony_ci {1200, 1200}, 423141cc406Sopenharmony_ci 0, 424141cc406Sopenharmony_ci SENSORORDER_rgb, 425141cc406Sopenharmony_ci 12, 4, kNEC3778, 0x05, _WAF_NONE, _NO_MIO 426141cc406Sopenharmony_ci}; 427141cc406Sopenharmony_ci 428141cc406Sopenharmony_ci/* Plustek Model: ??? 429141cc406Sopenharmony_ci * KH: NS9832 + TPA + Button + NEC3778 430141cc406Sopenharmony_ci */ 431141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0014_4 = 432141cc406Sopenharmony_ci{ 433141cc406Sopenharmony_ci {{ 0, 99 - 6}, 0, -1, {2550, 3508}, { 50, 50}}, 434141cc406Sopenharmony_ci {{ 1055, 744 - 84}, 543, -1, { 473, 414}, {150, 150}}, 435141cc406Sopenharmony_ci {{1004 + 20, 744 - 20}, 543, -1, { 567, 414}, {150, 150}}, 436141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 437141cc406Sopenharmony_ci {1200, 1200}, 438141cc406Sopenharmony_ci 0, 439141cc406Sopenharmony_ci SENSORORDER_rgb, 440141cc406Sopenharmony_ci 12, 0, kNEC3778, 0x04, _WAF_NONE, _NO_MIO 441141cc406Sopenharmony_ci}; 442141cc406Sopenharmony_ci 443141cc406Sopenharmony_ci/* Plustek Model: ??? A3 model 444141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + SONY518 445141cc406Sopenharmony_ci */ 446141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0014_1 = 447141cc406Sopenharmony_ci{ 448141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {3600, 5100}, { 50, 50}}, 449141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 450141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 451141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 452141cc406Sopenharmony_ci {400, 400}, 453141cc406Sopenharmony_ci 0, 454141cc406Sopenharmony_ci SENSORORDER_rgb, 455141cc406Sopenharmony_ci 8, 0, kSONY518, 0x04, _WAF_NONE, _NO_MIO 456141cc406Sopenharmony_ci}; 457141cc406Sopenharmony_ci 458141cc406Sopenharmony_ci/* Model: ??? 459141cc406Sopenharmony_ci * KH: NS9832 + NEC3799 + 600 DPI Motor (for Brother demo only) 460141cc406Sopenharmony_ci */ 461141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0012_0 = 462141cc406Sopenharmony_ci{ 463141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 464141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 465141cc406Sopenharmony_ci {{1004 + 20, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 466141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 467141cc406Sopenharmony_ci {600, 600}, 468141cc406Sopenharmony_ci 0, 469141cc406Sopenharmony_ci SENSORORDER_rgb, 470141cc406Sopenharmony_ci 4, 0, kNEC3799, 0x02, _WAF_NONE, _NO_MIO 471141cc406Sopenharmony_ci}; 472141cc406Sopenharmony_ci 473141cc406Sopenharmony_ci/* Plustek Model: ??? 474141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + SONY548 475141cc406Sopenharmony_ci */ 476141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0017_2 = 477141cc406Sopenharmony_ci{ 478141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 479141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 480141cc406Sopenharmony_ci {{ 1004, 744}, 543, -1, { 567, 414}, {150, 150}}, 481141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 482141cc406Sopenharmony_ci {600, 600}, 483141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 484141cc406Sopenharmony_ci SENSORORDER_bgr, 485141cc406Sopenharmony_ci 8, 4, kSONY548, 0x07, _WAF_NONE, _NO_MIO 486141cc406Sopenharmony_ci}; 487141cc406Sopenharmony_ci 488141cc406Sopenharmony_ci/* Plustek Model: ??? 489141cc406Sopenharmony_ci * KH: NS9831 + TPA + Button + NEC3799 490141cc406Sopenharmony_ci */ 491141cc406Sopenharmony_cistatic DCapsDef Cap0x07B3_0x0017_3 = 492141cc406Sopenharmony_ci{ 493141cc406Sopenharmony_ci {{ 0, 93}, 0, -1, {2550, 3508}, { 50, 50}}, 494141cc406Sopenharmony_ci {{1040 + 15, 744 - 32}, 543, -1, { 473, 414}, {150, 150}}, 495141cc406Sopenharmony_ci {{1004 + 30, 744 + 32}, 543, -1, { 567, 414}, {150, 150}}, 496141cc406Sopenharmony_ci {{ 0, 95}, 0, -1, {2550, 3508}, { 50, 50}}, 497141cc406Sopenharmony_ci {600, 600}, 498141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 499141cc406Sopenharmony_ci SENSORORDER_rgb, 500141cc406Sopenharmony_ci 8, 4, kNEC8861, 0x07, _WAF_NONE, _NO_MIO 501141cc406Sopenharmony_ci}; 502141cc406Sopenharmony_ci 503141cc406Sopenharmony_ci/* Model: HP Scanjet 2100c */ 504141cc406Sopenharmony_cistatic DCapsDef Cap0x03F0_0x0505 = 505141cc406Sopenharmony_ci{ 506141cc406Sopenharmony_ci {{ 0, 65}, 10, -1, {2550, 3508}, { 50, 50}}, 507141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 508141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 509141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 510141cc406Sopenharmony_ci {600, 600}, 511141cc406Sopenharmony_ci 0, 512141cc406Sopenharmony_ci SENSORORDER_rgb, 513141cc406Sopenharmony_ci 4, 0, kNECSLIM, 0x00, _WAF_NONE, _NO_MIO 514141cc406Sopenharmony_ci}; 515141cc406Sopenharmony_ci 516141cc406Sopenharmony_ci/* Model: HP Scanjet 2200c (thanks to Stefan Nilsen) 517141cc406Sopenharmony_ci * NS9832 + 2 Buttons + NEC3799 + 600 DPI Motor 518141cc406Sopenharmony_ci */ 519141cc406Sopenharmony_cistatic DCapsDef Cap0x03F0_0x0605 = 520141cc406Sopenharmony_ci{ 521141cc406Sopenharmony_ci /* DataOrigin (x, y), ShadingOriginY */ 522141cc406Sopenharmony_ci {{ 0, 209}, 40, -1, {2550, 3508}, { 50, 50}}, 523141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 524141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 525141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 526141cc406Sopenharmony_ci {600, 600}, 527141cc406Sopenharmony_ci 0, 528141cc406Sopenharmony_ci SENSORORDER_rgb, 529141cc406Sopenharmony_ci 4, 2, kNECSLIM, 0x00, _WAF_NONE, _NO_MIO 530141cc406Sopenharmony_ci}; 531141cc406Sopenharmony_ci 532141cc406Sopenharmony_ci/* Mustek BearPaw 1200 (thanks to Henning Meier-Geinitz) 533141cc406Sopenharmony_ci * NS9831 + 5 Buttons + NEC3798 534141cc406Sopenharmony_ci */ 535141cc406Sopenharmony_cistatic DCapsDef Cap0x0400_0x1000_0 = 536141cc406Sopenharmony_ci{ 537141cc406Sopenharmony_ci {{ 0, 130}, 20, -1, {2550, 3508}, { 50, 50 }}, 538141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 539141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 540141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 541141cc406Sopenharmony_ci {600, 600}, 542141cc406Sopenharmony_ci 0, 543141cc406Sopenharmony_ci SENSORORDER_rgb, 544141cc406Sopenharmony_ci 8, 545141cc406Sopenharmony_ci 5, kNEC8861, 0x00, 546141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS | _WAF_LOFF_ON_START | _WAF_USE_ALT_DESC, 547141cc406Sopenharmony_ci _NO_MIO 548141cc406Sopenharmony_ci}; 549141cc406Sopenharmony_ci 550141cc406Sopenharmony_ci/* Mustek BearPaw 2400 551141cc406Sopenharmony_ci * NS9832 + 5 Buttons + SONY548 552141cc406Sopenharmony_ci */ 553141cc406Sopenharmony_cistatic DCapsDef Cap0x0400_0x1001_0 = 554141cc406Sopenharmony_ci{ 555141cc406Sopenharmony_ci {{ 0, 130/*209*/}, 35/*20*/, -1, {2550, 3508}, { 50, 50 }}, 556141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 557141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 558141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 559141cc406Sopenharmony_ci { 600, 600 }, /*{ 1200, 1200 }, */ 560141cc406Sopenharmony_ci 0, 561141cc406Sopenharmony_ci SENSORORDER_rgb, 562141cc406Sopenharmony_ci 4,/*16*/ /* sensor distance */ 563141cc406Sopenharmony_ci 5, /* number of buttons */ 564141cc406Sopenharmony_ci kSONY548, /* CCD type */ 565141cc406Sopenharmony_ci 0, _WAF_USE_ALT_DESC, _NO_MIO 566141cc406Sopenharmony_ci}; 567141cc406Sopenharmony_ci 568141cc406Sopenharmony_ci/* Epson Perfection/Photo1250 (thanks to Gene Heskett and Reinhard Max) 569141cc406Sopenharmony_ci * Epson Perfection/Photo1260 (thanks to Till Kamppeter) 570141cc406Sopenharmony_ci * NS9832 + 4 Buttons + CCD???? 571141cc406Sopenharmony_ci */ 572141cc406Sopenharmony_cistatic DCapsDef Cap0x04B8_0x010F = 573141cc406Sopenharmony_ci{ 574141cc406Sopenharmony_ci /* Normal */ 575141cc406Sopenharmony_ci {{ 25, 85}, 10, -1, {2550, 3508}, { 100, 100 }}, 576141cc406Sopenharmony_ci /* Positive */ 577141cc406Sopenharmony_ci {{ 1100, 972}, 720, -1, { 473, 414}, { 150, 150 }}, 578141cc406Sopenharmony_ci /* Negative */ 579141cc406Sopenharmony_ci {{ 1116, 1049}, 720, -1, { 567, 414}, { 150, 150 }}, 580141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 581141cc406Sopenharmony_ci {1200, 1200}, 582141cc406Sopenharmony_ci 0, 583141cc406Sopenharmony_ci SENSORORDER_rgb, 584141cc406Sopenharmony_ci 8, /* sensor distance */ 585141cc406Sopenharmony_ci 4, /* number of buttons */ 586141cc406Sopenharmony_ci kEPSON, /* use default settings during calibration */ 587141cc406Sopenharmony_ci 0, /* not used here... */ 588141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, /* use miscio 6 for lamp switching */ 589141cc406Sopenharmony_ci _MIO6 + _TPA(_MIO1) /* and miscio 1 for optional TPA */ 590141cc406Sopenharmony_ci}; 591141cc406Sopenharmony_ci 592141cc406Sopenharmony_ci/* Umax 3400/3450 593141cc406Sopenharmony_ci */ 594141cc406Sopenharmony_cistatic DCapsDef Cap0x1606_0x0060 = 595141cc406Sopenharmony_ci{ 596141cc406Sopenharmony_ci /* Normal */ 597141cc406Sopenharmony_ci {{ 30, 105 }, 15, -1, {2550, 3508}, { 100, 100 }}, 598141cc406Sopenharmony_ci /* Positive */ 599141cc406Sopenharmony_ci {{ 700, 760 }, 650, -1, {1200, 1500}, { 150, 150 }}, 600141cc406Sopenharmony_ci /* Negative */ 601141cc406Sopenharmony_ci {{ 700, 760 }, 650, -1, {1200, 1500}, { 150, 150 }}, 602141cc406Sopenharmony_ci {{ 0, 0 }, 0, -1, {0, 0}, { 0, 0 }}, 603141cc406Sopenharmony_ci {600, 600}, 604141cc406Sopenharmony_ci DEVCAPSFLAG_LargeTPA, 605141cc406Sopenharmony_ci SENSORORDER_bgr, 606141cc406Sopenharmony_ci 8, /* sensor distance */ 607141cc406Sopenharmony_ci 4, /* number of buttons */ 608141cc406Sopenharmony_ci kNEC8861, /* use default settings during calibration */ 609141cc406Sopenharmony_ci 0, /* not used here... */ 610141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, /* use miscio 3 for lamp switching */ 611141cc406Sopenharmony_ci _MIO3 + _TPA(_MIO6) /* and miscio 6 for optional TPA */ 612141cc406Sopenharmony_ci}; 613141cc406Sopenharmony_ci 614141cc406Sopenharmony_ci/* Umax 5400 615141cc406Sopenharmony_ci */ 616141cc406Sopenharmony_cistatic DCapsDef Cap0x1606_0x0160 = 617141cc406Sopenharmony_ci{ 618141cc406Sopenharmony_ci {{ 30, 165}, 0, -1, {2550, 3508}, {100, 100}}, 619141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 620141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 621141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {0, 0}, { 0, 0 }}, 622141cc406Sopenharmony_ci {1200, 1200}, 623141cc406Sopenharmony_ci 0, 624141cc406Sopenharmony_ci SENSORORDER_bgr, 625141cc406Sopenharmony_ci 12, /* sensor distance */ 626141cc406Sopenharmony_ci 4, /* number of buttons */ 627141cc406Sopenharmony_ci kNEC3778, /* use default settings during calibration */ 628141cc406Sopenharmony_ci 0, /* not used here... */ 629141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, /* use miscio 3 for lamp switching */ 630141cc406Sopenharmony_ci _MIO3 631141cc406Sopenharmony_ci}; 632141cc406Sopenharmony_ci 633141cc406Sopenharmony_ci/* Canon N650U/N656U 634141cc406Sopenharmony_ci */ 635141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x2206 = 636141cc406Sopenharmony_ci{ 637141cc406Sopenharmony_ci {{ 0, 90}, 45, 10, {2550, 3508}, {75, 75}}, 638141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 639141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 640141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 641141cc406Sopenharmony_ci {600, 600}, 642141cc406Sopenharmony_ci 0, 643141cc406Sopenharmony_ci SENSORORDER_rgb, 644141cc406Sopenharmony_ci 8, /* sensor distance */ 645141cc406Sopenharmony_ci 1, /* number of buttons */ 646141cc406Sopenharmony_ci kCIS650, /* use default settings during calibration */ 647141cc406Sopenharmony_ci 0, /* not used here... */ 648141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, _NO_MIO 649141cc406Sopenharmony_ci}; 650141cc406Sopenharmony_ci 651141cc406Sopenharmony_ci/* Canon N1220U 652141cc406Sopenharmony_ci */ 653141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x2207 = 654141cc406Sopenharmony_ci{ 655141cc406Sopenharmony_ci {{ 0, 85}, 45, 10, {2550, 3508}, {75, 75}}, 656141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 657141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 658141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 659141cc406Sopenharmony_ci {1200, 1200}, 660141cc406Sopenharmony_ci 0, 661141cc406Sopenharmony_ci SENSORORDER_rgb, 662141cc406Sopenharmony_ci 16, /* sensor distance */ 663141cc406Sopenharmony_ci 1, /* number of buttons */ 664141cc406Sopenharmony_ci kCIS1220, /* use default settings during calibration */ 665141cc406Sopenharmony_ci 0, /* not used here... */ 666141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, _NO_MIO 667141cc406Sopenharmony_ci}; 668141cc406Sopenharmony_ci 669141cc406Sopenharmony_ci/* Canon D660U 670141cc406Sopenharmony_ci */ 671141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x2208 = 672141cc406Sopenharmony_ci{ 673141cc406Sopenharmony_ci {{ 45, 125}, 15, -1, {2550, 3508}, { 50, 50}}, 674141cc406Sopenharmony_ci {{1060, 744}, 510, -1, { 473, 414}, {150, 150}}, 675141cc406Sopenharmony_ci {{1082, 842}, 610, -1, { 567, 414}, {150, 150}}, 676141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, { 0, 0}, { 0, 0}}, 677141cc406Sopenharmony_ci {600, 600}, 678141cc406Sopenharmony_ci DEVCAPSFLAG_Positive + DEVCAPSFLAG_Negative, 679141cc406Sopenharmony_ci SENSORORDER_rgb, 680141cc406Sopenharmony_ci 4, 681141cc406Sopenharmony_ci 1, 682141cc406Sopenharmony_ci kNEC8861, /* use default settings during calibration */ 683141cc406Sopenharmony_ci 0, 684141cc406Sopenharmony_ci (_WAF_MISC_IO_LAMPS | _WAF_BIN_FROM_COLOR | _WAF_GRAY_FROM_COLOR), 685141cc406Sopenharmony_ci _MIO5 + _TPA(_MIO6) 686141cc406Sopenharmony_ci}; 687141cc406Sopenharmony_ci 688141cc406Sopenharmony_ci/* Canon N670U/N676U/LiDE20 689141cc406Sopenharmony_ci */ 690141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x220D = 691141cc406Sopenharmony_ci{ 692141cc406Sopenharmony_ci {{ 0, 110}, 45, -1, {2550, 3508}, {75, 75}}, 693141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 694141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 695141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 696141cc406Sopenharmony_ci {600, 600}, 697141cc406Sopenharmony_ci 0, 698141cc406Sopenharmony_ci SENSORORDER_rgb, 699141cc406Sopenharmony_ci 8, /* sensor distance */ 700141cc406Sopenharmony_ci 3, /* number of buttons */ 701141cc406Sopenharmony_ci kCIS670, 702141cc406Sopenharmony_ci 0, /* not used here... */ 703141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, _NO_MIO 704141cc406Sopenharmony_ci}; 705141cc406Sopenharmony_ci 706141cc406Sopenharmony_ci/* Canon N1240U/LiDE30 707141cc406Sopenharmony_ci */ 708141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x220E = 709141cc406Sopenharmony_ci{ 710141cc406Sopenharmony_ci {{ 0, 100}, 50, 10, {2550, 3508}, {75, 75}}, 711141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 712141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 713141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 714141cc406Sopenharmony_ci {1200, 1200}, 715141cc406Sopenharmony_ci 0, 716141cc406Sopenharmony_ci SENSORORDER_rgb, 717141cc406Sopenharmony_ci 16, /* sensor distance */ 718141cc406Sopenharmony_ci 3, /* number of buttons */ 719141cc406Sopenharmony_ci kCIS1240, 720141cc406Sopenharmony_ci 0, /* not used here... */ 721141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, _NO_MIO 722141cc406Sopenharmony_ci}; 723141cc406Sopenharmony_ci 724141cc406Sopenharmony_ci/* Canon LiDE25 725141cc406Sopenharmony_ci */ 726141cc406Sopenharmony_cistatic DCapsDef Cap0x04A9_0x2220 = 727141cc406Sopenharmony_ci{ 728141cc406Sopenharmony_ci {{ 0, 100}, 50, 10, {2550, 3508}, {75, 75}}, 729141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 730141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 731141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 732141cc406Sopenharmony_ci {1200, 1200}, 733141cc406Sopenharmony_ci 0, 734141cc406Sopenharmony_ci SENSORORDER_rgb, 735141cc406Sopenharmony_ci 16, /* sensor distance */ 736141cc406Sopenharmony_ci 3, /* number of buttons */ 737141cc406Sopenharmony_ci kCIS1240, 738141cc406Sopenharmony_ci 0, /* not used here... */ 739141cc406Sopenharmony_ci _WAF_MISC_IO_LAMPS, _NO_MIO 740141cc406Sopenharmony_ci}; 741141cc406Sopenharmony_ci 742141cc406Sopenharmony_ci/* Syscan TravelScan 662 A6 sheet-fed scanner 743141cc406Sopenharmony_ci */ 744141cc406Sopenharmony_cistatic DCapsDef Cap0x0A82_0x6620 = 745141cc406Sopenharmony_ci{ 746141cc406Sopenharmony_ci {{ 0, 0}, 100, -1, {1226, 3508}, {75, 75}}, 747141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 748141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 749141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 750141cc406Sopenharmony_ci {600, 600}, 751141cc406Sopenharmony_ci DEVCAPSFLAG_SheetFed, 752141cc406Sopenharmony_ci SENSORORDER_rgb, 753141cc406Sopenharmony_ci 8, 754141cc406Sopenharmony_ci 1, 755141cc406Sopenharmony_ci kNEC8861, /* use default settings during calibration */ 756141cc406Sopenharmony_ci 0, /* not used here... */ 757141cc406Sopenharmony_ci (_WAF_MISC_IO_LAMPS | _WAF_MISC_IO_BUTTONS | 758141cc406Sopenharmony_ci _WAF_BIN_FROM_COLOR | _WAF_GRAY_FROM_COLOR), 759141cc406Sopenharmony_ci _MIO5 + _PORT1 + _PS_INP_MIO2 760141cc406Sopenharmony_ci}; 761141cc406Sopenharmony_ci 762141cc406Sopenharmony_ci/* Syscan TravelScan 464 A4 sheet-fed scanner 763141cc406Sopenharmony_ci */ 764141cc406Sopenharmony_cistatic DCapsDef Cap0x0A82_0x4600 = 765141cc406Sopenharmony_ci{ 766141cc406Sopenharmony_ci {{ 0, 0}, 150, -1, {2550, 3508}, {75, 75}}, 767141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 768141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 769141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 770141cc406Sopenharmony_ci {600, 600}, 771141cc406Sopenharmony_ci DEVCAPSFLAG_SheetFed, 772141cc406Sopenharmony_ci SENSORORDER_rgb, 773141cc406Sopenharmony_ci 8, 774141cc406Sopenharmony_ci 1, 775141cc406Sopenharmony_ci kNEC8861, /* use default settings during calibration */ 776141cc406Sopenharmony_ci 0, /* not used here... */ 777141cc406Sopenharmony_ci (_WAF_MISC_IO_LAMPS | _WAF_MISC_IO_BUTTONS | 778141cc406Sopenharmony_ci _WAF_BIN_FROM_COLOR | _WAF_GRAY_FROM_COLOR), 779141cc406Sopenharmony_ci _MIO5 + _PORT1 + _PS_INP_MIO2 780141cc406Sopenharmony_ci}; 781141cc406Sopenharmony_ci 782141cc406Sopenharmony_ci/* IRIScan/Q-Scan USB001 A4 sheet-fed scanner 783141cc406Sopenharmony_ci */ 784141cc406Sopenharmony_cistatic DCapsDef Cap0x0A53_0x1000 = 785141cc406Sopenharmony_ci{ 786141cc406Sopenharmony_ci {{ 0, 0}, 150, -1, {2550, 3508}, {150, 150}}, 787141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 788141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 789141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 790141cc406Sopenharmony_ci {300, 300}, 791141cc406Sopenharmony_ci DEVCAPSFLAG_SheetFed, 792141cc406Sopenharmony_ci SENSORORDER_gbr, 793141cc406Sopenharmony_ci 2, /* sensor distance */ 794141cc406Sopenharmony_ci 0, /* number of buttons */ 795141cc406Sopenharmony_ci kNEC8861, /* use default settings during calibration */ 796141cc406Sopenharmony_ci 200, /* threshold for resetting sensor-order */ 797141cc406Sopenharmony_ci (_WAF_MISC_IO_LAMPS | _WAF_RESET_SO_TO_RGB | _WAF_ONLY_8BIT), 798141cc406Sopenharmony_ci _PS_INP1 799141cc406Sopenharmony_ci}; 800141cc406Sopenharmony_ci 801141cc406Sopenharmony_ci/* PandP USB201 Q-Scan A6 Scanner 802141cc406Sopenharmony_ci */ 803141cc406Sopenharmony_cistatic DCapsDef Cap0x0A53_0x2000 = 804141cc406Sopenharmony_ci{ 805141cc406Sopenharmony_ci {{ 0, 0}, 0, -1, {1226, 3508}, { 50, 50 }}, 806141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 807141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 808141cc406Sopenharmony_ci {{ 0, 0}, 0, 0, {0, 0}, { 0, 0 }}, 809141cc406Sopenharmony_ci {600, 600}, 810141cc406Sopenharmony_ci DEVCAPSFLAG_SheetFed, 811141cc406Sopenharmony_ci SENSORORDER_rgb, 812141cc406Sopenharmony_ci 4, 813141cc406Sopenharmony_ci 0, 814141cc406Sopenharmony_ci kNEC8861, 815141cc406Sopenharmony_ci 0, 816141cc406Sopenharmony_ci _WAF_NONE, 817141cc406Sopenharmony_ci _PS_INP1 818141cc406Sopenharmony_ci}; 819141cc406Sopenharmony_ci 820141cc406Sopenharmony_ci/******************* additional Hardware descriptions ************************/ 821141cc406Sopenharmony_ci 822141cc406Sopenharmony_ci/** U24, UT12 and UT16 823141cc406Sopenharmony_ci */ 824141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0017_0 = 825141cc406Sopenharmony_ci{ 826141cc406Sopenharmony_ci 1.5, /* dMaxMotorSpeed */ 827141cc406Sopenharmony_ci 1.2, /* dMaxMoveSpeed */ 828141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 829141cc406Sopenharmony_ci 9, /* dIntegrationTimeLowLamp */ 830141cc406Sopenharmony_ci 9, /* dIntegrationTimeHighLamp */ 831141cc406Sopenharmony_ci 300, /* wMotorDpi (Full step DPI) */ 832141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 833141cc406Sopenharmony_ci 4, /* dMinIntegrationTimeLowres (ms) */ 834141cc406Sopenharmony_ci 5, /* dMinIntegrationTimeHighres (ms) */ 835141cc406Sopenharmony_ci 3000, /* wGreenPWMDutyCycleLow */ 836141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleHigh */ 837141cc406Sopenharmony_ci 0x02, /* bSensorConfiguration (0x0b) */ 838141cc406Sopenharmony_ci 0x04, /* bReg_0x0c */ 839141cc406Sopenharmony_ci 0x37, /* bReg_0x0d */ 840141cc406Sopenharmony_ci 0x13, /* bReg_0x0e */ 841141cc406Sopenharmony_ci /* bReg_0x0f_Mono [10] (0x0f to 0x18) */ 842141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 843141cc406Sopenharmony_ci /* bReg_0x0f_Color [10] (0x0f to 0x18) */ 844141cc406Sopenharmony_ci {5, 23, 1, 3, 0, 0, 0, 12, 10, 22}, 845141cc406Sopenharmony_ci 846141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 847141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 848141cc406Sopenharmony_ci 849141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 850141cc406Sopenharmony_ci 851141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 852141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 853141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 854141cc406Sopenharmony_ci 855141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (0x1a & 0x1b) */ 856141cc406Sopenharmony_ci 14, /* 15, bOpticBlackStart (0x1c) */ 857141cc406Sopenharmony_ci 62, /* 60, bOpticBlackEnd (0x1d) */ 858141cc406Sopenharmony_ci 110, /* 65, wActivePixelsStart (0x1e & 0x1f) */ 859141cc406Sopenharmony_ci 5400, /* 5384 ,wLineEnd (0x20 & 0x21) */ 860141cc406Sopenharmony_ci 861141cc406Sopenharmony_ci 0, /* red lamp on (reg 0x2c + 0x2d) */ 862141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 863141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 864141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 865141cc406Sopenharmony_ci 0, /* blue lamp on (reg 0x34 + 0x35) */ 866141cc406Sopenharmony_ci 16383, /* blue lamp off (reg 0x36 + 0x37) */ 867141cc406Sopenharmony_ci 868141cc406Sopenharmony_ci /* Misc */ 869141cc406Sopenharmony_ci 3, /* bReg_0x45 */ 870141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (0x4c & 0x4d) */ 871141cc406Sopenharmony_ci 0x1e, /* bstepsToReverse reg 0x50) */ 872141cc406Sopenharmony_ci 0xa8, /* 0xfc -bReg_0x51 */ 873141cc406Sopenharmony_ci 0, /* bReg_0x54 */ 874141cc406Sopenharmony_ci 0xff, /* 0xa3 - bReg_0x55 */ 875141cc406Sopenharmony_ci 64, /* bReg_0x56 */ 876141cc406Sopenharmony_ci 20, /* bReg_0x57 */ 877141cc406Sopenharmony_ci 0x0d, /* bReg_0x58 */ 878141cc406Sopenharmony_ci 0x22, /* bReg_0x59 */ 879141cc406Sopenharmony_ci 0x82, /* bReg_0x5a */ 880141cc406Sopenharmony_ci 0x88, /* bReg_0x5b */ 881141cc406Sopenharmony_ci 0, /* bReg_0x5c */ 882141cc406Sopenharmony_ci 0, /* bReg_0x5d */ 883141cc406Sopenharmony_ci 0, /* bReg_0x5e */ 884141cc406Sopenharmony_ci _LM9832, /* chip type */ 885141cc406Sopenharmony_ci MODEL_KaoHsiung,/* motorModel */ 886141cc406Sopenharmony_ci 1.0 887141cc406Sopenharmony_ci}; 888141cc406Sopenharmony_ci 889141cc406Sopenharmony_ci/** Genius ColorPage-HR6 V2 and ColorPage-HR6X 890141cc406Sopenharmony_ci */ 891141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0007_0 = 892141cc406Sopenharmony_ci{ 893141cc406Sopenharmony_ci 1.5, 1.2, 0.0, 894141cc406Sopenharmony_ci 9, 9, 895141cc406Sopenharmony_ci 300, 896141cc406Sopenharmony_ci 512, 897141cc406Sopenharmony_ci 4, 5, 898141cc406Sopenharmony_ci 3000, 4095, 899141cc406Sopenharmony_ci 0x02, 0x14, 0x27, 0x13, 900141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 901141cc406Sopenharmony_ci {5, 23, 1, 3, 0, 0, 0, 6, 10, 22}, 902141cc406Sopenharmony_ci _GREEN_CH, 903141cc406Sopenharmony_ci 0, 904141cc406Sopenharmony_ci 1, 905141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 906141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 907141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 908141cc406Sopenharmony_ci 1, 909141cc406Sopenharmony_ci 14, 910141cc406Sopenharmony_ci 62, 911141cc406Sopenharmony_ci 110, 912141cc406Sopenharmony_ci 5384, 913141cc406Sopenharmony_ci 0, 914141cc406Sopenharmony_ci 16383, 915141cc406Sopenharmony_ci 0, 916141cc406Sopenharmony_ci 0, 917141cc406Sopenharmony_ci 0, 918141cc406Sopenharmony_ci 16383, 919141cc406Sopenharmony_ci 3, 920141cc406Sopenharmony_ci 0, 921141cc406Sopenharmony_ci 0x1e, 922141cc406Sopenharmony_ci 0xa8, 923141cc406Sopenharmony_ci 0, 924141cc406Sopenharmony_ci 0xff, 925141cc406Sopenharmony_ci 64, 926141cc406Sopenharmony_ci 20, 927141cc406Sopenharmony_ci 0x0d, 0x88, 0x28, 0x3b, 928141cc406Sopenharmony_ci 0, 0, 0, 929141cc406Sopenharmony_ci _LM9832, 930141cc406Sopenharmony_ci MODEL_HuaLien, 931141cc406Sopenharmony_ci 1.0 932141cc406Sopenharmony_ci}; 933141cc406Sopenharmony_ci 934141cc406Sopenharmony_ci/** unknown 935141cc406Sopenharmony_ci */ 936141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0007_2 = 937141cc406Sopenharmony_ci{ 938141cc406Sopenharmony_ci 1.4, 1.2, 0.0, 939141cc406Sopenharmony_ci 9, 9, 940141cc406Sopenharmony_ci 600, 941141cc406Sopenharmony_ci 512, 942141cc406Sopenharmony_ci 4, 5, 943141cc406Sopenharmony_ci 3000, 4095, 944141cc406Sopenharmony_ci 0x02, 0x3f, 0x2f, 0x36, 945141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 946141cc406Sopenharmony_ci {7, 20, 1, 4, 7, 10, 0, 6, 12, 0}, 947141cc406Sopenharmony_ci _GREEN_CH, 948141cc406Sopenharmony_ci 0, 949141cc406Sopenharmony_ci 1, 950141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 951141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 952141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 953141cc406Sopenharmony_ci 1, 954141cc406Sopenharmony_ci 16, 955141cc406Sopenharmony_ci 64, 956141cc406Sopenharmony_ci 152, 957141cc406Sopenharmony_ci 5416, 958141cc406Sopenharmony_ci 0, 959141cc406Sopenharmony_ci 16383, 960141cc406Sopenharmony_ci 0, 961141cc406Sopenharmony_ci 0, 962141cc406Sopenharmony_ci 0, 963141cc406Sopenharmony_ci 16383, 964141cc406Sopenharmony_ci 3, 965141cc406Sopenharmony_ci 0, 966141cc406Sopenharmony_ci 0x1e, 967141cc406Sopenharmony_ci 0xfc, 968141cc406Sopenharmony_ci 0, 969141cc406Sopenharmony_ci 0xff, 970141cc406Sopenharmony_ci 64, 971141cc406Sopenharmony_ci 20, 972141cc406Sopenharmony_ci 0x0d, 0x88, 0x28, 0x3b, 973141cc406Sopenharmony_ci 0, 0, 0, 974141cc406Sopenharmony_ci _LM9832, 975141cc406Sopenharmony_ci MODEL_Tokyo600, 976141cc406Sopenharmony_ci 1.0 977141cc406Sopenharmony_ci}; 978141cc406Sopenharmony_ci 979141cc406Sopenharmony_ci/** Genius ColorPage-HR7 and ColorPage-HR7LE 980141cc406Sopenharmony_ci */ 981141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0007_4 = 982141cc406Sopenharmony_ci{ 983141cc406Sopenharmony_ci 1.1, 0.9, 0.0, 984141cc406Sopenharmony_ci 12, 12, 985141cc406Sopenharmony_ci 600, 986141cc406Sopenharmony_ci 2048, 987141cc406Sopenharmony_ci 8, 8, 988141cc406Sopenharmony_ci 4095, 4095, 989141cc406Sopenharmony_ci 0x06, 0x30, 0x2f, 0x2a, 990141cc406Sopenharmony_ci {2, 7, 5, 6, 6, 7, 0, 0, 0, 5}, 991141cc406Sopenharmony_ci {20, 4, 13, 16, 19, 22, 0, 6, 23, 11}, 992141cc406Sopenharmony_ci _GREEN_CH, 993141cc406Sopenharmony_ci 0, 994141cc406Sopenharmony_ci 1, 995141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 996141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 997141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 998141cc406Sopenharmony_ci 1, 999141cc406Sopenharmony_ci 13, 1000141cc406Sopenharmony_ci 62, 1001141cc406Sopenharmony_ci 304, 1002141cc406Sopenharmony_ci 10684, 1003141cc406Sopenharmony_ci 0, 1004141cc406Sopenharmony_ci 16383, 1005141cc406Sopenharmony_ci 0, 1006141cc406Sopenharmony_ci 0, 1007141cc406Sopenharmony_ci 0, 1008141cc406Sopenharmony_ci 16383, 1009141cc406Sopenharmony_ci 3, 1010141cc406Sopenharmony_ci 0, 1011141cc406Sopenharmony_ci 0x1e, 1012141cc406Sopenharmony_ci 0xa8, 1013141cc406Sopenharmony_ci 0, 1014141cc406Sopenharmony_ci 0xff, 1015141cc406Sopenharmony_ci 24, 1016141cc406Sopenharmony_ci 40, 1017141cc406Sopenharmony_ci 0x0d, 0x88, 0x28, 0x3b, 1018141cc406Sopenharmony_ci 0, 0, 0, 1019141cc406Sopenharmony_ci _LM9832, 1020141cc406Sopenharmony_ci MODEL_HuaLien, 1021141cc406Sopenharmony_ci 1.0 1022141cc406Sopenharmony_ci}; 1023141cc406Sopenharmony_ci 1024141cc406Sopenharmony_ci/** Genius ColorPage-HR6A 1025141cc406Sopenharmony_ci */ 1026141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x000F_0 = 1027141cc406Sopenharmony_ci{ 1028141cc406Sopenharmony_ci 1.5, 1.0, 0.0, 1029141cc406Sopenharmony_ci 9, 9, 1030141cc406Sopenharmony_ci 300, 1031141cc406Sopenharmony_ci 512, 1032141cc406Sopenharmony_ci 4, 5, 1033141cc406Sopenharmony_ci 3000, 4095, 1034141cc406Sopenharmony_ci 0x02, 0x14, 0x27, 0x13, 1035141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1036141cc406Sopenharmony_ci {5, 23, 1, 3, 0, 0, 0, 6, 10, 22}, 1037141cc406Sopenharmony_ci _GREEN_CH, 1038141cc406Sopenharmony_ci 0, 1039141cc406Sopenharmony_ci 1, 1040141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1041141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1042141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1043141cc406Sopenharmony_ci 1, 1044141cc406Sopenharmony_ci 14, 1045141cc406Sopenharmony_ci 62, 1046141cc406Sopenharmony_ci 110, 1047141cc406Sopenharmony_ci 5384, 1048141cc406Sopenharmony_ci 0, 1049141cc406Sopenharmony_ci 16383, 1050141cc406Sopenharmony_ci 0, 1051141cc406Sopenharmony_ci 0, 1052141cc406Sopenharmony_ci 0, 1053141cc406Sopenharmony_ci 16383, 1054141cc406Sopenharmony_ci 3, 1055141cc406Sopenharmony_ci 0, 1056141cc406Sopenharmony_ci 0x1e, 1057141cc406Sopenharmony_ci 0xa8, 1058141cc406Sopenharmony_ci 0, 1059141cc406Sopenharmony_ci 0xff, 1060141cc406Sopenharmony_ci 64, 1061141cc406Sopenharmony_ci 20, 1062141cc406Sopenharmony_ci 0x05, 0x88, 0x08, 0x3b, 1063141cc406Sopenharmony_ci 0, 0, 0, 1064141cc406Sopenharmony_ci _LM9832, 1065141cc406Sopenharmony_ci MODEL_HuaLien, 1066141cc406Sopenharmony_ci 1.0 1067141cc406Sopenharmony_ci}; 1068141cc406Sopenharmony_ci 1069141cc406Sopenharmony_ci/** U12/UT12 and U24 1070141cc406Sopenharmony_ci */ 1071141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0013_0 = 1072141cc406Sopenharmony_ci{ 1073141cc406Sopenharmony_ci 1.5, 1.2, 0.0, 1074141cc406Sopenharmony_ci 9, 9, 1075141cc406Sopenharmony_ci 300, 1076141cc406Sopenharmony_ci 512, 1077141cc406Sopenharmony_ci 4, 5, 1078141cc406Sopenharmony_ci 3000, 4095, 1079141cc406Sopenharmony_ci 0x02, 0x04, 0x37, 0x13, 1080141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1081141cc406Sopenharmony_ci {5, 23, 1, 3, 0, 0, 0, 12, 10, 22}, 1082141cc406Sopenharmony_ci _GREEN_CH, 1083141cc406Sopenharmony_ci 0, 1084141cc406Sopenharmony_ci 1, 1085141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1086141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1087141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1088141cc406Sopenharmony_ci 1, 1089141cc406Sopenharmony_ci 14, 1090141cc406Sopenharmony_ci 62, 1091141cc406Sopenharmony_ci 110, 1092141cc406Sopenharmony_ci 5400, 1093141cc406Sopenharmony_ci 0, 1094141cc406Sopenharmony_ci 16383, 1095141cc406Sopenharmony_ci 0, 1096141cc406Sopenharmony_ci 0, 1097141cc406Sopenharmony_ci 0, 1098141cc406Sopenharmony_ci 16383, 1099141cc406Sopenharmony_ci 3, 1100141cc406Sopenharmony_ci 0, 1101141cc406Sopenharmony_ci 0x1e, 1102141cc406Sopenharmony_ci 0xa8, 1103141cc406Sopenharmony_ci 0, 1104141cc406Sopenharmony_ci 0xff, 1105141cc406Sopenharmony_ci 64, 1106141cc406Sopenharmony_ci 20, 1107141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1108141cc406Sopenharmony_ci 0, 0, 0, 1109141cc406Sopenharmony_ci _LM9831, 1110141cc406Sopenharmony_ci MODEL_KaoHsiung, 1111141cc406Sopenharmony_ci 1.0 1112141cc406Sopenharmony_ci}; 1113141cc406Sopenharmony_ci 1114141cc406Sopenharmony_ci/** unknown 1115141cc406Sopenharmony_ci */ 1116141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0013_4 = 1117141cc406Sopenharmony_ci{ 1118141cc406Sopenharmony_ci 1.0, 0.9, 0.0, 1119141cc406Sopenharmony_ci 12, 12, 1120141cc406Sopenharmony_ci 600, 1121141cc406Sopenharmony_ci 2048, 1122141cc406Sopenharmony_ci 8, 8, 1123141cc406Sopenharmony_ci 4095, 4095, 1124141cc406Sopenharmony_ci 0x06, 0x20, 0x2f, 0x2a, 1125141cc406Sopenharmony_ci {2, 7, 5, 6, 6, 7, 0, 0, 0, 5}, 1126141cc406Sopenharmony_ci {20, 4, 13, 16, 19, 22, 0, 0, 23, 11}, 1127141cc406Sopenharmony_ci _GREEN_CH, 1128141cc406Sopenharmony_ci 0, 1129141cc406Sopenharmony_ci 1, 1130141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1131141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1132141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1133141cc406Sopenharmony_ci 1, 1134141cc406Sopenharmony_ci 13, 1135141cc406Sopenharmony_ci 62, 1136141cc406Sopenharmony_ci 320, 1137141cc406Sopenharmony_ci 10684, 1138141cc406Sopenharmony_ci 0, 1139141cc406Sopenharmony_ci 16383, 1140141cc406Sopenharmony_ci 0, 1141141cc406Sopenharmony_ci 0, 1142141cc406Sopenharmony_ci 0, 1143141cc406Sopenharmony_ci 16383, 1144141cc406Sopenharmony_ci 3, 1145141cc406Sopenharmony_ci 0, 1146141cc406Sopenharmony_ci 0x1e, 1147141cc406Sopenharmony_ci 0xa8, 1148141cc406Sopenharmony_ci 0, 1149141cc406Sopenharmony_ci 0xff, 1150141cc406Sopenharmony_ci 10, 1151141cc406Sopenharmony_ci 48, 1152141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1153141cc406Sopenharmony_ci 0, 0, 0, 1154141cc406Sopenharmony_ci _LM9831, 1155141cc406Sopenharmony_ci MODEL_KaoHsiung, 1156141cc406Sopenharmony_ci 1.0 1157141cc406Sopenharmony_ci}; 1158141cc406Sopenharmony_ci 1159141cc406Sopenharmony_ci/** unknown 1160141cc406Sopenharmony_ci */ 1161141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x000F_4 = 1162141cc406Sopenharmony_ci{ 1163141cc406Sopenharmony_ci 1.1, 0.9, 0.0, 1164141cc406Sopenharmony_ci 12, 12, 1165141cc406Sopenharmony_ci 600, 1166141cc406Sopenharmony_ci 2048, 1167141cc406Sopenharmony_ci 8, 8, 1168141cc406Sopenharmony_ci 4095, 4095, 1169141cc406Sopenharmony_ci 0x06, 0x30, 0x2f, 0x2a, 1170141cc406Sopenharmony_ci {2, 7, 5, 6, 6, 7, 0, 0, 0, 5}, 1171141cc406Sopenharmony_ci {20, 4, 13, 16, 19, 22, 0, 6, 23, 11}, 1172141cc406Sopenharmony_ci _GREEN_CH, 1173141cc406Sopenharmony_ci 0, 1174141cc406Sopenharmony_ci 1, 1175141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1176141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1177141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1178141cc406Sopenharmony_ci 1, 1179141cc406Sopenharmony_ci 13, 1180141cc406Sopenharmony_ci 62, 1181141cc406Sopenharmony_ci 304, 1182141cc406Sopenharmony_ci 10684, 1183141cc406Sopenharmony_ci 0, 1184141cc406Sopenharmony_ci 16383, 1185141cc406Sopenharmony_ci 0, 1186141cc406Sopenharmony_ci 0, 1187141cc406Sopenharmony_ci 0, 1188141cc406Sopenharmony_ci 16383, 1189141cc406Sopenharmony_ci 3, 1190141cc406Sopenharmony_ci 0, 1191141cc406Sopenharmony_ci 0x1e, 1192141cc406Sopenharmony_ci 0xa8, 1193141cc406Sopenharmony_ci 0, 1194141cc406Sopenharmony_ci 0xff, 1195141cc406Sopenharmony_ci 24, 1196141cc406Sopenharmony_ci 40, 1197141cc406Sopenharmony_ci 0x05, 0x88, 0x08, 0x3b, 1198141cc406Sopenharmony_ci 0, 0, 0, 1199141cc406Sopenharmony_ci _LM9832, 1200141cc406Sopenharmony_ci MODEL_HuaLien, 1201141cc406Sopenharmony_ci 1.0 1202141cc406Sopenharmony_ci}; 1203141cc406Sopenharmony_ci 1204141cc406Sopenharmony_ci/** unknown 1205141cc406Sopenharmony_ci */ 1206141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0016_4 = 1207141cc406Sopenharmony_ci{ 1208141cc406Sopenharmony_ci 1.0, 0.9, 0.0, 1209141cc406Sopenharmony_ci 12, 12, 1210141cc406Sopenharmony_ci 600, 1211141cc406Sopenharmony_ci 2048, 1212141cc406Sopenharmony_ci 8, 8, 1213141cc406Sopenharmony_ci 4095, 4095, 1214141cc406Sopenharmony_ci 0x06, 0x20, 0x2f, 0x2a, 1215141cc406Sopenharmony_ci {2, 7, 5, 6, 6, 7, 0, 0, 0, 5}, 1216141cc406Sopenharmony_ci {20, 4, 13, 16, 19, 22, 0, 0, 23, 11}, 1217141cc406Sopenharmony_ci _GREEN_CH, 1218141cc406Sopenharmony_ci 0, 1219141cc406Sopenharmony_ci 1, 1220141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1221141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1222141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1223141cc406Sopenharmony_ci 1, 1224141cc406Sopenharmony_ci 13, 1225141cc406Sopenharmony_ci 62, 1226141cc406Sopenharmony_ci 320, 1227141cc406Sopenharmony_ci 10684, 1228141cc406Sopenharmony_ci 0, 1229141cc406Sopenharmony_ci 16383, 1230141cc406Sopenharmony_ci 0, 1231141cc406Sopenharmony_ci 0, 1232141cc406Sopenharmony_ci 0, 1233141cc406Sopenharmony_ci 16383, 1234141cc406Sopenharmony_ci 3, 1235141cc406Sopenharmony_ci 0, 1236141cc406Sopenharmony_ci 0x1e, 1237141cc406Sopenharmony_ci 0xa8, 1238141cc406Sopenharmony_ci 0, 1239141cc406Sopenharmony_ci 0xff, 1240141cc406Sopenharmony_ci 10, 1241141cc406Sopenharmony_ci 48, 1242141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1243141cc406Sopenharmony_ci 0, 0, 0, 1244141cc406Sopenharmony_ci _LM9832, 1245141cc406Sopenharmony_ci MODEL_KaoHsiung, 1246141cc406Sopenharmony_ci 1.0 1247141cc406Sopenharmony_ci}; 1248141cc406Sopenharmony_ci 1249141cc406Sopenharmony_ci/** Plustek OpticPro UT24 and others... 1250141cc406Sopenharmony_ci */ 1251141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0017_4 = 1252141cc406Sopenharmony_ci{ 1253141cc406Sopenharmony_ci 1.0, 0.9, 0.0, 1254141cc406Sopenharmony_ci 12, 12, 1255141cc406Sopenharmony_ci 600, 1256141cc406Sopenharmony_ci 2048, 1257141cc406Sopenharmony_ci 8, 8, 1258141cc406Sopenharmony_ci 4095, 4095, 1259141cc406Sopenharmony_ci 0x06, 0x20, 0x2f, 0x2a, 1260141cc406Sopenharmony_ci {2, 7, 5, 6, 6, 7, 0, 0, 0, 5}, 1261141cc406Sopenharmony_ci {20, 4, 13, 16, 19, 22, 0, 0, 23, 11}, 1262141cc406Sopenharmony_ci _GREEN_CH, 1263141cc406Sopenharmony_ci 0, 1264141cc406Sopenharmony_ci 1, 1265141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1266141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1267141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1268141cc406Sopenharmony_ci 1, 1269141cc406Sopenharmony_ci 13, 1270141cc406Sopenharmony_ci 62, 1271141cc406Sopenharmony_ci 320, 1272141cc406Sopenharmony_ci 10684, 1273141cc406Sopenharmony_ci 0, 1274141cc406Sopenharmony_ci 16383, 1275141cc406Sopenharmony_ci 0, 1276141cc406Sopenharmony_ci 0, 1277141cc406Sopenharmony_ci 0, 1278141cc406Sopenharmony_ci 16383, 1279141cc406Sopenharmony_ci 3, 1280141cc406Sopenharmony_ci 0, 1281141cc406Sopenharmony_ci 0x1e, 1282141cc406Sopenharmony_ci 0xa8, 1283141cc406Sopenharmony_ci 0, 1284141cc406Sopenharmony_ci 0xff, 1285141cc406Sopenharmony_ci 10, 1286141cc406Sopenharmony_ci 48, 1287141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1288141cc406Sopenharmony_ci 0, 0, 0, 1289141cc406Sopenharmony_ci _LM9832, 1290141cc406Sopenharmony_ci MODEL_KaoHsiung, 1291141cc406Sopenharmony_ci 1.0 1292141cc406Sopenharmony_ci}; 1293141cc406Sopenharmony_ci 1294141cc406Sopenharmony_ci/** unknown 1295141cc406Sopenharmony_ci */ 1296141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0017_1 = 1297141cc406Sopenharmony_ci{ 1298141cc406Sopenharmony_ci 1.5, 1.5, 0.0, 1299141cc406Sopenharmony_ci 9, 9, 1300141cc406Sopenharmony_ci 200, 1301141cc406Sopenharmony_ci 2048, 1302141cc406Sopenharmony_ci 4, 5, 1303141cc406Sopenharmony_ci 3000, 4095, 1304141cc406Sopenharmony_ci 0x02, 0x08, 0x2f, 0x36, 1305141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1306141cc406Sopenharmony_ci {5, 23, 1, 4, 7, 10, 0, 0, 10, 12}, 1307141cc406Sopenharmony_ci _GREEN_CH, 1308141cc406Sopenharmony_ci 0, 1309141cc406Sopenharmony_ci 1, 1310141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1311141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1312141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1313141cc406Sopenharmony_ci 1, 1314141cc406Sopenharmony_ci 15, 1315141cc406Sopenharmony_ci 60, 1316141cc406Sopenharmony_ci 110, 1317141cc406Sopenharmony_ci 5415, 1318141cc406Sopenharmony_ci 0, 1319141cc406Sopenharmony_ci 16383, 1320141cc406Sopenharmony_ci 0, 1321141cc406Sopenharmony_ci 0, 1322141cc406Sopenharmony_ci 0, 1323141cc406Sopenharmony_ci 16383, 1324141cc406Sopenharmony_ci 3, 1325141cc406Sopenharmony_ci 0, 1326141cc406Sopenharmony_ci 0x1e, 1327141cc406Sopenharmony_ci 0xa8, 1328141cc406Sopenharmony_ci 0, 1329141cc406Sopenharmony_ci 0xff, 1330141cc406Sopenharmony_ci 64, 1331141cc406Sopenharmony_ci 20, 1332141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1333141cc406Sopenharmony_ci 0, 0, 0, 1334141cc406Sopenharmony_ci _LM9832, 1335141cc406Sopenharmony_ci MODEL_KaoHsiung, 1336141cc406Sopenharmony_ci 1.0 1337141cc406Sopenharmony_ci}; 1338141cc406Sopenharmony_ci 1339141cc406Sopenharmony_ci/** unknown 1340141cc406Sopenharmony_ci */ 1341141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0012_0 = 1342141cc406Sopenharmony_ci{ 1343141cc406Sopenharmony_ci 1.5, 1.4, 0.0, 1344141cc406Sopenharmony_ci 9, 9, 1345141cc406Sopenharmony_ci 600, 1346141cc406Sopenharmony_ci 2048, 1347141cc406Sopenharmony_ci 4, 5, 1348141cc406Sopenharmony_ci 3000, 4095, 1349141cc406Sopenharmony_ci 0x02, 0x04, 0x37, 0x13, 1350141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1351141cc406Sopenharmony_ci {5, 23, 1, 3, 0, 0, 0, 12, 10, 22}, 1352141cc406Sopenharmony_ci _GREEN_CH, 1353141cc406Sopenharmony_ci 0, 1354141cc406Sopenharmony_ci 1, 1355141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1356141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1357141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1358141cc406Sopenharmony_ci 1, 1359141cc406Sopenharmony_ci 14, 1360141cc406Sopenharmony_ci 62, 1361141cc406Sopenharmony_ci 110, 1362141cc406Sopenharmony_ci 5400, 1363141cc406Sopenharmony_ci 0, 1364141cc406Sopenharmony_ci 16383, 1365141cc406Sopenharmony_ci 0, 1366141cc406Sopenharmony_ci 0, 1367141cc406Sopenharmony_ci 0, 1368141cc406Sopenharmony_ci 16383, 1369141cc406Sopenharmony_ci 3, 1370141cc406Sopenharmony_ci 0, 1371141cc406Sopenharmony_ci 0x1e, 1372141cc406Sopenharmony_ci 0xa8, 1373141cc406Sopenharmony_ci 0, 1374141cc406Sopenharmony_ci 0xff, 1375141cc406Sopenharmony_ci 64, 1376141cc406Sopenharmony_ci 20, 1377141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1378141cc406Sopenharmony_ci 0, 0, 0, 1379141cc406Sopenharmony_ci _LM9832, 1380141cc406Sopenharmony_ci MODEL_KaoHsiung, 1381141cc406Sopenharmony_ci 1.0 1382141cc406Sopenharmony_ci}; 1383141cc406Sopenharmony_ci 1384141cc406Sopenharmony_ci/** unknown 1385141cc406Sopenharmony_ci */ 1386141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0017_2 = 1387141cc406Sopenharmony_ci{ 1388141cc406Sopenharmony_ci 1.5, 1.2, 0.0, 1389141cc406Sopenharmony_ci 9, 9, 1390141cc406Sopenharmony_ci 300, 1391141cc406Sopenharmony_ci 512, 1392141cc406Sopenharmony_ci 4, 5, 1393141cc406Sopenharmony_ci 3000, 4095, 1394141cc406Sopenharmony_ci 0x02, 0, 0x2f, 0x36, 1395141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1396141cc406Sopenharmony_ci {5, 0, 1, 4, 7, 10, 0, 0, 12, 0}, 1397141cc406Sopenharmony_ci _GREEN_CH, 1398141cc406Sopenharmony_ci 0, 1399141cc406Sopenharmony_ci 1, 1400141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1401141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1402141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1403141cc406Sopenharmony_ci 1, 1404141cc406Sopenharmony_ci 16, 1405141cc406Sopenharmony_ci 64, 1406141cc406Sopenharmony_ci 110, 1407141cc406Sopenharmony_ci 5416, 1408141cc406Sopenharmony_ci 0, 1409141cc406Sopenharmony_ci 16383, 1410141cc406Sopenharmony_ci 0, 1411141cc406Sopenharmony_ci 0, 1412141cc406Sopenharmony_ci 0, 1413141cc406Sopenharmony_ci 16383, 1414141cc406Sopenharmony_ci 3, 1415141cc406Sopenharmony_ci 0, 1416141cc406Sopenharmony_ci 0x1e, 1417141cc406Sopenharmony_ci 0xa8, 1418141cc406Sopenharmony_ci 0, 1419141cc406Sopenharmony_ci 0xff, 1420141cc406Sopenharmony_ci 64, 1421141cc406Sopenharmony_ci 20, 1422141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1423141cc406Sopenharmony_ci 0, 0, 0, 1424141cc406Sopenharmony_ci _LM9832, 1425141cc406Sopenharmony_ci MODEL_KaoHsiung, 1426141cc406Sopenharmony_ci 1.0 1427141cc406Sopenharmony_ci}; 1428141cc406Sopenharmony_ci 1429141cc406Sopenharmony_ci/** unknown 1430141cc406Sopenharmony_ci */ 1431141cc406Sopenharmony_cistatic HWDef Hw0x07B3_0x0017_3 = 1432141cc406Sopenharmony_ci{ 1433141cc406Sopenharmony_ci 1.5, 1.2, 0.0, 1434141cc406Sopenharmony_ci 9, 9, 1435141cc406Sopenharmony_ci 300, 1436141cc406Sopenharmony_ci 512, 1437141cc406Sopenharmony_ci 4, 5, 1438141cc406Sopenharmony_ci 3000, 4095, 1439141cc406Sopenharmony_ci 0x02, 0x04, 0x37, 0x13, 1440141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1441141cc406Sopenharmony_ci {5, 23, 1, 4, 7, 10, 0, 0, 11, 23}, 1442141cc406Sopenharmony_ci _GREEN_CH, 1443141cc406Sopenharmony_ci 0, 1444141cc406Sopenharmony_ci 1, 1445141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1446141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1447141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1448141cc406Sopenharmony_ci 1, 1449141cc406Sopenharmony_ci 14, 1450141cc406Sopenharmony_ci 62, 1451141cc406Sopenharmony_ci 110, 1452141cc406Sopenharmony_ci 5400, 1453141cc406Sopenharmony_ci 0, 1454141cc406Sopenharmony_ci 16383, 1455141cc406Sopenharmony_ci 0, 1456141cc406Sopenharmony_ci 0, 1457141cc406Sopenharmony_ci 0, 1458141cc406Sopenharmony_ci 16383, 1459141cc406Sopenharmony_ci 3, 1460141cc406Sopenharmony_ci 0, 1461141cc406Sopenharmony_ci 0x1e, 1462141cc406Sopenharmony_ci 0xa8, 1463141cc406Sopenharmony_ci 0, 1464141cc406Sopenharmony_ci 0xff, 1465141cc406Sopenharmony_ci 64, 1466141cc406Sopenharmony_ci 20, 1467141cc406Sopenharmony_ci 0x0d, 0x22, 0x82, 0x88, 1468141cc406Sopenharmony_ci 0, 0, 0, 1469141cc406Sopenharmony_ci _LM9832, 1470141cc406Sopenharmony_ci MODEL_KaoHsiung, 1471141cc406Sopenharmony_ci 1.0 1472141cc406Sopenharmony_ci}; 1473141cc406Sopenharmony_ci 1474141cc406Sopenharmony_ci/** HP Scanjet 2100C 1475141cc406Sopenharmony_ci */ 1476141cc406Sopenharmony_cistatic HWDef Hw0x03F0_0x0505 = 1477141cc406Sopenharmony_ci{ 1478141cc406Sopenharmony_ci 1.05, /* dMaxMotorSpeed */ 1479141cc406Sopenharmony_ci 1.05, /* dMaxMoveSpeed */ 1480141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 1481141cc406Sopenharmony_ci 6, /* dIntegrationTimeLowLamp */ 1482141cc406Sopenharmony_ci 8, /* dIntegrationTimeHighLamp */ 1483141cc406Sopenharmony_ci 600, /* wMotorDpi (Full step DPI) */ 1484141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 1485141cc406Sopenharmony_ci 6, /* dMinIntegrationTimeLowres (ms) */ 1486141cc406Sopenharmony_ci 6, /* dMinIntegrationTimeHighres (ms) */ 1487141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow */ 1488141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh */ 1489141cc406Sopenharmony_ci 0x02, /* bSensorConfiguration (0x0b) */ 1490141cc406Sopenharmony_ci 0x00, /* bReg_0x0c */ 1491141cc406Sopenharmony_ci 0x2F, /* bReg_0x0d */ 1492141cc406Sopenharmony_ci 0x13, /* bReg_0x0e */ 1493141cc406Sopenharmony_ci /* bReg_0x0f_Mono[10] (0x0f to 0x18) */ 1494141cc406Sopenharmony_ci 1495141cc406Sopenharmony_ci { 0x02, 0x07, 0x01, 0x02, 0x02, 0x03, 0x00, 0x00, 0x04, 0x07 }, 1496141cc406Sopenharmony_ci 1497141cc406Sopenharmony_ci /* bReg_0x0f_Color[10] (0x0f to 0x18) */ 1498141cc406Sopenharmony_ci { 0x08, 0x17, 0x00, 0x03, 0x08, 0x0b, 0x00, 0x00, 0x0a, 0x14 }, 1499141cc406Sopenharmony_ci 1500141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1501141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 1502141cc406Sopenharmony_ci 1503141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1504141cc406Sopenharmony_ci 1505141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1506141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1507141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1508141cc406Sopenharmony_ci 1509141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (0x1a & 0x1b) */ 1510141cc406Sopenharmony_ci 15, /* bOpticBlackStart (0x1c) */ 1511141cc406Sopenharmony_ci 50, /* bOpticBlackEnd (0x1d) */ 1512141cc406Sopenharmony_ci 140, /* wActivePixelsStart (0x1e & 0x1f) */ 1513141cc406Sopenharmony_ci 5414, /* wLineEnd=(0x20 & 0x21) */ 1514141cc406Sopenharmony_ci 1515141cc406Sopenharmony_ci 1, /* red lamp on (reg 0x2c + 0x2d) */ 1516141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 1517141cc406Sopenharmony_ci 16383, /* green lamp on (reg 0x30 + 0x31) */ 1518141cc406Sopenharmony_ci 1, /* green lamp off (reg 0x32 + 0x33) */ 1519141cc406Sopenharmony_ci 16383, /* blue lamp on (reg 0x34 + 0x35) */ 1520141cc406Sopenharmony_ci 1, /* blue lamp off (reg 0x36 + 0x37) */ 1521141cc406Sopenharmony_ci 1522141cc406Sopenharmony_ci /* Misc */ 1523141cc406Sopenharmony_ci 0x13, /* bReg_0x45 */ 1524141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (0x4c & 0x4d) */ 1525141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full reg 0x50 */ 1526141cc406Sopenharmony_ci 0xfc, /* 0xa8 -bReg_0x51 */ 1527141cc406Sopenharmony_ci 0, /* bReg_0x54 */ 1528141cc406Sopenharmony_ci 0x18, /* bReg_0x55 */ 1529141cc406Sopenharmony_ci 8, /* bReg_0x56 */ 1530141cc406Sopenharmony_ci 60, /* bReg_0x57 */ 1531141cc406Sopenharmony_ci 0x0d, /* bReg_0x58 */ 1532141cc406Sopenharmony_ci 0xaa, /* bReg_0x59 */ 1533141cc406Sopenharmony_ci 0xba, /* bReg_0x5a */ 1534141cc406Sopenharmony_ci 0xbb, /* bReg_0x5b */ 1535141cc406Sopenharmony_ci 0, /* bReg_0x5c */ 1536141cc406Sopenharmony_ci 0, /* bReg_0x5d */ 1537141cc406Sopenharmony_ci 0, /* bReg_0x5e */ 1538141cc406Sopenharmony_ci _LM9831, 1539141cc406Sopenharmony_ci MODEL_HP, 1540141cc406Sopenharmony_ci 1.0 1541141cc406Sopenharmony_ci}; 1542141cc406Sopenharmony_ci 1543141cc406Sopenharmony_ci/** HP Scanjet 2200C */ 1544141cc406Sopenharmony_cistatic HWDef Hw0x03F0_0x0605 = 1545141cc406Sopenharmony_ci{ 1546141cc406Sopenharmony_ci 1.05, /* dMaxMotorSpeed */ 1547141cc406Sopenharmony_ci 1.05, /* dMaxMoveSpeed */ 1548141cc406Sopenharmony_ci 2.2, /* dHighSpeed */ 1549141cc406Sopenharmony_ci 6, /* dIntegrationTimeLowLamp */ 1550141cc406Sopenharmony_ci 8, /* dIntegrationTimeHighLamp */ 1551141cc406Sopenharmony_ci 600, /* ok wMotorDpi (Full step DPI) */ 1552141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 1553141cc406Sopenharmony_ci 6, /* dMinIntegrationTimeLowres (ms) */ 1554141cc406Sopenharmony_ci 6, /* dMinIntegrationTimeHighres (ms) */ 1555141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow */ 1556141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh */ 1557141cc406Sopenharmony_ci 0x02, /* bSensorConfiguration (0x0b) */ 1558141cc406Sopenharmony_ci 0x04, /* bReg_0x0c */ 1559141cc406Sopenharmony_ci 0x2F, /* bReg_0x0d */ 1560141cc406Sopenharmony_ci 0x1F, /* bReg_0x0e */ 1561141cc406Sopenharmony_ci 1562141cc406Sopenharmony_ci /* bReg_0x0f_Mono[10] (0x0f to 0x18) */ 1563141cc406Sopenharmony_ci { 0x02, 0x07, 0x01, 0x02, 0x02, 0x03, 0x00, 0x00, 0x04, 0x07 }, 1564141cc406Sopenharmony_ci 1565141cc406Sopenharmony_ci /* bReg_0x0f_Color[10] (0x0f to 0x18) */ 1566141cc406Sopenharmony_ci { 0x08, 0x17, 0x00, 0x03, 0x08, 0x0b, 0x00, 0x00, 0x0a, 0x14 }, 1567141cc406Sopenharmony_ci 1568141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1569141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 1570141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1571141cc406Sopenharmony_ci 1572141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1573141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1574141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1575141cc406Sopenharmony_ci 1576141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (0x1a & 0x1b) */ 1577141cc406Sopenharmony_ci 14, /* bOpticBlackStart (0x1c) */ 1578141cc406Sopenharmony_ci 63, /* bOpticBlackEnd (0x1d) */ 1579141cc406Sopenharmony_ci 140, /* wActivePixelsStart (0x1e & 0x1f) */ 1580141cc406Sopenharmony_ci 5367, /* wLineEnd=(0x20 & 0x21) */ 1581141cc406Sopenharmony_ci 1582141cc406Sopenharmony_ci 1, /* red lamp on (reg 0x2c + 0x2d) */ 1583141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 1584141cc406Sopenharmony_ci 16383, /* green lamp on (reg 0x30 + 0x31) */ 1585141cc406Sopenharmony_ci 1, /* green lamp off (reg 0x32 + 0x33) */ 1586141cc406Sopenharmony_ci 16383, /* blue lamp on (reg 0x34 + 0x35) */ 1587141cc406Sopenharmony_ci 1, /* blue lamp off (reg 0x36 + 0x37) */ 1588141cc406Sopenharmony_ci 1589141cc406Sopenharmony_ci /* Misc */ 1590141cc406Sopenharmony_ci 0x13, /* bReg_0x45 */ 1591141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (0x4c & 0x4d) */ 1592141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (0x50) */ 1593141cc406Sopenharmony_ci 0xfc, /* 0xa8 -bReg_0x51 */ 1594141cc406Sopenharmony_ci 0, /* bReg_0x54 */ 1595141cc406Sopenharmony_ci 0x18, /* bReg_0x55 */ 1596141cc406Sopenharmony_ci 8, /* bReg_0x56 */ 1597141cc406Sopenharmony_ci 60, /* bReg_0x57 */ 1598141cc406Sopenharmony_ci 0x0d, /* bReg_0x58 */ 1599141cc406Sopenharmony_ci 0xcc, /* bReg_0x59 */ 1600141cc406Sopenharmony_ci 0xbc, /* bReg_0x5a */ 1601141cc406Sopenharmony_ci 0xbb, /* bReg_0x5b */ 1602141cc406Sopenharmony_ci 0, /* bReg_0x5c */ 1603141cc406Sopenharmony_ci 0, /* bReg_0x5d */ 1604141cc406Sopenharmony_ci 0, /* bReg_0x5e */ 1605141cc406Sopenharmony_ci _LM9832, 1606141cc406Sopenharmony_ci MODEL_HP, 1607141cc406Sopenharmony_ci 1.0 1608141cc406Sopenharmony_ci}; 1609141cc406Sopenharmony_ci 1610141cc406Sopenharmony_ci/** Mustek BearPaw 1200 */ 1611141cc406Sopenharmony_cistatic HWDef Hw0x0400_0x1000_0 = 1612141cc406Sopenharmony_ci{ 1613141cc406Sopenharmony_ci 1.75, /* ok dMaxMotorSpeed */ 1614141cc406Sopenharmony_ci 1.25, /* ok dMaxMoveSpeed */ 1615141cc406Sopenharmony_ci 0.0, /* ok dHighSpeed */ 1616141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeLowLamp */ 1617141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeHighLamp */ 1618141cc406Sopenharmony_ci 600, /* ok wMotorDpi (Full step DPI) */ 1619141cc406Sopenharmony_ci 512, /* ok wRAMSize (KB) */ 1620141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeLowres (ms) */ 1621141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeHighres (ms) */ 1622141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1623141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1624141cc406Sopenharmony_ci 0x02, /* ok bSensorConfiguration (0x0b) */ 1625141cc406Sopenharmony_ci 0x7c, /* ok sensor control settings (reg 0x0c) */ 1626141cc406Sopenharmony_ci 0x3f, /* ok sensor control settings (reg 0x0d) */ 1627141cc406Sopenharmony_ci 0x15, /* ok sensor control settings (reg 0x0e) */ 1628141cc406Sopenharmony_ci /* ok mono (reg 0x0f to 0x18) */ 1629141cc406Sopenharmony_ci { 0x04, 0x07, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x03, 0x06}, 1630141cc406Sopenharmony_ci /* ok color (reg 0x0f to 0x18) */ 1631141cc406Sopenharmony_ci { 0x04, 0x16, 0x01, 0x02, 0x05, 0x06, 0x00, 0x00, 0x0a, 0x16}, 1632141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1633141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 1634141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1635141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1636141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1637141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1638141cc406Sopenharmony_ci 257, /* ok StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1639141cc406Sopenharmony_ci 0x0e, /* ok bOpticBlackStart (reg 0x1c) */ 1640141cc406Sopenharmony_ci 0x1d, /* ok bOpticBlackEnd (reg 0x1d) */ 1641141cc406Sopenharmony_ci 140, /* ok wActivePixelsStart (reg 0x1e + 0x1f) */ 1642141cc406Sopenharmony_ci 5369, /* ok wLineEnd (reg 0x20 + 0x21) */ 1643141cc406Sopenharmony_ci 0, /* red lamp on (reg 0x2c + 0x2d) */ 1644141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 1645141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 1646141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 1647141cc406Sopenharmony_ci 0, /* blue lamp on (reg 0x34 + 0x35) */ 1648141cc406Sopenharmony_ci 16383, /* blue lamp off (reg 0x36 + 0x37) */ 1649141cc406Sopenharmony_ci 0x13, /* ok stepper motor control (reg 0x45) */ 1650141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1651141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (reg 0x50) */ 1652141cc406Sopenharmony_ci 0xfc, /* ok acceleration profile (reg 0x51) */ 1653141cc406Sopenharmony_ci 0, /* ok lines to process (reg 0x54) */ 1654141cc406Sopenharmony_ci 0x13, /* ok kickstart (reg 0x55) */ 1655141cc406Sopenharmony_ci 0x03, /* ok pwm freq (reg 0x56) */ 1656141cc406Sopenharmony_ci 0x20, /* ok pwm duty cycle (reg 0x57) */ 1657141cc406Sopenharmony_ci 0x0d, /* ok Paper sense (reg 0x58) */ 1658141cc406Sopenharmony_ci 0x44, /* ok misc io12 (reg 0x59) */ 1659141cc406Sopenharmony_ci 0x44, /* ok misc io34 (reg 0x5a) */ 1660141cc406Sopenharmony_ci 0x16, /* ok misc io56 (reg 0x5b) */ 1661141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE MSB (reg 0x5c) */ 1662141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE LSB (reg 0x5d) */ 1663141cc406Sopenharmony_ci 0, /* ok test mode (reg 0x5e) */ 1664141cc406Sopenharmony_ci _LM9831, 1665141cc406Sopenharmony_ci MODEL_MUSTEK600, 1666141cc406Sopenharmony_ci 1.5 1667141cc406Sopenharmony_ci}; 1668141cc406Sopenharmony_ci 1669141cc406Sopenharmony_ci/** Mustek BearPaw 1200 (LM9832) */ 1670141cc406Sopenharmony_cistatic HWDef Hw0x0400_0x1001_1 = 1671141cc406Sopenharmony_ci{ 1672141cc406Sopenharmony_ci 1.25, /* ok dMaxMotorSpeed */ 1673141cc406Sopenharmony_ci 1.25, /* ok dMaxMoveSpeed */ 1674141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 1675141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeLowLamp */ 1676141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeHighLamp */ 1677141cc406Sopenharmony_ci 600, /* ok wMotorDpi (Full step DPI) */ 1678141cc406Sopenharmony_ci 512, /* ok wRAMSize (KB) */ 1679141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeLowres (ms) */ 1680141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeHighres (ms) */ 1681141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1682141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1683141cc406Sopenharmony_ci 0x02, /* ok bSensorConfiguration (0x0b) */ 1684141cc406Sopenharmony_ci 0x7c, /* ok sensor control settings (reg 0x0c) */ 1685141cc406Sopenharmony_ci 0x3f, /* ok sensor control settings (reg 0x0d) */ 1686141cc406Sopenharmony_ci 0x15, /* ok sensor control settings (reg 0x0e) */ 1687141cc406Sopenharmony_ci /* ok mono (reg 0x0f to 0x18) */ 1688141cc406Sopenharmony_ci { 0x04, 0x07, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x03, 0x06}, 1689141cc406Sopenharmony_ci /* ok color (reg 0x0f to 0x18) */ 1690141cc406Sopenharmony_ci { 0x04, 0x16, 0x01, 0x02, 0x05, 0x06, 0x00, 0x00, 0x0a, 0x16}, 1691141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1692141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 1693141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1694141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1695141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1696141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1697141cc406Sopenharmony_ci 257, /* ok StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1698141cc406Sopenharmony_ci 0x0e, /* ok bOpticBlackStart (reg 0x1c) */ 1699141cc406Sopenharmony_ci 0x1d, /* ok bOpticBlackEnd (reg 0x1d) */ 1700141cc406Sopenharmony_ci 140, /* ok wActivePixelsStart (reg 0x1e + 0x1f) */ 1701141cc406Sopenharmony_ci 5369, /* ok wLineEnd (reg 0x20 + 0x21) */ 1702141cc406Sopenharmony_ci 0, /* red lamp on (reg 0x2c + 0x2d) */ 1703141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 1704141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 1705141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 1706141cc406Sopenharmony_ci 0, /* blue lamp on (reg 0x34 + 0x35) */ 1707141cc406Sopenharmony_ci 16383, /* blue lamp off (reg 0x36 + 0x37) */ 1708141cc406Sopenharmony_ci 0x13, /* ok stepper motor control (reg 0x45) */ 1709141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1710141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (reg 0x50) */ 1711141cc406Sopenharmony_ci 0xfc, /* ok acceleration profile (reg 0x51) */ 1712141cc406Sopenharmony_ci 0, /* ok lines to process (reg 0x54) */ 1713141cc406Sopenharmony_ci 0x13, /* ok kickstart (reg 0x55) */ 1714141cc406Sopenharmony_ci 0x03, /* ok pwm freq (reg 0x56) */ 1715141cc406Sopenharmony_ci 0x20, /* ok pwm duty cycle (reg 0x57) */ 1716141cc406Sopenharmony_ci 0x0d, /* ok Paper sense (reg 0x58) */ 1717141cc406Sopenharmony_ci 0x44, /* ok misc io12 (reg 0x59) */ 1718141cc406Sopenharmony_ci 0x44, /* ok misc io34 (reg 0x5a) */ 1719141cc406Sopenharmony_ci 0x16, /* ok misc io56 (reg 0x5b) */ 1720141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE MSB (reg 0x5c) */ 1721141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE LSB (reg 0x5d) */ 1722141cc406Sopenharmony_ci 0, /* ok test mode (reg 0x5e) */ 1723141cc406Sopenharmony_ci _LM9832, 1724141cc406Sopenharmony_ci MODEL_MUSTEK600, 1725141cc406Sopenharmony_ci 1.5 1726141cc406Sopenharmony_ci}; 1727141cc406Sopenharmony_ci 1728141cc406Sopenharmony_ci/** BearPaw 2400 */ 1729141cc406Sopenharmony_cistatic HWDef Hw0x0400_0x1001_0 = 1730141cc406Sopenharmony_ci{ 1731141cc406Sopenharmony_ci 1.0/*1.8*/, /* ok dMaxMotorSpeed */ 1732141cc406Sopenharmony_ci 0.9/*1.8*/, /* ok dMaxMoveSpeed */ 1733141cc406Sopenharmony_ci 0.0, /* ok dHighSpeed */ 1734141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeLowLamp */ 1735141cc406Sopenharmony_ci 12, /* ok dIntegrationTimeHighLamp */ 1736141cc406Sopenharmony_ci 1200 /* 600*/ , /* ok wMotorDpi (Full step DPI) */ 1737141cc406Sopenharmony_ci 2048, /* ok wRAMSize (KB) */ 1738141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeLowres (ms) */ 1739141cc406Sopenharmony_ci 9, /* ok dMinIntegrationTimeHighres (ms) */ 1740141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1741141cc406Sopenharmony_ci 1169, /* ok wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1742141cc406Sopenharmony_ci 1743141cc406Sopenharmony_ci 0x02 /*0x06*/, /* ok bSensorConfiguration (0x0b) */ 1744141cc406Sopenharmony_ci 0x3c, /* ok sensor control settings (reg 0x0c) */ 1745141cc406Sopenharmony_ci 0x3f, /* ok sensor control settings (reg 0x0d) */ 1746141cc406Sopenharmony_ci 0x11, /* ok sensor control settings (reg 0x0e) */ 1747141cc406Sopenharmony_ci /* ok mono (reg 0x0f to 0x18) */ 1748141cc406Sopenharmony_ci 1749141cc406Sopenharmony_ci {2, 7, 0, 1, 0, 0, 0, 0, 4, 0}, 1750141cc406Sopenharmony_ci 1751141cc406Sopenharmony_ci/* {5, 14, 12, 15, 18, 21, 0, 0, 0, 9 },*/ 1752141cc406Sopenharmony_ci {1, 4, 4, 5, 6, 7, 0, 0, 0, 3 }, 1753141cc406Sopenharmony_ci 1754141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1755141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 1756141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1757141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1758141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1759141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1760141cc406Sopenharmony_ci 1761141cc406Sopenharmony_ci 257, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1762141cc406Sopenharmony_ci 13, /* bOpticBlackStart (reg 0x1c) */ 1763141cc406Sopenharmony_ci 60, /* bOpticBlackEnd (reg 0x1d) */ 1764141cc406Sopenharmony_ci 10, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 1765141cc406Sopenharmony_ci5416 /* 11000*/, /* wLineEnd (reg 0x20 + 0x21) */ 1766141cc406Sopenharmony_ci 1767141cc406Sopenharmony_ci 1, /* ok red lamp on (reg 0x2c + 0x2d) */ 1768141cc406Sopenharmony_ci 16383, /* ok red lamp off (reg 0x2e + 0x2f) */ 1769141cc406Sopenharmony_ci 1, /* ok green lamp on (reg 0x30 + 0x31) */ 1770141cc406Sopenharmony_ci 16383, /* ok green lamp off (reg 0x32 + 0x33) */ 1771141cc406Sopenharmony_ci 1, /* ok blue lamp on (reg 0x34 + 0x35) */ 1772141cc406Sopenharmony_ci 16383, /* ok blue lamp off (reg 0x36 + 0x37) */ 1773141cc406Sopenharmony_ci 1774141cc406Sopenharmony_ci 0x03, /* ok stepper motor control (reg 0x45) */ 1775141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1776141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (reg 0x50) */ 1777141cc406Sopenharmony_ci 0xfc, /* ok acceleration profile (reg 0x51) */ 1778141cc406Sopenharmony_ci 0x03, /* ok lines to process (reg 0x54) */ 1779141cc406Sopenharmony_ci 0x13, /* Kickstart 0x55 */ 1780141cc406Sopenharmony_ci 2, /* PWM frequency 0x56 */ 1781141cc406Sopenharmony_ci 32, /* PWM duty cycle 0x57 */ 1782141cc406Sopenharmony_ci 0x15, /* paper sense 0x58 */ 1783141cc406Sopenharmony_ci 0x44, /* misc I/O 0x59 */ 1784141cc406Sopenharmony_ci 0x44, /* misc I/O 0x5a, */ 1785141cc406Sopenharmony_ci 0x46, /* misc I/O 0x5b */ 1786141cc406Sopenharmony_ci 0, 0, 0,/* test registers, set to 0 (0x5c, 0x5d, 0x5e) */ 1787141cc406Sopenharmony_ci _LM9832, 1788141cc406Sopenharmony_ci MODEL_MUSTEK1200, 1789141cc406Sopenharmony_ci 1.0 1790141cc406Sopenharmony_ci}; 1791141cc406Sopenharmony_ci 1792141cc406Sopenharmony_ci/** EPSON Perfection/Photo 1250 */ 1793141cc406Sopenharmony_cistatic HWDef Hw0x04B8_0x010F = 1794141cc406Sopenharmony_ci{ 1795141cc406Sopenharmony_ci 0.8, /* dMaxMotorSpeed */ 1796141cc406Sopenharmony_ci 0.8, /* dMaxMoveSpeed */ 1797141cc406Sopenharmony_ci 4.1, /* dHighSpeed */ 1798141cc406Sopenharmony_ci 12, /* dIntegrationTimeLowLamp */ 1799141cc406Sopenharmony_ci 12, /* dIntegrationTimeHighLamp */ 1800141cc406Sopenharmony_ci 600, /* wMotorDpi (Full step DPI) */ 1801141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 1802141cc406Sopenharmony_ci 4, /* dMinIntegrationTimeLowres (ms) */ 1803141cc406Sopenharmony_ci 5, /* dMinIntegrationTimeHighres (ms) */ 1804141cc406Sopenharmony_ci 1, /* ok wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1805141cc406Sopenharmony_ci 1, /* ok wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1806141cc406Sopenharmony_ci 1807141cc406Sopenharmony_ci 0x02, /* ok bSensorConfiguration (0x0b) */ 1808141cc406Sopenharmony_ci 0x04, /* ok sensor control settings (reg 0x0c) */ 1809141cc406Sopenharmony_ci 0x7d, /* ok sensor control settings (reg 0x0d) */ 1810141cc406Sopenharmony_ci 0x37, /* ok sensor control settings (reg 0x0e) */ 1811141cc406Sopenharmony_ci 1812141cc406Sopenharmony_ci {0x02, 0x07, 0x00, 0x01, 0x04, 0x07, 0x00, 0x00, 0x03, 0x07}, 1813141cc406Sopenharmony_ci /* ok mono (reg 0x0f to 0x18) */ 1814141cc406Sopenharmony_ci {0x06, 0x16, 0x00, 0x05, 0x0c, 0x17, 0x00, 0x00, 0x0a, 0x17}, 1815141cc406Sopenharmony_ci /* ok color (reg 0x0f to 0x18) */ 1816141cc406Sopenharmony_ci _GREEN_CH, /* ok bReg_0x26 color mode - bits 4 and 5 */ 1817141cc406Sopenharmony_ci 0x40, /* ok bReg 0x27 color mode */ 1818141cc406Sopenharmony_ci 3, /* bReg 0x29 illumination mode */ 1819141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1820141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1821141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1822141cc406Sopenharmony_ci 1823141cc406Sopenharmony_ci 1, /* ok StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1824141cc406Sopenharmony_ci 0x00, /* ok bOpticBlackStart (reg 0x1c) */ 1825141cc406Sopenharmony_ci 0x42, /* ok bOpticBlackEnd (reg 0x1d) */ 1826141cc406Sopenharmony_ci 69, /* ok wActivePixelsStart (reg 0x1e + 0x1f) */ 1827141cc406Sopenharmony_ci 10758, /* ok wLineEnd (reg 0x20 + 0x21) */ 1828141cc406Sopenharmony_ci 1829141cc406Sopenharmony_ci 16383, /* ok red lamp on (reg 0x2c + 0x2d) */ 1830141cc406Sopenharmony_ci 0, /* ok red lamp off (reg 0x2e + 0x2f) */ 1831141cc406Sopenharmony_ci 16383, /* ok green lamp on (reg 0x30 + 0x31) */ 1832141cc406Sopenharmony_ci 0, /* ok green lamp off (reg 0x32 + 0x33) */ 1833141cc406Sopenharmony_ci 16383, /* ok blue lamp on (reg 0x34 + 0x35) */ 1834141cc406Sopenharmony_ci 0, /* ok blue lamp off (reg 0x36 + 0x37) */ 1835141cc406Sopenharmony_ci 1836141cc406Sopenharmony_ci 3, /* ok stepper motor control (reg 0x45) */ 1837141cc406Sopenharmony_ci 0, /* ok wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1838141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (reg 0x50) */ 1839141cc406Sopenharmony_ci 0x0c, /* ok acceleration profile (reg 0x51) */ 1840141cc406Sopenharmony_ci 0, /* ok lines to process (reg 0x54) */ 1841141cc406Sopenharmony_ci 0x0f, /* ok kickstart (reg 0x55) */ 1842141cc406Sopenharmony_ci 0x02, /* ok pwm freq (reg 0x56) */ 1843141cc406Sopenharmony_ci 1, /* ok pwm duty cycle (reg 0x57) */ 1844141cc406Sopenharmony_ci 1845141cc406Sopenharmony_ci 0x0d, /* ok Paper sense (reg 0x58) */ 1846141cc406Sopenharmony_ci 1847141cc406Sopenharmony_ci 0x41, /* ok misc io12 (reg 0x59) */ 1848141cc406Sopenharmony_ci 0x44, /* ok misc io34 (reg 0x5a) */ 1849141cc406Sopenharmony_ci 0x14, /* ok misc io56 (reg 0x5b) */ 1850141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE MSB (reg 0x5c) */ 1851141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE LSB (reg 0x5d) */ 1852141cc406Sopenharmony_ci 0, /* ok test mode (reg 0x5e) */ 1853141cc406Sopenharmony_ci _LM9832, 1854141cc406Sopenharmony_ci MODEL_EPSON, 1855141cc406Sopenharmony_ci 1.0 1856141cc406Sopenharmony_ci}; 1857141cc406Sopenharmony_ci 1858141cc406Sopenharmony_ci/** EPSON Perfection/Photo 1260 */ 1859141cc406Sopenharmony_cistatic HWDef Hw0x04B8_0x011D = 1860141cc406Sopenharmony_ci{ 1861141cc406Sopenharmony_ci 0.9, /* dMaxMotorSpeed */ 1862141cc406Sopenharmony_ci 0.8, /* dMaxMoveSpeed */ 1863141cc406Sopenharmony_ci 3.0, /* dHighSpeed */ 1864141cc406Sopenharmony_ci 12, /* dIntegrationTimeLowLamp */ 1865141cc406Sopenharmony_ci 12, /* dIntegrationTimeHighLamp */ 1866141cc406Sopenharmony_ci 600, /* wMotorDpi (Full step DPI) */ 1867141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 1868141cc406Sopenharmony_ci 4, /* dMinIntegrationTimeLowres (ms) */ 1869141cc406Sopenharmony_ci 5, /* dMinIntegrationTimeHighres (ms) */ 1870141cc406Sopenharmony_ci 1, /* ok wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1871141cc406Sopenharmony_ci 1, /* ok wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1872141cc406Sopenharmony_ci 1873141cc406Sopenharmony_ci 0x02, /* ok bSensorConfiguration (0x0b) */ 1874141cc406Sopenharmony_ci 0x04, /* ok sensor control settings (reg 0x0c) */ 1875141cc406Sopenharmony_ci 0x7d, /* ok sensor control settings (reg 0x0d) */ 1876141cc406Sopenharmony_ci 0x37, /* ok sensor control settings (reg 0x0e) */ 1877141cc406Sopenharmony_ci 1878141cc406Sopenharmony_ci {0x02, 0x07, 0x00, 0x01, 0x04, 0x07, 0x00, 0x00, 0x03, 0x07}, 1879141cc406Sopenharmony_ci /* ok mono (reg 0x0f to 0x18) */ 1880141cc406Sopenharmony_ci {0x06, 0x0b, 0x00, 0x05, 0x0c, 0x17, 0x00, 0x00, 0x0a, 0x17}, 1881141cc406Sopenharmony_ci /* ok color (reg 0x0f to 0x18) */ 1882141cc406Sopenharmony_ci _GREEN_CH, /* ok bReg_0x26 color mode - bits 4 and 5 */ 1883141cc406Sopenharmony_ci 0x42, /* ok bReg 0x27 color mode */ 1884141cc406Sopenharmony_ci 3, /* bReg 0x29 illumination mode */ 1885141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices)*/ 1886141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1887141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1888141cc406Sopenharmony_ci 1889141cc406Sopenharmony_ci 1, /* ok StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1890141cc406Sopenharmony_ci 0x00, /* ok bOpticBlackStart (reg 0x1c) */ 1891141cc406Sopenharmony_ci 0x42, /* ok bOpticBlackEnd (reg 0x1d) */ 1892141cc406Sopenharmony_ci 69, /* ok wActivePixelsStart (reg 0x1e + 0x1f) */ 1893141cc406Sopenharmony_ci 10766, /* ok wLineEnd (reg 0x20 + 0x21) */ 1894141cc406Sopenharmony_ci 1895141cc406Sopenharmony_ci 16383, /* ok red lamp on (reg 0x2c + 0x2d) */ 1896141cc406Sopenharmony_ci 0, /* ok red lamp off (reg 0x2e + 0x2f) */ 1897141cc406Sopenharmony_ci 16383, /* ok green lamp on (reg 0x30 + 0x31) */ 1898141cc406Sopenharmony_ci 0, /* ok green lamp off (reg 0x32 + 0x33) */ 1899141cc406Sopenharmony_ci 16383, /* ok blue lamp on (reg 0x34 + 0x35) */ 1900141cc406Sopenharmony_ci 0, /* ok blue lamp off (reg 0x36 + 0x37) */ 1901141cc406Sopenharmony_ci 1902141cc406Sopenharmony_ci 3, /* ok stepper motor control (reg 0x45) */ 1903141cc406Sopenharmony_ci 0, /* ok wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1904141cc406Sopenharmony_ci 0x1e, /* steps to reverse on buffer full (reg 0x50) */ 1905141cc406Sopenharmony_ci 0x0c, /* ok acceleration profile (reg 0x51) */ 1906141cc406Sopenharmony_ci 0, /* ok lines to process (reg 0x54) */ 1907141cc406Sopenharmony_ci 0x0f, /* ok kickstart (reg 0x55) */ 1908141cc406Sopenharmony_ci 0x02, /* ok pwm freq (reg 0x56) */ 1909141cc406Sopenharmony_ci 1, /* ok pwm duty cycle (reg 0x57) */ 1910141cc406Sopenharmony_ci 1911141cc406Sopenharmony_ci 0x0d, /* ok Paper sense (reg 0x58) */ 1912141cc406Sopenharmony_ci 1913141cc406Sopenharmony_ci 0x41, /* ok misc io12 (reg 0x59) */ 1914141cc406Sopenharmony_ci 0x44, /* ok misc io34 (reg 0x5a) */ 1915141cc406Sopenharmony_ci 0x14, /* ok misc io56 (reg 0x5b) */ 1916141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE MSB (reg 0x5c) */ 1917141cc406Sopenharmony_ci 0, /* ok test mode ADC Output CODE LSB (reg 0x5d) */ 1918141cc406Sopenharmony_ci 0, /* ok test mode (reg 0x5e) */ 1919141cc406Sopenharmony_ci _LM9832, 1920141cc406Sopenharmony_ci MODEL_EPSON, 1921141cc406Sopenharmony_ci 1.5 1922141cc406Sopenharmony_ci}; 1923141cc406Sopenharmony_ci 1924141cc406Sopenharmony_ci/** Umax 3400/3450 */ 1925141cc406Sopenharmony_cistatic HWDef Hw0x1606_0x0060 = 1926141cc406Sopenharmony_ci{ 1927141cc406Sopenharmony_ci 1.5, /* dMaxMotorSpeed */ 1928141cc406Sopenharmony_ci 0.8, /* dMaxMoveSpeed */ 1929141cc406Sopenharmony_ci 2.75, /* dHighSpeed */ 1930141cc406Sopenharmony_ci 9, /* dIntegrationTimeLowLamp */ 1931141cc406Sopenharmony_ci 9, /* dIntegrationTimeHighLamp */ 1932141cc406Sopenharmony_ci 600, /* wMotorDpi (Full step DPI) */ 1933141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 1934141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeLowres (ms) */ 1935141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeHighres (ms) */ 1936141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 1937141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 1938141cc406Sopenharmony_ci 1939141cc406Sopenharmony_ci 0x06, /* bSensorConfiguration (0x0b) */ 1940141cc406Sopenharmony_ci 0x73, /* sensor control settings (reg 0x0c) */ 1941141cc406Sopenharmony_ci 0x77, /* sensor control settings (reg 0x0d) */ 1942141cc406Sopenharmony_ci 0x15, /* sensor control settings (reg 0x0e) */ 1943141cc406Sopenharmony_ci 1944141cc406Sopenharmony_ci {0x00, 0x03, 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03}, 1945141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 1946141cc406Sopenharmony_ci 1947141cc406Sopenharmony_ci {0x01, 0x0c, 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x16, 0x0c}, 1948141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 1949141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 1950141cc406Sopenharmony_ci 0x40, /* bReg 0x27 color mode */ 1951141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 1952141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 1953141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1954141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 1955141cc406Sopenharmony_ci 1956141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 1957141cc406Sopenharmony_ci 0x2f, /* bOpticBlackStart (reg 0x1c) */ 1958141cc406Sopenharmony_ci 0x3e, /* bOpticBlackEnd (reg 0x1d) */ 1959141cc406Sopenharmony_ci 110, /* ? wActivePixelsStart (reg 0x1e + 0x1f) */ 1960141cc406Sopenharmony_ci 5469, /* wLineEnd (reg 0x20 + 0x21) */ 1961141cc406Sopenharmony_ci 1962141cc406Sopenharmony_ci 1, /* red lamp on (reg 0x2c + 0x2d) */ 1963141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 1964141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 1965141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 1966141cc406Sopenharmony_ci 32, /* blue lamp on (reg 0x34 + 0x35) */ 1967141cc406Sopenharmony_ci 48, /* blue lamp off (reg 0x36 + 0x37) */ 1968141cc406Sopenharmony_ci 1969141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 1970141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 1971141cc406Sopenharmony_ci 11, /* steps to reverse on buffer full (reg 0x50)*/ 1972141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 1973141cc406Sopenharmony_ci 3, /* lines to process (reg 0x54) */ 1974141cc406Sopenharmony_ci 0xcb, /* kickstart (reg 0x55) */ 1975141cc406Sopenharmony_ci 0x05, /* pwm freq (reg 0x56) */ 1976141cc406Sopenharmony_ci 5, /* pwm duty cycle (reg 0x57) */ 1977141cc406Sopenharmony_ci 1978141cc406Sopenharmony_ci 0x0d, /* Paper sense (reg 0x58) */ 1979141cc406Sopenharmony_ci 1980141cc406Sopenharmony_ci 0x44, /* misc io12 (reg 0x59) */ 1981141cc406Sopenharmony_ci 0x45, /* misc io34 (reg 0x5a) */ 1982141cc406Sopenharmony_ci 0x74, /* misc io56 (reg 0x5b) */ 1983141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 1984141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 1985141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 1986141cc406Sopenharmony_ci _LM9832, 1987141cc406Sopenharmony_ci MODEL_UMAX, 1988141cc406Sopenharmony_ci 1.0 1989141cc406Sopenharmony_ci}; 1990141cc406Sopenharmony_ci 1991141cc406Sopenharmony_ci/** Umax 5400 */ 1992141cc406Sopenharmony_cistatic HWDef Hw0x1606_0x0160 = 1993141cc406Sopenharmony_ci{ 1994141cc406Sopenharmony_ci 1.1, /* dMaxMotorSpeed */ 1995141cc406Sopenharmony_ci 0.9, /* dMaxMoveSpeed */ 1996141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 1997141cc406Sopenharmony_ci 9, /* dIntegrationTimeLowLamp */ 1998141cc406Sopenharmony_ci 9, /* dIntegrationTimeHighLamp */ 1999141cc406Sopenharmony_ci 600, /* wMotorDpi (Full step DPI) */ 2000141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2001141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeLowres (ms) */ 2002141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeHighres (ms) */ 2003141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2004141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2005141cc406Sopenharmony_ci 2006141cc406Sopenharmony_ci 0x06, /* bSensorConfiguration (0x0b) */ 2007141cc406Sopenharmony_ci 0x73, /* sensor control settings (reg 0x0c) */ 2008141cc406Sopenharmony_ci 0x77, /* sensor control settings (reg 0x0d) */ 2009141cc406Sopenharmony_ci 0x25, /* sensor control settings (reg 0x0e) */ 2010141cc406Sopenharmony_ci 2011141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2012141cc406Sopenharmony_ci {0x00, 0x03, 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03}, 2013141cc406Sopenharmony_ci 2014141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2015141cc406Sopenharmony_ci {0x01, 0x0c, 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x16, 0x0c}, 2016141cc406Sopenharmony_ci 2017141cc406Sopenharmony_ci _GREEN_CH, /* bReg_0x26 color mode - bits 4 and 5 */ 2018141cc406Sopenharmony_ci 0x40, /* bReg 0x27 color mode */ 2019141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 2020141cc406Sopenharmony_ci 2021141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 2022141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 2023141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 2024141cc406Sopenharmony_ci 2025141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2026141cc406Sopenharmony_ci 20, /* bOpticBlackStart (reg 0x1c) */ 2027141cc406Sopenharmony_ci 45, /* bOpticBlackEnd (reg 0x1d) */ 2028141cc406Sopenharmony_ci 110, /* ? wActivePixelsStart (reg 0x1e + 0x1f) */ 2029141cc406Sopenharmony_ci 10669, /* wLineEnd (reg 0x20 + 0x21) */ 2030141cc406Sopenharmony_ci 2031141cc406Sopenharmony_ci 1, /* red lamp on (reg 0x2c + 0x2d) */ 2032141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 2033141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 2034141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 2035141cc406Sopenharmony_ci 32, /* blue lamp on (reg 0x34 + 0x35) */ 2036141cc406Sopenharmony_ci 48, /* blue lamp off (reg 0x36 + 0x37) */ 2037141cc406Sopenharmony_ci 2038141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2039141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2040141cc406Sopenharmony_ci 11, /* steps to reverse on buffer full (reg 0x50)*/ 2041141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2042141cc406Sopenharmony_ci 3, /* lines to process (reg 0x54) */ 2043141cc406Sopenharmony_ci 0xcb, /* kickstart (reg 0x55) */ 2044141cc406Sopenharmony_ci 0x05, /* pwm freq (reg 0x56) */ 2045141cc406Sopenharmony_ci 5, /* pwm duty cycle (reg 0x57) */ 2046141cc406Sopenharmony_ci 2047141cc406Sopenharmony_ci 0x0d, /* Paper sense (reg 0x58) */ 2048141cc406Sopenharmony_ci 2049141cc406Sopenharmony_ci 0x44, /* misc io12 (reg 0x59) */ 2050141cc406Sopenharmony_ci 0x45, /* misc io34 (reg 0x5a) */ 2051141cc406Sopenharmony_ci 0x7c, /* misc io56 (reg 0x5b) */ 2052141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2053141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2054141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2055141cc406Sopenharmony_ci _LM9832, 2056141cc406Sopenharmony_ci MODEL_UMAX1200, 2057141cc406Sopenharmony_ci 1.0 2058141cc406Sopenharmony_ci}; 2059141cc406Sopenharmony_ci 2060141cc406Sopenharmony_ci/** Canon N650U/N656U */ 2061141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x2206 = 2062141cc406Sopenharmony_ci{ 2063141cc406Sopenharmony_ci 0.76, /* dMaxMotorSpeed */ 2064141cc406Sopenharmony_ci 0.243, /* dMaxMoveSpeed */ 2065141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2066141cc406Sopenharmony_ci 100, /* dIntegrationTimeLowLamp */ 2067141cc406Sopenharmony_ci 100, /* dIntegrationTimeHighLamp */ 2068141cc406Sopenharmony_ci 1200, /* wMotorDpi (Full step DPI) */ 2069141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2070141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2071141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2072141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2073141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2074141cc406Sopenharmony_ci 2075141cc406Sopenharmony_ci 0x15, /* bSensorConfiguration (0x0b) */ 2076141cc406Sopenharmony_ci 0x4c, /* sensor control settings (reg 0x0c) */ 2077141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2078141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2079141cc406Sopenharmony_ci 2080141cc406Sopenharmony_ci /* mono & color (reg 0x0f to 0x18) the 2081141cc406Sopenharmony_ci same for CIS devices */ 2082141cc406Sopenharmony_ci 2083141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2084141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2085141cc406Sopenharmony_ci 2086141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2087141cc406Sopenharmony_ci 2088141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2089141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode (runtime) */ 2090141cc406Sopenharmony_ci /* illumination mode settings */ 2091141cc406Sopenharmony_ci { 3, 0, 0, 23, 850, 0, 0 }, 2092141cc406Sopenharmony_ci { 2, 23, 2500, 23, 1800, 23, 950 }, 2093141cc406Sopenharmony_ci 2094141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2095141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2096141cc406Sopenharmony_ci 0, /* bOpticBlackEnd (reg 0x1d) */ 2097141cc406Sopenharmony_ci 89, /* ? wActivePixelsStart (reg 0x1e + 0x1f) */ 2098141cc406Sopenharmony_ci 6074, /* wLineEnd (reg 0x20 + 0x21) */ 2099141cc406Sopenharmony_ci 2100141cc406Sopenharmony_ci 23, /* red lamp on (reg 0x2c + 0x2d) */ 2101141cc406Sopenharmony_ci 2500, /* red lamp off (reg 0x2e + 0x2f) */ 2102141cc406Sopenharmony_ci 23, /* green lamp on (reg 0x30 + 0x31) */ 2103141cc406Sopenharmony_ci 1800, /* green lamp off (reg 0x32 + 0x33) */ 2104141cc406Sopenharmony_ci 23, /* blue lamp on (reg 0x34 + 0x35) */ 2105141cc406Sopenharmony_ci 950, /* blue lamp off (reg 0x36 + 0x37) */ 2106141cc406Sopenharmony_ci 2107141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2108141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2109141cc406Sopenharmony_ci 0x3f, /* steps to reverse when buffer is full reg 0x50) */ 2110141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2111141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2112141cc406Sopenharmony_ci 0x0f, /* kickstart (reg 0x55) */ 2113141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2114141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2115141cc406Sopenharmony_ci 2116141cc406Sopenharmony_ci 0x05, /* Paper sense (reg 0x58) */ 2117141cc406Sopenharmony_ci 2118141cc406Sopenharmony_ci 0x66, /* misc io12 (reg 0x59) */ 2119141cc406Sopenharmony_ci 0x16, /* misc io34 (reg 0x5a) */ 2120141cc406Sopenharmony_ci 0x91, /* misc io56 (reg 0x5b) */ 2121141cc406Sopenharmony_ci 0x01, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2122141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2123141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2124141cc406Sopenharmony_ci _LM9832, 2125141cc406Sopenharmony_ci MODEL_CANON600, 2126141cc406Sopenharmony_ci 2.0 2127141cc406Sopenharmony_ci}; 2128141cc406Sopenharmony_ci 2129141cc406Sopenharmony_ci/** Canon N1220U */ 2130141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x2207 = 2131141cc406Sopenharmony_ci{ 2132141cc406Sopenharmony_ci 0.72, /* dMaxMotorSpeed */ 2133141cc406Sopenharmony_ci 0.36, /* dMaxMoveSpeed */ 2134141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2135141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2136141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2137141cc406Sopenharmony_ci 1200, /* wMotorDpi (Full step DPI) */ 2138141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2139141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2140141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2141141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2142141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2143141cc406Sopenharmony_ci 2144141cc406Sopenharmony_ci 0x15, /* bSensorConfiguration (0x0b) */ 2145141cc406Sopenharmony_ci 0x4c, /* sensor control settings (reg 0x0c) */ 2146141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2147141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2148141cc406Sopenharmony_ci 2149141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2150141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2151141cc406Sopenharmony_ci 2152141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2153141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2154141cc406Sopenharmony_ci 2155141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2156141cc406Sopenharmony_ci 2157141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2158141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2159141cc406Sopenharmony_ci { 3, 0, 0, 23, 2200, 0, 0 }, 2160141cc406Sopenharmony_ci { 2, 23, 16383, 23, 15000, 23, 6600 }, 2161141cc406Sopenharmony_ci 2162141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2163141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2164141cc406Sopenharmony_ci 0, /* bOpticBlackEnd (reg 0x1d) */ 2165141cc406Sopenharmony_ci 124, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2166141cc406Sopenharmony_ci 10586, /* wLineEnd (reg 0x20 + 0x21) */ 2167141cc406Sopenharmony_ci 2168141cc406Sopenharmony_ci 23, /* red lamp on (reg 0x2c + 0x2d) */ 2169141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 2170141cc406Sopenharmony_ci 23, /* green lamp on (reg 0x30 + 0x31) */ 2171141cc406Sopenharmony_ci 15000, /* green lamp off (reg 0x32 + 0x33) */ 2172141cc406Sopenharmony_ci 23, /* blue lamp on (reg 0x34 + 0x35) */ 2173141cc406Sopenharmony_ci 6600, /* blue lamp off (reg 0x36 + 0x37) */ 2174141cc406Sopenharmony_ci 2175141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2176141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2177141cc406Sopenharmony_ci 0, /* steps to reverse when buffer is full reg 0x50) */ 2178141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2179141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2180141cc406Sopenharmony_ci 0x0f, /* kickstart (reg 0x55) */ 2181141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2182141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2183141cc406Sopenharmony_ci 2184141cc406Sopenharmony_ci 0x05, /* Paper sense (reg 0x58) */ 2185141cc406Sopenharmony_ci 2186141cc406Sopenharmony_ci 0x66, /* misc io12 (reg 0x59) */ 2187141cc406Sopenharmony_ci 0x16, /* misc io34 (reg 0x5a) */ 2188141cc406Sopenharmony_ci 0x91, /* misc io56 (reg 0x5b) */ 2189141cc406Sopenharmony_ci 0x01, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2190141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2191141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2192141cc406Sopenharmony_ci _LM9832, 2193141cc406Sopenharmony_ci MODEL_CANON1200, 2194141cc406Sopenharmony_ci 2.0 2195141cc406Sopenharmony_ci}; 2196141cc406Sopenharmony_ci 2197141cc406Sopenharmony_ci/** Canon D660U */ 2198141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x2208 = 2199141cc406Sopenharmony_ci{ 2200141cc406Sopenharmony_ci 1.2, /* dMaxMotorSpeed */ 2201141cc406Sopenharmony_ci 1.1, /* dMaxMoveSpeed */ 2202141cc406Sopenharmony_ci 2.75, /* dHighSpeed */ 2203141cc406Sopenharmony_ci 9, /* dIntegrationTimeLowLamp */ 2204141cc406Sopenharmony_ci 9, /* dIntegrationTimeHighLamp */ 2205141cc406Sopenharmony_ci 300, /* wMotorDpi (Full step DPI) */ 2206141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2207141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeLowres (ms) */ 2208141cc406Sopenharmony_ci 8, /* dMinIntegrationTimeHighres (ms) */ 2209141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2210141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2211141cc406Sopenharmony_ci 2212141cc406Sopenharmony_ci 0x02, /* bSensorConfiguration (0x0b) */ 2213141cc406Sopenharmony_ci 0x60, /* sensor control settings (reg 0x0c) */ 2214141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2215141cc406Sopenharmony_ci 0x13, /* sensor control settings (reg 0x0e) */ 2216141cc406Sopenharmony_ci 2217141cc406Sopenharmony_ci {0x06, 0x17, 0x01, 0x03, 0x05, 0x07, 0x00, 0x00, 0x0b }, 2218141cc406Sopenharmony_ci {0x06, 0x17, 0x01, 0x03, 0x05, 0x07, 0x00, 0x00, 0x0b }, 2219141cc406Sopenharmony_ci _GREEN_CH, 2220141cc406Sopenharmony_ci 0, /* bReg 0x27 color mode */ 2221141cc406Sopenharmony_ci 1, /* bReg 0x29 illumination mode */ 2222141cc406Sopenharmony_ci 2223141cc406Sopenharmony_ci /* illumination mode settings (not used for CCD devices) */ 2224141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 2225141cc406Sopenharmony_ci { 0, 0, 0, 0, 0, 0, 0 }, 2226141cc406Sopenharmony_ci 2227141cc406Sopenharmony_ci 0, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2228141cc406Sopenharmony_ci 13, /* bOpticBlackStart (reg 0x1c) */ 2229141cc406Sopenharmony_ci 33, /* bOpticBlackEnd (reg 0x1d) */ 2230141cc406Sopenharmony_ci 64, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2231141cc406Sopenharmony_ci 5440, /* wLineEnd (reg 0x20 + 0x21) */ 2232141cc406Sopenharmony_ci 2233141cc406Sopenharmony_ci 16383, /* red lamp on (reg 0x2c + 0x2d) */ 2234141cc406Sopenharmony_ci 1, /* red lamp off (reg 0x2e + 0x2f) */ 2235141cc406Sopenharmony_ci 0, /* green lamp on (reg 0x30 + 0x31) */ 2236141cc406Sopenharmony_ci 0, /* green lamp off (reg 0x32 + 0x33) */ 2237141cc406Sopenharmony_ci 0, /* blue lamp on (reg 0x34 + 0x35) */ 2238141cc406Sopenharmony_ci 0, /* blue lamp off (reg 0x36 + 0x37) */ 2239141cc406Sopenharmony_ci 2240141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2241141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2242141cc406Sopenharmony_ci 0x20, /* steps to reverse when buffer is full reg 0x50) */ 2243141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2244141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2245141cc406Sopenharmony_ci 0, /* kickstart (reg 0x55) */ 2246141cc406Sopenharmony_ci 0x02, /* pwm freq (reg 0x56) */ 2247141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2248141cc406Sopenharmony_ci 0x05, /* Paper sense (reg 0x58) */ 2249141cc406Sopenharmony_ci 0x44, /* misc io12 (reg 0x59) */ 2250141cc406Sopenharmony_ci 0x14, /* misc io34 (reg 0x5a) */ 2251141cc406Sopenharmony_ci 0x11, /* misc io56 (reg 0x5b) */ 2252141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2253141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2254141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2255141cc406Sopenharmony_ci _LM9832, 2256141cc406Sopenharmony_ci MODEL_CANONCCD1200, 2257141cc406Sopenharmony_ci 1.5 2258141cc406Sopenharmony_ci}; 2259141cc406Sopenharmony_ci 2260141cc406Sopenharmony_ci/** Canon 670/676/LiDE20 */ 2261141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x220D = 2262141cc406Sopenharmony_ci{ 2263141cc406Sopenharmony_ci 0.72, /* dMaxMotorSpeed */ 2264141cc406Sopenharmony_ci 0.23, /* dMaxMoveSpeed */ 2265141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2266141cc406Sopenharmony_ci 100, /* dIntegrationTimeLowLamp */ 2267141cc406Sopenharmony_ci 100, /* dIntegrationTimeHighLamp */ 2268141cc406Sopenharmony_ci 1200, /* wMotorDpi (Full step DPI) */ 2269141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2270141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2271141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2272141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2273141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2274141cc406Sopenharmony_ci 2275141cc406Sopenharmony_ci 0x15, /* bSensorConfiguration (0x0b) */ 2276141cc406Sopenharmony_ci 0x4c, /* sensor control settings (reg 0x0c) */ 2277141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2278141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2279141cc406Sopenharmony_ci 2280141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2281141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2282141cc406Sopenharmony_ci 2283141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2284141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2285141cc406Sopenharmony_ci 2286141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2287141cc406Sopenharmony_ci 2288141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2289141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode (runtime) */ 2290141cc406Sopenharmony_ci 2291141cc406Sopenharmony_ci { 3, 0, 0, 23, 1800, 0, 0 }, 2292141cc406Sopenharmony_ci { 2, 23, 3800, 23, 3300, 23, 2700 }, 2293141cc406Sopenharmony_ci 2294141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2295141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2296141cc406Sopenharmony_ci 0, /* bOpticBlackEnd (reg 0x1d) */ 2297141cc406Sopenharmony_ci 75, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2298141cc406Sopenharmony_ci 6074, /* wLineEnd (reg 0x20 + 0x21) */ 2299141cc406Sopenharmony_ci 2300141cc406Sopenharmony_ci 23, /* red lamp on (reg 0x2c + 0x2d) */ 2301141cc406Sopenharmony_ci 3800, /* red lamp off (reg 0x2e + 0x2f) */ 2302141cc406Sopenharmony_ci 23, /* green lamp on (reg 0x30 + 0x31) */ 2303141cc406Sopenharmony_ci 3300, /* green lamp off (reg 0x32 + 0x33) */ 2304141cc406Sopenharmony_ci 23, /* blue lamp on (reg 0x34 + 0x35) */ 2305141cc406Sopenharmony_ci 2700, /* blue lamp off (reg 0x36 + 0x37) */ 2306141cc406Sopenharmony_ci 2307141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2308141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2309141cc406Sopenharmony_ci 0x3f, /* steps to reverse when buffer is full reg 0x50) */ 2310141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2311141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2312141cc406Sopenharmony_ci 0x0f, /* kickstart (reg 0x55) */ 2313141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2314141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2315141cc406Sopenharmony_ci 2316141cc406Sopenharmony_ci 0x04, /* Paper sense (reg 0x58) */ 2317141cc406Sopenharmony_ci 2318141cc406Sopenharmony_ci 0x66, /* misc io12 (reg 0x59) */ 2319141cc406Sopenharmony_ci 0x16, /* misc io34 (reg 0x5a) */ 2320141cc406Sopenharmony_ci 0x91, /* misc io56 (reg 0x5b) */ 2321141cc406Sopenharmony_ci 0x01, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2322141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2323141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2324141cc406Sopenharmony_ci _LM9833, 2325141cc406Sopenharmony_ci MODEL_CANON600, 2326141cc406Sopenharmony_ci 2.0 2327141cc406Sopenharmony_ci}; 2328141cc406Sopenharmony_ci 2329141cc406Sopenharmony_ci/** Canon N1240U/LiDE30 */ 2330141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x220E = 2331141cc406Sopenharmony_ci{ 2332141cc406Sopenharmony_ci 0.72, /* dMaxMotorSpeed */ 2333141cc406Sopenharmony_ci 0.30, /* dMaxMoveSpeed */ 2334141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2335141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2336141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2337141cc406Sopenharmony_ci 1200, /* wMotorDpi (Full step DPI) */ 2338141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2339141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2340141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2341141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2342141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2343141cc406Sopenharmony_ci 2344141cc406Sopenharmony_ci 0x15, /* bSensorConfiguration (0x0b) */ 2345141cc406Sopenharmony_ci 0x4c, /* sensor control settings (reg 0x0c) */ 2346141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2347141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2348141cc406Sopenharmony_ci 2349141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2350141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2351141cc406Sopenharmony_ci 2352141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x05}, 2353141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2354141cc406Sopenharmony_ci 2355141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2356141cc406Sopenharmony_ci 2357141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2358141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2359141cc406Sopenharmony_ci 2360141cc406Sopenharmony_ci { 3, 0, 0, 23, 3000, 0, 0 }, 2361141cc406Sopenharmony_ci { 2, 23, 16383, 23, 6500, 23, 4900 }, 2362141cc406Sopenharmony_ci 2363141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2364141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2365141cc406Sopenharmony_ci 0, /* bOpticBlackEnd (reg 0x1d) */ 2366141cc406Sopenharmony_ci 52, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2367141cc406Sopenharmony_ci 10586, /* wLineEnd (reg 0x20 + 0x21) */ 2368141cc406Sopenharmony_ci 2369141cc406Sopenharmony_ci 23, /* red lamp on (reg 0x2c + 0x2d) */ 2370141cc406Sopenharmony_ci 16383, /* red lamp off (reg 0x2e + 0x2f) */ 2371141cc406Sopenharmony_ci 23, /* green lamp on (reg 0x30 + 0x31) */ 2372141cc406Sopenharmony_ci 6500, /* green lamp off (reg 0x32 + 0x33) */ 2373141cc406Sopenharmony_ci 23, /* blue lamp on (reg 0x34 + 0x35) */ 2374141cc406Sopenharmony_ci 4900, /* blue lamp off (reg 0x36 + 0x37) */ 2375141cc406Sopenharmony_ci 2376141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2377141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2378141cc406Sopenharmony_ci 0x20, /* steps to reverse when buffer is full reg 0x50) */ 2379141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2380141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2381141cc406Sopenharmony_ci 0x0f, /* kickstart (reg 0x55) */ 2382141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2383141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2384141cc406Sopenharmony_ci 2385141cc406Sopenharmony_ci 0x04, /* Paper sense (reg 0x58) */ 2386141cc406Sopenharmony_ci 2387141cc406Sopenharmony_ci 0x66, /* misc io12 (reg 0x59) */ 2388141cc406Sopenharmony_ci 0x16, /* misc io34 (reg 0x5a) */ 2389141cc406Sopenharmony_ci 0x91, /* misc io56 (reg 0x5b) */ 2390141cc406Sopenharmony_ci 0x01, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2391141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2392141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2393141cc406Sopenharmony_ci _LM9833, 2394141cc406Sopenharmony_ci MODEL_CANON1200, 2395141cc406Sopenharmony_ci 2.0 2396141cc406Sopenharmony_ci}; 2397141cc406Sopenharmony_ci 2398141cc406Sopenharmony_ci/** Canon LiDE25 */ 2399141cc406Sopenharmony_cistatic HWDef Hw0x04A9_0x2220 = 2400141cc406Sopenharmony_ci{ 2401141cc406Sopenharmony_ci 0.70, /* dMaxMotorSpeed */ 2402141cc406Sopenharmony_ci 0.25, /* dMaxMoveSpeed */ 2403141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2404141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2405141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2406141cc406Sopenharmony_ci 1200, /* wMotorDpi (Full step DPI) */ 2407141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2408141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2409141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2410141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2411141cc406Sopenharmony_ci 0, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2412141cc406Sopenharmony_ci 2413141cc406Sopenharmony_ci 0x11, /* bSensorConfiguration (0x0b) */ 2414141cc406Sopenharmony_ci 0x4d, /* sensor control settings (reg 0x0c) */ 2415141cc406Sopenharmony_ci 0x2f, /* sensor control settings (reg 0x0d) */ 2416141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2417141cc406Sopenharmony_ci 2418141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x07}, 2419141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2420141cc406Sopenharmony_ci 2421141cc406Sopenharmony_ci {0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x00, 0x00, 0x00, 0x07}, 2422141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2423141cc406Sopenharmony_ci 2424141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2425141cc406Sopenharmony_ci 2426141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2427141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2428141cc406Sopenharmony_ci 2429141cc406Sopenharmony_ci { 3, 0, 0, 50, 3700, 0, 0 }, 2430141cc406Sopenharmony_ci { 2, 50, 5600, 50, 7100, 50, 4600 }, 2431141cc406Sopenharmony_ci 2432141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2433141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2434141cc406Sopenharmony_ci 0, /* bOpticBlackEnd (reg 0x1d) */ 2435141cc406Sopenharmony_ci 0x7f, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2436141cc406Sopenharmony_ci 10559, /* wLineEnd (reg 0x20 + 0x21) */ 2437141cc406Sopenharmony_ci 2438141cc406Sopenharmony_ci 50, /* red lamp on (reg 0x2c + 0x2d) */ 2439141cc406Sopenharmony_ci 5600, /* red lamp off (reg 0x2e + 0x2f) */ 2440141cc406Sopenharmony_ci 50, /* green lamp on (reg 0x30 + 0x31) */ 2441141cc406Sopenharmony_ci 7100, /* green lamp off (reg 0x32 + 0x33) */ 2442141cc406Sopenharmony_ci 50, /* blue lamp on (reg 0x34 + 0x35) */ 2443141cc406Sopenharmony_ci 4600, /* blue lamp off (reg 0x36 + 0x37) */ 2444141cc406Sopenharmony_ci 2445141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2446141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2447141cc406Sopenharmony_ci 0x20, /* steps to reverse when buffer is full reg 0x50) */ 2448141cc406Sopenharmony_ci 0xfc, /* acceleration profile (reg 0x51) */ 2449141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2450141cc406Sopenharmony_ci 0x0f, /* kickstart (reg 0x55) */ 2451141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2452141cc406Sopenharmony_ci 0x1f, /* pwm duty cycle (reg 0x57) */ 2453141cc406Sopenharmony_ci 2454141cc406Sopenharmony_ci 0x04, /* Paper sense (reg 0x58) */ 2455141cc406Sopenharmony_ci 2456141cc406Sopenharmony_ci 0x66, /* misc io12 (reg 0x59) */ 2457141cc406Sopenharmony_ci 0x16, /* misc io34 (reg 0x5a) */ 2458141cc406Sopenharmony_ci 0x91, /* misc io56 (reg 0x5b) */ 2459141cc406Sopenharmony_ci 0x01, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2460141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2461141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2462141cc406Sopenharmony_ci _LM9833, 2463141cc406Sopenharmony_ci MODEL_CANON_LIDE25, 2464141cc406Sopenharmony_ci 2.0 2465141cc406Sopenharmony_ci}; 2466141cc406Sopenharmony_ci 2467141cc406Sopenharmony_ci/** TravelScan 662 */ 2468141cc406Sopenharmony_cistatic HWDef Hw0x0A82_0x6620 = 2469141cc406Sopenharmony_ci{ 2470141cc406Sopenharmony_ci 0.72, /* dMaxMotorSpeed */ 2471141cc406Sopenharmony_ci 0.188, /* dMaxMoveSpeed */ 2472141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2473141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2474141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2475141cc406Sopenharmony_ci 740, /* wMotorDpi (Full step DPI) */ 2476141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2477141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2478141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2479141cc406Sopenharmony_ci 3000, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2480141cc406Sopenharmony_ci 3000, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2481141cc406Sopenharmony_ci 2482141cc406Sopenharmony_ci 0x0d, /* bSensorConfiguration (0x0b) */ 2483141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0c) */ 2484141cc406Sopenharmony_ci 0x25, /* sensor control settings (reg 0x0d) */ 2485141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2486141cc406Sopenharmony_ci 2487141cc406Sopenharmony_ci {0x18, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07}, 2488141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2489141cc406Sopenharmony_ci 2490141cc406Sopenharmony_ci {0x18, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07}, 2491141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2492141cc406Sopenharmony_ci 2493141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2494141cc406Sopenharmony_ci 2495141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2496141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2497141cc406Sopenharmony_ci 2498141cc406Sopenharmony_ci { 3, 0, 0, 10, 450, 0, 0 }, 2499141cc406Sopenharmony_ci { 2, 10, 1000, 10, 880, 10, 630 }, 2500141cc406Sopenharmony_ci 2501141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2502141cc406Sopenharmony_ci 1, /* bOpticBlackStart (reg 0x1c) */ 2503141cc406Sopenharmony_ci 2, /* bOpticBlackEnd (reg 0x1d) */ 2504141cc406Sopenharmony_ci 0x17, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2505141cc406Sopenharmony_ci 2600, /* wLineEnd (reg 0x20 + 0x21) */ 2506141cc406Sopenharmony_ci 2507141cc406Sopenharmony_ci 10, /* red lamp on (reg 0x2c + 0x2d) */ 2508141cc406Sopenharmony_ci 1000, /* red lamp off (reg 0x2e + 0x2f) */ 2509141cc406Sopenharmony_ci 10, /* green lamp on (reg 0x30 + 0x31) */ 2510141cc406Sopenharmony_ci 880, /* green lamp off (reg 0x32 + 0x33) */ 2511141cc406Sopenharmony_ci 10, /* blue lamp on (reg 0x34 + 0x35) */ 2512141cc406Sopenharmony_ci 630, /* blue lamp off (reg 0x36 + 0x37) */ 2513141cc406Sopenharmony_ci 2514141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2515141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2516141cc406Sopenharmony_ci 2517141cc406Sopenharmony_ci 0, /* steps to reverse when buffer is full reg 0x50) */ 2518141cc406Sopenharmony_ci 0, /* acceleration profile (reg 0x51) */ 2519141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2520141cc406Sopenharmony_ci 0x09, /* kickstart (reg 0x55) */ 2521141cc406Sopenharmony_ci 0x02, /* pwm freq (reg 0x56) */ 2522141cc406Sopenharmony_ci 0x16, /* pwm duty cycle (reg 0x57) */ 2523141cc406Sopenharmony_ci 2524141cc406Sopenharmony_ci 0x01, /* Paper sense (reg 0x58) */ 2525141cc406Sopenharmony_ci 2526141cc406Sopenharmony_ci 0x0e, /* misc io12 (reg 0x59) */ 2527141cc406Sopenharmony_ci 0x96, /* misc io34 (reg 0x5a) */ 2528141cc406Sopenharmony_ci 0x01, /* misc io56 (reg 0x5b) */ 2529141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2530141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2531141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2532141cc406Sopenharmony_ci _LM9833, 2533141cc406Sopenharmony_ci MODEL_TSCAN, 2534141cc406Sopenharmony_ci 1.8 2535141cc406Sopenharmony_ci}; 2536141cc406Sopenharmony_ci 2537141cc406Sopenharmony_ci/** TravelScan 464 */ 2538141cc406Sopenharmony_cistatic HWDef Hw0x0A82_0x4600 = 2539141cc406Sopenharmony_ci{ 2540141cc406Sopenharmony_ci 0.72, /* dMaxMotorSpeed */ 2541141cc406Sopenharmony_ci 0.26, /* dMaxMoveSpeed */ 2542141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2543141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2544141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2545141cc406Sopenharmony_ci 740, /* wMotorDpi (Full step DPI) */ 2546141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2547141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2548141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2549141cc406Sopenharmony_ci 3000, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2550141cc406Sopenharmony_ci 3000, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2551141cc406Sopenharmony_ci 2552141cc406Sopenharmony_ci 0x0d, /* bSensorConfiguration (0x0b) */ 2553141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0c) */ 2554141cc406Sopenharmony_ci 0x25, /* sensor control settings (reg 0x0d) */ 2555141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0e) */ 2556141cc406Sopenharmony_ci 2557141cc406Sopenharmony_ci {0x18, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07}, 2558141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2559141cc406Sopenharmony_ci 2560141cc406Sopenharmony_ci {0x18, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07}, 2561141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2562141cc406Sopenharmony_ci 2563141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2564141cc406Sopenharmony_ci 2565141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2566141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2567141cc406Sopenharmony_ci 2568141cc406Sopenharmony_ci { 3, 500, 1045, 500, 990, 500, 990 }, 2569141cc406Sopenharmony_ci { 2, 500, 1045, 500, 990, 500, 990 }, 2570141cc406Sopenharmony_ci 2571141cc406Sopenharmony_ci 1, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2572141cc406Sopenharmony_ci 1, /* bOpticBlackStart (reg 0x1c) */ 2573141cc406Sopenharmony_ci 2, /* bOpticBlackEnd (reg 0x1d) */ 2574141cc406Sopenharmony_ci 0x17, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2575141cc406Sopenharmony_ci 5300, /* wLineEnd (reg 0x20 + 0x21) */ 2576141cc406Sopenharmony_ci 2577141cc406Sopenharmony_ci 500, /* red lamp on (reg 0x2c + 0x2d) */ 2578141cc406Sopenharmony_ci 1045, /* red lamp off (reg 0x2e + 0x2f) */ 2579141cc406Sopenharmony_ci 500, /* green lamp on (reg 0x30 + 0x31) */ 2580141cc406Sopenharmony_ci 990, /* green lamp off (reg 0x32 + 0x33) */ 2581141cc406Sopenharmony_ci 500, /* blue lamp on (reg 0x34 + 0x35) */ 2582141cc406Sopenharmony_ci 990, /* blue lamp off (reg 0x36 + 0x37) */ 2583141cc406Sopenharmony_ci 2584141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2585141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2586141cc406Sopenharmony_ci 2587141cc406Sopenharmony_ci 0, /* steps to reverse when buffer is full reg 0x50) */ 2588141cc406Sopenharmony_ci 0, /* acceleration profile (reg 0x51) */ 2589141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2590141cc406Sopenharmony_ci 0x09, /* kickstart (reg 0x55) */ 2591141cc406Sopenharmony_ci 0x02, /* pwm freq (reg 0x56) */ 2592141cc406Sopenharmony_ci 0x16, /* pwm duty cycle (reg 0x57) */ 2593141cc406Sopenharmony_ci 2594141cc406Sopenharmony_ci 0x01, /* Paper sense (reg 0x58) */ 2595141cc406Sopenharmony_ci 2596141cc406Sopenharmony_ci 0x0e, /* misc io12 (reg 0x59) */ 2597141cc406Sopenharmony_ci 0x96, /* misc io34 (reg 0x5a) */ 2598141cc406Sopenharmony_ci 0x01, /* misc io56 (reg 0x5b) */ 2599141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2600141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2601141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2602141cc406Sopenharmony_ci _LM9833, 2603141cc406Sopenharmony_ci MODEL_TSCAN_A4, 2604141cc406Sopenharmony_ci 1.8 2605141cc406Sopenharmony_ci}; 2606141cc406Sopenharmony_ci 2607141cc406Sopenharmony_ci/** IRIScan/Q-Scan USB001 - Portable Peripheral Co., Ltd. */ 2608141cc406Sopenharmony_cistatic HWDef Hw0x0A53_0x1000 = 2609141cc406Sopenharmony_ci{ 2610141cc406Sopenharmony_ci 0.50, /* dMaxMotorSpeed */ 2611141cc406Sopenharmony_ci 0.40, /* dMaxMoveSpeed */ 2612141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2613141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2614141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2615141cc406Sopenharmony_ci 300, /* wMotorDpi (Full step DPI) */ 2616141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2617141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2618141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2619141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2620141cc406Sopenharmony_ci 4095, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2621141cc406Sopenharmony_ci 2622141cc406Sopenharmony_ci 0x09, /* bSensorConfiguration (0x0b) */ 2623141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0c) */ 2624141cc406Sopenharmony_ci 0x65, /* sensor control settings (reg 0x0d) */ 2625141cc406Sopenharmony_ci 0x13, /* sensor control settings (reg 0x0e) */ 2626141cc406Sopenharmony_ci 2627141cc406Sopenharmony_ci {0x02, 0x07, 0x05, 0x07, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02}, 2628141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2629141cc406Sopenharmony_ci 2630141cc406Sopenharmony_ci {0x02, 0x07, 0x05, 0x07, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02}, 2631141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2632141cc406Sopenharmony_ci 2633141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2634141cc406Sopenharmony_ci 2635141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2636141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2637141cc406Sopenharmony_ci 2638141cc406Sopenharmony_ci { 3, 0, 0, 2593, 4600, 0, 0 }, 2639141cc406Sopenharmony_ci { 2, 2593, 7100, 2593, 4600, 2593, 4480 }, 2640141cc406Sopenharmony_ci 2641141cc406Sopenharmony_ci 256, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2642141cc406Sopenharmony_ci 0, /* bOpticBlackStart (reg 0x1c) */ 2643141cc406Sopenharmony_ci 0x15, /* bOpticBlackEnd (reg 0x1d) */ 2644141cc406Sopenharmony_ci 0x15, /* wActivePixelsStart (reg 0x1e + 0x1f) */ 2645141cc406Sopenharmony_ci 5500, /* wLineEnd (reg 0x20 + 0x21) */ 2646141cc406Sopenharmony_ci 2647141cc406Sopenharmony_ci 2593, /* red lamp on (reg 0x2c + 0x2d) */ 2648141cc406Sopenharmony_ci 7100, /* red lamp off (reg 0x2e + 0x2f) */ 2649141cc406Sopenharmony_ci 2593, /* green lamp on (reg 0x30 + 0x31) */ 2650141cc406Sopenharmony_ci 4600, /* green lamp off (reg 0x32 + 0x33) */ 2651141cc406Sopenharmony_ci 2593, /* blue lamp on (reg 0x34 + 0x35) */ 2652141cc406Sopenharmony_ci 4480, /* blue lamp off (reg 0x36 + 0x37) */ 2653141cc406Sopenharmony_ci 2654141cc406Sopenharmony_ci 3, /* stepper motor control (reg 0x45) */ 2655141cc406Sopenharmony_ci 0, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2656141cc406Sopenharmony_ci 2657141cc406Sopenharmony_ci 0, /* steps to reverse when buffer is full reg 0x50) */ 2658141cc406Sopenharmony_ci 0, /* acceleration profile (reg 0x51) */ 2659141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2660141cc406Sopenharmony_ci 0x1b, /* kickstart (reg 0x55) */ 2661141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2662141cc406Sopenharmony_ci 0x15, /* pwm duty cycle (reg 0x57) */ 2663141cc406Sopenharmony_ci 2664141cc406Sopenharmony_ci 0x00, /* Paper sense (reg 0x58) */ 2665141cc406Sopenharmony_ci 2666141cc406Sopenharmony_ci 0x00, /* misc io12 (reg 0x59) */ 2667141cc406Sopenharmony_ci 0x00, /* misc io34 (reg 0x5a) */ 2668141cc406Sopenharmony_ci 0x00, /* misc io56 (reg 0x5b) */ 2669141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2670141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2671141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2672141cc406Sopenharmony_ci _LM9832, 2673141cc406Sopenharmony_ci MODEL_QSCAN, 2674141cc406Sopenharmony_ci 1.1 2675141cc406Sopenharmony_ci}; 2676141cc406Sopenharmony_ci 2677141cc406Sopenharmony_ci/** PandP USB201 Q-Scan A6 Scanner */ 2678141cc406Sopenharmony_cistatic HWDef Hw0x0A53_0x2000 = 2679141cc406Sopenharmony_ci{ 2680141cc406Sopenharmony_ci 0.5, /* dMaxMotorSpeed */ 2681141cc406Sopenharmony_ci 0.2, /* dMaxMoveSpeed */ 2682141cc406Sopenharmony_ci 0.0, /* dHighSpeed */ 2683141cc406Sopenharmony_ci 100, /* wIntegrationTimeLowLamp */ 2684141cc406Sopenharmony_ci 100, /* wIntegrationTimeHighLamp */ 2685141cc406Sopenharmony_ci 570, /* wMotorDpi (Full step DPI) */ 2686141cc406Sopenharmony_ci 512, /* wRAMSize (KB) */ 2687141cc406Sopenharmony_ci 3.75, /* dMinIntegrationTimeLowres (ms) */ 2688141cc406Sopenharmony_ci 5.75, /* dMinIntegrationTimeHighres (ms) */ 2689141cc406Sopenharmony_ci 0x0fff, /* wGreenPWMDutyCycleLow (reg 0x2a + 0x2b) */ 2690141cc406Sopenharmony_ci 0x0fff, /* wGreenPWMDutyCycleHigh (reg 0x2a + 0x2b) */ 2691141cc406Sopenharmony_ci 2692141cc406Sopenharmony_ci 0x02, /* bSensorConfiguration (0x0b) */ 2693141cc406Sopenharmony_ci 0x00, /* sensor control settings (reg 0x0c) */ 2694141cc406Sopenharmony_ci 0x25, /* sensor control settings (reg 0x0d) */ 2695141cc406Sopenharmony_ci 0x06, /* sensor control settings (reg 0x0e) */ 2696141cc406Sopenharmony_ci 2697141cc406Sopenharmony_ci {0x05, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x00, 0x00, 0x04, 0x07}, 2698141cc406Sopenharmony_ci /* mono (reg 0x0f to 0x18) */ 2699141cc406Sopenharmony_ci 2700141cc406Sopenharmony_ci {0x05, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x00, 0x00, 0x04, 0x07}, 2701141cc406Sopenharmony_ci /* color (reg 0x0f to 0x18) */ 2702141cc406Sopenharmony_ci 2703141cc406Sopenharmony_ci (_BLUE_CH | _ONE_CH_COLOR), /* bReg_0x26 color mode */ 2704141cc406Sopenharmony_ci 2705141cc406Sopenharmony_ci 0x00, /* bReg 0x27 color mode */ 2706141cc406Sopenharmony_ci 2, /* bReg 0x29 illumination mode */ 2707141cc406Sopenharmony_ci 2708141cc406Sopenharmony_ci { 3, 0, 0, 10, 450, 0, 0 }, 2709141cc406Sopenharmony_ci /* initial illumination settings - mono */ 2710141cc406Sopenharmony_ci { 2, 10, 1000, 10, 880, 10, 630 }, 2711141cc406Sopenharmony_ci /* initial illumination settings - color */ 2712141cc406Sopenharmony_ci 2713141cc406Sopenharmony_ci 0x0101, /* StepperPhaseCorrection (reg 0x1a + 0x1b) */ 2714141cc406Sopenharmony_ci 0x004d, /* bOpticBlackStart (reg 0x22 + 0x23) */ 2715141cc406Sopenharmony_ci 0x11, /* bOpticBlackEnd */ 2716141cc406Sopenharmony_ci 0x0011, /* wActivePixelsStart */ 2717141cc406Sopenharmony_ci 0x0bb8, /* wLineEnd (reg 0x20 + 0x21) */ 2718141cc406Sopenharmony_ci 2719141cc406Sopenharmony_ci 10, /* red lamp on (reg 0x2c + 0x2d) */ 2720141cc406Sopenharmony_ci 1000, /* red lamp off (reg 0x2e + 0x2f) */ 2721141cc406Sopenharmony_ci 10, /* green lamp on (reg 0x30 + 0x31) */ 2722141cc406Sopenharmony_ci 880, /* green lamp off (reg 0x32 + 0x33) */ 2723141cc406Sopenharmony_ci 10, /* blue lamp on (reg 0x34 + 0x35) */ 2724141cc406Sopenharmony_ci 630, /* blue lamp off (reg 0x36 + 0x37) */ 2725141cc406Sopenharmony_ci 2726141cc406Sopenharmony_ci 0x13, /* stepper motor control (reg 0x45) */ 2727141cc406Sopenharmony_ci 0x0000, /* wStepsAfterPaperSensor2 (reg 0x4c + 0x4d) */ 2728141cc406Sopenharmony_ci 2729141cc406Sopenharmony_ci 0, /* steps to reverse when buffer is full reg 0x50) */ 2730141cc406Sopenharmony_ci 0, /* acceleration profile (reg 0x51) */ 2731141cc406Sopenharmony_ci 0, /* lines to process (reg 0x54) */ 2732141cc406Sopenharmony_ci 0x1b, /* kickstart (reg 0x55) */ 2733141cc406Sopenharmony_ci 0x08, /* pwm freq (reg 0x56) */ 2734141cc406Sopenharmony_ci 0x15, /* pwm duty cycle (reg 0x57) */ 2735141cc406Sopenharmony_ci 2736141cc406Sopenharmony_ci 0x00, /* Paper sense (reg 0x58) */ 2737141cc406Sopenharmony_ci 2738141cc406Sopenharmony_ci 0x20, /* misc io12 (reg 0x59) */ 2739141cc406Sopenharmony_ci 0x02, /* misc io34 (reg 0x5a) */ 2740141cc406Sopenharmony_ci 0x90, /* misc io56 (reg 0x5b) */ 2741141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE MSB (reg 0x5c) */ 2742141cc406Sopenharmony_ci 0, /* test mode ADC Output CODE LSB (reg 0x5d) */ 2743141cc406Sopenharmony_ci 0, /* test mode (reg 0x5e) */ 2744141cc406Sopenharmony_ci _LM9832, 2745141cc406Sopenharmony_ci MODEL_QSCAN_A6, 2746141cc406Sopenharmony_ci 1.8 2747141cc406Sopenharmony_ci}; 2748141cc406Sopenharmony_ci 2749141cc406Sopenharmony_ci/******************** all available combinations *****************************/ 2750141cc406Sopenharmony_ci 2751141cc406Sopenharmony_ci/** here we have all supported devices and their settings... 2752141cc406Sopenharmony_ci */ 2753141cc406Sopenharmony_cistatic SetDef Settings[] = 2754141cc406Sopenharmony_ci{ 2755141cc406Sopenharmony_ci /* Plustek devices... */ 2756141cc406Sopenharmony_ci /* LM9831 based */ 2757141cc406Sopenharmony_ci {"0x07B3-0x0010-0", &Cap0x07B3_0x0010_0, &Hw0x07B3_0x0013_0, "OpticPro U12" }, 2758141cc406Sopenharmony_ci {"0x07B3-0x0011-0", &Cap0x07B3_0x0011_0, &Hw0x07B3_0x0013_0, "OpticPro U24" }, 2759141cc406Sopenharmony_ci {"0x07B3-0x0013-0", &Cap0x07B3_0x0013_0, &Hw0x07B3_0x0013_0, "OpticPro UT12" }, 2760141cc406Sopenharmony_ci 2761141cc406Sopenharmony_ci /* LM9832 based */ 2762141cc406Sopenharmony_ci {"0x07B3-0x0017-0", &Cap0x07B3_0x0017_0, &Hw0x07B3_0x0017_0, "OpticPro UT12/UT16" }, 2763141cc406Sopenharmony_ci {"0x07B3-0x0015-0", &Cap0x07B3_0x0015_0, &Hw0x07B3_0x0017_0, "OpticPro U24" }, 2764141cc406Sopenharmony_ci {"0x07B3-0x0015-4", &Cap0x07B3_0x0015_4, &Hw0x07B3_0x0017_4, "OpticPro U24" }, 2765141cc406Sopenharmony_ci {"0x07B3-0x0017-4", &Cap0x07B3_0x0017_4, &Hw0x07B3_0x0017_4, "OpticPro UT24" }, 2766141cc406Sopenharmony_ci 2767141cc406Sopenharmony_ci /* never seen yet */ 2768141cc406Sopenharmony_ci {"0x07B3-0x0013-4", &Cap0x07B3_0x0013_4, &Hw0x07B3_0x0013_4, "Unknown device" }, 2769141cc406Sopenharmony_ci {"0x07B3-0x0011-4", &Cap0x07B3_0x0011_4, &Hw0x07B3_0x0013_4, "Unknown device" }, 2770141cc406Sopenharmony_ci {"0x07B3-0x0010-4", &Cap0x07B3_0x0010_4, &Hw0x07B3_0x0013_4, "Unknown device" }, 2771141cc406Sopenharmony_ci {"0x07B3-0x0014-0", &Cap0x07B3_0x0014_0, &Hw0x07B3_0x0017_0, "Unknown device" }, 2772141cc406Sopenharmony_ci {"0x07B3-0x0014-4", &Cap0x07B3_0x0014_4, &Hw0x07B3_0x0017_4, "Unknown device" }, 2773141cc406Sopenharmony_ci {"0x07B3-0x0016-4", &Cap0x07B3_0x0016_4, &Hw0x07B3_0x0016_4, "Unknown device" }, 2774141cc406Sopenharmony_ci {"0x07B3-0x0017-2", &Cap0x07B3_0x0017_2, &Hw0x07B3_0x0017_2, "Unknown device" }, 2775141cc406Sopenharmony_ci {"0x07B3-0x0017-3", &Cap0x07B3_0x0017_3, &Hw0x07B3_0x0017_3, "Unknown device" }, 2776141cc406Sopenharmony_ci {"0x07B3-0x0007", &Cap0x07B3_0x0007_0, &Hw0x07B3_0x0007_0, "Unknown device" }, 2777141cc406Sopenharmony_ci {"0x07B3-0x000F", &Cap0x07B3_0x000F_0, &Hw0x07B3_0x000F_0, "Unknown device" }, 2778141cc406Sopenharmony_ci {"0x07B3-0x000F-4", &Cap0x07B3_0x000F_4, &Hw0x07B3_0x000F_4, "Unknown device" }, 2779141cc406Sopenharmony_ci {"0x07B3-0x0005-2", &Cap0x07B3_0x0005_2, &Hw0x07B3_0x0007_2, "Unknown device" }, /* TOKYO 600 */ 2780141cc406Sopenharmony_ci {"0x07B3-0x0014-1", &Cap0x07B3_0x0014_1, &Hw0x07B3_0x0017_1, "Unknown device" }, /* A3 */ 2781141cc406Sopenharmony_ci {"0x07B3-0x0012-0", &Cap0x07B3_0x0012_0, &Hw0x07B3_0x0012_0, "Unknown device" }, /* Brother Demo */ 2782141cc406Sopenharmony_ci 2783141cc406Sopenharmony_ci /* Mustek BearPaw...*/ 2784141cc406Sopenharmony_ci {"0x0400-0x1000-0", &Cap0x0400_0x1000_0, &Hw0x0400_0x1000_0, "BearPaw 1200" }, 2785141cc406Sopenharmony_ci {"0x0400-0x1001-1", &Cap0x0400_0x1000_0, &Hw0x0400_0x1001_1, "BearPaw 1200" }, 2786141cc406Sopenharmony_ci {"0x0400-0x1001-0", &Cap0x0400_0x1001_0, &Hw0x0400_0x1001_0, "BearPaw 2400" }, 2787141cc406Sopenharmony_ci 2788141cc406Sopenharmony_ci /* Genius devices... */ 2789141cc406Sopenharmony_ci {"0x0458-0x2007", &Cap0x07B3_0x0007_0, &Hw0x07B3_0x0007_0, "ColorPage-HR6 V2" }, 2790141cc406Sopenharmony_ci {"0x0458-0x2008", &Cap0x07B3_0x0007_0, &Hw0x07B3_0x0007_0, "ColorPage-HR6 V2" }, 2791141cc406Sopenharmony_ci {"0x0458-0x2009", &Cap0x07B3_0x000F_0, &Hw0x07B3_0x000F_0, "ColorPage-HR6A" }, 2792141cc406Sopenharmony_ci {"0x0458-0x2013", &Cap0x07B3_0x0007_4, &Hw0x07B3_0x0007_4, "ColorPage-HR7" }, 2793141cc406Sopenharmony_ci {"0x0458-0x2015", &Cap0x07B3_0x0005_4, &Hw0x07B3_0x0007_4, "ColorPage-HR7LE" }, 2794141cc406Sopenharmony_ci {"0x0458-0x2016", &Cap0x07B3_0x0005_4, &Hw0x07B3_0x0007_0, "ColorPage-HR6X" }, 2795141cc406Sopenharmony_ci 2796141cc406Sopenharmony_ci /* Hewlett Packard... */ 2797141cc406Sopenharmony_ci {"0x03F0-0x0505", &Cap0x03F0_0x0505, &Hw0x03F0_0x0505, "Scanjet 2100c" }, 2798141cc406Sopenharmony_ci {"0x03F0-0x0605", &Cap0x03F0_0x0605, &Hw0x03F0_0x0605, "Scanjet 2200c" }, 2799141cc406Sopenharmony_ci 2800141cc406Sopenharmony_ci /* EPSON... */ 2801141cc406Sopenharmony_ci {"0x04B8-0x010F", &Cap0x04B8_0x010F, &Hw0x04B8_0x010F, "Perfection 1250/Photo" }, 2802141cc406Sopenharmony_ci {"0x04B8-0x011D", &Cap0x04B8_0x010F, &Hw0x04B8_0x011D, "Perfection 1260/Photo" }, 2803141cc406Sopenharmony_ci 2804141cc406Sopenharmony_ci /* UMAX... */ 2805141cc406Sopenharmony_ci {"0x1606-0x0050", &Cap0x1606_0x0060, &Hw0x1606_0x0060, "3400" }, 2806141cc406Sopenharmony_ci {"0x1606-0x0060", &Cap0x1606_0x0060, &Hw0x1606_0x0060, "3400" }, 2807141cc406Sopenharmony_ci {"0x1606-0x0160", &Cap0x1606_0x0160, &Hw0x1606_0x0160, "5400" }, 2808141cc406Sopenharmony_ci 2809141cc406Sopenharmony_ci /* COMPAQ... */ 2810141cc406Sopenharmony_ci {"0x049F-0x001A", &Cap0x1606_0x0060, &Hw0x1606_0x0060, "S4-100" }, 2811141cc406Sopenharmony_ci 2812141cc406Sopenharmony_ci /* CANON... */ 2813141cc406Sopenharmony_ci {"0x04A9-0x2206", &Cap0x04A9_0x2206, &Hw0x04A9_0x2206, "CanoScan N650U/N656U" }, 2814141cc406Sopenharmony_ci {"0x04A9-0x2207", &Cap0x04A9_0x2207, &Hw0x04A9_0x2207, "CanoScan N1220U" }, 2815141cc406Sopenharmony_ci {"0x04A9-0x2208", &Cap0x04A9_0x2208, &Hw0x04A9_0x2208, "CanoScan D660U" }, 2816141cc406Sopenharmony_ci {"0x04A9-0x220D", &Cap0x04A9_0x220D, &Hw0x04A9_0x220D, "CanoScan N670U/N676U/LiDE20" }, 2817141cc406Sopenharmony_ci {"0x04A9-0x220E", &Cap0x04A9_0x220E, &Hw0x04A9_0x220E, "CanoScan N1240U/LiDE30" }, 2818141cc406Sopenharmony_ci {"0x04A9-0x2220", &Cap0x04A9_0x2220, &Hw0x04A9_0x2220, "CanoScan LiDE25" }, 2819141cc406Sopenharmony_ci 2820141cc406Sopenharmony_ci /* SYSCAN... */ 2821141cc406Sopenharmony_ci {"0x0A82-0x4600", &Cap0x0A82_0x4600, &Hw0x0A82_0x4600, "TravelScan 460/464" }, 2822141cc406Sopenharmony_ci {"0x0A82-0x6620", &Cap0x0A82_0x6620, &Hw0x0A82_0x6620, "TravelScan 662" }, 2823141cc406Sopenharmony_ci 2824141cc406Sopenharmony_ci /* Visioneer... */ 2825141cc406Sopenharmony_ci {"0x04A7-0x0427", &Cap0x0A82_0x4600, &Hw0x0A82_0x4600, "Strobe XP100" }, 2826141cc406Sopenharmony_ci 2827141cc406Sopenharmony_ci /* Portable Peripheral Co., Ltd. */ 2828141cc406Sopenharmony_ci {"0x0A53-0x1000", &Cap0x0A53_0x1000, &Hw0x0A53_0x1000, "Q-Scan USB001" }, 2829141cc406Sopenharmony_ci {"0x0A53-0x2000", &Cap0x0A53_0x2000, &Hw0x0A53_0x2000, "Q-Scan USB201" }, 2830141cc406Sopenharmony_ci 2831141cc406Sopenharmony_ci /* Please add other devices here... 2832141cc406Sopenharmony_ci * The first entry is a string, composed out of the vendor and product id, 2833141cc406Sopenharmony_ci * it's used by the driver to select the device settings. For other devices 2834141cc406Sopenharmony_ci * than those of Plustek, you'll not need to add the second '-' part 2835141cc406Sopenharmony_ci * 2836141cc406Sopenharmony_ci * The second entry describes the capabilities of the device, you may find 2837141cc406Sopenharmony_ci * one suitable for your scanner, for a better description of the entries 2838141cc406Sopenharmony_ci * have a look at the beginning of this file at Cap0x07B3_0x0017_0 for 2839141cc406Sopenharmony_ci * the UT12 2840141cc406Sopenharmony_ci * 2841141cc406Sopenharmony_ci * The third entry is for the default setting of the LM983x register 2842141cc406Sopenharmony_ci * settings, you can often find these in your Windoze driver ini 2843141cc406Sopenharmony_ci * Have a look at the Hw0x0400_0x1000_0 or Hw0x07B3_0x0017_0 for further 2844141cc406Sopenharmony_ci * description 2845141cc406Sopenharmony_ci * 2846141cc406Sopenharmony_ci * The fourth entry is simply the name of the device, which will be 2847141cc406Sopenharmony_ci * displayed by the frontend 2848141cc406Sopenharmony_ci */ 2849141cc406Sopenharmony_ci { NULL, NULL, NULL, NULL } /* last entry, never remove... */ 2850141cc406Sopenharmony_ci}; 2851141cc406Sopenharmony_ci 2852141cc406Sopenharmony_ci/** 2853141cc406Sopenharmony_ci * tables for the motor settings 2854141cc406Sopenharmony_ci * The models KaoHsiung, HuaLien and Tokyo600 are currently set 2855141cc406Sopenharmony_ci * within the code in conjunction with some CCD combinations. 2856141cc406Sopenharmony_ci * NOTE: the touples PWM and PWM_Duty are used to set the registers 2857141cc406Sopenharmony_ci * 0x56 and 0x57, the recommended setting is 8,10 2858141cc406Sopenharmony_ci * if you notice a whining noise and the motor does not move, 2859141cc406Sopenharmony_ci * you might increase the MCLK variable. 2860141cc406Sopenharmony_ci */ 2861141cc406Sopenharmony_cistatic ClkMotorDef Motors[] = { 2862141cc406Sopenharmony_ci 2863141cc406Sopenharmony_ci { MODEL_KaoHsiung, 2864141cc406Sopenharmony_ci 64, 20, 6, /* PWM, PWM_Duty, MCLK for fast move */ 2865141cc406Sopenharmony_ci 0, 0, /* for lineend adjustment, here disabled */ 2866141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2867141cc406Sopenharmony_ci {{ 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, 2868141cc406Sopenharmony_ci { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }}, 2869141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2870141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2871141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2872141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2873141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2874141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 } 2875141cc406Sopenharmony_ci }, 2876141cc406Sopenharmony_ci 2877141cc406Sopenharmony_ci { MODEL_HuaLien, 64, 20, 6, 0, 0, 2878141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2879141cc406Sopenharmony_ci {{ 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, 2880141cc406Sopenharmony_ci { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }}, 2881141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2882141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2883141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2884141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2885141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2886141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 } 2887141cc406Sopenharmony_ci }, 2888141cc406Sopenharmony_ci 2889141cc406Sopenharmony_ci { MODEL_Tokyo600, 4, 4, 6, 0, 0, 2890141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2891141cc406Sopenharmony_ci {{ 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, 2892141cc406Sopenharmony_ci { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }}, 2893141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2894141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2895141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2896141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2897141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 }, 2898141cc406Sopenharmony_ci { 2, 2, 2, 2, 2, 3, 3, 3, 3, 3 } 2899141cc406Sopenharmony_ci }, 2900141cc406Sopenharmony_ci 2901141cc406Sopenharmony_ci { MODEL_MUSTEK600, 4, 4, 6, 0, 0, 2902141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2903141cc406Sopenharmony_ci {{ 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, 2904141cc406Sopenharmony_ci { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }}, 2905141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2906141cc406Sopenharmony_ci { 4.0, 3.5, 3.5, 4.0, 4.0, 5.0, 5.0, 7.5, 7.5, 7.5 }, 2907141cc406Sopenharmony_ci { 4.0, 3.5, 3.5, 4.0, 4.0, 5.0, 5.0, 7.5, 7.5, 7.5 }, 2908141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2909141cc406Sopenharmony_ci { 7.5, 7.0, 6.5, 5.5, 5.5, 5.5, 7.0, 7.0, 7.0, 7.0 }, 2910141cc406Sopenharmony_ci { 7.5, 7.0, 6.5, 5.5, 5.5, 5.5, 7.0, 7.0, 7.0, 7.0 } 2911141cc406Sopenharmony_ci }, 2912141cc406Sopenharmony_ci 2913141cc406Sopenharmony_ci { MODEL_MUSTEK1200, 2, 32, 3, 0, 0, 2914141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2915141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 2916141cc406Sopenharmony_ci {{ 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }, 2917141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 2918141cc406Sopenharmony_ci { 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }, { 2, 32, 1 }}, 2919141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2920141cc406Sopenharmony_ci { 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5 }, 2921141cc406Sopenharmony_ci { 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5 }, 2922141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2923141cc406Sopenharmony_ci { 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 }, 2924141cc406Sopenharmony_ci { 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 } 2925141cc406Sopenharmony_ci }, 2926141cc406Sopenharmony_ci 2927141cc406Sopenharmony_ci /* settings good for the HP models (tested with 2200)*/ 2928141cc406Sopenharmony_ci { MODEL_HP, 8, 60, 6, 0, 0, 2929141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2930141cc406Sopenharmony_ci {{ 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }, 2931141cc406Sopenharmony_ci { 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }, { 8, 60, 1 }}, 2932141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2933141cc406Sopenharmony_ci { 4.0, 4.0, 4.0, 4.0, 3.0, 4.0, 6.0, 6.0, 6.0, 6.0 }, 2934141cc406Sopenharmony_ci { 4.0, 4.0, 4.0, 4.0, 3.0, 4.0, 6.0, 6.0, 6.0, 6.0 }, 2935141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2936141cc406Sopenharmony_ci { 8.0, 8.0, 8.0, 8.0, 8.0, 13.0, 13.0, 13.0, 13.0, 13.0 }, 2937141cc406Sopenharmony_ci { 8.0, 8.0, 8.0, 8.0, 8.0, 13.0, 13.0, 13.0, 13.0, 13.0 } 2938141cc406Sopenharmony_ci }, 2939141cc406Sopenharmony_ci 2940141cc406Sopenharmony_ci { MODEL_CANON600, 8, 31, 12, 0, 0, 2941141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2942141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 2943141cc406Sopenharmony_ci {{ 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, 2944141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 2945141cc406Sopenharmony_ci { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }}, 2946141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2947141cc406Sopenharmony_ci { 7.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 2948141cc406Sopenharmony_ci { 7.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 2949141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2950141cc406Sopenharmony_ci { 15.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0 }, 2951141cc406Sopenharmony_ci { 15.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0, 12.0 } 2952141cc406Sopenharmony_ci }, 2953141cc406Sopenharmony_ci 2954141cc406Sopenharmony_ci { MODEL_CANON1200, 8, 31, 8, 0, 0, 2955141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2956141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 2957141cc406Sopenharmony_ci {{ 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, 2958141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 2959141cc406Sopenharmony_ci { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }}, 2960141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2961141cc406Sopenharmony_ci { 3.0, 3.0, 3.0, 3.0, 3.0, 3.0, 3.0, 3.0, 3.0, 3.0 }, 2962141cc406Sopenharmony_ci { 3.0, 3.0, 3.0, 3.0, 3.0, 3.0, 5.0, 6.0, 6.0, 6.0 }, 2963141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2964141cc406Sopenharmony_ci { 8.5, 7.0, 5.0, 4.0, 2.5, 2.5, 2.5, 2.5, 2.5, 2.5 }, 2965141cc406Sopenharmony_ci { 8.5, 6.5, 6.0, 6.0, 6.0, 6.0, 8.0, 12.0, 12.0, 12.0 } 2966141cc406Sopenharmony_ci }, 2967141cc406Sopenharmony_ci 2968141cc406Sopenharmony_ci /* settings good for the UMAX models (tested with 3400) */ 2969141cc406Sopenharmony_ci { MODEL_UMAX, 16, 4, 6, 0, 0, 2970141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2971141cc406Sopenharmony_ci {{ 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, 2972141cc406Sopenharmony_ci { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }}, 2973141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2974141cc406Sopenharmony_ci { 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5 }, 2975141cc406Sopenharmony_ci { 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5 }, 2976141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2977141cc406Sopenharmony_ci { 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5 }, 2978141cc406Sopenharmony_ci { 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5, 10.5 } 2979141cc406Sopenharmony_ci }, 2980141cc406Sopenharmony_ci 2981141cc406Sopenharmony_ci { MODEL_UMAX1200, 16, 4, 6, 0, 0, 2982141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2983141cc406Sopenharmony_ci {{ 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, 2984141cc406Sopenharmony_ci { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }, { 16, 4, 1 }}, 2985141cc406Sopenharmony_ci /* Color mode MCLK settings */ 2986141cc406Sopenharmony_ci { 3.0, 3.0, 3.0, 3.0, 3.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 2987141cc406Sopenharmony_ci { 5.0, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0 }, 2988141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 2989141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 13.0, 13.0, 13.0, 13.0, 13.0 }, 2990141cc406Sopenharmony_ci { 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0 } 2991141cc406Sopenharmony_ci }, 2992141cc406Sopenharmony_ci 2993141cc406Sopenharmony_ci /* settings good for the EPSON models */ 2994141cc406Sopenharmony_ci { MODEL_EPSON, 2, 1, 6, 0, 0, 2995141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 2996141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 2997141cc406Sopenharmony_ci {{ 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }, 2998141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 2999141cc406Sopenharmony_ci { 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }, { 2, 1, 1 }}, 3000141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3001141cc406Sopenharmony_ci { 2.0, 2.0, 2.5, 2.5, 2.5, 2.5, 4.0, 4.0, 6.0, 6.0 }, 3002141cc406Sopenharmony_ci { 2.0, 2.0, 2.5, 2.5, 3.0, 3.0, 3.0, 4.0, 6.0, 6.0 }, 3003141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3004141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 9.0, 9.0, 18.0, 18.0 }, 3005141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 8.0, 9.0, 9.0, 18.0, 18.0 } 3006141cc406Sopenharmony_ci }, 3007141cc406Sopenharmony_ci 3008141cc406Sopenharmony_ci { MODEL_CANONCCD1200, 2, 31, 3, 0, 0, 3009141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3010141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3011141cc406Sopenharmony_ci {{ 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }, 3012141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3013141cc406Sopenharmony_ci { 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }, { 2, 31, 1 }}, 3014141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3015141cc406Sopenharmony_ci { 2.0, 2.0, 2.0, 2.5, 2.5, 2.5, 3.0, 3.5, 5.0, 5.0 }, 3016141cc406Sopenharmony_ci { 2.0, 2.0, 2.0, 3.0, 3.0, 3.0, 3.0, 4.0, 5.0, 5.0 }, 3017141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3018141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3019141cc406Sopenharmony_ci { 6.5, 6.5, 6.5, 7.0, 8.0, 8.0, 8.0, 10.0, 10.0, 10.0 } 3020141cc406Sopenharmony_ci }, 3021141cc406Sopenharmony_ci 3022141cc406Sopenharmony_ci { MODEL_CANON_LIDE25, 8, 31, 3, 0, 0, 3023141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3024141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3025141cc406Sopenharmony_ci {{ 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, 3026141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3027141cc406Sopenharmony_ci { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }, { 8, 31, 1 }}, 3028141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3029141cc406Sopenharmony_ci { 3.0, 3.0, 3.0, 3.0, 3.5, 3.0, 3.0, 3.0, 3.0, 3.0 }, 3030141cc406Sopenharmony_ci { 3.0, 3.0, 3.0, 3.0, 3.5, 3.5, 5.0, 6.0, 6.0, 6.0 }, 3031141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3032141cc406Sopenharmony_ci { 8.5, 7.0, 5.0, 4.0, 2.5, 2.5, 2.5, 2.5, 2.5, 2.5 }, 3033141cc406Sopenharmony_ci { 7.5, 6.5, 6.0, 6.0, 6.0, 6.0, 8.0, 12.0, 12.0, 12.0 } 3034141cc406Sopenharmony_ci }, 3035141cc406Sopenharmony_ci 3036141cc406Sopenharmony_ci { MODEL_TSCAN, 2, 22, 6, 75, 4000, 3037141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3038141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3039141cc406Sopenharmony_ci {{ 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, 3040141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3041141cc406Sopenharmony_ci { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }}, 3042141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3043141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3044141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3045141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3046141cc406Sopenharmony_ci { 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0 }, 3047141cc406Sopenharmony_ci { 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0 }, 3048141cc406Sopenharmony_ci }, 3049141cc406Sopenharmony_ci 3050141cc406Sopenharmony_ci { MODEL_TSCAN_A4, 2, 22, 6, 75, 8400, 3051141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3052141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3053141cc406Sopenharmony_ci {{ 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, 3054141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3055141cc406Sopenharmony_ci { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }, { 2, 22, 1 }}, 3056141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3057141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3058141cc406Sopenharmony_ci { 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3059141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3060141cc406Sopenharmony_ci { 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0 }, 3061141cc406Sopenharmony_ci { 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0 }, 3062141cc406Sopenharmony_ci }, 3063141cc406Sopenharmony_ci 3064141cc406Sopenharmony_ci { MODEL_QSCAN, 8, 21, 6, 300, 4600, 3065141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3066141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3067141cc406Sopenharmony_ci {{ 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }, 3068141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3069141cc406Sopenharmony_ci { 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }, { 8, 21, 1 }}, 3070141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3071141cc406Sopenharmony_ci { 6.5, 6.5, 6.5, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3072141cc406Sopenharmony_ci { 6.5, 6.5, 6.5, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3073141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3074141cc406Sopenharmony_ci { 6.5, 6.5, 6.5, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3075141cc406Sopenharmony_ci { 6.5, 6.5, 6.5, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0, 6.0 }, 3076141cc406Sopenharmony_ci }, 3077141cc406Sopenharmony_ci 3078141cc406Sopenharmony_ci { MODEL_QSCAN_A6, 8, 15, 6, 0, 0, 3079141cc406Sopenharmony_ci /* Motor settings (PWM and PWM_Duty) */ 3080141cc406Sopenharmony_ci /* <=75dpi <=100dpi <=150dpi <=200dpi <=300dpi */ 3081141cc406Sopenharmony_ci {{ 8, 15, 1}, { 8, 15, 1 }, { 8, 15, 1 }, { 8, 15, 1 }, { 8, 15, 1 }, 3082141cc406Sopenharmony_ci /* <=400dpi <=600dpi <=800dpi <=1200dpi <=2400dpi */ 3083141cc406Sopenharmony_ci { 8, 15, 1 }, { 8, 15, 1 }, { 8, 15, 1 }, { 8, 15, 1 }, { 8, 15, 1 }}, 3084141cc406Sopenharmony_ci /* Color mode MCLK settings */ 3085141cc406Sopenharmony_ci { 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5 }, 3086141cc406Sopenharmony_ci { 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5, 7.5 }, 3087141cc406Sopenharmony_ci /* Gray mode MCLK settings */ 3088141cc406Sopenharmony_ci { 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0 }, 3089141cc406Sopenharmony_ci { 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0 }, 3090141cc406Sopenharmony_ci } 3091141cc406Sopenharmony_ci}; 3092141cc406Sopenharmony_ci 3093141cc406Sopenharmony_ci/* END PLUSTEK-USBDEVS.C ....................................................*/ 3094