Click here to Skip to main content
15,897,968 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
In the distant past there were applications that did direct access to the motherboard parallel ports (ISA). The application do not work with the plug & play (PCI) parallel ports.

If you know the base address of the PCI parallel ports are the registers the same as the original ISA ports?

I have asked this question of the board manufactures (like SIIG) and they refuse to answer.

Bob Macklin
Seattle, Wa

What I have tried:

I use VC++ version 5 to generate applications. It does not provide parallel port operations like it does for the serial port. It only provides standard printer services.
Posted
Updated 4-Apr-16 18:00pm

Really VC 5? For which Windows version?

Since Windows NT normal applications have no direct access to hardware. You always need a driver.

Because parallel ports are outdated, it is difficult to find still working examples. But this site may be a good starting point: Jan Axelson's Lakeview Research[^]
 
Share this answer
 
Comments
macklinbob 4-Apr-16 12:41pm    
I can use the inp and outp instuctions to direct access the port if I know the base address.

I can find the base address in the Device Manager.

Bob Macklin
Seattle, Wa
Jochen Arndt 4-Apr-16 12:48pm    
These functions will not work from user mode applications with NT (NT, 2000, XP, and later). They will cause a privileged instruction exception.

That is why I asked for the Windows version.
Sergey Alexandrovich Kryukov 5-Apr-16 0:01am    
Despite the fact they are outdated, so many CodeProject authors worked with them. I cannot even understand why. Please see Solution 2. :-)
—SA
By some reasons, CodeProject is the resource with ridiculously high number of parallel port articles: Search — CodeProject[^].

—SA
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900