diff --git a/common/backends.h b/common/backends.h index 8bcdc565..34c0f097 100644 --- a/common/backends.h +++ b/common/backends.h @@ -20,6 +20,8 @@ GNU General Public License for more details. #define VIDEO_SDL 1 #define VIDEO_ANDROID 2 #define VIDEO_FBDEV 3 +#define VIDEO_DOS 4 + // audio backends (XASH_SOUND) #define SOUND_NULL 0 @@ -44,6 +46,7 @@ GNU General Public License for more details. #define TIMER_SDL 1 #define TIMER_LINUX 2 #define TIMER_WIN32 3 +#define TIMER_DOS 4 // messageboxes (XASH_MESSAGEBOX) #define MSGBOX_STDERR 0 diff --git a/common/defaults.h b/common/defaults.h index 77603462..ab55d613 100644 --- a/common/defaults.h +++ b/common/defaults.h @@ -84,7 +84,17 @@ SETUP BACKENDS DEFINITIONS #endif // XASH_SOUND #define XASH_USE_EVDEV - #endif // XASH_LINUX + #elif XASH_DOS4GW + #ifndef XASH_VIDEO + #define XASH_VIDEO VIDEO_DOS + #endif + #ifndef XASH_TIMER + #define XASH_TIMER TIMER_DOS + #endif + + // usually only 10-20 fds availiable + #define XASH_REDUCE_FD + #endif #endif // XASH_DEDICATED @@ -126,9 +136,10 @@ SETUP BACKENDS DEFINITIONS #ifdef XASH_STATIC_LIBS #define XASH_LIB LIB_STATIC #define XASH_INTERNAL_GAMELIBS +#define XASH_ALLOW_SAVERESTORE_OFFSETS #elif defined _WIN32 #define XASH_LIB LIB_WIN32 -#else +#elif XASH_POSIX #define XASH_LIB LIB_POSIX #endif diff --git a/engine/common/build.c b/engine/common/build.c index d124f18d..7fd62795 100644 --- a/engine/common/build.c +++ b/engine/common/build.c @@ -91,6 +91,8 @@ const char *Q_buildos( void ) osname = "openbsd"; #elif XASH_EMSCRIPTEN osname = "emscripten"; +#elif XASH_DOS4GW + osname = "DOS4GW"; #else #error "Place your operating system name here! If this is a mistake, try to fix conditions above and report a bug" #endif diff --git a/public/build.h b/public/build.h index 746db765..7ae6ab07 100644 --- a/public/build.h +++ b/public/build.h @@ -98,6 +98,9 @@ GNU General Public License for more details. #define XASH_POSIX 1 #elif defined __EMSCRIPTEN__ #define XASH_EMSCRIPTEN 1 +#elif defined __WATCOMC__ && defined __DOS__ + #define XASH_DOS4GW 1 + #define XASH_LITTLE_ENDIAN #else #error "Place your operating system name here! If this is a mistake, try to fix conditions above and report a bug" #endif