diff --git a/src/amath.h b/src/amath.h index 3f6d7e8d..a5f508a7 100644 --- a/src/amath.h +++ b/src/amath.h @@ -29,104 +29,81 @@ #ifndef AMATH_H #define AMATH_H -/******************************************************************************/ -#ifdef __AMIGA__ + +/* Operating System */ +#if defined(__AMIGA__) # define SYS_NAME "AmigaOS 3" # ifndef AOS3 # define AOS3 # endif -#endif -/******************************************************************************/ -#ifdef __AROS__ -# define SYS_NAME "Aros" -# ifndef AROS -# define AROS -# endif -#endif -/******************************************************************************/ -#ifdef __MORPHOS__ +#elif defined(__MORPHOS__) # define SYS_NAME "MorphOS" # ifndef MORPHOS # define MORPHOS # endif -#endif -/******************************************************************************/ -#ifdef __amigaos4__ +#elif defined(__AROS__) +# define SYS_NAME "AROS" +# ifndef AROS +# define AROS +# endif +#elif defined(__amigaos4__) # define SYS_NAME "AmigaOS 4" # ifndef AOS4 # define AOS4 # endif -#endif -/******************************************************************************/ -#ifdef __HAIKU__ +#elif defined(__HAIKU__) # define SYS_NAME "Haiku" # ifndef HAIKU # define HAIKU # endif -#endif -/******************************************************************************/ -#ifdef __APPLE__ +#elif defined(__APPLE__) && defined(__MACH__) # define SYS_NAME "Apple" # ifndef APPLE # define APPLE # endif -#endif -/******************************************************************************/ -#ifdef __FreeBSD__ +#elif defined(__FreeBSD__) # define SYS_NAME "FreeBSD" # ifndef FREEBSD # define FREEBSD # endif -#endif -/******************************************************************************/ -#ifdef __NetBSD__ +#elif defined(__NetBSD__) # define SYS_NAME "NetBSD" # ifndef NETBSD # define NETBSD # endif -#endif -/******************************************************************************/ -#ifdef __OpenBSD__ +#elif defined(__OpenBSD__) # define SYS_NAME "OpenBSD" # ifndef OPENBSD # define OPENBSD # endif -#endif -/******************************************************************************/ -#ifdef __DragonFly__ +#elif defined(__DragonFly__) # define SYS_NAME "DragonFly BSD" # ifndef DRAGONFLY # define DRAGONFLY # endif -#endif -/******************************************************************************/ -#ifdef __linux__ +#elif defined(__linux__) # define SYS_NAME "Linux" # ifndef LINUX # define LINUX # endif -#endif -/******************************************************************************/ -#ifdef _WIN32 +#elif defined(_WIN32) # define SYS_NAME "Windows" # ifndef WINDOWS # define WINDOWS # endif -#endif -/******************************************************************************/ -#ifdef _WIN64 +#elif defined(_WIN64) # define SYS_NAME "Windows 64 bit" # ifndef WINDOWS # define WINDOWS # endif #endif -/******************************************************************************/ + #if defined(AOS3) || defined(AOS4) || defined(AROS) || defined (MORPHOS) # ifndef AMIGA # define AMIGA # endif #endif -/******************************************************************************/ + #if defined(unix) || defined(__unix__) || defined(__unix) # ifndef UNIX # define UNIX @@ -135,7 +112,7 @@ # define SYS_NAME "Unix variant" # endif #endif -/******************************************************************************/ + #if defined(HAIKU) || defined(UNIX) || defined(APPLE) # ifndef TERMIOS # define TERMIOS @@ -143,39 +120,38 @@ # include # include #endif -/******************************************************************************/ + #if defined(WINDOWS) # include #endif -/******************************************************************************/ + #if defined(AROS) || defined(MORPHOS) || defined(AOS4) # include # include #endif -/******************************************************************************/ + #if defined(AOS3) # include -# define IPTR LONG* # define uintptr_t uint32_t typedef u_int8_t uint8_t; typedef u_int16_t uint16_t; typedef u_int32_t uint32_t; typedef u_int64_t uint64_t; #endif -/******************************************************************************/ + #if (__cplusplus <= 199711L && !defined(WINDOWS)) || !defined(__cplusplus) -#ifndef nullptr -#define nullptr 0 -#endif +# ifndef nullptr +# define nullptr 0 +# endif #elif (__cplusplus <= 199711L) && (defined(__GNUC__) || defined(__GNUG__)) -#ifndef nullptr -#define nullptr 0 +# ifndef nullptr +# define nullptr 0 +# endif #endif -#endif -/******************************************************************************/ + #define assert(x) -/******************************************************************************/ -/* Compilers*/ + +/* Compilers */ #if defined(__clang__) /* Clang */ # if defined(__apple_build_version__) @@ -228,7 +204,9 @@ typedef u_int64_t uint64_t; # elif (_MSC_VER == 1900) # define COMP_VERS "14.0" # elif (_MSC_VER > 1900) -# define COMP_VERS "15.0+" +# define COMP_VERS "15.x" +# elif (_MSC_VER > 1920) +# define COMP_VERS "16.0+" # else # define str(x) #x # define MSC_VER_STR(x) str(x) @@ -261,11 +239,11 @@ typedef u_int64_t uint64_t; # define COMP_VERS GCC_VER_STR(__GNUC__) DOT GCC_VER_STR(__GNUC_MINOR__) # endif #endif -/******************************************************************************/ + #define EMPTYSTRING "" #define SPACE " " #define DOT "." -/******************************************************************************/ + #if defined(WINDOWS) #define NEWLINE "\r\n" #elif defined(APPLE) @@ -273,17 +251,17 @@ typedef u_int64_t uint64_t; #else #define NEWLINE "\n" #endif -/******************************************************************************/ + #ifndef __cplusplus typedef int bool; #define true 1 #define false 0 #endif -/******************************************************************************/ + #define LONG_BIT 32 #define wsize sizeof(unsigned int) #define wmask (wsize - 1) -/******************************************************************************/ + #if defined(INTELCPU) || defined(i386) || defined(i486) || \ defined(intel) || defined(x86) || defined(i86pc) || \ defined(__i386__) || defined(_M_IX86) @@ -295,18 +273,18 @@ typedef int bool; #if defined(__x86_64__) || defined(_M_AMD64) # define TXTCPU "amd64" #endif -/******************************************************************************/ + #if defined(__powerpc__) || defined(__powerpc64__) # define TXTCPU "PowerPC" #endif -/******************************************************************************/ + #if defined(__arm__) || defined(_M_ARM) || defined(__ARM_ARCH_6__) # define TXTCPU "arm" #endif #if defined(__aarch64__) || defined(_M_ARM64) # define TXTCPU "arm64" #endif -/******************************************************************************/ + #if defined(m68060) || defined(mc68060) # define TXTCPU "68060" #elif defined(m68040) || defined(mc68040) @@ -320,33 +298,33 @@ typedef int bool; #elif defined(m68000) || defined(mc68000) # define TXTCPU "68000+" #endif -/******************************************************************************/ + #ifndef TXTCPU //#error what cpu is this ?! # define TXTCPU EMPTYSTRING #endif -/******************************************************************************/ + #if defined(TXTCPU) && defined(__HAVE_68881__) # define TXTFPU SPACE "FPU" #else # define TXTFPU EMPTYSTRING #endif -/******************************************************************************/ + #define TXTARCH TXTCPU TXTFPU #define RELDATESTAMP "(11-01-2021)" #define TXTDOSVERSION "\0$VER: amath 1.90" SPACE RELDATESTAMP SPACE TXTARCH #define TXTTITLE "amath version 1.9.0" #define TXTCOPYRIGHT "(c) 2021 Carsten Sonne Larsen" #define TXTSTARTMSG TXTTITLE SPACE TXTCOPYRIGHT -/******************************************************************************/ + #define TXTVERSMSG TXTTITLE SPACE RELDATESTAMP SPACE TXTARCH #define TXTCOMPMSG "Compiled with " COMP_NAME SPACE COMP_VERS -/******************************************************************************/ + #ifdef SYS_NAME # define TXTSYSMSG TXTCOMPMSG " for " SYS_NAME # define SYSKNOWN 1 #else # define TXTSYSMSG TXTCOMPMSG #endif -/******************************************************************************/ + #endif