> >> 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