aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb
diff options
context:
space:
mode:
authorBertrand Augereau2011-07-19 16:45:48 +0200
committerBertrand Augereau2011-07-23 18:23:39 +0200
commit7f45c6fec9e33ce1df33c7266f4e3caa7985ef11 (patch)
treeb16adf069ddb0ba806c72a1c761289b5e5da97ed /engines/dreamweb
parentd0f917d8571c3945b33dbd7a84bf3e0b33ce9715 (diff)
downloadscummvm-rg350-7f45c6fec9e33ce1df33c7266f4e3caa7985ef11.tar.gz
scummvm-rg350-7f45c6fec9e33ce1df33c7266f4e3caa7985ef11.tar.bz2
scummvm-rg350-7f45c6fec9e33ce1df33c7266f4e3caa7985ef11.zip
DREAMWEB: 'multidump' has a nicer signature
Diffstat (limited to 'engines/dreamweb')
-rw-r--r--engines/dreamweb/stubs.cpp13
-rw-r--r--engines/dreamweb/stubs.h9
2 files changed, 13 insertions, 9 deletions
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 9780f1eddf..c3622fe11d 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -78,14 +78,17 @@ void DreamGenContext::multiput() {
cx = 0;
}
-void DreamGenContext::multidump() {
+void DreamGenContext::multidump(uint16 x, uint16 y, uint8 width, uint8 height) {
ds = data.word(kWorkspace);
- int w = (uint8)cl, h = (uint8)ch;
- int x = (int16)di, y = (int16)bx;
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(ds.ptr(offset, w * h), kScreenwidth, x, y, w, h);
- si = di = offset + h * kScreenwidth;
+ engine->blit(ds.ptr(offset, width * height), kScreenwidth, x, y, width, height);
+}
+
+void DreamGenContext::multidump() {
+ multidump(di, bx, cl, ch);
+ unsigned offset = di + bx * kScreenwidth;
+ si = di = offset + ch * kScreenwidth;
cx = 0;
}
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index e580598a37..0d364e1437 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -21,10 +21,11 @@
*/
void multidump();
- void frameoutv(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
- void frameoutnm(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
- void frameoutbh(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
- void frameoutfx(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
+ void multidump(uint16 x, uint16 y, uint8 width, uint8 height);
+ void frameoutv(uint8* dst, const uint8* src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
+ void frameoutnm(uint8* dst, const uint8* src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
+ void frameoutbh(uint8* dst, const uint8* src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
+ void frameoutfx(uint8* dst, const uint8* src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
void worktoscreen();
void multiget();
void convertkey();