home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 4 Drivers / 04-Drivers.zip / UOS2132.ZIP / DMODE.DOC next >
Text File  |  1991-11-20  |  7KB  |  167 lines

  1.                         DigiWARE DMODE for OS/2
  2.  
  3.     Introduction
  4.  
  5.     DMODE is a 'work-alike' of the MODE command under OS/2 but with a
  6.     number of added features and a few different rules of behavior.
  7.     It came to the attention of the DigiBoard Technical Support Staff
  8.     that the standard MODE command -- though useful for many things --
  9.     was limited in the following ways:
  10.  
  11.     -- No communications device names besides COM1 - COM8 could be used.
  12.     -- Baud rates above 9600 could not be assigned.
  13.     -- Timeout, Handshake signals, etc. could not be set without having
  14.        to re-specify the Baud rate, Parity and Data type parameters.
  15.     -- If any of the set of Baud_rate:Parity:Databits:Stopbits was left
  16.        off the command line, MODE would assign them to ITS defaults of
  17.        1200,e,7,1, instead of the defaults of whatever those values are
  18.        CURRENTLY set to.  Thus a user wanting only to change Baud rate
  19.        would unknowingly also re-set the Data type and Parity of the
  20.        device.
  21.  
  22.     DMODE addresses these issues while attempting to remain compliant 
  23.     with the familiar MODE command syntax.
  24.  
  25.     In general, DMODE attempts to forgive as much as possible in terms 
  26.     of both the order of the arguments and of each argument's 
  27.     requirements for other unrelated arguments.  Given the limited range 
  28.     of values that most of the parameters can assume, DMODE will assign 
  29.     a parameter based on its value instead of its position in the command 
  30.     line.  The syntax of the DMODE command is then
  31.  
  32.         DMODE device-name[:] [arguments]
  33.  
  34.     where the device name must be the name of a character-device that
  35.     supports Generic IOCtl system calls.  The Colon is optional and is
  36.     there only to be backward compatible with MODE.  The remainder of 
  37.     the arguments are parsed according the following rules.  The 
  38.     arguments may appear in any order and must be separated from 
  39.     each other with a space and/or comma.  Any parameters left unspecified 
  40.     on the command line will be left in their current settings.  In any 
  41.     case, DMODE will report the current settings of all parameters AFTER 
  42.     such changes as requested on the command line have been assigned.  
  43.     Thus with no arguments (i.e. no changes to current settings), DMODE 
  44.     simply reports the current settings.  
  45.  
  46. Baud Rate Rules:
  47.     Baud Rates parameters are recognized to be any 2 to 5 decimal 
  48.     digit argument to be mapped as follows.
  49.     Accepted values....            Assigned Baud rate
  50.     -----------------------------------------------------------
  51.     11  110                          110
  52.     15  150                          150
  53.     30  300                          300
  54.     60  600                          600
  55.     12  120  1200                     1200
  56.     24  240  2400                     2400
  57.     48  480  4800                     4800
  58.     96  960  9600                     9600
  59.     19  192  1920 19200                19200
  60.     38  384  3840 38400                38400
  61.     57  576  5760 57600                57600
  62. ***Baud rates above 9600 NOT recommended for COM/XI on many channels
  63. ***Baud rates above 38400 NOT recommended for any of the cards.
  64.  
  65. Data Bit Rules:
  66.     Data Bit parameters are recognized to be any 1 digit 
  67.     consisting of 5,6,7, or 8.
  68.  
  69. Stop Bit Rules:
  70.     Stop Bit parameters are recognized to be any argument with
  71.     the value of 1, 2, or 1.5.
  72.  
  73. Parity Rules:
  74.     The Parity parameter is recognized to be any single-letter
  75.     argument with the value of   E, O, N, M, S  -- For (E)ven, 
  76.     (O)dd, (N)one, (M)ark, and (S)pace.   Upper or lower case letters
  77.     are acceptable.
  78.  
  79.  
  80. Handshake Signals and Timeout parameter Rules:
  81.     These arguments follow the documentation for standard MODE command.
  82.     The accepted signal names are listed below.  In all cases the
  83.     name and assignment may be in any mix of upper an lower
  84.     case characters.
  85.  
  86.     Full name              Argument       State Assignments
  87.     -----------------------------------------------------
  88.     Read-timeout            TO    ON  OFF
  89.     Xon/Xoff handshake        XON    ON  OFF
  90.     Input DSR sensitivity        IDSR    ON  OFF
  91.     Output DSR sensitivity        ODSR    ON  OFF
  92.     Output handshake on CTS     OCTS    ON  OFF
  93.     DTR signal control        DTR    ON  OFF  HS
  94.     RTS signal control        RTS    ON  OFF  HS  TOG
  95.  
  96. ALT_PIN processing:
  97.     In some cases it is useful to have the driver report changes in
  98.     DSR as if they were changes in CD (the modem Carrier Detect Signal).
  99.     This is sometimes done to get around a limitation of the 
  100.     8-wire RJ45 connector -- a connector which leaves pin1 and pin10
  101.     of the standard 10-wire RJ45 unterminated.  Since pin10 is defined to
  102.     be Carrier Detect and so many communications programs depend on
  103.     accurate reporting of the state of this CD signal use of 8-wire
  104.     RJ45 connectors can prevent these programs from working.  A work-around
  105.     is to slightly change the wiring scheme of the 8-wire RJ45 so that
  106.     the CD wire is brought into the middle 8 wires which DO make contact.
  107.     Of course this means that the signal that USED to be defined for that
  108.     location must be moved out to pin10, where CD used to be.  In
  109.     general the LEAST payed-attention-to signal is DSR (on Pin2) so if
  110.     CD is wired to Pin2 and DSR is wired to Pin10 close to full modem 
  111.     control can be acheived on an 8-wire RJ45.  The final step in this
  112.     trick is then to instruct the Device driver that for THIS channel
  113.     pin2 is to be interpretted as CD instead of DSR.  DMODE permits
  114.     this ALTERNATE PIN ASSIGNMENT PROCESSING mode to be established on
  115.     channels by issueing the requisite custom command to the XALL driver.
  116.  
  117.     dmode {devname} ALT=ON        ;; report PIN2 as CD
  118.         or
  119.     dmode {devname} ALT=OFF        ;; report PIN2 as DSR (default)
  120.  
  121.     Those interested in implementing this custom call in software should
  122.     look at the file XALL.DOC on the distribution diskette for information.
  123.  
  124. QUICKWRITE processing:
  125.     Normally, each time an application program WRITEs to a device
  126.     (i.e. makes a request to transmit data), the application is 
  127.     suspended until all of the data in the request has actually been
  128.     transmitted.  With many small requests this can be wasteful.  An
  129.     alternate method is to transfer all the data to the shared memory
  130.     buffers on the DigiCHANNEL card and leave it up to the intelligence
  131.     on the card to transmit that data according to the relevant 
  132.     flowcontrol settings -- and permit the application program to 
  133.     proceed with execution.  This greatly increases overall system
  134.     performance but can possibly confuse an application that is attempting
  135.     to very closely track the throughput (bytes/sec transmission rate)
  136.     or doing timeout of fine granularity. 
  137.  
  138.  
  139.     dmode {devname} QW=ON        ;; enable QUICKWRITE processing
  140.         or
  141.     dmode {devname} QW=OFF        ;; disable QUICKWRITE (default)
  142.  
  143.     Those interested in implementing this custom call in software should
  144.     look at the file XALL.DOC on the distribution diskette for information.
  145.  
  146. Examples:
  147.  
  148.     dmode digi12        [ interrogative; no settings changed ]
  149.  
  150.     dmode com5 2        [ the '2' assumed to be stop bits..  ]
  151.  
  152.     dmode com5:38 rts=ON    [ the '38' is parsed to the baud rate]
  153.                 [ of 38.4K baud, and RTS is turned ON]
  154.  
  155.     dmode com5 8        [ the '8' parsed as  data bits       ]
  156.  
  157.     dmode comdev83 IDSR=OFF,TO=off e 7 12
  158.                 [ IDSR is turned OFF, timeout on reads]
  159.                 [ is set to off, Even-parity is set,  ]
  160.                 [ 7 data bits is set, 1200 baud is set]
  161.  
  162.     dmode com5 38 ALT=ON    [ set 38.4Kbaud, report PIN2 as CD    ]
  163.  
  164.     dmode com5 e alt=off QW=on
  165.                 [ set EVEN parity, report PIN2 as DSR , ]
  166.                 [ enable QUICKWRITE processing        ]
  167.