6xHrmrphMem

This is the control module for the 6xHrmrphOSC module.
Author: Remco van der Most
License: BSD
Github: sss/osc/6xHrmrphMem.axo

Inlets

int32 adds to respective value

int32 adds to respective value

int32 adds to respective value

int32 adds to respective value

int32 select parameter to change (0 to 17)

frac32.positive input for controlling parameters

bool32.rising Trigger high updates parameter to "in" inlet

frac32 FMW

frac32 adds to respective value, so no need for external adders.

frac32 adds to respective value

frac32 adds to respective value

frac32 adds to respective value

frac32 adds to respective value

frac32 adds to respective value

frac32 Algo

frac32 ShiftStep

frac32 ShiftHalf

frac32 ShiftSec

frac32 ShiftThr

Outlets

frac32 FMW

frac32 Walk

frac32 SprdM

frac32 Sprd1

frac32 Sprd2

frac32 SprdE

frac32 AM

frac32 Algo

frac32 ShiftStep

frac32 ShiftHalf

frac32 ShiftSec

frac32 ShiftThr

int32 Connect all parameters to corresponding inputs of the quad counter module or several single counter modules.

int32 Step2

int32 Range

int32 Minimum

Parameters

int32 Step1

int32 Step2

int32 Range

int32 Minimum

frac32.s.map FMW

frac32.s.map Walk

frac32.s.map SprdM

frac32.s.map Sprd1

frac32.s.map Sprd2

frac32.s.map SprdE

frac32.s.map AM

frac32.s.map Algo

frac32.s.map ShiftStep

frac32.s.map ShiftHalf

frac32.s.map ShiftSec

frac32.s.map ShiftThr

Declaration
int32_t cache;
int trg;
Control Rate
switch (inlet_sel > 0 ? inlet_sel : 0) {

case 0:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_FMW],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 1:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Walk],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 2:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_SprdM],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 3:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Sprd1],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 4:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Sprd2],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 5:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_SprdE],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 6:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_AM], inlet_in,
                       0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 7:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Step1],
                       (inlet_in >> 19) + 257, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 8:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Step2],
                       (inlet_in >> 19) + 256, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 9:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Range],
                       (inlet_in >> 19) + 257, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 10:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Minimum],
                       (inlet_in >> 19) + 257, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 11:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_Algo],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 12:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_ShiftStep],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 13:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_ShiftHalf],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 14:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_ShiftSec],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;

case 15:
  if ((inlet_trg > 0) && (trg != 1)) {
    trg = 1;
    PExParameterChange(&parent->PExch[PARAM_INDEX_attr_legal_name_ShiftThr],
                       inlet_in, 0xFFFD);
  } else {
    if (inlet_trg == 0) {
      trg = 0;
    }
  }
  break;
}
outlet_FMW = param_FMW + inlet_FMW;
outlet_Walk = param_Walk + inlet_Walk;
outlet_SprdM = param_SprdM + inlet_SprdM;
outlet_Sprd1 = param_Sprd1 + inlet_Sprd1;
outlet_Sprd2 = param_Sprd2 + inlet_Sprd2;
outlet_SprdE = param_SprdE + inlet_SprdE;
outlet_AM = param_AM + inlet_AM;
outlet_Step1 = param_Step1 + inlet_Step1;
outlet_Step2 = param_Step2 + inlet_Step2;
outlet_Range = param_Range + inlet_Range;
outlet_Minimum = param_Minimum + inlet_Minimum;
outlet_Algo = param_Algo + inlet_Algo;
outlet_ShiftStep = param_ShiftStep + inlet_ShiftStep;
outlet_ShiftHalf = param_ShiftHalf + inlet_ShiftHalf;
outlet_ShiftSec = param_ShiftSec + inlet_ShiftSec;
outlet_ShiftThr = param_ShiftThr + inlet_ShiftThr;

Privacy

© 2024 Zrna Research