OSDN Git Service

shrink mine
[nethackexpress/trunk.git] / include / amiconf.h
1 /*      SCCS Id: @(#)amiconf.h  3.4     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 #ifndef __GNUC__
34 typedef long off_t;
35 #endif
36
37 #define MICRO           /* must be defined to allow some inclusions */
38
39 #define NOCWD_ASSUMPTIONS       /* Allow paths to be specified for HACKDIR,
40                                    LEVELDIR, SAVEDIR, BONESDIR, DATADIR,
41                                    SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
42
43 /* data librarian defs */
44 #ifndef NOCWD_ASSUMPTIONS
45 # define DLBFILE        "NetHack:nhdat"         /* main library */
46 # define DLBFILE2       "NetHack:nhsdat"        /* sound library */
47 #else
48 # define DLBFILE        "nhdat"                 /* main library */
49 # define DLBFILE2       "nhsdat"                /* sound library */
50 #endif
51
52 #define FILENAME_CMP    stricmp                 /* case insensitive */
53
54 #ifndef __SASC_60
55 # define O_BINARY       0
56 #endif
57
58 /* Compile in New Intuition look for 2.0 */
59 #ifdef  IDCMP_CLOSEWINDOW
60 # ifndef INTUI_NEW_LOOK
61 #  define       INTUI_NEW_LOOK  1
62 # endif
63 #endif
64
65 #define MFLOPPY         /* You'll probably want this; provides assistance
66                          * for typical personal computer configurations
67                          */
68 #define RANDOM
69
70 /* ### amidos.c ### */
71
72 extern void  FDECL(nethack_exit, (int));
73
74 /* ### amiwbench.c ### */
75
76 extern void NDECL(ami_wbench_init);
77 extern void NDECL(ami_wbench_args);
78 extern int FDECL(ami_wbench_getsave, (int));
79 extern void FDECL(ami_wbench_unlink, (char *));
80 extern int FDECL(ami_wbench_iconsize, (char *));
81 extern void FDECL(ami_wbench_iconwrite, (char *));
82 extern int FDECL(ami_wbench_badopt, (const char *));
83 extern void NDECL(ami_wbench_cleanup);
84 extern void FDECL(getlind, (const char *,char *,const char *));
85
86 /* ### winreq.c ### */
87
88 extern void amii_setpens(int);
89
90 extern void FDECL(exit, (int));
91 extern void NDECL(CleanUp);
92 extern void FDECL(Abort, (long));
93 extern int NDECL(getpid);
94 extern char *FDECL(CopyFile, (const char *, const char *));
95 extern int NDECL(kbhit);
96 extern int NDECL(WindowGetchar);
97 extern void FDECL(ami_argset, (int *, char *[]));
98 extern void FDECL(ami_mkargline, (int *, char **[]));
99 extern void ami_wininit_data(void);
100
101 #define FromWBench 0 /* A hint for compiler ... */
102 /* extern boolean FromWBench;   /* how were we run? */
103 extern int ami_argc;
104 extern char **ami_argv;
105
106 #ifndef MICRO_H
107 #include "micro.h"
108 #endif
109
110 #ifndef PCCONF_H
111 #include "pcconf.h"     /* remainder of stuff is almost same as the PC */
112 #endif
113
114 #define remove(x)       unlink(x)
115
116 /* DICE wants rewind() to return void.  We want it to return int. */
117 #if defined(_DCC) || defined(__GNUC__)
118 # define rewind(f)      fseek(f, 0, 0)
119 #endif
120
121 #ifdef AZTEC_C
122 extern FILE *FDECL(freopen, (const char *, const char *, FILE *));
123 extern char *FDECL(gets, (char *));
124 #endif
125
126 #define msmsg           printf
127
128 /*
129  * If AZTEC_C  we can't use the long cpath in vision.c....
130  */
131 #ifdef AZTEC_C
132 # undef MACRO_CPATH
133 #endif
134
135 /*
136  *  (Possibly) configurable Amiga options:
137  */
138
139 #define TEXTCOLOR               /* Use colored monsters and objects */
140 #define HACKFONT                /* Use special hack.font */
141 #define SHELL                   /* Have a shell escape command (!) */
142 #define MAIL                    /* Get mail at unexpected occasions */
143 #define DEFAULT_ICON "NetHack:default.icon"     /* private icon */
144 #define AMIFLUSH                /* toss typeahead (select flush in .cnf) */
145 /* #define OPT_DISPMAP          /* enable fast_map option */
146
147 /* new window system options */
148                         /* WRONG - AMIGA_INTUITION should go away */
149 #ifdef AMII_GRAPHICS
150 # define AMIGA_INTUITION        /* high power graphics interface (amii) */
151 #endif
152
153 #define CHANGE_COLOR    1
154
155 #ifdef  TEXTCOLOR
156 #  define       DEPTH   6       /* Maximum depth of the screen allowed */
157 #else
158 # define        DEPTH   2       /* Four colors...sigh... */
159 #endif
160
161 #define AMII_MAXCOLORS  (1L<<DEPTH)
162 typedef unsigned short AMII_COLOR_TYPE;
163
164 #define PORT_HELP       "nethack:amii.hlp"
165
166 #undef  TERMLIB
167
168 #define AMII_MUFFLED_VOLUME     40
169 #define AMII_SOFT_VOLUME        50
170 #define AMII_OKAY_VOLUME        60
171 #define AMII_LOUDER_VOLUME      80
172
173 #ifdef TTY_GRAPHICS
174 # define ANSI_DEFAULT
175 #endif
176
177 extern int amibbs;      /* BBS mode? */
178
179 #ifdef AMII_GRAPHICS
180 extern int amii_numcolors;
181 void FDECL( amii_setpens, (int) );
182 #endif
183
184 /* for cmd.c: override version in micro.h */
185 #ifdef __SASC_60
186 # undef M
187 # define M(c) ((c) - 128 )
188 #endif
189
190 #endif /* AMICONF_H */