
"   TERMINAL DEFINITION FILE FOR CDC 910 WORKSTATION                          "

" Note: the protocol is essentially equivalent to DEC VT-52   "

"   VARIABLES                                                                 "

alternate_keypad = (esc '=')
normal_keypad    = (esc '>')
alternate_color  = (esc '9P')  " extension beyond VT52 "
normal_color     = (esc '0@')  " extension beyond VT52 "

keypad_0            = (esc '?p')
keypad_1            = (esc '?q')
keypad_2            = (esc '?r')
keypad_3            = (esc '?s')
keypad_4            = (esc '?t')
keypad_5            = (esc '?u')
keypad_6            = (esc '?v')
keypad_7            = (esc '?w')
keypad_8            = (esc '?x')
keypad_9            = (esc '?y')
keypad_minus        = (esc '?m')
keypad_comma        = (esc '?l')
keypad_period       = (esc '?n')
keypad_enter        = (esc '?M')
keypad_pf1          = (esc 'P')
keypad_pf2          = (esc 'Q')
keypad_pf3          = (esc 'R')
keypad_pf4          = (esc 'S')

gold                = keypad_0

"   MODEL NAME AND COMMUNICATION TYPE                                         "
model_name          value = 'CDC_910'
communications      type  = asynch

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

"   CURSOR POSITIONING INFORMATION                                            "
cursor_pos_encoding      bias  = (32)   type = binary_cursor
cursor_pos_column_first  value = FALSE
cursor_pos_column_length value = (0)
cursor_pos_row_length    value = (0)
cursor_pos_begin         out   = (esc 'Y')
cursor_pos_second        out   = ()
cursor_pos_third         out   = ()

"   CURSOR MOVEMENT INFORMATION                                               "
cursor_home              inout = (esc 48(16))
cursor_up                inout = (esc 41(16))
cursor_down              inout = (esc 42(16))
cursor_left              inout = (esc 44(16))
cursor_right             inout = (esc 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  = wrap_adjacent_next
char_past_left           type  = stop_next
char_past_last_position  type  = scroll_next

"   TERMINAL ATTRIBUTES                                                       "
clears_when_change_size  value = TRUE
function_key_leaves_mark value = 2
has_hidden               value = FALSE
has_protect              value = FALSE
home_at_top              value = TRUE
multiple_sizes           value = FALSE
tabs_to_home             value = FALSE
tabs_to_tab_stops        value = TRUE
tabs_to_unprotected      value = FALSE

"   SCREEN SIZES                                                              "
set_size       rows = 40 columns = 80   " VT52 has only 24 rows "

set_screen_mode out=(alternate_keypad)

set_line_mode out=(normal_keypad)

"   TERMINAL CAPABILITIES                                                     "
delete_char         in    = (esc 'N')
delete_line_bol     in    = (esc 'M')
erase_end_of_line   inout = (esc 'K')
erase_line_stay     inout = (esc 'I')
erase_page_home     inout = (esc 'v')
insert_line_bol     in    = (esc 'L')
insert_mode_begin   in    = (esc '@')
insert_mode_end     in    = (esc 'O')
tab_forward         inout = (09(16))
tab_clear_all       inout = ()
tab_set             inout = ()

"   MISCELLANEOUS TERMINAL SEQUENCES                                          "
bell_nak            out = (bel)
backspace           in = bs

"   PROGRAMMABLE FUNCTION KEY INPUT INFORMATION                               "
f1        in = (keypad_1)          label='k1'
f2        in = (keypad_2)          label='k2'
f3        in = (keypad_3)          label='k3'
f4        in = (keypad_4)          label='k4'
f5        in = (keypad_5)          label='k5'
f6        in = (keypad_6)          label='k6'
f7        in = (keypad_7)          label='k7'
f8        in = (keypad_8)          label='k8'
f9        in = (keypad_9)          label='k9'
f10       in = (keypad_pf1)        label='p1'
f11       in = (keypad_pf2)        label='p2'
f12       in = (keypad_pf3)        label='p3'
f13       in = (keypad_pf4)        label='p4'
f14       in = (keypad_minus)      label='k-'
f15       in = (keypad_comma)      label='k,'
f16       in = (keypad_enter)      label='ke'
f1_s      in = (gold keypad_1)     label='01'
f2_s      in = (gold keypad_2)     label='02'
f3_s      in = (gold keypad_3)     label='03'
f4_s      in = (gold keypad_4)     label='04'
f5_s      in = (gold keypad_5)     label='05'
f6_s      in = (gold keypad_6)     label='06'
f7_s      in = (gold keypad_7)     label='07'
f8_s      in = (gold keypad_8)     label='08'
f9_s      in = (gold keypad_9)     label='09'
f10_s     in = (gold keypad_pf1)   label='p1'
f11_s     in = (gold keypad_pf2)   label='p2'
f12_s     in = (gold keypad_pf3)   label='p3'
f13_s     in = (gold keypad_pf4)   label='p4'
f14_s     in = (gold keypad_minus) label='0-'
f15_s     in = (gold keypad_comma) label='0,'
f16_s     in = (gold keypad_enter) label='0e'

"   CDC STANDARD FUNCTION KEY INPUT INFORMATION                               "
next      in = 13            label = 'RETURN'
next_s    in = ()
bkw       in = (keypad_1)      label='k1'
fwd       in = (keypad_2)      label='k2'
back      in = (keypad_3)      label='k3'
help      in = (keypad_4)      label='k4'
undo      in = (keypad_5)      label='k5'
stop      in = (keypad_6)      label='k6'
bkw_s     in = (gold keypad_1) label='  01'
fwd_s     in = (gold keypad_2) label='  02'
undo_s    in = (gold keypad_5) label='  05'
stop_s    in = (gold keypad_6) label='  06'
down      in = ()
down_s    in = ()
up        in = ()
up_s      in = ()
edit      in = ()
edit_s    in = ()
data      in = ()
data_s    in = ()

"   TERMINAL VIDEO ATTRIBUTES                                                 "
alt_begin           out = ()
alt_end             out = ()
blink_begin         out = ()
blink_end           out = ()
inverse_begin       out = (alternate_color)
inverse_end         out = (normal_color)
underline_begin     out = (alternate_color)
underline_end       out = (normal_color)

"   LOGICAL ATTRIBUTE SPECIFICATIONS                                          "
error_begin         out = ()
error_end           out = ()
input_text_begin    out = ()
input_text_end      out = ()
italic_begin        out = (alternate_color)
italic_end          out = (normal_color)

"   LINE DRAWING CHARACTER SPECIFICATION                                      "
ld_fine_begin            out = ()
ld_fine_end              out = ()
ld_fine_horizontal       out = '-'
ld_fine_vertical         out = '!'
ld_fine_upper_left       out = '*'
ld_fine_upper_right      out = '*'
ld_fine_lower_left       out = '*'
ld_fine_lower_right      out = '*'
ld_fine_up_t             out = '*'
ld_fine_down_t           out = '*'
ld_fine_left_t           out = '*'
ld_fine_right_t          out = '*'
ld_fine_cross            out = '*'
ld_medium_begin            out = ()
ld_medium_end              out = ()
ld_medium_horizontal       out = '-'
ld_medium_vertical         out = '!'
ld_medium_upper_left       out = '*'
ld_medium_upper_right      out = '*'
ld_medium_lower_left       out = '*'
ld_medium_lower_right      out = '*'
ld_medium_up_t             out = '*'
ld_medium_down_t           out = '*'
ld_medium_left_t           out = '*'
ld_medium_right_t          out = '*'
ld_medium_cross            out = '*'
ld_bold_begin            out = ()
ld_bold_end              out = ()
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 = '*'

"   DEFAULT KEY DEFINITIONS FOR THE FULL SCREEN EDITOR                        "

"   END OF TERMINAL DEFINITION FILE FOR CDC 910 WORKSTATION                  "
