aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorMax Horn2011-12-07 14:37:30 +0100
committerMax Horn2011-12-07 16:50:36 +0100
commitc6ec610d5c8e665a0369861be925e2588f4a3d2a (patch)
tree781399fa6e70a31a862430c33df95f1a14754241 /engines
parent4c64f87892d0fa85fe908ef8a19a724b3dc27bac (diff)
downloadscummvm-rg350-c6ec610d5c8e665a0369861be925e2588f4a3d2a.tar.gz
scummvm-rg350-c6ec610d5c8e665a0369861be925e2588f4a3d2a.tar.bz2
scummvm-rg350-c6ec610d5c8e665a0369861be925e2588f4a3d2a.zip
DREAMWEB: Move some more things to DreamBase
Diffstat (limited to 'engines')
-rw-r--r--engines/dreamweb/dreambase.h4
-rw-r--r--engines/dreamweb/stubs.h17
-rw-r--r--engines/dreamweb/vgagrafx.cpp18
3 files changed, 24 insertions, 15 deletions
diff --git a/engines/dreamweb/dreambase.h b/engines/dreamweb/dreambase.h
index 45dc3791e2..eeb1fa21e7 100644
--- a/engines/dreamweb/dreambase.h
+++ b/engines/dreamweb/dreambase.h
@@ -73,6 +73,10 @@ public:
inline uint8 *workspace() { return _workspace; }
void clearWork();
+ void multiGet(uint8 *dst, uint16 x, uint16 y, uint8 width, uint8 height);
+ void multiPut(const uint8 *src, uint16 x, uint16 y, uint8 width, uint8 height);
+ void multiDump(uint16 x, uint16 y, uint8 width, uint8 height);
+ void workToScreenCPP();
void printUnderMon();
void cls();
void frameOutV(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, int16 x, int16 y);
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index ab669ed960..85253c2b77 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -45,13 +45,20 @@
void delChar();
void hangOnCurs(uint16 frameCount);
void hangOnCurs();
- void multiDump();
- void multiDump(uint16 x, uint16 y, uint8 width, uint8 height);
void workToScreen();
- void workToScreenCPP();
uint8 *mapStore();
void multiGet();
- void multiGet(uint8 *dst, uint16 x, uint16 y, uint8 width, uint8 height);
+ void multiGet(uint8 *dst, uint16 x, uint16 y, uint8 width, uint8 height) {
+ DreamBase::multiGet(dst, x, y, width, height);
+ }
+ void multiPut();
+ void multiPut(const uint8 *src, uint16 x, uint16 y, uint8 width, uint8 height) {
+ DreamBase::multiPut(src, x, y, width, height);
+ }
+ void multiDump();
+ void multiDump(uint16 x, uint16 y, uint8 width, uint8 height) {
+ DreamBase::multiDump(x, y, width, height);
+ }
void printSprites();
void quickQuit();
void readOneBlock();
@@ -85,8 +92,6 @@
void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag);
void printASprite(const Sprite *sprite);
void width160();
- void multiPut(const uint8 *src, uint16 x, uint16 y, uint8 width, uint8 height);
- void multiPut();
void eraseOldObs();
void clearSprites();
Sprite *makeSprite(uint8 x, uint8 y, uint16 updateCallback, uint16 frameData, uint16 somethingInDi);
diff --git a/engines/dreamweb/vgagrafx.cpp b/engines/dreamweb/vgagrafx.cpp
index c8280bdbbb..17019938f7 100644
--- a/engines/dreamweb/vgagrafx.cpp
+++ b/engines/dreamweb/vgagrafx.cpp
@@ -34,7 +34,7 @@ void DreamGenContext::multiGet() {
cx = 0;
}
-void DreamGenContext::multiGet(uint8 *dst, uint16 x, uint16 y, uint8 w, uint8 h) {
+void DreamBase::multiGet(uint8 *dst, uint16 x, uint16 y, uint8 w, uint8 h) {
assert(x < 320);
assert(y < 200);
const uint8 *src = workspace() + x + y * kScreenwidth;
@@ -57,7 +57,7 @@ void DreamGenContext::multiPut() {
cx = 0;
}
-void DreamGenContext::multiPut(const uint8 *src, uint16 x, uint16 y, uint8 w, uint8 h) {
+void DreamBase::multiPut(const uint8 *src, uint16 x, uint16 y, uint8 w, uint8 h) {
assert(x < 320);
assert(y < 200);
uint8 *dst = workspace() + x + y * kScreenwidth;
@@ -73,12 +73,6 @@ void DreamGenContext::multiPut(const uint8 *src, uint16 x, uint16 y, uint8 w, ui
}
}
-void DreamGenContext::multiDump(uint16 x, uint16 y, uint8 width, uint8 height) {
- unsigned offset = x + y * kScreenwidth;
- //debug(1, "multiDump %ux%u(segment: %04x) -> %d,%d(address: %d)", w, h, (uint16)ds, x, y, offset);
- engine->blit(workspace() + offset, kScreenwidth, x, y, width, height);
-}
-
void DreamGenContext::multiDump() {
multiDump(di, bx, cl, ch);
unsigned offset = di + bx * kScreenwidth;
@@ -86,7 +80,13 @@ void DreamGenContext::multiDump() {
cx = 0;
}
-void DreamGenContext::workToScreenCPP() {
+void DreamBase::multiDump(uint16 x, uint16 y, uint8 width, uint8 height) {
+ unsigned offset = x + y * kScreenwidth;
+ //debug(1, "multiDump %ux%u(segment: %04x) -> %d,%d(address: %d)", w, h, (uint16)ds, x, y, offset);
+ engine->blit(workspace() + offset, kScreenwidth, x, y, width, height);
+}
+
+void DreamBase::workToScreenCPP() {
engine->blit(workspace(), 320, 0, 0, 320, 200);
}