Parallel port programming from MSDOS




I am a firmware deleveloper who uses the PC's parallel port extensively for
communication with embedded systems I design (usually 8-bit
microcontrollers). I attempt to directly access the parallel port hardware
using input() and output() functions. Under XP, none of these programs has
any effect on the parallel port signals. I understand there are
hardware/software protection means that turn control over to XP when DOS
programs attempt to directly access hardware, so I have hunted the net for
kernel mode drivers to enable port access, such as UserPort. With UserPort
installed, I/O does make it to the parallel port, however, attempts to write
and retrieve data from the main parallel port I/O data register (base+0)
results in I/O errors (the data read doesn't *always* match what was written).

Any thoughts?

Thanks for your help,

Si Ballenger

I use userport to control gizmos on the parallel port of my XPO
machine. If the application uses some sort of timing scheme from
the PC, then the timing might be off. XP apparently still
controls time sharing, which hoses some old direct hardware
access applications. Below is a page where I use qbasic to read
the status of the parallel port pins and then generate a web page
showing the status.

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question