sane-project-website/old-archive/1998-08/0153.html

109 wiersze
4.5 KiB
HTML
Czysty Zwykły widok Historia

<!-- received="Mon Aug 31 08:09:06 1998 PDT" -->
<!-- sent="Mon, 31 Aug 1998 02:05:39 +0300" -->
<!-- name="Milon Firikis" -->
<!-- email="milonf@ariadne-t.gr" -->
<!-- subject="Re: Windows port" -->
<!-- id="" -->
<!-- inreplyto="Windows port" -->
<title>sane-devel: Re: Windows port</title>
<h1>Re: Windows port</h1>
<b>Milon Firikis</b> (<a href="mailto:milonf@ariadne-t.gr"><i>milonf@ariadne-t.gr</i></a>)<br>
<i>Mon, 31 Aug 1998 02:05:39 +0300</i>
<p>
<ul>
<li> <b>Messages sorted by:</b> <a href="date.html#153">[ date ]</a><a href="index.html#153">[ thread ]</a><a href="subject.html#153">[ subject ]</a><a href="author.html#153">[ author ]</a>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0154.html">Marten Feldtmann: "Re: Windows port"</a>
<li> <b>Previous message:</b> <a href="0152.html">Andreas Cittlau: "Mustek 600 II CD - y limit"</a>
<li> <b>Maybe in reply to:</b> <a href="0130.html">Arun Tanksali: "Windows port"</a>
<!-- nextthread="start" -->
<!-- reply="end" -->
</ul>
<!-- body="start" -->
Ian Grant wrote:<br>
<i>&gt; </i><br>
<i>&gt; Rather than port SANE to Windows, couldn't someone write a TWAIN driver</i><br>
<i>&gt; for Windows that talks to saned? This would allow people to use their free</i><br>
<i>&gt; Windows OCR s/w etc that comes with the scanner, provided they have a</i><br>
<i>&gt; Windows box on their network. It would also enable their Windows machines</i><br>
<i>&gt; to scan from any scanner on their network.</i><br>
<i>&gt; </i><br>
<i>&gt; Ian</i><br>
<i>&gt; </i><br>
<p>
The above post reflects my opinions almost 100 percent.<br>
<p>
Some spots other people missed.<br>
<p>
* I don't care if somebody wants to port anything to anywhere since he<br>
is doing the job and not me.<br>
<p>
* Porting issues.<br>
<p>
SCSI<br>
----<br>
SANE uses a lot the generic SCSI interface. If you miss this you have to<br>
do one of the followings:<br>
a) write a generic SCSI driver (with UNIX semantics) for windows<br>
systems. (ala solaris)<br>
which means that<br>
i) you introduce new instabilities to the system.<br>
ii) you have to maintain different drivers for various Windows<br>
versions.<br>
b) implement the sane_scsi_* commands in sane_scsi.c The place is<br>
already #ifdefed a lot, so some windows #ifdefs won't heart so much.<br>
<p>
INTERFACE<br>
---------<br>
<p>
Get prepared to code a lot of networking stuff since GTK does not have a<br>
native win32 port so you can't use xscanimage to scan, though plain<br>
scanimage would do it fine I guess. Most of that code should be the<br>
TWAIN interface that it is so badly wanted from most of us, in order to<br>
get working Windows applications scanning. While you are there you could<br>
also code the net middleware that Ian Grant is talking about.<br>
<p>
UNIXisms<br>
--------<br>
<p>
Some (most) of the SANE backends (drivers) are using pipe() and fork()<br>
in order to use asynchronous I/O. I have already stated that I am<br>
against such UNIXisms in a backend's code, but since I can't code<br>
something better I am keeping my mouth shut. The guy that he is<br>
maintaining the OS/2 port of the SANE had an interesting idea about some<br>
platform independent threading. I certainly believe that a Windows Port<br>
is a good thing because it will address to these matters in a (I hope)<br>
platform independent way, at least as much as sane_scsi.c is.<br>
<p>
It is also plausible to use the cygnus solution and leave the fork()<br>
pipe() and other unix stuff as it is. It is ought to work since these<br>
guys at cygnus have ported more difficult stuff than SANE which I must<br>
say is almost ANSI compatible.<br>
<p>
<p>
All in all:<br>
I believe that a windows port will be a good thing for SANE, and that it<br>
is also feasible for somebody to do it in a non infinite period of time.<br>
Other than the difficulties I already mentioned, I don't think there<br>
are any other obstacles in the way to a windows port. Am I missing<br>
anything?<br>
<p>
<p>
Milon Firikis<br>
<p>
<pre>
--
Source code, list archive, and docs: <a href="http://www.mostang.com/sane/">http://www.mostang.com/sane/</a>
To unsubscribe: echo unsubscribe sane-devel | mail <a href="mailto:majordomo@mostang.com">majordomo@mostang.com</a>
</pre>
<!-- body="end" -->
<p>
<ul>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0154.html">Marten Feldtmann: "Re: Windows port"</a>
<li> <b>Previous message:</b> <a href="0152.html">Andreas Cittlau: "Mustek 600 II CD - y limit"</a>
<li> <b>Maybe in reply to:</b> <a href="0130.html">Arun Tanksali: "Windows port"</a>
<!-- nextthread="start" -->
<!-- reply="end" -->
</ul>