makepad/libs/show_control/resources/dmx/2025-04-30
Admin e803a745a5 libs: piano_model, drumkit_phys, show_control, score_view, diffusion
Squash of 5 work commits (Sep 2–9):
  066c782  piano model: the lower register is hammered, not plucked
  f2b0253  drumkit: a sample-based kit for the score preview; the physical model parked as drumkit_phys
  3dfe5aa  show-control: restore sixteen DMX scenes with local save overlays
  b49e2e5  piano-model: calibrate partial gains and decay against recordings
  d73cd40  piano_model: add an interactive piano-physics explainer page

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-15 13:40:32 +02:00
..
.gitignore libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx0.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx1.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx2.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx3.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx4.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx5.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx6.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx7.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx8.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx9.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx10.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx11.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx12.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx13.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx14.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
dmx15.ron libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00
README.md libs: piano_model, drumkit_phys, show_control, score_view, diffusion 2026-09-15 13:40:32 +02:00

Recovered handmade DMX scenes

These 16 numbered files are byte-for-byte copies of local/dmx_recovered/makepad-backup_local_dmx/dmx0.ron through dmx15.ron, recovered from makepad-backup/local/dmx and duplicated identically in makepad_broken2/local/dmx. Their sizes and SHA-256 hashes were checked against local/dmx_recovered/index.tsv (124 files in nine directories).

The bank is selected by its current-state snapshot date, 2025-04-30, the second distinct snapshot date before makepad7/dmx.ron on 2025-05-03. The numbered files themselves have 2025-04-11 timestamps. The recovered dmx.ron current state is deliberately excluded; selecting this bank does not load it. Duplicate scenes (including 8–11) retain their original slots.

dmxN.ron supplies zero-based slot N, displayed as P(N+1). Slots 0–12 use ControllerState directly. Slots 13–15 use the older dial_a/b/c layout, translated according to the January 14, 2025 hardware migration in 683bbf60654836458bfe8c1eb3a5950718393179, experiments/huedmx/src/app.rs:

Legacy control Modern control
fade[1], fade[2] fade[2], fade[1] (outer/inner movers)
fade[6], fade[7] fade[7], fade[6] (UV)
dial_a[0..=5] dial_1[0..=5]
dial_c[0, 2, 1, 3] dial_top[0, 1, 2, 3]
dial_b[1] dial_top[5]
dial_b[0, 2, 3, 4] dial_5[0..4]
dial_b[5, 6, 7] dial_0[0..3]
dial_a[6], dial_a[7] tempo, only when the two speeds agree

Both legacy speed values are zero in all three selected files. Conflicting speeds in a legacy override are rejected. Other faders retain their values; unused legacy dial_c[4..8] have no active destination in the migration. Unused modern controls default to zero. Scene loading still preserves the desk's existing entire dial_0 smoke-timing bank after conversion.

Missing preset_NN.ron slots fall back to these compiled-in originals. Saves use the separate checkout-local local/vj/dmx/2025-04-30 overlay, resolved from the crate's build-time absolute path, or VJ_DMX_PRESET_DIR when set. Existing invalid/unreadable overrides fail instead of falling back. Only an overlay's current.ron can restore current state. The recovery originals and examples/automate/local/dmx are not save destinations by default.

Hardware remains note 52/channels 0–7 → P1–P8 and notes 82–86 → P9–P13. P14–P16 are on-screen only; clip-grid notes 0–39 and CC 15 remain reserved to VJ.