7. T h e Z 3 T C A P F A C I L I T Y  7.1. ZCPR3 Terminal Capabilities (TCAP) Thå  ZCPR³  Terminaì  Capabilitieó  (TCAP©  Facilitù  ió  aî integraì  parô  oæ  thå  ZCPR³ System®  Bù  meanó  oæ  thå  TCAÐ Facility¬  thå  user'ó terminaì ió defineä tï ZCPR³ iî sucè á waù thaô  programó  iî  thå ZCPR³ Systeí caî  perforí  á  varietù  oæ screen-orienteä  functionó  witè thå user'ó terminal®  Thå  TCAÐ Facilitù ió fundamentaì tï ZCPR3¬  anä iô ió á parô oæ thå  ZCPR³ Environmenô Descriptor. Thå  TCAÐ entrieó contaiî thå followinç informatioî oî theiò respectivå terminals: o initialization/deinitialization sequences o characters generated by the arrow keys o sequence for clearing the screen o sequence for positioning the cursor o sequence for erasing to end of line o highlight/non-highlight sequences Witè thió information¬  programó sucè aó VFILER¬  VMENU¬ anä HELР caî  perforí theiò functionó witè á mucè higheò  degreå  oæ "flash¢  anä  user-friendlinesó thaî theù  woulä  otherwise®  Bù simplù  loadinç  thå  TCAÐ entrù foò anotheò  terminaì  intï  thå environmenô  descriptor¬  alì  ZCPR³ programó  arå  automaticallù reconfigureä  foò thå ne÷ terminaì anä caî continuå  tï  functioî withouô modification. Twï  utilitieó  arå  provideä  tï assisô  thå  useò  iî  thå creatioî  oæ  Z3Ô fileó foò hió terminals®  TCSELECÔ allowó  thå useò  tï selecô á predefineä terminaì froí thå Z3TCAР file¬  anä TCMAKÅ allowó thå useò tï definå á terminaì whicè ió noô  covereä bù thå Z3TCAÐ file. Mosô  oæ thå informatioî iî thió chapteò provideó detailó oî thå  structurå oæ thå Z3Ô fileó anä giveó thå TCMAKÅ useò  enougè detaiì tï definå hió terminal® Providinç thió informatioî ió thå maiî purposå oæ thió chapter. Thå  filå Z3TCAÐ containó informatioî oî oveò 4°  terminals® Thå  TCSELECÔ  prograí printó á numbeò oæ  menuó  containinç  thå nameó oæ thå terminaló iî thió filå anä allowó thå useò tï selecô one¬  storinç  itó  informatioî eitheò directlù intï thå  memory- residenô Environmenô Descriptoò oò intï á filå oæ typå Z3Ô  whicè maù lateò bå loadeä bù thå LDÒ utility. Iæ  thå user'ó terminaì ió noô alreadù defineä iî thå Z3TCAÐ file¬  thå TCMAKÅ prograí ió useä tï definå hió terminal® TCMAKÅ allowó  thå  useò  tï  interactivelù  definå  eacè  oæ  thå   keù attributeó  oæ  hió terminaì anä creatå á filå oæ typå  Z3Ô  wheî done® Thió filå maù lateò bå loadeä bù thå LDÒ utility. Š7.2. Internal Structure of a Z3T File Á  Z3Ô  Filå  defineó thå characteristicó  oæ  á  particulaò terminal® Eacè Z3Ô filå containó thå followinç information: o the name of the terminal o the codes generated by the arrow keys o the byte sequences required: to clear the screen to position the cursor to clear to end of line to highlight chars to initialize and deinitialize the terminal Thå followinç ió thå exacô structurå oæ á Z3Ô file: Z3T_FILE: name: DS 16 ; Name of Terminal arrows: DS 4 ; Bytes generated by arrow keys delays: DS 3 ; Delays for Screen Clear, Cursor Motion, and ; Clear to End-of-Line cl: DS N1+1 ; Sequence used for Screen Clear cm: DS N2+1 ; Sequence used for Cursor Motion (gotoxy) ce: DS N3+1 ; Sequence used for Clear to End-of-Line so: DS N4+1 ; Sequence used to begin highlighting se: DS N5+1 ; Sequence used to end highlighting ti: DS N6+1 ; Sequence used to initialize terminal to: DS N7+1 ; Sequence used to deinitialize terminal FIG 7-1: Z3T File Structure, Overview Thå followinç definås thå TCAÐ records, which are: 1. the name of the terminal 2. the definition of the arrow keys 3. the delay constants for screen clear, cursor motion, and clear to end-of-line 4. the definition of the screen clear char sequence 5. the defn of the cursor motion char seq 6. the defn of the clear to EOL char seq 7. the defn of the highlight/end-highlight char seq 8. the defn of the init/deinit terminal char seq FIG 7-2: Z3T Records .pa Š Eacè oæ theså recorä definitionó ió similarº  thå structurå oæ thå recorä (iî assemblù languagå terminology)¬ commentó oî ho÷ thå  recorä  ió defineä anä whaô valueó arå  valiä  foò  it¬  anä exampleó  oæ valiä recorä structureó arå provideä foò eacè recorä definition. 7.2.1. Terminal Name Structure: DS 16 ; Name of Terminal (Space Fill on Right) Comment: Thå  namå oæ thå terminaì ió alwayó 1¶ byteó long®  Iæ  thå namå  takeó lesó thaî 1¶ bytes¬  spacå filì occuró righô  oæ  thå lasô character. Examples: DB 'ADDS Consul 980 ' DB 'ADM 2 ' 7.2.2. Arrow Keys Structure: DS 1 ; Byte Generated by Cursor UP DS 1 ; Byte Generated by Cursor DOWN DS 1 ; Byte Generated by Cursor RIGHT DS 1 ; Byte Generated by Cursor LEFT Comment: Iæ  youò  terminaì haó arro÷ keyó oî iô WHICÈ GENERATÅ  ONLÙ ONÅ  BYTÅ WHEÎ DEPRESSED¬  theî theså keyó maù bå defineä iî  thå Z3Ô  file®  Wheî á prograí calló foò thå uså oæ arro÷  keys¬  iô wilì uså thå valueó storeä here. Iæ youò terminaì doeó noô havå arro÷ keyó oò haó arro÷  keyó whicè generatå morå thaî onå bytå wheî depressed¬  theså keyó maù noô  bå defineä iî thå Z3Ô file®  Zerï (0© ió storeä iî alì fouò byteó oæ thå "arro÷ key¢ record®  Iî thió case¬ thå prograí wilì responä  tï  thå  Worä  Staò  (trademark¬   Micropro©  arro÷  keù conventioî (^Å ió UP¬ ^Ø ió DOWN¬ ^Ä ió RIGHT¬ anä ^Ó ió LEFT): ^E ^ | ^S <--+--> ^D | v ^X FIG 7-3: Wordstar Movement Convention .pa ŠExamples: DB 'K'-'@' ; ADM 31 ^K for Cursor UP DB 'J'-'@' ; ^J for Cursor DOWN DB 'L'-'@' ; ^L for Cursor RIGHT DB 'H'-'@' ; ^H for Cursor LEFT DB 0,0,0,0 ; None for H19 because of 2-char seqs ; Word Star Convention will be used 7.2.3. Function Delays Structure: DS 1 ; Delay (in mS) after sending clear screen DS 1 ; Delay (in mS) after sending gotoxy DS 1 ; Delay (in mS) after sending clear to EOL Comment: Eacè  oæ  theså byteó defineó thå numbeò oæ  millisecondó  á prograí  wilì  delaù afteò sendinç á particulaò sequencå  tï  thå user'ó terminal®  Somå terminaló requirå thió typå oæ delay® Iæ á  sequencå requireó nï delay¬  thå valuå oæ zerï (0©  shoulä  bå placeä iî thå correspondinç byte. Examples: DB 20,0,0 ; BANTAM 550 - 20mS for Clear Screen, 0 ; for Cursor Motion and Clear to EOL DB 0,0,0 ; TVI 950 - No Delays 7.2.4. Clear Screen Sequence Structure: DS N1 ; Bytes in clear screen sequence DB 0 Comment: Thió  sequencå  oæ  bytes¬  uð  tï  buô  noô  includinç  thå terminatinç  0¬  ió senô tï thå user'ó terminaì iî ordeò tï cleaò hió screen®  Iæ iô ió necessarù tï includå á binarù zerï iî thió sequence¬ thå twï bytes DB '\',0 wilì transmiô as onå binarù 0 and DB '\\' wilì transmiô aó onå backslash® Iî general¬  á backslasè (\© ió thå quotå character¬ anä anù bytå  whicè  followó iô ió transmitteä literallù  tï  thå  user'ó terminal. Š Iæ  á terminaì requireó thaô trailinç nulló follo÷ thå  lasô characteò  oæ  thå  sequencå foò thå purposå oæ  screeî  settlinç (ratheò  thaî usinç thå delaù byte)¬  nulló caî bå appendeä  intï thå sequencå bù usinç thå quotå character. Examples: DB 1BH,';',0 ; Clear Screen for ADM2 DB 'L'-'@',0 ; Clear Screen for ADDS Viewpoint DB 1BH,'?',1BH,'E'-'@',0 ; Clear Screen for Concept 108 7.2.5. Cursor Motion (GOTOXY) Sequence Structure: DS N2 ; Bytes in gotoxy sequence DB 0 Comments: Thió  sequencå  oæ byteó ió senô tï thå user'ó  terminaì  iî ordeò tï positioî thå cursoò oî hió screen®  Thå quotå characteò (\©  caî bå used¬  likå iî thå Cursoò Motioî sequence¬  tï  allo÷ quotå characteró anä nulló tï bå sent. Unlikå thå otheò sequenceó iî thå TCAÐ records¬  thå  Cursoò Motioî sequenceó varù dependinç upoî thå positioî oî thå screen. Foò instance¬  tï placå thå cursoò aô ro÷ 4¬  columî ´ (homå ió ro÷ 0¬ coì 0© oî á TVÉ 950¬ thå sequence DB 1BH,'=$$',0 is used, but to position at row 6, column 6, the sequence DB 1BH,'=&&',0 is used. Iî ordeò tï expresó sucè variable-valuå sequences¬ thå ZCPR³ TCAР provideó foò equationó whicè definå ho÷ tï computå thå bytå tï bå output® Thå TCAÐ sequence: DB 1BH,'=%+ %+ ',0 defineó  ho÷ tï computå thå valueó tï bå outpuô iî ordeò tï  movå thå cursoò foò thå TVÉ 950. The TCAP Cursor Motion sequence DB 1BH,'=%+ %+ ',0 is broken down as follows: .pa Š Element Meaning ------- ------- 1BH Output 1B hex (the ESCAPE char) '=' Output the character '=' '%« ' Adä § § (20H© tï thå ro÷ valuå anä output '%+ ' Add ' ' (20H) to the column value and output 7.2.5.1. Cursor Motion Interpreter Commands Thå  percenô  characteò  (%©  instructó  thå  cursoò  motioî sequencå interpreteò tï looë foò á command¬  anä iô processeó thå followinç  characteró aó such®  Iæ iô ió desireä tï  outpuô  '%§ itself¬ thå sequencå '\%§ ió used. Thå   commandó  recognizeä  bù  thå  cursoò  motioî  commanä interpreteò wilì no÷ bå discusseä iî detail®  Theså commandó arå thå followinç (caså ió noô significant): %R - Reverse order from row/col to col/row %I - Home position is (1,1) rather than (0,0) %. - Print current value (row or col) in binary %2 - Print current value as 2 ASCII decimal digits %3 - Print current value as 3 ASCII decimal digits %d - Print current value as N ASCII decimal digits (no leading zeroes) %+n - Add n to current value and output in binary %>xù - Adä ù tï currenô valuå iæ iô ió greater than x 7.2.5.2. %R Command Thå  cursoò  motioî sequencå interpreteò  assumeó  thaô  thå valuå  oæ thå ro÷ wilì bå outpuô beforå thå valuå oæ thå  column® Iæ thå columî ió tï bå first¬ thå command '%r' or '%R' instructó  thå  cursoò motioî sequencå interpreteò tï outpuô  thå columî anä theî thå row® Thå '%R§ commanä musô bå presenô iî thå sequencå beforå thå firsô valuå ió output¬  anä '%R§ actó  solelù tï commanä thå interpreteò (nï byteó arå outpuô bù '%R'). 7.2.5.3. %I Command Thå cursoò motioî sequencå interpreteò alsï assumeó thaô thå valuå  oæ  thå  homå  positioî ió ro÷ 0¬  columî  0®  Iæ  iô  ió convenienô tï seô thió positioî tï ro÷ 1¬ columî 1¬ thå command '%i' or '%I' ió used®  Likå '%R'¬ '%I§ musô bå useä beforå thå firsô valuå ió output. .pa Š The TVI 950 can be defined in two ways: DB 1BH,'=%+ %+ ',0 or DB 1BH,'%i=%+',1FH,'%+',1FH,0 7.2.5.4. Output Commands Thå resô oæ thå cursoò motioî sequencå interpreteò  commandó deaì  witè  thå formaô oæ thå output®  Theù allo÷ thå  followinç typeó oæ outputs: %. binary value (^A is output as 1) %2 2 ASCII Decimal Digits (^A is output as '01') %3 3 ASCII Decimal Digits (^A is output as '001') %d As many ASCII Decimal Digits as needed (^A as '1') %+n Add offset ('%+ ' outputs ^A as 1+' ' or '!') %>xy Add offset if limit reached ('%> '1 outputs ^A as 1 and '!' as '"') Tï summarize: Command Output Format ------- ------------- %. Binary Value %2 2 ASCII Decimal Digit Chars ('23') %3 3 ASCII Decimal Digit Chars ('123') %ä Aó manù ASCIÉ Decimaì Digiô Charó aó needed %+n Add the value of the byte following the '+' and output in binary %>xy If value > x, output value+y in binary; else output value in binary Command Cursor Motion Interpreter Action ------- -------------------------------- %i Set Home to 1,1 (default is 0,0) %r Output Col, then Row (default is Row, then Col) .pa Š Examples: DB 1BH,'Y%+ %+ ',0 ; ADDS Viewpoint 1BH = output 1BH (ESCAPE char) 'Y' = output char 'Y' '%+ ' = output row + ' ' (20H) in binary '%+ ' = output col + ' ' (20H) in binary DB 1BH,'[%d;%dH',0 ; H19 (ANSI Mode) 1BH = output 1BH (ESCAPE char) '[' = output char '[' '%d' = output row as ASCII decimal digits ';' = output char ';' '%d' = output col as ASCII decimal digits 'H' = output char 'H' 7.2.6. Clear to End of Line Structure: DS N3 ; Bytes in clear to end of line sequence DB 0 Comments: Thå Cleaò tï Enä oæ Linå sequencå ió useä tï cleaò thå  linå startinç  aô thå cursoò positioî tï thå enä oæ thå screen®  Onlù thió parô oæ thå currenô linå ió cleared. Thå ruleó foò specifyinç thió sequencå arå thå samå aó thoså foò Screeî Clear. Example: DB 1BH,'T',0 ; ADM 2 7.2.7. Begin and End Highlighting (Standout Mode) Sequences: DS N4 ; Bytes in sequence to begin highlighting DB 0 DS N5 ; Bytes in sequence to end highlighting DB 0 Comments: Thå "begiî highlighting¢ sequencå ió useä tï begiî highlighô modå oî thå user'ó terminal®  Thió maù bå reverså video¬ dim¬ oò somå  otheò non-standarä methoä foò displayinç characteró oî  thå screen®  Iî  ordeò foò á terminaì tï supporô thió  feature¬  thå followinç musô bå true: .pa Š 1®  Issuinç thió sequencå musô NOÔ changå thå positioî  oæ thå cursoò oî thå screen. 2®  Characteró  highlighteä musô bå outpuô iî exactlù thå samå waù non-highlighteä characteró arå (eg¬  settinç thå MS  oæ thå highlighteä charó ió noô allowed). These sequences are always used as follows: 1. the BEGIN HIGHLIGHT sequence is output 2. a set of characters to highlight is output 3. the END HIGHLIGHT sequence is output Thå  ruleó  foò specifyinç theså sequenceó arå thå  samå  aó thoså foò Screeî Clear. Example: DB 'N'-'@',0 ;ADDS Viewpoint 7.2.8. Terminal Initialization and Deinitialization Sequences: DS N6 ; Bytes in sequence to init terminal DB 0 DS N7 ; Bytes in sequence to deinit terminal DB 0 Comments: Beforå  anù  videï  routineó  arå  executed¬   thå  terminaì initializatioî  sequencå ió senô tï thå terminal®  Afteò thå uså oæ thå terminaì ió completeä bù á program¬  thå  deinitializatioî sequencå ió sent. Thå ruleó foò specifyinç thió sequencå arå thå samå aó thoså foò Screeî Clear. 7.3. Terminal Control Sequences 1 (General) The structure of most TCAP control sequences is: DS N ; Bytes in sequence DB 0 .pa Š Thió  sequencå  oæ  bytes¬  uð  tï  buô  noô  includinç  thå terminatinç 0¬ ió senô tï thå user'ó terminaì iî ordeò tï perforí somå  function®  Iæ iô ió necessarù tï includå á binarù zerï  iî thió sequence¬ thå twï bytes DB '\',0 wilì transmiô as onå binarù ° and DB '\\' wilì transmiô aó onå backslash® Á  backslasè (\© ió thå quotå character¬  anä anù bytå whicè followó iô ió transmitteä literallù tï thå user'ó terminal. Iæ  á terminaì requireó thaô trailinç nulló follo÷ thå  lasô characteò  oæ  thå sequencå foò thå purposå  oæ  screeî  settlinç (ratheò  thaî usinç thå delaù byte)¬  nulló caî bå appendeä  intï thå sequencå bù usinç thå quotå character. Cursoò Motioî sequenceó follo÷ theså ruleó witè thå additioî thaô  thå  characteò  "%¢ prefixeó á  cursoò  motioî  interpreteò command®  Iæ  iô ió desireä tï simplù outpuô thió characteò iî á cursoò motioî sequence¬ thå quotå characteò caî bå used: DB '\%' 7.4. Terminal Control Sequences 2 (Cursor Motion) Cursoò  Motioî  sequenceó  arå  differenô  froí  thå   otheò sequenceó  defineä  iî thå TCAÐ iî thaô cursoò  motioî  sequenceó contaiî embeddeä commandó foò thå cursoò motioî interpreter® Alì Cursoò Motioî sequenceó arå oæ thå followinç generaì format: Foò  example¬  thå  DEà VT10° terminaì useó  thå  followinç sequencå foò cursoò motion: DB 1BH,'[%i%d;%dH',0 where: 1BH,'[' = prefix chars 1BH (ESCAPE) and '[' %i = command: home is 1,1 %d = command: output row as ASCII dec chars ';' = infix char ';' %d = command: output col as ASCII dec chars 'H' = suffix char 'H' .pa Š Thå prefix¬  infix¬  anä postfiø sequenceó arå optional¬ anä onlù  thå commandó tï outpuô thå ro÷ anä coì arå requireä iî  anù cursoò motioî sequencå definition. Cursoò  Motioî  ió thå onlù requireä entrù iî á TCAР foò  á terminal®  Alì otheò sequenceó maù bå emptù (null)¬ anä thå lacë oæ theså otheò sequenceó wilì bå compensateä for® Cursoò motion¬ however¬ cannoô bå simulateä easilù anä ió required. Thå  followinç  tablå summarizeó alì oæ  thå  Cursoò  Motioî interpreteò commands. Command Output Format ------- ------------- %. Binary Value %2 2 ASCII Decimal Digit Chars ('23') %3 3 ASCII Decimal Digit Chars ('123') %ä Aó manù ASCIÉ Decimaì Digiô Charó aó needed %+n Add the value of the byte following the '+' and output in binary %>xy If value > x, output value+y in binary; else output value in binary Command Cursor Motion Interpreter Action ------- -------------------------------- %i Set Home to 1,1 (default is 0,0) %r Output Col, then Row (default is Row, then Col) FIG 7-4: Summary of Cursor Motion Interpreter Commands Examples: DB 1BH,'Y%+ %+ ',0 ; ADDS Viewpoint 1BH = output 1BH (ESCAPE char) 'Y' = output char 'Y' '%+ ' = output row + ' ' (20H) in binary '%+ ' = output col + ' ' (20H) in binary DB 1BH,'[%d;%dH',0 ; H19 (ANSI Mode) 1BH = output 1BH (ESCAPE char) '[' = output char '[' '%d' = output row as ASCII decimal digits ';' = output char ';' '%d' = output col as ASCII decimal digits 'H' = output char 'H' .pa Š 7.5. Overview of VLIB VLI  (Videï LIBrary© ió thå ZCPR³ librarù whicè ió useä  tï providå  á serieó oæ low-leveì routineó foò Z3TCAÐ accesó tï  thå ZCPR³  systeí programmer®  VLI ió describeä iî mucè morå detaiì iî thå VLIB.HLÐ file¬  anä thió overvie÷ onlù serveó tï summarizå itó capabilities. Thå VLI routinå Z3VINIÔ ió useä tï initializå VLI foò  uså witè  á  ZCPR³  system®  Thå addresó oæ  thå  ZCPR³  environmenô descriptoò  ió passeä tï thå Z3VINIÔ routinå iî HL¬  anä alì VLI routineó  kno÷  thå addresó oæ thå Z3TCAÐ entrù froí  thaô  poinô forward. Some low-level functions provided by VLIB are: Routine Function ------- -------- TINIT Initialize terminal DINIT Deinitialize terminal CLS Clear screen EREOL Erase to End of Line GOTOXY Position Cursor STNDOUT Begin highlighting STNDEND End highlighting 7.6. Standard ZCPR3 TCAP File Thå  filå Z3TCAÐ containó informatioî oî oveò 4°  terminals® Iô ió provideä aó á parô oæ thå ZCPR³ System¬  anä iô ió useä  bù TCSELECT®  TCSELECÔ  caî  displaù  thå nameó  oæ  thå  terminaló containeä iî Z3TCAÐ anä allo÷ thå useò tï selecô one¬  generatinç á  *.Z3Ô  filå oò storinç thå selectioî directlù intï memorù  foò immediatå uså bù thå ZCPR³ Systeí utilities. 7.7. TCAP Check Program TCCHECË  ió useä tï checë thå Z3TCAÐ filå  foò  consistency® Itó  solå  functioî ió tï ensurå thå validitù oæ thå Z3TCAР filå anä providå somå statisticó oî it. Sample run of TCCHECK: .pa Š B4:SCR2>tccheck // TCCHECK, Version 1.0TCCHECK - Select Entry from Z3TCAP.Z3T Syntax: TCCHECK infile -or- TCCHECK infile.typ where "infile" is the file to be checked by the execution of TCCHECK. If no file type is given, a file type of Z3T is the default. Syntax: TCCHECK where this alternate form may be used to check the Z3TCAP.TCP file. B4:SCR2>tccheck TCCHECK, Version 1.0 File Z3TCAP .TCP Not Found - Aborting -- Note: Z3TCAP.TCP MUST be in the same directory B4:SCR2>tccheck root:z3tcap.tcp TCCHECK, Version 1.0 File Z3TCAP .TCP Not Found - Aborting -- Note: TCCHECK does not recognize named dirs B4:SCR2>root: A15:ROOT>tccheck TCCHECK, Version 1.0 Z3TCAP File Check of Z3TCAP .TCP Version 1.1 File Checks with 44 Terminals Defined 7.8. TCAP Entry Definition Program TCMAKÅ ió useä tï creatå á *.Z3Ô file®  Oncå  created¬  thå ZCPR³  utilitù LDÒ caî loaä iô intï memorù aô thå propeò locatioî (commanä ió "LDÒ filename.Z3T"). Sample run of TCMAKE: B4:SCR2>tcmake // TCMAKE, Version 1.0 TCMAKE - Create a Z3T File Syntax: TCMAKE outfile -or- TCMAKE outfile.typ where "outfile" is the file to be generated by the execution of TCMAKE. If no file type is given, a file type of Z3T is the default. .pa Š B4:SCR2>tcmake myterm2 TCMAKE, Version 1.0 ** Z3TCAP Main Menu for File MYTERM2 .Z3T ** Define: 1. Clear Screen Sequence 2. Cursor Motion Sequence 3. Clear to End of Line Sequence 4. Standout Mode Sequences 5. Terminal Init/Deinit Sequences 6. Arrow Keys 7. Terminal Name Status: S. Print Status (Definitions so far) Exit: X. Exit and Write File Q. Quit and Abort Program without Writing File Command? 2 Cursor Motion Definition 1. Timing Delay Enter Delay Time in Milliseconds: 5 2. Enter R if Row/Column or C for Column/Row: R 3. Enter Equation for Row: %+ 4. Enter Equation for Column: %+ 5. Enter Prefix Byte Sequence Char #1 - Type Char, .=Number, or =Done: Enter Number: 1bh Char #2 - Type Char, .=Number, or =Done: Char = Char #3 - Type Char, .=Number, or =Done: 6. Enter Middle Byte Sequence Char #1 - Type Char, .=Number, or =Done: 7. Enter Suffix Byte Sequence Char #1 - Type Char, .=Number, or =Done: ** Z3TCAP Main Menu for File MYTERM2 .Z3T ** Define: 1. Clear Screen Sequence 2. Cursor Motion Sequence 3. Clear to End of Line Sequence 4. Standout Mode Sequences 5. Terminal Init/Deinit Sequences 6. Arrow Keys 7. Terminal Name Status: S. Print Status (Definitions so far) Exit: X. Exit and Write File Q. Quit and Abort Program without Writing File Command? 6 .pa Š Arrow Key Definition Your Terminal's Arrow Keys may be defined ONLY if they generate only one character each. If they do, type Y to continue. If not, type anything else. Define Arrow Keys (Y/N)? Y Strike the Appropriate Arrow Key 1. Arrow UP? ^K 2. Arrow DOWN? ^V 3. Arrow RIGHT? ^L 4. Arrow LEFT? ^H ** Z3TCAP Main Menu for File MYTERM2 .Z3T ** Define: 1. Clear Screen Sequence 2. Cursor Motion Sequence 3. Clear to End of Line Sequence 4. Standout Mode Sequences 5. Terminal Init/Deinit Sequences 6. Arrow Keys 7. Terminal Name Status: S. Print Status (Definitions so far) Exit: X. Exit and Write File Q. Quit and Abort Program without Writing File Command? S ** Z3TCAP Status for File MYTERM2 .Z3T ** Review: 1. Clear Screen Definition 2. Cursor Motion Definition 3. Clear to End of Line Definition 4. Standout Mode Definition 5. Terminal Init/Deinit Definition 6. Arrow Key Definition 7. Terminal Name Definition Exit: X. Exit to Main Menu Command? 1 Review of Clear Screen Definition 1. Timing Delay = 0 Milliseconds 2. Clear Screen Sequence: (1) ^[ 1BH (2) * 2AH Strike Any Key to Continue - .pa Š ** Z3TCAP Status for File MYTERM2 .Z3T ** Review: 1. Clear Screen Definition 2. Cursor Motion Definition 3. Clear to End of Line Definition 4. Standout Mode Definition 5. Terminal Init/Deinit Definition 6. Arrow Key Definition 7. Terminal Name Definition Exit: X. Exit to Main Menu Command? 2 Review of Cursor Motion Data 1. Timing Delay = 5 Milliseconds 2. Row or Column First: R 3. Row Equation: -->%+ <-- 4. Column Equation: -->%+ <-- 5. Prefix Byte Sequence: (1) ^[ 1BH (2) = 3DH 6. Middle Byte Sequence: -- Empty -- 7. Suffix Byte Sequence: -- Empty -- Strike Any Key to Continue - ** Z3TCAP Status for File MYTERM2 .Z3T ** Review: 1. Clear Screen Definition 2. Cursor Motion Definition 3. Clear to End of Line Definition 4. Standout Mode Definition 5. Terminal Init/Deinit Definition 6. Arrow Key Definition 7. Terminal Name Definition Exit: X. Exit to Main Menu Command? 6 Review of Arrow Key Definitions 1. Arrow UP = ^K 2. Arrow DOWN = ^V 3. Arrow RIGHT = ^L 4. Arrow LEFT = ^H Strike Any Key to Continue - .pa Š ** Z3TCAP Status for File MYTERM2 .Z3T ** Review: 1. Clear Screen Definition 2. Cursor Motion Definition 3. Clear to End of Line Definition 4. Standout Mode Definition 5. Terminal Init/Deinit Definition 6. Arrow Key Definition 7. Terminal Name Definition Exit: X. Exit to Main Menu Command? X ** Z3TCAP Main Menu for File MYTERM2 .Z3T ** Define: 1. Clear Screen Sequence 2. Cursor Motion Sequence 3. Clear to End of Line Sequence 4. Standout Mode Sequences 5. Terminal Init/Deinit Sequences 6. Arrow Keys 7. Terminal Name Status: S. Print Status (Definitions so far) Exit: X. Exit and Write File Q. Quit and Abort Program without Writing File Command? X Selected Terminal is: Rick's Terminal -- Confirm (Y/N)? Y File MYTERM2 .Z3T Created 7.9. TCAP Entry Selection Program TCSELECÔ  ió  useä tï selecô á terminaì  froí  thå  standarä Z3TCAР file®  Thå selecteä terminaì maù bå loadeä directlù intï memorù  oò  á  *.Z3Ô filå maù bå created®  Iæ á  *.Z3Ô  filå  ió created¬  thå  ZCPR³ utilitù LDÒ caî loaä iô intï memorù  aô  thå propeò locatioî (commanä ió "LDÒ filename.Z3T"). Sample run of TCSELECT: .pa Š B4:SCR2>tcselect // TCSELECT, Version 1.0 TCSELECT - Select Entry from Z3TCAP.TCP Syntax: TCSELECT outfile -or- TCSELECT outfile.typ where "outfile" is the file to be generated by the execution of TCSELECT. If no file type is given, a file type of Z3T is the default. Syntax: TCSELECT where this alternate form may be used to store the Z3TCAP entry for the selected terminal directly into the Z3 Environment Descriptor. Example 1: Create MYTERM.TCP B4:SCR2>tcselect myterm TCSELECT, Version 1.0 ** Terminal Menu 1 for Z3TCAP Version 1.1 ** A. AA Ambassador K. Concept 100 B. ADDS Consul 980 L. Concept 108 C. ADDS Regent 20 M. CT82 D. ADDS Viewpoint N. DEC VT52 E. ADM 2 O. DEC VT100 F. ADM 31 P. Dialogue 80 G. ADM 3A Q. Direct 800/A H. ADM 42 R. General Trm 100A I. Bantam 550 S. Hazeltine 1420 J. CDC 456 T. Hazeltine 1500 Enter Selection, + for Next, or ^C to Exit - + ** Terminal Menu 2 for Z3TCAP Version 1.1 ** A. Hazeltine 1510 K. P Elmer 1200 B. Hazeltine 1520 L. SOROC 120 C. H19 (ANSI Mode) M. Super Bee D. H19 (Heath Mode) N. TAB 132 E. HP 2621 O. Teleray 1061 F. IBM 3101 P. Teleray 3800 G. Micro Bee Q. TTY 4424 H. Microterm ACT IV R. TVI 912 I. Microterm ACT V S. TVI 920 J. P Elmer 1100 T. TVI 950 Enter Selection, - for Last, + for Next, or ^C to Exit - + .pa Š ** Terminal Menu 3 for Z3TCAP Version 1.1 ** A. VC 404 B. VC 415 C. Visual 200 D. WYSE 50 Enter Selection, - for Last, or ^C to Exit - - ** Terminal Menu 2 for Z3TCAP Version 1.1 ** A. Hazeltine 1510 K. P Elmer 1200 B. Hazeltine 1520 L. SOROC 120 C. H19 (ANSI Mode) M. Super Bee D. H19 (Heath Mode) N. TAB 132 E. HP 2621 O. Teleray 1061 F. IBM 3101 P. Teleray 3800 G. Micro Bee Q. TTY 4424 H. Microterm ACT IV R. TVI 912 I. Microterm ACT V S. TVI 920 J. P Elmer 1100 T. TVI 950 Enter Selection, - for Last, + for Next, or ^C to Exit - T Selected Terminal is: TVI 950 -- Confirm (Y/N)? N ** Terminal Menu 2 for Z3TCAP Version 1.1 ** A. Hazeltine 1510 K. P Elmer 1200 B. Hazeltine 1520 L. SOROC 120 C. H19 (ANSI Mode) M. Super Bee D. H19 (Heath Mode) N. TAB 132 E. HP 2621 O. Teleray 1061 F. IBM 3101 P. Teleray 3800 G. Micro Bee Q. TTY 4424 H. Microterm ACT IV R. TVI 912 I. Microterm ACT V S. TVI 920 J. P Elmer 1100 T. TVI 950 Enter Selection, - for Last, + for Next, or ^C to Exit - S Selected Terminal is: TVI 920 -- Confirm (Y/N)? Y File MYTERM .Z3T Created -- Example 2: Select terminal and store it in memory B4:SCR2>tcselect TCSELECT, Version 1.0 .pa Š ** Terminal Menu 1 for Z3TCAP Version 1.1 ** A. AA Ambassador K. Concept 100 B. ADDS Consul 980 L. Concept 108 C. ADDS Regent 20 M. CT82 D. ADDS Viewpoint N. DEC VT52 E. ADM 2 O. DEC VT100 F. ADM 31 P. Dialogue 80 G. ADM 3A Q. Direct 800/A H. ADM 42 R. General Trm 100A I. Bantam 550 S. Hazeltine 1420 J. CDC 456 T. Hazeltine 1500 Enter Selection, + for Next, or ^C to Exit - + ** Terminal Menu 2 for Z3TCAP Version 1.1 ** A. Hazeltine 1510 K. P Elmer 1200 B. Hazeltine 1520 L. SOROC 120 C. H19 (ANSI Mode) M. Super Bee D. H19 (Heath Mode) N. TAB 132 E. HP 2621 O. Teleray 1061 F. IBM 3101 P. Teleray 3800 G. Micro Bee Q. TTY 4424 H. Microterm ACT IV R. TVI 912 I. Microterm ACT V S. TVI 920 J. P Elmer 1100 T. TVI 950 Enter Selection, - for Last, + for Next, or ^C to Exit - T Selected Terminal is: TVI 950 -- Confirm (Y/N)? Y ZCPR3 Environment Descriptor Loaded