2
# This it the bristol-0.30 grungy gearbox
4
# This file defines the diverse tonewheel generator parameters for the bristol
5
# preacher algorithm. There are definitions per wheel that define its gain and
6
# waveform, the gain levels for each of the slider busses, frequency, phase and
7
# crosstalk levels betweem all the compartments. The tone gain can be
8
# seen to equalise the whole keyboard and the bus gains to equalise ane given
9
# note. There are also settings per slide bar bus for linearity.
11
# The selection between bright and normal is from the GUI "bright" button.
13
# Wheel damping is also known as 'volume stealing', 'volume robbing', etc, it
14
# defines how much signal loss occurs if the same tonewheel is tapped twice
15
# for any chord combination. The Hammond did not drive all the possible note
16
# combinations linearly, so using the same wheel twice did not necessarily
17
# double the volume, it would tailer off slightly. The GUI controls the overall
18
# amount of damping, this controls the mapping of the damping over the keyboard.
20
# There are 91 wheels [0..90], 9 slider busses [0..9], the ordering is not
21
# relevant and any undefined entries are interpolated between the nearest
22
# defined boundaries. Upper and lower extremes are leveled to the nearest
23
# defined value when not explicitly specified.
25
# There are the following options:
27
# ToneNormal: <wheel> <waveform> - tonewheel waveform normal
28
# ToneBright: <wheel> <waveform> - tonewheel waveform bright
30
# EQNormal: <wheel> <gain> - relative gain for that wheel in normal setting
31
# EQBright: <wheel> <gain> - relative gain for that wheel in bright setting
33
# DampNormal: <wheel> <gain> - relative damping of wheel, normal setting
34
# DampBright: <wheel> <gain> - relative damping of wheel, bright setting
36
# BusNormal: <bus> <gain> - relative gain of slider busses, normal setting
37
# BusBright: <bus> <gain> - relative gain of slider busses, bright setting
39
# Use whatver values you want however anything <= 0 is ignored.
41
# Waveforms are as follows:
44
# > 1 - tends towards ramp wave (5.0 has a quite sharp leading edge)
45
# < 1 - tends towards square (0.0 is a rather sharp edged square wave)
47
# The defaults amplify the bass and treble frequencies, using a slight square
48
# wave for the low frequencies moving up to ramps for the high end.
50
# This file is reread when the compress option is selected from the GUI
51
# although this button does not actually affect the sound quality of the
52
# preacher (it does affect the sound when the preacher is not selected).
53
# Reloads are quite an intensive operation since all 91 wheel waveforms are
54
# recalculated. Avoid them whilst actively playing, but you can adust the
55
# values without having to restart the engine and test the net results, plus
56
# changing the 'bright' button setting will have no impact on performance
57
# since the differences are precalculated.
60
# Tonewheel waveforms, lower end are flatter to be a little hollow. This may
61
# be incorrect since using a bright, higher frequency response would typically
62
# result in the lower frequency waves having a richer content. The ranges
63
# should be fixed such that the waveforms for the tooths are common by number
64
# of teeth - there were 12 of each: 2, 4, 8, 16, 32, 64, 128 plus 6 of 192
65
# The output waveforms for each of these ranges should be comparable.
92
# Equalisation "Normal" - tonewheels and busses. This is a rough estimate of
93
# the mV output signals taken from a B3.
115
# Wheel damping 'normal' - some loss of signal at lower frequencies
119
# Tonewheel bright waveforms: less square at low end, more ramp at high end
137
# "Bright" equalisation
159
# Wheel damping 'bright' - more loss of signal at lower frequencies
164
# These are the gains of each stop on the sliders. These values result in
165
# a linear interpolation but you can change that if you want to have things
166
# like exponential gains, uneven gains.
168
# These value add a small amount to the 'stopped' bus to emulate the bus
169
# leakage (in a rather crude fashion).
175
# Wheels are defined as
177
# wheel: <nr> <freq> <phase>
179
# These can redefine the Hammond 'almost' Even Tempered frequencies and the
180
# wheel phases. The default frequencies are the slightly off hammond notes,
181
# here we are going to add additional flatness on the 192-toothed wheels.
183
# Default phase is to init totally randomly, this is pretty much how the
184
# Hammond operated - the teeth were located by spring friction only and could
185
# wander with transport as the wheel could 'walk' under vibration. Phase should
186
# not affect the sound, but actually it does. If you don't like the random
187
# change between invocations then they can be fixed here. Either way, you do
188
# not want to go for all the wheels to be totally in phase, that would be very
189
# electronic - if you want to emulate the L or M series this could be useful.
191
# Entering a negative value or the hyphen ('-') will leave the default value.
193
wheel: 84 5250.799805 -
194
wheel: 85 5555.439941 -
195
wheel: 86 5900.000000 -
196
wheel: 87 6232.000000 -
197
wheel: 88 6600.240234 -
198
wheel: 89 7010.000000 - A - flatten by about 0.3 cents. The rest are flat
199
wheel: 90 7400.279785 - and are now just a bit flatter. No phase changes.
215
# Level of crosstalk from the 3 other wheels in the same compartment. The
216
# defaults should be according to the normal 60Hz tonewheel box including
217
# crosstalk for the 2/4 and 8/32 wheels.
219
# These are not dB values but linear gain from 0 to 1.0 and if anybody wants
220
# dB signal loss values then they either need to calculate them or get in
221
# touch with me to encode it that way.
223
# The first two values govern the crosstalk between the two near wheels, and
224
# the second two from the two far wheels. Crosstalk to the first wheel in a
225
# compartment is typically lower due to the effects of the shaping filter
226
# applied to low frequency wheels.
228
# The 4th entry is for the drawbar bus crosstalk.
230
# Entries 5 through 8 are filter and loom crosstalk. These have been given
231
# larger values as the disonance is quite interesting.
233
crosstalkNormal: 0 0.03
234
crosstalkNormal: 1 0.04
235
crosstalkNormal: 2 0.03
236
crosstalkNormal: 3 0.04
237
crosstalkNormal: 4 0.03
238
crosstalkNormal: 5 0.03
239
crosstalkNormal: 6 0.04
240
crosstalkNormal: 7 0.03
241
crosstalkNormal: 8 0.05
243
crosstalkBright: 0 0.06
244
crosstalkBright: 1 0.08
245
crosstalkBright: 2 0.06
246
crosstalkBright: 3 0.05
247
crosstalkBright: 4 0.02
248
crosstalkBright: 5 0.09
249
crosstalkBright: 6 0.07
250
crosstalkBright: 7 0.06
251
crosstalkBright: 8 0.08
254
# And the compartment table. These are the note numbers (Hammond counted from
255
# 1, but as we all know that does not work well for computers) in each of
256
# the 24 compartments. Each compartment had a pair of tonewheels at each side
257
# and there was more crosstalk between these two than the far two at the other
258
# side of the compartment due to distance. Note that these are not the same as
259
# the MIDI note numbers from KeyOn events, but internal 'tooth' indeces.
261
# These chamber definitions should be correct but if you see any discrepencies
262
# let me know. Each tonewheel was in a compartment with 3 other octaves of the
263
# same note and there were two compartments for any given key covering either
264
# seven or eight octaves. Some notes had empty top frequency tonewheels since
265
# the then engineering could not put enough teeth on the wheel, these were
266
# dealt with using foldback from lower frequencies (and the lowest octave also
267
# had foldback from one octave above for slightly different related reasons).
269
# Crosstalk '0' is used between the first pair and the last pair - they are the
270
# adjacent wheels. The other two crosstalk are for the opposite pair and could
271
# really have been consolidated into a single value.
273
# Crosstalk level-3 is used for bus crosstalk of the drawbars.
275
# For example, from the first line:
277
# Wheel 0 has crosstalk from 48 at level0, plus 12 at level1 and 60 at level2.
278
# Wheel 48 has crosstalk from 0 at level0, plus 60 at level1 and 12 at level2.
279
# Wheel 12 has crosstalk from 60 at level0, plus 0 at level1 and 48 at level2.
280
# Wheel 60 has crosstalk from 12 at level0, plus 48 at level1 and 0 at level2.
282
# These lines can be extended to include the crosstalk levels if you want to
283
# redefine them per wheel.
285
compartment: 0 0 48 12 60
286
compartment: 1 24 72 37 -
287
compartment: 2 7 55 19 67
288
compartment: 3 31 79 43 86
289
compartment: 4 2 50 14 62
290
compartment: 5 26 74 38 -
291
compartment: 6 9 57 21 69
292
compartment: 7 33 81 45 88
293
compartment: 8 4 52 16 64
294
compartment: 9 28 76 40 -
295
compartment: 10 11 59 23 71
296
compartment: 11 35 83 47 90
297
compartment: 12 6 54 18 66
298
compartment: 13 30 78 42 85
299
compartment: 14 1 49 13 61
300
compartment: 15 25 73 37 -
301
compartment: 16 8 56 20 68
302
compartment: 17 32 80 44 54
303
compartment: 18 3 51 15 63
304
compartment: 19 27 75 13 -
305
compartment: 20 10 58 22 70
306
compartment: 21 34 82 46 89
307
compartment: 22 5 53 17 65
308
compartment: 23 29 77 41 84 0.02 0.05 0.03 0.04
311
# Adjacency table. Each wheel, apart from being in a shared compartment which
312
# created crosstalk was also on a filter board with different notes in its
313
# vicinity and in a wire loom with various adjacent cables. There are another
314
# four entries in the crosstalk table for these values, the default given
315
# here are for the filter adjacency, but the fact is these can be redefined for
316
# arbitrary wheel numbers if you want to create a loom. Again, the crosstalk
317
# values are optional and override the defaults.
319
# The default adjacency table is actually taken from the above compartment table
320
# as the filter circuits were mounted on the outside, hence, wheel 30 in
321
# compartment 13 had 4 main neighbors, these being 6, 1 and 49 and 54. The
322
# crosstalk between these will follow the default values unless otherwise
323
# defined. The adjacency for wheel zero is given as reference as it only has
324
# two adjacent filters.
326
adjacency: 30 1 6 49 54 0.6 0.5 0.3 0.3
327
adjacency: 0 24 72 - - 0.6 0.5
330
# Drawbar equalisation.
332
# The tapering table controls the wheel gains by drawbar. It works after the
333
# wheel EQ given above and actually gives a different mix by drawbar by key.
334
# Again, this should follow the actual tapering schematics although the values
335
# used may need to be different as these translate again into linear gains.
337
# If these look wrong let me know, they were taken from the schematics of one
338
# Hammond model. You can emulate broken stops by giving that stop value a very
339
# large impedence - 1000, 2000, etc.
341
# The original circuit was a resistive divider with the output signal over
342
# a 24 Ohms impedence. The values that are entered here are the net signal
343
# gain/loss or a resistor index. The index makes it easier to change the
344
# settings globally without needing a degree in 'vi'. The reason both formats
345
# are accepted is that one is easier to define, the other is more flexible
346
# and will allow resistor tolerances to be built in to be less mechanical.
348
# taper: note <16'> <5 1/3'> <8'> <4'> <2 2/3'> <2'> <1 3/5'> <1 1/3'> <1'>
350
# There is one entry per note from 0 to 60 for a C to C keyboard. Values outside
351
# this range are undefined.
353
# The default taper table is:
355
# resistors: 100 50 34 24 15 10
356
# resistors: 0.4 0.6 0.8 1.0 1.2 1.4 // resulting gain level.
358
# taper: * 0.4 0.8 0.6 0.8 1.4 1.4 1.2 1.0 1.0
360
# With the values given above the below three lines are ~equivalent, they use
361
# R value with an index into the resistor array (value must be less than array
362
# size), the actual resistor values as defined by Hammond, or any other value
363
# greater than 6, or a literal value for the gain:
365
# taper: 0 R0 R2 R1 R2 R5 R5 R4 R3 R3
366
# taper: 0 R100 R34 R50 R34 R10 R10 R15 R24 R24
367
# taper: 0 R101 R31 R51 R33 R11 R10 R15 R25 R24 // slightly off
368
# taper: 0 0.4 0.8 0.6 0.8 1.4 1.4 1.2 1.0 1.0
373
taper: 0 R0 R2 R1 R2 R5 R5 R4 R3 R3
374
taper: 1 R0 R2 R1 R2 R5 R5 R4 R3 R3
375
taper: 2 R0 R2 R1 R2 R5 R5 R4 R3 R3
376
taper: 3 R0 R2 R1 R2 R5 R5 R4 R3 R3
377
taper: 4 R0 R2 R1 R2 R5 R5 R4 R3 R3
378
taper: 5 R0 R2 R1 R2 R5 R5 R4 R3 R3
379
taper: 6 R0 R2 R1 R2 R5 R5 R4 R3 R3
380
taper: 7 R0 R2 R1 R2 R5 R5 R4 R3 R3
381
taper: 8 R0 R2 R1 R2 R5 R5 R4 R3 R3
382
taper: 9 R0 R2 R1 R2 R5 R5 R4 R3 R3
383
taper: 10 R1 R2 R1 R2 R5 R5 R4 R3 R3
384
taper: 11 R1 R2 R1 R2 R5 R4 R4 R3 R3
386
taper: 12 R1 R2 R1 R2 R4 R4 R4 R3 R3
387
taper: 13 R1 R2 R1 R3 R4 R4 R4 R3 R3
388
taper: 14 R1 R3 R1 R3 R4 R4 R4 R3 R3
389
taper: 15 R1 R3 R2 R3 R4 R4 R4 R3 R3
390
taper: 16 R2 R3 R2 R3 R4 R4 R4 R3 R3
391
taper: 17 R2 R3 R2 R3 R4 R4 R4 R3 R3
392
taper: 18 R2 R3 R2 R3 R4 R4 R3 R3 R3
393
taper: 19 R2 R3 R2 R3 R4 R4 R3 R3 R3
394
taper: 20 R2 R3 R2 R3 R3 R3 R3 R3 R3
395
taper: 21 R2 R3 R2 R3 R3 R3 R3 R3 R3
396
taper: 22 R2 R3 R2 R3 R3 R3 R3 R3 R3
397
taper: 23 R2 R3 R3 R3 R3 R3 R3 R3 R3
399
taper: 24 R3 R3 R3 R3 R3 R3 R3 R3 R3
400
taper: 25 R3 R3 R3 R3 R3 R3 R3 R3 R3
401
taper: 26 R3 R3 R3 R3 R3 R3 R3 R3 R3
402
taper: 27 R3 R3 R3 R3 R3 R3 R3 R3 R3
403
taper: 28 R3 R3 R3 R3 R3 R3 R3 R3 R3
404
taper: 29 R3 R3 R3 R3 R3 R3 R3 R3 R3
405
taper: 30 R3 R3 R3 R3 R3 R3 R3 R3 R3
406
taper: 31 R3 R3 R3 R3 R3 R3 R3 R3 R3
407
taper: 32 R3 R3 R3 R3 R3 R3 R3 R3 R3
408
taper: 33 R3 R3 R3 R3 R3 R3 R3 R3 R3
409
taper: 34 R3 R3 R3 R3 R3 R3 R3 R3 R3
410
taper: 35 R3 R3 R3 R3 R3 R3 R3 R3 R3
412
taper: 36 R4 R3 R3 R3 R3 R3 R3 R3 R3
413
taper: 37 R4 R3 R4 R3 R3 R3 R3 R3 R3
414
taper: 38 R4 R4 R4 R3 R3 R3 R3 R3 R3
415
taper: 39 R4 R4 R4 R2 R3 R3 R3 R3 R3
416
taper: 40 R4 R4 R4 R2 R2 R3 R3 R3 R3
417
taper: 41 R4 R4 R4 R2 R2 R2 R3 R3 R3
418
taper: 42 R4 R4 R4 R2 R2 R2 R2 R3 R3
419
taper: 43 R4 R4 R4 R2 R2 R2 R2 R2 R1
420
taper: 44 R4 R4 R4 R2 R2 R2 R2 R2 R1
421
taper: 45 R4 R4 R4 R2 R2 R2 R2 R2 R1
422
taper: 46 R4 R4 R4 R2 R2 R2 R2 R2 R1
423
taper: 47 R4 R4 R4 R2 R2 R2 R2 R2 R1
425
taper: 48 R5 R4 R4 R2 R2 R2 R2 R1 R1
426
taper: 49 R5 R4 R5 R2 R2 R2 R2 R1 R1
427
taper: 50 R5 R5 R5 R2 R2 R2 R2 R1 R1
428
taper: 51 R5 R5 R5 R2 R2 R2 R1 R1 R1
429
taper: 52 R5 R5 R5 R2 R1 R2 R1 R1 R1
430
taper: 53 R5 R5 R5 R2 R1 R2 R1 R1 R1
431
taper: 54 R5 R5 R5 R2 R1 R2 R1 R1 R1
432
taper: 55 R5 R5 R5 R2 R1 R1 R1 R1 R1
433
taper: 56 R5 R5 R5 R2 R1 R1 R1 R1 R1
434
taper: 57 R5 R5 R5 R2 R1 R1 R1 R1 R1
435
taper: 58 R5 R5 R5 R2 R1 R1 R1 R1 R1
436
taper: 59 R5 R5 R5 R2 R1 R1 R1 R1 R1
438
taper: 60 R5 R5 R5 R2 R1 R1 R1 R1 R1
441
# KeyClick section. The preacher has its own keyclick emulation. Each key has
442
# 9 contacts, one for each drawbar bus, and each will make a contact at a
443
# slightly different time due to wear and creep of the contacts. This is
444
# emulated with a millisecond offset timer from the note_on event such that
445
# each bus has its own delay before two things happen:
447
# 1: contact is made and the tonewheel finally passes to the output.
448
# 2: click is generated at a specified level.
450
# The gain levels apply to the noise level from that single contact, they may
451
# be different but always apply to the same offset timer. The timers are fixed,
452
# however there is no link between the offset and the drawbar, they are
453
# mildly randomised, partly by index selection but also by key velocity - these
454
# are the maximum offsets, when a key is hit faster then it moves faster and
455
# the contact delays compress, as with the original instrument (almost - if
456
# you want to know the differences then mail me).
458
# Gains can be inverted on selection, and the pulse from each contact can be
459
# controlled from a limited selection.
461
# There are currently 6 waveforms: 0 to 2 are sines of different frequencies,
462
# 3 is a pulse wave edged with noise, 4 and 5 are ramped waves with different
463
# attack and decay characteristics.
465
# The overall level of keyclick also has a control in the GUI. All these values
466
# use the drawbar number as index.
468
# There is currently no NoteOff grooming (0.10.2).
470
BusDelayNormal: 0 0.001
473
BusDelayBright: 0 0.001
474
BusDelayBright: 1 100.0
475
BusDelayBright: 2 77.0
476
BusDelayBright: 3 3.0
477
BusDelayBright: 4 4.0 - These are the percussive busses and do not carry click
478
BusDelayBright: 5 0.2 - also responds better with a short delay.
481
BusDelayBright: 8 100
483
# Click gain levels by bus.
497
ClickPulseNormal: 0 0.001
498
ClickPulseNormal: 0 1.0
499
ClickPulseNormal: 0 2.0
500
ClickPulseNormal: 8 3
502
ClickPulseBright: 0 3
503
ClickPulseBright: 8 0.001
505
ClickInvertNormal: 0 0.01
506
ClickInvertNormal: 1 1
507
ClickInvertNormal: 2 0.01
508
ClickInvertNormal: 3 1
509
ClickInvertNormal: 4 0.01
510
ClickInvertNormal: 5 1
511
ClickInvertNormal: 6 0.01
512
ClickInvertNormal: 7 1
513
ClickInvertNormal: 8 0.01
515
ClickInvertBright: 0 1
516
ClickInvertBright: 1 0.01
517
ClickInvertBright: 2 1
518
ClickInvertBright: 3 0.01
519
ClickInvertBright: 4 1
520
ClickInvertBright: 5 0.01
521
ClickInvertBright: 6 1
522
ClickInvertBright: 7 0.01
523
ClickInvertBright: 8 1