Scanning with SCANdal

From MorphOS Library

Revision as of 22:46, 27 December 2010 by Zukow (talk | contribs)

Author: Michał Żukowski

Scandal logo.png
HomePage


SCANdal is a graphic interface for scanner drivers in Betascan/SANE standard. It uses MUI and was ported on all Amiga-like operating systems (MorphOS, AmigaOS 4.x, AmigaOS3.x, AROS). The point of its developing was to provide their users a free software that allows them to use scanners effectively and uses advanced functions of new version of the every mentioned operating systems.

Requirements

For proper use of SCANdal you need the following components to be installed in your system:

  • MUI (Magic User Interface) version 3.8 or later
  • urltext.mcc MUI class

For MorphOS version lower than 2.x

  • Update Pack containing jfif.library and png.library as well as an Aboutbox.mcc class
  • MorphOS version of this software uses advanced MUI 4.x, so it may not work properly with older MUI versions

Additionally the computer should be fitted with a proper hardware interface (SCSI or USB) to connect your scanner to. You should also have proper scanner drivers for Betascan standard installed. SCANdal as a graphic interface does not give the possibility to scan anything without proper drivers available.

SCANdal Installation

SCANdal is ready to run right after decompressing the archive in destination directory and doesn't copy any files into any other directories. For proper working it requires Betascan drivers in #?.device form to be present in any directory on you hard drive.

Usage

Device preferences

Current scanner communication system with SCSI devices is based on two device files (#?.device). First is basic device performing sending and receiving data from and to scanner on a low (hardware) level. In MorphOS for example, in case of using SCSI card, symbios.device is created in memory. For Poseidon USB stack communication using usbwrap.class, usbraw.device is created. For older Blizzard 1230 cards device is called 1230scsi.device.

Name of the device you are using, has to by typed in Device field in device preferences. You can select proper file if that's the form your device exists, or select one from the list of devices present in memory. In that case, you have to tick the Show devices in memory option and select proper name.

After selection the device, you have to select the unit, which usually is a device number on SCSI bus, or user-defined number in Poseidon USB stack preferences, for usbwrap.class (when we use older 68k EpsonUSB.device).

NOTE: For USB scanners drivers is not necessary to determining the number of unit as well as low-level device name.

Next you have to select Betascan driver file, by filling the Scanner driver' Some of the drivers require and allows you to set scanner's preferences in configuration files #?.conf. In older drivers, these files are placed in the S: directory, in the newer files are placed in the SYS:Data directory. If the directory does not exist you should create it. Refer to the SANE documentation for information about the configuration files.

Scandal prefs.png
Scandal prefs2.png


In the Other tab one can select colors for ruler and default save paths and path for Sketch plugins (i.e Morphos:Applications/Sketch/plugins). Sketch plugins support requires Morphos 2.5 or later.

SCANdal opens the device and begins the communication during first scanning process. From version 1.3 icon tooltype (AUTOCONNECT = TRUE) has been added, which initiates the communication with the scanner when you run the program. In addition, you can connect to the scanner by clicking on the Connect button in the Info tab. If device preferences are changed when program is running, communication with old device is closed, and program will use new device from now on. Possibility of using multiple scanners at the same time will be added in future. After proper scanner configuration, you can save the preferences using Settings->Use or Settings->Save options from menu items. Restoring previous settings is possible by using Settings->Load last saved menu item.

Savers

SCANdal supports three graphic file formats:

  • IFF DEEP - uncompressed data save, 24 bits per pixel.
  • JPEG - save in 8 bits for images scanned in LineArt and Grey modes and in 24 bits if you scan in full color. For JPEG format you can set quality (1%-100%) and use progressive mode. The DPI information is saved.
  • PNG - save in 8 bits for images scanned in LineArt and Grey modes, and in 24 bits if you scan in full color. For PNG format you can set compression level (1-7). The DPI information is saved.
  • TIFF - save in 8 bits for images scanned in LineArt and Grey modes, and in 24 bits if you scan in full color. For TIFF format these compression modes can be set: : NONE, PackBits, LZW, Deflate, JPEG (JPEG compression may not work depending of tiff.library version). The DPI information is saved.
  • PDF - save in 8 bits for images scanned in LineArt and Grey modes, and in 24 bits if you scan in full color, image compression support. PDF support requires hpdf.library.

Support for PNG and JPEG formats is compiled into a program in AmigaOS4.x, AmigaOS3.x and AROS version. In MorphOS versions, SCANdal uses jfif.library and png.library libraries, so it uses less memory and takes less disk space. More savers will be added in further versions.

Additional options:

  • Auto suffix - automatically adds file extension (.deep, .jpg, .png) if user inputs filename without one
  • Ask before overwrite - displays proper requester when you try to overwrite an existing file with the same name

Loading previously scanned images

SCANdal makes use of Reggae classes to load images and it checks images for its DPI to ensure proper printing/handling.

If Reggae decoder doesn't support DPI information or DPI information isn't saved in the picture one can select DPI from window.
Dpiselect.png

For full loading support download additional Reggae decoders and demuxers from http://brain.umcs.lublin.pl/~rzookol/classes.html

Printing

SCANdal prints images using Turboprint (included in MorphOS).

Scanning preferences

Scanning preferences are divided into two tabs:

  1. General settings in Preferences -> Scanner tab allow to set up options like:
    • Resolution (in dots per inch - DPI) using slider or gadget with predefined vallues
    • Mode (LineArt - black and white mode, Grey - grayscale and Color - full color scanning, modes list depends of scanner abilities)
      Scandal scanprefs.png

      Depending on scanner and driver function:
    • hardware Gamma correction
    • quality change
    • negative scan mode
    • scanning in preview mode, which should be faster than normal scanning mode
    • scanning speed mode
    • paper source (Flatbed/ADF/TA)
  2. Scanning area settings are placed in Scan tab, additionally in preview area you can mark the desired scan area using mouse, left button double-click marks whole available area. Scan area marker frame has got white spots. Holding left mouse button over them allows you to resize or move the frame. In MorphOS version, moving mouse pointer over the spots will cause it (pointer) to change shape, so the user knows, that the resize or move options are available.
    Scandal frame.png

In future, scanning preferences will be saved as separate project. This function is being implemented now.

Supported scanners

The following SANE backends has been ported to MorphOS:

Backend name Supported scanner list
umax http://www.sane-project.org/sane-backends.html#S-UMAX
epson2 http://www.sane-project.org/sane-backends.html#S-EPSON2
epson (deprecated)
gt68xx http://www.sane-project.org/sane-backends.html#S-GT68XX
plustek http://www.sane-project.org/sane-backends.html#S-PLUSTEK
mustek_usb http://www.sane-project.org/sane-backends.html#S-MUSTEK-USB


Scanners listed as supported by these backends on http://www.sane-project.org/sane-backends.html should work. In addition, scanner drivers written for Betascan 68k work (http://aminet.net/search?query=betascan).


TESTED SCANNERS

Scanner
model
Driver Morphos
native
Ports Notes
UMAX Astra 1200S Umax.device Y SCSI working without problems
quite fast
Epson 1640SU Epson2.device Y USB 1.1/SCSI working without problems, fast
ADF supported, TA supported
Mustek Paragon 600 II CD mustek.device N SCSI working without problems
quite slow
HP ScanJet 6300C hp.device N USB 1.1/SCSI stop working after a few scans
probably hardware failure
Mustek BearPaw 1200 TA gt68xx.device Y USB quite slow, TA supported, problems with quality
Plustek S24 gt68xx.device Y USB 1.1 gamma supported, slow warming up,
quality quite ok
Mustek 600 CU mustek_usb.device Y USB working without problems, MorphOS 2.7 required


ADF - Auto Document Feeder, TA - Transparency Adapter

Configuring EPSON Scanners

  1. Download epson2 driver: [1]
  2. Unpack files to any directory
  3. SCSI scanners choose valid communication device in Device field (for example symbios.device).
  4. In SCANdal preferences choose Epson2.device full path in Scanner Driver
  5. Copy epson2.conf to S:
  • For SCSI scanners leave this file unchanged
#epson2.conf
#usb poseidon:prod_id:vendor_id
#usb poseidon:1208:266
scsi EPSON
  • When You use USB just comment scsi line and uncomment usb poseidon:1208:266:
#epson2.conf
#usb poseidon:prod_id:vendor_id
usb poseidon:1208:266
#scsi EPSON

You have to look in poseidon preferences whether product id and vendor id match (decimal numbers). Values 1208 and 266 in this example are for Epson 1640SU only! Additionally, scanner has to be unbinded from any Poseidon usb classes (if it is binded).

Epsonconf.png

Configuring gt68xx Scanners

  1. Download Driver: [2]
  2. Copy the device to any directory
  3. Download scanner's rom and put it in s:gt68xx directory
  4. Create a configuration file s:gt68xx.conf
 # Autodetect Mustek BearPaw 1200 TA and Mustek BearPaw 1200 CS
 usb 0x055f 0x021e

You have to look in Poseidon preferences for your scanner product id and vendor id (hex format) or check this page for ids and roms: http://www.meier-geinitz.de/sane/gt68xx-backend/

Configuring UMax Scanners

  1. Download Driver: [3]
  2. Copy the device to any directory
  3. Create/copy a configuration file s:umax.conf

If Your scanner doesn't work well in color mode try setting "option scan-lines" to lower value (10). It has been rewritten not to use fork() and pipe() so it's more stable than 68k version and it supports only SCSI connections.

Authors

Main code
Michał 'rzookol' Żukowski
email
rzookol at poczta.onet.pl
rzookol at brain.umcs.lublin.pl
rzookol / #morphos / #ppa freenode.net
Additional code
Gianfranco 'ShInKurO' Gignina
Icons
Maciej Żukowski