Documentation of Parallel and Serial port configuration?

Kuba Ober kuba at
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