Author Topic: LPT ports from PCI IO cards do not work  (Read 2003 times)

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
LPT ports from PCI IO cards do not work
« on: October 06, 2011, 04:16:42 pm »
Hi Roman,

I have 2 IO PCI cards installed offering each an LPT port.
In LPTdemo LPT1, LPT2 and LPT3 are shown in the drop-down box but only LPT1 is accepted. E.g. if I select LPT2, it immediately shows LPT1 again.
LPT1 works fine by the way but LPT2 and LPT 3 don't as they are not accepted.

How can I solve this?

Regards, Henny

Roman Novgorodov

  • Engineer
  • Administrator
  • Hero Member
  • *****
  • Posts: 994
  • we will win
    • View Profile
    • Forums.nrCommLib.Com
Re: LPT ports from PCI IO cards do not work
« Reply #1 on: October 06, 2011, 06:58:46 pm »
Hello

Thank you for your information.
It seems your are right.
Several LPT ports is rarely situation for modern PCs, therefore we missed this bug during testing.
Please try new build of nrComm Lib. It is available on our site now.

Roman Novgorodov
DeepSoftware LLC
DeepSoftware llc - The professional components for Delphi/CBuilder/.NET. The high quality custom software development.
Forums.nrCommLib.Com - DeepSoftware Tech Support Forum.

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: LPT ports from PCI IO cards do not work
« Reply #2 on: October 07, 2011, 02:49:48 pm »
Hi Roman,
Thank you for the very  ... sorry EXTREMELY fast  answer + action! GREAT.
I HAD (yesterday) version 23 installed and after installing 24 (today) indeed I could select LPT2 and LPT3.
However ..... LPT2 and LPT 3 pin values still cannot be changed. I've built some very simple piece of hardware and connected leds via a hardware-driver 
to the LPT data , and control pins. So I can easily monitor what happens.
Again, LPT works fine, status pins inclusive.
But it seems nrLPT cannot work with other base addresses then $378 (and possibly 278).
For evaluation reasons I've adapted the lptDemo FormShow as can be seen in the attached picture. I've added a breakpoint and watches.
So you can see what happens if I only change to another LPT .
I hope you understand what I've done after studying this picture.
I know from "System"  that LPT3 (=QTEC/NETMOS)  has IO range DF88-DF8F and DF80-DF87. LPT2 (=SUNIX) is a bit weard, "SYStem" does not give resource information but from IO info I assume it is DF48-DF4F. My computer can start up in Windows XP and (still) also W98. In W98 resources are given and all LPT ports mentioned here work fine, with different piece of software however. That software does not work in WXP, that's why I would like to change to nrComm software.

Additionally I've also done many experiments with manually changing the Base IO address like $DF48 and DF80 etc etc, nothing worked.

I hope this is enough details now, if not please do not hesitate to ask me.

I hope this way together we can solve this problem.

Regards, Henny
« Last Edit: October 07, 2011, 03:37:06 pm by Henny Barten »

Roman Novgorodov

  • Engineer
  • Administrator
  • Hero Member
  • *****
  • Posts: 994
  • we will win
    • View Profile
    • Forums.nrCommLib.Com
Re: LPT ports from PCI IO cards do not work
« Reply #3 on: October 09, 2011, 09:32:46 am »
Hello

I see on your screenshot that Handle property has non-correct value.
It seems like you need to set Active in true, before analyze pins.

Also please note that TnrLpt can not reliable detect correct value of I/O Base address. Better if you will set it manually at runtime.

Roman Novgorodov
DeepSoftware LLC
« Last Edit: October 09, 2011, 10:02:13 am by Roman Novgorodov »
DeepSoftware llc - The professional components for Delphi/CBuilder/.NET. The high quality custom software development.
Forums.nrCommLib.Com - DeepSoftware Tech Support Forum.

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: LPT ports from PCI IO cards do not work
« Reply #4 on: October 10, 2011, 10:07:03 pm »
Hi Roman,

I agree, I should have given you the screenshots while Active=true.
After working for hours on the same issue sometimes you get 'masked' such that you don't see anymore your own mistakes. That's what happened.

BUT, LPT2 and LPT3 still don't work.

When the project is running and Active=false, I can manually change the BaseIO address next to LPT1 (which I do not change). Then I see after Active=true that the bits change, something I would expect.
When I change 00000378 (which works fine) to eg 11110378 then again LPT1 is addressed and its bits can be changed similar. That means to me that you do not use the first 8 hexnumbers here. No problem, I can understand!
BUT what I understand from your answer is that when System Information tells me that LPT3 IO range is 0000DF88-0000DF8F and 0000DF80-0000DF87, that one of these numbers (instead of 00000378) should work for LPT3. And that seems to be UNtrue!
Do you have any idea what to do to make LPT3 working for me?

Regards, Henny

Roman Novgorodov

  • Engineer
  • Administrator
  • Hero Member
  • *****
  • Posts: 994
  • we will win
    • View Profile
    • Forums.nrCommLib.Com
Re: LPT ports from PCI IO cards do not work
« Reply #5 on: October 11, 2011, 05:38:40 am »
Hello

Please show me screenshot with LPT3 properties from Windows Device Manager.
I want to look at "Resources" tab.

Roman Novgorodov
DeepSoftware LLC
DeepSoftware llc - The professional components for Delphi/CBuilder/.NET. The high quality custom software development.
Forums.nrCommLib.Com - DeepSoftware Tech Support Forum.

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: LPT ports from PCI IO cards do not work
« Reply #6 on: October 11, 2011, 04:05:31 pm »
Hi Roman,

Please see attached "LPT issues.PDF" including all information I could find in my computer regarding LPT1, LPT2 and LPT3.
I noticed now that the IO address for LPT2 is more likely &hDEC0-&hDEDF.
For being sure I tested these also but also without succes.

I've added some more info as follows, see "nrComm LPT issues 2.pdf"
I've changed .CheckBox1Click as can be seen in the screenshot.
That means that after setting Active - true I have a look at verious settings as can be seen in the watch-screenshot. I've done this for LPT1, LPT2 and LPT3.
I've also added the log file.
Hopefully it is helpful.

Regards, Henny

Roman Novgorodov

  • Engineer
  • Administrator
  • Hero Member
  • *****
  • Posts: 994
  • we will win
    • View Profile
    • Forums.nrCommLib.Com
Re: LPT ports from PCI IO cards do not work
« Reply #7 on: October 12, 2011, 05:02:55 am »
Hello

Please try to set LptIOBase property in 57224 ($DF88) and test pins on LPT3 output.

About LPT2 without I/O range.
It is very strange. Please check manufacturer documentation or driver setup.
Possible some options are available in BIOS of your PC.

Roman Novgorodov
DeepSoftware LLC
DeepSoftware llc - The professional components for Delphi/CBuilder/.NET. The high quality custom software development.
Forums.nrCommLib.Com - DeepSoftware Tech Support Forum.

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: LPT ports from PCI IO cards do not work
« Reply #8 on: October 18, 2011, 09:26:05 pm »
Hi Roman,

I tried $DF88 and it works.
I'm quite sure I tried this already but must have 'some' mistake.
Regarding LPT2 which is a Q-Tec (also Sunix) product the following:
You can find details here:http://www.qtec.info/products/product.htm.260.html
Strange, I found a Windows XP driver: 12886_06.exe  (http://www.qtec.info/service/support/drivers.htm.1964.html) but it appeared to be the one I already had installed. So still NO resources available after (re)installation.
However, their documents tell me : Operating system:-WIN 95,98,NT, 2000,LINUX, Me
Thus NO WXP!
I cannot find any email address to ask questions.... pitty, seems not to work nicely in WXP.

Regards, Henny

Henny Barten

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: LPT ports from PCI IO cards do not work
« Reply #9 on: October 18, 2011, 09:57:21 pm »
Hi Roman,

After some trial & error method I found &hdf60 working fine for LPT2
Very strange: as System Information -> I/O told me the following:

PCI4008A Multi I/O adapter 0x0000DF48-DF4F
PCI4008A Multi I/O adapter 0x0000DF60-DF67
PCI4037A Multi I/O adapter 0x0000DECO-DEDF

while I have 2 COM interfaces and 1 LPT interface from this branch in my computer so I thouht 4037=LPT and 4008=COM

Anyway, finally I found 'some' solution.

Question:  will TnrLpt detect reliably the correct value of the I/O Base address in the near future?

Regards, Henny