aboutsummaryrefslogtreecommitdiff
path: root/backends/dc/input.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backends/dc/input.cpp')
-rw-r--r--backends/dc/input.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/backends/dc/input.cpp b/backends/dc/input.cpp
index c12731fe01..9505f22983 100644
--- a/backends/dc/input.cpp
+++ b/backends/dc/input.cpp
@@ -140,6 +140,12 @@ int handleInput(struct mapledev *pad, int &mouse_x, int &mouse_y,
bool OSystem_Dreamcast::poll_event(Event *event)
{
unsigned int t = Timer();
+
+ if(_timer_active && ((int)(t-_timer_next_expiry))>=0) {
+ _timer_duration = _timer_callback(_timer_duration);
+ _timer_next_expiry = t+USEC_TO_TIMER(1000*_timer_duration);
+ }
+
if(((int)(t-_devpoll))<0)
return false;
_devpoll += USEC_TO_TIMER(17000);