1 /* BEGIN INCLUDE FILE ... merge_ascii_info.incl.pl1 ... REM Winter '77 */
 2 /* Modified for archive component convention THVV 1980 */
 3 /* Added output_iocb_ptr for cpa -output_file */
 4 
 5 dcl  ma_info_ptr ptr;
 6 
 7 /* programs modifiying variables are supplied im most comments */
 8 /* ma_info.control.*** modified by ma unless otherwise noted */
 9 /* ma_info.per_text(output).*** usually set by ma_edit_ instead */
10 /* ma=merge_ascii ma_=merge_ascii_ mar_=ma_resynch_ maa_=ma_analyze_ mae_=ma_edit_ */
11 
12 dcl 1 ma_info aligned based (ma_info_ptr),
13     2 control aligned,                                      /* stuff controling program action */
14       3 minlines fixed bin,                                 /* ma: resynch block must have >= minlines */
15       3 minchars fixed bin,                                 /* ma: resynch block must have >= minchars */
16       3 lo fixed bin,                                       /* ma: lowest seg_index to resynch */
17       3 hi fixed bin,                                       /* ma: highest seg_index to resynch */
18       3 eof bit (1),                                        /* set by mar_ and ma_.skip_same for ma_ */
19       3 synchlen fixed bin,                                 /* mar_: chars between resynch start and next diff */
20       3 synchlines fixed bin,                               /* mar_: lines between resynch start and next diff */
21       3 have_orig bit (1),                                  /* "1"b if original provided */
22       3 have_output bit (1),                                /* ma_: "1"b if merge and have got path */
23       3 have_edit bit (1),                                  /* if any "-edit" segs */
24       3 convergence_ok bit (1) aligned,                     /* "1"b => ok to pick up identical changes */
25       3 brief_mode bit (1) aligned,                         /* UNUSED */
26       3 total_differences fixed bin,                        /* ma_: number of time synch lost */
27       3 total_lines_differing fixed bin,                    /* ma_: summed over all diff in all texts */
28       3 totals_only bit (1),                                /* ma: dont print differences */
29       3 print_heading bit (1),                              /* ma: print heading before start */
30       3 no_line_numbers bit (1),                            /* ma: dont print linnos with diffs */
31       3 print_new_lines bit (1),                            /* ma: dont print context or old with diff */
32       3 no_totals bit (1),                                  /* ma: dont print totals line when done */
33       3 abort_label label,                                  /* goto abort label to bust out */
34       3 op_dirname char (168),                              /* info about desired output seg */
35       3 op_ename char (32),
36       3 op_ptr ptr,
37       3 output_iocb_ptr ptr,
38     2 per_text_info (8) aligned,                            /* 1=output_temp, 2=orig, 3+=updates */
39       3 tptr ptr,                                           /* ma: base of each text */
40       3 tchars fixed bin,                                   /* ma: chars in each text */
41       3 tlines fixed bin,                                   /* UNUSED */
42       3 cp ptr,                                             /* ma_: ->current position, next char to process */
43       3 len fixed bin,                                      /* ma_: chars remaining to process */
44       3 line fixed bin,                                     /* ma_: line number cp points at */
45       3 difflen fixed bin,                                  /* mar_: chars between synchs */
46       3 difflines fixed bin,                                /* mar_: lines between synchs */
47       3 same_as fixed bin,                                  /* mar_: seg_index of lowest seg with identical diff */
48       3 textid char (1) aligned,                            /* ma: char to identify text in display */
49       3 edit bit (1) aligned,                               /* ma: not take automatically */
50       3 pad_t (3) fixed bin,                                /* make 16 wds for indexing speed */
51     2 text_id (8) aligned,                                  /* names of the stff */
52       3 dirname char (168),
53       3 ename char (32),
54       3 component char (32);
55 
56 dcl  ma_text_ids char (8) init ("mabcdefg")int static options (constant);
57 dcl  MA_TEXT_IDS char (8) init ("MABCDEFG")int static options (constant);
58 dcl  ma_max_texts fixed bin int static options (constant) init (8);
59 
60 /* END INCLUDE FILE ... merge_ascii_info.incl.pl1 */