anchor.diff:    mciopen.lpstrElementName := pchar (filename);
     Result := mciSendCommand ($0, mci_open , mci_open_type or mci_open_element, longint (@mciopen));
     if Result <> 0 then exit;
  -
     // The device opened successfully; get the device ID.
     // Check if the output port is the MIDI mapper.
     wDeviceID := mciOpen.wDeviceID;
  
positive.code:     mciSendCommand (wDeviceID, MCI_CLOSE, 0, 0);
      exit;
    end;
  
    // Begin playback. The window procedure function for the parent
    // Window will be notified with an MM_MCINOTIFY message when
    // Playback is complete. At this time, the window procedure closes
  
negative.code:   {$IFDEF USELIBZPLAY}
    //LibZPlay has a nice SlideVolume function we can use
    ZPlayer.ResumePlayback; //Music may have been paused due to fade out
    if aHandleCrackling then Sleep(25);
    ZPlayer.GetPosition(StartTime);
    EndTime.ms := StartTime.ms + FADE_TIME;
    ZPlayer.GetPlayerVolume(Left, Right); //Start fade from the current volume
  