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