diff options
| author | Bertrand Augereau | 2011-08-18 22:09:28 +0200 | 
|---|---|---|
| committer | Bertrand Augereau | 2011-08-18 22:17:11 +0200 | 
| commit | ef7c28c2cd33b6b8a8f7532d74693bf8e68a0cf6 (patch) | |
| tree | 8854d37996cd69b0fedf1010319a056ff5e1e1d3 | |
| parent | 5ff686a6dc180566dc4e6618f73ee4ea36ab9dcc (diff) | |
| download | scummvm-rg350-ef7c28c2cd33b6b8a8f7532d74693bf8e68a0cf6.tar.gz scummvm-rg350-ef7c28c2cd33b6b8a8f7532d74693bf8e68a0cf6.tar.bz2 scummvm-rg350-ef7c28c2cd33b6b8a8f7532d74693bf8e68a0cf6.zip | |
DREAMWEB: Ported 'blocknametext', 'walktotext', 'personnametext',
| -rwxr-xr-x | devtools/tasmrecover/tasm-recover | 3 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.cpp | 28 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.h | 19 | ||||
| -rw-r--r-- | engines/dreamweb/stubs.cpp | 12 | ||||
| -rw-r--r-- | engines/dreamweb/stubs.h | 3 | 
5 files changed, 26 insertions, 39 deletions
| diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 8627321227..8aa820538e 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -130,6 +130,9 @@ generator = cpp(context, "DreamGen", blacklist = [  	'commandonly',  	'makename',  	'findlen', +	'blocknametext', +	'walktotext', +	'personnametext',  	], skip_output = [  	# These functions are processed but not output  	'dreamweb', diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index a39a912e81..5b6383c969 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -16292,31 +16292,6 @@ searchmess:  	printdirect();  } -void DreamGenContext::blocknametext() { -	STACK_CHECK; -	bl = data.byte(kCommand); -	bh = data.byte(kCommandtype); -	al = 0; -	commandwithob(); -} - -void DreamGenContext::personnametext() { -	STACK_CHECK; -	bl = data.byte(kCommand); -	_and(bl, 127); -	bh = data.byte(kCommandtype); -	al = 2; -	commandwithob(); -} - -void DreamGenContext::walktotext() { -	STACK_CHECK; -	bl = data.byte(kCommand); -	bh = data.byte(kCommandtype); -	al = 3; -	commandwithob(); -} -  void DreamGenContext::getflagunderp() {  	STACK_CHECK;  	cx = data.word(kMousex); @@ -18950,9 +18925,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {  		case addr_examineobtext: examineobtext(); break;  		case addr_printmessage: printmessage(); break;  		case addr_printmessage2: printmessage2(); break; -		case addr_blocknametext: blocknametext(); break; -		case addr_personnametext: personnametext(); break; -		case addr_walktotext: walktotext(); break;  		case addr_getflagunderp: getflagunderp(); break;  		case addr_setwalk: setwalk(); break;  		case addr_bresenhams: bresenhams(); break; diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index 1f1e7cd679..096135cabd 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -117,9 +117,6 @@ public:  	static const uint16 addr_bresenhams = 0xca50;  	static const uint16 addr_setwalk = 0xca44;  	static const uint16 addr_getflagunderp = 0xca40; -	static const uint16 addr_walktotext = 0xca3c; -	static const uint16 addr_personnametext = 0xca38; -	static const uint16 addr_blocknametext = 0xca34;  	static const uint16 addr_printmessage2 = 0xca30;  	static const uint16 addr_printmessage = 0xca2c;  	static const uint16 addr_examineobtext = 0xca20; @@ -1407,7 +1404,7 @@ public:  	void othersmoker();  	void dofade();  	//void setuptimedtemp(); -	void blocknametext(); +	//void blocknametext();  	void useelevator5();  	void useelevator4();  	void useelevator1(); @@ -1567,7 +1564,7 @@ public:  	void showword();  	void dirfile();  	void setmode(); -	void walktotext(); +	//void walktotext();  	void pickupconts();  	void locklightoff();  	void wearwatch(); @@ -1578,7 +1575,6 @@ public:  	void findormake();  	void nextsymbol();  	void monks2text(); -	void poolguard();  	void clearpalette();  	void cantdrop();  	void maptopanel(); @@ -1764,14 +1760,14 @@ public:  	void realcredits();  	void handclap();  	void smokebloke(); -	void showexit(); +	void afterintroroom();  	//void printundermon();  	void buttonnine();  	void findallopen();  	void loadintotemp3();  	void loadintotemp2();  	void gamer(); -	void personnametext(); +	void poolguard();  	void readfromfile();  	void initialinv();  	void quitsymbol(); @@ -1804,7 +1800,7 @@ public:  	void setpickup();  	//void doorway();  	void dropobject(); -	void printmessage(); +	void isitright();  	void reexfromopen();  	void fillryan();  	void drawitall(); @@ -1823,7 +1819,7 @@ public:  	void clearbeforeload();  	void biblequote();  	void doload(); -	void afterintroroom(); +	void showexit();  	void blockget();  	void usetrainer();  	//void allocatework(); @@ -1855,6 +1851,7 @@ public:  	void examicon();  	void showgun();  	void switchryanon(); +	//void personnametext();  	void louischair();  	void saveems();  	void locationpic(); @@ -2051,7 +2048,7 @@ public:  	void loadsecondsample();  	void transfercontoex();  	//void multiput(); -	void isitright(); +	void printmessage();  	void businessman();  	void switchryanoff();  	//void commandwithob(); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index 6bcd80c8d3..54d901f5c5 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -1098,6 +1098,18 @@ void DreamGenContext::showpanel() {  	showframe(frame, 192, 0, 19, 0, &width, &height);  } +void DreamGenContext::blocknametext() { +	commandwithob(0, data.byte(kCommandtype), data.byte(kCommand)); +} + +void DreamGenContext::personnametext() { +	commandwithob(2, data.byte(kCommandtype), data.byte(kCommand) & 127); +} + +void DreamGenContext::walktotext() { +	commandwithob(3, data.byte(kCommandtype), data.byte(kCommand)); +} +  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 31a10c5698..2b1cdface7 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -145,5 +145,8 @@  	void finalframe();  	void finalframe(uint16 *x, uint16 *y);  	void showallobs(); +	void blocknametext(); +	void walktotext(); +	void personnametext();  	bool isCD(); | 
