diff options
author | Max Horn | 2011-12-07 14:37:30 +0100 |
---|---|---|
committer | Max Horn | 2011-12-07 16:50:36 +0100 |
commit | c6ec610d5c8e665a0369861be925e2588f4a3d2a (patch) | |
tree | 781399fa6e70a31a862430c33df95f1a14754241 /engines | |
parent | 4c64f87892d0fa85fe908ef8a19a724b3dc27bac (diff) | |
download | scummvm-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.h | 4 | ||||
-rw-r--r-- | engines/dreamweb/stubs.h | 17 | ||||
-rw-r--r-- | engines/dreamweb/vgagrafx.cpp | 18 |
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); } |