1 /* SCCS Id: @(#)amiconf.h 3.3 2000/01/12 */ 2 /* Copyright (c) Kenneth Lorber, Bethesda, Maryland, 1990, 1991, 1992, 1993. */ 3 /* NetHack may be freely redistributed. See license for details. */ 4 5 #ifndef AMICONF_H 6 #define AMICONF_H 7 8 #undef abs /* avoid using macro form of abs */ 9 #ifndef __SASC_60 10 # undef min /* this gets redefined */ 11 # undef max /* this gets redefined */ 12 #endif 13 14 #include <time.h> /* get time_t defined before use! */ 15 16 #ifdef __SASC_60 /* since SAS can prevent re-inclusion */ 17 #include <stdlib.h> /* general things, including builtins */ 18 #include <string.h> 19 #endif 20 21 #ifdef AZTEC_50 22 #include <stdlib.h> 23 # define AZTEC_C_WORKAROUND /* Bug which turns up in sounds.c. Bummer... */ 24 # define NO_SIGNAL /* 5.0 signal handling doesn't like SIGINT... */ 25 #endif 26 27 #ifdef _DCC 28 #include <stdlib.h> 29 # define _SIZE_T 30 # define DCC30_BUG /* A bitfield bug (from dog.c, others) in DICE 3.0. */ 31 #endif 32 33 typedef long off_t; 34 35 #define MICRO /* must be defined to allow some inclusions */ 36 37 /* data librarian defs */ 38 #define DLBFILE "NetHack:nhdat" /* main library */ 39 #define DLBFILE2 "NetHack:nhsdat" /* sound library */ 40 #define FILENAME_CMP stricmp /* case insensitive */ 41 42 #ifndef __SASC_60 43 # define O_BINARY 0 44 #endif 45 46 /* Compile in New Intuition look for 2.0 */ 47 #ifdef IDCMP_CLOSEWINDOW 48 # ifndef INTUI_NEW_LOOK 49 # define INTUI_NEW_LOOK 1 50 # endif 51 #endif 52 53 #define MFLOPPY /* You'll probably want this; provides assistance 54 * for typical personal computer configurations 55 */ 56 #define RANDOM 57 58 /* ### amidos.c ### */ 59 60 extern void FDECL(nethack_exit, (int)); 61 62 /* ### amiwbench.c ### */ 63 64 extern void NDECL(ami_wbench_init); 65 extern void NDECL(ami_wbench_args); 66 extern int FDECL(ami_wbench_getsave, (int)); 67 extern void FDECL(ami_wbench_unlink, (char *)); 68 extern int FDECL(ami_wbench_iconsize, (char *)); 69 extern void FDECL(ami_wbench_iconwrite, (char *)); 70 extern int FDECL(ami_wbench_badopt, (const char *)); 71 extern void NDECL(ami_wbench_cleanup); 72 extern void FDECL(getlind, (const char *,char *,const char *)); 73 74 /* ### winreq.c ### */ 75 76 extern void amii_setpens(int); 77 78 extern void FDECL(exit, (int)); 79 extern void NDECL(CleanUp); 80 extern void FDECL(Abort, (long)); 81 extern int NDECL(getpid); 82 extern char *FDECL(CopyFile, (const char *, const char *)); 83 extern int NDECL(kbhit); 84 extern int NDECL(WindowGetchar); 85 extern void FDECL(ami_argset, (int *, char *[])); 86 extern void FDECL(ami_mkargline, (int *, char **[])); 87 extern void ami_wininit_data(void); 88 89 extern boolean FromWBench; /* how were we run? */ 90 extern int ami_argc; 91 extern char **ami_argv; 92 93 #ifndef MICRO_H 94 #include "micro.h" 95 #endif 96 97 #ifndef PCCONF_H 98 #include "pcconf.h" /* remainder of stuff is almost same as the PC */ 99 #endif 100 101 #define remove(x) unlink(x) 102 103 /* DICE wants rewind() to return void. We want it to return int. */ 104 #ifdef _DCC 105 # define rewind(f) fseek(f, 0, 0) 106 #endif 107 108 #ifdef AZTEC_C 109 extern FILE *FDECL(freopen, (const char *, const char *, FILE *)); 110 extern char *FDECL(gets, (char *)); 111 #endif 112 113 #define msmsg printf 114 115 /* 116 * If AZTEC_C we can't use the long cpath in vision.c.... 117 */ 118 #ifdef AZTEC_C 119 # undef MACRO_CPATH 120 #endif 121 122 /* 123 * (Possibly) configurable Amiga options: 124 */ 125 126 #define TEXTCOLOR /* Use colored monsters and objects */ 127 #define HACKFONT /* Use special hack.font */ 128 #define SHELL /* Have a shell escape command (!) */ 129 #define MAIL /* Get mail at unexpected occasions */ 130 #define DEFAULT_ICON "NetHack:default.icon" /* private icon */ 131 #define AMIFLUSH /* toss typeahead (select flush in .cnf) */ 132 /* #define OPT_DISPMAP /* enable fast_map option */ 133 134 /* new window system options */ 135 /* WRONG - AMIGA_INTUITION should go away */ 136 #ifdef AMII_GRAPHICS 137 # define AMIGA_INTUITION /* high power graphics interface (amii) */ 138 #endif 139 140 #define CHANGE_COLOR 1 141 142 #ifdef TEXTCOLOR 143 # define DEPTH 6 /* Maximum depth of the screen allowed */ 144 #else 145 # define DEPTH 2 /* Four colors...sigh... */ 146 #endif 147 148 #define AMII_MAXCOLORS (1L<<DEPTH) 149 typedef unsigned short AMII_COLOR_TYPE; 150 151 #define PORT_HELP "nethack:amii.hlp" 152 153 #undef TERMLIB 154 155 #define AMII_MUFFLED_VOLUME 40 156 #define AMII_SOFT_VOLUME 50 157 #define AMII_OKAY_VOLUME 60 158 #define AMII_LOUDER_VOLUME 80 159 160 #ifdef TTY_GRAPHICS 161 # define ANSI_DEFAULT 162 #endif 163 164 extern int amibbs; /* BBS mode? */ 165 166 #ifdef AMII_GRAPHICS 167 extern int amii_numcolors; 168 void FDECL( amii_setpens, (int) ); 169 #endif 170 171 /* for cmd.c: override version in micro.h */ 172 #ifdef __SASC_60 173 # undef M 174 # define M(c) ((c) - 128 ) 175 #endif 176 177 #endif /* AMICONF_H */ 178