[Scummvm-cvs-logs] CVS: residual actor.cpp,1.33,1.34 localize.cpp,1.6,1.7 lua.cpp,1.84,1.85 main.cpp,1.39,1.40 registry.cpp,1.8,1.9 registry.h,1.4,1.5 resource.cpp,1.17,1.18 smush.cpp,1.52,1.53
Pawel Kolodziejski
aquadran at users.sourceforge.net
Fri Dec 31 14:06:07 CET 2004
Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6018
Modified Files:
actor.cpp localize.cpp lua.cpp main.cpp registry.cpp
registry.h resource.cpp smush.cpp
Log Message:
cleanup
Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/actor.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -d -r1.33 -r1.34
--- actor.cpp 31 Dec 2004 21:35:04 -0000 1.33
+++ actor.cpp 31 Dec 2004 22:05:13 -0000 1.34
@@ -26,8 +26,6 @@
#include "driver_gl.h"
#include "mixer/mixer.h"
-extern SoundMixer *g_mixer;
-
Actor::Actor(const char *name) :
_name(name), _talkColor(255, 255, 255), _pos(0, 0, 0),
_pitch(0), _yaw(0), _roll(0), _walkRate(0), _turnRate(0),
Index: localize.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/localize.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- localize.cpp 31 Dec 2004 21:35:04 -0000 1.6
+++ localize.cpp 31 Dec 2004 22:05:25 -0000 1.7
@@ -29,7 +29,7 @@
const char *namesToTry[] = { "/GRIM.TAB", "/Grim.tab", "/grim.tab" };
for (unsigned i = 0; i < sizeof(namesToTry) / sizeof(namesToTry[0]); i++) {
- const char *datadir = Registry::instance()->get("DataDir");
+ const char *datadir = g_registry->get("DataDir");
std::string fname = (datadir != NULL ? datadir : ".");
fname += namesToTry[i];
f = std::fopen(fname.c_str(), "rb");
Index: lua.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/lua.cpp,v
retrieving revision 1.84
retrieving revision 1.85
diff -u -d -r1.84 -r1.85
--- lua.cpp 31 Dec 2004 21:35:04 -0000 1.84
+++ lua.cpp 31 Dec 2004 22:05:25 -0000 1.85
@@ -234,14 +234,14 @@
static void ReadRegistryValue() {
char *key = luaL_check_string(1);
- const char *val = Registry::instance()->get(key);
+ const char *val = g_registry->get(key);
lua_pushstring(const_cast<char *>(val));
}
static void WriteRegistryValue() {
char *key = luaL_check_string(1);
char *val = luaL_check_string(2);
- Registry::instance()->set(key, val);
+ g_registry->set(key, val);
}
// Localization function
Index: main.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/main.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- main.cpp 31 Dec 2004 21:35:04 -0000 1.39
+++ main.cpp 31 Dec 2004 22:05:25 -0000 1.40
@@ -39,19 +39,13 @@
// Hacky global toggles for experimental/debug code
bool ZBUFFER_GLOBAL, SCREENBLOCKS_GLOBAL, SHOWFPS_GLOBAL;
-static void saveRegistry() {
- Registry::instance()->save();
-}
-
#ifdef __MINGW32__
int PASCAL WinMain(HINSTANCE /*hInst*/, HINSTANCE /*hPrevInst*/, LPSTR /*lpCmdLine*/, int /*iShowCmd*/) {
return main(0, NULL);
}
#endif
-extern SoundMixer *g_mixer;
-extern Timer *g_timer;
-extern Imuse *g_imuse;
+static bool g_lua_initialized = false;
static bool parseBoolStr(const char *val) {
if (val == NULL || val[0] == 0)
@@ -84,10 +78,26 @@
int main(int argc, char *argv[]) {
int i;
+ if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
+ return 1;
+
+ atexit(quit);
+
+ g_registry = new Registry();
+ g_engine = new Engine();
+ g_resourceloader = new ResourceLoader();
+ g_localizer = new Localizer();
+ g_mixer = new SoundMixer();
+ g_mixer->setVolume(255);
+ g_timer = new Timer();
+ g_smush = new Smush();
+ g_driver = new Driver(640, 480, 24);
+ g_imuse = new Imuse(10);
+
// Parse command line
- ZBUFFER_GLOBAL = parseBoolStr(Registry::instance()->get("zbuffer"));
- SCREENBLOCKS_GLOBAL = parseBoolStr(Registry::instance()->get("screenblocks"));
- SHOWFPS_GLOBAL = parseBoolStr(Registry::instance()->get("fps"));
+ ZBUFFER_GLOBAL = parseBoolStr(g_registry->get("zbuffer"));
+ SCREENBLOCKS_GLOBAL = parseBoolStr(g_registry->get("screenblocks"));
+ SHOWFPS_GLOBAL = parseBoolStr(g_registry->get("fps"));
for (i = 1; i < argc; i++) {
if (strcmp(argv[i], "-zbuffer") == 0)
ZBUFFER_GLOBAL = true;
@@ -112,21 +122,6 @@
}
}
- if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
- return 1;
-
- atexit(quit);
-
- g_engine = new Engine();
- g_resourceloader = new ResourceLoader();
- g_localizer = new Localizer();
- g_mixer = new SoundMixer();
- g_mixer->setVolume(255);
- g_timer = new Timer();
- g_smush = new Smush();
- g_driver = new Driver(640, 480, 24);
- g_imuse = new Imuse(10);
-
Bitmap *splash_bm = g_resourceloader->loadBitmap("splash.bm");
SDL_Event event;
@@ -153,6 +148,8 @@
lua_mathlibopen();
register_lua();
+ g_lua_initialized = true;
+
bundle_dofile("_system.lua");
lua_pushnil(); // resumeSave
@@ -169,20 +166,48 @@
}
void quit() {
- saveRegistry();
-
- delete g_smush;
- delete g_imuse;
- delete g_localizer;
- delete g_resourceloader;
- delete g_engine;
- delete g_timer;
- delete g_mixer;
- delete g_driver;
-
- lua_removelibslists();
- lua_close();
-
+ if (g_lua_initialized) {
+ lua_removelibslists();
+ lua_close();
+ g_lua_initialized = false;
+ }
+ if (g_registry) {
+ g_registry->save();
+ delete g_registry;
+ g_registry = NULL;
+ }
+ if (g_smush) {
+ delete g_smush;
+ g_smush = NULL;
+ }
+ if (g_imuse) {
+ delete g_imuse;
+ g_imuse = NULL;
+ }
+ if (g_localizer) {
+ delete g_localizer;
+ g_localizer = NULL;
+ }
+ if (g_resourceloader) {
+ delete g_resourceloader;
+ g_resourceloader = NULL;
+ }
+ if (g_engine) {
+ delete g_engine;
+ g_engine = NULL;
+ }
+ if (g_timer) {
+ delete g_timer;
+ g_timer = NULL;
+ }
+ if (g_mixer) {
+ delete g_mixer;
+ g_mixer = NULL;
+ }
+ if (g_driver) {
+ delete g_driver;
+ g_driver = NULL;
+ }
SDL_Quit();
}
Index: registry.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/registry.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- registry.cpp 10 Dec 2004 07:26:03 -0000 1.8
+++ registry.cpp 31 Dec 2004 22:05:25 -0000 1.9
@@ -20,6 +20,8 @@
#include "debug.h"
#include <cstdlib>
+Registry *g_registry = NULL;
+
Registry::Registry() : _dirty(false) {
#ifdef WIN32
std::string filename = "residual.ini";
@@ -45,14 +47,6 @@
}
}
-Registry *Registry::_instance = NULL;
-
-Registry *Registry::instance() {
- if (_instance == NULL)
- _instance = new Registry;
- return _instance;
-}
-
const char *Registry::get(const char *key) const {
Group::const_iterator i = _settings.find(key);
if (i == _settings.end())
Index: registry.h
===================================================================
RCS file: /cvsroot/scummvm/residual/registry.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- registry.h 10 Dec 2004 07:26:03 -0000 1.4
+++ registry.h 31 Dec 2004 22:05:25 -0000 1.5
@@ -23,16 +23,15 @@
class Registry {
public:
- static Registry *instance();
-
const char *get(const char *key) const;
void set(const char *key, const char *val);
void save();
-private:
Registry();
~Registry() { }
+private:
+
static Registry *_instance;
typedef std::map<std::string, std::string> Group;
@@ -40,4 +39,6 @@
bool _dirty;
};
+extern Registry *g_registry;
+
#endif
Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/resource.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- resource.cpp 31 Dec 2004 21:35:04 -0000 1.17
+++ resource.cpp 31 Dec 2004 22:05:25 -0000 1.18
@@ -38,7 +38,7 @@
ResourceLoader *g_resourceloader = NULL;
ResourceLoader::ResourceLoader() {
- const char *directory = Registry::instance()->get("DataDir");
+ const char *directory = g_registry->get("DataDir");
std::string dir_str = (directory != NULL ? directory : ".");
dir_str += '/';
int lab_counter = 0;
Index: smush.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/smush.cpp,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -d -r1.52 -r1.53
--- smush.cpp 31 Dec 2004 21:35:04 -0000 1.52
+++ smush.cpp 31 Dec 2004 22:05:25 -0000 1.53
@@ -29,7 +29,6 @@
#include "driver_gl.h"
Smush *g_smush;
-extern SoundMixer *g_mixer;
static uint16 smushDestTable[5786];
void vimaInit(uint16 *destTable);
void decompressVima(const byte *src, int16 *dest, int destLen, uint16 *destTable);
More information about the Scummvm-git-logs
mailing list