CV ITE (If-Then-Else)

This forum is for sharing patches created with the updated Combinator, as well as backdrops and any backdrop assets.
Forum rules
This forum is for sharing patches created with the updated Combinator, as well as backdrops and any backdrop assets. If you would like to share a patch here as an attachment, you must zip it first. Otherwise you can host your patches elsewhere and share the links here.
Post Reply
User avatar
syzygianrrf9999
Posts: 36
Joined: 14 Aug 2018
Contact:

02 Aug 2022

Greetings everyone. Here is another logic/boolean-based Combi I made. Its designed to be used with high-speed rhythmic patterns, but I've stripped this one down so that its more open-ended and maybe a bit less overwhelming than my last submission:

LOGOS-ITE.cmb

LOGOS-ITE.JPG
LOGOS-ITE.JPG (221.32 KiB) Viewed 676 times
REs:
  • Lolth CV Delay Splitter
  • Euclid Rhythm Generator
  • Truth
  • Select CV Switch
  • CV Suite Line Processor

    This combi can be used in a ton of ways, from cleanly swapping between extended patterns, or rapidly grabbing pieces of them on the fly. It can also be manipulated to concatenate patterns into ones much longer than could be traditionally programmed with most step-sequencers.

    Truth table sample

    The logic, which is essentially a 4-premise if-then-else statement and also the same as a 4:1 multiplexer (muxer) is as follows:

    ((((A and B) and P) or ((A and not B) and Q)) or (((not A and B) and R) or ((not A and not A) and S))), where A and B are the two Euclids and P/Q/R/S are 4 CV signals of your choosing input into the Lolth splitter above. Lolth was used as it allows labeling of the splitter channels. Its free if you don't have it.

    In English, this means:
    1. If there is a pulse on Euclid A and Euclid B, then output CV gate P, else...
    2. if there is a pulse on Euclid A but not Euclid B, then output CV gate Q, else...
    3. if there is a pulse on Euclid B but not Euclid A, then output CV gate R, else...
    4. if there are no pulses on Euclid A or Euclid B, then output CV gate S.
    Device breakdown:
    1. INPUT-SPLIT - Self-explanatory, this is where you hookup your CV inputs. Ideally intended for gate CV rather than note or LFOs, more on this later.
    2. MUX-A - Selector pattern together with MUX-B.
    3. MUX-B - Selector pattern together with MUX-A.
    4. AB-SPLIT - Splits the gate and inverse gate outputs from MUX-A and MUX-B to form a 4-to-1 selector.
    5. MUX-SPLIT - Splits the results of the 4 multiplexer stages, outlined above.
    6. CAT-SPLIT - Splits the sums (or concatenations, assuming step count/lengths are in proporation) of the 4 multiplexer stages in 2 pairs, as well as the final sum of said sums.
    7. A1/B1/A2/B2 / LITERALS / MUXER - Note that the logic gates will generate somewhat 1-dimensional results on LFOs/note CVs unless the test method is set to "RISING" instead of ">0". I don't use these for LFOs personally but if enough people want it I'll add a universal control for this. Anyway - I would pay The Chronologists' rent to see them make more REs and update the ones they have. This one doesn't allow channel labelling unfortunately, so here's what each one is doing, from left to right ("NOT" here just means an inverted gate output):
      • A1/B1/A2/B2 -
        1. {A AND B}
        2. {A AND NOT B}
        3. {NOT A AND B}
        4. {NOT A AND NOT B}
        5. {{{A AND B} AND P} OR {{A AND NOT B} AND Q}}
      • LITERALS -
        1. P
        2. Q
        3. R
        4. S
        5. {{{NOT A AND B} AND R} OR {{NOT A AND NOT B} AND S}}
      • MUXER -
        1. {{A AND B} AND P}
        2. {{A AND NOT B} AND Q}
        3. {{NOT A AND B} AND R}
        4. {{NOT A AND B} AND R}
        5. {{{{A AND B} AND P} OR {{A AND NOT B} AND Q}} OR {{{NOT A AND B} AND R} OR {{NOT A AND NOT B} AND S}}}
    8. SELECTOR - Controls the output, which can be any of the 4 original inputs, either of the pair of 2:1 multiplexers, or their full sum output as a 4:1 multiplexer/concatenator (the full if-then-else statement described before).
    9. QUANT - I use this to quantize the gate outputs in cases where some CV delay rears its ugly head, but there are numerous tweaks that could be made using this device.
    10. OUTPUT - Send this to a device that makes noises, obviously.
    Controls:
    • MUX-A-DENSITY - the pattern density of the corresponding Euclid.
    • MUX-B-DENSITY - the pattern density of the corresponding Euclid.
    • MUX-SYNC-DENSITY - the pattern density of both Euclids.
    • MUX-A-STEPS - the step count density of the corresponding Euclid.
    • MUX-B-STEPS - the step count of the corresponding Euclid.
    • MUX-SYNC-STEPS - the step count of both Euclids.
    • SELECT - moves between the various stages as outputs.
    • 57-OFFSET - adds a 5-step offset to MUX-A and a 7-step offset to MUX-B. Useful for alterations of established patterns whilst maintaining density and step synchronization.
industrial/psycore/breakcore/electronic modular metal: https://soundcloud.com/rose-red-flechette

Mataya
Posts: 518
Joined: 03 May 2019

02 Aug 2022

I don't understand shit, but I so want to. Thanks anyway.

Mataya
Posts: 518
Joined: 03 May 2019

02 Aug 2022

Just heard some of your music. Don't understand that to. Jajks

M

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 2 guests