Created
December 14, 2020 11:46
-
-
Save tomjuggler/a154508c8fb564e50b68ac461d8b0a93 to your computer and use it in GitHub Desktop.
Example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Most of this code is the hard work of Tom Hastings www.bigtop.co.za // | |
// other credits here! Many thanks to .....// | |
volatile unsigned long millisecs = 0; | |
unsigned long seconds = 0; | |
volatile int variable = 0; | |
#include <avr/io.h> | |
#include <avr/interrupt.h> | |
typedef unsigned char PROGMEM prog_uchar; | |
//#include "FastSPI_LED2.h" | |
#include "FastLED.h" | |
//FastLED.h working now! | |
//#define BRIGHTNESS 20 //brightness done in code now | |
// | |
//////////////////////Colour Pallette Code://///////////// | |
boolean upDown = true; | |
boolean lines = true; | |
#define BRIGHTNESS 20 | |
#define UPDATES_PER_SECOND 30000 | |
CRGBPalette16 currentPalette; | |
TBlendType currentBlending; | |
extern CRGBPalette16 myRedWhiteBluePalette; | |
extern const TProgmemPalette16 myRedWhiteBluePalette_p PROGMEM; | |
int paletteVar = 1; | |
int motionSpeed = 1; | |
int maxStartIndex = 70; | |
int minStartIndex = 0; | |
volatile int setting = 2; | |
float thickness = PI; | |
const TProgmemPalette16 myRedWhiteBluePalette_p PROGMEM = | |
{ | |
CRGB::Red, | |
CRGB::Gray, // 'white' is too bright compared to red and blue | |
CRGB::Blue, | |
CRGB::Black, | |
CRGB::Red, | |
CRGB::Gray, | |
CRGB::Blue, | |
CRGB::Black, | |
CRGB::Red, | |
CRGB::Red, | |
CRGB::Gray, | |
CRGB::Gray, | |
CRGB::Blue, | |
CRGB::Blue, | |
CRGB::Black, | |
CRGB::Black | |
}; | |
//////////////////end Colour Pallette Code////////////////////////////// | |
#include <avr/pgmspace.h> | |
#define NUM_LEDS 37 | |
CRGB leds[NUM_LEDS]; | |
#define PIN 6 | |
//eeprom stuff: | |
#include <EEPROM.h> | |
byte eeprom_option; | |
byte eeprom_address = 0; | |
//flash | |
//#include <Flash.h> | |
struct dataRGB { byte r; | |
byte g; | |
byte b; }; | |
struct pattern { byte numLeds; | |
byte numFrames; | |
PROGMEM const prog_uchar *patData; }; | |
struct pattern2 { byte numLeds; | |
byte numFrames;}; | |
PROGMEM const prog_uchar message1Data[] = | |
{63, 63, 31, 31, 22, 9, 0, 0, -112, -3, -4, -4, -40, 68, 64, -92, -64, -32, -64, -60, -92, 96, 100, -8, -3, -4, -3, -111, 0, 0, 5, 22, 31, 31, 31, 63, | |
18, 63, 63, 63, 63, 18, 4, 0, 0, -112, -3, -3, -7, -43, 100, -128, -60, -64, -96, -92, -128, 100, -11, -3, -3, -3, 112, 0, 0, 4, 18, 95, 63, 63, 59, 22, | |
4, 18, 59, 63, 63, 63, 18, 4, 0, 32, -112, -3, -3, -3, -44, 96, -128, -60, -96, 96, 96, -44, -3, -3, -3, 112, 4, 0, 4, 17, 63, 63, 91, 91, 18, 5, | |
0, 8, 18, 59, 31, 63, 63, 18, 4, 0, 36, -112, -3, -3, -7, -44, 96, 96, 96, 100, -44, -3, -3, -35, 112, 0, 0, 4, 49, 95, 63, 63, 91, 50, 5, 0, | |
0, 0, 5, 18, 63, 63, 63, 63, 14, 4, 0, 4, -112, -3, -3, -3, -48, 68, 100, -44, -3, -4, -3, -112, 0, 0, 4, 17, 63, 63, 63, 63, 46, 5, 0, 0, | |
1, 0, 0, 5, 18, 59, 63, 31, 95, 18, 4, 0, 0, -112, -3, -3, -3, -40, -76, -3, -3, -3, 112, 0, 0, 4, 18, 95, 63, 27, 63, 18, 5, 0, 0, 1, | |
2, 2, 1, 0, 0, 50, 95, 63, 31, 63, 18, 4, 0, 0, -112, -3, -4, -4, -4, -4, -3, -112, 0, 0, 4, 50, 63, 31, 63, 63, 50, 5, 1, 1, 1, 2, | |
3, 2, 1, 1, 0, 0, 18, 95, 31, 31, 63, 18, 0, 0, 0, -80, -3, -4, -4, -3, -112, 0, 0, 4, 50, 95, 63, 63, 59, 18, 5, 1, 1, 1, 2, 2, | |
3, 3, 2, 2, 1, 0, 4, 50, 95, 31, 63, 63, 18, 4, 0, 0, -80, -3, -3, -112, 0, 0, 4, 50, 95, 63, 63, 59, 50, 5, 0, 1, 2, 2, 3, 3, | |
3, 3, 3, 2, 2, 1, 0, 4, 18, 95, 63, 31, 63, 18, 4, 0, 36, -112, 108, 4, 0, 4, 18, 95, 31, 63, 91, 50, 4, 0, 1, 1, 2, 3, 3, 3, | |
3, 3, 3, 3, 2, 2, 1, 0, 4, 50, 59, 31, 63, 63, 18, 4, 0, 0, 0, 0, 4, 18, 63, 31, 63, 59, 50, 4, 0, 1, 2, 2, 3, 3, 3, 3, | |
2, 2, 3, 3, 3, 2, 2, 1, 0, 4, 18, 63, 31, 63, 63, 18, 4, 0, 0, 4, 54, 63, 31, 31, 63, 18, 4, 0, 1, 2, 2, 3, 3, 3, 3, 3, | |
34, 2, 2, 3, 3, 3, 2, 2, 1, 0, 5, 50, 59, 63, 63, 63, 17, 8, 9, 18, 63, 63, 31, 63, 18, 5, 0, 1, 2, 2, 3, 3, 3, 2, 2, 34, | |
-121, 66, 34, 2, 3, 3, 3, 2, 2, 1, 0, 5, 18, 59, 63, 63, 95, 18, 22, 95, 63, 63, 63, 18, 4, 0, 1, 2, 2, 3, 3, 3, 3, 34, 66, -121, | |
-57, -93, 66, 34, 2, 3, 3, 3, 2, 2, 1, 0, 4, 50, 91, 63, 63, 63, 31, 31, 63, 95, 50, 4, 0, 1, 2, 3, 3, 3, 3, 2, 34, 66, -125, -89, | |
-29, -61, -89, 66, 2, 2, 3, 3, 3, 2, 1, 0, 0, 4, 18, 63, 31, 31, 31, 31, 63, 18, 0, 0, 0, 1, 2, 3, 3, 3, 3, 2, 66, -122, -57, -29, | |
-29, -29, -89, 98, 34, 2, 3, 3, 3, 3, 1, 1, 0, 0, 9, 59, 31, 31, 31, 31, 59, 9, 0, 0, 1, 2, 3, 3, 3, 3, 2, 2, 103, -89, -61, -29, | |
-29, -61, -93, 66, 2, 3, 3, 3, 3, 2, 1, 0, 0, 4, 18, 63, 31, 31, 31, 31, 95, 18, 0, 0, 1, 2, 2, 3, 3, 3, 3, 2, 66, -125, -61, -29, | |
-57, -93, 98, 34, 2, 3, 3, 3, 2, 2, 1, 0, 4, 18, 63, 63, 63, 63, 63, 63, 27, 95, 18, 4, 0, 0, 1, 2, 3, 3, 3, 3, 34, 98, -93, -57, | |
-89, 98, 34, 2, 3, 3, 3, 2, 2, 1, 0, 5, 50, 91, 63, 63, 59, 18, 22, 59, 63, 63, 95, 18, 4, 0, 0, 1, 3, 3, 3, 3, 2, 34, 98, -121, | |
34, 34, 3, 3, 3, 3, 2, 2, 1, 0, 5, 18, 63, 63, 59, 95, 17, 4, 5, 18, 95, 59, 63, 63, 18, 9, 0, 1, 2, 2, 3, 3, 3, 2, 2, 34, | |
2, 3, 3, 3, 3, 2, 1, 1, 0, 5, 18, 63, 63, 63, 59, 50, 4, 0, 0, 4, 13, 95, 63, 63, 63, 18, 5, 0, 1, 2, 2, 3, 3, 3, 2, 2, | |
3, 3, 3, 3, 2, 1, 1, 0, 5, 18, 63, 63, 63, 59, 18, 0, 0, 0, 4, 0, 0, 50, 59, 63, 63, 27, 18, 5, 0, 1, 2, 2, 3, 3, 3, 3, | |
3, 3, 3, 2, 1, 1, 0, 5, 50, 59, 63, 31, 63, 18, 4, 0, 36, -112, -112, 0, 0, 4, 50, 63, 31, 63, 63, 18, 4, 0, 1, 2, 3, 3, 3, 3, | |
3, 3, 2, 1, 0, 0, 5, 50, 63, 63, 63, 95, 17, 4, 0, 4, -112, -3, -3, -112, 0, 0, 5, 18, 63, 31, 63, 63, 50, 4, 0, 1, 2, 2, 3, 3, | |
3, 2, 1, 1, 0, 4, 18, 59, 63, 27, 95, 18, 4, 0, 4, -75, -3, -3, -3, -3, -108, 0, 0, 4, 18, 59, 63, 31, 59, 18, 5, 0, 1, 2, 2, 2, | |
2, 2, 1, 0, 5, 18, 59, 63, 59, 95, 13, 4, 0, 0, -112, -3, -4, -4, -4, -3, -3, -108, 0, 0, 5, 18, 63, 63, 63, 59, 50, 5, 0, 1, 1, 2, | |
1, 1, 0, 4, 18, 59, 63, 63, 91, 18, 4, 0, 36, -112, -3, -3, -3, -44, -40, -4, -4, -3, -112, 0, 0, 4, 18, 59, 63, 63, 59, 50, 4, 0, 1, 1, | |
0, 0, 5, 50, 59, 63, 63, 91, 49, 0, 0, 36, -112, -3, -3, -3, -48, 64, 100, -80, -4, -4, -3, -112, 0, 0, 4, 17, 59, 63, 63, 91, 50, 4, 0, 0, | |
0, 4, 50, 91, 63, 63, 95, 18, 0, 0, 4, -112, -3, -3, -7, -48, 96, 96, 64, 100, -48, -4, -4, -3, -112, 36, 0, 4, 18, 59, 63, 63, 91, 18, 4, 0, | |
9, 18, 63, 63, 63, 91, 50, 4, 0, 4, -112, -3, -4, -3, -48, 96, -128, -96, -92, 96, 96, -43, -3, -3, -4, -112, 36, 0, 4, 18, 63, 31, 63, 27, 18, 9, | |
22, 63, 63, 31, 63, 18, 4, 0, 0, -112, -3, -4, -4, -44, 100, -128, -64, -64, -64, -96, -128, 96, -44, -3, -4, -3, -112, 0, 0, 5, 18, 63, 31, 31, 63, 22, | |
63, 31, 31, 63, 18, 4, 0, 0, -112, -3, -4, -4, -44, 68, 96, -92, -64, -32, -32, -64, -96, 96, 68, -40, -4, -4, -3, -111, 0, 0, 4, 22, 31, 31, 31, 63 }; | |
struct pattern message1 = {36, 33,message1Data}; | |
PROGMEM const prog_uchar message2Data[] = | |
{-39, -3, -7, 104, 64, 64, 64, 64, 65, 65, -119, -6, -3, -108, 0, 0, 0, 0, 0, 0, 0, 4, 22, 63, 91, 10, 1, 1, 1, 1, 1, 5, 13, 59, 95, 58, | |
36, -76, -3, -7, -120, 64, 64, 64, 65, 64, 64, -116, -7, -3, -112, 0, 0, 0, 0, 0, 4, 50, 95, 59, 10, 5, 1, 1, 1, 1, 5, 14, 59, 91, 18, 9, | |
0, 36, -43, -3, -7, -120, 32, 65, 65, 65, 64, 96, -116, -7, -3, -112, 0, 0, 0, 4, 18, 127, 91, 14, 1, 1, 1, 1, 1, 1, 10, 55, 123, 50, 4, 0, | |
0, 0, 36, -75, -3, -39, 104, 64, 64, 97, 97, 64, 64, -116, -7, -3, 113, 4, 4, 18, 91, 91, 13, 1, 1, 1, 1, 1, 1, 10, 87, 91, 50, 5, 0, 0, | |
0, 0, 0, 36, -75, -3, -7, 104, 64, 64, 97, 65, 64, 64, -116, -2, -34, 81, 22, 91, 91, 14, 1, 1, 1, 1, 1, 1, 9, 87, 91, 50, 4, 0, 0, 0, | |
0, 0, 0, 0, 4, -39, -3, -7, -120, 64, 64, 97, 65, 64, 68, 108, -66, -98, 127, 59, 14, 5, 1, 1, 1, 1, 1, 9, 87, 127, 50, 9, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 36, -44, -3, -12, 104, 64, 64, 65, 33, 33, 4, 86, 123, 91, 14, 5, 1, 1, 1, 1, 1, 9, 54, 127, 54, 5, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 36, -43, -3, -7, 104, 64, 65, 33, 5, 50, 91, 91, 14, 1, 1, 1, 1, 1, 1, 9, 55, 127, 54, 4, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 4, -75, -3, -7, 104, 0, 5, 50, 91, 91, 10, 1, 1, 1, 1, 1, 1, 14, 59, 95, 54, 4, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 36, -76, -3, -39, 77, 50, 91, 59, 10, 5, 1, 1, 1, 0, 1, 10, 55, 95, 54, 4, 4, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 36, -107, -66, 122, 91, 91, 14, 5, 1, 1, 1, 1, 1, 14, 59, 91, 18, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 89, 127, 91, 14, 1, 1, 0, 1, 1, 1, 10, 55, 95, 90, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 17, 91, 91, 14, 1, 1, 1, 1, 1, 1, 10, 55, 127, 126, -66, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 4, 50, 91, 91, 14, 1, 1, 1, 1, 1, 1, 10, 87, 123, 86, 81, -34, -2, -112, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 4, 50, 91, 87, 14, 1, 1, 1, 1, 1, 1, 14, 55, 95, 87, 5, 32, -116, -7, -3, -108, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 4, 49, 91, 91, 14, 1, 1, 1, 1, 1, 1, 10, 59, 95, 55, 5, 1, 65, 64, -116, -3, -3, -112, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 4, 18, 95, 59, 10, 1, 1, 1, 1, 0, 5, 13, 59, 90, 86, 5, 1, 65, 65, 64, 64, -116, -7, -3, -112, 32, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 4, 50, 91, 91, 14, 5, 1, 1, 1, 1, 5, 9, 59, 95, 126, -102, 73, 64, 64, 65, 65, 64, 64, -116, -7, -3, -116, 32, 0, 0, 0, 0, | |
0, 0, 0, 4, 18, 91, 91, 14, 1, 1, 1, 1, 1, 1, 14, 55, 95, 54, 117, -34, -39, 104, 64, 65, 65, 65, 64, 64, -116, -7, -3, -112, 0, 0, 0, 0, | |
0, 0, 4, 18, 91, 91, 14, 1, 1, 1, 1, 1, 1, 10, 55, 95, 50, 4, 4, -71, -3, -39, 104, 32, 65, 65, 65, 64, 64, -83, -3, -35, 108, 36, 0, 0, | |
0, 4, 18, 95, 91, 14, 1, 1, 0, 1, 1, 1, 10, 55, 95, 54, 4, 0, 0, 36, -76, -3, -7, 104, 32, 64, 64, 64, 64, 64, -116, -3, -3, -112, 36, 0, | |
4, 50, 63, 59, 14, 1, 0, 1, 1, 1, 1, 10, 87, 95, 54, 4, 0, 0, 0, 0, 36, -76, -3, -7, 104, 64, 64, 97, 65, 32, 68, -112, -3, -35, -112, 0, | |
50, 91, 59, 14, 5, 1, 1, 0, 1, 1, 10, 87, 59, 22, 8, 0, 0, 0, 0, 0, 0, 36, -40, -3, -7, 100, 96, 97, 97, 65, 64, 32, -112, -3, -3, -108, | |
14, 91, 95, 18, 5, 1, 1, 1, 1, 0, 5, 87, 59, 59, 9, 0, 0, 0, 0, 0, 0, 72, -39, -3, -43, 100, 97, 65, 65, 65, 64, 68, -112, -3, -3, 108, | |
0, 13, 59, 95, 18, 5, 1, 1, 1, 1, 1, 5, 50, 95, 59, 9, 0, 0, 0, 0, 72, -3, -2, -79, 64, 64, 65, 65, 97, 64, 68, -79, -3, -39, 108, 0, | |
0, 4, 13, 59, 91, 18, 5, 1, 1, 1, 1, 1, 5, 50, 95, 55, 9, 0, 0, 72, -39, -3, -79, 100, 64, 64, 65, 65, 64, 68, -79, -3, -39, 108, 0, 0, | |
0, 0, 0, 13, 91, 95, 18, 5, 1, 1, 1, 1, 1, 9, 55, 91, 86, 45, 40, -39, -3, -43, 68, 32, 64, 65, 65, 64, 64, -47, -3, -39, 108, 0, 0, 0, | |
0, 0, 0, 0, 13, 91, 95, 14, 1, 1, 1, 1, 1, 1, 9, 87, -101, 117, -67, -3, -43, 68, 64, 64, 65, 65, 64, 68, -80, -3, -7, 108, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 14, 91, 95, 14, 5, 1, 1, 1, 1, 0, 4, 117, -34, -2, -43, 68, 64, 65, 65, 65, 64, 68, -80, -3, -7, 108, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 13, 91, 95, 14, 5, 1, 0, 0, 0, 40, -39, -35, -75, 100, 64, 64, 65, 65, 64, 68, -80, -3, -7, 108, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 13, 91, 91, 50, 5, 0, 0, 72, -39, -3, -75, 68, 64, 64, 97, 65, 64, 68, -80, -3, -7, 104, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 13, 91, 91, 50, 4, 72, -39, -3, -75, 100, 64, 64, 97, 97, 64, 64, -79, -3, -7, 108, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 122, -102, 117, -39, -3, -47, 68, 64, 65, 64, 97, 96, 64, -79, -3, -39, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 121, -34, -3, -80, 100, 64, 64, 65, 65, 64, 64, -47, -2, -71, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, -71, -2, -43, 68, 64, 97, 65, 32, 64, 68, -112, -2, -34, 121, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 72, -71, -35, -75, 68, 64, 65, 65, 65, 64, 68, -112, -3, -2, -107, 122, 54, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 68, -39, -3, -43, 68, 64, 65, 65, 65, 32, 100, -80, -3, -3, 108, 40, 86, 127, 55, 9, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 72, -7, -3, -44, 68, 64, 65, 97, 65, 64, 100, -80, -3, -35, 108, 0, 0, 9, 51, 95, 91, 9, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 72, -39, -3, -47, 100, 64, 64, 65, 64, 64, 68, -79, -2, -35, 76, 0, 0, 1, 1, 5, 51, 127, 58, 9, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 72, -39, -3, -47, 100, 64, 65, 64, 64, 64, 68, -75, -3, -34, 113, 4, 0, 1, 1, 1, 1, 5, 50, 95, 58, 9, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 72, -39, -3, -43, 68, 64, 65, 65, 65, 32, 100, -80, -3, -35, -102, 122, 50, 5, 1, 1, 1, 1, 1, 5, 50, 95, 54, 9, 0, 0, 0, 0, | |
0, 0, 0, 72, -40, -3, -43, 68, 64, 65, 65, 65, 64, 68, -80, -3, -39, 76, 13, 90, 91, 18, 5, 1, 1, 1, 1, 1, 9, 55, 91, 54, 9, 0, 0, 0, | |
0, 0, 72, -40, -3, -43, 100, 64, 64, 65, 65, 64, 68, -79, -3, -3, 108, 0, 0, 13, 91, 95, 18, 5, 0, 1, 1, 1, 1, 10, 55, 95, 87, 9, 0, 0, | |
0, 72, -40, -3, -43, 100, 64, 65, 65, 65, 64, 100, -80, -3, -39, 108, 0, 0, 0, 0, 13, 91, 91, 18, 5, 0, 1, 1, 1, 1, 9, 55, 91, 54, 9, 0, | |
40, -39, -3, -40, 100, 64, 64, 65, 65, 64, 64, -83, -3, -3, 108, 0, 0, 0, 0, 0, 0, 14, 95, 91, 46, 1, 1, 1, 1, 1, 1, 10, 59, 95, 87, 9 }; | |
struct pattern message2 = {36, 45,message2Data}; | |
PROGMEM const prog_uchar message3Data[] = | |
{-122, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, 85, 121, 4, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
102, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -71, 121, 4, 4, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
65, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -71, -71, 117, 4, 4, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
32, 105, 0, 0, 0, 0, 0, 0, 0, -1, -1, -42, -71, -107, 0, 4, 4, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 32, 105, 0, 0, 0, 0, -42, -42, -42, -42, -38, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 32, 105, 32, 32, 32, 32, 32, 32, 32, 0, 0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 32, 101, 100, 64, 64, 64, 64, 32, 32, 0, -42, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 32, 32, 100, 100, -124, 100, -83, -83, -115, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 32, 32, 32, 100, 100, 100, -115, -115, -115, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -119, -119, 64, 64, 64, 32, 32, 0, -74, -38, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, -110, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 105, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -118, 32, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 32, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 117, 4, 4, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 32, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 118, 4, 4, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 117, 4, 4, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 118, 4, 4, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -118, 32, 0, 0, 0, 0, 0, 0, 0, 0, -1, -106, 0, 0, 0, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 105, 0, 0, 0, 0, 0, 0, -1, -1, -70, 0, 0, 0, 77, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 105, 0, 0, 0, 0, -74, -74, -38, -38, 0, 0, 0, 0, 109, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 32, 32, 32, 0, 0, 0, 0, 0, 0, -110, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -119, -119, 32, 64, 64, 32, 32, 32, -74, -74, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 105, 100, 100, -83, -115, -115, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 32, 100, 100, -115, -74, -106, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 32, 105, 32, 32, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 32, 105, 0, -1, -1, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 32, 106, 0, -1, 0, 0, 4, 118, 4, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 33, 106, 0, 0, 0, 0, 4, 118, 4, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 0, -33, 118, 4, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 105, 32, 0, -42, -38, -107, 4, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 105, 32, 0, 0, 0, 4, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 32, 105, 100, -115, -70, -111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 105, 100, -115, -42, -110, 0, 0, | |
0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 32, 0, 0, 0, 77, 0, | |
0, 0, 0, 0, 32, 32, 105, 100, 100, 100, -83, -115, -115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, -1, -1, 0, 0, 0, 0, 82, | |
0, 0, 0, 32, 101, 101, 32, 0, 0, 0, 0, 0, 0, -74, -70, 0, 0, 0, 0, 0, 0, 0, 32, 106, 0, -1, 0, 0, 4, 118, 4, 82, | |
0, 0, 32, 105, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0, 0, 0, 0, 0, 32, 106, 0, 0, 0, 0, 4, 118, 4, 82, | |
0, 0, 105, 32, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 32, 105, 0, 0, 0, 0, -34, 118, 4, 82, | |
32, 105, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 32, 105, 0, 32, -42, -42, 117, 4, 0, 114, | |
33, 106, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, -119, 32, 32, 32, 0, 4, 77, 0, | |
106, 32, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, 32, 101, 104, -115, -74, -106, 0, 0, | |
-122, 33, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113, 0, 0, 114, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, | |
102, 33, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 118, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-122, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, 117, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-122, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, 118, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; | |
struct pattern message3 = {32, 54,message3Data}; | |
PROGMEM const prog_uchar message4Data[] = | |
{0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -73, -69, 0, 0, 0, -73, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -69, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, -106, 0, 0, 0, 0, 0, 0, | |
0, -73, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, 0, 0, -74, -105, 0, -105, -105, 0, 0, 0, -105, 0, 0, -106, 0, 0, 0, 0, 0, | |
0, 0, -69, -69, -69, 0, -69, -73, -73, 0, 0, 0, 0, 0, 0, 0, -65, -101, -65, 0, 0, 0, 0, -105, 0, 0, -106, 0, 0, 0, 0, 0, | |
0, -74, 0, 0, 0, -73, 0, 0, 0, -73, 0, 0, 0, -73, 0, 0, -101, -65, -105, 0, 0, -105, 0, 0, -106, -106, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -69, 0, -105, 0, 0, 0, 0, 0, -69, -65, 0, 0, 0, -33, 0, 0, 0, -65, -101, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -73, -69, 0, 0, 0, -69, -73, 0, 0, -74, -69, -33, -105, 0, -105, -37, -73, 0, -69, -33, -69, -105, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, -73, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, -69, -105, -65, -33, -65, -105, -33, 0, 0, 0, 0, 0, 0, 0, 114, 0, 114, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -65, -33, -33, -65, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -101, -65, -65, -65, -101, -101, 0, 0, 0, 0, 0, 0, 0, 114, 0, 114, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, -69, -33, -101, 0, -101, -65, -101, 4, -105, -33, -37, -74, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -65, 0, 0, 0, -105, 0, 0, 0, -37, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, 0, 0, -105, -33, -105, 0, 0, -105, 0, 0, 0, 0, -106, -105, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, -106, -106, 0, 0, 0, 0, 0, 0, -65, -101, -65, 0, 0, 0, 0, 0, 0, -105, 0, 0, -74, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, -106, 0, 0, -73, 0, 0, 0, 0, -74, -105, 0, -105, -69, 0, 0, 0, 0, 0, -106, 0, 0, -106, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, -106, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, -73, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, -106, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -74, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, -69, -65, 0, 0, 0, -33, -105, 0, 0, 0, 0, 0, 0, -73, -73, 0, 0, 0, -69, -69, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -73, -69, -33, 0, 0, 0, -33, -69, -69, 0, 0, 0, 0, 0, 0, 0, -73, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -105, -65, 0, -101, -105, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, -105, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, | |
0, 0, -73, 0, 0, 0, 0, -101, -65, -101, 0, 0, 0, 0, -73, 0, 0, 0, -73, -73, -69, 0, -69, -73, -73, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -105, -65, -101, 0, -101, -65, -33, -65, -105, 0, -105, -33, -73, 0, 0, -73, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, -105, -69, -33, -65, -33, -33, -33, -65, -101, -33, -105, 0, 0, 0, 0, 0, 0, -73, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -101, -65, -105, 0, -101, -65, -65, -65, -101, 0, -105, -33, -105, 0, 0, 0, -69, -69, 0, 0, 0, -73, -73, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -106, 4, 0, 0, 4, -101, -65, -101, 0, 0, 0, 0, -105, 0, 0, 0, 0, -73, 0, 0, 0, -73, 0, 0, 114, 0, 114, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -101, -101, 0, -101, -101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, | |
0, 0, 0, 0, -106, -33, -33, 0, 0, 0, -33, -33, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, | |
0, 0, 0, 0, 0, -69, -65, 0, 0, 0, -69, -105, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -74, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, -73, -37, 0, 0, 0, -65, -105, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, -37, -33, 0, 0, 0, -33, -65, -73, 0, 0, 0, 0, 0, | |
0, -106, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, -69, 0, -106, -101, 0, 0, 0, 0, 0, 0, 0, | |
-105, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0, 0, 0, -101, -65, -101, 0, 0, 0, 0, -73, 0, 0, 0, | |
-105, 0, 0, -105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -65, -73, 0, -101, -65, -65, -65, -101, 0, -101, -65, -105, 0, 0, 0, | |
0, -73, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -65, -33, -65, -65, -33, -65, -65, -101, -33, -101, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, -65, -105, 0, -101, -65, -33, -65, -101, 0, -105, -33, -105, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, -106, 0, 0, -69, 0, 0, 0, 0, -101, -65, -105, 0, 4, 0, 0, -106, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0, -105, 0, 0, 0, 0, 0, -101, -105, 0, -101, -106, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, -110, 0, 114, 0, 0, 0, -106, 0, 0, -74, 0, 0, 0, -73, -37, -33, 0, 0, 0, -33, -65, -105, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, -74, -74, 0, 0, 0, 0, 0, -73, -37, 0, 0, 0, -65, -101, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, -106, -101, 0, -69, -105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, -65, -101, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, -69, 0, 0, -101, -65, -73, 0, 0, -73, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, | |
0, 0, 0, 0, -73, -69, 0, 0, 0, -33, 0, 0, 0, -69, -73, 0, 0, 0, 0, 114, 0, 0, 0, 0, -69, -73, 0, 0, 0, -69, -73, 0, | |
0, 0, 0, -73, -37, -33, -105, 0, -101, -65, -101, 4, -105, -33, -33, -73, 0, 0, 114, 0, 114, 0, 0, 0, 0, 0, -69, 0, -73, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -101, -101, -65, -65, -65, -101, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, -73, | |
0, 0, 0, 0, 0, 0, 0, -65, -33, -65, -65, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, -73, -73, 0, -69, -69, -73, 0, | |
0, 0, 0, 0, 0, 0, -105, -101, -65, -65, -65, -101, -105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, -69, 0, 0, 0, -69, | |
0, 0, 0, -73, -33, -33, -101, 0, -101, -65, -101, 0, -73, -1, -33, -74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, -73, 0, 0, 0, | |
0, 0, 0, 0, -101, -65, 0, 0, 0, -101, 0, 0, 0, -69, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, -69, 0, 0, 0, -69, -73, 0, | |
0, 0, 0, 0, 0, -74, 0, 0, -101, -65, -105, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, -74, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, -65, -101, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, -73, -73, 0, -105, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, -106, 0, 0, 0, | |
0, 0, 0, 0, 0, -73, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0, -106, 0, 0, | |
0, 0, 0, 0, -106, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, -69, 0, 0, 0, 0, 0, -106, 0, 0, -106, 0, 0, | |
0, 0, 0, 0, -105, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, -73, -73, 0, 0, 0, -73, -74, 0, 0, 0, 0, 0, -106, -105, 0, 0, 0, | |
0, 0, 0, 0, 0, -106, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, -73, -73, -69, 0, -69, -73, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, -73, 0, 0, 0, -73, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, 0, 0, -73, 0, -69, 0, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, -69, 0, 0, 0, -73, -69, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, -73, 0, 0, 0, 0, 114, 0, 114, 0, 0, 0, 0 }; | |
struct pattern message4 = {32, 69,message4Data}; | |
PROGMEM const prog_uchar message5Data[] = | |
{100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, -123, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 64, -124, -124, -124, -124, -124, 64, 32, 0, 0, 0, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, -124, -124, -92, -96, -92, -92, -92, -128, -124, 32, 0, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, -124, -92, -92, -92, -14, -10, -14, -92, -64, -92, -124, 32, 0, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -96, -64, -96, -96, -10, -5, -10, -60, -64, -64, -92, -124, 32, 0, 0, 0, 0, -5, -124, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 32, 32, -124, -96, -64, -64, -64, -64, -19, -10, -18, -64, -64, -64, -60, -124, 32, 0, 0, 0, 0, -5, -124, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 32, -124, -92, -96, -64, -64, -64, -64, -64, -96, -60, -64, -64, -64, -96, -92, -124, 32, 0, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 32, 100, -92, -92, -14, -10, -15, -96, -64, -64, -64, -64, -64, -64, -96, -92, -96, -124, 32, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 0, 0, 0, 64, -124, -96, -96, -9, -5, -10, -92, -64, -32, -64, -64, -64, -19, -10, -14, -96, -124, 32, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 32, -124, -92, -64, -64, -18, -10, -19, -64, -32, -64, -32, -64, -60, -10, -5, -10, -92, -128, 32, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 32, -96, -64, -64, -64, -64, -64, -64, -64, -64, -32, -64, -64, -96, -19, -10, -14, -92, -124, 32, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 32, -124, -96, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -92, -92, -124, -124, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 32, -124, -92, -96, -64, -64, -64, -64, -64, -64, -96, -60, -64, -64, -64, -64, -96, -96, -124, 32, 0, 0, 0, 32, -5, -124, | |
100, -5, 0, 0, 0, 32, -124, -124, -14, -10, -14, -64, -64, -64, -32, -64, -14, -10, -15, -96, -64, -64, -96, -92, 64, 32, 0, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 100, -124, -124, -6, -5, -10, -96, -64, -32, -64, -64, -10, -5, -10, -96, -64, -64, -96, 96, 32, 0, 0, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 32, -124, -124, -14, -10, -19, -64, -64, -64, -32, -64, -19, -10, -19, -64, -64, -64, -64, -96, 64, 32, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 32, -124, -92, -92, -64, -64, -64, -64, -64, -64, -64, -96, -64, -64, -64, -64, -64, -92, -124, 32, 0, 0, 0, 32, -5, 100, | |
100, -5, 0, 0, 0, 0, 32, -124, -92, -64, -64, -64, -32, -32, -64, -64, -64, -64, -64, -64, -64, -64, -96, -92, -124, -124, 32, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 0, 0, 32, -92, -64, -64, -64, -64, -64, -64, -64, -64, -32, -64, -64, -64, -19, -10, -14, -92, -124, 32, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 32, -124, -92, -64, -60, -15, -10, -14, -64, -64, -32, -32, -64, -96, -10, -5, -6, -92, -128, 32, 0, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 64, -124, -96, -92, -10, -5, -10, -64, -64, -32, -64, -64, -96, -14, -10, -14, -96, -92, 32, 0, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 32, -124, -92, -96, -14, -10, -18, -64, -64, -32, -64, -64, -32, -64, -64, -96, -96, -124, 32, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 0, 0, 0, 32, 32, -124, -92, -92, -96, -64, -64, -64, -64, -96, -64, -64, -32, -32, -64, -92, -124, 32, 0, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -92, -96, -64, -64, -64, -15, -10, -14, -64, -64, -64, -64, -92, 64, 0, 0, 0, 0, -5, -124, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, -124, -92, -64, -64, -96, -10, -5, -10, -60, -64, -64, -96, -124, 32, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -96, -64, -92, -19, -10, -14, -64, -64, -92, -124, 32, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -128, -92, -128, -92, -128, -96, -92, -124, 32, 0, 0, 0, 0, 0, 32, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -124, 96, -124, -123, 32, 32, 0, 0, 0, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 101, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, -123, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, -5, -124, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 105, 100, 100, 100, 32, 0, 0, 0, 0, 0, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, 100, -78, -78, -83, -124, 96, -124, 100, 32, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -51, -1, -1, -1, -1, -51, -14, -14, -50, 100, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -14, -51, -1, -1, -1, -1, -51, -18, -18, -51, -1, 72, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -14, -19, -51, -1, -1, -1, -1, -51, -19, -19, -51, -1, -1, 100, 32, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -51, -15, -19, -19, -5, -1, -1, -5, -51, -15, -15, -51, -5, -1, 100, 32, 32, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 100, -51, -128, -96, -96, -128, -51, -46, -83, -51, -128, -96, -96, -128, -51, -51, -51, 100, 32, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 32, -124, -14, -96, -28, -60, -96, -14, -47, -47, -15, -96, -60, -60, -96, -14, -14, -18, -124, 32, 0, -5, -123, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 100, -46, -14, -96, -60, -60, -128, -14, -46, -46, -15, -96, -60, -28, -96, -14, -51, -18, -124, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 101, -82, -51, -128, -96, -96, -128, -50, -78, -83, -51, -124, -128, -128, -128, -51, -46, -50, 100, 0, 0, -5, 100, | |
100, -5, 32, 0, 0, 0, 0, 0, 69, -1, -1, -5, -19, -19, -19, -19, -5, -1, -1, -5, -51, -19, -14, -51, -1, -5, -5, 100, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 69, -1, -1, -1, -51, -19, -18, -50, -1, -1, -1, -1, -51, -18, -19, -51, -1, -1, 100, 32, 32, 32, -5, -124, | |
100, -1, 0, 0, 0, 0, 32, 100, -1, -1, -1, -1, -51, -19, -19, -50, -1, -1, -1, -1, -51, -18, -18, -51, -1, -1, 105, 32, 0, 32, -5, 100, | |
100, -5, 0, 0, 0, 32, -124, -51, -5, -1, -1, -5, -19, -19, -14, -51, -5, -1, -1, -1, -19, -18, -18, -51, -1, 68, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 32, 100, -128, -128, -51, -46, -51, -51, -96, -96, -96, -128, -51, -79, -79, -51, -128, -96, -96, -128, 100, 32, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 32, -124, -87, -60, -128, -14, -46, -51, -14, -96, -60, -60, -96, -14, -47, -47, -14, -96, -60, -60, -124, 32, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 32, -124, -92, -60, -96, -14, -46, -46, -14, -128, -60, -28, -96, -14, -46, -14, -14, -96, -60, -60, -124, 32, 0, 0, 0, 0, 0, -5, -124, | |
100, -5, 0, 0, 32, -124, -124, -128, -50, -46, -83, -51, -124, -96, -96, -128, -51, -78, -83, -51, -128, -96, -128, -124, 100, 0, 0, 0, 0, 0, -5, 100, | |
100, -1, 0, 0, 0, 32, -124, -50, -5, -1, -1, -1, -51, -14, -19, -51, -1, -1, -1, -1, -51, -19, -18, -51, -5, 68, 0, 0, 0, 0, -1, 100, | |
100, -5, 0, 0, 0, 0, 32, 101, -5, -1, -1, -1, -51, -14, -14, -51, -1, -1, -1, -1, -51, -14, -18, -51, -1, -1, 101, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 32, 32, 105, -1, -1, -1, -51, -19, -19, -51, -1, -1, -1, -1, -51, -19, -19, -19, -1, -1, 100, 32, 0, 0, -5, 100, | |
100, -5, 32, 0, 0, 0, 0, 0, 69, -1, -1, -1, -51, -19, -19, -19, -5, -1, -1, -5, -51, -18, -18, -19, -5, -1, -5, 100, 0, 0, -5, -123, | |
100, -5, 0, 0, 0, 0, 0, 0, 32, 100, -46, -51, -128, -96, -96, -96, -51, -51, -83, -51, -128, -96, -96, -128, -47, -83, -51, 100, 0, 0, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 100, -46, -14, -96, -60, -28, -96, -14, -14, -46, -14, -96, -60, -60, -96, -14, -46, -47, -124, 32, 32, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 32, 100, -14, -96, -60, -28, -96, -14, -47, -46, -14, -96, -60, -28, -96, -14, -46, -46, 100, 32, 32, -5, -124, | |
100, -1, 0, 0, 0, 0, 0, 0, 0, 0, 100, -51, -96, -96, -96, -128, -51, -83, -83, -47, -128, -96, -96, -128, -51, -83, -51, 100, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -51, -14, -15, -51, -5, -1, -1, -5, -51, -14, -19, -19, -5, -1, 100, 32, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -124, -51, -14, -51, -1, -1, -1, -1, -51, -19, -19, -51, -5, -1, 100, 32, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, -46, -83, -1, -1, -1, -1, -51, -19, -19, -51, -5, 69, 32, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, -46, -5, -1, -1, -1, -51, -15, -14, -51, 105, 0, 0, 0, 0, 0, -5, 104, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 100, 100, -78, -78, -79, 100, -124, -124, 100, 32, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 101, 68, 100, 100, 100, 32, 32, 0, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, -5, 100, | |
100, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 100 }; | |
struct pattern message5 = {32, 67,message5Data}; | |
PROGMEM const prog_uchar message6Data[] = | |
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 64, 64, 32, 32, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -83, -83, -83, -83, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, -83, -6, -6, -6, -6, -6, -83, 32, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, -115, -79, 32, -79, -6, -48, -48, -48, -47, -47, -7, -84, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -115, -6, -6, -6, -84, -84, -7, -48, -48, -7, -7, -47, -7, -52, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -115, -6, -6, -47, -48, -7, -52, -48, -16, -7, -48, -47, -6, -47, -52, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -79, -6, -47, -6, -6, -16, -52, -16, -48, -7, -47, -47, -6, -83, 32, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -6, -47, -6, -7, -16, -52, -16, -16, -16, -7, -6, -83, 32, 32, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -6, -48, -16, -16, -16, -20, -16, -16, -16, -48, -83, 32, 32, -120, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -6, -16, -16, -20, -20, -20, -16, -16, -52, 32, 32, -119, 32, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -52, -52, -20, -20, -20, -52, -52, 64, -120, 105, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 64, -88, -88, -56, -56, -56, -88, -88, 32, 32, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -52, -52, -20, -20, -20, -52, -52, 64, -120, -120, 32, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -6, -16, -16, -16, -16, -20, -16, -16, -52, 64, 32, 105, 32, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -79, -6, -47, -48, -16, -16, -20, -16, -16, -16, -16, -51, 32, 32, 105, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, -83, -6, -47, -7, -7, -16, -52, -16, -16, -16, -7, -7, -83, 32, 32, | |
0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 32, 0, 0, 0, 0, 0, 32, -83, -6, -47, -7, -7, -16, -52, -16, -16, -7, -48, -47, -6, -51, 64, | |
0, 0, 0, 0, 0, 0, 32, -114, -118, -118, -114, 32, 0, 0, 0, 0, 32, -79, -6, -6, -47, -48, -7, -52, -16, -16, -7, -48, -48, -7, -15, -52, | |
0, 0, 0, 0, 0, 32, -119, -5, -5, -5, -5, -119, 32, 0, 0, 0, 0, 0, -115, -6, -6, -7, -52, -52, -7, -16, -16, -7, -7, -48, -7, -84, | |
0, 0, 0, 0, 32, -114, -5, -5, -45, -46, -46, -5, -86, 32, 32, 0, 0, 32, 32, -115, -79, -79, 32, -84, -6, -48, -16, -16, -16, -48, -6, -84, | |
0, 0, 0, 0, 32, -118, -5, -45, -5, -5, -13, -14, -54, -86, -86, -86, -87, 32, 32, 0, 0, 0, 0, 32, -79, -6, -7, -7, -7, -6, -83, 32, | |
0, 0, 0, 32, 64, -86, -13, -13, -5, -5, -13, -13, -18, -13, -9, -9, -9, -86, 32, 0, 0, 0, 0, 0, 0, -83, -79, -84, -79, -115, 0, 0, | |
32, 32, -82, -86, -86, 64, -86, -13, -13, -13, -13, -54, -9, -13, -13, -13, -13, -9, -118, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
32, -86, -9, -9, -13, -86, 96, -54, -13, -13, -18, -17, -13, -13, -9, -9, -13, -45, -9, -114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-86, -9, -9, -13, -13, -13, -54, 97, -22, -17, -22, -13, -13, -9, -13, -13, -9, -13, -9, -114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-86, -9, -13, -9, -9, -13, -13, -22, -95, -22, -17, -13, -13, -9, -13, -13, -9, -13, -9, -114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-86, -9, -13, -9, -9, -13, -17, -17, -22, -95, -22, -17, -13, -13, -9, -9, -17, -13, -118, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
-86, -9, -13, -13, -14, -13, -18, -18, -17, -22, -95, -22, -17, -13, -13, -13, -86, -86, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
32, -86, -9, -13, -13, -50, -17, -17, -17, -17, -22, -95, -54, -86, -86, -86, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
32, 32, -87, -86, -50, -9, -13, -13, -13, -13, -17, -54, -123, 64, 64, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 32, 32, -86, -9, -46, -13, -9, -5, -13, -17, -54, 64, -123, 101, 101, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 32, -86, -9, -13, -9, -45, -45, -9, -13, -86, 64, 101, 32, 32, 32, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 32, -86, -5, -45, -5, -45, -45, -9, -13, -86, 64, 105, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 32, -119, -9, -13, -13, -9, -9, -13, -86, 64, 32, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 32, -82, -9, -45, -13, -13, -45, -86, 32, 32, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 32, -82, -9, -9, -9, -82, 32, 0, 0, 0, 0, 0, 0, 78, 78, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 32, 32, -119, -82, -115, 32, 0, 0, 0, 0, 0, 0, 78, -33, -33, -33, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 32, 32, 0, 0, 0, 0, 0, 0, 0, 78, -33, -105, -105, -105, -105, 78, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -33, -105, -105, -33, -65, -105, 78, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, -105, -33, -105, -105, -65, -105, 78, 1, 42, 1, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, -105, -65, -105, -105, -33, -105, 78, 1, 42, 1, 0, 0, 41, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, 119, -105, -33, -65, -105, -105, 78, 1, 42, 42, 42, 37, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 78, 83, -69, 119, -105, -105, 119, 119, 79, 10, 1, 1, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, -33, -105, -105, 115, 119, 119, 119, 119, 83, 10, 79, 79, 78, 110, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -33, -105, -105, -105, 119, 83, 83, 119, 83, 10, 83, -105, -105, -105, -105, 78, 78, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, -105, -33, -65, -105, 119, 119, 83, 10, 83, 119, -105, -105, -65, -65, -105, -105, 78, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, -105, -33, -33, 119, 119, 115, 10, 83, 119, 119, 119, -65, -105, -105, -33, -105, -33, 78, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, -65, -105, -105, -105, 79, 1, 115, 119, 83, 119, 119, -65, -105, -105, -33, -105, -69, 78, 1, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -33, -65, -105, 78, 1, 79, 119, 119, 83, -105, -105, -105, -33, -65, -105, -105, -33, 78, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 78, 78, 1, 78, 119, 119, 119, 119, 83, -65, -105, -105, -105, -105, -33, 78, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -105, -105, -65, -65, -105, -105, 83, -69, -65, -65, -33, 78, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -65, 119, -33, -65, -105, -105, 78, 78, 78, 78, 78, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -33, -33, -105, -105, -105, -33, 78, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, -33, -37, -33, -33, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 78, 110, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, -42, -43, -43, -43, 0, 0, 0, 0, 0, -74, -43, -43, -74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, -75, -2, -2, -2, -2, -43, 0, 0, 0, -43, -2, -2, -2, -2, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -74, -2, -2, -39, -7, -7, -2, -43, 0, -43, -2, -7, -39, -39, -2, -2, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -75, -2, -7, -2, -3, -7, -7, -44, 32, -43, -7, -7, -2, -2, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -43, -2, -7, -3, -3, -8, -8, -8, -80, -12, -8, -8, -3, -2, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 32, -44, -3, -8, -8, -8, -8, -8, -80, -8, -8, -8, -8, -8, -3, -43, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 32, -43, -44, -8, -8, -8, -8, -8, -12, -48, -8, -8, -8, -8, -8, -40, -44, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, -43, -2, -3, -8, -8, -8, -8, -8, -8, -48, -8, -8, -8, -8, -8, -8, -3, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -43, -2, -7, -8, -8, -8, -8, -8, -8, -12, -48, -12, -8, -8, -8, -8, -4, -7, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -43, -2, -7, -8, -3, -3, -8, -8, -7, -12, -80, -12, -8, -8, -8, -3, -3, -7, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -43, -2, -7, -3, -8, -7, -3, -7, -43, 32, -84, 32, -43, -7, -3, -7, -7, -2, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -75, -2, -7, -3, -7, -7, -2, -43, 32, -115, 32, -79, 32, -43, -2, -7, -7, -3, -7, -2, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, -75, -2, -7, -7, -3, -2, -43, 32, 0, -111, 0, -115, 32, 32, -43, -2, -2, -39, -7, -2, -75, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, -43, -2, -2, -39, -43, 0, 0, -111, 0, 0, 0, -115, 0, 0, -43, -39, -2, -2, -75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, -43, -43, -43, 0, 0, -111, 0, 0, 0, 0, 0, -111, 0, 0, -75, -75, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; | |
struct pattern message6 = {32, 73,message6Data}; | |
void setup() { | |
Serial.begin(9600); | |
// INITIALIZE TIMER INTERRUPTS | |
TCCR0A = (1<<WGM01); //Timer in CTC mode | |
TCCR0B = ((1<<CS01)|(1<<CS00)); //1:64 prescaler | |
OCR0A = 249; //Value to have an compare at every 1ms | |
TIMSK0 = (1<<OCIE0A); //Enable timer interrupts | |
sei(); //Enable global interrupts | |
LEDS.addLeds<WS2811, PIN, GRB>(leds, NUM_LEDS); | |
LEDS.setBrightness( BRIGHTNESS ); | |
////////colour pallett code here: | |
currentPalette = RainbowStripeColors_p; | |
currentBlending = NOBLEND; | |
//eeprom read/set code here. | |
eeprom_option = EEPROM.read(eeprom_address); | |
eeprom_option = eeprom_option + 1; | |
if (eeprom_option > 2) | |
eeprom_option = 0; | |
EEPROM.write(eeprom_address, eeprom_option); | |
} | |
// TIMER VECTOR, gets called once a millisecond (depends on prescaler and match register) | |
ISR(TIMER0_COMPA_vect){ | |
/* Reload the timer */ | |
// do timing based stuff here | |
millisecs++; | |
switch(millisecs){ | |
case 0: | |
variable = 3; | |
return; | |
break; | |
case 1920: | |
variable = 3; | |
return; | |
break; | |
case 5333: | |
variable = 4; | |
return; | |
break; | |
case 10922: | |
variable = 3; | |
return; | |
break; | |
case 16320: | |
variable = 4; | |
return; | |
break; | |
case 20522: | |
variable = 5; | |
return; | |
break; | |
case 24426: | |
variable = 6; | |
return; | |
break; | |
case 29226: | |
variable = 3; | |
return; | |
break; | |
case 32127: | |
variable = 4; | |
return; | |
break; | |
case 35136: | |
variable = 3; | |
return; | |
break; | |
case 40213: | |
variable = 4; | |
return; | |
break; | |
case 43818: | |
variable = 5; | |
return; | |
break; | |
case 49045: | |
variable = 6; | |
return; | |
break; | |
case 52437: | |
variable = 3; | |
return; | |
break; | |
case 67939: | |
variable = 4; | |
return; | |
break; | |
case 91209: | |
variable = 5; | |
return; | |
break; | |
case 118760: | |
variable = 6; | |
return; | |
break; | |
case 139355: | |
variable = 1; | |
return; | |
break; | |
case 157276: | |
variable = 2; | |
return; | |
break; | |
case 174127: | |
variable = 2; | |
return; | |
break; | |
case 176802: | |
variable = 3; | |
return; | |
break; | |
case 192316: | |
variable = 4; | |
return; | |
break; | |
case 205155: | |
variable = 5; | |
return; | |
break; | |
case 221203: | |
variable = 6; | |
return; | |
break; | |
//continuous pattern mode | |
} | |
} | |
void loop() | |
{ | |
PROGMEM const prog_uchar *rgbx; | |
struct pattern *pat; | |
switch(eeprom_option){ | |
case 0: | |
{ | |
//////////////////////////////////////////////actions//////////////////////////////////////////// | |
switch(variable){ | |
case 0: | |
break; | |
case 1: | |
{ | |
pat = &message1; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down - removed for this gig, brightnesss var should deal with it...? | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
case 2: | |
{ | |
pat = &message2; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
case 3: | |
{ | |
pat = &message3; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
case 4: | |
{ | |
pat = &message4; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
case 5: | |
{ | |
pat = &message5; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
case 6: | |
{ | |
pat = &message6; | |
rgbx = pat->patData; | |
for (int j = 0; j < pat->numFrames; j++ ) { | |
for (int i = 0; i < pat->numLeds; i++) { | |
byte R1 = (pgm_read_byte_near(rgbx++) & 0xE0); | |
leds[i].r = R1; // /5 to bring brightness down | |
byte G1 = ((pgm_read_byte_near(rgbx) << 3) & 0xE0); | |
leds[i].g = G1; | |
byte M1 = (pgm_read_byte_near(rgbx) << 6); | |
leds[i].b = M1; | |
} | |
LEDS.show(); | |
//delay(1); | |
} | |
break; | |
} | |
/////////////////////////////////////////////end actions/////////////////////////////////////////// | |
} | |
break; | |
} | |
case 1: //Colour pallette code: | |
{ | |
ChangePalettePeriodically(); | |
static uint8_t startIndex = 0; | |
startIndex = startIndex + thickness; //PI; /* motion speed */ | |
FillLEDsFromPaletteColors( startIndex); | |
//Serial.println(startIndex); | |
if (startIndex == 70){ | |
upDown = false; | |
} | |
FastLED.show(); | |
FastLED.delay(1000 / UPDATES_PER_SECOND); | |
break; | |
} | |
case 2: //Second Colour pallette code: | |
{ | |
//currentPalette = myRedWhiteBluePalette_p; | |
ChangePalettePeriodically(); | |
static uint8_t startIndex = 0; | |
if(upDown == true) { | |
startIndex = startIndex + thickness; //PI; /* motion speed */ | |
FillLEDsFromPaletteColors( startIndex); | |
//Serial.println(startIndex); | |
if (startIndex == 70){ | |
upDown = false; | |
} | |
} | |
else { | |
startIndex = startIndex - thickness;// PI; /* motion speed */ | |
FillLEDsFromPaletteColors( startIndex); | |
//Serial.println(startIndex); | |
if (startIndex == 0){ | |
upDown = true; | |
} | |
} | |
FastLED.show(); | |
FastLED.delay(1000 / UPDATES_PER_SECOND); | |
break; | |
} | |
} | |
///////////////////////////end eeprom switch///////////////// | |
} | |
//colour pallette code: | |
void FillLEDsFromPaletteColors( uint8_t colorIndex) | |
{ | |
uint8_t brightness = 255; | |
for( int i = 0; i < NUM_LEDS; i++) { | |
leds[i] = ColorFromPalette( currentPalette, colorIndex, brightness, currentBlending); | |
colorIndex += 3; | |
} | |
} | |
void add_glitter() //from https://gist.github.com/kriegsman/ccffc81a74bc03636ce1 | |
{ | |
int chance_of_glitter = 10; // percent of the time that we add glitter | |
int number_of_glitters = 5; // number of glitter sparkles to add | |
int r = random8(100); | |
if( r < chance_of_glitter ) { | |
for( int j = 0; j < number_of_glitters; j++) { | |
int pos = random16( NUM_LEDS); | |
leds[pos] = CRGB::White; // very bright glitter | |
} | |
} | |
} | |
void ChangePalettePeriodically() | |
{ | |
uint8_t secondHand = (millis() / 1000) % 60; | |
static uint8_t lastSecond = 99; | |
if( lastSecond != secondHand) { | |
lastSecond = secondHand; | |
//if( secondHand == 1) { SetupVariablePalette(CRGB::Red, CRGB::Gray, CRGB::Blue, CRGB::Black); } | |
if( secondHand == 15) { currentPalette = myRedWhiteBluePalette_p; currentBlending = NOBLEND; thickness = 1; } | |
//if( secondHand == 20) { SetupVariablePalette(CRGB::Green, CRGB::Gray, CRGB::Pink, CRGB::Black); } | |
if( secondHand == 25) { currentPalette = RainbowStripeColors_p; currentBlending = NOBLEND; thickness = 2;} | |
//if( secondHand == 30) { SetupVariablePalette(CRGB::Orange, CRGB::Gray, CRGB::Cyan, CRGB::Black); } | |
if( secondHand == 35) { currentPalette = myRedWhiteBluePalette_p; currentBlending = NOBLEND; thickness = 3;} | |
//if( secondHand == 40) { SetupVariablePalette(CRGB::Magenta, CRGB::Gray, CRGB::Yellow, CRGB::Black); } | |
if( secondHand == 45) { currentPalette = PartyColors_p; currentBlending = NOBLEND; thickness = PI; } | |
//if( secondHand == 50) { SetupVariablePalette(CRGB::Blue, CRGB::Gray, CRGB::Green, CRGB::Black); } | |
if( secondHand == 55) { currentPalette = LavaColors_p; currentBlending = NOBLEND; thickness = PI/2;} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment