comparison mm7_data.h @ 0:8b8875f5b359

Initial commit
author Nomad
date Fri, 05 Oct 2012 16:07:14 +0200
parents
children 2ca04ccb612a
comparison
equal deleted inserted replaced
-1:000000000000 0:8b8875f5b359
1 #pragma once
2 #include <string>
3 #include "OSAPI.h"
4
5 #include "VectorTypes.h"
6
7 typedef char _UNKNOWN;
8
9
10 typedef unsigned int uint;
11 /*
12 #define LOWORD(a) (*((unsigned short *)&a))
13 #define SLOWORD(a) (__debugbreak(), *((signed short *)&a))
14 #define HIWORD(a) (*((unsigned short *)&a + 1))
15 #define SHIWORD(a) (*((short *)&a + 1))
16
17 #define LODWORD(a) (*((unsigned int *)&a))
18 #define HIDWORD(a) (*((unsigned int *)&a + 1))
19 #define SLODWORD(a) (*((int *)&a))
20 #define SHIDWORD(a) (*((int *)&a + 1))
21
22 #define LOBYTE(a) (*((unsigned char *)&a))
23 #define SLOBYTE(a) (*((signed char *)&a))
24
25 #define HIBYTE(a) (*((unsigned char *)&a + sizeof(a) - 1))
26
27 #define BYTE1(a) (*((unsigned char *)&a + 1))
28 #define SBYTE1(a) (*((signed char *)&a + 1))
29
30 #define BYTE2(a) (*((unsigned char *)&a + 2))
31 #define BYTE3(a) (*((unsigned char *)&a + 3))
32
33 #define WORD2(a) (__debugbreak(), *(unsigned short *)((char *)&a + 4))
34
35 #define __OFSUB__(a, b) (unsigned __int8)((a) == (b))
36
37
38 typedef unsigned __int16 _WORD;
39 typedef unsigned __int64 _QWORD;
40 */
41
42
43
44
45
46 #define COERCE_UNSIGNED_INT64(a) (__debugbreak(), a)
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 #if defined(__GNUC__)
63 typedef long long ll;
64 typedef unsigned long long ull;
65 #define __int64 long long
66 #define __int32 int
67 #define __int16 short
68 #define __int8 char
69 #define MAKELL(num) num ## LL
70 #define FMT_64 "ll"
71 #elif defined(_MSC_VER)
72 typedef __int64 ll;
73 typedef unsigned __int64 ull;
74 #define MAKELL(num) num ## i64
75 #define FMT_64 "I64"
76 #elif defined (__BORLANDC__)
77 typedef __int64 ll;
78 typedef unsigned __int64 ull;
79 #define MAKELL(num) num ## i64
80 #define FMT_64 "L"
81 #else
82 #error "unknown compiler"
83 #endif
84 typedef unsigned int uint;
85 typedef unsigned char uchar;
86 typedef unsigned short ushort;
87 typedef unsigned long ulong;
88
89 typedef char int8;
90 typedef signed char sint8;
91 typedef unsigned char uint8;
92 typedef short int16;
93 typedef signed short sint16;
94 typedef unsigned short uint16;
95 typedef int int32;
96 typedef signed int sint32;
97 typedef unsigned int uint32;
98 typedef ll int64;
99 typedef ll sint64;
100 typedef ull uint64;
101
102 // Partially defined types:
103 #define _BYTE uint8
104 #define _WORD uint16
105 #define _DWORD uint32
106 #define _QWORD uint64
107 #if !defined(_MSC_VER)
108 #define _LONGLONG __int128
109 #endif
110
111 #ifndef _WINDOWS_
112 typedef int8 BYTE;
113 typedef int16 WORD;
114 typedef int32 DWORD;
115 typedef int32 LONG;
116 #endif
117 typedef int64 QWORD;
118 #ifndef __cplusplus
119 typedef int bool; // we want to use bool in our C programs
120 #endif
121
122 // Some convenience macros to make partial accesses nicer
123 // first unsigned macros:
124 #define LOBYTE(x) (*((_BYTE*)&(x))) // low byte
125 #define LOWORD(x) (*((_WORD*)&(x))) // low word
126 #define LODWORD(x) (*((_DWORD*)&(x))) // low dword
127 #define HIBYTE(x) (*((_BYTE*)&(x)+1))
128 #define HIWORD(x) (*((_WORD*)&(x)+1))
129 #define HIDWORD(x) (*((_DWORD*)&(x)+1))
130 #define BYTEn(x, n) (*((_BYTE*)&(x)+n))
131 #define WORDn(x, n) (*((_WORD*)&(x)+n))
132 #define BYTE1(x) BYTEn(x, 1) // byte 1 (counting from 0)
133 #define BYTE2(x) BYTEn(x, 2)
134 #define BYTE3(x) BYTEn(x, 3)
135 #define BYTE4(x) BYTEn(x, 4)
136 #define BYTE5(x) BYTEn(x, 5)
137 #define BYTE6(x) BYTEn(x, 6)
138 #define BYTE7(x) BYTEn(x, 7)
139 #define BYTE8(x) BYTEn(x, 8)
140 #define BYTE9(x) BYTEn(x, 9)
141 #define BYTE10(x) BYTEn(x, 10)
142 #define BYTE11(x) BYTEn(x, 11)
143 #define BYTE12(x) BYTEn(x, 12)
144 #define BYTE13(x) BYTEn(x, 13)
145 #define BYTE14(x) BYTEn(x, 14)
146 #define BYTE15(x) BYTEn(x, 15)
147 #define WORD1(x) WORDn(x, 1)
148 #define WORD2(x) WORDn(x, 2) // third word of the object, unsigned
149 #define WORD3(x) WORDn(x, 3)
150 #define WORD4(x) WORDn(x, 4)
151 #define WORD5(x) WORDn(x, 5)
152 #define WORD6(x) WORDn(x, 6)
153 #define WORD7(x) WORDn(x, 7)
154
155 // now signed macros (the same but with sign extension)
156 #define SLOBYTE(x) (*((int8*)&(x)))
157 #define SLOWORD(x) (*((int16*)&(x)))
158 #define SLODWORD(x) (*((int32*)&(x)))
159 #define SHIBYTE(x) (*((int8*)&(x)+1))
160 #define SHIWORD(x) (*((int16*)&(x)+1))
161 #define SHIDWORD(x) (*((int32*)&(x)+1))
162 #define SBYTEn(x, n) (*((int8*)&(x)+n))
163 #define SWORDn(x, n) (*((int16*)&(x)+n))
164 #define SBYTE1(x) SBYTEn(x, 1)
165 #define SBYTE2(x) SBYTEn(x, 2)
166 #define SBYTE3(x) SBYTEn(x, 3)
167 #define SBYTE4(x) SBYTEn(x, 4)
168 #define SBYTE5(x) SBYTEn(x, 5)
169 #define SBYTE6(x) SBYTEn(x, 6)
170 #define SBYTE7(x) SBYTEn(x, 7)
171 #define SBYTE8(x) SBYTEn(x, 8)
172 #define SBYTE9(x) SBYTEn(x, 9)
173 #define SBYTE10(x) SBYTEn(x, 10)
174 #define SBYTE11(x) SBYTEn(x, 11)
175 #define SBYTE12(x) SBYTEn(x, 12)
176 #define SBYTE13(x) SBYTEn(x, 13)
177 #define SBYTE14(x) SBYTEn(x, 14)
178 #define SBYTE15(x) SBYTEn(x, 15)
179 #define SWORD1(x) SWORDn(x, 1)
180 #define SWORD2(x) SWORDn(x, 2)
181 #define SWORD3(x) SWORDn(x, 3)
182 #define SWORD4(x) SWORDn(x, 4)
183 #define SWORD5(x) SWORDn(x, 5)
184 #define SWORD6(x) SWORDn(x, 6)
185 #define SWORD7(x) SWORDn(x, 7)
186
187
188
189
190 // Generate a reference to pair of operands
191 template<class T> int16 __PAIR__( int8 high, T low) { return ((( int16)high) << sizeof(high)*8) | uint8(low); }
192 template<class T> int32 __PAIR__( int16 high, T low) { return ((( int32)high) << sizeof(high)*8) | uint16(low); }
193 template<class T> int64 __PAIR__( int32 high, T low) { return ((( int64)high) << sizeof(high)*8) | uint32(low); }
194 template<class T> uint16 __PAIR__(uint8 high, T low) { return (((uint16)high) << sizeof(high)*8) | uint8(low); }
195 template<class T> uint32 __PAIR__(uint16 high, T low) { return (((uint32)high) << sizeof(high)*8) | uint16(low); }
196 template<class T> uint64 __PAIR__(uint32 high, T low) { return (((uint64)high) << sizeof(high)*8) | uint32(low); }
197
198 // rotate left
199 template<class T> T __ROL__(T value, uint count)
200 {
201 const uint nbits = sizeof(T) * 8;
202 count %= nbits;
203
204 T high = value >> (nbits - count);
205 value <<= count;
206 value |= high;
207 return value;
208 }
209
210 // rotate right
211 template<class T> T __ROR__(T value, uint count)
212 {
213 const uint nbits = sizeof(T) * 8;
214 count %= nbits;
215
216 T low = value << (nbits - count);
217 value >>= count;
218 value |= low;
219 return value;
220 }
221
222 // carry flag of left shift
223 template<class T> int8 __MKCSHL__(T value, uint count)
224 {
225 const uint nbits = sizeof(T) * 8;
226 count %= nbits;
227
228 return (value >> (nbits-count)) & 1;
229 }
230
231 // carry flag of right shift
232 template<class T> int8 __MKCSHR__(T value, uint count)
233 {
234 return (value >> (count-1)) & 1;
235 }
236
237 // sign flag
238 template<class T> int8 __SETS__(T x)
239 {
240 if ( sizeof(T) == 1 )
241 return int8(x) < 0;
242 if ( sizeof(T) == 2 )
243 return int16(x) < 0;
244 if ( sizeof(T) == 4 )
245 return int32(x) < 0;
246 return int64(x) < 0;
247 }
248
249 // overflow flag of subtraction (x-y)
250 template<class T, class U> int8 __OFSUB__(T x, U y)
251 {
252 if ( sizeof(T) < sizeof(U) )
253 {
254 U x2 = x;
255 int8 sx = __SETS__(x2);
256 return (sx ^ __SETS__(y)) & (sx ^ __SETS__(x2-y));
257 }
258 else
259 {
260 T y2 = y;
261 int8 sx = __SETS__(x);
262 return (sx ^ __SETS__(y2)) & (sx ^ __SETS__(x-y2));
263 }
264 }
265
266 // overflow flag of addition (x+y)
267 template<class T, class U> int8 __OFADD__(T x, U y)
268 {
269 if ( sizeof(T) < sizeof(U) )
270 {
271 U x2 = x;
272 int8 sx = __SETS__(x2);
273 return ((1 ^ sx) ^ __SETS__(y)) & (sx ^ __SETS__(x2+y));
274 }
275 else
276 {
277 T y2 = y;
278 int8 sx = __SETS__(x);
279 return ((1 ^ sx) ^ __SETS__(y2)) & (sx ^ __SETS__(x+y2));
280 }
281 }
282
283 // carry flag of subtraction (x-y)
284 template<class T, class U> int8 __CFSUB__(T x, U y)
285 {
286 int size = sizeof(T) > sizeof(U) ? sizeof(T) : sizeof(U);
287 if ( size == 1 )
288 return uint8(x) < uint8(y);
289 if ( size == 2 )
290 return uint16(x) < uint16(y);
291 if ( size == 4 )
292 return uint32(x) < uint32(y);
293 return uint64(x) < uint64(y);
294 }
295
296 // carry flag of addition (x+y)
297 template<class T, class U> int8 __CFADD__(T x, U y)
298 {
299 int size = sizeof(T) > sizeof(U) ? sizeof(T) : sizeof(U);
300 if ( size == 1 )
301 return uint8(x) > uint8(x+y);
302 if ( size == 2 )
303 return uint16(x) > uint16(x+y);
304 if ( size == 4 )
305 return uint32(x) > uint32(x+y);
306 return uint64(x) > uint64(x+y);
307 }
308
309
310
311 //-------------------------------------------------------------------------
312 // Data declarations
313 extern int (__cdecl *sprintfex)(char *a1, const char *a2, ...);
314
315 extern int dword_4C9890[10]; // weak
316 extern int dword_4C9920[16]; // weak
317 extern _UNKNOWN unk_4D8548; // weak
318 extern char byte_4D864C; // weak
319 extern int dword_4D86CC; // weak
320 extern int dword_4D86D8; // weak
321 extern int dword_4D86F0; // weak
322 extern int dword_4DAFCC; // weak
323 extern int (__stdcall *off_4DAFDC)(char); // weak
324 extern char asc_4DB724[]; // idb
325 extern int dword_4DBD94; // weak
326 extern int dword_4DF380[]; // weak
327 extern int dword_4DF390; // weak
328 extern char Str2[]; // idb
329 extern int dword_4DF3A4; // weak
330 extern char byte_4E185C; // weak
331 extern char am_byte_4E185D; // weak
332 extern char byte_4E185E; // weak
333 extern int amuint_4E1860; // weak
334 extern int amuint_4E1864; // weak
335 extern int amuint_4E1868; // weak
336 extern int amuint_4E186C; // weak
337 extern int amuint_4E1870; // weak
338 extern int dword_4E1874; // weak
339 extern int dword_4E1878; // weak
340 extern int dword_4E187C; // weak
341 extern int dword_4E1880; // weak
342 extern int dword_4E1884; // weak
343 extern int dword_4E1888; // weak
344 extern char pArcomagePlayer2Name[8];
345 extern char pArcomagePlayer1Name[8];
346 extern char pDeckMaster[12];
347 extern char aIxf[4]; // idb
348 extern _UNKNOWN unk_4E19FC; // weak
349 extern char pAreYouSureWishToLeave[32];
350 extern char asc_4E1A28[4]; // idb
351 extern char aUsxfs[13];
352 extern char aLayout_pcx[11]; // weak
353 extern char aSprites_pcx[12]; // weak
354 extern char aProblemInBlit_[]; // idb
355 extern char aEWorkMsdevMm7M[]; // idb
356 extern char aProblemInBli_0[]; // idb
357 extern char aD[]; // idb
358 extern char asc_4E1AB0[]; // idb
359 extern char aWb_0[]; // idb
360 extern char a24bitPcxOnly[]; // idb
361 extern char Mode[]; // idb
362 extern char a16bitPcx[]; // idb
363 extern char aUnableToLoadS[]; // idb
364 extern char aBitmaps[]; // idb
365 extern char aIcons[]; // idb
366 extern char aPending[]; // idb
367 extern char aCanTFindS[]; // idb
368 extern char pDayMoonPhase[28];
369 extern char *spellbook_texture_filename_suffices[8]; // weak
370 extern __int16 word_4E1D3A[]; // weak
371 extern __int16 pTownPortalBook_xs[6];
372 extern __int16 pTownPortalBook_ys[6];
373 extern __int16 pTownPortalBook_ws[6];
374 extern __int16 pTownPortalBook_hs[6];
375 extern int dword_4E20D0[]; // idb
376 extern char byte_4E2430[]; // weak
377 extern char byte_4E2431[]; // weak
378 extern unsigned int pLloydsBeaconsPreviewXs[5];
379 extern int pLloydsBeaconsPreviewYs[5];
380 extern unsigned int pLloydsBeacons_SomeXs[5];
381 extern int pLloydsBeacons_SomeYs[]; // idb
382 extern char aSbwb00[7]; // weak
383 extern char aW[2]; // idb
384 extern char aA[2]; // idb
385 extern char aSD[]; // idb
386 extern char aSS03d03dS000S0[]; // idb
387 extern char aLuS[]; // idb
388 extern char aS_1[]; // idb
389 extern char aSbSc02d[]; // idb
390 extern char aSbSs02d[]; // idb
391 extern char aTabDb[]; // idb
392 extern char aTabDa[]; // idb
393 extern char aIbM6D[]; // idb
394 extern char aIbM6U[]; // idb
395 extern char aIbM5D[]; // idb
396 extern char aIbM5U[]; // idb
397 extern char aPagemask[]; // idb
398 extern char aBook[]; // idb
399 extern char aSpell_fnt[]; // idb
400 extern char aAutonote_fnt[]; // idb
401 extern char aBook2_fnt[]; // idb
402 extern char pFontFile[]; // idb
403 extern char aFontpal[]; // idb
404 extern char aMapbordr[]; // idb
405 extern char aLloydDD_pcx[]; // idb
406 extern char aDataLloydDD_pc[]; // idb
407 extern char aLb_bordr[]; // idb
408 extern char aTphell[]; // idb
409 extern char aTpheaven[]; // idb
410 extern char aTpisland[]; // idb
411 extern char aTpwarlock[]; // idb
412 extern char aTpelf[]; // idb
413 extern char aTpharmndy[]; // idb
414 extern char aTownport[]; // idb
415 extern char aSbquiknot[]; // idb
416 extern char aTabAn8a[]; // idb
417 extern char aTabAn8b[]; // idb
418 extern char aTabAn4a[]; // idb
419 extern char aTabAn4b[]; // idb
420 extern char aTabAn5a[]; // idb
421 extern char aTabAn5b[]; // idb
422 extern char aTabAn3a[]; // idb
423 extern char aTabAn3b[]; // idb
424 extern char aTabAn2a[]; // idb
425 extern char aTabAn2b[]; // idb
426 extern char aTabAn1a[]; // idb
427 extern char aTabAn1b[]; // idb
428 extern char aDivbar[]; // idb
429 extern char aSbautnot[]; // idb
430 extern char aTabwoff[]; // idb
431 extern char aTabwon[]; // idb
432 extern char aTabeoff[]; // idb
433 extern char aTabeon[]; // idb
434 extern char aTabsoff[]; // idb
435 extern char aTabson[]; // idb
436 extern char aTabnoff[]; // idb
437 extern char aTabnon[]; // idb
438 extern char aZootOff[]; // idb
439 extern char aZoomOff[]; // idb
440 extern char aZootOn[]; // idb
441 extern char aZoomOn[]; // idb
442 extern char aSbmap[]; // idb
443 extern char aMoon_ful[]; // idb
444 extern char aMoon_2[]; // idb
445 extern char aMoon_4[]; // idb
446 extern char aMoon_new[]; // idb
447 extern char aSbdateTime[]; // idb
448 extern char aTabAn7a[]; // idb
449 extern char aTabAn6a[]; // idb
450 extern char aTabAn7b[]; // idb
451 extern char aTabAn6b[]; // idb
452 extern char aSbplayrnot[]; // idb
453 extern char aPending_0[]; // idb
454 extern char aUnknown[8]; // weak
455 extern char aS100110S[]; // idb
456 extern char aS100110D[]; // idb
457 extern char aS100110DS[]; // idb
458 extern char aS100110D02dSS[]; // idb
459 extern int uGame_if_0_else_ui_id__11_save__else_load__8_drawSpellInfoPopup__22_final_window__26_keymapOptions__2_options__28_videoOptions; // weak
460 extern char byte_4E28FC; // weak
461 extern unsigned int uGammaPos;
462 extern int dword_4E2910[]; // weak
463 extern __int16 word_4E2930[4];
464 extern __int16 word_4E2938[4];
465 extern void *off_4E2A12; // weak
466 extern int dword_4E2A18[5];
467 extern int dword_4E2A2C[9];
468 extern int dword_4E2A50[12];
469 extern int _4E2A80_skills[9];
470 extern unsigned __int8 pAwardsTextColors[20];
471 extern unsigned int pHealthBarPos[4];
472 extern unsigned int pManaBarPos[4];
473 extern char _4E2AD8_ui_colors[72];
474 extern char _4E2B21_buff_spell_tooltip_colors[80];
475 extern char byte_4E2B70[]; // weak
476 extern char byte_4E2BC8; // weak
477 extern int pChestSmthn1ByType[8];
478 extern int pChestSmthn2ByType[8];
479 extern int pChestWidthsByType[8];
480 extern int pChestHeightsByType[8];
481 extern char aSS[]; // idb
482 extern char ascii_4E2C54[6];
483 extern char ascii_4E2C5C[7];
484 extern char ascii_4E2C68[8];
485 extern char ascii_4E2C70[9];
486 extern char ascii_4E2C7C[8];
487 extern char ascii_4E2C84[11];
488 extern char ascii_4E2C90[12];
489 extern char ascii_4E2C9C[8];
490 extern char ascii_4E2CA4[7];
491 extern char ascii_4E2CB0[12];
492 extern char ascii_4E2CBC[12];
493 extern char ascii_4E2CC8[12];
494 extern char ascii_4E2CD4[6];
495 extern char ascii_4E2CDC[11];
496 extern char ascii_4E2CE8[8];
497 extern char ascii_4E2CF0[12];
498 extern char ascii_4E2CFC[6];
499 extern char ascii_4E2D04[8];
500 extern char ascii_4E2D0C[8];
501 extern char ascii_4E2D14[6];
502 extern char ascii_4E2D1C[12];
503 extern char ascii_4E2D28[8];
504 extern char ascii_4E2D30[7];
505 extern char ascii_4E2D38[5];
506 extern char ascii_4E2D40[8];
507 extern char ascii_4E2D48[6];
508 extern char ascii_4E2D50[12];
509 extern char ascii_4E2D5C[7];
510 extern char aMakingItemNumb[]; // idb
511 extern char aNpc03d[]; // idb
512 extern char format_4E2D80[16];
513 extern char format_4E2D90[8];
514 extern char aS03d03dS000_0[]; // idb
515 extern char aS03d03dS000[]; // idb
516 extern char format_4E2DC8[8];
517 extern char aS[]; // idb
518 extern char aLuSLuS[]; // idb
519 extern char byte_4E2DE8; // idb
520 extern char asc_4E2DFC[3]; // idb
521 extern char format_4E2E00[2]; // idb
522 extern char format_4E2E10[28]; // weak
523 extern char aS100S_0[]; // idb
524 extern char aS100S[]; // idb
525 extern char aS100D[]; // idb
526 extern char aS180[6]; // idb
527 extern char format_4E2E68[28]; // weak
528 extern char aS_6[2]; // idb
529 extern char aSS_0[]; // idb
530 extern char aS_5[4]; // idb
531 extern _UNKNOWN unk_4E2EB8; // weak
532 extern char aS_4[2]; // idb
533 extern char aS_0[2]; // idb
534 extern char byte_4E2F14; // idb
535 extern char aFr_stats[]; // idb
536 extern char aS1772d[]; // idb
537 extern char aS_10[3]; // idb
538 extern char aS177S[]; // idb
539 extern char aS4002d[]; // idb
540 extern char aS_9[3]; // idb
541 extern char aS400S[]; // idb
542 extern char aS_8[38];
543 extern char aFr_skill[]; // idb
544 extern char byte_4E2FD4[7];
545 extern char aS_11[3]; // idb
546 extern char aFr_award[]; // idb
547 extern char aSptext01[]; // idb
548 extern char aSp28a[6]; // weak
549 extern char aSp30a[6]; // weak
550 extern char aSp91a[6]; // weak
551 extern char aFr_strip[]; // idb
552 extern char a261SD[]; // idb
553 extern char aS_12[4]; // idb
554 extern char aD_2[4];
555 extern char aLu[4];
556 extern char aQuikref[]; // idb
557 extern char aIbCd1D[]; // idb
558 extern char aIbCd2D[]; // idb
559 extern char aIbCd4D[]; // idb
560 extern char aIbCd3D[]; // idb
561 extern char a028Lu[]; // idb
562 extern char a087Lu[]; // idb
563 extern char aComic_fnt[]; // idb
564 extern char aSmallnum_fnt[]; // idb
565 extern char aCreate_fnt[]; // idb
566 extern char aLucida_fnt[]; // idb
567 extern char aArrus_fnt[]; // idb
568 extern char aIbTd5A[]; // idb
569 extern char aIbTd4A[]; // idb
570 extern char aIbTd3A[]; // idb
571 extern char aIbTd2A[]; // idb
572 extern char aIbTd1A[]; // idb
573 extern char aButtmake2[]; // idb
574 extern char aButtmake[]; // idb
575 extern char aButtyes2[]; // idb
576 extern char aX_ok_u[]; // idb
577 extern char aButtesc2[]; // idb
578 extern char aX_x_u[]; // idb
579 extern char aIbground[]; // idb
580 extern char aLeather[]; // idb
581 extern char aMhp_yel[]; // idb
582 extern char aMhp_red[]; // idb
583 extern char aMhp_grn[]; // idb
584 extern char aMhp_capr[]; // idb
585 extern char aMhp_capl[]; // idb
586 extern char aMhp_bg[]; // idb
587 extern char aIbStatr[]; // idb
588 extern char aIbStaty[]; // idb
589 extern char aIbStatg[]; // idb
590 extern char aIbStatb[]; // idb
591 extern char aMapdir7[]; // idb
592 extern char aMapdir6[]; // idb
593 extern char aMapdir5[]; // idb
594 extern char aMapdir4[]; // idb
595 extern char aMapdir3[]; // idb
596 extern char aMapdir2[]; // idb
597 extern char aMapdir1[]; // idb
598 extern char aMapdir8[]; // idb
599 extern char aTorcha[]; // idb
600 extern char aTorchb[]; // idb
601 extern char aTorchc[]; // idb
602 extern char aWizeyea[]; // idb
603 extern char aWizeyeb[]; // idb
604 extern char aWizeyec[]; // idb
605 extern char aTest[]; // idb
606 extern char aMicon2[]; // idb
607 extern char aButton[]; // idb
608 extern char aDS[]; // idb
609 extern char a020[]; // idb
610 extern char aS_14[4]; // idb
611 extern char aS_13[5]; // idb
612 extern char string_4E3294[8];
613 extern char aDMn[]; // idb
614 extern char aDHr[]; // idb
615 extern char aDDy[]; // idb
616 extern char aDMo[]; // idb
617 extern char aDYr[]; // idb
618 extern char aDuration[]; // idb
619 extern char aSLu[]; // idb
620 extern char aSSD[]; // idb
621 extern char aSD_1[]; // idb
622 extern char aD_0[]; // idb
623 extern char aSDSDdD[]; // idb
624 extern char aS_21[2]; // idb
625 extern char byte_4E3318; // idb
626 extern char aS_20[2]; // idb
627 extern char aS_19[2]; // idb
628 extern char aS_18[2]; // idb
629 extern char aS_17[2]; // idb
630 extern char aS_16[2]; // idb
631 extern char aS_15[2]; // idb
632 extern char aTerra03d[]; // idb
633 extern char aRestexit[]; // idb
634 extern char aRestb4[]; // idb
635 extern char aRestb3[]; // idb
636 extern char aRestb2[]; // idb
637 extern char aRestb1[]; // idb
638 extern char aRestmain[]; // idb
639 extern char aD29_blv[]; // idb
640 extern char aS190D[]; // idb
641 extern char aD02dS[]; // idb
642 extern char a408D[]; // idb
643 extern char aHglas03d[]; // idb
644 extern char aChest02d[]; // idb
645 extern char aMicon1[]; // idb
646 extern char aEndcapB[]; // idb
647 extern char aEdge_topB[]; // idb
648 extern char aEdge_rtB[]; // idb
649 extern char aEdge_lfB[]; // idb
650 extern char aEdge_btmB[]; // idb
651 extern char aCornr_urB[]; // idb
652 extern char aCornr_ulB[]; // idb
653 extern char aCornr_lrB[]; // idb
654 extern char aCornr_llB[]; // idb
655 extern char aFr_invenB[]; // idb
656 extern char aEvtnpcB[]; // idb
657 extern char aIbBcuB[]; // idb
658 extern char aIsg04B[]; // idb
659 extern char aIsg03B[]; // idb
660 extern char aIsg02B[]; // idb
661 extern char aIsg01B[]; // idb
662 extern char aIbM4dB[]; // idb
663 extern char aIbM3dB[]; // idb
664 extern char aIbM2dB[]; // idb
665 extern char aIbM1dB[]; // idb
666 extern char aIbSelecB[]; // idb
667 extern char aIbAutinB[]; // idb
668 extern char aIbAutoutB[]; // idb
669 extern char aIbNpcrdB[]; // idb
670 extern char aIbNpcldB[]; // idb
671 extern char aIbInitrB[]; // idb
672 extern char aIbInityB[]; // idb
673 extern char aIbInitgB[]; // idb
674 extern char aIbCompB[]; // idb
675 extern char aIbAutmaskB[]; // idb
676 extern char aIbMbB[]; // idb
677 extern char aIbFootB_pcx[]; // idb
678 extern char aIbLB_pcx[]; // idb
679 extern char aIbTB_pcx[]; // idb
680 extern char aIbBB_pcx[]; // idb
681 extern char aIbRB_pcx[]; // idb
682 extern char aIbSelecA_0[]; // idb
683 extern char aIbNpcrdA_0[]; // idb
684 extern char aIbNpcldA_0[]; // idb
685 extern char aIbCompA_0[]; // idb
686 extern char aIbMbA_0[]; // idb
687 extern char aIbLA_pcx_0[]; // idb
688 extern char aIbTA_pcx_0[]; // idb
689 extern char aIbBA_pcx_0[]; // idb
690 extern char aIbRA_pcx_0[]; // idb
691 extern char aEndcap[]; // idb
692 extern char aEdge_top[]; // idb
693 extern char aEdge_rt[]; // idb
694 extern char aEdge_lf[]; // idb
695 extern char aEdge_btm[]; // idb
696 extern char aCornr_ur[]; // idb
697 extern char aCornr_ul[]; // idb
698 extern char aCornr_lr[]; // idb
699 extern char aCornr_ll[]; // idb
700 extern char aEvtnpc[]; // idb
701 extern char aIsg04A[]; // idb
702 extern char aIsg03A[]; // idb
703 extern char aIsg02A[]; // idb
704 extern char aIsg01A[]; // idb
705 extern char aIbBcuA[]; // idb
706 extern char aIbAutinA[]; // idb
707 extern char aIbAutoutA[]; // idb
708 extern char aIbM4dA[]; // idb
709 extern char aIbM3dA[]; // idb
710 extern char aIbM2dA[]; // idb
711 extern char aIbM1dA[]; // idb
712 extern char aIbSelecA[]; // idb
713 extern char aIbNpcrdA[]; // idb
714 extern char aIbNpcldA[]; // idb
715 extern char aIbInitrA[]; // idb
716 extern char aIbInityA[]; // idb
717 extern char aIbInitgA[]; // idb
718 extern char aIbCompA[]; // idb
719 extern char aIbAutmaskA[]; // idb
720 extern char aIbMbA[]; // idb
721 extern char aIbFootA_pcx[]; // idb
722 extern char aIbLA_pcx[11]; // weak
723 extern char aIbTA_pcx[11]; // weak
724 extern char aIbBA_pcx[11]; // weak
725 extern char aIbRA_pcx[11]; // weak
726 extern char aEndcapC[]; // idb
727 extern char aEdge_topC[]; // idb
728 extern char aEdge_rtC[]; // idb
729 extern char aEdge_lfC[]; // idb
730 extern char aEdge_btmC[]; // idb
731 extern char aCornr_urC[]; // idb
732 extern char aCornr_ulC[]; // idb
733 extern char aCornr_lrC[]; // idb
734 extern char aCornr_llC[]; // idb
735 extern char aParchment[]; // idb
736 extern char pContainer[]; // idb
737 extern char aIbBC_pcx_0[]; // idb
738 extern char aFr_inven[]; // idb
739 extern char aEvtnpcC[]; // idb
740 extern char aIsg04C[]; // idb
741 extern char aIsg03C[]; // idb
742 extern char aIsg02C[]; // idb
743 extern char aIsg01C[]; // idb
744 extern char aIbBcuC[]; // idb
745 extern char aIbM4dC[]; // idb
746 extern char aIbM3dC[]; // idb
747 extern char aIbM2dC[]; // idb
748 extern char aIbM1dC[]; // idb
749 extern char aIbSelecC[]; // idb
750 extern char aIbAutinC[]; // idb
751 extern char aIbAutoutC[]; // idb
752 extern char aIbNpcrdC[]; // idb
753 extern char aIbNpcldC[]; // idb
754 extern char aIbInitrC[]; // idb
755 extern char aIbInityC[]; // idb
756 extern char aIbInitgC[]; // idb
757 extern char aIbCompC[]; // idb
758 extern char aIbAutmaskC[]; // idb
759 extern char aIbMbC[]; // idb
760 extern char aIbFootC_pcx[]; // idb
761 extern char aIbLC_pcx[]; // idb
762 extern char aIbTC_pcx[]; // idb
763 extern char aIbBC_pcx[11]; // weak
764 extern char aIbRC_pcx[]; // idb
765 extern char a10i10iS[]; // idb
766 extern char aSizeIII[]; // idb
767 extern char aDwavailvirtual[]; // idb
768 extern char aDwtotalvirtual[]; // idb
769 extern char aDwavailpagefil[]; // idb
770 extern char aDwtotalpagefil[]; // idb
771 extern char aDwavailphysD[]; // idb
772 extern char aDwtotalphysD[]; // idb
773 extern char aDwmemoryloadD[]; // idb
774 extern char aDwlengthD[]; // idb
775 extern char Format[]; // idb
776 extern char aMem03i_txt[]; // idb
777 extern char aMemory[]; // idb
778 extern char aIdSSizeI[16]; // idb
779 extern __int16 word_4E3C66[]; // idb
780 extern char aSpell96[]; // idb
781 extern char aNothing[]; // idb
782 extern char aS_22[5]; // weak
783 extern char aDGold[]; // idb
784 extern char aSAndDGold[]; // idb
785 extern char aD05_blv[]; // idb
786 extern char aSpell11[]; // idb
787 extern char aAframe1[]; // idb
788 extern char aTurnstart[]; // idb
789 extern char aTurnhour[]; // idb
790 extern char aTurnstop[]; // idb
791 extern char aTurn4[]; // idb
792 extern char aTurn3[]; // idb
793 extern char aTurn2[]; // idb
794 extern char aTurn1[]; // idb
795 extern char aTurn0[]; // idb
796 extern int dword_4E455C; // weak
797 extern int dword_4E4560[6];
798 extern int dword_4E4578[6];
799 extern int dword_4E4590[6];
800 extern int dword_4E45A8[6];
801 extern char aDDSDDS[]; // idb
802 extern char asc_4E45DC[]; // idb
803 extern char aD02dSSDSD[]; // idb
804 extern char aButtexi1[]; // idb
805 extern char aCanTJumpToThat[]; // idb
806 extern char aNoMapFoundForS[]; // idb
807 extern char a2[]; // idb
808 extern char aSSS[]; // idb
809 extern char aNotInMapStats[17]; // weak
810 extern char aD47_blv[]; // idb
811 extern char aOut15_odm[]; // idb
812 extern char Delim[]; // idb
813 extern char aGamma_pcx[];
814 extern char aQuit1[]; // idb
815 extern char aControls1[]; // idb
816 extern char aSave1[]; // idb
817 extern char aLoad1[]; // idb
818 extern char aNew1[]; // idb
819 extern char aOptions[]; // idb
820 extern char aGammapos[9]; // weak
821 extern char aBloodsplats[]; // idb
822 extern char aTinting[]; // idb
823 extern char aColoredLights[]; // idb
824 extern char aTurndelta[]; // idb
825 extern char aFliponexit[]; // idb
826 extern char pKey[]; // idb
827 extern char aGraphicsmode[]; // idb
828 extern char aShowdamage[]; // idb
829 extern char aWalksound[]; // idb
830 extern char aCharvoices[]; // idb
831 extern char aMusicflag[]; // idb
832 extern char aSoundflag[]; // idb
833 extern char aOpvdgTn[]; // idb
834 extern char aOpvdgCl[]; // idb
835 extern char aOpvdgBs[]; // idb
836 extern char aOpvdhTn[]; // idb
837 extern char aOpvdhCl[]; // idb
838 extern char aOpvdhBs[]; // idb
839 extern char aOptvid[]; // idb
840 extern char aOptkb_2[]; // idb
841 extern char aOptkb_1[]; // idb
842 extern char aResume1[]; // idb
843 extern char aOptkb_h[]; // idb
844 extern char aOptkb[]; // idb
845 extern char aOption01[]; // idb
846 extern char aOption02[]; // idb
847 extern char aOption03[]; // idb
848 extern char aOption04[]; // idb
849 extern char aConvol90[]; // idb
850 extern char aConvol80[]; // idb
851 extern char aConvol70[]; // idb
852 extern char aConvol60[]; // idb
853 extern char aConvol50[]; // idb
854 extern char aConvol40[]; // idb
855 extern char aConvol30[]; // idb
856 extern char aConvol20[]; // idb
857 extern char aConvol10[]; // idb
858 extern char aConvol00[]; // idb
859 extern char aCon_smoo[]; // idb
860 extern char aCon_arrr[]; // idb
861 extern char aCon_arrl[]; // idb
862 extern char aCon_32x[]; // idb
863 extern char aCon_16x[]; // idb
864 extern char aControlbg[]; // idb
865 extern char aTitle_pcx[10]; // weak
866 extern char aEWorkMsdevMm_0[]; // idb
867 extern char aDraw_debug_lin[]; // idb
868 extern char aGenuineintel[13]; // weak
869 extern char asc_4E4938[13]; // weak
870 extern int dword_4E4948[]; // weak
871 extern int dword_4E494C[]; // weak
872 extern int dword_4E49D0[]; // weak
873 extern _UNKNOWN dword_4E49D4; // idb
874 extern int dword_4E4A18[]; // weak
875 extern int dword_4E4A1C[]; // weak
876 extern int dword_4E4A40[]; // weak
877 extern int dword_4E4A44[]; // weak
878 extern char aCentaurhauls[13]; // weak
879 extern char aCyrixinstead[13]; // weak
880 extern char aAuthenticamd[13]; // weak
881 extern float flt_4E4A80[10];
882 extern char aInvalidPlayerI[]; // idb
883 extern char aEWorkMsdevMm_1[]; // idb
884 extern char aEWorkMsdevMm_2[]; // idb
885 extern char aErrorNoKeyboar[25]; // weak
886 extern char aInvalidDeviceP[]; // idb
887 extern char aInvalidDevic_0[]; // idb
888 extern char aEWorkMsdevMm_3[]; // idb
889 extern char aErrorNoMouseFo[22]; // weak
890 extern int papredoll_4E4C28; // weak
891 extern int paperdoll_4E4C2C; // weak
892 extern int paperdoll_array_4E4E30[4][17][2];
893 extern int dword_4E5050[8];
894 extern int dword_4E5270[8];
895 extern int dword_4E5490[4][7][2];
896 extern int paredoll_array_4E54B8[3][14];
897 extern int paperdoll_array_4E5570[4][10][2];
898 extern int dword_4E56B0; // weak
899 extern int dword_4E56B4; // weak
900 extern int dword_4E57F0[4][7][2];
901 extern int dword_4E58D0[]; // weak
902 extern int dword_4E58D4[]; // weak
903 extern int dword_4E5AD0[]; // weak
904 extern int dword_4E5AD4[]; // weak
905 extern int dword_4E5AE0[8];
906 extern int pPaperdollLeftHand[8];
907 extern int pPaperdollRightHand[8];
908 extern int pPaperdollLeftEmptyHand[8];
909 extern int dword_4E5C1C[6];
910 extern int dword_4E5C34[6];
911 extern char aItem092v3[]; // idb
912 extern char aIbCd5D[]; // idb
913 extern char aAr_dn_dn[]; // idb
914 extern char aAr_dn_up[]; // idb
915 extern char aAr_up_dn[]; // idb
916 extern char aAr_up_up[]; // idb
917 extern char aItem281pc02d[]; // idb
918 extern char aPc02dbrd[]; // idb
919 extern char aPc23vDlhu[]; // idb
920 extern char aPc23vDlh[]; // idb
921 extern char aPc23vDrh[]; // idb
922 extern char aPc23vDlau[]; // idb
923 extern char aPc23vDlad[]; // idb
924 extern char aPc23vDbod[]; // idb
925 extern char aBackhand[]; // idb
926 extern char aBackdoll[]; // idb
927 extern char aMagnifB[]; // idb
928 extern char aItem3_3dvDa2[]; // idb
929 extern char aItem3_3dvDa1[15]; // weak
930 extern char aItem3_3dvD[13]; // weak
931 extern char aItem64v1[9]; // weak
932 extern char aEffpar01[]; // idb
933 extern int pPartySpellbuffsUI_XYs[14][2];
934 extern char byte_4E5DD8[]; // weak
935 extern unsigned __int8 pPartySpellbuffsUI_smthns[14];
936 extern char aSpell27[]; // idb
937 extern char aSpell21[]; // idb
938 extern char aIsn02d[]; // idb
939 extern char aBardataB[]; // idb
940 extern char aBardata[8]; // weak
941 extern char aBardataC[10]; // weak
942 extern char aLoadprog[]; // idb
943 extern char aLoadingD_pcx[]; // idb
944 extern int _4E5E50_transui_x; // idb
945 extern int dword_4E5EC8[]; // weak
946 extern int _4E5EE0_transui_y; // idb
947 extern const char *pHouse_ExitPictures[11];
948 extern char *_4E6BDC_loc_names[11];
949 extern char aOutside[]; // idb
950 extern char aMer[]; // idb
951 extern char aMir[]; // idb
952 extern char aSel[]; // idb
953 extern char aEle[]; // idb
954 extern char aDar[]; // idb
955 extern char aLig[]; // idb
956 extern char aBod[]; // idb
957 extern char aMin[]; // idb
958 extern char aSpi[]; // idb
959 extern char aEar[]; // idb
960 extern char aWat[]; // idb
961 extern char aAir[]; // idb
962 extern char aFir[]; // idb
963 extern char aBan[]; // idb
964 extern char aTav[]; // idb
965 extern char aTow[]; // idb
966 extern char aTra[]; // idb
967 extern char aTem[]; // idb
968 extern char aBoa[]; // idb
969 extern char aSta[]; // idb
970 extern char aAlc[]; // idb
971 extern char aMag[]; // idb
972 extern char aArm[]; // idb
973 extern char aWea[]; // idb
974 extern char asc_4E7BD4[2]; // idb
975 extern char a2devents_txt[]; // idb
976 extern char aFileSSizeLuBuf[]; // idb
977 extern char aGlobal_evt[]; // idb
978 extern char aMax_event_text[]; // idb
979 extern char aS_str[]; // idb
980 extern char aS_evt[]; // idb
981 extern char aNoMazeInfoForT[36]; // weak
982 extern char aC[]; // idb
983 extern char aB[3]; // weak
984 extern char aEvt02d[]; // idb
985 extern char aNoTransitionTe[]; // idb
986 extern char aEWorkMsdevMm_4[]; // idb
987 extern char asc_4E7CD4[]; // idb
988 extern char aSS_1[]; // idb
989 extern char aNpcIdExceedsMa[]; // idb
990 extern char aNpc03u[]; // idb
991 extern char aPcout01[]; // idb
992 extern char aArbiterEvil[]; // idb
993 extern char aArbiterGood[]; // idb
994 extern char a0[]; // idb
995 extern char aPartyStart[]; // idb
996 extern char aNorthStart[12]; // weak
997 extern char aSouthStart[12]; // weak
998 extern char aEastStart[11]; // weak
999 extern char aWestStart[11]; // weak
1000 extern char aUnableToFindDo[]; // idb
1001 extern char aNwc_blv[]; // idb
1002 extern char aUnableToOpenS[]; // idb
1003 extern char aInvalidStringP[]; // idb
1004 extern char aEWorkMsdevMm_5[]; // idb
1005 extern char aNull[]; // idb
1006 extern char aInvalidStrin_0[]; // idb
1007 extern char aSI[]; // idb
1008 extern char aS7[4]; // weak
1009 extern char aS6[]; // idb
1010 extern char aS5[4]; // weak
1011 extern char aS1[]; // idb
1012 extern char aS3[4]; // weak
1013 extern char aS0[]; // idb
1014 extern char aS2[4]; // weak
1015 extern char aS4[4]; // weak
1016 extern char aUnableToSaveDs[]; // idb
1017 extern char aDataDsft_bin[]; // idb
1018 extern char aPFrames[]; // idb
1019 extern char aEFrames[]; // idb
1020 extern char aSFrames[]; // idb
1021 extern char aMirror7[]; // idb
1022 extern char aMirror6[]; // idb
1023 extern char aMirror5[]; // idb
1024 extern char aMirror4[]; // idb
1025 extern char aMirror3[]; // idb
1026 extern char aMirror2[]; // idb
1027 extern char aMirror1[]; // idb
1028 extern char aMirror0[]; // idb
1029 extern char aLuminous[]; // idb
1030 extern char a1[]; // idb
1031 extern char aNew[]; // idb
1032 extern char pMessag[]; // idb
1033 extern char aCspriteframeta[]; // idb
1034 extern char aR[]; // idb
1035 extern char aNew_0[]; // idb
1036 extern char aUnableToSaveDt[]; // idb
1037 extern char aDataDtft_bin[]; // idb
1038 extern char aTxtFrames[]; // idb
1039 extern char aCtexturefram_1[]; // idb
1040 extern char aCtexturefram_0[]; // idb
1041 extern char aCtextureframet[]; // idb
1042 extern int bWinNT4_0; // weak
1043 extern char aEWorkMsdevMm_6[]; // idb
1044 extern char aTheVisObjectPo[]; // idb
1045 extern char aSpriteOutlineC[]; // idb
1046 extern char aUndefinedCobje[]; // idb
1047 extern char aEWorkMsdevMm_7[]; // idb
1048 extern char aGammaControlNo[]; // idb
1049 extern __int16 word_4E8152[11];
1050 extern char byte_4E8168[116];
1051 extern char aEWorkMsdevMm7Mm7CodeGenerate_cpp[]; // idb
1052 extern char aCanTCreateRandomMonsterSSeeMapstats_txtAndMonsters[]; // idb
1053 extern char aSC[]; // idb
1054 extern char aSB[5]; // weak
1055 extern char aSA[]; // idb
1056 extern char aElementalLightA[]; // idb
1057 extern char aElementalLightB[18]; // weak
1058 extern char aElementalLightC[18]; // weak
1059 extern char asc_4E82A4[2]; // weak
1060 extern int dword_4E82B4; // weak
1061 extern int dword_4E82B8; // weak
1062 extern int dword_4E82BC; // weak
1063 extern int dword_4E82C0; // weak
1064 extern char aD3dTextureName[]; // idb
1065 extern char aLogd3d_txt[]; // idb
1066 extern char byte_4E8398[]; // weak
1067 extern _UNKNOWN unk_4E83B0; // weak
1068 extern _UNKNOWN unk_4E8408; // weak
1069 extern char aGlobal_txt[]; // idb
1070 extern char aMagic[]; // idb
1071 extern char aDark_0[]; // idb
1072 extern char aLight_1[]; // idb
1073 extern char aBody_0[]; // idb
1074 extern char aMind_1[]; // idb
1075 extern char aSpirit_1[]; // idb
1076 extern char aEarth_0[]; // idb
1077 extern char aWater_0[]; // idb
1078 extern char aFire_1[]; // idb
1079 extern char aSpells_txt[]; // idb
1080 extern char aParsingError[]; // idb
1081 extern char aErrorParsingPo[]; // idb
1082 extern char Text[]; // idb
1083 extern char Caption[]; // idb
1084 extern char asc_4E8530[]; // idb
1085 extern char a222[]; // idb
1086 extern char asc_4E8538[]; // idb
1087 extern char aPotion_txt[]; // idb
1088 extern char aErrorParsing_0[]; // idb
1089 extern char aPotnotes_txt[]; // idb
1090 extern char aHistory_txt[]; // idb
1091 extern char aPsychotic[]; // idb
1092 extern char aDizzy[]; // idb
1093 extern char aDrugged[]; // idb
1094 extern char aUnderwater[]; // idb
1095 extern char aSewerpipe[]; // idb
1096 extern char aParkinglot[]; // idb
1097 extern char aPlain[]; // idb
1098 extern char aQuarry[]; // idb
1099 extern char aMountains[]; // idb
1100 extern char aCity[]; // idb
1101 extern char aForest[]; // idb
1102 extern char aAlley[]; // idb
1103 extern char aStonecorridor[]; // idb
1104 extern char aHallway[]; // idb
1105 extern char aCarpetedhallwa[]; // idb
1106 extern char aHangar[]; // idb
1107 extern char aArena[]; // idb
1108 extern char aCave[]; // idb
1109 extern char aConcerthall[]; // idb
1110 extern char aAuditorium[]; // idb
1111 extern char aStoneroom[]; // idb
1112 extern char aLivingroom[]; // idb
1113 extern char aBathroom[]; // idb
1114 extern char aRoom[]; // idb
1115 extern char aPaddedcell[]; // idb
1116 extern char aGeneric[]; // idb
1117 extern char aMapstats_txt[]; // idb
1118 extern char aHostile_txt[]; // idb
1119 extern char aEWorkMsdevMm_9[]; // idb
1120 extern char aUnknownMonster[]; // idb
1121 extern char aHammerhands[]; // idb
1122 extern char aPsychic[]; // idb
1123 extern char aBlades[]; // idb
1124 extern char aMind[]; // idb
1125 extern char aHarm[]; // idb
1126 extern char aFate[]; // idb
1127 extern char aSummon[]; // idb
1128 extern char aReanimate[]; // idb
1129 extern char aDragon[]; // idb
1130 extern char aBless[]; // idb
1131 extern char aAcid[]; // idb
1132 extern char off_4E876C[]; // idb
1133 extern char aMass[]; // idb
1134 extern char aRock[]; // idb
1135 extern char aFire[]; // idb
1136 extern char aIncinerate[]; // idb
1137 extern char aFireball[]; // idb
1138 extern char aParalyze[]; // idb
1139 extern char aShrapmetal[]; // idb
1140 extern char aToxic[]; // idb
1141 extern char aLight[]; // idb
1142 extern char aSparks[]; // idb
1143 extern char aPain[]; // idb
1144 extern char aHeroism[]; // idb
1145 extern char aHaste[]; // idb
1146 extern char aStone[]; // idb
1147 extern char aImplosion[]; // idb
1148 extern char aLightning[]; // idb
1149 extern char aMeteor[]; // idb
1150 extern char aPower[]; // idb
1151 extern char aSpirit[]; // idb
1152 extern char aShield[]; // idb
1153 extern char aHour[]; // idb
1154 extern char aDay[]; // idb
1155 extern char aDispel[]; // idb
1156 extern char aEner[]; // idb
1157 extern char aDark[]; // idb
1158 extern char aLight_0[]; // idb
1159 extern char aBody[]; // idb
1160 extern char aMind_0[]; // idb
1161 extern char aSpirit_0[]; // idb
1162 extern char aEarth[]; // idb
1163 extern char aWater[]; // idb
1164 extern char off_4E887C[]; // idb
1165 extern char aFire_0[]; // idb
1166 extern char aArrowf[]; // idb
1167 extern char aArrow[]; // idb
1168 extern char aPlacemon_txt[]; // idb
1169 extern char aExplode[]; // idb
1170 extern char aGround[]; // idb
1171 extern char aCanTCreateRa_0[]; // idb
1172 extern char asc_4E88E8[]; // idb
1173 extern char aSummon_0[]; // idb
1174 extern char aShot[]; // idb
1175 extern char aG[]; // idb
1176 extern char aM[]; // idb
1177 extern char aE_0[2]; // weak
1178 extern char aDrainsp[]; // idb
1179 extern char off_4E8910[]; // idb
1180 extern char aSteal[]; // idb
1181 extern char aBrkweapon[]; // idb
1182 extern char aBrkarmor[]; // idb
1183 extern char aBrkitem[]; // idb
1184 extern char aErrad[]; // idb
1185 extern char aStone_0[]; // idb
1186 extern char aDead[]; // idb
1187 extern char aUncon[]; // idb
1188 extern char aParalyze_0[]; // idb
1189 extern char aDisease3[]; // idb
1190 extern char aDisease2[]; // idb
1191 extern char aDisease1[]; // idb
1192 extern char aPoison3[]; // idb
1193 extern char aPoison2[]; // idb
1194 extern char aPoison1[]; // idb
1195 extern char aInsane[]; // idb
1196 extern char aDrunk[]; // idb
1197 extern char aAfraid[]; // idb
1198 extern char aAsleep[]; // idb
1199 extern char SubStr[]; // idb
1200 extern char aCurse[6]; // weak
1201 extern char aN[]; // idb
1202 extern char aGem[]; // idb
1203 extern char aScroll[]; // idb
1204 extern char aWand[]; // idb
1205 extern char aAmulet[]; // idb
1206 extern char aRing[]; // idb
1207 extern char aBoots[]; // idb
1208 extern char aGauntlets[]; // idb
1209 extern char aCape[]; // idb
1210 extern char aBelt[]; // idb
1211 extern char aHelm[]; // idb
1212 extern char aShield_0[]; // idb
1213 extern char aPlate[]; // idb
1214 extern char aChain[]; // idb
1215 extern char aStaff[]; // idb
1216 extern char aClub[]; // idb
1217 extern char aMace[]; // idb
1218 extern char aBow[]; // idb
1219 extern char aSpear[]; // idb
1220 extern char aAxe[]; // idb
1221 extern char aDagger[]; // idb
1222 extern char aSword[]; // idb
1223 extern char aMisc[]; // idb
1224 extern char aArmor[]; // idb
1225 extern char aWeapon[]; // idb
1226 extern char aMonsters_txt[]; // idb
1227 extern char aNewitemgen[]; // idb
1228 extern char aClass_txt[]; // idb
1229 extern char aStats_txt[]; // idb
1230 extern char aSkilldes_txt[]; // idb
1231 extern char aRnditems_txt[]; // idb
1232 extern char aSpecial[]; // idb
1233 extern char aRelic[]; // idb
1234 extern char aArtifact[]; // idb
1235 extern char aClub_0[]; // idb
1236 extern char aPlate_0[]; // idb
1237 extern char aChain_0[]; // idb
1238 extern char aLeather_0[]; // idb
1239 extern char aBlaster[]; // idb
1240 extern char aMace_0[]; // idb
1241 extern char aSpear_0[]; // idb
1242 extern char aAxe_0[]; // idb
1243 extern char aDagger_0[]; // idb
1244 extern char aSword_0[]; // idb
1245 extern char aStaff_0[]; // idb
1246 extern char aGem_0[]; // idb
1247 extern char aGold[]; // idb
1248 extern char aMscroll[]; // idb
1249 extern char aSscroll[]; // idb
1250 extern char aBottle[]; // idb
1251 extern char aReagent[]; // idb
1252 extern char aHerb[]; // idb
1253 extern char aWeaponw[]; // idb
1254 extern char aAmulet_0[]; // idb
1255 extern char aRing_0[]; // idb
1256 extern char aBoots_0[]; // idb
1257 extern char aGauntlets_0[]; // idb
1258 extern char aCloak[]; // idb
1259 extern char aBelt_0[]; // idb
1260 extern char aHelm_0[]; // idb
1261 extern char aShield_1[]; // idb
1262 extern char aArmor_0[]; // idb
1263 extern char aBow_0[]; // idb
1264 extern char aMissile[]; // idb
1265 extern char aWeapon1or2[]; // idb
1266 extern char aWeapon2[]; // idb
1267 extern char aWeapon_0[]; // idb
1268 extern char aItems_txt[]; // idb
1269 extern char aSpcitems_txt[]; // idb
1270 extern char aStditems_txt[]; // idb
1271 extern char aUnableToSaveDd[]; // idb
1272 extern char aDataDdeclist_b[]; // idb
1273 extern char aDecDescrip[]; // idb
1274 extern char aDusk[]; // idb
1275 extern char aDawn[]; // idb
1276 extern char aEmitfire[]; // idb
1277 extern char aLoopslow[]; // idb
1278 extern char aMarker[]; // idb
1279 extern char aFf[]; // idb
1280 extern char aFm[3]; // idb
1281 extern char aFs[3]; // idb
1282 extern char aInvisible[]; // idb
1283 extern char off_4E8CB8[]; // idb
1284 extern char aDecorationde_0[]; // idb
1285 extern char aDecorationdesc[]; // idb
1286 extern char aUnableToSaveDc[]; // idb
1287 extern char aDataDchest_bin[]; // idb
1288 extern char aChestDescrip[]; // idb
1289 extern char aChestdescrip_0[]; // idb
1290 extern char aChestdescripti[]; // idb
1291 extern char aUnableToSave_0[]; // idb
1292 extern char aDataDoverlay_b[]; // idb
1293 extern char aOvlDes_[]; // idb
1294 extern char aTransparent[]; // idb
1295 extern char aCenter[7]; // weak
1296 extern char aOverlaydescrip[]; // idb
1297 extern char aObjectdescript[]; // idb
1298 extern char aUnableToSaveDo[]; // idb
1299 extern char aDataDobjlist_b[]; // idb
1300 extern char aObjDescrip[]; // idb
1301 extern char aLines[]; // idb
1302 extern char aBounce[]; // idb
1303 extern char aFlagonintercep[]; // idb
1304 extern char aNogravity[]; // idb
1305 extern char aNopickup[]; // idb
1306 extern char aFtlifetime[]; // idb
1307 extern char aLifetime[]; // idb
1308 extern char aNodraw[]; // idb
1309 extern char aObjectdescri_0[]; // idb
1310 extern char aBits[]; // idb
1311 extern char aUnableToSaveDm[]; // idb
1312 extern char aDataDmonlist_b[]; // idb
1313 extern char aMonRace[]; // idb
1314 extern char aMonsterracel_0[]; // idb
1315 extern char aMonsterracelis[]; // idb
1316 extern char a__10[]; // idb
1317 extern char aKey_stepright[]; // idb
1318 extern char aKey_stepleft[]; // idb
1319 extern char aKey_alwaysrun[]; // idb
1320 extern char aKey_land[]; // idb
1321 extern char aKey_flydown[]; // idb
1322 extern char aKey_flyup[]; // idb
1323 extern char aKey_zoomout[]; // idb
1324 extern char aKey_zoomin[]; // idb
1325 extern char aKey_centerview[]; // idb
1326 extern char aKey_lookdown[]; // idb
1327 extern char aKey_lookup[]; // idb
1328 extern char aKey_mapbook[]; // idb
1329 extern char aKey_autonotes[]; // idb
1330 extern char aKey_timecal[]; // idb
1331 extern char aKey_rest[]; // idb
1332 extern char aKey_quickref[]; // idb
1333 extern char aKey_quest[]; // idb
1334 extern char aKey_charcycle[]; // idb
1335 extern char aKey_pass[]; // idb
1336 extern char aKey_cast[]; // idb
1337 extern char aKey_eventtrigg[]; // idb
1338 extern char aKey_combat[]; // idb
1339 extern char aKey_jump[]; // idb
1340 extern char aKey_yell[]; // idb
1341 extern char aKey_castready[]; // idb
1342 extern char aKey_attack[]; // idb
1343 extern char aKey_right[]; // idb
1344 extern char aKey_left[]; // idb
1345 extern char aKey_backward[]; // idb
1346 extern char pKeyName[]; // idb
1347 extern char aDefault[]; // idb
1348 extern char aControl[]; // idb
1349 extern char aBackspace[]; // idb
1350 extern char aBackslash[]; // idb
1351 extern char aSquote[]; // idb
1352 extern char aSlash[]; // idb
1353 extern char aPeriod[]; // idb
1354 extern char aSemicolon[]; // idb
1355 extern char aDecimal[]; // idb
1356 extern char aComma[]; // idb
1357 extern char aInsert[]; // idb
1358 extern char aHome[]; // idb
1359 extern char aDelete[]; // idb
1360 extern char aEnd[]; // idb
1361 extern char aAdd[]; // idb
1362 extern char aSubtract[]; // idb
1363 extern char aTab[]; // idb
1364 extern char aPage_up[]; // idb
1365 extern char aPage_down[]; // idb
1366 extern char aSpace[]; // idb
1367 extern char aReturn[]; // idb
1368 extern char aDown[]; // idb
1369 extern char aUp[]; // idb
1370 extern char asc_4E925C[]; // idb
1371 extern char aCouldNotInitia[49]; // weak
1372 extern char aInvalidDi_keyb[]; // idb
1373 extern char aEWorkMsdevM_10[45]; // weak
1374 extern char aInvalidDi_ke_0[]; // idb
1375 extern char aInvalidDi_ke_1[]; // idb
1376 extern char aUknownKeyDetec[]; // idb
1377 extern char aEffpar03[]; // idb
1378 extern char aErrorFailedToB[]; // idb
1379 extern char aErrorFailedToG[]; // idb
1380 extern char aEWorkMsdevM_11[]; // idb
1381 extern char aLightpolyBuild[]; // idb
1382 extern char aUndefinedClipF[30]; // weak
1383 extern char aInvalidLightTy[]; // idb
1384 extern char aInvalidLight_0[]; // idb
1385 extern char aUknownStripTyp[]; // idb
1386 extern char aInvalidLightma[]; // idb
1387 extern char byte_4E94D0; // weak
1388 extern char byte_4E94D2; // weak
1389 extern char byte_4E94D3; // weak
1390 extern unsigned int saveload_dlg_xs[2];
1391 extern unsigned int saveload_dlg_ys[2];
1392 extern unsigned int saveload_dlg_zs[2];
1393 extern unsigned int saveload_dlg_ws[2];
1394 extern char aEWorkMsdevM_12[]; // idb
1395 extern char a___0[]; // idb
1396 extern char aSave03d_mm7[]; // idb
1397 extern char Name[]; // idb
1398 extern char aAr_dn_dn_0[]; // idb
1399 extern char aAr_up_dn_0[]; // idb
1400 extern char aLs_saved[]; // idb
1401 extern char aLs_loadd[]; // idb
1402 extern char aX_d[]; // idb
1403 extern char aImage_pcx[]; // idb
1404 extern char aHeader_bin[]; // idb
1405 extern char aSavesS[]; // idb
1406 extern char aX_u[]; // idb
1407 extern char aLs_saveu[]; // idb
1408 extern char aLs_loadu[]; // idb
1409 extern char aSave_up[]; // idb
1410 extern char aLoad_up[]; // idb
1411 extern char aLoadsave[]; // idb
1412 extern char a1_mm7[6]; // weak
1413 extern char aUnableToFindS[]; // idb
1414 extern char aLevelsS[]; // idb
1415 extern char aNpcgroup_bin[]; // idb
1416 extern char aNpcdata_bin[]; // idb
1417 extern char aOverlay_bin[]; // idb
1418 extern char aClock_bin[]; // idb
1419 extern char aParty_bin[]; // idb
1420 extern char ExistingFileName[]; // idb
1421 extern char NewFileName[]; // idb
1422 extern char aSS_2[]; // idb
1423 extern char aSavesSave03d_m[]; // idb
1424 extern char aSD02dSDSD[]; // idb
1425 extern char aLevellod[]; // idb
1426 extern char aLevelsSS[]; // idb
1427 extern char a_lod[5]; // weak
1428 extern char aDataGames_lod[]; // idb
1429 extern char Default[]; // idb
1430 extern char aCurrent[]; // idb
1431 extern char aNewmapsForMmvi[]; // idb
1432 extern char aMmvii[]; // idb
1433 extern char aOutOfMemoryLoa[]; // idb
1434 extern char aAttemptToOpenN[]; // idb
1435 extern char aFileSIsNotABlv[]; // idb
1436 extern char aD23_blv[]; // idb
1437 extern char aEventTrigger[]; // idb
1438 extern char aLodapp_tmp[]; // idb
1439 extern char aWb[]; // idb
1440 extern char aLod_tmp[]; // idb
1441 extern char aLodIndex[]; // idb
1442 extern char aLod[]; // idb
1443 extern char aLodCarray[]; // idb
1444 extern char aRb_0[]; // idb
1445 extern char aLodio[]; // idb
1446 extern char aAttemptToRes_0[]; // idb
1447 extern char aLodsub[]; // idb
1448 extern char aAttemptToReset[]; // idb
1449 extern char aMm6[]; // idb
1450 extern char aLodchapterpage[]; // idb
1451 extern char aLODFile[]; // idb
1452 extern char aChapter[]; // idb
1453 extern char aUnableToAppend[]; // idb
1454 extern char aIndoorBlvFiles[26]; // weak
1455 extern int dword_4E98BC_bApplicationActive; // weak
1456 extern char aBlv[]; // idb
1457 extern char aMightAndMagico[41]; // weak
1458 extern char aLevels[7]; // weak
1459 extern char aLsave640_pcx[13]; // weak
1460 extern char aTitle_exit[]; // idb
1461 extern char aTitle_cred[]; // idb
1462 extern char aTitle_load[]; // idb
1463 extern char aTitle_new[]; // idb
1464 extern char a___1[]; // idb
1465 extern char aRanOnce[]; // idb
1466 extern char aNoanim[]; // idb
1467 extern char aNosound[]; // idb
1468 extern char aWindow[]; // idb
1469 extern char aUsedefs[]; // idb
1470 extern char ClassName[]; // idb
1471 extern char aOut02_odm[10]; // weak
1472 extern char aYouMustBeRunni[]; // idb
1473 extern char aDebugFlags[]; // idb
1474 extern char aWindowY[]; // idb
1475 extern char aWindowX[]; // idb
1476 extern char aStartinwindow[]; // idb
1477 extern char aD10_blv[]; // idb
1478 extern char aD11_blv[]; // idb
1479 extern char a1_0[]; // idb
1480 extern char aMightAndMagicV[]; // idb
1481 extern char aNewWorldComput[]; // idb
1482 extern char SubKey[]; // idb
1483 extern char aCloseCd[]; // idb
1484 extern char aInfoCdUpcWait[]; // idb
1485 extern char aOpenCTypeCdaud[]; // idb
1486 extern char aXAnimsMagic7_v[20]; // weak
1487 extern char aAbbrechen[]; // idb
1488 extern char aBitteCd2VonMig[]; // idb
1489 extern char aBitteCd2Einleg[]; // idb
1490 extern char aCancelar[9]; // weak
1491 extern char aPorFavorInse_0[]; // idb
1492 extern char aPorFavorInsert[]; // idb
1493 extern char aSupprimer[10]; // weak
1494 extern char aInssrezMightMa[]; // idb
1495 extern char aInssrezLeCd2[]; // idb
1496 extern char aAnnulla[8]; // weak
1497 extern char aInserireIlSe_0[]; // idb
1498 extern char aInserireIlSeco[]; // idb
1499 extern char aOdwolaj[8]; // weak
1500 extern char aWlozCdRomNum_0[]; // idb
1501 extern char String[]; // idb
1502 extern char TemplateName[]; // idb
1503 extern char ValueName[]; // idb
1504 extern char a2dacceloff[]; // idb
1505 extern char aDsounds_bin[]; // idb
1506 extern char aDoverlay_bin[]; // idb
1507 extern char aDchest_bin[]; // idb
1508 extern char aDmonlist_bin[]; // idb
1509 extern char aDobjlist_bin[]; // idb
1510 extern char aDdeclist_bin[]; // idb
1511 extern char aDift_bin[]; // idb
1512 extern char aDpft_bin[]; // idb
1513 extern char aDtile_bin[]; // idb
1514 extern char aDtft_bin[]; // idb
1515 extern char aDsft_bin[]; // idb
1516 extern char aUnableToOpenSo[]; // idb
1517 extern char aDataSounds_def[]; // idb
1518 extern char aUnableToOpenOv[]; // idb
1519 extern char aDataOverlay_de[]; // idb
1520 extern char aUnableToOpenCh[]; // idb
1521 extern char aDataChest_def[]; // idb
1522 extern char aUnableToOpenPf[]; // idb
1523 extern char Args[]; // idb
1524 extern char aUnableToOpenTi[]; // idb
1525 extern char aDataTile_def[]; // idb
1526 extern char aUnableToOpenTf[]; // idb
1527 extern char aDataTft_def[]; // idb
1528 extern char aUnableToOpenIf[]; // idb
1529 extern char aDataIft_txt[]; // idb
1530 extern char aUnableToOpenMo[]; // idb
1531 extern char aDataMonlist_tx[]; // idb
1532 extern char aUnableToOpenOb[]; // idb
1533 extern char aDataObjlist_tx[]; // idb
1534 extern char aUnableToOpenDe[]; // idb
1535 extern char aDataDeclist_tx[]; // idb
1536 extern char aUnableToOpenSf[]; // idb
1537 extern char aDataSft_txt[]; // idb
1538 extern char aDataSprites_lo[]; // idb
1539 extern char aDataSpritelo_l[18]; // weak
1540 extern char aResolution[]; // idb
1541 extern char aRegistry[]; // idb
1542 extern char aDataBitmaps_lo[]; // idb
1543 extern char aDataEvents_lod[]; // idb
1544 extern char aSomeFilesAreMi[42]; // weak
1545 extern char aFilesMissing[14]; // weak
1546 extern char pFilename[]; // idb
1547 extern char AppName[]; // idb
1548 extern char KeyName[]; // idb
1549 extern char aUnableToAllo_0[31]; // weak
1550 extern char aUnableToAlloca[31]; // weak
1551 extern char aMoreRamMemoryR[25]; // weak
1552 extern char WindowName[]; // idb
1553 extern char IconName[]; // idb
1554 extern char aMoreHardDriveS[31]; // weak
1555 extern char aDueToWindowVir[]; // idb
1556 extern char PathName[]; // idb
1557 extern char aHdwtr03u[]; // idb
1558 extern char aHeight[]; // idb
1559 extern char aEyelevel[]; // idb
1560 extern char aParty[]; // idb
1561 extern char aBuilding_sub_0[]; // idb
1562 extern char aBuilding_subdi[]; // idb
1563 extern char aTerrain_subd_0[]; // idb
1564 extern char aTerrain_subdiv[]; // idb
1565 extern char aTexmapping[]; // idb
1566 extern char aRecmod2[]; // idb
1567 extern char aRecmod1[]; // idb
1568 extern char aDefault_0[]; // idb
1569 extern char aDirt[]; // idb
1570 extern char aTextures[]; // idb
1571 extern char off_4EA208[]; // idb
1572 extern char aPlansky1[]; // idb
1573 extern char aDist_mist[]; // idb
1574 extern char aDist_shademist[]; // idb
1575 extern char aDist_shade[]; // idb
1576 extern char aShading[]; // idb
1577 extern char aBld_mm3[]; // idb
1578 extern char aBld_mm2[]; // idb
1579 extern char aBld_mm1[]; // idb
1580 extern char aTer_mm3[]; // idb
1581 extern char aTer_mm2[]; // idb
1582 extern char aTer_mm1[]; // idb
1583 extern char aMipmapping[]; // idb
1584 extern char aBld_gamma[]; // idb
1585 extern char aTer_gamma[]; // idb
1586 extern char aGridband3[]; // idb
1587 extern char aGridband2[]; // idb
1588 extern char aGridband1[]; // idb
1589 extern char aNowavywater[]; // idb
1590 extern char aRender[]; // idb
1591 extern char aNodecorations[]; // idb
1592 extern char aNosky[]; // idb
1593 extern char aNomist[]; // idb
1594 extern char aRgbnightbott_1[]; // idb
1595 extern char aRgbnightbott_0[]; // idb
1596 extern char aRgbnightbottom[]; // idb
1597 extern char aRgbnighttop_b[]; // idb
1598 extern char aRgbnighttop_g[]; // idb
1599 extern char aRgbnighttop_r[]; // idb
1600 extern char aRgbdaybottom_b[]; // idb
1601 extern char aRgbdaybottom_g[]; // idb
1602 extern char aRgbdaybottom_r[]; // idb
1603 extern char aRgbdaytop_b[]; // idb
1604 extern char aRgbdaytop_g[]; // idb
1605 extern char aRgbdaytop_r[]; // idb
1606 extern char aOutdoor[]; // idb
1607 extern char aFile[]; // idb
1608 extern char aStartmap[]; // idb
1609 extern char aWalkspeed[]; // idb
1610 extern char aNodecoration[]; // idb
1611 extern char aNodamage[]; // idb
1612 extern char aShowfr[]; // idb
1613 extern char aNomonster[]; // idb
1614 extern char aDebug[]; // idb
1615 extern char aNologo[]; // idb
1616 extern char aNowalksound[]; // idb
1617 extern char aNosound_0[]; // idb
1618 extern char aNointro[]; // idb
1619 extern char aMixerchannels[]; // idb
1620 extern char aVy2[]; // idb
1621 extern char aVx2[]; // idb
1622 extern char aVy1[]; // idb
1623 extern char aVx1[]; // idb
1624 extern char aScreen[]; // idb
1625 extern char aMakeme_pcx[11]; // weak
1626 extern char aError[]; // idb
1627 extern char aFatalException[]; // idb
1628 extern char aDirectDrawErro[]; // idb
1629 extern char aUnknownDirectd[]; // idb
1630 extern char aDderr_devicedo[29]; // weak
1631 extern char aDderr_videonot[21]; // weak
1632 extern char aDderr_expired[14]; // weak
1633 extern char aDderr_moredata[15]; // weak
1634 extern char aDderr_notpagel[20]; // weak
1635 extern char aDderr_cantpa_0[21]; // weak
1636 extern char aDderr_cantpage[19]; // weak
1637 extern char aDderr_nononloc[23]; // weak
1638 extern char aDderr_dcalread[23]; // weak
1639 extern char aDderr_nofocusw[20]; // weak
1640 extern char aDderr_notloade[16]; // weak
1641 extern char aDderr_nooptimi[19]; // weak
1642 extern char aDderr_invali_3[25]; // weak
1643 extern char aDderr_nomipmap[17]; // weak
1644 extern char aDderr_unsupp_2[22]; // weak
1645 extern char aDderr_notpalet[20]; // weak
1646 extern char aDderr_implicit[24]; // weak
1647 extern char aDderr_wrongmod[16]; // weak
1648 extern char aDderr_nodc[11]; // weak
1649 extern char aDderr_cantcrea[19]; // weak
1650 extern char aDderr_cantdupl[20]; // weak
1651 extern char aDderr_notflipp[19]; // weak
1652 extern char aDderr_exclusiv[30]; // weak
1653 extern char aDderr_notaover[25]; // weak
1654 extern char aDderr_invali_2[22]; // weak
1655 extern char aDderr_noover_0[20]; // weak
1656 extern char aDderr_overlayn[24]; // weak
1657 extern char aDderr_noddrops[17]; // weak
1658 extern char aDderr_noblthw[14]; // weak
1659 extern char aDderr_bltfastc[22]; // weak
1660 extern char aDderr_nopale_0[18]; // weak
1661 extern char aDderr_nopalett[24]; // weak
1662 extern char aDderr_hwndalre[21]; // weak
1663 extern char aDderr_hwndsubc[21]; // weak
1664 extern char aDderr_nohwnd[13]; // weak
1665 extern char aDderr_noclippe[24]; // weak
1666 extern char aDderr_clipperi[25]; // weak
1667 extern char aDderr_regionto[21]; // weak
1668 extern char aDderr_noemulat[18]; // weak
1669 extern char aDderr_primarys[34]; // weak
1670 extern char aDderr_nodire_0[21]; // weak
1671 extern char aDderr_directdr[31]; // weak
1672 extern char aDderr_invalidd[28]; // weak
1673 extern char aDderr_xalign[13]; // weak
1674 extern char aDderr_wasstill[22]; // weak
1675 extern char aDderr_vertical[30]; // weak
1676 extern char aDderr_invalids[20]; // weak
1677 extern char aDderr_unsupp_1[22]; // weak
1678 extern char aDderr_unsupp_0[24]; // weak
1679 extern char aDderr_toobigwi[18]; // weak
1680 extern char aDderr_toobigsi[17]; // weak
1681 extern char aDderr_toobighe[19]; // weak
1682 extern char aDderr_surfacen[25]; // weak
1683 extern char aDderr_colorkey[21]; // weak
1684 extern char aDderr_surfac_0[29]; // weak
1685 extern char aDderr_surfacea[30]; // weak
1686 extern char aDderr_cantlock[22]; // weak
1687 extern char aDderr_surfacei[24]; // weak
1688 extern char aDderr_paletteb[18]; // weak
1689 extern char aDderr_nozbuffe[18]; // weak
1690 extern char aDderr_nozoverl[19]; // weak
1691 extern char aDderr_outofcap[16]; // weak
1692 extern char aDderr_outofvid[23]; // weak
1693 extern char aDderr_overla_0[22]; // weak
1694 extern char aDderr_overlayc[35]; // weak
1695 extern char aDderr_novsynch[16]; // weak
1696 extern char aDderr_norotati[19]; // weak
1697 extern char aDderr_nostretc[18]; // weak
1698 extern char aDderr_not4bi_0[19]; // weak
1699 extern char aDderr_not4bitc[24]; // weak
1700 extern char aDderr_not8bitc[19]; // weak
1701 extern char aDderr_notextur[18]; // weak
1702 extern char aDderr_noraster[19]; // weak
1703 extern char aDderr_nofliphw[15]; // weak
1704 extern char aDderr_nogdi[12]; // weak
1705 extern char aDderr_nomirror[17]; // weak
1706 extern char aDderr_notfound[15]; // weak
1707 extern char aDderr_nooverla[18]; // weak
1708 extern char aDderr_overlapp[23]; // weak
1709 extern char aDderr_noexclus[22]; // weak
1710 extern char aDderr_noclipli[17]; // weak
1711 extern char aDderr_nocolorc[20]; // weak
1712 extern char aDderr_nocooper[28]; // weak
1713 extern char aDderr_nocolo_0[17]; // weak
1714 extern char aDderr_nocolork[19]; // weak
1715 extern char aDderr_nodirect[26]; // weak
1716 extern char aDderr_noalphah[16]; // weak
1717 extern char aDderr_invalidm[18]; // weak
1718 extern char aDderr_invalido[20]; // weak
1719 extern char aDderr_invali_1[25]; // weak
1720 extern char aDderr_lockedsu[21]; // weak
1721 extern char aDderr_no3d[11]; // weak
1722 extern char aDderr_invali_0[22]; // weak
1723 extern char aDderr_cannotde[26]; // weak
1724 extern char aDderr_currentl[24]; // weak
1725 extern char aDderr_exceptio[16]; // weak
1726 extern char aDderr_heightal[18]; // weak
1727 extern char aDderr_incompat[26]; // weak
1728 extern char aDderr_invalidc[18]; // weak
1729 extern char aDderr_cannotat[26]; // weak
1730 extern char aDderr_unsuppor[18]; // weak
1731 extern char aDderr_generic[14]; // weak
1732 extern char aDderr_notiniti[21]; // weak
1733 extern char aDderr_outofmem[18]; // weak
1734 extern char aDderr_invalidp[20]; // weak
1735 extern char Str[]; // idb
1736 extern char aDirectInputErr[]; // idb
1737 extern char aUnknownDirectI[]; // idb
1738 extern char aAtLineNumber[]; // idb
1739 extern char aInFile[]; // idb
1740 extern char aTooManyMobileL[]; // idb
1741 extern char aEWorkMsdevM_13[48]; // weak
1742 extern char aUSS[]; // idb
1743 extern char aUS[]; // idb
1744 extern char aMicon3[]; // idb
1745 extern char aTarget[]; // idb
1746 extern char CursorName[]; // idb
1747 extern char aWarningInvalid[]; // idb
1748 extern char aEWorkMsdevM_14[37]; // weak
1749 extern char aMicon1_0[]; // idb
1750 extern char aCouldNotInit_0[40]; // weak
1751 extern char aEWorkMsdevM_15[]; // idb
1752 extern char aCouldNotLoadAs[]; // idb
1753 extern char aDi_mousePointe[]; // idb
1754 extern char aDi_mousePoin_0[]; // idb
1755 extern char aCouldNotClipCu[]; // idb
1756 extern char aDoorErrorDoorI[]; // idb
1757 extern char *off_4EB080; // idb
1758 extern char *pTransitionStrings[464];
1759 extern char aAwards_txt[]; // idb
1760 extern char aScroll_txt[]; // idb
1761 extern char aMerchant_txt[]; // idb
1762 extern char aTrans_txt[]; // idb
1763 extern char aTeacher[]; // idb
1764 extern char aObelisk[]; // idb
1765 extern char aSeer[]; // idb
1766 extern char aStat[]; // idb
1767 extern char aPotion[]; // idb
1768 extern char aAutonote_txt[]; // idb
1769 extern char aQuests_txt[]; // idb
1770 extern char aNpcdist_txt[]; // idb
1771 extern char aNpctopic_txt[]; // idb
1772 extern char aNpctext_txt[]; // idb
1773 extern char aNpcnews_txt[]; // idb
1774 extern char aNpcgroup_txt[]; // idb
1775 extern char aNpcgreet_txt[]; // idb
1776 extern char aNpcdata_txt[]; // idb
1777 extern char aNpcprof_txt[]; // idb
1778 extern char aNpcnames_txt[]; // idb
1779 extern char aD3dVersionOfRe[]; // idb
1780 extern char aEWorkMsdevM_16[]; // idb
1781 extern char aLevels_0[]; // idb
1782 extern char aDmap[]; // idb
1783 extern char aAmap[]; // idb
1784 extern char aTmap[]; // idb
1785 extern char aHmap[]; // idb
1786 extern int dword_4EC268[]; // weak
1787 extern int dword_4EC28C[]; // weak
1788 extern int dword_4EC2A8; // weak
1789 extern int dword_4EC2AC; // weak
1790 extern char aInvalidGroundT[]; // idb
1791 extern char aInvalidSkyTexH[]; // idb
1792 extern char aIdlist[]; // idb
1793 extern char aOmap[]; // idb
1794 extern char aCmap[]; // idb
1795 extern char aMm6OutdoorV1_0[]; // idb
1796 extern char aI6_odm[]; // idb
1797 extern char aBlank[]; // idb
1798 extern char aHm005[]; // idb
1799 extern char aSky043[]; // idb
1800 extern char aDefault_odm[]; // idb
1801 extern char aPlansky3[]; // idb
1802 extern char aPlanskyD[]; // idb
1803 extern char a_ddm[5]; // weak
1804 extern char aCanTLoadFile[]; // idb
1805 extern char aEWorkMsdevM_17[]; // idb
1806 extern char a_odm[]; // idb
1807 extern char aUnableToFindSI[]; // idb
1808 extern char aSpawn[]; // idb
1809 extern char aBddata[]; // idb
1810 extern char aTernorm[]; // idb
1811 extern char aGrastyl[]; // idb
1812 extern char aOut09_odm[]; // idb
1813 extern char aNewedges[]; // idb
1814 extern char aSurfs[]; // idb
1815 extern char aEdges[]; // idb
1816 extern char aSpans[]; // idb
1817 extern char aTheTextureFram[]; // idb
1818 extern char aEWorkMsdevM_18[]; // idb
1819 extern char aWtrtyla[]; // idb
1820 extern char aWtrtyl[]; // idb
1821 extern char aUnableToSave_1[]; // idb
1822 extern char aDataDtile_bin[]; // idb
1823 extern char aTileDescrip[]; // idb
1824 extern char aTtattr_transit[]; // idb
1825 extern char aTtattr_nodraw[]; // idb
1826 extern char aTtattr_wave[]; // idb
1827 extern char aTtattr_flat[]; // idb
1828 extern char aTtattr_repulse[]; // idb
1829 extern char aTtattr_block[]; // idb
1830 extern char aTtattr_water2[]; // idb
1831 extern char aTtattr_water[]; // idb
1832 extern char aTtattr_burn[]; // idb
1833 extern char aTtsect_dnw[]; // idb
1834 extern char aTtsect_dse[]; // idb
1835 extern char aTtsect_dne[]; // idb
1836 extern char aTtsect_dsw[]; // idb
1837 extern char aTtsect_de[]; // idb
1838 extern char aTtsect_dw[]; // idb
1839 extern char aTtsect_ds[]; // idb
1840 extern char aTtsect_dn[]; // idb
1841 extern char aTtsect_wcap[]; // idb
1842 extern char aTtsect_scap[]; // idb
1843 extern char aTtsect_ecap[]; // idb
1844 extern char aTtsect_ncap[]; // idb
1845 extern char aTtsect_ew_s[]; // idb
1846 extern char aTtsect_ew_n[]; // idb
1847 extern char aTtsect_ns_w[]; // idb
1848 extern char aTtsect_ns_e[]; // idb
1849 extern char aTtsect_s_w[]; // idb
1850 extern char aTtsect_s_e[]; // idb
1851 extern char aTtsect_n_w[]; // idb
1852 extern char aTtsect_n_e[]; // idb
1853 extern char aTtsect_ew[]; // idb
1854 extern char aTtsect_ns[]; // idb
1855 extern char aTtsect_cros[]; // idb
1856 extern char aTtsect_xsw1[]; // idb
1857 extern char aTtsect_xse1[]; // idb
1858 extern char aTtsect_xnw1[]; // idb
1859 extern char aTtsect_xne1[]; // idb
1860 extern char aTtsect_s1[]; // idb
1861 extern char aTtsect_n1[]; // idb
1862 extern char aTtsect_w1[]; // idb
1863 extern char aTtsect_e1[]; // idb
1864 extern char aTtsect_sw1[]; // idb
1865 extern char aTtsect_se1[]; // idb
1866 extern char aTtsect_nw1[]; // idb
1867 extern char aTtsect_ne1[]; // idb
1868 extern char aTtsect_speci_6[]; // idb
1869 extern char aTtsect_speci_5[]; // idb
1870 extern char aTtsect_speci_4[]; // idb
1871 extern char aTtsect_speci_3[]; // idb
1872 extern char aTtsect_speci_2[]; // idb
1873 extern char aTtsect_speci_1[]; // idb
1874 extern char aTtsect_speci_0[]; // idb
1875 extern char aTtsect_special[]; // idb
1876 extern char aTtsect_base4[]; // idb
1877 extern char aTtsect_base3[]; // idb
1878 extern char aTtsect_base2[]; // idb
1879 extern char aTtsect_base1[]; // idb
1880 extern char aTtsect_start[]; // idb
1881 extern char aTtsect_null[]; // idb
1882 extern char aTttype_roadcit[]; // idb
1883 extern char aTttype_roads_2[]; // idb
1884 extern char aTttype_roadsno[]; // idb
1885 extern char aTttype_roadt_0[]; // idb
1886 extern char aTttype_roadtro[]; // idb
1887 extern char aTttype_roads_1[]; // idb
1888 extern char aTttype_roadswa[]; // idb
1889 extern char aTttype_roadv_0[]; // idb
1890 extern char aTttype_roadvol[]; // idb
1891 extern char aTttype_roads_0[]; // idb
1892 extern char aTttype_roadsan[]; // idb
1893 extern char aTttype_roadc_0[]; // idb
1894 extern char aTttype_roadcra[]; // idb
1895 extern char aTttype_roadg_0[]; // idb
1896 extern char aTttype_roadgra[]; // idb
1897 extern char aTttype_city[]; // idb
1898 extern char aTttype_swamp[]; // idb
1899 extern char aTttype_tropica[]; // idb
1900 extern char aTttype_water[]; // idb
1901 extern char aTttype_dirt[]; // idb
1902 extern char aTttype_volcano[]; // idb
1903 extern char aTttype_sand[]; // idb
1904 extern char aTttype_snow[]; // idb
1905 extern char aTttype_cracked[]; // idb
1906 extern char aTttype_grass[]; // idb
1907 extern char aTttype_start[]; // idb
1908 extern char aTttype_null[]; // idb
1909 extern char aTiletableLoadO[]; // idb
1910 extern char aTiletableLoadU[]; // idb
1911 extern char byte_4ECA93[]; // weak
1912 extern char byte_4ECACF[]; // weak
1913 extern char byte_4ECB0C[64]; // idb
1914 extern char aError_0[]; // idb
1915 extern char aCouldnTLoadMap[]; // idb
1916 extern char aOut02d_odm[]; // idb
1917 extern char aOut14_odm[]; // idb
1918 extern char aOut[]; // idb
1919 extern char aLunSun[]; // idb
1920 extern char aLunfull[]; // idb
1921 extern char aLun34[]; // idb
1922 extern char aLun12[]; // idb
1923 extern char aLun14[]; // idb
1924 extern char aPal03i[]; // idb
1925 extern char *pPlayerPortraitsNames[25];
1926 extern const char *dlad_texnames_by_face[25];
1927 extern const char *dlau_texnames_by_face[25];
1928 extern const char *dbod_texnames_by_face[25];
1929 extern const char *drh_texnames_by_face[25];
1930 extern const char *dlh_texnames_by_face[25];
1931 extern const char *dlhu_texnames_by_face[25];
1932 extern _UNKNOWN unk_4ED3D8; // weak
1933 extern char byte_4ED498; // weak
1934 extern __int16 pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing__negindex[]; // weak
1935 extern __int16 pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[4];
1936 extern unsigned __int8 pBaseHealthByClass[12];
1937 extern char byte_4ED75C[]; // weak
1938 extern unsigned __int8 pBaseHealthPerLevelByClass[36];
1939 extern unsigned __int8 pBaseManaPerLevelByClass[36];
1940 extern char byte_4ED820[]; // weak
1941 extern char byte_4ED94C[]; // weak
1942 extern char byte_4ED970_skill_learn_ability_by_class_table[32][37];
1943 extern int dword_4EDEA0[]; // weak
1944 extern int dword_4EDEB4[]; // weak
1945 extern int dword_4EDEC4[]; // weak
1946 extern __int16 word_4EDED8[]; // weak
1947 extern __int16 word_4EDEDC; // weak
1948 extern int pConditionImportancyTable[18];
1949 extern _UNKNOWN unk_4EDF40; // weak
1950 extern unsigned __int8 pConditionStrengthMultiplier[19];
1951 extern unsigned __int8 pConditionIntelligenceMultiplier[19];
1952 extern unsigned __int8 pConditionWillpowerMultiplier[19];
1953 extern unsigned __int8 pConditionEnduranceMultiplier[19];
1954 extern unsigned __int8 pConditionAccuracyMultiplier[19];
1955 extern unsigned __int8 pConditionSpeedMultiplier[19];
1956 extern unsigned __int8 pConditionLuckMultiplier[19];
1957 extern unsigned int pAgeingTable[4];
1958 extern unsigned __int8 pAgeingStrengthMultiplier[4];
1959 extern unsigned __int8 pAgeingIntelligenceMultiplier[4];
1960 extern unsigned __int8 pAgeingWillpowerMultiplier[4];
1961 extern unsigned __int8 pAgeingEnduranceMultiplier[4];
1962 extern unsigned __int8 pAgeingAccuracyMultiplier[4];
1963 extern unsigned __int8 pAgeingSpeedMultiplier[4];
1964 extern unsigned __int8 pAgeingLuckMultiplier[4];
1965 extern __int16 word_4EDFFC; // weak
1966 extern short word_4EDFFE[29]; // idb
1967 extern char player_stat_bonuses[]; // weak
1968 extern unsigned int pHiredNPCsIconsOffsetsX[2];
1969 extern unsigned int pHiredNPCsIconsOffsetsY[2];
1970 extern int dword_4EE07C[2]; // weak
1971 extern _UNKNOWN unk_4EE084; // weak
1972 extern __int16 word_4EE088_sound_ids[]; // weak
1973 extern __int16 word_4EE09A; // weak
1974 extern __int16 word_4EE0A6; // weak
1975 extern __int16 word_4EE128; // weak
1976 extern __int16 word_4EE142; // weak
1977 extern __int16 word_4EE150[28];
1978 extern char aInvalidPicture[]; // idb
1979 extern char aEWorkMsdevM_19[37]; // weak
1980 extern char aDD[]; // idb
1981 extern char off_4EE75C[]; // idb
1982 extern char aFacemask[]; // idb
1983 extern char aDead_0[]; // idb
1984 extern char aEradcate[]; // idb
1985 extern char aS02d[]; // idb
1986 extern char aUnableToSaveDp[]; // idb
1987 extern char aDataDpft_bin[]; // idb
1988 extern char aPlayerframet_1[]; // idb
1989 extern char aPlayerframet_0[]; // idb
1990 extern char aPlayerframetab[]; // idb
1991 extern char aUnableToSaveDi[]; // idb
1992 extern char aDataDift_bin[]; // idb
1993 extern char aIFrames[]; // idb
1994 extern char aIconframetab_0[]; // idb
1995 extern char aIconframetable[]; // idb
1996 extern char aInvalidStrin_1[22]; // weak
1997 extern char a03uS[]; // idb
1998 extern char aS03dD[]; // idb
1999 extern char aCchar_fnt[]; // idb
2000 extern char aArrowrD[]; // idb
2001 extern char aArrowlD[]; // idb
2002 extern char aPresleft[]; // idb
2003 extern char aPresrigh[]; // idb
2004 extern char aButtplus[]; // idb
2005 extern char aButtminu[]; // idb
2006 extern char aS01[]; // idb
2007 extern char aMakesky[]; // idb
2008 extern char aMaketop[]; // idb
2009 extern char aIc_sorc[]; // idb
2010 extern char aIc_druid[]; // idb
2011 extern char aIc_cler[]; // idb
2012 extern char aIc_ranger[]; // idb
2013 extern char aIc_arch[]; // idb
2014 extern char aIc_palad[]; // idb
2015 extern char aIc_monk[]; // idb
2016 extern char aIc_thief[]; // idb
2017 extern char aIc_knight[]; // idb
2018 extern char aScrollermap[]; // idb
2019 extern char aCredits_txt[]; // idb
2020 extern char aMm6title_pcx[13]; // weak
2021 extern char aQuick_fnt[]; // idb
2022 extern char aL_map[]; // idb
2023 extern char aL_bsp[]; // idb
2024 extern char aL_d[]; // idb
2025 extern char aL_l[]; // idb
2026 extern char aL_r[]; // idb
2027 extern char aL_fx[]; // idb
2028 extern char aL_f[]; // idb
2029 extern char aL_v[]; // idb
2030 extern char aD29_dlv[]; // idb
2031 extern char a_dlv[]; // idb
2032 extern char aEWorkMsdevM_20[]; // idb
2033 extern char a_blv[]; // idb
2034 extern char aL_ddata[]; // idb
2035 extern char aL_rldata[]; // idb
2036 extern char aL_rdata[]; // idb
2037 extern char aL_fdata[]; // idb
2038 extern char aHwsplat04[]; // idb
2039 extern char aErrorFailedT_0[]; // idb
2040 extern char aEWorkMsdevM_21[]; // idb
2041 extern char aReferenceRaste[]; // idb
2042 extern char aRgbEmulation[]; // idb
2043 extern char aInitFailedTo_7[]; // idb
2044 extern char aInitFailedTo_6[]; // idb
2045 extern char aInitFailedToAt[]; // idb
2046 extern char aInitFailedTo_5[]; // idb
2047 extern char aInitFailedToGe[37]; // weak
2048 extern char aInitFailedTo_4[39]; // weak
2049 extern char aInitFailedTo_3[36]; // weak
2050 extern char aInitFailedToEn[46]; // weak
2051 extern char aInitFailedTo_2[34]; // weak
2052 extern char aInitFailedTo_1[38]; // weak
2053 extern char aInitDesktopIsn[]; // idb
2054 extern char aInitFailedToSe[]; // idb
2055 extern char aInitFailedTo_0[]; // idb
2056 extern char aInitFailedToCr[]; // idb
2057 extern int dword_4EED78; // weak
2058 extern _UNKNOWN unk_4EED80; // weak
2059 extern int dword_4EFA80; // weak
2060 extern int dword_4EFA84; // weak
2061 extern char aDataD3dsprite_[]; // idb
2062 extern char aDataD3dbitmap_[]; // idb
2063 extern char aDetailLevel[]; // idb
2064 extern char aD3dDevice[]; // idb
2065 extern char aUseD3d[]; // idb
2066 extern char aEWorkMsdevM_22[]; // idb
2067 extern char aScreen0_2i_pcx[]; // idb
2068 extern char aZBuf_[]; // idb
2069 extern char aThereArenTAnyD[]; // idb
2070 extern char aDirect3dRend_1[]; // idb
2071 extern char aDirect3dRend_0[]; // idb
2072 extern char aDirect3dRender[]; // idb
2073 extern char aD3drendInitFai[]; // idb
2074 extern char aThereArenTAn_0[]; // idb
2075 extern int dword_4EFCBC[8];
2076 extern char aErrorExecuting[]; // idb
2077 extern char aEWorkMsdevM_23[]; // idb
2078 extern char aHiscreen16Load[]; // idb
2079 extern void *off_4EFDB0; // weak
2080 extern char aEWorkMsdevM_24[]; // idb
2081 extern char aEffpar02[]; // idb
2082 extern char aSp18h1[7]; // weak
2083 extern char aSpell75[]; // idb
2084 extern char aSpell73[]; // idb
2085 extern char aSpell71[]; // idb
2086 extern char aSpell69[]; // idb
2087 extern char aSpell58[]; // idb
2088 extern char aSpell55[]; // idb
2089 extern char aSpell51[]; // idb
2090 extern char aSpell46[]; // idb
2091 extern char aSpell38[]; // idb
2092 extern char aSpell36[]; // idb
2093 extern char aSpell25[]; // idb
2094 extern char aSpell17[]; // idb
2095 extern char aSpell14[]; // idb
2096 extern char aSpell05[]; // idb
2097 extern char aSpell03[]; // idb
2098 extern char aSpheal3[]; // idb
2099 extern char aSpheal2[]; // idb
2100 extern char aSpheal1[]; // idb
2101 extern char aSpboost3[]; // idb
2102 extern char aSpboost2[]; // idb
2103 extern char aSpboost1[]; // idb
2104 extern char aZapp[]; // idb
2105 extern char aSpell84[]; // idb
2106 extern char aEWorkMsdevM_25[]; // idb
2107 extern char aSpell97c[]; // idb
2108 extern char aSpell97[]; // idb
2109 extern char aSpell93[]; // idb
2110 extern char aSpell92[]; // idb
2111 extern char aSpell90[]; // idb
2112 extern char aSpell76[]; // idb
2113 extern char aSpell70[]; // idb
2114 extern char aSpell66[]; // idb
2115 extern char aSpell65[]; // idb
2116 extern char aSpell62[]; // idb
2117 extern char aSpell57c[]; // idb
2118 extern char aSpell41[]; // idb
2119 extern char aSpell39c[]; // idb
2120 extern char aSpell39[]; // idb
2121 extern char aSpell29[]; // idb
2122 extern char aSpell26[]; // idb
2123 extern char aSpell22[]; // idb
2124 extern char aSpell18[]; // idb
2125 extern char aSpell09[]; // idb
2126 extern char aSpell02[]; // idb
2127 extern char aSpell01[]; // idb
2128 extern char aSp57c[]; // idb
2129 extern char aInvalidMovieRe[]; // idb
2130 extern char aEnd_seq1[9]; // weak
2131 extern char aLosegame[9]; // weak
2132 extern char aIntroPost[11]; // weak
2133 extern char aIntro[6]; // weak
2134 extern char aJvc[4]; // weak
2135 extern char aNewWorldLogo[15]; // weak
2136 extern char a3dologo[8]; // weak
2137 extern char aNoMovie[]; // idb
2138 extern char aEWorkMsdevM_26[]; // idb
2139 extern unsigned __int16 pDoorSoundIDsByLocationID[78];
2140 extern char aCanTLoadSoundF[]; // idb
2141 extern char aEWorkMsdevM_27[]; // idb
2142 extern char aSoundSIsSizeIB[]; // idb
2143 extern char aUnableToSave_2[]; // idb
2144 extern char aDataDsounds_bi[]; // idb
2145 extern char aSndDes_[]; // idb
2146 extern char a3d[]; // idb
2147 extern char aLock[]; // idb
2148 extern char aSwap[]; // idb
2149 extern char aSystem[]; // idb
2150 extern char aSoundlistcla_0[]; // idb
2151 extern char aSoundlistclass[]; // idb
2152 extern char aSoundFileError[]; // idb
2153 extern char aCanTOpenFileS[]; // idb
2154 extern char aSoundsAudio_sn[]; // idb
2155 extern char aDisable3dsound[]; // idb
2156 extern char aEaxEnvironment[26]; // weak
2157 extern char a3dsoundprovide[]; // idb
2158 extern char aNone[]; // idb
2159 extern char aEmulated[]; // idb
2160 extern char aDevice[]; // idb
2161 extern char aSplashscreen[]; // idb
2162 extern char aSplashaudio[]; // idb
2163 extern char aSoftwareAureal[]; // idb
2164 extern char aEaxDamping[12]; // weak
2165 extern char aEaxEffectVolum[18]; // weak
2166 extern char aMaximumSupport[26]; // weak
2167 extern int dword_4F031C[]; // weak
2168 extern char aSprites08[]; // idb
2169 extern char aHardsprites[]; // idb
2170 extern char aTooManyStation[]; // idb
2171 extern char aEWorkMsdevM_28[52]; // weak
2172 extern char *off_4F03B8; // idb
2173 extern __int16 word_4F03FE[]; // weak
2174 extern __int16 word_4F0400[]; // weak
2175 extern __int16 word_4F0498[]; // weak
2176 extern __int16 word_4F0576[]; // weak
2177 extern __int16 word_4F0578[]; // weak
2178 extern __int16 word_4F05AE[]; // weak
2179 extern char _4F063C_smthn_by_2da_uType[]; // weak
2180 extern __int16 word_4F063E[290];
2181 extern __int16 word_4F06D8[22];
2182 extern __int16 word_4F0704[40];
2183 extern __int16 word_4F0754[49];
2184 extern __int16 word_4F07B6[88];
2185 extern __int16 word_4F0866[14];
2186 extern __int16 _4F0882_evt_VAR_PlayerItemInHands_vals[53];
2187 extern int dword_4F08EC[]; // weak
2188 extern char byte_4F09B0[]; // weak
2189 extern char byte_4F09B1[]; // weak
2190 extern char byte_4F09B8[]; // weak
2191 extern int dword_4F09CC[192];
2192 extern char byte_4F0CCF[]; // weak
2193 extern char _4F0D38_TravelInfo[]; // weak
2194 extern int dword_4F0E10[32];
2195 extern Vec2_int_ pMonsterArenaPlacements[20];
2196 extern __int16 word_4F0F30[]; // weak
2197 extern char aS03d[]; // idb
2198 extern char byte_4F0F98; // idb
2199 extern char sz[]; // idb
2200 extern char aSSSSSS[]; // idb
2201 extern char aSDS[]; // idb
2202 extern char aSS_3[]; // idb
2203 extern char aSSSS[]; // idb
2204 extern char aS_2[]; // idb
2205 extern char aErrorlog_txt[]; // idb
2206 extern char aUnsupportedPix[]; // idb
2207 extern char aSmackerError[]; // idb
2208 extern char aCS[]; // idb
2209 extern char aAnimsMagic7_vi[]; // idb
2210 extern char aVideoFileError[]; // idb
2211 extern char aCanTOpenFileAn[]; // idb
2212 extern char aAnimsMight7_vi[]; // idb
2213 extern char aCanTLoadS[]; // idb
2214 extern char aS_smk[]; // idb
2215 extern char aUnsupportedBin[27]; // weak
2216 extern char aEWorkMsdevM_29[]; // idb
2217 extern char aFailedToOpenBl[]; // idb
2218 extern char aCanTAllocateMe[33]; // weak
2219 extern char aCanTLoadFileAn[]; // idb
2220 extern char aS_bik[]; // idb
2221 extern char aMm7_win_pcx[]; // idb
2222 extern char aLuSLuSLuS[]; // idb
2223 extern char aEndgame_fnt[]; // idb
2224 extern char aWinbg_pcx[10]; // weak
2225 extern char aDefaultCaseRea[]; // idb
2226 extern char aUnsupportedExc[71]; // weak
2227 extern char aEWorkMsdevM_30[]; // idb
2228 extern char aUndefinedTypeR[]; // idb
2229 extern char aUnknownPointer[]; // idb
2230 extern char a1_1_3[6]; // weak
2231 extern double dbl_4F2870; // weak
2232 extern int dword_4F288C; // weak
2233 extern double dbl_4F5372; // weak
2234 extern int dword_4F5428[]; // weak
2235 extern int dword_4F542C[]; // weak
2236 extern _UNKNOWN crtunk_4F54B8; // weak
2237 extern int dword_4F5B24_ys[]; // idb
2238 extern int dword_4F5BF4_xs[]; // idb
2239 extern int dword_4F5CC4_ys[]; // idb
2240 extern int dword_4F5D98_xs[]; // idb
2241 extern int ai_array_4F5E68[500];
2242 extern int ai_array_4F6638_actor_ids[500];
2243 extern int dword_4F6E08[500];
2244 extern int ai_arrays_size; // weak
2245 extern int ai_array_4F75E0[500];
2246 extern unsigned int ai_array_4F7DB0_actor_ids[500];
2247 extern int dword_4F8580[]; // weak
2248 extern int dword_4F8584[]; // weak
2249 extern int dword_4F8588[]; // weak
2250 extern int dword_4FA9B0[]; // weak
2251 extern int dword_4FA9B4[]; // weak
2252 extern char byte_4FAA00; // weak
2253 extern __int16 am_sounds[12];
2254 extern _UNKNOWN unk_4FAA20; // weak
2255 extern char byte_4FAA24; // weak
2256 extern HWND dword_4FAA28; // idb
2257 extern char byte_4FAA2C; // weak
2258 extern char byte_4FAA2D; // weak
2259 extern char byte_4FAA2E; // weak
2260 extern int amuint_4FAA34; // weak
2261 extern int amuint_4FAA38; // weak
2262 extern int amuint_4FAA3C_blt_xy[2];
2263 extern int am_uint_4FAA44_blt_xy[2];
2264 extern int amuint_4FAA4C; // weak
2265 extern unsigned int uCardID; // idb
2266 extern int amuint_4FAA54_blt_xy[2];
2267 extern int amuint_4FAA5C_blt_xy[2];
2268 extern int dword_4FAA64; // weak
2269 extern int dword_4FAA68; // weak
2270 extern int amuint_4FAA6C; // idb
2271 extern int dword_4FAA70; // weak
2272 extern char byte_4FAA74; // weak
2273 extern char am_byte_4FAA75; // weak
2274 extern char am_byte_4FAA76; // weak
2275 extern char am_byte_4FAA77; // weak
2276 extern int amuint_4FAA78[777]; // weak
2277 extern char am_byte_4FAA7C[777]; // weak
2278 extern int amuint_4FAA80[777]; // weak
2279 extern int amuint_4FAA84[777]; // weak
2280 extern int amuint_4FAA88[777]; // weak
2281 extern int amuint_4FAA8C[777]; // weak
2282 extern int amuint_4FAA90[777][2];
2283 extern int dword_4FABB8; // weak
2284 extern signed int dword_4FABBC; // idb
2285 extern unsigned int amuint_4FABC0; // idb
2286 extern int amuint_4FABC4; // weak
2287 extern int dword_4FABC8; // weak
2288 extern char byte_4FABD0[]; // weak
2289 extern char byte_4FABD1[]; // weak
2290 extern _UNKNOWN unk_4FABD4; // weak
2291 extern int dword_4FABD8[]; // weak
2292 extern int dword_4FABDC[]; // weak
2293 extern int dword_4FABE0[]; // weak
2294 extern int dword_4FABE4[]; // weak
2295 extern int dword_4FABE8[]; // weak
2296 extern int dword_4FABEC[]; // weak
2297 extern int dword_4FABF0[]; // weak
2298 extern int dword_4FABF4[]; // weak
2299 extern int dword_4FABF8[]; // weak
2300 extern int dword_4FABFC[]; // weak
2301 extern int dword_4FAC00[]; // weak
2302 extern int dword_4FAC04[]; // weak
2303 extern int dword_4FAC08[]; // weak
2304 extern int dword_4FAC0C[]; // weak
2305 extern _UNKNOWN unk_5052C8; // weak
2306 extern int dword_505314[]; // weak
2307 extern char byte_5054C8[32]; // idb
2308 extern char byte_5054E8[108];
2309 extern int dword_505554[]; // weak
2310 extern _UNKNOWN unk_505704; // weak
2311 extern char byte_505880; // weak
2312 extern char byte_505881; // weak
2313 extern int amuint_505884; // weak
2314 extern int amuint_505888; // weak
2315 extern int amuint_50588C; // weak
2316 extern int dword_505890; // weak
2317 extern unsigned int pSRZBufferLineOffsets[480];
2318 extern int areWeLoadingTexture; // weak
2319 extern char byte_506130[]; // weak
2320 extern int dword_506338; // weak
2321 extern int dword_50633C; // idb
2322 extern signed int sRecoveryTime; // idb
2323 extern unsigned int uRequiredMana; // idb
2324 extern int _506348_current_lloyd_playerid; // weak
2325 extern __int64 qword_506350; // weak
2326 extern char byte_506360; // weak
2327 extern int dword_506364; // weak
2328 extern int dword_506408[]; // weak
2329 extern int dword_50640C[]; // weak
2330 extern unsigned int uTextureID_506438;
2331 extern _UNKNOWN unk_506494; // weak
2332 extern int dword_50651C; // weak
2333 extern int dword_506520; // weak
2334 extern int dword_506524; // weak
2335 extern int dword_506528; // weak
2336 extern int dword_50652C; // weak
2337 extern int dword_506530; // weak
2338 extern int dword_506534; // weak
2339 extern int dword_506538; // weak
2340 extern int dword_50653C; // weak
2341 extern int dword_506540; // weak
2342 extern int dword_506544; // weak
2343 extern int dword_506548; // weak
2344 extern int dword_50654C; // weak
2345 extern char byte_506550; // weak
2346 extern char *aMoonPhaseNames[5];
2347 extern int dword_506568; // weak
2348 extern char bRecallingBeacon; // weak
2349 extern char nullstring[];
2350 extern int uLastPointedObjectID; // weak
2351 //extern unsigned __int8 bMonsterInfoUI_bDollInitialized;
2352 extern char *aSpellNames[44];
2353 extern int dword_506978; // weak
2354 extern char byte_50697C; // weak
2355 extern int dword_506980; // weak
2356 extern int dword_506984; // weak
2357 extern int dword_506988; // weak
2358 extern int dword_50698C; // weak
2359 extern int dword_506E68; // weak
2360 extern __int16 word_506E6C[18]; // weak
2361 extern unsigned int pPrevVirtualCidesMapping[27];
2362 extern int pWindowList_at_506F50_minus1_indexing[]; // idb
2363 extern int dword_506F08; // weak
2364 extern int dword_506F0C[]; // idb
2365 extern int uRestUI_FoodRequiredToRest;
2366 extern int dword_506F14; // weak
2367 extern int _506F18_num_hours_to_sleep; // weak
2368 extern int dword_506F1C; // weak
2369 extern int pVisibleWindowsIdxs[20]; // weak
2370 extern int uNumVisibleWindows;
2371 extern char bFlashHistoryBook; // weak
2372 extern char bFlashAutonotesBook; // weak
2373 extern char bFlashQuestBook; // weak
2374 extern int dword_507960; // weak
2375 extern int dword_507964; // weak
2376 extern int dword_507968; // weak
2377 extern int dword_50796C; // weak
2378 extern int dword_507974; // weak
2379 extern int dword_5079B4; // weak
2380 extern int dword_5079C8; // weak
2381 extern int dword_5079CC; // weak
2382 extern int dword_5079D0; // weak
2383 extern int dword_5079D8; // weak
2384 extern struct GUIButton *dword_507A14; // idb
2385 extern struct GUIButton *dword_507A18; // idb
2386 extern unsigned int uGameUIFontShadow;
2387 extern unsigned int uGameUIFontMain;
2388 extern int dword_507B00_spell_info_to_draw_in_popup; // weak
2389 extern char *aMonthNames[12];
2390 extern char *aDayNames[7];
2391 extern char *aSpellSchoolNames[9];
2392 extern char *aAttributeNames[7];
2393 extern int dword_507B94; // weak
2394 extern int dword_507B98_ctrl_pressed; // weak
2395 extern unsigned int uActiveCharacter;
2396 extern int dword_507BF0_is_there_popup_onscreen; // weak
2397 extern int dword_507C08; // weak
2398 extern int dword_507C0C; // weak
2399 extern int dword_507CBC; // weak
2400 extern int dword_507CC0; // weak
2401 extern __int64 qword_507CC8; // weak
2402 extern int _507CD4_RestUI_hourglass_anim_controller; // weak
2403 extern int dword_507CD8; // weak
2404 extern int dword_50B570[]; // weak
2405 extern int dword_50B638[]; // weak
2406 extern int dword_50B700; // weak
2407 extern int dword_50B738[]; // idb
2408 extern int _50B744_view_transformed_ys_minus1[]; // weak
2409 extern int _50B744_view_transformed_ys[43];
2410 extern int dword_50B828[];
2411 extern int _50B834_view_transformed_zs_minus1[]; // weak
2412 extern int _50B834_view_transformed_zs[43];
2413 extern int dword_50B918[];
2414 extern int _50B924_view_transformed_xs_minus1[]; // idb
2415 extern int _50B924_view_transformed_xs[43];
2416 extern int unk_50B9D4[]; // idb
2417 extern int dword_50B9D8_ys[];
2418 extern int dword_50B9E0_ys[]; // idb
2419 extern int dword_50B9EC[]; // idb
2420 extern int dword_50B9F0[2]; // idb
2421 extern int dword_50B9F8[]; // idb
2422 extern int dword_50BA08[]; // idb
2423 extern int dword_50BAC4[]; // weak
2424 extern int dword_50BAC8[]; // idb
2425 extern int dword_50BAD0[]; // weak
2426 extern int dword_50BAD4[]; // weak
2427 extern int dword_50BADC_xs[]; // weak
2428 extern int dword_50BAE0[]; // weak
2429 extern int dword_50BAE8[]; // weak
2430 extern int dword_50BAEC_xs[]; // weak
2431 extern int dword_50BAF4[]; // weak
2432 extern int dword_50BAF8_xs[]; // weak
2433 extern int dword_50BC10[]; // weak
2434 extern int dword_50BDA0[]; // weak
2435 extern int dword_50BF30[]; // weak
2436 extern char byte_50C0C0; // weak
2437 extern int some_active_character; // weak
2438 extern _UNKNOWN unk_50C190; // weak
2439 extern int dword_50C968; // weak
2440 extern unsigned int pIconIDs_Turn[5];
2441 extern unsigned int uIconID_TurnStop;
2442 extern unsigned int uIconID_TurnHour;
2443 extern int uIconID_CharacterFrame; // idb
2444 extern int dword_50C98C; // weak
2445 extern unsigned int uIconID_TurnStart;
2446 extern int dword_50C994; // weak
2447 extern int dword_50C998_turnbased_icon_1A; // weak
2448 extern int uSpriteID_Spell11; // idb
2449 extern _UNKNOWN unk_50C9A0; // weak
2450 extern int dword_50C9A8; // weak
2451 extern int dword_50C9AC; // weak
2452 extern int dword_50C9D0; // weak
2453 extern int dword_50C9D4; // weak
2454 extern int dword_50C9D8; // weak
2455 extern int dword_50C9DC; // weak
2456 extern struct NPCData *ptr_50C9E0;
2457 extern int dword_50C9E8; // idb
2458 extern int dword_50C9EC[]; // weak
2459 extern int dword_50C9F0[120]; // idb
2460 extern int dword_50CDC8; // weak
2461 extern int dword_50CDCC; // weak
2462 extern int bProcessorIsNotIntel; // weak
2463 extern Vec3_int_ layingitem_vel_50FDFC;
2464 extern char pStartingMapName[]; // idb
2465 extern unsigned __int8 IsPlayerWearingWatersuit[5];
2466 extern char byte_5111C0[54];
2467 extern char byte_5111F6[18];
2468 extern unsigned int papredoll_dbrds[16];
2469 extern unsigned int papredoll_drhs[4];
2470 extern unsigned int papredoll_dlhus[4];
2471 extern unsigned int papredoll_dlhs[4];
2472 extern unsigned int papredoll_dbods[5];
2473 extern int paperdoll_array_511290[4][17][3];
2474 extern unsigned int papredoll_dlaus[5];
2475 extern unsigned int papredoll_dlads[4];
2476 extern int papredoll_flying_feet[]; // idb
2477 extern int dword_511638[4][6];
2478 extern int dword_511788[]; // weak
2479 extern int dword_51179C; // weak
2480 extern int dword_5117A0; // weak
2481 extern int dword_5117A4; // weak
2482 extern int dword_5117A8; // weak
2483 extern int dword_5117AC; // weak
2484 extern int paperdoll_array_511828[4][10];
2485 extern int bRingsShownInCharScreen; // weak
2486 extern int _unused000; // weak
2487
2488 extern unsigned __int16 _56EFD8_minimap[117][137];
2489 extern unsigned int uNumBlueFacesInBLVMinimap;
2490 extern unsigned __int16 pBlueFacesInBLVMinimapIDs[50];
2491 extern int pTextureIDs_isns[14];
2492 extern unsigned int uIconIdx_Spell21;
2493 extern unsigned int uIconIdx_Spell27;
2494 extern int dword_576E28; // weak
2495 extern int dword_576E2C; // weak
2496 extern __int64 _5773B8_event_timer; // weak
2497 extern int dword_5773C0; // weak
2498
2499 extern int dword_591080; // weak
2500 extern int dword_591084; // weak
2501 extern struct Actor *pDialogue_SpeakingActor;
2502 extern unsigned int uDialogueType;
2503 extern unsigned int uDialogue_SpeakingActorNPC_ID;
2504 extern struct LevelDecoration *_591094_decoration;
2505 extern char byte_591098[200]; // idb
2506 extern int uCurrentHouse_Animation; // weak
2507 extern char *dword_591164_teleport_map_name; // idb
2508 extern int dword_591168_teleport_speedz; // weak
2509 extern int dword_59116C_teleport_directionx; // weak
2510 extern int dword_591170_teleport_directiony; // weak
2511 extern int dword_591174_teleportz; // weak
2512 extern int dword_591178_teleporty; // weak
2513 extern int dword_59117C_teleportx; // weak
2514 extern char byte_591180[600]; // idb
2515 extern struct NPCData *array_5913D8[12];
2516 extern struct Texture *pDialogueNPCPortraits[6];
2517 extern int uNumDialogueNPCPortraits; // weak
2518 extern struct Texture *pTexture_591428;
2519 extern struct Texture *pTexture_outside; // idb
2520 extern struct Texture *pTexture_Dialogue_Background;
2521 extern _UNKNOWN unk_597F10; // weak
2522 extern int dword_597F18; // weak
2523 extern char byte_5B0938[2000];
2524 extern int dword_5B5920; // weak
2525 extern int dword_5B5924; // weak
2526 extern int _5B65A8_npcdata_uflags_or_other; // weak
2527 extern int _5B65AC_npcdata_fame_or_other; // weak
2528 extern int _5B65B0_npcdata_rep_or_other; // weak
2529 extern int _5B65B4_npcdata_loword_house_or_other; // weak
2530 extern int _5B65B8_npcdata_hiword_house_or_other; // weak
2531 extern int dword_5B65BC; // weak
2532 extern int dword_5B65C0; // weak
2533 extern int dword_5B65C4; // weak
2534 extern int dword_5B65C8; // weak
2535 extern int dword_5B65CC; // weak
2536 extern int dword_5B65D0_dialogue_actor_npc_id; // weak
2537 extern int dword_5C3418; // weak
2538 extern int dword_5C341C; // weak
2539 extern char byte_5C3427[]; // weak
2540 extern char GameUI_StatusBar_TimedString[200];
2541 extern char pStatusBarString[200];
2542 extern unsigned int GameUI_StatusBar_TimedStringTimeLeft;
2543 extern int bForceDrawStatusBar; // weak
2544 extern int dword_5C35C0; // weak
2545 extern int bDialogueUI_InitializeActor_NPC_ID; // weak
2546 extern int dword_5C35C8; // weak
2547 extern char *p2DEventsTXT_Raw;
2548 extern int uHouse_ExitPic; // weak
2549 extern int dword_5C35D4; // weak
2550 extern char *aAMPMNames[2];
2551 extern char byte_5C45AF[]; // weak
2552 extern char pTmpBuf3[2048];
2553 extern char pFinalMessage[4096]; // idb
2554 extern char pTmpBuf[2000];
2555 extern char pTmpBuf2[2000];
2556 extern char byte_5C6D50[]; // weak
2557 extern int ui_current_text_color; // weak
2558 extern __int64 qword_5C6DF0; // weak
2559 extern int dword_5C6DF8; // weak
2560 extern char item__getname_buffer[104]; // idb
2561 extern char *pClassDescriptions[36];
2562 extern char *pAttributeDescriptions[7];
2563 extern char *pGrandSkillDesc[38];
2564 extern char *pMasterSkillDesc[38];
2565 extern char *pExpertSkillDesc[38];
2566 extern char *pNormalSkillDesc[38];
2567 extern char *pSkillDesc[38];
2568 extern char *pHealthPointsAttributeDescription;
2569 extern char *pSpellPointsAttributeDescription;
2570 extern char *pArmourClassAttributeDescription;
2571 extern char *pPlayerConditionAttributeDescription; // idb
2572 extern char *pFastSpellAttributeDescription;
2573 extern char *pPlayerAgeAttributeDescription;
2574 extern char *pPlayerLevelAttributeDescription;
2575 extern char *pPlayerExperienceAttributeDescription;
2576 extern char *pAttackBonusAttributeDescription;
2577 extern char *pAttackDamageAttributeDescription;
2578 extern char *pMissleBonusAttributeDescription;
2579 extern char *pMissleDamageAttributeDescription;
2580 extern char *pFireResistanceAttributeDescription;
2581 extern char *pAirResistanceAttributeDescription;
2582 extern char *pWaterResistanceAttributeDescription;
2583 extern char *pEarthResistanceAttributeDescription;
2584 extern char *pMindResistanceAttributeDescription;
2585 extern char *pBodyResistanceAttributeDescription;
2586 extern char *pSkillPointsAttributeDescription;
2587 extern char *pClassTXT_Raw;
2588 extern char *pStatsTXT_Raw;
2589 extern char *pSkillDescTXT_Raw;
2590 extern struct StorylineText *pStorylineText;
2591 extern struct FactionTable *pFactionTable;
2592 extern char byte_5C8D1A[]; // weak
2593 extern char *pGlobalTXT_LocalizationStrings[677];
2594 extern char byte_5E4C15[]; // weak
2595 extern char *pSomeItemsNames[14];
2596 extern char *pGlobalTXT_Raw;
2597 extern char *pMonstersTXT_Raw;
2598 extern char *pMonsterPlacementTXT_Raw;
2599 extern char *pSpellsTXT_Raw;
2600 extern char *pMapStatsTXT_Raw;
2601 extern char *pHostileTXT_Raw;
2602 extern char *pPotionsTXT_Raw;
2603 extern char *pPotionNotesTXT_Raw;
2604 extern char *pHistoryTXT_Raw;
2605 extern int _6807B8_level_decorations_ids[]; // idb
2606 extern int _6807E0_num_decorations_6807B8; // weak
2607 extern int _6807E8_level_decorations_ids[]; // idb
2608 extern int _6836C8_num_decorations_6807E8; // weak
2609 extern int dword_69B010[64];
2610 extern int dword_69B138; // weak
2611 extern char byte_69BD41_unused; // weak
2612 extern std::string stru_69BD44; // idb
2613 extern struct SavegameHeader *pSavegameHeader;
2614 extern unsigned int uTextureID_x_u;
2615 extern unsigned int uTextureID_LS_saveU;
2616 extern unsigned int uTextureID_LS_loadU;
2617 extern unsigned int uTextureID_AR_DN_DN;
2618 extern unsigned int uTextureID_AR_UP_DN;
2619 extern unsigned int uTextureID_LS_;
2620 extern unsigned int uTextureID_x_d;
2621 extern unsigned int uTextureID_save_up;
2622 extern unsigned int uTextureID_load_up;
2623 extern unsigned int uTextureID_loadsave;
2624 extern _UNKNOWN _69FBB4_ptr_iterator_end; // weak
2625 extern _UNKNOWN unk_6A0758; // weak
2626 extern int dword_6A0C9C; // weak
2627 extern unsigned int uLoadGameUI_SelectedSlot;
2628 extern HWND hInsertCDWindow; // idb
2629 extern int uCPUSpeed; // weak
2630 extern char cMM7GameCDDriveLetter; // idb
2631 extern void *ptr_6A0D08;
2632 extern int _6A0D0C_txt_lod_loading; // weak
2633 extern int _6A0D10_txt_lod_loading__unused; // weak
2634 extern unsigned int uCurrentMenuID;
2635 extern unsigned int uGameState;
2636 extern int uDefaultTravelTime_ByFoot; // weak
2637 extern int day_attrib; // weak
2638 extern int day_fogrange_1; // weak
2639 extern int day_fogrange_2; // weak
2640 extern struct TileTable *pTileTable; // idb
2641 extern int texmapping_terrain_subdivsize; // weak
2642 extern int texmapping_terrain_subdivpow2; // weak
2643 extern int texmapping_building_subdivsize; // weak
2644 extern int texmapping_building_subdivpow2; // weak
2645 extern int unnamed_6BE060[2];
2646 extern int mipmapping_building_mm1; // weak
2647 extern int mipmapping_building_mm2; // weak
2648 extern int mipmapping_building_mm3; // weak
2649 extern int mipmapping_terrain_mm1; // weak
2650 extern int mipmapping_terrain_mm2; // weak
2651 extern int mipmapping_terrain_mm3; // weak
2652 extern int outdoor_grid_band_1; // idb
2653 extern int outdoor_grid_band_2; // idb
2654 extern int outdoor_grid_band_3; // idb
2655 extern char outdoor_day_top_r; // weak
2656 extern char outdoor_day_top_g; // weak
2657 extern char outdoor_day_top_b; // weak
2658 extern char outdoor_day_bottom_r; // weak
2659 extern char outdoor_day_bottom_g; // weak
2660 extern char outdoor_day_bottom_b; // weak
2661 extern char outdoor_night_top_r; // weak
2662 extern char outdoor_night_top_g; // weak
2663 extern char outdoor_night_top_b; // weak
2664 extern char outdoor_night_bottom_r; // weak
2665 extern char outdoor_night_bottom_g; // weak
2666 extern char outdoor_night_bottom_b; // weak
2667 extern char pDefaultSkyTexture[]; // idb
2668 extern char byte_6BE124_cfg_textures_DefaultGroundTexture[16]; // idb
2669 extern int _6BE134_odm_main_tile_group; // weak
2670 extern int dword_6BE138; // weak
2671 extern int dword_6BE13C_uCurrentlyLoadedLocationID; // weak
2672 extern float fWalkSpeedMultiplier; // weak
2673 extern float fBackwardMovementSlowdownMultiplier; // weak
2674 extern float fTurnSpeedMultiplier; // weak
2675 extern float flt_6BE150_look_up_down_dangle; // weak
2676 //extern char pMM7WindowClassName[]; // idb
2677 //extern HINSTANCE hInstance; // idb
2678 //extern char *pCmdLine;
2679 extern HWND hWnd; // idb
2680 extern int uWindowWidth; // idb
2681 extern int uWindowHeight; // idb
2682 extern int uWindowX; // idb
2683 extern int uWindowY; // idb
2684 extern LONG uWindowStyle; // idb
2685 extern HMENU hOSMenu; // idb
2686 extern int dword_6BE340; // weak
2687 extern char pCurrentMapName[20]; // idb
2688 extern unsigned int uLevelMapStatsID;
2689 extern int uLevel_StartingPointType; // weak
2690 extern int dword_6BE364_game_settings_1; // weak
2691 extern int dword_6BE368_debug_settings_2; // weak
2692 extern unsigned __int8 bUseLoResSprites;
2693 extern unsigned __int8 bUseRegistry;
2694 extern unsigned __int8 bCanLoadFromCD;
2695 extern int bShowDamage; // idb
2696 extern unsigned int bAlwaysRun;
2697 extern unsigned int bFlipOnExit;
2698 extern int dword_6BE384_2dacceloff; // weak
2699 extern char byte_6BE388_graphicsmode; // weak
2700 extern unsigned int uTurnSpeed;
2701 extern float flt_6BE3A0; // weak
2702 extern float flt_6BE3A4_debug_recmod1;
2703 extern float flt_6BE3A8_debug_recmod2;
2704 extern float flt_6BE3AC_debug_recmod1_x_1_6;
2705 extern char byte_6BE3B0[20]; // idb
2706 extern char bUnderwater; // weak
2707 extern char bNoNPCHiring; // weak
2708 extern int _702AC0_unused; // weak
2709 extern int _702AC4_unused; // weak
2710 extern char _702ACC_unused; // weak
2711 extern int bDebugResouces; // weak
2712 extern unsigned int bNoVideo;
2713 extern int aborting_app; // weak
2714 extern int dword_720020_zvalues[100];
2715 extern int dword_7201B0_zvalues[299];
2716 extern int dword_72065C[]; // weak
2717 extern int dword_720660[]; // idb
2718 extern int dword_7207EC[]; // weak
2719 extern int dword_7207F0[]; // idb
2720 extern int uTextureID_720980; // weak
2721 extern int _720984_unused; // weak
2722 extern char _72098C_unused; // weak
2723 extern std::string std__string_720990; // idb
2724 extern __int16 word_7209A0_intercepts_ys_plus_ys[104];
2725 extern __int16 word_720A70_intercepts_xs_plus_xs[104];
2726 extern __int16 word_720B40_intercepts_zs[104];
2727 extern __int16 word_720C10_intercepts_xs[104];
2728 extern __int16 word_720CE0_ys[]; // idb
2729 extern __int16 word_720DB0_xs[]; // idb
2730 extern int dword_720E80[20];
2731 extern int dword_720ED0[20];
2732 extern int dword_720F20[20];
2733 extern __int16 word_720F70[]; // idb
2734 extern __int16 word_721040[]; // idb
2735 extern int dword_721110[]; // idb
2736 extern int dword_721160[]; // idb
2737 extern int dword_7211B0[]; // idb
2738 extern int dword_721200[]; // idb
2739 extern int dword_7212C8[]; // idb
2740 extern __int16 word_721390[]; // idb
2741 extern __int16 word_721460[]; // idb
2742 extern int blv_prev_party_x; // weak
2743 extern int blv_prev_party_z; // weak
2744 extern int blv_prev_party_y; // weak
2745 extern char *dword_721660; // idb
2746 extern char *dword_721664; // idb
2747 extern _UNKNOWN unk_721668_pNPCTopic; // weak
2748 extern _UNKNOWN unk_72166C_pNPCText; // weak
2749 extern int dword_721824; // weak
2750 extern int dword_72193C; // weak
2751 extern int dword_721984[22];
2752 extern int dword_7219DC[]; // weak
2753 extern char *dword_721A34; // idb
2754 extern char *_721A3C_npc_text; // idb
2755 extern int dword_721A44; // weak
2756 extern int dword_721A4C; // weak
2757 extern int dword_721A64; // weak
2758 extern int _721A6C_npc_text[]; // weak
2759 extern int _721A84_npc_text; // weak
2760 extern int dword_721BAC[6];
2761 extern char *dword_721BC4; // idb
2762 extern _UNKNOWN dword_721E24[]; // idb
2763 extern int dword_722164; // weak
2764 extern int dword_72216C; // weak
2765 extern int dword_722174; // weak
2766 extern char *pStr_72217C; // idb
2767 extern int dword_722240[]; // idb
2768 extern int dword_722320; // weak
2769 extern char *pstr_722494;
2770 extern int dword_72266C; // weak
2771 extern _UNKNOWN unk_722880; // weak
2772 extern int dword_722B3C; // weak
2773 extern int dword_722B44; // weak
2774 extern char *dword_722F10; // idb
2775 extern const char *pQuestTable[512];
2776 extern _UNKNOWN unk_723714; // weak
2777 extern char *dword_723718_autonote_related; // idb
2778 extern int dword_72371C[]; // weak
2779 extern const char *pScrolls[82];
2780 extern int dword_723E80_award_related[]; // weak
2781 extern int dword_723E84[]; // weak
2782 extern int dword_7241C8; // weak
2783 extern struct NPCStats *pNPCStats;
2784 extern char *aNPCProfessionNames[59];
2785 extern char *pAwardsTXT_Raw;
2786 extern char *pScrollsTXT_Raw;
2787 extern char *pMerchantsTXT_Raw;
2788 extern const char *pMerchantsBuyPhrases[7];
2789 extern const char *pMerchantsSellPhrases[7];
2790 extern const char *pMerchantsRepairPhrases[7];
2791 extern const char *pMerchantsIdentifyPhrases[7];
2792 extern char *pTransitionsTXT_Raw;
2793 extern char *pAutonoteTXT_Raw;
2794 extern char *pQuestsTXT_Raw;
2795 extern unsigned int uNumTerrainNormals;
2796 extern int pTerrainSomeOtherData[32768];
2797 extern unsigned __int16 pTerrainNormalIndices[32768];
2798 extern struct Vec3_float_ *pTerrainNormals;
2799 extern int dword_76D518_terrain_cell_world_pos_around_party_y; // weak
2800 extern int dword_76D51C_terrain_cell_world_pos_around_party_y; // weak
2801 extern int dword_76D520_terrain_cell_world_pos_around_party_y; // weak
2802 extern int dword_76D524_terrain_cell_world_pos_around_party_y; // weak
2803 extern int dword_76D528_terrain_cell_world_pos_around_party_z; // weak
2804 extern int dword_76D52C_terrain_cell_world_pos_around_party_z; // weak
2805 extern int dword_76D530_terrain_cell_world_pos_around_party_z; // weak
2806 extern int dword_76D534_terrain_cell_world_pos_around_party_z; // weak
2807 extern int dword_76D538_terrain_cell_world_pos_around_party_x; // weak
2808 extern int dword_76D53C_terrain_cell_world_pos_around_party_x; // weak
2809 extern int dword_76D540_terrain_cell_world_pos_around_party_x; // weak
2810 extern int dword_76D544_terrain_cell_world_pos_around_party_x; // weak
2811 extern int dword_76D548_terrain_cell_world_pos_around_party_y; // weak
2812 extern int dword_76D54C_terrain_cell_world_pos_around_party_y; // weak
2813 extern int dword_76D550_terrain_cell_world_pos_around_party_y; // weak
2814 extern int dword_76D554_terrain_cell_world_pos_around_party_y; // weak
2815 extern int dword_76D558_terrain_cell_world_pos_around_party_z; // weak
2816 extern int dword_76D55C_terrain_cell_world_pos_around_party_z; // weak
2817 extern int dword_76D560_terrain_cell_world_pos_around_party_z; // weak
2818 extern int dword_76D564_terrain_cell_world_pos_around_party_z; // weak
2819 extern int dword_76D568_terrain_cell_world_pos_around_party_x; // weak
2820 extern int dword_76D56C_terrain_cell_world_pos_around_party_x; // weak
2821 extern int dword_76D570_terrain_cell_world_pos_around_party_x; // weak
2822 extern int dword_76D574_terrain_cell_world_pos_around_party_x; // weak
2823 extern int terrain_76D5C8[128];
2824 extern int terrain_76D7C8[128];
2825 extern int terrain_76D9C8[128];
2826 extern int terrain_76DBC8[128];
2827 extern int terrain_76DDC8[128];
2828 extern int terrain_76DFC8[128];
2829 extern int terrain_76E1C8[128];
2830 extern int terrain_76E3C8[128];
2831 extern _UNKNOWN unk_801A00; // weak
2832 extern _UNKNOWN unk_801A0C; // weak
2833 extern char byte_80AA10; // weak
2834 extern int dword_80AA14; // weak
2835 extern int dword_80AA18; // weak
2836 extern int dword_80AA1C; // weak
2837 extern int dword_80AA20; // weak
2838 extern unsigned int uNumElementsIn80AA28;
2839 extern struct stru148 *ptr_80AA28[2000];
2840 extern struct Edge *pNewEdges;
2841 extern struct Surf *pSurfs;
2842 extern struct Edge *pEdges;
2843 extern struct Span *pSpans;
2844 extern struct Edge *ptr_80C978_Edges;
2845 extern struct Surf *ptr_80C97C_Surfs;
2846 extern struct Edge *ptr_80CA10[480];
2847 extern _UNKNOWN unk_80D190; // weak
2848 extern int dword_A74C88; // weak
2849 extern unsigned int uPlayerCreationUI_SkySliderPos;
2850 extern int uPlayerCreationUI_ArrowAnim;
2851 extern unsigned int uPlayerCreationUI_SelectedCharacter;
2852 extern int dword_A74CDC; // weak
2853 extern struct Texture *pTexture_PlayerFaceMask;
2854 extern struct Texture *pTexture_PlayerFaceEradicated;
2855 extern struct Texture *pTexture_PlayerFaceDead;
2856 extern int A74CEC_player_faces_minus1_indexing[]; // weak
2857 extern struct Texture *pTextures_PlayerFaces[4][56];
2858 extern int dword_A75070; // weak
2859 extern struct Player *pPlayers[5];
2860 extern __int64 qword_A750D8; // weak
2861 extern __int16 word_A750E0; // weak
2862 extern __int16 word_A750E2; // weak
2863 extern char *pClassNames[36];
2864 extern char *aCharacterConditionNames[19];
2865 extern char *pSkillNames[38];
2866 extern char byte_AE3368[]; // weak
2867 extern char byte_AE3369; // weak
2868 extern char byte_AE336A; // weak
2869 extern char byte_AE336B; // weak
2870 extern int dword_AE336C; // weak
2871 extern int dword_AE3370; // weak
2872 extern Vec3_float_ stru_AE4F64; // idb
2873 extern Vec3_float_ stru_AE4F70; // idb
2874 extern Vec3_float_ stru_AE4F7C; // idb
2875 extern int dword_AE4F88; // weak
2876 extern char byte_AE5B91; // weak
2877 extern std::string std__string_AE5B94; // idb
2878 extern int dword_F1B430[32]; // weak
2879 extern int dword_F8B144; // idb
2880 extern char byte_F8B148[16];
2881 extern __int16 word_F8B158[]; // weak
2882 extern struct Texture *dword_F8B164; // idb
2883 extern struct Texture *dword_F8B168[12];
2884 extern int dword_F8B198; // weak
2885 extern int dword_F8B19C; // weak
2886 extern __int16 word_F8B1A0; // weak
2887 extern char *dword_F8B1A4; // idb
2888 extern int dword_F8B1A8; // weak
2889 extern int dword_F8B1AC_something_todo_with_awards; // idb
2890 extern int dword_F8B1B0; // weak
2891 extern int dword_F8B1B4; // weak
2892 extern char *pShopOptions[4];
2893 extern _UNKNOWN unk_F8B1C8; // weak
2894 extern int dword_F8B1D8; // weak
2895 extern int dword_F8B1DC; // weak
2896 extern int dword_F8B1E0; // weak
2897 extern int dword_F8B1E4; // weak
2898 extern char *ptr_F8B1E8; // idb
2899 extern char byte_F8B1EC; // weak
2900 extern char byte_F8B1EF[]; // weak
2901 extern char byte_F8B1F0[4];
2902 extern int dword_F8B1F4; // weak
2903 extern _UNKNOWN unk_F8B1F8; // weak
2904 extern _UNKNOWN unk_F8B5E0; // weak
2905 extern struct FrameTableTxtLine stru_F8B5E8; // weak
2906 extern _UNKNOWN unk_F8B668; // weak
2907 extern _UNKNOWN unk_F8BA50; // weak
2908 extern char byte_F8BC0C; // weak
2909 extern int bGameoverLoop; // weak
2910 extern __int16 word_F8BC48_displaced_face_intersect_plane_coords_a; // idb
2911 extern __int16 word_F8BD18_displaced_face_intersect_plane_coords_b; // idb
2912 //extern _UNKNOWN unk_F8EA04; // weak
2913 //extern _UNKNOWN unk_F8F8F8; // weak
2914 extern int dword_F93F20; // weak
2915 extern int dword_F93F70; // weak
2916
2917 //extern int crt_F94004; // weak
2918 //extern int crtdword_F9400C; // weak
2919 extern FARPROC lpfn; // idb
2920 extern float flt_F942B0; // weak
2921 //extern int crt_F944EC; // weak
2922 //extern int crtdword_F944F0; // weak
2923 //extern void *crt_F944F4; // idb
2924 //extern int crtdword_F944F8; // weak
2925 //extern LPVOID crt_lpMem; // idb
2926 //extern int crt_F94500; // weak
2927 //extern HANDLE crt_hHeap; // idb
2928 //extern int crt_F94508; // weak
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943 //-------------------------------------------------------------------------
2944 // Function declarations
2945
2946 #define __thiscall __cdecl // Test compile in C mode
2947
2948 void __stdcall mm7__vector_constructor(void *a1, int objSize, int numObjs, int (__thiscall *constructor)(int));
2949 int __cdecl ODM_4014E6_AI();
2950 int __cdecl BLV_4016FA_AI();
2951 void __cdecl sub_401A91_AI();
2952 bool __fastcall sub_4070EF_prolly_collide_objects(unsigned int uObjID, unsigned int uObj2ID);
2953 bool __fastcall sub_4075DB(int a1, int a2, int a3, struct BLVFace *a4);
2954 bool __fastcall sub_4077F1(int a1, int a2, int a3, struct ODMFace *a4, struct BSPVertexBuffer *a5);
2955 bool __fastcall sub_407A1C(int x, int z, int y, struct Vec3_int_ v); // idb
2956 char __cdecl UpdateActors();
2957 char *__cdecl UpdateLayingItems();
2958 int __fastcall sub_4088E9(int a1, int a2, int a3, int a4, int a5, int a6);
2959 unsigned int __thiscall SearchAliveActors(unsigned int *pTotalActors);
2960 unsigned int __fastcall SearchActorByMonsterID(unsigned int *pTotalActors, int uMonsterID);
2961 unsigned int __fastcall SearchActorByGroup(unsigned int *pTotalActors, unsigned int uGroup);
2962 unsigned int __fastcall SearchActorByID(unsigned int *pTotalActors, unsigned int a2);
2963 // char __usercall am_408BB4<al>(int a1<ecx>, int a2<ebp>);
2964 void __cdecl sub_409BE8();
2965 void __cdecl PrepareArcomage();
2966 char __cdecl am_409FE9();
2967 char __cdecl am_40A198();
2968 int __fastcall am_40A255(int a1, int a2);
2969 int __fastcall am_40A283(int a1, int a2);
2970 signed int __fastcall am_40A324(int a1);
2971 int __fastcall am_40A346(int a1);
2972 void __cdecl am_40A383();
2973 bool __cdecl am_40A514();
2974 char __thiscall am_40A560(unsigned int _this);
2975 void __thiscall am_blts(int a1); // idb
2976 void __cdecl am_40AA4E();
2977 void __cdecl am_chroma_blts();
2978 void __cdecl am_DrawUI();
2979 void __fastcall am_40B102(int a1, char *a2, int *pXY); // idb
2980 void __fastcall am_40B17E(int a1, int a2, int *pXY); // idb
2981 void __fastcall am_40B1F3(int a1, int a2, int a3);
2982 void __fastcall am_40B268(int a1, char *a2, int *pXY); // idb
2983 void __cdecl am_chroma_and_copy_blts();
2984 void __cdecl am_chroma_blt();
2985 void __cdecl am_40B4B9();
2986 void __fastcall am_40B76F(int a1);
2987 int __fastcall am_40BB49(int a1);
2988 signed int __fastcall am_40BB67(int a1);
2989 char __fastcall am_40BCFB(int a1, signed int a2);
2990 bool __fastcall am_40BE0E(int a1, signed int a2);
2991 bool __fastcall am_40BF15(int a1, int a2);
2992 void __fastcall am_40BF77(int a1, unsigned int uCardID); // idb
2993 int __fastcall am_40D2B4(struct Vec2_int_ *, int); // weak
2994 int __fastcall am_40D402(int, int); // weak
2995 int __cdecl am_40D444();
2996 struct GUIWindow *__fastcall ModalWindow(const char *pStr, int a4);
2997 char __fastcall pGUIWindow0_draws_text(int a1, const char *pText, int *pXY);
2998 void __thiscall am_BeginScene(unsigned __int16 *pPcxPixels, int a2, int a3); // idb
2999 void __fastcall Blt_Chroma(struct ArcomageRect *pSrcXYZW, int *pTargetXY, int a3, int a4);
3000 void __fastcall Blt_Copy(struct ArcomageRect *pSrcXYZW, int *pTargetXY, int a3);
3001 void __cdecl am_EndScene();
3002 void __fastcall DrawRect(struct Vec4_int_ *pXYZW, unsigned __int16 uColor, char bSolidFill); // idb
3003 int __fastcall rand_interval(int a, int b); // idb
3004 char *__fastcall inv_strcat(const char *Source, char *Dest);
3005 char *__fastcall inv_strcpy(const char *Source, char *Dest);
3006 void __fastcall intToString(int val, char *pOut);
3007 // int __cdecl crt_retnull_sub();
3008 unsigned int __stdcall R8G8B8_to_TargetFormat(int uColor); // idb
3009 unsigned int __fastcall GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(unsigned __int16 r, unsigned __int16 g, unsigned __int16 b); // idb
3010 void __cdecl CallRenderPresent();
3011 void __thiscall DoBlt_Copy(unsigned __int16 *pPixels); // idb
3012 int __stdcall retzero_sub_40DFA7(int); // weak
3013 int loc_40E4FC(); // weak
3014 void __fastcall ZBuffer_Fill(int *pZBuffer, int uTextureId, int iZValue);
3015 __int16 __fastcall sub_40F845(int a1, int a2, int a3, int a4, int a5, __int16 a6, int a7);
3016 void __fastcall ZBuffer_DoFill(int *pZBuffer, Texture *pTex, int uZValue);
3017 void __fastcall sub_40F92A(int *pZBuffer, struct Texture *a2, int a3); // idb
3018 void __cdecl SetMoonPhaseNames();
3019 void __thiscall DrawSpellDescriptionPopup(void *_this);
3020 signed int __fastcall sub_410D99_get_map_index(int a1);
3021 unsigned int __cdecl DrawLloydBeaconsScreen();
3022 char *__cdecl DrawTownPortalScreen();
3023 struct Texture *__fastcall LoadSpellbook(unsigned int uID); // idb
3024 struct GUIWindow *__cdecl sub_41140B();
3025 void __cdecl sub_411473();
3026 void __cdecl OnCloseSpellook();
3027 void __cdecl InitializeBookTextures();
3028 void __cdecl InitializeBookFonts();
3029 void __fastcall LoadThumbnailLloydTexture(unsigned int uSlot, unsigned int uPlayer);
3030 void __cdecl sub_412AF9();
3031 void __cdecl sub_412B58();
3032 char __cdecl sub_412E85();
3033 void __cdecl DrawSpellbook_Quests();
3034 void __cdecl DrawSpellbook_Autonotes();
3035 char *__cdecl DrawSpellbook_Map();
3036 void __thiscall DrawSpellbook(unsigned int uBook); // idb
3037 char *__cdecl GetDayPart();
3038 char __cdecl DrawSpellbook_Calendar();
3039 void __cdecl SetAttributeNames();
3040 void __cdecl uGameUIFontMain_initialize();
3041 void __cdecl uGameUIFontShadow_initialize();
3042 void __cdecl sub_41420D_press_esc();
3043 void __cdecl sub_41426F();
3044 char __cdecl GameMenuUI_DrawKeyBindings();
3045 unsigned int __thiscall sub_414D24(int _this);
3046 void __cdecl GameMenuUI_DrawVideoOptions();
3047 void __cdecl sub_414F82_DrawGameOptions();
3048 void __fastcall DrawPopupWindow(unsigned int uX, unsigned int uY, unsigned int uWidth, unsigned int uHeight); // idb
3049 char *__cdecl DrawCopyrightWindow();
3050 void __cdecl GUI_UpdateWindows();
3051 void __cdecl identify_item();
3052 void __thiscall sub_416B01(void *_this);
3053 void __thiscall sub_416D62_ShowPopupWindow_MonsterRecord_ItemInfo_etcsub_416D62(struct Vec2_int_ *_this);
3054 void __thiscall UI_OnMouseLeftClick(int *pXY); // idb
3055 void __thiscall sub_417871(int *pXY);
3056 void __cdecl sub_4178C4();
3057 void __cdecl sub_4178E1();
3058 unsigned int __fastcall sub_4178FE(signed int a1, signed int a2);
3059 signed int __thiscall GetConditionDrawColor(unsigned int uConditionIdx); // idb
3060 char __fastcall sub_4179BC_draw_tooltip(const char *a1, const char *a2); // idb
3061 unsigned int __fastcall sub_417AD4(unsigned int uPlayerClass, enum PLAYER_SKILL_TYPE uPlayerSkillType, signed int a3);
3062 const char *__fastcall CharacterUI_GetSkillDescText(unsigned int uPlayerID, enum PLAYER_SKILL_TYPE uPlayerSkillType);
3063 char __cdecl CharacterUI_SkillsTab_ShowHint();
3064 char __cdecl CharacterUI_StatsTab_ShowHint();
3065 char __fastcall CharacterUI_StatsTab_Draw(unsigned int uPlayerID); // idb
3066 int __cdecl sub_419100();
3067 void __cdecl sub_419220();
3068 void __cdecl sub_419379();
3069 void __cdecl sub_419401();
3070 void __cdecl sub_4196A0();
3071 char __fastcall CharacterUI_SkillsTab_Draw(unsigned int uPlayerID); // idb
3072 unsigned int __fastcall CharacterUI_AwardsTab_Draw(unsigned int uPlayerID); // idb
3073 unsigned int __fastcall GetSizeInInventorySlots(unsigned int uNumPixels);
3074 void __fastcall CharacterUI_InventoryTab_Draw(unsigned int uPlayerID, char a2);
3075 void __cdecl draw_leather();
3076 char __cdecl QuickRefDraw();
3077 void __thiscall CharacterUI_CharacterScreen_Draw(unsigned int uPlayerIdx); // idb
3078 void __cdecl GameUI_DrawRightPanelItems();
3079 void __cdecl GameUI_DrawFoodAndGold();
3080 void __cdecl GameUI_DrawLifeManaBars();
3081 void __cdecl draw_right_panel();
3082 void __cdecl GameUI_DrawRightPanelFrames();
3083 struct GUIButton *__fastcall GUI_HandleHotkey(unsigned __int8 uHotkey); // idb
3084 int __fastcall GUI_ReplaceHotkey(unsigned __int8 uOldHotkey, unsigned __int8 uNewHotkey, char bFirstCall);
3085 void __cdecl MainMenuUI_LoadFontsAndSomeStuff();
3086 void __cdecl MainMenuUI_Create();
3087 void __cdecl GameUI_DrawStatusBar_2();
3088 void __thiscall sub_41C0B8_set_status_string(const char *pStr); // idb
3089 void __cdecl GameUI_DrawStatusBar();
3090 bool __thiscall sub_41CD4F(unsigned int _this);
3091 char __fastcall sub_41D20D_buff_remaining_time_string(int ecx0, struct GUIWindow *edx0, __int64 a3, struct GUIFont *a2);
3092 void __thiscall GameUI_DrawItemInfo(struct ItemGen *_this); // idb
3093 char *__fastcall MonsterPopup_Draw(unsigned int uActorID, struct GUIWindow *edx0);
3094 void __cdecl nullsub_3(); // idb
3095 void __cdecl LoadActualSkyFrame();
3096 void __cdecl Sleep6Hours();
3097 void __cdecl RestUI_Initialize();
3098 void __cdecl RestUI_Draw(); // idb
3099 void __cdecl sub_42038D();
3100 void __fastcall sub_420B13(int a1, int a2);
3101 void __fastcall party_finds_gold(unsigned int uNumGold, int _1_dont_share_with_followers___2_the_same_but_without_a_message__else_normal); // idb
3102 void __cdecl sub_420E01();
3103 void __cdecl GameUI_WritePointedObjectStatusString();
3104 struct GUIWindow *__thiscall GameUI_InitializeCharacterWindow(unsigned int _this);
3105 struct GUIWindow *__thiscall sub_4219BE(void *a4);
3106 bool __cdecl sub_421B2C_PlaceInInventory_or_DropPickedItem();
3107 void __fastcall GameUI_OnPlayerPortraitLeftClick(unsigned int uPlayerID); // idb
3108 void __cdecl sub_421EA6_OnInventoryLeftClick();
3109 void __cdecl OnGameViewportClick();
3110 bool __cdecl sub_4226C2();
3111 void __fastcall SetUserInterface(int a1, bool bReplace);
3112 void __cdecl reset_some_strus_flt_2Cs();
3113 void __cdecl j_sub_423B4A();
3114 void __cdecl sub_423B4A();
3115 int __fastcall sub_423B5D(unsigned int uFaceID);
3116 signed int __fastcall sub_424579(int uFaceID, struct stru320 *a2);
3117 bool __fastcall sub_424829(int a1, struct stru170_stru2 *a2, struct stru170_stru2 *a3, int a4);
3118 signed int __fastcall sr_424CD7(unsigned int uVertexID); // idb
3119 signed int __fastcall sr_424EE0_MakeFanFromTriangle(unsigned int uVertexID); // idb
3120 signed int __fastcall sr_4250FE(unsigned int uVertexID); // idb
3121 signed int __fastcall sr_4252E8(unsigned int uVertexID);
3122 int __fastcall sr_4254D2(signed int a1);
3123 bool __thiscall sr_42620A(struct RenderVertexSoft *p);
3124 int __fastcall _4268E3_smthn_to_a1r5g5b5(unsigned int uColor); // idb
3125 int __fastcall _42690D_colors_cvt(unsigned int a1);
3126 void __cdecl sub_426947();
3127 int __fastcall sub_4269A2_GivePartyExp(unsigned int a1);
3128 bool __fastcall sub_427769_spell(unsigned int uSpellID);
3129 bool __fastcall _42777D_CastSpell_UseWand_ShootArrow(int a1, unsigned int uPlayerID, unsigned int a4, __int16 a5, int a6);
3130 int __fastcall sub_42EBBE(int, int); // weak
3131 bool __cdecl _42ECB5_PlayerAttacksActor();
3132 void __thiscall InitializeTurnBasedAnimations(void *);
3133 signed int __cdecl sub_42F4DA();
3134 bool __fastcall sub_42F7EB_DropItemAt(unsigned int uSpriteID, int x, int y, int z, int a4, int count, int a7, unsigned __int16 attributes, ItemGen *a9);
3135 void __fastcall sub_42F960_create_object(int x, int y, int z); // idb
3136 char *__cdecl sub_42FA22_mess_with_laying_item_list();
3137 signed int __fastcall _42FA66_do_explosive_impact(int a1, int a2, int a3, int a4, __int16 a5, signed int a6);
3138 bool __fastcall sub_42FB5C(signed int a1);
3139 // int __cdecl crt_sub_42FBB7();
3140 // void __cdecl crt_construct_50CDB4();
3141 void __cdecl sub_42FBDD();
3142 void __cdecl sub_42FC15();
3143 void __cdecl ProcessInputActions();
3144 void __cdecl GameUI_MsgProc();
3145 void __cdecl back_to_game();
3146 void __cdecl GUI_MainMenuMessageProc();
3147 double __cdecl get_shading_dist_mist();
3148 double __cdecl GetPickDepth();
3149 void __thiscall Vec3_short__to_RenderVertexSoft(struct RenderVertexSoft *_this, struct Vec3_short_ *a2);
3150 void __cdecl nullsub_4(); // idb
3151 void __cdecl nullsub_5(); // idb
3152 void __cdecl nullsub_6(); // idb
3153 __int16 __thiscall sub_4382BC(int _this);
3154 int __cdecl sub_4383ED();
3155 __int16 __cdecl sub_43847A();
3156 void __cdecl _438F8F_area_of_effect__damage_evaluate();
3157 void __fastcall DamagePlayerFromMonster(unsigned int uObjID, int a2, struct Vec3_int_ *pPos, unsigned int a4);
3158 void __fastcall sub_43A97E(unsigned int uLayingItemID, signed int a2); // idb
3159 double __fastcall sub_43AE12(signed int a1);
3160 int __fastcall _43AFE3_calc_spell_damage(int a1, int a2, signed int a3, int a4);
3161 void __fastcall sub_43B057(unsigned int uObjID, unsigned int uActorID, struct Vec3_int_ *pVelocity);
3162 __int16 __fastcall sub_43B1B0(signed int a1, unsigned int a2, struct Vec3_int_ *pVelocity, signed int a4);
3163 int __stdcall DirectInputKeyboard_enumerator_43B9B9(int, int); // weak
3164 void Software_ResetNewEdges();
3165 // int __cdecl crt_deconstruct_43B9E3();
3166 int __stdcall DirectInputMouse_enumerator(int, int); // weak
3167 int __cdecl CharacterUI_LoadPaperdollTextures();
3168 int __fastcall _43C91D_FormItemTextureFilename(char *a1, signed int a2, int a3, int a4);
3169 void __fastcall CharacterUI_DrawPaperdoll(unsigned int uPlayerID); // idb
3170 void __fastcall CharacterUI_DrawPaperdollWithRingOverlay(unsigned int uPlayerID); // idb
3171 bool __thiscall sub_43ED6F_get_some_race_sex_relation(unsigned int a1);
3172 bool __thiscall sub_43EDB9_get_some_race_sex_relation_2(unsigned int _this);
3173 bool __fastcall sub_43EE15_player_has_item(unsigned int uItemID, struct Player *pPlayer, char a3);
3174 bool __fastcall sub_43EE77_ProbablyIfUnderwaterSuitIsEquipped(signed int a1);
3175 void __fastcall WetsuitOn(unsigned int uPlayerID); // idb
3176 unsigned int __fastcall WetsuitOff(unsigned int uPlayerID);
3177 void __fastcall sub_43F39E(struct IndoorLocation_drawstru *_this);
3178 int /*__usercall*/ sr_sub_4D6FB0/*<eax>*/(struct stru315 *a1/*<ebp>*/);
3179 int /*__usercall*/ sr_sub_4D705A/*<eax>*/(struct stru315 *a1/*<ebp>*/);
3180 void __cdecl MessWithBillboards_BLV();
3181 signed int __fastcall sub_43F55F(struct RenderBillboard *a1, signed int a2);
3182 signed int __fastcall sub_43F5C8(signed int a1, int a2, float a3, float a4, float a5);
3183 int __cdecl PrepareWallsRenderList_BLV();
3184 void __fastcall PrepareDecorationsRenderList_BLV(unsigned int uDecorationID, unsigned int uSectorID);
3185 unsigned int __cdecl PrepareActorRenderList_BLV();
3186 void __cdecl PrepareItemsRenderList_BLV();
3187 void __fastcall sub_440639(int a1);
3188 void __fastcall sub_4406BC(int a1, unsigned int uFirstNode); // idb
3189 void __fastcall sub_440BED(struct IndoorLocation_drawstru *_this);
3190 bool __cdecl sub_44100D();
3191 void __cdecl GameUI_DrawTorchlightAndWizardEye();
3192 void __cdecl GameUI_DrawCharacterSelectionFrame();
3193 void __cdecl Load_isn_spells_21_27();
3194 void __cdecl GameUI_DrawPartySpells();
3195 __int16 __fastcall sub_441A4E(int a1);
3196 void __fastcall GameUI_DrawMinimap(unsigned int uX, unsigned int uY, unsigned int uZ, unsigned int uW, unsigned int uZoom, unsigned int flags);
3197 int __fastcall DrawSpellbook_Map_sub(unsigned int x, unsigned int y, unsigned int a4, int a5, int _48074); // idb
3198 int __cdecl Initialize2DA();
3199 unsigned int __fastcall LoadEventsToBuffer(const char *pContainerName, char *a2, unsigned int uBufferSize);
3200 void __cdecl Initialize_GlobalEVT();
3201 void __cdecl LoadLevel_InitializeLevelStr();
3202 void __cdecl LoadLevel_InitializeLevelEvt();
3203 void __cdecl OnMapLeave();
3204 void /*__usercall*/ OnMapLoad();
3205 void __thiscall Level_LoadEvtAndStr(const char *pLevelName);
3206 char *__cdecl _4443D5_GetMinimapRightClickText();
3207 const char *__cdecl sub_444564();
3208 char *__thiscall _444732_GetEventHintString(unsigned int uEventID); // idb
3209 unsigned int __fastcall sub_444839_move_map(unsigned int a1, int a2, int x, int y, int z, int directiony, int directionx, int a8, const char *pLocationName); // idb
3210 char *__cdecl TransitionUI_Draw();
3211 struct GUIWindow *__cdecl UI_CreateTravelDialogue();
3212 signed int __cdecl GetTravelTime();
3213 void __cdecl TravelUI_Draw();
3214 void __cdecl DrawBranchlessDialogueUI();
3215 void __fastcall sub_4451A8_press_any_key(int a1, int a2, int a4);
3216 void __cdecl sub_4452BB();
3217 int __fastcall sub_445308(int a1);
3218 void __cdecl DrawDialogueUI();
3219 struct NPCData *__fastcall GetNPCData(unsigned int npcid);
3220 struct NPCData *__fastcall GetNewNPCData(signed int npcid, int a2);
3221 int __fastcall sub_445C8B(signed int a1);
3222 void __cdecl sub_44603D();
3223 int __fastcall PrepareHouse(unsigned int uHouseID); // idb
3224 bool __fastcall EnterHouse(enum HOUSE_TYPE uHouseID);
3225 signed int __thiscall sub_4465DF_check_season(void *_this);
3226 int __fastcall IsActorAlive(unsigned int uType, unsigned int uParam, unsigned int uNumAlive); // idb
3227 // void __cdecl crt_construct_5773C4();
3228 bool __thiscall sub_4466C4(void *_this);
3229 void __fastcall EventProcessor(int a1, int a2, int a3);
3230 void __fastcall sub_448518_npc_set_item(int npc, unsigned int item, int a3);
3231 void __fastcall sub_44861E_set_texture(unsigned int uFaceCog, const char *pFilename);
3232 void __fastcall SetDecorationSprite(unsigned int uCog, int a2, const char *pFileName); // idb
3233 void __fastcall sub_44892E_set_faces_bit(int sCogNumber, int bit, int on);
3234 void __fastcall ToggleActorGroupFlag(unsigned int uGroupID, unsigned int uFlag, unsigned int bToggle);
3235 void __thiscall GameUI_StatusBar_UpdateTimedString(unsigned int bForceHide); // idb
3236 void __thiscall OnTimer(int a1);
3237 void __fastcall sub_448CF4_spawn_monsters(__int16 typeindex, __int16 level, int count, int x, int y, int z, int group, unsigned int uUniqueName);
3238 void __fastcall sub_448DF8_cast_spell(int spellnum, int rank, int level, int fromx, int fromy, int fromz, int tox, int toy, int toz);
3239 char *__fastcall sub_44987B(const char *pMapName, unsigned int uStartingPointType); // idb
3240 void __thiscall TeleportToStartingPoint(unsigned int uPointType); // idb
3241 __int16 __fastcall sub_449A49_door_switch_animation(unsigned int uDoorID, int a2); // idb
3242 unsigned int __fastcall _449B57_test_bit(unsigned __int8 *a1, __int16 a2);
3243 char *__fastcall _449B7E_toggle_bit(char *pArray, __int16 a2, unsigned __int16 bToggle); // idb
3244 void __cdecl sub_44A56A();
3245 void __fastcall ShowStatusBarString(const char *pString, unsigned int uNumSeconds);
3246 void __cdecl ShowNothingHereStatus();
3247 signed int __cdecl const_2();
3248 bool __cdecl sub_44C28F_open_nwc_dungeon();
3249 // int __cdecl crt_deconstruct_44C42C();
3250 struct GUIFont *LoadFont(const char *pFontFile, const char *pFontPalette, ...);
3251 char *__fastcall FitTextInAWindow(const char *pInString, GUIFont *pFont, GUIWindow *pWindow, unsigned int uX, int a5);
3252 void *__fastcall SpawnEncounter(struct MapInfo *pMapInfo, struct SpawnPointMM7 *a2, int a3, int a4, int a5);
3253 int __fastcall sub_44FA4C_spawn_light_elemental(int a1, int a2, int a3);
3254 void __cdecl sub_450218_prolly_generate_chests_loot();
3255 signed int __fastcall sub_450521_ProllyDropItemAt(int ecx0, signed int a2, int a3, int a4, int a5, unsigned __int16 a6);
3256 int __fastcall sub_45063B(struct MapInfo *a1, int a2);
3257 void *__cdecl RespawnGlobalDecorations();
3258 bool __fastcall SpawnActor(unsigned int uMonsterID);
3259 int __cdecl GetAlertStatus();
3260 unsigned int __fastcall sub_452442(unsigned __int16 a1, unsigned __int16 a2, int a3, int a4);
3261 signed int __fastcall sub_452A9E(signed int a1);
3262 int __fastcall MakeColorMaskFromBitDepth(int a1);
3263 void __fastcall fill_pixels_fast(unsigned int a1, unsigned __int16 *pPixels, unsigned int uNumPixels);
3264 int __fastcall GetDiceResult(unsigned int uNumDice, unsigned int uDiceSides); // idb
3265 inline void __fastcall memset32(void *ptr, unsigned __int32 value, int count)
3266 {
3267 auto p = (unsigned __int32 *)ptr;
3268 for ( int i=0; i < count; i++ )
3269 *p++ = value;
3270 }
3271 inline void __fastcall j_memset32(int a2, void *a1, unsigned int a3) {memset32(a1, a2, a3);}
3272 // int __cdecl crt_452B74();
3273 int __cdecl j_SetSomeItemsNames();
3274 void __cdecl SetSomeItemsNames();
3275 char *RemoveQuotes(char *Str);
3276 void __cdecl InitializeGameText();
3277 unsigned int __fastcall ParseSpellType(struct FrameTableTxtLine *, int a2);
3278 int __thiscall ParseAttackType(unsigned __int8 *_this);
3279 char __fastcall ParseDamage(const char *Str, int a2, int a3, int a4);
3280 int __fastcall ParseMissleAttackType(const char *Str1);
3281 unsigned int __fastcall SkillToMastery(unsigned __int16 a1);
3282 unsigned int __fastcall GetSpellColor(signed int a1);
3283 int __thiscall sub_45BAA5(int _this);
3284 std::string *__fastcall sub_45BAB6(int a1);
3285 // void __cdecl crt_45BAE9(); idb
3286 void *__thiscall unknown_vdtor_6(void *_this, bool a2);
3287 unsigned __int16 *__fastcall MakeScreenshot(signed int width, signed int height);
3288 void __thiscall SaveScreenshot(const char *pFilename);
3289 void __fastcall GameUI_DrawLoadMenu(unsigned int uDialogueType); // idb
3290 void __cdecl GameUI_DrawSaveMenu();
3291 void __fastcall LoadGame(unsigned int uSlot); // idb
3292 int __fastcall SaveGame(int a1, __int16 *a2);
3293 void __fastcall DoSavegame(unsigned int uSlot); // idb
3294 void __fastcall sub_4601B7(int a1);
3295 void __cdecl sub_4606F7();
3296 void __cdecl sub_4606FE();
3297 void __cdecl TryLoadLevelFromLOD();
3298 void __cdecl sub_46080D();
3299 bool __cdecl Initialize_GamesLOD_NewLOD();
3300 int __cdecl MaybeDoAutosave();
3301 void __thiscall PrepareToLoadBLV(unsigned int bLoading);
3302 void __fastcall PrepareToLoadODM(unsigned int bLoading, struct OutdoorCamera *a2);
3303 void __cdecl sub_461103();
3304 int __cdecl sub_4613C4();
3305 int __fastcall sub_4621DA(signed int a1, signed int a2, signed int a3);
3306 int __cdecl sub_46224A();
3307 int __cdecl crt_init_globals_462620();
3308 void __cdecl crt_init_globals_462659();
3309 void __cdecl crt_init_globals_46269B();
3310 void __cdecl crt_init_globals_46271C();
3311 void __cdecl MainMenu_Loop();
3312 char __cdecl sub_4637E0_is_there_popup_onscreen();
3313 void __cdecl ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows();
3314 void __thiscall PrepareWorld(unsigned int _this);
3315 void __thiscall Game_DeinitializeAndTerminate(int exitCode); // idb
3316 void __cdecl FinalInitialization();
3317 char __cdecl Is_out15odm_underwater();
3318 void __cdecl SetUnderwaterFog();
3319 void __fastcall DoPrepareWorld(unsigned int bLoading, int a2);
3320 int __fastcall ReadWindowsRegistryInt(const char *pKey, int uDefValue); // idb
3321 void __fastcall WriteWindowsRegistryString(const char *pKey, const char *pString);
3322 void __fastcall ReadWindowsRegistryString(const char *pKeyName, char *pOutString, int uBufLen, const char *pDefaultValue);
3323 void __fastcall WriteWindowsRegistryInt(const char *pKey, int val);
3324 bool __fastcall CheckMM7CD(char c);
3325 int loc_465CC8(); // weak
3326 void __cdecl SecondaryInitialization();
3327 void __cdecl CreateAsyncMouse();
3328 void __cdecl CreateAsyncKeyboard();
3329 void __cdecl MM6_Initialize(const wchar_t *pIniFilename);
3330 void __cdecl MM7Initialization();
3331 int __cdecl AbortWithError();
3332 void Abortf(const char *Format, ...);
3333 void __cdecl crt_deconstruct_ptr_6A0118();
3334 void __thiscall SetCurrentMenuID(unsigned int uMenu); // idb
3335 unsigned int __cdecl GetCurrentMenuID();
3336 void *__thiscall output_debug_string(void *_this, std::string a2, const char *a3, int a4);
3337 std::string *__fastcall _4678E2_make_error_string(std::string *a1, int line, std::string file);
3338 int __thiscall sub_467D5D(int _this);
3339 void __thiscall sub_467E7F_EquipBody(unsigned int uEquipType); // idb
3340 void __fastcall sub_467F48(signed int a1);
3341 void __cdecl free_book_subwindow();
3342 char __cdecl sub_467FB6();
3343 void __cdecl OnPaperdollLeftClick();
3344 int __thiscall UnprojectX(int x);
3345 int __thiscall UnprojectY(int _this);
3346 char __cdecl OnPressSpace();
3347 char __fastcall DoInteractionWithTopmostZObject(int a1, int a2);
3348 int __fastcall sub_46A6AC(int a1, int a2, int a3);
3349 int __fastcall sub_46A7C8(int a1, int a2, signed int a3);
3350 int __fastcall sub_46A89E(int a1, int a2, signed int a3);
3351 int __cdecl sub_46A99B();
3352 // int __thiscall crt_construct_46AC48_ptr_720990(int this);
3353 std::string *__fastcall crt_intit_global_46AC59(int a1);
3354 void *__thiscall unknown_libname_8(void *_this, char a2);
3355 // void __cdecl crt_init_globals_46BD9F();
3356 unsigned int __cdecl GetGravityStrength();
3357 void __cdecl sub_46BDC0_UpdateUserInput_and_MapSpecificStuff();
3358 void __cdecl BLV_UpdateUserInputAndOther();
3359 void __cdecl ODM_UpdateUserInputAndOther();
3360 bool __fastcall _46BFFA_check_object_intercept(unsigned int uLayingItemID, signed int a2);
3361 void __cdecl _46CC4B_check_event_triggers();
3362 int __fastcall _46CEC3_get_floor_level(signed int a1, signed int a2, int a3, unsigned int uSectorID, int *a5);
3363 int __fastcall sub_46D49E_prolly_get_world_y_under_party(int a1, signed int a2, int a3, int a4, int *a5, int *a6, int a7);
3364 int __fastcall sub_46D8E3(int a1, signed int a2, int a3, int a4);
3365 signed __int64 __fastcall _46DCC8_get_gravity_direction_outdoor(int a1, int a2, Vec3_int_ *a3);
3366 unsigned int __fastcall sub_46DEF2(signed int a2, unsigned int uLayingItemID);
3367 int __fastcall _46DF1A_collide_against_actor(int, int); // weak
3368 void __cdecl _46E0B2_collide_against_decorations();
3369 void __fastcall _46E26D_collide_against_sprites(signed int a1, signed int a2);
3370 int __thiscall _46E44E_collide_against_faces_and_portals(unsigned int b1); // idb
3371 int __fastcall _46E889_collide_against_bmodels(unsigned int ecx0);
3372 int __fastcall _46ED1B_collide_against_floor(signed int a1, signed int a2, int a3, unsigned int *pSectorID, int *a5); // idb
3373 void __fastcall _46ED8A_collide_against_layingItems(unsigned int _this);
3374 int __thiscall _46EF01_collision_chech_player(int a1); // idb
3375 signed int __cdecl _46F04E_collide_against_portals();
3376 void __cdecl BLV_UpdateDoors();
3377 void __cdecl UpdateActors_BLV();
3378 void __cdecl UpdateActors_ODM();
3379 void __cdecl UpdateObjects();
3380 int __fastcall _47272C_collide_agains_some_secotors_floors(int x, int y, int z, unsigned int *pSectorID, int *a5); // idb
3381 void __cdecl BLV_ProcessPartyActions();
3382 void __cdecl ODM_ProcessPartyActions();
3383 bool __fastcall sub_47531C(int a1, int *a2, int a3, int a4, int a5, int a6, int a7, int a8, BLVFace *a9, int a10);
3384 bool __fastcall sub_4754BF(int a1, int *a2, int a3, int a4, int a5, int a6, int a7, int a8, BLVFace *a9, int a10, int a11);
3385 signed int __thiscall sub_475665(BLVFace *_this, int a2, __int16 a3);
3386 bool __fastcall sub_4759C9(BLVFace *a1, int a2, int a3, __int16 a4);
3387 bool __fastcall sub_475D85(Vec3_int_ *a1, Vec3_int_ *a2, int *a3, BLVFace *a4);
3388 bool __fastcall sub_475F30(int *a1, BLVFace *a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9);
3389 bool __cdecl sub_476387();
3390 bool __thiscall CheckHiredNPCSpeciality(unsigned int uProfession);
3391 void __cdecl InitializeAwards();
3392 void __cdecl InitializeScrolls();
3393 void __cdecl InitializeMerchants();
3394 void __cdecl InitializeTransitions();
3395 void __cdecl InitializeAutonotes();
3396 void __cdecl InitializeQuests();
3397 int __stdcall const_1(int); // weak
3398 int __cdecl GetPartyReputation();
3399 void __cdecl sub_4783FA_construct_global_73D150();
3400 void __cdecl loc_4789D4(); // idb
3401 void __cdecl loc_47907F(); // idb
3402 bool __fastcall IsBModelVisible(unsigned int uModelID, int *unused);
3403 void __fastcall sub_479A53(unsigned int uNumVertices, unsigned int uFaceID); // idb
3404 void __thiscall ODM_LoadAndInitialize(const char *pLevelFilename, struct OutdoorCamera *thisa);
3405 unsigned __int16 *__fastcall GetBillboardPalette(struct RenderBillboard *a1, int a2, signed int a3, int a4);
3406 int __fastcall sr_sub_47BEB1(signed int a1, stru148 *a2, int terrain_gamma, int a4, int *a5, int *a6, int a7, int a8);
3407 void *__fastcall sr_sub_47C178(signed int a1, stru148 *a2, int terrain_gamma, int a4);
3408 void *__fastcall sr_sub_47C1CA(stru148 *a1, char a2, int a3, signed int a4);
3409 unsigned __int16 *__fastcall sr_sub_47C24C_get_palette(BLVFace *a1, int a2, int a3, char a4);
3410 char *__fastcall sr_sub_47C28C_get_palette(stru148 *a1, char a2, signed int a3, signed int a4);
3411 unsigned int __cdecl GetLevelFogColor();
3412 int __fastcall sub_47C3D7_get_fog_related_stuff(int a1, int a2, float a3);
3413 signed int __fastcall GetActorTintColor(int a1, int a2, float a3, int a4, struct RenderBillboard *a5);
3414 int __stdcall WorldPosToGridCellX(int); // weak
3415 int __stdcall WorldPosToGridCellZ(int); // weak
3416 int __stdcall GridCellToWorldPosX(int); // weak
3417 int __stdcall GridCellToWorldPosZ(int); // weak
3418 void __fastcall sub_47F4D3(int band1, int band2, int band3);
3419 void __cdecl loc_481185(); // idb
3420 void __cdecl loc_48118F(); // idb
3421 void __cdecl loc_481199(); // idb
3422 char __fastcall sr_sub_481DB2(RenderVertexSoft *a1, signed int a2, stru148 *a3);
3423 void __cdecl ResetStru148s();
3424 void __cdecl sub_481ED9_MessWithOutdoorCamera();
3425 bool __fastcall sub_481EFA(RenderVertexSoft *a1, RenderVertexSoft *a2, RenderVertexSoft *a3, RenderVertexSoft *a4, int a5);
3426 signed int __fastcall sub_481FC9(RenderVertexSoft *_ECX, RenderVertexSoft *a2, RenderVertexSoft *a3, stru148 *a4);
3427 bool __fastcall GetTerrainHeightsAroundParty(int a1, int a2);
3428 int __fastcall GetTerrainHeightsAroundParty2(int a1, int a2, int *a3, int a4);
3429 struct stru148 *__fastcall sr_sub_4829B9(RenderVertexSoft *a1, RenderVertexSoft *a2, RenderVertexSoft *a3, stru148 *a4, int a5);
3430 signed int __cdecl const_1_0();
3431 signed int __thiscall sr_sub_482A94(struct Span *_this);
3432 signed int __fastcall sr_sub_482E07(struct Span *a1, unsigned __int16 *pRenderTarget); // idb
3433 signed int __fastcall sr_sub_4839BD(struct Span *a1, unsigned __int16 *pTargetSurface); // idb
3434 signed int __thiscall sr_sub_48408A_prolly_odm_water_no_waves(struct Span *_this);
3435 signed int __thiscall sr_sub_484442(struct Span *_this);
3436 signed int __thiscall sr_sub_4847EB(struct Span *_this);
3437 signed int __fastcall sr_sub_485407_prolly_odm_water_wavy(struct Span *a1);
3438 signed int __fastcall sr_sub_48585C_mb_DrawSpan(struct Span *a1, unsigned __int16 *pRenderTarget, int a3); // idb
3439 struct stru315 *__fastcall sr_sub_485975(struct stru315 *a1, struct stru315 *a2);
3440 struct stru315 *__fastcall sr_sub_485A24(struct stru315 *a1, struct stru315 *a2);
3441 struct stru315 *__fastcall sr_sub_485AFF(struct stru315 *a1, struct stru316 *a2);
3442 struct stru315 *__fastcall sr_sub_485BAE(struct stru315 *a1, struct stru316 *a2);
3443 struct stru315 *__fastcall sr_sub_485C89(struct stru315 *a1, struct stru316 *a2);
3444 struct stru315 *__fastcall sr_sub_485D3E(struct stru315 *a1, struct stru316 *a2);
3445 void *__fastcall sr_sub_485E1F(struct stru316 *a1, Span *a2, int a3, struct stru148 *a4, int a5, unsigned __int8 a6, char a7);
3446 void __thiscall sub_485F53(struct Vec2_int_ *v); // idb
3447 char __fastcall sr_sub_486B4E_push_outdoor_edges(struct RenderVertexSoft *a1, int *a2, int *a3, stru148 *a4);
3448 void __cdecl sr_sub_486F92_MessWithEdgesAndSpans();
3449 void __cdecl sub_487DA9();
3450 double __thiscall GetFogDensityByTime(struct OutdoorLocation *_this);
3451 int __stdcall loc_489BB3(struct stru320 *a2, int thisa, unsigned int uNumVertices, RenderVertexSoft *a5, float a6, char uClipFlag); // weak
3452 bool __fastcall HSV2RGB(float *a1, float *a2, float *a3, float a4, float a5, float a6);
3453 void __fastcall RGB2HSV(float *a1, float *a2, float a3, float a4, float a5, float *a6);
3454 unsigned int __thiscall sub_48A959(int _this, float a2, float a3, float a4);
3455 int _48B561_mess_with_scaling_along_z(/*int a1, */float a2);
3456 signed int __cdecl sub_4908DE();
3457 signed int __cdecl PlayerCreation_ComputeAttributeBonus();
3458 void __cdecl LoadPlayerPortraintsAndVoices();
3459 int __fastcall ReloadPlayerPortraits(int, int); // weak
3460 void __cdecl sub_491E3A();
3461 void __cdecl DrawHiredNPCs();
3462 void __thiscall GameUI_DrawPortraits(unsigned int _this);
3463 signed int __thiscall CycleCharacter(unsigned int _this);
3464 void __fastcall Rest(unsigned int uHoursToSleep);
3465 int __cdecl _493938_regenerate();
3466 int __thiscall sub_493F79(struct stru351 *_this, __int64 a2);
3467 void __cdecl _494035_timed_effects__water_walking_damage__etc();
3468 unsigned int __fastcall sub_494820(unsigned int a1);
3469 char *__fastcall sub_495366(unsigned __int8 a1, unsigned __int8 a2);
3470 char *__fastcall GetReputationString(signed int a1);
3471 char *__fastcall sub_495461(char *lpsz, unsigned __int8 uPlayerID, struct ItemGen *a3, char *a4, int a5, __int64 *a6);
3472 void __cdecl PlayerCreationUI_Draw();
3473 void __cdecl PlayerCreationUI_Initialize();
3474 void __cdecl DeleteCCharFont();
3475 bool __cdecl PlayerCreationUI_Loop();
3476 void __cdecl loc_49B785(); // idb
3477 unsigned int __fastcall GetMaxMipLevels(unsigned int uDim);
3478 bool __cdecl CheckTextureStages();
3479 bool __cdecl AreRenderSurfacesOk();
3480 int __fastcall sub_4A19D8(unsigned int, unsigned int); // weak
3481 void __cdecl DoRenderBillboards_D3D();
3482 void __fastcall SetBillboardBlendOptions(signed int a1);
3483 int __fastcall sub_4A46E6(unsigned int x, signed int y, signed int a3, int a4, unsigned int a5);
3484 void __cdecl Present_ColorKey();
3485 void __cdecl Present_NoColorKey();
3486 int __thiscall sub_4A7063(unsigned int uDiffuse, float a2); // idb
3487 struct SoundHeader *__fastcall FindSound_BinSearch(unsigned int uStart, unsigned int uEnd, const char *pName);
3488 unsigned int *__fastcall LoadSound(const char *pSoundName, char *pOutBuff, unsigned int uID);
3489 int __fastcall sub_4AAEA6_transform(RenderVertexSoft *a1);
3490 int __fastcall sub_4AB66C(int, int); // weak
3491 int __fastcall GetSoundStrengthByDistanceFromParty(int a1, int a2, int a3);
3492 struct _DIG_DRIVER *Audio_GetFirstHardwareDigitalDriver(void);
3493 void __cdecl PlayLevelMusic();
3494 int __thiscall sub_4AC1C9(unsigned int _this, Vec4_int_ *a2);
3495 struct Vec4_int_ *__thiscall sub_4AC277(unsigned int _this, Vec4_int_ *a2);
3496 struct Vec4_int_ *__thiscall sub_4AC33A_get_cpu_clocks_QPC(int _this, Vec4_int_ *a1);
3497 struct Vec4_int_ *__thiscall sub_4AC4FD_get_cpu_clocks_rdtsc(int _this, Vec4_int_ *a1);
3498 int __fastcall sub_4AD504(unsigned int uFaceID);
3499 void __fastcall sub_4ADD1D(int uFaceID);
3500 int __fastcall sub_4AE1E7(int a1, int a2, int a3);
3501 int __fastcall sub_4AE313(int viewport_space_x, int viewport_space_y, struct stru337_stru0 *p);
3502 int __fastcall sub_4AE491(int, int); // weak
3503 void __fastcall sub_4AE5F1(unsigned int uFaceID); // idb
3504 int __cdecl sub_4AF412();
3505 void __cdecl stru170_sub_4B0967();
3506 void __cdecl loc_4B0DFB(); // idb
3507 void __cdecl nullsub_18(); // idb
3508 void __cdecl nullsub_19(); // idb
3509 unsigned int __fastcall sub_4B0E07(unsigned int uFaceID); // idb
3510 void __cdecl nullsub_20(); // idb
3511 void __cdecl nullsub_21(); // idb
3512 struct Player *__fastcall sub_4B1447_party_fine(int a1, int a2, int a3);
3513 char *__thiscall sub_4B1523(int *_this);
3514 bool __cdecl sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win();
3515 void __cdecl sub_4B1A2D();
3516 void __stdcall RestAndHeal(__int64 uNumMinutes); // idb
3517 void __cdecl sub_4B1D27();
3518 void __fastcall HousePlaySomeSound(unsigned int uHouseID, int a2); // idb
3519 void __cdecl sub_4B1ECE();
3520 void __fastcall sub_4B2001(signed int a1);
3521 char *__thiscall _4B254D_SkillMasteryTeacher(int _this);
3522 int __fastcall sub_4B29F2(int a1);
3523 char __cdecl sub_4B2A74();
3524 struct GUIButton *__fastcall sub_4B36CC(int a1, unsigned int a2);
3525 int __thiscall sub_4B3703(void *_this);
3526 int __thiscall sub_4B3A72(int a1); // idb
3527 int __fastcall sub_4B3AD4(signed int a1);
3528 int __fastcall sub_4B3B42(signed int a1);
3529 void __cdecl sub_4B3E1E();
3530 void __fastcall sub_4B3EF0(int a4);
3531 void __fastcall sub_4B3FE5(int a4);
3532 void __cdecl sub_4B40E6();
3533 struct GUIButton *__thiscall _4B4224_UpdateNPCTopics(int _this);
3534 char __fastcall sub_4B46A5(const char *Str, int a5);
3535 int __fastcall sub_4B46F8(int a1);
3536 int __cdecl ui_training();
3537 char *__cdecl sub_4B4F4F();
3538 int __cdecl ui_shop_teachers();
3539 int __cdecl sub_4B5D7C();
3540 int __cdecl sub_4B6478();
3541 bool __fastcall sub_4B68EA(int a1);
3542 void __cdecl TravelByTransport();
3543 int __cdecl sub_4B705E();
3544 void __cdecl sub_4B7911();
3545 void __cdecl _4B7D7E_bank();
3546 void __cdecl sub_4B8285_prolly_draw_arcomage_result();
3547 void *__cdecl GenerateShopItems();
3548 void *__cdecl sub_4B8F94();
3549 char *__cdecl sub_4B910F();
3550 POINT *__cdecl sub_4B9CC6();
3551 void __cdecl sub_4BA928();
3552 signed int __fastcall sub_4BB756(signed int a1);
3553 int __cdecl sub_4BBA85_bounties();
3554 void __cdecl sub_4BBCDD();
3555 void __fastcall _4BBF61_summon_actor(int a1, __int16 x, int y, int z); // idb
3556 void __cdecl ArenaFight();
3557 void __thiscall sub_4BC49B(unsigned int _this);
3558 struct Texture *__cdecl sub_4BC8D5();
3559 struct GUIButton *__cdecl sub_4BCA33();
3560 void __fastcall sub_4BCACC_bounties(signed int a1);
3561 signed int __cdecl sub_4BD8B5();
3562 bool __fastcall sub_4BDAAF(ItemGen *a1, int _2da_idx);
3563 void __cdecl sub_4BDB56_buy_skill____();
3564 struct FrameTableTxtLine *__thiscall texture_frame_table_txt_parser(const char *_this, FrameTableTxtLine *a2);
3565 struct FrameTableTxtLine *__thiscall frame_table_txt_parser(const char *pString, FrameTableTxtLine *a2);
3566 int __fastcall sub_4BE571(int a1, int *a2, int a3, int a4);
3567 void __cdecl ShowIntroVideo_and_LoadingScreen();
3568 unsigned int __thiscall GameOverMenu(void *ecx0);
3569 bool __thiscall BinkLockBuffer(struct _BINKBUF *_this);
3570 void __thiscall BinkUnlockBuffer(struct _BINKBUF *_this);
3571 void __cdecl loc_4C0D27(); // idb
3572 void __cdecl vis_nullsub_22(); // idb
3573 void __cdecl vis_nullsub_23(); // idb
3574 void __cdecl vis_loc_4C19F7(); // idb
3575 int __cdecl sr_sub_4D714C(struct stru315 *a1);
3576 int __cdecl sr_sub_4D71F8(struct stru315 *a1);
3577 void __cdecl sr_sub_4D754B(struct stru315 *a1, struct stru316 *a2);
3578 void __cdecl sr_sub_4D7630(struct stru315 *a1, struct stru316 *a2);
3579 void __cdecl sr_sub_4D76ED(struct stru315 *a1, struct stru316 *a2);
3580 void __cdecl sr_sub_4D77D2(struct stru315 *a1, struct stru316 *a2);
3581 void __cdecl sr_sub_4D789A(struct stru315 *a1, struct stru316 *a2);
3582 int __cdecl sub_4D798C(int a1, int a2, int a3, int a4);
3583 int __cdecl sub_4D79CF(int a1, int a2, int a3, int a4);
3584 int __cdecl sub_4D79FD(int a1, int a2, int a3, int a4);
3585 int __cdecl sub_4D7A10(int a1, int a2, int a3, int a4);
3586 int /*__usercall*/ sr_sub_4D72EC/*<eax>*/(int a1/*<ebp>*/);
3587 int /*__usercall*/ sr_sub_4D73DF/*<eax>*/(int a1/*<ebp>*/);
3588 signed int __fastcall SpawnRandomTreasure(struct MapInfo *a1, struct SpawnPointMM7 *a2);
3589 bool __fastcall DamageMonsterFromParty(signed int a1, unsigned int uActorID_Monster, struct Vec3_int_ *pVelocity);
3590
3591
3592 #define ErrD3D(hr) do {extern void ErrHR(HRESULT, const char *, const char *, const char *, int); ErrHR(hr, "Direct3D", __FUNCTION__, __FILE__, __LINE__);} while(0)
3593
3594
3595 namespace zlib
3596 {
3597 int MemZip(void *dest, unsigned int *destLen, void *source, unsigned int sourceLen);
3598 int MemUnzip(void *dest, unsigned int *destLen, const void *source, unsigned int sourceLen);
3599 };