PER|FORMER

features

forked and maintained by Vinx Scorza

Features

This page is the curated web summary of the Vinx Scorza line. It focuses only on the Vinx fork, starting from v0.3.2-vinx.1 (historical naming) and moving to standalone Vinx semantic versioning from v0.4.0, and reorganizes the work by topic instead of strict release order so it is easier to understand what this branch actually adds.

This documentation line is aligned through the active v0.4.0 development line. If you want the exact chronological log, including inherited upstream history and older v0.3.2-vinx.* releases, the repository CHANGELOG.md remains the technical reference.

Core Sequencing

The fork began with direct sequencing fixes, and that foundation still shapes everything above it.

  • Stabilize step shifting across Note, Logic, Curve, Stochastic, and Arp, including the old 64-step crash/reboot case and shifting inside non-zero subranges.
  • Expand Curve tracks with per-step Gate Offset and Gate Length layers, including edit-page, overview, Launchpad handling, and simulator bindings.
  • Restore undo on Curve editing so it matches the long-standing Note workflow.
  • Fix scale-selection limits so the full built-in plus user-scale set is reachable again across Project, Note, Logic, Stochastic, and Arp.
  • Make MIDI note capture follow the active scale's octave span, so voltage-mode user scales behave as proper scales instead of being forced into fixed 1V/oct assumptions.

Chaos generators

Chaos is the boldest Vinx-specific branch so far: intentionally rough, selection-aware, destructive when needed, and built around explicit preview/apply safety.

  • Introduce Chaos as an experimental Note-track generator based on explicit preview/apply safety rather than hidden destructive behavior.
  • Define it as a multi-layer macro-random system driven by a global Amount and a dedicated 4×4 target matrix with All On/Off controls.
  • Keep Chaos on ORIGINAL at entry and require explicit CHAOS action before generating the first preview.
  • Make Chaos selection-aware (persistent selection first, fallback to current step window).
  • Extend Chaos into CHAOS MODE with Vandalize Sequence (local, sequence-level) and Wreck Pattern (pattern-wide, multi-track, more destructive).
  • Add full compare workflow (ORIGINAL ↔ VANDALIZED/WRECKED), A/B preview, and dedicated popups.
  • Add Entropy as the Chaos subset for non-Note Launchpad workflows, reusing ORIGINAL → CHAOS → A/B logic in a track-local context.
  • Add System -> Chaos Defaults with separate masks for sequence vandalizing and pattern wrecking.
  • Wrap destructive operations with warnings, explicit flows, and tighter memory handling.
  • Improve performance and memory usage (target-step backup only, in-place regeneration, sequence-scoped storage).

Acid generators

Acid is one of the clearest Vinx-specific expansions of the generator system: more musical, more structured, and layered.

  • Introduce Acid as a new Note-track generator with non-destructive preview.
  • Generate the first preview immediately on entry.
  • Split workflow into Layer mode (projects behavior onto a single layer: Gate / Note / Slide) and Phrase mode (writes coordinated Gate + Note + Slide phrases over selection or full pattern).
  • Refine parameter model (density, slide behavior, deterministic target counts).
  • Provide dedicated visual previews instead of generic generator rendering.
  • Align ordering and mapping across machine and Launchpad (Layer → Phrase).

Random generator

Random evolves from a quick reroll tool into a controlled generator with identity, stability, and compare workflow.

  • Rework Random around a non-destructive preview/apply model with A/B, Cancel, Apply, and reroll behavior.
  • Generate first preview immediately on entry.
  • Add Variation for controlled deviation from the original sequence instead of always jumping to a fully unrelated result.
  • Move to full 32-bit hexadecimal seeds with stable behavior during parameter edits.
  • Keep seed stable while editing parameters to improve intentionality.
  • Improve preview rendering (layer-aware on Note tracks, richer visuals).
  • Keep generator footer actions in context (no unexpected page exit).

Launchpad

The Vinx line treats Launchpad support as a first-class live-performance layer, not just an accessory.

  • Maintain Launchpad as a core system layer (LP Style / LP Note Style).
  • Change the default Launchpad settings to LP Style = Blue and LP Note Style = Circuit.
  • Support both Classic and Circuit workflows.
  • Fix multiple regressions (Note Style, targeting, pattern drawing, fill release, probability handling).
  • Add and expand Launchpad Generators Mode: full mapping on Note tracks; subset mapping on Curve / Stochastic / Logic / Arp (Random, Entropy, Euclidean, Init Steps).
  • Add Undo and consistent Apply/Cancel/Reset flows.
  • Lock track/scene retargeting during generator selector and generator pages.
  • Improve overlay stability, selector alignment, and generator commit behavior.
  • Add direct track jump to Steps from system pages via Launchpad.
  • Wake display on Launchpad input.
  • Refactor Launchpad controller architecture (P1 split, routing, LED drawing, lock helpers).

Clock & Sync

Clock behavior has been adjusted with real hardware compatibility and safer external sync as priorities.

  • Change the default output clock pulse from 1ms to 10ms for broader module compatibility.
  • Rescale the Swing UI to a more natural 0-99% range while preserving original engine timing for backward compatibility.
  • Clarify reset behavior by separating Reset Gate and introducing Reset Pulse as a distinct external clock mode.
  • Make Reset Pulse react only to the rising edge, avoiding implicit start on falling edge.
  • Change the default Reset CV behavior to Off, so Note tracks hold their last CV value on stop unless the project explicitly asks otherwise.

Current Validation Scope

The system is actively used and locally verified, but some areas benefit from broader testing.

  • External clock modes (Reset Pulse / Reset Gate) still benefit from real hardware validation.
  • Voltage Mode user scales need broader testing across Note / Arp / Stochastic.
  • Desktop Simulator USB MIDI has been validated well on macOS / OS X with Launchpad Mini MK3, but not yet across other Launchpads or operating systems.

Generator UX

Beyond individual generators, the Vinx line refines how generator pages behave and remain playable.

  • Reorganize generator menu for clarity as the family grows.
  • Open Generate on the current 16-step bank and keep navigation aligned.
  • Rework Euclidean generator (compare, preview-on-entry, reseed, direct parameter editing, Beats ≤ Steps constraint).
  • Make ResetGen restore neutral defaults instead of quietly rerolling the generator state.
  • Separate Init Layer / Init Steps / Init Seq with selection-aware fallback.
  • Keep transport responsive inside generator pages so the sequencer remains playable while shaping material.

UI & Display

Focus on readability, performance clarity, and meaningful visual feedback.

  • Redesign generator previews using full 64-step views with visible active 16-step bank and playback-following playhead.
  • Improve rendering for Random and Acid (aligned lanes, clearer visuals).
  • Refine step graphics (gate offset, length, retrigger, condition, slide clarity).
  • Reduce UI load: lower refresh to 30 fps and skip redraw when unchanged.

System & Defaults

Practical workflow improvements across machine behavior and persistence.

  • Add direct save from System and simplify the surrounding machine-settings flow.
  • Prompt to save when leaving System -> Settings after changing user settings, including Chaos Defaults, instead of treating those changes as silently disposable.
  • Return Chaos Defaults to the normal machine-settings save path instead of treating them as a special auto-written case.
  • Add Menu Wrap as an on-by-default preference for cyclic list navigation.
  • Refine screensaver, wake behavior, and System landing tab.
  • Improve memory footprint versus upstream baseline (SRAM/CCRAM reduction vs Mebitek 0.3.2).

Simulators

The simulator side of the fork is now a real part of the ecosystem: useful for development, useful for testing, and documented as such.

  • Clearly distinguish the browser-based Web Simulator from the native Desktop Simulator.
  • Improve Desktop Simulator: configurable DIN/USB MIDI via CLI and MIDI disabled by default.
  • Add status indicators and tracing (--trace-midi, --trace-dio).
  • Improve Launchpad support (model inference, port mirroring).
  • Align simulator state and behavior with firmware.

Documentation

Documentation evolves together with the firmware.

  • Realign manual to Vinx behavior (including Launchpad and generators).
  • Keep manual text-first while preserving technical clarity.
  • Update simulator documentation pages.
  • Maintain ecosystem pages (Forks, Features, etc.).
  • Expand build guide with simulator, MIDI, Launchpad, and tracing workflows.

Versioning

  • Transition from v0.3.2-vinx.* lineage to standalone semantic versioning (v0.x.y) starting from v0.4.0.
  • Previous lineage retained for documentation/reference only.