[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.6,2.7 script_v6.cpp,1.12,1.13 script_v8.cpp,2.6,2.7

Max Horn fingolfin at users.sourceforge.net
Mon Dec 23 04:51:02 CET 2002


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

Modified Files:
	intern.h script_v6.cpp script_v8.cpp 
Log Message:
resolved some arguments with aquadran about how to go on about this :-). Renamed three v6 opcodes

Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.6
retrieving revision 2.7
diff -u -d -r2.6 -r2.7
--- intern.h	23 Dec 2002 09:45:20 -0000	2.6
+++ intern.h	23 Dec 2002 12:50:38 -0000	2.7
@@ -224,6 +224,7 @@
 	void o6_byteArrayIndexedRead();
 	void o6_wordArrayIndexedRead();
 	void o6_dup();
+	void o6_pop();
 	void o6_not();
 	void o6_eq();
 	void o6_neq();
@@ -237,7 +238,6 @@
 	void o6_div();
 	void o6_land();
 	void o6_lor();
-	void o6_kill();
 	void o6_writeByteVar();
 	void o6_writeWordVar();
 	void o6_byteArrayWrite();
@@ -345,8 +345,8 @@
 	void o6_talkEgo();
 	void o6_dim();
 	void o6_dummy();
-	void o6_runVerbCodeQuick();
-	void o6_runScriptQuick();
+	void o6_startObjectQuick();
+	void o6_startScriptQuick();
 	void o6_dim2();
 	void o6_abs();
 	void o6_distObjectObject();
@@ -396,162 +396,22 @@
 	virtual void executeOpcode(int i);
 	virtual const char *getOpcodeDesc(int i);
 
-	virtual uint32 fetchScriptUint32();
-	virtual int fetchScriptInt32();
+	virtual uint fetchScriptWord();
+	virtual int fetchScriptWordSigned();
 
 	/* 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_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_wait();
+	void o8_cursorCommand();
+	void o8_resourceRoutines();
+	void o8_roomOps();
+	void o8_actorSet();
 	void o8_cameraStuff();
-	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();
+	void o8_verbOps();
 };
+
 
 #endif

Index: script_v6.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- script_v6.cpp	23 Dec 2002 00:23:36 -0000	1.12
+++ script_v6.cpp	23 Dec 2002 12:50:38 -0000	1.13
@@ -74,7 +74,7 @@
 		/* 18 */
 		OPCODE(o6_land),
 		OPCODE(o6_lor),
-		OPCODE(o6_kill),
+		OPCODE(o6_pop),
 		OPCODE(o6_invalid),
 		/* 1C */
 		OPCODE(o6_invalid),
@@ -279,8 +279,8 @@
 		/* BC */
 		OPCODE(o6_dim),
 		OPCODE(o6_dummy),
-		OPCODE(o6_runVerbCodeQuick),
-		OPCODE(o6_runScriptQuick),
+		OPCODE(o6_startObjectQuick),
+		OPCODE(o6_startScriptQuick),
 		/* C0 */
 		OPCODE(o6_dim2),
 		OPCODE(o6_invalid),
@@ -616,7 +616,7 @@
 	push(pop() | a);
 }
 
-void Scumm_v6::o6_kill()
+void Scumm_v6::o6_pop()
 {
 	pop();
 }
@@ -2349,7 +2349,7 @@
 	/* nothing */
 }
 
-void Scumm_v6::o6_runVerbCodeQuick()
+void Scumm_v6::o6_startObjectQuick()
 {
 	int16 args[16];
 	int script, entryp;
@@ -2359,7 +2359,7 @@
 	runVerbCode(script, entryp, 0, 1, args);
 }
 
-void Scumm_v6::o6_runScriptQuick()
+void Scumm_v6::o6_startScriptQuick()
 {
 	int16 args[16];
 	int script;

Index: script_v8.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v8.cpp,v
retrieving revision 2.6
retrieving revision 2.7
diff -u -d -r2.6 -r2.7
--- script_v8.cpp	23 Dec 2002 09:45:20 -0000	2.6
+++ script_v8.cpp	23 Dec 2002 12:50:38 -0000	2.7
@@ -33,327 +33,328 @@
 
 void Scumm_v8::setupOpcodes()
 {
+	// TODO: any of the o6_ entries are potentially wrong and pure guesses :-)
 	static const OpcodeEntryV8 opcodes[256] = {
 		/* 00 */
-		OPCODE(o8_invalid),
-		OPCODE(o8_pushNumber),
-		OPCODE(o8_pushVariable),
-		OPCODE(o8_pushArrayValue),
+		OPCODE(o8_unknown),
[...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