summaryrefslogtreecommitdiff
path: root/code/fe310/eos/event.h
diff options
context:
space:
mode:
Diffstat (limited to 'code/fe310/eos/event.h')
-rw-r--r--code/fe310/eos/event.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/code/fe310/eos/event.h b/code/fe310/eos/event.h
index 21079b4..ce71c0b 100644
--- a/code/fe310/eos/event.h
+++ b/code/fe310/eos/event.h
@@ -1,9 +1,15 @@
#include <stdint.h>
-#define EOS_EVT_MASK_NET 0x80
-#define EOS_EVT_TIMER 0x01
-#define EOS_EVT_UI 0x02
+#define EOS_EVT_FLAG_WRAP 0x1
+#define EOS_EVT_NET 0x10
+#define EOS_EVT_TIMER 0x20
+#define EOS_EVT_AUDIO 0x30
+#define EOS_EVT_UI 0x40
+
+#define EOS_EVT_MASK 0xF0
+
+#define EOS_EVT_MAX_EVT 4
#define EOS_EVT_SIZE_Q 4
typedef void (*eos_evt_fptr_t) (unsigned char, unsigned char *, uint16_t);
@@ -11,6 +17,8 @@ typedef void (*eos_evt_fptr_t) (unsigned char, unsigned char *, uint16_t);
void eos_evtq_init(void);
int eos_evtq_push(unsigned char cmd, unsigned char *buffer, uint16_t len);
void eos_evtq_pop(unsigned char *cmd, unsigned char **buffer, uint16_t *len);
+void eos_evtq_bad_handler(unsigned char cmd, unsigned char *buffer, uint16_t len);
+void eos_evtq_handler_wrapper(unsigned char cmd, unsigned char *buffer, uint16_t len, uint16_t *flags_acq, uint16_t flag, eos_evt_fptr_t f);
void eos_evtq_handle(unsigned char cmd, unsigned char *buffer, uint16_t len);
void eos_evtq_loop(void);
-void eos_evtq_set_handler(unsigned char cmd, eos_evt_fptr_t handler); \ No newline at end of file
+void eos_evtq_set_handler(unsigned char cmd, eos_evt_fptr_t handler, uint8_t flags);