Scanning with SCANdal
From MorphOS Library
Author: Michał Żukowski
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.
Contents
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.
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.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:
- 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)
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)
- 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.
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
- Download epson2 driver: [1]
- Unpack files to any directory
- SCSI scanners choose valid communication device in Device field (for example symbios.device).
- In SCANdal preferences choose Epson2.device full path in Scanner Driver
- Copy epson2.conf to S:
- For SCSI scanners leave this file unchanged
#epson2.conf #usb poseidon:prod_id:vendor_id #usb 1208 266 scsi EPSON
- When You use USB just comment scsi line and uncomment usb 1208 266:
#epson2.conf #usb poseidon:prod_id:vendor_id usb 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) and Device field in SCANdal preferences should be left blank.
Configuring gt68xx Scanners
- Download Driver: [2] (25.12.2010)
- Copy the device to any directory
- Download scanner's rom and put it in s:gt68xx directory
- Create a configuration file s:gt68xx.conf
# Autodetect Mustek BearPaw 1200 TA and Mustek BearPaw 1200 CS usb 0x055f 0x021e
Additionally, canner has to be unbinded from any Poseidon usb classes (if it is binded) and Device field in SCANdal preferences should be left blank.. 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
- Download Driver: [3]
- Copy the device to any directory
- Create/copy a configuration file s:umax.conf
- Choose valid scsi device (for example symbos.device) in SCANdal preferences Device field and appropriate Unit number.
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
- rzookol at poczta.onet.pl
- rzookol at brain.umcs.lublin.pl
- rzookol / #morphos / #ppa freenode.net
- Additional code
- Gianfranco 'ShInKurO' Gignina
- Icons
- Maciej Żukowski