Skip to content

Commit

Permalink
DREAMWEB: 'clearbeforeload', 'clearreels', 'getridofreels' ported to C++
Browse files Browse the repository at this point in the history
  • Loading branch information
bluegr committed Dec 5, 2011
1 parent dc62da9 commit 06ef345
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 36 deletions.
3 changes: 3 additions & 0 deletions devtools/tasmrecover/tasm-recover
Expand Up @@ -193,7 +193,9 @@ generator = cpp(context, "DreamGen", blacklist = [
'checkifset',
'checkone',
'checkspeed',
'clearbeforeload',
'clearendpal',
'clearreels',
'clearsprites',
'clearstartpal',
'clearwork',
Expand Down Expand Up @@ -295,6 +297,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'getreelstart',
'getridofall',
'getridofpit',
'getridofreels',
'getridoftemp',
'getridoftemp2',
'getridoftemp3',
Expand Down
33 changes: 0 additions & 33 deletions engines/dreamweb/dreamgen.cpp
Expand Up @@ -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);
Expand Down Expand Up @@ -10279,19 +10259,6 @@ void DreamGenContext::underTextLine() {
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,
Expand Down
3 changes: 0 additions & 3 deletions engines/dreamweb/dreamgen.h
Expand Up @@ -550,7 +550,6 @@ class DreamGenContext : public Context {
void clearBuffers();
void getObTextStart();
void decide();
void getRidOfReels();
void entryTexts();
void checkInput();
void setMode();
Expand Down Expand Up @@ -763,7 +762,6 @@ class DreamGenContext : public Context {
void candles2();
void candles1();
void showOpBox();
void clearBeforeLoad();
void doFade();
void useTrainer();
void dumpCurrent();
Expand Down Expand Up @@ -848,7 +846,6 @@ class DreamGenContext : public Context {
void updateSymbolTop();
void allPointer();
void checkSoundInt();
void clearReels();
void doSaveLoad();
void createName();
void getPersonText();
Expand Down
24 changes: 24 additions & 0 deletions engines/dreamweb/sprite.cpp
Expand Up @@ -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 */

3 changes: 3 additions & 0 deletions engines/dreamweb/stubs.h
Expand Up @@ -473,5 +473,8 @@
void fadeScreenUpHalf();
void fadeScreenDown();
void fadeScreenDowns();
void clearBeforeLoad();
void clearReels();
void getRidOfReels();

#endif

0 comments on commit 06ef345

Please sign in to comment.