I recently acquired one of these nice film scanners and have set about
getting it to work under Linux+WINE (yes, I know about VueScan, but I
need the finer controls offered by Polaroid's software). The last
version of Windows I ever ran on my computer was 3.1, and I still have a
working installation on a DOS partition. This scanner is old enough
that Win3.1 drivers exist, and everything works great in DOS+Windows
with the ASPI driver. Under Linux, I know for certain that the basic
SCSI configuration is correct (SCSI generic support, and so on).
[Note: I'm completely new to WINE (as of today) and know next to
nothing about Windows, registry files, etc.
After building WINE, it looked as though it didn't want to use an
existing FAT partition with Win3.1, only a Win95 or higher partition.
So, the install script created my very own c: drive hierarchy. I have
drivers for both 3.1 and 95/98, so I tried running setup.exe for both
cases. The installer would freeze up during the file unpacking, but
that could be cured by telling it to cancel the install, then saying no
I didn't really mean that, at which point it would continue on its merry
way. Unfortunately, it always freezes again after the progress bar is
at 100%, and there is no button to push anymore.
Failing that, I tried copying over the files manually from my working
Windows 3.1 driver installation (the TWAIN directory, and a few DLLs).
This almost works, but it is refusing to detect the ASPI functionality
that is supposedly built in to WINE. I couldn't find much of any
documentation on the Net about this, but I do have the
[scsi c0t4d0]
"Device" = "/dev/sg1"
lines in my ~/.wine/config file. Running WINE with aspi debug messages
turned on yields nothing, so either the aspi support isn't working, or
the program isn't getting that far.
I think the problem could be related to the following, excerpted here
from the driver's readme file:
---
SCSI for Windows 3.x
--------------------
The scanner has two methods for sending commands to the SCSI
adapter.
A. To send SCSI commands to the widest variety of boards, it's
necessary to talk directly to the DOS device drivers provided by
the various SCSI board manufacturers. This method requires that
we allocate a buffer in the lower 1 megabyte of memory. (See
also: Question #6).
B. Adaptec provides a method for sending SCSI commands to their
boards directly from Windows. This doesn't require any low
memory, but unfortunately, it works ONLY with Adaptec SCSI
boards.
In version 2.1 and later, you can select the method that works best
with your hardware. If you have your scanner attached to an Adaptec
SCSI board, you can use either method, but we recommend method B.
If you use a SCSI board from any other manufacturer, you must use
method A. NOTE: Method B is the default.
To choose a method, start up Notepad and open the file plscsi16.ini
which can be found in your \windows directory. Go to the line that
says 'useWinASPI='. To choose method A, set this value to 0 (i.e.
useWinASPI=0). To choose method B, set this value to 1 (i.e.
useWinASPI=1).
---
The popup error I get says "Windows support for SCSI was not found. If
using an Adaptec SCSI board with Windows 3.1, please install the EZ-SCSI
software." I have the plscsi16.ini file in place, but "stat"
tells me
it is not being accessed! The DLL file called plscsi16.dll, which
references that .ini file, *is* being loaded each time. Again, this
exact set of files works fine under the real Win3.1 on my dos partition.
Any ideas? I haven't the slightest clue where to investigate from here.
Mark
---
Mark Haun
markhaun@uiuc.edu