[Scummvm-cvs-logs] SF.net SVN: scummvm:[44332] tools/trunk/descumm.cpp

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Fri Sep 25 11:07:49 CEST 2009


Revision: 44332
          http://scummvm.svn.sourceforge.net/scummvm/?rev=44332&view=rev
Author:   fingolfin
Date:     2009-09-25 09:07:48 +0000 (Fri, 25 Sep 2009)

Log Message:
-----------
Patch #2865629: descumm: fix inconsistent semicolons

Modified Paths:
--------------
    tools/trunk/descumm.cpp

Modified: tools/trunk/descumm.cpp
===================================================================
--- tools/trunk/descumm.cpp	2009-09-25 08:13:39 UTC (rev 44331)
+++ tools/trunk/descumm.cpp	2009-09-25 09:07:48 UTC (rev 44332)
@@ -93,6 +93,7 @@
 #define ANOFIRSTPAREN (1<<29)
 #define ASTARTCOMMA (1<<28)
 #define AVARSTORE (1<<27)
+#define ANOENDSEMICOLON (1<<26)
 
 
 
@@ -662,8 +663,13 @@
 		char tmp[256];
 		strcpy(tmp, buforg);
 		emit_if(buforg, tmp);
-	} else if (!(args & ANOLASTPAREN)) {
-		buf = strecpy(buf, ")");
+	} else {
+		if (!(args & ANOLASTPAREN)) {
+			buf = strecpy(buf, ")");
+		}
+		if (!(args & ANOENDSEMICOLON) && buf[(strlen(buf) - 1)] != ';') {
+			buf = strecpy(buf, ";");
+		}
 	}
 
 	return strchr(buf, 0);
@@ -710,7 +716,7 @@
 				buf += sprintf(buf, "Color(%d, %s)", get_byte(), arg);
 			break;
 		case 3:
-			buf = do_tok(buf, "Name", A1ASCII);
+			buf = do_tok(buf, "Name", A1ASCII | ANOENDSEMICOLON);
 			break;
 		case 4:
 			buf += sprintf(buf, "Costume(%s)", arg);
@@ -730,7 +736,7 @@
 
 	char first = 1;
 
-	buf = do_tok(buf, "ActorOps", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN);
+	buf = do_tok(buf, "ActorOps", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN | ANOENDSEMICOLON);
 
 	buf = strecpy(buf, ",[");
 
@@ -748,81 +754,81 @@
 
 		switch (opcode & 0x1F) {
 		case 0x00:
-			buf = do_tok(buf, "Unknown", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "Unknown", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x01:
-			buf = do_tok(buf, "Costume", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "Costume", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x02:
-			buf = do_tok(buf, "WalkSpeed", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+			buf = do_tok(buf, "WalkSpeed", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 			break;
 		case 0x03:
-			buf = do_tok(buf, "Sound", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "Sound", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x04:
-			buf = do_tok(buf, "WalkAnimNr", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "WalkAnimNr", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x05:
 			buf =
-				do_tok(buf, "TalkAnimNr", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+				do_tok(buf, "TalkAnimNr", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 			break;
 		case 0x06:
-			buf = do_tok(buf, "StandAnimNr", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "StandAnimNr", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x07:
 			buf =
 				do_tok(buf, "Nothing",
 							 ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) |
-							 ((opcode & 0x20) ? A3V : A3B));
+							 ((opcode & 0x20) ? A3V : A3B) | ANOENDSEMICOLON);
 			break;
 		case 0x08:
-			buf = do_tok(buf, "Init", 0);
+			buf = do_tok(buf, "Init", ANOENDSEMICOLON);
 			break;
 		case 0x09:
-			buf = do_tok(buf, "Elevation", ((opcode & 0x80) ? A1V : A1W));
+			buf = do_tok(buf, "Elevation", ((opcode & 0x80) ? A1V : A1W) | ANOENDSEMICOLON);
 			break;
 		case 0x0A:
-			buf = do_tok(buf, "DefaultAnims", 0);
+			buf = do_tok(buf, "DefaultAnims", ANOENDSEMICOLON);
 			break;
 		case 0x0B:
-			buf = do_tok(buf, "Palette", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+			buf = do_tok(buf, "Palette", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 			break;
 		case 0x0C:
-			buf = do_tok(buf, "TalkColor", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "TalkColor", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x0D:
-			buf = do_tok(buf, "Name", A1ASCII);
+			buf = do_tok(buf, "Name", A1ASCII | ANOENDSEMICOLON);
 			break;
 		case 0x0E:
-			buf = do_tok(buf, "InitAnimNr", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "InitAnimNr", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 //    		case 0x0F: buf=do_tok(buf, "PaletteList", A1LIST); break;
 		case 0x10:
-			buf = do_tok(buf, "Width", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "Width", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x11:
 			if (g_options.scriptVersion == 5)
-				buf = do_tok(buf, "Scale", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+				buf = do_tok(buf, "Scale", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 			else
-				buf = do_tok(buf, "Scale", ((opcode & 0x80) ? A1V : A1B));
+				buf = do_tok(buf, "Scale", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x12:
-			buf = do_tok(buf, "NeverZClip", 0);
+			buf = do_tok(buf, "NeverZClip", ANOENDSEMICOLON);
 			break;
 		case 0x13:
-			buf = do_tok(buf, "SetZClip", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "SetZClip", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x14:
-			buf = do_tok(buf, "IgnoreBoxes", 0);
+			buf = do_tok(buf, "IgnoreBoxes", ANOENDSEMICOLON);
 			break;
 		case 0x15:
-			buf = do_tok(buf, "FollowBoxes", 0);
+			buf = do_tok(buf, "FollowBoxes", ANOENDSEMICOLON);
 			break;
 		case 0x16:
-			buf = do_tok(buf, "AnimSpeed", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "AnimSpeed", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x17:
-			buf=do_tok(buf, "ShadowMode", ((opcode & 0x80) ? A1V : A1B));
+			buf=do_tok(buf, "ShadowMode", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		default:
 			buf += sprintf(buf, "Unknown%.2X()", opcode);
@@ -1075,7 +1081,7 @@
 			buf = strecpy(buf, ",IG");
 	} while (1);
 
-	strcpy(buf, ")");
+	strcpy(buf, ");");
 }
 
 void do_room_ops(char *buf) {
@@ -1085,82 +1091,82 @@
 
 	switch (opcode & 0x1F) {
 	case 0x01:
-		do_tok(buf, "RoomScroll", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+		do_tok(buf, "RoomScroll", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 		break;
 	case 0x02:
-		do_tok(buf, "RoomColor", 0);
+		do_tok(buf, "RoomColor", ANOENDSEMICOLON);
 		break;
 	case 0x03:
-		do_tok(buf, "SetScreen", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+		do_tok(buf, "SetScreen", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 		break;
 	case 0x04:
 		buf =
 			do_tok(buf, "SetPalColor",
 						 ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) |
-						 ((opcode & 0x20) ? A3V : A3W) | ANOLASTPAREN);
+						 ((opcode & 0x20) ? A3V : A3W) | ANOLASTPAREN | ANOENDSEMICOLON);
 		opcode = get_byte();
-		buf = do_tok(buf, NULL, ASTARTCOMMA | ANOFIRSTPAREN | ((opcode & 0x80) ? A1V : A1B));
+		buf = do_tok(buf, NULL, ASTARTCOMMA | ANOFIRSTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1B));
 		break;
 	case 0x05:
-		do_tok(buf, "ShakeOn", 0);
+		do_tok(buf, "ShakeOn", ANOENDSEMICOLON);
 		break;
 	case 0x06:
-		do_tok(buf, "ShakeOff", 0);
+		do_tok(buf, "ShakeOff", ANOENDSEMICOLON);
 		break;
 	case 0x07:
-		do_tok(buf, "Unused", 0);
+		do_tok(buf, "Unused", ANOENDSEMICOLON);
 		break;
 	case 0x08:
 		buf =
 			do_tok(buf, "RoomIntensity",
 						 ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) |
-						 ((opcode & 0x20) ? A3V : A3B));
+						 ((opcode & 0x20) ? A3V : A3B) | ANOENDSEMICOLON);
 		break;
 	case 0x09:
-		buf = do_tok(buf, "saveLoad", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+		buf = do_tok(buf, "saveLoad", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 		break;
 	case 0x0A:
-		buf = do_tok(buf, "screenEffect", ((opcode & 0x80) ? A1V : A1W));
+		buf = do_tok(buf, "screenEffect", ((opcode & 0x80) ? A1V : A1W) | ANOENDSEMICOLON);
 		break;
 	case 0x0B:
 		buf =
 			do_tok(buf, "setRGBRoomIntensity",
-						 ANOLASTPAREN | ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ?
+						 ANOLASTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ?
 																														 A2V : A2W) |
 						 ((opcode & 0x20) ? A3V : A3W));
 		opcode = get_byte();
 		buf =
 			do_tok(buf, NULL,
-						 ASTARTCOMMA | ANOFIRSTPAREN | ((opcode & 0x80) ? A1V : A1B) |
+						 ASTARTCOMMA | ANOFIRSTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1B) |
 						 ((opcode & 0x40) ? A2V : A2B));
 		break;
 
 	case 0x0C:
 		buf =
 			do_tok(buf, "setRoomShadow",
-						 ANOLASTPAREN | ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ?
+						 ANOLASTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ?
 																														 A2V : A2W) |
 						 ((opcode & 0x20) ? A3V : A3W));
 		opcode = get_byte();
 		buf =
 			do_tok(buf, NULL,
-						 ASTARTCOMMA | ANOFIRSTPAREN | ((opcode & 0x80) ? A1V : A1B) |
+						 ASTARTCOMMA | ANOFIRSTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1B) |
 						 ((opcode & 0x40) ? A2V : A2B));
 		break;
 
 	case 0x0D:
-		do_tok(buf, "saveString", ((opcode & 0x80) ? A1V : A1B) | A2ASCII);
+		do_tok(buf, "saveString", ((opcode & 0x80) ? A1V : A1B) | A2ASCII | ANOENDSEMICOLON);
 		break;
 	case 0x0E:
-		do_tok(buf, "loadString", ((opcode & 0x80) ? A1V : A1B) | A2ASCII);
+		do_tok(buf, "loadString", ((opcode & 0x80) ? A1V : A1B) | A2ASCII | ANOENDSEMICOLON);
 		break;
 
 	case 0x0F:
-		buf = do_tok(buf, "palManipulate", ANOLASTPAREN | ((opcode & 0x80) ? A1V : A1B));
+		buf = do_tok(buf, "palManipulate", ANOLASTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1B));
 		opcode = get_byte();
 		buf =
 			do_tok(buf, NULL,
-						 ASTARTCOMMA | ANOFIRSTPAREN | ANOLASTPAREN | ((opcode & 0x80) ?
+						 ASTARTCOMMA | ANOFIRSTPAREN | ANOLASTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ?
 																													 A1V : A1B) |
 						 ((opcode & 0x40) ? A2V : A2B));
 		opcode = get_byte();
@@ -1168,14 +1174,14 @@
 		break;
 
 	case 0x10:
-		do_tok(buf, "colorCycleDelay", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B));
+		do_tok(buf, "colorCycleDelay", ((opcode & 0x80) ? A1V : A1B) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 		break;
 
 	default:
 		strcpy(buf, "Unknown??");
 	}
 
-	strcat(buf, ")");
+	strcat(buf, ");");
 }
 
 void do_room_ops_old(char *buf, byte opcode) {
@@ -1305,25 +1311,25 @@
 void do_verbops_v2(char *buf, byte opcode) {
 	int subop = get_byte();
 
-	buf = do_tok(buf, "VerbOps", ANOLASTPAREN);
+	buf = do_tok(buf, "VerbOps", ANOLASTPAREN | ANOENDSEMICOLON);
 	switch (subop) {
 		case 0:
-			buf = do_tok(buf, "Delete", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "Delete", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		case 0xFF:
-			buf = do_tok(buf, "State", A1B | A2B);
+			buf = do_tok(buf, "State", A1B | A2B | ANOENDSEMICOLON);
 			break;
 		default:
 			buf += sprintf(buf, "New-%d", subop);
-			buf = do_tok(buf, "", A1B | A2B | ((opcode & 0x80) ? A3V : A3B) | A4B | A5ASCII);
+			buf = do_tok(buf, "", A1B | A2B | ((opcode & 0x80) ? A3V : A3B) | A4B | A5ASCII | ANOENDSEMICOLON);
 	}
-	strecpy(buf, ")");
+	strecpy(buf, ");");
 }
 
 void do_verbops(char *buf, byte opcode) {
 	char first = 1;
 
-	buf = do_tok(buf, "VerbOps", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN);
+	buf = do_tok(buf, "VerbOps", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN | ANOENDSEMICOLON);
 	buf = strecpy(buf, ",[");
 
 	do {
@@ -1335,60 +1341,60 @@
 		first = 0;
 		switch (opcode & 0x1F) {
 		case 0x1:
-			buf = do_tok(buf, "Image", (opcode & 0x80) ? A1V : A1W);
+			buf = do_tok(buf, "Image", (opcode & 0x80) ? A1V : A1W | ANOENDSEMICOLON);
 			break;
 		case 0x2:
-			buf = do_tok(buf, "Text", A1ASCII);
+			buf = do_tok(buf, "Text", A1ASCII | ANOENDSEMICOLON);
 			break;
 		case 0x3:
-			buf = do_tok(buf, "Color", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "Color", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		case 0x4:
-			buf = do_tok(buf, "HiColor", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "HiColor", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		case 0x5:
-			buf = do_tok(buf, "SetXY", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+			buf = do_tok(buf, "SetXY", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 			break;
 		case 0x6:
-			buf = do_tok(buf, "On", 0);
+			buf = do_tok(buf, "On", ANOENDSEMICOLON);
 			break;
 		case 0x7:
-			buf = do_tok(buf, "Off", 0);
+			buf = do_tok(buf, "Off", ANOENDSEMICOLON);
 			break;
 		case 0x8:
-			buf = do_tok(buf, "Delete", 0);
+			buf = do_tok(buf, "Delete", ANOENDSEMICOLON);
 			break;
 		case 0x9:
-			buf = do_tok(buf, "New", 0);
+			buf = do_tok(buf, "New", ANOENDSEMICOLON);
 			break;
 		case 0x10:
-			buf = do_tok(buf, "DimColor", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "DimColor", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		case 0x11:
-			buf = do_tok(buf, "Dim", 0);
+			buf = do_tok(buf, "Dim", ANOENDSEMICOLON);
 			break;
 		case 0x12:
-			buf = do_tok(buf, "Key", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "Key", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		case 0x13:
-			buf = do_tok(buf, "Center", 0);
+			buf = do_tok(buf, "Center", ANOENDSEMICOLON);
 			break;
 		case 0x14:
-			buf = do_tok(buf, "SetToString", (opcode & 0x80) ? A1V : A1W);
+			buf = do_tok(buf, "SetToString", (opcode & 0x80) ? A1V : A1W | ANOENDSEMICOLON);
 			break;
 		case 0x16:
 			buf =
-				do_tok(buf, "SetToObject", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2B));
+				do_tok(buf, "SetToObject", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2B) | ANOENDSEMICOLON);
 			break;
 		case 0x17:
-			buf = do_tok(buf, "BackColor", (opcode & 0x80) ? A1V : A1B);
+			buf = do_tok(buf, "BackColor", (opcode & 0x80) ? A1V : A1B | ANOENDSEMICOLON);
 			break;
 		default:
 			buf += sprintf(buf, "Invalid%.2X()", opcode);
 		}
 
 	} while (1);
-	strecpy(buf, "])");
+	strecpy(buf, "]);");
 }
 
 void do_print_ego(char *buf, byte opcode) {
@@ -1397,7 +1403,7 @@
 	if (opcode == 0xD8) {
 		buf = strecpy(buf, "printEgo([");
 	} else {
-		buf = do_tok(buf, "print", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN);
+		buf = do_tok(buf, "print", ((opcode & 0x80) ? A1V : A1B) | ANOLASTPAREN | ANOENDSEMICOLON);
 		buf = strecpy(buf, ",[");
 	}
 
@@ -1412,31 +1418,31 @@
 
 		switch (opcode & 0x1f) {
 		case 0x0:
-			buf = do_tok(buf, "Pos", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+			buf = do_tok(buf, "Pos", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 			break;
 		case 0x1:
-			buf = do_tok(buf, "Color", ((opcode & 0x80) ? A1V : A1B));
+			buf = do_tok(buf, "Color", ((opcode & 0x80) ? A1V : A1B) | ANOENDSEMICOLON);
 			break;
 		case 0x2:
-			buf = do_tok(buf, "Clipped", ((opcode & 0x80) ? A1V : A1W));
+			buf = do_tok(buf, "Clipped", ((opcode & 0x80) ? A1V : A1W) | ANOENDSEMICOLON);
 			break;
 		case 0x3:
-			buf = do_tok(buf, "RestoreBG", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+			buf = do_tok(buf, "RestoreBG", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 			break;
 		case 0x4:
-			buf = do_tok(buf, "Center", 0);
+			buf = do_tok(buf, "Center", ANOENDSEMICOLON);
 			break;
 		case 0x6:
 			if (g_options.GF_UNBLOCKED)
-				buf = do_tok(buf, "Height", ((opcode & 0x80) ? A1V: A1W));
+				buf = do_tok(buf, "Height", ((opcode & 0x80) ? A1V: A1W) | ANOENDSEMICOLON);
 			else
-				buf = do_tok(buf, "Left", 0);
+				buf = do_tok(buf, "Left", ANOENDSEMICOLON);
 			break;
 		case 0x7:
-			buf = do_tok(buf, "Overhead", 0);
+			buf = do_tok(buf, "Overhead", ANOENDSEMICOLON);
 			break;
 		case 0x8:
-			buf = do_tok(buf, "PlayCDTrack", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W));
+			buf = do_tok(buf, "PlayCDTrack", ((opcode & 0x80) ? A1V : A1W) | ((opcode & 0x40) ? A2V : A2W) | ANOENDSEMICOLON);
 			break;
 		case 0xF:{
 				buf = strecpy(buf, "Text(");
@@ -1778,7 +1784,7 @@
 		do_tok(buf, "createBoxMatrix", 0);
 		break;
 	default:
-		sprintf(buf, "SetBoxUnknown%.2X", opcode);
+		sprintf(buf, "SetBoxUnknown%.2X;", opcode);
 	}
 }
 
@@ -1853,18 +1859,18 @@
 		if (opcode & 0x80) {
 			char tmp[256];
 			get_var(tmp);
-			buf += sprintf(buf, "cursorCommand(Hi(%s), Lo(%s))", tmp, tmp);
+			buf += sprintf(buf, "cursorCommand(Hi(%s), Lo(%s));", tmp, tmp);
 		} else {
 			int val = get_word();
-			buf += sprintf(buf, "cursorCommand(%d, %d)", (val >> 8) & 0xFF, val & 0xFF);
+			buf += sprintf(buf, "cursorCommand(%d, %d);", (val >> 8) & 0xFF, val & 0xFF);
 		}
 
 		break;
 	case 0x40:
-		sprintf(buf, "cutscene");
+		sprintf(buf, "cutscene();");
 		break;
 	case 0xC0:
-		sprintf(buf, "endCutscene");
+		sprintf(buf, "endCutscene();");
 		break;
 
 	case 0x46:
@@ -1879,7 +1885,7 @@
 		d |= get_byte() << 8;
 		d |= get_byte() << 16;
 		d = 0xFFFFFF - d;
-		sprintf(buf, "delay(%d)", d);
+		sprintf(buf, "delay(%d);", d);
 		break;
 	}
 
@@ -1936,7 +1942,7 @@
 	case 0xEB:
 	case 0xEE:
 		//dummy
-		sprintf(buf, "dummy(%.2X)", opcode);
+		sprintf(buf, "dummy(%.2X);", opcode);
 
 		break;
 
@@ -2139,13 +2145,13 @@
 		buf = get_var_or_byte(buf, (opcode & 0x80));
 		buf += sprintf(buf, ",\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 	case 0xD8:
 		//printEgo
 		buf += sprintf(buf, "printEgo(\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 
 	case 0xCC:
@@ -2554,7 +2560,7 @@
 		d |= get_byte() << 8;
 		d |= get_byte() << 16;
 		d = 0xFFFFFF - d;
-		sprintf(buf, "delay(%d)", d);
+		sprintf(buf, "delay(%d);", d);
 		break;
 	}
 
@@ -2571,13 +2577,13 @@
 		buf = get_var_or_byte(buf, (opcode & 0x80));
 		buf += sprintf(buf, ",\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 	case 0x75:
 		//printEgo
 		buf += sprintf(buf, "printEgo(\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 	case 0x2E:
 	case 0xAE:
@@ -2586,13 +2592,13 @@
 		buf = get_var_or_byte(buf, (opcode & 0x80));
 		buf += sprintf(buf, ",\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 	case 0x0D:
 		//printEgo_c64
 		buf += sprintf(buf, "printEgo_c64(\"");
 		do_decodeparsestring_v2(buf, opcode);
-		strcat(buf, "\")");
+		strcat(buf, "\");");
 		break;
 
 	case 0x2D:
@@ -2607,7 +2613,7 @@
 	case 0x6E:
 	case 0xEE:
 		//dummy
-		sprintf(buf, "dummy%.2X()", opcode);
+		sprintf(buf, "dummy%.2X();", opcode);
 		break;
 
 	case 0x86:
@@ -2963,16 +2969,16 @@
 	case 0x85:
 	case 0xC5:
 		if (g_options.scriptVersion == 5) {
-			buf = do_tok(buf, "drawObject", ((opcode & 0x80) ? A1V : A1W) | ANOLASTPAREN);
+			buf = do_tok(buf, "drawObject", ((opcode & 0x80) ? A1V : A1W) | ANOLASTPAREN | ANOENDSEMICOLON);
 			opcode = get_byte();
 			switch (opcode & 0x1F) {
 			case 1:
 				do_tok(buf, ", setXY(",
-							 ANOLASTPAREN | ANOFIRSTPAREN | ((opcode & 0x80) ? A1V : A1W) |
+							 ANOLASTPAREN | ANOFIRSTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1W) |
 							 ((opcode & 0x40) ? A2V : A2W));
 				break;
 			case 2:
-				do_tok(buf, ", setImage(", ANOLASTPAREN | ANOFIRSTPAREN | ((opcode & 0x80) ? A1V : A1W));
+				do_tok(buf, ", setImage(", ANOLASTPAREN | ANOFIRSTPAREN | ANOENDSEMICOLON | ((opcode & 0x80) ? A1V : A1W));
 				break;
 			}
 			strcat(buf, "));");
@@ -3364,7 +3370,7 @@
 			d = get_byte();
 			d |= get_byte() << 8;
 			d |= get_byte() << 16;
-			sprintf(buf, "delay(%d)", d);
+			sprintf(buf, "delay(%d);", d);
 			break;
 		}
 
@@ -3384,9 +3390,9 @@
 			int d;
 			d = get_byte();
 			if (d != 0)
-				sprintf(buf, "beginOverride");
+				sprintf(buf, "beginOverride();");
 			else
-				sprintf(buf, "endOverride");
+				sprintf(buf, "endOverride();");
 			break;
 		}
 
@@ -3604,7 +3610,7 @@
 
 	case 0xA7:
 		if (g_options.scriptVersion == 5) {
-			sprintf(buf, "dummy(%.2X)", opcode);
+			sprintf(buf, "dummy(%.2X);", opcode);
 		} else {
 			int d = get_byte();
 			buf += sprintf(buf, "saveLoadVars(");
@@ -3642,7 +3648,7 @@
 					return;
 				}
 			}
-			buf += sprintf(buf, ")");
+			buf += sprintf(buf, ");");
 		}
 		break;
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list