summaryrefslogtreecommitdiff
path: root/doc/matsushita/matsushita.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/matsushita/matsushita.txt')
-rw-r--r--doc/matsushita/matsushita.txt189
1 files changed, 189 insertions, 0 deletions
diff --git a/doc/matsushita/matsushita.txt b/doc/matsushita/matsushita.txt
new file mode 100644
index 0000000..72b8fcd
--- /dev/null
+++ b/doc/matsushita/matsushita.txt
@@ -0,0 +1,189 @@
+Made by Kyushu Matsushita Electric, a.k.a. Panasonic
+http://www.kme.panasonic.co.jp/
+http://panasonic.com/
+
+The same twain driver handle these scanners:
+Same family as KV-SS25, KV-SS50, KV-SS55, KV-SS50EX, KV-SS55EX, KV-SS850, KV-SS855.
+
+Another driver handle the KV-S2055L, KV-S2055W.
+
+However all these scanner show similarities.
+
+/*--------------------------------------------------------------------------*/
+
+SCSI commands supported by the KV-SS25:
+
+TEST UNIT READY:
+00 00 00 00 00 00
+
+REQUEST SENSE:
+03 00 00 00 0E 00
+ a return after a short read is:
+ f0 00 60 00 00 00 02 0a 00 00 00 00 00 00 00 00
+ a return after a jam (sure?)
+ f0 00 03 00 00 00 00 0a 00 00 00 00 80 01 00 00
+ no paper
+ f0 00 03 00 00 00 00 0a 00 00 00 00 3a 00 00 00
+ jam door open:
+ f0 00 02 00 00 00 00 0a 00 00 00 00 04 81 00 00
+ paper jam
+ f0 00 03 00 00 00 00 0a 00 00 00 00 80 04 00 00
+ after a power cycle
+ f0 00 06 00 00 00 00 0a 00 00 00 00 29 00 00 00
+ after ????
+ f0 00 05 00 00 00 00 0a 00 00 00 00 2c 02 00 00
+ out of memory (scan data too big for scanner)
+ f0 00 05 00 00 00 00 0a 00 00 00 00 2c 80 00 00
+
+INQUIRY:
+12 00 00 00 60 00
+ result:
+ 06 00 02 02 5B 00 00 10 4B 2E 4D 2E 45 2E 20 20
+ 4B 56 2D 53 53 32 35 41 20 20 20 20 20 20 20 20
+ 31 2E 30 35 00 00 00 00 00 00 00 00 00 00 00 00
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+SET WINDOWS:
+24 00 00 00 00 00 00 00 00 00
+ reset (?)
+24 00 00 00 00 00 00 00 48 00
+ 72 bytes.
+ 6-7 = 0x40 = window descriptor length
+
+ Window Descriptor Block:
+ 0 = page side
+ 0x00 = front
+ 0x80 = back
+ 2-3 = X resolution
+ 4-5 = Y Resolution
+ 14-17 = width (size in inches * 1200)
+ 18-21 = length (size in inches * 1200)
+ 22 = 255 - brightness
+ 23 = same as 22
+ 24 = contrast
+ 25 = image composition
+ 0x00 = black&white (1 bit)
+ 0x01 = black&white with halftone pattern
+ 0x02 = grayscale
+ 26 = bits/pixel
+ 0x01, if image comp == 0
+ 0x04, if image comp == (0x01 || 0x02) -> grayscale 4 bits
+ 0x08, if image comp == 0x02 -> grayscale 8 bits
+ 28 = haltone pattern
+ 0x00 = Bayer 64
+ 0x01 = Bayer 16
+ 0x02 = Dot 32
+ 0x03 = Dot 64
+ 0x04 = Error diffusion
+ 0x80 = User downloaded pattern
+ 29 = reverse image
+ 0x00 = no reverse
+ 0x80 = reverse
+ 43 = image emphasis
+ 0x80 smooth
+ 0x00 none
+ 0x01 low
+ 0x30 medium (twain default)
+ 0x50 high
+ 44 = gamma (Gray 4/8 only)
+ 0x00 normal
+ 0x01 from CRT
+ 0x80 gamma table 0 (previously downloaded)
+ 0x81 gamma table 1 (previously downloaded)
+ 0x82 gamma table 2 (previously downloaded)
+ 0x83 gamma table 3 (previously downloaded)
+ 47 = ? (only used by the ISIS driver)
+ bit 7 = ? set by the ISIS driver
+ bit 6 = length control
+ bit 2 = ? set by the ISIS driver
+ bit 1 = ? set by the ISIS driver
+ 48-51 = width (again?, maybe paper size)
+ 52-55 = length (again?, maybe paper size)
+ 57 = feeder mode
+ 0x00 = one page
+ other = number of pages to read (TWAIN driver defaults to 0xff)
+ 58 = auto threshold
+ 0x00 = none (twain default)
+ 0x80 = mode 1
+ 0x81 = mode 2
+ 0x82 = mode 3
+ 59 = automatic separation
+ 0x00 = no (twain default)
+ 0x80 = yes
+ 60 = white level
+ 0x00 = from white stick (twain default)
+ 0x80 = from paper
+ 0x81 = automatic
+ 61 = noise reduction
+ 0x00 = none (twain default)
+ 0x01 = 1x1
+ 0x02 = 2x2
+ 0x03 = 3x3
+ 0x04 = 4x4
+ 0x05 = 5x5
+
+READ:
+28 00 80 00 00 00 00 00 10 00
+28 00 00 00 00 00 00 80 00 00
+ 2 = data type code
+ 0x00 image data
+ The TWAIN driver always reads 0x8000 bytes at the time, except for
+ the last packet where it read the size left plus 2 more bytes (and
+ thus generating a check condition).
+
+ 5: page side
+ 0x00 = front
+ 0x80 = back
+
+ 0x80 image size in dots
+ 3(?)-4: number of the page to read. Multipage mode.
+
+ returns 16 bytes:
+ 0-3: length in pixels
+ 4-7: width in lines
+
+SEND(10):
+ 2A 00 03 00 00 01 00 01 0A 00
+ 2 = data type code
+ 0x02 = halftone pattern
+ data is 10 bytes of header + 64 bytes for the matrix
+ 0x03 = gamma table
+ data is 10 bytes of header + 256 bytes for the table
+ 5 = gamma table number (data type code is 2)
+ the scanner can store 4 gamma tables (from 0 to 3)
+ 7-8 = length
+
+SET AREA (?)
+C0 00 00 00 00 00 00 00 58 00
+Total message length = 88 bytes
+ 7 = length -> 0x40 = 64 bytes
+ 14-17 = area 1 X
+ 18-21 = area 1 Y
+ 22-25 = area 1 width
+ 26-29 = area 1 length
+ 33 = image composition
+ 1 = halftone
+ 36 = haltone pattern (if image composition == 1)
+ 0x00 = Bayer 64
+ 0x01 = Bayer 16
+ 0x02 = Dot 32
+ 0x03 = Dot 64
+ 0x04 = Error diffusion
+ 50-53 = area 2 X
+ 54-57 = area 2 Y
+ 58-61 = area 2 width
+ 62-65 = area 2 length
+ 68-71 = area 3 X
+ 72-75 = area 3 Y
+ 76-79 = area 3 width
+ 80-83 = area 3 length
+
+
+Other supported commands:
+16 RESERVE UNIT
+17 RELEASE UNIT
+1D SEND DIAGNOSTIC
+31 OBJECT POSITION
+3B WRITE BUFFER