]> icculus.org git repositories - taylor/freespace2.git/blob - include/unix.h
added _splitpath.
[taylor/freespace2.git] / include / unix.h
1 // unix.h - duplicates some MS defines
2
3 #ifndef _UNIX_H
4 #define _UNIX_H
5
6 #include <stdio.h>
7 #include <sys/types.h>
8 #include <unistd.h>
9 #include "SDL.h"
10
11 #define TRUE 1
12 #define FALSE 0
13 #define DWORD int
14 #define WORD short
15 #define _MAX_FNAME 255
16 #define _MAX_PATH 255
17 #define MAX_PATH 255
18 #define _MAX_DIR 256
19 #define MAX_FILENAME_LENGTH 64
20 #define _cdecl
21 #define __cdecl
22 #define __int64 long long
23 #define LARGE_INTEGER long long
24 #define stricmp strcasecmp
25 #define strnicmp strncasecmp
26 #define _strnicmp strncasecmp
27 #define _isnan isnan
28 #define HANDLE int
29 #define HINSTANCE int
30 #define _getcwd getcwd
31 #define _chdir chdir
32 #define _strlwr strlwr
33 #define _unlink unlink
34 #define _mkdir mkdir
35 #define _hypot hypot
36 #define _access access
37 #define byte unsigned char
38 #define __try try
39 #define __except catch
40 #define LPSTR char *
41 #define PASCAL
42 #define CALLBACK
43
44 extern void strlwr (char *str);
45 extern int filelength (int fd);
46 extern int MulDiv (int, int, int);
47
48 extern void Sleep (int miliseconds);
49 extern unsigned long _beginthread (void (*pfuncStart)(void *), unsigned unStackSize, void* pArgList);
50 extern void OutputDebugString (const char *);
51 extern int WSAGetLastError ();
52 extern void _splitpath (const char *path, char *drive, char *dir, char *fname, char *ext);
53
54 typedef struct FILETIME_s {
55             DWORD dwLowDateTime;
56             DWORD dwHighDateTime;
57 } FILETIME, *PFILETIME;
58
59 #define WAVE_FORMAT_PCM         1
60 #define WAVE_FORMAT_ADPCM       2
61
62 typedef struct {
63         WORD wFormatTag;
64         WORD nChannels;
65         DWORD nSamplesPerSec;
66         DWORD nAvgBytesPerSec;
67         WORD nBlockAlign;
68 } WAVEFORMAT;
69                     
70 typedef struct {
71         WAVEFORMAT wf;
72         WORD wBitsPerSample;
73 } PCMWAVEFORMAT;
74
75 typedef struct {
76         WORD  wFormatTag;
77         WORD  nChannels;
78         DWORD nSamplesPerSec;
79         DWORD nAvgBytesPerSec;
80         WORD  nBlockAlign;
81         WORD  wBitsPerSample;
82         WORD  cbSize;
83 } WAVEFORMATEX;
84
85 extern void strlwr (char *str);
86 extern int filelength (int fd);
87 extern int MulDiv (int, int, int);
88 #define CRITICAL_SECTION SDL_mutex*
89
90 #ifndef NDEBUG
91 #define STUB_FUNCTION fprintf(stderr,"STUB: %s at " __FILE__ ", line %d, thread %d\n",__FUNCTION__,__LINE__,getpid())
92 #else
93 #define STUB_FUNCTION
94 #endif
95
96 #define closesocket(A) close(A)
97 #define CopyMemory(A,B,C) memcpy(A,B,C)
98 #define UINT unsigned int
99 #define SOCKET int
100 #define SOCKADDR_IN struct sockaddr_in
101 #define SOCKADDR struct sockaddr
102 #define LPSOCKADDR struct sockaddr*
103 #define LPHOSTENT struct hostent*
104 #define HOSTENT struct hostent
105 #define LPINADDR struct in_addr*
106 #define LPIN_ADDR struct in_addr*
107 #define SOCKET_ERROR -1
108 #define INVALID_SOCKET -1
109 #define TIMEVAL struct timeval
110 #define SERVENT struct servent
111 #define BOOL int
112
113 #define WSAEALREADY EALREADY
114 #define WSAEINVAL EINVAL
115 #define WSAEWOULDBLOCK EAGAIN
116 #define WSAEISCONN EISCONN
117 #define WSAECONNRESET ECONNRESET
118 #define WSAECONNABORTED ECONNABORTED
119 #define WSAESHUTDOWN ESHUTDOWN
120 #define WSAENOTSOCK ENOTSOCK
121
122 #endif