[Scummvm-tracker] [ScummVM :: Bugs] #12071: KQ4 SCI version 1.000.111 - MT-32 plays back some improper instruments

ScummVM :: Bugs trac at scummvm.org
Thu May 27 22:19:35 UTC 2021


#12071: KQ4 SCI version 1.000.111 - MT-32 plays back some improper instruments
----------------------------------+-----------------------------
Reporter:  MusicallyInspired      |       Owner:  (none)
    Type:  defect                 |      Status:  new
Priority:  normal                 |   Component:  Audio: MT32
 Version:                         |  Resolution:
Keywords:  KQ4, SCI, MT32, music  |        Game:  King's Quest 4
----------------------------------+-----------------------------
Comment (by MusicallyInspired):

 Thought about this ticket again when reading up on SCI0 sound resource
 specifications by Ravi. It seems this version of KQ4 uses a different
 format for the sound resource as described below. This was also the case
 for the 1988 Sierra Xmas card. I wonder if this is the reason and ScummVM
 is trying to playback the sound resources in the conventional SCI0 way
 without taking these earlier differences into account? I haven't looked at
 the ScummVM source code to check (I wouldn't know where to find it
 anyway). Though, it doesn't look like there are any differences save the
 actual header information. Anyway, here's the info:

 [https://wiki.scummvm.org/index.php?title=SCI/Specifications/Sound/SCI0_Resource_Format#Header_.28kq4.2C_1988_xmas_card.29]

 ----

 ''Header (kq4, 1988 xmas card)

 ''The first byte is a digital sample flag. Afterwards 1 byte follows for
 each channel (totals in 17 bytes).

 ''The upper 4 bits of that byte specify how many voices each logical MIDI
 channel will be playing. The lower 4 bits specify which drivers should
 react on that channel. Bit 0 set means AdLib shall react. Bit 1 set means
 PCjr shall react. MT32 will react on all channels. Bit 3 signals the
 control channel.

 ''The original sierra driver needs bit 3 set and bit 0 unset to find the
 control channel. Also the AdLib driver needs bit 3 to be unset, otherwise
 the driver will ignore the channel even if bit 0 is set.

 ''Currently its not known if the digital sample flag behaves the same as
 in the SCI0 header.''
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/12071#comment:3>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list