aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/sprite.cpp
diff options
context:
space:
mode:
authorD G Turner2011-12-07 18:00:05 +0000
committerD G Turner2011-12-07 18:00:05 +0000
commitc1b7d25bb7cd8f718d79b47c6b4a12caed904dde (patch)
treeecae7d8d82447f9d3507b5f3f988fb4c6cf9af79 /engines/dreamweb/sprite.cpp
parent03204ad31931160b0d7015e6538be970c3ec5b4c (diff)
downloadscummvm-rg350-c1b7d25bb7cd8f718d79b47c6b4a12caed904dde.tar.gz
scummvm-rg350-c1b7d25bb7cd8f718d79b47c6b4a12caed904dde.tar.bz2
scummvm-rg350-c1b7d25bb7cd8f718d79b47c6b4a12caed904dde.zip
DREAMWEB: 'clearrest' ported to C++.
Diffstat (limited to 'engines/dreamweb/sprite.cpp')
-rw-r--r--engines/dreamweb/sprite.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/engines/dreamweb/sprite.cpp b/engines/dreamweb/sprite.cpp
index fd6d2dc9e8..9f3666312a 100644
--- a/engines/dreamweb/sprite.cpp
+++ b/engines/dreamweb/sprite.cpp
@@ -1165,7 +1165,20 @@ void DreamGenContext::clearBeforeLoad() {
return /* (noclear) */;
clearReels();
- clearRest();
+
+ //clearRest
+ uint8 *dst = (uint8 *)getSegment(data.word(kMapdata)).ptr(0, 0);
+ memset(dst, 0, kMaplen);
+ deallocateMem(data.word(kBackdrop));
+ deallocateMem(data.word(kSetframes));
+ deallocateMem(data.word(kReels));
+ deallocateMem(data.word(kPeople));
+ deallocateMem(data.word(kSetdesc));
+ deallocateMem(data.word(kBlockdesc));
+ deallocateMem(data.word(kRoomdesc));
+ deallocateMem(data.word(kFreeframes));
+ deallocateMem(data.word(kFreedesc));
+
data.byte(kRoomloaded) = 0;
}