* excluded word lists may be linked to final code if used by other words.
*/
+#include <endian.h>
+
#define COREE_DEF 1L
#define DOUBLE_DEF 1L
#define DOUBLEE_DEF 1L
* Note that some compilers have LITTLE_ENDIAN yet defined.
*/
#ifndef LITTLE_ENDIAN
+# if __BYTE_ORDER == __LITTLE_ENDIAN
# define LITTLE_ENDIAN
+# else
+# undef LITTLE_ENDIAN
+# endif
#endif
/* When DCELL_MEM is defined, double cell transfer is realized by memory
* Under Linux, Cell may be "int" and DCell "long long".
*/
-#define Cell int
+/* this might work for other 64 bit architectures, too? */
+#if defined(__alpha__)
+# define Cell long
+#else
+# define Cell int
+#endif /* __alpha__ */
+
#define Char char
-#define Real long double
+#define Real float
#define UCell unsigned Cell
#define DCell long long
#define MAX_F 0.0
/* Some compilers doesn't provide some functions in the standard library.
- * If you don't have, undefine them
- */
-#define HAVE_ACOSH
-#define HAVE_ASINH
-#define HAVE_ATANH
+ * If you don't have, turn 1s into 0s
+ */
+#define HAVE_ACOSH 1
+#define HAVE_ASINH 1
+#define HAVE_ATANH 1
+
+/* Set following define to 1 if you're compiling under Turbo C, Borland C,
+ * or GCC for DOS.
+ */
+#define HAVE_CONIO 0