[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.4,2.5 script_v8.cpp,2.4,2.5

Pawel Kolodziejski aquadran at users.sourceforge.net
Mon Dec 23 01:16:01 CET 2002


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv19880

Modified Files:
	intern.h script_v8.cpp 
Log Message:
updated list opcode script v8

Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.4
retrieving revision 2.5
diff -u -d -r2.4 -r2.5
--- intern.h	23 Dec 2002 00:23:36 -0000	2.4
+++ intern.h	23 Dec 2002 09:14:58 -0000	2.5
@@ -396,23 +396,162 @@
 	virtual void executeOpcode(int i);
 	virtual const char *getOpcodeDesc(int i);
 
-	virtual uint fetchScriptWord();
-	virtual int fetchScriptWordSigned();
+	virtual uint32 fetchScriptDword();
+	virtual int fetchScriptDwordSigned();
 
 	/* Version 8 script opcodes */
 	void o8_unknown();
 	void o8_invalid();
 
+	void o8_pushNumber();
+	void o8_pushVariable();
+	void o8_pushArrayValue();
+	void o8_pushArrayValueIndexed();
+	void o8_dup();
 	void o8_pop();
+	void o8_not();
+	void o8_eq();
+	void o8_neq();
+	void o8_gt();
+	void o8_lt();
+	void o8_leq();
+	void o8_geq();
+	void o8_add();
+	void o8_sub();
+	void o8_mul();
+	void o8_div();
+	void o8_land();
+	void o8_lor();
+	void o8_band();
+	void o8_bor();
 	void o8_mod();
-	void o8_wait();
-	void o8_cursorCommand();
-	void o8_resourceRoutines();
-	void o8_roomOps();
-	void o8_actorSet();
+	void o8_if();
+	void o8_ifNot();
+	void o8_jump();
+	void o8_breakHere();
+	void o8_breakHereVar();
+	void o8_waitForStuff();
+	void o8_sleepJiffies();
+	void o8_sleepSeconds();
+	void o8_sleepMinutes();
+	void o8_storeVariable();
+	void o8_incVariable();
+	void o8_decVariable();
+	void o8_arrayDim();
+	void o8_storeArray();
+	void o8_incArray();
+	void o8_decArray();
+	void o8_arrayDim2();
+	void o8_storeArrayIndexed();
+	void o8_assignArray();
+	void o8_arrayShuffle();
+	void o8_arrayLocalize();
+	void o8_startScript();
+	void o8_startScriptQuick();
+	void o8_endScript();
+	void o8_stopScript();
+	void o8_chainScript();
+	void o8_return();
+	void o8_startObject();
+	void o8_stopObject();
+	void o8_cutscene();
+	void o8_endCutscene();
+	void o8_freezeScripts();
+	void o8_beginOverride();
+	void o8_endOverride();
+	void o8_stopSentence();
+	void o8_debug();
+	void o8_debugWin();
+	void o8_cameraPanTo();
+	void o8_cameraFollow();
+	void o8_cameraAt();
+	void o8_sayLine();
+	void o8_sayLineDefault();
+	void o8_sayLineSimple();
+	void o8_sayLineSimpleDefault();
+	void o8_printLine();
+	void o8_printCursor();
+	void o8_printDebug();
+	void o8_printSystem();
+	void o8_blastText();
+	void o8_drawObject();
+	void o8_blastObject();
+	void o8_userFace();
+	void o8_currentRoom();
+	void o8_comeOutDoor();
+	void o8_walkActorToObject();
+	void o8_walkActorToXY();
+	void o8_putActorAtXY();
+	void o8_putActorAtObject();
+	void o8_faceTowards();
+	void o8_doAnimation();
+	void o8_doSentence();
+	void o8_pickUpObject();
+	void o8_setBox();
+	void o8_setBoxPath();
+	void o8_setBoxSet();
+	void o8_heapStuff();
+	void o8_roomStuff();
+	void o8_actorStuff();
 	void o8_cameraStuff();
-	void o8_verbOps();
+	void o8_verbStuff();
+	void o8_startSfx();
+	void o8_startMusic();
+	void o8_stopSound();
+	void o8_soundKludge();
+	void o8_system();
+	void o8_verbSets();
+	void o8_newNameOf();
+	void o8_getTimeDate();
+	void o8_drawBox();
+	void o8_actObjStamp();
+	void o8_startVideo();
+	void o8_kludge();
+	void o8_pick();
+	void o8_pickDefault();
+	void o8_pickRandom();
+	void o8_inSet();
+	void o8_getRandomNumber();
+	void o8_getRandomNumberRange();
+	void o8_classOf();
+	void o8_stateOf();
+	void o8_ownerOf();
+	void o8_scriptRunning();
+	void o8_objectRunning();
+	void o8_soundRunning();
+	void o8_abs();
+	void o8_pixel();
+	void o8_inBox();
+	void o8_validVerb();
+	void o8_findActor();
+	void o8_findObject();
+	void o8_findVerb();
+	void o8_findAllObjects();
+	void o8_actorInvertory();
+	void o8_actorInvertoryCount();
+	void o8_actorVariable();
+	void o8_actorRoom();
+	void o8_actorBox();
+	void o8_actorMoving();
+	void o8_actorCostume();
+	void o8_actorScale();
+	void o8_actorDepth();
+	void o8_actorElevation();
+	void o8_actorWidth();
+	void o8_actObjFacing();
+	void o8_actObjX();
+	void o8_actObjY();
+	void o8_actorChore();
+	void o8_proximity2ActObjs();
+	void o8_proximity2Points();
+	void o8_objectImageX();
+	void o8_objectImageY();
+	void o8_objectImageWidth();
+	void o8_objectImageHeight();
+	void o8_verbX();
+	void o8_verbY();
+	void o8_stringWidth();
+	void o8_actorZPlane();
 };
-
 
 #endif

Index: script_v8.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v8.cpp,v
retrieving revision 2.4
retrieving revision 2.5
diff -u -d -r2.4 -r2.5
--- script_v8.cpp	23 Dec 2002 00:23:36 -0000	2.4
+++ script_v8.cpp	23 Dec 2002 09:14:58 -0000	2.5
@@ -33,328 +33,327 @@
 
 void Scumm_v8::setupOpcodes()
 {
-	// TODO: any of the o6_ entries are potentially wrong and pure guesses :-)
 	static const OpcodeEntryV8 opcodes[256] = {
 		/* 00 */
-		OPCODE(o8_unknown),
-		OPCODE(o6_pushWord),
-		OPCODE(o6_pushWordVar),
-		OPCODE(o6_wordArrayRead),
+		OPCODE(o8_invalid),
[...1496 lines suppressed...]
-0EF F_PROXIMITY_2POINTS Get distance between 2 points
-0F0 F_OBJECT_IMAGE_X Get X position of object image
-0F1 F_OBJECT_IMAGE_Y Get Y position of object image
-0F2 F_OBJECT_IMAGE_WIDTH Get width of object image
-0F3 F_OBJECT_IMAGE_HEIGHT Get height of object image
-0F4 F_VERB_X Get X position of verb
-0F5 F_VERB_Y Get Y position of verb
-0F6 F_STRING_WIDTH
-0F7 F_ACTOR_ZPLANE
-0F8 O_248
-0F9 O_249
-0FA O_250
-0FB O_251
-0FC O_252
-0FD O_253
-0FE O_254
-0FF O_255
 
 The following are subopcodes - just strip the leading 1
 





More information about the Scummvm-git-logs mailing list