diff options
Diffstat (limited to 'backends/platform/PalmOS/Src/cd_aeroplayer.cpp')
-rw-r--r-- | backends/platform/PalmOS/Src/cd_aeroplayer.cpp | 166 |
1 files changed, 0 insertions, 166 deletions
diff --git a/backends/platform/PalmOS/Src/cd_aeroplayer.cpp b/backends/platform/PalmOS/Src/cd_aeroplayer.cpp deleted file mode 100644 index c30fba595c..0000000000 --- a/backends/platform/PalmOS/Src/cd_aeroplayer.cpp +++ /dev/null @@ -1,166 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * $URL$ - * $Id$ - * - */ - -#include "common/system.h" -#include "common/config-manager.h" - -#include "cd_aeroplayer.h" - -AeroCDPlayer::AeroCDPlayer(OSystem *sys) { - _sys = sys; - StrCopy(gameP, ConfMan.getActiveDomainName().c_str()); -} - -bool AeroCDPlayer::init() { - aeroplayer_Startup(); - _isInitialized = aeroplayer_PlayerIsActive(); - - if (_isInitialized) - _volumeLimit = aeroplayer_GetMaxVolumeIndex(); - - return _isInitialized; -} - -void AeroCDPlayer::release() { - aeroplayer_Shutdown(); - - // self delete - delete this; -} - -UInt32 AeroCDPlayer::getStatus() { - return aeroplayer_GetPlaybackStatus(); -} - -UInt32 AeroCDPlayer::getPosition() { - return aeroplayer_GetPosition_msec(); -} - -UInt32 AeroCDPlayer::getDuration() { - return aeroplayer_GetDuration_msec(); -} - -void AeroCDPlayer::setPosition(UInt32 value) { - aeroplayer_Seek_abs_msec(value); -} - -void AeroCDPlayer::setVolume(int volume) { - _volumeLevel = volume; - aeroplayer_SetVolumeIndex((_volumeLimit * volume) / 100); -} - -bool AeroCDPlayer::poll() { - return - ( _pckLoops != 0 && - ( getPosition() < _pckTrackEndFrame && - getStatus() == AEROPLAYER_STATUS_PLAY - ) - ); -} - -void AeroCDPlayer::update() { - - // stop replay upon request of stopCD() - if (_pckStopTime != 0 && _sys->getMillis() >= _pckStopTime) { - forceStop(); - _pckLoops = 0; - _pckStopTime = 0; - _pckTrackEndFrame = 0; - return; - } - - // not fully played - if (getPosition() < _pckTrackEndFrame && getStatus() == AEROPLAYER_STATUS_PLAY) - return; - - aeroplayer_Pause(); -// _pckStopTime = _sys->getMillis(); - - // loop again ? - if (_pckLoops > 0) - _pckLoops--; - - // loop if needed - if (_pckLoops == 0) - forceStop(); - else { - //_pckStopTime = 0; - - if (_pckTrackStartFrame == 0 && _pckTrackDuration == 0) { - setPosition(0); - } else { - setPosition(_pckTrackStartFrame); - } - - aeroplayer_Play(); - _pckEndTime = _sys->getMillis() + _pckTrackDuration; - } -} - -void AeroCDPlayer::stop() { - _pckStopTime = _sys->getMillis(); - _pckLoops = 0; - return; -} - -void AeroCDPlayer::forceStop() { - if (getStatus() != AEROPLAYER_STATUS_STOP) - aeroplayer_PlayTrack(vfsInvalidVolRef, NULL); -} - -void AeroCDPlayer::play(int track, int num_loops, int start_frame, int duration) { - if (!num_loops && !start_frame) - return; - - Char fileP[100]; - static const Char *ext[] = { "mp3", "ogg" }; - -// if (duration > 0) -// duration += 5; - - _pckTrack = track; - _pckLoops = num_loops; - _pckTrackStartFrame = TO_MSECS(start_frame); - _pckTrackDuration = TO_MSECS(duration); - - StrPrintF(fileP, "/Palm/Programs/ScummVM/Audio/%s_%03ld.%s", gameP, (track + gVars->CD.firstTrack - 1), ext[gVars->CD.format]); - aeroplayer_Pause(); - aeroplayer_PlayTrack(gVars->VFS.volRefNum, fileP); - aeroplayer_Pause(); - - if (_pckTrackStartFrame == 0 && _pckTrackDuration == 0) { - _pckTrackDuration = getDuration(); - } else { - setPosition(_pckTrackStartFrame); - if (_pckTrackDuration == 0) - _pckTrackDuration = getDuration() - _pckTrackStartFrame; - } - - aeroplayer_Play(); - - _pckStopTime = 0; - _pckTrackEndFrame = _pckTrackStartFrame + _pckTrackDuration; - _pckEndTime = _sys->getMillis() + _pckTrackDuration; -} |