aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/psp/osys_psp.cpp
diff options
context:
space:
mode:
authorYotam Barnoy2010-05-23 11:48:21 +0000
committerYotam Barnoy2010-05-23 11:48:21 +0000
commit20c654f63b29a5eb120e5d7d72d06080995a463a (patch)
tree92d12c1b5517f294912690cb0afdf3c69c2de983 /backends/platform/psp/osys_psp.cpp
parent1b294306dd49fb8b97f0e74d94b6c4a89403191c (diff)
downloadscummvm-rg350-20c654f63b29a5eb120e5d7d72d06080995a463a.tar.gz
scummvm-rg350-20c654f63b29a5eb120e5d7d72d06080995a463a.tar.bz2
scummvm-rg350-20c654f63b29a5eb120e5d7d72d06080995a463a.zip
PSP: replaced SDL's timer with much simpler and more efficient PspTimer class
svn-id: r49155
Diffstat (limited to 'backends/platform/psp/osys_psp.cpp')
-rw-r--r--backends/platform/psp/osys_psp.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/backends/platform/psp/osys_psp.cpp b/backends/platform/psp/osys_psp.cpp
index 5f51135a9a..f33081abbc 100644
--- a/backends/platform/psp/osys_psp.cpp
+++ b/backends/platform/psp/osys_psp.cpp
@@ -60,9 +60,9 @@ static int timer_handler(int t) {
void OSystem_PSP::initSDL() {
#ifdef USE_PSP_AUDIO
- SDL_Init(SDL_INIT_TIMER);
+ SDL_Init(0);
#else
- SDL_Init(SDL_INIT_AUDIO | SDL_INIT_TIMER);
+ SDL_Init(SDL_INIT_AUDIO);
#endif
}
@@ -90,7 +90,7 @@ void OSystem_PSP::initBackend() {
_inputHandler.init();
initSDL();
-
+
_savefile = new PSPSaveFileManager;
_timer = new DefaultTimerManager();
@@ -308,7 +308,10 @@ void OSystem_PSP::delayMillis(uint msecs) {
}
void OSystem_PSP::setTimerCallback(TimerProc callback, int interval) {
- SDL_SetTimer(interval, (SDL_TimerCallback)callback);
+ //SDL_SetTimer(interval, (SDL_TimerCallback)callback);
+ _pspTimer.setCallback((PspTimer::CallbackFunc)callback);
+ _pspTimer.setIntervalMs(interval);
+ _pspTimer.start();
}
OSystem::MutexRef OSystem_PSP::createMutex(void) {