76 |
|
|
77 |
|
extern char errmsg[]; /* global buffer for error messages */ |
78 |
|
|
79 |
+ |
#ifdef FASTMATH |
80 |
+ |
#define tcos cos |
81 |
+ |
#define tsin sin |
82 |
+ |
#define ttan tan |
83 |
+ |
#else |
84 |
+ |
extern double tcos(); /* table-based cosine approximation */ |
85 |
+ |
#define tsin(x) tcos((x)-(PI/2.)) |
86 |
+ |
#define ttan(x) (tsin(x)/tcos(x)) |
87 |
+ |
#endif |
88 |
+ |
/* custom version of assert(3) */ |
89 |
+ |
#define CHECK(be,et,em) ((be) ? error(et,em) : 0) |
90 |
+ |
#ifdef DEBUG |
91 |
+ |
#define DCHECK CHECK |
92 |
+ |
#else |
93 |
+ |
#define DCHECK(be,et,em) 0 |
94 |
+ |
#endif |
95 |
|
/* memory operations */ |
96 |
|
#ifdef NOSTRUCTASS |
97 |
|
#define copystruct(d,s) bcopy((char *)(s),(char *)(d),sizeof(*(d))) |
99 |
|
#define copystruct(d,s) (*(d) = *(s)) |
100 |
|
#endif |
101 |
|
|
102 |
< |
#ifdef BSD |
102 |
> |
#ifdef BSD |
103 |
|
extern long lseek(); |
104 |
|
#else |
105 |
|
#define bcopy(s,d,n) (void)memcpy(d,s,n) |