|
|
1.1 root 1: // comndef.h -- general definitions
2:
3: typedef unsigned char byte;
4: #define _DEF_BYTE_
5:
6: typedef enum {false, true} qboolean;
7:
8: //============================================================================
9:
10: typedef struct sizebuf_s
11: {
12: qboolean allowoverflow; // if false, do a Sys_Error
13: qboolean overflowed; // set to true if the buffer size failed
14: byte *data;
15: int maxsize;
16: int cursize;
17: } sizebuf_t;
18:
19: void SZ_Alloc (sizebuf_t *buf, int startsize);
20: void SZ_Free (sizebuf_t *buf);
21: void SZ_Clear (sizebuf_t *buf);
22: void *SZ_GetSpace (sizebuf_t *buf, int length);
23: void SZ_Write (sizebuf_t *buf, void *data, int length);
24: void SZ_Print (sizebuf_t *buf, char *data); // strcats onto the sizebuf
25:
26: //============================================================================
27:
28: typedef struct link_s
29: {
30: struct link_s *prev, *next;
31: } link_t;
32:
33:
34: void ClearLink (link_t *l);
35: void RemoveLink (link_t *l);
36: void InsertLinkBefore (link_t *l, link_t *before);
37: void InsertLinkAfter (link_t *l, link_t *after);
38:
39: // (type *)STRUCT_FROM_LINK(link_t *link, type, member)
40: // ent = STRUCT_FROM_LINK(link,entity_t,order)
41: // FIXME: remove this mess!
42: #define STRUCT_FROM_LINK(l,t,m) ((t *)((byte *)l - (int)&(((t *)0)->m)))
43:
44: //============================================================================
45:
46: #ifndef NULL
47: #define NULL ((void *)0)
48: #endif
49:
50: #define Q_MAXCHAR ((char)0x7f)
51: #define Q_MAXSHORT ((short)0x7fff)
52: #define Q_MAXINT ((int)0x7fffffff)
53: #define Q_MAXLONG ((int)0x7fffffff)
54: #define Q_MAXFLOAT ((int)0x7fffffff)
55:
56: #define Q_MINCHAR ((char)0x80)
57: #define Q_MINSHORT ((short)0x8000)
58: #define Q_MININT ((int)0x80000000)
59: #define Q_MINLONG ((int)0x80000000)
60: #define Q_MINFLOAT ((int)0x7fffffff)
61:
62: //============================================================================
63:
64: extern qboolean bigendien;
65:
66: extern short (*BigShort) (short l);
67: extern short (*LittleShort) (short l);
68: extern int (*BigLong) (int l);
69: extern int (*LittleLong) (int l);
70: extern float (*BigFloat) (float l);
71: extern float (*LittleFloat) (float l);
72:
73: //============================================================================
74:
75: void MSG_WriteChar (sizebuf_t *sb, int c);
76: void MSG_WriteByte (sizebuf_t *sb, int c);
77: void MSG_WriteShort (sizebuf_t *sb, int c);
78: void MSG_WriteLong (sizebuf_t *sb, int c);
79: void MSG_WriteFloat (sizebuf_t *sb, float f);
80: void MSG_WriteString (sizebuf_t *sb, char *s);
81: void MSG_WriteCoord (sizebuf_t *sb, float f);
82: void MSG_WriteAngle (sizebuf_t *sb, float f);
83:
84: extern int msg_readcount;
85: extern qboolean msg_badread; // set if a read goes beyond end of message
86:
87: void MSG_BeginReading (void);
88: int MSG_ReadChar (void);
89: int MSG_ReadByte (void);
90: int MSG_ReadShort (void);
91: int MSG_ReadLong (void);
92: float MSG_ReadFloat (void);
93: char *MSG_ReadString (void);
94:
95: float MSG_ReadCoord (void);
96: float MSG_ReadAngle (void);
97:
98: //============================================================================
99:
100: void Q_memset (void *dest, int fill, int count);
101: void Q_memcpy (void *dest, void *src, int count);
102: int Q_memcmp (void *m1, void *m2, int count);
103: void Q_strcpy (char *dest, char *src);
104: void Q_strncpy (char *dest, char *src, int count);
105: int Q_strlen (char *str);
106: char *Q_strrchr (char *s, char c);
107: void Q_strcat (char *dest, char *src);
108: int Q_strcmp (char *s1, char *s2);
109: int Q_strncmp (char *s1, char *s2, int count);
110: int Q_strcasecmp (char *s1, char *s2);
111: int Q_strncasecmp (char *s1, char *s2, int n);
112: int Q_atoi (char *str);
113: float Q_atof (char *str);
114:
115: //============================================================================
116:
117: extern char com_token[1024];
118: extern qboolean com_eof;
119:
120: char *COM_Parse (char *data);
121:
122:
123: extern int com_argc;
124: extern char **com_argv;
125:
126: int COM_CheckParm (char *parm);
127: void COM_Init (char *path);
128: void COM_InitArgv (int argc, char **argv);
129:
130: char *COM_SkipPath (char *pathname);
131: void COM_StripExtension (char *in, char *out);
132: void COM_FileBase (char *in, char *out);
133: void COM_DefaultExtension (char *path, char *extension);
134:
135: char *va(char *format, ...);
136: // does a varargs printf into a temp buffer
137:
138:
139: //============================================================================
140:
141: extern int com_filesize;
142: struct cache_user_s;
143:
144: extern char com_gamedir[MAX_OSPATH];
145:
146: void COM_WriteFile (char *filename, void *data, int len);
147: int COM_OpenFile (char *filename, int *hndl);
148: int COM_FOpenFile (char *filename, FILE **file);
149: void COM_CloseFile (int h);
150:
151: byte *COM_LoadStackFile (char *path, void *buffer, int bufsize);
152: byte *COM_LoadTempFile (char *path);
153: byte *COM_LoadHunkFile (char *path);
154: void COM_LoadCacheFile (char *path, struct cache_user_s *cu);
155:
156:
157: extern struct cvar_s registered;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.