/*
 * @(#)includes.h 1.2 87/08/14 -- Copyright 1987 by John Gilmore
 * Copying governed by GNU Emacs General Public License.
 *
 * Include files for various supported systems:
 * Note that NAMESIZE should be the max length of a file name, including
 * all its directories, drive specifiers, extensions, and the like.
 * E.g. on a Unix with 14-char file names, NAMESIZE is several hundred
 * characters, since the 14-char names can be nested.
 *
 * Ported to Amiga by William Loftus
 * Changes Copyright 1988 by William Loftus.  All rights reserved.
 */

#ifdef BSD
/* Unix Berserkeley systems */
#include <stdio.h>
#include <ctype.h>
#include <sys/param.h>
#include <sys/file.h>
#include <sys/time.h>
#include <strings.h>

extern char *strtok();

#define UNIX
#define NAMESIZE        MAXPATHLEN
#endif

#ifdef SYSV
/* Unix System V */
#include <stdio.h>
#include <ctype.h>
#include <fcntl.h>
#include <string.h>

#define UNIX
#endif

#ifdef UNIX
/* Stuff common to all Unix systems */
#define remove  unlink  /* Unix-ism for removing a file */
#define MULTITASK
#define STDIN           0
#define SPOOLDIR        "/usr/spool/uucp"
#define PUBDIR          "/usr/spool/uucppublic"
#define LOGFILE         "LOGFILE"
#define O_BINARY        0       /* No distinction between text and binary */
#endif

#ifdef CPM
/* CP/M-80 */
#include <stdio.h>
#include <ctype.h>
#include <fcntl.h>

#define NAMESIZE        50              /* No directories... */
#endif

#ifdef MSDOS
/* Microsoft DOS */
#include <stdio.h>
#include <ctype.h>
#include <fcntl.h>
#include <time.h>
#include <signal.h>
#include <dos.h>
#include <conio.h>
#include <stdlib.h>
#include <process.h>
#include <string.h>
#include <direct.h>
#include <memory.h>

/* Turn on support for the interrupt driven comm port routines */
#define COMPORT

#ifdef COMPORT
#include "comport.h"
int handler();
#endif

#define GET_TIME 0x2c   /* DOS function number for get_time */
#define DOS_INT  0x21   /* DOS interrupt number */

typedef struct timetype {
        unsigned hour;
        unsigned minute;
        unsigned sec;
        unsigned hsec;
} TIME, *TIME_PTR;


/* FIXME, these should all be uppercase. */
#define fnamesize       sizeof("FILENAME")    /* 8 chars */
#define NAMESIZE        128             /* full path size */
#define ufnamesize      5               /* uux id size */
#endif

#ifdef ST
/* Atari ST */
#include <stdio.h>
#include <ctype.h>
#include <osbind.h>
#include <signal.h>

#define O_RDONLY        0       /* for read only open() */
#define AUX             1       /* rs232 port */
#define CON             2       /* console */
#define NAMESIZE        13      /* filename size */
#define CTRL(X) (X & 037)

#endif

#ifdef AMIGA
#  include <exec/types.h>
#  include <fcntl.h>
#  include <exec/exec.h>
#  include <devices/serial.h>
#  include <devices/keymap.h>
#  include <devices/timer.h>
#  include <libraries/dos.h>
#  include <signal.h>
#  include <stdio.h>
#  include <ctype.h>
#  include <time.h>
#  define NAMESIZE 128
#endif
