[Scummvm-tracker] [ScummVM :: Bugs] #16689: Zak C64: Initial audio on DAT tape (id #49) does not play correctly

ScummVM :: Bugs trac at scummvm.org
Sat Apr 18 22:44:53 UTC 2026


#16689: Zak C64: Initial audio on DAT tape (id #49) does not play correctly
--------------------------+------------------------------
Reporter:  M3wP           |      Owner:  (none)
    Type:  defect         |     Status:  new
Priority:  normal         |  Component:  Engine: SCUMM
 Version:                 |   Keywords:  Zak C64 audio 49
    Game:  Zak McKracken  |
--------------------------+------------------------------
 There is a problem in the routine Player_SID::readVec6Data.  It is reading
 byte-sized data from the songFilePtr when it should be reading word-sized
 data.  This occurs when playing sound 49.  You can play this sound by
 turning on the radio in the Shuttle Bug before removing the tape.

 I believe the code below shows the problem and solution.

 {{{
 void Player_SID::readVec6Data(int x, int *offset, uint8 *songFilePtr, int
 chanResID) { // $4E99
         //vec5[x] = songFilePtr;
         assert(x < ARRAYSIZE(vec6));

 //==> Here
 //      vec6[x] = songFilePtr[*offset];
 //    Should be:
         vec6[x] = *(uint16 *)(songFilePtr + *offset);

         *offset += 2;
         _soundQueue[x] = chanResID;
 }

 }}}
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/16689>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list