aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/dreamweb/dreamgen.cpp21
-rw-r--r--engines/dreamweb/dreamgen.h5
-rw-r--r--engines/dreamweb/stubs.cpp10
-rw-r--r--engines/dreamweb/stubs.h1
4 files changed, 13 insertions, 24 deletions
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 026299a935..90bf0decb3 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -16544,26 +16544,6 @@ notsmally2:
showframe();
}
-void DreamGenContext::delpointer() {
- STACK_CHECK;
- ax = data.word(kOldpointerx);
- _cmp(ax, 0x0ffff);
- if (flags.z())
- return /* (nevershown) */;
- data.word(kDelherex) = ax;
- ax = data.word(kOldpointery);
- data.word(kDelherey) = ax;
- cl = data.byte(kPointerxs);
- data.byte(kDelxs) = cl;
- ch = data.byte(kPointerys);
- data.byte(kDelys) = ch;
- ds = data.word(kBuffers);
- si = (0+(228*13)+32+60);
- di = data.word(kDelherex);
- bx = data.word(kDelherey);
- multiput();
-}
-
void DreamGenContext::dumppointer() {
STACK_CHECK;
dumpblink();
@@ -18379,7 +18359,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {
case addr_dumpzoom: dumpzoom(); break;
case addr_putunderzoom: putunderzoom(); break;
case addr_showpointer: showpointer(); break;
- case addr_delpointer: delpointer(); break;
case addr_dumppointer: dumppointer(); break;
case addr_undertextline: undertextline(); break;
case addr_animpointer: animpointer(); break;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index 520c26926d..6112613ff9 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -88,7 +88,6 @@ public:
static const uint16 addr_animpointer = 0xcadc;
static const uint16 addr_undertextline = 0xcad0;
static const uint16 addr_dumppointer = 0xcacc;
- static const uint16 addr_delpointer = 0xcac8;
static const uint16 addr_showpointer = 0xcac4;
static const uint16 addr_putunderzoom = 0xcabc;
static const uint16 addr_dumpzoom = 0xcab8;
@@ -1556,7 +1555,7 @@ public:
void runintroseq();
//void doblocks();
void restoreall();
- void allpalette();
+ //void delpointer();
void attendant();
void nextsymbol();
void monks2text();
@@ -1575,7 +1574,7 @@ public:
void drinker();
void nextcolon();
void placefreeobject();
- void delpointer();
+ void allpalette();
//void loopchannel0();
void initrain();
void showleftpage();
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 67f8c81f63..0a021595c2 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1267,6 +1267,16 @@ void DreamGenContext::obname(uint8 command, uint8 commandType) {
}
}
+void DreamGenContext::delpointer() {
+ if (data.word(kOldpointerx) == 0xffff)
+ return;
+ data.word(kDelherex) = data.word(kOldpointerx);
+ data.word(kDelherey) = data.word(kOldpointery);
+ data.byte(kDelxs) = data.byte(kPointerxs);
+ data.byte(kDelys) = data.byte(kPointerys);
+ multiput(segRef(data.word(kBuffers)).ptr(kPointerback, 0), data.word(kDelherex), data.word(kDelherey), data.byte(kPointerxs), data.byte(kPointerys));
+}
+
bool DreamGenContext::isCD() {
// The original sources has two codepaths depending if the game is 'if cd' or not
// This is a hack to guess which version to use with the assumption that if we have a cd version
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index e3afbab073..f7c17a17e5 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -178,4 +178,5 @@
void walkandexamine();
void obname();
void obname(uint8 command, uint8 commandType);
+ void delpointer();