aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdevtools/tasmrecover/tasm-recover1
-rw-r--r--engines/dreamweb/dreamgen.cpp13
-rw-r--r--engines/dreamweb/dreamgen.h3
-rw-r--r--engines/dreamweb/stubs.cpp12
-rw-r--r--engines/dreamweb/stubs.h2
5 files changed, 16 insertions, 15 deletions
diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 2c5f1f3964..7d02cfa064 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -240,6 +240,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'loadtempcharset',
'printcurs',
'delcurs',
+ 'hangoncurs',
'loadroomssample',
], skip_output = [
# These functions are processed but not output
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 4899673977..edbc18435c 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -13887,18 +13887,6 @@ hangloopw:
goto hangloopw;
}
-void DreamGenContext::hangoncurs() {
- STACK_CHECK;
-monloop1:
- push(cx);
- printcurs();
- vsync();
- delcurs();
- cx = pop();
- if (--cx)
- goto monloop1;
-}
-
void DreamGenContext::getunderzoom() {
STACK_CHECK;
di = (8)+5;
@@ -15915,7 +15903,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {
case addr_blank: blank(); break;
case addr_allpointer: allpointer(); break;
case addr_hangonw: hangonw(); break;
- case addr_hangoncurs: hangoncurs(); break;
case addr_getunderzoom: getunderzoom(); break;
case addr_dumpzoom: dumpzoom(); break;
case addr_putunderzoom: putunderzoom(); break;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index 643ed0bd2b..bfd83d72b6 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -74,7 +74,6 @@ public:
static const uint16 addr_putunderzoom = 0xcabc;
static const uint16 addr_dumpzoom = 0xcab8;
static const uint16 addr_getunderzoom = 0xcab4;
- static const uint16 addr_hangoncurs = 0xcab0;
static const uint16 addr_hangonw = 0xcaac;
static const uint16 addr_allpointer = 0xcaa4;
static const uint16 addr_blank = 0xcaa0;
@@ -1333,7 +1332,7 @@ public:
//void loadroomssample();
//void updatepeople();
//void addtopeoplelist();
- void hangoncurs();
+ //void hangoncurs();
//void getblockofpixel();
//void kernchars();
//void printcurs();
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index e0075da174..3cad1236a7 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -288,6 +288,18 @@ void DreamGenContext::delcurs() {
multidump(x, y, width, height);
}
+void DreamGenContext::hangoncurs() {
+ hangoncurs(cx);
+}
+
+void DreamGenContext::hangoncurs(uint16 frameCount) {
+ for (uint16 i = 0; i < frameCount; ++i) {
+ printcurs();
+ vsync();
+ delcurs();
+ }
+}
+
void DreamGenContext::seecommandtail() {
data.word(kSoundbaseadd) = 0x220;
data.byte(kSoundint) = 5;
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index f2f4116b76..f367486a6e 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -36,6 +36,8 @@
void loadtempcharset(const char *fileName);
void printcurs();
void delcurs();
+ void hangoncurs(uint16 frameCount);
+ void hangoncurs();
void multidump();
void multidump(uint16 x, uint16 y, uint8 width, uint8 height);
void frameoutv(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, int16 x, int16 y);