mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-06 02:10:28 +00:00
SCUMM HE: Fixes and comments to video playback code
This commit is contained in:
parent
a65617daa2
commit
cc6be145b7
@ -440,7 +440,7 @@ protected:
|
||||
byte filename[260];
|
||||
int32 status;
|
||||
int32 flags;
|
||||
int32 unk2;
|
||||
int32 number;
|
||||
int32 wizResNum;
|
||||
};
|
||||
|
||||
|
@ -2236,40 +2236,43 @@ void ScummEngine_v100he::o100_videoOps() {
|
||||
byte subOp = fetchScriptByte();
|
||||
|
||||
switch (subOp) {
|
||||
case 0:
|
||||
case 0: // SO_INIT
|
||||
memset(_videoParams.filename, 0, sizeof(_videoParams.filename));
|
||||
_videoParams.status = 0;
|
||||
_videoParams.flags = 0;
|
||||
_videoParams.unk2 = pop();
|
||||
_videoParams.number = pop();
|
||||
_videoParams.wizResNum = 0;
|
||||
|
||||
if (_videoParams.number != 1 && _videoParams.number != -1)
|
||||
warning("o100_videoOps: number: %d", _videoParams.number);
|
||||
break;
|
||||
case 19:
|
||||
case 19: // SO_CLOSE
|
||||
_videoParams.status = 19;
|
||||
break;
|
||||
case 40:
|
||||
case 40: // SO_IMAGE
|
||||
_videoParams.wizResNum = pop();
|
||||
if (_videoParams.wizResNum)
|
||||
_videoParams.flags |= 2;
|
||||
break;
|
||||
case 47:
|
||||
case 47: // SO_LOAD
|
||||
copyScriptString(_videoParams.filename, sizeof(_videoParams.filename));
|
||||
_videoParams.status = 47;
|
||||
break;
|
||||
case 67:
|
||||
case 67: // SO_SET_FLAGS
|
||||
_videoParams.flags |= pop();
|
||||
break;
|
||||
case 92:
|
||||
if (_videoParams.status == 47) {
|
||||
case 92: // SO_END
|
||||
if (_videoParams.status == 47) { // SO_LOAD
|
||||
// Start video
|
||||
if (_videoParams.flags == 0)
|
||||
_videoParams.flags = 4;
|
||||
|
||||
if (_videoParams.flags == 2) {
|
||||
if (_videoParams.flags & 2) {
|
||||
VAR(119) = _moviePlay->load(convertFilePath(_videoParams.filename), _videoParams.flags, _videoParams.wizResNum);
|
||||
} else {
|
||||
VAR(119) = _moviePlay->load(convertFilePath(_videoParams.filename), _videoParams.flags);
|
||||
}
|
||||
} else if (_videoParams.status == 19) {
|
||||
} else if (_videoParams.status == 19) { // SO_CLOSE
|
||||
// Stop video
|
||||
_moviePlay->close();
|
||||
}
|
||||
|
@ -1412,7 +1412,7 @@ void ScummEngine_v90he::o90_videoOps() {
|
||||
memset(_videoParams.filename, 0, sizeof(_videoParams.filename));
|
||||
_videoParams.status = 0;
|
||||
_videoParams.flags = 0;
|
||||
_videoParams.unk2 = pop();
|
||||
_videoParams.number = pop();
|
||||
_videoParams.wizResNum = 0;
|
||||
break;
|
||||
case 14:
|
||||
|
@ -882,7 +882,7 @@ ScummEngine_v90he::ScummEngine_v90he(OSystem *syst, const DetectorResult &dr)
|
||||
memset(_videoParams.filename, 0, sizeof(_videoParams.filename));
|
||||
_videoParams.status = 0;
|
||||
_videoParams.flags = 0;
|
||||
_videoParams.unk2 = 0;
|
||||
_videoParams.number = 0;
|
||||
_videoParams.wizResNum = 0;
|
||||
|
||||
VAR_NUM_SPRITE_GROUPS = 0xFF;
|
||||
|
Loading…
x
Reference in New Issue
Block a user