[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.333,2.334 script_v100he.cpp,2.45,2.46

kirben kirben at users.sourceforge.net
Mon Feb 14 00:58:38 CET 2005


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5341/scumm

Modified Files:
	intern.h script_v100he.cpp 
Log Message:

Add opcode for HE100


Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.333
retrieving revision 2.334
diff -u -d -r2.333 -r2.334
--- intern.h	14 Feb 2005 07:15:16 -0000	2.333
+++ intern.h	14 Feb 2005 08:58:02 -0000	2.334
@@ -930,6 +930,7 @@
 	void o100_actorOps();
 	void o100_arrayOps();
 	void o100_dim2dimArray();
+	void o100_redim2dimArray();
 	void o100_dimArray();
 	void o100_drawObject();
 	void o100_unknown28();

Index: script_v100he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v100he.cpp,v
retrieving revision 2.45
retrieving revision 2.46
diff -u -d -r2.45 -r2.46
--- script_v100he.cpp	14 Feb 2005 07:15:16 -0000	2.45
+++ script_v100he.cpp	14 Feb 2005 08:58:02 -0000	2.46
@@ -132,7 +132,7 @@
 		OPCODE(o100_dim2dim2Array),
 		/* 48 */
 		OPCODE(o6_setObjectName),
-		OPCODE(o6_invalid),
+		OPCODE(o100_redim2dimArray),
 		OPCODE(o6_not),
 		OPCODE(o6_invalid),
 		/* 4C */
@@ -1097,6 +1097,7 @@
 		pop();
 		pop();
 		_wizParams.compType = pop();
+		break;
 	case 64:
 		_wizParams.processFlags |= 0x800;
 		_wizParams.processMode = 4;
@@ -1246,6 +1247,31 @@
 	defineArray(fetchScriptWord(), data, dim2start, dim2end, dim1start, dim1end);
 }
 
+void ScummEngine_v100he::o100_redim2dimArray() {
+	int a, b, c, d;
+	d = pop();
+	c = pop();
+	b = pop();
+	a = pop();
+
+	byte subOp = fetchScriptByte();
+
+	printf("o100_redim2dimArray: a %d b %d c %d d %d\n", a, b, c, d);
+	switch (subOp) {
+	case 42:
+		redimArray(fetchScriptWord(), a, b, c, d, kIntArray);
+		break;
+	case 43:
+		redimArray(fetchScriptWord(), a, b, c, d, kDwordArray);
+		break;
+	case 45:
+		redimArray(fetchScriptWord(), a, b, c, d, kByteArray);
+		break;
+	default:
+		error("o100_redim2dimArray: default type %d", subOp);
+	}
+}
+
 void ScummEngine_v100he::o100_paletteOps() {
 	byte subOp = fetchScriptByte();
 	switch (subOp) {
@@ -1286,7 +1312,7 @@
 	default:
 		error("o100_paletteOps: Unknown case %d", subOp);
 	}
-	debug(0,"o100_paletteOps stub (%d)", subOp);
+	debug(1,"o100_paletteOps stub (%d)", subOp);
 }
 
 void ScummEngine_v100he::o100_redimArray() {





More information about the Scummvm-git-logs mailing list