X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=interpreters%2Fnitfol%2Fnitfol.h;fp=interpreters%2Fnitfol%2Fnitfol.h;h=319a5360c0787652354f0f9418fc5172f9c0ef1d;hb=75009f8f40bbb580194e1722db76f4644bf18641;hp=3c2cd6c659c70d1cfb48a8671c3893ce3bef61ab;hpb=89081782541e85e079f64839ffb26b4e74273eb7;p=projects%2Fchimara%2Fchimara.git diff --git a/interpreters/nitfol/nitfol.h b/interpreters/nitfol/nitfol.h index 3c2cd6c..319a536 100644 --- a/interpreters/nitfol/nitfol.h +++ b/interpreters/nitfol/nitfol.h @@ -23,6 +23,7 @@ #include /* For NULL, rand, srand */ #include /* For time() */ #include /* for isspace, isgraph, etc. */ +#include #include "glk.h" #define GLK_EOF ((glsi32) -1) @@ -30,12 +31,29 @@ #define NITFOL_MINOR 5 /* Change these next few typedefs depending on your compiler */ -#include -typedef uint8_t zbyte; +#if UCHAR_MAX==0xff +typedef unsigned char zbyte; +#else +#error "Can't find an 8-bit integer type" +#endif #ifdef FAST_SHORT -typedef uint16_t zword; -typedef uint32_t offset; + +#if SHRT_MAX==0x7fff +typedef unsigned short zword; +#elif INT_MAX==0x7fff +typedef unsigned int zword; +#else +#error "Can't find a 16-bit integer type" +#endif + +#if INT_MAX==0x7fffffff +typedef unsigned int offset; +#elif LONG_MAX==0x7fffffff +typedef unsigned long offset; +#else +#error "Can't find a 32-bit integer type" +#endif #ifdef TWOS16SHORT #define FAST_TWOS16SHORT @@ -44,11 +62,28 @@ typedef uint32_t offset; #else #ifdef FAST_SIGNED -typedef int32_t zword; -typedef int32_t offset; +#if INT_MAX==0x7fffffff +typedef int zword; +typedef int offset; +#elif LONG_MAX==0x7fffffff +typedef long zword; +typedef long offset; #else -typedef uint32_t zword; /* Needs to be >= real zword */ -typedef uint32_t offset; +#error "Can't find a 32-bit integer type" +#endif + +#else + +#if INT_MAX==0x7fffffff +typedef unsigned int zword; +typedef unsigned int offset; +#elif LONG_MAX==0x7fffffff +typedef unsigned long zword; +typedef unsigned long offset; +#else +#error "Can't find a 32-bit integer type" +#endif + #endif #endif @@ -289,7 +324,7 @@ typedef enum { OBJ_GET_INFO, OBJ_RECEIVE, OBJ_MOVE } watchinfo; #include "decode.h" #include "main.h" -#include "io.h" +#include "nio.h" #include "z_io.h" #include "no_snd.h"