home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / vmsnet / misc / 1175 < prev    next >
Encoding:
Internet Message Format  |  1993-01-23  |  4.3 KB

  1. Xref: sparky vmsnet.misc:1175 vmsnet.internals:1788 comp.sys.dec:7091 comp.org.decus:1138
  2. Path: sparky!uunet!elroy.jpl.nasa.gov!sdd.hp.com!hplabs!nsc!decwrl!infopiz!mark
  3. From: mark@infocomm.com
  4. Newsgroups: vmsnet.misc,vmsnet.internals,comp.sys.dec,comp.org.decus
  5. Subject: Re: Need faster async board...dlv11-J?  Something else?
  6. Message-ID: <1993Jan22.220837.21718@infocomm.com>
  7. Date: 22 Jan 93 22:08:37 PST
  8. References: <1993Jan20.113259.1238@cmkrnl.com> <9828020@zl2tnm.gen.nz> <1993Jan22.151835.1265@cmkrnl.com>
  9. Distribution: world
  10. Organization: INFO COMM - Computer Consulting, Redwood City, Ca
  11. Lines: 75
  12.  
  13. In article <1993Jan22.151835.1265@cmkrnl.com>, jeh@cmkrnl.com writes:
  14. > In article <9828020@zl2tnm.gen.nz>, don@zl2tnm.gen.nz (Don Stokes) writes:
  15.  
  16. >> jeh@cmkrnl.com writes:
  17. >>> Good stuff!  I've been mumbling about doing something along these lines... 
  18. >>> I'm going to see if I can complete it and put a nice wrapper around it. 
  19. >> OK, but note that I got the TT$M_MODEM!TT$M_HOSTSYNC test wrong.  (It'll take
  20. >> the modified path if _either_ bit is set, not both.  Originally, I just coded
  21. >> to look at TT$M_MODEM, until I realised that it would only call PORT_XOFF to
  22. >> output a BEL if HOSTSYNC wasn't set, dropping DTR until the port was 
  23. >> re-initialised, which wasn't quite what I had in mind....)
  24. > Mark Pizzolato and I were looking at using the new COMMSYNC characteristic. The
  25. > doc says that COMMSYNC shouldn't be used with MODEM, but SET TERMINAL does not
  26. > enforce this.  My idea is to do RTR flow control if COMMSYNC, MODEM, and
  27. > HOSTSYNC are all set; if HOSTSYNC is set but either MODEM or COMMSYNC isn't,
  28. > send xon's and xoff's.  It looks as though this will not interfere with the
  29. > standard use of COMMSYNC.  This allows easy switching of the new code with the
  30. > existing SET TERMINAL command and $QIO interfaces. 
  31.  
  32. This sounds like the correct strategy and it has the right promise of actually
  33. working on any other modem control ports also (not just DHV stuff).
  34.  
  35. I've got another problem to look into in this domain.  The "Full Modem Control"
  36. port on the VS4000 (60 & 90) is either broken completely or the driver is
  37. simply broke.  It doesn't even do CTS flow control correctly.  I'm not sure if
  38. it doesn't even try to respond to the modem's transitions or if it simply is
  39. slow to respond due to not having an interrupt tied to the CTS transition and
  40. it determines these transitions by a periodic poll (TTY_SCANDELTA or
  41. something).
  42.  
  43. >> (This is DECserver 200 V3.1)
  44. > Yes, yes, I know that!  btw, it also says 
  45. >     When using CTS or DSR flow control, MODEM CONTROL must be DISABLED.
  46. > I have never seen a DECserver 200 implement RTR (what is often called RTS) flow
  47. > control.  Perhaps the RTS/CTS refers to the old half-duplex method.  
  48. > What is odd is that the 200MC *always* honors CTS from the modem (ie stops
  49. > sending when the modem drops CTS), just as the DHV and similar ports do, even
  50. > if flow control is disabled.  I hope they don't "fix" this... 
  51. > But what I originally meant is that I can't manipulate the "DTE sourced"
  52. > signals, nor read the "DCE sourced" signals, from the VAX side (ie
  53. > IO$_SENSEMODE|IO$M_RD_MODEM, IO$_SETMODE|IO$M_HANGUP,
  54. > IO$_SETMODE|IO$M_SET_MODEM|IO$M_MAINT, etc., don't work).  I can't even do
  55. > the equivalent of Local> SET PORT nnn FLOW CONTROL CTS, though thankfully,
  56. > changing the TT characteristics to turn off hostsync and ttsync have do have
  57. > the desired effect.  
  58.  
  59. Considering that the above functionality is not there, it is real odd that we
  60. CAN send a break through the Terminal server with the following code sequence:
  61.  
  62.     SYS$SETIMR(delay_efn, delta_200_ms, 0, delay_efn);
  63.  
  64.     SYS$QIOW(qiow_efn, Fdtty, IO$_SENSEMODE, &ttparms, 0, 0, &ttstart,
  65.         sizeof(ttstart), 0, 0, 0, 0);    /* get current settings */
  66.  
  67.     SYS$QIOW(qiow_efn, Fdtty, IO$_SETMODE, &iosb, 0, 0,
  68.         &ttstart, sizeof(ttstart), 0, 0,
  69.         (ttparms.parity<<4)|TT$M_BREAK, 0);    /* set the break bit */
  70.  
  71.     SYS$WAITFR(delay_efn);        /* wait (at least) 200 msec. */
  72.  
  73.     SYS$QIOW(qiow_efn, Fdtty, IO$_SETMODE, &iosb, 0, 0, 
  74.         &ttstart, sizeof(ttstart), 
  75.         ttparms.speed, ttparms.fill,        /* restore prev state */
  76.         (ttparms.parity>>4)|(1<<TT$V_ALTRPAR), 0);
  77.  
  78. --
  79. Mark Pizzolato - INFO COMM Computer Consulting, Redwood City, Ca
  80. PHONE:    (415)369-9366    UUCP:  decwrl!infopiz!mark or uunet!lupine!infopiz!mark
  81. DOMAIN:    mark@infocomm.com
  82.