Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

OSR5: PCI parallel port issues - need to change I/O address

1 view
Skip to first unread message

Edward Hooper

unread,
Jan 22, 2003, 3:31:00 PM1/22/03
to
I have a PCI parallel port card that will take whatever I/O address
the PCI bus will give it, but because of a little program that is
checking for the parallel port in a predefined location (IRQ 7, I/O
378, etc) I need to force the I/O address of the PCI card down to
0x378. The BIOS of the machine does not even give the option to
change I/O address. (Before anyone asks, no the prorgam vendor will
not change the program.) I've been looking in a few man pages for PCI
and found that some PCI configuration can be changed, but I don't now
if I can force the I/O address to where I want. Is this even
possible?

TIA,

Edward Hooper
Princess Cruises
IT Department
Shipboard Systems Group

Bob Bailin

unread,
Jan 22, 2003, 11:34:00 PM1/22/03
to

"Edward Hooper" <eho...@princesscruises.com> wrote in message
news:2dc3b402.03012...@posting.google.com...

> I have a PCI parallel port card that will take whatever I/O address
> the PCI bus will give it, but because of a little program that is
> checking for the parallel port in a predefined location (IRQ 7, I/O
> 378, etc) I need to force the I/O address of the PCI card down to
> 0x378. The BIOS of the machine does not even give the option to
> change I/O address. (Before anyone asks, no the prorgam vendor will
> not change the program.) I've been looking in a few man pages for PCI
> and found that some PCI configuration can be changed, but I don't now
> if I can force the I/O address to where I want. Is this even
> possible?

You won't be able to change the PCI address to 0x378 simply because
there's already a device assigned to that address, namely, the onboard
parallel port that's already present on the motherboard. If you need to
use a parallel port with that specific address, why not use the onboard
one?

Or do you have a cutting-edge motherboard that has finally eliminated
all legacy parallel & serial ports?

Bob

Edward Hooper

unread,
Jan 27, 2003, 2:56:36 PM1/27/03
to
"Bob Bailin" <72027...@compuserve.com> wrote in message news:<b0nrkp$pvr$1...@ngspool-d02.news.aol.com>...

Strange thing that IBM has eliminated the "legacy" parallel port from
it's newest line of servers, but retains an even more "legacy" serial
port.

In laymens terms: there is no integrated parallel and I need to have a
parallel port that looks like it is integrated to satisfy the
requirements of a piece of software that the vendor (Micros Systems,
Inc) is unwilling to update.

Edward Hooper
Princess Cruises
Unix Admin (and damn proud of it)

Tony Lawrence

unread,
Jan 27, 2003, 3:15:41 PM1/27/03
to

Do they really read the device or is it just that they write to the
/dev/lp0?

Either way, this may be fixable. If it's just that they want to write
to /dev/lp0 you just replace that with a named pipe and have a script
suck data off it and send it wherever you like: see
http://aplawrence.com/SCOFAQ/scotec7.html#netdevice

If it is that they need to see /dev/lp0 acting like a parallel port you
don't have, it's not hard to write a fake device driver that will give
them whatever responses they expect. Sure, I'm at 378. Whatever you
like :-)

Unfortunately, if this is really reading something physical (a dongle
for instance), that's getting harder, but it wouldn't be completely out
of the question to have that dongle hanging off a little linux box and a
pair of cooperating drivers talking to each other across the network.
Perhaps a bit more than I'd want to tackle this weekend, but not impossible.

If it's really writing/reading the ports itself, then encapsulating it
is going to be much, much harder.

What does this really do? Someone might have a clever idea..

--
Tony Lawrence
Free SCO, Mac OS X and Linux Skills Tests:
http://aplawrence.com/skillstest.html

Edward Hooper

unread,
Jan 28, 2003, 2:05:23 PM1/28/03
to
Tony Lawrence <to...@pcunix.com> wrote in message news:<NrgZ9.66901$AV4.3324@sccrnsc01>...

The parallel port is needed for a security dongle. The driver is hard
coded to the standard I/O addresses for parallel: 0x3BC, 0x378, &
0x278. If it doesn't find the parallel port at any one of the those
addresses then it cannot find the dongle. I don't want to write an
interceptor, just a little program that will force the PCI bus manager
to change the I/O address of a certain card to 0x378.

I've asked for an updated driver but the company that makes the dongle
doesn't want to bother. They are more interested in leaving the
"legacy" world of Unix behind and going to the "bright future" of
Microsoft. (Bleak future if you ask me. Remember the 1984 Super Bowl
commerical from Apple?)

Thank you for your help.

Edward Hooper
Princess Cruises

Bela Lubkin

unread,
Jan 29, 2003, 1:19:33 AM1/29/03
to sco...@xenitec.on.ca
Edward Hooper wrote:

> The parallel port is needed for a security dongle. The driver is hard
> coded to the standard I/O addresses for parallel: 0x3BC, 0x378, &
> 0x278. If it doesn't find the parallel port at any one of the those
> addresses then it cannot find the dongle. I don't want to write an
> interceptor, just a little program that will force the PCI bus manager
> to change the I/O address of a certain card to 0x378.
>
> I've asked for an updated driver but the company that makes the dongle
> doesn't want to bother. They are more interested in leaving the
> "legacy" world of Unix behind and going to the "bright future" of
> Microsoft. (Bleak future if you ask me. Remember the 1984 Super Bowl
> commerical from Apple?)

Patch their driver to use your card's I/O address. Start with:

cd /etc/conf/pack.d/theirdriver
dis Driver.o | egrep -i '278|378|3bc'

That may or may not match -- depends whether their code explicitly
mentions the possible port addresses, or uses a data structure. If it's
a data structure, hexdump the driver and look for those values. Patch,
relink, reboot, see what happens. (Save original copies of anything you
touch!)

>Bela<

0 new messages