diff options
Diffstat (limited to 'backends/midi.h')
-rw-r--r-- | backends/midi.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/backends/midi.h b/backends/midi.h index dcee010..e2d6543 100644 --- a/backends/midi.h +++ b/backends/midi.h @@ -10,18 +10,28 @@ static int midi_handle(size_t num, managed_fd* fds); static int midi_start(size_t n, instance** inst); static int midi_shutdown(size_t n, instance** inst); +#define EPN_NRPN 8 +#define EPN_PARAMETER_HI 4 +#define EPN_PARAMETER_LO 2 +#define EPN_VALUE_HI 1 + typedef struct /*_midi_instance_data*/ { int port; char* read; char* write; + + uint8_t epn_tx_short; + uint16_t epn_control[16]; + uint16_t epn_value[16]; + uint8_t epn_status[16]; } midi_instance_data; typedef union { struct { - uint8_t pad[5]; + uint8_t pad[4]; uint8_t type; uint8_t channel; - uint8_t control; + uint16_t control; } fields; uint64_t label; } midi_channel_ident; |