home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BURKS 2
/
BURKS_AUG97.ISO
/
BURKS
/
SOFTWARE
/
SOURCES
/
UNZIP52.ZIP
/
amiga
/
amiga.h
(
.txt
)
< prev
next >
Wrap
C/C++ Source or Header
|
1996-04-16
|
3KB
|
88 lines
/* amiga.h
*
* Globular definitions that affect all of AmigaDom.
*
* Originally included in unzip.h, extracted for simplicity and eeze of
* maintenance by John Bush.
*
* THIS FILE IS #INCLUDE'd by unzip.h
*
*/
#include <time.h>
#include <fcntl.h>
#ifdef AZTEC_C /* Manx Aztec C, 5.0 or newer only */
# include <clib/dos_protos.h>
# include <pragmas/dos_lib.h> /* do inline dos.library calls */
# define O_BINARY 0
# include "amiga/z-stat.h" /* substitute for <stat.h> */
# define direct dirent
# define DECLARE_TIMEZONE
# define MALLOC_WORK
# define ASM_INFLATECODES
# define ASM_CRC
/* Note that defining REENTRANT will not eliminate all global/static */
/* variables. The functions we use from c.lib, including stdio, are */
/* not reentrant. Neither are the stuff in amiga/stat.c or the time */
/* functions in amiga/filedate.c, because they just augment c.lib. */
/* If you want a fully reentrant and reexecutable "pure" UnZip with */
/* Aztec C, assemble and link in the startup module purify.a by Paul */
/* Kienitz. REENTRANT should be used to reduce memory waste, though */
/* it is not strictly necessary, since G is now a static struct. */
#endif /* AZTEC_C */
#if defined(LATTICE) || defined(__SASC) || defined(__SASC_60)
# include <sys/types.h>
# include <sys/stat.h>
# include <sys/dir.h>
# include <dos.h>
# include <proto/dos.h> /* needed? */
# if ( (!defined(O_BINARY)) && defined(O_RAW))
# define O_BINARY O_RAW
# endif
#endif /* LATTICE */
#define USE_EF_UX_TIME
#define AMIGA_FILENOTELEN 80
#define DATE_FORMAT DF_MDY
#define lenEOL 1
#define PutNativeEOL *q++ = native(LF);
#define PIPE_ERROR 0
/* #define USE_FWRITE if write() returns 16-bit int */
#ifdef GLOBAL /* crypt.c usage conflicts with AmigaDOS headers */
# undef GLOBAL
#endif
/* Funkshine Prough Toe Taipes */
LONG FileDate (char *, time_t[]);
int windowheight (BPTR fh);
#define SCREENLINES windowheight(Output())
/* Static variables that we have to add to struct Globals: */
#define SYSTEM_SPECIFIC_GLOBALS \
int N_flag;\
int filenote_slot;\
char *(filenotes[DIR_BLKSIZ]);\
int created_dir, renamed_fullpath, rootlen;\
char *rootpath, *buildpath, *build_end;\
DIR *wild_dir;\
char *dirname, *wildname, matchname[FILNAMSIZ];\
int dirnamelen, notfirstcall;
/* N_flag, filenotes[], and filenote_slot are for the -N option that */
/* restores zipfile comments as AmigaDOS filenotes. The others */
/* are used by functions in amiga/amiga.c only. */
/* created_dir and renamed_fullpath are used by mapname() and checkdir(). */
/* rootlen, rootpath, buildpath, and build_end are used by checkdir(). */
/* wild_dir, dirname, wildname, matchname[], dirnamelen and notfirstcall */
/* are used by do_wild(). */