1 /* BEGIN include file ...  g115_message.incl.pl1 */
 2 
 3 /* This structure describes the format of any message which may be sent by the
 4    g115_dim to the G115 data terminal or received by the dim from that terminal.
 5    The structure includes some state information associated with the processing
 6    of the message block.
 7 */
 8 
 9 /* Modified 04/10/77 by Bob Franklin to unpack input blocks */
10 /* Modified by J. Nicholls 7/78 to allow for remaing_record_count instead of character */
11 /* Modified by J. Whitmore, 8/79, to remove null char field, count and garbage variables, and to improve comments */
12 
13 dcl  msgp ptr init (null);                                  /* pointer to message structure */
14 
15 dcl 1 g115_message aligned based (msgp),                    /* message and related state variables */
16     2 next_bp ptr,                                          /* forward thread when buffers are chained */
17 
18     2 text_char_count fixed bin,                            /* character count of text */
19     2 rec_count fixed bin,                                  /* remaining text records to be processed (input only) */
20     2 last_char_read fixed bin,                             /* index of last processed input char (Record Separator) */
21     2 being_changed bit (1),                                /* message or state is being modified */
22 
23     2 g115_msg_block,                                       /* chars forming the message to/from ring 0 */
24 
25       3 soh bit (9) unal,                                   /* start of header character */
26       3 fmt_code bit (9) unal,                              /* format code */
27       3 seq_code bit (9) unal,                              /* sequence code */
28       3 addr_code bit (9) unal,                             /* address code */
29       3 op_code unal,                                       /* operations code */
30         4 ascii_pad bit (2) unal,                           /* -- */
31         4 use bit (1) unal,                                 /* should = "1"b */
32         4 ack bit (3) unal,                                 /* acknowledgement field */
33         4 cmd bit (3) unal,                                 /* instruction field */
34       3 id_code bit (9) unal,                               /* identification code */
35       3 stx bit (9) unal,                                   /* start of text character */
36       3 text (324 refer (text_char_count)) char (1) unal,   /* text of message: <mc><data_record><rs> ...  */
37       3 etx bit (9) unal;                                   /* end of text character */
38 
39 
40 /* END include file ...  g115_message.incl.pl1 */