[Scummvm-git-logs] scummvm master -> 160f5297f4fa98dce13243b3bd53fc6085ac327e
somaen
einarjohants at gmail.com
Mon Mar 1 21:33:59 UTC 2021
This automated email contains information about 7 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
7543ee52e7 TINSEL: Map and partially implement FADEMUSIC
4320fff786 TINSEL: Stub library function 228
b9e4f24e86 TINSEL: Stub library function 225
ee57db6c75 TINSEL: Stub library function 217
e31fbf6766 TINSEL: Map ACTORPRIORITY
bd44a9d597 TINSEL: Map RANDOM
160f5297f4 TINSEL: Map PLAYSAMPLE, and set sample data to MP3 in Noir
Commit: 7543ee52e7f37257defe65c7ec41c8b1f74904de
https://github.com/scummvm/scummvm/commit/7543ee52e7f37257defe65c7ec41c8b1f74904de
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:04:00+01:00
Commit Message:
TINSEL: Map and partially implement FADEMUSIC
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 9fc1ffa05b..4c158b88a7 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -153,7 +153,7 @@ enum MASTER_LIB_CODES {
TRYPLAYSAMPLE, UNDIMMUSIC, UNHOOKSCENE, UNTAGACTOR, VIBRATE, WAITFRAME, WAITKEY,
WAITSCROLL, WAITTIME, WALK, WALKED, WALKEDPOLY, WALKEDTAG, WALKINGACTOR, WALKPOLY,
WALKTAG, WALKXPOS, WALKYPOS, WHICHCD, WHICHINVENTORY, ZZZZZZ, DEC3D, DECINVMAIN,
- ADDNOTEBOOK, ADDINV3, ADDCONV, SET3DTEXTURE, HIGHEST_LIBCODE
+ ADDNOTEBOOK, ADDINV3, ADDCONV, SET3DTEXTURE, FADEMUSIC, HIGHEST_LIBCODE
};
static const MASTER_LIB_CODES DW1DEMO_CODES[] = {
@@ -1664,6 +1664,11 @@ static void PlayMusic(int tune) {
_vm->_pcmMusic->startPlay(tune);
}
+static void FadeMusic(int tune, int fadeParams) {
+ warning("TODO: Implement fading: %08x", fadeParams);
+ _vm->_pcmMusic->startPlay(tune);
+}
+
/**
* Play a sample.
* Tinsel 1 version
@@ -4286,6 +4291,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
mapping = NoirMapping{"EVENT", EVENT, 0};
debug(7, "%s()", mapping.name);
break;
+ case 64:
+ mapping = NoirMapping{"FADEMUSIC", FADEMUSIC, 2};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(%08X, %d)", mapping.name, pp[0], pp[1]);
+ break;
case 77:
mapping = NoirMapping{"HIDEACTOR", HIDEACTOR, 1};
pp -= mapping.numArgs - 1;
@@ -4876,6 +4886,12 @@ int CallLibraryRoutine(CORO_PARAM, int operand, int32 *pp, const INT_CONTEXT *pi
FadeMidi(coroParam, pp[0]);
return -1;
+ case FADEMUSIC:
+ // Noir only
+ pp -= 1;
+ FadeMusic(pp[0], pp[1]);
+ return -2;
+
case FADEOUT:
// DW1 only
FadeOutMedium();
Commit: 4320fff786039fa116b5545185e231a797c16948
https://github.com/scummvm/scummvm/commit/4320fff786039fa116b5545185e231a797c16948
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:06:16+01:00
Commit Message:
TINSEL: Stub library function 228
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 4c158b88a7..89b1bf08dd 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4397,6 +4397,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
pp -= mapping.numArgs - 1;
debug(7, "%s(0x%08X)", mapping.name, pp[0]);
break;
+ case 228: // STUBBED
+ mapping = NoirMapping{"OP228", ZZZZZZ, 1};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(0x%08X)", mapping.name, pp[0]);
+ break;
default:
error("Unmapped libCode %d", libCode);
}
Commit: b9e4f24e86b5bc44e859941522dad6b4c231583d
https://github.com/scummvm/scummvm/commit/b9e4f24e86b5bc44e859941522dad6b4c231583d
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:09:43+01:00
Commit Message:
TINSEL: Stub library function 225
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 89b1bf08dd..48f7fbb0eb 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4397,6 +4397,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
pp -= mapping.numArgs - 1;
debug(7, "%s(0x%08X)", mapping.name, pp[0]);
break;
+ case 225: // STUBBED
+ mapping = NoirMapping{"OP225", ZZZZZZ, 1};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(0x%08X)", mapping.name, pp[0]);
+ break;
case 228: // STUBBED
mapping = NoirMapping{"OP228", ZZZZZZ, 1};
pp -= mapping.numArgs - 1;
Commit: ee57db6c75fb499fa5fb22847bab110bf8e8cbdd
https://github.com/scummvm/scummvm/commit/ee57db6c75fb499fa5fb22847bab110bf8e8cbdd
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:12:43+01:00
Commit Message:
TINSEL: Stub library function 217
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 48f7fbb0eb..2c8e657087 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4397,6 +4397,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
pp -= mapping.numArgs - 1;
debug(7, "%s(0x%08X)", mapping.name, pp[0]);
break;
+ case 217: // STUBBED
+ mapping = NoirMapping{"217", ZZZZZZ, 1};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(0x%08X)", mapping.name, pp[0]);
+ break;
case 225: // STUBBED
mapping = NoirMapping{"OP225", ZZZZZZ, 1};
pp -= mapping.numArgs - 1;
Commit: e31fbf67660148af9155916e6407672504a17034
https://github.com/scummvm/scummvm/commit/e31fbf67660148af9155916e6407672504a17034
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:15:16+01:00
Commit Message:
TINSEL: Map ACTORPRIORITY
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 2c8e657087..c9b77a5fca 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4199,6 +4199,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
// this is convenient for debug.
NoirMapping mapping;
switch (libCode) {
+ case 3:
+ mapping = NoirMapping{"ACTORPRIORITY", ACTORPRIORITY, 2};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(%d, 0x%08X)", mapping.name, pp[0], pp[1]);
+ break;
case 5:
mapping = NoirMapping{"ACTORRGB", ACTORRGB, 2};
pp -= mapping.numArgs - 1;
@@ -4474,7 +4479,7 @@ int CallLibraryRoutine(CORO_PARAM, int operand, int32 *pp, const INT_CONTEXT *pi
return -3;
case ACTORPRIORITY:
- // DW2 only
+ // DW2 / Noir
pp -= 1; // 2 parameters
ActorPriority(pp[0], pp[1]);
return -2;
Commit: bd44a9d597b4c6290ce26eaa64cb891b4c438080
https://github.com/scummvm/scummvm/commit/bd44a9d597b4c6290ce26eaa64cb891b4c438080
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:17:14+01:00
Commit Message:
TINSEL: Map RANDOM
Changed paths:
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index c9b77a5fca..8a07b3226c 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4336,6 +4336,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
pp -= mapping.numArgs - 1;
debug(7, "%s(0x%08X)", mapping.name, pp[0]);
break;
+ case 128:
+ mapping = NoirMapping{"RANDOM", RANDOM, 2};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(%d, %d, %d)", mapping.name, pp[0], pp[1], pp[2]);
+ break;
case 151:
mapping = NoirMapping{"SETSYSTEMREEL", SETSYSTEMREEL, 2};
pp -= mapping.numArgs - 1;
@@ -5308,7 +5313,7 @@ int CallLibraryRoutine(CORO_PARAM, int operand, int32 *pp, const INT_CONTEXT *pi
return 0;
case RANDOM:
- // Common to both DW1 & DW2
+ // Common to DW1 / DW2 / Noir
pp -= 2; // 3 parameters
pp[0] = RandomFn(pp[0], pp[1], pp[2]);
return -2; // One holds return value
Commit: 160f5297f4fa98dce13243b3bd53fc6085ac327e
https://github.com/scummvm/scummvm/commit/160f5297f4fa98dce13243b3bd53fc6085ac327e
Author: Einar Johan Trøan SømaÌen (somaen at scummvm.org)
Date: 2021-03-01T22:32:47+01:00
Commit Message:
TINSEL: Map PLAYSAMPLE, and set sample data to MP3 in Noir
Changed paths:
engines/tinsel/sound.cpp
engines/tinsel/tinlib.cpp
diff --git a/engines/tinsel/sound.cpp b/engines/tinsel/sound.cpp
index bf4a7e781c..f77c6d70f5 100644
--- a/engines/tinsel/sound.cpp
+++ b/engines/tinsel/sound.cpp
@@ -542,6 +542,10 @@ void SoundManager::openSampleFiles() {
break;
default:
debugC(DEBUG_DETAILED, kTinselDebugSound, "Detected original sound-data");
+ if (TinselV3) {
+ // And in Noir, the data is MP3
+ _soundMode = kMP3Mode;
+ }
break;
}
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 8a07b3226c..34089a9502 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -4336,6 +4336,11 @@ NoirMapping translateNoirLibCode(int libCode, int32 *pp) {
pp -= mapping.numArgs - 1;
debug(7, "%s(0x%08X)", mapping.name, pp[0]);
break;
+ case 113:
+ mapping = NoirMapping{"PLAYSAMPLE", PLAYSAMPLE, 4};
+ pp -= mapping.numArgs - 1;
+ debug(7, "%s(0x%08X, 0x%08X, 0x%08X, 0x%08X)", mapping.name, pp[0], pp[1], pp[2], pp[3]);
+ break;
case 128:
mapping = NoirMapping{"RANDOM", RANDOM, 2};
pp -= mapping.numArgs - 1;
@@ -5222,8 +5227,8 @@ int CallLibraryRoutine(CORO_PARAM, int operand, int32 *pp, const INT_CONTEXT *pi
error("playrtf only applies to cdi");
case PLAYSAMPLE:
- // Common to both DW1 & DW2
- if (TinselV2) {
+ // Common to DW1 / DW2 / Noir
+ if (TinselV2 || TinselV3) {
pp -= 3; // 4 parameters
PlaySample(coroParam, pp[0], pp[1], pp[2], pp[3], pic->myEscape);
return -4;
More information about the Scummvm-git-logs
mailing list