/*
 *		Cross Development System for Atari ST 
 *     Copyright (c) 1988, Memorial University of Newfoundland
 *
 * $Header: file.h,v 1.1 88/01/29 17:22:27 m68k Exp $
 *
 * $Log:	file.h,v $
 * Revision 1.1  88/01/29  17:22:27  m68k
 * Initial revision
 * 
 */

/*
 *  open
 */
#define	O_RDONLY		0x00
#define	O_WRONLY		0x01
#define	O_RDWR			0x02
#define	O_NDELAY		0	/* not implemented */
#define	O_APPEND		0x04
#define	O_CREAT			0x08
#define	O_TRUNC			0x10
#define	O_EXCL			0x20

/*
 * access
 */
#define	F_OK			0
#define	X_OK			1
#define	W_OK			2
#define	R_OK			4

/*
 * lseek
 */
#define	L_SET			0
#define	L_INCR			1
#define	L_XTND			2

/* defs for handle frob */

#define N_HANDLES	64

extern char __handle_stat[];

#define FH_UNKNOWN	0
#define FH_ISATTY	1
#define FH_ISAFILE	2

/* canned handles, defined by GEM and BIOS.  These values thanks to 
   bammi@dsrgsun.ces.cwru.edu.  Too bad Atari's such a pain about 
   publishing this kind of info... */

/* gem default handles */
#define GEM_DH_CONSOLE0	0		/* console, CON: r/w? */
#define GEM_DH_CONSOLE1	1		/* console, CON: write-only? */
#define GEM_DH_SERIAL	2		/* serial port, AUX: r/w */
#define GEM_DH_PRINTER	3		/* printer port, PRN:, write only */
#define GEM_MAX_SYSTEM_HANDLE 5		/* last handle that gem considers 'special' */

/* gem extended handles */
#define GEM_XH_CONSOLE	-1
#define GEM_XH_SERIAL	-2
#define GEM_XH_PRINTER	-3

/* bios handles */
#define BIOS_H_PRINTER	0
#define BIOS_H_SERIAL	1
#define BIOS_H_CONSOLE	2
#define BIOS_H_MIDI	3
#define BIOS_H_RCONSOLE	4		/* raw console?  what's that? */


/* maybe more later */

