Skip to content

amyboardweb: restore DX7 patch levels; skip disabled panes on DX7#907

Merged
dpwe merged 1 commit intomainfrom
claude/loving-brown-6728d9
Apr 24, 2026
Merged

amyboardweb: restore DX7 patch levels; skip disabled panes on DX7#907
dpwe merged 1 commit intomainfrom
claude/loving-brown-6728d9

Conversation

@bwhitman
Copy link
Copy Markdown
Collaborator

Summary

  • Drop trailing ,,0,0 from OSCA/OSCB level change_code in amy_parameters.js so the a (amp) command no longer clobbers EG0/LFO coefs — mostly-restores DX7 patch sound.
  • Disable the Osc A pane (in addition to Osc B + ADSR) for DX7 presets across all three load paths: the editor preset loader (editor/index.html), spss.js patch loader (load_saved_patch_file_into_current_channel), and apply_zd_dump_to_knobs (Pull).
  • Stop blasting initial knob-CC updates for disabled panes on DX7 preset load:
    • send_all_knob_cc_mappings (spss.js) skips knobs whose section is in window._disabled_sections.
    • refresh_knobs_for_channel (amy_parameters.js) skips the onKnobCcChange loop for those knobs.
    • The editor preset loader now marks Osc A / Osc B / ADSR disabled before calling send_all_knob_cc_mappings, so the skip takes effect on first load.

Deployed to https://amyboard-wip.vercel.app for collaborator testing.

Test plan

  • Load a DX7 preset: Osc A, Osc B, ADSR panes are all visibly disabled.
  • Load a DX7 preset: no ic… wire commands go out to AMY for Osc A / Osc B / ADSR knobs on initial load.
  • DX7 patches actually make sound (the ,,0,0 removal should restore amp).
  • Load a non-DX7 (AMYboard/Juno) preset: all panes remain enabled and knob CC mappings send normally.
  • Pull in control mode applies the same disable + skip behavior via apply_zd_dump_to_knobs.

🤖 Generated with Claude Code

- amy_parameters.js: drop trailing ,,0,0 from OSCA/OSCB level change_code so
  the `a` (amp) command doesn't clobber EG0/LFO coefs. Mostly-restores DX7
  patch sound.
- Disable the Osc A pane (in addition to Osc B and ADSR) for DX7 presets in
  all three load paths: editor preset loader, spss patch loader, and the
  apply_zd_dump_to_knobs Pull path.
- Skip disabled-section knobs in send_all_knob_cc_mappings and in the
  refresh_knobs_for_channel onKnobCcChange loop so disabled panes don't
  blast initial ic updates to AMY on DX7 preset load. Set the disabled
  state before send_all_knob_cc_mappings runs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@dpwe dpwe merged commit 5efa413 into main Apr 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants