"   TERMINAL DEFINITION FILE FOR CDC 722-30 TERMINAL                          "

"   Note that this terminal definition is supplied with protection and auto-  "
"   tabbing enabled with protected areas dim and unprotected areas bright.    "
"   This arrangement is best for applications that use most of their screen   "
"   area for unprotected (input) fields, such as the Full Screen Editor.      "
"   If you primarily use this terminal with applications that protect most of "
"   the screen area, such as Edit_Catalog, you may prefer to reverse the dim  "
"   and bright assignments.  If you frequently switch between applications    "
"   that are mostly protected versus mostly unprotected, you may prefer to    "
"   use the terminal with all areas bright and no protection.                 "

"   To modify this definition to drop protection and have all areas bright,   "
"   look for statements that have the comments FOR EITHER BRIGHT OR DIM       "
"   PROTECTION and remove or disable (via comments) such statements.  Then    "
"   look for comment-disabled statements that have the comments FOR NO        "
"   PROTECTION and enable these statements by blanking the comments away.     "

"   You also have the option to modify this definition to keep protection and "
"   auto-tabbing, but with the bright/dim exchanged so that protected areas   "
"   are bright and unprotected areas are dim.  To do so, look for statements  "
"   commented as FOR PROTECT=DIM and FOR PROTECT=BRIGHT, and enable/disable   "
"   such statements by reversing th comment quotes.                           "

"   VARIABLES                                                                 "
    prefix              = ( 1B(16) 5B(16))
    clear_stay          = ( prefix 32(16) 4A(16) )
    clear_eop           = ( prefix 4A(16) )
    clear_all_tabs      = ( prefix 33(16) 67(16) )
    home_cursor         = ( prefix 48(16) )
    enable_insertion    = ( prefix 34(16) 68(16) )
    disable_insertion   = ( prefix 34(16) 6C(16) )

    enable_protect      = ( prefix 31(16) 7D(16) )  "for protect=dim"
  " enable_protect      = ( prefix '254'  7D(16) )   for protect=bright"

    disable_protect     = ( prefix 30(16) 7D(16) )
    start_alternate     = ( prefix 31(16) 6D(16) )
    stop_alternate      = ( prefix 6D(16) )
    start_blink         = ( prefix 35(16) 6D(16) )
    stop_blink          = ( prefix 6D(16) )
    erase_all_off       = ( prefix 36(16) 6C(16) )
    erase_all_on        = ( prefix 36(16) 68(16) )
    normal              = ( prefix 6D(16) )
    start_hidden        = ( prefix 36(16) 6D(16) )
    stop_hidden         = ( prefix 6D(16) )
    start_inverse       = ( prefix 37(16) 6D(16) )
    stop_inverse        = ( prefix 6D(16) )
    start_underline     = ( prefix 34(16) 6D(16) )
    stop_underline      = ( prefix 6D(16) )
    enable_buffer       = ( prefix '>h' )
    disable_buffer      = ( prefix '>l' )
    clear_buffer        = ( prefix '1~' )
    release_buffer      = ( prefix '0~' )
    stop_scroll         = ( prefix '?7l' )
    start_scroll        = ( prefix '?7h' )
    start_wrap          = ( prefix 3F(16) 37(16) 68(16))
    stop_wrap           = ( prefix 3F(16) 37(16) 6C(16))

    start_protect       = ( start_alternate )   " for protect=dim "
    stop_protect        = ( stop_alternate )    " for protect=dim "
  " start_protect       = ( stop_alternate )      for protect=bright "
  " stop_protect        = ( start_alternate )     for protect=bright "

    n_pad_shift         = ( 1b(16) '[=1h' 1e(16) 12(16) 'k' 1e(16) 12(16)..
                            'S2' 1b(16) '[2J')
    n_pad_normal        = ( 1b(16) '[=1h' 1e(16) 12(16) 'l' 1e(16) 12(16)..
                            'S2' 1b(16) '[2J')
    designate_text      = ( 1B(16) 28(16) 42(16))
    designate_graphics  = ( 1B(16) 29(16) 30(16))
    invoke_text         = ( 0F(16))
    invoke_graphics     = ( 0E(16))

"   MODEL NAME AND COMMUNICATION TYPE                                         "
    model_name          value = 'CDC722_30'
    communications      type  = asynch
    application_string  name  = 'VT100_SCROLLING'  out = 'TRUE'

"   BACKSPACE SPECIFIED                                                       "
    backspace           in =  ( 08(16) )

"   END OF INFORMATION SPECIFICATION                                          "
    end_of_information  in    = (0)

"   CURSOR POSITIONING INFORMATION                                            "
    cursor_pos_encoding      bias  = (1)   type = ansi_cursor
    cursor_pos_column_first  value = FALSE
    cursor_pos_column_length value = (0)
    cursor_pos_row_length    value = (0)
    cursor_pos_begin         out   =  prefix
    cursor_pos_second        out   = ( 3B(16) )
    cursor_pos_third         out   = ( 48(16) )

"   CURSOR MOVEMENT INFORMATION
    cursor_home              inout = ( home_cursor )   label='HOME'
    cursor_up                inout = ( prefix 41(16) )
    cursor_down              inout = ( prefix 42(16) )
    cursor_left              inout = ( prefix 44(16) )
    cursor_right             inout = ( prefix 43(16) )

"   CURSOR BEHAVIOR (for cursor movement keys)                                "
    move_past_right          type  = stop_next
    move_past_left           type  = stop_next
    move_past_top            type  = stop_next
    move_past_bottom         type  = stop_next

"   CURSOR BEHAVIOR (for character keys)                                      "
    char_past_right          type  = stop_next
    char_past_left           type  = stop_next
    char_past_last_position  type  = stop_next

"   TERMINAL ATTRIBUTES                                                       "

    automatic_tabbing        value = TRUE  " for either bright or dim protect "
  " automatic_tabbing        value = FALSE   for no protection "

    clears_when_change_size  value = FALSE
    function_key_leaves_mark value = 0
    has_hidden               value = TRUE

    has_protect              value = TRUE  " for either bright or dim protect "
  " has_protect              value = FALSE   for no protection "

    home_at_top              value = TRUE
    multiple_sizes           value = FALSE
    tabs_to_home             value = FALSE
    tabs_to_tab_stops        value = TRUE

    tabs_to_unprotected      value = TRUE  " for either bright or dim protect "
  " tabs_to_unprotected      value = FALSE   for no protection "

    type_ahead               value = TRUE

"   SCREEN SIZES                                                              "
    set_size       rows = 24 columns = 80

"   SCREEN AND LINE MODE TRANSITION                                           "
    set_screen_mode     out = ( enable_buffer  clear_all_tabs ..
        designate_text  designate_graphics  invoke_text ..
        stop_scroll  stop_wrap   n_pad_shift)

    set_line_mode       out = ( clear_all_tabs  designate_text ..
        designate_graphics  invoke_text  disable_buffer  start_scroll ..
        n_pad_normal  start_wrap    home_cursor)

"   TERMINAL CAPABILITIES                                                     "
    delete_char         inout = ( prefix 50(16) )     label='C_DLETE'
    delete_line_stay    inout = ( prefix 4D(16) )     label='L_DLETE'
    erase_end_of_line   inout = ( prefix 4B(16) )     label='CLR_EOL'
    erase_end_of_page   inout = ( clear_eop )
    erase_line_stay     inout = ( prefix 32(16) 4B(16) )
    erase_page_stay     inout = ( clear_stay )        label='CLEAR_P'
    insert_line_stay    inout = ( prefix 4C(16) )     label='L_INSRT'
    insert_mode_begin   inout = ( enable_insertion )  label='BGN_INS'
    insert_mode_end     inout = ( disable_insertion )
" protect_all out=(start_protect clear_stay stop_protect) for protect=bright "
    tab_backward        inout = ( prefix 46(16) )
    tab_forward         inout = ( 09(16) )
    tab_clear_all       inout = ( clear_all_tabs )
    tab_set             inout = ( 1B(16) 48(16) )

"   MISCELLANEOUS TERMINAL SEQUENCES                                          "

    output_begin        out = ( disable_protect erase_all_on normal) " for either bright or dim protect "
    output_end          out = ( enable_protect erase_all_off release_buffer ) " for either bright or dim protect "
  " output_begin        out = ( erase_all_on normal) for no protection "
  " output_end          out=(erase_all_off release_buffer)  for no protection "

    bell_nak            out = (bel)

"   PROGRAMMABLE FUNCTION KEY INPUT INFORMATION                               "
    f1        in = ( 1B(16) 4F(16) 50(16) )    label='f1'
    f2        in = ( 1B(16) 4F(16) 51(16) )    label='f2'
    f3        in = ( 1B(16) 4F(16) 52(16) )    label='f3'
    f4        in = ( 1B(16) 4F(16) 53(16) )    label='f4'
    f5        in = ( 1B(16) 4F(16) 6D(16) )    label='f5'
    f6        in = ( 1B(16) 4F(16) 6C(16) )    label='f6'
    f7        in = ( 1B(16) 4F(16) 4D(16) )    label='f7'
    f8        in = ( 1B(16) 4F(16) 6E(16) )    label='f8'
    f9        in = ( 1B(16) 4F(16) 41(16) )    label='f9'
    f10       in = ( 1B(16) 4F(16) 42(16) )    label='10'
    f11       in = ( 1B(16) 4F(16) 43(16) )    label='11'
    f12       in = ( 1B(16) 4F(16) 44(16) )    label='12'
    f13       in = ( )
    f14       in = ( )
    f15       in = ( )
    f16       in = ( )
    f1_s      in = ( 1B(16) 4F(16) 71(16) )    label='  SF1'
    f2_s      in = ( 1B(16) 4F(16) 72(16) )    label='  SF2'
    f3_s      in = ( 1B(16) 4F(16) 73(16) )    label='  SF3'
    f4_s      in = ( 1B(16) 4F(16) 74(16) )    label='  SF4'
    f5_s      in = ( 1B(16) 4F(16) 75(16) )    label='  SF5'
    f6_s      in = ( 1B(16) 4F(16) 76(16) )    label='  SF6'
    f7_s      in = ( 1B(16) 4F(16) 77(16) )    label='  SF7'
    f8_s      in = ( 1B(16) 4F(16) 78(16) )    label='  SF8'
    f9_s      in = ( 1B(16) 4F(16) 79(16) )    label='  SF9'
    f10_s     in = ( 1B(16) 4F(16) 70(16) )    label='  SF10'
    f11_s     in = ( 1B(16) 4F(16) 7A(16) )    label='  SF11'
    f12_s     in = ( 1B(16) 4F(16) 7B(16) )    label='  SF12'
    f13_s     in = ( )
    f14_s     in = ( )
    f15_s     in = ( )
    f16_s     in = ( )

"   CDC STANDARD FUNCTION KEY INPUT INFORMATION                               "
    next      in=13                            label='RETURN'
    next_s    in=()
    bkw       in = ( 1B(16) 4F(16) 50(16) )    label='f1'
    fwd       in = ( 1B(16) 4F(16) 51(16) )    label='f2'
    back      in = ( 1B(16) 4F(16) 52(16) )    label='f3'
    help      in = ( 1B(16) 4F(16) 53(16) )    label='f4'
    undo      in = ( 1B(16) 4F(16) 6D(16) )    label='f5'
    stop      in = ( 1B(16) 4F(16) 6C(16) )    label='f6'
    bkw_s     in = ( 1B(16) 4F(16) 71(16) )    label='  SF1'
    fwd_s     in = ( 1B(16) 4F(16) 72(16) )    label='  SF2'
    undo_s    in = ( 1B(16) 4F(16) 75(16) )    label='  SF5'
    stop_s    in = ( 1B(16) 4F(16) 76(16) )    label='  SF6'
    edit      in = ( esc '[?10l' )
    edit_s    in = ( )
    data      in = ( )
    data_s    in = ( )

"   TERMINAL VIDEO ATTRIBUTES                                                 "
    alt_begin           out =  start_alternate
    alt_end             out =  stop_alternate
    blink_begin         out =  start_blink
    blink_end           out =  stop_blink
    hidden_begin        out =  start_hidden
    hidden_end          out =  stop_hidden
    inverse_begin       out =  start_inverse
    inverse_end         out =  stop_inverse

    protect_begin       out =  start_protect  " for either bright or dim protect "
    protect_end         out =  stop_protect   " for either bright or dim protect "
  " protect_begin       out =  ()             for no protection "
  " protect_end         out =  ()             for no protection "

    underline_begin     out =  start_underline
    underline_end       out =  stop_underline

"   LOGICAL ATTRIBUTE SPECIFICATIONS                                          "
    error_begin         out =  start_inverse
    error_end           out =  stop_inverse
    input_text_begin    out =  start_underline
    input_text_end      out =  stop_underline
    italic_begin        out =  start_inverse
    italic_end          out =  stop_inverse
    message_begin       out = ()
    message_end         out = ()
    output_text_begin   out = ()
    output_text_end     out = ()
    title_begin         out = ()
    title_end           out = ()

"   LINE DRAWING CHARACTER SPECIFICATION                                      "
    ld_fine_begin            out = ( invoke_graphics )
    ld_fine_end              out = ( invoke_text )
    ld_fine_horizontal       out = ( 71(16) )
    ld_fine_vertical         out = ( 78(16) )
    ld_fine_upper_left       out = ( 6C(16) )
    ld_fine_upper_right      out = ( 6B(16) )
    ld_fine_lower_left       out = ( 6D(16) )
    ld_fine_lower_right      out = ( 6A(16) )
    ld_fine_up_t             out = ( 77(16) )
    ld_fine_down_t           out = ( 76(16) )
    ld_fine_left_t           out = ( 74(16) )
    ld_fine_right_t          out = ( 75(16) )
    ld_fine_cross            out = ( 6E(16) )
    ld_medium_begin          out = ( invoke_graphics )
    ld_medium_end            out = ( invoke_text )
    ld_medium_horizontal     out = ( 71(16) )
    ld_medium_vertical       out = ( 78(16) )
    ld_medium_upper_left     out = ( 6C(16) )
    ld_medium_upper_right    out = ( 6B(16) )
    ld_medium_lower_left     out = ( 6D(16) )
    ld_medium_lower_right    out = ( 6A(16) )
    ld_medium_up_t           out = ( 77(16) )
    ld_medium_down_t         out = ( 76(16) )
    ld_medium_left_t         out = ( 74(16) )
    ld_medium_right_t        out = ( 75(16) )
    ld_medium_cross          out = ( 6E(16) )
    ld_bold_begin            out = ( start_inverse )
    ld_bold_end              out = ( stop_inverse )
    ld_bold_horizontal       out = (' ')
    ld_bold_vertical         out = (' ')
    ld_bold_upper_left       out = (' ')
    ld_bold_upper_right      out = (' ')
    ld_bold_lower_left       out = (' ')
    ld_bold_lower_right      out = (' ')
    ld_bold_up_t             out = (' ')
    ld_bold_down_t           out = (' ')
    ld_bold_left_t           out = (' ')
    ld_bold_right_t          out = (' ')
    ld_bold_cross            out = (' ')


"   END OF TERMINAL DEFINITION FILE FOR CDC 722-30 TERMINAL                   "
