Skip to content

Commit

Permalink
DREAMWEB: Remove the now unused ASM style versions of getanyad, getex…
Browse files Browse the repository at this point in the history
…ad, getfreead and getsetad
  • Loading branch information
bluegr committed Dec 26, 2011
1 parent 3b9b4cb commit 8c3488a
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 59 deletions.
4 changes: 4 additions & 0 deletions devtools/tasmrecover/tasm-recover
Expand Up @@ -500,6 +500,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'gamer',
'gates',
'generalerror',
'getanyad',
'getanyaddir',
'getback1',
'getbackfromob',
Expand All @@ -509,8 +510,10 @@ generator = cpp(context, "DreamGen", blacklist = [
'getdestinfo',
'getdimension',
'geteitherad',
'getexad',
'getexpos',
'getflagunderp',
'getfreead',
'getkeyandlogo',
'getlocation',
'getmapad',
Expand All @@ -534,6 +537,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'getridoftemptext',
'getroomdata',
'getroomspaths',
'getsetad',
'gettime',
'gettingshot',
'getundercentre',
Expand Down
51 changes: 0 additions & 51 deletions engines/dreamweb/dreamgen.cpp
Expand Up @@ -73,57 +73,6 @@ void DreamGenContext::transferMap() {
_add(data.word(kExframepos), cx);
}

void DreamGenContext::getFreeAd() {
STACK_CHECK;
ah = 0;
cl = 4;
_shl(ax, cl);
bx = ax;
es = data.word(kFreedat);
}

void DreamGenContext::getExAd() {
STACK_CHECK;
ah = 0;
bx = 16;
_mul(bx);
bx = ax;
es = data.word(kExtras);
_add(bx, (0+2080+30000));
}

void DreamGenContext::getAnyAd() {
STACK_CHECK;
_cmp(data.byte(kObjecttype), 4);
if (flags.z())
goto isex;
_cmp(data.byte(kObjecttype), 2);
if (flags.z())
goto isfree;
al = data.byte(kCommand);
getSetAd();
ax = es.word(bx+4);
return;
isfree:
al = data.byte(kCommand);
getFreeAd();
ax = es.word(bx+7);
return;
isex:
al = data.byte(kCommand);
getExAd();
ax = es.word(bx+7);
}

void DreamGenContext::getSetAd() {
STACK_CHECK;
ah = 0;
bx = 64;
_mul(bx);
bx = ax;
es = data.word(kSetdat);
}

void DreamGenContext::pickupConts() {
STACK_CHECK;
al = ds.byte(si+7);
Expand Down
4 changes: 0 additions & 4 deletions engines/dreamweb/dreamgen.h
Expand Up @@ -428,16 +428,12 @@ class DreamGenContext : public DreamBase, public Context {
#include "stubs.h" // Allow hand-reversed functions to have a signature different than void f()

void dirCom();
void getAnyAd();
void getFreeAd();
void dirFile();
void pickupConts();
void transferMap();
void getSetAd();
void dreamweb();
void read();
void searchForString();
void getExAd();
void parser();
void transferConToEx();
};
Expand Down
3 changes: 2 additions & 1 deletion engines/dreamweb/stubs.cpp
Expand Up @@ -2725,7 +2725,8 @@ void DreamGenContext::pickupOb(uint8 command, uint8 pos) {
data.byte(kObjecttype) = kFreeObjectType;
data.byte(kItemframe) = command;
data.byte(kCommand) = command;
getAnyAd();
//uint8 dummy;
//getAnyAd(&dummy, &dummy); // was in the original source, seems useless here
transferToEx();
}

Expand Down
5 changes: 2 additions & 3 deletions engines/dreamweb/use.cpp
Expand Up @@ -127,9 +127,8 @@ void DreamGenContext::useRoutine() {
data.byte(kPointerpower) = 0;
}

getAnyAd();
// CHECKME: Do the callbacks use es:bx ?
void *obj = es.ptr(bx, 15);
uint8 dummy;
void *obj = getAnyAd(&dummy, &dummy);

for (size_t i = 0; i < sizeof(kUseList)/sizeof(UseListEntry); ++i) {
const UseListEntry &entry = kUseList[i];
Expand Down

0 comments on commit 8c3488a

Please sign in to comment.