[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.503,2.504 script_v100he.cpp,2.158,2.159 script_v5.cpp,1.285,1.286 script_v6.cpp,1.440,1.441 script_v6he.cpp,2.158,2.159 script_v72he.cpp,2.298,2.299 script_v7he.cpp,2.157,2.158 script_v8.cpp,2.293,2.294 script_v80he.cpp,2.118,2.119 script_v90he.cpp,2.263,2.264
kirben
kirben at users.sourceforge.net
Sat May 28 01:38:31 CEST 2005
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15229/scumm
Modified Files:
intern.h script_v100he.cpp script_v5.cpp script_v6.cpp
script_v6he.cpp script_v72he.cpp script_v7he.cpp script_v8.cpp
script_v80he.cpp script_v90he.cpp
Log Message:
Sync opcode names and add HE72+ version of o_systemOps.
Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.503
retrieving revision 2.504
diff -u -d -r2.503 -r2.504
--- intern.h 26 May 2005 16:39:39 -0000 2.503
+++ intern.h 28 May 2005 08:37:34 -0000 2.504
@@ -161,7 +161,7 @@
void o5_putActor();
void o5_putActorAtObject();
void o5_putActorInRoom();
- void o5_quitPauseRestart();
+ void o5_systemOps();
void o5_resourceRoutines();
void o5_roomOps();
void o5_saveLoadGame();
@@ -671,7 +671,7 @@
void o6_getActorAnimCounter1();
void o6_soundKludge();
void o6_isAnyOf();
- void o6_quitPauseRestart();
+ void o6_systemOps();
void o6_isActorInBox();
void o6_delay();
void o6_delaySeconds();
@@ -839,7 +839,7 @@
void o70_pickupObject();
void o70_getActorRoom();
void o70_resourceRoutines();
- void o70_quitPauseRestart();
+ void o70_systemOps();
void o70_kernelSetFunctions();
void o70_seekFilePos();
void o70_copyString();
@@ -978,6 +978,7 @@
void o72_verbOps();
void o72_findObject();
void o72_arrayOps();
+ void o72_systemOps();
void o72_talkActor();
void o72_talkEgo();
void o72_dimArray();
@@ -1249,7 +1250,7 @@
void o100_startSound();
void o100_setSpriteInfo();
void o100_startScript();
- void o100_quitPauseRestart();
+ void o100_systemOps();
void o100_cursorCommand();
void o100_wait();
void o100_writeFile();
@@ -1363,7 +1364,7 @@
void o8_cameraOps();
void o8_verbOps();
- void o8_system();
+ void o8_systemOps();
void o8_startVideo();
void o8_kernelSetFunctions();
void o8_kernelGetFunctions();
Index: script_v100he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v100he.cpp,v
retrieving revision 2.158
retrieving revision 2.159
diff -u -d -r2.158 -r2.159
--- script_v100he.cpp 23 May 2005 11:50:35 -0000 2.158
+++ script_v100he.cpp 28 May 2005 08:37:36 -0000 2.159
@@ -212,7 +212,7 @@
OPCODE(o6_wordArrayIndexedWrite),
OPCODE(o6_sub),
/* 88 */
- OPCODE(o100_quitPauseRestart),
+ OPCODE(o100_systemOps),
OPCODE(o6_invalid),
OPCODE(o72_setTimer),
OPCODE(o100_cursorCommand),
@@ -2052,7 +2052,7 @@
runScript(script, (flags == 128 || flags == 129), (flags == 130 || flags == 129), args);
}
-void ScummEngine_v100he::o100_quitPauseRestart() {
+void ScummEngine_v100he::o100_systemOps() {
byte subOp = fetchScriptByte();
subOp -= 61;
@@ -2072,7 +2072,7 @@
// Update palette
break;
default:
- error("o100_quitPauseRestart invalid case %d", subOp);
+ error("o100_systemOps invalid case %d", subOp);
}
}
Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.285
retrieving revision 1.286
diff -u -d -r1.285 -r1.286
--- script_v5.cpp 10 May 2005 23:17:33 -0000 1.285
+++ script_v5.cpp 28 May 2005 08:37:36 -0000 1.286
@@ -229,7 +229,7 @@
OPCODE(o5_getRandomNr),
OPCODE(o5_and),
/* 98 */
- OPCODE(o5_quitPauseRestart),
+ OPCODE(o5_systemOps),
OPCODE(o5_doSentence),
OPCODE(o5_move),
OPCODE(o5_multiply),
@@ -1673,7 +1673,7 @@
a->putActor(0, 0, 0);
}
-void ScummEngine_v5::o5_quitPauseRestart() {
+void ScummEngine_v5::o5_systemOps() {
byte subOp = fetchScriptByte();
switch (subOp) {
case 1: // SO_RESTART
@@ -1686,7 +1686,7 @@
shutDown();
break;
default:
- error("o5_quitPauseRestart: unknown subopcode %d", subOp);
+ error("o5_systemOps: unknown subopcode %d", subOp);
}
}
Index: script_v6.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6.cpp,v
retrieving revision 1.440
retrieving revision 1.441
diff -u -d -r1.440 -r1.441
--- script_v6.cpp 26 May 2005 01:46:26 -0000 1.440
+++ script_v6.cpp 28 May 2005 08:37:43 -0000 1.441
@@ -266,7 +266,7 @@
/* AC */
OPCODE(o6_soundKludge),
OPCODE(o6_isAnyOf),
- OPCODE(o6_quitPauseRestart),
+ OPCODE(o6_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
@@ -2266,7 +2266,7 @@
push(0);
}
-void ScummEngine_v6::o6_quitPauseRestart() {
+void ScummEngine_v6::o6_systemOps() {
byte subOp = fetchScriptByte();
switch (subOp) {
case 158: // SO_RESTART
@@ -2279,7 +2279,7 @@
shutDown();
break;
default:
- error("o6_quitPauseRestart invalid case %d", subOp);
+ error("o6_systemOps invalid case %d", subOp);
}
}
Index: script_v6he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6he.cpp,v
retrieving revision 2.158
retrieving revision 2.159
diff -u -d -r2.158 -r2.159
--- script_v6he.cpp 26 May 2005 14:14:28 -0000 2.158
+++ script_v6he.cpp 28 May 2005 08:37:43 -0000 2.159
@@ -285,7 +285,7 @@
/* AC */
OPCODE(o6_invalid),
OPCODE(o6_isAnyOf),
- OPCODE(o6_quitPauseRestart),
+ OPCODE(o6_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.298
retrieving revision 2.299
diff -u -d -r2.298 -r2.299
--- script_v72he.cpp 23 May 2005 03:33:08 -0000 2.298
+++ script_v72he.cpp 28 May 2005 08:37:43 -0000 2.299
@@ -261,7 +261,7 @@
/* AC */
OPCODE(o6_invalid),
OPCODE(o6_isAnyOf),
- OPCODE(o70_quitPauseRestart),
+ OPCODE(o72_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
@@ -1563,6 +1563,42 @@
}
}
+void ScummEngine_v72he::o72_systemOps() {
+ byte string[1024];
+
+ byte subOp = fetchScriptByte();
+
+ switch (subOp) {
+ case 22: // HE80+
+ clearDrawObjectQueue();
+ break;
+ case 26: // HE80+
+ gdi.copyVirtScreenBuffers(Common::Rect(_screenWidth, _screenHeight));
+ updatePalette();
+ break;
+ case 158:
+ restart();
+ break;
+ case 160:
+ // Confirm shutdown
+ shutDown();
+ break;
+ case 244:
+ shutDown();
+ break;
+ case 251:
+ copyScriptString(string, sizeof(string));
+ debug(0, "Start executable (%s)", string);
+ break;
+ case 252:
+ copyScriptString(string, sizeof(string));
+ debug(0, "Start game (%s)", string);
+ break;
+ default:
+ error("o72_systemOps invalid case %d", subOp);
+ }
+}
+
void ScummEngine_v72he::o72_talkActor() {
Actor *a;
Index: script_v7he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v7he.cpp,v
retrieving revision 2.157
retrieving revision 2.158
diff -u -d -r2.157 -r2.158
--- script_v7he.cpp 26 May 2005 14:14:30 -0000 2.157
+++ script_v7he.cpp 28 May 2005 08:37:43 -0000 2.158
@@ -259,7 +259,7 @@
/* AC */
OPCODE(o6_invalid),
OPCODE(o6_isAnyOf),
- OPCODE(o70_quitPauseRestart),
+ OPCODE(o70_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
@@ -666,41 +666,51 @@
}
}
-void ScummEngine_v70he::o70_quitPauseRestart() {
+void ScummEngine_v70he::o70_systemOps() {
+ byte *src, string[256];
+ int id, len;
+
byte subOp = fetchScriptByte();
- int par1;
switch (subOp) {
- case 22: // HE80+
- clearDrawObjectQueue();
- break;
- case 26: // HE80+
- // Clear screen
- // Update palette
- break;
- case 158: // SO_RESTART
+ case 158:
restart();
break;
case 160:
- // FIXME: check
+ // Confirm shutdown
shutDown();
break;
- case 250:
- par1 = pop();
- warning("stub: o70_quitPauseRestart subOpcode %d", subOp);
- break;
- case 253:
- par1 = pop();
- warning("stub: o70_quitPauseRestart subOpcode %d", subOp);
- case 244: // SO_QUIT
+ case 244:
shutDown();
break;
+ case 250:
+ id = pop();
+ src = getStringAddress(id);
+ len = resStrLen(src) + 1;
+ memcpy(string, src, len);
+ debug(0, "Start executable (%s)", string);
+ break;
case 251:
+ convertMessageToString(_scriptPointer, string, sizeof(string));
+ len = resStrLen(_scriptPointer);
+ _scriptPointer += len + 1;
+ debug(0, "Start executable (%s)", string);
+ break;
case 252:
- warning("stub: o70_quitPauseRestart subOpcode %d", subOp);
+ convertMessageToString(_scriptPointer, string, sizeof(string));
+ len = resStrLen(_scriptPointer);
+ _scriptPointer += len + 1;
+ debug(0, "Start game (%s)", string);
+ break;
+ case 253:
+ id = pop();
+ src = getStringAddress(id);
+ len = resStrLen(src) + 1;
+ memcpy(string, src, len);
+ debug(0, "Start game (%s)", string);
break;
default:
- warning("o70_quitPauseRestart invalid case %d", subOp);
+ error("o70_systemOps invalid case %d", subOp);
}
}
Index: script_v8.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v8.cpp,v
retrieving revision 2.293
retrieving revision 2.294
diff -u -d -r2.293 -r2.294
--- script_v8.cpp 27 May 2005 08:24:42 -0000 2.293
+++ script_v8.cpp 28 May 2005 08:37:43 -0000 2.294
@@ -265,7 +265,7 @@
OPCODE(o6_startMusic),
OPCODE(o6_stopSound),
OPCODE(o6_soundKludge),
- OPCODE(o8_system),
+ OPCODE(o8_systemOps),
/* B4 */
OPCODE(o6_saveRestoreVerbs),
OPCODE(o6_setObjectName),
@@ -1177,7 +1177,7 @@
}
}
-void ScummEngine_v8::o8_system() {
+void ScummEngine_v8::o8_systemOps() {
byte subOp = fetchScriptByte();
switch (subOp) {
case 0x28: // SO_SYSTEM_RESTART Restart game
@@ -1187,7 +1187,7 @@
shutDown();
break;
default:
- error("o8_system: invalid case 0x%x", subOp);
+ error("o8_systemOps: invalid case 0x%x", subOp);
}
}
Index: script_v80he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v80he.cpp,v
retrieving revision 2.118
retrieving revision 2.119
diff -u -d -r2.118 -r2.119
--- script_v80he.cpp 25 May 2005 12:58:40 -0000 2.118
+++ script_v80he.cpp 28 May 2005 08:37:44 -0000 2.119
@@ -261,7 +261,7 @@
/* AC */
OPCODE(o80_drawWizPolygon),
OPCODE(o6_isAnyOf),
- OPCODE(o70_quitPauseRestart),
+ OPCODE(o72_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
Index: script_v90he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v90he.cpp,v
retrieving revision 2.263
retrieving revision 2.264
diff -u -d -r2.263 -r2.264
--- script_v90he.cpp 23 May 2005 11:50:35 -0000 2.263
+++ script_v90he.cpp 28 May 2005 08:37:44 -0000 2.264
@@ -260,7 +260,7 @@
/* AC */
OPCODE(o80_drawWizPolygon),
OPCODE(o6_isAnyOf),
- OPCODE(o70_quitPauseRestart),
+ OPCODE(o72_systemOps),
OPCODE(o6_isActorInBox),
/* B0 */
OPCODE(o6_delay),
More information about the Scummvm-git-logs
mailing list