xref: /aosp_15_r20/external/sonivox/arm-wt-22k/lib_src/dls2.h (revision f81fb7c475c4b71ff83bdcc517de2a8c174e4e5c)
1*f81fb7c4SAndroid Build Coastguard Worker /*
2*f81fb7c4SAndroid Build Coastguard Worker 
3*f81fb7c4SAndroid Build Coastguard Worker     dls2.h
4*f81fb7c4SAndroid Build Coastguard Worker 
5*f81fb7c4SAndroid Build Coastguard Worker     Description:
6*f81fb7c4SAndroid Build Coastguard Worker 
7*f81fb7c4SAndroid Build Coastguard Worker     Interface defines and structures for the DLS2 extensions of DLS.
8*f81fb7c4SAndroid Build Coastguard Worker 
9*f81fb7c4SAndroid Build Coastguard Worker 
10*f81fb7c4SAndroid Build Coastguard Worker      Written by Microsoft 1998.  Released for public use.
11*f81fb7c4SAndroid Build Coastguard Worker 
12*f81fb7c4SAndroid Build Coastguard Worker */
13*f81fb7c4SAndroid Build Coastguard Worker 
14*f81fb7c4SAndroid Build Coastguard Worker #ifndef _INC_DLS2
15*f81fb7c4SAndroid Build Coastguard Worker #define _INC_DLS2
16*f81fb7c4SAndroid Build Coastguard Worker 
17*f81fb7c4SAndroid Build Coastguard Worker /*
18*f81fb7c4SAndroid Build Coastguard Worker      FOURCC's used in the DLS2 file, in addition to DLS1 chunks
19*f81fb7c4SAndroid Build Coastguard Worker */
20*f81fb7c4SAndroid Build Coastguard Worker 
21*f81fb7c4SAndroid Build Coastguard Worker #define FOURCC_RGN2  mmioFOURCC('r','g','n','2')
22*f81fb7c4SAndroid Build Coastguard Worker #define FOURCC_LAR2  mmioFOURCC('l','a','r','2')
23*f81fb7c4SAndroid Build Coastguard Worker #define FOURCC_ART2  mmioFOURCC('a','r','t','2')
24*f81fb7c4SAndroid Build Coastguard Worker #define FOURCC_CDL   mmioFOURCC('c','d','l',' ')
25*f81fb7c4SAndroid Build Coastguard Worker #define FOURCC_DLID  mmioFOURCC('d','l','i','d')
26*f81fb7c4SAndroid Build Coastguard Worker 
27*f81fb7c4SAndroid Build Coastguard Worker /*
28*f81fb7c4SAndroid Build Coastguard Worker      Articulation connection graph definitions. These are in addition to
29*f81fb7c4SAndroid Build Coastguard Worker      the definitions in the DLS1 header.
30*f81fb7c4SAndroid Build Coastguard Worker */
31*f81fb7c4SAndroid Build Coastguard Worker 
32*f81fb7c4SAndroid Build Coastguard Worker /* Generic Sources (in addition to DLS1 sources. */
33*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_POLYPRESSURE       0x0007  /* Polyphonic Pressure */
34*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_CHANNELPRESSURE        0x0008  /* Channel Pressure */
35*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_VIBRATO            0x0009  /* Vibrato LFO */
36*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_MONOPRESSURE           0x000a  /* MIDI Mono pressure */
37*f81fb7c4SAndroid Build Coastguard Worker 
38*f81fb7c4SAndroid Build Coastguard Worker 
39*f81fb7c4SAndroid Build Coastguard Worker /* Midi Controllers */
40*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_CC91           0x00db  /* Reverb Send */
41*f81fb7c4SAndroid Build Coastguard Worker #define CONN_SRC_CC93           0x00dd  /* Chorus Send */
42*f81fb7c4SAndroid Build Coastguard Worker 
43*f81fb7c4SAndroid Build Coastguard Worker 
44*f81fb7c4SAndroid Build Coastguard Worker /* Generic Destinations */
45*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_GAIN           0x0001  /* Same as CONN_DST_ ATTENUATION, but more appropriate terminology. */
46*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_KEYNUMBER 0x0005  /* Key Number Generator */
47*f81fb7c4SAndroid Build Coastguard Worker 
48*f81fb7c4SAndroid Build Coastguard Worker /* Audio Channel Output Destinations */
49*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_LEFT           0x0010  /* Left Channel Send */
50*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_RIGHT          0x0011  /* Right Channel Send */
51*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_CENTER         0x0012  /* Center Channel Send */
52*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_LEFTREAR           0x0013  /* Left Rear Channel Send */
53*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_RIGHTREAR          0x0014  /* Right Rear Channel Send */
54*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_LFE_CHANNEL        0x0015  /* LFE Channel Send */
55*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_CHORUS         0x0080  /* Chorus Send */
56*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_REVERB         0x0081  /* Reverb Send */
57*f81fb7c4SAndroid Build Coastguard Worker 
58*f81fb7c4SAndroid Build Coastguard Worker /* Vibrato LFO Destinations */
59*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_VIB_FREQUENCY      0x0114  /* Vibrato Frequency */
60*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_VIB_STARTDELAY     0x0115  /* Vibrato Start Delay */
61*f81fb7c4SAndroid Build Coastguard Worker 
62*f81fb7c4SAndroid Build Coastguard Worker /* EG1 Destinations */
63*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_EG1_DELAYTIME      0x020B  /* EG1 Delay Time */
64*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_EG1_HOLDTIME       0x020C  /* EG1 Hold Time */
65*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_EG1_SHUTDOWNTIME       0x020D  /* EG1 Shutdown Time */
66*f81fb7c4SAndroid Build Coastguard Worker 
67*f81fb7c4SAndroid Build Coastguard Worker 
68*f81fb7c4SAndroid Build Coastguard Worker /*  EG2 Destinations */
69*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_EG2_DELAYTIME      0x030F  /* EG2 Delay Time */
70*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_EG2_HOLDTIME       0x0310  /* EG2 Hold Time */
71*f81fb7c4SAndroid Build Coastguard Worker 
72*f81fb7c4SAndroid Build Coastguard Worker 
73*f81fb7c4SAndroid Build Coastguard Worker /* Filter Destinations */
74*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_FILTER_CUTOFF      0x0500  /* Filter Cutoff Frequency */
75*f81fb7c4SAndroid Build Coastguard Worker #define CONN_DST_FILTER_Q           0x0501  /* Filter Resonance */
76*f81fb7c4SAndroid Build Coastguard Worker 
77*f81fb7c4SAndroid Build Coastguard Worker 
78*f81fb7c4SAndroid Build Coastguard Worker /* Transforms */
79*f81fb7c4SAndroid Build Coastguard Worker #define CONN_TRN_CONVEX         0x0002  /* Convex Transform */
80*f81fb7c4SAndroid Build Coastguard Worker #define CONN_TRN_SWITCH         0x0003  /* Switch Transform */
81*f81fb7c4SAndroid Build Coastguard Worker 
82*f81fb7c4SAndroid Build Coastguard Worker 
83*f81fb7c4SAndroid Build Coastguard Worker /*  Conditional chunk operators */
84*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_AND            0x0001  /* X = X & Y */
85*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_OR         0x0002  /* X = X | Y */
86*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_XOR            0x0003  /* X = X ^ Y */
87*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_ADD            0x0004  /* X = X + Y */
88*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_SUBTRACT       0x0005  /* X = X - Y */
89*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_MULTIPLY       0x0006  /* X = X * Y */
90*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_DIVIDE     0x0007  /* X = X / Y */
91*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_LOGICAL_AND    0x0008  /* X = X && Y */
92*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_LOGICAL_OR     0x0009  /* X = X || Y */
93*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_LT         0x000A  /* X = (X < Y) */
94*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_LE         0x000B  /* X = (X <= Y) */
95*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_GT         0x000C  /* X = (X > Y) */
96*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_GE         0x000D  /* X = (X >= Y) */
97*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_EQ         0x000E  /* X = (X == Y) */
98*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_NOT            0x000F  /* X = !X */
99*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_CONST      0x0010  /* 32-bit constant */
100*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_QUERY      0x0011  /* 32-bit value returned from query */
101*f81fb7c4SAndroid Build Coastguard Worker  #define DLS_CDL_QUERYSUPPORTED 0x0012  /* 32-bit value returned from query */
102*f81fb7c4SAndroid Build Coastguard Worker 
103*f81fb7c4SAndroid Build Coastguard Worker /*
104*f81fb7c4SAndroid Build Coastguard Worker   Loop and release
105*f81fb7c4SAndroid Build Coastguard Worker */
106*f81fb7c4SAndroid Build Coastguard Worker 
107*f81fb7c4SAndroid Build Coastguard Worker #define WLOOP_TYPE_RELEASE 1
108*f81fb7c4SAndroid Build Coastguard Worker 
109*f81fb7c4SAndroid Build Coastguard Worker /*
110*f81fb7c4SAndroid Build Coastguard Worker   DLSID queries for <cdl-ck>
111*f81fb7c4SAndroid Build Coastguard Worker */
112*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_GMInHardware, 0x178f2f24, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12);
113*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_GSInHardware, 0x178f2f25, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12);
114*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_XGInHardware, 0x178f2f26, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12);
115*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_SupportsDLS1, 0x178f2f27, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12);
116*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_SupportsDLS2, 0xf14599e5, 0x4689, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6);
117*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_SampleMemorySize, 0x178f2f28, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12);
118*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_ManufacturersID, 0xb03e1181, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8);
119*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_ProductID, 0xb03e1182, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8);
120*f81fb7c4SAndroid Build Coastguard Worker DEFINE_DLSID(DLSID_SamplePlaybackRate, 0x2a91f713, 0xa4bf, 0x11d2, 0xbb, 0xdf, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8);
121*f81fb7c4SAndroid Build Coastguard Worker #endif  /* _INC_DLS2 */
122*f81fb7c4SAndroid Build Coastguard Worker 
123