1 /***********************************************************
2 * Artsoft Retro-Game Library *
3 *----------------------------------------------------------*
4 * (c) 1994-2006 Artsoft Entertainment *
6 * Detmolder Strasse 189 *
9 * e-mail: info@artsoft.org *
10 *----------------------------------------------------------*
12 ***********************************************************/
17 /* ========================================================================= */
18 /* define main platform keywords */
19 /* ========================================================================= */
22 #define PLATFORM_MSDOS
23 #define PLATFORM_STRING "DOS"
24 #elif defined(WIN32) || defined(_WIN32)
25 #define PLATFORM_WIN32
26 #define PLATFORM_STRING "Windows"
29 #define PLATFORM_STRING "Unix"
33 /* ========================================================================= */
34 /* define additional platform keywords */
35 /* ========================================================================= */
39 #undef PLATFORM_STRING
40 #define PLATFORM_STRING "AIX"
43 #if defined(AMIGA) || defined(__AMIGA) || defined(__amigados__)
44 #define PLATFORM_AMIGA
45 #undef PLATFORM_STRING
46 #define PLATFORM_STRING "AmigaOS"
51 #undef PLATFORM_STRING
52 #define PLATFORM_STRING "BeOS"
55 #if defined(bsdi) || defined(__bsdi) || defined(__bsdi__)
58 #undef PLATFORM_STRING
59 #define PLATFORM_STRING "BSDI"
62 #if defined(_arch_dreamcast)
63 #define PLATFORM_DREAMCAST
64 #undef PLATFORM_STRING
65 #define PLATFORM_STRING "Dreamcast"
68 #if defined(__FreeBSD__) || defined(__DragonFly__)
69 #define PLATFORM_FREEBSD
71 #undef PLATFORM_STRING
72 #define PLATFORM_STRING "FreeBSD"
75 #if defined(hpux) || defined(__hpux) || defined(__hpux__)
77 #undef PLATFORM_STRING
78 #define PLATFORM_STRING "HP-UX"
81 #if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE)
83 #undef PLATFORM_STRING
84 #define PLATFORM_STRING "IRIX"
87 #if defined(linux) || defined(__linux) || defined(__linux__)
88 #define PLATFORM_LINUX
89 #undef PLATFORM_STRING
90 #define PLATFORM_STRING "Linux"
93 #if defined(__APPLE__) && defined(__MACH__)
94 #define PLATFORM_MACOSX
95 #undef PLATFORM_STRING
96 #define PLATFORM_STRING "Mac OS X"
99 #if defined(__NetBSD__)
100 #define PLATFORM_NETBSD
102 #undef PLATFORM_STRING
103 #define PLATFORM_STRING "NetBSD"
107 #define PLATFORM_NEXT
108 #undef PLATFORM_STRING
109 #define PLATFORM_STRING "NeXT"
112 #if defined(__OpenBSD__)
113 #define PLATFORM_OPENBSD
115 #undef PLATFORM_STRING
116 #define PLATFORM_STRING "OpenBSD"
121 #undef PLATFORM_STRING
122 #define PLATFORM_STRING "OS/2"
125 #if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE)
127 #undef PLATFORM_STRING
128 #define PLATFORM_STRING "OSF/1"
131 #if defined(__QNXNTO__)
133 #undef PLATFORM_STRING
134 #define PLATFORM_STRING "QNX"
137 #if defined(riscos) || defined(__riscos) || defined(__riscos__)
138 #define PLATFORM_RISCOS
139 #undef PLATFORM_STRING
140 #define PLATFORM_STRING "RISC OS"
143 #if defined(sparc) || defined(sun) || defined(__SVR4)
144 #define PLATFORM_SOLARIS
145 #undef PLATFORM_STRING
146 #define PLATFORM_STRING "Solaris"
149 #if defined(_WIN32_WCE)
150 #define PLATFORM_WINDOWS_CE
151 #undef PLATFORM_STRING
152 #define PLATFORM_STRING "Windows CE"
155 #if defined(__ANDROID__)
156 #define PLATFORM_ANDROID
157 #undef PLATFORM_STRING
158 #define PLATFORM_STRING "Android"
162 /* ========================================================================= */
163 /* define additional target keywords */
164 /* ========================================================================= */
166 #if defined(PLATFORM_MSDOS)
167 #ifndef TARGET_ALLEGRO
168 #define TARGET_ALLEGRO
175 #if defined(PLATFORM_UNIX) && defined(TARGET_X11)
176 #define TARGET_X11_NATIVE
179 #if defined(TARGET_SDL2)
186 /* ========================================================================= */
187 /* this should better go into "system.h" or "features.h" (yet to be created) */
188 /* ========================================================================= */
190 #if defined(PLATFORM_UNIX) || defined(TARGET_SDL)
191 #define NETWORK_AVALIABLE
194 #endif /* PLATFORM_H */