Documentation of Parallel and Serial port configuration?
Kuba Ober
kuba at mareimbrium.org
Thu Oct 6 08:14:01 CDT 2005
> >> Several years ago I had my programmer and one other device working
> >> with dosemu and or bochs but after I updated from Mandrake 8.2 I
> >> think I have not been able to get it working again. I think the
> >> kernel has changed on hardware access and will require special
> >> driver to allow simulated direct hardware access.
>
> Kuba> man ioperm 2
>
> Kuba> You can use it via a suid-root wrapper program that acquires the
> Kuba> port access, drops privileges and executes your wine
> Kuba> programs. Works for me. Of course it doesn't work if the windows
> Kuba> program needs the special driver to talk to the device. It does
> Kuba> work for those old-style windows95 applications that expect to be
> Kuba> able to talk to the ports directly.
>
> For both the serial and the parallel port, direct port access can be
> handled by ioctl() to the devices. So doing direct port access via in() and
> out() while running as root is only the last resort...
The ioperm() method is more general (works for any port, not only for
serial/parallel devices) and also faster (doesn't do a syscall). It requires
no changes to the win95-style applications. Also, ioperm() doesn't imply
running as root. You only need a trivial (couple lines long) suid-root
wrapper written in C, that then invokes your regular windows application
using wine.
Cheers, Kuba
More information about the wine-devel
mailing list