[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