OSDN Git Service

- added Demolisher's APROP_Target/TracerTID submission.
[zandronum/zandronum-acc.git] / common.h
1 \r
2 //**************************************************************************\r
3 //**\r
4 //** common.h\r
5 //**\r
6 //**************************************************************************\r
7 \r
8 #ifndef __COMMON_H__\r
9 #define __COMMON_H__\r
10 \r
11 // HEADER FILES ------------------------------------------------------------\r
12 \r
13 // MACROS ------------------------------------------------------------------\r
14 \r
15 #define ARRAY_SIZE(a)   (sizeof(a)/sizeof(*(a)))\r
16 #ifndef TRUE\r
17 #define TRUE 1\r
18 #endif\r
19 #ifndef FALSE\r
20 #define FALSE 0\r
21 #endif\r
22 #ifndef YES\r
23 #define YES 1\r
24 #endif\r
25 #ifndef NO\r
26 #define NO 0\r
27 #endif\r
28 // Increased limits - Ty 03jan2000\r
29 // 32 is okay\r
30 #define MAX_IDENTIFIER_LENGTH 32\r
31 // 32k long quoted string should be okay\r
32 #define MAX_QUOTED_LENGTH 32768\r
33 // 512 max file name is okay in DOS/Win\r
34 #define MAX_FILE_NAME_LENGTH 512\r
35 // Was 64\r
36 #define MAX_SCRIPT_COUNT 1000\r
37 // Was 32\r
38 #define MAX_MAP_VARIABLES 128\r
39 // Left alone--there's something in the docs about this...\r
40 // [RH] Bumped up to 20 for fun.\r
41 #define MAX_SCRIPT_VARIABLES 20\r
42 // Was 64\r
43 #define MAX_WORLD_VARIABLES 256\r
44 // [RH] New\r
45 #define MAX_GLOBAL_VARIABLES 64\r
46 // Was 128\r
47 #define MAX_STRINGS 32768\r
48 // Don't know what this is\r
49 #define DEFAULT_OBJECT_SIZE 65536\r
50 // Added Ty 07Jan2000 for error details\r
51 #define MAX_STATEMENT_LENGTH 4096\r
52 \r
53 #define MAX_LANGUAGES 256\r
54 \r
55 #define MAX_FUNCTION_COUNT 256\r
56 \r
57 #define MAX_IMPORTS 256\r
58 \r
59 // Max number of include paths the user can specify\r
60 // This includes the "working directory"!\r
61 #define MAX_INCLUDE_PATHS 16\r
62 \r
63 // Maximum number of translations that can be used\r
64 #define MAX_TRANSLATIONS 32\r
65 \r
66 enum\r
67 {\r
68         STRLIST_PICS,\r
69         STRLIST_FUNCTIONS,\r
70         STRLIST_MAPVARS,\r
71 \r
72         NUM_STRLISTS\r
73 };\r
74 \r
75 // These are just defs and have not been messed with\r
76 #define ASCII_SPACE 32\r
77 #define ASCII_QUOTE 34\r
78 #define ASCII_UNDERSCORE 95\r
79 #define EOF_CHARACTER 127\r
80 #ifdef __NeXT__\r
81 #define DIRECTORY_DELIMITER "/"\r
82 #define DIRECTORY_DELIMITER_CHAR ('/')\r
83 #else\r
84 #define DIRECTORY_DELIMITER "\\"\r
85 #define DIRECTORY_DELIMITER_CHAR ('\\')\r
86 #endif\r
87 \r
88 \r
89 \r
90 #define MAKE4CC(a,b,c,d)        ((a)|((b)<<8)|((c)<<16)|((d)<<24))\r
91 \r
92 // TYPES -------------------------------------------------------------------\r
93 \r
94 typedef unsigned int    boolean;\r
95 typedef unsigned char   byte;\r
96 typedef signed char             S_BYTE;\r
97 typedef unsigned char   U_BYTE;\r
98 typedef signed short    S_WORD;\r
99 typedef unsigned short  U_WORD;\r
100 typedef int                     S_INT;\r
101 typedef unsigned int    U_INT;\r
102 // typedef signed long          S_LONG;\r
103 // typedef unsigned long        U_LONG;\r
104 \r
105 enum ImportModes\r
106 {\r
107         IMPORT_None,\r
108         IMPORT_Importing,\r
109         IMPORT_Exporting\r
110 };\r
111 \r
112 // PUBLIC FUNCTION PROTOTYPES ----------------------------------------------\r
113 \r
114 // PUBLIC DATA DECLARATIONS ------------------------------------------------\r
115 \r
116 #endif\r