
"   TERMINAL DEFINITION FILE FOR ZENITH Z19 TERMINAL                          "

"   VARIABLES                                                                 "

prefix              = (1B(16) 5B(16))
end_ins_mode        = (prefix 34(16) 6C(16))
start_inverse       = (prefix 37(16) 6D(16))
stop_inverse        = (prefix 6D(16))
ansi_mode           = (esc '<')
set_block_shift_alt = (prefix '>4;6;7h')
clear_hold_screen   = (prefix '>3l')
clear_wraparound    = (prefix '?7l')
clear_shift_alt     = (prefix '>6;7l')
set_wraparound      = (prefix '?7h')

"   MODEL NAME AND COMMUNICATION TYPE                                         "
model_name          value = 'Z19'
communications      type  = asynch
application_string  name='insert_delete_scrolling' out='true'

"   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 = (prefix 48(16))   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

"   TAB STOPS                                                                 "
fixed_tab_positions positions = (1,9,17,25,33,41,49,57,65,73)

"   TERMINAL ATTRIBUTES                                                       "
clears_when_change_size  value = FALSE
function_key_leaves_mark value = 1
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 = 24 columns = 80

"   SCREEN AND LINE MODE TRANSITION                                           "
set_screen_mode     out = (ansi_mode set_block_shift_alt  ..
 clear_hold_screen clear_wraparound)

set_line_mode       out = (clear_shift_alt set_wraparound clear_hold_screen)

"   TERMINAL CAPABILITIES                                                     "
backspace           in    = (08(16))
delete_char         inout = (prefix 50(16))         label='DC'
delete_line_bol     inout = (prefix 4D(16))         label='DL'
erase_end_of_line   inout = (prefix 30(16) 4B(16))
erase_end_of_page   inout = (prefix 4A(16))
erase_page_home     inout = (prefix 32(16) 4A(16))  label='ERASE'
insert_char         inout = (prefix 40(16))
insert_line_bol     inout = (prefix 4C(16))         label='IL'
insert_mode_begin   inout = (prefix 34(16) 68(16))  label='IMB'
insert_mode_end     inout = (prefix 34(16) 6C(16))
tab_forward         inout = (09(16))

"   MISCELLANEOUS TERMINAL SEQUENCES                                          "
output_begin        out = ()
bell_nak            out = (bel)

"   PROGRAMMABLE FUNCTION KEY INPUT INFORMATION                               "
f1        in = (1B(16) 4F(16) 53(16))  label = 'f1'
f2        in = (1B(16) 4F(16) 54(16))  label = 'f2'
f3        in = (1B(16) 4F(16) 55(16))  label = 'f3'
f4        in = (1B(16) 4F(16) 56(16))  label = 'f4'
f5        in = (1B(16) 4F(16) 57(16))  label = 'f5'
f6        in = (1B(16) 4F(16) 50(16))  label = 'Bl'
f7        in = (1B(16) 4F(16) 51(16))  label = 'Rd'
f8        in = (1B(16) 4F(16) 52(16))  label = 'Wt'
f9        in = ()
f10       in = ()
f11       in = ()
f12       in = ()
f13       in = ()
f14       in = ()
f15       in = ()
f16       in = ()
f1_s      in = (1B(16) 4F(16) 71(16))  label = 's1'
f2_s      in = (1B(16) 4F(16) 72(16))  label = 's2'
f3_s      in = (1B(16) 4F(16) 73(16))  label = 's3'
f4_s      in = (1B(16) 4F(16) 74(16))  label = 's4'
f5_s      in = (1B(16) 4F(16) 75(16))  label = 's5'
f6_s      in = (1B(16) 4F(16) 76(16))  label = 's6'
f7_s      in = (1B(16) 4F(16) 77(16))  label = 's7'
f8_s      in = (1B(16) 4F(16) 78(16))  label = 's8'
f9_s      in = (1B(16) 4F(16) 79(16))  label = 's9'
f10_s     in = (1B(16) 4F(16) 70(16))  label = 'k0'
f11_s     in = (1B(16) 4F(16) 6E(16))  label = 'k.'
f12_s     in = (1B(16) 4F(16) 4D(16))  label = 'ke'
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) 53(16))  label = 'F1'
fwd       in = (1B(16) 4F(16) 54(16))  label = 'F2'
back      in = (1B(16) 4F(16) 55(16))  label = 'F3'
help      in = (1B(16) 4F(16) 56(16))  label = 'F4'
undo      in = (1B(16) 4F(16) 57(16))  label = 'F5'
stop      in = (1B(16) 4F(16) 50(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'
down      in = ()
down_s    in = ()
up        in = ()
up_s      in = ()
edit      in = ()
edit_s    in = ()
data      in = ()
data_s    in = ()

"   TERMINAL VIDEO ATTRIBUTES                                                 "
inverse_begin       out = (start_inverse)
inverse_end         out = (stop_inverse)
underline_begin     out = (start_inverse)
underline_end       out = (stop_inverse)

"   LOGICAL ATTRIBUTE SPECIFICATIONS                                          "
error_begin         out = (start_inverse)
error_end           out = (stop_inverse)
input_text_begin    out = (start_inverse)
input_text_end      out = (stop_inverse)
italic_begin        out = (start_inverse)
italic_end          out = (stop_inverse)

"   LINE DRAWING CHARACTER SPECIFICATION                                      "
ld_fine_begin            out = (prefix 31(16) 30(16) 6D(16))
ld_fine_end              out = (prefix 31(16) 31(16) 6D(16))
ld_fine_horizontal       out = 61(16)
ld_fine_vertical         out = 60(16)
ld_fine_upper_left       out = 66(16)
ld_fine_upper_right      out = 63(16)
ld_fine_lower_left       out = 65(16)
ld_fine_lower_right      out = 64(16)
ld_fine_up_t             out = 73(16)
ld_fine_down_t           out = 75(16)
ld_fine_left_t           out = 76(16)
ld_fine_right_t          out = 74(16)
ld_fine_cross            out = 62(16)
ld_medium_begin          out = (prefix 31(16) 30(16) 6D(16))
ld_medium_end            out = (prefix 31(16) 31(16) 6D(16))
ld_medium_horizontal     out = 61(16)
ld_medium_vertical       out = 60(16)
ld_medium_upper_left     out = 66(16)
ld_medium_upper_right    out = 63(16)
ld_medium_lower_left     out = 65(16)
ld_medium_lower_right    out = 64(16)
ld_medium_up_t           out = 73(16)
ld_medium_down_t         out = 75(16)
ld_medium_left_t         out = 76(16)
ld_medium_right_t        out = 74(16)
ld_medium_cross          out = 62(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 = (' ')

"   DEFAULT KEY DEFINITIONS FOR THE FULL SCREEN EDITOR                        "


"   END OF TERMINAL DEFINITION FILE FOR ZENITH Z19 TERMINAL                   "
