home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / TELECOM / OSKBox.lzh / MAILBOX / CC / DOCS / host.doc < prev    next >
Text File  |  1991-02-02  |  6KB  |  124 lines

  1. NAME:
  2.  
  3.      host - WA8DED host mode translator.
  4.  
  5. AUTHOR:
  6.  
  7.      Eric Williams  WD6CMU, 71336,1424
  8.  
  9. SYSTEM CONFIGURATION:
  10.  
  11.      OS9/68K, MW C v2.0
  12.  
  13. SYNTAX:
  14.  
  15.      host <path>
  16.  
  17. DESCRIPTION:
  18.  
  19.      The  WA8DED host mode translator (host) allows programs to enjoy an
  20. OS9 standard I/O interface with a packet radio TNC.  host will poll the
  21. TNC for data via the serial line and unpack the data, passing it to the
  22. application program via a pipe.  Similarly, data from the application is
  23. read from a pipe, separated into packets, and passed to the TNC.  Multiple
  24. connections are supported and is integrated with OS9 multi-tasking.
  25.  
  26.      The argument to host must be a path to a SCF-type device which is
  27. connected to a TNC running WA8DED host mode firmware.  It is suggested that
  28. the I/O buffer for this SCF device be enlarged to at least 512.  The baud
  29. rate of the port must, of course, match that of the TNC, but the
  30. configuration of the OSK system (for instance, if a DMA disk controller is
  31. not available) may require that the baud rate may have to be lowered to
  32. avoid dropped characters. 
  33.  
  34.      host is designed to run in the background and should be executed with
  35. the shell '&' option.  It will lower its priority to 100 during
  36. initialization.  The attached TNC will be placed in host mode and will be
  37. polled at least once every 2 seconds, more often as data availability
  38. requires.  The maximum number of connects allowed is set to 3 and
  39. monitoring is disabled. 
  40.  
  41.      Incoming connections to the TNC will cause a child process to be
  42. forked.  This process will execute the program "mailbox".  The standard
  43. I/O paths for the child process will be redirected to unnamed pipes
  44. through which the TNC data will pass.  No special I/O practices are needed
  45. for this program.  The arguments passed to the child process will be the
  46. callsign of the connected station, the TNC port (minus the '/'), and the
  47. digipeaters the station connected through, if any.
  48.  
  49.      If a station disconnects from the TNC or the link fails, the pipe
  50. through which the child process receives input is closed.  If the output
  51. pipe from the child process goes EOF, a wait will be executed for that
  52. child and the associated TNC channel will be disconnected once all data
  53. destined for the connected station has been acknowledged.  If a ^C
  54. character is received from the station, an interrupt signal (signal value
  55. 3) is sent to the associated child process. 
  56.  
  57.      host creates four named pipes upon execution.  These pipes all have
  58. names that end in ".<port>" where <port> is the path to the TNC specified
  59. on startup, minus the '/'.
  60.  
  61.      The pipe "monitor.<port>" is an output pipe and will contain any
  62. messages received from TNC channel 0.  This includes monitored packets and
  63. headers and attempted connect messages if no channels are available.  If
  64. the pipe is full, any subsequent messages will be discarded by host.
  65.  
  66.      The pipe "beacon.<port>" is an input pipe and anything written to it
  67. will be written to TNC data channel 0.  This will cause the information to
  68. be transmitted in an unproto packet via whatever path the channel was
  69. initialized to before host was executed. 
  70.  
  71.      The pipe "hostlog.<port>" is used for debugging output and will
  72. contain messages from the host program.  If the pipe is full, any
  73. subsequent messages will be discarded by host.
  74.  
  75.      The pipe "command.<port>" is an input pipe through which commands can
  76. be given to the host program.  Commands are given as a single line,
  77. terminated by newline.  The first character of the line specifies the
  78. command.  The following commands are currently supported:
  79.  
  80.          m<string>\n - This will send the line as a command to the TNC on
  81.          channel 0.  It can be used to enable or disable the monitoring of
  82.          information.  Monitored information appears in the pipe
  83.          "monitor.<port>".
  84.  
  85.          o<pid>\n - This causes host to allocate the highest numbered
  86.          available TNC channel and open four named pipes.  <pid> is the
  87.          (ASCII) process id of the program giving the command and is used
  88.          to create unique names for the pipes.  The pipe "data_in.<pid>"
  89.          will contain incoming data from the TNC, while data sent to the
  90.          pipe "data_out.<pid>" will be sent to the TNC.  The pipe
  91.          "ctl_in.<pid>" will contain TNC channel status and error
  92.          messages, while information sent to the pipe "ctl_out.<pid>" will
  93.          be sent as commands to the TNC.  In this way, a complete
  94.          separation exists between channel data and status/command
  95.          information.
  96.  
  97.          c<pid>\n - The channel allocated by the corresponding o command
  98.          (above) is deallocated and the associated named pipes are closed.
  99.          It is a good idea to make sure the channel is disconnected before
  100.          issuing this command.
  101.  
  102.          u <path> - Sets the digipeater path for UI (beacon) frames.
  103.  
  104.      Outgoing packets are limited in length to 236 by host.  (Larger packets
  105. would be broken by NET/ROM.)  Within these 236-byte packets, host will place as
  106. many complete lines of text as will fit.  If there are characters after the
  107. last newline, they will be saved until the next polling period.  If no newline
  108. is received by then, the data will be sent even if it is not terminated with a
  109. newline.  In this way, data transparency is maintained while the majority of
  110. packets will end with a newline character.  You should note that host will not
  111. perform any editing on incoming data.  In particular, line terminator
  112. characters will be passed unchanged, even the linefeed of a carriage-
  113. return/linefeed pair.  This extra linefeed may cause difficulty to mailbox
  114. programs, and users should be cautioned to turn off their TNC LFADD (or
  115. equivalent) flag. 
  116.  
  117.      If a quit signal is received by host, the program will disable all
  118. monitoring from the TNC, set the maximum number of connections to zero (no
  119. connections), return the TNC to terminal mode, and exit.
  120.  
  121.  
  122. BUGS:
  123.  
  124.