aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/runtime.h
diff options
context:
space:
mode:
authorVladimir Menshakov2011-06-12 18:15:06 +0400
committerAlyssa Milburn2011-06-15 17:34:21 +0200
commitbd285645944861771f7a9f1b2ddc4778a60c50f7 (patch)
tree6c9689bb4b5a9f20709833fd500995dd0f880624 /engines/dreamweb/runtime.h
parent5fda321a80c006f6c55abcd48790165b25e678aa (diff)
downloadscummvm-rg350-bd285645944861771f7a9f1b2ddc4778a60c50f7.tar.gz
scummvm-rg350-bd285645944861771f7a9f1b2ddc4778a60c50f7.tar.bz2
scummvm-rg350-bd285645944861771f7a9f1b2ddc4778a60c50f7.zip
DREAMWEB: removed ugly static engine
Diffstat (limited to 'engines/dreamweb/runtime.h')
-rw-r--r--engines/dreamweb/runtime.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/engines/dreamweb/runtime.h b/engines/dreamweb/runtime.h
index d92a8d6a2b..3adc99b35f 100644
--- a/engines/dreamweb/runtime.h
+++ b/engines/dreamweb/runtime.h
@@ -9,6 +9,10 @@
#include "common/list.h"
#include "common/ptr.h"
+namespace DreamWeb {
+ class DreamWebEngine;
+}
+
namespace dreamgen {
//fixme: name clash
@@ -195,10 +199,12 @@ class Context {
typedef Common::List<uint16> FreeSegmentList;
FreeSegmentList _freeSegments;
-
+
public:
+ DreamWeb::DreamWebEngine *engine;
+
enum { kDefaultDataSegment = 0x1000 };
-
+
Register ax, dx, bx, cx, si, di;
LowPartOfRegister al;
HighPartOfRegister ah;
@@ -208,12 +214,12 @@ public:
HighPartOfRegister ch;
LowPartOfRegister dl;
HighPartOfRegister dh;
-
+
SegmentRef cs, ds, es, data;
//data == fake segment register always pointing to data segment
Flags flags;
- inline Context(): al(ax), ah(ax), bl(bx), bh(bx), cl(cx), ch(cx), dl(dx), dh(dx),
+ inline Context(): engine(0), al(ax), ah(ax), bl(bx), bh(bx), cl(cx), ch(cx), dl(dx), dh(dx),
cs(this), ds(this), es(this), data(this) {
_segments[kDefaultDataSegment] = SegmentPtr(new Segment());
cs.reset(kDefaultDataSegment);