1
2
3
4
5
6
7enum E_In84{
8 eFader0 = 0,
9 eFader1,
10 eFader2,
11 eFader3,
12 eFader4,
13 eFader5,
14 eFader6,
15 eFader7,
16 eFaderM,
17 eTransport,
18 eModifier = 10,
19 eFilterSelect,
20 eSelect,
21 eMute,
22
23 eSwitch = 15,
24 eWheelGain,
25 eWheelFreq,
26 eWheelQ,
27 eWheelPan,
28 eWheel = 20
29};
30
31#define T_RECORD 1
32#define T_PLAY 2
33#define T_STOP 4
34#define T_F_FWD 8
35#define T_REW 0x10
36#define T_SOLO 0x20
37#define T_REC 0x40
38#define T_NULL 0x80
39
40
41struct us428_ctls {
42 unsigned char Fader[9];
43 unsigned char Transport;
44 unsigned char Modifier;
45 unsigned char FilterSelect;
46 unsigned char Select;
47 unsigned char Mute;
48 unsigned char UNKNOWN;
49 unsigned char Switch;
50 unsigned char Wheel[5];
51};
52
53struct us428_setByte {
54 unsigned char Offset,
55 Value;
56};
57
58enum {
59 eLT_Volume = 0,
60 eLT_Light
61};
62
63struct usX2Y_volume {
64 unsigned char Channel,
65 LH,
66 LL,
67 RH,
68 RL;
69};
70
71struct us428_lights {
72 struct us428_setByte Light[7];
73};
74
75struct us428_p4out {
76 char type;
77 union {
78 struct usX2Y_volume vol;
79 struct us428_lights lights;
80 } val;
81};
82
83#define N_us428_ctl_BUFS 16
84#define N_us428_p4out_BUFS 16
85struct us428ctls_sharedmem{
86 struct us428_ctls CtlSnapShot[N_us428_ctl_BUFS];
87 int CtlSnapShotDiffersAt[N_us428_ctl_BUFS];
88 int CtlSnapShotLast, CtlSnapShotRed;
89 struct us428_p4out p4out[N_us428_p4out_BUFS];
90 int p4outLast, p4outSent;
91};
92