led row text attr

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

Inlets

bool32.risingfalling mute

bool32.rising redraw

int32 row

Outlets

None

Attributes

table cell0

table cell1

table cell2

table cell3

table cell4

table cell5

table cell6

table cell7

objref LEDmaster

spinner row

Declaration
bool trig;
bool mtrig;
bool doit;
uint8_t prerow;
uint8_t row;
Control Rate
if (!inlet_mute && !mtrig) {
  mtrig = 1;
  doit = 1;
}
if (inlet_mute)
  mtrig = 0;
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], "attr_cell0",
           strlen("attr_cell0"));
    memcpy(&attr_LEDmaster.array[offset + 17], "attr_cell1",
           strlen("attr_cell1"));
    memcpy(&attr_LEDmaster.array[offset + 25], "attr_cell2",
           strlen("attr_cell2"));
    memcpy(&attr_LEDmaster.array[offset + 34], "attr_cell3",
           strlen("attr_cell3"));
    memcpy(&attr_LEDmaster.array[offset + 42], "attr_cell4",
           strlen("attr_cell4"));
    memcpy(&attr_LEDmaster.array[offset + 51], "attr_cell5",
           strlen("attr_cell5"));
    memcpy(&attr_LEDmaster.array[offset + 59], "attr_cell6",
           strlen("attr_cell6"));
    memcpy(&attr_LEDmaster.array[offset + 68], "attr_cell7",
           strlen("attr_cell7"));
    attr_LEDmaster.ROW = row + 1;
  }
}
if (inlet_mute)
  mtrig = 0;
if (!inlet_redraw)
  trig = 0;

Privacy

© 2024 Zrna Research