home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / BEEHIVE / ZSUS / Z3HELP-5.LBR / V.LBR / VLIB1.HZP / VLIB1.HLP
Text File  |  2000-06-30  |  8KB  |  207 lines

  1. :   ZCPR-3 Terminal Capabilities (TCAP) Extended Definition 
  2.  
  3.              as of 8 March 1989 (HFB)
  4.  
  5. The ZCPR-3 TCAP is a 128-byte area positioned immediately after
  6. the Environment Descriptor.  The configuration has been changed
  7. from the original descriptions contained in Richard Conn's book,
  8. ZCPR3, The Manual.  The layout here is designed for backward
  9. compatibility with the original scheme while adding extensions
  10. to accomodate rudamentary business graphics and pull-down menus
  11. described in Dennis Wright's GRXLIB and portions of GRWLIB.
  12.  
  13. Offsets mentioned in this description are from the base of the
  14. TCAP.
  15.  
  16.  Offset     Item              Description 
  17.  
  18.   0     Terminal Name    15 characters, alphanumeric.  The first
  19.             character must NOT be a space.  A
  20.             leading space means uninstalled TCAP.
  21.  
  22.   15     Characteristics    One byte indicating Terminal details as:
  23.  
  24.             B0 - 1 = Reverse or Intensify available
  25.                  0 = Dim or reduced intensity avail
  26.  
  27.             B1 - 1 = Screen wraps on last col write
  28.                  0 = No wrap if last column written
  29.  
  30.             B2 - 1 = Screen scrolls if last row/col
  31.                     position written
  32.                  0 = Screen does NOT scroll if last
  33.                     col of last row written
  34.  
  35.             B3 - 1 = Term needs 10 secs on powerup
  36.                  0 = Terminal instantly ready
  37. The following four bytes are for single-byte cursor movement
  38. codes FROM the terminal.  If your terminal has no independant
  39. cursor movement keys, or implements cursor movement with multi-
  40. byte sequences, use any convenient single-key sequence you
  41. desire.  The familiar WordStar "diamond" comprised of Control-E
  42. (Up), Control-X (Down), Control-D (Right) and Control-S (Left)
  43. is commonly used.
  44.  
  45.   16      Cursor Up    Cursor UP code from terminal (^E)
  46.   17      Cursor Dowm    Cursor DOWN code from terminal (^X)
  47.   18      Cursor Right    Cursor RIGHT code from terminal (^D)
  48.   19      Cursor Left    Cursor LEFT code from terminal (^S)
  49.  
  50. Some terminals need delays to perform certain functions.  This
  51. may be more important as interface speeds increase.  Delays are
  52. in milliseconds.  Consult your terminal manual for the correct
  53. values to insert.
  54.  
  55.   20      Clear Screen    Delay in milliseconds (0 to 255)
  56.   21      Move Cursor    Delay in milliseconds (0 to 255)
  57.   22      Clear to EOL    Delay in milliseconds (0 to 255)
  58.  
  59. Beginning at Offset 23 from the beginning of the TCAP, a
  60. sequence of Null-terminated strings define the Command Strings
  61. needed to make the Terminal respond as desired.  If particular
  62. features are not implemented on nor needed by your terminal, a
  63. single Null (binary 0) disables that feature.  
  64.  
  65.   Clear Screen         (CL) - Clear Screen & Home Cursor
  66.   Cursor Movement     (CM) - Parsed string for cursor posi-
  67.                 tioning.  See ZCPR3, The Manual
  68.                 for details.  "%N" string added
  69.                 to send Binary 0 to Terminal
  70.   Clear to End-of-Line     (CE) - Clear from Cursor Position to
  71.                 the end of the current line.
  72.                 Cursor stays in current place
  73.   Standout Begin     (SO) - Enter Standout Mode
  74.                 If terminal uses DIM or Reduced
  75.                 intensity, the Initialization
  76.                 string (TI below) should set to
  77.                 reduced intensity, and this
  78.                 function sets normal intensity
  79.  
  80.   Standout End         (SE) - End Standout mode
  81.                 If you use DIM or reduced
  82.                 intensity with normal for
  83.                 "Standout", this restores the
  84.                 DIM mode.
  85.   Initialize Terminal     (TI) - Initialize the terminal
  86.                 See notes for suggestions on
  87.                 DIM/Reduced Intensity above
  88.   De-initialize Term     (TE) - Restore Terminal to normal mode
  89.                 See above notes
  90.   Delete Line         (LD) - Delete line on which the cursor
  91.                 resides and move lines below it
  92.                 up by one
  93.   Insert Line         (LI) - Insert blank line before the one
  94.                 on which the cursor positioned,
  95.                 and move lines below down one.
  96.                 Cursor moves to beginning of
  97.                 the new blank line
  98.   Clear to EOS         (CD) - Clear screen from current cursor
  99.                 position to the End-of-Screen
  100. The following definitions implement portions of the GRXLIB and
  101. GRWLIB functionality, but in different TCAP locations.
  102.  
  103.   Graphics Delay          - Delay for Graphics On/Off.  Use
  104.                 greater of the two delay times
  105.                 in milliseconds. Values of 0 to
  106.                 255 are acceptable
  107.   Graphics Mode On     (GO) - Set Terminal to Graphics Mode
  108.   End Graphics Mode     (GE) - Restore Terminal to normal
  109.                 Alphanumeric mode
  110.   Cursor Off         (CDO)- Disable Cursor display.  Needed
  111.                 for Pull Down Menus
  112.   Cursor On         (CDE)- Enable Cursor display.  Needed
  113.                 for Pull Down Menus
  114.  
  115. Several graphics strings are needed to implement the desired
  116. level of functionality.  Each of these is needed in the
  117. specified order.  The terminal should first be placed in the
  118. graphics mode, then the desired string sent.  If strings for
  119. all terminals are only a single character, this may be reduced
  120. to a character array in the future.
  121.  
  122.   Upper-Left Corner     (GULC) - String for now
  123.   Upper-Right Corner     (GURC) -   "     "   "
  124.   Lower-Left Corner     (GLLC) -   "     "   "
  125.   Lower-Right Corner     (GLRC) -   "     "   "
  126.   Horizontal Line     (GHL)  -   "     "   "
  127.   Vertical Line     (GVL)  -   "     "   "
  128.   Solid (Full) Block     (GFB)  -   "     "   "
  129.   Hashed Block         (GHB)  -   "     "   "
  130.   Upper Intersect     (GUI)  -   "     "   "
  131.   Lower Intersect     (GLI)  -   "     "   "
  132.   Intersection         (GIS)  -   "     "   "
  133.   Right Intersect     (GRTI) -   "     "   "
  134.   Left Intersect     (GLTI) -   "     "   "
  135.  
  136. The remainder of the TCAP should be filled with binary Zeros to
  137. properly handle future additions.
  138. Example:
  139. ; Z3TCAP:  HEATH19.Z80
  140. ; Author:  Harold F. Bower
  141.  
  142. ; Z3 Termcap implementing the Heath/Zenith-19 command set
  143.  
  144. ESC    EQU    27        ; Escape character
  145.  
  146. ; New Terminal Capabilities Data
  147.  
  148. Z3TCAP:    DEFB    'Heath/Zenith-19' ; Name of terminal (15 chars)
  149.  
  150. TRMMOD:    DEFB    00000111B    ; B3 = 0 - Term Ready quickly
  151.                 ; B2 = 1 - Rev Video,
  152.                 ; B1 = 1 - Wrap @ EOL,
  153.                 ; B0 = 1 - Scroll @ EOP
  154.  
  155.     DEFB    'E'-'@'        ; Cursor up  (WS Diamond)
  156.     DEFB    'X'-'@'        ; Cursor down
  157.     DEFB    'D'-'@'        ; Cursor right
  158.     DEFB    'S'-'@'        ; Cursor left
  159. ; Heath-19 doesn't need delays
  160.  
  161.     DEFB    00        ; Cl delay
  162.     DEFB    00        ; Cm delay
  163.     DEFB    00        ; Ce delay
  164.  
  165. ; Strings start here.
  166.  
  167.     DEFB    ESC,'E',0    ; CL str (Clear, Home Cursor)
  168.     DEFB    ESC,'Y%+ %+ ',0    ; CM str (Cursor positioning)
  169.     DEFB    ESC,'K',0    ; CE str (Clear to End-of-Line)
  170.     DEFB    ESC,'p',0    ; SO str (Go to Reverse Video)
  171.     DEFB    ESC,'q',0    ; SE str (Return Normal Video)
  172.     DEFB    0        ; TI str (Initialize Terminal)
  173.     DEFB    0        ; TE str (De-initialize Term)
  174.  
  175. ; Extensions to Standard TCAP
  176.  
  177.     DEFB    ESC,'M',0    ; LD str (Delete Line)
  178.     DEFB    ESC,'L',0    ; LI str (Insert Line)
  179.     DEFB    ESC,'J',0    ; CD - Clear to EOS String
  180.     DEFB    0        ; GO/GE - Graphics On/Off Delay
  181.     DEFB    ESC,'F',0    ; GO - Graphics Mode On
  182.     DEFB    ESC,'G',0    ; GE - Graphics Mode End
  183.     DEFB    ESC,'x5',0    ; CDO - Cursor Off string
  184.     DEFB    ESC,'y5',0    ; CDE - Cursor Enable string
  185.  
  186.     DEFB    'f',0        ; GULC - Upper Left Corner [*]
  187.     DEFB    'c',0        ; GURC - Upper Right Corner [*]
  188.     DEFB    'e',0        ; GLLC - Lower Left Corner [*]
  189.     DEFB    'd',0        ; GLRC - Lower Right Corner [*]
  190.     DEFB    'a',0        ; GHL - Horizontal Line [-]
  191.     DEFB    '`',0        ; GVL - Vertical Line [|]
  192.     DEFB    'i',0        ; GFB - Full Block String [*]
  193.     DEFB    'w',0        ; GHB - Hashed Block String [#]
  194.     DEFB    'u',0        ; GUI - Upper Intersection [+]
  195.     DEFB    's',0        ; GLI - Lower Intersection [+]
  196.     DEFB    'b',0        ; GIS - Intersection [+]
  197.     DEFB    'v',0        ; GRTI - Right Intersection [+]
  198.     DEFB    't',0        ; GLTI - Left Intersection [+]
  199. ;  Fill unused space with Nulls
  200.  
  201.       REPT    128-[$-Z3TCAP]
  202.     DEFB    0
  203.       ENDM
  204.  
  205.     END
  206. ;------------- End of Sample TermCap -------------
  207.