
   SANE (Scanner Access Now Easy) Ver 1.0.13 for OS/2(Only Epson USB-Scanner)
  ----------------------------------------------------------------------------

Description
============
Only Epson Scanner (Epson backend).
This application is Test Version(Ver0.61).
This Application is introduced to the public with a purpose of becoming the
help which a USB Scanner is available for with OS/2.
SANE Frontend Ver 1.0.12 and Backend Ver 1.0.13 compiled with IBM VAC/2.


EPSON USB-Scanner Product ID
  0x101, 	/* Perfection 636U and 636Photo.         Tested. Thanks,
  0x103, 	/* Perfection 610.                       Tested. Thanks,
  0x10c, 	/* Perfection 640U.                      Tested. Thanks,
  0x104, 	/* Perfection 1200U and 1200Photo.       Not tested.
  0x10b, 	/* Perfection 1240U.                     Tested. Thanks,
  0x106, 	/* Stylus Scan 2500.                     Not tested.
  0x10a,	/* Perfection 1640SU and 1640SU Photo.   Tested. Thanks Doug Rickman.
  0x107, 	/* Expression 1600.                      Not tested.
  0x10e, 	/* Expression 1680.                      Not tested.
  0x110, 	/* Perfection 1650.                      Tested.
  0x112, 	/* Perfection 2450(GT-9700F).            Tested.
  0x11b, 	/* Perfection 2400 Photo.                Tested. Thanks Doug Rickman.
  0x11c,	/* Perfection 3200(GT-9800)              Tested.
  0x11e, 	/* Perfection 1660 Photo.                Tested.
  0x801,	/* CX-5200                               Not Tested.
  0x802,	/* CX-3200                               Not Tested.


Files
======
- Readme.txt      : This File.
- scanimage.exe   : SANE Frontend.
- libsane.dll     : SANE Backend.
- epson.conf      : Epson Scanner configure.

- \USBSCAN
-- readme         : USBSCAN.SYS readme text.
-- usbscan.sys    : USB-Scanner Device class Driver Ver 0.41b.
-- scaninfo.exe   : USB-Scanner Infomation utility.
-- scaninfo.def   : DEF File.
-- scaninfo.c     : scaninfo.exe sorce file.


Requirements
=============
- OS/2 Warp 3/4 or Warp Server for e-Business.
  (Warp 3 and Warp Server not tested)
- USB Basic device drivers(After Augest,2003).
- USB Scanner device class driver(Included).


Installation
==============
Copy scanimage.exe and libsane.dll epson.conf to your directory.
USB Scanner device class Driver is SEE \USBSCAN\readme.
The directory name which installed Scanimage.exe in config.sys is added.
  SET SANE_CONFIG_DIR=X:\scanimage_directory


Usage
======
scanimage [OPTION]...

For Example
------------
 Help Infomation.(Be careful because output changes by the option)
  scanimage --mode gray -h > gray.txt
  scanimage --mode color -h > color.txt

 Start Scanning
  scanimage --mode color --resolution 400 --film-type "Positive Film" -d usbscan$ > Image.ppm


Debug mode
-----------
A debug mode should add the following to config.sys.
(A debugging file name is CHECK.DAT)
  SET SANE2_DEBUG_MODE=YES


Waitting time of reading
-------------------------
Set up waitting time when a reading error occurs in the data transmission
from the your scanner.

When for example the following error occurred in the debugging mode.
  sane_read: buf len = 1272
  sane_read: buf len (adjusted) = 64872
  sanei_usb_read_bulk: trying to read 64872 bytes
  sanei_usb_read_bulk: ulRc=0, Size=32768, Loop=1
  sanei_usb_read_bulk: ulRc=30, Size=0, Loop=2
  sanei_usb_read_bulk: read failed: Message file not found.
  receive buf, expected = 64872, got = 0
  scan_finish()

Settlement of waitting time of reading is to add the following to config.sys.
  SET SANE2_READ_WAIT_TIME=milli second

Example:  SET SANE2_READ_WAIT_TIME=50


Waitting time of writting
--------------------------
Set up waitting time when a writting error occurs in the data transmission
from the your scanner.

Settlement of waitting time of writting is to add the following to config.sys.
  SET SANE2_WRITE_WAIT_TIME=milli second

Example:  SET SANE2_WRITE_WAIT_TIME=50


note: If you are using a command-prompt, it doesn't need to add 
      'SET SANE2_****' to config.sys. Before carrying out scanimage.exe, a key
      inputs 'SET SANE2_****'. It'S convenient for checking the most suitable
      waitting time.
      Don't forget to turn off the power supply of the scanner once when an
      error occurs in scanimage.exe.


Hints of Source Code
=====================
This Application is being compiled in IBM VAC/2.
Infomation to give to the following isn't mentioned about that parts.


a) FRONTEND(scanimage.exe)
-------------------------
scanimage.c  : Original.
stiff.c      : Original.


b) BACKEND(libsane.dll)
------------------------
epson.c                 : Original(SANE Epson Backend v0.2.40 - 2003-10-27).
epson_usb.c             : Original.
epson_scsi.c            : Original.
sanei_usb.c             : Changed.  Ask me.
sane_strstatus.c        : Original.
sanei_config.c          : Original.
sanei_config2.c         : Original.
sanei_pio.c             : Original.
sanei_scsi.c            : Changed.
                          Line 288.  # define MAX_DATA	(64*1024)
                          Changed    # define MAX_DATA	(32*1024)
sanei_init_debug.c      : Original.
sanei_constrain_value.c : Original.

c) epson.conf
--------------
epson.conf    : Changed.  SEE epson.conf.
    Line 6.         scsi EPSON
         Change.    #scsi EPSON
    Add line 19.    usb usbscan$


Known bugs
===========
No problem.


Bug Reporting
==============
If you find any bugs, please tell me at the contact address below.
- scanimage.exe and libsane.dll version(Date).
- USBSCAN.SYS version.
- OS/2 Version and fixpack level
- USB Basic device driver Version(Date)
- Description of your usb hardware
- scaninfo.exe data


Version History
================
 Ver 0.3   2002-12-**    Initial release
 Ver 0.31  2003-02-22    SANE Ver1.0.11 compiled.
 Ver 0.4   2003-03-05    Fixed Image broken.
 Ver 0.5   2003-06-12    SANE Ver1.0.12 compiled.
                         Fixed Perfection 640U Image header.
                         Fixed It's unusually finished when it's interrupted 
                         during scanning.
 Ver 0.51  2003-06-22    Fixed Perfection 610U Image header.
 Ver 0.52  2003-09-25    Fixed Float overflow of parse_vector().
 Ver 0.56  2003-12-04    SANE Ver1.0.13 compiled.
 Ver 0.6   2003-12-26    Additional option. Debugging mode and Waitting time of
                         reading and writting.
 Ver 0.61  2004-01-23    Changed, Set transfer data from the scanner at 32K bytes.


Special Thanks.
================
Klaus Staedtler.   Tame/2 Ver 1.0.0 Front-Frontend application.
Doug Rickman.      Beta testing.
Thanks to those who supported us by testing.


Copyright
==========
 Copyright (c) 2002,2003 Team Arum Japan. All rights reserved.


DISCLAIMER
==========
EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED
WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING
BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE.  EXCEPT AS
OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR
LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF
THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.


Contact
========
 Author:        Maeda Haruyuki
 e-mail:        sacana@luck.ocn.ne.jp


