After all the previous work you did, it seems simple to change the devices.py to my own needs.
Also I think the parameter mapping isn't done, some handy assignment and the one or another parameter is missing.
At the moment I did some changes for 'Analog' I added 5 Banks and re-arranged the banks a bit.
I think at the weekend I will get deeper in the bank assignment and will see what I would change.
Code: Select all
ALG_BANK1 = ('OSC1 Level', 'OSC1 Octave', 'OSC1 Semi', 'OSC1 Detune', 'OSC1 Shape', 'OSC1 Balance', 'PEG1 Amount', 'PEG1 Time')
ALG_BANK2 = ('AMP1 Level', 'AMP1 Pan', 'AEG1 S Time', 'AEG1 Loop', 'AEG1 Attack', 'AEG1 Decay', 'AEG1 Sustain', 'AEG1 Rel')
ALG_BANK3 = ('F1 Type', 'F1 Freq', 'F1 Resonance', 'F1 To F2', 'FEG1 Attack', 'FEG1 Decay', 'FEG1 Sustain', 'FEG1 Rel')
ALG_BANK4 = ('F1 Freq < Env', 'F1 Freq < Key', 'F1 Freq < LFO', 'F1 Res < Env', 'F1 Res < LFO', 'F1 Reso < Key', 'F1 Type', 'F1 Drive')
ALG_BANK5 = ('LFO1 Shape', 'LFO1 Sync', 'LFO1 SncRate', 'LFO1 Speed', 'LFO1 PW', 'LFO1 Phase', 'LFO1 Delay', 'LFO1 Fade In')
ALG_BANK6 = ('OSC1 < LFO', 'OSC1 PW', 'O1 PW < LFO', 'LFO1 On/Off', 'F1 Freq < LFO', 'F1 Res < LFO', 'A1 Pan < LFO', 'AMP1 < LFO')
ALG_BANK7 = ('OSC2 Level', 'OSC2 Octave', 'OSC2 Semi', 'OSC2 Detune', 'OSC2 Shape', 'OSC2 Balance', 'PEG2 Amount', 'PEG2 Time')
ALG_BANK8 = ('AMP2 Level', 'AMP2 Pan', 'AEG2 S Time', 'AEG2 Loop', 'AEG2 Attack', 'AEG2 Decay', 'AEG2 Sustain', 'AEG2 Rel')
ALG_BANK9 = ('F2 Type', 'F2 Freq', 'F2 Resonance', 'F2 To F2', 'FEG2 Attack', 'FEG2 Decay', 'FEG2 Sustain', 'FEG2 Rel')
ALG_BANK10 = ('F2 Freq < Env', 'F2 Freq < Key', 'F2 Freq < LFO', 'F2 Res < Env', 'F2 Res < LFO', 'F2 Reso < Key', 'F2 Type', 'F2 Drive')
ALG_BANK11 = ('LFO2 Shape', 'LFO2 Sync', 'LFO2 SncRate', 'LFO2 Speed', 'LFO2 PW', 'LFO2 Phase', 'LFO2 Delay', 'LFO2 Fade In')
ALG_BANK12 = ('OSC2 < LFO', 'OSC2 PW', 'O2 PW < LFO', 'LFO2 On/Off', 'F2 Freq < LFO', 'F2 Res < LFO', 'A2 Pan < LFO', 'AMP2 < LFO')
ALG_BANK13 = ('Noise On/Off', 'Noise Level', 'Noise Balance', 'Noise Color', 'O1 Sub/Sync', 'O2 Sub/Sync', 'F1 Drive', 'F2 Drive')
ALG_BANK14 = ('Voices', 'Key Priority', 'Key Stretch', 'Key Error', 'Glide On/Off', 'Glide Time', 'Glide Legato', 'Glide Mode')
ALG_BANK15 = ('Unison On/Off', 'Unison Detune', 'Unison Delay', 'Unison Voices', 'Glide On/Off', 'Glide Time', 'Glide Legato', 'Glide Mode')
ALG_BANK16 = ('Vib On/Off', 'Vib Amount', 'Vib Speed', 'Vib Delay', 'Vib Error', 'Vib Fade-In', 'Vib < ModWh', 'Volume')
ALG_BANK17 = ('Noise On/Off', 'OSC2 On/Off', 'F1 On/Off', 'F2 On/Off', 'AMP1 On/Off', 'AMP2 On/Off', 'LFO1 On/Off', 'LFO2 On/Off')
ALG_BANK18 = ('OSC1 Level', 'OSC1 Balance', 'F1 To F2', 'OSC2 Level', 'OSC2 Balance', 'Noise Level', 'Noise Balance', 'Volume')
ALG_BANK19 = ('PEG1 Amount', 'PEG1 Time', 'OSC1 Semi', 'OSC1 Level', 'PEG2 Amount', 'PEG2 Time', 'OSC2 Semi', 'OSC2 Level')
ALG_BANK20 = ('AEG1 Attack', 'AEG1 Decay', 'AEG1 Sustain', 'AEG1 Rel', 'AEG2 Attack', 'AEG2 Decay', 'AEG2 Sustain', 'AEG2 Rel')
ALG_BANK21 = ('FEG1 Attack', 'FEG1 Decay', 'FEG1 Sustain', 'FEG1 Rel', 'FEG2 Attack', 'FEG2 Decay', 'FEG2 Sustain', 'FEG2 Rel')
ALG_BANK22 = ('F1 Freq < Env', 'F1 Freq < LFO', 'F1 Res < Env', 'F1 Res < LFO', 'F2 Freq < Env', 'F2 Freq < LFO', 'F2 Res < Env', 'F2 Res < LFO')
ALG_BANK23 = ('LFO1 SncRate', 'LFO1 Speed', 'LFO1 Fade In', 'LFO1 Phase', 'LFO2 SncRate', 'LFO2 Speed', 'LFO2 Fade In', 'LFO2 Phase')
ALG_BOB = ('OSC1 Level', 'OSC1 Semi', 'OSC1 Balance', 'F1 Freq', 'OSC2 Level', 'OSC2 Semi', 'OSC2 Balance', 'F2 Freq')
ALG_BANKS = (ALG_BANK1,
ALG_BANK2,
ALG_BANK3,
ALG_BANK4,
ALG_BANK5,
ALG_BANK6,
ALG_BANK7,
ALG_BANK8,
ALG_BANK9,
ALG_BANK10,
ALG_BANK11,
ALG_BANK12,
ALG_BANK13,
ALG_BANK14,
ALG_BANK15,
ALG_BANK16,
ALG_BANK17,
ALG_BANK18,
ALG_BANK19,
ALG_BANK20,
ALG_BANK21,
ALG_BANK22,
ALG_BANK23)
ALG_BOBS = (ALG_BOB,)
ALG_BNK_NAMES = ('Osc1', 'Amp1', 'Filter1', 'FiltMod1', 'LFO1', 'LFO1Rout', 'Osc2', 'Amp2', 'Filter2', 'FiltMod2', 'LFO2', 'LFO2Rout', 'NsSubDrv', 'Voice' 'UniGlide', 'Vibrato', 'ON/OFF', Mixer, '2Osc' '2AmpEnv.', '2FiltEnv.', '2FiltMod.', '2LFOs')