Buchla folding II
Buchla Folding 2 A wavefolder using modular arithmetic to reflect a signal at variable boundaries, producing infinite folding stages without discrete stage limits. Inputs Input (audio): Signal to fold. Drive (1–32): Multiplies the input amplitude before folding. Higher values = more folds. Threshold (0–2): Sets the reflection boundaries at ±T/2. Lower values fold more aggressively at the same drive level and reduce the output amplitude range. Output Folded audio signal, bounded to ±Threshold/2. Usage Drive and Threshold both increase fold density but interact differently. Drive pushes the signal harder into the folding boundaries. Threshold moves the boundaries closer to zero, which also increases fold count but simultaneously compresses the output range. For classic Buchla-style folding, set Threshold to 2 (boundaries at ±1) and sweep Drive. For more extreme timbres, lower Threshold while keeping Drive moderate.
Modulo III
**Euclidean Modulo** Divides a dividend by a divisor and returns two outputs: the remainder (always non-negative) and the quotient (the number of whole times the divisor fits into the dividend, floored toward negative infinity). **Inputs** - Input 1: Dividend (the number being divided) - Input 2: Divisor (the number to divide by) **Outputs** - Output 1: Quotient (floor of dividend ÷ divisor) - Output 2: Remainder (always in the range 0 to divisor-1) **How it works internally** The core is a truncating division: dividend × (1/divisor), then floor via subtracting the fractional part. This gives a truncation remainder (dividend - quotient × divisor), which can be negative when the dividend is negative. The Euclidean correction negates the truncation remainder and feeds it through GreaterThanZero. If the remainder was negative, the negated value is positive, GreaterThanZero outputs 1, and the divisor is added back to bring the remainder into the non-negative range. If the remainder was zero or positive, nothing happens. **Usage examples** Scale degree wrapping: with divisor 7, an input of 15 returns quotient 2 (octave) and remainder 1 (scale degree). An input of -1 returns quotient -1 and remainder 6 (wraps around rather than going negative). Phase wrapping, buffer looping, or any situation where you need a value to stay within a fixed non-negative range regardless of the sign of the input. **Note**: divisor must be non-zero. A divisor of zero will cause a division-by-zero through the OnePerX node.
Amplitude monitors
Gives you max and min values with a decay down to 0, to help get a sense of the amplitude of waveforms over time.
Custom Oscillator II
(hopefully) hard syncs a timer node with an oscillator to produce the phase as well as the basic wave form at the same time.