summaryrefslogtreecommitdiff
path: root/shared-module/gamepad/GamePad.h
diff options
context:
space:
mode:
authorRadomir Dopieralski <openstack@sheep.art.pl>2019-04-10 20:42:21 +0200
committerRadomir Dopieralski <openstack@sheep.art.pl>2019-04-12 20:43:29 +0200
commit6ff4e0ecb03f297d327c9c6fd3a52a7ad3a05c47 (patch)
tree822bb25bf3d7e1a026edaf72d1af885415bc8841 /shared-module/gamepad/GamePad.h
parent29615dae06c1846825b8a26fbfb834fea51687f5 (diff)
Add GamePadShift for handling shift-register-based buttons
Diffstat (limited to 'shared-module/gamepad/GamePad.h')
-rw-r--r--shared-module/gamepad/GamePad.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/shared-module/gamepad/GamePad.h b/shared-module/gamepad/GamePad.h
index 9fd5c9626..9bc5a711c 100644
--- a/shared-module/gamepad/GamePad.h
+++ b/shared-module/gamepad/GamePad.h
@@ -37,8 +37,15 @@ typedef struct {
volatile uint8_t last;
volatile uint8_t pressed;
uint8_t pulls;
+ uint8_t kind;
} gamepad_obj_t;
-void gamepad_init(size_t n_pins, const mp_obj_t* pins);
+#define GAMEPAD_KIND_PINS 0
+#define GAMEPAD_KIND_SHIFT 1
+
+void gamepad_init_pins(size_t n_pins, const mp_obj_t* pins);
+void gamepad_init_shift(digitalio_digitalinout_obj_t *data_pin,
+ digitalio_digitalinout_obj_t *clock_pin,
+ digitalio_digitalinout_obj_t *latch_pin);
#endif // MICROPY_INCLUDED_GAMEPAD_GAMEPAD_H