Direct parallel port access under windows XP for DOS applications

R

Ran

Hello,

I will describe my problem, hoping that anyone can help with a
solution.

I am running an old DOS application. This application cannot be
altered due to many reasons.

This application uses an old HASP dongle. The hasp drivers for dos
dongles does not work with this application. The only way I could make
this application work, is by writing a code similar to UserPort, which
changes the IO permission map for the calling process.

My problem is that recently new display adapters drivers like ATI
Radeon will not allow me change the TSS to enable direct port access
for the 16Bit process. When disabling the display adapter driver and
using the default windows XP driver, this problem is "solved", of
course not having a display driver reduces performance but I can live
with that.

Second problem is that when using the UserPort with new HyperThreading
motherboards, when the 16bit application tries to access the port, the
computer restarts.

I tried using direct-io, disabling the printer port and enabling
378-37F for the EXE I am using, but with no success. It did not get
the correct response from the dongle.

I think it's because the EXE is using direct bios calls and a virtual
device driver cannot capture the calls and handle them correctly.

Does anyone have a solution to this problem? Any ideas?

I would appreciate any help you can offer...

Thanks for your time,

Ran.
 
B

Bob Walton

Ran wrote:

....
I am running an old DOS application. This application cannot be
altered due to many reasons.

This application uses an old HASP dongle. The hasp drivers for dos
dongles does not work with this application. The only way I could make
this application work, is by writing a code similar to UserPort, which
changes the IO permission map for the calling process.

My problem is that recently new display adapters drivers like ATI
Radeon will not allow me change the TSS to enable direct port access
for the 16Bit process. When disabling the display adapter driver and
using the default windows XP driver, this problem is "solved", of
course not having a display driver reduces performance but I can live
with that.

Second problem is that when using the UserPort with new HyperThreading
motherboards, when the 16bit application tries to access the port, the
computer restarts.

I tried using direct-io, disabling the printer port and enabling
378-37F for the EXE I am using, but with no success. It did not get
the correct response from the dongle.

I think it's because the EXE is using direct bios calls and a virtual
device driver cannot capture the calls and handle them correctly. ....
Ran.

Is there a Perl question buried in there somewhere? If not, please
don't post to comp.lang.perl.misc .

Sounds to me like your old software has finally come to the end of its
life. Amazing it lasted this long. Why not just keep an old 486 around
to run it on?
 

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

Members online

No members online now.

Forum statistics

Threads
473,754
Messages
2,569,526
Members
44,997
Latest member
mileyka

Latest Threads

Top