1 #ifndef WINUAE_SYSCONFIG_H
2 #define WINUAE_SYSCONFIG_H
3 
4 
5 /* This define disable compilation of Amiga's specific parts in the cpu core */
6 /* when compiling Hatari */
7 #define WINUAE_FOR_HATARI
8 
9 
10 #ifndef WINUAE_FOR_HATARI
11 #pragma warning (disable : 4761)
12 #pragma warning (disable : 4996)
13 #pragma warning (disable : 4018)
14 
15 #define DIRECTINPUT_VERSION  0x0800
16 #define DIRECT3D_VERSION 0x0900
17 #define SUPPORT_THREADS
18 #define MAX_DPATH 1000
19 
20 #define DRIVESOUND
21 #define GFXFILTER
22 #define X86_MSVC_ASSEMBLY
23 #define OPTIMIZED_FLAGS
24 #define MSVC_LONG_DOUBLE
25 #ifndef __i386__
26 #define __i386__
27 #endif
28 #define WINDOWS
29 #define ZLIB_WINAPI
30 #define PACKAGE_STRING "WinUAE"
31 #else	/* ! WINUAE_FOR_HATARI */
32 #define MAX_DPATH 1000
33 #endif	/* ! WINUAE_FOR_HATARI */
34 
35 #ifndef UAE_MINI
36 
37 #define DEBUGGER
38 #define FILESYS /* filesys emulation */
39 #define UAE_FILESYS_THREADS
40 //#define AUTOCONFIG /* autoconfig support, fast ram, harddrives etc.. */
41 //#define JIT /* JIT compiler support */
42 //#define USE_JIT_FPU
43 #define NATMEM_OFFSET natmem_offset
44 #define USE_NORMAL_CALLING_CONVENTION 0
45 #define USE_X86_FPUCW 1
46 #define WINDDK /* Windows DDK available, keyboard leds and harddrive support */
47 #define CATWEASEL /* Catweasel MK2/3 support */
48 #define AHI /* AHI sound emulation */
49 #define ENFORCER /* UAE Enforcer */
50 #define ECS_DENISE /* ECS DENISE new features */
51 #define AGA /* AGA chipset emulation (ECS_DENISE must be enabled) */
52 #define CD32 /* CD32 emulation */
53 #define CDTV /* CDTV emulation */
54 #define D3D /* D3D display filter support */
55 //#define OPENGL /* OpenGL display filter support */
56 #define PARALLEL_PORT /* parallel port emulation */
57 #define PARALLEL_DIRECT /* direct parallel port emulation */
58 #define SERIAL_PORT /* serial port emulation */
59 #define SERIAL_ENET /* serial port UDP transport */
60 #define SCSIEMU /* uaescsi.device emulation */
61 #define UAESERIAL /* uaeserial.device emulation */
62 #define FPUEMU /* FPU emulation */
63 #define FPU_UAE
64 #define MMUEMU /* Aranym 68040 MMU */
65 #define FULLMMU /* Aranym 68040 MMU */
66 #define CPUEMU_0 /* generic 680x0 emulation */
67 #define CPUEMU_11 /* 68000/68010 prefetch emulation */
68 #define CPUEMU_13 /* 68000/68010 cycle-exact cpu&blitter */
69 #define CPUEMU_20 /* 68020 prefetch */
70 #define CPUEMU_21 /* 68020 "cycle-exact" + blitter */
71 #define CPUEMU_22 /* 68030 prefetch */
72 #define CPUEMU_23 /* 68030 "cycle-exact" + blitter */
73 #define CPUEMU_24 /* 68060 "cycle-exact" + blitter */
74 #define CPUEMU_25 /* 68040 "cycle-exact" + blitter */
75 #define CPUEMU_31 /* Aranym 68040 MMU */
76 #define CPUEMU_32 /* Previous 68030 MMU */
77 #define CPUEMU_33 /* 68060 MMU */
78 #define CPUEMU_34 /* 68030 MMU + cache */
79 #define CPUEMU_35 /* 68030 MMU + cache + CE */
80 #define CPUEMU_40 /* generic 680x0 with JIT direct memory access */
81 #define CPUEMU_50 /* generic 680x0 with indirect memory access */
82 //#define ACTION_REPLAY /* Action Replay 1/2/3 support */
83 #define PICASSO96 /* Picasso96 display card emulation */
84 #define UAEGFX_INTERNAL /* built-in libs:picasso96/uaegfx.card */
85 #define BSDSOCKET /* bsdsocket.library emulation */
86 #define CAPS /* CAPS-image support */
87 #define SCP /* SuperCardPro */
88 #define FDI2RAW /* FDI 1.0 and 2.x image support */
89 #define AVIOUTPUT /* Avioutput support */
90 #define PROWIZARD /* Pro-Wizard module ripper */
91 #define ARCADIA /* Arcadia arcade system */
92 #define ARCHIVEACCESS /* ArchiveAccess decompression library */
93 #define LOGITECHLCD /* Logitech G15 LCD */
94 #define SAVESTATE /* State file support */
95 #define A2091 /* A590/A2091 SCSI */
96 #define A2065 /* A2065 Ethernet card */
97 #define GFXBOARD /* Hardware graphics board */
98 #define NCR /* A4000T/A4091, 53C710/53C770 SCSI */
99 #define NCR9X /* 53C9X SCSI */
100 #define SANA2 /* SANA2 network driver */
101 #define AMAX /* A-Max ROM adapater emulation */
102 #define RETROPLATFORM /* Cloanto RetroPlayer support */
103 #ifndef WINUAE_FOR_HATARI
104 #define WITH_CHD
105 #define WITH_LUA /* lua scripting */
106 #define WITH_UAENATIVE
107 #define WITH_SLIRP
108 #define WITH_BUILTIN_SLIRP
109 #define WITH_TABLETLIBRARY
110 #define WITH_UAENET_PCAP
111 #define WITH_PPC
112 #define WITH_QEMU_CPU
113 #define WITH_TOCCATA
114 #define WITH_PCI
115 #define WITH_X86
116 #define WITH_THREADED_CPU
117 #endif /* ! WINUAE_FOR_HATARI */
118 
119 #else
120 
121 /* #define SINGLEFILE */
122 
123 #define CUSTOM_SIMPLE /* simplified custom chipset emulation */
124 #define CPUEMU_0
125 #define CPUEMU_68000_ONLY /* drop 68010+ commands from CPUEMU_0 */
126 #define ADDRESS_SPACE_24BIT
127 #ifndef UAE_NOGUI
128 #define D3D
129 #define OPENGL
130 #endif
131 #define CAPS
132 #define CPUEMU_13
133 #define CPUEMU_11
134 
135 
136 #endif
137 
138 #define WITH_SCSI_IOCTL
139 #define WITH_SCSI_SPTI
140 
141 #define A_ZIP
142 #define A_RAR
143 #define A_7Z
144 #define A_LHA
145 #define A_LZX
146 #define A_DMS
147 #define A_WRP
148 
149 #ifndef WINUAE_FOR_HATARI
150 #ifndef PATH_MAX
151 #define PATH_MAX 256
152 #endif
153 #endif /* ! WINUAE_FOR_HATARI */
154 
155 #define UAE_RAND_MAX RAND_MAX
156 
157 #ifndef GFXFILTER
158 #undef OPENGL
159 #undef D3D
160 #endif
161 
162 #ifdef _DEBUG
163 #define _CRTDBG_MAP_ALLOC
164 #include <stdlib.h>
165 #include <crtdbg.h>
166 #endif
167 
168 #include <stdint.h>
169 
170 #ifdef WIN64
171 #undef X86_MSVC_ASSEMBLY_MEMACCESS
172 #undef X86_MSVC_ASSEMBLY
173 #define X64_MSVC_ASSEMBLY
174 #define SIZEOF_VOID_P 8
175 #else
176 #define SIZEOF_VOID_P 4
177 #endif
178 
179 #if !defined(AHI)
180 #undef ENFORCER
181 #endif
182 
183 typedef long uae_atomic;
184 
185 #ifndef WINUAE_FOR_HATARI
186 /* src/sysconfig.h.  Generated automatically by configure.  */
187 /* src/sysconfig.h.in.  Generated automatically from configure.in by autoheader.  */
188 
189 /* Define if on AIX 3.
190    System headers sometimes define this.
191    We just want to avoid a redefinition error message.  */
192 #ifndef _ALL_SOURCE
193 /* #undef _ALL_SOURCE */
194 #endif
195 
196 /* Define to empty if the keyword does not work.  */
197 /* #undef const */
198 
199 /* Define if you have the getmntent function.  */
200 /* #undef HAVE_GETMNTENT */
201 
202 /* Define if your struct stat has st_blocks.  */
203 /* #undef HAVE_ST_BLOCKS */
204 #endif /* ! WINUAE_FOR_HATARI */
205 
206 /* Define if utime(file, NULL) sets file's timestamp to the present.  */
207 #define HAVE_UTIME_NULL 1
208 
209 /* Define as __inline if that's what the C compiler calls it.  */
210 /* #undef inline */
211 #define __inline__ __inline
212 #define __volatile__ volatile
213 
214 #ifndef WINUAE_FOR_HATARI
215 /* Define to `int' if <sys/types.h> doesn't define.  */
216 /* #undef mode_t */
217 #define mode_t int
218 
219 /* Define to `long' if <sys/types.h> doesn't define.  */
220 /* #undef off_t */
221 
222 /* Define to `int' if <sys/types.h> doesn't define.  */
223 /* #undef pid_t */
224 
225 /* Define if you need to in order for stat and other things to work.  */
226 /* #undef _POSIX_SOURCE */
227 #endif /* ! WINUAE_FOR_HATARI */
228 
229 /* Define as the return type of signal handlers (int or void).  */
230 #define RETSIGTYPE void
231 
232 /* Define if you have the ANSI C header files.  */
233 #define STDC_HEADERS 1
234 
235 /* Define if you can safely include both <sys/time.h> and <time.h>.  */
236 #ifdef __GNUC__
237 #define TIME_WITH_SYS_TIME 1
238 #endif
239 
240 #ifdef _WIN32_WCE
241 #define NO_TIME_H 1
242 #endif
243 
244 /* Define if your <sys/time.h> declares struct tm.  */
245 /* #undef TM_IN_SYS_TIME */
246 
247 /* Define if the X Window System is missing or not being used.  */
248 #define X_DISPLAY_MISSING 1
249 
250 #ifndef WINUAE_FOR_HATARI
251 /* Define if you have the Andrew File System.  */
252 /* #undef AFS */
253 
254 /* Define if there is no specific function for reading the list of
255    mounted filesystems.  fread will be used to read /etc/mnttab.  [SVR2]  */
256 /* #undef MOUNTED_FREAD */
257 
258 /* Define if (like SVR2) there is no specific function for reading the
259    list of mounted filesystems, and your system has these header files:
260    <sys/fstyp.h> and <sys/statfs.h>.  [SVR3]  */
261 /* #undef MOUNTED_FREAD_FSTYP */
262 
263 /* Define if there is a function named getfsstat for reading the list
264    of mounted filesystems.  [DEC Alpha running OSF/1]  */
265 /* #undef MOUNTED_GETFSSTAT */
266 
267 /* Define if there is a function named getmnt for reading the list of
268    mounted filesystems.  [Ultrix]  */
269 /* #undef MOUNTED_GETMNT */
270 
271 /* Define if there is a function named getmntent for reading the list
272    of mounted filesystems, and that function takes a single argument.
273    [4.3BSD, SunOS, HP-UX, Dynix, Irix]  */
274 /* #undef MOUNTED_GETMNTENT1 */
275 
276 /* Define if there is a function named getmntent for reading the list of
277    mounted filesystems, and that function takes two arguments.  [SVR4]  */
278 /* #undef MOUNTED_GETMNTENT2 */
279 
280 /* Define if there is a function named getmntinfo for reading the list
281    of mounted filesystems.  [4.4BSD]  */
282 /* #undef MOUNTED_GETMNTINFO */
283 
284 /* Define if there is a function named listmntent that can be used to
285    list all mounted filesystems. [UNICOS] */
286 /* #undef MOUNTED_LISTMNTENT */
287 
288 /* Define if there is a function named mntctl that can be used to read
289    the list of mounted filesystems, and there is a system header file
290    that declares `struct vmount.'  [AIX]  */
291 /* #undef MOUNTED_VMOUNT */
292 
293 /*  Define if  statfs takes 3 args.  [DEC Alpha running OSF/1]  */
294 /* #undef STAT_STATFS3_OSF1 */
295 
296 /* Define if there is no specific function for reading filesystems usage
297    information and you have the <sys/filsys.h> header file.  [SVR2]  */
298 /* #undef STAT_READ_FILSYS */
299 
300 /* Define if statfs takes 2 args and struct statfs has a field named f_bsize.
301    [4.3BSD, SunOS 4, HP-UX, AIX PS/2]  */
302 /* #undef STAT_STATFS2_BSIZE */
303 
304 /* Define if statfs takes 2 args and struct statfs has a field named f_fsize.
305    [4.4BSD, NetBSD]  */
306 /* #undef STAT_STATFS2_FSIZE */
307 
308 /* Define if statfs takes 2 args and the second argument has
309    type struct fs_data.  [Ultrix]  */
310 /* #undef STAT_STATFS2_FS_DATA */
311 
312 /* Define if statfs takes 4 args.  [SVR3, Dynix, Irix, Dolphin]  */
313 /* #undef STAT_STATFS4 */
314 
315 /* Define if there is a function named statvfs.  [SVR4]  */
316 /* #undef STAT_STATVFS */
317 
318 /* Define if the block counts reported by statfs may be truncated to 2GB
319    and the correct values may be stored in the f_spare array.
320    [SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
321    SunOS 4.1.1 seems not to be affected.]  */
322 /* #undef STATFS_TRUNCATES_BLOCK_COUNTS */
323 #endif /* ! WINUAE_FOR_HATARI */
324 
325 /* The number of bytes in a __int64.  */
326 #define SIZEOF___INT64 8
327 
328 /* The number of bytes in a char.  */
329 #define SIZEOF_CHAR 1
330 
331 /* The number of bytes in a int.  */
332 #define SIZEOF_INT 4
333 
334 /* The number of bytes in a long.  */
335 #define SIZEOF_LONG 4
336 
337 /* The number of bytes in a long long.  */
338 #define SIZEOF_LONG_LONG 8
339 
340 /* The number of bytes in a short.  */
341 #define SIZEOF_SHORT 2
342 
343 #define SIZEOF_FLOAT 4
344 #define SIZEOF_DOUBLE 8
345 
346 #define HAVE_ISNAN
347 #undef HAVE_ISINF
348 //#define isnan _isnan
349 
350 #ifndef WINUAE_FOR_HATARI
351 #ifndef LT_MODULE_EXT
352 #define LT_MODULE_EXT _T(".dll")
353 #endif
354 #endif /* ! WINUAE_FOR_HATARI */
355 
356 /* Define if you have the bcopy function.  */
357 /* #undef HAVE_BCOPY */
358 
359 /* Define if you have the cfmakeraw function.  */
360 /* #undef HAVE_CFMAKERAW */
361 
362 /* Define if you have the endgrent function.  */
363 /* #undef HAVE_ENDGRENT */
364 
365 /* Define if you have the endpwent function.  */
366 /* #undef HAVE_ENDPWENT */
367 
368 /* Define if you have the fchdir function.  */
369 /* #undef HAVE_FCHDIR */
370 
371 /* Define if you have the ftime function.  */
372 /* #undef HAVE_FTIME */
373 
374 /* Define if you have the ftruncate function.  */
375 /* #undef HAVE_FTRUNCATE */
376 
377 /* Define if you have the getcwd function.  */
378 #define HAVE_GETCWD 1
379 
380 /* Define if you have the getmntinfo function.  */
381 /* #undef HAVE_GETMNTINFO */
382 
383 /* Define if you have the getopt function.  */
384 /* #undef HAVE_GETOPT */
385 
386 /* Define if you have the gettimeofday function.  */
387 #ifndef _WIN32_WCE
388 //#define HAVE_GETTIMEOFDAY
389 #endif
390 
391 /* Define if you have the isascii function.  */
392 /* #undef HAVE_ISASCII */
393 
394 /* Define if you have the lchown function.  */
395 /* #undef HAVE_LCHOWN */
396 
397 /* Define if you have the listmntent function.  */
398 /* #undef HAVE_LISTMNTENT */
399 
400 /* Define if you have the memcpy function.  */
401 /* #undef HAVE_MEMCPY */
402 
403 /* Define if you have the mkdir function.  */
404 #define HAVE_MKDIR 1
405 
406 /* Define if you have the mkfifo function.  */
407 /* #undef HAVE_MKFIFO */
408 
409 /* Define if you have the readdir_r function.  */
410 /* #undef HAVE_READDIR_R */
411 
412 /* Define if you have the rmdir function.  */
413 #define HAVE_RMDIR 1
414 
415 /* Define if you have the select function.  */
416 /* #undef HAVE_SELECT */
417 
418 /* Define if you have the sigaction function.  */
419 /* #undef HAVE_SIGACTION */
420 
421 /* Define if you have the strchr function.  */
422 /* #undef HAVE_STRCHR */
423 
424 /* Define if you have the strdup function.  */
425 #define HAVE_STRDUP 1
426 
427 /* Define if you have the strerror function.  */
428 #define HAVE_STRERROR 1
429 
430 /* Define if you have the strrchr function.  */
431 /* #undef HAVE_STRRCHR */
432 
433 /* Define if you have the strstr function.  */
434 #define HAVE_STRSTR 1
435 
436 /* Define if you have the tcgetattr function.  */
437 /* #undef HAVE_TCGETATTR */
438 
439 /* Define if you have the vfprintf function.  */
440 #define HAVE_VFPRINTF 1
441 
442 /* Define if you have the vprintf function.  */
443 #define HAVE_VPRINTF 1
444 
445 /* Define if you have the vsprintf function.  */
446 #define HAVE_VSPRINTF 1
447 
448 /* Define if you have the <curses.h> header file.  */
449 /* #undef HAVE_CURSES_H */
450 
451 /* Define if you have the <cybergraphx/cybergraphics.h> header file.  */
452 /* #undef HAVE_CYBERGRAPHX_CYBERGRAPHICS_H */
453 
454 /* Define if you have the <ddraw.h> header file.  */
455 #ifndef _WIN32_WCE
456 #define HAVE_DDRAW_H 1
457 #endif
458 
459 /* Define if you have the <devices/ahi.h> header file.  */
460 /* #undef HAVE_DEVICES_AHI_H */
461 
462 /* Define if you have the <dirent.h> header file.  */
463 /* #define HAVE_DIRENT_H 1 */
464 
465 /* Define if you have the <fcntl.h> header file.  */
466 #ifndef _WIN32_WCE
467 #define HAVE_FCNTL_H 1
468 #endif
469 
470 /* Define if you have the <features.h> header file.  */
471 /* #undef HAVE_FEATURES_H */
472 
473 /* Define if you have the <getopt.h> header file.  */
474 /* #undef HAVE_GETOPT_H */
475 
476 /* Define if you have the <ggi/libggi.h> header file.  */
477 /* #undef HAVE_GGI_LIBGGI_H */
478 
479 /* Define if you have the <libraries/cybergraphics.h> header file.  */
480 /* #undef HAVE_LIBRARIES_CYBERGRAPHICS_H */
481 
482 /* Define if you have the <machine/joystick.h> header file.  */
483 /* #undef HAVE_MACHINE_JOYSTICK_H */
484 
485 /* Define if you have the <machine/soundcard.h> header file.  */
486 /* #undef HAVE_MACHINE_SOUNDCARD_H */
487 
488 /* Define if you have the <mntent.h> header file.  */
489 /* #undef HAVE_MNTENT_H */
490 
491 /* Define if you have the <mnttab.h> header file.  */
492 /* #undef HAVE_MNTTAB_H */
493 
494 /* Define if you have the <ncurses.h> header file.  */
495 /* #undef HAVE_NCURSES_H */
496 
497 /* Define if you have the <ndir.h> header file.  */
498 /* #undef HAVE_NDIR_H */
499 
500 /* Define if you have the <posix_opt.h> header file.  */
501 /* #undef HAVE_POSIX_OPT_H */
502 
503 #ifndef _WIN32_WCE
504 /* Define if you have the <string.h> header file.  */
505 #define HAVE_STRING_H 1
506 #endif
507 
508 /* Define if you have the <strings.h> header file.  */
509 /* #undef HAVE_STRINGS_H */
510 
511 /* Define if you have the <sun/audioio.h> header file.  */
512 /* #undef HAVE_SUN_AUDIOIO_H */
513 
514 /* Define if you have the <sys/audioio.h> header file.  */
515 /* #undef HAVE_SYS_AUDIOIO_H */
516 
517 /* Define if you have the <sys/dir.h> header file.  */
518 /* #undef HAVE_SYS_DIR_H */
519 
520 /* Define if you have the <sys/filsys.h> header file.  */
521 /* #undef HAVE_SYS_FILSYS_H */
522 
523 /* Define if you have the <sys/fs/s5param.h> header file.  */
524 /* #undef HAVE_SYS_FS_S5PARAM_H */
525 
526 /* Define if you have the <sys/fs_types.h> header file.  */
527 /* #undef HAVE_SYS_FS_TYPES_H */
528 
529 /* Define if you have the <sys/fstyp.h> header file.  */
530 /* #undef HAVE_SYS_FSTYP_H */
531 
532 /* Define if you have the <sys/ioctl.h> header file.  */
533 /* #undef HAVE_SYS_IOCTL_H */
534 
535 /* Define if you have the <sys/ipc.h> header file.  */
536 /* #undef HAVE_SYS_IPC_H */
537 
538 /* Define if you have the <sys/mount.h> header file.  */
539 /* #undef HAVE_SYS_MOUNT_H */
540 
541 /* Define if you have the <sys/ndir.h> header file.  */
542 /* #undef HAVE_SYS_NDIR_H */
543 
544 /* Define if you have the <sys/param.h> header file.  */
545 /* #undef HAVE_SYS_PARAM_H */
546 
547 /* Define if you have the <sys/shm.h> header file.  */
548 /* #undef HAVE_SYS_SHM_H */
549 
550 /* Define if you have the <sys/soundcard.h> header file.  */
551 /* #undef HAVE_SYS_SOUNDCARD_H */
552 
553 /* Define if you have the <sys/stat.h> header file.  */
554 #ifndef _WIN32_WCE
555 #define HAVE_SYS_STAT_H 1
556 #endif
557 
558 /* Define if you have the <sys/statfs.h> header file.  */
559 /* #undef HAVE_SYS_STATFS_H */
560 
561 /* Define if you have the <sys/statvfs.h> header file.  */
562 /* #undef HAVE_SYS_STATVFS_H */
563 
564 /* Define if you have the <sys/termios.h> header file.  */
565 /* #undef HAVE_SYS_TERMIOS_H */
566 
567 /* Define if you have the <sys/time.h> header file.  */
568 #ifdef __GNUC__
569 #define HAVE_SYS_TIME_H 1
570 #endif
571 
572 /* Define if you have the <sys/types.h> header file.  */
573 #ifndef _WIN32_WCE
574 #define HAVE_SYS_TYPES_H 1
575 #endif
576 
577 /* Define if you have the <sys/utime.h> header file.  */
578 #ifndef _WIN32_WCE
579 //#define HAVE_SYS_UTIME_H 1
580 #endif
581 
582 /* Define if you have the <sys/vfs.h> header file.  */
583 /* #undef HAVE_SYS_VFS_H */
584 
585 /* Define if you have the <unistd.h> header file.  */
586 #ifdef __GNUC__
587 #define HAVE_UNISTD_H 1
588 #endif
589 
590 /* Define if you have the <utime.h> header file.  */
591 /* #undef HAVE_UTIME_H */
592 
593 /* Define if you have the <windows.h> header file.  */
594 #define HAVE_WINDOWS_H 1
595 
596 #define FSDB_DIR_SEPARATOR '\\'
597 #define FSDB_DIR_SEPARATOR_S _T("\\")
598 
599 /* Define to 1 if `S_un' is a member of `struct in_addr'. */
600 #define HAVE_STRUCT_IN_ADDR_S_UN 1
601 
602 #endif /* WINUAE_SYSCONFIG_H */
603