mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-23 00:14:25 +00:00
72 lines
1.8 KiB
C
72 lines
1.8 KiB
C
/* 07/20/82 Added new types WORD and BYTE (DMH) */
|
|
/* 10/15/82 Added some new defines (DMH) */
|
|
/* 11/13/82 This is the version for Unidot comp- */
|
|
/* iler which doesn't support unsigned. */
|
|
|
|
/* the pseudo storage classes */
|
|
|
|
#define AFAST register
|
|
#define FAST register
|
|
#define GLOBAL extern
|
|
#define IMPORT extern
|
|
#define INTERN static
|
|
#define LOCAL static
|
|
|
|
/* the pseudo types */
|
|
|
|
typedef char TEXT, TINY;
|
|
typedef double DOUBLE;
|
|
typedef int ARGINT, BOOL, VOID;
|
|
typedef long LONG;
|
|
typedef short BITS, COUNT, FILE;
|
|
typedef /* unsigned */ BYTES, WORD;
|
|
typedef /* unsigned */ char BYTE, UTINY;
|
|
typedef /* unsigned */ long ULONG;
|
|
typedef /* unsigned */ short UCOUNT;
|
|
|
|
/* system parameters */
|
|
|
|
#define STDIN 0
|
|
#define STDOUT 1
|
|
#define STDERR 2
|
|
#define YES 1
|
|
#define NO 0
|
|
#define TRUE 1
|
|
#define FALSE 0
|
|
#define NULL 0
|
|
#define FOREVER for (;;)
|
|
#define BUFSIZE 512
|
|
#define BWRITE -1
|
|
#define READ 0
|
|
#define WRITE 1
|
|
#define UPDATE 2
|
|
#define EOF -1
|
|
#define BYTMASK 0377
|
|
|
|
/* macros */
|
|
#define abs(x) ((x) < 0 ? -(x) : (x))
|
|
#define gtc(pf) (0 < (pf)->_nleft ? (--(pf)->_nleft, *(pf)->_pnext++ & BYTMASK) \
|
|
: getc(pf))
|
|
#define isalpha(c) (islower(c) || isupper(c))
|
|
#define isdigit(c) ('0' <= (c) && (c) <= '9')
|
|
#define islower(c) ('a' <= (c) && (c) <= 'z')
|
|
#define isupper(c) ('A' <= (c) && (c) <= 'Z')
|
|
#define iswhite(c) ((c) <= ' ' || 0177 <= (c)) /* ASCII ONLY */
|
|
#define max(x, y) (((x) < (y)) ? (y) : (x))
|
|
#define min(x, y) (((x) < (y)) ? (x) : (y))
|
|
#define ptc(pf, c) if ((pf)->_nleft < 512) (pf)->_buf[(pf)->_nleft++] = (c); \
|
|
else putc(pf, (c))
|
|
#define tolower(c) (isupper(c) ? ((c) + ('a' - 'A')) : (c))
|
|
#define toupper(c) (islower(c) ? ((c) - ('a' - 'A')) : (c))
|
|
|
|
/* the file IO structure */
|
|
|
|
typedef struct fio
|
|
{
|
|
FILE _fd;
|
|
COUNT _nleft;
|
|
COUNT _fmode;
|
|
TEXT *_pnext;
|
|
TEXT _buf[BUFSIZE];
|
|
} FIO;
|