Sign up on the Revelation Software website to have access to the most current content, and to be able to ask questions and get answers from the Revelation community

At 02 FEB 2000 06:10:25AM Trevor McDonald wrote:

Using V124 in Arev 3.12 to communicate with various external devices. On occasions invalid data is read from transmitting devices - problem is not external devices as errors can be partially eliminated by reading via V124 more than once in a for next loop. I have proved thatprocessor speed seems to have an impact which it should not as I am communicating via the UART at low speed. I am not sure but it may be related to buffering?? Any suggestions welcome.

Also I have been trying for some time to get a version of commdrv.ibm which will allow me to communicate via comm1 & comm2 on the same machine.


At 02 FEB 2000 02:24PM Warren wrote:

COMMDRV.IBM hasn't been updated since 1991 AFAIK. I wouldn't expect it to work 100% with todays highspeed processors and communications devices. It probably doesn't even support the 16550 UART.

Unless there is a third party version (Steve Smith?) the only way to access two or more comm ports is explained in the V124.TXT file in the UTILITY disc file UTILITY.DOC

Opening more than one port simultaneously


You can load and access more than one communications device driver

at once. This enables you to open more than one, and perform I/O

to more than one from within a single R/BASIC program.

To do this, you will need to copy the COMMDRV.IBM program, and make

changes to the object code. Follow these instructions:

1. Copy the COMMDRV.IBM to COMMDRV.TWO so you have one to modify.

2. Modify the internal label of the second driver. It is 8 characters long

  and looks like this: 'COMM$   '.  You will need to edit this file with
  an editor that will not be "confused" by low-order ASCII characters (<32).
  Be sure not to change the number of characters.   For example,
  change 'COMM$   ' to 'CDRV$   '.

3. Add another device to the list of drivers in your CONFIG.SYS

  file at DOS. It should then look something like this:
  Device=COMMDRV.IBM 4000,1
  Device=COMMDRV.TWO 4000,2

4. From this point, you can open each communication driver as a separate

   device, and access it using the appropriate handle.
       CALL V124('OP',HANDLE.1,'COMM$':CHAR(0),'',FLAG1)
       CALL V124('OP',HANDLE.2,'CDRV$':CHAR(0),'',FLAG2)
  If you wish to pull it up in TERM, use the device switch:
       TERM -DEVICE CDRV$     (for comm 2)
  or
       TERM -DEVICE COMM$     (for comm 1)

View this thread on the forum...

  • third_party_content/community/commentary/forums_nonworks/cab22f229088fd2885256879003d6124.txt
  • Last modified: 2023/12/28 07:40
  • by 127.0.0.1