Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#6665 closed defect (fixed)

SIMON1: Music in floppy does not loop after sound-effect

Reported by: SF/apprentice-fu Owned by: Kirben
Priority: normal Component: Engine: AGOS
Keywords: Cc:
Game: Simon the Sorcerer 1

Description

ScummVM 1.7.0git7802-gae26f95 (self-compiled with Linux and build bot version with Win32)
Tested with German and English versions.
Only the floppy versions seem to be affected.
Tested with daily build on Windows and self-compiled on Linux

In the floppy versions the music will not loop after a sound-effect has played with the current music.
If another sound-effect is played the music can be heard for another loop.
If the music changes to another piece it will loop again.

Steps to reproduce:
After the Intro: Open the drawer and wait (the music is approx. 2 min. long)
Pick up scissors for another loop.

The Fiery Pits of Rondor when Sordid tries to light them is another good scene, because the music piece is short and there is a constant source of sound-effects. You just have to wait. (a save game at this point is attached)

This behaviour is also present in version 1.4.1 (Ubuntu) and 1.6 (Win32).
I could not reproduce it with the German version under DOSBox.

This might be a duplicate of #4738, but the steps to reproduce the behaviour are not identical.

Ticket imported from: bugs/6665.

Attachments (2)

simon1.020 (775 bytes) - added by SF/apprentice-fu 5 years ago.
simon-looping.txt (3.5 KB) - added by eriktorbjorn 5 years ago.

Download all attachments as: .zip

Change History (8)

Changed 5 years ago by SF/apprentice-fu

Attachment: simon1.020 added

comment:1 Changed 5 years ago by SF/apprentice-fu

I looked at the code (and used a debugger) and think the problem is in engines/agos/midi.cpp the line 433
midi.h says that _loopTrack is only for music, but it also set when a special effect is loaded.

Perhaps a if (!sfx) before that line?

Changed 5 years ago by eriktorbjorn

Attachment: simon-looping.txt added

comment:2 Changed 5 years ago by eriktorbjorn

Here's one possible fix, but at the very least it will require some testing.

comment:3 Changed 4 years ago by eriktorbjorn

My proposed fix for this was accepted very recently, so this bug should hopefully be gone now.

comment:4 Changed 4 years ago by eriktorbjorn

Owner: set to eriktorbjorn
Resolution: fixed
Status: newclosed

comment:5 Changed 4 years ago by Kirben

Owner: changed from eriktorbjorn to Kirben

comment:6 Changed 4 years ago by Kirben

The previous solution had to be reverted, since it caused music looping regressions in Simon the Sorcerer 2.

The problem was actually caused when the looping flag was enabled for sound effects, since no sound effect actually makes any use of looping. A mistake I made long ago, in svn revision 22907. Reverting that change, fixed the problem.

Note: See TracTickets for help on using tickets.