[Scummvm-cvs-logs] scummvm master -> 1dff2ebe8eda57bfb396c92fcdf83f9980fc02b9

tramboi bertrand_augereau at yahoo.fr
Thu Aug 18 18:48:59 CEST 2011


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
1dff2ebe8e DREAMWEB: 'calcmapad' ported to C++


Commit: 1dff2ebe8eda57bfb396c92fcdf83f9980fc02b9
    https://github.com/scummvm/scummvm/commit/1dff2ebe8eda57bfb396c92fcdf83f9980fc02b9
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-08-18T09:36:15-07:00

Commit Message:
DREAMWEB: 'calcmapad' ported to C++

Changed paths:
    devtools/tasmrecover/tasm-recover
    engines/dreamweb/backdrop.cpp
    engines/dreamweb/dreamgen.cpp
    engines/dreamweb/dreamgen.h
    engines/dreamweb/stubs.h



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index e14388a..1082c12 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -124,6 +124,7 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'getxad',
 	'getyad',
 	'getmapad',
+	'calcmapad',
 	'calcfrframe',
 	'finalframe',
 	'commandonly',
diff --git a/engines/dreamweb/backdrop.cpp b/engines/dreamweb/backdrop.cpp
index be957bf..e1800ba 100644
--- a/engines/dreamweb/backdrop.cpp
+++ b/engines/dreamweb/backdrop.cpp
@@ -228,5 +228,13 @@ void DreamGenContext::getdimension(uint8 *mapXstart, uint8 *mapYstart, uint8 *ma
 	data.byte(kMapysize) = *mapYsize << 4;
 }
 
+void DreamGenContext::calcmapad() {
+	uint8 mapXstart, mapYstart;
+	uint8 mapXsize, mapYsize;
+	getdimension(&mapXstart, &mapYstart, &mapXsize, &mapYsize);
+	data.word(kMapadx) = data.word(kMapoffsetx) - 8 * (mapXsize + 2 * mapXstart - 11);
+	data.word(kMapady) = data.word(kMapoffsety) - 8 * (mapYsize + 2 * mapYstart - 10);
+}
+
 } /*namespace dreamgen */
 
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 75794bd..7c6a16b 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -6401,33 +6401,6 @@ void DreamGenContext::drawfloor() {
 	es = pop();
 }
 
-void DreamGenContext::calcmapad() {
-	STACK_CHECK;
-	getdimension();
-	push(cx);
-	push(dx);
-	al = 11;
-	_sub(al, dl);
-	_sub(al, cl);
-	_sub(al, cl);
-	ax.cbw();
-	bx = 8;
-	_mul(bx);
-	_add(ax, data.word(kMapoffsetx));
-	data.word(kMapadx) = ax;
-	dx = pop();
-	cx = pop();
-	al = 10;
-	_sub(al, dh);
-	_sub(al, ch);
-	_sub(al, ch);
-	ax.cbw();
-	bx = 8;
-	_mul(bx);
-	_add(ax, data.word(kMapoffsety));
-	data.word(kMapady) = ax;
-}
-
 void DreamGenContext::drawflags() {
 	STACK_CHECK;
 	es = data.word(kBuffers);
@@ -18651,7 +18624,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {
 		case addr_deleteextext: deleteextext(); break;
 		case addr_blockget: blockget(); break;
 		case addr_drawfloor: drawfloor(); break;
-		case addr_calcmapad: calcmapad(); break;
 		case addr_drawflags: drawflags(); break;
 		case addr_showallfree: showallfree(); break;
 		case addr_showallex: showallex(); break;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index f466504..0f5534e 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -480,7 +480,6 @@ public:
 	static const uint16 addr_showallex = 0xc450;
 	static const uint16 addr_showallfree = 0xc44c;
 	static const uint16 addr_drawflags = 0xc43c;
-	static const uint16 addr_calcmapad = 0xc42c;
 	static const uint16 addr_drawfloor = 0xc428;
 	static const uint16 addr_blockget = 0xc424;
 	static const uint16 addr_deleteextext = 0xc420;
@@ -1586,7 +1585,7 @@ public:
 	void clearpalette();
 	void cantdrop();
 	void maptopanel();
-	void calcmapad();
+	//void calcmapad();
 	void getridofall();
 	void copper();
 	void folderhints();
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index adca64f..31a10c5 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -137,6 +137,7 @@
 	void getdimension();
 	void getdimension(uint8 *mapXstart, uint8 *mapYstart, uint8 *mapXsize, uint8 *mapYsize);
 	void getmapad();
+	void calcmapad();
 	uint8 getmapad(const uint8 *setData);
 	uint8 getxad(const uint8 *setData, uint8 *result);
 	uint8 getyad(const uint8 *setData, uint8 *result);






More information about the Scummvm-git-logs mailing list