1 /* Declarations of common data structures. */
2 
3 #define DATAFILE_LEN1 (7924)
4 #define DATAFILE_LEN2 (3391)
5 
6 extern strid_t datafile;
7 extern glsi32 datafile_strings;
8 extern glsi32 datafile_strindex[DATAFILE_LEN2];
9 
10 extern struct prsvec_1_ {
11     integer prsa, prsi, prso;
12     logical prswon;
13     integer prscon;
14 } prsvec_1;
15 
16 extern struct prssta_1_ {
17     integer oflag, oact, oprep1, oobj1, oprep;
18     char oname[8];
19     integer oprep2, oobj2, lastit, act, obj1, obj2, prep1, prep2, vflag, dobj,
20          dfl1, dfl2, dfw1, dfw2, iobj, ifl1, ifl2, ifw1, ifw2, bunlnt,
21         bunsub, bunvec[10];
22 } prssta_1;
23 
24 extern struct misc_1_ {
25     integer mbase, strbit, pltime, shour, smin, ssec, batdrp[9], inpch, outch,
26          dbch, dbgflg, prsflg, gdtflg, vmaj, vmin;
27     char vedit[1];
28 } misc_1;
29 
30 extern struct curxt_1_ {
31     integer xelnt[4], xtype, xroom1, xstrng, xactio, xobj;
32 } curxt_1;
33 
34 extern struct play_1_ {
35     integer winner, here;
36     logical telflg;
37     integer moves, deaths, rwscor, mxscor, mxload, ltshft, bloc, mungrm, hs,
38         egscor, egmxsc;
39 } play_1;
40 
41 extern struct rmsg_1_ {
42     integer mlnt, rtext[1500];
43 } rmsg_1;
44 
45 extern struct input_1_ {
46     integer inlnt;
47     char inbuf[76];
48     integer sublnt;
49     char subbuf[76];
50 } input_1;
51 
52 extern struct screen_1_ {
53     integer fromdr, scolrm, scolac, scoldr[8], scolwl[12];
54 } screen_1;
55 
56 extern struct rooms_1_ {
57     integer rlnt, rdesc2, rdesc1[200], rexit[200], ractio[200], rval[200],
58         rflag[200];
59 } rooms_1;
60 
61 extern struct exits_1_ {
62     integer xlnt, travel[1000];
63 } exits_1;
64 
65 extern struct objcts_1_ {
66     integer olnt, odesc1[300], odesc2[300], odesco[300], oactio[300], oflag1[
67         300], oflag2[300], ofval[300], otval[300], osize[300], ocapac[300]
68         , oroom[300], oadv[300], ocan[300], oread[300];
69 } objcts_1;
70 
71 extern struct puzzle_1_ {
72     integer cpdr[16], cpwl[8], cpvec[64];
73 } puzzle_1;
74 
75 extern struct oroom2_1_ {
76     integer r2lnt, o2[20], r2[20];
77 } oroom2_1;
78 
79 extern struct cevent_1_ {
80     integer clnt, ctick[30], cactio[30];
81     logical cflag[30], ccncel[30];
82 } cevent_1;
83 
84 extern struct hack_1_ {
85     integer thfpos;
86     logical thfflg, thfact, swdact;
87     integer swdsta;
88 } hack_1;
89 
90 extern struct vill_1_ {
91     integer vlnt, villns[4], vprob[4], vopps[4], vbest[4], vmelee[4];
92 } vill_1;
93 
94 extern struct advs_1_ {
95     integer alnt, aroom[4], ascore[4], avehic[4], aobj[4], aactio[4], astren[
96         4], aflag[4];
97 } advs_1;
98 
99 extern struct findex_1_ {
100     /* flags */
101     logical trollf, cagesf, bucktf, caroff, carozf, lwtidf, domef, glacrf,
102         echof, riddlf, lldf, cyclof, magicf, litldf, safef, gnomef,
103         gnodrf, mirrmf, egyptf, onpolf, blabf, brieff, superf, buoyf,
104         grunlf, gatef, rainbf, cagetf, empthf, deflaf, glacmf, frobzf,
105         endgmf, badlkf, thfenf, singsf, mrpshf, mropnf, wdopnf, mr1f,
106         mr2f, inqstf, follwf, spellf, cpoutf, cpushf, deadf, zgnomf, matf,
107          plookf, ptoucf, broc1f, broc2f, exorbf, exorcf, punlkf;
108     /* switch__ */
109     integer btief, binff, rvmnt, rvclr, rvcyc, rvsnd, rvgua, orrug, orcand,
110         ormtch, orlamp, mdir, mloc, poleuf, quesno, nqatt, corrct, lcell,
111         pnumb, acell, dcell, cphere, ttie, matobj;
112 } findex_1;
113 
114 /* We're going to take a chance here, and assume that the flags and switches
115     above are really packed like an array. So findex_flags[0..55] are the
116     flags, and findex_switches[0..23] are the switches. If your compiler
117     doesn't deal with this, you're in trouble. --Z */
118 #define findex_flags (&findex_1.trollf)
119 #define findex_switches (&findex_1.btief)
120 
121 extern integer c__0, c__1, c__2, c__3, c__4, c__5, c__6, c__7, c__8,
122   c__9, c__10, c__11, c__12, c__14, c__15, c__16, c__18, c__19, c__20,
123   c__21, c__22, c__23, c__24, c__25, c__27, c__30, c__31, c__33, c__34,
124   c__35, c__36, c__38, c__39, c__40, c__42, c__43, c__44, c__45, c__46,
125   c__47, c__48, c__49, c__50, c__51, c__52, c__53, c__54, c__55, c__56,
126   c__57, c__58, c__59, c__60, c__61, c__62, c__63, c__64, c__65, c__66,
127   c__67, c__69, c__70, c__71, c__75, c__76, c__79, c__80, c__81, c__82,
128   c__84, c__85, c__87, c__88, c__89, c__90, c__93, c__94, c__96, c__98,
129   c__99, c__100, c__103, c__104, c__107, c__108, c__109, c__110, c__111,
130   c__112, c__113, c__115, c__118, c__119, c__121, c__122, c__123,
131   c__124, c__126, c__128, c__129, c__130, c__131, c__132, c__133,
132   c__134, c__135, c__136, c__137, c__138, c__139, c__140, c__141,
133   c__142, c__143, c__144, c__145, c__148, c__149, c__150, c__151,
134   c__152, c__153, c__154, c__155, c__156, c__158, c__159, c__160,
135   c__161, c__162, c__163, c__164, c__165, c__166, c__169, c__170,
136   c__171, c__172, c__173, c__175, c__176, c__177, c__178, c__179,
137   c__180, c__181, c__182, c__183, c__184, c__185, c__186, c__187,
138   c__188, c__189, c__190, c__191, c__195, c__197, c__200, c__201,
139   c__202, c__203, c__204, c__205, c__207, c__208, c__209, c__210,
140   c__211, c__212, c__213, c__214, c__217, c__218, c__219, c__220,
141   c__226, c__227, c__228, c__229, c__232, c__233, c__234, c__235,
142   c__236, c__238, c__239, c__240, c__241, c__242, c__243, c__244,
143   c__247, c__248, c__249, c__250, c__256, c__257, c__258, c__259,
144   c__260, c__261, c__262, c__263, c__264, c__265, c__269, c__270,
145   c__272, c__273, c__279, c__280, c__282, c__283, c__284, c__285,
146   c__286, c__287, c__288, c__289, c__290, c__291, c__292, c__293,
147   c__294, c__295, c__296, c__297, c__298, c__299, c__300, c__301,
148   c__302, c__310, c__326, c__327, c__328, c__334, c__335, c__336,
149   c__337, c__338, c__339, c__340, c__341, c__343, c__344, c__345,
150   c__350, c__356, c__357, c__358, c__361, c__362, c__363, c__364,
151   c__365, c__366, c__367, c__368, c__369, c__370, c__371, c__378,
152   c__379, c__380, c__381, c__382, c__385, c__386, c__387, c__390,
153   c__391, c__396, c__397, c__398, c__400, c__401, c__402, c__403,
154   c__404, c__405, c__406, c__407, c__408, c__409, c__410, c__411,
155   c__412, c__413, c__414, c__419, c__420, c__421, c__422, c__423,
156   c__424, c__425, c__426, c__427, c__428, c__429, c__430, c__431,
157   c__432, c__437, c__438, c__439, c__442, c__443, c__445, c__447,
158   c__448, c__452, c__453, c__454, c__455, c__456, c__457, c__458,
159   c__459, c__460, c__461, c__462, c__463, c__464, c__465, c__466,
160   c__469, c__470, c__498, c__499, c__502, c__505, c__506, c__507,
161   c__510, c__511, c__512, c__515, c__516, c__519, c__520, c__521,
162   c__522, c__523, c__525, c__527, c__528, c__529, c__530, c__531,
163   c__532, c__533, c__534, c__535, c__536, c__537, c__538, c__539,
164   c__540, c__541, c__542, c__543, c__544, c__545, c__546, c__547,
165   c__548, c__549, c__550, c__551, c__559, c__560, c__561, c__562,
166   c__563, c__564, c__565, c__566, c__567, c__568, c__569, c__570,
167   c__571, c__572, c__573, c__577, c__578, c__579, c__580, c__583,
168   c__584, c__585, c__590, c__591, c__592, c__593, c__594, c__595,
169   c__596, c__597, c__598, c__599, c__600, c__601, c__603, c__604,
170   c__605, c__606, c__612, c__613, c__614, c__615, c__616, c__617,
171   c__618, c__619, c__620, c__621, c__622, c__623, c__625, c__626,
172   c__627, c__628, c__629, c__630, c__631, c__632, c__633, c__634,
173   c__635, c__636, c__637, c__638, c__639, c__640, c__641, c__642,
174   c__643, c__644, c__645, c__646, c__647, c__648, c__649, c__650,
175   c__651, c__658, c__659, c__660, c__662, c__663, c__664, c__666,
176   c__667, c__668, c__672, c__673, c__674, c__675, c__676, c__681,
177   c__682, c__683, c__684, c__685, c__686, c__687, c__688, c__694,
178   c__705, c__706, c__707, c__708, c__709, c__710, c__711, c__712,
179   c__723, c__724, c__725, c__726, c__727, c__728, c__729, c__730,
180   c__733, c__734, c__735, c__736, c__737, c__738, c__741, c__742,
181   c__743, c__744, c__745, c__746, c__747, c__748, c__751, c__752,
182   c__753, c__756, c__757, c__758, c__759, c__760, c__763, c__764,
183   c__765, c__766, c__767, c__768, c__769, c__778, c__779, c__780,
184   c__781, c__782, c__783, c__786, c__792, c__797, c__798, c__799,
185   c__800, c__806, c__807, c__808, c__809, c__810, c__811, c__818,
186   c__825, c__826, c__827, c__828, c__829, c__832, c__838, c__843,
187   c__846, c__847, c__848, c__851, c__855, c__856, c__857, c__858,
188   c__859, c__860, c__863, c__864, c__865, c__866, c__867, c__868,
189   c__869, c__870, c__871, c__874, c__875, c__876, c__877, c__880,
190   c__882, c__885, c__886, c__889, c__891, c__894, c__895, c__896,
191   c__897, c__898, c__899, c__900, c__903, c__904, c__905, c__906,
192   c__907, c__908, c__909, c__910, c__911, c__913, c__914, c__915,
193   c__923, c__924, c__925, c__926, c__927, c__928, c__929, c__930,
194   c__931, c__933, c__934, c__935, c__936, c__937, c__938, c__939,
195   c__942, c__943, c__944, c__945, c__946, c__947, c__948, c__949,
196   c__950, c__951, c__952, c__953, c__954, c__955, c__956, c__959,
197   c__960, c__961, c__962, c__963, c__967, c__968, c__969, c__970,
198   c__971, c__972, c__973, c__974, c__976, c__977, c__978, c__979,
199   c__980, c__981, c__983, c__984, c__985, c__986, c__987, c__990,
200   c__991, c__992, c__993, c__994, c__995, c__996, c__999, c__1000,
201   c__1001, c__1002, c__1003, c__1004, c__1005, c__1006, c__1007,
202   c__1008, c__1009, c__1010, c__1011, c__1012, c__1013, c__1014,
203   c__1015, c__1016, c__1017, c__1020, c__1021, c__1022, c__1023,
204   c__1024, c__1025, c__1026, c__1028, c__1029, c__1034, c__1036,
205   c__1038, c__1039, c__1040, c__1042, c__1043, c__1044, c__1046,
206   c__1047, c__1048, c__1049, c__1050, c__1051, c__1052, c__1053,
207   c__1054, c__1056, c__1057, c__1063, c__1064, c__1065, c__1066,
208   c__1067, c__1070, c__1071, c__1075, c__1076, c__1077, c__1081,
209   c__1500, c__10240, c_n1, c_n10, c_n61, c_n5555;
210 
211 extern logical c_true;
212 extern logical c_false;
213