1 /*   BEGIN INCLUDE FILE linus_page_info.incl.pl1
 2 
 3    Written - Al Dupuis - August 1983
 4 */
 5 /* format: off */
 6 %skip (1);
 7      dcl     1 formatted_page_info  aligned based (formatted_page_ip),
 8                2 maximum_number_of_detail_blocks fixed bin, /* the most that can appear on a page */
 9                2 page_header_length fixed bin,              /* page header in lines */
10                2 title_block_length fixed bin,              /* titles in lines */
11                2 page_footer_length fixed bin,              /* page footer in lines */
12                2 number_of_detail_blocks fixed bin,
13                2 detail_blocks      (fpi_init_maximum_number_of_detail_blocks
14                                     refer (formatted_page_info.maximum_number_of_detail_blocks)),
15                  3 row_number       fixed bin (35),         /* position in the table */
16                  3 beginning_line_number fixed bin,         /* beginning line on page */
17                  3 group_header_length fixed bin,           /* group header length in lines */
18                  3 row_header_length fixed bin,             /* row header in lines */
19                  3 row_length       fixed bin,              /* row value in lines */
20                  3 subtotal_length  fixed bin,              /* subtotal in lines */
21                  3 subcount_length  fixed bin,              /* subcount in lines */
22                  3 total_length     fixed bin,              /* total in lines */
23                  3 count_length     fixed bin,              /* count in lines */
24                  3 row_footer_length fixed bin,             /* row footer in lines */
25                  3 group_footer_length fixed bin;           /* group footer length in lines */
26      dcl     formatted_page_ip      ptr;
27      dcl     fpi_init_maximum_number_of_detail_blocks fixed bin;
28 %skip (1);
29      dcl     1 page_info aligned    based (page_ip),
30                2 width              fixed bin,              /* width in chars */
31                2 length             fixed bin,              /* length in lines */
32                2 total_characters   fixed bin (21),         /* width * length */
33                2 page_info_size     fixed bin,              /* size of this structure in words */
34                2 page_ptr           ptr,                    /* points to the actual page */
35                2 page_overstrike_info_ptr ptr,              /* points to the overstrike info */
36                2 formatted_page_info_ptr ptr;               /* points to formatted_page_info */
37 %skip (1);
38      dcl     page_defined_as_chars  (page_info.total_characters) char (1) based (page_info.page_ptr);
39      dcl     page_defined_as_lines  (page_info.length) char (page_info.width) based (page_info.page_ptr);
40      dcl     page_defined_as_a_string char (page_info.total_characters) based (page_info.page_ptr);
41      dcl     page_ip                ptr;
42 %skip (1);
43      dcl     1 page_overstrike_info aligned based (page_overstrike_ip),
44                2 number_of_bits_or_chars fixed bin (21),    /* number of chars in the page */
45                2 bit_map (page_info.total_characters        /* on means this char on the page is overstruck */
46                          refer (page_overstrike_info.number_of_bits_or_chars)) bit (1) unaligned,
47                2 chars (page_info.total_characters          /* this is the overstrike character */
48                          refer (page_overstrike_info.number_of_bits_or_chars)) char (1) unaligned;
49      dcl     page_overstrike_ip     ptr;
50 
51      dcl     1 page_overstrike_info_redefined aligned based (page_overstrike_ip),
52                2 number_of_bits_or_chars fixed bin (21),
53                2 bit_map bit (page_overstrike_info_redefined.number_of_bits_or_chars) unaligned,
54                2 chars char (page_overstrike_info_redefined.number_of_bits_or_chars) unaligned;
55 
56 /*   END INCLUDE FILE linus_page_info.incl.pl1 */