5 * th9x - http://code.google.com/p/th9x
6 * er9x - http://code.google.com/p/er9x
7 * gruvin9x - http://code.google.com/p/gruvin9x
9 * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
26 #define TMR_NEGATIVE 2
30 typedef int32_t tmrval_t
;
31 typedef uint32_t tmrstart_t
;
32 typedef int16_t tmrmode_t
;
33 #define TIMER_MAX (0xffffff/2)
35 typedef int16_t tmrval_t
;
36 typedef uint16_t tmrstart_t
;
37 typedef int8_t tmrmode_t
;
38 #define TIMER_MAX (0xffff/2)
41 #define TIMER_MIN (tmrval_t(-TIMER_MAX-1))
51 extern TimerState timersStates
[TIMERS
];
53 void timerReset(uint8_t idx
);
56 void timerSet(int idx
, int val
);
57 #endif // #if defined(CPUARM)
59 #if defined(CPUARM) || defined(CPUM2560)
64 #define restoreTimers()
67 void evalTimers(int16_t throttle
, uint8_t tick10ms
);