fractal-midi 0.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/LICENSE +200 -0
  2. package/NOTICE +28 -0
  3. package/README.md +147 -0
  4. package/dist/am4/applicability.d.ts +61 -0
  5. package/dist/am4/applicability.d.ts.map +1 -0
  6. package/dist/am4/applicability.js +285 -0
  7. package/dist/am4/blockTypes.d.ts +43 -0
  8. package/dist/am4/blockTypes.d.ts.map +1 -0
  9. package/dist/am4/blockTypes.js +48 -0
  10. package/dist/am4/cacheEnums.d.ts +46 -0
  11. package/dist/am4/cacheEnums.d.ts.map +1 -0
  12. package/dist/am4/cacheEnums.js +734 -0
  13. package/dist/am4/cacheParams.d.ts +3533 -0
  14. package/dist/am4/cacheParams.d.ts.map +1 -0
  15. package/dist/am4/cacheParams.js +1996 -0
  16. package/dist/am4/editorControlLabels.d.ts +45 -0
  17. package/dist/am4/editorControlLabels.d.ts.map +1 -0
  18. package/dist/am4/editorControlLabels.js +15894 -0
  19. package/dist/am4/index.d.ts +28 -0
  20. package/dist/am4/index.d.ts.map +1 -0
  21. package/dist/am4/index.js +31 -0
  22. package/dist/am4/ir/preset.d.ts +24 -0
  23. package/dist/am4/ir/preset.d.ts.map +1 -0
  24. package/dist/am4/ir/preset.js +12 -0
  25. package/dist/am4/ir/transpile.d.ts +9 -0
  26. package/dist/am4/ir/transpile.d.ts.map +1 -0
  27. package/dist/am4/ir/transpile.js +19 -0
  28. package/dist/am4/locations.d.ts +32 -0
  29. package/dist/am4/locations.d.ts.map +1 -0
  30. package/dist/am4/locations.js +58 -0
  31. package/dist/am4/paramNames.d.ts +55 -0
  32. package/dist/am4/paramNames.d.ts.map +1 -0
  33. package/dist/am4/paramNames.js +863 -0
  34. package/dist/am4/paramNamesGenerated.d.ts +41 -0
  35. package/dist/am4/paramNamesGenerated.d.ts.map +1 -0
  36. package/dist/am4/paramNamesGenerated.js +183 -0
  37. package/dist/am4/parameterBridge.d.ts +46 -0
  38. package/dist/am4/parameterBridge.d.ts.map +1 -0
  39. package/dist/am4/parameterBridge.js +300 -0
  40. package/dist/am4/params.d.ts +9577 -0
  41. package/dist/am4/params.d.ts.map +1 -0
  42. package/dist/am4/params.js +4537 -0
  43. package/dist/am4/setParam.d.ts +414 -0
  44. package/dist/am4/setParam.d.ts.map +1 -0
  45. package/dist/am4/setParam.js +819 -0
  46. package/dist/am4/shared/paramHelpers.d.ts +55 -0
  47. package/dist/am4/shared/paramHelpers.d.ts.map +1 -0
  48. package/dist/am4/shared/paramHelpers.js +146 -0
  49. package/dist/am4/symbolicIds.d.ts +11 -0
  50. package/dist/am4/symbolicIds.d.ts.map +1 -0
  51. package/dist/am4/symbolicIds.js +587 -0
  52. package/dist/am4/typeApplicability.d.ts +39 -0
  53. package/dist/am4/typeApplicability.d.ts.map +1 -0
  54. package/dist/am4/typeApplicability.js +466 -0
  55. package/dist/am4/variantResolverTables.d.ts +51 -0
  56. package/dist/am4/variantResolverTables.d.ts.map +1 -0
  57. package/dist/am4/variantResolverTables.js +3128 -0
  58. package/dist/axe-fx-ii/blockTypes.d.ts +45 -0
  59. package/dist/axe-fx-ii/blockTypes.d.ts.map +1 -0
  60. package/dist/axe-fx-ii/blockTypes.js +116 -0
  61. package/dist/axe-fx-ii/index.d.ts +5 -0
  62. package/dist/axe-fx-ii/index.d.ts.map +1 -0
  63. package/dist/axe-fx-ii/index.js +18 -0
  64. package/dist/axe-fx-ii/paramAliases.d.ts +54 -0
  65. package/dist/axe-fx-ii/paramAliases.d.ts.map +1 -0
  66. package/dist/axe-fx-ii/paramAliases.js +146 -0
  67. package/dist/axe-fx-ii/params.d.ts +11502 -0
  68. package/dist/axe-fx-ii/params.d.ts.map +1 -0
  69. package/dist/axe-fx-ii/params.js +2847 -0
  70. package/dist/axe-fx-ii/setParam.d.ts +560 -0
  71. package/dist/axe-fx-ii/setParam.d.ts.map +1 -0
  72. package/dist/axe-fx-ii/setParam.js +888 -0
  73. package/dist/axe-fx-iii/blockTypes.d.ts +87 -0
  74. package/dist/axe-fx-iii/blockTypes.d.ts.map +1 -0
  75. package/dist/axe-fx-iii/blockTypes.js +156 -0
  76. package/dist/axe-fx-iii/enumOverlay.d.ts +73 -0
  77. package/dist/axe-fx-iii/enumOverlay.d.ts.map +1 -0
  78. package/dist/axe-fx-iii/enumOverlay.js +236 -0
  79. package/dist/axe-fx-iii/index.d.ts +9 -0
  80. package/dist/axe-fx-iii/index.d.ts.map +1 -0
  81. package/dist/axe-fx-iii/index.js +20 -0
  82. package/dist/axe-fx-iii/params.d.ts +179 -0
  83. package/dist/axe-fx-iii/params.d.ts.map +1 -0
  84. package/dist/axe-fx-iii/params.js +6913 -0
  85. package/dist/axe-fx-iii/setParam.d.ts +460 -0
  86. package/dist/axe-fx-iii/setParam.d.ts.map +1 -0
  87. package/dist/axe-fx-iii/setParam.js +910 -0
  88. package/dist/index.d.ts +2 -0
  89. package/dist/index.d.ts.map +1 -0
  90. package/dist/index.js +12 -0
  91. package/dist/shared/checksum.d.ts +10 -0
  92. package/dist/shared/checksum.d.ts.map +1 -0
  93. package/dist/shared/checksum.js +14 -0
  94. package/dist/shared/device.d.ts +195 -0
  95. package/dist/shared/device.d.ts.map +1 -0
  96. package/dist/shared/device.js +27 -0
  97. package/dist/shared/index.d.ts +8 -0
  98. package/dist/shared/index.d.ts.map +1 -0
  99. package/dist/shared/index.js +11 -0
  100. package/dist/shared/lineage/amp-lineage.json +8313 -0
  101. package/dist/shared/lineage/axefx2-amp-lineage.json +5871 -0
  102. package/dist/shared/lineage/axefx2-delay-lineage.json +226 -0
  103. package/dist/shared/lineage/axefx2-drive-lineage.json +575 -0
  104. package/dist/shared/lineage/axefx2-reverb-lineage.json +467 -0
  105. package/dist/shared/lineage/cab-lineage.json +10777 -0
  106. package/dist/shared/lineage/chorus-lineage.json +173 -0
  107. package/dist/shared/lineage/compressor-lineage.json +338 -0
  108. package/dist/shared/lineage/delay-lineage.json +313 -0
  109. package/dist/shared/lineage/drive-lineage.json +1844 -0
  110. package/dist/shared/lineage/flanger-lineage.json +313 -0
  111. package/dist/shared/lineage/phaser-lineage.json +208 -0
  112. package/dist/shared/lineage/reverb-lineage.json +793 -0
  113. package/dist/shared/lineage/wah-lineage.json +117 -0
  114. package/dist/shared/lineageLookup.d.ts +69 -0
  115. package/dist/shared/lineageLookup.d.ts.map +1 -0
  116. package/dist/shared/lineageLookup.js +196 -0
  117. package/dist/shared/packValue.d.ts +40 -0
  118. package/dist/shared/packValue.d.ts.map +1 -0
  119. package/dist/shared/packValue.js +105 -0
  120. package/dist/shared/types.d.ts +23 -0
  121. package/dist/shared/types.d.ts.map +1 -0
  122. package/dist/shared/types.js +9 -0
  123. package/package.json +75 -0
@@ -0,0 +1,587 @@
1
+ /**
2
+ * Per-block symbolic IDs harvested from AM4-Edit.exe at offset
3
+ * ~0x611018+ (Session 46 cont, 2026-05-03). These are AM4-Edit's
4
+ * own internal parameter identifiers (e.g. DISTORT_BRIGHTCAP for
5
+ * the amp block's Bright Cap knob). Provided as agent context for
6
+ * params not yet covered by paramNames.ts hand-curated entries.
7
+ *
8
+ * AUTO-GENERATED by scripts/extract-symbolic-ids.ts — do not hand-edit.
9
+ */
10
+ export const SYMBOLIC_IDS_BY_BLOCK = {
11
+ amp: [
12
+ 'DISTORT_DRIVE',
13
+ 'DISTORT_BASS',
14
+ 'DISTORT_TYPE',
15
+ 'DISTORT_MASTER',
16
+ 'DISTORT_HPFREQ',
17
+ 'DISTORT_MID',
18
+ 'DISTORT_TREBLE',
19
+ 'DISTORT_XFLEAKAGE',
20
+ 'DISTORT_BRIGHTCAP',
21
+ 'DISTORT_LPFREQ',
22
+ 'DISTORT_TONEFREQ',
23
+ 'DISTORT_EXCURSIONTIME',
24
+ 'DISTORT_RECOVERYTIME',
25
+ 'DISTORT_EQ8',
26
+ 'DISTORT_BIASEXCURSION',
27
+ 'DISTORT_TUBETYPE',
28
+ 'DISTORT_PRETUBETYPE',
29
+ 'DISTORT_FEEDFWDFREQ2',
30
+ 'DISTORT_FEEDFWDFREQ1',
31
+ 'DISTORT_INEQFREQ',
32
+ 'DISTORT_INEQGAIN',
33
+ 'DISTORT_CLARITY',
34
+ 'DISTORT_INEQQ',
35
+ 'DISTORT_THRESHOLD',
36
+ 'DISTORT_MVTRIM',
37
+ 'DISTORT_DRIVE2',
38
+ 'DISTORT_COMPRESSION',
39
+ 'DISTORT_HARDNESS2',
40
+ 'DISTORT_MVPOSITION',
41
+ 'DISTORT_XDRIVE',
42
+ 'DISTORT_TRIM',
43
+ 'DISTORT_SCREENFREQ',
44
+ 'DISTORT_SCREENQ',
45
+ 'DISTORT_SPKRDRIVE',
46
+ 'DISTORT_XFMATCH',
47
+ 'DISTORT_EQ2',
48
+ 'DISTORT_EQ3',
49
+ 'DISTORT_SATSWITCH',
50
+ 'DISTORT_EQ1',
51
+ 'DISTORT_EQ6',
52
+ 'DISTORT_EQ7',
53
+ 'DISTORT_EQ4',
54
+ 'DISTORT_EQ5',
55
+ 'DISTORT_WSHPF',
56
+ 'DISTORT_CFCLIP',
57
+ 'DISTORT_DRIVETYPE',
58
+ 'DISTORT_MVCAP',
59
+ 'DISTORT_BIAS',
60
+ 'DISTORT_FBTYPE',
61
+ 'DISTORT_TONETYPE',
62
+ 'DISTORT_TIMECONST',
63
+ 'DISTORT_BOOST',
64
+ 'DISTORT_SPKRLFQ',
65
+ 'DISTORT_PI_RATIO',
66
+ 'DISTORT_BRIGHT',
67
+ 'DISTORT_SPKRHFGAIN',
68
+ 'DISTORT_CUT',
69
+ 'DISTORT_OFFSET2',
70
+ 'DISTORT_SPKRHFREQ',
71
+ 'DISTORT_XFLPF',
72
+ 'DISTORT_TONELOC',
73
+ 'DISTORT_WSLPF',
74
+ 'DISTORT_XFHPF',
75
+ 'DISTORT_OFFSET1',
76
+ 'DISTORT_CLIPTYPE2',
77
+ 'DISTORT_INPUTSELECT',
78
+ 'DISTORT_DEPTH',
79
+ 'DISTORT_BETA',
80
+ 'DISTORT_PRESFREQ',
81
+ 'DISTORT_SUPPLYSAG',
82
+ 'DISTORT_PRESENCE',
83
+ 'DISTORT_BYPASS',
84
+ 'DISTORT_DEPTHFREQ',
85
+ 'DISTORT_SPKRLFREQ',
86
+ 'DISTORT_SPKRLFGAIN',
87
+ 'DISTORT_SPKRMODEL',
88
+ 'DISTORT_CABRESONANCE',
89
+ 'DISTORT_EQONOFF',
90
+ 'DISTORT_SPKRDCR',
91
+ 'DISTORT_BIASX',
92
+ 'DISTORT_PAHICUT',
93
+ 'DISTORT_VPLATEMON',
94
+ 'DISTORT_PREPRESENCE',
95
+ 'DISTORT_SPKRTHUMP',
96
+ 'DISTORT_PLATEDIODE',
97
+ 'DISTORT_PAONOFF',
98
+ 'DISTORT_SPKRBREAKUP',
99
+ 'DISTORT_NFBCOMP',
100
+ 'DISTORT_MODE_1',
101
+ 'DISTORT_GLOBALMASTER',
102
+ 'DISTORT_AUTO_SPKR_Z',
103
+ 'DISTORT_TRIODE1RATIO',
104
+ 'DISTORT_CFHARDNESS',
105
+ 'DISTORT_EQPOSITION',
106
+ 'DISTORT_PRECOMPTYPE',
107
+ 'DISTORT_MDTIME',
108
+ 'DISTORT_RESOLUTION',
109
+ 'DISTORT_PIEXCURSION',
110
+ 'DISTORT_MOTORDRIVE',
111
+ 'DISTORT_MDMON',
112
+ 'DISTORT_INDYNMON',
113
+ 'DISTORT_VCCMON',
114
+ 'DISTORT_GAINMON',
115
+ 'DISTORT_OUTPUTTYPE',
116
+ 'DISTORT_SPKRDYNAMICS',
117
+ 'DISTORT_BOOSTLVL',
118
+ 'DISTORT_BOOSTTYPE',
119
+ 'DISTORT_PRESAG',
120
+ 'DISTORT_HITREBLE',
121
+ 'DISTORT_CBTIME',
122
+ 'DISTORT_DYNIMP',
123
+ 'DISTORT_SPKRHFQ',
124
+ 'DISTORT_VARIAC',
125
+ 'DISTORT_PAOFFSET',
126
+ 'DISTORT_INDYNAMICS',
127
+ 'DISTORT_PRESSHIFT',
128
+ 'DISTORT_SATDRIVE',
129
+ 'DISTORT_INEQTYPE',
130
+ 'DISTORT_GRIDHARDNESS',
131
+ 'DISTORT_TRIODE2RECTIME',
132
+ 'DISTORT_COMPTYPE',
133
+ 'DISTORT_TRIODE2RATIO',
134
+ 'DISTORT_TRIODE2EXTIME',
135
+ 'DISTORT_CFTHRESH',
136
+ 'DISTORT_CFGRID',
137
+ 'DISTORT_FAT',
138
+ 'DISTORT_DEFINITION',
139
+ 'DISTORT_DYNPRES',
140
+ 'DISTORT_DYNDEPTH',
141
+ 'DISTORT_VERSION',
142
+ 'DISTORT_HICUT',
143
+ 'DISTORT_PAHARDNESS',
144
+ 'DISTORT_TREMFREQ',
145
+ 'DISTORT_SUPPLYTYPE',
146
+ 'DISTORT_LINEFREQ',
147
+ 'DISTORT_EQTYPE',
148
+ 'DISTORT_CBRATIO',
149
+ 'DISTORT_TREMDEPTH',
150
+ 'DISTORT_BIASTYPE',
151
+ 'DISTORT_DISABLECABSYNC',
152
+ 'DISTORT_ZEROEQ',
153
+ 'DISTORT_MODE_2',
154
+ 'DISTORT_OUTBOOST',
155
+ ],
156
+ drive: [
157
+ 'FUZZ_RESAMPLE',
158
+ 'FUZZ_CLIPSHAPE',
159
+ 'FUZZ_BITREDUCE',
160
+ 'FUZZ_INPUTSELECT',
161
+ 'FUZZ_EQ2',
162
+ 'FUZZ_EQ3',
163
+ 'FUZZ_EQON',
164
+ 'FUZZ_EQ1',
165
+ 'FUZZ_EQ6',
166
+ 'FUZZ_EQ7',
167
+ 'FUZZ_EQ4',
168
+ 'FUZZ_EQ5',
169
+ 'FUZZ_EQ10',
170
+ 'FUZZ_PDTYPE',
171
+ 'FUZZ_EQ8',
172
+ 'FUZZ_EQ9',
173
+ 'FUZZ_TYPE',
174
+ 'FUZZ_DRIVE',
175
+ 'FUZZ_MIX',
176
+ 'FUZZ_SLEW',
177
+ 'FUZZ_TONE',
178
+ 'FUZZ_LEVEL',
179
+ 'FUZZ_CLIPTYPE',
180
+ 'FUZZ_BIAS',
181
+ 'FUZZ_LOCUT',
182
+ 'FUZZ_HICUT',
183
+ 'FUZZ_MIDFREQ',
184
+ 'FUZZ_TREBLE',
185
+ 'FUZZ_LOW',
186
+ 'FUZZ_MID',
187
+ 'FUZZ_NDQTY',
188
+ 'FUZZ_DRYGAIN',
189
+ 'FUZZ_PDQTY',
190
+ 'FUZZ_NDTYPE',
191
+ 'FUZZ_MODESWITCH',
192
+ 'FUZZ_WICKER',
193
+ 'FUZZ_BASS',
194
+ 'FUZZ_HIMID',
195
+ 'FUZZ_TONESWITCH',
196
+ 'FUZZ_DRIVE2',
197
+ ],
198
+ reverb: [
199
+ 'REVERB_HICUT',
200
+ 'REVERB_HFRATIO',
201
+ 'REVERB_TYPE',
202
+ 'REVERB_TIME',
203
+ 'REVERB_REVERBDELAY',
204
+ 'REVERB_EARLYLEVEL',
205
+ 'REVERB_DIFFUSION',
206
+ 'REVERB_SIZE',
207
+ 'REVERB_LOWCUT',
208
+ 'REVERB_DEPTH',
209
+ 'REVERB_REVERBLEVEL',
210
+ 'REVERB_PREDELAY',
211
+ 'REVERB_DENSITY',
212
+ 'REVERB_INPDIFF',
213
+ 'REVERB_RATE',
214
+ 'REVERB_GAIN',
215
+ 'REVERB_PITCHTIME',
216
+ 'REVERB_PITCHPOS',
217
+ 'REVERB_PITCHFDBK',
218
+ 'REVERB_PITCHDIR',
219
+ 'REVERB_PREDLYTEMPO',
220
+ 'REVERB_PREDLYFDBK',
221
+ 'REVERB_PITCHMOD',
222
+ 'REVERB_PITCHBAL',
223
+ 'REVERB_SPRINGTYPE',
224
+ 'REVERB_TONETYPE',
225
+ 'REVERB_PREDLYMIX',
226
+ 'REVERB_PITCHLPF',
227
+ 'REVERB_HIGHQ',
228
+ 'REVERB_PREDLYTAP',
229
+ 'REVERB_LOWQ',
230
+ 'REVERB_EARLYDIFFTIME',
231
+ 'REVERB_EARLYDECAY',
232
+ 'REVERB_RELEASE',
233
+ 'REVERB_EARLYDIFF',
234
+ 'REVERB_HOLD',
235
+ 'REVERB_BASETYPE',
236
+ 'REVERB_EARLYSEND',
237
+ 'REVERB_QUALITY',
238
+ 'REVERB_DISPERSION',
239
+ 'REVERB_LOWSLOPE',
240
+ 'REVERB_LFOPHASE',
241
+ 'REVERB_INPUTSELECT',
242
+ 'REVERB_SHIFT1',
243
+ 'REVERB_SHIFT2',
244
+ 'REVERB_HIGHSLOPE',
245
+ 'REVERB_PITCHMIX',
246
+ 'REVERB_TONE',
247
+ 'REVERB_WIDTH',
248
+ 'REVERB_INDIFFTIME',
249
+ 'REVERB_NUMSPRINGS',
250
+ 'REVERB_Q1',
251
+ 'REVERB_Q2',
252
+ 'REVERB_FREQ1',
253
+ 'REVERB_FREQ2',
254
+ 'REVERB_DRIVE',
255
+ 'REVERB_LFTIME',
256
+ 'REVERB_GAIN1',
257
+ 'REVERB_GAIN2',
258
+ 'REVERB_ATTEN',
259
+ 'REVERB_THRESH',
260
+ 'REVERB_LFXOVER',
261
+ 'REVERB_SPREAD',
262
+ ],
263
+ delay: [
264
+ 'DELAY_TIME',
265
+ 'DELAY_RATIO',
266
+ 'DELAY_MODEL',
267
+ 'DELAY_TYPE',
268
+ 'DELAY_FEEDR',
269
+ 'DELAY_DELAYPAN',
270
+ 'DELAY_FEED',
271
+ 'DELAY_FEEDL',
272
+ 'DELAY_LOCUT',
273
+ 'DELAY_HICUT',
274
+ 'DELAY_SPREAD',
275
+ 'DELAY_TEMPO',
276
+ 'DELAY_DEPTH1',
277
+ 'DELAY_DEPTH2',
278
+ 'DELAY_RATE1',
279
+ 'DELAY_RATE2',
280
+ 'DELAY_COMPTIME',
281
+ 'DELAY_COMPTHRESH',
282
+ 'DELAY_HPF_ORDER',
283
+ 'DELAY_COMPANDER',
284
+ 'DELAY_DIFFDEPTH',
285
+ 'DELAY_LFO4TYPE',
286
+ 'DELAY_MSTRTIME',
287
+ 'DELAY_DIFFRATE',
288
+ 'DELAY_DEPTH4',
289
+ 'DELAY_LFO4PHASE',
290
+ 'DELAY_RATE4',
291
+ 'DELAY_LFO4TEMPO',
292
+ 'DELAY_HOLDFDBK',
293
+ 'DELAY_SVFTYPE',
294
+ 'DELAY_LFO4TARGET',
295
+ 'DELAY_STACKFDBK',
296
+ 'DELAY_FSTART',
297
+ 'DELAY_FSTOP',
298
+ 'DELAY_LFO3PHASE',
299
+ 'DELAY_LFO3TEMPO',
300
+ 'DELAY_BITREDUCE',
301
+ 'DELAY_FREQ1',
302
+ 'DELAY_Q',
303
+ 'DELAY_FILTERQ',
304
+ 'DELAY_Q2',
305
+ 'DELAY_GAIN1',
306
+ 'DELAY_FREQ2',
307
+ 'DELAY_Q1',
308
+ 'DELAY_SPEED',
309
+ 'DELAY_OFFSET',
310
+ 'DELAY_GAIN2',
311
+ 'DELAY_MAXDEPTH',
312
+ 'DELAY_MODE',
313
+ 'DELAY_LPF_ORDER',
314
+ 'DELAY_SPLICETIME',
315
+ 'DELAY_RUN',
316
+ 'DELAY_RELEASE',
317
+ 'DELAY_DIFFUSE',
318
+ 'DELAY_ATTEN',
319
+ 'DELAY_THRESH',
320
+ 'DELAY_LFO1TARGET',
321
+ 'DELAY_LFO2TARGET',
322
+ 'DELAY_DIFFTIME',
323
+ 'DELAY_PHASEREV',
324
+ 'DELAY_RATE3',
325
+ 'DELAY_LFO3TYPE',
326
+ 'DELAY_LFO1TEMPO',
327
+ 'DELAY_LFO2TEMPO',
328
+ 'DELAY_LFO1TYPE',
329
+ 'DELAY_LFO2TYPE',
330
+ 'DELAY_DRIVE',
331
+ 'DELAY_GAIN',
332
+ 'DELAY_MSTRFDBK',
333
+ 'DELAY_TEMPOR',
334
+ 'DELAY_TIMER',
335
+ 'DELAY_HOLD',
336
+ 'DELAY_LEVELL',
337
+ 'DELAY_LEVELR',
338
+ 'DELAY_FEEDLR',
339
+ 'DELAY_FEEDRL',
340
+ 'DELAY_LFO1PHASE',
341
+ 'DELAY_LFO2PHASE',
342
+ 'DELAY_PANL',
343
+ 'DELAY_PANR',
344
+ ],
345
+ chorus: [
346
+ 'CHORUS_DEPTHC',
347
+ 'CHORUS_DEPTHR',
348
+ 'CHORUS_MODE',
349
+ 'CHORUS_DEPTHL',
350
+ 'CHORUS_TEMPO2',
351
+ 'CHORUS_TEMPO',
352
+ 'CHORUS_DEPTH',
353
+ 'CHORUS_VOICES',
354
+ 'CHORUS_RATE',
355
+ 'CHORUS_LFOPHASE',
356
+ 'CHORUS_LFOTYPE',
357
+ 'CHORUS_HICUT',
358
+ 'CHORUS_DELAYTIME',
359
+ 'CHORUS_WIDTH',
360
+ 'CHORUS_RATE2',
361
+ 'CHORUS_AUTO',
362
+ 'CHORUS_PHASEREV',
363
+ 'CHORUS_LOWCUT',
364
+ 'CHORUS_SPREAD',
365
+ 'CHORUS_DEPTH2',
366
+ 'CHORUS_DRIVE',
367
+ 'CHORUS_TYPE',
368
+ ],
369
+ flanger: [
370
+ 'FLANGER_TYPE',
371
+ 'FLANGER_RATE',
372
+ 'FLANGER_FEEDBACK',
373
+ 'FLANGER_MANUAL',
374
+ 'FLANGER_TEMPO',
375
+ 'FLANGER_DEPTH',
376
+ 'FLANGER_LFOTYPE',
377
+ 'FLANGER_LFOFILTER',
378
+ 'FLANGER_DRYDELAY',
379
+ 'FLANGER_LFOPHASE',
380
+ 'FLANGER_THRUZERO',
381
+ 'FLANGER_LPFREQ',
382
+ 'FLANGER_AUTO',
383
+ 'FLANGER_PHASEREV',
384
+ 'FLANGER_SPREAD',
385
+ 'FLANGER_LFORESET',
386
+ 'FLANGER_DRIVE',
387
+ 'FLANGER_HPFREQ',
388
+ 'FLANGER_FOCUS',
389
+ 'FLANGER_VCO_CURVE',
390
+ 'FLANGER_LPF_ORDER',
391
+ 'FLANGER_HPF_ORDER',
392
+ 'FLANGER_LFOQUANTIZE',
393
+ 'FLANGER_VCOK',
394
+ 'FLANGER_TMIN',
395
+ 'FLANGER_TMAX',
396
+ ],
397
+ phaser: [
398
+ 'PHASER_LFOQUANTIZE',
399
+ 'PHASER_VCR_CURVE',
400
+ 'PHASER_Q',
401
+ 'PHASER_LFORESET',
402
+ 'PHASER_LFOLPF',
403
+ 'PHASER_ATTACK',
404
+ 'PHASER_VCRK',
405
+ 'PHASER_LFOBETA',
406
+ 'PHASER_HPF',
407
+ 'PHASER_LPF',
408
+ 'PHASER_RELEASE',
409
+ 'PHASER_MANUAL',
410
+ 'PHASER_LFOMODE',
411
+ 'PHASER_ORDER',
412
+ 'PHASER_RATE',
413
+ 'PHASER_TYPE',
414
+ 'PHASER_DEPTH',
415
+ 'PHASER_FEEDBACK',
416
+ 'PHASER_LFOTYPE',
417
+ 'PHASER_TEMPO',
418
+ 'PHASER_LFOPHASE',
419
+ 'PHASER_BIAS',
420
+ 'PHASER_FMIN',
421
+ 'PHASER_FMAX',
422
+ 'PHASER_TONE',
423
+ 'PHASER_DIRECTION',
424
+ 'PHASER_MODE',
425
+ 'PHASER_FBTAP',
426
+ ],
427
+ wah: [
428
+ 'WAH_Q',
429
+ 'WAH_EQ8',
430
+ 'WAH_CONTROL',
431
+ 'WAH_MIX',
432
+ 'WAH_TRACK',
433
+ 'WAH_BIAS',
434
+ 'WAH_HPF',
435
+ 'WAH_DRIVE',
436
+ 'WAH_TAPER',
437
+ 'WAH_EQ2',
438
+ 'WAH_EQ3',
439
+ 'WAH_EQON',
440
+ 'WAH_EQ1',
441
+ 'WAH_EQ6',
442
+ 'WAH_EQ7',
443
+ 'WAH_EQ4',
444
+ 'WAH_EQ5',
445
+ 'WAH_FSTART',
446
+ 'WAH_FSTOP',
447
+ 'WAH_TYPE',
448
+ ],
449
+ compressor: [
450
+ 'COMP_Q',
451
+ 'COMP_EQTYPE',
452
+ 'COMP_THRESH2',
453
+ 'COMP_LIGHTTYPE',
454
+ 'COMP_GAINMONITOR',
455
+ 'COMP_COMPANSION',
456
+ 'COMP_COMPTIME',
457
+ 'COMP_XMARK',
458
+ 'COMP_YMARK',
459
+ 'COMP_TONE',
460
+ 'COMP_DRIVE',
461
+ 'COMP_COMPMATCH',
462
+ 'COMP_EMPHFREQ',
463
+ 'COMP_PEAKRMS',
464
+ 'COMP_LOWCUT',
465
+ 'COMP_KNEE',
466
+ 'COMP_AUTO',
467
+ 'COMP_SUSTAIN',
468
+ 'COMP_DELAYTIME',
469
+ 'COMP_SIDECHAIN',
470
+ 'COMP_TYPE',
471
+ 'COMP_DYNAMICS',
472
+ 'COMP_INPUTSWITCH',
473
+ 'COMP_AUTOMODE',
474
+ 'COMP_EMPHASIS',
475
+ 'COMP_FREQ',
476
+ 'COMP_HIGHCUT',
477
+ 'COMP_GAIN',
478
+ 'COMP_ATTACK',
479
+ 'COMP_RELEASE',
480
+ 'COMP_THRESH',
481
+ 'COMP_RATIO',
482
+ ],
483
+ filter: [
484
+ 'FILTER_APORDER',
485
+ 'FILTER_EVFTYPE',
486
+ 'FILTER_MODFREQ',
487
+ 'FILTER_QUANTIZE',
488
+ 'FILTER_STOP',
489
+ 'FILTER_SENS',
490
+ 'FILTER_EVFQ',
491
+ 'FILTER_START',
492
+ 'FILTER_BETA',
493
+ 'FILTER_SOURCE',
494
+ 'FILTER_ATTACK',
495
+ 'FILTER_RELEASE',
496
+ 'FILTER_TEMPO',
497
+ 'FILTER_DETMON',
498
+ 'FILTER_EMPH',
499
+ 'FILTER_Q',
500
+ 'FILTER_GAIN',
501
+ 'FILTER_TYPE',
502
+ 'FILTER_FREQ',
503
+ 'FILTER_PANR',
504
+ 'FILTER_PHASE',
505
+ 'FILTER_ORDER',
506
+ 'FILTER_PANL',
507
+ 'FILTER_COMBTIME',
508
+ 'FILTER_FEEDBACK',
509
+ 'FILTER_LOWCUT',
510
+ 'FILTER_HICUT',
511
+ 'FILTER_LFOFREQ',
512
+ 'FILTER_LFODUTY',
513
+ 'FILTER_LFOENABLE',
514
+ 'FILTER_LFOTYPE',
515
+ ],
516
+ tremolo: [
517
+ 'TREMOLO_LFOTYPE',
518
+ 'TREMOLO_RATE',
519
+ 'TREMOLO_TYPE',
520
+ 'TREMOLO_TEMPO',
521
+ 'TREMOLO_PHASE',
522
+ 'TREMOLO_DEPTH',
523
+ 'TREMOLO_DUTY',
524
+ 'TREMOLO_STARTPHASE',
525
+ 'TREMOLO_ORDER',
526
+ 'TREMOLO_WIDTH',
527
+ 'TREMOLO_CENTER',
528
+ 'TREMOLO_BETA',
529
+ 'TREMOLO_DUCKING',
530
+ 'TREMOLO_XOVER',
531
+ 'TREMOLO_THRESH',
532
+ ],
533
+ enhancer: [
534
+ 'ENHANCER_PANL',
535
+ 'ENHANCER_PANR',
536
+ 'ENHANCER_WIDTH',
537
+ 'ENHANCER_DEPTH',
538
+ 'ENHANCER_TYPE',
539
+ 'ENHANCER_PHASE',
540
+ 'ENHANCER_LOWCUT',
541
+ 'ENHANCER_HICUT',
542
+ ],
543
+ gate: [
544
+ 'GATE_THRESH',
545
+ 'GATE_RELEASE',
546
+ 'GATE_RATIO',
547
+ 'GATE_ATTACK',
548
+ 'GATE_HOLD',
549
+ 'GATE_HICUT',
550
+ 'GATE_GAINMONITOR',
551
+ 'GATE_KEY',
552
+ 'GATE_LOWCUT',
553
+ 'GATE_PEAKRMS',
554
+ 'GATE_KNEE',
555
+ 'GATE_TYPE',
556
+ 'GATE_RANGE',
557
+ ],
558
+ volpan: [
559
+ 'VOLUME_PANR',
560
+ 'VOLUME_INPUTSELECT',
561
+ 'VOLUME_TAPER',
562
+ 'VOLUME_PANL',
563
+ 'VOLUME_ATTACK',
564
+ 'VOLUME_RELEASE',
565
+ 'VOLUME_TYPE',
566
+ 'VOLUME_THRESHOLD',
567
+ 'VOLUME_HYSTERESIS',
568
+ 'VOLUME_METER',
569
+ 'VOLUME_GAIN',
570
+ ],
571
+ rotary: [
572
+ 'ROTARY_TEMPO',
573
+ 'ROTARY_HFLENGTH',
574
+ 'ROTARY_HFDEPTH',
575
+ 'ROTARY_HFLEVEL',
576
+ 'ROTARY_LOWTIME',
577
+ 'ROTARY_HIGHTIME',
578
+ 'ROTARY_WIDTH',
579
+ 'ROTARY_LOWRATE',
580
+ 'ROTARY_MICDIST',
581
+ 'ROTARY_INPUTSELECT',
582
+ 'ROTARY_SPREAD',
583
+ 'ROTARY_DRIVE',
584
+ 'ROTARY_RATE',
585
+ 'ROTARY_LFDEPTH',
586
+ ],
587
+ };
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Generated by scripts/gen-type-applicability.ts — do not hand-edit.
3
+ *
4
+ * Per-(block, name) applicability records: which AM4 amp / drive /
5
+ * delay / reverb / etc. types expose this knob. Decoded from the
6
+ * AM4-Edit BinaryData ZIP `__block_layout(.expert).xml` `<Page>`
7
+ * and `<EditorControl>` per-type filter attributes (Session 46
8
+ * cont 5, 2026-05-04 — replaces the earlier framing of "Ghidra-
9
+ * into-DSP needed"; the data was always in the XML).
10
+ *
11
+ * Keys match `KNOWN_PARAMS` (e.g. `delay.right_post_delay`). For
12
+ * params not in this map: assume always-on (the common case for
13
+ * universal block params like `BLOCK_PAN` / `BLOCK_MIX` / out-of-
14
+ * band channel/level registers).
15
+ *
16
+ * `always: true` means the parameter has at least one ungated UI
17
+ * exposure. `gates` lists every type-enum gate the XML defines for
18
+ * this parameter — useful as informational context (e.g. "this
19
+ * knob is on a special Friedman BE page in addition to the
20
+ * universal one"). When `always: false`, only types listed in
21
+ * `gates` expose the knob in AM4-Edit's UI.
22
+ */
23
+ export interface ApplicabilityGate {
24
+ /** AM4-Edit symbolic enum that gates this parameter — e.g. `DELAY_TYPE`, `FUZZ_TYPE`. */
25
+ readonly typeEnum: string;
26
+ /** Wire indices into the gate enum at which this parameter is exposed. */
27
+ readonly values: readonly number[];
28
+ /** Whether the gate is on the entire `<Page>` or an individual `<EditorControl>`. */
29
+ readonly source: 'page' | 'control';
30
+ }
31
+ export interface Applicability {
32
+ /** True if the parameter has at least one ungated UI exposure. */
33
+ readonly always: boolean;
34
+ /** Type-enum gates the parameter has. May be present alongside `always: true` (special-cased pages). */
35
+ readonly gates: readonly ApplicabilityGate[];
36
+ }
37
+ export declare const TYPE_APPLICABILITY_FIRMWARE = "AM4-Edit Mar 20 2026 build";
38
+ export declare const TYPE_APPLICABILITY: Readonly<Record<string, Applicability>>;
39
+ //# sourceMappingURL=typeApplicability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeApplicability.d.ts","sourceRoot":"","sources":["../../src/am4/typeApplicability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,qFAAqF;IACrF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,wGAAwG;IACxG,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC9C;AAED,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AAExE,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CA0btE,CAAC"}