[Scummvm-git-logs] scummvm master -> 859ebfd8074d9c3bae50b4bf933deebca796ef90
neuromancer
noreply at scummvm.org
Sun Aug 31 20:59:41 UTC 2025
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
d754921013 FREESCAPE: better sound handling for zx concurrent sounds
a963b7272b FREESCAPE: adjust pitch when game is started
859ebfd807 FREESCAPE: removed double sync sound condition
Commit: d7549210133eb105da14f89d83dd92c3a1f33937
https://github.com/scummvm/scummvm/commit/d7549210133eb105da14f89d83dd92c3a1f33937
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2025-08-31T23:01:53+02:00
Commit Message:
FREESCAPE: better sound handling for zx concurrent sounds
Changed paths:
engines/freescape/freescape.h
engines/freescape/sound.cpp
diff --git a/engines/freescape/freescape.h b/engines/freescape/freescape.h
index a85d836a6d4..c35356fc9f4 100644
--- a/engines/freescape/freescape.h
+++ b/engines/freescape/freescape.h
@@ -491,7 +491,7 @@ public:
void loadSpeakerFxZX(Common::SeekableReadStream *file, int sfxTable, int sfxData);
Common::HashMap<uint16, soundSpeakerFx *> _soundsSpeakerFx;
- void playSoundZX(Common::Array<soundUnitZX> *data);
+ void playSoundZX(Common::Array<soundUnitZX> *data, Audio::SoundHandle &handle);
Common::HashMap<uint16, Common::Array<soundUnitZX>*> _soundsSpeakerFxZX;
int _soundIndexShoot;
int _soundIndexCollide;
diff --git a/engines/freescape/sound.cpp b/engines/freescape/sound.cpp
index 77bff5dadea..daf3041ce94 100644
--- a/engines/freescape/sound.cpp
+++ b/engines/freescape/sound.cpp
@@ -325,7 +325,7 @@ void FreescapeEngine::playSound(int index, bool sync, Audio::SoundHandle &handle
return;
} else if (isSpectrum() && !isDriller()) {
- playSoundZX(_soundsSpeakerFxZX[index]);
+ playSoundZX(_soundsSpeakerFxZX[index], handle);
return;
}
@@ -503,7 +503,7 @@ uint16 FreescapeEngine::playSoundDOSSpeaker(uint16 frequencyStart, soundSpeakerF
return freq;
}
-void FreescapeEngine::playSoundZX(Common::Array<soundUnitZX> *data) {
+void FreescapeEngine::playSoundZX(Common::Array<soundUnitZX> *data, Audio::SoundHandle &handle) {
for (auto &it : *data) {
soundUnitZX value = it;
@@ -529,7 +529,7 @@ void FreescapeEngine::playSoundZX(Common::Array<soundUnitZX> *data) {
}
_mixer->stopHandle(_soundFxHandle);
- _mixer->playStream(Audio::Mixer::kSFXSoundType, &_soundFxHandle, _speaker, -1, kFreescapeDefaultVolume, 0, DisposeAfterUse::NO);
+ _mixer->playStream(Audio::Mixer::kSFXSoundType, &handle, _speaker, -1, kFreescapeDefaultVolume, 0, DisposeAfterUse::NO);
}
void FreescapeEngine::playSoundDOS(soundSpeakerFx *speakerFxInfo, bool sync, Audio::SoundHandle &handle) {
Commit: a963b7272bc723c6d96386f106b6e9df3c9a1525
https://github.com/scummvm/scummvm/commit/a963b7272bc723c6d96386f106b6e9df3c9a1525
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2025-08-31T23:01:53+02:00
Commit Message:
FREESCAPE: adjust pitch when game is started
Changed paths:
engines/freescape/games/eclipse/eclipse.cpp
diff --git a/engines/freescape/games/eclipse/eclipse.cpp b/engines/freescape/games/eclipse/eclipse.cpp
index 2c060fb3b94..0103cf481d8 100644
--- a/engines/freescape/games/eclipse/eclipse.cpp
+++ b/engines/freescape/games/eclipse/eclipse.cpp
@@ -313,6 +313,8 @@ void EclipseEngine::gotoArea(uint16 areaID, int entranceID) {
_lastPosition = _position;
if (areaID == _startArea && entranceID == _startEntrance) {
+ if (_pitch >= 180)
+ _pitch = 360 - _pitch;
playSound(_soundIndexStart, true, _soundFxHandle);
if (isEclipse2()) {
_gameStateControl = kFreescapeGameStateStart;
Commit: 859ebfd8074d9c3bae50b4bf933deebca796ef90
https://github.com/scummvm/scummvm/commit/859ebfd8074d9c3bae50b4bf933deebca796ef90
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2025-08-31T23:01:53+02:00
Commit Message:
FREESCAPE: removed double sync sound condition
Changed paths:
engines/freescape/language/instruction.cpp
diff --git a/engines/freescape/language/instruction.cpp b/engines/freescape/language/instruction.cpp
index 3695fcadbfd..47e7ff1f40f 100644
--- a/engines/freescape/language/instruction.cpp
+++ b/engines/freescape/language/instruction.cpp
@@ -332,9 +332,6 @@ void FreescapeEngine::executeRedraw(FCLInstruction &instruction) {
delay = delay * 10;
waitInLoop(delay);
- if (_syncSound) {
- waitForSounds();
- }
}
void FreescapeEngine::executeExecute(FCLInstruction &instruction, bool shot, bool collided, bool activated) {
More information about the Scummvm-git-logs
mailing list