[Scummvm-cvs-logs] scummvm master -> 92baa570d15c694741f993ce797c7ab004a30e73

tramboi bertrand_augereau at yahoo.fr
Wed Aug 24 12:32:56 CEST 2011


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

Summary:
266af3b089 DREAMWEB: 'geteitherad' ported to C++
92baa570d1 DREAMWEB: Ported 'delpointer' to C++


Commit: 266af3b0893d482971d483e18f9815ac7efbbccb
    https://github.com/scummvm/scummvm/commit/266af3b0893d482971d483e18f9815ac7efbbccb
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-08-24T02:00:10-07:00

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

Changed paths:
    engines/dreamweb/stubs.cpp
    engines/dreamweb/stubs.h



diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 0afa755..67f8c81 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1101,6 +1101,13 @@ DynObject *DreamGenContext::getexad(uint8 index) {
 	return (DynObject *)segRef(data.word(kExtras)).ptr(kExdata, 0) + index;
 }
 
+DynObject *DreamGenContext::geteitheradCPP() {
+	if (data.byte(kObjecttype) == 4)
+		return getexad(data.byte(kItemframe));
+	else
+		return getfreead(data.byte(kItemframe));
+}
+
 SetObject *DreamGenContext::getsetad(uint8 index) {
 	return (SetObject *)segRef(data.word(kSetdat)).ptr(0, 0) + index;
 }
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index ed77e26..e3afbab 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -157,6 +157,7 @@
 	void findormake(uint8 index, uint8 value, uint8 type);
 	DynObject *getfreead(uint8 index);
 	DynObject *getexad(uint8 index);
+	DynObject *geteitheradCPP();
 	SetObject *getsetad(uint8 index);
 	void setallchanges();
 	void dochange();


Commit: 92baa570d15c694741f993ce797c7ab004a30e73
    https://github.com/scummvm/scummvm/commit/92baa570d15c694741f993ce797c7ab004a30e73
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-08-24T03:26:57-07:00

Commit Message:
DREAMWEB: Ported 'delpointer' to C++

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



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 91270aa..26dec2b 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -148,6 +148,7 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'getflagunderp',
 	'walkandexamine',
 	'obname',
+	'delpointer',
 	], skip_output = [
 	# These functions are processed but not output
 	'dreamweb',
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 026299a..90bf0de 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -16544,26 +16544,6 @@ notsmally2:
 	showframe();
 }
 
-void DreamGenContext::delpointer() {
-	STACK_CHECK;
-	ax = data.word(kOldpointerx);
-	_cmp(ax, 0x0ffff);
-	if (flags.z())
-		return /* (nevershown) */;
-	data.word(kDelherex) = ax;
-	ax = data.word(kOldpointery);
-	data.word(kDelherey) = ax;
-	cl = data.byte(kPointerxs);
-	data.byte(kDelxs) = cl;
-	ch = data.byte(kPointerys);
-	data.byte(kDelys) = ch;
-	ds = data.word(kBuffers);
-	si = (0+(228*13)+32+60);
-	di = data.word(kDelherex);
-	bx = data.word(kDelherey);
-	multiput();
-}
-
 void DreamGenContext::dumppointer() {
 	STACK_CHECK;
 	dumpblink();
@@ -18379,7 +18359,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {
 		case addr_dumpzoom: dumpzoom(); break;
 		case addr_putunderzoom: putunderzoom(); break;
 		case addr_showpointer: showpointer(); break;
-		case addr_delpointer: delpointer(); break;
 		case addr_dumppointer: dumppointer(); break;
 		case addr_undertextline: undertextline(); break;
 		case addr_animpointer: animpointer(); break;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index 520c269..6112613 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -88,7 +88,6 @@ public:
 	static const uint16 addr_animpointer = 0xcadc;
 	static const uint16 addr_undertextline = 0xcad0;
 	static const uint16 addr_dumppointer = 0xcacc;
-	static const uint16 addr_delpointer = 0xcac8;
 	static const uint16 addr_showpointer = 0xcac4;
 	static const uint16 addr_putunderzoom = 0xcabc;
 	static const uint16 addr_dumpzoom = 0xcab8;
@@ -1556,7 +1555,7 @@ public:
 	void runintroseq();
 	//void doblocks();
 	void restoreall();
-	void allpalette();
+	//void delpointer();
 	void attendant();
 	void nextsymbol();
 	void monks2text();
@@ -1575,7 +1574,7 @@ public:
 	void drinker();
 	void nextcolon();
 	void placefreeobject();
-	void delpointer();
+	void allpalette();
 	//void loopchannel0();
 	void initrain();
 	void showleftpage();
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 67f8c81..0a02159 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1267,6 +1267,16 @@ void DreamGenContext::obname(uint8 command, uint8 commandType) {
 	}
 }
 
+void DreamGenContext::delpointer() {
+	if (data.word(kOldpointerx) == 0xffff)
+		return;
+	data.word(kDelherex) = data.word(kOldpointerx);
+	data.word(kDelherey) = data.word(kOldpointery);
+	data.byte(kDelxs) = data.byte(kPointerxs);
+	data.byte(kDelys) = data.byte(kPointerys);
+	multiput(segRef(data.word(kBuffers)).ptr(kPointerback, 0), data.word(kDelherex), data.word(kDelherey), data.byte(kPointerxs), data.byte(kPointerys));
+}
+
 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 e3afbab..f7c17a1 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -178,4 +178,5 @@
 	void walkandexamine();
 	void obname();
 	void obname(uint8 command, uint8 commandType);
+	void delpointer();
 






More information about the Scummvm-git-logs mailing list