home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / TELECOM / KWIN_LaTerm_1_1.lzh / LaTerm.doc < prev    next >
Text File  |  1994-08-15  |  14KB  |  428 lines

  1.  
  2.  
  3.                             LaTerm 
  4.  
  5.                          Version 1.1
  6.  
  7.  
  8.  
  9.             *******     MM/1 KWindows Application  *******
  10.  
  11.  
  12.  
  13.  
  14.  
  15.                     (c) 1994 Alan Weston
  16.  
  17.  
  18.  
  19.  
  20.                         Quick Help File
  21.                         ---------------
  22.  
  23. LaTerm emerged out of a desire to have a terminal program which made use
  24. of as many external routines as possible.  Thus allowing the potential
  25. user to tailor most of the options.  Furthermore, key strokes have been
  26. minimized and a point and click KWindows interface has been used. 
  27.  
  28. KWindows is required to run this application. As of this writing, windio
  29. v.52 & 48 were used for all the testing.
  30.  
  31. Users will be required to designate and make use of individual external
  32. routines to handle such things as up/download protocols, editor, list,
  33. shell, etc.
  34.  
  35.  
  36. 1. Getting Started
  37. ------------------
  38. Quick startup:
  39. -------------
  40.  
  41. Set up environment variables:
  42.  
  43. setenv TERM vsc
  44. setenv PORT /t3 (or /whatever)
  45.  
  46. The following files must be in appropriate locations:
  47.  
  48. file                location
  49. ----------------------------------
  50. LaTerm                execution path
  51. LaDial                exec path
  52. confer                exec path
  53. send_break            exec path
  54. la.sys                /dd/sys
  55. dial.sys            /dd/sys
  56.  
  57. external routines   exec path (or as defined by setenv PATH)
  58.  
  59. Type: laterm
  60.  
  61. Note: merge LaTerm and LaDial together for quicker response of autodialer
  62.  
  63. Usage/Options/Parameters:
  64. ------------------------
  65.  
  66. Usage:  LaTerm [-s <script> -p <port>]
  67. Options:
  68.         s: execute a script file on startup
  69.         p: serial port -- defaults to MODEM environment variable 
  70.  
  71.  
  72. Usage:   LaDial [-p<port>]
  73.          LaDial [-s<n>]
  74. Options:
  75.          port: optional port assignment, e.g. /t3
  76.          s: run script where n: entry number of site to autodial
  77.          -if port is not specified then use environment variable MODEM.
  78.          -s option requires env. var. MODEM
  79.          -optional environment variable LAPLAY can be used to call an
  80.          external alarm to notify of connect.
  81.  
  82.  
  83. Usage: confer [pipe] (hsize) (vsize)
  84.        Open one way conference line to pipe.
  85.        ** Requires LaTerm ** 
  86.  
  87.  
  88. Usage: send_break [port], e.g. send_break /t3
  89.  
  90.  
  91. 2. Main Menu Functions:
  92. ----------------------
  93.  
  94. Files
  95. ------
  96. Chd                            change directory on current device    
  97. ChDrive                        change drive
  98. List File                    call external file list program
  99. Open Log                     open log/capture file default:"la.log"
  100. Pause Log                    pause log file - reopen with Open Log option
  101. Rename Log                    change default log name
  102. Close Log                    close log file 
  103. Editor                        invoke user specified editor
  104. Print                        print file (forks "print")
  105. Shell                        fork shell in window
  106. Quit                        quit LaTerm
  107.  
  108. Setup
  109. -----
  110. 8-N-1                         8 bit word length, no parity, 1 stop bit 
  111. 8-E-1                         8 bit word length, even parity, 1 stop bit 
  112. 8-O-1                         8 bit word length, odd parity, 1 stop bit 
  113. 7-N-1                         7 bit word length, no parity, 1 stop bit 
  114. 7-E-1                        7 bit word length, even parity, 1 stop bit 
  115. 7-O-1                       7 bit word length, odd parity, 1 stop bit 
  116. Local Echo                     echo stdin on/off for half/full duplex
  117. Handshake                     switch between XON/XOFF (software) and 
  118.                             RTS/CTS (hardware) handshaking 
  119. Termcap                     not implemented in this version
  120. Baud                         change serial bps rate
  121. User Defines                dial.sys settings (excluding macro keys)
  122. Port Options                view &/or edit port path descriptor
  123. Term Options                view &/or edit window path descriptor
  124.  
  125. The Port and Term Options provide direct editing of the various options
  126. that make up the path descriptors for the screen and serial port.  The
  127. list box display allows for selection with a simple click of the mouse. 
  128. A prompt then appears at the appropriate location to take decimal input
  129. (up to 3 characters). The output is displayed in hexadecimal. The path
  130. descriptor is updated upon exit using the close box. Users should refer to 
  131. sgbuf.h or the Microware manuals for details. Do not edit unless you know 
  132. what will ensue -- this is an easy way to crash your MM/1.
  133.  
  134. Access
  135.  ------
  136. Transmit                    send an ASCII file with optional line delay (line
  137.                             delay is disabled in script mode)
  138. Blind Mode                    disables screen output -- handy for capturing
  139.                             messages at high baud rates when the screen cannot
  140.                             keep up. Always provides faster throughput.
  141. SendBreak                    send a true break
  142. Conference                    toggle conference mode
  143. Dialer                        call external dialer LaDial
  144. Run Script                    execute user defined script file
  145. Hangup                        send hangup string to modem
  146. Reinit Modem                send modem initialization string (INI in dial.sys)
  147. Host Mode                    not implemented in this version
  148.  
  149. Receive/Send
  150. ------------
  151. KermitBin                    kermit binary transfers 
  152. KermitASC                    kermit ASCII transfers
  153. Xmodem                        xmodem
  154. Xmodem 1K                    xmodem 1K
  155. Ymodem                        ymodem
  156. Zmodem                        zmodem
  157. Cis-B+                        Compuserve CIS B+
  158.  
  159. LaTerm
  160. ------
  161. Help                        Short cut key help file
  162. About...
  163.  
  164.  
  165. 3. Format of "la.sys" file:
  166. --------------------------
  167.  
  168. RKB=kermit -ril /t3^M            kermit binary receive
  169. RKA=kermit -rl /t3^M            kermit ascii receive
  170. RXM=xydown^M                    xmodem receive
  171. RXK=xydown^M                    xmodem 1K receive 
  172. RYM=xydown^M                    ymodem receive
  173. RZM=rz^M                        zmodem receive
  174. RCB=bplus                        CIS-B+ receive
  175. SKB=kermit -sil /t3                kermit binary send    
  176. SKA=kermit -sl /t3                kermit ascii send
  177. SXM=sz -X                        xmodem send
  178. SXK=sx -k                        xmodem 1k send
  179. SYM=sb                          ymodem send
  180. SZM=sz                          zmodem send
  181. SCB=bplus                        CIS-B+ send
  182. EDT=umacs                        user specified editor
  183. CAP=la_log                        default log capture filename
  184. SHL=sh -nlh=20                    shell 
  185. LST=less                        user specified list program 
  186. MAC=/dd/sys/scripts                script file location
  187. DIR=/dd/temp                    working directory
  188. INI=ATZ0^M                        modem initialization string
  189. HNG=+++~ATH^M                    hang-up string
  190. AL0=whatever you want^M            user definable macros
  191. AL1=                             "        "        "
  192. AL2=
  193. AL3=
  194. AL4=
  195. AL5=
  196. AL6=
  197. AL7=
  198. AL8=
  199. AL9=
  200.  
  201.  
  202. Parsing requires that no spaces be present around = sign.  All the file
  203. transfer protocols have a 30 character limit.  EDT and LST are limited
  204. to 10 characters.  SHL, CAP, MAC, DIR have a 20 character limit.  User
  205. definable macros Al0-9 and INI have a 40 character limit.  These sizes
  206. are also detailed in la.sys. The use of ^M forces carriage return append.
  207. Trailing spaces should be added where appropriate (e.g. after send
  208. transfer protocols). A tilde ~ can be used to insert 1 second pauses in
  209. the hang-up string.
  210.  
  211.  
  212. 5. Script Files
  213. ---------------
  214.  
  215. The script files are designed to link with the supplied autodialer (LaDial).
  216. The linkage requires knowledge of the entry number as provided in the
  217. dial.sys file.
  218.  
  219. Format of script files:
  220.  
  221. #n                            <- entry number n from dial.sys
  222. %n                            <- wait n seconds (range 1-9)     
  223. ^C                          <- Send control character e.g. ctrl-C
  224. ~<CR>                        <- Wait for string after tilde ~
  225. logon^M                        <- carriage return must be forced
  226.  
  227. ;OPEN logfile                 <- capture file "logfile" (or default) open
  228. ;STOP                        <- capture file closed
  229. ;WAIT                        <- capture file paused
  230. ;CONT                        <- continue capture
  231. ;TRAN filename                <- ascii transmit file
  232. ;BLON                        <- turn on blind mode
  233. ;BLOF                         <- turn off blind mode
  234. ;HANG                        <- hangup
  235. ;SEND:n file1 file2...        <- send using menu option n (e.g. n=3:xmodem)
  236. ;RECE:n                        <- receive (e.g. n=6:zmodem)
  237. ;IDLE:n                        <- suspend script execution until modem input
  238.                                 has stopped for at least n seconds (n=1-9)
  239.  
  240. First column identifiers:
  241.  
  242. (~) The tilde precedes a string to be searched.
  243. (%) The percent sign precedes a time delay in seconds.  
  244. (#) The pound sign precedes the entry number to dial.  
  245. (^) The carot represent CTRL, 1 control character per line. 
  246. (;) The semicolon provides miscellaneous features.  
  247.  
  248. Multiple log files are implemented. 
  249. If no identifier is present in the first column, the string is sent.
  250.  
  251. Remarks:
  252. -------
  253. o    Mouseclick aborts dial. 
  254.  
  255. o    Keyboard input aborts macro execution.  
  256.  
  257. o    Searching should be used when a substantial delay in reception is
  258.     likely to occur. For cases where the wait is no longer than a couple
  259.     seconds, a pause will work best. This is due to immediate buffered input 
  260.     data which doesn't get searched for the matching pattern. Search patterns
  261.     are best kept short. 
  262.  
  263. o    identifier lines must have carriage returns right after the last letter,
  264.     spaces may cause errors. 
  265.  
  266.  
  267. 6. Implicit Functions:
  268. ---------------------
  269.  
  270. o    box in upper left hand corner: same as Quit
  271.  
  272. o    click on blank portion of menu bar: clears/resets screen
  273.  
  274. o    rts/cts is used by default to control flow
  275.  
  276. o    default setup: 8-N-1 2400 bps, hardware handshake set to current driver
  277.     setting, echo off, log file off, default terminal environment. 
  278.  
  279. o    capture file has ~4K buffer
  280.  
  281. o    subsequent uses of "la.log" file will cause overwrite, so user will
  282.     need to rename it before or after use.
  283.  
  284. o    if serial read errors occur, a beep is sounded.
  285.  
  286. o    short key options are available as depicted with underlined menu characters
  287.     as well as in help display.
  288.  
  289. o    carrier detect starts the on-line clock in hours:minutes, loss of carrier
  290.     turns the clock off.
  291.  
  292.  
  293. 7. Conference Mode:
  294. ------------------
  295.  
  296. The conference mode option starts up a separate process in a separate
  297. window.  Therefore, changing window will cause the conference window to
  298. disappear.  It will reappear by reselecting it.  The conference mode
  299. opens a separate path to the modem port and will stay active even after
  300. exiting from LaTerm.  Conference mode is toggled via the access menu or
  301. the short cut key press.  The short cut key is only active when the main
  302. screen is selected.  Then reset the screen work area by clicking on the
  303. menu bar. 
  304.  
  305. Attention:
  306. ---------
  307.  
  308. Since conference mode changes the working area, if the cursor is at the
  309. screen bottom, screen output will get trapped outside of the working
  310. area.  This can be avoided by simply clearing the screen prior to
  311. conference mode.  It was not desired to force a screen clear and cursor
  312. return to home (i.e. top of screen), in order to provide more flexibility.
  313.  
  314.  
  315. 8. Automation
  316. -------------
  317.  
  318. Since script files can be assigned on startup from the command line, automated
  319. operation is implementable. Cron provides the ability to start operation
  320. at any time and date according to definitions in the crontab file.
  321.  
  322. The following is an example crontab file (/dd/sys):
  323.  
  324. 30 23 * * * setenv MODEM /t3;setenv LAPLAY bell;cx /h1/c/cmds;LaTerm -s cis
  325.  
  326. This entry autostarts LaTerm any day at 11:30 pm and LaTerm executes
  327. script file 'cis'. Note that since cron start a new shell, you may have
  328. to pass environment settings for both LaTerm and LaDial. 
  329.  
  330.  
  331. 9. Status Bar
  332. -------------
  333. The status bar provides current configuration and status information. 
  334. From left to right the display information includes:
  335.  
  336. /t3 2400 8N1 | Echo | RTS/CTS | Log:la_log Off | (Blind) (Confer) 00:00:00 
  337.                                                   ^        ^        ^
  338.                                                 blind, conference modes &
  339.  ^     ^      ^        ^        ^            ^        ^        time online
  340.  |   |      |        |        |            |         \_ log file status
  341.  |   |      |        |        |              \_ log file name (1st 10 characters)
  342.  |   |      |        |         \_ handshake status (RTS/CTS or XON/XOFF)
  343.  |   |      |         \_ terminal echo status
  344.  |     |       \_ word length/parity/stop bits
  345.  |      \_ bps
  346. port
  347.  
  348. When switching to another screen, upon return the status bar will not
  349. reappear.  In such instances, if needed, simply sweep the mouse pointer
  350. across the top line. 
  351.  
  352.  
  353.  
  354. 10. Tips:
  355. --------
  356.  
  357. o    LaTerm bumps its priority up to 140 on startup, this appears to be
  358.     sufficient in most cases.  
  359.  
  360. o     Use moded to increase the input and output buffer sizes for the serial ports
  361.     that you plan on using. A 1024 byte size seems to work well on both input 
  362.     and output buffers. Some users have better throughput with input set at 
  363.     2048.
  364.  
  365. o    Communication speeds at 9600 baud and above are difficult for the screen to 
  366.     keep up with. So for capturing message bases and text on the fly, use
  367.     the "Blind" mode. This way incoming data is dumped straight to a file
  368.     minimizing loss of data. Simply monitor RD modem status and turn the
  369.     blind mode off when no more data is coming in.
  370.  
  371. o    For high speed communication, if possible use a port that supports RTS/CTS
  372.     hardware flow control. Furthermore, most high speed modems will buffer
  373.     incoming data if configured accordingly - look for DCE flow control
  374.     options (on my modem this is \G1).
  375.  
  376.  
  377. 11. Registration:
  378. ----------------
  379.  
  380. To register your copy and receive the next update, send $35 (payable to author)
  381. to:
  382.  
  383. Tantricom
  384. c/o    Alan Weston 
  385. RR2 Box 322-W
  386. Carbondale, IL 62901
  387.  
  388. For support:
  389.  
  390. Internet:        weston@sysa.c-engr1.siu.edu
  391. Delphi:            ALWESTON
  392. Compuserve:        76234,3500
  393.  
  394.  
  395. 12. Technical Detail
  396. --------------------
  397.  
  398. On startup LaTerm boosts the process priority to 140, this helps to
  399. reduce lost characters.  Configuration information is gathered from
  400. /dd/sys/la.sys and DIR is adopted as current directory. 
  401.  
  402. The signal handler deals with mouse signals as well as others. The
  403. signals encountered are: carrier signals, alarm signals, as well as some
  404. feedback from LaDial.
  405.  
  406. Port settings that are conserved on startup include: parity, whereas
  407. baud is reset to 2400.  Term settings that are conserved on startup
  408. include: parity and baud. Xon and Xoff signals are reset. The RTS line
  409. is enabled by default. If hardware handshaking is enabled and the port
  410. is iniz'ed, errors will occur during RTS/CTS enable/disable operations
  411. within LaTerm -- this shouldn't be a problem. LaTerm is designed to
  412. operate with a port that hasn't been initialized.
  413.  
  414. The conference mode is handled by an external routine which makes use of
  415. a named pipe for communication with LaTerm. The program confer simply
  416. takes user input and then dumps it in /pipe/confer. LaTerm then monitors
  417. the pipe to see if data is available, etc. 
  418.  
  419. In this incarnation LaTerm forks confer/list/edit and creates an orphan. 
  420. These processes remain on the LaTerm's linked list of process
  421. descriptors thus filling up the process table.  For right now this is
  422. considered better than waiting until the child terminates. 
  423.  
  424. Furthermore, during LaDial access if LaTerm receives a signal (e.g.  a
  425. mouse click) LaDial will become an orphan and I/O during dialing will be
  426. disrupted. 
  427.  
  428.