home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / msr313src.zip / msvz10.doc < prev    next >
Text File  |  1991-03-18  |  8KB  |  162 lines

  1. File MSTZ10.DOC                            28 Jan 1991
  2. DRAFT                                DRAFT
  3.  
  4. Documentation for MSKERMIT Version 3.0 for the Heath/Zenith-100.
  5.  
  6. This short document only describes special features for this specific
  7. implementation for the Z-100.  For general Kermit information, please refer to
  8. KERMIT.DOC, MSKERMIT.DOC and MSKERMIT.HLP etc.
  9.  
  10. This issue corrects several serious problems with buffer overruns when using
  11. large packets and/or windowing.  It also includes improvements in the areas of
  12. screen writing speed and handling of escape codes for the S-100 ports. 
  13. Further, the screen is now saved, when leaving terminal mode and restored upon
  14. reentry of terminal mode.  This is particularly nice for the use of HELP or
  15. SHIFT-HELP.  A one screen (26 line) scrolling function has also been added.
  16.  
  17. Work is slowly going on to implement VT100 terminal emulation, full multipage
  18. scrolling and colors.  It takes time, however.  I hope I will have it finished
  19. before all Z-100s but mine are scrapped.
  20.  
  21. NOTE!!          Using the US Robotics S-100 ports, at 1200 baud only,
  22.                 this Kermit implementation may lose the first character
  23.                 on the line if run at the original lower clock frequency
  24.                 of the H/Z-100.  If run at 7 MHz or above there should be
  25.                 no problem.  The easy fix is to tell the host to use one
  26.                 null character at the beginnig of each new line.  (For
  27.                 VAX VMS use "set terminal/lf=(1)")
  28.  
  29. Implements:
  30.  
  31. 1. Set terminal Heath-19, set terminal None
  32.  
  33. 2. Set port com1/com2/com3/com4 or 1/2/3/4 or J1/J2 or A/B (Note com1=1=J2=B,
  34.    com2=2=J1=A)
  35.  
  36. 3. Support for 2 US Robotics S-100 modems at ports com3/com4 (com3 port
  37.    address 0020H, com4 port address 002EH)
  38.  
  39. 4. Buffered port input and xon/xoff handshaking in terminal mode also for the
  40.    S-100 ports (to some extent).
  41.  
  42. 5. Automatic sensing of presence of S-100 modem boards and automatic sensing
  43.    of carrier for the boards present.
  44.  
  45. 6. Automatic selection of port
  46.         
  47. Explanations:
  48.  
  49. 1. The Heath/Zenith-100 terminal inherently supports the VT-52 and the
  50.    Heath-19 terminal rules.  The current keypad mode is indicated by N or A on
  51.    the mode line right after the terminal emulation info.
  52.  
  53.    Separate terminal drivers like zansi.dvd may be used through the command
  54.    "ctty ansi" before invoking Kermit which then has to be left in native
  55.    terminal mode (set terminal none).
  56.  
  57.    Note, however, that screen writing is done through DOS in this mode and it
  58.    is therefore very slow, particularly when performed via ANSI.  
  59.  
  60.    The VT52 keys PF1 (Gold) to PF4 are mapped onto the top four keys of the
  61.    shifted keypad, the VT52 - key onto the shifted down arrow and the VT52,
  62.    key onto the shifted minus key.  This makes the keypad (numeric and
  63.    application mode) close in function to the VT52 keypad.
  64.                  
  65. 2. The H/Z-100 computer has two serial ports designated J1 or A and J2 or B.
  66.    Because the B port is of the DTE type and is the primary modem port, port B
  67.    or J2 is designated com1 or port 1.
  68.  
  69.    Use the command set port ? to get help.  The basics are as follows:
  70.  
  71.    - set port com1, set port 1, set port B, set port J2
  72.      All activate communication over J2 at the current (as set with cofigur)
  73.      AUX baud rate and parity.
  74.  
  75.    - set port com2, set port 2, set port A, set port J1
  76.      All activate communication over J1 at the current AUX baud rate and
  77.      parity.
  78.  
  79.    - set port com3, set port 3          (address 0020H)
  80.      All activate communication over the first S-100 port at the current baud
  81.      rate and parity. Default is 1200 baud.
  82.                
  83.    - set port com4, set port 4          (address 002EH)
  84.      All activate communication over the second S-100 port at the current
  85.      baud rate and parity. Default is 1200 baud.
  86.  
  87. 3. The US Robotics S-100 modem is not interrupt driven, so the port has to be
  88.    polled and care has to be taken not to loose characters when doing other
  89.    things like screen output and disk transactions.  -- See 4. below. 
  90.  
  91. 4. When, in terminal mode, the escape sequencies ESC-E or ESC-J are sent to
  92.    the screen or disk writing is done, characters will be lost unless special
  93.    steps are taken by the software.
  94.  
  95.    The two special escape sequencies mentioned are broken down into smaller
  96.    steps for the screen handler and the port is polled in between these steps.
  97.    (ESC-E = ESC-H + ESC-J, ESC-J = ESC-K + possibly CR + a number of LF +
  98.    ESC-K combinations)
  99.  
  100.    During disk capture disk writing the host is told to stop sending (xoff),
  101.    a delay to cover for transmission delays follows, then the disk capture
  102.    buffer is written after which the host is told to continue (xon). The port
  103.    is polled from the sending of xoff until the end of the delay and the
  104.    received characters are put in a buffer. The disk capture buffer is only
  105.    128 bytes long, so there will be a pause for every 128 bytes.
  106.  
  107.    The pause duration may be varied by setting the receive timeout parameter
  108.    (set receive timeout) to some value other than the default.  0 results in
  109.    no delay, the default of 5 gives less than half a second and the maximum of
  110.    94 a few seconds.  I have adjusted the timing to work reliably over normal
  111.    telephone lines with a VAX as a host.  You may be able to speed up by
  112.    setting the timeout value as low as 1.  On the other hand, if computers
  113.    further away in a network are hosting or if satellite communications are
  114.    involved you may have to adjust the timing upwards.
  115.  
  116. 5. The testing for presence of S-100 modems and carriers for these takes
  117.    place when Kermit is started and a message is issued to inform the user.
  118.  
  119.    I have found the automatic sensing of S-100 modems to work reliably.
  120.    There is a possibility, however, that other boards at the addresses in
  121.    question will interfere with this function.
  122.  
  123. 6. Default port is in priority sequence:
  124.    - Port 3 if carrier detected there
  125.    - Port 4 if carrier detected there
  126.    - The port designated AUX 
  127.  
  128. 7. Use the command show key to find out exactly how the keys are mapped.
  129.    For your conveniance, here are the most important ones.
  130.  
  131.    - Most function and special keys provide normal Z-100 escape sequences
  132.    - F12   toggles the terminal printer on/off.In native mode use CTRL-P.
  133.    - SF12  (dump screen to printer is not available to Kermit)
  134.    - SF11  dumps screen to a file (default kermit.scn)
  135.    - F11   enters video memory screen scrolling, 26 lines; use Back Space and
  136.            Line Feed keys to scroll and Return key to "freeze" position; any
  137.            other key to restore
  138.     - HELP  displays the connect help message
  139.     - SHELP displays the status message
  140.     - The shifted top 4 numeric keypad keys) provide VT52 PF1 (gold) to PF4
  141.  
  142. 8. Known shortfalls, bugs and potential problems
  143.  
  144.    - Windowing does not work well for the S-100 modems, COM3 and COM4,
  145.      obviously because these modems are not interrupt driven.  The windowing
  146.      routines eat cpu time in chunks too big to allow proper port polling
  147.      (unless the code in the 'generic' source files is modified).
  148.    - The screen sometimes 'tears' when entering terminal mode (defect in
  149.      atsclr).  This is cosmetic only.
  150.    - Show modem only partially supported due to hardware limitations.  Avoid
  151.      untested and unproven use of SHOW MODEM and WAIT \CD, \DSR.  Ports 1 and
  152.      2 support \CD and \DSR, ports 3 and 4 only \CD.
  153.    - VT52 type printer control is not supported.
  154.    - Set term none will set key off and set term Heath will set key on.
  155.      (Set term will not follow set key on/off)
  156.    - Screen scrolling, beyond F11 above, is not implemented.
  157.    - Certain character translation features are implemented. These features,
  158.      however, are completely untested at this time.
  159.  
  160. Good luck using Kermit
  161.      Bo Gedda
  162.