diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/dreamweb/dreamgen.cpp | 33 | ||||
-rw-r--r-- | engines/dreamweb/dreamgen.h | 3 | ||||
-rw-r--r-- | engines/dreamweb/sprite.cpp | 24 | ||||
-rw-r--r-- | engines/dreamweb/stubs.h | 3 |
4 files changed, 27 insertions, 36 deletions
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index be706bb32b..90b3785f97 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -9636,26 +9636,6 @@ void DreamGenContext::clearChanges() { _stosw(cx, true); } -void DreamGenContext::clearBeforeLoad() { - STACK_CHECK; - _cmp(data.byte(kRoomloaded), 1); - if (!flags.z()) - return /* (noclear) */; - clearReels(); - clearRest(); - data.byte(kRoomloaded) = 0; -} - -void DreamGenContext::clearReels() { - STACK_CHECK; - es = data.word(kReel1); - deallocateMem(); - es = data.word(kReel2); - deallocateMem(); - es = data.word(kReel3); - deallocateMem(); -} - void DreamGenContext::clearRest() { STACK_CHECK; es = data.word(kMapdata); @@ -10279,19 +10259,6 @@ _tmp1: multiGet(); } -void DreamGenContext::getRidOfReels() { - STACK_CHECK; - _cmp(data.byte(kRoomloaded), 0); - if (flags.z()) - return /* (dontgetrid) */; - es = data.word(kReel1); - deallocateMem(); - es = data.word(kReel2); - deallocateMem(); - es = data.word(kReel3); - deallocateMem(); -} - void DreamGenContext::__start() { static const uint8 src[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x13, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index ef8abf96d3..67419c1ac5 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -550,7 +550,6 @@ public: void clearBuffers(); void getObTextStart(); void decide(); - void getRidOfReels(); void entryTexts(); void checkInput(); void setMode(); @@ -763,7 +762,6 @@ public: void candles2(); void candles1(); void showOpBox(); - void clearBeforeLoad(); void doFade(); void useTrainer(); void dumpCurrent(); @@ -848,7 +846,6 @@ public: void updateSymbolTop(); void allPointer(); void checkSoundInt(); - void clearReels(); void doSaveLoad(); void createName(); void getPersonText(); diff --git a/engines/dreamweb/sprite.cpp b/engines/dreamweb/sprite.cpp index 5eddb1ca57..7628a919d1 100644 --- a/engines/dreamweb/sprite.cpp +++ b/engines/dreamweb/sprite.cpp @@ -1148,5 +1148,29 @@ void DreamGenContext::soundOnReels() { data.word(kLastsoundreel) = -1; } +void DreamGenContext::clearBeforeLoad() { + if (data.byte(kRoomloaded) != 1) + return /* (noclear) */; + + clearReels(); + clearRest(); + data.byte(kRoomloaded) = 0; +} + +void DreamGenContext::clearReels() { + deallocateMem(data.word(kReel1)); + deallocateMem(data.word(kReel2)); + deallocateMem(data.word(kReel3)); +} + +void DreamGenContext::getRidOfReels() { + if (data.byte(kRoomloaded) == 0) + return /* (dontgetrid) */; + + deallocateMem(data.word(kReel1)); + deallocateMem(data.word(kReel2)); + deallocateMem(data.word(kReel3)); +} + } /*namespace dreamgen */ diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index faa6d9dcae..daf7388e7b 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -473,5 +473,8 @@ void fadeScreenUpHalf(); void fadeScreenDown(); void fadeScreenDowns(); + void clearBeforeLoad(); + void clearReels(); + void getRidOfReels(); #endif |