Chapter 08: Specifications & MIDI Chart
8.1 MIDI Note Mapping
TOMiC does not use a fixed General MIDI drum map — each of the three note ranges below is TOMiC-specific and maps by simple offset (base note + channel index, or base note + pattern index) rather than a hardcoded instrument name. What each channel actually sounds like depends entirely on how you've designed/loaded it.

MIDI Note Mapping and Automation
Figure 8.1: MIDI CC Learn configuration window.
Range 1: TRIGGER Mode (starts at C1 / MIDI Note 36)
Used for direct one-shot sound triggering, bypassing the step sequencer (finger drumming, external drum pads). Notes 36 to 36 + N - 1 map straight to Channel 1 through Channel N, where N is however many channels you have enabled (up to the 16-channel maximum) — so with the default 8 visible channels, the active range is C1-D#2 (36-51)... but only its first 8 notes (36-43, C1-G1) actually reach an enabled channel; the rest come alive as you add more channels.
Note: unlike a fixed GM drum kit, TOMiC does not assign a "Kick"/"Snare"/"Clap" role to a specific note number — Channel 1 plays whatever sound you've built or loaded into Channel 1.
Range 2: GATE Mode (starts at E2 / MIDI Note 52)
Active when MIDI Gate Mode is enabled (a dedicated toggle in the header/options, off by default). Holding a note gates the internal step sequencer's playback for the corresponding channel for as long as the note is held. Notes 52 to 52 + N - 1 map to Channel 1 through Channel N the same way as Range 1 — so the default 8-channel range is E2-B2 (52-59), extending up to G3 (67) across all 16 channels.
Range 3: PATTERN Mode (starts at C4 / MIDI Note 72)
A third, independent range triggers whole pattern banks. Notes 72 to 83 select pattern banks A through L — all 12 of TOMiC's regular, lettered pattern banks (the 13th pattern slot, FILL, is a global performance override rather than a lettered bank, and is not reachable via MIDI note — see 6.2). Playing one of these notes immediately switches the live sequencer to that pattern; it is monophonic and last-note-wins if several are held. Note velocity is ignored here — playback uses the pattern's own per-step volumes.
8.2 Keyboard Shortcuts
For maximum workflow speed during sound design and live performance, TOMiC features a precise keyboard shortcut system. All single-key triggers are automatically suspended whenever a text entry field (such as channel renaming or value entry) is focused to avoid accidental playback or parameter switches.
Channel Navigation, Mute & Solo (Bank 1 & Bank 2)
Finger Drumming Sound Triggers
Edit History, Channel Snapshot & Transport
8.3 MIDI CC Automation (MIDI Learn System)
TOMiC features a dynamic, programmable MIDI CC Learn system mapping hardware CC controllers to every channel's fixed performance parameters and all its Macro knobs — 183 learnable parameters in total across the full 16-channel architecture.
MIDI Learn Parameter Layout:
Global Parameters (3):
Per-Channel Fixed Parameters (Channels 1-16, 4 each = 64 parameters):
Every channel exposes the same 4 key performance parameters for real-time control:
Per-Channel Macro Knobs (Channels 1-16, 7 each = 112 parameters):
All 7 Macro knobs on every channel are individually CC-learnable, labeled with whatever custom name you've given that Macro slot.
Global Macros (4):
All 4 Global Macro knobs are also individually CC-learnable.
Example: Param 4 is Ch1 Volume, Param 7 is Ch1 Filter Res, Param 34 is Ch8 Filter Freq. Channels 1-8's fixed parameters and Macros occupy the original contiguous parameter-ID block (this legacy layout was kept as-is so saved CC mappings from earlier versions still point at the same parameter); Channel 9-16 slots and all Macro rows were appended after it as the channel count grew, rather than renumbering anything.
How to Assign MIDI Learn:
1. Open the MIDI CC Learn window.
2. Click [LEARN] next to the target parameter.
3. Move a knob or fader on your MIDI controller.
4. The CC is instantly assigned. Click [CLEAR] to remove a mapping.
In the Standalone app, an external MIDI controller connects through a runtime device selector (midir); received CC messages are written into the same lock-free atomics that a DAW host's automation would use, and are picked up by the audio thread on the next block boundary — the same code path either way, not a separate low-latency bypass.
8.4 Technical Specifications
wide crate's f32x8, compiled for x86-64-v3/AVX2 on official Windows builds and natively on Linux, falling back to SSE2 on unsupported CPUs), fast-math algorithms, PolyBLEP anti-aliasing, and 2× oversampling (HalfBand2x IIR) on distortion buses.nih-plug foundation can in principle be compiled on macOS as well, but macOS is not currently part of the official build/release pipeline.