Allow static and dynamic plugins to be used at the same time

svn-id: r31888
This commit is contained in:
Jordi Vilalta Prat 2008-05-06 03:00:26 +00:00
parent 3ac46924e3
commit 38a8aa516e
103 changed files with 505 additions and 499 deletions

View file

@ -22,11 +22,11 @@ MODULES := test tools base $(MODULES)
# After the game specific modules follow the shared modules # After the game specific modules follow the shared modules
MODULES += \ MODULES += \
engines \
gui \ gui \
graphics \ graphics \
sound \ sound \
common \ common \
engines \
backends backends
ifdef USE_MT32EMU ifdef USE_MT32EMU
@ -182,22 +182,22 @@ DIST_FILES_THEMES:=$(addprefix $(srcdir)/gui/themes/,modern.ini modern.zip class
# Engine data files # Engine data files
DIST_FILES_ENGINEDATA= DIST_FILES_ENGINEDATA=
ifndef DISABLE_IGOR ifdef ENABLE_IGOR
DIST_FILES_ENGINEDATA+=igor.tbl DIST_FILES_ENGINEDATA+=igor.tbl
endif endif
ifndef DISABLE_KYRA ifdef ENABLE_KYRA
DIST_FILES_ENGINEDATA+=kyra.dat DIST_FILES_ENGINEDATA+=kyra.dat
endif endif
ifndef DISABLE_LURE ifdef ENABLE_LURE
DIST_FILES_ENGINEDATA+=lure.dat DIST_FILES_ENGINEDATA+=lure.dat
endif endif
ifndef DISABLE_M4 ifdef ENABLE_M4
DIST_FILES_ENGINEDATA+=m4.dat DIST_FILES_ENGINEDATA+=m4.dat
endif endif
ifndef DISABLE_QUEEN ifdef ENABLE_QUEEN
DIST_FILES_ENGINEDATA+=queen.tbl DIST_FILES_ENGINEDATA+=queen.tbl
endif endif
ifndef DISABLE_SKY ifdef ENABLE_SKY
DIST_FILES_ENGINEDATA+=sky.cpt DIST_FILES_ENGINEDATA+=sky.cpt
endif endif
DIST_FILES_ENGINEDATA:=$(addprefix $(srcdir)/dists/engine-data/,$(DIST_FILES_ENGINEDATA)) DIST_FILES_ENGINEDATA:=$(addprefix $(srcdir)/dists/engine-data/,$(DIST_FILES_ENGINEDATA))

View file

@ -87,9 +87,9 @@ static UInt32 ModulesPalmMain(UInt16 cmd, MemPtr cmdPBP, UInt16 launchFlags)
#ifdef PALMOS_NATIVE #ifdef PALMOS_NATIVE
result = GET_MODEARM; result = GET_MODEARM;
#else #else
# if !defined(DISABLE_SCUMM) || \ # if defined(ENABLE_SCUMM) || \
!defined(DISABLE_AGOS) || \ defined(ENABLE_AGOS) || \
!defined(DISABLE_SWORD1) defined(ENABLE_SWORD1)
result = GET_DATACOMMON|GET_DATAENGINE|GET_MODE68K; result = GET_DATACOMMON|GET_DATAENGINE|GET_MODE68K;
# else # else
result = GET_DATACOMMON|GET_MODE68K; result = GET_DATACOMMON|GET_MODE68K;

View file

@ -26,27 +26,27 @@
#ifndef __COMPILE_H__ #ifndef __COMPILE_H__
#define __COMPILE_H__ #define __COMPILE_H__
#define DISABLE_SCUMM #undef ENABLE_SCUMM
#define DISABLE_SCUMM_7_8 #undef ENABLE_SCUMM_7_8
#define DISABLE_HE #undef ENABLE_HE
#define DISABLE_AGOS #undef ENABLE_AGOS
#define DISABLE_SKY #undef ENABLE_SKY
#define DISABLE_SWORD1 #undef ENABLE_SWORD1
#define DISABLE_SWORD2 #undef ENABLE_SWORD2
#define DISABLE_QUEEN #undef ENABLE_QUEEN
#define DISABLE_SAGA #undef ENABLE_SAGA
#define DISABLE_KYRA #undef ENABLE_KYRA
#define DISABLE_AWE #undef ENABLE_AWE
#define DISABLE_GOB #undef ENABLE_GOB
#define DISABLE_LURE #undef ENABLE_LURE
#define DISABLE_CINE #undef ENABLE_CINE
#define DISABLE_AGI #undef ENABLE_AGI
#define DISABLE_TOUCHE #undef ENABLE_TOUCHE
#define DISABLE_PARALLACTION #undef ENABLE_PARALLACTION
#define DISABLE_CRUISE #undef ENABLE_CRUISE
#define DISABLE_DRASCULA #undef ENABLE_DRASCULA
#define DISABLE_IGOR #undef ENABLE_IGOR
// ScummVM // ScummVM
#define DISABLE_HQ_SCALERS #define DISABLE_HQ_SCALERS

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_AGI #define ENABLE_AGI STATIC_PLUGIN
#undef USE_MAD #undef USE_MAD
#undef USE_VORBIS #undef USE_VORBIS

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_AGOS #define ENABLE_AGOS STATIC_PLUGIN
#endif #endif

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_CINE #define ENABLE_CINE STATIC_PLUGIN
#define _DEBUG #define _DEBUG
#undef USE_MAD #undef USE_MAD

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_CRUISE #define ENABLE_CRUISE STATIC_PLUGIN
#undef USE_MAD #undef USE_MAD
#undef USE_VORBIS #undef USE_VORBIS

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_DRASCULA #define ENABLE_DRASCULA STATIC_PLUGIN
#endif #endif

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_GOB #define ENABLE_GOB STATIC_PLUGIN
#endif #endif

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_IGOR #define ENABLE_IGOR STATIC_PLUGIN
#endif #endif

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_KYRA #define ENABLE_KYRA
#endif #endif

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_LURE #define ENABLE_LURE STATIC_PLUGIN
#undef USE_MAD #undef USE_MAD
#undef USE_VORBIS #undef USE_VORBIS

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_PARALLACTION #define ENABLE_PARALLACTION STATIC_PLUGIN
#undef USE_MAD #undef USE_MAD
#undef USE_VORBIS #undef USE_VORBIS

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_QUEEN #define ENABLE_QUEEN STATIC_PLUGIN
#endif #endif

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_SAGA #define ENABLE_SAGA STATIC_PLUGIN
#endif #endif

View file

@ -2,9 +2,9 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_SCUMM #define ENABLE_SCUMM STATIC_PLUGIN
#undef DISABLE_SCUMM_7_8 #define ENABLE_SCUMM_7_8
#undef DISABLE_HE #define ENABLE_HE
#define USE_ARM_GFX_ASM #define USE_ARM_GFX_ASM
#define USE_ARM_SMUSH_ASM #define USE_ARM_SMUSH_ASM

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_SKY #define ENABLE_SKY STATIC_PLUGIN
#endif #endif

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_SWORD1 #define ENABLE_SWORD1
#define USE_MPEG2 #define USE_MPEG2
#define USE_VORBIS #define USE_VORBIS

View file

@ -2,7 +2,7 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_SWORD2 #define ENABLE_SWORD2 STATIC_PLUGIN
#undef _DEBUG #undef _DEBUG
#define USE_MPEG2 #define USE_MPEG2
#define USE_VORBIS #define USE_VORBIS

View file

@ -2,6 +2,6 @@
#define PREFIX_H #define PREFIX_H
#include "native_common.h" #include "native_common.h"
#undef DISABLE_TOUCHE #define ENABLE_TOUCHE STATIC_PLUGIN
#endif #endif

View file

@ -86,184 +86,54 @@ ARM = 1
ifdef DS_BUILD_A ifdef DS_BUILD_A
DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM
LOGO = logoa.bmp LOGO = logoa.bmp
DISABLE_HE = 1 ENABLE_SCUMM = STATIC_PLUGIN
#DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
DISABLE_KYRA = 1
DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
USE_ARM_GFX_ASM = 1 USE_ARM_GFX_ASM = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-A BUILD=scummvm-A
endif endif
ifdef DS_BUILD_B ifdef DS_BUILD_B
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_B DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_B
LOGO = logob.bmp LOGO = logob.bmp
DISABLE_HE = 1 ENABLE_SKY = STATIC_PLUGIN
DISABLE_SCUMM = 1 ENABLE_QUEEN = STATIC_PLUGIN
DISABLE_SCUMM_7_8 = 1
DISABLE_AGOS = 1
#DISABLE_SKY = 1#
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
#DISABLE_QUEEN = 1#
DISABLE_SAGA = 1
DISABLE_KYRA = 1
DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-B BUILD=scummvm-B
endif endif
ifdef DS_BUILD_C ifdef DS_BUILD_C
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_C DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_C
LOGO = logoc.bmp LOGO = logoc.bmp
DISABLE_HE = 1 ENABLE_AGOS = STATIC_PLUGIN
DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
#DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
DISABLE_KYRA = 1
DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-C BUILD=scummvm-C
endif endif
ifdef DS_BUILD_D ifdef DS_BUILD_D
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_D DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_D
LOGO = logod.bmp LOGO = logod.bmp
DISABLE_HE = 1 ENABLE_GOB = STATIC_PLUGIN
DISABLE_SCUMM = 1 ENABLE_CINE = STATIC_PLUGIN
DISABLE_SCUMM_7_8 = 1 ENABLE_AGI = STATIC_PLUGIN
DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
DISABLE_KYRA = 1
#DISABLE_GOB = 1
DISABLE_LURE = 1
#DISABLE_CINE = 1
#DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-D BUILD=scummvm-D
endif endif
ifdef DS_BUILD_E ifdef DS_BUILD_E
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_E DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_E
LOGO = logoe.bmp LOGO = logoe.bmp
DISABLE_HE = 1 ENABLE_SAGA = STATIC_PLUGIN
DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
#DISABLE_SAGA = 1
DISABLE_KYRA = 1
DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-E BUILD=scummvm-E
endif endif
ifdef DS_BUILD_F ifdef DS_BUILD_F
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_F DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_F
LOGO = logof.bmp LOGO = logof.bmp
DISABLE_HE = 1 ENABLE_KYRA = STATIC_PLUGIN
DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
#DISABLE_KYRA = 1
DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-F BUILD=scummvm-F
endif endif
ifdef DS_BUILD_G ifdef DS_BUILD_G
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_G DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_G
LOGO = logog.bmp LOGO = logog.bmp
DISABLE_HE = 1 ENABLE_LURE = STATIC_PLUGIN
DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
DISABLE_AGOS = 1
DISABLE_SKY = 1
DISABLE_SWORD1 = 1
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
DISABLE_KYRA = 1
DISABLE_GOB = 1
#DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
DISABLE_CRUISE = 1
DISABLE_DRASCULA = 1
DISABLE_IGOR = 1
BUILD=scummvm-G BUILD=scummvm-G
endif endif

View file

@ -359,7 +359,7 @@ void initSprites() {
void saveGameBackBuffer() { void saveGameBackBuffer() {
#ifdef DISABLE_SCUMM #ifndef ENABLE_SCUMM
if (savedBuffer == NULL) savedBuffer = new u8[gameWidth * gameHeight]; if (savedBuffer == NULL) savedBuffer = new u8[gameWidth * gameHeight];
for (int r = 0; r < gameHeight; r++) { for (int r = 0; r < gameHeight; r++) {
@ -375,7 +375,7 @@ void saveGameBackBuffer() {
} }
void restoreGameBackBuffer() { void restoreGameBackBuffer() {
#ifdef DISABLE_SCUMM #ifndef ENABLE_SCUMM
if (savedBuffer) { if (savedBuffer) {
for (int r = 0; r < gameHeight; r++) { for (int r = 0; r < gameHeight; r++) {

View file

@ -2,7 +2,7 @@
#include "engines/agi/agi.h" #include "engines/agi/agi.h"
#include "osystem_ds.h" #include "osystem_ds.h"
#ifndef DISABLE_AGI #ifdef ENABLE_AGI
namespace DS { namespace DS {
// Default dictionary is about 64Kb, so 128Kb should be enough for future expansion // Default dictionary is about 64Kb, so 128Kb should be enough for future expansion

View file

@ -153,26 +153,26 @@ HAVE_GCC3 = 1
DISABLE_SCALERS = 1 DISABLE_SCALERS = 1
DISABLE_HQ_SCALERS = 1 DISABLE_HQ_SCALERS = 1
#DISABLE_SCUMM = 1 ENABLE_SCUMM = STATIC_PLUGIN
# We can play The Dig with GP32 -- without any movies/musics/voices. But who would do that? # We can play The Dig with GP32 -- without any movies/musics/voices. But who would do that?
DISABLE_SCUMM_7_8 = 1 #ENABLE_SCUMM_7_8 = 1
DISABLE_HE = 1 #ENABLE_HE = 1
#DISABLE_AGOS = 1 ENABLE_AGOS = STATIC_PLUGIN
#DISABLE_SKY = 1 ENABLE_SKY = STATIC_PLUGIN
#DISABLE_QUEEN = 1 ENABLE_QUEEN = STATIC_PLUGIN
#DISABLE_GOB = 1 ENABLE_GOB = STATIC_PLUGIN
#DISABLE_LURE = 1 ENABLE_LURE = STATIC_PLUGIN
#DISABLE_CINE = 1 ENABLE_CINE = STATIC_PLUGIN
#DISABLE_SAGA = 1 ENABLE_SAGA = STATIC_PLUGIN
#DISABLE_KYRA = 1 ENABLE_KYRA = STATIC_PLUGIN
#DISABLE_AGI = 1 ENABLE_AGI = STATIC_PLUGIN
# The engines below are not supported on the GP32 port so there is # The engines below are not supported on the GP32 port so there is
# no point compiling support into the binary. # no point compiling support into the binary.
DISABLE_SWORD1 = 1 #ENABLE_SWORD1 = STATIC_PLUGIN
DISABLE_SWORD2 = 1 #ENABLE_SWORD2 = STATIC_PLUGIN
####################################################################### #######################################################################
# Misc stuff - you should normally never have to edit this # # Misc stuff - you should normally never have to edit this #

View file

@ -13,27 +13,28 @@
## Do you want a build using plugins? ## Do you want a build using plugins?
#BUILD_PLUGINS = 1 #BUILD_PLUGINS = 1
# TODO: You'll need to change STATIC_PLUGIN to DYNAMIC_PLUGIN below
######################################################################## ########################################################################
## Disable whichever engines you want here ## Enable whichever engines you want here
#DISABLE_SCUMM = 1 ENABLE_SCUMM = STATIC_PLUGIN
#DISABLE_SKY = 1 ENABLE_SKY = STATIC_PLUGIN
#DISABLE_QUEEN = 1 ENABLE_QUEEN = STATIC_PLUGIN
#DISABLE_GOB = 1 ENABLE_GOB = STATIC_PLUGIN
#DISABLE_LURE = 1 ENABLE_LURE = STATIC_PLUGIN
#DISABLE_CINE = 1 ENABLE_CINE = STATIC_PLUGIN
#DISABLE_SAGA = 1 ENABLE_SAGA = STATIC_PLUGIN
#DISABLE_KYRA = 1 ENABLE_KYRA = STATIC_PLUGIN
#DISABLE_AGI = 1 ENABLE_AGI = STATIC_PLUGIN
#DISABLE_AGOS = 1 ENABLE_AGOS = STATIC_PLUGIN
#DISABLE_SWORD1 = 1 ENABLE_SWORD1 = STATIC_PLUGIN
#DISABLE_SWORD2 = 1 ENABLE_SWORD2 = STATIC_PLUGIN
#DISABLE_TOUCHE = 1 ENABLE_TOUCHE = STATIC_PLUGIN
#DISABLE_PARALLACTION = 1 ENABLE_PARALLACTION = STATIC_PLUGIN
DISABLE_CRUISE = 1 #ENABLE_CRUISE = STATIC_PLUGIN
DISABLE_DRASCULA = 1 #ENABLE_DRASCULA = STATIC_PLUGIN
DISABLE_IGOR = 1 #ENABLE_IGOR = STATIC_PLUGIN
######################################################################## ########################################################################
## Pick which libraries you want to use here ## Pick which libraries you want to use here

View file

@ -116,14 +116,14 @@ static const char HELP_STRING[] =
" --render-mode=MODE Enable additional render modes (cga, ega, hercGreen,\n" " --render-mode=MODE Enable additional render modes (cga, ega, hercGreen,\n"
" hercAmber, amiga)\n" " hercAmber, amiga)\n"
"\n" "\n"
#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN) #if defined(ENABLE_SKY) || defined(ENABLE_QUEEN)
" --alt-intro Use alternative intro for CD versions of Beneath a\n" " --alt-intro Use alternative intro for CD versions of Beneath a\n"
" Steel Sky and Flight of the Amazon Queen\n" " Steel Sky and Flight of the Amazon Queen\n"
#endif #endif
" --copy-protection Enable copy protection in SCUMM games, when\n" " --copy-protection Enable copy protection in SCUMM games, when\n"
" ScummVM disables it by default.\n" " ScummVM disables it by default.\n"
" --talkspeed=NUM Set talk speed for games (default: 60)\n" " --talkspeed=NUM Set talk speed for games (default: 60)\n"
#ifndef DISABLE_SCUMM #ifdef ENABLE_SCUMM
" --demo-mode Start demo mode of Maniac Mansion\n" " --demo-mode Start demo mode of Maniac Mansion\n"
" --tempo=NUM Set music tempo (in percent, 50-200) for SCUMM games\n" " --tempo=NUM Set music tempo (in percent, 50-200) for SCUMM games\n"
" (default: 100)\n" " (default: 100)\n"
@ -190,19 +190,19 @@ void registerDefaults() {
ConfMan.registerDefault("save_slot", -1); ConfMan.registerDefault("save_slot", -1);
ConfMan.registerDefault("autosave_period", 5 * 60); // By default, trigger autosave every 5 minutes ConfMan.registerDefault("autosave_period", 5 * 60); // By default, trigger autosave every 5 minutes
#if !defined(DISABLE_SCUMM) || !defined(DISABLE_SWORD2) #if defined(ENABLE_SCUMM) || defined(ENABLE_SWORD2)
ConfMan.registerDefault("object_labels", true); ConfMan.registerDefault("object_labels", true);
#endif #endif
ConfMan.registerDefault("copy_protection", false); ConfMan.registerDefault("copy_protection", false);
ConfMan.registerDefault("talkspeed", 60); ConfMan.registerDefault("talkspeed", 60);
#ifndef DISABLE_SCUMM #ifdef ENABLE_SCUMM
ConfMan.registerDefault("demo_mode", false); ConfMan.registerDefault("demo_mode", false);
ConfMan.registerDefault("tempo", 0); ConfMan.registerDefault("tempo", 0);
#endif #endif
#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN) #if defined(ENABLE_SKY) || defined(ENABLE_QUEEN)
ConfMan.registerDefault("alt_intro", false); ConfMan.registerDefault("alt_intro", false);
#endif #endif
@ -513,7 +513,7 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, char **ar
DO_LONG_OPTION("target-md5") DO_LONG_OPTION("target-md5")
END_OPTION END_OPTION
#ifndef DISABLE_SCUMM #ifdef ENABLE_SCUMM
DO_LONG_OPTION_INT("tempo") DO_LONG_OPTION_INT("tempo")
END_OPTION END_OPTION
@ -521,7 +521,7 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, char **ar
END_OPTION END_OPTION
#endif #endif
#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN) #if defined(ENABLE_SKY) || defined(ENABLE_QUEEN)
DO_LONG_OPTION_BOOL("alt-intro") DO_LONG_OPTION_BOOL("alt-intro")
END_OPTION END_OPTION
#endif #endif

View file

@ -63,7 +63,6 @@ SaveStateList Plugin::listSaves(const char *target) const {
} }
#ifndef DYNAMIC_MODULES
class StaticPlugin : public Plugin { class StaticPlugin : public Plugin {
public: public:
StaticPlugin(PluginObject *pluginobject, PluginType type) { StaticPlugin(PluginObject *pluginobject, PluginType type) {
@ -100,61 +99,61 @@ public:
// "Loader" for the static plugins. // "Loader" for the static plugins.
// Iterate over all registered (static) plugins and load them. // Iterate over all registered (static) plugins and load them.
#ifndef DISABLE_SCUMM #if PLUGIN_ENABLED_STATIC(SCUMM)
LINK_PLUGIN(SCUMM) LINK_PLUGIN(SCUMM)
#endif #endif
#ifndef DISABLE_AGI #if PLUGIN_ENABLED_STATIC(AGI)
LINK_PLUGIN(AGI) LINK_PLUGIN(AGI)
#endif #endif
#ifndef DISABLE_AGOS #if PLUGIN_ENABLED_STATIC(AGOS)
LINK_PLUGIN(AGOS) LINK_PLUGIN(AGOS)
#endif #endif
#ifndef DISABLE_CINE #if PLUGIN_ENABLED_STATIC(CINE)
LINK_PLUGIN(CINE) LINK_PLUGIN(CINE)
#endif #endif
#ifndef DISABLE_CRUISE #if PLUGIN_ENABLED_STATIC(CRUISE)
LINK_PLUGIN(CRUISE) LINK_PLUGIN(CRUISE)
#endif #endif
#ifndef DISABLE_DRASCULA #if PLUGIN_ENABLED_STATIC(DRASCULA)
LINK_PLUGIN(DRASCULA) LINK_PLUGIN(DRASCULA)
#endif #endif
#ifndef DISABLE_GOB #if PLUGIN_ENABLED_STATIC(GOB)
LINK_PLUGIN(GOB) LINK_PLUGIN(GOB)
#endif #endif
#ifndef DISABLE_IGOR #if PLUGIN_ENABLED_STATIC(IGOR)
LINK_PLUGIN(IGOR) LINK_PLUGIN(IGOR)
#endif #endif
#ifndef DISABLE_KYRA #if PLUGIN_ENABLED_STATIC(KYRA)
LINK_PLUGIN(KYRA) LINK_PLUGIN(KYRA)
#endif #endif
#ifndef DISABLE_LURE #if PLUGIN_ENABLED_STATIC(LURE)
LINK_PLUGIN(LURE) LINK_PLUGIN(LURE)
#endif #endif
#ifndef DISABLE_M4 #if PLUGIN_ENABLED_STATIC(M4)
LINK_PLUGIN(M4) LINK_PLUGIN(M4)
#endif #endif
#ifndef DISABLE_MADE #if PLUGIN_ENABLED_STATIC(MADE)
LINK_PLUGIN(MADE) LINK_PLUGIN(MADE)
#endif #endif
#ifndef DISABLE_PARALLACTION #if PLUGIN_ENABLED_STATIC(PARALLACTION)
LINK_PLUGIN(PARALLACTION) LINK_PLUGIN(PARALLACTION)
#endif #endif
#ifndef DISABLE_QUEEN #if PLUGIN_ENABLED_STATIC(QUEEN)
LINK_PLUGIN(QUEEN) LINK_PLUGIN(QUEEN)
#endif #endif
#ifndef DISABLE_SAGA #if PLUGIN_ENABLED_STATIC(SAGA)
LINK_PLUGIN(SAGA) LINK_PLUGIN(SAGA)
#endif #endif
#ifndef DISABLE_SKY #if PLUGIN_ENABLED_STATIC(SKY)
LINK_PLUGIN(SKY) LINK_PLUGIN(SKY)
#endif #endif
#ifndef DISABLE_SWORD1 #if PLUGIN_ENABLED_STATIC(SWORD1)
LINK_PLUGIN(SWORD1) LINK_PLUGIN(SWORD1)
#endif #endif
#ifndef DISABLE_SWORD2 #if PLUGIN_ENABLED_STATIC(SWORD2)
LINK_PLUGIN(SWORD2) LINK_PLUGIN(SWORD2)
#endif #endif
#ifndef DISABLE_TOUCHE #if PLUGIN_ENABLED_STATIC(TOUCHE)
LINK_PLUGIN(TOUCHE) LINK_PLUGIN(TOUCHE)
#endif #endif
@ -162,7 +161,7 @@ public:
} }
}; };
#else #ifdef DYNAMIC_MODULES
PluginList FilePluginProvider::getPlugins() { PluginList FilePluginProvider::getPlugins() {
PluginList pl; PluginList pl;
@ -222,18 +221,15 @@ void FilePluginProvider::addCustomDirectories(Common::StringList &dirs) const {
#endif #endif
} }
#endif #endif // DYNAMIC_MODULES
#pragma mark - #pragma mark -
DECLARE_SINGLETON(PluginManager); DECLARE_SINGLETON(PluginManager);
PluginManager::PluginManager() { PluginManager::PluginManager() {
#ifndef DYNAMIC_MODULES // Always add the static plugin provider.
// Add the static plugin provider if we do not build with dynamic
// plugins.
addPluginProvider(new StaticPluginProvider()); addPluginProvider(new StaticPluginProvider());
#endif
} }
PluginManager::~PluginManager() { PluginManager::~PluginManager() {

View file

@ -100,6 +100,15 @@ public:
}; };
#define STATIC_PLUGIN 1
#define DYNAMIC_PLUGIN 2
#define PLUGIN_ENABLED_STATIC(ID) \
(defined(ENABLE_##ID) && !PLUGIN_ENABLED_DYNAMIC(ID))
#define PLUGIN_ENABLED_DYNAMIC(ID) \
(defined(ENABLE_##ID) && (ENABLE_##ID == DYNAMIC_PLUGIN) && defined(DYNAMIC_MODULES))
/** /**
* REGISTER_PLUGIN is a convenience macro meant to ease writing * REGISTER_PLUGIN is a convenience macro meant to ease writing
* the plugin interface for our modules. In particular, using it * the plugin interface for our modules. In particular, using it
@ -109,15 +118,16 @@ public:
* @todo add some means to query the plugin API version etc. * @todo add some means to query the plugin API version etc.
*/ */
#ifndef DYNAMIC_MODULES #define REGISTER_PLUGIN_STATIC(ID,TYPE,PLUGINCLASS) \
#define REGISTER_PLUGIN(ID,TYPE,PLUGINCLASS) \
PluginType g_##ID##_type = TYPE; \ PluginType g_##ID##_type = TYPE; \
PluginObject *g_##ID##_getObject() { \ PluginObject *g_##ID##_getObject() { \
return new PLUGINCLASS(); \ return new PLUGINCLASS(); \
} \ } \
void dummyFuncToAllowTrailingSemicolon() void dummyFuncToAllowTrailingSemicolon()
#else
#define REGISTER_PLUGIN(ID,TYPE,PLUGINCLASS) \ #ifdef DYNAMIC_MODULES
#define REGISTER_PLUGIN_DYNAMIC(ID,TYPE,PLUGINCLASS) \
extern "C" { \ extern "C" { \
PLUGIN_EXPORT int32 PLUGIN_getVersion() { return PLUGIN_VERSION; } \ PLUGIN_EXPORT int32 PLUGIN_getVersion() { return PLUGIN_VERSION; } \
PLUGIN_EXPORT int32 PLUGIN_getType() { return TYPE; } \ PLUGIN_EXPORT int32 PLUGIN_getType() { return TYPE; } \
@ -127,7 +137,8 @@ public:
} \ } \
} \ } \
void dummyFuncToAllowTrailingSemicolon() void dummyFuncToAllowTrailingSemicolon()
#endif
#endif // DYNAMIC_MODULES
/** List of plugins. */ /** List of plugins. */

139
configure vendored
View file

@ -106,6 +106,7 @@ _endian=unknown
_need_memalign=no _need_memalign=no
_have_x86=no _have_x86=no
_build_plugins=no _build_plugins=no
_plugins_default=static
_nasm=auto _nasm=auto
# more defaults # more defaults
@ -363,21 +364,33 @@ get_engine_sub() {
# Enable the given engine # Enable the given engine
engine_enable() { engine_enable() {
engine=`echo $1 | sed 's/-/_/g'` # Get the parameter
if test "`get_engine_build ${engine}`" = "no" ; then if ( echo $1 | grep '=' ) 2> /dev/null > /dev/null ; then
eval _engine_${engine}_build=yes eng=`echo $1 | cut -d '=' -f 1`
opt=`echo $1 | cut -d '=' -f 2`
else else
option_error --enable-$1 eng=$1
opt=yes
fi
engine=`echo $eng | sed 's/-/_/g'`
if test "$opt" == "static" -o "$opt" == "dynamic" -o "$opt" == "yes" ; then
if test "`get_engine_build ${engine}`" != "$opt" ; then
eval _engine_${engine}_build=$opt
else
option_error
fi
else
option_error
fi fi
} }
# Disable the given engine # Disable the given engine
engine_disable() { engine_disable() {
engine=`echo $1 | sed 's/-/_/g'` engine=`echo $1 | sed 's/-/_/g'`
if test "`get_engine_build $engine`" = "yes" ; then if test "`get_engine_build $engine`" != "no" ; then
eval _engine_${engine}_build=no eval _engine_${engine}_build=no
else else
option_error --disable-$1 option_error
fi fi
} }
@ -420,27 +433,35 @@ show_subengine_help() {
# Prepare the strings about the engines to build # Prepare the strings about the engines to build
prepare_engine_build_strings() { prepare_engine_build_strings() {
string_yes=`get_engine_build_string $1 yes` string=`get_engine_build_string $1 static`
if test -n "$string_yes" ; then if test -n "$string" ; then
_engines_built="${_engines_built}#$string_yes@" _engines_built_static="${_engines_built_static}#$string@"
fi fi
string_no=`get_engine_build_string $1 no` string=`get_engine_build_string $1 dynamic`
if test -n "$string_no" ; then if test -n "$string" ; then
_engines_skipped="${_engines_skipped}#$string_no@" _engines_built_dynamic="${_engines_built_dynamic}#$string@"
fi
string=`get_engine_build_string $1 no`
if test -n "$string" ; then
_engines_skipped="${_engines_skipped}#$string@"
fi fi
} }
# Get the string about building an engine # Get the string about building an engine
get_engine_build_string() { get_engine_build_string() {
engine_string="" engine_string=""
if test `get_engine_build $1` = no ; then engine_build=`get_engine_build $1`
if test $engine_build = no ; then
# The engine is disabled
if test $2 = no ; then if test $2 = no ; then
engine_string=`get_engine_name $1` engine_string=`get_engine_name $1`
else else
engine_string="" engine_string=""
fi fi
else else
# The engine is enabled, get the custom string
build_string_func=get_${1}_build_string build_string_func=get_${1}_build_string
if ( type $build_string_func | grep function ) 2> /dev/null > /dev/null ; then if ( type $build_string_func | grep function ) 2> /dev/null > /dev/null ; then
engine_string=`$build_string_func $1 $2` engine_string=`$build_string_func $1 $2`
@ -448,12 +469,16 @@ get_engine_build_string() {
engine_string=`get_subengines_build_string $1 $2` engine_string=`get_subengines_build_string $1 $2`
fi fi
if test $2 = yes ; then if test $2 = no ; then
engine_string="`get_engine_name $1` $engine_string"
else
if test -n "$engine_string" ; then if test -n "$engine_string" ; then
engine_string="`get_engine_name $1` $engine_string" engine_string="`get_engine_name $1` $engine_string"
fi fi
else
if test $2 = $engine_build ; then
engine_string="`get_engine_name $1` $engine_string"
else
engine_string=""
fi
fi fi
fi fi
@ -471,7 +496,7 @@ get_subengines_build_string() {
all=no all=no
fi fi
done done
if test $2 = yes ; then if test $2 != no ; then
if test -n "$subengine_string" ; then if test -n "$subengine_string" ; then
if test $all = yes ; then if test $all = yes ; then
subengine_string="[all games]" subengine_string="[all games]"
@ -484,7 +509,7 @@ get_subengines_build_string() {
# Engine specific build strings # Engine specific build strings
get_sword1_build_string() { get_sword1_build_string() {
if test $2 = yes ; then if test $2 != no ; then
if test "$_mpeg2" = yes ; then if test "$_mpeg2" = yes ; then
echo "(w/ mpeg2 cutscenes)" echo "(w/ mpeg2 cutscenes)"
else else
@ -498,7 +523,7 @@ get_sword2_build_string() {
} }
get_scumm_build_string() { get_scumm_build_string() {
if test $2 = yes ; then if test $2 != no ; then
base="[v0-v6 games]" base="[v0-v6 games]"
fi fi
get_subengines_build_string $1 $2 "$base" get_subengines_build_string $1 $2 "$base"
@ -551,8 +576,8 @@ Optional Features:
--disable-debug disable building with debugging symbols --disable-debug disable building with debugging symbols
--enable-Werror treat warnings as errors --enable-Werror treat warnings as errors
$engines_help $engines_help
--enable-plugins build engines as loadable modules instead of --enable-plugins enable the support for dynamic plugins
static linking them --default-dynamic make plugins dynamic by default
--disable-mt32emu don't enable the integrated MT-32 emulator --disable-mt32emu don't enable the integrated MT-32 emulator
--disable-hq-scalers exclude HQ2x and HQ3x scalers --disable-hq-scalers exclude HQ2x and HQ3x scalers
--disable-scalers exclude scalers --disable-scalers exclude scalers
@ -630,6 +655,7 @@ for ac_option in $@; do
--disable-mpeg2) _mpeg2=no ;; --disable-mpeg2) _mpeg2=no ;;
--disable-fluidsynth) _fluidsynth=no ;; --disable-fluidsynth) _fluidsynth=no ;;
--enable-plugins) _build_plugins=yes ;; --enable-plugins) _build_plugins=yes ;;
--default-dynamic) _plugins_default=dynamic ;;
--enable-mt32emu) _mt32emu=yes ;; --enable-mt32emu) _mt32emu=yes ;;
--disable-mt32emu) _mt32emu=no ;; --disable-mt32emu) _mt32emu=no ;;
--with-fluidsynth-prefix=*) --with-fluidsynth-prefix=*)
@ -725,7 +751,7 @@ for ac_option in $@; do
engine_disable `echo $ac_option | cut -d '-' -f 4-` engine_disable `echo $ac_option | cut -d '-' -f 4-`
;; ;;
*) *)
option_error $ac_option option_error
;; ;;
esac; esac;
done; done;
@ -897,12 +923,6 @@ if test "$_cxx_major" -ge "3" ; then
add_line_to_config_mk 'HAVE_GCC3 = 1' add_line_to_config_mk 'HAVE_GCC3 = 1'
fi; fi;
#
# Engine selection
#
for engine in $_engines; do
add_to_config_mk_if_no `get_engine_build $engine` "DISABLE_`echo $engine | tr [a-z] [A-Z]` = 1"
done
add_to_config_mk_if_no $_build_hq_scalers 'DISABLE_HQ_SCALERS = 1' add_to_config_mk_if_no $_build_hq_scalers 'DISABLE_HQ_SCALERS = 1'
add_to_config_mk_if_no $_build_scalers 'DISABLE_SCALERS = 1' add_to_config_mk_if_no $_build_scalers 'DISABLE_SCALERS = 1'
@ -1532,22 +1552,73 @@ DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"$_libdir/scummvm\\\""
# #
# Show which engines ("frontends") are to be built # Engine selection
# #
_engines_built_static=""
_engines_built="" _engines_built_dynamic=""
_engines_skipped="" _engines_skipped=""
for engine in $_engines; do for engine in $_engines; do
if test "`get_engine_sub $engine`" = "no" ; then if test "`get_engine_sub $engine`" = "no" ; then
# It's a main engine
if test `get_engine_build $engine` = no ; then
isbuilt=no
else
# If dynamic plugins aren't supported, mark
# all the engines as static
if test $_build_plugins = no ; then
eval _engine_${engine}_build=static
else
# If it wasn't explicitly marked as static or
# dynamic, use the configured default
if test `get_engine_build $engine` = yes ; then
eval _engine_${engine}_build=${_plugins_default}
fi
fi
# Prepare the defines
if test `get_engine_build $engine` = dynamic ; then
isbuilt=DYNAMIC_PLUGIN
else
eval _engine_${engine}_build=static
isbuilt=STATIC_PLUGIN
fi
fi
# Prepare the information to be shown
prepare_engine_build_strings $engine prepare_engine_build_strings $engine
else
# It's a subengine, just say yes or no
if test "`get_engine_build $engine`" = "no" ; then
isbuilt=no
else
isbuilt=1
fi
fi
# Save the settings
defname="ENABLE_`echo $engine | tr [a-z] [A-Z]`"
if test "$isbuilt" = "no" ; then
add_line_to_config_mk "# $defname"
else
add_line_to_config_mk "$defname = $isbuilt"
fi fi
done done
#
# Show which engines ("frontends") are to be built
#
echo echo
if test -n "$_engines_built" ; then if test -n "$_engines_built_static" ; then
echo "Engines:" echo "Engines (builtin):"
echo $_engines_built | sed 's/@/\ echo $_engines_built_static | sed 's/@/\
/g
s/#/ /g'
fi
if test -n "$_engines_built_dynamic" ; then
echo "Engines (plugins):"
echo $_engines_built_dynamic | sed 's/@/\
/g /g
s/#/ /g' s/#/ /g'
fi fi

View file

@ -2324,4 +2324,8 @@ const Common::ADGameDescription *AgiMetaEngine::fallbackDetect(const FSList *fsl
return 0; return 0;
} }
REGISTER_PLUGIN(AGI, PLUGIN_TYPE_ENGINE, AgiMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(AGI)
REGISTER_PLUGIN_DYNAMIC(AGI, PLUGIN_TYPE_ENGINE, AgiMetaEngine);
#else
REGISTER_PLUGIN_STATIC(AGI, PLUGIN_TYPE_ENGINE, AgiMetaEngine);
#endif

View file

@ -38,7 +38,7 @@ MODULE_OBJS = \
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_AGI), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -149,7 +149,11 @@ bool AgosMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common
return res; return res;
} }
REGISTER_PLUGIN(AGOS, PLUGIN_TYPE_ENGINE, AgosMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(AGOS)
REGISTER_PLUGIN_DYNAMIC(AGOS, PLUGIN_TYPE_ENGINE, AgosMetaEngine);
#else
REGISTER_PLUGIN_STATIC(AGOS, PLUGIN_TYPE_ENGINE, AgosMetaEngine);
#endif
namespace AGOS { namespace AGOS {

View file

@ -47,7 +47,7 @@ MODULE_OBJS := \
zones.o zones.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_AGOS), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -509,4 +509,8 @@ bool CineMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(CINE, PLUGIN_TYPE_ENGINE, CineMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(CINE)
REGISTER_PLUGIN_DYNAMIC(CINE, PLUGIN_TYPE_ENGINE, CineMetaEngine);
#else
REGISTER_PLUGIN_STATIC(CINE, PLUGIN_TYPE_ENGINE, CineMetaEngine);
#endif

View file

@ -22,7 +22,7 @@ MODULE_OBJS = \
various.o various.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_CINE), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -144,4 +144,8 @@ bool CruiseMetaEngine::createInstance(OSystem *syst, Engine **engine, const Comm
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(CRUISE)
REGISTER_PLUGIN_DYNAMIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
#else
REGISTER_PLUGIN_STATIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
#endif

View file

@ -33,7 +33,7 @@ MODULE_OBJS := \
volume.o volume.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_CRUISE), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -185,4 +185,8 @@ const Common::ADGameDescription *DrasculaMetaEngine::fallbackDetect(const FSList
return (const Common::ADGameDescription *)&Drascula::g_fallbackDesc; return (const Common::ADGameDescription *)&Drascula::g_fallbackDesc;
} }
REGISTER_PLUGIN(DRASCULA, PLUGIN_TYPE_ENGINE, DrasculaMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(DRASCULA)
REGISTER_PLUGIN_DYNAMIC(DRASCULA, PLUGIN_TYPE_ENGINE, DrasculaMetaEngine);
#else
REGISTER_PLUGIN_STATIC(DRASCULA, PLUGIN_TYPE_ENGINE, DrasculaMetaEngine);
#endif

View file

@ -10,7 +10,7 @@ MODULE_OBJS = \
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_DRASCULA), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -1,122 +1,103 @@
ifdef DISABLE_SCUMM ifdef ENABLE_SCUMM
DEFINES += -DDISABLE_SCUMM DEFINES += -DENABLE_SCUMM=$(ENABLE_SCUMM)
else
MODULES += engines/scumm MODULES += engines/scumm
ifdef DISABLE_SCUMM_7_8 ifdef ENABLE_SCUMM_7_8
DEFINES += -DDISABLE_SCUMM_7_8 DEFINES += -DENABLE_SCUMM_7_8
endif endif
ifdef DISABLE_HE ifdef ENABLE_HE
DEFINES += -DDISABLE_HE DEFINES += -DENABLE_HE
endif endif
endif endif
ifdef DISABLE_AGI ifdef ENABLE_AGI
DEFINES += -DDISABLE_AGI DEFINES += -DENABLE_AGI=$(ENABLE_AGI)
else
MODULES += engines/agi MODULES += engines/agi
endif endif
ifdef DISABLE_AGOS ifdef ENABLE_AGOS
DEFINES += -DDISABLE_AGOS DEFINES += -DENABLE_AGOS=$(ENABLE_AGOS)
else
MODULES += engines/agos MODULES += engines/agos
endif endif
ifdef DISABLE_CINE ifdef ENABLE_CINE
DEFINES += -DDISABLE_CINE DEFINES += -DENABLE_CINE=$(ENABLE_CINE)
else
MODULES += engines/cine MODULES += engines/cine
endif endif
ifdef DISABLE_CRUISE ifdef ENABLE_CRUISE
DEFINES += -DDISABLE_CRUISE DEFINES += -DENABLE_CRUISE=$(ENABLE_CRUISE)
else
MODULES += engines/cruise MODULES += engines/cruise
endif endif
ifdef DISABLE_DRASCULA ifdef ENABLE_DRASCULA
DEFINES += -DDISABLE_DRASCULA DEFINES += -DENABLE_DRASCULA=$(ENABLE_DRASCULA)
else
MODULES += engines/drascula MODULES += engines/drascula
endif endif
ifdef DISABLE_GOB ifdef ENABLE_GOB
DEFINES += -DDISABLE_GOB DEFINES += -DENABLE_GOB=$(ENABLE_GOB)
else
MODULES += engines/gob MODULES += engines/gob
endif endif
ifdef DISABLE_IGOR ifdef ENABLE_IGOR
DEFINES += -DDISABLE_IGOR DEFINES += -DENABLE_IGOR=$(ENABLE_IGOR)
else
MODULES += engines/igor MODULES += engines/igor
endif endif
ifdef DISABLE_KYRA ifdef ENABLE_KYRA
DEFINES += -DDISABLE_KYRA DEFINES += -DENABLE_KYRA=$(ENABLE_KYRA)
else
MODULES += engines/kyra MODULES += engines/kyra
endif endif
ifdef DISABLE_LURE ifdef ENABLE_LURE
DEFINES += -DDISABLE_LURE DEFINES += -DENABLE_LURE=$(ENABLE_LURE)
else
MODULES += engines/lure MODULES += engines/lure
endif endif
ifdef DISABLE_M4 ifdef ENABLE_M4
DEFINES += -DDISABLE_M4 DEFINES += -DENABLE_M4=$(ENABLE_M4)
else
MODULES += engines/m4 MODULES += engines/m4
endif endif
ifdef DISABLE_MADE ifdef ENABLE_MADE
DEFINES += -DDISABLE_MADE DEFINES += -DENABLE_MADE=$(ENABLE_MADE)
else
MODULES += engines/made MODULES += engines/made
endif endif
ifdef DISABLE_PARALLACTION ifdef ENABLE_PARALLACTION
DEFINES += -DDISABLE_PARALLACTION DEFINES += -DENABLE_PARALLACTION=$(ENABLE_PARALLACTION)
else
MODULES += engines/parallaction MODULES += engines/parallaction
endif endif
ifdef DISABLE_QUEEN ifdef ENABLE_QUEEN
DEFINES += -DDISABLE_QUEEN DEFINES += -DENABLE_QUEEN=$(ENABLE_QUEEN)
else
MODULES += engines/queen MODULES += engines/queen
endif endif
ifdef DISABLE_SAGA ifdef ENABLE_SAGA
DEFINES += -DDISABLE_SAGA DEFINES += -DENABLE_SAGA=$(ENABLE_SAGA)
else
MODULES += engines/saga MODULES += engines/saga
endif endif
ifdef DISABLE_SKY ifdef ENABLE_SKY
DEFINES += -DDISABLE_SKY DEFINES += -DENABLE_SKY=$(ENABLE_SKY)
else
MODULES += engines/sky MODULES += engines/sky
endif endif
ifdef DISABLE_SWORD1 ifdef ENABLE_SWORD1
DEFINES += -DDISABLE_SWORD1 DEFINES += -DENABLE_SWORD1=$(ENABLE_SWORD1)
else
MODULES += engines/sword1 MODULES += engines/sword1
endif endif
ifdef DISABLE_SWORD2 ifdef ENABLE_SWORD2
DEFINES += -DDISABLE_SWORD2 DEFINES += -DENABLE_SWORD2=$(ENABLE_SWORD2)
else
MODULES += engines/sword2 MODULES += engines/sword2
endif endif
ifdef DISABLE_TOUCHE ifdef ENABLE_TOUCHE
DEFINES += -DDISABLE_TOUCHE DEFINES += -DENABLE_TOUCHE=$(ENABLE_TOUCHE)
else
MODULES += engines/touche MODULES += engines/touche
endif endif

View file

@ -1907,7 +1907,11 @@ bool GobMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common:
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(GOB, PLUGIN_TYPE_ENGINE, GobMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(GOB)
REGISTER_PLUGIN_DYNAMIC(GOB, PLUGIN_TYPE_ENGINE, GobMetaEngine);
#else
REGISTER_PLUGIN_STATIC(GOB, PLUGIN_TYPE_ENGINE, GobMetaEngine);
#endif
namespace Gob { namespace Gob {

View file

@ -56,7 +56,7 @@ MODULE_OBJS := \
video_v2.o video_v2.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_GOB), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -133,4 +133,8 @@ bool IgorMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(IGOR, PLUGIN_TYPE_ENGINE, IgorMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(IGOR)
REGISTER_PLUGIN_DYNAMIC(IGOR, PLUGIN_TYPE_ENGINE, IgorMetaEngine);
#else
REGISTER_PLUGIN_STATIC(IGOR, PLUGIN_TYPE_ENGINE, IgorMetaEngine);
#endif

View file

@ -38,7 +38,7 @@ MODULE_OBJS := \
parts/part_main.o parts/part_main.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_IGOR), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -550,4 +550,8 @@ SaveStateList KyraMetaEngine::listSaves(const char *target) const {
return saveList; return saveList;
} }
REGISTER_PLUGIN(KYRA, PLUGIN_TYPE_ENGINE, KyraMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(KYRA)
REGISTER_PLUGIN_DYNAMIC(KYRA, PLUGIN_TYPE_ENGINE, KyraMetaEngine);
#else
REGISTER_PLUGIN_STATIC(KYRA, PLUGIN_TYPE_ENGINE, KyraMetaEngine);
#endif

View file

@ -66,7 +66,7 @@ MODULE_OBJS := \
wsamovie.o wsamovie.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_KYRA), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -195,4 +195,8 @@ bool LureMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(LURE, PLUGIN_TYPE_ENGINE, LureMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(LURE)
REGISTER_PLUGIN_DYNAMIC(LURE, PLUGIN_TYPE_ENGINE, LureMetaEngine);
#else
REGISTER_PLUGIN_STATIC(LURE, PLUGIN_TYPE_ENGINE, LureMetaEngine);
#endif

View file

@ -25,7 +25,7 @@ MODULE_OBJS := \
surface.o surface.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_LURE), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -387,4 +387,8 @@ bool M4MetaEngine::createInstance(OSystem *syst, Engine **engine, const Common::
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(M4, PLUGIN_TYPE_ENGINE, M4MetaEngine); #if PLUGIN_ENABLED_DYNAMIC(M4)
REGISTER_PLUGIN_DYNAMIC(M4, PLUGIN_TYPE_ENGINE, M4MetaEngine);
#else
REGISTER_PLUGIN_STATIC(M4, PLUGIN_TYPE_ENGINE, M4MetaEngine);
#endif

View file

@ -34,7 +34,7 @@ MODULE_OBJS = \
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_M4), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -271,4 +271,8 @@ const Common::ADGameDescription *MadeMetaEngine::fallbackDetect(const FSList *fs
return (const Common::ADGameDescription *)&Made::g_fallbackDesc; return (const Common::ADGameDescription *)&Made::g_fallbackDesc;
} }
REGISTER_PLUGIN(MADE, PLUGIN_TYPE_ENGINE, MadeMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(MADE)
REGISTER_PLUGIN_DYNAMIC(MADE, PLUGIN_TYPE_ENGINE, MadeMetaEngine);
#else
REGISTER_PLUGIN_STATIC(MADE, PLUGIN_TYPE_ENGINE, MadeMetaEngine);
#endif

View file

@ -18,7 +18,7 @@ MODULE_OBJS = \
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_MADE), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -233,4 +233,8 @@ bool ParallactionMetaEngine::createInstance(OSystem *syst, Engine **engine, cons
return res; return res;
} }
REGISTER_PLUGIN(PARALLACTION, PLUGIN_TYPE_ENGINE, ParallactionMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(PARALLACTION)
REGISTER_PLUGIN_DYNAMIC(PARALLACTION, PLUGIN_TYPE_ENGINE, ParallactionMetaEngine);
#else
REGISTER_PLUGIN_STATIC(PARALLACTION, PLUGIN_TYPE_ENGINE, ParallactionMetaEngine);
#endif

View file

@ -29,7 +29,7 @@ MODULE_OBJS := \
walk.o walk.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_PARALLACTION), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -24,7 +24,7 @@ MODULE_OBJS := \
walk.o walk.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_QUEEN), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -127,7 +127,11 @@ PluginError QueenMetaEngine::createInstance(OSystem *syst, Engine **engine) cons
return kNoError; return kNoError;
} }
REGISTER_PLUGIN(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(QUEEN)
REGISTER_PLUGIN_DYNAMIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
#else
REGISTER_PLUGIN_STATIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
#endif
namespace Queen { namespace Queen {

View file

@ -162,7 +162,11 @@ bool SagaMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common
return gd != 0; return gd != 0;
} }
REGISTER_PLUGIN(SAGA, PLUGIN_TYPE_ENGINE, SagaMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(SAGA)
REGISTER_PLUGIN_DYNAMIC(SAGA, PLUGIN_TYPE_ENGINE, SagaMetaEngine);
#else
REGISTER_PLUGIN_STATIC(SAGA, PLUGIN_TYPE_ENGINE, SagaMetaEngine);
#endif
namespace Saga { namespace Saga {

View file

@ -35,7 +35,7 @@ MODULE_OBJS := \
sound.o sound.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_SAGA), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -902,7 +902,7 @@ void Actor::putActor(int dstX, int dstY, int newRoom) {
} }
adjustActorPos(); adjustActorPos();
} else { } else {
#ifndef DISABLE_HE #ifdef ENABLE_HE
if (_vm->_game.heversion >= 71) if (_vm->_game.heversion >= 71)
((ScummEngine_v71he *)_vm)->queueAuxBlock(this); ((ScummEngine_v71he *)_vm)->queueAuxBlock(this);
#endif #endif
@ -1379,7 +1379,7 @@ void ScummEngine_v6::processActors() {
akos_processQueue(); akos_processQueue();
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v71he::processActors() { void ScummEngine_v71he::processActors() {
preProcessAuxQueue(); preProcessAuxQueue();
@ -1543,7 +1543,7 @@ void Actor::drawActorCostume(bool hitTestMode) {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
bool Actor::actorHitTest(int x, int y) { bool Actor::actorHitTest(int x, int y) {
AkosRenderer *ar = (AkosRenderer *)_vm->_costumeRenderer; AkosRenderer *ar = (AkosRenderer *)_vm->_costumeRenderer;
@ -1681,7 +1681,7 @@ void Actor::animateCostume() {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void Actor::animateLimb(int limb, int f) { void Actor::animateLimb(int limb, int f) {
// This methods is very similiar to animateCostume(). // This methods is very similiar to animateCostume().
// However, instead of animating *all* the limbs, it only animates // However, instead of animating *all* the limbs, it only animates
@ -1853,7 +1853,7 @@ void ScummEngine::resetV1ActorTalkColor() {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::actorTalk(const byte *msg) { void ScummEngine_v7::actorTalk(const byte *msg) {
Actor *a; Actor *a;
bool stringWrap = false; bool stringWrap = false;
@ -2021,7 +2021,7 @@ void ScummEngine::stopTalk() {
_keepText = false; _keepText = false;
if (_game.version >= 7) { if (_game.version >= 7) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
((ScummEngine_v7 *)this)->clearSubtitleQueue(); ((ScummEngine_v7 *)this)->clearSubtitleQueue();
#endif #endif
} else { } else {
@ -2054,7 +2054,7 @@ void Actor::setActorCostume(int c) {
if (_vm->_game.features & GF_NEW_COSTUMES) { if (_vm->_game.features & GF_NEW_COSTUMES) {
memset(_animVariable, 0, sizeof(_animVariable)); memset(_animVariable, 0, sizeof(_animVariable));
#ifndef DISABLE_HE #ifdef ENABLE_HE
if (_vm->_game.heversion >= 71) if (_vm->_game.heversion >= 71)
((ScummEngine_v71he *)_vm)->queueAuxBlock(this); ((ScummEngine_v71he *)_vm)->queueAuxBlock(this);
#endif #endif
@ -2293,7 +2293,7 @@ bool Actor::isTalkConditionSet(int slot) const {
return (_heCondMask & (1 << (slot - 1))) != 0; return (_heCondMask & (1 << (slot - 1))) != 0;
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v71he::preProcessAuxQueue() { void ScummEngine_v71he::preProcessAuxQueue() {
if (!_skipProcessActors) { if (!_skipProcessActors) {
for (int i = 0; i < _auxBlocksNum; ++i) { for (int i = 0; i < _auxBlocksNum; ++i) {

View file

@ -1272,7 +1272,7 @@ byte AkosRenderer::codec16(int xmoveCur, int ymoveCur) {
} }
byte AkosRenderer::codec32(int xmoveCur, int ymoveCur) { byte AkosRenderer::codec32(int xmoveCur, int ymoveCur) {
#ifndef DISABLE_HE #ifdef ENABLE_HE
Common::Rect src, dst; Common::Rect src, dst;
if (!_mirror) { if (!_mirror) {
@ -1767,7 +1767,7 @@ void ScummEngine_v6::akos_processQueue() {
a->_offsY = param_2; a->_offsY = param_2;
break; break;
case 7: case 7:
#ifndef DISABLE_HE #ifdef ENABLE_HE
assert(_game.heversion >= 71); assert(_game.heversion >= 71);
((ScummEngine_v71he *)this)->queueAuxEntry(a->_number, param_1); ((ScummEngine_v71he *)this)->queueAuxEntry(a->_number, param_1);
#endif #endif
@ -1793,7 +1793,7 @@ void ScummEngine_v6::akos_processQueue() {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::akos_processQueue() { void ScummEngine_v7::akos_processQueue() {
byte cmd; byte cmd;
int actor, param_1, param_2; int actor, param_1, param_2;

View file

@ -221,7 +221,7 @@ void ScummEngine::actorFollowCamera(int act) {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::setCameraAt(int pos_x, int pos_y) { void ScummEngine_v7::setCameraAt(int pos_x, int pos_y) {
Common::Point old; Common::Point old;

View file

@ -795,7 +795,7 @@ void CharsetRendererClassic::printCharIntern(bool is2byte, const byte *charPtr,
int drawTop = _top - vs->topline; int drawTop = _top - vs->topline;
if ((_vm->_game.heversion >= 71 && _bitDepth >= 8) || (_vm->_game.heversion >= 90 && _bitDepth == 0)) { if ((_vm->_game.heversion >= 71 && _bitDepth >= 8) || (_vm->_game.heversion >= 90 && _bitDepth == 0)) {
#ifndef DISABLE_HE #ifdef ENABLE_HE
if (ignoreCharsetMask || !vs->hasTwoBuffers) { if (ignoreCharsetMask || !vs->hasTwoBuffers) {
dstPtr = vs->getPixels(0, 0); dstPtr = vs->getPixels(0, 0);
} else { } else {
@ -971,7 +971,7 @@ void CharsetRendererCommon::drawBits1(const Graphics::Surface &s, byte *dst, con
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
CharsetRendererNut::CharsetRendererNut(ScummEngine *vm) CharsetRendererNut::CharsetRendererNut(ScummEngine *vm)
: CharsetRenderer(vm) { : CharsetRenderer(vm) {
_current = 0; _current = 0;

View file

@ -172,7 +172,7 @@ public:
int getCharWidth(byte chr) { return 8; } int getCharWidth(byte chr) { return 8; }
}; };
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
class CharsetRendererNut : public CharsetRenderer { class CharsetRendererNut : public CharsetRenderer {
protected: protected:
NutRenderer *_fr[5]; NutRenderer *_fr[5];

View file

@ -873,7 +873,7 @@ PluginError ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) cons
break; break;
case 6: case 6:
switch (res.game.heversion) { switch (res.game.heversion) {
#ifndef DISABLE_HE #ifdef ENABLE_HE
case 200: case 200:
*engine = new ScummEngine_vCUPhe(syst, res); *engine = new ScummEngine_vCUPhe(syst, res);
break; break;
@ -910,7 +910,7 @@ PluginError ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) cons
*engine = new ScummEngine_v6(syst, res); *engine = new ScummEngine_v6(syst, res);
} }
break; break;
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
case 7: case 7:
*engine = new ScummEngine_v7(syst, res); *engine = new ScummEngine_v7(syst, res);
break; break;
@ -966,4 +966,8 @@ SaveStateList ScummMetaEngine::listSaves(const char *target) const {
return saveList; return saveList;
} }
REGISTER_PLUGIN(SCUMM, PLUGIN_TYPE_ENGINE, ScummMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(SCUMM)
REGISTER_PLUGIN_DYNAMIC(SCUMM, PLUGIN_TYPE_ENGINE, ScummMetaEngine);
#else
REGISTER_PLUGIN_STATIC(SCUMM, PLUGIN_TYPE_ENGINE, ScummMetaEngine);
#endif

View file

@ -67,7 +67,7 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "tentacle", "Day of the Tentacle" }, { "tentacle", "Day of the Tentacle" },
{ "zak", "Zak McKracken and the Alien Mindbenders" }, { "zak", "Zak McKracken and the Alien Mindbenders" },
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
{ "ft", "Full Throttle" }, { "ft", "Full Throttle" },
{ "dig", "The Dig" }, { "dig", "The Dig" },
{ "comi", "The Curse of Monkey Island" }, { "comi", "The Curse of Monkey Island" },
@ -81,7 +81,7 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "puttmoon", "Putt-Putt Goes to the Moon" }, { "puttmoon", "Putt-Putt Goes to the Moon" },
{ "puttputt", "Putt-Putt Joins the Parade" }, { "puttputt", "Putt-Putt Joins the Parade" },
#ifndef DISABLE_HE #ifdef ENABLE_HE
{ "airport", "Let's Explore the Airport with Buzzy" }, { "airport", "Let's Explore the Airport with Buzzy" },
{ "arttime", "Blue's Art Time Activities" }, { "arttime", "Blue's Art Time Activities" },
{ "balloon", "Putt-Putt and Pep's Balloon-O-Rama" }, { "balloon", "Putt-Putt and Pep's Balloon-O-Rama" },
@ -231,7 +231,7 @@ static const GameSettings gameVariantsTable[] = {
{"samnmax", 0, 0, GID_SAMNMAX, 6, 0, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK}, {"samnmax", 0, 0, GID_SAMNMAX, 6, 0, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK},
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
{"ft", 0, 0, GID_FT, 7, 0, MDT_NONE, 0, UNK}, {"ft", 0, 0, GID_FT, 7, 0, MDT_NONE, 0, UNK},
{"dig", 0, 0, GID_DIG, 7, 0, MDT_NONE, 0, UNK}, {"dig", 0, 0, GID_DIG, 7, 0, MDT_NONE, 0, UNK},
@ -259,7 +259,7 @@ static const GameSettings gameVariantsTable[] = {
// they'll override more specific entries that follow later on. // they'll override more specific entries that follow later on.
{"", "HE 70", 0, GID_HEGAME, 6, 70, MDT_NONE, GF_USE_KEY, UNK}, {"", "HE 70", 0, GID_HEGAME, 6, 70, MDT_NONE, GF_USE_KEY, UNK},
#ifndef DISABLE_HE #ifdef ENABLE_HE
// HE CUP demos // HE CUP demos
{"", "HE CUP", 0, GID_HECUP, 6, 200, MDT_NONE, 0, UNK}, {"", "HE CUP", 0, GID_HECUP, 6, 200, MDT_NONE, 0, UNK},
@ -443,7 +443,7 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "samnmax", "snmidemo.%03d", kGenDiskNum, UNK_LANG, UNK, 0 }, { "samnmax", "snmidemo.%03d", kGenDiskNum, UNK_LANG, UNK, 0 },
{ "samnmax", "sdemo.sm%d", kGenDiskNum, Common::DE_DEU, UNK, 0 }, { "samnmax", "sdemo.sm%d", kGenDiskNum, Common::DE_DEU, UNK, 0 },
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
{ "dig", "dig.la%d", kGenDiskNum, UNK_LANG, UNK, 0 }, { "dig", "dig.la%d", kGenDiskNum, UNK_LANG, UNK, 0 },
{ "dig", "The Dig Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, 0 }, { "dig", "The Dig Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, 0 },
{ "dig", "The Dig Demo Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, "Demo" }, { "dig", "The Dig Demo Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, "Demo" },
@ -482,7 +482,7 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "puttputt", "Putt-Putt's Demo", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 }, { "puttputt", "Putt-Putt's Demo", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 },
{ "puttputt", "Putt-Putt Parade", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 }, { "puttputt", "Putt-Putt Parade", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 },
#ifndef DISABLE_HE #ifdef ENABLE_HE
{ "airport", "airport", kGenHEPC, UNK_LANG, UNK, 0 }, { "airport", "airport", kGenHEPC, UNK_LANG, UNK, 0 },
{ "airport", "airdemo", kGenHEPC, UNK_LANG, UNK, 0 }, { "airport", "airdemo", kGenHEPC, UNK_LANG, UNK, 0 },
{ "airport", "Airport Demo", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 }, { "airport", "Airport Demo", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 },

View file

@ -28,7 +28,7 @@
#include "scumm/actor.h" #include "scumm/actor.h"
#include "scumm/charset.h" #include "scumm/charset.h"
#include "scumm/intern.h" #include "scumm/intern.h"
#ifndef DISABLE_HE #ifdef ENABLE_HE
#include "scumm/he/intern_he.h" #include "scumm/he/intern_he.h"
#endif #endif
#include "scumm/resource.h" #include "scumm/resource.h"
@ -907,7 +907,7 @@ void ScummEngine::redrawBGAreas() {
_bgNeedsRedraw = false; _bgNeedsRedraw = false;
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v71he::redrawBGAreas() { void ScummEngine_v71he::redrawBGAreas() {
if (camera._cur.x != camera._last.x && _charset->_hasMask) if (camera._cur.x != camera._last.x && _charset->_hasMask)
stopTalk(); stopTalk();
@ -1834,7 +1834,7 @@ void GdiV2::decodeMask(int x, int y, const int width, const int height,
// Do nothing here for V2 games - zplane was already handled. // Do nothing here for V2 games - zplane was already handled.
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
/** /**
* Draw a bitmap onto a virtual screen. This is main drawing method for room backgrounds * Draw a bitmap onto a virtual screen. This is main drawing method for room backgrounds
* used throughout HE71+ versions. * used throughout HE71+ versions.

View file

@ -246,7 +246,7 @@ public:
void drawBitmap(const byte *ptr, VirtScreen *vs, int x, int y, const int width, const int height, void drawBitmap(const byte *ptr, VirtScreen *vs, int x, int y, const int width, const int height,
int stripnr, int numstrip, byte flag); int stripnr, int numstrip, byte flag);
#ifndef DISABLE_HE #ifdef ENABLE_HE
void drawBMAPBg(const byte *ptr, VirtScreen *vs); void drawBMAPBg(const byte *ptr, VirtScreen *vs);
void drawBMAPObject(const byte *ptr, VirtScreen *vs, int obj, int x, int y, int w, int h); void drawBMAPObject(const byte *ptr, VirtScreen *vs, int obj, int x, int y, int w, int h);
#endif #endif

View file

@ -24,7 +24,7 @@
*/ */
#if !defined(SCUMM_HE_CUP_PLAYER_HE_H) && !defined(DISABLE_HE) #if !defined(SCUMM_HE_CUP_PLAYER_HE_H) && defined(ENABLE_HE)
#define SCUMM_HE_CUP_PLAYER_HE_H #define SCUMM_HE_CUP_PLAYER_HE_H
#include "common/stream.h" #include "common/stream.h"

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_HE_FLOODFILL_HE_H) && !defined(DISABLE_HE) #if !defined(SCUMM_HE_FLOODFILL_HE_H) && defined(ENABLE_HE)
#define SCUMM_HE_FLOODFILL_HE_H #define SCUMM_HE_FLOODFILL_HE_H
#include "common/rect.h" #include "common/rect.h"

View file

@ -27,7 +27,7 @@
#define SCUMM_HE_INTERN_HE_H #define SCUMM_HE_INTERN_HE_H
#include "scumm/intern.h" #include "scumm/intern.h"
#ifndef DISABLE_HE #ifdef ENABLE_HE
#include "scumm/he/floodfill_he.h" #include "scumm/he/floodfill_he.h"
#include "scumm/he/wiz_he.h" #include "scumm/he/wiz_he.h"
#endif #endif
@ -40,7 +40,7 @@ class WriteStream;
namespace Scumm { namespace Scumm {
class ResExtractor; class ResExtractor;
#ifndef DISABLE_HE #ifdef ENABLE_HE
class LogicHE; class LogicHE;
class MoviePlayer; class MoviePlayer;
class Sprite; class Sprite;
@ -178,7 +178,7 @@ protected:
byte VAR_NUM_SOUND_CHANNELS; byte VAR_NUM_SOUND_CHANNELS;
}; };
#ifndef DISABLE_HE #ifdef ENABLE_HE
class ScummEngine_v71he : public ScummEngine_v70he { class ScummEngine_v71he : public ScummEngine_v70he {
friend class Wiz; friend class Wiz;

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_HE_LOGIC_HE_H) && !defined(DISABLE_HE) #if !defined(SCUMM_HE_LOGIC_HE_H) && defined(ENABLE_HE)
#define SCUMM_HE_LOGIC_HE_H #define SCUMM_HE_LOGIC_HE_H

View file

@ -1524,7 +1524,7 @@ void ScummEngine_v70he::readGlobalObjects() {
#endif #endif
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v99he::readMAXS(int blockSize) { void ScummEngine_v99he::readMAXS(int blockSize) {
if (blockSize == 52) { if (blockSize == 52) {
debug(0, "ScummEngine_v99he readMAXS: MAXS has blocksize %d", blockSize); debug(0, "ScummEngine_v99he readMAXS: MAXS has blocksize %d", blockSize);

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_HE_SPRITE_HE_H) && !defined(DISABLE_HE) #if !defined(SCUMM_HE_SPRITE_HE_H) && defined(ENABLE_HE)
#define SCUMM_HE_SPRITE_HE_H #define SCUMM_HE_SPRITE_HE_H
namespace Scumm { namespace Scumm {

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_HE_WIZ_HE_H) && !defined(DISABLE_HE) #if !defined(SCUMM_HE_WIZ_HE_H) && defined(ENABLE_HE)
#define SCUMM_HE_WIZ_HE_H #define SCUMM_HE_WIZ_HE_H
#include "common/rect.h" #include "common/rect.h"

View file

@ -22,7 +22,7 @@
* $Id$ * $Id$
*/ */
#if !defined(SCUMM_IMUSE_DIGI_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_IMUSE_DIGI_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_IMUSE_DIGI_H #define SCUMM_IMUSE_DIGI_H
#include "common/scummsys.h" #include "common/scummsys.h"

View file

@ -22,7 +22,7 @@
* $Id$ * $Id$
*/ */
#if !defined(SCUMM_IMUSE_DIGI_TABLES_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_IMUSE_DIGI_TABLES_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_IMUSE_DIGI_TABLES_H #define SCUMM_IMUSE_DIGI_TABLES_H
#include "common/scummsys.h" #include "common/scummsys.h"

View file

@ -22,7 +22,7 @@
* $Id$ * $Id$
*/ */
#if !defined(SCUMM_IMUSE_DIGI_TRACK_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_IMUSE_DIGI_TRACK_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_IMUSE_DIGI_TRACK_H #define SCUMM_IMUSE_DIGI_TRACK_H
#include "common/scummsys.h" #include "common/scummsys.h"

View file

@ -36,7 +36,7 @@
#include "scumm/dialogs.h" #include "scumm/dialogs.h"
#include "scumm/insane/insane.h" #include "scumm/insane/insane.h"
#include "scumm/imuse/imuse.h" #include "scumm/imuse/imuse.h"
#ifndef DISABLE_HE #ifdef ENABLE_HE
#include "scumm/he/intern_he.h" #include "scumm/he/intern_he.h"
#include "scumm/he/logic_he.h" #include "scumm/he/logic_he.h"
#endif #endif
@ -202,7 +202,7 @@ void ScummEngine::parseEvents() {
} }
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v90he::clearClickedStatus() { void ScummEngine_v90he::clearClickedStatus() {
ScummEngine::clearClickedStatus(); ScummEngine::clearClickedStatus();
if (_game.heversion >= 98) { if (_game.heversion >= 98) {
@ -328,7 +328,7 @@ void ScummEngine::processInput() {
processKeyboard(lastKeyHit); processKeyboard(lastKeyHit);
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v8::processKeyboard(Common::KeyState lastKeyHit) { void ScummEngine_v8::processKeyboard(Common::KeyState lastKeyHit) {
if (!(_game.features & GF_DEMO)) { if (!(_game.features & GF_DEMO)) {

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_INSANE_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_INSANE_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_INSANE_H #define SCUMM_INSANE_H
#include "engines/engine.h" #include "engines/engine.h"

View file

@ -848,7 +848,7 @@ protected:
byte VAR_TIMEDATE_SECOND; byte VAR_TIMEDATE_SECOND;
}; };
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
class ScummEngine_v7 : public ScummEngine_v6 { class ScummEngine_v7 : public ScummEngine_v6 {
friend class SmushPlayer; friend class SmushPlayer;
friend class Insane; friend class Insane;

View file

@ -64,7 +64,7 @@ MODULE_OBJS += \
proc3ARM.o proc3ARM.o
endif endif
ifndef DISABLE_SCUMM_7_8 ifdef ENABLE_SCUMM_7_8
MODULE_OBJS += \ MODULE_OBJS += \
nut_renderer.o \ nut_renderer.o \
script_v8.o \ script_v8.o \
@ -104,7 +104,7 @@ MODULE_OBJS += \
gfxARM.o gfxARM.o
endif endif
ifndef DISABLE_HE ifdef ENABLE_HE
MODULE_OBJS += \ MODULE_OBJS += \
he/animation_he.o \ he/animation_he.o \
he/cup_player_he.o \ he/cup_player_he.o \
@ -121,7 +121,7 @@ MODULE_OBJS += \
endif endif
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_SCUMM), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -22,7 +22,7 @@
* $Id$ * $Id$
*/ */
#if !defined(SCUMM_NUT_RENDERER_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_NUT_RENDERER_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_NUT_RENDERER_H #define SCUMM_NUT_RENDERER_H
#include "common/file.h" #include "common/file.h"

View file

@ -491,7 +491,7 @@ int ScummEngine::findObject(int x, int y) {
a = _objs[b].parentstate; a = _objs[b].parentstate;
b = _objs[b].parent; b = _objs[b].parent;
if (b == 0) { if (b == 0) {
#ifndef DISABLE_HE #ifdef ENABLE_HE
if (_game.heversion >= 71) { if (_game.heversion >= 71) {
if (((ScummEngine_v71he *)this)->_wiz->polygonHit(_objs[i].obj_nr, x, y)) if (((ScummEngine_v71he *)this)->_wiz->polygonHit(_objs[i].obj_nr, x, y))
return _objs[i].obj_nr; return _objs[i].obj_nr;
@ -614,7 +614,7 @@ void ScummEngine::drawObject(int obj, int arg) {
(_game.id == GID_FT && getClass(od.obj_nr, kObjectClassPlayer))) (_game.id == GID_FT && getClass(od.obj_nr, kObjectClassPlayer)))
flags |= Gdi::dbDrawMaskOnAll; flags |= Gdi::dbDrawMaskOnAll;
#ifndef DISABLE_HE #ifdef ENABLE_HE
if (_game.heversion >= 70 && findResource(MKID_BE('SMAP'), ptr) == NULL) if (_game.heversion >= 70 && findResource(MKID_BE('SMAP'), ptr) == NULL)
_gdi->drawBMAPObject(ptr, &_virtscr[kMainVirtScreen], obj, od.x_pos, od.y_pos, od.width, od.height); _gdi->drawBMAPObject(ptr, &_virtscr[kMainVirtScreen], obj, od.x_pos, od.y_pos, od.width, od.height);
else else
@ -1071,7 +1071,7 @@ void ScummEngine_v6::clearDrawQueues() {
_blastObjectQueuePos = 0; _blastObjectQueuePos = 0;
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v71he::clearDrawQueues() { void ScummEngine_v71he::clearDrawQueues() {
ScummEngine_v6::clearDrawQueues(); ScummEngine_v6::clearDrawQueues();
@ -1304,7 +1304,7 @@ int ScummEngine::getObjectImageCount(int object) {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
int ScummEngine_v8::getObjectIdFromOBIM(const byte *obim) { int ScummEngine_v8::getObjectIdFromOBIM(const byte *obim) {
// In V8, IMHD has no obj_id, but rather a name string. We map the name // In V8, IMHD has no obj_id, but rather a name string. We map the name
// back to an object id using a table derived from the DOBJ resource. // back to an object id using a table derived from the DOBJ resource.

View file

@ -714,7 +714,7 @@ void ScummEngine::darkenPalette(int redScale, int greenScale, int blueScale, int
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
static int HSL2RGBHelper(int n1, int n2, int hue) { static int HSL2RGBHelper(int n1, int n2, int hue) {
if (hue > 360) if (hue > 360)
hue = hue - 360; hue = hue - 360;

View file

@ -218,7 +218,7 @@ void ScummEngine::askForDisk(const char *filename, int disknum) {
char buf[128]; char buf[128];
if (_game.version == 8) { if (_game.version == 8) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
char result; char result;
_imuseDigital->stopAllSounds(); _imuseDigital->stopAllSounds();
@ -347,7 +347,7 @@ bool checkTryMedia(BaseScummFile *handle) {
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::readIndexBlock(uint32 blocktype, uint32 itemsize) { void ScummEngine_v7::readIndexBlock(uint32 blocktype, uint32 itemsize) {
int num; int num;
char *ptr; char *ptr;
@ -1081,7 +1081,7 @@ void ScummEngine_v5::readMAXS(int blockSize) {
_shadowPalette = (byte *)calloc(_shadowPaletteSize, 1); _shadowPalette = (byte *)calloc(_shadowPaletteSize, 1);
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v8::readMAXS(int blockSize) { void ScummEngine_v8::readMAXS(int blockSize) {
debug(9, "ScummEngine_v8 readMAXS: MAXS has blocksize %d", blockSize); debug(9, "ScummEngine_v8 readMAXS: MAXS has blocksize %d", blockSize);
@ -1204,7 +1204,7 @@ void ScummEngine::readGlobalObjects() {
#endif #endif
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v8::readGlobalObjects() { void ScummEngine_v8::readGlobalObjects() {
int i; int i;
int num = _fileHandle->readUint32LE(); int num = _fileHandle->readUint32LE();

View file

@ -28,7 +28,7 @@
#include "scumm/actor.h" #include "scumm/actor.h"
#include "scumm/boxes.h" #include "scumm/boxes.h"
#include "scumm/intern.h" #include "scumm/intern.h"
#ifndef DISABLE_HE #ifdef ENABLE_HE
#include "scumm/he/intern_he.h" #include "scumm/he/intern_he.h"
#endif #endif
#include "scumm/object.h" #include "scumm/object.h"
@ -560,7 +560,7 @@ void ScummEngine::resetRoomSubBlocks() {
} }
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
// Polygons in HE 80+ games // Polygons in HE 80+ games
if (_game.heversion >= 80) { if (_game.heversion >= 80) {
ptr = findResourceData(MKID_BE('POLD'), roomptr); ptr = findResourceData(MKID_BE('POLD'), roomptr);

View file

@ -235,7 +235,7 @@ bool ScummEngine::loadState(int slot, bool compat) {
if (!_imuse || _saveSound || !_saveTemporaryState) if (!_imuse || _saveSound || !_saveTemporaryState)
_sound->stopAllSounds(); _sound->stopAllSounds();
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_imuseDigital) { if (_imuseDigital) {
_imuseDigital->stopAllSounds(); _imuseDigital->stopAllSounds();
_imuseDigital->resetState(); _imuseDigital->resetState();
@ -1239,7 +1239,7 @@ void ScummEngine_v5::saveOrLoad(Serializer *s) {
s->saveLoadEntries(this, cursorEntries); s->saveLoadEntries(this, cursorEntries);
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::saveOrLoad(Serializer *s) { void ScummEngine_v7::saveOrLoad(Serializer *s) {
ScummEngine::saveOrLoad(s); ScummEngine::saveOrLoad(s);
@ -1292,7 +1292,7 @@ void ScummEngine_v70he::saveOrLoad(Serializer *s) {
s->saveLoadEntries(this, HE70Entries); s->saveLoadEntries(this, HE70Entries);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v71he::saveOrLoad(Serializer *s) { void ScummEngine_v71he::saveOrLoad(Serializer *s) {
ScummEngine_v70he::saveOrLoad(s); ScummEngine_v70he::saveOrLoad(s);

View file

@ -1102,7 +1102,7 @@ void ScummEngine_v6::o6_startSound() {
if (_game.heversion >= 60 && (_game.id != GID_PUTTDEMO)) if (_game.heversion >= 60 && (_game.id != GID_PUTTDEMO))
offset = pop(); offset = pop();
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_game.version >= 7) if (_game.version >= 7)
_imuseDigital->startSfx(pop(), 64); _imuseDigital->startSfx(pop(), 64);
else else
@ -2545,7 +2545,7 @@ void ScummEngine_v6::o6_setBlastObjectWindow() {
// So, we just handle this as no-op opcode. // So, we just handle this as no-op opcode.
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::o6_kernelSetFunctions() { void ScummEngine_v7::o6_kernelSetFunctions() {
int args[30]; int args[30];
int num; int num;

View file

@ -736,7 +736,7 @@ ScummEngine_v70he::~ScummEngine_v70he() {
free(_storedFlObjects); free(_storedFlObjects);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
ScummEngine_v71he::ScummEngine_v71he(OSystem *syst, const DetectorResult &dr) ScummEngine_v71he::ScummEngine_v71he(OSystem *syst, const DetectorResult &dr)
: ScummEngine_v70he(syst, dr) { : ScummEngine_v70he(syst, dr) {
_auxBlocksNum = 0; _auxBlocksNum = 0;
@ -858,7 +858,7 @@ void ScummEngine_vCUPhe::parseEvents() {
#endif #endif
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
ScummEngine_v7::ScummEngine_v7(OSystem *syst, const DetectorResult &dr) ScummEngine_v7::ScummEngine_v7(OSystem *syst, const DetectorResult &dr)
: ScummEngine_v6(syst, dr) { : ScummEngine_v6(syst, dr) {
_verbLineSpacing = 10; _verbLineSpacing = 10;
@ -927,7 +927,7 @@ int ScummEngine::init() {
File::addDefaultDirectory(_gameDataPath + "Rooms 3/"); File::addDefaultDirectory(_gameDataPath + "Rooms 3/");
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
#ifdef MACOSX #ifdef MACOSX
if (_game.version == 8 && !memcmp(_gameDataPath.c_str(), "/Volumes/MONKEY3_", 17)) { if (_game.version == 8 && !memcmp(_gameDataPath.c_str(), "/Volumes/MONKEY3_", 17)) {
// Special case for COMI on Mac OS X. The mount points on OS X depend // Special case for COMI on Mac OS X. The mount points on OS X depend
@ -1212,7 +1212,7 @@ void ScummEngine::setupScumm() {
_compositeBuf = (byte *)malloc(_screenWidth * _textSurfaceMultiplier * _screenHeight * _textSurfaceMultiplier); _compositeBuf = (byte *)malloc(_screenWidth * _textSurfaceMultiplier * _screenHeight * _textSurfaceMultiplier);
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::setupScumm() { void ScummEngine_v7::setupScumm() {
_musicEngine = _imuseDigital = new IMuseDigital(this, _mixer, 10); _musicEngine = _imuseDigital = new IMuseDigital(this, _mixer, 10);
@ -1238,7 +1238,7 @@ void ScummEngine::setupCharsetRenderer() {
_charset = new CharsetRendererV2(this, _language); _charset = new CharsetRendererV2(this, _language);
else if (_game.version == 3) else if (_game.version == 3)
_charset = new CharsetRendererV3(this); _charset = new CharsetRendererV3(this);
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
else if (_game.version == 8) else if (_game.version == 8)
_charset = new CharsetRendererNut(this); _charset = new CharsetRendererNut(this);
#endif #endif
@ -1479,7 +1479,7 @@ void ScummEngine_v60he::resetScumm() {
setCursorHotspot(16, 16); setCursorHotspot(16, 16);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v72he::resetScumm() { void ScummEngine_v72he::resetScumm() {
ScummEngine_v60he::resetScumm(); ScummEngine_v60he::resetScumm();
@ -1954,7 +1954,7 @@ load_game:
CursorMan.showMouse(_cursor.state > 0); CursorMan.showMouse(_cursor.state > 0);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v90he::scummLoop(int delta) { void ScummEngine_v90he::scummLoop(int delta) {
_moviePlay->handleNextFrame(); _moviePlay->handleNextFrame();
if (_game.heversion >= 98) { if (_game.heversion >= 98) {
@ -2051,7 +2051,7 @@ void ScummEngine::scummLoop_handleSaveLoad() {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v8::scummLoop_handleSaveLoad() { void ScummEngine_v8::scummLoop_handleSaveLoad() {
ScummEngine::scummLoop_handleSaveLoad(); ScummEngine::scummLoop_handleSaveLoad();
@ -2067,7 +2067,7 @@ void ScummEngine::scummLoop_handleDrawing() {
processDrawQue(); processDrawQue();
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::scummLoop_handleDrawing() { void ScummEngine_v7::scummLoop_handleDrawing() {
ScummEngine_v6::scummLoop_handleDrawing(); ScummEngine_v6::scummLoop_handleDrawing();
@ -2077,7 +2077,7 @@ void ScummEngine_v7::scummLoop_handleDrawing() {
} }
#endif #endif
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v90he::scummLoop_handleDrawing() { void ScummEngine_v90he::scummLoop_handleDrawing() {
ScummEngine_v80he::scummLoop_handleDrawing(); ScummEngine_v80he::scummLoop_handleDrawing();
@ -2125,7 +2125,7 @@ void ScummEngine::scummLoop_handleSound() {
_sound->processSound(); _sound->processSound();
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::scummLoop_handleSound() { void ScummEngine_v7::scummLoop_handleSound() {
ScummEngine_v6::scummLoop_handleSound(); ScummEngine_v6::scummLoop_handleSound();
if (_imuseDigital) { if (_imuseDigital) {
@ -2226,7 +2226,7 @@ void ScummEngine::runBootscript() {
runScript(1, 0, 0, args); runScript(1, 0, 0, args);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v90he::runBootscript() { void ScummEngine_v90he::runBootscript() {
if (_game.heversion >= 98) { if (_game.heversion >= 98) {
_logicHE->initOnce(); _logicHE->initOnce();
@ -2284,7 +2284,7 @@ int ScummEngine::runDialog(Dialog &dialog) {
return result; return result;
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
int ScummEngine_v7::runDialog(Dialog &dialog) { int ScummEngine_v7::runDialog(Dialog &dialog) {
_splayer->pause(); _splayer->pause();
int result = ScummEngine::runDialog(dialog); int result = ScummEngine::runDialog(dialog);

View file

@ -23,7 +23,7 @@
* *
*/ */
#if !defined(SCUMM_SMUSH_PLAYER_H) && !defined(DISABLE_SCUMM_7_8) #if !defined(SCUMM_SMUSH_PLAYER_H) && defined(ENABLE_SCUMM_7_8)
#define SCUMM_SMUSH_PLAYER_H #define SCUMM_SMUSH_PLAYER_H
#include "common/util.h" #include "common/util.h"

View file

@ -675,7 +675,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle
} }
if (_vm->_imuseDigital) { if (_vm->_imuseDigital) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
//_vm->_imuseDigital->stopSound(kTalkSoundID); //_vm->_imuseDigital->stopSound(kTalkSoundID);
_vm->_imuseDigital->startVoice(kTalkSoundID, input); _vm->_imuseDigital->startVoice(kTalkSoundID, input);
#endif #endif
@ -688,7 +688,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle
void Sound::stopTalkSound() { void Sound::stopTalkSound() {
if (_sfxMode & 2) { if (_sfxMode & 2) {
if (_vm->_imuseDigital) { if (_vm->_imuseDigital) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
_vm->_imuseDigital->stopSound(kTalkSoundID); _vm->_imuseDigital->stopSound(kTalkSoundID);
#endif #endif
} else if (_vm->_game.heversion >= 60) { } else if (_vm->_game.heversion >= 60) {
@ -718,7 +718,7 @@ bool Sound::isMouthSyncOff(uint pos) {
} }
int Sound::isSoundRunning(int sound) const { int Sound::isSoundRunning(int sound) const {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_vm->_imuseDigital) if (_vm->_imuseDigital)
return (_vm->_imuseDigital->getSoundStatus(sound) != 0); return (_vm->_imuseDigital->getSoundStatus(sound) != 0);
#endif #endif
@ -754,7 +754,7 @@ int Sound::isSoundRunning(int sound) const {
*/ */
bool Sound::isSoundInUse(int sound) const { bool Sound::isSoundInUse(int sound) const {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_vm->_imuseDigital) if (_vm->_imuseDigital)
return (_vm->_imuseDigital->getSoundStatus(sound) != 0); return (_vm->_imuseDigital->getSoundStatus(sound) != 0);
#endif #endif
@ -848,7 +848,7 @@ void Sound::stopAllSounds() {
void Sound::soundKludge(int *list, int num) { void Sound::soundKludge(int *list, int num) {
int i; int i;
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_vm->_imuseDigital) { if (_vm->_imuseDigital) {
_vm->_imuseDigital->parseScriptCmds(list[0], list[1], list[2], list[3], list[4], _vm->_imuseDigital->parseScriptCmds(list[0], list[1], list[2], list[3], list[4],
list[5], list[6], list[7]); list[5], list[6], list[7]);
@ -912,7 +912,7 @@ void Sound::pauseSounds(bool pause) {
_soundsPaused = pause; _soundsPaused = pause;
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_vm->_imuseDigital) { if (_vm->_imuseDigital) {
_vm->_imuseDigital->pause(pause); _vm->_imuseDigital->pause(pause);
} }

View file

@ -34,7 +34,7 @@
#include "scumm/file.h" #include "scumm/file.h"
#include "scumm/imuse_digi/dimuse.h" #include "scumm/imuse_digi/dimuse.h"
#include "scumm/intern.h" #include "scumm/intern.h"
#ifndef DISABLE_HE #ifdef ENABLE_HE
#include "scumm/he/intern_he.h" #include "scumm/he/intern_he.h"
#endif #endif
#include "scumm/verbs.h" #include "scumm/verbs.h"
@ -66,7 +66,7 @@ void ScummEngine::printString(int m, const byte *msg) {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v8::printString(int m, const byte *msg) { void ScummEngine_v8::printString(int m, const byte *msg) {
if (m == 4) { if (m == 4) {
const StringTab &st = _string[m]; const StringTab &st = _string[m];
@ -220,7 +220,7 @@ void ScummEngine_v6::removeBlastTexts() {
#pragma mark - #pragma mark -
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::processSubtitleQueue() { void ScummEngine_v7::processSubtitleQueue() {
for (int i = 0; i < _subtitleQueuePos; ++i) { for (int i = 0; i < _subtitleQueuePos; ++i) {
SubtitleText *st = &_subtitleQueue[i]; SubtitleText *st = &_subtitleQueue[i];
@ -353,7 +353,7 @@ bool ScummEngine::handleNextCharsetCode(Actor *a, int *code) {
return (c != 2 && c != 3); return (c != 2 && c != 3);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
bool ScummEngine_v72he::handleNextCharsetCode(Actor *a, int *code) { bool ScummEngine_v72he::handleNextCharsetCode(Actor *a, int *code) {
const int charsetCode = (_game.heversion >= 80) ? 127 : 64; const int charsetCode = (_game.heversion >= 80) ? 127 : 64;
uint32 talk_sound_a = 0; uint32 talk_sound_a = 0;
@ -431,7 +431,7 @@ bool ScummEngine_v72he::handleNextCharsetCode(Actor *a, int *code) {
void ScummEngine::CHARSET_1() { void ScummEngine::CHARSET_1() {
Actor *a; Actor *a;
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
byte subtitleBuffer[200]; byte subtitleBuffer[200];
byte *subtitleLine = subtitleBuffer; byte *subtitleLine = subtitleBuffer;
Common::Point subtitlePos; Common::Point subtitlePos;
@ -533,7 +533,7 @@ void ScummEngine::CHARSET_1() {
if (!_keepText) { if (!_keepText) {
if (_game.version >= 7) { if (_game.version >= 7) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
((ScummEngine_v7 *)this)->clearSubtitleQueue(); ((ScummEngine_v7 *)this)->clearSubtitleQueue();
_nextLeft = _string[0].xpos; _nextLeft = _string[0].xpos;
_nextTop = _string[0].ypos + _screenTop; _nextTop = _string[0].ypos + _screenTop;
@ -574,7 +574,7 @@ void ScummEngine::CHARSET_1() {
if (c == 13) { if (c == 13) {
newLine:; newLine:;
_nextLeft = _string[0].xpos; _nextLeft = _string[0].xpos;
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_game.version >= 7 && subtitleLine != subtitleBuffer) { if (_game.version >= 7 && subtitleLine != subtitleBuffer) {
((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID()); ((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID());
subtitleLine = subtitleBuffer; subtitleLine = subtitleBuffer;
@ -613,7 +613,7 @@ void ScummEngine::CHARSET_1() {
_charset->_top = _nextTop; _charset->_top = _nextTop;
if (_game.version >= 7) { if (_game.version >= 7) {
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (subtitleLine == subtitleBuffer) { if (subtitleLine == subtitleBuffer) {
subtitlePos.x = _charset->_left; subtitlePos.x = _charset->_left;
// BlastText position is relative to the top of the screen, adjust y-coordinate // BlastText position is relative to the top of the screen, adjust y-coordinate
@ -660,14 +660,14 @@ void ScummEngine::CHARSET_1() {
} }
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
if (_game.version >= 7 && subtitleLine != subtitleBuffer) { if (_game.version >= 7 && subtitleLine != subtitleBuffer) {
((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID()); ((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID());
} }
#endif #endif
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::CHARSET_1() { void ScummEngine_v7::CHARSET_1() {
if (_game.id == GID_FT) { if (_game.id == GID_FT) {
ScummEngine::CHARSET_1(); ScummEngine::CHARSET_1();
@ -1128,7 +1128,7 @@ int ScummEngine::convertMessageToString(const byte *msg, byte *dst, int dstSize)
return dstSize - (end - dst); return dstSize - (end - dst);
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
int ScummEngine_v72he::convertMessageToString(const byte *msg, byte *dst, int dstSize) { int ScummEngine_v72he::convertMessageToString(const byte *msg, byte *dst, int dstSize) {
uint num = 0; uint num = 0;
byte chr; byte chr;
@ -1245,7 +1245,7 @@ int ScummEngine::convertStringMessage(byte *dst, int dstSize, int var) {
#pragma mark - #pragma mark -
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v80he::initCharset(int charsetno) { void ScummEngine_v80he::initCharset(int charsetno) {
ScummEngine::initCharset(charsetno); ScummEngine::initCharset(charsetno);
VAR(VAR_CURRENT_CHARSET) = charsetno; VAR(VAR_CURRENT_CHARSET) = charsetno;
@ -1273,7 +1273,7 @@ void ScummEngine::initCharset(int charsetno) {
#pragma mark - #pragma mark -
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
static int indexCompare(const void *p1, const void *p2) { static int indexCompare(const void *p1, const void *p2) {
const ScummEngine_v7::LangIndexNode *i1 = (const ScummEngine_v7::LangIndexNode *) p1; const ScummEngine_v7::LangIndexNode *i1 = (const ScummEngine_v7::LangIndexNode *) p1;
const ScummEngine_v7::LangIndexNode *i2 = (const ScummEngine_v7::LangIndexNode *) p2; const ScummEngine_v7::LangIndexNode *i2 = (const ScummEngine_v7::LangIndexNode *) p2;

View file

@ -216,7 +216,7 @@ void ScummEngine_v70he::setupScummVars() {
VAR_SOUND_CHANNEL = 14; VAR_SOUND_CHANNEL = 14;
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v72he::setupScummVars() { void ScummEngine_v72he::setupScummVars() {
VAR_KEYPRESS = 0; VAR_KEYPRESS = 0;
VAR_DEBUGMODE = 1; VAR_DEBUGMODE = 1;
@ -333,7 +333,7 @@ void ScummEngine_v90he::setupScummVars() {
} }
#endif #endif
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::setupScummVars() { void ScummEngine_v7::setupScummVars() {
VAR_MOUSE_X = 1; VAR_MOUSE_X = 1;
VAR_MOUSE_Y = 2; VAR_MOUSE_Y = 2;
@ -568,7 +568,7 @@ void ScummEngine_v5::resetScummVars() {
_scummVars[74] = 1225; _scummVars[74] = 1225;
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::resetScummVars() { void ScummEngine_v7::resetScummVars() {
ScummEngine::resetScummVars(); ScummEngine::resetScummVars();
@ -633,7 +633,7 @@ void ScummEngine_v70he::resetScummVars() {
VAR(VAR_TALK_CHANNEL) = 2; VAR(VAR_TALK_CHANNEL) = 2;
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v72he::resetScummVars() { void ScummEngine_v72he::resetScummVars() {
ScummEngine_v70he::resetScummVars(); ScummEngine_v70he::resetScummVars();

View file

@ -514,7 +514,7 @@ void ScummEngine_v0::handleMouseOver(bool updateInventory) {
drawSentence(); drawSentence();
} }
#ifndef DISABLE_HE #ifdef ENABLE_HE
void ScummEngine_v72he::checkExecVerbs() { void ScummEngine_v72he::checkExecVerbs() {
VAR(VAR_MOUSE_STATE) = 0; VAR(VAR_MOUSE_STATE) = 0;
@ -797,7 +797,7 @@ int ScummEngine::findVerbAtPos(int x, int y) const {
return 0; return 0;
} }
#ifndef DISABLE_SCUMM_7_8 #ifdef ENABLE_SCUMM_7_8
void ScummEngine_v7::drawVerb(int verb, int mode) { void ScummEngine_v7::drawVerb(int verb, int mode) {
VerbSlot *vs; VerbSlot *vs;

View file

@ -24,7 +24,7 @@ MODULE_OBJS := \
music/musicbase.o music/musicbase.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_SKY), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -247,7 +247,11 @@ SaveStateList SkyMetaEngine::listSaves(const char *target) const {
return saveList; return saveList;
} }
REGISTER_PLUGIN(SKY, PLUGIN_TYPE_ENGINE, SkyMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(SKY)
REGISTER_PLUGIN_DYNAMIC(SKY, PLUGIN_TYPE_ENGINE, SkyMetaEngine);
#else
REGISTER_PLUGIN_STATIC(SKY, PLUGIN_TYPE_ENGINE, SkyMetaEngine);
#endif
namespace Sky { namespace Sky {

View file

@ -21,7 +21,7 @@ MODULE_OBJS := \
text.o text.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_SWORD1), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -187,7 +187,11 @@ PluginError SwordMetaEngine::createInstance(OSystem *syst, Engine **engine) cons
return kNoError; return kNoError;
} }
REGISTER_PLUGIN(SWORD1, PLUGIN_TYPE_ENGINE, SwordMetaEngine); #if PLUGIN_ENABLED_DYNAMIC(SWORD1)
REGISTER_PLUGIN_DYNAMIC(SWORD1, PLUGIN_TYPE_ENGINE, SwordMetaEngine);
#else
REGISTER_PLUGIN_STATIC(SWORD1, PLUGIN_TYPE_ENGINE, SwordMetaEngine);
#endif
namespace Sword1 { namespace Sword1 {

View file

@ -34,7 +34,7 @@ MODULE_OBJS := \
walker.o walker.o
# This module can be built as a plugin # This module can be built as a plugin
ifdef BUILD_PLUGINS ifeq ($(ENABLE_SWORD2), DYNAMIC_PLUGIN)
PLUGIN := 1 PLUGIN := 1
endif endif

View file

@ -180,7 +180,11 @@ PluginError Sword2MetaEngine::createInstance(OSystem *syst, Engine **engine) con
return kNoGameDataFoundError; return kNoGameDataFoundError;
} }
REGISTER_PLUGIN(SWORD2, PLUGIN_TYPE_ENGINE, Sword2MetaEngine); #if PLUGIN_ENABLED_DYNAMIC(SWORD2)
REGISTER_PLUGIN_DYNAMIC(SWORD2, PLUGIN_TYPE_ENGINE, Sword2MetaEngine);
#else
REGISTER_PLUGIN_STATIC(SWORD2, PLUGIN_TYPE_ENGINE, Sword2MetaEngine);
#endif
namespace Sword2 { namespace Sword2 {

Some files were not shown because too many files have changed in this diff Show more