4 # if !defined(WINDOWS) && !defined(WIN32_SYSTEM)
8 # include <sys/types.h>
10 # define MEM_ALLOC(size) (malloc((size_t)(size)))
11 # define MEM_FREE(ptr) {if(ptr) free(ptr);}
13 # define STRCPY(t, s) (strcpy((char*)(t), (char*)(s)))
14 # define STRNCPY(t,s,n) (strncpy((char*)(t), (char*)(s), (size_t)(n)))
15 # define STRCAT(t, s) (strcat((char*)(t), (char*)(s)))
16 # define STRNCAT(t,s,n) (strncat((char*)(t), (char*)(s), (size_t)(n)))
17 # define STREQ(a, b) (strcmp((char*)(a), (char*)(b)) == 0)
18 # define STRLEN(str) ((str)? strlen((char*)(str)):0)
24 typedef signed short SSHOR
;
35 # if defined(WINDOWS) || defined(WIN32_SYSTEM)
38 # include <windowsx.h>
41 # define MEM_ALLOC(size) (fmalloc((size_t)(size)))
42 # define MEM_FREE(ptr) ((ptr)? ffree((PTR)(ptr)):0))
43 # define STRCPY(t, s) (fstrcpy((char FAR*)(t), (char FAR*)(s)))
44 # define STRNCPY(t,s,n) (fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
45 # define STRLEN(str) ((str)? fstrlen((char FAR*)(str)):0)
46 # define STREQ(a, b) (fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
50 # define MEM_ALLOC(size) (farmalloc((unsigned long)(size))
51 # define MEM_FREE(ptr) ((ptr)? farfree((void far*)(ptr)):0)
52 # define STRCPY(t, s) (_fstrcpy((char FAR*)(t), (char FAR*)(s)))
53 # define STRNCPY(t,s,n) (_fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
54 # define STRLEN(str) ((str)? _fstrlen((char FAR*)(str)):0)
55 # define STREQ(a, b) (_fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
63 # define NULL ((void FAR*)0UL)