Re: Porting

> bsdi does not have a /dev/io device file.  Also, i couldn't get the

Right.  /dev/io exists in FreeBSD to control who can or can't access I/O
ports.  If you can open the file, you can read/write all of the ports.
BSDI is different.  From the cqcam documentation:

BSDI:     anyone can access the ports once root has run (usually at boot):
            /usr/sbin/ioport -m 0x378 3  [ or 0x278, or 0x3BC ]

That allows anyone (so be careful) access to 0x378, 0x379, and 0x37A.

>         scantmp = scan = qc_scan(qc, dummyscan, dummyretlen);
> This does compile, but i get a segfault.  I did remove the reference in

Segfault is how the CPU + OS react to an unauthorized port hit.

Removing /dev/io should be the only significant change you have to make.
FreeBSD and BSDI do use the same argument order for outb.