diff options
author | Jordi Vilalta Prat | 2008-05-06 03:00:26 +0000 |
---|---|---|
committer | Jordi Vilalta Prat | 2008-05-06 03:00:26 +0000 |
commit | 38a8aa516e0fa315e318801e5399f82e51efa8df (patch) | |
tree | c6f7bc89fe2340a846ef891cefc9031cfdb32ec9 | |
parent | 3ac46924e311afb6b02615af04556da823c4f3f3 (diff) | |
download | scummvm-rg350-38a8aa516e0fa315e318801e5399f82e51efa8df.tar.gz scummvm-rg350-38a8aa516e0fa315e318801e5399f82e51efa8df.tar.bz2 scummvm-rg350-38a8aa516e0fa315e318801e5399f82e51efa8df.zip |
Allow static and dynamic plugins to be used at the same time
svn-id: r31888
103 files changed, 507 insertions, 501 deletions
diff --git a/Makefile.common b/Makefile.common index ea46b4cca4..5a443644f2 100644 --- a/Makefile.common +++ b/Makefile.common @@ -22,11 +22,11 @@ MODULES := test tools base $(MODULES) # After the game specific modules follow the shared modules MODULES += \ - engines \ gui \ graphics \ sound \ common \ + engines \ backends ifdef USE_MT32EMU @@ -182,22 +182,22 @@ DIST_FILES_THEMES:=$(addprefix $(srcdir)/gui/themes/,modern.ini modern.zip class # Engine data files DIST_FILES_ENGINEDATA= -ifndef DISABLE_IGOR +ifdef ENABLE_IGOR DIST_FILES_ENGINEDATA+=igor.tbl endif -ifndef DISABLE_KYRA +ifdef ENABLE_KYRA DIST_FILES_ENGINEDATA+=kyra.dat endif -ifndef DISABLE_LURE +ifdef ENABLE_LURE DIST_FILES_ENGINEDATA+=lure.dat endif -ifndef DISABLE_M4 +ifdef ENABLE_M4 DIST_FILES_ENGINEDATA+=m4.dat endif -ifndef DISABLE_QUEEN +ifdef ENABLE_QUEEN DIST_FILES_ENGINEDATA+=queen.tbl endif -ifndef DISABLE_SKY +ifdef ENABLE_SKY DIST_FILES_ENGINEDATA+=sky.cpt endif DIST_FILES_ENGINEDATA:=$(addprefix $(srcdir)/dists/engine-data/,$(DIST_FILES_ENGINEDATA)) diff --git a/backends/platform/PalmOS/Src/modules.cpp b/backends/platform/PalmOS/Src/modules.cpp index f66d7d6ae6..b16e2cf7d5 100644 --- a/backends/platform/PalmOS/Src/modules.cpp +++ b/backends/platform/PalmOS/Src/modules.cpp @@ -87,9 +87,9 @@ static UInt32 ModulesPalmMain(UInt16 cmd, MemPtr cmdPBP, UInt16 launchFlags) #ifdef PALMOS_NATIVE result = GET_MODEARM; #else -# if !defined(DISABLE_SCUMM) || \ - !defined(DISABLE_AGOS) || \ - !defined(DISABLE_SWORD1) +# if defined(ENABLE_SCUMM) || \ + defined(ENABLE_AGOS) || \ + defined(ENABLE_SWORD1) result = GET_DATACOMMON|GET_DATAENGINE|GET_MODE68K; # else result = GET_DATACOMMON|GET_MODE68K; diff --git a/backends/platform/PalmOS/Src/prefixes/compile.h b/backends/platform/PalmOS/Src/prefixes/compile.h index 40485a5927..c2bb51385a 100644 --- a/backends/platform/PalmOS/Src/prefixes/compile.h +++ b/backends/platform/PalmOS/Src/prefixes/compile.h @@ -26,27 +26,27 @@ #ifndef __COMPILE_H__ #define __COMPILE_H__ -#define DISABLE_SCUMM -#define DISABLE_SCUMM_7_8 -#define DISABLE_HE +#undef ENABLE_SCUMM +#undef ENABLE_SCUMM_7_8 +#undef ENABLE_HE -#define DISABLE_AGOS -#define DISABLE_SKY -#define DISABLE_SWORD1 -#define DISABLE_SWORD2 -#define DISABLE_QUEEN -#define DISABLE_SAGA -#define DISABLE_KYRA -#define DISABLE_AWE -#define DISABLE_GOB -#define DISABLE_LURE -#define DISABLE_CINE -#define DISABLE_AGI -#define DISABLE_TOUCHE -#define DISABLE_PARALLACTION -#define DISABLE_CRUISE -#define DISABLE_DRASCULA -#define DISABLE_IGOR +#undef ENABLE_AGOS +#undef ENABLE_SKY +#undef ENABLE_SWORD1 +#undef ENABLE_SWORD2 +#undef ENABLE_QUEEN +#undef ENABLE_SAGA +#undef ENABLE_KYRA +#undef ENABLE_AWE +#undef ENABLE_GOB +#undef ENABLE_LURE +#undef ENABLE_CINE +#undef ENABLE_AGI +#undef ENABLE_TOUCHE +#undef ENABLE_PARALLACTION +#undef ENABLE_CRUISE +#undef ENABLE_DRASCULA +#undef ENABLE_IGOR // ScummVM #define DISABLE_HQ_SCALERS diff --git a/backends/platform/PalmOS/Src/prefixes/native_agi.h b/backends/platform/PalmOS/Src/prefixes/native_agi.h index 790f108efa..f3feee8c70 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_agi.h +++ b/backends/platform/PalmOS/Src/prefixes/native_agi.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_AGI +#define ENABLE_AGI STATIC_PLUGIN #undef USE_MAD #undef USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_agos.h b/backends/platform/PalmOS/Src/prefixes/native_agos.h index f3b3476262..8a804e3116 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_agos.h +++ b/backends/platform/PalmOS/Src/prefixes/native_agos.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_AGOS +#define ENABLE_AGOS STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_cine.h b/backends/platform/PalmOS/Src/prefixes/native_cine.h index bacdfa2047..3d19d9c557 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_cine.h +++ b/backends/platform/PalmOS/Src/prefixes/native_cine.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_CINE +#define ENABLE_CINE STATIC_PLUGIN #define _DEBUG #undef USE_MAD diff --git a/backends/platform/PalmOS/Src/prefixes/native_cruise.h b/backends/platform/PalmOS/Src/prefixes/native_cruise.h index 9bc0cdac13..89e6e65a70 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_cruise.h +++ b/backends/platform/PalmOS/Src/prefixes/native_cruise.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_CRUISE +#define ENABLE_CRUISE STATIC_PLUGIN #undef USE_MAD #undef USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_drascula.h b/backends/platform/PalmOS/Src/prefixes/native_drascula.h index 3904cc98ba..35bc381af4 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_drascula.h +++ b/backends/platform/PalmOS/Src/prefixes/native_drascula.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_DRASCULA +#define ENABLE_DRASCULA STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_gob.h b/backends/platform/PalmOS/Src/prefixes/native_gob.h index 16863cd5b6..9cb34099d0 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_gob.h +++ b/backends/platform/PalmOS/Src/prefixes/native_gob.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_GOB +#define ENABLE_GOB STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_igor.h b/backends/platform/PalmOS/Src/prefixes/native_igor.h index 749be9daaf..2808dd2331 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_igor.h +++ b/backends/platform/PalmOS/Src/prefixes/native_igor.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_IGOR +#define ENABLE_IGOR STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_kyra.h b/backends/platform/PalmOS/Src/prefixes/native_kyra.h index 7f6dd57565..c89b0a5b93 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_kyra.h +++ b/backends/platform/PalmOS/Src/prefixes/native_kyra.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_KYRA +#define ENABLE_KYRA #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_lure.h b/backends/platform/PalmOS/Src/prefixes/native_lure.h index b017c46fe6..71835ee644 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_lure.h +++ b/backends/platform/PalmOS/Src/prefixes/native_lure.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_LURE +#define ENABLE_LURE STATIC_PLUGIN #undef USE_MAD #undef USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_parallaction.h b/backends/platform/PalmOS/Src/prefixes/native_parallaction.h index 545cdd36fd..e8d46cc382 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_parallaction.h +++ b/backends/platform/PalmOS/Src/prefixes/native_parallaction.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_PARALLACTION +#define ENABLE_PARALLACTION STATIC_PLUGIN #undef USE_MAD #undef USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_queen.h b/backends/platform/PalmOS/Src/prefixes/native_queen.h index d2a1b44ef8..85bb5a0a04 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_queen.h +++ b/backends/platform/PalmOS/Src/prefixes/native_queen.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_QUEEN +#define ENABLE_QUEEN STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_saga.h b/backends/platform/PalmOS/Src/prefixes/native_saga.h index 1a728e6bcb..19db05b633 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_saga.h +++ b/backends/platform/PalmOS/Src/prefixes/native_saga.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_SAGA +#define ENABLE_SAGA STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_scumm.h b/backends/platform/PalmOS/Src/prefixes/native_scumm.h index 5014a8d5ff..b8433a3fa8 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_scumm.h +++ b/backends/platform/PalmOS/Src/prefixes/native_scumm.h @@ -2,9 +2,9 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_SCUMM -#undef DISABLE_SCUMM_7_8 -#undef DISABLE_HE +#define ENABLE_SCUMM STATIC_PLUGIN +#define ENABLE_SCUMM_7_8 +#define ENABLE_HE #define USE_ARM_GFX_ASM #define USE_ARM_SMUSH_ASM diff --git a/backends/platform/PalmOS/Src/prefixes/native_sky.h b/backends/platform/PalmOS/Src/prefixes/native_sky.h index 193c57e87d..49b157471f 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_sky.h +++ b/backends/platform/PalmOS/Src/prefixes/native_sky.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_SKY +#define ENABLE_SKY STATIC_PLUGIN #endif diff --git a/backends/platform/PalmOS/Src/prefixes/native_sword1.h b/backends/platform/PalmOS/Src/prefixes/native_sword1.h index 8e52a978a8..aaae4c9b86 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_sword1.h +++ b/backends/platform/PalmOS/Src/prefixes/native_sword1.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_SWORD1 +#define ENABLE_SWORD1 #define USE_MPEG2 #define USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_sword2.h b/backends/platform/PalmOS/Src/prefixes/native_sword2.h index f74a8bcc9a..5e9c45b047 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_sword2.h +++ b/backends/platform/PalmOS/Src/prefixes/native_sword2.h @@ -2,7 +2,7 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_SWORD2 +#define ENABLE_SWORD2 STATIC_PLUGIN #undef _DEBUG #define USE_MPEG2 #define USE_VORBIS diff --git a/backends/platform/PalmOS/Src/prefixes/native_touche.h b/backends/platform/PalmOS/Src/prefixes/native_touche.h index 486630b799..acf50e2787 100644 --- a/backends/platform/PalmOS/Src/prefixes/native_touche.h +++ b/backends/platform/PalmOS/Src/prefixes/native_touche.h @@ -2,6 +2,6 @@ #define PREFIX_H #include "native_common.h" -#undef DISABLE_TOUCHE +#define ENABLE_TOUCHE STATIC_PLUGIN #endif diff --git a/backends/platform/ds/arm9/makefile b/backends/platform/ds/arm9/makefile index 116d75b191..b114c79b48 100644 --- a/backends/platform/ds/arm9/makefile +++ b/backends/platform/ds/arm9/makefile @@ -86,184 +86,54 @@ ARM = 1 ifdef DS_BUILD_A DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM LOGO = logoa.bmp - DISABLE_HE = 1 - #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 + ENABLE_SCUMM = STATIC_PLUGIN USE_ARM_GFX_ASM = 1 - DISABLE_CRUISE = 1 - DISABLE_DRASCULA = 1 - DISABLE_IGOR = 1 BUILD=scummvm-A endif ifdef DS_BUILD_B DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_B LOGO = logob.bmp - DISABLE_HE = 1 - 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 + ENABLE_SKY = STATIC_PLUGIN + ENABLE_QUEEN = STATIC_PLUGIN BUILD=scummvm-B endif ifdef DS_BUILD_C DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_C LOGO = logoc.bmp - DISABLE_HE = 1 - 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 + ENABLE_AGOS = STATIC_PLUGIN BUILD=scummvm-C endif ifdef DS_BUILD_D DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_D LOGO = logod.bmp - DISABLE_HE = 1 - 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 + ENABLE_GOB = STATIC_PLUGIN + ENABLE_CINE = STATIC_PLUGIN + ENABLE_AGI = STATIC_PLUGIN BUILD=scummvm-D endif - ifdef DS_BUILD_E DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_E LOGO = logoe.bmp - DISABLE_HE = 1 - 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 + ENABLE_SAGA = STATIC_PLUGIN BUILD=scummvm-E endif - ifdef DS_BUILD_F DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_F LOGO = logof.bmp - DISABLE_HE = 1 - 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 + ENABLE_KYRA = STATIC_PLUGIN BUILD=scummvm-F - endif - - ifdef DS_BUILD_G DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_G LOGO = logog.bmp - DISABLE_HE = 1 - 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 + ENABLE_LURE = STATIC_PLUGIN BUILD=scummvm-G - endif diff --git a/backends/platform/ds/arm9/source/dsmain.cpp b/backends/platform/ds/arm9/source/dsmain.cpp index 0aed095244..d11e4e6f75 100644 --- a/backends/platform/ds/arm9/source/dsmain.cpp +++ b/backends/platform/ds/arm9/source/dsmain.cpp @@ -359,7 +359,7 @@ void initSprites() { void saveGameBackBuffer() { -#ifdef DISABLE_SCUMM +#ifndef ENABLE_SCUMM if (savedBuffer == NULL) savedBuffer = new u8[gameWidth * gameHeight]; for (int r = 0; r < gameHeight; r++) { @@ -375,7 +375,7 @@ void saveGameBackBuffer() { } void restoreGameBackBuffer() { -#ifdef DISABLE_SCUMM +#ifndef ENABLE_SCUMM if (savedBuffer) { for (int r = 0; r < gameHeight; r++) { diff --git a/backends/platform/ds/arm9/source/wordcompletion.cpp b/backends/platform/ds/arm9/source/wordcompletion.cpp index b5bebddb54..bf4ce7c909 100644 --- a/backends/platform/ds/arm9/source/wordcompletion.cpp +++ b/backends/platform/ds/arm9/source/wordcompletion.cpp @@ -2,7 +2,7 @@ #include "engines/agi/agi.h" #include "osystem_ds.h" -#ifndef DISABLE_AGI +#ifdef ENABLE_AGI namespace DS { // Default dictionary is about 64Kb, so 128Kb should be enough for future expansion diff --git a/backends/platform/gp32/Makefile b/backends/platform/gp32/Makefile index 327bee9d10..f7145bf860 100644 --- a/backends/platform/gp32/Makefile +++ b/backends/platform/gp32/Makefile @@ -153,26 +153,26 @@ HAVE_GCC3 = 1 DISABLE_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? -DISABLE_SCUMM_7_8 = 1 -DISABLE_HE = 1 - -#DISABLE_AGOS = 1 -#DISABLE_SKY = 1 -#DISABLE_QUEEN = 1 -#DISABLE_GOB = 1 -#DISABLE_LURE = 1 -#DISABLE_CINE = 1 -#DISABLE_SAGA = 1 -#DISABLE_KYRA = 1 -#DISABLE_AGI = 1 +#ENABLE_SCUMM_7_8 = 1 +#ENABLE_HE = 1 + +ENABLE_AGOS = STATIC_PLUGIN +ENABLE_SKY = STATIC_PLUGIN +ENABLE_QUEEN = STATIC_PLUGIN +ENABLE_GOB = STATIC_PLUGIN +ENABLE_LURE = STATIC_PLUGIN +ENABLE_CINE = STATIC_PLUGIN +ENABLE_SAGA = STATIC_PLUGIN +ENABLE_KYRA = STATIC_PLUGIN +ENABLE_AGI = STATIC_PLUGIN # The engines below are not supported on the GP32 port so there is # no point compiling support into the binary. -DISABLE_SWORD1 = 1 -DISABLE_SWORD2 = 1 +#ENABLE_SWORD1 = STATIC_PLUGIN +#ENABLE_SWORD2 = STATIC_PLUGIN ####################################################################### # Misc stuff - you should normally never have to edit this # diff --git a/backends/platform/wince/Makefile b/backends/platform/wince/Makefile index 51ff9d0a81..a99d9a6bde 100644 --- a/backends/platform/wince/Makefile +++ b/backends/platform/wince/Makefile @@ -13,27 +13,28 @@ ## Do you want a build using plugins? #BUILD_PLUGINS = 1 +# TODO: You'll need to change STATIC_PLUGIN to DYNAMIC_PLUGIN below ######################################################################## -## Disable whichever engines you want here - -#DISABLE_SCUMM = 1 -#DISABLE_SKY = 1 -#DISABLE_QUEEN = 1 -#DISABLE_GOB = 1 -#DISABLE_LURE = 1 -#DISABLE_CINE = 1 -#DISABLE_SAGA = 1 -#DISABLE_KYRA = 1 -#DISABLE_AGI = 1 -#DISABLE_AGOS = 1 -#DISABLE_SWORD1 = 1 -#DISABLE_SWORD2 = 1 -#DISABLE_TOUCHE = 1 -#DISABLE_PARALLACTION = 1 -DISABLE_CRUISE = 1 -DISABLE_DRASCULA = 1 -DISABLE_IGOR = 1 +## Enable whichever engines you want here + +ENABLE_SCUMM = STATIC_PLUGIN +ENABLE_SKY = STATIC_PLUGIN +ENABLE_QUEEN = STATIC_PLUGIN +ENABLE_GOB = STATIC_PLUGIN +ENABLE_LURE = STATIC_PLUGIN +ENABLE_CINE = STATIC_PLUGIN +ENABLE_SAGA = STATIC_PLUGIN +ENABLE_KYRA = STATIC_PLUGIN +ENABLE_AGI = STATIC_PLUGIN +ENABLE_AGOS = STATIC_PLUGIN +ENABLE_SWORD1 = STATIC_PLUGIN +ENABLE_SWORD2 = STATIC_PLUGIN +ENABLE_TOUCHE = STATIC_PLUGIN +ENABLE_PARALLACTION = STATIC_PLUGIN +#ENABLE_CRUISE = STATIC_PLUGIN +#ENABLE_DRASCULA = STATIC_PLUGIN +#ENABLE_IGOR = STATIC_PLUGIN ######################################################################## ## Pick which libraries you want to use here diff --git a/base/commandLine.cpp b/base/commandLine.cpp index 573cb59c79..a4c867edee 100644 --- a/base/commandLine.cpp +++ b/base/commandLine.cpp @@ -116,14 +116,14 @@ static const char HELP_STRING[] = " --render-mode=MODE Enable additional render modes (cga, ega, hercGreen,\n" " hercAmber, amiga)\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" " Steel Sky and Flight of the Amazon Queen\n" #endif " --copy-protection Enable copy protection in SCUMM games, when\n" " ScummVM disables it by default.\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" " --tempo=NUM Set music tempo (in percent, 50-200) for SCUMM games\n" " (default: 100)\n" @@ -190,19 +190,19 @@ void registerDefaults() { ConfMan.registerDefault("save_slot", -1); 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); #endif ConfMan.registerDefault("copy_protection", false); ConfMan.registerDefault("talkspeed", 60); -#ifndef DISABLE_SCUMM +#ifdef ENABLE_SCUMM ConfMan.registerDefault("demo_mode", false); ConfMan.registerDefault("tempo", 0); #endif -#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN) +#if defined(ENABLE_SKY) || defined(ENABLE_QUEEN) ConfMan.registerDefault("alt_intro", false); #endif @@ -513,7 +513,7 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, char **ar DO_LONG_OPTION("target-md5") END_OPTION -#ifndef DISABLE_SCUMM +#ifdef ENABLE_SCUMM DO_LONG_OPTION_INT("tempo") END_OPTION @@ -521,7 +521,7 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, char **ar END_OPTION #endif -#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN) +#if defined(ENABLE_SKY) || defined(ENABLE_QUEEN) DO_LONG_OPTION_BOOL("alt-intro") END_OPTION #endif diff --git a/base/plugins.cpp b/base/plugins.cpp index c62d1a00b9..9e2c2599ce 100644 --- a/base/plugins.cpp +++ b/base/plugins.cpp @@ -63,7 +63,6 @@ SaveStateList Plugin::listSaves(const char *target) const { } -#ifndef DYNAMIC_MODULES class StaticPlugin : public Plugin { public: StaticPlugin(PluginObject *pluginobject, PluginType type) { @@ -100,61 +99,61 @@ public: // "Loader" for the static plugins. // Iterate over all registered (static) plugins and load them. - #ifndef DISABLE_SCUMM + #if PLUGIN_ENABLED_STATIC(SCUMM) LINK_PLUGIN(SCUMM) #endif - #ifndef DISABLE_AGI + #if PLUGIN_ENABLED_STATIC(AGI) LINK_PLUGIN(AGI) #endif - #ifndef DISABLE_AGOS + #if PLUGIN_ENABLED_STATIC(AGOS) LINK_PLUGIN(AGOS) #endif - #ifndef DISABLE_CINE + #if PLUGIN_ENABLED_STATIC(CINE) LINK_PLUGIN(CINE) #endif - #ifndef DISABLE_CRUISE + #if PLUGIN_ENABLED_STATIC(CRUISE) LINK_PLUGIN(CRUISE) #endif - #ifndef DISABLE_DRASCULA + #if PLUGIN_ENABLED_STATIC(DRASCULA) LINK_PLUGIN(DRASCULA) #endif - #ifndef DISABLE_GOB + #if PLUGIN_ENABLED_STATIC(GOB) LINK_PLUGIN(GOB) #endif - #ifndef DISABLE_IGOR + #if PLUGIN_ENABLED_STATIC(IGOR) LINK_PLUGIN(IGOR) #endif - #ifndef DISABLE_KYRA + #if PLUGIN_ENABLED_STATIC(KYRA) LINK_PLUGIN(KYRA) #endif - #ifndef DISABLE_LURE + #if PLUGIN_ENABLED_STATIC(LURE) LINK_PLUGIN(LURE) #endif - #ifndef DISABLE_M4 + #if PLUGIN_ENABLED_STATIC(M4) LINK_PLUGIN(M4) #endif - #ifndef DISABLE_MADE + #if PLUGIN_ENABLED_STATIC(MADE) LINK_PLUGIN(MADE) #endif - #ifndef DISABLE_PARALLACTION + #if PLUGIN_ENABLED_STATIC(PARALLACTION) LINK_PLUGIN(PARALLACTION) #endif - #ifndef DISABLE_QUEEN + #if PLUGIN_ENABLED_STATIC(QUEEN) LINK_PLUGIN(QUEEN) #endif - #ifndef DISABLE_SAGA + #if PLUGIN_ENABLED_STATIC(SAGA) LINK_PLUGIN(SAGA) #endif - #ifndef DISABLE_SKY + #if PLUGIN_ENABLED_STATIC(SKY) LINK_PLUGIN(SKY) #endif - #ifndef DISABLE_SWORD1 + #if PLUGIN_ENABLED_STATIC(SWORD1) LINK_PLUGIN(SWORD1) #endif - #ifndef DISABLE_SWORD2 + #if PLUGIN_ENABLED_STATIC(SWORD2) LINK_PLUGIN(SWORD2) #endif - #ifndef DISABLE_TOUCHE + #if PLUGIN_ENABLED_STATIC(TOUCHE) LINK_PLUGIN(TOUCHE) #endif @@ -162,7 +161,7 @@ public: } }; -#else +#ifdef DYNAMIC_MODULES PluginList FilePluginProvider::getPlugins() { PluginList pl; @@ -222,18 +221,15 @@ void FilePluginProvider::addCustomDirectories(Common::StringList &dirs) const { #endif } -#endif +#endif // DYNAMIC_MODULES #pragma mark - DECLARE_SINGLETON(PluginManager); PluginManager::PluginManager() { -#ifndef DYNAMIC_MODULES - // Add the static plugin provider if we do not build with dynamic - // plugins. + // Always add the static plugin provider. addPluginProvider(new StaticPluginProvider()); -#endif } PluginManager::~PluginManager() { diff --git a/base/plugins.h b/base/plugins.h index f317a533ae..ca08a0c628 100644 --- a/base/plugins.h +++ b/base/plugins.h @@ -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 * 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. */ -#ifndef DYNAMIC_MODULES -#define REGISTER_PLUGIN(ID,TYPE,PLUGINCLASS) \ +#define REGISTER_PLUGIN_STATIC(ID,TYPE,PLUGINCLASS) \ PluginType g_##ID##_type = TYPE; \ PluginObject *g_##ID##_getObject() { \ return new PLUGINCLASS(); \ } \ void dummyFuncToAllowTrailingSemicolon() -#else -#define REGISTER_PLUGIN(ID,TYPE,PLUGINCLASS) \ + +#ifdef DYNAMIC_MODULES + +#define REGISTER_PLUGIN_DYNAMIC(ID,TYPE,PLUGINCLASS) \ extern "C" { \ PLUGIN_EXPORT int32 PLUGIN_getVersion() { return PLUGIN_VERSION; } \ PLUGIN_EXPORT int32 PLUGIN_getType() { return TYPE; } \ @@ -127,7 +137,8 @@ public: } \ } \ void dummyFuncToAllowTrailingSemicolon() -#endif + +#endif // DYNAMIC_MODULES /** List of plugins. */ @@ -106,6 +106,7 @@ _endian=unknown _need_memalign=no _have_x86=no _build_plugins=no +_plugins_default=static _nasm=auto # more defaults @@ -363,21 +364,33 @@ get_engine_sub() { # Enable the given engine engine_enable() { - engine=`echo $1 | sed 's/-/_/g'` - if test "`get_engine_build ${engine}`" = "no" ; then - eval _engine_${engine}_build=yes + # Get the parameter + if ( echo $1 | grep '=' ) 2> /dev/null > /dev/null ; then + eng=`echo $1 | cut -d '=' -f 1` + opt=`echo $1 | cut -d '=' -f 2` + else + 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 --enable-$1 + option_error fi } # Disable the given engine engine_disable() { 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 else - option_error --disable-$1 + option_error fi } @@ -420,27 +433,35 @@ show_subengine_help() { # Prepare the strings about the engines to build prepare_engine_build_strings() { - string_yes=`get_engine_build_string $1 yes` - if test -n "$string_yes" ; then - _engines_built="${_engines_built}#$string_yes@" + string=`get_engine_build_string $1 static` + if test -n "$string" ; then + _engines_built_static="${_engines_built_static}#$string@" fi - string_no=`get_engine_build_string $1 no` - if test -n "$string_no" ; then - _engines_skipped="${_engines_skipped}#$string_no@" + string=`get_engine_build_string $1 dynamic` + if test -n "$string" ; then + _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 } # Get the string about building an engine get_engine_build_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 engine_string=`get_engine_name $1` else engine_string="" fi else + # The engine is enabled, get the custom string build_string_func=get_${1}_build_string if ( type $build_string_func | grep function ) 2> /dev/null > /dev/null ; then engine_string=`$build_string_func $1 $2` @@ -448,12 +469,16 @@ get_engine_build_string() { engine_string=`get_subengines_build_string $1 $2` fi - if test $2 = yes ; then - engine_string="`get_engine_name $1` $engine_string" - else + if test $2 = no ; then if test -n "$engine_string" ; then engine_string="`get_engine_name $1` $engine_string" fi + else + if test $2 = $engine_build ; then + engine_string="`get_engine_name $1` $engine_string" + else + engine_string="" + fi fi fi @@ -471,7 +496,7 @@ get_subengines_build_string() { all=no fi done - if test $2 = yes ; then + if test $2 != no ; then if test -n "$subengine_string" ; then if test $all = yes ; then subengine_string="[all games]" @@ -484,7 +509,7 @@ get_subengines_build_string() { # Engine specific build strings get_sword1_build_string() { - if test $2 = yes ; then + if test $2 != no ; then if test "$_mpeg2" = yes ; then echo "(w/ mpeg2 cutscenes)" else @@ -498,7 +523,7 @@ get_sword2_build_string() { } get_scumm_build_string() { - if test $2 = yes ; then + if test $2 != no ; then base="[v0-v6 games]" fi get_subengines_build_string $1 $2 "$base" @@ -551,8 +576,8 @@ Optional Features: --disable-debug disable building with debugging symbols --enable-Werror treat warnings as errors $engines_help - --enable-plugins build engines as loadable modules instead of - static linking them + --enable-plugins enable the support for dynamic plugins + --default-dynamic make plugins dynamic by default --disable-mt32emu don't enable the integrated MT-32 emulator --disable-hq-scalers exclude HQ2x and HQ3x scalers --disable-scalers exclude scalers @@ -630,6 +655,7 @@ for ac_option in $@; do --disable-mpeg2) _mpeg2=no ;; --disable-fluidsynth) _fluidsynth=no ;; --enable-plugins) _build_plugins=yes ;; + --default-dynamic) _plugins_default=dynamic ;; --enable-mt32emu) _mt32emu=yes ;; --disable-mt32emu) _mt32emu=no ;; --with-fluidsynth-prefix=*) @@ -725,7 +751,7 @@ for ac_option in $@; do engine_disable `echo $ac_option | cut -d '-' -f 4-` ;; *) - option_error $ac_option + option_error ;; esac; done; @@ -897,12 +923,6 @@ if test "$_cxx_major" -ge "3" ; then add_line_to_config_mk 'HAVE_GCC3 = 1' 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_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="" +_engines_built_static="" +_engines_built_dynamic="" _engines_skipped="" for engine in $_engines; do 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 + 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 done +# +# Show which engines ("frontends") are to be built +# echo -if test -n "$_engines_built" ; then - echo "Engines:" - echo $_engines_built | sed 's/@/\ +if test -n "$_engines_built_static" ; then + echo "Engines (builtin):" + 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 s/#/ /g' fi diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp index 8a6aa53909..f526c51a27 100644 --- a/engines/agi/detection.cpp +++ b/engines/agi/detection.cpp @@ -2324,4 +2324,8 @@ const Common::ADGameDescription *AgiMetaEngine::fallbackDetect(const FSList *fsl 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 diff --git a/engines/agi/module.mk b/engines/agi/module.mk index e5e8555ba2..22592dd71f 100644 --- a/engines/agi/module.mk +++ b/engines/agi/module.mk @@ -38,7 +38,7 @@ MODULE_OBJS = \ # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_AGI), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/agos/detection.cpp b/engines/agos/detection.cpp index 90f593f7c9..26d8916ab7 100644 --- a/engines/agos/detection.cpp +++ b/engines/agos/detection.cpp @@ -149,7 +149,11 @@ bool AgosMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common 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 { diff --git a/engines/agos/module.mk b/engines/agos/module.mk index d217dd7cfb..fe2dcba2f1 100644 --- a/engines/agos/module.mk +++ b/engines/agos/module.mk @@ -47,7 +47,7 @@ MODULE_OBJS := \ zones.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_AGOS), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/cine/detection.cpp b/engines/cine/detection.cpp index 2b8af918af..8c940bcfd4 100644 --- a/engines/cine/detection.cpp +++ b/engines/cine/detection.cpp @@ -509,4 +509,8 @@ bool CineMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common 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 diff --git a/engines/cine/module.mk b/engines/cine/module.mk index 347af2dae1..131709e2ab 100644 --- a/engines/cine/module.mk +++ b/engines/cine/module.mk @@ -22,7 +22,7 @@ MODULE_OBJS = \ various.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_CINE), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/cruise/detection.cpp b/engines/cruise/detection.cpp index d6108ab909..7d948acb36 100644 --- a/engines/cruise/detection.cpp +++ b/engines/cruise/detection.cpp @@ -144,4 +144,8 @@ bool CruiseMetaEngine::createInstance(OSystem *syst, Engine **engine, const Comm 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 diff --git a/engines/cruise/module.mk b/engines/cruise/module.mk index 2d5062dc38..384d7a1ecb 100644 --- a/engines/cruise/module.mk +++ b/engines/cruise/module.mk @@ -33,7 +33,7 @@ MODULE_OBJS := \ volume.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_CRUISE), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/drascula/detection.cpp b/engines/drascula/detection.cpp index 2c057ad03a..80ea4f0eab 100644 --- a/engines/drascula/detection.cpp +++ b/engines/drascula/detection.cpp @@ -185,4 +185,8 @@ const Common::ADGameDescription *DrasculaMetaEngine::fallbackDetect(const FSList 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 diff --git a/engines/drascula/module.mk b/engines/drascula/module.mk index ff51313fce..042b227ca3 100644 --- a/engines/drascula/module.mk +++ b/engines/drascula/module.mk @@ -10,7 +10,7 @@ MODULE_OBJS = \ # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_DRASCULA), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/engines.mk b/engines/engines.mk index b23ea597bd..cfb8e69f3e 100644 --- a/engines/engines.mk +++ b/engines/engines.mk @@ -1,122 +1,103 @@ -ifdef DISABLE_SCUMM -DEFINES += -DDISABLE_SCUMM -else +ifdef ENABLE_SCUMM +DEFINES += -DENABLE_SCUMM=$(ENABLE_SCUMM) MODULES += engines/scumm -ifdef DISABLE_SCUMM_7_8 -DEFINES += -DDISABLE_SCUMM_7_8 +ifdef ENABLE_SCUMM_7_8 +DEFINES += -DENABLE_SCUMM_7_8 endif -ifdef DISABLE_HE -DEFINES += -DDISABLE_HE +ifdef ENABLE_HE +DEFINES += -DENABLE_HE endif endif -ifdef DISABLE_AGI -DEFINES += -DDISABLE_AGI -else +ifdef ENABLE_AGI +DEFINES += -DENABLE_AGI=$(ENABLE_AGI) MODULES += engines/agi endif -ifdef DISABLE_AGOS -DEFINES += -DDISABLE_AGOS -else +ifdef ENABLE_AGOS +DEFINES += -DENABLE_AGOS=$(ENABLE_AGOS) MODULES += engines/agos endif -ifdef DISABLE_CINE -DEFINES += -DDISABLE_CINE -else +ifdef ENABLE_CINE +DEFINES += -DENABLE_CINE=$(ENABLE_CINE) MODULES += engines/cine endif -ifdef DISABLE_CRUISE -DEFINES += -DDISABLE_CRUISE -else +ifdef ENABLE_CRUISE +DEFINES += -DENABLE_CRUISE=$(ENABLE_CRUISE) MODULES += engines/cruise endif -ifdef DISABLE_DRASCULA -DEFINES += -DDISABLE_DRASCULA -else +ifdef ENABLE_DRASCULA +DEFINES += -DENABLE_DRASCULA=$(ENABLE_DRASCULA) MODULES += engines/drascula endif -ifdef DISABLE_GOB -DEFINES += -DDISABLE_GOB -else +ifdef ENABLE_GOB +DEFINES += -DENABLE_GOB=$(ENABLE_GOB) MODULES += engines/gob endif -ifdef DISABLE_IGOR -DEFINES += -DDISABLE_IGOR -else +ifdef ENABLE_IGOR +DEFINES += -DENABLE_IGOR=$(ENABLE_IGOR) MODULES += engines/igor endif -ifdef DISABLE_KYRA -DEFINES += -DDISABLE_KYRA -else +ifdef ENABLE_KYRA +DEFINES += -DENABLE_KYRA=$(ENABLE_KYRA) MODULES += engines/kyra endif -ifdef DISABLE_LURE -DEFINES += -DDISABLE_LURE -else +ifdef ENABLE_LURE +DEFINES += -DENABLE_LURE=$(ENABLE_LURE) MODULES += engines/lure endif -ifdef DISABLE_M4 -DEFINES += -DDISABLE_M4 -else +ifdef ENABLE_M4 +DEFINES += -DENABLE_M4=$(ENABLE_M4) MODULES += engines/m4 endif -ifdef DISABLE_MADE -DEFINES += -DDISABLE_MADE -else +ifdef ENABLE_MADE +DEFINES += -DENABLE_MADE=$(ENABLE_MADE) MODULES += engines/made endif -ifdef DISABLE_PARALLACTION -DEFINES += -DDISABLE_PARALLACTION -else +ifdef ENABLE_PARALLACTION +DEFINES += -DENABLE_PARALLACTION=$(ENABLE_PARALLACTION) MODULES += engines/parallaction endif -ifdef DISABLE_QUEEN -DEFINES += -DDISABLE_QUEEN -else +ifdef ENABLE_QUEEN +DEFINES += -DENABLE_QUEEN=$(ENABLE_QUEEN) MODULES += engines/queen endif -ifdef DISABLE_SAGA -DEFINES += -DDISABLE_SAGA -else +ifdef ENABLE_SAGA +DEFINES += -DENABLE_SAGA=$(ENABLE_SAGA) MODULES += engines/saga endif -ifdef DISABLE_SKY -DEFINES += -DDISABLE_SKY -else +ifdef ENABLE_SKY +DEFINES += -DENABLE_SKY=$(ENABLE_SKY) MODULES += engines/sky endif -ifdef DISABLE_SWORD1 -DEFINES += -DDISABLE_SWORD1 -else +ifdef ENABLE_SWORD1 +DEFINES += -DENABLE_SWORD1=$(ENABLE_SWORD1) MODULES += engines/sword1 endif -ifdef DISABLE_SWORD2 -DEFINES += -DDISABLE_SWORD2 -else +ifdef ENABLE_SWORD2 +DEFINES += -DENABLE_SWORD2=$(ENABLE_SWORD2) MODULES += engines/sword2 endif -ifdef DISABLE_TOUCHE -DEFINES += -DDISABLE_TOUCHE -else +ifdef ENABLE_TOUCHE +DEFINES += -DENABLE_TOUCHE=$(ENABLE_TOUCHE) MODULES += engines/touche endif diff --git a/engines/gob/detection.cpp b/engines/gob/detection.cpp index e5575f1e5b..7637605dcd 100644 --- a/engines/gob/detection.cpp +++ b/engines/gob/detection.cpp @@ -1907,7 +1907,11 @@ bool GobMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common: 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 { diff --git a/engines/gob/module.mk b/engines/gob/module.mk index 734996ddd5..aa2a235327 100644 --- a/engines/gob/module.mk +++ b/engines/gob/module.mk @@ -56,7 +56,7 @@ MODULE_OBJS := \ video_v2.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_GOB), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/igor/detection.cpp b/engines/igor/detection.cpp index 400db95f20..b04de19fb9 100644 --- a/engines/igor/detection.cpp +++ b/engines/igor/detection.cpp @@ -133,4 +133,8 @@ bool IgorMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common 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 diff --git a/engines/igor/module.mk b/engines/igor/module.mk index ab75085782..48ef4e951c 100644 --- a/engines/igor/module.mk +++ b/engines/igor/module.mk @@ -38,7 +38,7 @@ MODULE_OBJS := \ parts/part_main.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_IGOR), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/kyra/detection.cpp b/engines/kyra/detection.cpp index 30b0a17d4d..b921314e68 100644 --- a/engines/kyra/detection.cpp +++ b/engines/kyra/detection.cpp @@ -550,4 +550,8 @@ SaveStateList KyraMetaEngine::listSaves(const char *target) const { 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 diff --git a/engines/kyra/module.mk b/engines/kyra/module.mk index be8341d90c..aec2778def 100644 --- a/engines/kyra/module.mk +++ b/engines/kyra/module.mk @@ -66,7 +66,7 @@ MODULE_OBJS := \ wsamovie.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_KYRA), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/lure/detection.cpp b/engines/lure/detection.cpp index b498ec7f61..7dd1c77348 100644 --- a/engines/lure/detection.cpp +++ b/engines/lure/detection.cpp @@ -195,4 +195,8 @@ bool LureMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common 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 diff --git a/engines/lure/module.mk b/engines/lure/module.mk index 6b8bf35b77..ba158756b4 100644 --- a/engines/lure/module.mk +++ b/engines/lure/module.mk @@ -25,7 +25,7 @@ MODULE_OBJS := \ surface.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_LURE), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/m4/detection.cpp b/engines/m4/detection.cpp index ff440e5d28..259c18f6a7 100644 --- a/engines/m4/detection.cpp +++ b/engines/m4/detection.cpp @@ -387,4 +387,8 @@ bool M4MetaEngine::createInstance(OSystem *syst, Engine **engine, const Common:: 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 diff --git a/engines/m4/module.mk b/engines/m4/module.mk index 9791f66a58..eea75cab24 100644 --- a/engines/m4/module.mk +++ b/engines/m4/module.mk @@ -34,7 +34,7 @@ MODULE_OBJS = \ # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_M4), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/made/detection.cpp b/engines/made/detection.cpp index cae5e287ee..6da3189163 100644 --- a/engines/made/detection.cpp +++ b/engines/made/detection.cpp @@ -271,4 +271,8 @@ const Common::ADGameDescription *MadeMetaEngine::fallbackDetect(const FSList *fs 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 diff --git a/engines/made/module.mk b/engines/made/module.mk index 2c1219d09e..164e1bfba4 100644 --- a/engines/made/module.mk +++ b/engines/made/module.mk @@ -18,7 +18,7 @@ MODULE_OBJS = \ # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_MADE), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/parallaction/detection.cpp b/engines/parallaction/detection.cpp index a84601f6f9..8841b9ca40 100644 --- a/engines/parallaction/detection.cpp +++ b/engines/parallaction/detection.cpp @@ -233,4 +233,8 @@ bool ParallactionMetaEngine::createInstance(OSystem *syst, Engine **engine, cons 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 diff --git a/engines/parallaction/module.mk b/engines/parallaction/module.mk index 9a66b317e2..c7e7af14bf 100644 --- a/engines/parallaction/module.mk +++ b/engines/parallaction/module.mk @@ -29,7 +29,7 @@ MODULE_OBJS := \ walk.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_PARALLACTION), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/queen/module.mk b/engines/queen/module.mk index c691906558..5e0602cae7 100644 --- a/engines/queen/module.mk +++ b/engines/queen/module.mk @@ -24,7 +24,7 @@ MODULE_OBJS := \ walk.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_QUEEN), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/queen/queen.cpp b/engines/queen/queen.cpp index cd492b7934..d1a1247c46 100644 --- a/engines/queen/queen.cpp +++ b/engines/queen/queen.cpp @@ -127,7 +127,11 @@ PluginError QueenMetaEngine::createInstance(OSystem *syst, Engine **engine) cons 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 { diff --git a/engines/saga/detection.cpp b/engines/saga/detection.cpp index 687018f491..b7d2a3aa39 100644 --- a/engines/saga/detection.cpp +++ b/engines/saga/detection.cpp @@ -162,7 +162,11 @@ bool SagaMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common 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 { diff --git a/engines/saga/module.mk b/engines/saga/module.mk index c1b1c364f6..76783a17ae 100644 --- a/engines/saga/module.mk +++ b/engines/saga/module.mk @@ -35,7 +35,7 @@ MODULE_OBJS := \ sound.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_SAGA), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp index 63718fbb5a..df6660523a 100644 --- a/engines/scumm/actor.cpp +++ b/engines/scumm/actor.cpp @@ -902,7 +902,7 @@ void Actor::putActor(int dstX, int dstY, int newRoom) { } adjustActorPos(); } else { -#ifndef DISABLE_HE +#ifdef ENABLE_HE if (_vm->_game.heversion >= 71) ((ScummEngine_v71he *)_vm)->queueAuxBlock(this); #endif @@ -1379,7 +1379,7 @@ void ScummEngine_v6::processActors() { akos_processQueue(); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v71he::processActors() { 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) { 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) { // This methods is very similiar to animateCostume(). // 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) { Actor *a; bool stringWrap = false; @@ -2021,7 +2021,7 @@ void ScummEngine::stopTalk() { _keepText = false; if (_game.version >= 7) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 ((ScummEngine_v7 *)this)->clearSubtitleQueue(); #endif } else { @@ -2054,7 +2054,7 @@ void Actor::setActorCostume(int c) { if (_vm->_game.features & GF_NEW_COSTUMES) { memset(_animVariable, 0, sizeof(_animVariable)); -#ifndef DISABLE_HE +#ifdef ENABLE_HE if (_vm->_game.heversion >= 71) ((ScummEngine_v71he *)_vm)->queueAuxBlock(this); #endif @@ -2293,7 +2293,7 @@ bool Actor::isTalkConditionSet(int slot) const { return (_heCondMask & (1 << (slot - 1))) != 0; } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v71he::preProcessAuxQueue() { if (!_skipProcessActors) { for (int i = 0; i < _auxBlocksNum; ++i) { diff --git a/engines/scumm/akos.cpp b/engines/scumm/akos.cpp index 31e7f75878..8e8fff938d 100644 --- a/engines/scumm/akos.cpp +++ b/engines/scumm/akos.cpp @@ -1272,7 +1272,7 @@ byte AkosRenderer::codec16(int xmoveCur, int ymoveCur) { } byte AkosRenderer::codec32(int xmoveCur, int ymoveCur) { -#ifndef DISABLE_HE +#ifdef ENABLE_HE Common::Rect src, dst; if (!_mirror) { @@ -1767,7 +1767,7 @@ void ScummEngine_v6::akos_processQueue() { a->_offsY = param_2; break; case 7: -#ifndef DISABLE_HE +#ifdef ENABLE_HE assert(_game.heversion >= 71); ((ScummEngine_v71he *)this)->queueAuxEntry(a->_number, param_1); #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() { byte cmd; int actor, param_1, param_2; diff --git a/engines/scumm/camera.cpp b/engines/scumm/camera.cpp index e2e6ff0cb6..288441695f 100644 --- a/engines/scumm/camera.cpp +++ b/engines/scumm/camera.cpp @@ -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) { Common::Point old; diff --git a/engines/scumm/charset.cpp b/engines/scumm/charset.cpp index d0a43dd519..46d034d880 100644 --- a/engines/scumm/charset.cpp +++ b/engines/scumm/charset.cpp @@ -795,7 +795,7 @@ void CharsetRendererClassic::printCharIntern(bool is2byte, const byte *charPtr, int drawTop = _top - vs->topline; if ((_vm->_game.heversion >= 71 && _bitDepth >= 8) || (_vm->_game.heversion >= 90 && _bitDepth == 0)) { -#ifndef DISABLE_HE +#ifdef ENABLE_HE if (ignoreCharsetMask || !vs->hasTwoBuffers) { dstPtr = vs->getPixels(0, 0); } 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) : CharsetRenderer(vm) { _current = 0; diff --git a/engines/scumm/charset.h b/engines/scumm/charset.h index 2f1ce1129f..b62dbc6006 100644 --- a/engines/scumm/charset.h +++ b/engines/scumm/charset.h @@ -172,7 +172,7 @@ public: int getCharWidth(byte chr) { return 8; } }; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 class CharsetRendererNut : public CharsetRenderer { protected: NutRenderer *_fr[5]; diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp index 989ff67627..9359c6610c 100644 --- a/engines/scumm/detection.cpp +++ b/engines/scumm/detection.cpp @@ -873,7 +873,7 @@ PluginError ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) cons break; case 6: switch (res.game.heversion) { -#ifndef DISABLE_HE +#ifdef ENABLE_HE case 200: *engine = new ScummEngine_vCUPhe(syst, res); break; @@ -910,7 +910,7 @@ PluginError ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) cons *engine = new ScummEngine_v6(syst, res); } break; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 case 7: *engine = new ScummEngine_v7(syst, res); break; @@ -966,4 +966,8 @@ SaveStateList ScummMetaEngine::listSaves(const char *target) const { 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 diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h index 500a2b47b8..18d51e133d 100644 --- a/engines/scumm/detection_tables.h +++ b/engines/scumm/detection_tables.h @@ -67,7 +67,7 @@ static const PlainGameDescriptor gameDescriptions[] = { { "tentacle", "Day of the Tentacle" }, { "zak", "Zak McKracken and the Alien Mindbenders" }, -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 { "ft", "Full Throttle" }, { "dig", "The Dig" }, { "comi", "The Curse of Monkey Island" }, @@ -81,7 +81,7 @@ static const PlainGameDescriptor gameDescriptions[] = { { "puttmoon", "Putt-Putt Goes to the Moon" }, { "puttputt", "Putt-Putt Joins the Parade" }, -#ifndef DISABLE_HE +#ifdef ENABLE_HE { "airport", "Let's Explore the Airport with Buzzy" }, { "arttime", "Blue's Art Time Activities" }, { "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}, -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 {"ft", 0, 0, GID_FT, 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. {"", "HE 70", 0, GID_HEGAME, 6, 70, MDT_NONE, GF_USE_KEY, UNK}, -#ifndef DISABLE_HE +#ifdef ENABLE_HE // HE CUP demos {"", "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", "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", "The Dig Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, 0 }, { "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 Parade", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 }, -#ifndef DISABLE_HE +#ifdef ENABLE_HE { "airport", "airport", kGenHEPC, UNK_LANG, UNK, 0 }, { "airport", "airdemo", kGenHEPC, UNK_LANG, UNK, 0 }, { "airport", "Airport Demo", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 }, diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp index 2ca50a725c..6c8d24d25a 100644 --- a/engines/scumm/gfx.cpp +++ b/engines/scumm/gfx.cpp @@ -28,7 +28,7 @@ #include "scumm/actor.h" #include "scumm/charset.h" #include "scumm/intern.h" -#ifndef DISABLE_HE +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #endif #include "scumm/resource.h" @@ -907,7 +907,7 @@ void ScummEngine::redrawBGAreas() { _bgNeedsRedraw = false; } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v71he::redrawBGAreas() { if (camera._cur.x != camera._last.x && _charset->_hasMask) 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. } -#ifndef DISABLE_HE +#ifdef ENABLE_HE /** * Draw a bitmap onto a virtual screen. This is main drawing method for room backgrounds * used throughout HE71+ versions. diff --git a/engines/scumm/gfx.h b/engines/scumm/gfx.h index 4e92fad0fd..e03fdd1c53 100644 --- a/engines/scumm/gfx.h +++ b/engines/scumm/gfx.h @@ -246,7 +246,7 @@ public: void drawBitmap(const byte *ptr, VirtScreen *vs, int x, int y, const int width, const int height, int stripnr, int numstrip, byte flag); -#ifndef DISABLE_HE +#ifdef ENABLE_HE void drawBMAPBg(const byte *ptr, VirtScreen *vs); void drawBMAPObject(const byte *ptr, VirtScreen *vs, int obj, int x, int y, int w, int h); #endif diff --git a/engines/scumm/he/cup_player_he.h b/engines/scumm/he/cup_player_he.h index b9f257add1..1b1c32d86f 100644 --- a/engines/scumm/he/cup_player_he.h +++ b/engines/scumm/he/cup_player_he.h @@ -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 #include "common/stream.h" diff --git a/engines/scumm/he/floodfill_he.h b/engines/scumm/he/floodfill_he.h index d449599f7d..cfc672436c 100644 --- a/engines/scumm/he/floodfill_he.h +++ b/engines/scumm/he/floodfill_he.h @@ -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 #include "common/rect.h" diff --git a/engines/scumm/he/intern_he.h b/engines/scumm/he/intern_he.h index 324c975213..fff8502134 100644 --- a/engines/scumm/he/intern_he.h +++ b/engines/scumm/he/intern_he.h @@ -27,7 +27,7 @@ #define SCUMM_HE_INTERN_HE_H #include "scumm/intern.h" -#ifndef DISABLE_HE +#ifdef ENABLE_HE #include "scumm/he/floodfill_he.h" #include "scumm/he/wiz_he.h" #endif @@ -40,7 +40,7 @@ class WriteStream; namespace Scumm { class ResExtractor; -#ifndef DISABLE_HE +#ifdef ENABLE_HE class LogicHE; class MoviePlayer; class Sprite; @@ -178,7 +178,7 @@ protected: byte VAR_NUM_SOUND_CHANNELS; }; -#ifndef DISABLE_HE +#ifdef ENABLE_HE class ScummEngine_v71he : public ScummEngine_v70he { friend class Wiz; diff --git a/engines/scumm/he/logic_he.h b/engines/scumm/he/logic_he.h index 96de40f287..b144f78c46 100644 --- a/engines/scumm/he/logic_he.h +++ b/engines/scumm/he/logic_he.h @@ -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 diff --git a/engines/scumm/he/resource_he.cpp b/engines/scumm/he/resource_he.cpp index 75da8cd04a..33e6748860 100644 --- a/engines/scumm/he/resource_he.cpp +++ b/engines/scumm/he/resource_he.cpp @@ -1524,7 +1524,7 @@ void ScummEngine_v70he::readGlobalObjects() { #endif } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v99he::readMAXS(int blockSize) { if (blockSize == 52) { debug(0, "ScummEngine_v99he readMAXS: MAXS has blocksize %d", blockSize); diff --git a/engines/scumm/he/sprite_he.h b/engines/scumm/he/sprite_he.h index 55c1093f00..73a05af579 100644 --- a/engines/scumm/he/sprite_he.h +++ b/engines/scumm/he/sprite_he.h @@ -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 namespace Scumm { diff --git a/engines/scumm/he/wiz_he.h b/engines/scumm/he/wiz_he.h index 186dbced6d..6887b45299 100644 --- a/engines/scumm/he/wiz_he.h +++ b/engines/scumm/he/wiz_he.h @@ -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 #include "common/rect.h" diff --git a/engines/scumm/imuse_digi/dimuse.h b/engines/scumm/imuse_digi/dimuse.h index 8cb6562bd3..bcd6e45244 100644 --- a/engines/scumm/imuse_digi/dimuse.h +++ b/engines/scumm/imuse_digi/dimuse.h @@ -22,7 +22,7 @@ * $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 #include "common/scummsys.h" diff --git a/engines/scumm/imuse_digi/dimuse_tables.h b/engines/scumm/imuse_digi/dimuse_tables.h index ddd7c571f3..942acd721f 100644 --- a/engines/scumm/imuse_digi/dimuse_tables.h +++ b/engines/scumm/imuse_digi/dimuse_tables.h @@ -22,7 +22,7 @@ * $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 #include "common/scummsys.h" diff --git a/engines/scumm/imuse_digi/dimuse_track.h b/engines/scumm/imuse_digi/dimuse_track.h index 0c6445c43a..33147128cb 100644 --- a/engines/scumm/imuse_digi/dimuse_track.h +++ b/engines/scumm/imuse_digi/dimuse_track.h @@ -22,7 +22,7 @@ * $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 #include "common/scummsys.h" diff --git a/engines/scumm/input.cpp b/engines/scumm/input.cpp index b53867ca3d..35028c7e1c 100644 --- a/engines/scumm/input.cpp +++ b/engines/scumm/input.cpp @@ -36,7 +36,7 @@ #include "scumm/dialogs.h" #include "scumm/insane/insane.h" #include "scumm/imuse/imuse.h" -#ifndef DISABLE_HE +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #include "scumm/he/logic_he.h" #endif @@ -202,7 +202,7 @@ void ScummEngine::parseEvents() { } } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v90he::clearClickedStatus() { ScummEngine::clearClickedStatus(); if (_game.heversion >= 98) { @@ -328,7 +328,7 @@ void ScummEngine::processInput() { processKeyboard(lastKeyHit); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v8::processKeyboard(Common::KeyState lastKeyHit) { if (!(_game.features & GF_DEMO)) { diff --git a/engines/scumm/insane/insane.h b/engines/scumm/insane/insane.h index 761ca8b96c..28eafb6f73 100644 --- a/engines/scumm/insane/insane.h +++ b/engines/scumm/insane/insane.h @@ -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 #include "engines/engine.h" diff --git a/engines/scumm/intern.h b/engines/scumm/intern.h index 391e7216fa..2dfbcdcdbb 100644 --- a/engines/scumm/intern.h +++ b/engines/scumm/intern.h @@ -848,7 +848,7 @@ protected: byte VAR_TIMEDATE_SECOND; }; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 class ScummEngine_v7 : public ScummEngine_v6 { friend class SmushPlayer; friend class Insane; diff --git a/engines/scumm/module.mk b/engines/scumm/module.mk index 7ae4577432..7d52a02116 100644 --- a/engines/scumm/module.mk +++ b/engines/scumm/module.mk @@ -64,7 +64,7 @@ MODULE_OBJS += \ proc3ARM.o endif -ifndef DISABLE_SCUMM_7_8 +ifdef ENABLE_SCUMM_7_8 MODULE_OBJS += \ nut_renderer.o \ script_v8.o \ @@ -104,7 +104,7 @@ MODULE_OBJS += \ gfxARM.o endif -ifndef DISABLE_HE +ifdef ENABLE_HE MODULE_OBJS += \ he/animation_he.o \ he/cup_player_he.o \ @@ -121,7 +121,7 @@ MODULE_OBJS += \ endif # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_SCUMM), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/scumm/nut_renderer.h b/engines/scumm/nut_renderer.h index 55a445e957..5783646d11 100644 --- a/engines/scumm/nut_renderer.h +++ b/engines/scumm/nut_renderer.h @@ -22,7 +22,7 @@ * $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 #include "common/file.h" diff --git a/engines/scumm/object.cpp b/engines/scumm/object.cpp index b512c83b94..8bcd92fd3b 100644 --- a/engines/scumm/object.cpp +++ b/engines/scumm/object.cpp @@ -491,7 +491,7 @@ int ScummEngine::findObject(int x, int y) { a = _objs[b].parentstate; b = _objs[b].parent; if (b == 0) { -#ifndef DISABLE_HE +#ifdef ENABLE_HE if (_game.heversion >= 71) { if (((ScummEngine_v71he *)this)->_wiz->polygonHit(_objs[i].obj_nr, x, y)) 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))) flags |= Gdi::dbDrawMaskOnAll; -#ifndef DISABLE_HE +#ifdef ENABLE_HE 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); else @@ -1071,7 +1071,7 @@ void ScummEngine_v6::clearDrawQueues() { _blastObjectQueuePos = 0; } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v71he::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) { // 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. diff --git a/engines/scumm/palette.cpp b/engines/scumm/palette.cpp index 775aa52a14..fb0e55a2dc 100644 --- a/engines/scumm/palette.cpp +++ b/engines/scumm/palette.cpp @@ -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) { if (hue > 360) hue = hue - 360; diff --git a/engines/scumm/resource.cpp b/engines/scumm/resource.cpp index 19c27b4bc3..acdc2bc222 100644 --- a/engines/scumm/resource.cpp +++ b/engines/scumm/resource.cpp @@ -218,7 +218,7 @@ void ScummEngine::askForDisk(const char *filename, int disknum) { char buf[128]; if (_game.version == 8) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 char result; _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) { int num; char *ptr; @@ -1081,7 +1081,7 @@ void ScummEngine_v5::readMAXS(int blockSize) { _shadowPalette = (byte *)calloc(_shadowPaletteSize, 1); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v8::readMAXS(int blockSize) { debug(9, "ScummEngine_v8 readMAXS: MAXS has blocksize %d", blockSize); @@ -1204,7 +1204,7 @@ void ScummEngine::readGlobalObjects() { #endif } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v8::readGlobalObjects() { int i; int num = _fileHandle->readUint32LE(); diff --git a/engines/scumm/room.cpp b/engines/scumm/room.cpp index 04cd13e126..6fedb34b47 100644 --- a/engines/scumm/room.cpp +++ b/engines/scumm/room.cpp @@ -28,7 +28,7 @@ #include "scumm/actor.h" #include "scumm/boxes.h" #include "scumm/intern.h" -#ifndef DISABLE_HE +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #endif #include "scumm/object.h" @@ -560,7 +560,7 @@ void ScummEngine::resetRoomSubBlocks() { } } -#ifndef DISABLE_HE +#ifdef ENABLE_HE // Polygons in HE 80+ games if (_game.heversion >= 80) { ptr = findResourceData(MKID_BE('POLD'), roomptr); diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp index 8d23e47bbf..a8ef26c484 100644 --- a/engines/scumm/saveload.cpp +++ b/engines/scumm/saveload.cpp @@ -235,7 +235,7 @@ bool ScummEngine::loadState(int slot, bool compat) { if (!_imuse || _saveSound || !_saveTemporaryState) _sound->stopAllSounds(); -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_imuseDigital) { _imuseDigital->stopAllSounds(); _imuseDigital->resetState(); @@ -1239,7 +1239,7 @@ void ScummEngine_v5::saveOrLoad(Serializer *s) { s->saveLoadEntries(this, cursorEntries); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::saveOrLoad(Serializer *s) { ScummEngine::saveOrLoad(s); @@ -1292,7 +1292,7 @@ void ScummEngine_v70he::saveOrLoad(Serializer *s) { s->saveLoadEntries(this, HE70Entries); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v71he::saveOrLoad(Serializer *s) { ScummEngine_v70he::saveOrLoad(s); diff --git a/engines/scumm/script_v6.cpp b/engines/scumm/script_v6.cpp index 420ee6a739..faae72b6dd 100644 --- a/engines/scumm/script_v6.cpp +++ b/engines/scumm/script_v6.cpp @@ -1102,7 +1102,7 @@ void ScummEngine_v6::o6_startSound() { if (_game.heversion >= 60 && (_game.id != GID_PUTTDEMO)) offset = pop(); -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_game.version >= 7) _imuseDigital->startSfx(pop(), 64); else @@ -2545,7 +2545,7 @@ void ScummEngine_v6::o6_setBlastObjectWindow() { // So, we just handle this as no-op opcode. } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::o6_kernelSetFunctions() { int args[30]; int num; diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp index 7c412970bb..c99856b3a3 100644 --- a/engines/scumm/scumm.cpp +++ b/engines/scumm/scumm.cpp @@ -736,7 +736,7 @@ ScummEngine_v70he::~ScummEngine_v70he() { free(_storedFlObjects); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE ScummEngine_v71he::ScummEngine_v71he(OSystem *syst, const DetectorResult &dr) : ScummEngine_v70he(syst, dr) { _auxBlocksNum = 0; @@ -858,7 +858,7 @@ void ScummEngine_vCUPhe::parseEvents() { #endif -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 ScummEngine_v7::ScummEngine_v7(OSystem *syst, const DetectorResult &dr) : ScummEngine_v6(syst, dr) { _verbLineSpacing = 10; @@ -927,7 +927,7 @@ int ScummEngine::init() { File::addDefaultDirectory(_gameDataPath + "Rooms 3/"); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 #ifdef MACOSX 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 @@ -1212,7 +1212,7 @@ void ScummEngine::setupScumm() { _compositeBuf = (byte *)malloc(_screenWidth * _textSurfaceMultiplier * _screenHeight * _textSurfaceMultiplier); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::setupScumm() { _musicEngine = _imuseDigital = new IMuseDigital(this, _mixer, 10); @@ -1238,7 +1238,7 @@ void ScummEngine::setupCharsetRenderer() { _charset = new CharsetRendererV2(this, _language); else if (_game.version == 3) _charset = new CharsetRendererV3(this); -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 else if (_game.version == 8) _charset = new CharsetRendererNut(this); #endif @@ -1479,7 +1479,7 @@ void ScummEngine_v60he::resetScumm() { setCursorHotspot(16, 16); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v72he::resetScumm() { ScummEngine_v60he::resetScumm(); @@ -1954,7 +1954,7 @@ load_game: CursorMan.showMouse(_cursor.state > 0); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v90he::scummLoop(int delta) { _moviePlay->handleNextFrame(); 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() { ScummEngine::scummLoop_handleSaveLoad(); @@ -2067,7 +2067,7 @@ void ScummEngine::scummLoop_handleDrawing() { processDrawQue(); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::scummLoop_handleDrawing() { ScummEngine_v6::scummLoop_handleDrawing(); @@ -2077,7 +2077,7 @@ void ScummEngine_v7::scummLoop_handleDrawing() { } #endif -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v90he::scummLoop_handleDrawing() { ScummEngine_v80he::scummLoop_handleDrawing(); @@ -2125,7 +2125,7 @@ void ScummEngine::scummLoop_handleSound() { _sound->processSound(); } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::scummLoop_handleSound() { ScummEngine_v6::scummLoop_handleSound(); if (_imuseDigital) { @@ -2226,7 +2226,7 @@ void ScummEngine::runBootscript() { runScript(1, 0, 0, args); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v90he::runBootscript() { if (_game.heversion >= 98) { _logicHE->initOnce(); @@ -2284,7 +2284,7 @@ int ScummEngine::runDialog(Dialog &dialog) { return result; } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 int ScummEngine_v7::runDialog(Dialog &dialog) { _splayer->pause(); int result = ScummEngine::runDialog(dialog); diff --git a/engines/scumm/smush/smush_player.h b/engines/scumm/smush/smush_player.h index 486c8d23e6..413a5895d3 100644 --- a/engines/scumm/smush/smush_player.h +++ b/engines/scumm/smush/smush_player.h @@ -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 #include "common/util.h" diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp index d7e3ec1508..fdd0598378 100644 --- a/engines/scumm/sound.cpp +++ b/engines/scumm/sound.cpp @@ -675,7 +675,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle } if (_vm->_imuseDigital) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 //_vm->_imuseDigital->stopSound(kTalkSoundID); _vm->_imuseDigital->startVoice(kTalkSoundID, input); #endif @@ -688,7 +688,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle void Sound::stopTalkSound() { if (_sfxMode & 2) { if (_vm->_imuseDigital) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 _vm->_imuseDigital->stopSound(kTalkSoundID); #endif } else if (_vm->_game.heversion >= 60) { @@ -718,7 +718,7 @@ bool Sound::isMouthSyncOff(uint pos) { } int Sound::isSoundRunning(int sound) const { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_vm->_imuseDigital) return (_vm->_imuseDigital->getSoundStatus(sound) != 0); #endif @@ -754,7 +754,7 @@ int Sound::isSoundRunning(int sound) const { */ bool Sound::isSoundInUse(int sound) const { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_vm->_imuseDigital) return (_vm->_imuseDigital->getSoundStatus(sound) != 0); #endif @@ -848,7 +848,7 @@ void Sound::stopAllSounds() { void Sound::soundKludge(int *list, int num) { int i; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_vm->_imuseDigital) { _vm->_imuseDigital->parseScriptCmds(list[0], list[1], list[2], list[3], list[4], list[5], list[6], list[7]); @@ -912,7 +912,7 @@ void Sound::pauseSounds(bool pause) { _soundsPaused = pause; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_vm->_imuseDigital) { _vm->_imuseDigital->pause(pause); } diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp index e31c3ed9c9..f42a803a3d 100644 --- a/engines/scumm/string.cpp +++ b/engines/scumm/string.cpp @@ -34,7 +34,7 @@ #include "scumm/file.h" #include "scumm/imuse_digi/dimuse.h" #include "scumm/intern.h" -#ifndef DISABLE_HE +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #endif #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) { if (m == 4) { const StringTab &st = _string[m]; @@ -220,7 +220,7 @@ void ScummEngine_v6::removeBlastTexts() { #pragma mark - -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::processSubtitleQueue() { for (int i = 0; i < _subtitleQueuePos; ++i) { SubtitleText *st = &_subtitleQueue[i]; @@ -353,7 +353,7 @@ bool ScummEngine::handleNextCharsetCode(Actor *a, int *code) { return (c != 2 && c != 3); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE bool ScummEngine_v72he::handleNextCharsetCode(Actor *a, int *code) { const int charsetCode = (_game.heversion >= 80) ? 127 : 64; uint32 talk_sound_a = 0; @@ -431,7 +431,7 @@ bool ScummEngine_v72he::handleNextCharsetCode(Actor *a, int *code) { void ScummEngine::CHARSET_1() { Actor *a; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 byte subtitleBuffer[200]; byte *subtitleLine = subtitleBuffer; Common::Point subtitlePos; @@ -533,7 +533,7 @@ void ScummEngine::CHARSET_1() { if (!_keepText) { if (_game.version >= 7) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 ((ScummEngine_v7 *)this)->clearSubtitleQueue(); _nextLeft = _string[0].xpos; _nextTop = _string[0].ypos + _screenTop; @@ -574,7 +574,7 @@ void ScummEngine::CHARSET_1() { if (c == 13) { newLine:; _nextLeft = _string[0].xpos; -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (_game.version >= 7 && subtitleLine != subtitleBuffer) { ((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID()); subtitleLine = subtitleBuffer; @@ -613,7 +613,7 @@ void ScummEngine::CHARSET_1() { _charset->_top = _nextTop; if (_game.version >= 7) { -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 if (subtitleLine == subtitleBuffer) { subtitlePos.x = _charset->_left; // 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) { ((ScummEngine_v7 *)this)->addSubtitleToQueue(subtitleBuffer, subtitlePos, _charsetColor, _charset->getCurID()); } #endif } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::CHARSET_1() { if (_game.id == GID_FT) { ScummEngine::CHARSET_1(); @@ -1128,7 +1128,7 @@ int ScummEngine::convertMessageToString(const byte *msg, byte *dst, int dstSize) return dstSize - (end - dst); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE int ScummEngine_v72he::convertMessageToString(const byte *msg, byte *dst, int dstSize) { uint num = 0; byte chr; @@ -1245,7 +1245,7 @@ int ScummEngine::convertStringMessage(byte *dst, int dstSize, int var) { #pragma mark - -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v80he::initCharset(int charsetno) { ScummEngine::initCharset(charsetno); VAR(VAR_CURRENT_CHARSET) = charsetno; @@ -1273,7 +1273,7 @@ void ScummEngine::initCharset(int charsetno) { #pragma mark - -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 static int indexCompare(const void *p1, const void *p2) { const ScummEngine_v7::LangIndexNode *i1 = (const ScummEngine_v7::LangIndexNode *) p1; const ScummEngine_v7::LangIndexNode *i2 = (const ScummEngine_v7::LangIndexNode *) p2; diff --git a/engines/scumm/vars.cpp b/engines/scumm/vars.cpp index a71ff19b6e..aade7899aa 100644 --- a/engines/scumm/vars.cpp +++ b/engines/scumm/vars.cpp @@ -216,7 +216,7 @@ void ScummEngine_v70he::setupScummVars() { VAR_SOUND_CHANNEL = 14; } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v72he::setupScummVars() { VAR_KEYPRESS = 0; VAR_DEBUGMODE = 1; @@ -333,7 +333,7 @@ void ScummEngine_v90he::setupScummVars() { } #endif -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::setupScummVars() { VAR_MOUSE_X = 1; VAR_MOUSE_Y = 2; @@ -568,7 +568,7 @@ void ScummEngine_v5::resetScummVars() { _scummVars[74] = 1225; } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::resetScummVars() { ScummEngine::resetScummVars(); @@ -633,7 +633,7 @@ void ScummEngine_v70he::resetScummVars() { VAR(VAR_TALK_CHANNEL) = 2; } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v72he::resetScummVars() { ScummEngine_v70he::resetScummVars(); diff --git a/engines/scumm/verbs.cpp b/engines/scumm/verbs.cpp index eece5a6d24..cf4711f6a2 100644 --- a/engines/scumm/verbs.cpp +++ b/engines/scumm/verbs.cpp @@ -514,7 +514,7 @@ void ScummEngine_v0::handleMouseOver(bool updateInventory) { drawSentence(); } -#ifndef DISABLE_HE +#ifdef ENABLE_HE void ScummEngine_v72he::checkExecVerbs() { VAR(VAR_MOUSE_STATE) = 0; @@ -797,7 +797,7 @@ int ScummEngine::findVerbAtPos(int x, int y) const { return 0; } -#ifndef DISABLE_SCUMM_7_8 +#ifdef ENABLE_SCUMM_7_8 void ScummEngine_v7::drawVerb(int verb, int mode) { VerbSlot *vs; diff --git a/engines/sky/module.mk b/engines/sky/module.mk index 67b3b19e5d..9cab69ce9d 100644 --- a/engines/sky/module.mk +++ b/engines/sky/module.mk @@ -24,7 +24,7 @@ MODULE_OBJS := \ music/musicbase.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_SKY), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/sky/sky.cpp b/engines/sky/sky.cpp index ae1abc677d..e53458e33a 100644 --- a/engines/sky/sky.cpp +++ b/engines/sky/sky.cpp @@ -247,7 +247,11 @@ SaveStateList SkyMetaEngine::listSaves(const char *target) const { 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 { diff --git a/engines/sword1/module.mk b/engines/sword1/module.mk index 1ee62af853..87c0061c3c 100644 --- a/engines/sword1/module.mk +++ b/engines/sword1/module.mk @@ -21,7 +21,7 @@ MODULE_OBJS := \ text.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_SWORD1), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp index f58f39c986..7372779199 100644 --- a/engines/sword1/sword1.cpp +++ b/engines/sword1/sword1.cpp @@ -187,7 +187,11 @@ PluginError SwordMetaEngine::createInstance(OSystem *syst, Engine **engine) cons 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 { diff --git a/engines/sword2/module.mk b/engines/sword2/module.mk index 3b21023fa8..c675b9561e 100644 --- a/engines/sword2/module.mk +++ b/engines/sword2/module.mk @@ -34,7 +34,7 @@ MODULE_OBJS := \ walker.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_SWORD2), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/engines/sword2/sword2.cpp b/engines/sword2/sword2.cpp index d86c5b6c9e..0601d11791 100644 --- a/engines/sword2/sword2.cpp +++ b/engines/sword2/sword2.cpp @@ -180,7 +180,11 @@ PluginError Sword2MetaEngine::createInstance(OSystem *syst, Engine **engine) con 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 { diff --git a/engines/touche/detection.cpp b/engines/touche/detection.cpp index faf997812c..d2798d7060 100644 --- a/engines/touche/detection.cpp +++ b/engines/touche/detection.cpp @@ -146,4 +146,8 @@ bool ToucheMetaEngine::createInstance(OSystem *syst, Engine **engine, const Comm return gd != 0; } -REGISTER_PLUGIN(TOUCHE, PLUGIN_TYPE_ENGINE, ToucheMetaEngine); +#if PLUGIN_ENABLED_DYNAMIC(TOUCHE) + REGISTER_PLUGIN_DYNAMIC(TOUCHE, PLUGIN_TYPE_ENGINE, ToucheMetaEngine); +#else + REGISTER_PLUGIN_STATIC(TOUCHE, PLUGIN_TYPE_ENGINE, ToucheMetaEngine); +#endif diff --git a/engines/touche/module.mk b/engines/touche/module.mk index 1cfd2d2929..30965e1155 100644 --- a/engines/touche/module.mk +++ b/engines/touche/module.mk @@ -12,7 +12,7 @@ MODULE_OBJS := \ touche.o # This module can be built as a plugin -ifdef BUILD_PLUGINS +ifeq ($(ENABLE_TOUCHE), DYNAMIC_PLUGIN) PLUGIN := 1 endif diff --git a/sound/mididrv.cpp b/sound/mididrv.cpp index 9108aa450b..53bc224180 100644 --- a/sound/mididrv.cpp +++ b/sound/mididrv.cpp @@ -68,7 +68,7 @@ static const MidiDriverDescription s_musicDrivers[] = { #if defined(PALMOS_MODE) # if defined(COMPILE_CLIE) {"ypa1", "Yamaha Pa1", MD_YPA1, MDT_MIDI}, -# elif defined(COMPILE_ZODIAC) && (defined(DISABLE_SCUMM) || !defined(PALMOS_ARM)) +# elif defined(COMPILE_ZODIAC) && (!defined(ENABLE_SCUMM) || !defined(PALMOS_ARM)) {"zodiac", "Tapwave Zodiac", MD_ZODIAC, MDT_MIDI}, # endif #endif @@ -239,7 +239,7 @@ MidiDriver *MidiDriver::createMidi(int midiDriver) { #if defined(PALMOS_MODE) #if defined(COMPILE_CLIE) case MD_YPA1: return MidiDriver_YamahaPa1_create(); -#elif defined(COMPILE_ZODIAC) && (defined(DISABLE_SCUMM) || !defined(PALMOS_ARM)) +#elif defined(COMPILE_ZODIAC) && (!defined(ENABLE_SCUMM) || !defined(PALMOS_ARM)) case MD_ZODIAC: return MidiDriver_Zodiac_create(); #endif #endif |