1
2
3
4
5
6
7
8
9
10
11
12
13 declare star_branch_count fixed binary;
14 declare star_entry_count fixed binary;
15 declare star_entry_ptr pointer;
16 declare star_list_branch_ptr pointer;
17 declare star_link_count fixed binary;
18 declare star_linkx fixed binary;
19 declare star_names_ptr pointer;
20 declare star_list_names_ptr pointer;
21 declare star_select_sw fixed binary (3);
22
23
24
25
26
27 declare 1 star_entries (star_entry_count) aligned based (star_entry_ptr),
28 2 type fixed binary (2) unsigned unaligned,
29
30 2 nnames fixed binary (16) unsigned unaligned,
31
32 2 nindex fixed binary (18) unsigned unaligned;
33
34
35
36
37 declare star_names (sum (star_entries (*).nnames)) char (32) based (star_names_ptr);
38
39
40
41 declare 1 star_list_branch (star_branch_count + star_link_count) aligned based (star_list_branch_ptr),
42 2 type fixed binary (2) unsigned unaligned,
43
44 2 nnames fixed binary (16) unsigned unaligned,
45
46 2 nindex fixed binary (18) unsigned unaligned,
47
48 2 dtcm bit (36) unaligned,
49 2 dtu bit (36) unaligned,
50 2 mode bit (5) unaligned,
51 2 raw_mode bit (5) unaligned,
52 2 master_dir bit (1) unaligned,
53 2 pad bit (7) unaligned,
54 2 records fixed binary (18) unsigned unaligned;
55
56
57
58
59 declare 1 star_dir_list_branch (star_branch_count + star_link_count) aligned based (star_list_branch_ptr),
60 2 type fixed binary (2) unsigned unaligned,
61
62 2 nnames fixed binary (16) unsigned unaligned,
63
64 2 nindex fixed binary (18) unsigned unaligned,
65
66 2 dtem bit (36) unaligned,
67 2 pad bit (36) unaligned,
68 2 mode bit (5) unaligned,
69 2 raw_mode bit (5) unaligned,
70 2 master_dir bit (1) unaligned,
71 2 bit_count fixed binary (24) unaligned;
72
73
74
75
76 declare 1 star_links (star_branch_count + star_link_count) aligned based (star_list_branch_ptr),
77 2 type fixed binary (2) unsigned unaligned,
78
79 2 nnames fixed binary (16) unsigned unaligned,
80
81 2 nindex fixed binary (18) unsigned unaligned,
82
83 2 dtem bit (36) unaligned,
84 2 dtd bit (36) unaligned,
85 2 pathname_len fixed binary (18) unsigned unaligned,
86
87 2 pathname_index fixed binary (18) unsigned unaligned;
88
89
90
91
92 declare star_list_names char (32) based (star_list_names_ptr)
93 dimension (star_links (star_branch_count + star_link_count).nindex
94 + star_links (star_branch_count + star_link_count).nnames
95 + divide (star_links (star_branch_count + star_link_count).pathname_len + 31, 32, 17, 0)
96 * binary (
97 (star_links (star_branch_count + star_link_count).type = star_LINK)
98 & (star_select_sw >= star_LINKS_ONLY_WITH_LINK_PATHS), 1));
99
100
101
102 declare star_link_pathname char (star_links (star_linkx).pathname_len)
103 based (addr (star_list_names (star_links (star_linkx).pathname_index)));
104
105
106
107
108
109 declare star_LINKS_ONLY fixed binary (2) internal static options (constant) initial (1);
110 declare star_BRANCHES_ONLY fixed binary (2) internal static options (constant) initial (2);
111 declare star_ALL_ENTRIES fixed binary (2) internal static options (constant) initial (3);
112 declare star_LINKS_ONLY_WITH_LINK_PATHS
113 fixed binary (3) internal static options (constant) initial (5);
114 declare star_ALL_ENTRIES_WITH_LINK_PATHS
115 fixed binary (3) internal static options (constant) initial (7);
116
117
118
119 declare star_LINK fixed binary (2) unsigned internal static options (constant) initial (0);
120 declare star_SEGMENT fixed binary (2) unsigned internal static options (constant) initial (1);
121 declare star_DIRECTORY fixed binary (2) unsigned internal static options (constant) initial (2);
122
123