From 4c14cf6d1a77857e3683a1029b42ddb96e1bc80b Mon Sep 17 00:00:00 2001 From: Max Horn Date: Sat, 23 Sep 2006 00:42:35 +0000 Subject: Moved base/engine.cpp and .h to engines/ (main motivation: helps untangle the linker dependency graph). Porters will have to update project files svn-id: r23974 --- Makefile.common | 3 +- backends/fs/amigaos4/amigaos4-fs.cpp | 2 +- backends/fs/morphos/abox-fs.cpp | 2 +- backends/fs/psp/psp_fs.cpp | 2 +- backends/platform/dc/audio.cpp | 2 +- backends/platform/dc/softkbd.cpp | 2 +- backends/platform/dc/vmsave.cpp | 2 +- backends/platform/gp32/gp32_launcher.cpp | 2 +- backends/platform/gp32/gp32_osys.h | 2 +- backends/platform/gp32/gp32std.cpp | 2 +- backends/platform/gp32/gp32std_memory.cpp | 2 +- backends/platform/morphos/morphos.cpp | 2 +- backends/platform/morphos/morphos_scaler.cpp | 2 +- backends/platform/morphos/morphos_sound.cpp | 2 +- backends/platform/morphos/morphos_timer.cpp | 2 +- backends/platform/ps2/fileio.cpp | 2 +- backends/platform/ps2/systemps2.cpp | 2 +- backends/platform/wince/CELauncherDialog.cpp | 2 +- backends/platform/wince/wince-sdl.cpp | 2 +- base/commandLine.cpp | 2 +- base/engine.cpp | 285 --------------------------- base/engine.h | 96 --------- base/main.cpp | 2 +- base/module.mk | 1 - base/plugins.cpp | 2 +- common/util.cpp | 2 +- engines/agi/agi.h | 2 +- engines/cine/cine.h | 2 +- engines/engine.cpp | 285 +++++++++++++++++++++++++++ engines/engine.h | 96 +++++++++ engines/engines.mk | 81 ++++++++ engines/gob/gob.h | 2 +- engines/kyra/kyra.h | 2 +- engines/kyra/seqplayer.cpp | 2 +- engines/lure/game.h | 2 +- engines/lure/lure.h | 2 +- engines/lure/screen.h | 2 +- engines/module.mk | 84 +------- engines/queen/queen.h | 2 +- engines/saga/saga.h | 2 +- engines/scumm/imuse/imuse_player.cpp | 2 +- engines/scumm/insane/insane.cpp | 2 +- engines/scumm/insane/insane.h | 2 +- engines/scumm/insane/insane_ben.cpp | 2 +- engines/scumm/insane/insane_enemy.cpp | 2 +- engines/scumm/insane/insane_iact.cpp | 2 +- engines/scumm/insane/insane_scenes.cpp | 2 +- engines/scumm/player_nes.cpp | 2 +- engines/scumm/player_v1.cpp | 2 +- engines/scumm/player_v2.cpp | 2 +- engines/scumm/player_v2a.cpp | 2 +- engines/scumm/player_v3a.cpp | 2 +- engines/scumm/script.h | 2 +- engines/scumm/scumm.h | 2 +- engines/scumm/smush/smush_player.cpp | 2 +- engines/simon/simon.h | 2 +- engines/sky/sky.h | 2 +- engines/sword1/resman.cpp | 2 +- engines/sword1/sword1.h | 2 +- engines/sword2/sword2.h | 2 +- gui/PopUpWidget.cpp | 2 +- gui/about.cpp | 2 +- gui/console.cpp | 2 +- gui/launcher.cpp | 2 +- sound/audiocd.cpp | 2 +- sound/mididrv.cpp | 2 +- sound/rate.h | 2 +- 67 files changed, 528 insertions(+), 521 deletions(-) delete mode 100644 base/engine.cpp delete mode 100644 base/engine.h create mode 100644 engines/engine.cpp create mode 100644 engines/engine.h create mode 100644 engines/engines.mk diff --git a/Makefile.common b/Makefile.common index 873ebf0855..8c11a0c700 100644 --- a/Makefile.common +++ b/Makefile.common @@ -33,10 +33,11 @@ DEPDIR := .deps MODULES := test tools base $(MODULES) --include $(srcdir)/engines/module.mk +-include $(srcdir)/engines/engines.mk # After the game specific modules follow the shared modules MODULES += \ + engines \ gui \ graphics \ sound \ diff --git a/backends/fs/amigaos4/amigaos4-fs.cpp b/backends/fs/amigaos4/amigaos4-fs.cpp index cdf61c890e..de3f509ad3 100644 --- a/backends/fs/amigaos4/amigaos4-fs.cpp +++ b/backends/fs/amigaos4/amigaos4-fs.cpp @@ -36,7 +36,7 @@ #include "common/util.h" -#include "base/engine.h" +#include "engines/engine.h" #include "backends/fs/abstract-fs.h" #define ENTER() /* debug(6, "Enter") */ diff --git a/backends/fs/morphos/abox-fs.cpp b/backends/fs/morphos/abox-fs.cpp index b2043fb1e6..17b6879f5e 100644 --- a/backends/fs/morphos/abox-fs.cpp +++ b/backends/fs/morphos/abox-fs.cpp @@ -25,7 +25,7 @@ #include -#include "base/engine.h" +#include "engines/engine.h" #include "backends/fs/abstract-fs.h" /* diff --git a/backends/fs/psp/psp_fs.cpp b/backends/fs/psp/psp_fs.cpp index 0f16ac8395..211a9bb8e6 100644 --- a/backends/fs/psp/psp_fs.cpp +++ b/backends/fs/psp/psp_fs.cpp @@ -23,7 +23,7 @@ */ #ifdef __PSP__ -#include "base/engine.h" +#include "engines/engine.h" #include "backends/fs/abstract-fs.h" diff --git a/backends/platform/dc/audio.cpp b/backends/platform/dc/audio.cpp index b69d29172b..1a88c4fc1a 100644 --- a/backends/platform/dc/audio.cpp +++ b/backends/platform/dc/audio.cpp @@ -23,7 +23,7 @@ #include #include -#include "base/engine.h" +#include "engines/engine.h" #include "dc.h" EXTERN_C void *memcpy4s(void *s1, const void *s2, unsigned int n); diff --git a/backends/platform/dc/softkbd.cpp b/backends/platform/dc/softkbd.cpp index 2e761f4595..f0bf4a777c 100644 --- a/backends/platform/dc/softkbd.cpp +++ b/backends/platform/dc/softkbd.cpp @@ -23,7 +23,7 @@ #include #include -#include "base/engine.h" +#include "engines/engine.h" #include #include diff --git a/backends/platform/dc/vmsave.cpp b/backends/platform/dc/vmsave.cpp index 604d9230a7..bd5542f878 100644 --- a/backends/platform/dc/vmsave.cpp +++ b/backends/platform/dc/vmsave.cpp @@ -23,7 +23,7 @@ #include #include -#include "base/engine.h" +#include "engines/engine.h" #include "dc.h" #include "icon.h" #include diff --git a/backends/platform/gp32/gp32_launcher.cpp b/backends/platform/gp32/gp32_launcher.cpp index 29af6288f5..299e1d832a 100644 --- a/backends/platform/gp32/gp32_launcher.cpp +++ b/backends/platform/gp32/gp32_launcher.cpp @@ -26,7 +26,7 @@ #include "common/scummsys.h" #include "common/file.h" -#include "base/engine.h" +#include "engines/engine.h" #include "gp32std.h" #include "gp32std_grap.h" diff --git a/backends/platform/gp32/gp32_osys.h b/backends/platform/gp32/gp32_osys.h index 22b0a6330d..474c56754d 100644 --- a/backends/platform/gp32/gp32_osys.h +++ b/backends/platform/gp32/gp32_osys.h @@ -32,7 +32,7 @@ #include "common/system.h" #include "backends/intern.h" -#include "base/engine.h" +#include "engines/engine.h" #include "gp32std.h" #include "gp32std_grap.h" diff --git a/backends/platform/gp32/gp32std.cpp b/backends/platform/gp32/gp32std.cpp index 93b5ef1760..fe4da7911e 100644 --- a/backends/platform/gp32/gp32std.cpp +++ b/backends/platform/gp32/gp32std.cpp @@ -29,7 +29,7 @@ #include "common/system.h" #include "backends/intern.h" -#include "base/engine.h" +#include "engines/engine.h" #include "gp32std.h" #include "gp32std_grap.h" diff --git a/backends/platform/gp32/gp32std_memory.cpp b/backends/platform/gp32/gp32std_memory.cpp index 08a868e78f..d51e3e1eea 100644 --- a/backends/platform/gp32/gp32std_memory.cpp +++ b/backends/platform/gp32/gp32std_memory.cpp @@ -29,7 +29,7 @@ #include "common/system.h" #include "backends/intern.h" -#include "base/engine.h" +#include "engines/engine.h" #include "gp32std.h" #include "gp32std_grap.h" diff --git a/backends/platform/morphos/morphos.cpp b/backends/platform/morphos/morphos.cpp index 889976afc4..9fe082995c 100644 --- a/backends/platform/morphos/morphos.cpp +++ b/backends/platform/morphos/morphos.cpp @@ -23,7 +23,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/util.h" #include "scumm/scumm.h" diff --git a/backends/platform/morphos/morphos_scaler.cpp b/backends/platform/morphos/morphos_scaler.cpp index 46d4452c0b..a5e7519054 100644 --- a/backends/platform/morphos/morphos_scaler.cpp +++ b/backends/platform/morphos/morphos_scaler.cpp @@ -20,7 +20,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include #include diff --git a/backends/platform/morphos/morphos_sound.cpp b/backends/platform/morphos/morphos_sound.cpp index c5c2f3b7ad..ce6048b9c3 100644 --- a/backends/platform/morphos/morphos_sound.cpp +++ b/backends/platform/morphos/morphos_sound.cpp @@ -23,7 +23,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include #include diff --git a/backends/platform/morphos/morphos_timer.cpp b/backends/platform/morphos/morphos_timer.cpp index b558c7fd66..ec2c647d80 100644 --- a/backends/platform/morphos/morphos_timer.cpp +++ b/backends/platform/morphos/morphos_timer.cpp @@ -20,7 +20,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include #include diff --git a/backends/platform/ps2/fileio.cpp b/backends/platform/ps2/fileio.cpp index 3c188cf439..3495c4a132 100644 --- a/backends/platform/ps2/fileio.cpp +++ b/backends/platform/ps2/fileio.cpp @@ -28,7 +28,7 @@ #include #include #include "backends/platform/ps2/asyncfio.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/file.h" #include "eecodyvdfs.h" #include "common/config-manager.h" diff --git a/backends/platform/ps2/systemps2.cpp b/backends/platform/ps2/systemps2.cpp index 6c53233649..6c479f30d7 100644 --- a/backends/platform/ps2/systemps2.cpp +++ b/backends/platform/ps2/systemps2.cpp @@ -33,7 +33,7 @@ #include #include "common/scummsys.h" #include "../intern.h" -#include "base/engine.h" +#include "engines/engine.h" #include "backends/platform/ps2/systemps2.h" #include "backends/platform/ps2/Gs2dScreen.h" #include "backends/platform/ps2/ps2input.h" diff --git a/backends/platform/wince/CELauncherDialog.cpp b/backends/platform/wince/CELauncherDialog.cpp index 3a5dfb6459..8b19273b55 100644 --- a/backends/platform/wince/CELauncherDialog.cpp +++ b/backends/platform/wince/CELauncherDialog.cpp @@ -26,7 +26,7 @@ #include "CELauncherDialog.h" -#include "base/engine.h" +#include "engines/engine.h" #include "gui/newgui.h" #include "gui/widget.h" diff --git a/backends/platform/wince/wince-sdl.cpp b/backends/platform/wince/wince-sdl.cpp index d7c969500a..e9c6ce45d1 100644 --- a/backends/platform/wince/wince-sdl.cpp +++ b/backends/platform/wince/wince-sdl.cpp @@ -24,7 +24,7 @@ #include "wince-sdl.h" #include "common/util.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/main.h" #include "base/plugins.h" #include "common/timer.h" diff --git a/base/commandLine.cpp b/base/commandLine.cpp index bfa3424822..3e3d2d83ff 100644 --- a/base/commandLine.cpp +++ b/base/commandLine.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/commandLine.h" #include "base/plugins.h" #include "base/version.h" diff --git a/base/engine.cpp b/base/engine.cpp deleted file mode 100644 index 6c915b2954..0000000000 --- a/base/engine.cpp +++ /dev/null @@ -1,285 +0,0 @@ -/* ScummVM - Scumm Interpreter - * Copyright (C) 2002-2006 The ScummVM project - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * $URL$ - * $Id$ - */ - -#include "common/stdafx.h" -#if defined(WIN32) && !defined (__SYMBIAN32__) -#include -#endif -#include "base/engine.h" -#include "common/config-manager.h" -#include "common/file.h" -#include "common/timer.h" -#include "common/savefile.h" -#include "common/system.h" -#include "sound/mixer.h" -#include "gui/debugger.h" -#include "gui/message.h" - -#ifdef _WIN32_WCE -extern bool isSmartphone(void); -#endif - -/* FIXME - BIG HACK for MidiEmu */ -Engine *g_engine = 0; - -Engine::Engine(OSystem *syst) - : _system(syst), - _gameDataPath(ConfMan.get("path")), - _targetName(ConfMan.getActiveDomainName()){ - g_engine = this; - _mixer = new Audio::Mixer(); - - _timer = Common::g_timer; - - _saveFileMan = _system->getSavefileManager(); - - _autosavePeriod = ConfMan.getInt("autosave_period"); -} - -Engine::~Engine() { - delete _mixer; - delete _saveFileMan; - - g_engine = NULL; -} - -void Engine::initCommonGFX(bool defaultTo1XScaler) { - const Common::ConfigManager::Domain *transientDomain = ConfMan.getDomain(Common::ConfigManager::kTransientDomain); - const Common::ConfigManager::Domain *gameDomain = ConfMan.getActiveDomain(); - - assert(transientDomain); - - const bool useDefaultGraphicsMode = - !transientDomain->contains("gfx_mode") && - ( - !gameDomain || - !gameDomain->contains("gfx_mode") || - !scumm_stricmp(gameDomain->get("gfx_mode").c_str(), "normal") || - !scumm_stricmp(gameDomain->get("gfx_mode").c_str(), "default") - ); - - // See if the game should default to 1x scaler - if (useDefaultGraphicsMode && defaultTo1XScaler) { - // FIXME: As a hack, we use "1x" here. Would be nicer to use - // getDefaultGraphicsMode() instead, but right now, we do not specify - // whether that is a 1x scaler or not... - _system->setGraphicsMode("1x"); - } else { - // Override global scaler with any game-specific define - if (ConfMan.hasKey("gfx_mode")) { - _system->setGraphicsMode(ConfMan.get("gfx_mode").c_str()); - } - } - - // Note: The following code deals with the fullscreen / ASR settings. This - // is a bit tricky, because there are three ways the user can affect these - // settings: Via the config file, via the command line, and via in-game - // hotkeys. - // Any global or command line settings already have been applied at the time - // we get here. Hence we only do something - - // (De)activate aspect-ratio correction as determined by the config settings - if (gameDomain && gameDomain->contains("aspect_ratio")) - _system->setFeatureState(OSystem::kFeatureAspectRatioCorrection, ConfMan.getBool("aspect_ratio")); - - // (De)activate fullscreen mode as determined by the config settings - if (gameDomain && gameDomain->contains("fullscreen")) - _system->setFeatureState(OSystem::kFeatureFullscreenMode, ConfMan.getBool("fullscreen")); -} - -void Engine::checkCD() { -#if defined (WIN32) && !defined(_WIN32_WCE) && !defined(__SYMBIAN32__) - // It is a known bug under Windows that games that play CD audio cause - // ScummVM to crash if the data files are read from the same CD. Check - // if this appears to be the case and issue a warning. - - // If we can find a compressed audio track, then it should be ok even - // if it's running from CD. - -#ifdef USE_VORBIS - if (Common::File::exists("track1.ogg")) - return; -#endif -#ifdef USE_FLAC - if (Common::File::exists("track1.fla") || Common::File::exists("track1.flac")) - return; -#endif -#ifdef USE_MAD - if (Common::File::exists("track1.mp3")) - return; -#endif - - char buffer[MAXPATHLEN]; - int i; - - if (strlen(_gameDataPath.c_str()) == 0) { - // That's it! I give up! - if (getcwd(buffer, MAXPATHLEN) == NULL) - return; - } else - strncpy(buffer, _gameDataPath.c_str(), MAXPATHLEN); - - for (i = 0; i < MAXPATHLEN - 1; i++) { - if (buffer[i] == '\\') - break; - } - - buffer[i + 1] = 0; - - if (GetDriveType(buffer) == DRIVE_CDROM) { - GUI::MessageDialog dialog( - "You appear to be playing this game directly\n" - "from the CD. This is known to cause problems,\n" - "and it's therefore recommended that you copy\n" - "the data files to your hard disk instead.\n" - "See the README file for details.", "OK"); - dialog.runModal(); - } -#endif -} - -bool Engine::shouldPerformAutoSave(int lastSaveTime) { - const int diff = _system->getMillis() - lastSaveTime; - return _autosavePeriod != 0 && diff > _autosavePeriod * 1000; -} - -void Engine::errorString(const char *buf1, char *buf2) { - strcpy(buf2, buf1); -} - -void NORETURN CDECL error(const char *s, ...) { - char buf_input[STRINGBUFLEN]; - char buf_output[STRINGBUFLEN]; - va_list va; - - // Generate the full error message - va_start(va, s); - vsnprintf(buf_input, STRINGBUFLEN, s, va); - va_end(va); - - - // Next, give the active engine (if any) a chance to augment the - // error message - if (g_engine) { - g_engine->errorString(buf_input, buf_output); - } else { - strcpy(buf_output, buf_input); - } - - - // Print the error message to stderr -#ifdef __GP32__ - printf("ERROR: %s\n", buf_output); -#elif !defined(_WIN32_WCE) - fprintf(stderr, "%s!\n", buf_output); -#endif - - -#ifndef __GP32__ - // Unless this error -originated- within the debugger itself, we - // now invoke the debugger, if available / supported. - if (g_engine) { - GUI::Debugger *debugger = g_engine->getDebugger(); -#ifdef _WIN32_WCE - if (isSmartphone()) - debugger = 0; -#endif - if (debugger && !debugger->isAttached()) { - debugger->attach(buf_output); - debugger->onFrame(); - } - } -#endif - - -#if defined( USE_WINDBG ) -#if defined( _WIN32_WCE ) - TCHAR buf_output_unicode[1024]; - MultiByteToWideChar(CP_ACP, 0, buf_output, strlen(buf_output) + 1, buf_output_unicode, sizeof(buf_output_unicode)); - OutputDebugString(buf_output_unicode); -#else - OutputDebugString(buf_output); -#endif -#endif - -#if defined ( _WIN32_WCE ) - drawError(buf_output); -#endif - -#ifdef PALMOS_MODE - PalmFatalError(buf_output); -#endif - -#ifdef __SYMBIAN32__ - Symbian::FatalError(buf_output); -#endif - // Finally exit. quit() will terminate the program if g_system is present - if (g_system) - g_system->quit(); - - exit(1); -} - -void CDECL warning(const char *s, ...) { - char buf[STRINGBUFLEN]; - va_list va; - - va_start(va, s); - vsnprintf(buf, STRINGBUFLEN, s, va); - va_end(va); - -#ifdef __GP32__ //ph0x FIXME: implement fprint? - printf("WARNING: %s\n", buf); -#else -#if !defined (_WIN32_WCE) && !defined (__SYMBIAN32__) - fprintf(stderr, "WARNING: %s!\n", buf); -#endif -#endif -#if defined( USE_WINDBG ) - strcat(buf, "\n"); -#if defined( _WIN32_WCE ) - TCHAR buf_unicode[1024]; - MultiByteToWideChar(CP_ACP, 0, buf, strlen(buf) + 1, buf_unicode, sizeof(buf_unicode)); - OutputDebugString(buf_unicode); -#else - OutputDebugString(buf); -#endif -#endif -} - -void checkHeap() { -#if defined(WIN32) && !defined(__SYMBIAN32__) - if (_heapchk() != _HEAPOK) { - error("Heap is invalid!"); - } -#endif -} - -void Engine::GUIErrorMessage(const Common::String msg) { - _system->setWindowCaption("Error"); - _system->beginGFXTransaction(); - initCommonGFX(false); - _system->initSize(320, 200); - _system->endGFXTransaction(); - - GUI::MessageDialog dialog(msg); - dialog.runModal(); -} diff --git a/base/engine.h b/base/engine.h deleted file mode 100644 index 85798c219b..0000000000 --- a/base/engine.h +++ /dev/null @@ -1,96 +0,0 @@ -/* ScummVM - Scumm Interpreter - * Copyright (C) 2002-2006 The ScummVM project - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * $URL$ - * $Id$ - */ - -#ifndef BASE_ENGINE_H -#define BASE_ENGINE_H - -#include "common/stdafx.h" -#include "common/scummsys.h" -#include "common/str.h" - -class OSystem; -namespace Audio { - class Mixer; -} -namespace Common { - class SaveFileManager; - class TimerManager; -} -namespace GUI { - class Debugger; -} - -class Engine { -public: - OSystem *_system; - Audio::Mixer *_mixer; - Common::TimerManager * _timer; - -protected: - const Common::String _targetName; // target name for saves - const Common::String _gameDataPath; - Common::SaveFileManager *_saveFileMan; - -private: - int _autosavePeriod; - -public: - Engine(OSystem *syst); - virtual ~Engine(); - - /** - * Init the engine. - * @return 0 for success, else an error code. - */ - virtual int init() = 0; - - /** - * Start the main engine loop. - * The return value is not yet used, but could indicate whether the user - * wants to return to the launch or to fully quit ScummVM. - * @return a result code - */ - virtual int go() = 0; - - /** Specific for each engine: prepare error string. */ - virtual void errorString(const char *buf_input, char *buf_output); - - void initCommonGFX(bool defaultTo1XScaler); - - /** On some systems, check if the game appears to be run from CD. */ - void checkCD(); - - /* Indicate if an autosave should be performed. */ - bool shouldPerformAutoSave(int lastSaveTime); - - /** Initialized graphics and shows error message. */ - void GUIErrorMessage(const Common::String msg); - - /** - * Return the engine's debugger instance, if any. Used by error() to - * invoke the debugger when a severe error is reported. - */ - virtual GUI::Debugger *getDebugger() { return 0; } -}; - -extern Engine *g_engine; - -#endif diff --git a/base/main.cpp b/base/main.cpp index 6b626ef389..ced240973f 100644 --- a/base/main.cpp +++ b/base/main.cpp @@ -30,7 +30,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/commandLine.h" #include "base/plugins.h" #include "base/version.h" diff --git a/base/module.mk b/base/module.mk index 9f8f31c0a3..860342eedf 100644 --- a/base/module.mk +++ b/base/module.mk @@ -1,7 +1,6 @@ MODULE := base MODULE_OBJS := \ - engine.o \ main.o \ commandLine.o \ plugins.o \ diff --git a/base/plugins.cpp b/base/plugins.cpp index b222fcfcc2..6cd7448f68 100644 --- a/base/plugins.cpp +++ b/base/plugins.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" #include "base/plugins.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/util.h" #include "common/fs.h" diff --git a/common/util.cpp b/common/util.cpp index 3891d68b28..1a5452d1fc 100644 --- a/common/util.cpp +++ b/common/util.cpp @@ -20,7 +20,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/util.h" namespace Common { diff --git a/engines/agi/agi.h b/engines/agi/agi.h index 6955ff3636..c901dfd7d8 100644 --- a/engines/agi/agi.h +++ b/engines/agi/agi.h @@ -33,7 +33,7 @@ #include "common/savefile.h" #include "common/system.h" -#include "base/engine.h" +#include "engines/engine.h" namespace Agi { diff --git a/engines/cine/cine.h b/engines/cine/cine.h index 40c23e4d69..f0de296986 100644 --- a/engines/cine/cine.h +++ b/engines/cine/cine.h @@ -29,7 +29,7 @@ #include "common/scummsys.h" #include "common/util.h" -#include "base/engine.h" +#include "engines/engine.h" #include "cine/texte.h" #include "cine/rel.h" diff --git a/engines/engine.cpp b/engines/engine.cpp new file mode 100644 index 0000000000..740020ec33 --- /dev/null +++ b/engines/engine.cpp @@ -0,0 +1,285 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2002-2006 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * $URL$ + * $Id$ + */ + +#include "common/stdafx.h" +#if defined(WIN32) && !defined (__SYMBIAN32__) +#include +#endif +#include "engines/engine.h" +#include "common/config-manager.h" +#include "common/file.h" +#include "common/timer.h" +#include "common/savefile.h" +#include "common/system.h" +#include "sound/mixer.h" +#include "gui/debugger.h" +#include "gui/message.h" + +#ifdef _WIN32_WCE +extern bool isSmartphone(void); +#endif + +/* FIXME - BIG HACK for MidiEmu */ +Engine *g_engine = 0; + +Engine::Engine(OSystem *syst) + : _system(syst), + _gameDataPath(ConfMan.get("path")), + _targetName(ConfMan.getActiveDomainName()){ + g_engine = this; + _mixer = new Audio::Mixer(); + + _timer = Common::g_timer; + + _saveFileMan = _system->getSavefileManager(); + + _autosavePeriod = ConfMan.getInt("autosave_period"); +} + +Engine::~Engine() { + delete _mixer; + delete _saveFileMan; + + g_engine = NULL; +} + +void Engine::initCommonGFX(bool defaultTo1XScaler) { + const Common::ConfigManager::Domain *transientDomain = ConfMan.getDomain(Common::ConfigManager::kTransientDomain); + const Common::ConfigManager::Domain *gameDomain = ConfMan.getActiveDomain(); + + assert(transientDomain); + + const bool useDefaultGraphicsMode = + !transientDomain->contains("gfx_mode") && + ( + !gameDomain || + !gameDomain->contains("gfx_mode") || + !scumm_stricmp(gameDomain->get("gfx_mode").c_str(), "normal") || + !scumm_stricmp(gameDomain->get("gfx_mode").c_str(), "default") + ); + + // See if the game should default to 1x scaler + if (useDefaultGraphicsMode && defaultTo1XScaler) { + // FIXME: As a hack, we use "1x" here. Would be nicer to use + // getDefaultGraphicsMode() instead, but right now, we do not specify + // whether that is a 1x scaler or not... + _system->setGraphicsMode("1x"); + } else { + // Override global scaler with any game-specific define + if (ConfMan.hasKey("gfx_mode")) { + _system->setGraphicsMode(ConfMan.get("gfx_mode").c_str()); + } + } + + // Note: The following code deals with the fullscreen / ASR settings. This + // is a bit tricky, because there are three ways the user can affect these + // settings: Via the config file, via the command line, and via in-game + // hotkeys. + // Any global or command line settings already have been applied at the time + // we get here. Hence we only do something + + // (De)activate aspect-ratio correction as determined by the config settings + if (gameDomain && gameDomain->contains("aspect_ratio")) + _system->setFeatureState(OSystem::kFeatureAspectRatioCorrection, ConfMan.getBool("aspect_ratio")); + + // (De)activate fullscreen mode as determined by the config settings + if (gameDomain && gameDomain->contains("fullscreen")) + _system->setFeatureState(OSystem::kFeatureFullscreenMode, ConfMan.getBool("fullscreen")); +} + +void Engine::checkCD() { +#if defined (WIN32) && !defined(_WIN32_WCE) && !defined(__SYMBIAN32__) + // It is a known bug under Windows that games that play CD audio cause + // ScummVM to crash if the data files are read from the same CD. Check + // if this appears to be the case and issue a warning. + + // If we can find a compressed audio track, then it should be ok even + // if it's running from CD. + +#ifdef USE_VORBIS + if (Common::File::exists("track1.ogg")) + return; +#endif +#ifdef USE_FLAC + if (Common::File::exists("track1.fla") || Common::File::exists("track1.flac")) + return; +#endif +#ifdef USE_MAD + if (Common::File::exists("track1.mp3")) + return; +#endif + + char buffer[MAXPATHLEN]; + int i; + + if (strlen(_gameDataPath.c_str()) == 0) { + // That's it! I give up! + if (getcwd(buffer, MAXPATHLEN) == NULL) + return; + } else + strncpy(buffer, _gameDataPath.c_str(), MAXPATHLEN); + + for (i = 0; i < MAXPATHLEN - 1; i++) { + if (buffer[i] == '\\') + break; + } + + buffer[i + 1] = 0; + + if (GetDriveType(buffer) == DRIVE_CDROM) { + GUI::MessageDialog dialog( + "You appear to be playing this game directly\n" + "from the CD. This is known to cause problems,\n" + "and it's therefore recommended that you copy\n" + "the data files to your hard disk instead.\n" + "See the README file for details.", "OK"); + dialog.runModal(); + } +#endif +} + +bool Engine::shouldPerformAutoSave(int lastSaveTime) { + const int diff = _system->getMillis() - lastSaveTime; + return _autosavePeriod != 0 && diff > _autosavePeriod * 1000; +} + +void Engine::errorString(const char *buf1, char *buf2) { + strcpy(buf2, buf1); +} + +void NORETURN CDECL error(const char *s, ...) { + char buf_input[STRINGBUFLEN]; + char buf_output[STRINGBUFLEN]; + va_list va; + + // Generate the full error message + va_start(va, s); + vsnprintf(buf_input, STRINGBUFLEN, s, va); + va_end(va); + + + // Next, give the active engine (if any) a chance to augment the + // error message + if (g_engine) { + g_engine->errorString(buf_input, buf_output); + } else { + strcpy(buf_output, buf_input); + } + + + // Print the error message to stderr +#ifdef __GP32__ + printf("ERROR: %s\n", buf_output); +#elif !defined(_WIN32_WCE) + fprintf(stderr, "%s!\n", buf_output); +#endif + + +#ifndef __GP32__ + // Unless this error -originated- within the debugger itself, we + // now invoke the debugger, if available / supported. + if (g_engine) { + GUI::Debugger *debugger = g_engine->getDebugger(); +#ifdef _WIN32_WCE + if (isSmartphone()) + debugger = 0; +#endif + if (debugger && !debugger->isAttached()) { + debugger->attach(buf_output); + debugger->onFrame(); + } + } +#endif + + +#if defined( USE_WINDBG ) +#if defined( _WIN32_WCE ) + TCHAR buf_output_unicode[1024]; + MultiByteToWideChar(CP_ACP, 0, buf_output, strlen(buf_output) + 1, buf_output_unicode, sizeof(buf_output_unicode)); + OutputDebugString(buf_output_unicode); +#else + OutputDebugString(buf_output); +#endif +#endif + +#if defined ( _WIN32_WCE ) + drawError(buf_output); +#endif + +#ifdef PALMOS_MODE + PalmFatalError(buf_output); +#endif + +#ifdef __SYMBIAN32__ + Symbian::FatalError(buf_output); +#endif + // Finally exit. quit() will terminate the program if g_system is present + if (g_system) + g_system->quit(); + + exit(1); +} + +void CDECL warning(const char *s, ...) { + char buf[STRINGBUFLEN]; + va_list va; + + va_start(va, s); + vsnprintf(buf, STRINGBUFLEN, s, va); + va_end(va); + +#ifdef __GP32__ //ph0x FIXME: implement fprint? + printf("WARNING: %s\n", buf); +#else +#if !defined (_WIN32_WCE) && !defined (__SYMBIAN32__) + fprintf(stderr, "WARNING: %s!\n", buf); +#endif +#endif +#if defined( USE_WINDBG ) + strcat(buf, "\n"); +#if defined( _WIN32_WCE ) + TCHAR buf_unicode[1024]; + MultiByteToWideChar(CP_ACP, 0, buf, strlen(buf) + 1, buf_unicode, sizeof(buf_unicode)); + OutputDebugString(buf_unicode); +#else + OutputDebugString(buf); +#endif +#endif +} + +void checkHeap() { +#if defined(WIN32) && !defined(__SYMBIAN32__) + if (_heapchk() != _HEAPOK) { + error("Heap is invalid!"); + } +#endif +} + +void Engine::GUIErrorMessage(const Common::String msg) { + _system->setWindowCaption("Error"); + _system->beginGFXTransaction(); + initCommonGFX(false); + _system->initSize(320, 200); + _system->endGFXTransaction(); + + GUI::MessageDialog dialog(msg); + dialog.runModal(); +} diff --git a/engines/engine.h b/engines/engine.h new file mode 100644 index 0000000000..85798c219b --- /dev/null +++ b/engines/engine.h @@ -0,0 +1,96 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2002-2006 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * $URL$ + * $Id$ + */ + +#ifndef BASE_ENGINE_H +#define BASE_ENGINE_H + +#include "common/stdafx.h" +#include "common/scummsys.h" +#include "common/str.h" + +class OSystem; +namespace Audio { + class Mixer; +} +namespace Common { + class SaveFileManager; + class TimerManager; +} +namespace GUI { + class Debugger; +} + +class Engine { +public: + OSystem *_system; + Audio::Mixer *_mixer; + Common::TimerManager * _timer; + +protected: + const Common::String _targetName; // target name for saves + const Common::String _gameDataPath; + Common::SaveFileManager *_saveFileMan; + +private: + int _autosavePeriod; + +public: + Engine(OSystem *syst); + virtual ~Engine(); + + /** + * Init the engine. + * @return 0 for success, else an error code. + */ + virtual int init() = 0; + + /** + * Start the main engine loop. + * The return value is not yet used, but could indicate whether the user + * wants to return to the launch or to fully quit ScummVM. + * @return a result code + */ + virtual int go() = 0; + + /** Specific for each engine: prepare error string. */ + virtual void errorString(const char *buf_input, char *buf_output); + + void initCommonGFX(bool defaultTo1XScaler); + + /** On some systems, check if the game appears to be run from CD. */ + void checkCD(); + + /* Indicate if an autosave should be performed. */ + bool shouldPerformAutoSave(int lastSaveTime); + + /** Initialized graphics and shows error message. */ + void GUIErrorMessage(const Common::String msg); + + /** + * Return the engine's debugger instance, if any. Used by error() to + * invoke the debugger when a severe error is reported. + */ + virtual GUI::Debugger *getDebugger() { return 0; } +}; + +extern Engine *g_engine; + +#endif diff --git a/engines/engines.mk b/engines/engines.mk new file mode 100644 index 0000000000..eee601b9fd --- /dev/null +++ b/engines/engines.mk @@ -0,0 +1,81 @@ +ifdef DISABLE_SCUMM +DEFINES += -DDISABLE_SCUMM +else +MODULES += engines/scumm + +ifdef DISABLE_SCUMM_7_8 +DEFINES += -DDISABLE_SCUMM_7_8 +endif + +ifdef DISABLE_HE +DEFINES += -DDISABLE_HE +endif + +endif + +ifdef DISABLE_SIMON +DEFINES += -DDISABLE_SIMON +else +MODULES += engines/simon +endif + +ifdef DISABLE_SKY +DEFINES += -DDISABLE_SKY +else +MODULES += engines/sky +endif + +ifdef DISABLE_SWORD1 +DEFINES += -DDISABLE_SWORD1 +else +MODULES += engines/sword1 +endif + +ifdef DISABLE_SWORD2 +DEFINES += -DDISABLE_SWORD2 +else +MODULES += engines/sword2 +endif + +ifdef DISABLE_QUEEN +DEFINES += -DDISABLE_QUEEN +else +MODULES += engines/queen +endif + +ifdef DISABLE_SAGA +DEFINES += -DDISABLE_SAGA +else +MODULES += engines/saga +endif + +ifdef DISABLE_KYRA +DEFINES += -DDISABLE_KYRA +else +MODULES += engines/kyra +endif + +ifdef DISABLE_GOB +DEFINES += -DDISABLE_GOB +else +MODULES += engines/gob +endif + +ifdef DISABLE_LURE +DEFINES += -DDISABLE_LURE +else +MODULES += engines/lure +endif + +ifdef DISABLE_CINE +DEFINES += -DDISABLE_CINE +else +MODULES += engines/cine +endif + +ifdef DISABLE_AGI +DEFINES += -DDISABLE_AGI +else +MODULES += engines/agi +endif + diff --git a/engines/gob/gob.h b/engines/gob/gob.h index 91a53ea050..2a2201115b 100644 --- a/engines/gob/gob.h +++ b/engines/gob/gob.h @@ -26,7 +26,7 @@ #include "common/stdafx.h" #include "common/system.h" -#include "base/engine.h" +#include "engines/engine.h" namespace Gob { diff --git a/engines/kyra/kyra.h b/engines/kyra/kyra.h index 8bab62eab0..7e55108ba7 100644 --- a/engines/kyra/kyra.h +++ b/engines/kyra/kyra.h @@ -23,7 +23,7 @@ #ifndef KYRA_H #define KYRA_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/rect.h" namespace Kyra { diff --git a/engines/kyra/seqplayer.cpp b/engines/kyra/seqplayer.cpp index 8fe98ca72e..e2ed0b1c65 100644 --- a/engines/kyra/seqplayer.cpp +++ b/engines/kyra/seqplayer.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" #include "common/system.h" -#include "base/engine.h" +#include "engines/engine.h" #include "kyra/kyra.h" #include "kyra/resource.h" diff --git a/engines/lure/game.h b/engines/lure/game.h index c8fc9221d7..a8960ee580 100644 --- a/engines/lure/game.h +++ b/engines/lure/game.h @@ -24,7 +24,7 @@ #define LURE_GAME_H #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "lure/luredefs.h" #include "lure/menu.h" #include "lure/palette.h" diff --git a/engines/lure/lure.h b/engines/lure/lure.h index c1887c97fd..ec72205264 100644 --- a/engines/lure/lure.h +++ b/engines/lure/lure.h @@ -23,7 +23,7 @@ #ifndef LURE_H #define LURE_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/rect.h" #include "sound/mixer.h" #include "common/file.h" diff --git a/engines/lure/screen.h b/engines/lure/screen.h index cb343d8f71..8accfaeea1 100644 --- a/engines/lure/screen.h +++ b/engines/lure/screen.h @@ -24,7 +24,7 @@ #define LURE_SCREEN_H #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "lure/luredefs.h" #include "lure/palette.h" #include "lure/disk.h" diff --git a/engines/module.mk b/engines/module.mk index eee601b9fd..10a29e110a 100644 --- a/engines/module.mk +++ b/engines/module.mk @@ -1,81 +1,7 @@ -ifdef DISABLE_SCUMM -DEFINES += -DDISABLE_SCUMM -else -MODULES += engines/scumm +MODULE := engines -ifdef DISABLE_SCUMM_7_8 -DEFINES += -DDISABLE_SCUMM_7_8 -endif - -ifdef DISABLE_HE -DEFINES += -DDISABLE_HE -endif - -endif - -ifdef DISABLE_SIMON -DEFINES += -DDISABLE_SIMON -else -MODULES += engines/simon -endif - -ifdef DISABLE_SKY -DEFINES += -DDISABLE_SKY -else -MODULES += engines/sky -endif - -ifdef DISABLE_SWORD1 -DEFINES += -DDISABLE_SWORD1 -else -MODULES += engines/sword1 -endif - -ifdef DISABLE_SWORD2 -DEFINES += -DDISABLE_SWORD2 -else -MODULES += engines/sword2 -endif - -ifdef DISABLE_QUEEN -DEFINES += -DDISABLE_QUEEN -else -MODULES += engines/queen -endif - -ifdef DISABLE_SAGA -DEFINES += -DDISABLE_SAGA -else -MODULES += engines/saga -endif - -ifdef DISABLE_KYRA -DEFINES += -DDISABLE_KYRA -else -MODULES += engines/kyra -endif - -ifdef DISABLE_GOB -DEFINES += -DDISABLE_GOB -else -MODULES += engines/gob -endif - -ifdef DISABLE_LURE -DEFINES += -DDISABLE_LURE -else -MODULES += engines/lure -endif - -ifdef DISABLE_CINE -DEFINES += -DDISABLE_CINE -else -MODULES += engines/cine -endif - -ifdef DISABLE_AGI -DEFINES += -DDISABLE_AGI -else -MODULES += engines/agi -endif +MODULE_OBJS := \ + engine.o +# Include common rules +include $(srcdir)/rules.mk diff --git a/engines/queen/queen.h b/engines/queen/queen.h index 5bd697f40a..5cefd35cd3 100644 --- a/engines/queen/queen.h +++ b/engines/queen/queen.h @@ -23,7 +23,7 @@ #ifndef QUEEN_H #define QUEEN_H -#include "base/engine.h" +#include "engines/engine.h" namespace Common { class InSaveFile; diff --git a/engines/saga/saga.h b/engines/saga/saga.h index 91af7e3a7d..aed22a06f5 100644 --- a/engines/saga/saga.h +++ b/engines/saga/saga.h @@ -25,7 +25,7 @@ #ifndef SAGA_H #define SAGA_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/stream.h" diff --git a/engines/scumm/imuse/imuse_player.cpp b/engines/scumm/imuse/imuse_player.cpp index a0c838beb7..c8a7e7365f 100644 --- a/engines/scumm/imuse/imuse_player.cpp +++ b/engines/scumm/imuse/imuse_player.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" #include "common/util.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/imuse/imuse_internal.h" #include "scumm/saveload.h" diff --git a/engines/scumm/insane/insane.cpp b/engines/scumm/insane/insane.cpp index 59fc99a857..86deddeda1 100644 --- a/engines/scumm/insane/insane.cpp +++ b/engines/scumm/insane/insane.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/system.h" diff --git a/engines/scumm/insane/insane.h b/engines/scumm/insane/insane.h index 1ba916cc5a..13baab49fe 100644 --- a/engines/scumm/insane/insane.h +++ b/engines/scumm/insane/insane.h @@ -23,7 +23,7 @@ #if !defined(INSANE_H) && !defined(DISABLE_SCUMM_7_8) #define INSANE_H -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/intern.h" #include "scumm/nut_renderer.h" diff --git a/engines/scumm/insane/insane_ben.cpp b/engines/scumm/insane/insane_ben.cpp index 35ad7004a3..573197e8c5 100644 --- a/engines/scumm/insane/insane_ben.cpp +++ b/engines/scumm/insane/insane_ben.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/insane/insane.h" diff --git a/engines/scumm/insane/insane_enemy.cpp b/engines/scumm/insane/insane_enemy.cpp index ec38aa9fe8..af5b0fe02b 100644 --- a/engines/scumm/insane/insane_enemy.cpp +++ b/engines/scumm/insane/insane_enemy.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/insane/insane.h" diff --git a/engines/scumm/insane/insane_iact.cpp b/engines/scumm/insane/insane_iact.cpp index 354128315b..dadb6d2572 100644 --- a/engines/scumm/insane/insane_iact.cpp +++ b/engines/scumm/insane/insane_iact.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/scumm.h" diff --git a/engines/scumm/insane/insane_scenes.cpp b/engines/scumm/insane/insane_scenes.cpp index 52a54edee8..5beca36999 100644 --- a/engines/scumm/insane/insane_scenes.cpp +++ b/engines/scumm/insane/insane_scenes.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/config-manager.h" diff --git a/engines/scumm/player_nes.cpp b/engines/scumm/player_nes.cpp index 8564ac1e41..0a63cf153c 100644 --- a/engines/scumm/player_nes.cpp +++ b/engines/scumm/player_nes.cpp @@ -23,7 +23,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/player_nes.h" #include "scumm/scumm.h" #include "sound/mixer.h" diff --git a/engines/scumm/player_v1.cpp b/engines/scumm/player_v1.cpp index 0737bb5706..d752fbde2d 100644 --- a/engines/scumm/player_v1.cpp +++ b/engines/scumm/player_v1.cpp @@ -22,7 +22,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/player_v1.h" #include "scumm/scumm.h" diff --git a/engines/scumm/player_v2.cpp b/engines/scumm/player_v2.cpp index e8abbe1e03..9726149851 100644 --- a/engines/scumm/player_v2.cpp +++ b/engines/scumm/player_v2.cpp @@ -22,7 +22,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/player_v2.h" #include "scumm/scumm.h" #include "sound/mididrv.h" diff --git a/engines/scumm/player_v2a.cpp b/engines/scumm/player_v2a.cpp index 36499ba527..23eeebf70b 100644 --- a/engines/scumm/player_v2a.cpp +++ b/engines/scumm/player_v2a.cpp @@ -22,7 +22,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/player_v2a.h" #include "scumm/scumm.h" diff --git a/engines/scumm/player_v3a.cpp b/engines/scumm/player_v3a.cpp index f4663b83f3..e229f4515e 100644 --- a/engines/scumm/player_v3a.cpp +++ b/engines/scumm/player_v3a.cpp @@ -22,7 +22,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "scumm/player_v3a.h" #include "scumm/scumm.h" diff --git a/engines/scumm/script.h b/engines/scumm/script.h index e832aee8d9..5655d164f5 100644 --- a/engines/scumm/script.h +++ b/engines/scumm/script.h @@ -24,7 +24,7 @@ #ifndef SCRIPT_H #define SCRIPT_H -#include "base/engine.h" +#include "engines/engine.h" namespace Scumm { diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h index 5b6a91e046..20da240470 100644 --- a/engines/scumm/scumm.h +++ b/engines/scumm/scumm.h @@ -24,7 +24,7 @@ #ifndef SCUMM_H #define SCUMM_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/endian.h" #include "common/file.h" #include "common/rect.h" diff --git a/engines/scumm/smush/smush_player.cpp b/engines/scumm/smush/smush_player.cpp index 122640e6a6..d2368de89f 100644 --- a/engines/scumm/smush/smush_player.cpp +++ b/engines/scumm/smush/smush_player.cpp @@ -22,7 +22,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/config-manager.h" #include "common/file.h" diff --git a/engines/simon/simon.h b/engines/simon/simon.h index 148f9d47ef..f792d91a50 100644 --- a/engines/simon/simon.h +++ b/engines/simon/simon.h @@ -24,7 +24,7 @@ #ifndef SIMON_H #define SIMON_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/rect.h" #include "common/util.h" diff --git a/engines/sky/sky.h b/engines/sky/sky.h index bb119b06dc..c6e1d25dfe 100644 --- a/engines/sky/sky.h +++ b/engines/sky/sky.h @@ -24,7 +24,7 @@ #define SKYMAIN_H #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" namespace Sky { diff --git a/engines/sword1/resman.cpp b/engines/sword1/resman.cpp index c7fe6bf3ba..1397a5506e 100644 --- a/engines/sword1/resman.cpp +++ b/engines/sword1/resman.cpp @@ -26,7 +26,7 @@ #include "common/util.h" #include "common/str.h" -#include "base/engine.h" +#include "engines/engine.h" #include "sword1/memman.h" #include "sword1/resman.h" diff --git a/engines/sword1/sword1.h b/engines/sword1/sword1.h index 786bfc538e..798e26d541 100644 --- a/engines/sword1/sword1.h +++ b/engines/sword1/sword1.h @@ -23,7 +23,7 @@ #ifndef BSSWORD1_H #define BSSWORD1_H -#include "base/engine.h" +#include "engines/engine.h" #include "common/util.h" #include "sword1/sworddefs.h" diff --git a/engines/sword2/sword2.h b/engines/sword2/sword2.h index 42ead0b864..7a5e142a64 100644 --- a/engines/sword2/sword2.h +++ b/engines/sword2/sword2.h @@ -29,7 +29,7 @@ #define RIGHT_CLICK_CLEARS_LUGGAGE 0 -#include "base/engine.h" +#include "engines/engine.h" #include "common/util.h" diff --git a/gui/PopUpWidget.cpp b/gui/PopUpWidget.cpp index 14f998d6f8..0a161bedcc 100644 --- a/gui/PopUpWidget.cpp +++ b/gui/PopUpWidget.cpp @@ -25,7 +25,7 @@ #include "gui/eval.h" #include "gui/newgui.h" #include "gui/PopUpWidget.h" -#include "base/engine.h" +#include "engines/engine.h" namespace GUI { diff --git a/gui/about.cpp b/gui/about.cpp index 7236a40f0f..4271ca272b 100644 --- a/gui/about.cpp +++ b/gui/about.cpp @@ -20,7 +20,7 @@ */ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/plugins.h" #include "base/version.h" #include "common/system.h" diff --git a/gui/console.cpp b/gui/console.cpp index 15cb113261..e990fac2af 100644 --- a/gui/console.cpp +++ b/gui/console.cpp @@ -24,7 +24,7 @@ #include "gui/ScrollBarWidget.h" #include "gui/eval.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/version.h" #include "common/system.h" diff --git a/gui/launcher.cpp b/gui/launcher.cpp index eadd2ab78c..be5b5c773a 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -21,7 +21,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "base/game.h" #include "base/plugins.h" #include "base/version.h" diff --git a/sound/audiocd.cpp b/sound/audiocd.cpp index 15b16b5e45..4c07bf4b43 100644 --- a/sound/audiocd.cpp +++ b/sound/audiocd.cpp @@ -26,7 +26,7 @@ #include "sound/mp3.h" #include "sound/vorbis.h" #include "sound/flac.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/file.h" #include "common/util.h" #include "common/system.h" diff --git a/sound/mididrv.cpp b/sound/mididrv.cpp index 1612488fd5..ea738dba0b 100644 --- a/sound/mididrv.cpp +++ b/sound/mididrv.cpp @@ -23,7 +23,7 @@ #include "common/stdafx.h" -#include "base/engine.h" +#include "engines/engine.h" #include "common/config-manager.h" #include "common/str.h" #include "common/util.h" diff --git a/sound/rate.h b/sound/rate.h index cba19786ec..809e4308f8 100644 --- a/sound/rate.h +++ b/sound/rate.h @@ -24,7 +24,7 @@ #define SOUND_RATE_H #include "common/scummsys.h" -#include "base/engine.h" +#include "engines/engine.h" class AudioStream; -- cgit v1.2.3