[Scummvm-tracker] [ScummVM :: Bugs] #15890: SCI: SLATER: Hanging MIDI notes
ScummVM :: Bugs
trac at scummvm.org
Sun Sep 14 23:02:48 UTC 2025
#15890: SCI: SLATER: Hanging MIDI notes
----------------------+------------------------------------------
Reporter: Thelypody | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: SCI
Version: | Resolution:
Keywords: | Game: Slater & Charlie Go Camping
----------------------+------------------------------------------
Comment (by sluicebox):
Here's what I'm found (using Adlib):
1. When changing Slater pages, the old page's music fades out while the
new page's fades in.
2. Both sounds have a channel 9 track (zero-based) with priority 0 and
flag 2 set. We call this the `doNotRemap` flag, Sierra called it the
"locked" flag.
3. Channel remapping unmaps the old sound because they can't both have
channel 9 and they both set priorty 0 on that track. The new sound has
higher priority because it was added later, so it wins. (So far, this all
appears to be correct behavior to me.)
4. If the old sound had a note on in one of its other channels (not
channel 9) then when the new sound is remapped, and one of its tracks is
mapped to that channel, the note from the old sound keeps playing.
I've done some tests to confirm that this is the nature of the problem,
such as using SCI Companion to disable channel 9 on one of the sounds to
show that this avoids hanging notes, because then remapping allows both
sounds to co-exist until fade-out completes. (The sounds for pages 2 and 3
are 113 and 130)
So to me, the question is, when a sound gets unmapped by remapping as a
new sound takes its former channel, what is it that's supposed to turn off
the old sound's note? The original never hangs notes here, but I haven't
been able to figure out what it's doing to prevent that. (I'm new to the
MIDI / channel mapping stuff)
Also, I don't think this is really a regression from ancient ScummVM, this
looks like an inaccuracy exposed by our many other fixes from that time.
--
Ticket URL: <https://bugs.scummvm.org/ticket/15890#comment:4>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list