[Scummvm-cvs-logs] scummvm master -> a09a39794cb4b9d0ca59b588a09e4dbcd1d6a5ad

tramboi bertrand_augereau at yahoo.fr
Fri Nov 18 17:42:05 CET 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:
a09a39794c DREAMWEB: 'showcurrentfile' ported to C++


Commit: a09a39794cb4b9d0ca59b588a09e4dbcd1d6a5ad
    https://github.com/scummvm/scummvm/commit/a09a39794cb4b9d0ca59b588a09e4dbcd1d6a5ad
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-11-18T08:38:19-08:00

Commit Message:
DREAMWEB: 'showcurrentfile' ported to C++
NB: This commit doesn't change the (wrong) layout of the file text

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



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index ee8b109..470eea9 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -247,6 +247,7 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'printlogo',
 	'usemon',
 	'scrollmonitor',
+	'showcurrentfile',
 	'input',
 	], skip_output = [
 	# These functions are processed but not output
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 86a81ef..66df739 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -6926,26 +6926,6 @@ notnewlogo:
 	printlogo();
 }
 
-void DreamGenContext::showcurrentfile() {
-	STACK_CHECK;
-	di = 178;
-	bx = 37;
-	si = 2970+1;
-curfileloop:
-	al = cs.byte(si);
-	_cmp(al, 0);
-	if (flags.z())
-		return /* (finishfile) */;
-	_inc(si);
-	push(si);
-	modifychar();
-	ds = data.word(kTempcharset);
-	ah = 0;
-	printchar();
-	si = pop();
-	goto curfileloop;
-}
-
 void DreamGenContext::monmessage() {
 	STACK_CHECK;
 	es = data.word(kTextfile1);
@@ -15358,7 +15338,6 @@ void DreamGenContext::__dispatch_call(uint16 addr) {
 		case addr_searchforstring: searchforstring(); break;
 		case addr_parser: parser(); break;
 		case addr_monitorlogo: monitorlogo(); break;
-		case addr_showcurrentfile: showcurrentfile(); break;
 		case addr_monmessage: monmessage(); break;
 		case addr_processtrigger: processtrigger(); break;
 		case addr_triggermessage: triggermessage(); break;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index bfb54c8..e4ad5f8 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -344,7 +344,6 @@ public:
 	static const uint16 addr_triggermessage = 0xc574;
 	static const uint16 addr_processtrigger = 0xc570;
 	static const uint16 addr_monmessage = 0xc56c;
-	static const uint16 addr_showcurrentfile = 0xc568;
 	static const uint16 addr_monitorlogo = 0xc560;
 	static const uint16 addr_parser = 0xc554;
 	static const uint16 addr_searchforstring = 0xc550;
@@ -1688,7 +1687,7 @@ public:
 	//void fillryan();
 	void drawitall();
 	void usestereo();
-	void showcurrentfile();
+	//void showcurrentfile();
 	//void turnpathoff();
 	//void copyname();
 	void look();
diff --git a/engines/dreamweb/monitor.cpp b/engines/dreamweb/monitor.cpp
index 530acc1..41df8c4 100644
--- a/engines/dreamweb/monitor.cpp
+++ b/engines/dreamweb/monitor.cpp
@@ -201,5 +201,15 @@ void DreamGenContext::scrollmonitor() {
 	bx = pop();
 }
 
+void DreamGenContext::showcurrentfile() {
+	uint16 x = 178;
+	const char *currentFile = (const char *)cs.ptr(kCurrentfile+1, 0);
+	while (*currentFile) {
+		char c = *currentFile++;
+		c = engine->modifyChar(c);
+		printchar((const Frame *)segRef(data.word(kTempcharset)).ptr(0, 0), &x, 37, c, 0, NULL, NULL);
+	}
+}
+
 } /*namespace dreamgen */
 
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index f8fc3b8..2fdb7c0 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -300,5 +300,6 @@
 	void printlogo();
 	void usemon();
 	void scrollmonitor();
+	void showcurrentfile();
 	void input();
 






More information about the Scummvm-git-logs mailing list