New settings for better portamento performance on Roland SE-02. SEL for switching between OFF and LIN, SEE for switching between OFF and EXP.
This commit is contained in:
parent
6183f0faee
commit
7eccf7eeec
4 changed files with 12 additions and 3 deletions
|
@ -1332,6 +1332,10 @@ void portamento_() {
|
||||||
void portOn() {
|
void portOn() {
|
||||||
if (portamento == 2) { // if portamento midi switching is enabled
|
if (portamento == 2) { // if portamento midi switching is enabled
|
||||||
midiSendControlChange(CCN_PortOnOff, 127);
|
midiSendControlChange(CCN_PortOnOff, 127);
|
||||||
|
} else if (portamento == 3) { // if portamento midi switching is enabled - SE02 OFF/LIN
|
||||||
|
midiSendControlChange(CCN_PortSE02, 64);
|
||||||
|
} else if (portamento == 4) { // if portamento midi switching is enabled - SE02 OFF/EXP
|
||||||
|
midiSendControlChange(CCN_PortSE02, 127);
|
||||||
}
|
}
|
||||||
portIsOn = 1;
|
portIsOn = 1;
|
||||||
}
|
}
|
||||||
|
@ -1360,6 +1364,10 @@ void portOff() {
|
||||||
}
|
}
|
||||||
if (portamento == 2) { // if portamento midi switching is enabled
|
if (portamento == 2) { // if portamento midi switching is enabled
|
||||||
midiSendControlChange(CCN_PortOnOff, 0);
|
midiSendControlChange(CCN_PortOnOff, 0);
|
||||||
|
} else if (portamento == 3) { // if portamento midi switching is enabled - SE02 OFF/LIN
|
||||||
|
midiSendControlChange(CCN_PortSE02, 0);
|
||||||
|
} else if (portamento == 4) { // if portamento midi switching is enabled - SE02 OFF/EXP
|
||||||
|
midiSendControlChange(CCN_PortSE02, 0);
|
||||||
}
|
}
|
||||||
portIsOn = 0;
|
portIsOn = 0;
|
||||||
oldport = 0;
|
oldport = 0;
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
#define ON_Delay 20 // Set Delay after ON threshold before velocity is checked (wait for tounging peak)
|
#define ON_Delay 20 // Set Delay after ON threshold before velocity is checked (wait for tounging peak)
|
||||||
#define CCN_Port 5 // Controller number for portamento level
|
#define CCN_Port 5 // Controller number for portamento level
|
||||||
#define CCN_PortOnOff 65// Controller number for portamento on/off
|
#define CCN_PortOnOff 65// Controller number for portamento on/off
|
||||||
|
#define CCN_PortSE02 9 // Controller number for portamento type on Roland SE-02
|
||||||
|
|
||||||
// Send breath CC data no more than every CC_BREATH_INTERVAL
|
// Send breath CC data no more than every CC_BREATH_INTERVAL
|
||||||
// milliseconds (due to timing errors, the value should be about half the actual wanted value)
|
// milliseconds (due to timing errors, the value should be about half the actual wanted value)
|
||||||
|
|
|
@ -891,9 +891,9 @@ const MenuPage breathMenuPage = {
|
||||||
//***********************************************************
|
//***********************************************************
|
||||||
// Control menu
|
// Control menu
|
||||||
const MenuEntrySub portMenu = {
|
const MenuEntrySub portMenu = {
|
||||||
MenuType::ESub, "PORT/GLD", "PORT/GLD", &portamento, 0, 2, MenuEntryFlags::EMenuEntryWrap,
|
MenuType::ESub, "PORT/GLD", "PORT/GLD", &portamento, 0, 4, MenuEntryFlags::EMenuEntryWrap,
|
||||||
[](SubMenuRef __unused,char* out, const char ** __unused unit) {
|
[](SubMenuRef __unused,char* out, const char ** __unused unit) {
|
||||||
const char* labs[] = { "OFF", "ON", "SW" };
|
const char* labs[] = { "OFF", "ON", "SW", "SEL", "SEE" };
|
||||||
strncpy(out, labs[portamento], 4);
|
strncpy(out, labs[portamento], 4);
|
||||||
},
|
},
|
||||||
[](SubMenuRef __unused sub) { writeSetting(PORTAM_ADDR,portamento); }
|
[](SubMenuRef __unused sub) { writeSetting(PORTAM_ADDR,portamento); }
|
||||||
|
|
|
@ -125,7 +125,7 @@ void readEEPROM(const bool factoryReset) {
|
||||||
breathCC = readSettingBounded(BREATH_CC_ADDR, 0, 10, BREATH_CC_FACTORY);
|
breathCC = readSettingBounded(BREATH_CC_ADDR, 0, 10, BREATH_CC_FACTORY);
|
||||||
breathAT = readSettingBounded(BREATH_AT_ADDR, 0, 1, BREATH_AT_FACTORY);
|
breathAT = readSettingBounded(BREATH_AT_ADDR, 0, 1, BREATH_AT_FACTORY);
|
||||||
velocity = readSettingBounded(VELOCITY_ADDR, 0, 127, VELOCITY_FACTORY);
|
velocity = readSettingBounded(VELOCITY_ADDR, 0, 127, VELOCITY_FACTORY);
|
||||||
portamento = readSettingBounded(PORTAM_ADDR, 0, 2, PORTAM_FACTORY);
|
portamento = readSettingBounded(PORTAM_ADDR, 0, 4, PORTAM_FACTORY);
|
||||||
PBdepth = readSettingBounded(PB_ADDR, 0, 12, PB_FACTORY);
|
PBdepth = readSettingBounded(PB_ADDR, 0, 12, PB_FACTORY);
|
||||||
extraCT = readSettingBounded(EXTRA_ADDR, 0, 4, EXTRA_FACTORY);
|
extraCT = readSettingBounded(EXTRA_ADDR, 0, 4, EXTRA_FACTORY);
|
||||||
vibrato = readSettingBounded(VIBRATO_ADDR, 0, 9, VIBRATO_FACTORY);
|
vibrato = readSettingBounded(VIBRATO_ADDR, 0, 9, VIBRATO_FACTORY);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue