diff options
Diffstat (limited to 'drivers/staging/frontier/alphatrack.h')
-rw-r--r-- | drivers/staging/frontier/alphatrack.h | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/drivers/staging/frontier/alphatrack.h b/drivers/staging/frontier/alphatrack.h new file mode 100644 index 00000000000..35c90a90eb0 --- /dev/null +++ b/drivers/staging/frontier/alphatrack.h @@ -0,0 +1,92 @@ +#define show_set_bit(a) show_set_mbit(alphatrack,a) +#define show_set_cmd(a) show_set_mcmd(alphatrack,a) +#define show_set_int(a) show_set_mint(alphatrack,a) +#define show_set_char(a) show_set_mchar(alphatrack,a) +#define show_set_light(a) show_set_ebit(alphatrack,LightID,lights,a) +#define show_set_button(a) show_set_ebit(alphatrack,ButtonID,button,a) + +struct alphatrack_icmd { + unsigned char cmd[12]; +}; + +struct alphatrack_ocmd { + unsigned char cmd[8]; +}; + +enum LightID { + LIGHT_EQ = 0, + LIGHT_OUT, + LIGHT_F2, + LIGHT_SEND, + LIGHT_IN, + LIGHT_F1, + LIGHT_PAN, + LIGHT_UNDEF1, + LIGHT_UNDEF2, + LIGHT_SHIFT, + LIGHT_TRACKMUTE, + LIGHT_TRACKSOLO, + LIGHT_TRACKREC, + LIGHT_READ, + LIGHT_WRITE, + LIGHT_ANYSOLO, + LIGHT_AUTO, + LIGHT_F4, + LIGHT_RECORD, + LIGHT_WINDOW, + LIGHT_PLUGIN, + LIGHT_F3, + LIGHT_LOOP +}; + +#define BUTTONMASK_BATTERY 0x00004000 +#define BUTTONMASK_BACKLIGHT 0x00008000 +#define BUTTONMASK_FASTFORWARD 0x04000000 +#define BUTTONMASK_TRACKMUTE 0x00040000 +#define BUTTONMASK_TRACKSOLO 0x00800000 +#define BUTTONMASK_TRACKLEFT 0x80000000 +#define BUTTONMASK_RECORD 0x02000000 +#define BUTTONMASK_SHIFT 0x20000000 +#define BUTTONMASK_PUNCH 0x00800000 +#define BUTTONMASK_TRACKRIGHT 0x00020000 +#define BUTTONMASK_REWIND 0x01000000 +#define BUTTONMASK_STOP 0x10000000 +#define BUTTONMASK_LOOP 0x00010000 +#define BUTTONMASK_TRACKREC 0x00001000 +#define BUTTONMASK_PLAY 0x08000000 +#define BUTTONMASK_TOUCH1 0x00000008 +#define BUTTONMASK_TOUCH2 0x00000010 +#define BUTTONMASK_TOUCH3 0x00000020 + +#define BUTTONMASK_PRESS1 0x00000009 +#define BUTTONMASK_PRESS2 0x00008010 +#define BUTTONMASK_PRESS3 0x00002020 + +// last 3 bytes are the slider position +// 40 is the actual slider moving, the most sig bits, and 3 lsb + +#define BUTTONMASK_FLIP 0x40000000 +#define BUTTONMASK_F1 0x00100000 +#define BUTTONMASK_F2 0x00400000 +#define BUTTONMASK_F3 0x00200000 +#define BUTTONMASK_F4 0x00080000 +#define BUTTONMASK_PAN 0x00000200 +#define BUTTONMASK_SEND 0x00000800 +#define BUTTONMASK_EQ 0x00004000 +#define BUTTONMASK_PLUGIN 0x00000400 +#define BUTTONMASK_AUTO 0x00000100 + + +// #define BUTTONMASK_FOOTSWITCH FIXME + +// Lookup. name. midi out. midi in. + +struct buttonmap_t { + u32 mask; + short midi_in; + short midi_out; + char *name; +// void (*function) (buttonmap_t *); + void (*function) (void); +}; + |