aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2011-05-17 15:50:11 +0200
committerMax Horn2011-05-17 15:50:11 +0200
commitd0209228467f548e748146e1c72e72ac9cccc89f (patch)
tree96fb7cdd05b076988e50711530a9221c3ca4cd62
parent183e018c198d9e3e74440d8d4c29783523b7bb6e (diff)
downloadscummvm-rg350-d0209228467f548e748146e1c72e72ac9cccc89f.tar.gz
scummvm-rg350-d0209228467f548e748146e1c72e72ac9cccc89f.tar.bz2
scummvm-rg350-d0209228467f548e748146e1c72e72ac9cccc89f.zip
SCUMM: Make REDUCE_MEMORY_USAGE slightly more effecive (saving ~1kb ram)
-rw-r--r--engines/scumm/script.cpp4
-rw-r--r--engines/scumm/script.h9
2 files changed, 12 insertions, 1 deletions
diff --git a/engines/scumm/script.cpp b/engines/scumm/script.cpp
index cd9a0ed1c8..cfc4b3c419 100644
--- a/engines/scumm/script.cpp
+++ b/engines/scumm/script.cpp
@@ -494,7 +494,11 @@ void ScummEngine::executeOpcode(byte i) {
}
const char *ScummEngine::getOpcodeDesc(byte i) {
+#ifndef REDUCE_MEMORY_USAGE
return _opcodes[i].desc;
+#else
+ return "";
+#endif
}
byte ScummEngine::fetchScriptByte() {
diff --git a/engines/scumm/script.h b/engines/scumm/script.h
index e576c9b09b..7b2c625144 100644
--- a/engines/scumm/script.h
+++ b/engines/scumm/script.h
@@ -27,14 +27,19 @@
namespace Scumm {
-
typedef Common::Functor0<void> Opcode;
struct OpcodeEntry : Common::NonCopyable {
Opcode *proc;
+#ifndef REDUCE_MEMORY_USAGE
const char *desc;
+#endif
+#ifndef REDUCE_MEMORY_USAGE
OpcodeEntry() : proc(0), desc(0) {}
+#else
+ OpcodeEntry() : proc(0) {}
+#endif
~OpcodeEntry() {
setProc(0, 0);
}
@@ -44,7 +49,9 @@ struct OpcodeEntry : Common::NonCopyable {
delete proc;
proc = p;
}
+#ifndef REDUCE_MEMORY_USAGE
desc = d;
+#endif
}
};