aboutsummaryrefslogtreecommitdiff
path: root/engines/groovie/script.h
diff options
context:
space:
mode:
authorJordi Vilalta Prat2009-03-10 00:19:44 +0000
committerJordi Vilalta Prat2009-03-10 00:19:44 +0000
commit940f19dc232b61092cc60f118053a4ad1551bee4 (patch)
tree3de148a3f6bef90456a1d1550b3413ace26358ad /engines/groovie/script.h
parent52b52d3c5e28d46b279f35be37920130a85ca2de (diff)
downloadscummvm-rg350-940f19dc232b61092cc60f118053a4ad1551bee4.tar.gz
scummvm-rg350-940f19dc232b61092cc60f118053a4ad1551bee4.tar.bz2
scummvm-rg350-940f19dc232b61092cc60f118053a4ad1551bee4.zip
Groovie: Initial support for different opcode sets
svn-id: r39282
Diffstat (limited to 'engines/groovie/script.h')
-rw-r--r--engines/groovie/script.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/groovie/script.h b/engines/groovie/script.h
index 3df5674ae4..14b0ef88fd 100644
--- a/engines/groovie/script.h
+++ b/engines/groovie/script.h
@@ -34,13 +34,18 @@
namespace Groovie {
+enum EngineVersion {
+ kGroovieT7G,
+ kGroovieV2
+};
+
class GroovieEngine;
class Script {
friend class Debugger;
public:
- Script(GroovieEngine *vm);
+ Script(GroovieEngine *vm, EngineVersion version);
~Script();
void setDebugger(Debugger *debugger);
@@ -132,7 +137,9 @@ private:
// Opcodes
typedef void (Script::*OpcodeFunc)();
- static OpcodeFunc _opcodes[];
+ OpcodeFunc *_opcodes;
+ static OpcodeFunc _opcodesT7G[];
+ static OpcodeFunc _opcodesV2[];
void o_invalid();