home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / newc_dev / nm_2_0.lha / NullModem.doc < prev   
Text File  |  1993-06-21  |  7KB  |  177 lines

  1.  
  2.                           nullmodem.device v2.0
  3.  
  4.                           (c) 1993 Iain Hibbert
  5.  
  6.            nullmodem.device is a software device, that imitates
  7.            two modems and a phone line, on one machine. I wrote
  8.            it whilst looking at the WPL scripting language,  so
  9.            that I could play around without having to spend any
  10.            money on expensive  phone calls,  but it can be used
  11.            for testing various other programs.
  12.  
  13. 1. Installation
  14. ---------------
  15.  
  16.      This archive should contain two files:
  17.  
  18.         nullmodem.device
  19.         NullModem.doc
  20.  
  21.      Copy nullmodem.device to devs:nullmodem.device, and Read NullModem.doc
  22.  
  23. 2. Usage
  24. --------
  25.  
  26.      There are 10 units available, connected in pairs (you will  not  likely
  27.  need more than one pair, but it was as easy to provide 5)
  28.  
  29.                     Unit 0 <=> Unit 1
  30.                     Unit 2 <=> Unit 3
  31.                     Unit 4 <=> Unit 5
  32.                     Unit 6 <=> Unit 7
  33.                     Unit 8 <=> Unit 9
  34.  
  35.      Set up your Terminal/Mailer/BBS's to use one side each of  the  device,
  36.  you should be able to  select  a  replacement  for  the  serial.device  and
  37.  alternative unit numbers easily enough in the software or config files.  In
  38.  use, it emulates a simple hayes modem, with a limited AT command set:
  39.  
  40.     D           Dial
  41.  
  42.         this command causes the other side to RING for the number of
  43.         seconds specified in S1 (Dial Timeout) and returns NO CARRIER
  44.         if there was no answer. Anything after the D is discarded
  45.  
  46.     A           Answer
  47.  
  48.         attempts to answer the phone, returning the CONNECT message or
  49.         NO CARRIER if nobody was ringing us. Anything after the A is
  50.         discarded
  51.  
  52.     S<r>=<v>    set S register
  53.  
  54.         <r> is the register number, up to 077 (octal)
  55.         <v> is the value to set it to, values 0-0377 (octal)
  56.  
  57.         NOTE: both numbers need to be given in Octal
  58.  
  59.         The S registers you can play with are:
  60.  
  61.         #           Description                             Default
  62.  
  63.         0       AutoAnswer after # of rings                   000
  64.         1       Debugging Level (see section 4 below)         000
  65.         2       Dial Timeout                                  020
  66.         3       Answer Delay                                  002
  67.         4       which Speed to report (section 3 below)       012
  68.         5       Backspace character value                     010
  69.         7       which Protocol to report (section 3 below)    011
  70.  
  71.     L       List modem version information, and S Registers
  72.  
  73.     Z       sets the S-Registers to their defaults
  74.  
  75.     Examples:
  76.  
  77.         ATZS1=1S4=5S7=7D123456  ; enable debugging, set connect message to
  78.                                 ; CONNECT 2400/REL-LAPM-COMP (v42bis), and
  79.                                 ; dial the other unit
  80.  
  81.         ATA                     ; attempt to answer
  82.  
  83. 3. Connect Speeds
  84. -----------------
  85.  
  86.      The Nullmodem device doesn't have connect speeds as such, because it is
  87.  not connected to any hardware.. but the CONNECT  message  is  configurable,
  88.  via a couple of S registers. Do not exceed the values given below,  as  you
  89.  will likely get a software failure.
  90.  
  91.            Value          Speed (S4)          Protocol (S7)
  92.  
  93.             00              none                none
  94.             01              103                 /NONE
  95.             02              V21                 /SYNC
  96.             03              300                 /REL
  97.             04              1200                /REL-MNP
  98.             05              2400                /REL-MNP-COMP
  99.             06              4800                /REL-LAPM
  100.             07              7200                /REL-LAPM-COMP
  101.             10              9600                /V32
  102.             11              12000               /ARQ
  103.             12              14400               /ARQ/HST
  104.             13              16800               /ARQ/HST/HST/V42BIS
  105.             14              19200               /ARQ/HST/HST/MNP5
  106.             15                                  /ARQ/V32
  107.             16                                  /ARQ/V32/LAPM/V42BIS
  108.             17                                  /ARQ/V32/LAPM/MNP
  109.             20                                  /ARQ/V32/LAPM/MNP5
  110.             21                                  /ARQ/LAPM/V42BIS
  111.  
  112.     The connect messages may be different for each side of the device
  113.  
  114. 4. Debug Levels
  115. ---------------
  116.  
  117.      Debugging info is sent to the internal serial port at 9600 baud, or you
  118.  can use Sushi to print it in a console window, debugging  levels  are  0-2,
  119.  from 0 = No debugging info to 2 = loads of useless junk. 1 is probably  the
  120.  most useful. If you have a modem on the internal serial port that you  want
  121.  to use while testing, do not enable debugging unless you run Sushi..
  122.  
  123. 5. Technical Details
  124. --------------------
  125.  
  126.      The following device commands are not fully implemented:
  127.  
  128.         CMD_RESET       ;   there is nothing to reset, I don't think
  129.  
  130.         CMD_START       ;   these translate to XON/XOFF flow control,
  131.         CMD_STOP        ;   so you can't use that either.
  132.  
  133.         SDCMD_BREAK     ;   if anybody needs this, let me know what you
  134.                         ;   need it to do..
  135.  
  136.         SDCMD_SETPARAMS ;   there are no parameters to set
  137.  
  138.         SDCMD_QUERY     ;   not fully implemented, it returns the number of
  139.                         ;   characters in the buffer, and Carrier Detect,
  140.                         ;   but nothing else
  141.  
  142.  
  143.      I have partly implemented the ASDG extension command (io_Command = 16),
  144.  
  145.         ASDG_SET_CONTROL_LINES  ;   provides user control for RTS and DTR
  146.                                 ;   currently you can only lower DTR which
  147.                                 ;   causes the modem to hang up.
  148.  
  149.      Note that the modem does not handle +++ATH type hangups, you  must  use
  150.  either the Commodore suggested method of closing the serial  device  for  a
  151.  moment, or the above ASDG extension.
  152.  
  153. 6. Copyright
  154. ------------
  155.  
  156.      nullmodem.device is (C) 1993 Iain Hibbert and it's freely distributable
  157.  as long as all of its files are included in  their  original  form  without
  158.  additions, deletions, or modifications of any kind, and only a nominal  fee
  159.  is charged for its distribution.
  160.  
  161.      This software is provided "AS IS" without warranty of any kind,  either
  162.  expressed or implied. Reading Legal mush can turn your brain to  guacamole.
  163.  By using nullmodem.device you accept either the whole risk or  the  quality
  164.  and performance of the program.
  165.  
  166. 7. The Author
  167. -------------
  168.  
  169.       Iain Hibbert           UUCP:      plunky@closet.wizdom.royle.org
  170.                              FidoNet:   2:255/171.33
  171.                              AmigaNet:  39:136/1.33
  172.  
  173.      You should probably be able to reach me at one of the above  addresses,
  174.  if you are using Comms software regularly. Please contact me  if  you  have
  175.  any  problems  or  suggestions.  I  do  not  guarantee  to  implement   any
  176.  suggestions or fix any bugs, but it can't hurt to try.
  177.