; **** DRAFT--Not Final **** ; ZCPR 3.3 System TCAP ; ; Version for the Visual 50 in the Hazeltine emulation mode using ; Escape as a lead in character. ; ; Copyright 1985, 1986 by Richard Conn, Dennis Wright, and Echelon, Inc. ; All Rights Reserved ; ; Note on Padding: ; All entries which have an asterisk (like, *) following ; their one-line explanation have delays which may be ; variable. ; Note on Definition: ; If a function is not available for a particular terminal, ; its string should be 0 and its delay should be 0 (if it has ; a delay). ; ; ; Section 1: Basic Terminal Characteristics ; ; YU Single Character Generated by Uparrow Key on Keyboard ; YD Single Character Generated by Downarrow Key on Keyboard ; YL Single Character Generated by Leftarrow Key on Keyboard ; YR Single Character Generated by Rightarrow Key on Keyboard ; Note: If no arrow keys or arrow keys generate more than ; one character (like VT100), then use WordStar convention ; for these codes: YU=^E, YD=^X, YL=^S, YR=^D ; ; CL Clear Screen String (has a delay which may be variable); ; cursor is placed in home position (upper left corner) when ; this sequence is complete ; ; CM Cursor Motion String (see explanation of codes in the Manual) ; ; CE Clear to End of Line String; cursor is left at original ; position when this sequence is complete ; ; SO Begin Highlighting (Reverse Video or Dim); no character ; positions on the screen are used by this sequence (ie, cursor ; does not move after this sequence is complete) ; SE End Highlighting (return to Normal display intensity); no ; character positions on the screen are used by this sequence ; ; TI Initialize Terminal String; it is preferred that nothing be ; output to the screen by this sequence, but no output is not ; required ; TE Deinitialize Terminal String; it is preferred that nothing ; be output to the screen by this sequence ; envor2: db 'Visual 50/Hazel ' ; Name of Terminal (16 chars) db 'E'-'@' ; YU (YU = Cursor UP) db 'X'-'@' ; YD (YD = Cursor DOWN) db 'D'-'@' ; YL (YL = Cursor LEFT) db 'S'-'@' ; YR (YR = Cursor RIGHT) db 15 ; CL Delay (CL = Clear Screen)* db 0 ; CM Delay (CM = Cursor Motion) db 2 ; CE Delay (CE = Clear to EOL) db 1bh,'\'-'@',0 ; CL String db 1bh,'Q'-'@','%r%.%.',0 ; CM String db 1bh,'O'-'@',0 ; CE String db 1bh,'Y'-'@',0 ; SO String (SO = Stand Out Mode) db 1bh,'_'-'@',0 ; SE String (SE = End Stand Out Mode) db 0 ; TI String (TI = Terminal Init) db 0 ; TE String (TE = Terminal Deinit) ; ; Section 2: Business Graphics ; ; The following strings are used to create graphics symbols. ; If your terminal does not support business graphics, make (GO) and (GE) ; a non-zero non-printable character that has no effect on your ; terminal and use ASCII characters like '*' to replace the graphics ; characters. Recommended character values are indicated in [], like [*]. ; An alternate recommendation using '.' and ':' will be made with release ; of ZCPRB3. ; db 0 ; GO Delay (GO = Graphics On) db 0 ; GE Delay (GE = Graphics End) db 1bh,'F',0 ; GO - Graphics on string db 1bh,'G',0 ; GE - Graphics end string db 's',0 ; GULC - Upper left corner [*] db 'l',0 ; GURC - Upper right corner [*] db 'e',0 ; GLLC - Lower left corner [*] db 'm',0 ; GLRC - Lower right corner [*] db '`',0 ; GHL - Horizontal line [-] db 'a',0 ; GVL - Vertical line [|] db '*',0 ; GFB - Full block [*] db '#',0 ; GHB - Hashed block [#] db 'd',0 ; GUI - Upper intersect [+] db 'c',0 ; GLI - Lower intersect [+] db 'b',0 ; GIS - Intersection [+] db 'o',0 ; GRTI - Right intersect [+] db 'n',0 ; GLTI - Left intersect [+] ; ; Section 3: Windowing ; ; The following environmental data must be present if window ; routines are to be used. GCM (Graphic Character Mask) contains ; any bits that are not used by on screen graphics characters. ; GCD (Graphics Chararacter Difference) are the bits that are ; stripped (by the terminal) from a sent graphics character to ; form the on screen graphics character. ; db 00h ; GCM - Graphic character mask byte db 00h ; GCD - Graphic char difference bit(s) ; ; The next string can be either a terminal control code or an ; address of a user supplied subroutine. If a user supplied routine ; is to be used set the U1 address accordingly. Remember if an ; address is placed here and both bytes of the address are 00h, ; then the RAT string will be used. If the RAT string is null the RSP ; string will be used. At least one of these two functions must be ; available for window routines, RAT is prefered. ; ; If a RAT user supplied routine is to be used it must return the ; characters as follows: ; ; RAT - Read character at cursor position must return the character ; at the current cursor position in the (A) register. ; ; db 1bh,'!','P'-'@',0 ; RAT - Read char at current cursor ; position ; db 0 ; Zero if using RSP ; ; Set the following address non-zero if user supplied RAT subroutine ; is to be used. ; dw 0 ; U1 - Use user supplied RAT routine ; db 0 ; RSP - Read screen page ; ; If RSP is to be used the following two bytes must be defined; if not, ; make them zero. ; db 00h ; ELM - End of line mark db 00h ; EPM - End of screen mark ; ; These bytes are the screen codes sent by the terminal at the end of ; each line (ELM) and end of page (EPM). Some terminals like the WYSE 50 ; may have graphics character codes that are the same as the ELM or EPM ; codes. In this case an alternative graphic character must be used. ; ; Section 4: Extended Terminal Characteristics ; (More to be added in banked ZCPRB3 256-byte version) ; ; CD Clear to End of Display; the cursor is not moved by this ; action ; KL Keyboard Lock; the keys on the keyboard are made inoperative ; KU Keyboard Unlock; the keys on the keyboard are made operative ; ; CDO Cursor Display Off; Cursor is no longer displayed, no ; character positions on the screen are used by this sequence ; CDE Cursor Display Enable; Cursor is displayed, no character ; positions on the screen are used by this sequence ; db 10 ; CD Delay (CD = Clear to End Display)* db 1bh,'k',0 ; CD String db 1bh,'U'-'@',0 ; KL String (KL = Keyboard Lock) db 1bh,'F'-'@',0 ; KU String (KU = Keyboard Unlock) db 1bh,'m',0 ; CDO String (Cursor Display Off) db 1bh,'X',0 ; CDE String (Cursor Display Enable) ; ds 80H-($-envor2) ; Make exactly 80H bytes long ; ; End of ZCPR 3.3 TCAP ; END