From 6b41b5df92128c8810cbe14fd56258d90c3bb2b2 Mon Sep 17 00:00:00 2001 From: Selene ToyKeeper Date: Sun, 11 Nov 2018 06:09:07 -0700 Subject: Several fixes... - Made momentary+lockout modes smaller and work better. - Fixed buggy timing on hold events; made ticks_since_last_event reset when it should. - Reduced ROM size by caching volatile ticks_since_last_event sometimes. - Swapped what the top Event bit means, because it makes event handlers easier to write. - Made the maximum click event keep triggering if user keeps pressing, instead of dropping everything after the limit. --- spaghetti-monster/fsm-events.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'spaghetti-monster/fsm-events.h') diff --git a/spaghetti-monster/fsm-events.h b/spaghetti-monster/fsm-events.h index d838800..45c95ee 100644 --- a/spaghetti-monster/fsm-events.h +++ b/spaghetti-monster/fsm-events.h @@ -63,8 +63,8 @@ static volatile uint16_t ticks_since_last_event = 0; */ // event masks / bits -#define B_SYSTEM 0b10000000 -#define B_CLICK 0b00000000 +#define B_SYSTEM 0b00000000 +#define B_CLICK 0b10000000 #define B_TIMEOUT 0b01000000 #define B_HOLD 0b00100000 #define B_PRESS 0b00010000 @@ -219,7 +219,7 @@ void process_emissions(); //#define emit_now emit uint8_t emit_now(Event event, uint16_t arg); void emit(Event event, uint16_t arg); -#define emit_current_event(arg) emit(current_event, arg) +void emit_current_event(uint16_t arg); uint8_t nice_delay_ms(uint16_t ms); //uint8_t nice_delay_4ms(uint8_t ms); -- cgit v1.2.3