BBS: Inland Empire Archive
Date: 05-02-92 (13:47) Number: 62
From: TOM HAMMOND Refer#: NONE
To: SCOTT WUNSCH Recvd: NO
Subj: Hello, Fix for DTR! Conf: (2) Quik_Bas
SW>I think most of us probably have that already. What I need is
SW>one (a dtr PATCH) for PDS!
No sooner done than said... compliments of Donn Bly a couple months ago.
Hope this helps Scott.
Tom Hammond N0SS
BBS: The Wildcat Modem Zone BBS
Date: 02-18-92 (06:13) Number: 6292
From: DONN BLY Refer#: NONE
To: JOHN SNEERINGER Recvd: NO
Subj: PDS 7.1 DTR PATCH Conf: (13) QuickBasic
> I asked a while ago if anyone had a PDS DTR patch, I
> guess either no one has ever attempted communications
> with PDS, no one owns PDS, or perhaps no one cares (g).
> Probably the latter, but anyway, if anyone knows of a
> way to patch the DTR problem in PDS, let me know.
I have a DTR patch for 7.0, but the critical information should be the
same for 7.1 (if it doesn't work for you, let me know (preferably via
NetMail since I usually don't frequent this echo) and I will track it
down for you). As you know, to increase the efficiency of the
compiled code, several different libraries are used, and the patch
should be applied to all of the following:
BCL7xAFR.LIB, BCL7xANR.LIB, BCL7xEFR.LIB, BCL7xENR.LIB.
Search for the sequence of: B8 07 0C CD 21
and patch it to read: B8 07 0C 90 90
Basically, you are just NOPing out the interrupt 21 call.
> I can get past this problem *IF* anyone out there has a
> piece of code that will LOCK the DTR up. I noticed that
> QBser 2.0 has some function called DTRcontrol x which is
> supposed to do just that. I don't want to use QBser, but
> I'd sure give my left nut for the source.
The CLOSE statement _without_ the DTR patch will still lower DTR.
However, if all you are trying to do is control DTR without doing
serial I/O, you can accomplish your task by talking directly to the
Modem Control Register (MCR) on the UART chip. The MCR is located at
an offset of 4 off to the base address, and DTR is the lowest-order
bit in that register. The following code segment should get you
pointed in the right direction.
CONST MCR = 4
BaseAddress% = &H3f8
OUT BaseAddress% + MCR, INP(BaseAddress% + MCR) OR 1
OUT BaseAddress% + MCR, INP(BaseAddress% + MCR) AND &Hfe
Good luck with your project,
--- WM v2.00/91-0231
* Origin: The Modem Zone BBS (314) 893-5106 (1:289/2)