diff options
| author | Selene ToyKeeper | 2018-08-22 23:47:46 -0600 |
|---|---|---|
| committer | Selene ToyKeeper | 2018-08-22 23:47:46 -0600 |
| commit | e417f82a1f4cb5e738cd1cf71c81ab73d84b1902 (patch) | |
| tree | 750f9763d723a443fcb008f5fa925e309ab1e33e /spaghetti-monster/fsm-events.c | |
| parent | merged from trunk (diff) | |
| parent | merged in zeroflow's fixes and my related changes: (diff) | |
| download | anduril-e417f82a1f4cb5e738cd1cf71c81ab73d84b1902.tar.gz anduril-e417f82a1f4cb5e738cd1cf71c81ab73d84b1902.tar.bz2 anduril-e417f82a1f4cb5e738cd1cf71c81ab73d84b1902.zip | |
merged trunk, including zeroflow's fixes and my related changes
Diffstat (limited to 'spaghetti-monster/fsm-events.c')
| -rw-r--r-- | spaghetti-monster/fsm-events.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/spaghetti-monster/fsm-events.c b/spaghetti-monster/fsm-events.c index b8e9018..aa5c3d6 100644 --- a/spaghetti-monster/fsm-events.c +++ b/spaghetti-monster/fsm-events.c @@ -39,6 +39,12 @@ uint8_t compare_event_sequences(uint8_t *a, const uint8_t *b) { void empty_event_sequence() { for(uint8_t i=0; i<EV_MAX_LEN; i++) current_event[i] = 0; + // when the user completes an input sequence, interrupt any running timers + // to cancel any delays currently in progress + // This eliminates a whole bunch of extra code: + // before: if (! nice_delay_ms(ms)) {break;} + // after: nice_delay_ms(ms); + interrupt_nice_delays(); } uint8_t push_event(uint8_t ev_type) { @@ -156,7 +162,7 @@ uint8_t nice_delay_ms(uint16_t ms) { process_emissions(); if ((nice_delay_interrupt) || (old_state != current_state)) { - nice_delay_interrupt = 0; + //nice_delay_interrupt = 0; return 0; // state changed; abort } } |
