aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/dreamweb/runtime.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/engines/dreamweb/runtime.h b/engines/dreamweb/runtime.h
index d55f947032..4a928ea5e2 100644
--- a/engines/dreamweb/runtime.h
+++ b/engines/dreamweb/runtime.h
@@ -182,7 +182,7 @@ class Context {
SegmentMap _segments;
public:
- enum { kDefaultDataSegment = 0x1000 };
+ enum { kDefaultDataSegment = 0x1000, kVideoSegment = 0xa000 };
Register ax, dx, bx, cx, si, di;
LowPartOfRegister al;
@@ -194,16 +194,20 @@ public:
LowPartOfRegister dl;
HighPartOfRegister dh;
- SegmentRef cs, ds, es, data;
+ SegmentRef cs, ds, es, data, video;
//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), cs(this), ds(this), es(this), data(this) {
+ inline Context(): al(ax), ah(ax), bl(bx), bh(bx), cl(cx), ch(cx), dl(dx), dh(dx),
+ cs(this), ds(this), es(this), data(this), video(this) {
_segments[kDefaultDataSegment] = Segment();
+ _segments[kVideoSegment].data.resize(0x10000);
+
cs.reset(kDefaultDataSegment);
ds.reset(kDefaultDataSegment);
es.reset(kDefaultDataSegment);
data.reset(kDefaultDataSegment);
+ video.reset(kVideoSegment);
}
SegmentRef getSegment(uint16 value) {