1
2
3
4
5 dcl 1 tblkdata
6 aligned based (shared.tblkdata_ptr),
7 2 block,
8 3 count fixed bin,
9 3 ptr (500) ptr,
10
11 3 free (500) bit (1) unal,
12 2 line_area,
13 3 count fixed bin,
14 3 ptr (500) ptr,
15
16 3 free (500) bit (1) unal,
17 2 text_area,
18 3 count fixed bin,
19 3 ptr (500) ptr,
20
21 3 free (500) bit (1) unal,
22 3 string_area_count
23 fixed bin;
24 dcl LINE_AREA_SIZE fixed bin static options (constant) init (24);
25 dcl line_area_ptr ptr init (null);
26 dcl 1 line_area aligned based (line_area_ptr),
27 2 next ptr,
28 2 prev ptr,
29 2 count fixed bin,
30 2 ndx fixed bin,
31 2 pndx fixed bin,
32 2 linptr (LINE_AREA_SIZE) ptr;
33
34 dcl TEXT_AREA_SIZE fixed bin static options (constant) init (6);
35 dcl text_area_ptr ptr init (null);
36 dcl 1 text_area aligned based (text_area_ptr),
37 2 next ptr,
38 2 count fixed bin,
39 2 ndx fixed bin,
40 2 pndx fixed bin,
41 2 strareaptr (TEXT_AREA_SIZE) ptr;
42
43 dcl string_area (256) fixed bin based;
44 dcl txtstrptr ptr;
45 dcl txtstr char (1020) var based (txtstrptr);
46
47 dcl TEXT_VERSION fixed bin static options (constant) init (9);
48
49 dcl 1 text aligned based (shared.blkptr),
50 2 version fixed bin,
51 2 blkndx fixed bin,
52 2 blktype char (2),
53
54 2 hdr aligned like text_header,
55
56 2 input aligned like text_entry,
57 2 input_line char (1020) var,
58 2 line_area,
59 3 first ptr,
60 3 cur ptr,
61 2 next_text ptr,
62
63 2 parms aligned like default_parms,
64 2 text_area,
65 3 first ptr,
66 3 cur ptr;
67
68 dcl 1 text_entry aligned based (const.text_entry_ptr),
69 2 sws,
70 3 art bit (1) unal,
71 3 cbar,
72 4 add bit (1) unal,
73 4 del bit (1) unal,
74 4 mod bit (1) unal,
75 3 default bit (1) unal,
76 3 DVctl bit (1) unal,
77 3 embedded bit (1) unal,
78 3 end_keep bit (1) unal,
79 3 fnt_chng bit (1) unal,
80 3 footref bit (1) unal,
81 3 hanging bit (1) unal,
82 3 keep bit (1) unal,
83 3 no_trim bit (1) unal,
84 3 oflo bit (1) unal,
85 3 punct bit (1) unal,
86 3 quad bit (6) unal,
87 3 space_added
88 bit (1) unal,
89 3 spcl,
90 4 file bit (1) unal,
91 4 blk_splt
92 bit (1) unal,
93 4 page_mkup
94 bit (1) unal,
95 3 table bit (1) unal,
96 3 tblspc bit (1) unal,
97 3 title bit (1) unal,
98 3 unspnct bit (1) unal,
99 3 unstop bit (1) unal,
100 3 unstrt bit (1) unal,
101 3 unswrds bit (1) unal,
102 3 white bit (1) unal,
103 3 und_prot bit (1) unal,
104 3 MBZ bit (4) unal,
105 2 art_start fixed bin unal,
106 2 art_len fixed bin unal,
107 2 cbar_level
108 char (1) aligned,
109 2 cur,
110 3 chrct fixed bin,
111 3 gaps fixed bin,
112 3 width fixed bin (31),
113 3 min fixed bin (31),
114 3 avg fixed bin (31),
115 3 max fixed bin (31),
116 3 font like fntstk_entry,
117 2 depth fixed bin (31),
118
119 2 font like fntstk_entry,
120 2 index fixed bin (21),
121 2 info,
122 3 fileno fixed bin,
123 3 lineno fixed bin,
124 3 lineno0 fixed bin,
125 2 linespace fixed bin (31),
126 2 lmarg fixed bin (31),
127 2 mod_len fixed bin,
128 2 mod_start fixed bin,
129 2 net fixed bin (31),
130 2 ptr ptr,
131 2 rmarg fixed bin (31),
132 2 spcl_iocbp ptr,
133 2 sym_delim char (1) unal,
134 2 tblcol fixed bin,
135 2 title_delim
136 char (1) unal,
137 2 title_index
138 fixed bin,
139 2 width fixed bin (31),
140 2 ftn,
141 3 ct fixed bin,
142 3 used fixed bin (31),
143 3 e (40),
144 4 blkndx fixed bin unal,
145
146 4 refno fixed bin unal;
147
148 dcl (
149 quadi init ("40"b3),
150 quado init ("20"b3),
151 quadl init ("10"b3),
152 quadc init ("04"b3),
153 quadr init ("02"b3),
154 just init ("01"b3)
155 ) bit (6) static options (constant);
156
157 dcl 1 ctl aligned like text_entry based (const.ctl_ptr);
158 dcl ctl_line char (1020) var based (ctl.ptr);
159
160 dcl txtlinptr ptr;
161 dcl 1 txtlin aligned like text_entry based (txtlinptr);
162
163 dcl 1 text_header aligned based (const.text_header_ptr),
164 2 sws,
165 3 art bit (1) unal,
166 3 dfrftn bit (1) unal,
167 3 modified bit (1) unal,
168 3 no_trim bit (1) unal,
169 3 oflo_ftn bit (1) unal,
170 3 tblblk bit (1) unal,
171 3 unref bit (1) unal,
172 3 white bit (1) unal,
173 3 picture bit (1) unal,
174 3 orphan bit (1) unal,
175 3 MBZ bit (26) unal,
176 2 art_count fixed bin unal,
177 2 blkptr ptr,
178 2 cap_size fixed bin unal,
179 2 cap_used fixed bin (31),
180 2 colno fixed bin unal,
181 2 count fixed bin unal,
182 2 eqn_line_count
183 fixed bin unal,
184 2 first_text fixed bin unal,
185 2 ftn,
186 3 ct fixed bin,
187 3 usd fixed bin (31),
188 3 blkndx (40) fixed bin,
189 2 head_size fixed bin,
190 2 head_used fixed bin (31),
191 2 index fixed bin unal,
192 2 keep_count fixed bin unal,
193 2 last_line fixed bin,
194 2 mx_ttl_ndx fixed bin,
195 2 name char (32) var,
196 2 nofill_count
197 fixed bin,
198 2 parms_ptr ptr,
199 2 refer fixed bin,
200 2 refer_index
201 fixed bin,
202 2 split fixed bin,
203 2 trl_ws fixed bin (31),
204 2 used fixed bin (31);
205
206 dcl 1 text_parms aligned like default_parms
207 based (const.text_parms_ptr);
208
209 dcl 1 current_parms
210 aligned like default_parms
211 based (const.current_parms_ptr);
212
213 dcl 1 default_parms
214 aligned based (const.default_parms_ptr),
215 2 sws,
216 3 quad bit (6) unal,
217 3 art bit (1) unal,
218 3 cbar,
219 4 add bit (1) unal,
220 4 del bit (1) unal,
221 4 mod bit (1) unal,
222 3 fill_mode
223 bit (1) unal,
224 3 footnote bit (1) unal,
225 3 hfc bit (1) unal,
226 3 htab_mode
227 bit (1) unal,
228 3 keep bit (1) unal,
229 3 page bit (1) unal,
230 3 title_mode
231 bit (1) unal,
232 3 MBZ bit (19) unal,
233 2 ftrptr ptr,
234 2 cbar_level
235 char (1) aligned,
236 2 hdrptr ptr,
237 2 left,
238 3 indent fixed bin (31),
239 3 undent fixed bin (31),
240 2 linespace fixed bin (31),
241 2 measure fixed bin (31),
242
243 2 right like default_parms.left,
244 2 fntstk,
245 3 index fixed bin,
246
247 3 entry (0:19) like fntstk_entry;
248
249 dcl hfcblk_ptr ptr;
250 dcl 1 hfcblk aligned like text based (hfcblk_ptr);
251
252