* added compilers lcc and bcc (linux86)
[mascara-docs.git] / compilers / asm / cmdlib.h
blobc2e6dd8810d7cf4830ca5ecc22fa5635337e8ca6
1 /*
2 ===========================================================================
3 Copyright (C) 1999-2005 Id Software, Inc.
5 This file is part of Quake III Arena source code.
7 Quake III Arena source code is free software; you can redistribute it
8 and/or modify it under the terms of the GNU General Public License as
9 published by the Free Software Foundation; either version 2 of the License,
10 or (at your option) any later version.
12 Quake III Arena source code is distributed in the hope that it will be
13 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with Quake III Arena source code; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 ===========================================================================
22 // cmdlib.h
24 #ifndef __CMDLIB__
25 #define __CMDLIB__
27 #ifdef _MSC_VER
28 #pragma warning(disable : 4244) // MIPS
29 #pragma warning(disable : 4136) // X86
30 #pragma warning(disable : 4051) // ALPHA
32 #pragma warning(disable : 4018) // signed/unsigned mismatch
33 #pragma warning(disable : 4305) // truncate from double to float
35 #pragma check_stack(off)
37 #endif
39 #include <stdio.h>
40 #include <string.h>
41 #include <stdlib.h>
42 #include <errno.h>
43 #include <ctype.h>
44 #include <time.h>
45 #include <stdarg.h>
47 #ifdef _MSC_VER
49 #pragma intrinsic( memset, memcpy )
51 #endif
53 #ifndef __BYTEBOOL__
54 #define __BYTEBOOL__
55 typedef enum { qfalse, qtrue } qboolean;
56 typedef unsigned char byte;
57 #endif
59 #define MAX_OS_PATH 1024
60 #define MEM_BLOCKSIZE 4096
62 // the dec offsetof macro doesnt work very well...
63 #define myoffsetof(type,identifier) ((size_t)&((type *)0)->identifier)
66 // set these before calling CheckParm
67 extern int myargc;
68 extern char **myargv;
70 char *strupr (char *in);
71 char *strlower (char *in);
72 int Q_strncasecmp( const char *s1, const char *s2, int n );
73 int Q_stricmp( const char *s1, const char *s2 );
74 void Q_getwd( char *out );
76 int Q_filelength (FILE *f);
77 int FileTime( const char *path );
79 void Q_mkdir( const char *path );
81 extern char qdir[1024];
82 extern char gamedir[1024];
83 extern char writedir[1024];
84 void SetQdirFromPath( const char *path );
85 char *ExpandArg( const char *path ); // from cmd line
86 char *ExpandPath( const char *path ); // from scripts
87 char *ExpandGamePath (const char *path);
88 char *ExpandPathAndArchive( const char *path );
91 double I_FloatTime( void );
93 void Error( const char *error, ... );
94 int CheckParm( const char *check );
96 FILE *SafeOpenWrite( const char *filename );
97 FILE *SafeOpenRead( const char *filename );
98 void SafeRead (FILE *f, void *buffer, int count);
99 void SafeWrite (FILE *f, const void *buffer, int count);
101 int LoadFile( const char *filename, void **bufferptr );
102 int LoadFileBlock( const char *filename, void **bufferptr );
103 int TryLoadFile( const char *filename, void **bufferptr );
104 void SaveFile( const char *filename, const void *buffer, int count );
105 qboolean FileExists( const char *filename );
107 void DefaultExtension( char *path, const char *extension );
108 void DefaultPath( char *path, const char *basepath );
109 void StripFilename( char *path );
110 void StripExtension( char *path );
112 void ExtractFilePath( const char *path, char *dest );
113 void ExtractFileBase( const char *path, char *dest );
114 void ExtractFileExtension( const char *path, char *dest );
116 int ParseNum (const char *str);
118 char *COM_Parse (char *data);
120 extern char com_token[1024];
121 extern qboolean com_eof;
123 char *copystring(const char *s);
126 void CRC_Init(unsigned short *crcvalue);
127 void CRC_ProcessByte(unsigned short *crcvalue, byte data);
128 unsigned short CRC_Value(unsigned short crcvalue);
130 void CreatePath( const char *path );
131 void QCopyFile( const char *from, const char *to );
133 extern qboolean archive;
134 extern char archivedir[1024];
137 extern qboolean verbose;
138 void qprintf( const char *format, ... );
139 void _printf( const char *format, ... );
141 void ExpandWildcards( int *argc, char ***argv );
144 // for compression routines
145 typedef struct
147 void *data;
148 int count, width, height;
149 } cblock_t;
152 #endif