1141cc406Sopenharmony_ci 2141cc406Sopenharmony_ci BACKEND TECO3 3141cc406Sopenharmony_ci 4141cc406Sopenharmony_ci 5141cc406Sopenharmony_ciThis scanner capabilities are in the middle of the 3520 and 3575, 6141cc406Sopenharmony_cisharing features of both. Hence a third backend. 7141cc406Sopenharmony_ci 8141cc406Sopenharmony_ci 9141cc406Sopenharmony_ciPIOTECH 3024 (TECO Scorpio/Taurus Infinity VM3552): 10141cc406Sopenharmony_ci 000: 06 00 02 02 43 00 00 10 20 20 20 20 20 20 20 20 ....C... 11141cc406Sopenharmony_ci 016: 46 6c 61 74 2d 62 65 64 20 73 63 61 6e 6e 65 72 Flat-bed scanner 12141cc406Sopenharmony_ci 032: 35 2e 30 38 35 2e 30 38 03 02 54 45 43 4f 20 56 5.085.08..TECO V 13141cc406Sopenharmony_ci 048: 4d 33 35 35 32 20 00 01 01 2c 00 01 04 b0 09 f6 M3552 ...,...... 14141cc406Sopenharmony_ci 064: 10 68 01 2c 00 00 00 01 .h.,.... 15141cc406Sopenharmony_ci 16141cc406Sopenharmony_ciRELISYS INFINiTY SCORPIO: 17141cc406Sopenharmony_ci 000: 06 00 02 02 43 00 00 10 52 45 4c 49 53 59 53 20 ....C...RELISYS 18141cc406Sopenharmony_ci 016: 53 63 6f 72 70 69 6f 20 20 20 20 20 20 20 20 20 Scorpio 19141cc406Sopenharmony_ci 032: 31 2e 30 34 31 2e 30 34 03 02 54 45 43 4f 20 56 1.041.04..TECO V 20141cc406Sopenharmony_ci 048: 4d 33 35 35 32 20 00 01 01 2c 00 01 04 b0 09 f6 M3552 ...,...... 21141cc406Sopenharmony_ci 064: 10 68 01 2c 00 00 00 00 .h.,.... 22141cc406Sopenharmony_ci 23141cc406Sopenharmony_ciTrust Imagery 2400SP: 24141cc406Sopenharmony_ci 000: 06 00 02 02 43 00 00 10 41 61 73 68 69 6d 61 20 ....C...Aashima 25141cc406Sopenharmony_ci 016: 49 4d 41 47 45 52 59 20 32 34 30 30 53 50 20 20 IMAGERY 2400SP 26141cc406Sopenharmony_ci 032: 31 2e 30 30 31 2e 30 30 03 02 54 45 43 4f 20 56 1.001.00..TECO V 27141cc406Sopenharmony_ci 048: 4d 33 35 35 32 20 00 01 01 2c 00 01 04 b0 09 f6 M3552 ...,...... 28141cc406Sopenharmony_ci 064: 10 68 01 2c 00 00 00 01 .h.,.... 29141cc406Sopenharmony_ci 30141cc406Sopenharmony_ciTrust Imagery 4800 SP +: 31141cc406Sopenharmony_ci 000: 06 00 02 02 43 00 00 10 41 61 73 68 69 6d 61 20 ....C...Aashima 32141cc406Sopenharmony_ci 016: 49 4d 41 47 45 52 59 20 34 38 30 30 53 50 20 2b IMAGERY 4800SP + 33141cc406Sopenharmony_ci 032: 35 2e 30 38 35 2e 30 38 03 02 54 45 43 4f 20 56 5.085.08..TECO V 34141cc406Sopenharmony_ci 048: 4d 33 35 35 32 20 00 01 01 2c 00 01 04 b0 09 f6 M3552 ...,...... 35141cc406Sopenharmony_ci 064: 10 68 01 2c 00 00 00 00 .h.,.... 36141cc406Sopenharmony_ci 37141cc406Sopenharmony_ci/*--------------------------------------------------------------------------*/ 38141cc406Sopenharmony_ci 39141cc406Sopenharmony_ciSCSI commands supported by the RELISYS VM3530+: 40141cc406Sopenharmony_ci 41141cc406Sopenharmony_ciTEST UNIT READY 42141cc406Sopenharmony_ci00 00 00 00 00 00 43141cc406Sopenharmony_ci 44141cc406Sopenharmony_ciREQ SENSE 45141cc406Sopenharmony_ci03 00 00 00 12 00 46141cc406Sopenharmony_ci 47141cc406Sopenharmony_ciVENDOR-09 48141cc406Sopenharmony_ci09 00 00 78 00 00 49141cc406Sopenharmony_ci 3-4 = length of data to receive. Always 30720 bytes. 50141cc406Sopenharmony_ci Probably 12 lines of calibration at 300dpi. 51141cc406Sopenharmony_ci 8.5*300*12=30600 52141cc406Sopenharmony_ci 53141cc406Sopenharmony_ciVENDOR-0E (?) 54141cc406Sopenharmony_ci0E 00 00 00 00 00 55141cc406Sopenharmony_ci Always follows VENDOR-09 command 56141cc406Sopenharmony_ci 57141cc406Sopenharmony_ciINQUIRY: 58141cc406Sopenharmony_ci12 00 00 00 35 00 59141cc406Sopenharmony_ci standard inquiry 60141cc406Sopenharmony_ci 52 bytes - appears to never change 61141cc406Sopenharmony_ci 32-39: firmware version 62141cc406Sopenharmony_ci 42-52: real scanner name 63141cc406Sopenharmony_ci 64141cc406Sopenharmony_ciSCAN 65141cc406Sopenharmony_ci1B 00 00 00 00 00 66141cc406Sopenharmony_ci 67141cc406Sopenharmony_ciSET WINDOW 68141cc406Sopenharmony_ci24 00 00 00 00 00 00 00 45 00 (3552) 69141cc406Sopenharmony_ci 70141cc406Sopenharmony_ciTotal length is 99 71141cc406Sopenharmony_ci 07 = length (99-8 = 91) 72141cc406Sopenharmony_ci 10-11 = X Resolution 73141cc406Sopenharmony_ci 12-13 = Y resolution 74141cc406Sopenharmony_ci 14-17 = X top left corner 75141cc406Sopenharmony_ci 18-21 = Y top left corner 76141cc406Sopenharmony_ci 22-25 = width (size in inches * 300) 77141cc406Sopenharmony_ci 26-29 = length (size in inches * 300) 78141cc406Sopenharmony_ci 31 = 0x80 ? 79141cc406Sopenharmony_ci 33 = scan mode 80141cc406Sopenharmony_ci 0x00 = black & white 81141cc406Sopenharmony_ci 0x02 = grayscale 82141cc406Sopenharmony_ci 0x05 = color 83141cc406Sopenharmony_ci 34 = bit depth? - invariants, always 8 84141cc406Sopenharmony_ci 36 = dither pattern - only for B&W 85141cc406Sopenharmony_ci 0x00 = line art 86141cc406Sopenharmony_ci 0x01 = 2 X 2 87141cc406Sopenharmony_ci 0x02 = 3 X 3 88141cc406Sopenharmony_ci 0x03 = 4 X 4 Bayer 89141cc406Sopenharmony_ci 0x04 = 4 X 4 Smooth 90141cc406Sopenharmony_ci 0x05 = 8 X 8 Bayer 91141cc406Sopenharmony_ci 0x06 = 8 X 8 Smooth 92141cc406Sopenharmony_ci 0x07 = 8 X 8 Horizontal 93141cc406Sopenharmony_ci 0x08 = 8 X 8 Vertical 94141cc406Sopenharmony_ci 37 = 95141cc406Sopenharmony_ci 0x80 = RIF ? 96141cc406Sopenharmony_ci 48 = color channel to use 97141cc406Sopenharmony_ci if scan mode is 0 or 2: 98141cc406Sopenharmony_ci 0x00 = red 99141cc406Sopenharmony_ci 0x01 = green 100141cc406Sopenharmony_ci 0x02 = blue 101141cc406Sopenharmony_ci if scan mode is 05 -> ignored 102141cc406Sopenharmony_ci TWAIN leaves 0x02 103141cc406Sopenharmony_ci 50: calibration 104141cc406Sopenharmony_ci 00 = yes 105141cc406Sopenharmony_ci 02 = no 106141cc406Sopenharmony_ci 53, 57, 61, 65: 0xff 107141cc406Sopenharmony_ci 108141cc406Sopenharmony_ci 109141cc406Sopenharmony_ciREAD 110141cc406Sopenharmony_ci28 00 00 00 00 00 00 00 3E 00 111141cc406Sopenharmony_ci 6-8 = length 112141cc406Sopenharmony_ci 113141cc406Sopenharmony_ciSEND 114141cc406Sopenharmony_ci2A 00 03 00 00 02 00 04 00 00 115141cc406Sopenharmony_ci 2 = data type code 116141cc406Sopenharmony_ci 0x03 = gamma - 4*256 bytes 117141cc406Sopenharmony_ci 118141cc406Sopenharmony_ciOBJECT POSITION 119141cc406Sopenharmony_ci31 00 00 00 00 00 00 00 00 00 120141cc406Sopenharmony_ciPark the CCD. 121141cc406Sopenharmony_ci 122141cc406Sopenharmony_ciGET DATA BUFFER STATUS 123141cc406Sopenharmony_ci34 01 00 00 00 00 00 00 12 00 124141cc406Sopenharmony_ci 1 = bit 1 is wait 125141cc406Sopenharmony_ci 7-8 allocation length 126141cc406Sopenharmony_ci 127141cc406Sopenharmony_ci returned buffer is 0x10 bytes long. 128141cc406Sopenharmony_ci 0-2 = additional length (0x10-3 = 0x0D) 129141cc406Sopenharmony_ci 3 = reserved(?) 130141cc406Sopenharmony_ci 6-8 = scanner memory (with no RAM, it is 32KB on the VM3552) 131141cc406Sopenharmony_ci 9-11 = filled data buffer 132141cc406Sopenharmony_ci 12-13 = number of lines (constant during a scan) 133141cc406Sopenharmony_ci 14-15 = bytes per line (constant during a scan) 134141cc406Sopenharmony_ci 16 = ? 135141cc406Sopenharmony_ci 17 = in color mode, 0x07 seems to means to the colors are shifted 136141cc406Sopenharmony_ci and given by rasters. 0x00 seems to mean that there is no 137141cc406Sopenharmony_ci color shifting and that each pixel is coded by 3 consecutive 138141cc406Sopenharmony_ci bytes. 139141cc406Sopenharmony_ci 140141cc406Sopenharmony_ci/*--------------------------------------------------------------------------*/ 141141cc406Sopenharmony_ci 142141cc406Sopenharmony_ciCommand sequence 143141cc406Sopenharmony_ci(simplified, since the TWAIN driver seems to be quite stupid) 144141cc406Sopenharmony_ci 145141cc406Sopenharmony_ciGet some info: 146141cc406Sopenharmony_ci INQUIRY 147141cc406Sopenharmony_ci 148141cc406Sopenharmony_ciSetup the scan: 149141cc406Sopenharmony_ci TUR 150141cc406Sopenharmony_ci SET WINDOWS 151141cc406Sopenharmony_ci GET BUFFER STATUS 152141cc406Sopenharmony_ci VENDOR-09 153141cc406Sopenharmony_ci VENDOR-0E 154141cc406Sopenharmony_ci SEND(10) 155141cc406Sopenharmony_ci SET WINDOWS (same as the first one) 156141cc406Sopenharmony_ci SCAN 157141cc406Sopenharmony_ci 158141cc406Sopenharmony_ciloop until all data read: 159141cc406Sopenharmony_ci GET BUFFER STATUS 160141cc406Sopenharmony_ci READ(10) if any data available 161141cc406Sopenharmony_ci 162141cc406Sopenharmony_cipark the CCD: 163141cc406Sopenharmony_ci OBJECT POSITION 164141cc406Sopenharmony_ci 165141cc406Sopenharmony_ci/*--------------------------------------------------------------------------*/ 166