[Scummvm-cvs-logs] SF.net SVN: scummvm:[49410] tools/branches/gsoc2010-decompiler/decompiler/ scummv6/disassembler.cpp

pidgeot at users.sourceforge.net pidgeot at users.sourceforge.net
Thu Jun 3 16:45:14 CEST 2010


Revision: 49410
          http://scummvm.svn.sourceforge.net/scummvm/?rev=49410&view=rev
Author:   pidgeot
Date:     2010-06-03 14:45:13 +0000 (Thu, 03 Jun 2010)

Log Message:
-----------
Add more opcodes to SCUMM disassembler

Modified Paths:
--------------
    tools/branches/gsoc2010-decompiler/decompiler/scummv6/disassembler.cpp

Modified: tools/branches/gsoc2010-decompiler/decompiler/scummv6/disassembler.cpp
===================================================================
--- tools/branches/gsoc2010-decompiler/decompiler/scummv6/disassembler.cpp	2010-06-03 10:46:55 UTC (rev 49409)
+++ tools/branches/gsoc2010-decompiler/decompiler/scummv6/disassembler.cpp	2010-06-03 14:45:13 UTC (rev 49410)
@@ -105,7 +105,7 @@
 		OPCODE(0x68, "beginCutscene", kSpecial, 0, ""); //Variable stack arguments
 		OPCODE(0x69, "stopMusic", kSpecial, 0, "");
 		OPCODE(0x6A, "freezeUnfreeze", kSpecial, -1, "");
-		START_SUBOPCODE(0x6B);
+		START_SUBOPCODE(0x6B); //cursorCommand
 			OPCODE(0x90, "cursorCmd_CursorOn", kSpecial, 0, "");
 			OPCODE(0x91, "cursorCmd_CursorOff", kSpecial, 0, "");
 			OPCODE(0x92, "cursorCmd_UserputOn", kSpecial, 0, "");
@@ -122,6 +122,152 @@
 		END_SUBOPCODE;
 		OPCODE(0x6C, "breakHere", kSpecial, 0, "");
 		OPCODE(0x6D, "ifClassOfIs", kSpecial, 0, ""); //Variable stack arguments
+		OPCODE(0x6E, "setClass", kSpecial, 0, ""); //Variable stack arguments
+		OPCODE(0x6F, "getState", kSpecial, 0, "");
+		OPCODE(0x70, "setState", kSpecial, -2, "");
+		OPCODE(0x71, "setOwner", kSpecial, -2, "");
+		OPCODE(0x72, "getOwner", kSpecial, 0, "");
+		OPCODE(0x73, "jump", kJump, 0, "w");
+		OPCODE(0x74, "startSound", kSpecial, -1, "");
+		OPCODE(0x75, "stopSound", kSpecial, -1, "");
+		OPCODE(0x76, "startMusic", kSpecial, -1, "");
+		OPCODE(0x77, "stopObjectScript", kSpecial, -1, "");
+		OPCODE(0x78, "panCameraTo", kSpecial, -1, "");
+		OPCODE(0x79, "actorFollowCamera", kSpecial, -1, "");
+		OPCODE(0x7A, "setCameraAt", kSpecial, -1, "");
+		OPCODE(0x7B, "loadRoom", kSpecial, -1, "");
+		OPCODE(0x7C, "stopScript", kSpecial, -1, "");
+		OPCODE(0x7D, "walkActorToObj", kSpecial, -3, "");
+		OPCODE(0x7E, "walkActorTo", kSpecial, -3, "");
+		OPCODE(0x7F, "putActorAtXY", kSpecial, -4, "");
+		OPCODE(0x80, "putActorAtObject", kSpecial, -2, "");
+		OPCODE(0x81, "faceActor", kSpecial, -2, "");
+		OPCODE(0x82, "animateActor", kSpecial, -2, "");
+		OPCODE(0x83, "doSentence", kSpecial, -4, "");
+		OPCODE(0x84, "pickupObject", kSpecial, -1, "");
+		OPCODE(0x85, "loadRoomWithEgo", kSpecial, -3, "");
+		OPCODE(0x87, "getRandomNumber", kSpecial, 0, "");
+		OPCODE(0x88, "getRandomNumberRange", kSpecial, -1, "");
+		OPCODE(0x8A, "getActorMoving", kSpecial, 0, "");
+		OPCODE(0x8B, "isScriptRunning", kSpecial, 0, "");
+		OPCODE(0x8C, "getActorRoom", kSpecial, 0, "");
+		OPCODE(0x8D, "getObjectX", kSpecial, 0, "");
+		OPCODE(0x8E, "getObjectY", kSpecial, 0, "");
+		OPCODE(0x8F, "getObjectDir", kSpecial, 0, "");
+		OPCODE(0x90, "getActorWalkBox", kSpecial, 0, "");
+		OPCODE(0x91, "getActorCostume", kSpecial, 0, "");
+		OPCODE(0x92, "findInventory", kSpecial, -1, "");
+		OPCODE(0x93, "getInventoryCount", kSpecial, 0, "");
+		OPCODE(0x94, "getVerbFromXY", kSpecial, -1, "");
+		OPCODE(0x95, "beginOverride", kSpecial, 0, "");
+		OPCODE(0x96, "endOverride", kSpecial, 0, "");
+		OPCODE(0x97, "setObjectName", kSpecial, -1, "c");
+		OPCODE(0x98, "isSoundRunning", kSpecial, 0, "");
+		OPCODE(0x99, "setBoxFlags", kSpecial, 0, ""); //Variable stack arguments
+		OPCODE(0x9A, "createBoxMatrix", kSpecial, 0, "");
+		START_SUBOPCODE(0x9B); //resourceRoutines
+			OPCODE(0x64, "resRoutine_loadScript", kSpecial, -1, "");
+			OPCODE(0x65, "resRoutine_loadSound", kSpecial, -1, "");
+			OPCODE(0x66, "resRoutine_loadCostume", kSpecial, -1, "");
+			OPCODE(0x67, "resRoutine_loadRoom", kSpecial, -1, "");
+			OPCODE(0x68, "resRoutine_nukeScript", kSpecial, -1, "");
+			OPCODE(0x69, "resRoutine_nukeSound", kSpecial, -1, "");
+			OPCODE(0x6A, "resRoutine_nukeCostume", kSpecial, -1, "");
+			OPCODE(0x6B, "resRoutine_nukeRoom", kSpecial, -1, "");
+			OPCODE(0x6C, "resRoutine_lockScript", kSpecial, -1, "");
+			OPCODE(0x6D, "resRoutine_lockSound", kSpecial, -1, "");
+			OPCODE(0x6E, "resRoutine_lockCostume", kSpecial, -1, "");
+			OPCODE(0x6F, "resRoutine_lockRoom", kSpecial, -1, "");
+			OPCODE(0x70, "resRoutine_unlockScript", kSpecial, -1, "");
+			OPCODE(0x71, "resRoutine_unlockSound", kSpecial, -1, "");
+			OPCODE(0x72, "resRoutine_unlockCostume", kSpecial, -1, "");
+			OPCODE(0x73, "resRoutine_unlockRoom", kSpecial, -1, "");
+			OPCODE(0x75, "resRoutine_loadCharset", kSpecial, -1, "");
+			OPCODE(0x76, "resRoutine_nukeCharset", kSpecial, -1, "");
+			OPCODE(0x77, "resRoutine_loadFlObject", kSpecial, -1, "");
+		END_SUBOPCODE;
+		START_SUBOPCODE(0x9C); //roomOps
+			OPCODE(0xAC, "roomOp_roomScroll", kSpecial, -2, "");
+			OPCODE(0xAE, "roomOp_setScreen", kSpecial, -2, "");
+			OPCODE(0xAF, "roomOp_setPalColor", kSpecial, -4, "");
+			OPCODE(0xB0, "roomOp_shakeOn", kSpecial, 0, "");
+			OPCODE(0xB1, "roomOp_shakeOff", kSpecial, 0, "");
+			OPCODE(0xB3, "roomOp_darkenPalette", kSpecial, -3, "");
+			OPCODE(0xB4, "roomOp_saveLoadRoom", kSpecial, -2, "");
+			OPCODE(0xB5, "roomOp_screenEffect", kSpecial, -1, "");
+			OPCODE(0xB6, "roomOp_darkenPaletteRGB", kSpecial, -5, "");
+			OPCODE(0xB7, "roomOp_setupShadowPalette", kSpecial, -5, "");
+			OPCODE(0xBA, "roomOp_palManipulate", kSpecial, -4, "");
+			OPCODE(0xBB, "roomOp_colorCycleDelay", kSpecial, -2, "");
+			OPCODE(0xD5, "roomOp_setPalette", kSpecial, -1, "");
+			OPCODE(0xDC, "roomOp_copyPalColor", kSpecial, -2, "");
+		END_SUBOPCODE;
+		START_SUBOPCODE(0x9D); //actorOps
+			OPCODE(0x4C, "actorOp_setCostume", kSpecial, -1, "");
+			OPCODE(0x4D, "actorOp_setWalkSpeed", kSpecial, -2, "");
+			OPCODE(0x4E, "actorOp_setSound", kSpecial, 0, ""); //Variable stack arguments
+			OPCODE(0x4F, "actorOp_setWalkFrame", kSpecial, -1, "");
+			OPCODE(0x50, "actorOp_setTalkFrame", kSpecial, -2, "");
+			OPCODE(0x51, "actorOp_setStandFrame", kSpecial, -1, "");
+			OPCODE(0x52, "actorOp_82?", kSpecial, -3, "");
+			OPCODE(0x53, "actorOp_init", kSpecial, 0, "");
+			OPCODE(0x54, "actorOp_setElevation", kSpecial, -1, "");
+			OPCODE(0x55, "actorOp_setDefAnim", kSpecial, 0, "");
+			OPCODE(0x56, "actorOp_setPalette", kSpecial, -2, "");
+			OPCODE(0x57, "actorOp_setTalkColor", kSpecial, -1, "");
+			OPCODE(0x58, "actorOp_setName", kSpecial, 0, "c");
+			OPCODE(0x59, "actorOp_setInitFrame", kSpecial, -1, "");
+			OPCODE(0x5B, "actorOp_setWidth", kSpecial, -1, "");
+			OPCODE(0x5C, "actorOp_setScale", kSpecial, -1, "");
+			OPCODE(0x5D, "actorOp_setNeverZClip", kSpecial, 0, "");
+			OPCODE(0x5E, "actorOp_setAlwaysZClip", kSpecial, -1, "");
+			OPCODE(0x5F, "actorOp_setIgnoreBoxes", kSpecial, 0, "");
+			OPCODE(0x60, "actorOp_setFollowBoxes", kSpecial, 0, "");
+			OPCODE(0x61, "actorOp_setAnimSpeed", kSpecial, -1, "");
+			OPCODE(0x62, "actorOp_setShadowMode", kSpecial, -1, "");
+			OPCODE(0x63, "actorOp_setTalkPos", kSpecial, -2, "");
+			OPCODE(0xC5, "actorOp_setCurActor", kSpecial, -1, "");
+			OPCODE(0xC6, "actorOp_setAnimVar", kSpecial, -2, "");
+			OPCODE(0xD7, "actorOp_setIgnoreTurnsOn", kSpecial, 0, "");
+			OPCODE(0xD8, "actorOp_setIgnoreTurnsOff", kSpecial, 0, "");
+			OPCODE(0xD9, "actorOp_initLittle", kSpecial, 0, "");
+			OPCODE(0xE1, "actorOp_setAlwaysZClip?", kSpecial, -1, "");
+			OPCODE(0xE3, "actorOp_setLayer", kSpecial, -1, "");
+			OPCODE(0xE4, "actorOp_setWalkScript", kSpecial, -1, "");
+			OPCODE(0xE5, "actorOp_setStanding", kSpecial, 0, "");
+			OPCODE(0xE6, "actorOp_setDirection", kSpecial, -1, "");
+			OPCODE(0xE7, "actorOp_turnToDirection", kSpecial, -1, "");
+			OPCODE(0xE9, "actorOp_freeze", kSpecial, 0, "");
+			OPCODE(0xEA, "actorOp_unfreeze", kSpecial, 0, "");
+			OPCODE(0xEB, "actorOp_setTalkScript", kSpecial, -1, "");
+		END_SUBOPCODE;
+		START_SUBOPCODE(0x9E); //verbOps
+			OPCODE(0x7C, "verbOp_loadImg", kSpecial, -1, "");
+			OPCODE(0x7D, "verbOp_loadString", kSpecial, 0, "c");
+			OPCODE(0x7E, "verbOp_setColor", kSpecial, -1, "");
+			OPCODE(0x7F, "verbOp_setHiColor", kSpecial, -1, "");
+			OPCODE(0x80, "verbOp_setXY", kSpecial, -2, "");
+			OPCODE(0x81, "verbOp_setOn", kSpecial, 0, "");
+			OPCODE(0x82, "verbOp_setOff", kSpecial, 0, "");
+			OPCODE(0x83, "verbOp_kill", kSpecial, 0, "");
+			OPCODE(0x84, "verbOp_init", kSpecial, 0, "");
+			OPCODE(0x85, "verbOp_setDimColor", kSpecial, -1, "");
+			OPCODE(0x86, "verbOp_setDimmed", kSpecial, 0, "");
+			OPCODE(0x87, "verbOp_setKey", kSpecial, -1, "");
+			OPCODE(0x88, "verbOp_setCenter", kSpecial, 0, "");
+			OPCODE(0x89, "verbOp_setToString", kSpecial, -1, "");
+			OPCODE(0x8B, "verbOp_setToObject", kSpecial, -2, "");
+			OPCODE(0x8C, "verbOp_setBkColor", kSpecial, -1, "");
+			OPCODE(0xC4, "verbOp_setCurVerb", kSpecial, -1, "");
+			OPCODE(0xFF, "verbOp_redraw", kSpecial, 0, "");
+		END_SUBOPCODE;
+		OPCODE(0x9F, "getActorFromXY", kSpecial, -1, "");
+		OPCODE(0xA0, "findObject", kSpecial, -1, "");
+		OPCODE(0xA1, "pseudoRoom", kSpecial, 0, ""); //Variable stack arguments
+		OPCODE(0xA2, "getActorElevation", kSpecial, 0, "");
+		OPCODE(0xA3, "getVerbEntrypoint", kSpecial, -1, "");
+		START_SUBOPCODE(0xA4); //arrayOps
+		END_SUBOPCODE;
 	END_OPCODES;
 
 	return _insts;


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