1 /* 2 Types 3 Basic types for the infocom interpreter 4 JBS 15 June 1994 5 */ 6 7 #ifndef _TYPES_ 8 9 #define _TYPES_ 10 11 /* 12 Universal Type Definitions. 13 'byte' - 8 bits ; unsigned. 14 'word' - 16 bits ; unsigned. 15 'long_word' - 32 bits ; unsigned. 16 'signed_word' - 16 bits ; signed. 17 'signed_long' - 32 bits ; signed. 18 'bool' - simple 0/1 truth value 19 20 These should be minimum requirements, so the following 21 definitions ought to be portable across all machines, 22 even those where int is naturally 64 bit. 23 */ 24 25 typedef unsigned char byte; 26 typedef unsigned short word; 27 typedef unsigned long long_word; 28 typedef short signed_word; 29 typedef long signed_long; 30 31 typedef byte bool; 32 33 #define USE(v) (v=v); /* Suppress warnings */ 34 35 #include <stdlib.h> /* Get size_t */ 36 37 #ifndef min 38 #define min(a,b) ((a)<(b)?(a):(b)) 39 #endif 40 #ifndef max 41 #define max(a,b) ((a)>(b)?(a):(b)) 42 #endif 43 44 #endif 45