led row text

Author:
License: GPL
Github: rbrt/push/led row text.axo

Inlets

bool32.rising redraw

int32 row

charptr32 text0

charptr32 text1

charptr32 text2

charptr32 text3

charptr32 text4

charptr32 text5

charptr32 text6

charptr32 text7

bool32.risingfalling mute

Outlets

int32 test

Attributes

objref LEDmaster

spinner row

Declaration
bool trig;
bool mtrig;
bool doit;
uint8_t prerow;
uint8_t row;
Control Rate
if (!inlet_mute) {
  row = (inlet_row + attr_row) % 4;
  uint16_t offset = row * 77;
  if (inlet_redraw && !trig) {
    trig = 1;
    doit = 1;
  }
  if (!inlet_redraw)
    trig = 0;
  if (row != prerow) {
    doit = 1;
    prerow = row;
  }
  if ((doit && !attr_LEDmaster.ROW) && !attr_LEDmaster.LOCKED) {
    doit = 0;
    memset(&attr_LEDmaster.array[offset + 8], 32, 68);
    memcpy(&attr_LEDmaster.array[offset + 8], inlet_text0, strlen(inlet_text0));
    memcpy(&attr_LEDmaster.array[offset + 17], inlet_text1,
           strlen(inlet_text1));
    memcpy(&attr_LEDmaster.array[offset + 25], inlet_text2,
           strlen(inlet_text2));
    memcpy(&attr_LEDmaster.array[offset + 34], inlet_text3,
           strlen(inlet_text3));
    memcpy(&attr_LEDmaster.array[offset + 42], inlet_text4,
           strlen(inlet_text4));
    memcpy(&attr_LEDmaster.array[offset + 51], inlet_text5,
           strlen(inlet_text5));
    memcpy(&attr_LEDmaster.array[offset + 59], inlet_text6,
           strlen(inlet_text6));
    memcpy(&attr_LEDmaster.array[offset + 68], inlet_text7,
           strlen(inlet_text7));
    attr_LEDmaster.ROW = row + 1;
  }
}
if (inlet_mute)
  mtrig = 0;
if (!inlet_redraw)
  trig = 0;

Privacy

© 2024 Zrna Research