aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/he
diff options
context:
space:
mode:
authorKirben2016-05-25 19:51:16 +1000
committerKirben2016-05-25 19:51:16 +1000
commitb994a02077539c96ddc5423f8b024261b851626a (patch)
tree9213f88f3d5962e4d5d96d59780794352c5bf684 /engines/scumm/he
parent8b685a2b1e3ff2132b3c29514d863084966a8cec (diff)
downloadscummvm-rg350-b994a02077539c96ddc5423f8b024261b851626a.tar.gz
scummvm-rg350-b994a02077539c96ddc5423f8b024261b851626a.tar.bz2
scummvm-rg350-b994a02077539c96ddc5423f8b024261b851626a.zip
SCUMM HE: Document more opcodes.
Diffstat (limited to 'engines/scumm/he')
-rw-r--r--engines/scumm/he/script_v100he.cpp38
-rw-r--r--engines/scumm/he/script_v72he.cpp40
2 files changed, 39 insertions, 39 deletions
diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp
index cd807f06b8..2e7b4c4bf5 100644
--- a/engines/scumm/he/script_v100he.cpp
+++ b/engines/scumm/he/script_v100he.cpp
@@ -356,38 +356,38 @@ void ScummEngine_v100he::o100_actorOps() {
// FIXME: check stack parameters
debug(0,"o100_actorOps: case 0 UNHANDLED");
break;
- case 3:
+ case 3: // SO_ANIMATION
pop();
pop();
pop();
break;
- case 4: // SO_ANIMATION_SPEED
+ case 4: // SO_ANIMATION_SPEED
a->setAnimSpeed(pop());
break;
- case 6:
+ case 6: // SO_AT
j = pop();
i = pop();
a->putActor(i, j);
break;
- case 8:
+ case 8: // SO_BACKGROUND_OFF
a->_drawToBackBuf = false;
a->_needRedraw = true;
a->_needBgReset = true;
break;
- case 9:
+ case 9: // SO_BACKGROUND_ON
a->drawActorToBackBuf(a->getPos().x, a->getPos().y);
break;
- case 14:
+ case 14: // SO_CHARSET
a->_charset = pop();
break;
- case 18:
+ case 18: // SO_CLIPPED
a->_clipOverride.bottom = pop();
a->_clipOverride.right = pop();
a->_clipOverride.top = pop();
a->_clipOverride.left = pop();
adjustRect(a->_clipOverride);
break;
- case 22:
+ case 22: // SO_CONDITION
k = getStackList(args, ARRAYSIZE(args));
for (i = 0; i < k; ++i) {
a->setUserCondition(args[i] & 0x7F, args[i] & 0x80);
@@ -399,7 +399,7 @@ void ScummEngine_v100he::o100_actorOps() {
case 27: // SO_DEFAULT
a->initActor(0);
break;
- case 32:
+ case 32: // SO_ERASE
k = pop();
a->setHEFlag(1, k);
break;
@@ -417,11 +417,11 @@ void ScummEngine_v100he::o100_actorOps() {
a->remapActorPaletteColor(i, j);
a->_needRedraw = true;
break;
- case 59:
+ case 59: // SO_PRIORITY
a->_layer = pop();
a->_needRedraw = true;
break;
- case 63:
+ case 63: // SO_ROOM_PALETTE
a->_hePaletteNum = pop();
a->_needRedraw = true;
break;
@@ -438,7 +438,7 @@ void ScummEngine_v100he::o100_actorOps() {
i = pop();
a->setActorWalkSpeed(i, j);
break;
- case 78:
+ case 78: // SO_TALKIE
{
copyScriptString(string, sizeof(string));
int slot = pop();
@@ -461,7 +461,7 @@ void ScummEngine_v100he::o100_actorOps() {
case 89: // SO_NEVER_ZCLIP
a->_forceClip = 0;
break;
- case 128:
+ case 128: // SO_ACTOR_DEFAULT_CLIPPED
_actorClipOverride.bottom = pop();
_actorClipOverride.right = pop();
_actorClipOverride.top = pop();
@@ -517,7 +517,7 @@ void ScummEngine_v100he::o100_actorOps() {
case 141: // SO_TALK_COLOR
a->_talkColor = pop();
break;
- case 142:
+ case 142: // SO_TALK_CONDITION
k = pop();
if (k == 0)
k = _rnd.getRandomNumberRng(1, 10);
@@ -583,7 +583,7 @@ void ScummEngine_v100he::o100_arrayOps() {
writeArray(array, 0, b + c, pop());
}
break;
- case 130: //
+ case 130: // SO_COMPLEX_ARRAY_ASSIGNMENT
len = getStackList(list, ARRAYSIZE(list));
dim1end = pop();
dim1start = pop();
@@ -1617,13 +1617,13 @@ void ScummEngine_v100he::o100_roomOps() {
setPalColor(d, a, b, c);
break;
- case 129:
+ case 129: // SO_OBJECT_ORDER
b = pop();
a = pop();
swapObjects(a, b);
break;
- case 130:
+ case 130: // SO_ROOM_COPY_PALETTE
a = pop();
b = pop();
if (_game.features & GF_16BIT_COLOR)
@@ -1658,7 +1658,7 @@ void ScummEngine_v100he::o100_roomOps() {
setCurrentPalette(a);
break;
- case 135:
+ case 135: // SO_ROOM_PALETTE_IN_ROOM
b = pop();
a = pop();
setRoomPalette(a, b);
@@ -1670,7 +1670,7 @@ void ScummEngine_v100he::o100_roomOps() {
_saveLoadFlag = pop();
break;
- case 137:
+ case 137: // SO_ROOM_SAVEGAME_BY_NAME
byte buffer[256];
copyScriptString((byte *)buffer, sizeof(buffer));
diff --git a/engines/scumm/he/script_v72he.cpp b/engines/scumm/he/script_v72he.cpp
index 31b4887d10..9b1b617aff 100644
--- a/engines/scumm/he/script_v72he.cpp
+++ b/engines/scumm/he/script_v72he.cpp
@@ -699,13 +699,13 @@ void ScummEngine_v72he::o72_roomOps() {
setCurrentPalette(a);
break;
- case 220:
+ case 220: // SO_ROOM_COPY_PALETTE
a = pop();
b = pop();
copyPalColor(a, b);
break;
- case 221:
+ case 221: // SO_ROOM_SAVEGAME_BY_NAME
byte buffer[256];
copyScriptString((byte *)buffer, sizeof(buffer));
@@ -718,13 +718,13 @@ void ScummEngine_v72he::o72_roomOps() {
_saveTemporaryState = true;
break;
- case 234:
+ case 234: // SO_OBJECT_ORDER
b = pop();
a = pop();
swapObjects(a, b);
break;
- case 236:
+ case 236: // SO_ROOM_PALETTE_IN_ROOM
b = pop();
a = pop();
setRoomPalette(a, b);
@@ -752,43 +752,43 @@ void ScummEngine_v72he::o72_actorOps() {
return;
switch (subOp) {
- case 21: // HE 80+
+ case 21: // SO_CONDITION (HE 80+)
k = getStackList(args, ARRAYSIZE(args));
for (i = 0; i < k; ++i) {
a->setUserCondition(args[i] & 0x7F, args[i] & 0x80);
}
break;
- case 24: // HE 80+
+ case 24: // SO_TALK_CONDITION (HE 80+)
k = pop();
if (k == 0)
k = _rnd.getRandomNumberRng(1, 10);
a->_heNoTalkAnimation = 1;
a->setTalkCondition(k);
break;
- case 43: // HE 90+
+ case 43: // SO_PRIORITY (HE 90+)
a->_layer = pop();
a->_needRedraw = true;
break;
- case 64:
+ case 64: // SO_ACTOR_DEFAULT_CLIPPED
_actorClipOverride.bottom = pop();
_actorClipOverride.right = pop();
_actorClipOverride.top = pop();
_actorClipOverride.left = pop();
adjustRect(_actorClipOverride);
break;
- case 65: // HE 98+
+ case 65: // SO_AT (HE 98+)
j = pop();
i = pop();
a->putActor(i, j);
break;
- case 67: // HE 99+
+ case 67: // SO_CLIPPED (HE 99+)
a->_clipOverride.bottom = pop();
a->_clipOverride.right = pop();
a->_clipOverride.top = pop();
a->_clipOverride.left = pop();
adjustRect(a->_clipOverride);
break;
- case 68: // HE 90+
+ case 68: // // SO_ERASE (HE 90+)
k = pop();
a->setHEFlag(1, k);
break;
@@ -887,10 +887,10 @@ void ScummEngine_v72he::o72_actorOps() {
a->_talkPosY = pop();
a->_talkPosX = pop();
break;
- case 156: // HE 72+
+ case 156: // SO_CHARSET (HE 72+)
a->_charset = pop();
break;
- case 175: // HE 99+
+ case 175: // SO_ROOM_PALETTE (HE 99+)
a->_hePaletteNum = pop();
a->_needRedraw = true;
break;
@@ -907,15 +907,15 @@ void ScummEngine_v72he::o72_actorOps() {
case 217: // SO_ACTOR_NEW
a->initActor(2);
break;
- case 218:
+ case 218: // SO_BACKGROUND_ON
a->drawActorToBackBuf(a->getPos().x, a->getPos().y);
break;
- case 219:
+ case 219: // SO_BACKGROUND_OFF
a->_drawToBackBuf = false;
a->_needRedraw = true;
a->_needBgReset = true;
break;
- case 225:
+ case 225: // SO_TALKIE
{
copyScriptString(string, sizeof(string));
int slot = pop();
@@ -1077,7 +1077,7 @@ void ScummEngine_v72he::o72_arrayOps() {
memcpy(data, string, len);
break;
- case 126:
+ case 126: // SO_COMPLEX_ARRAY_ASSIGNMENT
len = getStackList(list, ARRAYSIZE(list));
dim1end = pop();
dim1start = pop();
@@ -1101,7 +1101,7 @@ void ScummEngine_v72he::o72_arrayOps() {
dim2start++;
}
break;
- case 127:
+ case 127: // SO_COMPLEX_ARRAY_COPY_OPERATION
{
int a2_dim1end = pop();
int a2_dim1start = pop();
@@ -1118,7 +1118,7 @@ void ScummEngine_v72he::o72_arrayOps() {
copyArray(array, a1_dim2start, a1_dim2end, a1_dim1start, a1_dim1end, array2, a2_dim2start, a2_dim2end, a2_dim1start, a2_dim1end);
}
break;
- case 128:
+ case 128: // SO_RANGE_ARRAY_ASSIGNMENT
b = pop();
c = pop();
dim1end = pop();
@@ -1149,7 +1149,7 @@ void ScummEngine_v72he::o72_arrayOps() {
dim2start++;
}
break;
- case 194:
+ case 194: // SO_FORMATTED_STRING
decodeScriptString(string);
len = resStrLen(string);
data = defineArray(array, kStringArray, 0, 0, 0, len);