[Scummvm-cvs-logs] CVS: tools descumm.cpp,1.24,1.25

Max Horn fingolfin at users.sourceforge.net
Thu May 8 18:33:24 CEST 2003


Update of /cvsroot/scummvm/tools
In directory sc8-pr-cvs1:/tmp/cvs-serv32370

Modified Files:
	descumm.cpp 
Log Message:
nicend up getState disassmbly in V2

Index: descumm.cpp
===================================================================
RCS file: /cvsroot/scummvm/tools/descumm.cpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -d -r1.24 -r1.25
--- descumm.cpp	8 May 2003 14:03:17 -0000	1.24
+++ descumm.cpp	8 May 2003 22:59:24 -0000	1.25
@@ -1615,11 +1615,7 @@
 	char var[256];
 	char before[256], after[256];
 	byte neg;
-	int state;
-
-	const char *cmp_texts[2] = {
-		" == ", " != "
-	};
+	int state = 0;
 
 	var[0] = 0;
 	get_var_or_word(var, opcode & 0x80);
@@ -1687,13 +1683,14 @@
 			printf("Unknown IF code %x", opcode);
 			exit(1);
 		}
-		
-		sprintf(tmp2, "%d", state);
 	}
 
 	neg = neg ^ emit_if(before, after) ^ 1;
 
-	sprintf(buf, "%sif (getState(%s)%s%s%s", before, var, cmp_texts[neg], tmp2, after);
+	if (ScriptVersion > 2)
+		sprintf(buf, "%sif (getState(%s)%s%s%s", before, var, neg ? " != " : " == ", tmp2, after);
+	else
+		sprintf(buf, "%sif (%sgetState%02d(%s)%s", before, neg ? "!" : "", state, var, after);
 }
 
 void do_unconditional_jump(char *buf, byte opcode)





More information about the Scummvm-git-logs mailing list