aboutsummaryrefslogtreecommitdiff
path: root/board/simple_board.h
diff options
context:
space:
mode:
Diffstat (limited to 'board/simple_board.h')
-rw-r--r--board/simple_board.h28
1 files changed, 12 insertions, 16 deletions
diff --git a/board/simple_board.h b/board/simple_board.h
index f0997c7..1a264de 100644
--- a/board/simple_board.h
+++ b/board/simple_board.h
@@ -1,36 +1,32 @@
#include "board.h"
-static struct board_data board_data;
-
#define WAV_LEN(W) PREPROC_CONCAT(W,_len)
#define PREPROC_CONCAT(A, B) A ## B
-void board_on_down(void)
+void board_on_down(struct board_state *state)
{
+ (void) state;
#ifdef BOARD_DOWN_WAV
- board_data.sound_play(BOARD_DOWN_WAV, WAV_LEN(BOARD_DOWN_WAV));
+ state->sound_play(BOARD_DOWN_WAV, WAV_LEN(BOARD_DOWN_WAV));
#endif
}
-void board_on_up(void)
+void board_on_up(struct board_state *state)
{
+ (void) state;
#ifdef BOARD_UP_WAV
- board_data.sound_play(BOARD_UP_WAV, WAV_LEN(BOARD_UP_WAV));
+ state->sound_play(BOARD_UP_WAV, WAV_LEN(BOARD_UP_WAV));
#endif
}
-static struct board board = {
- .on_down = &board_on_down,
- .on_up = &board_on_up,
+void board_init(struct board_state *state)
+{
#ifdef BOARD_NAME
- .name = BOARD_NAME,
+ state->name = BOARD_NAME;
#else
- .name = "Generic Board",
+ state->name = "Generic Board";
#endif
-};
-struct board *board_init(struct board_data data)
-{
- board_data = data;
- return &board;
+ state->on_down = &board_on_down;
+ state->on_up = &board_on_up;
}