home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 225.lha / JrComm_v.91 / jrcomm.doc < prev    next >
Text File  |  1989-04-04  |  42KB  |  1,165 lines

  1. Preliminary documentation for JR-Comm 0.91
  2. ------------------------------------------
  3.  
  4. NOTE!  -  Please read bugs.txt & changes.txt for the latest information,
  5.          this doc file does NOT reflect any of the changes in these two
  6.          text files.
  7.  
  8.          Also!  Use the jrupdate utility prior to running this version if
  9.          you have existing phonebook, def or macros files.
  10.  
  11.  
  12.  
  13.                             COPYRIGHT NOTICE
  14.  
  15.  
  16. JR-Comm is Copyright (C) 1988, 1989 by John P. Radigan
  17. All Rights Reserved.
  18.  
  19. This document is Copyright (C) 1989 by John P. Radigan
  20. All Rights Reserved.
  21.  
  22.  
  23.  
  24.  
  25.                                Disclaimer
  26.  
  27. No warranty, either express or implied, is made with respect to the
  28. fitness or merchantability of JR-Comm.
  29.  
  30.  
  31.  
  32.  
  33.                             Acknowledgements
  34.  
  35. Thanx Manx, for giving me a nice environment to work with, Aztec 3.6
  36. w/sdb.
  37.  
  38. Gimpel Software for Amiga Lint.
  39.  
  40. Daniel M. Lawrence, MicroEMACS 3.10.
  41.  
  42. Russ Ranshaw for his CompuServe B Plus protocol document.
  43.  
  44. Peter Boswell for his WXMODEM protocol document.
  45.  
  46. Chuck Forsberg for his X/YMODEM and ZMODEM protocol specifications and
  47. for his public domain rz.c, sz.c & zm.c source files, it took a bit of
  48. work figuring out what he did, but it was well worth it!
  49.  
  50. Paul Resch for his BPLUS.C source file, converted from the Pascal source
  51. BPLUS.PAS by Russ Ranshaw.
  52.  
  53. Charlie Heath for getfile.c, didn't use it, but it did show me the
  54. anatomy of how a file requester works.
  55.  
  56. Tony Sumrall & Dave Wecker for the VT100 sources, my basis for learning
  57. how a comm program functions.
  58.  
  59. Mark G. Mendel for his CRC-16 data table.
  60.  
  61. Gary S. Brown for his CRC-32 data table.
  62.  
  63. My trio of faithful beta testers, Jim Burwell, Wayne Hackney and Bruce
  64. Schoenberger. Sorry for that damn guru guys...
  65.  
  66. And lastly, the various commercial and otherwise telecomm programs that
  67. are available for the Amiga, you gave me something to shoot for...
  68.  
  69.  
  70.  
  71.  
  72.                               INTRODUCTION
  73.  
  74.  
  75.  
  76. 1.1  Overview.
  77.  
  78. Welcome to the preliminary release of JR-Comm, a telecommunications
  79. tool for the Amiga series of personal computers.  
  80.  
  81. Present features available:
  82.  
  83.  - XMODEM, XMODEM-1k, WXMODEM, YMODEM, YMODEM-g, ZMODEM, CIS B+ and
  84.    ASCII file transfer protocols are included.  All file transfers
  85.    adhere strictly to the appropriate specifications and provide
  86.    throughput figures exceeding most other communications programs
  87.    available for the Amiga.
  88.  
  89.  - A phonebook that can store an almost limitless number of directory
  90.    entries(dependant on available memory).  Each entry contains all the
  91.    options available to completely re-configure JR-Comm, not just name,
  92.    number and serial port parameters.
  93.  
  94.  - Optionaly generate a unique password for each directory entry.
  95.  
  96.  - An intelligent dialer that monitors the results of each attempt and
  97.    is capable of multiple entry dialing.
  98.  
  99.  - A very powerful file requester that maintains several lists of files,
  100.    devices and directories.  During a batch protocol selection it enables
  101.    you to select files from any number of directories in a simple manner.
  102.  
  103.  - An almost 100% complete IBM ANSI terminal emulation.
  104.  
  105.  - Chat mode with line editing and history.  Review buffer, function key
  106.    macros.  Session capture with filters.  Session log.
  107.  
  108.  
  109.  
  110. 1.2  System requirements.
  111.  
  112. JR-Comm can be run on any Amiga with as little as 512k of system ram.
  113. The 16 color screen mode requires about 300k of ram in order for the
  114. various requesters to be opened.  If you're tight on free memory use the
  115. Workbench or 2 color screen to keep memory requirements below 225k.
  116.  
  117. Although any Hayes compatible modem will work with JR-Comm, some of the
  118. more advanced features of JR-Comm are available if your modem has a
  119. functional carrier detect signal.  An optional method of hanging up the
  120. modem can be used if your modem will disconnect when the DTR signal is
  121. dropped.
  122.  
  123. JR-Comm also supports high-speed modems via CTS/RTS handshaking so that
  124. the increased throughput they are capable of with MNP and fixed data
  125. link speeds between modem and computer can be obtained.  Tests have been
  126. run with a MultiTech 224 EH and US Robotics HST modem to date.
  127.  
  128.  
  129.  
  130. 1.3  Default files and paths.
  131.  
  132. When JR-Comm is first started, it will determine the default path for
  133. certain files that JR-Comm uses for initial settings.  It first trys
  134. to locate the logical directory JRCOMM:, if that is not present it will
  135. set the default path to the S: directory.
  136.  
  137. JR-Comm will then try to locate the following files, if they exist in the
  138. current directory they will overide any that are found in the default path.
  139.  
  140.    jrcomm.def    - User defined default parameters file.
  141.    jrcomm.macros - Function key macros file.
  142.    jrcomm.phones - Phonebook file.
  143.    jrcomm.log    - Session logfile.
  144.  
  145. If the jrcomm.def file isn't located JR-Comm will use an internal set of
  146. default settings for initial operation.
  147.  
  148.  
  149.  
  150. 1.3.1  Filename creation.
  151.  
  152. JR-Comm adds one of five postfixes to a filename after it has been
  153. entered in a string gadget.  These postfixes are:
  154.  
  155.                   .def    - Defaults file.
  156.                   .macros - Macros file.
  157.                   .phones - Phonebook.
  158.                   .log    - Session log.
  159.                   .cap    - Capture file.
  160.  
  161. The appropriate string gadget will be immediately updated, except when
  162. using the file reqester but, the filename will be updated after the file
  163. requester has been closed.  JR-Comm will determine if the filename already
  164. has the proper extension, if it does, it will not append another.
  165.  
  166.  
  167.  
  168. 1.4  The display.
  169.  
  170. The default display used is a borderless Workbench window.  Although not
  171. visible, there is the usual front/back gadget pair in the upper right
  172. corner of the window.
  173.  
  174. Optional displays are borderless windows on a 2, 4, 8 or 16 color custom
  175. screen.  When using a custom screen there are no front/back gadgets
  176. available.  There is a menu item which will puch the JR-Comm custom screen
  177. to the back of the Amiga display when selected.  This item will also move
  178. the Workbench window version of JR-Comm to the back too.
  179.  
  180. The colors used are set to the normal IBM color palette of BLACK, RED,
  181. GREEN, YELLOW, BLUE, MAGENTA, CYAN and WHITE.  The reason a 16 color
  182. screen is available is because of the high-intensity attribute
  183. available for each of the eight colors.  The colors are arranged in an
  184. order that is different from the IBM version, this was done so that an
  185. acceptable color scheme could be used for all of the screens available.
  186.  
  187. The blinking character attribute of the IBM display is rendered as a
  188. bold character in this emulation.
  189.  
  190. An option is provided for the user to select the text and background
  191. colors of the display from the current palette without changing the
  192. palette itself.
  193.  
  194. An ibm.font file is included so that the complete IBM character set can
  195. be used to complete the IBM ANSI emulation.
  196.  
  197. The blinking underline curor is implemented as a screen sprite.  When
  198. the JR-Comm display is pushed to the back the cursor will still be visible
  199. until another window is activated.  The cursor only is visible while the
  200. JR-Comm window is active and no menus are present on the screen.  It is
  201. also turned off when a requester is displayed.
  202.  
  203.  
  204.  
  205. 1.4.1  Display limitations.
  206.  
  207. At rates above 2400 baud you may experience "lost" data with the 16
  208. color screen display.  This screen uses a substantial amount of cpu time
  209. and leaves little for the 68000 to keep up with continuous streams of
  210. incoming data.
  211.  
  212.  
  213.     
  214.                             GETTING STARTED
  215.  
  216.  
  217.  
  218. 2.1  First time users.
  219.  
  220. Prior to running JR-Comm for the first time you must install the IBM
  221. character font.  First create a directory labled "ibm" in your FONTS:
  222. directory with the following command at the CLI.
  223.  
  224.                            makedir FONTS:ibm
  225.  
  226. Next, place the two font files from the JR-Comm archive file in the
  227. FONTS: directory with these following commands.
  228.  
  229.                            copy ibm.font FONTS:
  230.                            copy 8 FONTS:ibm
  231.  
  232. If you wish to assign JRCOMM: to a specific directory you should modify
  233. your Startup-sequence file located in the S: directory by adding the
  234. following command.  If you do not wish to re-boot your machine before
  235. running JR-Comm you should also enter this command from the CLI at this
  236. time. 
  237.  
  238.                            assign JRCOMM: "pathname"
  239.  
  240. Replace "pathname" with the directory name you are going to use.  Floppy
  241. disk based users may wish to label a formatted disk with "JRCOMM" to
  242. achieve the same result.  The command to do this would be.
  243.  
  244.                            label drive df0: name "JRCOMM"
  245.  
  246. DF0: was only used as an example, you may want to do this from a
  247. different drive.  Also, notice that the ':' character was not used in
  248. the name "JRCOMM".
  249.  
  250.  
  251.  
  252. 2.2  Initial startup meassages.
  253.  
  254. After JR-Comm starts up it will display a copyright notice and some
  255. system information about what it is using for parameters.  If no
  256. carrier detect signal was present it will also send a standard Hayes
  257. compatible initialization string to the modem.  A blinking underline
  258. cursor will then indicate that JR-Comm is now ready for operation.
  259.  
  260.  
  261.  
  262. 2.3  The status line.
  263.  
  264. The 25th line of the display defaults as a status line.  At the extreme
  265. right is a time-of-day clock. In 12 hour format it has a blinking colon
  266. indicating seconds and an am/pm indicator.
  267.  
  268. To the immediate left of the time-of-day clock is a connect timer which
  269. will begin counting once the carrier detect signal goes high after the
  270. modem connects to a remote system.  If the timer is counting when not
  271. connected please read the following section about setting your modem.
  272.  
  273. To the left of the connect timer is a list of current settings for
  274. transfer protocol and serial port settings.  See below for what each
  275. character refers to.
  276.  
  277.                            X FN 8N1 2400
  278.                            | || |||  |
  279.                            | || |||  +----- Baud rate
  280.                            | || ||+-------- Stop bits
  281.                            | || |+--------- Parity
  282.                            | || +---------- Data bits
  283.                            | |+------------ Handshake
  284.                            | +------------- Duplex
  285.                            +--------------- Protocol
  286.  
  287. The left portion of the status line is used to display the filename of
  288. where data is currently being captured to or, which file is being used
  289. for the ASCII send function.  It is also used while the chat mode is
  290. active, please see the chat mode section for more detailed information.
  291.  
  292.  
  293.  
  294. 2.4  Modem setup.
  295.  
  296. If your modem has the carrier detect signal permanently asserted it
  297. will make the connect timer start counting immediately after JR-Comm is
  298. started.  If it is possible to set your modem to make carrier detect
  299. function normally you should do so now.  Most Hayes compatible 2400 bps
  300. modems can use the following command to set modem so that the carrier
  301. detect signal functions normally, it then writes the modem parameters
  302. to non-volatile ram so that it will remain that way.
  303.  
  304.                            AT&C1&W
  305.  
  306. Please check your user manual for the modem to insure that this command
  307. will work, you may find that a switch may have to be changed instead of,
  308. or in addition to, the above command.
  309.  
  310. If you cannot turn off the carrier detect signal you should deactivate
  311. JR-Comm from sensing it by turning the ignore button on in the modem
  312. requester.
  313.  
  314.  
  315. 2.4.1  MNP modems.
  316.  
  317. In order to use an MNP modem properly for maximizing the throughput they
  318. are capable of delivering, you need to set JR-Comm and the modem to a
  319. fixed baud rate that is usually 2 to 4 times greater than the connection
  320. rate between the two modems.
  321.  
  322. Since the Amiga is sending data at a rate higher than the modem can send
  323. down the phone line some sort of handshaking must be used so that the
  324. internal buffer inside the modem does not overflow.  Most often, the
  325. kind of handshaking used is hardware, or CTS/RTS handshaking.
  326.  
  327. The serial device the Amiga uses has an oddity in that it requires the
  328. DSR signal to be active when it is first opened, or it won't set CTS/RTS
  329. handshaking active.  the trouble is that most MNP modems default to have
  330. the DSR signal follow the carrier detect signal.  Fortunately, they almost
  331. always have a command and/or switch to permanently set DSR active. 
  332. Please set your MNP modem to keep DSR high if you intend to use CTS/RTS
  333. handshaking.
  334.  
  335.  
  336.  
  337.  
  338.                        THE JR-COMM FILE REQUESTER
  339.  
  340.  
  341.  
  342. 3.1  YAFR...
  343.  
  344. Yes, Another File Requester... Why?
  345.  
  346. Well simply put, it was needed for one reason, selecting multiple
  347. files for batch transfers. But, the big difference here is that this
  348. requester gives you the ability to select files from multiple
  349. directories and/or volumes too!
  350.  
  351.  
  352.  
  353. 3.2 Functional description.
  354.  
  355. The file requester opens up in one of two modes as indicated in the
  356. title.  One mode is a "SINGLE FILE REQUEST", which will allow you to
  357. select only one file at a time.  The other mode is the "BATCH FILE
  358. REQUEST", which allows you to select any number of files.
  359.  
  360. The requester also creates five seperate lists that you can look at to
  361. select files or change directories with.  The rectangle in the upper
  362. left corner labled as "Display:" shows which one of the five lists is
  363. currently being displayed.  The five lists are:
  364.  
  365.   Files       - The files of the current directory, selected files will
  366.                 be displayed in inverse video.
  367.  
  368.   Devices     - The list of devices available to AmigaDOS.
  369.  
  370.   Directories - Logical, or assigned directories.
  371.  
  372.   Volumes     - Floppy and hard disk volume names.
  373.  
  374.   Selected    - The current list of user selected files.  Files selected
  375.                 by the mouse when this list is displayed will be removed
  376.                 from the selection list.
  377.  
  378. The "PARENT" gadget will change the current directory to the parent
  379. directory.  The current directory is displayed in the string gadget
  380. immediately below, which is labled "Drawer:",  it will also change
  381. the current directory if a pathname is entered in it.
  382.  
  383. The large rectangle is the familiar Amiga-like file selection array, it
  384. can display up to 15 files and/or directories at a time.  Directories
  385. will be prefixed with a "(dir)" string to indicate that it is the name
  386. of a directory not a file.  The righthand side of the rectangle shows
  387. the size in bytes of each file.
  388.  
  389. Below the selection rectangle there are two size indicators.  The one on
  390. the left, labeled as "Free:", shows the amount of free space left on the
  391. current device that the current directory is apart of.  The right side
  392. shows the total number of bytes bytes for all of the files that have
  393. been selected.
  394.  
  395. To the left of the selection rectangle is the proportional scroll gadget
  396. which enables the user to scroll through a list of filenames.  The
  397. "knob", or smaller rectangle inside the scroll gadget is sized to
  398. indicate how much of the list is displayed by the selection rectangle at
  399. any one time.
  400.  
  401. The next gadget down is the string gadget labled "File:", depending on
  402. the function that opened the requester, it can already contain a
  403. filename for possible selection by the user.
  404.  
  405. The last two gadgets are the "OK" and "CANCEL" gadgets.  The "OK" gadget
  406. will return to the calling function with a list of the selected files or
  407. the oen filename is it was opened as a "SINGLE FILE REQUEST".  The
  408. "CANCEL" gadget will return with a null list indicating no file(s) were
  409. selected. 
  410.  
  411.  
  412.  
  413.                             THE PROJECT MENU
  414.  
  415.  
  416.  
  417. 4.1  Phone directory.
  418.  
  419. The phone directory resembles the file requester as far as the selection
  420. rectangle and scroll gadget, but that is where it ends.
  421.  
  422. The "ADD" gadget will allow you to add a phone directory entry.  The
  423. "EDIT" gadget will let you edit the last entry selected in the
  424. selection rectangle.  The "DELETE" gadget removes an entry, like the
  425. edit feture though, only the last entry that was selected.
  426.  
  427. The directory entry requester has string gadgets for the name, phone
  428. number, optional macros file, optional capture file and password
  429. definitions. 
  430.  
  431. Four button gadgets define which, if any, of the dialing prefixes you
  432. wish to use for dialing.  See the modem requester section for further
  433. information on the dialing prefixes.
  434.  
  435. The "LOAD and "SAVE" gadgets do the expected for the phone directory.
  436.  
  437. The string gadget labled "Master password:" contains the character
  438. string that is used by JR-Comm to generate passwords for each directory
  439. entry if you want one.
  440.  
  441.  
  442.  
  443. 4.1.1  The directory entry requester.
  444.  
  445. The directory entry requester is accessed either by selecting the "ADD"
  446. gadget to create a new entry, or by selecting "EDIT" to edit an existing
  447. directory entry.
  448.  
  449. The Name and Number string gadgets should be filled with the appropriate
  450. information for the desired entry.
  451.  
  452. The Macros and Capture string gadgets are optional, if a filename for
  453. the Macros entry is filled in this allows you to select the "Macros"
  454. gadget in the bottom row to define the function key macros for this
  455. entry.  If the Capture string gadget is filled in then a capture file
  456. will be opened in append mode after the dialer completes a connection
  457. for this entry.  Please see the section on filname creation.
  458.  
  459. Four other buttons are used in conjunction with the string gadget
  460. labled "Length:" to define what type of password you desire.  The
  461. "Length" string gadget instructs JR-Comm how many characters to
  462. generate for the password.  The first button, labled "Fixed" will let
  463. you enter a password in the string gadget which won't be modified by
  464. JR-Comm when you close the requester.  The other three buttons,
  465. "Alpha", "Numeric" and "Alphanumeric" define what type of password will
  466. be generated by JR-Comm when the requester is closed. The generated
  467. password will be placed in the password string gadget and "Fixed"
  468. button will then be set so that the password won't be changed until you
  469. wish to by doing an edit of the directory entry. 
  470.  
  471. The row of gadgets along the bottom allow you to select the various
  472. parameter requesters to tailor the entry for the system you are
  473. entering.
  474.  
  475. The "CANCEL" gadget will either cancel a new directory entry or an edit.
  476.  
  477.  
  478.  
  479. 4.1.2  The phone dialer.
  480.  
  481. JR-Comm is capable of multi-dialing any number of directory entries,
  482. just select the ones you want dialed and then select the "DIAL" gadget
  483. in the phone direcotry.
  484.  
  485. The dialer is controlled by three parameters in the modem requester,
  486. number of retries, dial timeout and redial delay.  The number of
  487. retries defaults to 15 and applies to each entry that is selected when
  488. the dialer is called.  The dial timeout refers to how many seconds the
  489. dialer will wait for a connection after dialing, it defaults to 30
  490. seconds.  The redial delay is also in seconds, defaults to 60 and is
  491. the amount of wait time at the end of the list before restarting again.
  492.  
  493. The dialer has some additional intelligence built-in besides checking
  494. for modem "BUSY" responses.  If three "NO DIALTONE" responses are
  495. received from the modem, the dialer will halt.  It will also remove an
  496. entry from the selected list if a "VOICE" response is received or if
  497. three "NO CARRIER" responses have been received for that entry.
  498.  
  499. When a connection is made the entry is removed from the selected list so
  500. that it will be passed over when the dialer is called again.  If a
  501. macros file was defined for this directory entry it will be loaded.  If
  502. a capture file was defined it will be opened in append mode.  Any other
  503. parameters will be set if required prior to returning to terminal mode.
  504.  
  505.  
  506.  
  507. 4.2  Hangup modem.
  508.  
  509. Will hangup the modem either by sending the hangup command string as
  510. defined in the modem requester or, by dropping the DTR signal to the
  511. modem if the DTR gadget is active in the modem requester.  The default
  512. is to send the hangup command, which is initially set to the Hayes
  513. compatible "~~~+++~~~ATH1^M" string.  See the section on special
  514. character definitions for modem and other commands that are sent out of
  515. the serial port.
  516.  
  517.  
  518.  
  519. 4.3  Modem break.
  520.  
  521. Sends a break signal out the serial port for a length specified by the
  522. gadget in the serial requester.  Default is 250,000 microseconds.
  523.  
  524.  
  525.  
  526. 4.4  Send password.
  527.  
  528. After the dialer has connected to a system, the password in the
  529. directory entry that was connected to will be sent to the modem when
  530. this item is selected.
  531.  
  532.  
  533.  
  534. 4.5  Timer reset.
  535.  
  536. Resets the connect timer located in the status line.
  537.  
  538.  
  539.  
  540. 4.6  Load defaults.
  541.  
  542. Load a default parameters file.  The file requester will be initialized
  543. to the filename which is in the general parameters requester.
  544.  
  545.  
  546.  
  547. 4.7  Write defaults.
  548.  
  549. Writes the currently set parameters to a defaults file.
  550.  
  551.  
  552.  
  553. 4.8  Clear screen.
  554.  
  555. Clears the screen.  The same effect as a <CTRL>-L character or ANSI
  556. sequence of <ESC>[2J.
  557.  
  558.  
  559.  
  560. 4.9  Screen to back.
  561.  
  562. Moves the JR-Comm display to the back so that you can access another window.
  563.  
  564.  
  565. 4.10  About JR-Comm.
  566.  
  567. Posts a little blurb about JR-Comm.
  568.  
  569.  
  570.  
  571. 4.11  Exit.
  572.  
  573. As expected, terminates the current JR-Comm session. Closes any open
  574. files prior to ending.
  575.  
  576.  
  577.  
  578.                               BUFFER MENU
  579.  
  580.  
  581.  
  582. 5.1  Kill buffer
  583.  
  584. Empties the review buffer, this does not affect the capture of data
  585. which is kept in a seperate internal buffer.
  586.  
  587.  
  588.  
  589. 5.2  View Buffer
  590.  
  591. Places JR-Comm in review mode.  If the status line is enabled it will
  592. display a message indicating the review mode is active.  When the review
  593. first starts it will fill the screen with the most recent data received.
  594. The review buffer is controlled by the following key sequences.
  595.  
  596.          <ctrl><up> - move to the beginning of the buffer.
  597.         <shift><up> - move up 24 lines.
  598.                <up> - move up one line.
  599.  
  600.        <ctrl><down> - move to the end of the buffer.
  601.       <shift><down> - move down 24 lines.
  602.              <down> - move down one line.
  603.  
  604.               <esc> - end review mode, return to the terminal.
  605.  
  606.  
  607.  
  608. 5.3  Open capture
  609.  
  610. Opens a file for data capture.  Any data currently in the review buffer
  611. will be immediately transfered to the capture file.  Further data is
  612. seperately buffered in an internal 2k buffer.  See the section on
  613. terminal parameters for the capture filters that are available.
  614.  
  615.  
  616.  
  617. 5.4  Close capture
  618.  
  619. Closes the capture file after writing any unsaved data.  When a JR-Comm
  620. session is ended the capture file will be closed if currently open.
  621.  
  622.  
  623.  
  624. 5.5  Append capture
  625.  
  626. Append data to an existing file.  The operation will also save the
  627. current contents of the review buffer to the appended file the same as
  628. an open capture operation mentioned above.  The most recently used
  629. capture filename will be placed in the filename string gadget of the
  630. file requester when it is first opened.
  631.  
  632.  
  633.  
  634.                             TRANSFERS MENU 
  635.  
  636.  
  637.  
  638. 6.1  Parameters requester.
  639.  
  640. This requester contains all the options available for the file transfers
  641. available in JR-Comm.
  642.  
  643.  
  644.  
  645. 6.1.1  Protocols.
  646.  
  647. All the file transfer protocols in use by JR-Comm strictly adhere to the
  648. specifications outlined in the various documents that are available for
  649. each protocol.  The following is a short description of the protocols
  650. available.
  651.  
  652.     CIS B+ - CompuServe's B+ file transfer protocol.
  653.  
  654.    WXMODEM - A variant of the XMODEM protocol which give better
  655.              throughput perfomance over packet switched networks. This
  656.              protocol is quite popular on the PeopleLink information
  657.              service. 
  658.  
  659.     XMODEM - The original XMODEM checksum protocol was created by Ward
  660.              Christensen back in 1977.  Since then it has been modified
  661.              for better error correction by using an optional 16 bit CRC
  662.              polynomial.  JR-Comm will automatically attempt the CRC
  663.              type transfer first and "step down" to the original
  664.              checksum version if it's not recognized.
  665.  
  666.  XMODEM-1k - Another variation of XMODEM, this one uses 1,024 byte
  667.              packets which gives higher throughput than the original
  668.              XMODEM protocol.
  669.  
  670.     YMODEM - This is TRUE YMODEM, which is a batch transfer protocol.
  671.              The filename, date and file size are transfered in a
  672.              seperate header block at the beginning of each file
  673.              that is transfered.  This protocol also preserves the
  674.              correct file size, the other XMODEM protocols above pad
  675.              characters at the end of the file.
  676.  
  677.   YMODEM-g - This variation of YMODEM is intended for error correcting
  678.              modems, like those that use MNP error correction. Because
  679.              this protocol does no error checking the file is transfered
  680.              with little delay and can achieve some of the highest
  681.              throughput of any of the protocols listed here.
  682.  
  683.     ZMODEM - This is one of the newest and most powerful protocols
  684.              available.  It is capable of batch transfers, automatically
  685.              initiated downloads, 32 bit CRC error checking, and a
  686.              unique ability to resume a transfer that had been partially
  687.              completed.  JR-Comm supports one of the most complete
  688.              implementations of the ZMODEM protocol as defined by the
  689.              specification document written by ZMODEM's author, Chuck
  690.              Forsberg. 
  691.  
  692.  
  693.  
  694. 6.1.2  Miscellaneous parameters.
  695.  
  696.    Save aborted - Determines if a file is saved or deleted if the
  697.                   transfer is aborted.
  698.  
  699.  Relaxed timing - Set this gadget if a file transfer fails or gets an
  700.                   excessive number of timeouts.  Useful for packet
  701.                   switched networks.
  702.  
  703.       Auto chop - WXMODEM, XMODEM & XMODEM-k pad data to the last block
  704.                   of a file transfer.  This feature will attempt to
  705.                   remove this data from a binary file only.  
  706.  
  707.      GMT offset - This numeric string gadget contains the positive or
  708.                   negative offset of local time to Greenwich Mean Time.
  709.                   Eastern Standard Time would be expressed with the
  710.                   value -5.  This is used in YMODEM and ZMODEM transfers
  711.                   so that the true file date can be preserved.
  712.  
  713.  
  714.  
  715. 6.1.3  ASCII send parameters.
  716.  
  717.    Expand blanks - If this gadget is selected then any lines in the
  718.                    ASCII file which are completely blank will have a blank
  719.                    character sent prior to sending the newline character.
  720.                    Some online text editors will stop accepting input if
  721.                    a newline is entered by itself, this option prevents 
  722.                    that from occuring.
  723.  
  724.      Prompt char - Instructs JR-Comm to wait after transmitting a line
  725.                    of text for a specific character before sending the
  726.                    next line.
  727.            
  728.       Char delay - A numeric value describing hundredths of seconds to wait
  729.                    between sending characters.
  730.  
  731.       Line delay - Like char delay above, tenths of seconds to wait
  732.                    between sending lines of text.
  733.  
  734.  
  735.  
  736. 6.1.4  Transfer mode.
  737.  
  738. Determines if a file transfer will be done as pure binary without any
  739. end-of-line conversions or, in text mode, and end-of-line conversion 
  740. will be processed as per the settings in the terminal requester for
  741. end-of-line in and out.
  742.  
  743.  
  744.  
  745. 6.1.5  ZMODEM options.
  746.  
  747.       Resume transfer - If the requested file already exists JR-Comm
  748.                         will attempt to resume the file transfer. A
  749.                         check is made between JR-Comm and the remote
  750.                         system that the file to be resumed is shorter.
  751.                         If the file is not shorter the transfer will be
  752.                         aborted.
  753.  
  754.         Auto download - When this gadget is active it allows JR-Comm to
  755.                         start a ZMODEM download automatically.
  756.  
  757.    Auto d/l challenge - This feature, when selected, instructs JR-Comm
  758.                         to perform a challenge to the remote system so
  759.                         that it can determine if the remote really
  760.                         intended an automatic download to start.  This
  761.                         gadget is activated at the same time the auto
  762.                         download gadget is selected, but may be
  763.                         independantly de-selected in case a certain
  764.                         remote system does not support the challenge
  765.                         option.
  766.  
  767.     Escape ctrl chars - Instructs JR-Comm to do an escape of certain
  768.                         control characters that can interfere with the
  769.                         operation of packet-switched networks.
  770.  
  771.            32 bit CRC - Use the newer 32 bit CRC mode of error detection
  772.                         first, drops down to 16 bit version if the
  773.                         remote does not support it.
  774.  
  775.  
  776.  
  777. 6.1.6  ZMODEM send modes.
  778.  
  779. The following modes are applicable to a ZMODEM upload from JR-Comm only.
  780. They have no effect on a download, regardless of protocol used.
  781.  
  782.         Newer/longer - Transfer if the file is newer, longer or not
  783.                        present.
  784.  
  785.        CRC different - Transfer if file has a different CRC or is not
  786.                        present.
  787.  
  788.         Append files - Append data only if remote file is shorter than
  789.                        the file locally.  If the file is not present,
  790.                        create it.
  791.  
  792.      Overwrite files - Overwrite any files that are present.  Also
  793.                        called "clobber" mode.
  794.  
  795.    Protect all files - Protect all files unconditionally.
  796.  
  797.  
  798.  
  799. 6.2  Upload file.
  800.  
  801. Opens the file requester for selection of file(s) to be uploaded.  The
  802. terminal can still be accessed to converse with the remote system while
  803. the requester is open.  Pressing the "CANCEL" gadget will abort the
  804. upload attempt.
  805.  
  806. The status window displays the progress of the transfer and estimated
  807. time to complete the transfer.  The close window gadget will abort the
  808. transfer unconditionally.  There may be a short time lag from when the
  809. gadget is selected to when the window closes and getting returned to
  810. the terminal mode of JR-Comm.  This is due to JR-Comm attempting to
  811. flush the data stream of any left over data that may have been in
  812. transit during the transfer.
  813.  
  814.  
  815.  
  816. 6.3  Download file.
  817.  
  818. Same operation as with uploads mentioned above.  YMODEM and ZMODEM do
  819. not prompt for filenames since they are sent from the remote system
  820. during the transfer.
  821.  
  822.  
  823.  
  824. 6.4  ASCII send.
  825.  
  826. Opens the file gadget for selection of a file to do an ASCII send of. 
  827. The status line if present will display the filename while it is opened
  828. for transfer.  This is indicated by the filename prefixed by the '<'
  829. character.
  830.  
  831.  
  832.  
  833.                               OPTIONS MENU
  834.  
  835.  
  836.  
  837. 7.1  Serial parameters.
  838.  
  839. In addition to the standard settings for baud, parity, data and stop
  840. bits, you have gadgets that allow you to set handshake method and duplex
  841. type.  There is also a string gadget that lets you set the amount of
  842. time, in microseconds, a break signal will last.
  843.  
  844.  
  845.  
  846. 7.1.1  Handshaking.
  847.  
  848. The four types of handshaking, or flow control, are:
  849.  
  850.    XON/XOFF - Uses the XON and XOFF characters for flow control.
  851.  
  852.     CTS/RTS - Also known as hardware flow control, used mostly with high
  853.               speed and/or MNP modems that lock the baud rate between
  854.               computer and modem at a rate higher than the connect speed.
  855.  
  856.        Both - Use both XON/XOFF and CTS/RTS flow control together.
  857.  
  858.        None - Don't use any flow control.
  859.  
  860.  
  861.  
  862. 7.1.2  Duplex modes.
  863.  
  864. JR-Comm has three type of duplexing available, they are:
  865.  
  866.    Full - Used when the remote system echos a character it receives.
  867.  
  868.    Half - When a key is pressed it is displayed locally as well as sent
  869.           out the serial port.  If the remote system were to echo the
  870.           character you will see two of each character when a key is
  871.           pressed.
  872.  
  873.    Echo - Will echo a character it receives back out to the serial port,
  874.           also displays the character received.  
  875.  
  876.  
  877.  
  878. 7.2  Modem parameters.
  879.  
  880. This requester contains all the necessary items for setting how
  881. JR-Comm's phone dialer will interact with the modem.  All strings
  882. default to standard Hayes compatible modem commands and responses.  
  883.  
  884.  
  885.  
  886. 7.2.1  Modem commands:
  887.  
  888.            Init - Sent to the modem when JR-Comm is first started, but
  889.                   only if a carrier signal is not present.
  890.  
  891.          Hangup - Used to hangup the modem if the DTR gadget is not
  892.                   active.  The '~' character represents a one-half
  893.                   second delay.
  894.  
  895.     Dial prefix - The charcter string used to prefix a modem dial
  896.                   command.
  897.  
  898.    Dial postfix - The charcter sequence used to terminate a dial
  899.                   command.
  900.  
  901.  
  902.  
  903. 7.2.2  Alternate dial prefixes.
  904.  
  905. JR-Comm provides you with three alternate dialing prefixes that will be
  906. prefixed the the phone number of a phone directory entry.  To use a
  907. prefix set the appropriate gadget in the phone directory entry
  908. requester.
  909.  
  910.  
  911.  
  912. 7.2.3  Response codes.
  913.  
  914. The eight response codes and their Hayes defaults are:
  915.  
  916.             OK - "OK", The usual modem response to a command.
  917.           Busy - "BUSY", sent when a busy signal is detected.
  918.           Ring - "RING", sent when the modem detects a ring signal.
  919.          Error - "ERROR", sent when the modem detects an error.
  920.          Voice - "VOICE", not all modems are capable of sending this.
  921.        Connect - "CONNECT", the modem has connected to another modem.
  922.     No carrier - "NO CARRIER", the remote system did not respond.
  923.    No dialtone - "NO DIALTONE", sent if no dialtone signal was present.
  924.  
  925.  
  926.  
  927. 7.2.4  Phone dialer parameters.
  928.  
  929. Three parameters are used to control the phone dialer in JR-Comm, they
  930. are:
  931.  
  932.    Redial delay - Indicates how many seconds JR-Comm will wait before
  933.                   re-starting the list of selected entries.
  934.  
  935.    # of retries - How many times JR-Comm will loop through the list of
  936.                   selected entries before returning to the terminal.
  937.  
  938.    Dial timeout - How many seconds JR-Comm will wait for a connection
  939.                   after sending the dial command to the modem.
  940.  
  941.  
  942.  
  943. 7.2.5  Miscellaneous parameters.
  944.  
  945. There are two button gadgets that indicate if JR-Comm will use the DTR
  946. signal to hangup the modem, and if JR-Comm should ignore the state of
  947. the carrier detect signal.  If this last gadget is set to ignore the
  948. carrier detect signal then the phone dialer will search for the connect
  949. string instead of the carrier detect for a connection, it will also turn
  950. off the connect timer in the status line if it is displayed.
  951.  
  952.  
  953.  
  954. 7.3  Terminal parameters.
  955.  
  956. This requester deals with how JR-Comm's terminal mode will be operated. 
  957. there are options for capture filters, screen type, end-of-line in and
  958. out conversion types and if chat mode is active.
  959.  
  960.  
  961.  
  962.  
  963. 7.3.1  Capture filters.
  964.  
  965. These filters affect the review buffer and capture file, if open.  The
  966. filters currently available are:
  967.  
  968.    Graphics chars - Use this option if you want the high bit of each
  969.                     character reset that is received when using 8 data
  970.                     bits, no parity.
  971.  
  972.        ANSI codes - Turn this filter on if you do not want ANSI screen
  973.                     control codes captured.  The codes will still affect
  974.                     the screen though.
  975.  
  976.        CTRL chars - Removes all control characters except for carrige
  977.                     returns, line feeds, form feeds, tabs and
  978.                     backspaces.
  979.  
  980.        Backspaces - If this filter is active then any backspace received
  981.                     will remove the previous character recieved from the
  982.                     capture file too.  This results in the capture function
  983.                     operating in the same manner as the display.
  984.  
  985.  
  986.  
  987. 7.3.2  Chat mode.
  988.  
  989. Jr-Comm's chat mode is activated when this button gadget is selected. 
  990. Chat mode is indicated by the solid square cursor on the last line of
  991. the display.  If the connect timer and/or time-of-day clock is also
  992. active when chat mode is activated then the maximum size of each chat
  993. line is 60 characters.  If either or both timer and clock are turned off
  994. or if the status line was not active when chat mode is activated, then
  995. the chat line size will be modified to 70 or 80 characters in length.
  996.  
  997. The chat line will automatically word wrap when the end of the line is
  998. reached while typing so that you do not have to worry about going over
  999. the maximum size of the chat line.  This maximum length will be 80, 70
  1000. or 60, as described above if the connect timer and/or clock is also
  1001. displayed.
  1002.  
  1003. Line editing is available while in the chat mode.  The left and right
  1004. cursor keys move through the current line.  The delete key has two
  1005. functions, alone it deletes the character underneath the cursor, when
  1006. pressed while the shift key is down it will insert a blank at the
  1007. current cursor position.  The backspace key works as expected.  If the
  1008. return key is pressed while in the middle of the chat line the complete
  1009. line will be transmitted to the modem.
  1010.  
  1011. The chat mode also has a history buffer which can be accessed via the up
  1012. and down cursor keys.  The default size of 50 lines is used unless you
  1013. have increased or decreased it.  Each line is set to a maximum of 80
  1014. charcters so that full editing can be utilized on each string.
  1015.  
  1016. Finally, the '^' character can be used to send control characters out
  1017. via the chat line.  Two '^' characters in a row will send the '^'
  1018. character itself.
  1019.  
  1020.  
  1021.  
  1022. 7.3.3  EOL in & out conversion.
  1023.  
  1024. Selects which type of end-of-line sequence will be sent when the return
  1025. key is pressed or, when ASCII send is active, a newline character is
  1026. sent.  The default out is a carrige return.  When an end-of-line
  1027. sequence is received it will be converted to the selected sequence,
  1028. usually a linefeed character, also called a newline character.
  1029.  
  1030.  
  1031.  
  1032. 7.3.4  Screen type.
  1033.  
  1034. Selects the type of screen JR-Comm will use.  The default makes JR-Comm
  1035. use the Workbench screen.  The other selections are for two, four, eight
  1036. or 16 color screens.  The 16 color screen will give you the full ANSI
  1037. color emulation as defined by the IBM ANSI screen.
  1038.  
  1039.  
  1040.  
  1041. 7.3.5  Text and background colors.
  1042.  
  1043. Enter the color number you wish to use for text and background color for
  1044. a multi-color display.  See the palette for the colors and their
  1045. numbers.
  1046.  
  1047.  
  1048.  
  1049. 7.4  Macros requester.
  1050.  
  1051. The macros requester lets you define up to 20 different macro strings
  1052. that will be output to the serial port when the appropriate function key
  1053. is pressed.  The shift key gives you the second set of 10 macros, the
  1054. unshifted function keys access the first 10 macros.
  1055.  
  1056. The display buttons indicate which set of macros is currently being
  1057. displayed.
  1058.  
  1059. The '~' character will make JR-Comm pause for one-half second while
  1060. processing a macro.  The '^' character is used for sending control
  1061. chracters, the sequence "^M" will send a carrige return, the equivalent
  1062. of pressing the return key.
  1063.  
  1064. The "LOAD" and "SAVE" gadgets will take you to the file requester so
  1065. that you can save or load a set of function key macros.
  1066.  
  1067.  
  1068.  
  1069. 7.5  Palette requetser.
  1070.  
  1071. Works like most any color palette requester found in other Amiga
  1072. applications.  The "RESET" gadget will reset the colors to the default
  1073. IBM ANSI color set.
  1074.  
  1075. If you are familiar with the IBM color palette you will notice that the
  1076. colors do not follow normal IBM ordering.  This was necessary so that
  1077. the colors JR-Comm uses for string gadgets and requester borders/titles
  1078. would be visible and "clean" in appearence throughout the different
  1079. screen types it uses.
  1080.  
  1081.  
  1082.  
  1083. 7.6  General parameters.
  1084.  
  1085. The parameters in this requester deal with the status line, review buffer
  1086. and chat history sizes, pathnames and filenames.
  1087.  
  1088.  
  1089.  
  1090. 7.6.1  The status line.
  1091.  
  1092. Three button gadgets control the status line, they are:
  1093.  
  1094.    Status line displayed - Self explanatory.
  1095.  
  1096.        Time of day clock - Determines if the time-of-day is displayed.
  1097.  
  1098.            On-line timer - Same goes for the connect timer.
  1099.  
  1100.             24 hour mode - Selects either 12 or 24 hour mode.
  1101.  
  1102.  
  1103.  
  1104. 7.6.2  Size settings.
  1105.  
  1106. The review buffer size is indicated in bytes and defaults to 16,000. The
  1107. chat history size indicates lines and defaults to 50.
  1108.  
  1109.  
  1110.  
  1111. 7.6.3  Pathnames.
  1112.  
  1113. Set these string gadgets for JR-Comm to look for or place files for
  1114. uploading and downloading.  The files path is used by JR-Comm to locate
  1115. or put phonebook, macros, definition files and the session log.  
  1116.  
  1117. If during the operation of JR-Comm, you change directories in the file
  1118. requester, that new pathname will be placed in the appropriate pathname
  1119. string discussed here.
  1120.  
  1121.  
  1122.  
  1123. 7.6.4  Filenames.
  1124.  
  1125. Displays the current filenames in use for the phonebook, macro, logfile
  1126. and capture files.
  1127.  
  1128.  
  1129.  
  1130. 7.6.5  Logfile.
  1131.  
  1132. The logfile records the following actions:
  1133.  
  1134.  -  JR-Comm session start and end.
  1135.  -  Connection to a system via the dialer.
  1136.  -  Modem hangup command.
  1137.  -  Carrier drop if the ignore carrier detect button in the modem requester
  1138.     is not active.
  1139.  -  Successful downloads with file size, total error count and cps rate.
  1140.  
  1141. If no logfile filename is present in the general parameters requester, no
  1142. actions will be logged.
  1143.  
  1144.  
  1145.  
  1146.                             JR-COMM SUPPORT
  1147.  
  1148.  
  1149. 8.1
  1150.  
  1151. Support for JR-Comm will be available by contacting the Atlantic County
  1152. Amiga BBS, (609)625-2453.  It is an open system available to anyone 24
  1153. hours per day, seven days per week.  Access of 3/12/24 & 9600 HST is
  1154. supported.
  1155.  
  1156. If you are calling with a problem about JR-Comm please be specific and
  1157. post your request in a public message.  This will help future callers
  1158. who may find the information they're searching for by reading previously
  1159. posted messages.
  1160.  
  1161. The most current release of JR-Comm will always be available on the BBS.
  1162. Likewise, there will be new versions simultaneously posted on
  1163. CompuServe, People Link and GEnie.  Requests for help will sporadically,
  1164. if at all, be responded to on these services, please call the BBS instead.
  1165.