anchor.diff:  
   procedure TKMMusicLib.ShuffleSongs;
   var
  -  I, R, NewIndex: Integer;
  +  I, R, newIndex: Integer;
   begin
     if fMusicIndex = -1 then Exit; // Music is disabled
   
  -  NewIndex := fMusicIndex;
  +  newIndex := fMusicIndex;
   
     //Shuffle everything except for first (menu) track
     for I := fMusicCount - 1 downto 1 do
  
positive.code: var
    prevVolume: Single;
  begin
    if not IsMusicInitialized then Exit;
    if fMusicCount = 0 then Exit; //no music files found
    if fMusicIndex = 0 then Exit; //It's already playing
    fMusicIndex := 0;
    // There was audio crackling after loading screen, here we fix it by setting a delay and fading the volume.
    prevVolume := MusicGain;
    MusicGain := 0;
    PlayMusicFile(fMusicTracks[0]);
    MusicGain := prevVolume;
    UnfadeMusic(True);
  end;
  
  
  procedure TKMMusicLib.PlayNextTrack;
  begin
    if not IsMusicInitialized then exit;
    if fMusicCount = 0 then exit; //no music files found
    if fFadeState <> fsNone then exit;
  
  
negative.code: 
    BASS_ChannelPlay(fBassOtherStream, True); //Start playback from the beggining
  
    errorCode := BASS_ErrorGetCode;
    if errorCode <> BASS_OK then exit; //Error
    {$ENDIF}
  
    //Now set the volume to the desired level
  