PEQ+CHORUS — signal-flow flowchart
PEQ+CHORUS — signal-flow flowchart
Image rep algo 71 · slots 71 · unit 0 (I-RAM load 84) · family combi · confidence high.
1-band flat PEQ + chorus
93 words, 31 class-A coefficient multiplies (17 named), 0 instructions still opaque, 20 of 93 not yet decoded. Landmarks detected: 2 biquad DF-I section(s), 1 LFO phase word(s), 4 C-format immediate load(s), 1 DRAM read/write word(s), 2 waveshaper LUT selector(s), 2 class-8 post-sum step(s).
flowchart TD
N0["Stereo input (L / R)"]
N1["Biquad tone/EQ<br/>2 Direct-Form-I sections (1 band(s) × 2 ch)<br/>b1,b0,b2,−a1,−a2, make-up"]
N0 --> N1
N2["controls: BAND EMPHASIS FC, BAND EMPHASIS Q, BAND EMPHASIS G"]
N1 -.-> N2
N3["Waveshaper transfer curve<br/>3-word LUT idiom, class-6 curve select (×2)"]
N1 --> N3
N4["LFO phase accumulator<br/>phase += f/44100 (Q0.23), wrap at 0x7FFFFF<br/>+ waveform lookup (LUT)"]
N3 --> N4
N5["controls: DEPTH, LFO SPEED, LFO WAVEFORM"]
N4 -.-> N5
N6["External delay line (DRAM)<br/>1 read/write word(s) (880.1.60 = READ, 880.1.20 = WRITE)"]
N4 --> N6
N7["C-format immediate loads (C40/C41)<br/>destination register UNKNOWN — the old 'envelope detector' reading is WITHDRAWN ×4"]
N6 --> N7
N8["VOLUME<br/>output level"]
N7 --> N8
N9["REV SEND<br/>to reverb bus"]
N8 --> N9
N10["Output (RETURN to kernel epilogue)"]
N9 --> N10
classDef io fill:#e8eef7,stroke:#33475b,stroke-width:1px,color:#111;
classDef proven fill:#d7f0d7,stroke:#2e7d32,stroke-width:2px,color:#111;
classDef measured fill:#dbe9fb,stroke:#1565c0,stroke-width:1.5px,color:#111;
classDef inferred fill:#fdf0d5,stroke:#b8860b,stroke-width:1.5px,color:#111;
classDef open fill:#eeeeee,stroke:#888,stroke-width:1px,color:#333,stroke-dasharray:5 5;
classDef ctrl fill:#f3e8fb,stroke:#6a1b9a,stroke-width:1px,color:#111;
class N0,N10 io;
class N1,N4 measured;
class N2,N5,N8,N9 ctrl;
class N3,N6 inferred;
class N7 open;
Classic-topology match
Most likely textbook topology: Union of the sub-effect topologies, in name order.
E.g. PEQ+DIST+DELAY = DF-I biquad(s) → waveshaper → delay line; the shape is the concatenation of the named stages.
Instruction hint: each named stage contributes its own idiom (biquad ACT 0x12/13/14, waveshaper class-6 LUT, delay class-1 ESC, LFO cell).
UI parameters (MEASURED, notes/kn5000-dsp-paramlist.md): BAND EMPHASIS FC, BAND EMPHASIS Q, BAND EMPHASIS G, CHORUS DRY/WET, DEPTH, LFO SPEED, LFO WAVEFORM, VOLUME, REV SEND.
Per-instruction detail: ../disasm/prog71_peq_chorus.dsm. Confidence legend and method: README.md. Narrative: the MAME development blog, KN5000 effects-DSP series (Parts 78-84). Reference: the project docs site, /effects-dsp/.