[Snip]
>
>
> More specifically :-
>
> 1) Are there any stubs available that I just fill in the relevant parts
> of to make the driver work or do I have to start the whole thing from
> scratch ?
Nop there is not such a thing such a stub backend. The one thing that is
the closest to this is the PNM backend. This backends reads from a file
and the primary reason of its existence is to demonstrate the SANE API.
I wouldn't recomment to start from the PNM backend though.
>
> 2) Now I have the spec, what do I do next ? Here I'm concerned that I
> may be reinventing the wheel, i.e. the scanace kit may be very close
> to an already developed driver, with the NDA I can't say "Does this
> look familiar ?" I have to compare with every driver to see what is
> available, this will probably be longer than starting from 0.
Take a good look at the specs. If you are planning to support one model
choose a simpler backend for coding base. If you intend to support
multiple models choose a big one. If the scanner is not SCSI choose one
backend with similar interface.
I personally started from the MUSTEK backend. Since it is written by the
Author and the maintener of the SANE package it guarrantees the proper
style that things should be. I changed all occurences of
mustek->apple
Mustek->Apple
MUSTEK-APPLE
tweaked the Makefiles (I am always build the static version of sane when
I am in developing phase, with most backends taken off to save some time
during compilation and linking).
and built the damn thing.
At this time I had an apple backend with all the functionality of the
mustek backend. I started correcting things until I twisted the
personality of the backend completely to the apple behaviour.
It took me a week to submit the first version of the apple backend, but
to be honest I had already a working program that I was using to scan.
Since It was mine (I had written it) it was easy (for me) to built its
functionality within the SANE Standard.
>
> The C isn't a problem, I understand the API but I would appreciate some
> discussion on the various development techniques used, e.g. "I tried
> using SCSI setting XYZ and had major problems" or "I Rebooted the machine
> and Scanner before EVERY test" etc. As much help as possible would be
> appreciated - simply because the time I can devote to this is now VERY
> limited so it must be as smooth as possible.
>
I never rebooted my computer. In the worst case you may have to reboot
your scanner, and or
rmmod/insmod the scsi conntroller module (These are linuxisms of
course). In most cases I think scanners are sensible enaugh to start
over a fresh scan if the previous was unsucessfull or a new scan command
had arrived.
I hope it helps and !!!!!!!!!! Good Luck !!!!!!!!!
Milon Firikis.
-- Source code, list archive, and docs: http://www.mostang.com/sane/ To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com