25 #include <MD_Parola.h>
26 #include <MD_Parola_lib.h>
30 void MD_Parola::effectBlinds(bool bIn)
31 // Transfer between messages with blinds effects
33 static uint8_t blindCount;
37 case INITIALISE: // bIn = true
38 case PAUSE: // bIn = false
39 PRINT_STATE("IO BLIND");
41 _fsmState = GET_FIRST_CHAR;
44 case GET_FIRST_CHAR: // blinds closing
45 PRINT_STATE("IO BLIND");
48 for (uint16_t i=0; i<_D.getColumnCount(); i++)
50 if (i % BLINDS_SIZE < blindCount)
51 _D.setColumn(i, 0xff);
54 if (blindCount == BLINDS_SIZE)
56 blindCount = BLINDS_SIZE;
57 _fsmState = GET_NEXT_CHAR;
61 case GET_NEXT_CHAR: // blinds opening
62 PRINT_STATE("IO BLIND");
64 if (bIn) commonPrint(); // only do this when putting hte message up
67 for (uint16_t i=0; i<_D.getColumnCount(); i++)
69 if (i % BLINDS_SIZE < blindCount)
70 _D.setColumn(i, 0xff);
78 PRINT_STATE("IO BLIND");
80 if (bIn) commonPrint();
81 _fsmState = (bIn ? PAUSE : END);
85 PRINT_STATE("IO BLIND");
86 _fsmState = (bIn ? PAUSE : END);