[Scummvm-git-logs] scummvm master -> d94618f3d51e4d0825b726253cede4eaa8a90be2
athrxx
noreply at scummvm.org
Mon Mar 28 16:31:51 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
d94618f3d5 SCUMM: (DIMUSE) - fix loading of old savegames
Commit: d94618f3d51e4d0825b726253cede4eaa8a90be2
https://github.com/scummvm/scummvm/commit/d94618f3d51e4d0825b726253cede4eaa8a90be2
Author: athrxx (athrxx at scummvm.org)
Date: 2022-03-28T18:29:15+02:00
Commit Message:
SCUMM: (DIMUSE) - fix loading of old savegames
Changed paths:
engines/scumm/imuse_digi/dimuse_engine.cpp
diff --git a/engines/scumm/imuse_digi/dimuse_engine.cpp b/engines/scumm/imuse_digi/dimuse_engine.cpp
index 2ba54a7971a..d41d2348cda 100644
--- a/engines/scumm/imuse_digi/dimuse_engine.cpp
+++ b/engines/scumm/imuse_digi/dimuse_engine.cpp
@@ -232,6 +232,35 @@ int IMuseDigital::startVoice(const char *fileName, ScummFile *file, uint32 offse
return 0;
}
+static void skipLegacyTrackEntry(Common::Serializer &s) {
+ s.skip(1, VER(31)); // t.pan
+ s.skip(4, VER(31)); // t.vol
+ s.skip(4, VER(31)); // t.volFadeDest
+ s.skip(4, VER(31)); // t.volFadeStep
+ s.skip(4, VER(31)); // t.volFadeDelay
+ s.skip(1, VER(31)); // t.volFadeUsed
+ s.skip(4, VER(31)); // t.soundId
+ s.skip(15, VER(31)); // t.soundName
+ s.skip(1, VER(31)); // t.used
+ s.skip(1, VER(31)); // t.toBeRemoved
+ s.skip(1, VER(31)); // t.souStreamUsed
+ s.skip(1, VER(31), VER(76)); // mixerStreamRunning
+ s.skip(4, VER(31)); // t.soundPriority
+ s.skip(4, VER(31)); // t.regionOffset
+ s.skip(4, VER(31), VER(31)); // trackOffset
+ s.skip(4, VER(31)); // t.dataOffset
+ s.skip(4, VER(31)); // t.curRegion
+ s.skip(4, VER(31)); // t.curHookId
+ s.skip(4, VER(31)); // t.volGroupId
+ s.skip(4, VER(31)); // t.soundType
+ s.skip(4, VER(31)); // t.feedSize
+ s.skip(4, VER(31)); // t.dataMod12Bit
+ s.skip(4, VER(31)); // t.mixerFlags
+ s.skip(4, VER(31), VER(42)); // mixerVol
+ s.skip(4, VER(31), VER(42)); // mixerPan
+ s.skip(1, VER(45)); // t.sndDataExtComp
+}
+
void IMuseDigital::saveLoadEarly(Common::Serializer &s) {
Common::StackLock lock(_mutex, "IMuseDigital::saveLoadEarly()");
@@ -253,6 +282,9 @@ void IMuseDigital::saveLoadEarly(Common::Serializer &s) {
s.syncAsByte(_radioChatterSFX, VER(76));
s.syncArray(_attributes, 188, Common::Serializer::Sint32LE, VER(31));
+ for (int j = 0; j < 16; ++j)
+ skipLegacyTrackEntry(s);
+
int stateSoundId = 0;
int seqSoundId = 0;
More information about the Scummvm-git-logs
mailing list