1 /* BEGIN INCLUDE FILE mcs_echo_neg.incl.pl1  Bernard Greenberg 1/20/79 */
 2 
 3 
 4 
 5 /****^  HISTORY COMMENTS:
 6   1) change(86-04-23,Coren), approve(86-04-23,MCR7300),
 7      audit(86-05-19,Beattie), install(86-07-08,MR12.0-1089):
 8                Changed version to 2, increased size of break table,
 9                included named constant for break table size.
10                                                    END HISTORY COMMENTS */
11 
12 
13 /* This include file defines the callable entrypoints and argument data
14    structures for ring 0 echo negotiation */
15 
16 /* format: style2,linecom,^indnoniterdo,indcomtxt,^inditerdo,dclind5,idind25 */
17      dcl  echo_neg_datap           ptr;
18      dcl  echo_neg_data_version_2  fixed bin static options (constant) init (2);
19      dcl  ECHO_NEG_BREAK_TABLE_SIZE
20                                    fixed bin internal static options (constant) init (255);
21 
22      dcl  1 echo_neg_data          based (echo_neg_datap) aligned,
23                                                             /* Echo negotiation data */
24             2 version              fixed bin,
25             2 break                (0:255) bit (1) unaligned,
26                                                             /* Break table, 1 = break */
27             2 pad                  bit (7) unaligned,
28             2 rubout_trigger_chars (2) unaligned,           /* Characters that cause rubout action */
29               3 char               char (1) unaligned,
30             2 rubout_sequence_length
31                                    fixed bin (4) unsigned unaligned,
32                                                             /* Length of rubout sequence, output */
33             2 rubout_pad_count     fixed bin (4) unsigned unaligned,
34                                                             /* Count of pads needed */
35             2 buffer_rubouts       bit (1) unaligned,       /* 1 = put rubouts and rubbed out in buffer */
36             2 rubout_sequence      char (12) unaligned;     /* Actual rubout sequence */
37 
38 /*** VERSION 1 STRUCTURE DECLARATION FOR COMPATIBILITY (TO BE REMOVED FOR MR12) ***/
39 
40      dcl  echo_neg_data_version_1  fixed bin static options (constant) init (1);
41 
42      dcl  1 v1_echo_neg_data       based (echo_neg_datap) aligned,
43                                                             /* Echo negotiation data */
44             2 version              fixed bin,
45             2 break                (0:127) bit (1) unaligned,
46                                                             /* Break table, 1 = break */
47             2 pad                  bit (7) unaligned,
48             2 rubout_trigger_chars (2) unaligned,           /* Characters that cause rubout action */
49               3 char               char (1) unaligned,
50             2 rubout_sequence_length
51                                    fixed bin (4) unsigned unaligned,
52                                                             /* Length of rubout sequence, output */
53             2 rubout_pad_count     fixed bin (4) unsigned unaligned,
54                                                             /* Count of pads needed */
55             2 buffer_rubouts       bit (1) unaligned,       /* 1 = put rubouts and rubbed out in buffer */
56             2 rubout_sequence      char (12) unaligned;     /* Actual rubout sequence */
57 /*** END VERSION 1 STRUCTURE ****/
58 
59      dcl  (
60           hcs_$tty_read_echoed,
61           hcs_$echo_negotiate_get_chars
62           )                        entry (fixed bin, ptr, fixed bin (21), fixed bin (21), fixed bin (21), fixed bin (21),
63                                    fixed bin, fixed bin, fixed bin (35));
64                                                             /*
65                                                                call  hcs_$echo_negotiate_get_chars
66                                                                (devx, datap, offset, nelem, NRETURNED, NECHOED_RETURNED, screen_left, STATE, CODE);
67                                                             */
68 
69 /* END INCLUDE FILE mcs_echo_neg.incl.pl1 */