Disable fretboard chord/stop side-effects in universal mode.

Ignore TM1629 keys 0-21 in universal so pad no longer changes KEY_ID or arms OutTime_Stop; keep tap-tempo and stop. Clear stale KEY_ID/PressFlag when entering universal tab.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
yuquanjun 2026-09-14 12:36:39 +08:00
parent 24261942d8
commit 713a768733
2 changed files with 11 additions and 0 deletions

View File

@ -680,6 +680,15 @@ void TM1629_Handle(uint8_t key)
STRING_MIDI *MIDI;
const STRING_MIDI *ORGAN_MIDI;
static uint8_t Last_Tm1926D_Key = 0;
/* 万能:指板不改和弦、不启停伴奏;保留拍速/停止 */
if (mGuiData[GUI_TAB_INDEX].Current == 0)
{
if (key == 22) { Tap_to_Speed(); return; }
if (key == 23) { Stop_AutoBand(); return; }
return; /* 忽略 0~21不改 KEY_ID/USE_MIDI/PressFlag不启停 OutTime_Stop */
}
if(BP_Transpose(key)) return;
switch(key)

View File

@ -280,6 +280,8 @@ void Touch_Action(int8_t FLAG, uint8_t ID, uint8_t areaIndex,uint8_t value)
if(mGuiData[GUI_TAB_LAST_INDEX].Current == mGuiData[ID].Current)
break;
StartFlag = 0;
KEY_ID_1629 = 0; /* 清专业等残留指板键,拨片按当前调走走向 */
PressFlag = 0;
AutoBandTop1_Stop();
UI_ReloadTonePreset(); /* 切换模式必须换库,避免专业仍播万能数据 */
break;