Initial commit
This commit is contained in:
commit
9b13d274c3
297
BMP085test/Adafruit_BMP085.cpp
Normal file
297
BMP085test/Adafruit_BMP085.cpp
Normal file
@ -0,0 +1,297 @@
|
|||||||
|
/***************************************************
|
||||||
|
This is a library for the Adafruit BMP085/BMP180 Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 or BMP180 Breakout
|
||||||
|
----> http://www.adafruit.com/products/391
|
||||||
|
----> http://www.adafruit.com/products/1603
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
#include "Adafruit_BMP085.h"
|
||||||
|
|
||||||
|
Adafruit_BMP085::Adafruit_BMP085() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
boolean Adafruit_BMP085::begin(uint8_t mode) {
|
||||||
|
if (mode > BMP085_ULTRAHIGHRES)
|
||||||
|
mode = BMP085_ULTRAHIGHRES;
|
||||||
|
oversampling = mode;
|
||||||
|
|
||||||
|
Wire.begin();
|
||||||
|
|
||||||
|
if (read8(0xD0) != 0x55) return false;
|
||||||
|
|
||||||
|
/* read calibration data */
|
||||||
|
ac1 = read16(BMP085_CAL_AC1);
|
||||||
|
ac2 = read16(BMP085_CAL_AC2);
|
||||||
|
ac3 = read16(BMP085_CAL_AC3);
|
||||||
|
ac4 = read16(BMP085_CAL_AC4);
|
||||||
|
ac5 = read16(BMP085_CAL_AC5);
|
||||||
|
ac6 = read16(BMP085_CAL_AC6);
|
||||||
|
|
||||||
|
b1 = read16(BMP085_CAL_B1);
|
||||||
|
b2 = read16(BMP085_CAL_B2);
|
||||||
|
|
||||||
|
mb = read16(BMP085_CAL_MB);
|
||||||
|
mc = read16(BMP085_CAL_MC);
|
||||||
|
md = read16(BMP085_CAL_MD);
|
||||||
|
#if (BMP085_DEBUG == 1)
|
||||||
|
Serial.print("ac1 = "); Serial.println(ac1, DEC);
|
||||||
|
Serial.print("ac2 = "); Serial.println(ac2, DEC);
|
||||||
|
Serial.print("ac3 = "); Serial.println(ac3, DEC);
|
||||||
|
Serial.print("ac4 = "); Serial.println(ac4, DEC);
|
||||||
|
Serial.print("ac5 = "); Serial.println(ac5, DEC);
|
||||||
|
Serial.print("ac6 = "); Serial.println(ac6, DEC);
|
||||||
|
|
||||||
|
Serial.print("b1 = "); Serial.println(b1, DEC);
|
||||||
|
Serial.print("b2 = "); Serial.println(b2, DEC);
|
||||||
|
|
||||||
|
Serial.print("mb = "); Serial.println(mb, DEC);
|
||||||
|
Serial.print("mc = "); Serial.println(mc, DEC);
|
||||||
|
Serial.print("md = "); Serial.println(md, DEC);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::computeB5(int32_t UT) {
|
||||||
|
int32_t X1 = (UT - (int32_t)ac6) * ((int32_t)ac5) >> 15;
|
||||||
|
int32_t X2 = ((int32_t)mc << 11) / (X1+(int32_t)md);
|
||||||
|
return X1 + X2;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Adafruit_BMP085::readRawTemperature(void) {
|
||||||
|
write8(BMP085_CONTROL, BMP085_READTEMPCMD);
|
||||||
|
delay(5);
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("Raw temp: "); Serial.println(read16(BMP085_TEMPDATA));
|
||||||
|
#endif
|
||||||
|
return read16(BMP085_TEMPDATA);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t Adafruit_BMP085::readRawPressure(void) {
|
||||||
|
uint32_t raw;
|
||||||
|
|
||||||
|
write8(BMP085_CONTROL, BMP085_READPRESSURECMD + (oversampling << 6));
|
||||||
|
|
||||||
|
if (oversampling == BMP085_ULTRALOWPOWER)
|
||||||
|
delay(5);
|
||||||
|
else if (oversampling == BMP085_STANDARD)
|
||||||
|
delay(8);
|
||||||
|
else if (oversampling == BMP085_HIGHRES)
|
||||||
|
delay(14);
|
||||||
|
else
|
||||||
|
delay(26);
|
||||||
|
|
||||||
|
raw = read16(BMP085_PRESSUREDATA);
|
||||||
|
|
||||||
|
raw <<= 8;
|
||||||
|
raw |= read8(BMP085_PRESSUREDATA+2);
|
||||||
|
raw >>= (8 - oversampling);
|
||||||
|
|
||||||
|
/* this pull broke stuff, look at it later?
|
||||||
|
if (oversampling==0) {
|
||||||
|
raw <<= 8;
|
||||||
|
raw |= read8(BMP085_PRESSUREDATA+2);
|
||||||
|
raw >>= (8 - oversampling);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("Raw pressure: "); Serial.println(raw);
|
||||||
|
#endif
|
||||||
|
return raw;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::readPressure(void) {
|
||||||
|
int32_t UT, UP, B3, B5, B6, X1, X2, X3, p;
|
||||||
|
uint32_t B4, B7;
|
||||||
|
|
||||||
|
UT = readRawTemperature();
|
||||||
|
UP = readRawPressure();
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
// use datasheet numbers!
|
||||||
|
UT = 27898;
|
||||||
|
UP = 23843;
|
||||||
|
ac6 = 23153;
|
||||||
|
ac5 = 32757;
|
||||||
|
mc = -8711;
|
||||||
|
md = 2868;
|
||||||
|
b1 = 6190;
|
||||||
|
b2 = 4;
|
||||||
|
ac3 = -14383;
|
||||||
|
ac2 = -72;
|
||||||
|
ac1 = 408;
|
||||||
|
ac4 = 32741;
|
||||||
|
oversampling = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
B5 = computeB5(UT);
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B5 = "); Serial.println(B5);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// do pressure calcs
|
||||||
|
B6 = B5 - 4000;
|
||||||
|
X1 = ((int32_t)b2 * ( (B6 * B6)>>12 )) >> 11;
|
||||||
|
X2 = ((int32_t)ac2 * B6) >> 11;
|
||||||
|
X3 = X1 + X2;
|
||||||
|
B3 = ((((int32_t)ac1*4 + X3) << oversampling) + 2) / 4;
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("B6 = "); Serial.println(B6);
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B3 = "); Serial.println(B3);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
X1 = ((int32_t)ac3 * B6) >> 13;
|
||||||
|
X2 = ((int32_t)b1 * ((B6 * B6) >> 12)) >> 16;
|
||||||
|
X3 = ((X1 + X2) + 2) >> 2;
|
||||||
|
B4 = ((uint32_t)ac4 * (uint32_t)(X3 + 32768)) >> 15;
|
||||||
|
B7 = ((uint32_t)UP - B3) * (uint32_t)( 50000UL >> oversampling );
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B4 = "); Serial.println(B4);
|
||||||
|
Serial.print("B7 = "); Serial.println(B7);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (B7 < 0x80000000) {
|
||||||
|
p = (B7 * 2) / B4;
|
||||||
|
} else {
|
||||||
|
p = (B7 / B4) * 2;
|
||||||
|
}
|
||||||
|
X1 = (p >> 8) * (p >> 8);
|
||||||
|
X1 = (X1 * 3038) >> 16;
|
||||||
|
X2 = (-7357 * p) >> 16;
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("p = "); Serial.println(p);
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
p = p + ((X1 + X2 + (int32_t)3791)>>4);
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("p = "); Serial.println(p);
|
||||||
|
#endif
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::readSealevelPressure(float altitude_meters) {
|
||||||
|
float pressure = readPressure();
|
||||||
|
return (int32_t)(pressure / pow(1.0-altitude_meters/44330, 5.255));
|
||||||
|
}
|
||||||
|
|
||||||
|
float Adafruit_BMP085::readTemperature(void) {
|
||||||
|
int32_t UT, B5; // following ds convention
|
||||||
|
float temp;
|
||||||
|
|
||||||
|
UT = readRawTemperature();
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
// use datasheet numbers!
|
||||||
|
UT = 27898;
|
||||||
|
ac6 = 23153;
|
||||||
|
ac5 = 32757;
|
||||||
|
mc = -8711;
|
||||||
|
md = 2868;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
B5 = computeB5(UT);
|
||||||
|
temp = (B5+8) >> 4;
|
||||||
|
temp /= 10;
|
||||||
|
|
||||||
|
return temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
float Adafruit_BMP085::readAltitude(float sealevelPressure) {
|
||||||
|
float altitude;
|
||||||
|
|
||||||
|
float pressure = readPressure();
|
||||||
|
|
||||||
|
altitude = 44330 * (1.0 - pow(pressure /sealevelPressure,0.1903));
|
||||||
|
|
||||||
|
return altitude;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*********************************************************************/
|
||||||
|
|
||||||
|
uint8_t Adafruit_BMP085::read8(uint8_t a) {
|
||||||
|
uint8_t ret;
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
Wire.requestFrom(BMP085_I2CADDR, 1);// send data n-bytes read
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
ret = Wire.read(); // receive DATA
|
||||||
|
#else
|
||||||
|
ret = Wire.receive(); // receive DATA
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Adafruit_BMP085::read16(uint8_t a) {
|
||||||
|
uint16_t ret;
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
Wire.requestFrom(BMP085_I2CADDR, 2);// send data n-bytes read
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
ret = Wire.read(); // receive DATA
|
||||||
|
ret <<= 8;
|
||||||
|
ret |= Wire.read(); // receive DATA
|
||||||
|
#else
|
||||||
|
ret = Wire.receive(); // receive DATA
|
||||||
|
ret <<= 8;
|
||||||
|
ret |= Wire.receive(); // receive DATA
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Adafruit_BMP085::write8(uint8_t a, uint8_t d) {
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
Wire.write(d); // write data
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
Wire.send(d); // write data
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
}
|
79
BMP085test/Adafruit_BMP085.h
Normal file
79
BMP085test/Adafruit_BMP085.h
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
/***************************************************
|
||||||
|
This is a library for the Adafruit BMP085/BMP180 Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 or BMP180 Breakout
|
||||||
|
----> http://www.adafruit.com/products/391
|
||||||
|
----> http://www.adafruit.com/products/1603
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
#ifndef ADAFRUIT_BMP085_H
|
||||||
|
#define ADAFRUIT_BMP085_H
|
||||||
|
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
#include "Arduino.h"
|
||||||
|
#else
|
||||||
|
#include "WProgram.h"
|
||||||
|
#endif
|
||||||
|
#include "Wire.h"
|
||||||
|
|
||||||
|
#define BMP085_DEBUG 0
|
||||||
|
|
||||||
|
#define BMP085_I2CADDR 0x77
|
||||||
|
|
||||||
|
#define BMP085_ULTRALOWPOWER 0
|
||||||
|
#define BMP085_STANDARD 1
|
||||||
|
#define BMP085_HIGHRES 2
|
||||||
|
#define BMP085_ULTRAHIGHRES 3
|
||||||
|
#define BMP085_CAL_AC1 0xAA // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC2 0xAC // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC3 0xAE // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC4 0xB0 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC5 0xB2 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC6 0xB4 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_B1 0xB6 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_B2 0xB8 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MB 0xBA // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MC 0xBC // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MD 0xBE // R Calibration data (16 bits)
|
||||||
|
|
||||||
|
#define BMP085_CONTROL 0xF4
|
||||||
|
#define BMP085_TEMPDATA 0xF6
|
||||||
|
#define BMP085_PRESSUREDATA 0xF6
|
||||||
|
#define BMP085_READTEMPCMD 0x2E
|
||||||
|
#define BMP085_READPRESSURECMD 0x34
|
||||||
|
|
||||||
|
|
||||||
|
class Adafruit_BMP085 {
|
||||||
|
public:
|
||||||
|
Adafruit_BMP085();
|
||||||
|
boolean begin(uint8_t mode = BMP085_ULTRAHIGHRES); // by default go highres
|
||||||
|
float readTemperature(void);
|
||||||
|
int32_t readPressure(void);
|
||||||
|
int32_t readSealevelPressure(float altitude_meters = 0);
|
||||||
|
float readAltitude(float sealevelPressure = 101325); // std atmosphere
|
||||||
|
uint16_t readRawTemperature(void);
|
||||||
|
uint32_t readRawPressure(void);
|
||||||
|
|
||||||
|
private:
|
||||||
|
int32_t computeB5(int32_t UT);
|
||||||
|
uint8_t read8(uint8_t addr);
|
||||||
|
uint16_t read16(uint8_t addr);
|
||||||
|
void write8(uint8_t addr, uint8_t data);
|
||||||
|
|
||||||
|
uint8_t oversampling;
|
||||||
|
|
||||||
|
int16_t ac1, ac2, ac3, b1, b2, mb, mc, md;
|
||||||
|
uint16_t ac4, ac5, ac6;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // ADAFRUIT_BMP085_H
|
66
BMP085test/BMP085test.ino
Normal file
66
BMP085test/BMP085test.ino
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
#include <Wire.h>
|
||||||
|
#include <Adafruit_BMP085.h>
|
||||||
|
|
||||||
|
/***************************************************
|
||||||
|
This is an example for the BMP085 Barometric Pressure & Temp Sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 Breakout
|
||||||
|
----> https://www.adafruit.com/products/391
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
// Connect VCC of the BMP085 sensor to 3.3V (NOT 5.0V!)
|
||||||
|
// Connect GND to Ground
|
||||||
|
// Connect SCL to i2c clock - on '168/'328 Arduino Uno/Duemilanove/etc thats Analog 5
|
||||||
|
// Connect SDA to i2c data - on '168/'328 Arduino Uno/Duemilanove/etc thats Analog 4
|
||||||
|
// EOC is not used, it signifies an end of conversion
|
||||||
|
// XCLR is a reset pin, also not used here
|
||||||
|
|
||||||
|
Adafruit_BMP085 bmp;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
if (!bmp.begin()) {
|
||||||
|
Serial.println("Could not find a valid BMP085 sensor, check wiring!");
|
||||||
|
while (1) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bmp.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(bmp.readPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
// Calculate altitude assuming 'standard' barometric
|
||||||
|
// pressure of 1013.25 millibar = 101325 Pascal
|
||||||
|
Serial.print("Altitude = ");
|
||||||
|
Serial.print(bmp.readAltitude());
|
||||||
|
Serial.println(" meters");
|
||||||
|
|
||||||
|
Serial.print("Pressure at sealevel (calculated) = ");
|
||||||
|
Serial.print(bmp.readSealevelPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
// you can get a more precise measurement of altitude
|
||||||
|
// if you know the current sea level pressure which will
|
||||||
|
// vary with weather and such. If it is 1015 millibars
|
||||||
|
// that is equal to 101500 Pascals.
|
||||||
|
Serial.print("Real altitude = ");
|
||||||
|
Serial.print(bmp.readAltitude(101500));
|
||||||
|
Serial.println(" meters");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
delay(500);
|
||||||
|
}
|
59
bmp280-test/bmp280-test.ino
Normal file
59
bmp280-test/bmp280-test.ino
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
#include <Wire.h>
|
||||||
|
#include "i2c.h"
|
||||||
|
|
||||||
|
#include "i2c_BMP280.h"
|
||||||
|
BMP280 bmp280;
|
||||||
|
|
||||||
|
void setup()
|
||||||
|
{
|
||||||
|
Serial.begin(115200);
|
||||||
|
|
||||||
|
Serial.print("Probe BMP280: ");
|
||||||
|
if (bmp280.initialize()) Serial.println("Sensor found");
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Serial.println("Sensor missing");
|
||||||
|
while (1) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
// onetime-measure:
|
||||||
|
bmp280.setEnabled(0);
|
||||||
|
bmp280.triggerMeasurement();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop()
|
||||||
|
{
|
||||||
|
bmp280.awaitMeasurement();
|
||||||
|
|
||||||
|
float temperature;
|
||||||
|
bmp280.getTemperature(temperature);
|
||||||
|
|
||||||
|
float pascal;
|
||||||
|
bmp280.getPressure(pascal);
|
||||||
|
|
||||||
|
static float meters, metersold;
|
||||||
|
bmp280.getAltitude(meters);
|
||||||
|
metersold = (metersold * 10 + meters)/11;
|
||||||
|
|
||||||
|
bmp280.triggerMeasurement();
|
||||||
|
|
||||||
|
Serial.print(" HeightPT1: ");
|
||||||
|
Serial.print(metersold);
|
||||||
|
Serial.print(" m; Height: ");
|
||||||
|
Serial.print(meters);
|
||||||
|
Serial.print(" Pressure: ");
|
||||||
|
Serial.print(pascal);
|
||||||
|
Serial.print(" Pa; T: ");
|
||||||
|
Serial.print(temperature);
|
||||||
|
Serial.println(" C");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**<
|
||||||
|
|
||||||
|
Program size:
|
||||||
|
A1.0.5:
|
||||||
|
A1.5.7: 9680b
|
||||||
|
A1.6.3: 9664b / 561b
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
13
bmp280-test/i2c.cpp
Normal file
13
bmp280-test/i2c.cpp
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
//#ifdef WirePlus_h
|
||||||
|
|
||||||
|
/**<
|
||||||
|
|
||||||
|
TODO: ugly BUGFIX!!!
|
||||||
|
moved content directly to i2c.h ...
|
||||||
|
to get Scripts without i2c down in filesize
|
||||||
|
(i2c.cpp is loaded w/o request)
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
//#endif
|
||||||
|
|
173
bmp280-test/i2c.h
Normal file
173
bmp280-test/i2c.h
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
#ifndef WirePlus_h
|
||||||
|
#define WirePlus_h
|
||||||
|
|
||||||
|
#include "Wire.h"
|
||||||
|
#include <Arduino.h> // for uint8_t data type
|
||||||
|
|
||||||
|
/** ######### usefull defines ################################################################# */
|
||||||
|
|
||||||
|
#define getmax(a,b) ((a)>(b)?(a):(b)) // TODO: implement as static const
|
||||||
|
#define BITMASK(a) (1<<a)
|
||||||
|
#define BIT(a) (1<<a)
|
||||||
|
|
||||||
|
#ifndef TRUE
|
||||||
|
#define TRUE (1==1)
|
||||||
|
#define FALSE (1==2)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef HIGH
|
||||||
|
#define LOW (0)
|
||||||
|
#define HIGH (1)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/// are they really usefull?
|
||||||
|
#define UBLB(a,b) ( ( (a) << 8) | (b) )
|
||||||
|
#define UBLB19(a,b) ( ( (a) << 16 ) | (b) )
|
||||||
|
#define UBLB32(a,b,c,d) ((( ((a)<<24) | ((b)<<16) ) | ((c)<<8)) | (d) )
|
||||||
|
|
||||||
|
/**< A way to get around Questions with shifting
|
||||||
|
|
||||||
|
uint8_t value = 250;
|
||||||
|
Serial.println(value); // --> 250
|
||||||
|
Serial.println(int8_t(value)); // --> -6
|
||||||
|
Serial.println(int8_t(value)<<8); // --> -1536 = -6*256
|
||||||
|
|
||||||
|
Serial.println(uint8_t(value)); // --> 250
|
||||||
|
Serial.println(uint8_t(value)<<8); // --> -1536 = -6*256 !!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
Serial.println(uint16_t(value<<8)); // --> 64000
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
class WirePlus
|
||||||
|
{
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
WirePlus();
|
||||||
|
|
||||||
|
uint8_t probe (const uint8_t);
|
||||||
|
uint8_t probeAddress(const uint8_t);
|
||||||
|
void write (const uint8_t, const uint8_t, const uint8_t *, const uint8_t);
|
||||||
|
void writeByte (const uint8_t, const uint8_t, const uint8_t);
|
||||||
|
void writeCMD (const uint8_t, const uint8_t);
|
||||||
|
uint8_t readByte (const uint8_t, const uint8_t);
|
||||||
|
void read (const uint8_t, const uint8_t, uint8_t *, const uint8_t);
|
||||||
|
void setRegister (const uint8_t, const uint8_t, const uint8_t, const uint8_t);
|
||||||
|
uint8_t getRegister (const uint8_t, const uint8_t, const uint8_t);
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
WirePlus(const WirePlus&); // declaration only for copy constructor
|
||||||
|
WirePlus& operator=(const WirePlus&); // declaration only for copy assignment --> make it uncopyable
|
||||||
|
};
|
||||||
|
|
||||||
|
/** ######### Implementation ################################################################# */
|
||||||
|
|
||||||
|
WirePlus::WirePlus()
|
||||||
|
{
|
||||||
|
Wire.begin(); // I2C as Master
|
||||||
|
// bitSet(PORTC, 4); // deactivate internal pull-ups for twi
|
||||||
|
// bitSet(PORTC, 5); // as per note from atmega8 manual pg167
|
||||||
|
// switch to 400KHz I2C - eheheh
|
||||||
|
TWBR = ((F_CPU / 400000L) - 16) / 2; // see twi_init in Wire/utility/twi.c
|
||||||
|
};
|
||||||
|
/** ######### Public Methods ################################################################# */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
uint8_t WirePlus::probe(const uint8_t address)
|
||||||
|
{
|
||||||
|
Wire.beginTransmission(address);
|
||||||
|
if (Wire.endTransmission(true)==0) return 1; // found something
|
||||||
|
else return 0; // no response
|
||||||
|
};
|
||||||
|
|
||||||
|
uint8_t WirePlus::probeAddress(const uint8_t address)
|
||||||
|
{
|
||||||
|
return probe(address);
|
||||||
|
};
|
||||||
|
|
||||||
|
void WirePlus::write(const uint8_t address, const uint8_t register_address, const uint8_t write_value[], const uint8_t length=1)
|
||||||
|
{
|
||||||
|
if (!length) return;
|
||||||
|
Wire.beginTransmission(address);
|
||||||
|
Wire.write(register_address);
|
||||||
|
uint8_t counter;
|
||||||
|
counter = 0;
|
||||||
|
while (counter < length)
|
||||||
|
{
|
||||||
|
Wire.write(write_value[counter]);
|
||||||
|
counter++;
|
||||||
|
}
|
||||||
|
Wire.endTransmission(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
void WirePlus::writeByte(const uint8_t address, const uint8_t register_address, const uint8_t write_value)
|
||||||
|
{
|
||||||
|
Wire.beginTransmission(address);
|
||||||
|
Wire.write(register_address);
|
||||||
|
Wire.write(write_value);
|
||||||
|
Wire.endTransmission(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
void WirePlus::writeCMD(const uint8_t address, const uint8_t cmd)
|
||||||
|
{
|
||||||
|
Wire.beginTransmission(address);
|
||||||
|
Wire.write(cmd);
|
||||||
|
Wire.endTransmission();
|
||||||
|
};
|
||||||
|
|
||||||
|
void WirePlus::read(const uint8_t address, const uint8_t registeraddress, uint8_t buff[], const uint8_t length=1)
|
||||||
|
{
|
||||||
|
Wire.beginTransmission(address); // Adress + WRITE (0)
|
||||||
|
Wire.write(registeraddress);
|
||||||
|
Wire.endTransmission(false); // No Stop Condition, for repeated Talk
|
||||||
|
|
||||||
|
if (!length) return;
|
||||||
|
Wire.requestFrom(address, length); // Address + READ (1)
|
||||||
|
uint8_t _i;
|
||||||
|
_i=0;
|
||||||
|
while(Wire.available())
|
||||||
|
{
|
||||||
|
buff[_i] = Wire.read();
|
||||||
|
_i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
Wire.endTransmission(true); // Stop Condition
|
||||||
|
};
|
||||||
|
|
||||||
|
uint8_t WirePlus::readByte(const uint8_t address, const uint8_t register_address)
|
||||||
|
{
|
||||||
|
uint8_t _readvalue;
|
||||||
|
read(address, register_address, &_readvalue, 1);
|
||||||
|
return _readvalue;
|
||||||
|
};
|
||||||
|
|
||||||
|
void WirePlus::setRegister(const uint8_t address, const uint8_t registeraddress, const uint8_t mask, const uint8_t writevalue)
|
||||||
|
{
|
||||||
|
uint8_t _setting;
|
||||||
|
read(address, registeraddress, &_setting, 1 );
|
||||||
|
_setting &= ~mask;
|
||||||
|
_setting |= (writevalue&mask);
|
||||||
|
writeByte(address, registeraddress, _setting);
|
||||||
|
};
|
||||||
|
|
||||||
|
uint8_t WirePlus::getRegister(const uint8_t address, const uint8_t registeraddress, const uint8_t mask)
|
||||||
|
{
|
||||||
|
uint8_t _setting;
|
||||||
|
read(address, registeraddress, &_setting, (uint8_t)1 );
|
||||||
|
return (_setting & mask);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
extern WirePlus i2c;
|
||||||
|
|
||||||
|
/** ######### Preinstantiate Object ################################################################# */
|
||||||
|
WirePlus i2c;
|
||||||
|
|
||||||
|
//#include "i2c.cpp" // TODO: ugly BUGFIX to get Scripts without i2c down in filesize (i2c.cpp is loaded w/o request)
|
||||||
|
|
||||||
|
#endif
|
157
bmp280test/Adafruit_BMP280.h
Normal file
157
bmp280test/Adafruit_BMP280.h
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C to communicate, 2 pins are required to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
#ifndef __BMP280_H__
|
||||||
|
#define __BMP280_H__
|
||||||
|
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
#include "Arduino.h"
|
||||||
|
#else
|
||||||
|
#include "WProgram.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
|
||||||
|
#ifdef __AVR_ATtiny85__
|
||||||
|
#include "TinyWireM.h"
|
||||||
|
#define Wire TinyWireM
|
||||||
|
#else
|
||||||
|
#include <Wire.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
I2C ADDRESS/BITS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
#define BMP280_ADDRESS (0x76)
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
REGISTERS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
enum
|
||||||
|
{
|
||||||
|
BMP280_REGISTER_DIG_T1 = 0x88,
|
||||||
|
BMP280_REGISTER_DIG_T2 = 0x8A,
|
||||||
|
BMP280_REGISTER_DIG_T3 = 0x8C,
|
||||||
|
|
||||||
|
BMP280_REGISTER_DIG_P1 = 0x8E,
|
||||||
|
BMP280_REGISTER_DIG_P2 = 0x90,
|
||||||
|
BMP280_REGISTER_DIG_P3 = 0x92,
|
||||||
|
BMP280_REGISTER_DIG_P4 = 0x94,
|
||||||
|
BMP280_REGISTER_DIG_P5 = 0x96,
|
||||||
|
BMP280_REGISTER_DIG_P6 = 0x98,
|
||||||
|
BMP280_REGISTER_DIG_P7 = 0x9A,
|
||||||
|
BMP280_REGISTER_DIG_P8 = 0x9C,
|
||||||
|
BMP280_REGISTER_DIG_P9 = 0x9E,
|
||||||
|
|
||||||
|
BMP280_REGISTER_CHIPID = 0xD0,
|
||||||
|
BMP280_REGISTER_VERSION = 0xD1,
|
||||||
|
BMP280_REGISTER_SOFTRESET = 0xE0,
|
||||||
|
|
||||||
|
BMP280_REGISTER_CAL26 = 0xE1, // R calibration stored in 0xE1-0xF0
|
||||||
|
|
||||||
|
BMP280_REGISTER_CONTROL = 0xF4,
|
||||||
|
BMP280_REGISTER_CONFIG = 0xF5,
|
||||||
|
BMP280_REGISTER_PRESSUREDATA = 0xF7,
|
||||||
|
BMP280_REGISTER_TEMPDATA = 0xFA,
|
||||||
|
};
|
||||||
|
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
CALIBRATION DATA
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint16_t dig_T1;
|
||||||
|
int16_t dig_T2;
|
||||||
|
int16_t dig_T3;
|
||||||
|
|
||||||
|
uint16_t dig_P1;
|
||||||
|
int16_t dig_P2;
|
||||||
|
int16_t dig_P3;
|
||||||
|
int16_t dig_P4;
|
||||||
|
int16_t dig_P5;
|
||||||
|
int16_t dig_P6;
|
||||||
|
int16_t dig_P7;
|
||||||
|
int16_t dig_P8;
|
||||||
|
int16_t dig_P9;
|
||||||
|
|
||||||
|
uint8_t dig_H1;
|
||||||
|
int16_t dig_H2;
|
||||||
|
uint8_t dig_H3;
|
||||||
|
int16_t dig_H4;
|
||||||
|
int16_t dig_H5;
|
||||||
|
int8_t dig_H6;
|
||||||
|
} bmp280_calib_data;
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
class Adafruit_BMP280_Unified : public Adafruit_Sensor
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adafruit_BMP280_Unified(int32_t sensorID = -1);
|
||||||
|
|
||||||
|
bool begin(uint8_t addr = BMP280_ADDRESS);
|
||||||
|
void getTemperature(float *temp);
|
||||||
|
void getPressure(float *pressure);
|
||||||
|
float pressureToAltitude(float seaLevel, float atmospheric, float temp);
|
||||||
|
float seaLevelForAltitude(float altitude, float atmospheric, float temp);
|
||||||
|
void getEvent(sensors_event_t*);
|
||||||
|
void getSensor(sensor_t*);
|
||||||
|
|
||||||
|
private:
|
||||||
|
uint8_t _i2c_addr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
};
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class Adafruit_BMP280
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adafruit_BMP280(void);
|
||||||
|
Adafruit_BMP280(int8_t cspin);
|
||||||
|
Adafruit_BMP280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin);
|
||||||
|
|
||||||
|
bool begin(uint8_t addr = BMP280_ADDRESS);
|
||||||
|
float readTemperature(void);
|
||||||
|
float readPressure(void);
|
||||||
|
float readAltitude(float seaLevelhPa = 1013.25);
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
void readCoefficients(void);
|
||||||
|
uint8_t spixfer(uint8_t x);
|
||||||
|
|
||||||
|
void write8(byte reg, byte value);
|
||||||
|
uint8_t read8(byte reg);
|
||||||
|
uint16_t read16(byte reg);
|
||||||
|
uint32_t read24(byte reg);
|
||||||
|
int16_t readS16(byte reg);
|
||||||
|
uint16_t read16_LE(byte reg); // little endian
|
||||||
|
int16_t readS16_LE(byte reg); // little endian
|
||||||
|
|
||||||
|
uint8_t _i2caddr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
int32_t t_fine;
|
||||||
|
|
||||||
|
int8_t _cs, _mosi, _miso, _sck;
|
||||||
|
|
||||||
|
bmp280_calib_data _bmp280_calib;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
63
bmp280test/bmp280test.ino
Normal file
63
bmp280test/bmp280test.ino
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMEP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BMP280.h>
|
||||||
|
|
||||||
|
#define BMP_SCK 13
|
||||||
|
#define BMP_MISO 12
|
||||||
|
#define BMP_MOSI 11
|
||||||
|
#define BMP_CS 10
|
||||||
|
|
||||||
|
#define ALT_BMP280_ADDRESS (0x76)
|
||||||
|
|
||||||
|
Adafruit_BMP280 bme; // I2C
|
||||||
|
//Adafruit_BMP280 bme(BMP_CS); // hardware SPI
|
||||||
|
// Adafruit_BMP280 bme(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
Serial.println(F("BMP280 test"));
|
||||||
|
|
||||||
|
Serial.println(F("BMP280_ADDRESS"));
|
||||||
|
Serial.println(BMP280_ADDRESS);
|
||||||
|
Serial.println(F("ALT_BMP280_ADDRESS"));
|
||||||
|
Serial.println(ALT_BMP280_ADDRESS);
|
||||||
|
if (!bme.begin(ALT_BMP280_ADDRESS)) {
|
||||||
|
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
|
||||||
|
while (1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bme.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(bme.readPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
Serial.print("Approx altitude = ");
|
||||||
|
Serial.print(bme.readAltitude(1006.44)); // this should be adjusted to your local forcase
|
||||||
|
Serial.println(" m");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
delay(2000);
|
||||||
|
}
|
59
esp32_bme280/esp32_bme280.ino
Normal file
59
esp32_bme280/esp32_bme280.ino
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMEP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BMP280.h>
|
||||||
|
|
||||||
|
#define BMP_SCK 13
|
||||||
|
#define BMP_MISO 12
|
||||||
|
#define BMP_MOSI 11
|
||||||
|
#define BMP_CS 10
|
||||||
|
|
||||||
|
#define ALT_BMP280_ADDRESS (0x76)
|
||||||
|
|
||||||
|
Adafruit_BMP280 bme; // I2C
|
||||||
|
//Adafruit_BMP280 bme(BMP_CS); // hardware SPI
|
||||||
|
//Adafruit_BMP280 bme(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(115200);
|
||||||
|
Serial.println(F("BMP280 test"));
|
||||||
|
|
||||||
|
if (!bme.begin(ALT_BMP280_ADDRESS)) {
|
||||||
|
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
|
||||||
|
while (1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bme.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(bme.readPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
Serial.print("Approx altitude = ");
|
||||||
|
Serial.print(bme.readAltitude(1013.25)); // this should be adjusted to your local forcase
|
||||||
|
Serial.println(" m");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
delay(2000);
|
||||||
|
}
|
133
esp32_logger/esp32_logger.ino
Normal file
133
esp32_logger/esp32_logger.ino
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BMP280.h>
|
||||||
|
|
||||||
|
#include <WiFi.h>
|
||||||
|
#include <PubSubClient.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define BMP_SCK 13
|
||||||
|
#define BMP_MISO 12
|
||||||
|
#define BMP_MOSI 11
|
||||||
|
#define BMP_CS 10
|
||||||
|
|
||||||
|
#define ALT_BMP280_ADDRESS (0x76)
|
||||||
|
|
||||||
|
Adafruit_BMP280 bme; // I2C
|
||||||
|
|
||||||
|
const char* networkName = "W1ztM.4omNj";
|
||||||
|
const char* networkPswd = "MPReoa43";
|
||||||
|
const char* mqtt_server = "192.168.1.156";
|
||||||
|
|
||||||
|
const int LED_PIN = 13;
|
||||||
|
|
||||||
|
WiFiClient espClient;
|
||||||
|
PubSubClient client(espClient);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// put your setup code here, to run once:
|
||||||
|
Serial.begin(115200);
|
||||||
|
|
||||||
|
pinMode(LED_PIN, OUTPUT);
|
||||||
|
|
||||||
|
// Connect to the WiFi network (see function below loop)
|
||||||
|
InitTempSensor();
|
||||||
|
connectToWiFi(networkName, networkPswd);
|
||||||
|
|
||||||
|
digitalWrite(LED_PIN, LOW); // LED off
|
||||||
|
client.setServer(mqtt_server, 1883);
|
||||||
|
}
|
||||||
|
|
||||||
|
void connectToWiFi(const char * ssid, const char * pwd)
|
||||||
|
{
|
||||||
|
int ledState = 0;
|
||||||
|
|
||||||
|
printLine();
|
||||||
|
Serial.println("Connecting to WiFi network: " + String(ssid));
|
||||||
|
|
||||||
|
WiFi.begin(ssid, pwd);
|
||||||
|
|
||||||
|
while (WiFi.status() != WL_CONNECTED)
|
||||||
|
{
|
||||||
|
// Blink LED while we're connecting:
|
||||||
|
digitalWrite(LED_PIN, ledState);
|
||||||
|
ledState = (ledState + 1) % 2; // Flip ledState
|
||||||
|
delay(500);
|
||||||
|
Serial.print(".");
|
||||||
|
}
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
Serial.println("WiFi connected!");
|
||||||
|
Serial.print("IP address: ");
|
||||||
|
Serial.println(WiFi.localIP());
|
||||||
|
}
|
||||||
|
|
||||||
|
void InitTempSensor() {
|
||||||
|
if (!bme.begin(ALT_BMP280_ADDRESS)) {
|
||||||
|
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
|
||||||
|
int ledState = 0;
|
||||||
|
while (1) {
|
||||||
|
digitalWrite(LED_PIN, ledState);
|
||||||
|
ledState = (ledState + 1) % 2; // Flip ledState
|
||||||
|
delay(100);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void reconnect() {
|
||||||
|
// Loop until we're reconnected
|
||||||
|
while (!client.connected()) {
|
||||||
|
Serial.print("Attempting MQTT connection...");
|
||||||
|
// Attempt to connect
|
||||||
|
if (client.connect("ESP32Client")) {
|
||||||
|
digitalWrite(LED_PIN, LOW);
|
||||||
|
Serial.println("connected");
|
||||||
|
client.subscribe("bedroomTemp");
|
||||||
|
} else {
|
||||||
|
digitalWrite(LED_PIN, HIGH);
|
||||||
|
Serial.print("failed, rc=");
|
||||||
|
Serial.print(client.state());
|
||||||
|
Serial.println(" try again in 5 seconds");
|
||||||
|
// Wait 5 seconds before retrying
|
||||||
|
delay(5000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void printLine()
|
||||||
|
{
|
||||||
|
Serial.println();
|
||||||
|
for (int i = 0; i < 30; i++)
|
||||||
|
Serial.print("-");
|
||||||
|
Serial.println();
|
||||||
|
}
|
||||||
|
void loop() {
|
||||||
|
// put your main code here, to run repeatedly:
|
||||||
|
if (!client.connected()) {
|
||||||
|
reconnect();
|
||||||
|
}
|
||||||
|
client.loop();
|
||||||
|
char szEventInfo[64];
|
||||||
|
float tempReading = bme.readTemperature();
|
||||||
|
float presReading = bme.readPressure() / 100.0;
|
||||||
|
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(tempReading);
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(presReading);
|
||||||
|
Serial.println(" mBar");
|
||||||
|
|
||||||
|
String strTemp = "{\"temp\":" + String(tempReading, 2) + "}";
|
||||||
|
|
||||||
|
strTemp.toCharArray(szEventInfo, 64);
|
||||||
|
Serial.print("Publish message: ");
|
||||||
|
Serial.println(szEventInfo);
|
||||||
|
client.publish("bedroomTemp", szEventInfo);
|
||||||
|
delay(10000);
|
||||||
|
}
|
34
gemma_blink/gemma_blink.ino
Normal file
34
gemma_blink/gemma_blink.ino
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/*
|
||||||
|
Blink
|
||||||
|
Turns on an LED on for one second, then off for one second, repeatedly.
|
||||||
|
|
||||||
|
This example code is in the public domain.
|
||||||
|
|
||||||
|
To upload to your or Trinket:
|
||||||
|
1) Select the proper board from the Tools->Board Menu (Arduino Gemma if
|
||||||
|
teal, Adafruit Gemma if black)
|
||||||
|
2) Select the uploader from the Tools->Programmer ("Arduino Gemma" if teal,
|
||||||
|
"USBtinyISP" if black Gemma)
|
||||||
|
3) Plug in the Gemma into USB, make sure you see the green LED lit
|
||||||
|
4) For windows, make sure you install the right Gemma drivers
|
||||||
|
5) Press the button on the Gemma/Trinket - verify you see
|
||||||
|
the red LED pulse. This means it is ready to receive data
|
||||||
|
6) Click the upload button above within 10 seconds
|
||||||
|
*/
|
||||||
|
|
||||||
|
int led = 1; // blink 'digital' pin 1 - AKA the built in red LED
|
||||||
|
|
||||||
|
// the setup routine runs once when you press reset:
|
||||||
|
void setup() {
|
||||||
|
// initialize the digital pin as an output.
|
||||||
|
pinMode(led, OUTPUT);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// the loop routine runs over and over again forever:
|
||||||
|
void loop() {
|
||||||
|
digitalWrite(led, HIGH);
|
||||||
|
delay(1000);
|
||||||
|
digitalWrite(led, LOW);
|
||||||
|
delay(1000);
|
||||||
|
}
|
114
gemma_fire/gemma_fire.ino
Normal file
114
gemma_fire/gemma_fire.ino
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
// Low power NeoPixel earrings example. Makes a nice blinky display
|
||||||
|
// with just a few LEDs on at any time...uses MUCH less juice than
|
||||||
|
// rainbow display!
|
||||||
|
|
||||||
|
#include <Adafruit_NeoPixel.h>
|
||||||
|
|
||||||
|
#define PIN 0
|
||||||
|
#define FIRE_SIZE 15
|
||||||
|
#define RED_SIZE 12
|
||||||
|
#define LIGHTNING_SIZE 14
|
||||||
|
|
||||||
|
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, PIN);
|
||||||
|
|
||||||
|
uint8_t mode = 0, // Current animation effect
|
||||||
|
offset = 0; // Position of spinny eyes
|
||||||
|
uint32_t color = 0xffffff; // Start red
|
||||||
|
uint32_t prevTime;
|
||||||
|
uint8_t m = 0;
|
||||||
|
uint32_t waiting = 8000;
|
||||||
|
|
||||||
|
|
||||||
|
const uint32_t mix[] = { 0xff00ff, 0x8f00ff, 0xf000ff };
|
||||||
|
const uint32_t breathe[] = {7, 7, 15, 23, 30, 38, 45, 52, 58, 64, 70, 76, 80, 85, 89, 92, 95, 97, 98, 99, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 99, 98, 97, 95, 92, 89, 85, 80, 76, 70, 64, 58, 52, 45, 38, 30, 23, 15, 7 };
|
||||||
|
const uint32_t fire[] = { 0xff2426, 0xfe3223, 0xfe4121, 0xfd4f1f, 0xfd5e1d, 0xfc6d1b, 0xfc7b18, 0xfb8a16, 0xfb9814, 0xfaa712, 0xfab610, 0xffc20d, 0xffd30b, 0xffe309, 0xfff407, 0xf7ff05 };
|
||||||
|
const uint32_t lightning[] = { 0xffffff, 0x2436ff, 0x2e43fe, 0x3950fe, 0x4354fe, 0x4e6bfe, 0xffffff, 0x5879fe, 0x6386fe, 0x6d93fe, 0x78a1fe, 0x82aefe, 0x8dbcfe, 0x97c9fe, 0xa2d6fe, 0xace4fe }; // ,0xc2fffe, , , , , , , , , , };
|
||||||
|
const uint32_t reds[] = { 0xf4c262, 0xff6961 , 0xff5c5c, 0xff1c00, 0xff0800, 0xff0000, 0xcd5c5c, 0xe34234, 0xd73b3e, 0xce1620, 0xcc0000, 0xb22222 }; //, , , , , , , , , , , 0xb31b1b};
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
pixels.begin();
|
||||||
|
pixels.setBrightness(10); // 1/3 brightness
|
||||||
|
prevTime = millis();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint8_t i;
|
||||||
|
uint32_t t;
|
||||||
|
uint8_t B;
|
||||||
|
|
||||||
|
|
||||||
|
switch (mode) {
|
||||||
|
|
||||||
|
case 0: // Random sparks - just one LED on at a time!
|
||||||
|
|
||||||
|
//
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
pixels.show();
|
||||||
|
delay(1000);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
B = breathe[m];
|
||||||
|
|
||||||
|
// color = fire[random(FIRE_SIZE)];
|
||||||
|
// color = lightning[random(LIGHTNING_SIZE)];
|
||||||
|
color = 0xff0000;
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
pixels.setBrightness(B);
|
||||||
|
pixels.show();
|
||||||
|
|
||||||
|
m++;
|
||||||
|
if (m > 49) {
|
||||||
|
m = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
delay(60);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
|
||||||
|
color = reds[random(RED_SIZE)];
|
||||||
|
|
||||||
|
// color = lightning[random(LIGHTNING_SIZE)];
|
||||||
|
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
|
||||||
|
pixels.show();
|
||||||
|
|
||||||
|
delay(120);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
t = millis();
|
||||||
|
|
||||||
|
if ((t - prevTime) > waiting) {
|
||||||
|
|
||||||
|
// color = fire[random(FIRE_SIZE)];
|
||||||
|
mode++;
|
||||||
|
m = 0;
|
||||||
|
|
||||||
|
if (mode > 2) {
|
||||||
|
mode = 0;
|
||||||
|
}
|
||||||
|
switch (mode) {
|
||||||
|
case 0:
|
||||||
|
waiting = 8000;
|
||||||
|
color = 0xff0000;
|
||||||
|
// color = 0x007fff;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
waiting = 30000;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
waiting = 30000;
|
||||||
|
pixels.setBrightness(60);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
//color = rgb[random(3)];
|
||||||
|
prevTime = t;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
162
gemma_fire_v2/gemma_fire_v2.ino
Normal file
162
gemma_fire_v2/gemma_fire_v2.ino
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
// Low power NeoPixel earrings example. Makes a nice blinky display
|
||||||
|
// with just a few LEDs on at any time...uses MUCH less juice than
|
||||||
|
// rainbow display!
|
||||||
|
|
||||||
|
#include <Adafruit_NeoPixel.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#define PIN 0
|
||||||
|
#define FIRE_SIZE 15
|
||||||
|
#define RED_SIZE 12
|
||||||
|
#define LIGHTNING_SIZE 14
|
||||||
|
|
||||||
|
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, PIN);
|
||||||
|
|
||||||
|
uint8_t mode = 0, // Current animation effect
|
||||||
|
offset = 0; // Position of spinny eyes
|
||||||
|
uint32_t color = 0xffffff; // Start red
|
||||||
|
uint32_t prevTime;
|
||||||
|
uint32_t prevChange;
|
||||||
|
uint8_t m = 0;
|
||||||
|
uint32_t waiting = 8000;
|
||||||
|
uint32_t changeTime = 120000;
|
||||||
|
uint8_t colourMode = 0;
|
||||||
|
|
||||||
|
|
||||||
|
const uint32_t mix[] = { 0xff00ff, 0x8f00ff, 0xf000ff };
|
||||||
|
const uint32_t breathe[] = {7, 7, 15, 23, 30, 38, 45, 52, 58, 64, 70, 76, 80, 85, 89, 92, 95, 97, 98, 99, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 99, 98, 97, 95, 92, 89, 85, 80, 76, 70, 64, 58, 52, 45, 38, 30, 23, 15, 7 };
|
||||||
|
const uint32_t fire[] = { 0xff2426, 0xfe3223, 0xfe4121, 0xfd4f1f, 0xfd5e1d, 0xfc6d1b, 0xfc7b18, 0xfb8a16, 0xfb9814, 0xfaa712, 0xfab610, 0xffc20d, 0xffd30b, 0xffe309, 0xfff407, 0xf7ff05 };
|
||||||
|
const uint32_t lightning[] = { 0xffffff, 0x2436ff, 0x2e43fe, 0x3950fe, 0x4354fe, 0x4e6bfe, 0xffffff, 0x5879fe, 0x6386fe, 0x6d93fe, 0x78a1fe, 0x82aefe, 0x8dbcfe, 0x97c9fe, 0xa2d6fe, 0xace4fe }; // ,0xc2fffe, , , , , , , , , , };
|
||||||
|
const uint32_t reds[] = { 0xf4c262, 0xff6961 , 0xff5c5c, 0xff1c00, 0xff0800, 0xff0000, 0xcd5c5c, 0xe34234, 0xd73b3e, 0xce1620, 0xcc0000, 0xb22222 }; //, , , , , , , , , , , 0xb31b1b};
|
||||||
|
|
||||||
|
const uint32_t clu_red_yellow[] = { 0xff0000, 0xff1100, 0xff2200, 0xff3300, 0xff4400, 0xff5500, 0xff6600, 0xff7700, 0xff8800, 0xff9900, 0xffaa00, 0xffbb00, 0xffcc00, 0xffdd00, 0xffee00, 0xffff00 };
|
||||||
|
const uint32_t clu_blue_red[] = {0x0000ff, 0x2200ff, 0x4400ff, 0x6600ff, 0x8800ff, 0xaa00ff, 0xcc00ff, 0xee00ff, 0xff00ee, 0xff00cc, 0xff00aa, 0xff0088, 0xff0066, 0xff0044, 0xff0022, 0xff0000};
|
||||||
|
const uint32_t clu_teal_purple[] = {0x00ffff, 0x00ddff, 0x00bbff, 0x0099ff, 0x0077ff, 0x0055ff, 0x0033ff, 0x0011ff, 0x1100ff, 0x3300ff, 0x5500ff, 0x7700ff, 0x9900ff, 0xbb00ff, 0xdd00ff, 0xff00ff};
|
||||||
|
const uint32_t clu_red_orange[] = { 0xff0000, 0xff0c00, 0xff1700, 0xff2300, 0xff2f00, 0xff3a00, 0xff4600, 0xff5200, 0xff5d00, 0xff6900, 0xff7500, 0xff8000, 0xff8c00, 0xff9800, 0xffa300, 0xffaf00 };
|
||||||
|
const uint32_t clu_teal_blue[] = { 0x00ffff, 0x00eeff, 0x00ddff, 0x00ccff, 0x00bbff, 0x00aaff, 0x0099ff, 0x0088ff, 0x0077ff, 0x0066ff, 0x0055ff, 0x0044ff, 0x0033ff, 0x0022ff, 0x0011ff, 0x0000ff };
|
||||||
|
const uint32_t clu_red_black[] = { 0xff0000, 0xee0000, 0xdd0000, 0xcc0000, 0xbb0000, 0xaa0000, 0x990000, 0x880000, 0x770000, 0x660000, 0x550000, 0x440000, 0x330000, 0x220000, 0x080000, 0x000000 };
|
||||||
|
const uint32_t clu_purple_yellow[] = { 0xff00ff, 0xff00dd, 0xff00bb, 0xff0099, 0xff0077, 0xff0055, 0xff0033, 0xff0011, 0xff1100, 0xff3300, 0xff5500, 0xff7700, 0xff9900, 0xffbb00, 0xffdd00, 0xffff00};
|
||||||
|
const uint32_t clu_yellow_green[] = { 0xffff00, 0xeeff00, 0xddff00, 0xccff00, 0xbbff00, 0xaaff00, 0x99ff00, 0x88ff00, 0x77ff00, 0x66ff00, 0x55ff00, 0x44ff00, 0x33ff00, 0x22ff00, 0x11ff00, 0x00ff00 };
|
||||||
|
const uint32_t clu_orange_green[] = { 0xff5300, 0xff6f00, 0xff8c00, 0xffa800, 0xffc500, 0xffe100, 0xfffe00, 0xe4ff00, 0xc7ff00, 0xabff00, 0x8eff00, 0x72ff00, 0x55ff00, 0x39ff00, 0x1cff00, 0x00ff00 };
|
||||||
|
|
||||||
|
const uint32_t clu[32];
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
pixels.begin();
|
||||||
|
pixels.setBrightness(10); // 1/3 brightness
|
||||||
|
prevTime = millis();
|
||||||
|
prevChange = millis();
|
||||||
|
|
||||||
|
// colourMode = 1;
|
||||||
|
// initclu();
|
||||||
|
}
|
||||||
|
|
||||||
|
void initclu() {
|
||||||
|
|
||||||
|
memcpy(clu, clu_blue_red, sizeof clu_blue_red );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint8_t i;
|
||||||
|
uint32_t t;
|
||||||
|
uint8_t B;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
switch (mode) {
|
||||||
|
|
||||||
|
case 0: // Random sparks - just one LED on at a time!
|
||||||
|
|
||||||
|
//
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
pixels.show();
|
||||||
|
delay(1000);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
B = breathe[m];
|
||||||
|
|
||||||
|
// color = fire[random(FIRE_SIZE)];
|
||||||
|
// color = lightning[random(LIGHTNING_SIZE)];
|
||||||
|
color = 0xff0000;
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
pixels.setBrightness(B);
|
||||||
|
pixels.show();
|
||||||
|
|
||||||
|
m++;
|
||||||
|
if (m > 49) {
|
||||||
|
m = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
delay(60);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
if (colourMode == 0) {
|
||||||
|
color = clu_red_yellow[random(FIRE_SIZE)];
|
||||||
|
}
|
||||||
|
if (colourMode == 1) {
|
||||||
|
color = clu_blue_red[random(FIRE_SIZE)];
|
||||||
|
}
|
||||||
|
if (colourMode == 2) {
|
||||||
|
color = clu_teal_purple[random(FIRE_SIZE)];
|
||||||
|
}
|
||||||
|
if (colourMode == 3) {
|
||||||
|
color = clu_red_orange[random(FIRE_SIZE)];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// color = lightning[random(LIGHTNING_SIZE)];
|
||||||
|
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
|
||||||
|
pixels.show();
|
||||||
|
|
||||||
|
delay(120);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
t = millis();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if ((t - prevTime) > waiting) {
|
||||||
|
|
||||||
|
// color = fire[random(FIRE_SIZE)];
|
||||||
|
mode++;
|
||||||
|
m = 0;
|
||||||
|
|
||||||
|
if (mode > 2) {
|
||||||
|
mode = 0;
|
||||||
|
}
|
||||||
|
switch (mode) {
|
||||||
|
case 0:
|
||||||
|
waiting = 8000;
|
||||||
|
color = 0xff0000;
|
||||||
|
// color = 0x007fff;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
waiting = 30000;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
waiting = 30000;
|
||||||
|
pixels.setBrightness(60);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mode == 2) {
|
||||||
|
//++colourMode;
|
||||||
|
//if (colourMode > 3) {
|
||||||
|
// colourMode = 0;
|
||||||
|
//}
|
||||||
|
}
|
||||||
|
//color = rgb[random(3)];
|
||||||
|
prevTime = millis();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
129
gemma_neo_orig/gemma_neo_orig.ino
Normal file
129
gemma_neo_orig/gemma_neo_orig.ino
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
// Low power NeoPixel earrings example. Makes a nice blinky display
|
||||||
|
// with just a few LEDs on at any time...uses MUCH less juice than
|
||||||
|
// rainbow display!
|
||||||
|
|
||||||
|
#include <Adafruit_NeoPixel.h>
|
||||||
|
|
||||||
|
#define PIN 0
|
||||||
|
|
||||||
|
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(32, PIN);
|
||||||
|
|
||||||
|
uint8_t mode = 1, // Current animation effect
|
||||||
|
offset = 0; // Position of spinny eyes
|
||||||
|
uint32_t color = 0xff0000; // Start red
|
||||||
|
uint32_t prevTime;
|
||||||
|
uint8_t m;
|
||||||
|
|
||||||
|
const float pi = 3.14;
|
||||||
|
|
||||||
|
const uint32_t breathe[] = {7, 7, 15, 23, 30, 38, 45, 52, 58, 64, 70, 76, 80, 85, 89, 92, 95, 97, 98, 99, 100, 100, 100, 100, 100, 100, 99, 98, 97, 95, 92, 89, 85, 80, 76, 70, 64, 58, 52, 45, 38, 30, 23, 15, 7 };
|
||||||
|
const uint32_t fire[] = { 0xff2426, 0xfe3223, 0xfe4121, 0xfd4f1f, 0xfd5e1d, 0xfc6d1b, 0xfc7b18, 0xfb8a16, 0xfb9814, 0xfaa712, 0xfab610, 0xffc20d, 0xffd30b, 0xffe309, 0xfff407, 0xf7ff05 };
|
||||||
|
const uint32_t lightning[] = { 0xffffff, 0x2436ff, 0x2e43fe, 0x3950fe, 0x4354fe, 0x4e6bfe,0xffffff, 0x5879fe, 0x6386fe, 0x6d93fe, 0x78a1fe, 0x82aefe, 0x8dbcfe, 0x97c9fe, 0xa2d6fe, 0xace4fe, 0xb7f1fe, 0xc2fffe, 0xffffff};
|
||||||
|
void setup() {
|
||||||
|
pixels.begin();
|
||||||
|
pixels.setBrightness(60); // 1/3 brightness
|
||||||
|
prevTime = millis();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint8_t i;
|
||||||
|
uint32_t t;
|
||||||
|
uint8_t B;
|
||||||
|
|
||||||
|
|
||||||
|
switch(mode) {
|
||||||
|
|
||||||
|
case 0: // Random sparks - just one LED on at a time!
|
||||||
|
i = 0;
|
||||||
|
pixels.setPixelColor(i, color);
|
||||||
|
pixels.show();
|
||||||
|
delay(10);
|
||||||
|
// pixels.setPixelColor(i, 0);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
// B = breathe[m];
|
||||||
|
|
||||||
|
color = 0xff2426;
|
||||||
|
pixels.setPixelColor(i, color);
|
||||||
|
// pixels.setBrightness(B);
|
||||||
|
pixels.show();
|
||||||
|
|
||||||
|
m++;
|
||||||
|
if (m > 44) {
|
||||||
|
m = 0;
|
||||||
|
//color = 0xff00ff;
|
||||||
|
}
|
||||||
|
delay(60);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
i = 0;
|
||||||
|
B = random(30) + 30;
|
||||||
|
color = fire[random(15)];
|
||||||
|
pixels.setPixelColor(i, color);
|
||||||
|
pixels.setBrightness(B);
|
||||||
|
pixels.show();
|
||||||
|
delay(40);
|
||||||
|
// pixels.setPixelColor(i, 0);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
// i = random(32);
|
||||||
|
i = 0;
|
||||||
|
color = lightning[random(18)];
|
||||||
|
pixels.setPixelColor(i, color);
|
||||||
|
pixels.show();
|
||||||
|
delay(40);
|
||||||
|
pixels.setPixelColor(i, 0);
|
||||||
|
|
||||||
|
break;
|
||||||
|
/* case 4: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
for(i=0; i<7; i++) {
|
||||||
|
uint32_t c = 0;
|
||||||
|
if(((offset + i) & 7) < 2) c = fire[i+1]; // 4 pixels on...
|
||||||
|
pixels.setPixelColor( i, c); // First eye
|
||||||
|
// pixels.setPixelColor(31-i, c); // Second eye (flipped)
|
||||||
|
}
|
||||||
|
pixels.show();
|
||||||
|
offset++;
|
||||||
|
delay(50);*/
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
case 5: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
if (m > 17) m = 0;
|
||||||
|
uint32_t c = lightning[m];
|
||||||
|
|
||||||
|
for (i=0;i<7; i=i+2) {
|
||||||
|
pixels.setPixelColor( i, lightning[m-1]); // First eye
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i=1;i<7; i=i+2) {
|
||||||
|
pixels.setPixelColor( i, fire[m-1]); // First eye
|
||||||
|
}
|
||||||
|
|
||||||
|
pixels.show();
|
||||||
|
m++;
|
||||||
|
delay(50);
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
t = millis();
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
if((t - prevTime) > 8000) { // Every 8 seconds...
|
||||||
|
mode++; // Next mode
|
||||||
|
m = 0;
|
||||||
|
if(mode > 3) { // End of modes?
|
||||||
|
mode = 0; // Start modes over
|
||||||
|
color >>= 8; // Next color R->G->B
|
||||||
|
if(!color) color = 0xffae00; // Reset to red
|
||||||
|
}
|
||||||
|
for(i=0; i<32; i++) pixels.setPixelColor(i, 0);
|
||||||
|
prevTime = t;
|
||||||
|
}
|
||||||
|
|
||||||
|
*/
|
||||||
|
}
|
69
gemma_pixel/gemma_pixel.ino
Normal file
69
gemma_pixel/gemma_pixel.ino
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
// Low power NeoPixel earrings example. Makes a nice blinky display
|
||||||
|
// with just a few LEDs on at any time...uses MUCH less juice than
|
||||||
|
// rainbow display!
|
||||||
|
|
||||||
|
#include <Adafruit_NeoPixel.h>
|
||||||
|
|
||||||
|
#define PIN 0
|
||||||
|
|
||||||
|
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(32, PIN);
|
||||||
|
|
||||||
|
uint8_t mode = 0, // Current animation effect
|
||||||
|
offset = 0; // Position of spinny eyes
|
||||||
|
uint32_t color = 0xffae00; // Start red
|
||||||
|
uint32_t prevTime;
|
||||||
|
uint8_t maxPixels = 2;
|
||||||
|
|
||||||
|
const uint32_t mm[] = { 0xff2426, 0xfe3223, 0xfe4121, 0xfd4f1f, 0xfd5e1d, 0xfc6d1b, 0xfc7b18, 0xfb8a16, 0xfb9814, 0xfaa712, 0xfab610, 0xffc20d, 0xffd30b, 0xffe309, 0xfff407, 0xf7ff05 };
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
pixels.begin();
|
||||||
|
pixels.setBrightness(60); // 1/3 brightness
|
||||||
|
prevTime = millis();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint8_t i;
|
||||||
|
uint32_t t;
|
||||||
|
|
||||||
|
|
||||||
|
switch(mode) {
|
||||||
|
|
||||||
|
case 0: // Random sparks - just one LED on at a time!
|
||||||
|
i = random(15);
|
||||||
|
color = mm[i];
|
||||||
|
pixels.setPixelColor(0, color);
|
||||||
|
pixels.setPixelColor(1, color);
|
||||||
|
pixels.show();
|
||||||
|
i = random(4);
|
||||||
|
delay(5 + (i*5));
|
||||||
|
pixels.setPixelColor(0, 0);
|
||||||
|
pixels.setPixelColor(1, 0);
|
||||||
|
pixels.show();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1: // Spinny wheels (8 LEDs on at a time)
|
||||||
|
for(i=0; i<maxPixels; i++) {
|
||||||
|
uint32_t c = 0;
|
||||||
|
if(((offset + i) & 7) < 2) c = color; // 4 pixels on...
|
||||||
|
pixels.setPixelColor( i, c); // First eye
|
||||||
|
pixels.setPixelColor(31-i, c); // Second eye (flipped)
|
||||||
|
}
|
||||||
|
pixels.show();
|
||||||
|
offset++;
|
||||||
|
delay(20);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
t = millis();
|
||||||
|
if((t - prevTime) > 8000) { // Every 8 seconds...
|
||||||
|
mode++; // Next mode
|
||||||
|
if(mode > 1) { // End of modes?
|
||||||
|
mode = 0; // Start modes over
|
||||||
|
color >>= 8; // Next color R->G->B
|
||||||
|
if(!color) color = 0xffae00; // Reset to red
|
||||||
|
}
|
||||||
|
for(i=0; i<32; i++) pixels.setPixelColor(i, 0);
|
||||||
|
prevTime = t;
|
||||||
|
}
|
||||||
|
}
|
34
gemma_test/gemma_test.ino
Normal file
34
gemma_test/gemma_test.ino
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/*
|
||||||
|
Blink
|
||||||
|
Turns on an LED on for one second, then off for one second, repeatedly.
|
||||||
|
|
||||||
|
This example code is in the public domain.
|
||||||
|
|
||||||
|
To upload to your or Trinket:
|
||||||
|
1) Select the proper board from the Tools->Board Menu (Arduino Gemma if
|
||||||
|
teal, Adafruit Gemma if black)
|
||||||
|
2) Select the uploader from the Tools->Programmer ("Arduino Gemma" if teal,
|
||||||
|
"USBtinyISP" if black Gemma)
|
||||||
|
3) Plug in the Gemma into USB, make sure you see the green LED lit
|
||||||
|
4) For windows, make sure you install the right Gemma drivers
|
||||||
|
5) Press the button on the Gemma/Trinket - verify you see
|
||||||
|
the red LED pulse. This means it is ready to receive data
|
||||||
|
6) Click the upload button above within 10 seconds
|
||||||
|
*/
|
||||||
|
|
||||||
|
int led = 1; // blink 'digital' pin 1 - AKA the built in red LED
|
||||||
|
|
||||||
|
// the setup routine runs once when you press reset:
|
||||||
|
void setup() {
|
||||||
|
// initialize the digital pin as an output.
|
||||||
|
pinMode(led, OUTPUT);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// the loop routine runs over and over again forever:
|
||||||
|
void loop() {
|
||||||
|
digitalWrite(led, HIGH);
|
||||||
|
delay(1000);
|
||||||
|
digitalWrite(led, LOW);
|
||||||
|
delay(1000);
|
||||||
|
}
|
BIN
hardware/.DS_Store
vendored
Normal file
BIN
hardware/.DS_Store
vendored
Normal file
Binary file not shown.
BIN
hardware/espressif/.DS_Store
vendored
Normal file
BIN
hardware/espressif/.DS_Store
vendored
Normal file
Binary file not shown.
1
hardware/espressif/esp32
Submodule
1
hardware/espressif/esp32
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 29a253ac9823fdb8189cfd72745a28143fe3c37d
|
83
i2c_scanner/i2c_scanner.ino
Normal file
83
i2c_scanner/i2c_scanner.ino
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
// --------------------------------------
|
||||||
|
// i2c_scanner
|
||||||
|
//
|
||||||
|
// Version 1
|
||||||
|
// This program (or code that looks like it)
|
||||||
|
// can be found in many places.
|
||||||
|
// For example on the Arduino.cc forum.
|
||||||
|
// The original author is not know.
|
||||||
|
// Version 2, Juni 2012, Using Arduino 1.0.1
|
||||||
|
// Adapted to be as simple as possible by Arduino.cc user Krodal
|
||||||
|
// Version 3, Feb 26 2013
|
||||||
|
// V3 by louarnold
|
||||||
|
// Version 4, March 3, 2013, Using Arduino 1.0.3
|
||||||
|
// by Arduino.cc user Krodal.
|
||||||
|
// Changes by louarnold removed.
|
||||||
|
// Scanning addresses changed from 0...127 to 1...119,
|
||||||
|
// according to the i2c scanner by Nick Gammon
|
||||||
|
// http://www.gammon.com.au/forum/?id=10896
|
||||||
|
// Version 5, March 28, 2013
|
||||||
|
// As version 4, but address scans now to 127.
|
||||||
|
// A sensor seems to use address 120.
|
||||||
|
// Version 6, November 27, 2015.
|
||||||
|
// Added waiting for the Leonardo serial communication.
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// This sketch tests the standard 7-bit addresses
|
||||||
|
// Devices with higher bit address might not be seen properly.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
|
||||||
|
|
||||||
|
void setup()
|
||||||
|
{
|
||||||
|
Wire.begin();
|
||||||
|
|
||||||
|
Serial.begin(9600);
|
||||||
|
while (!Serial); // Leonardo: wait for serial monitor
|
||||||
|
Serial.println("\nI2C Scanner");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void loop()
|
||||||
|
{
|
||||||
|
byte error, address;
|
||||||
|
int nDevices;
|
||||||
|
|
||||||
|
Serial.println("Scanning...");
|
||||||
|
|
||||||
|
nDevices = 0;
|
||||||
|
for(address = 1; address < 127; address++ )
|
||||||
|
{
|
||||||
|
// The i2c_scanner uses the return value of
|
||||||
|
// the Write.endTransmisstion to see if
|
||||||
|
// a device did acknowledge to the address.
|
||||||
|
Wire.beginTransmission(address);
|
||||||
|
error = Wire.endTransmission();
|
||||||
|
|
||||||
|
if (error == 0)
|
||||||
|
{
|
||||||
|
Serial.print("I2C device found at address 0x");
|
||||||
|
if (address<16)
|
||||||
|
Serial.print("0");
|
||||||
|
Serial.print(address,HEX);
|
||||||
|
Serial.println(" !");
|
||||||
|
|
||||||
|
nDevices++;
|
||||||
|
}
|
||||||
|
else if (error==4)
|
||||||
|
{
|
||||||
|
Serial.print("Unknown error at address 0x");
|
||||||
|
if (address<16)
|
||||||
|
Serial.print("0");
|
||||||
|
Serial.println(address,HEX);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (nDevices == 0)
|
||||||
|
Serial.println("No I2C devices found\n");
|
||||||
|
else
|
||||||
|
Serial.println("done\n");
|
||||||
|
|
||||||
|
delay(5000); // wait 5 seconds for next scan
|
||||||
|
}
|
BIN
libraries/.DS_Store
vendored
Normal file
BIN
libraries/.DS_Store
vendored
Normal file
Binary file not shown.
530
libraries/Adafruit_BME280_Library/Adafruit_BME280.cpp
Normal file
530
libraries/Adafruit_BME280_Library/Adafruit_BME280.cpp
Normal file
@ -0,0 +1,530 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BME280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BME280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2650
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
#include "Arduino.h"
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include "Adafruit_BME280.h"
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
PRIVATE FUNCTIONS
|
||||||
|
***************************************************************************/
|
||||||
|
Adafruit_BME280::Adafruit_BME280()
|
||||||
|
: _cs(-1), _mosi(-1), _miso(-1), _sck(-1)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
Adafruit_BME280::Adafruit_BME280(int8_t cspin)
|
||||||
|
: _cs(cspin), _mosi(-1), _miso(-1), _sck(-1)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
Adafruit_BME280::Adafruit_BME280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin)
|
||||||
|
: _cs(cspin), _mosi(mosipin), _miso(misopin), _sck(sckpin)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Initialise sensor with given parameters / settings
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
bool Adafruit_BME280::begin(TwoWire *theWire)
|
||||||
|
{
|
||||||
|
_wire = theWire;
|
||||||
|
_i2caddr = BME280_ADDRESS;
|
||||||
|
return init();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Adafruit_BME280::begin(uint8_t addr)
|
||||||
|
{
|
||||||
|
_i2caddr = addr;
|
||||||
|
_wire = &Wire;
|
||||||
|
return init();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Adafruit_BME280::begin(uint8_t addr, TwoWire *theWire)
|
||||||
|
{
|
||||||
|
_i2caddr = addr;
|
||||||
|
_wire = theWire;
|
||||||
|
return init();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Adafruit_BME280::begin(void)
|
||||||
|
{
|
||||||
|
_i2caddr = BME280_ADDRESS;
|
||||||
|
_wire = &Wire;
|
||||||
|
return init();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Adafruit_BME280::init()
|
||||||
|
{
|
||||||
|
// init I2C or SPI sensor interface
|
||||||
|
if (_cs == -1) {
|
||||||
|
// I2C
|
||||||
|
_wire -> begin();
|
||||||
|
} else {
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
pinMode(_cs, OUTPUT);
|
||||||
|
if (_sck == -1) {
|
||||||
|
// hardware SPI
|
||||||
|
SPI.begin();
|
||||||
|
} else {
|
||||||
|
// software SPI
|
||||||
|
pinMode(_sck, OUTPUT);
|
||||||
|
pinMode(_mosi, OUTPUT);
|
||||||
|
pinMode(_miso, INPUT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if sensor, i.e. the chip ID is correct
|
||||||
|
if (read8(BME280_REGISTER_CHIPID) != 0x60)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// reset the device using soft-reset
|
||||||
|
// this makes sure the IIR is off, etc.
|
||||||
|
write8(BME280_REGISTER_SOFTRESET, 0xB6);
|
||||||
|
|
||||||
|
// wait for chip to wake up.
|
||||||
|
delay(300);
|
||||||
|
|
||||||
|
// if chip is still reading calibration, delay
|
||||||
|
while (isReadingCalibration())
|
||||||
|
delay(100);
|
||||||
|
|
||||||
|
readCoefficients(); // read trimming parameters, see DS 4.2.2
|
||||||
|
|
||||||
|
setSampling(); // use defaults
|
||||||
|
|
||||||
|
delay(100);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief setup sensor with given parameters / settings
|
||||||
|
|
||||||
|
This is simply a overload to the normal begin()-function, so SPI users
|
||||||
|
don't get confused about the library requiring an address.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
void Adafruit_BME280::setSampling(sensor_mode mode,
|
||||||
|
sensor_sampling tempSampling,
|
||||||
|
sensor_sampling pressSampling,
|
||||||
|
sensor_sampling humSampling,
|
||||||
|
sensor_filter filter,
|
||||||
|
standby_duration duration) {
|
||||||
|
_measReg.mode = mode;
|
||||||
|
_measReg.osrs_t = tempSampling;
|
||||||
|
_measReg.osrs_p = pressSampling;
|
||||||
|
|
||||||
|
|
||||||
|
_humReg.osrs_h = humSampling;
|
||||||
|
_configReg.filter = filter;
|
||||||
|
_configReg.t_sb = duration;
|
||||||
|
|
||||||
|
|
||||||
|
// you must make sure to also set REGISTER_CONTROL after setting the
|
||||||
|
// CONTROLHUMID register, otherwise the values won't be applied (see DS 5.4.3)
|
||||||
|
write8(BME280_REGISTER_CONTROLHUMID, _humReg.get());
|
||||||
|
write8(BME280_REGISTER_CONFIG, _configReg.get());
|
||||||
|
write8(BME280_REGISTER_CONTROL, _measReg.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Encapsulate hardware and software SPI transfer into one function
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint8_t Adafruit_BME280::spixfer(uint8_t x) {
|
||||||
|
// hardware SPI
|
||||||
|
if (_sck == -1)
|
||||||
|
return SPI.transfer(x);
|
||||||
|
|
||||||
|
// software SPI
|
||||||
|
uint8_t reply = 0;
|
||||||
|
for (int i=7; i>=0; i--) {
|
||||||
|
reply <<= 1;
|
||||||
|
digitalWrite(_sck, LOW);
|
||||||
|
digitalWrite(_mosi, x & (1<<i));
|
||||||
|
digitalWrite(_sck, HIGH);
|
||||||
|
if (digitalRead(_miso))
|
||||||
|
reply |= 1;
|
||||||
|
}
|
||||||
|
return reply;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Writes an 8 bit value over I2C or SPI
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_BME280::write8(byte reg, byte value) {
|
||||||
|
if (_cs == -1) {
|
||||||
|
_wire -> beginTransmission((uint8_t)_i2caddr);
|
||||||
|
_wire -> write((uint8_t)reg);
|
||||||
|
_wire -> write((uint8_t)value);
|
||||||
|
_wire -> endTransmission();
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg & ~0x80); // write, bit 7 low
|
||||||
|
spixfer(value);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads an 8 bit value over I2C or SPI
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint8_t Adafruit_BME280::read8(byte reg) {
|
||||||
|
uint8_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
_wire -> beginTransmission((uint8_t)_i2caddr);
|
||||||
|
_wire -> write((uint8_t)reg);
|
||||||
|
_wire -> endTransmission();
|
||||||
|
_wire -> requestFrom((uint8_t)_i2caddr, (byte)1);
|
||||||
|
value = _wire -> read();
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
value = spixfer(0);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a 16 bit value over I2C or SPI
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint16_t Adafruit_BME280::read16(byte reg)
|
||||||
|
{
|
||||||
|
uint16_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
_wire -> beginTransmission((uint8_t)_i2caddr);
|
||||||
|
_wire -> write((uint8_t)reg);
|
||||||
|
_wire -> endTransmission();
|
||||||
|
_wire -> requestFrom((uint8_t)_i2caddr, (byte)2);
|
||||||
|
value = (_wire -> read() << 8) | _wire -> read();
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
value = (spixfer(0) << 8) | spixfer(0);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint16_t Adafruit_BME280::read16_LE(byte reg) {
|
||||||
|
uint16_t temp = read16(reg);
|
||||||
|
return (temp >> 8) | (temp << 8);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a signed 16 bit value over I2C or SPI
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
int16_t Adafruit_BME280::readS16(byte reg)
|
||||||
|
{
|
||||||
|
return (int16_t)read16(reg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
int16_t Adafruit_BME280::readS16_LE(byte reg)
|
||||||
|
{
|
||||||
|
return (int16_t)read16_LE(reg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a 24 bit value over I2C
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint32_t Adafruit_BME280::read24(byte reg)
|
||||||
|
{
|
||||||
|
uint32_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
_wire -> beginTransmission((uint8_t)_i2caddr);
|
||||||
|
_wire -> write((uint8_t)reg);
|
||||||
|
_wire -> endTransmission();
|
||||||
|
_wire -> requestFrom((uint8_t)_i2caddr, (byte)3);
|
||||||
|
|
||||||
|
value = _wire -> read();
|
||||||
|
value <<= 8;
|
||||||
|
value |= _wire -> read();
|
||||||
|
value <<= 8;
|
||||||
|
value |= _wire -> read();
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
|
||||||
|
value = spixfer(0);
|
||||||
|
value <<= 8;
|
||||||
|
value |= spixfer(0);
|
||||||
|
value <<= 8;
|
||||||
|
value |= spixfer(0);
|
||||||
|
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Take a new measurement (only possible in forced mode)
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_BME280::takeForcedMeasurement()
|
||||||
|
{
|
||||||
|
// If we are in forced mode, the BME sensor goes back to sleep after each
|
||||||
|
// measurement and we need to set it to forced mode once at this point, so
|
||||||
|
// it will take the next measurement and then return to sleep again.
|
||||||
|
// In normal mode simply does new measurements periodically.
|
||||||
|
if (_measReg.mode == MODE_FORCED) {
|
||||||
|
// set to forced mode, i.e. "take next measurement"
|
||||||
|
write8(BME280_REGISTER_CONTROL, _measReg.get());
|
||||||
|
// wait until measurement has been completed, otherwise we would read
|
||||||
|
// the values from the last measurement
|
||||||
|
while (read8(BME280_REGISTER_STATUS) & 0x08)
|
||||||
|
delay(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads the factory-set coefficients
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_BME280::readCoefficients(void)
|
||||||
|
{
|
||||||
|
_bme280_calib.dig_T1 = read16_LE(BME280_REGISTER_DIG_T1);
|
||||||
|
_bme280_calib.dig_T2 = readS16_LE(BME280_REGISTER_DIG_T2);
|
||||||
|
_bme280_calib.dig_T3 = readS16_LE(BME280_REGISTER_DIG_T3);
|
||||||
|
|
||||||
|
_bme280_calib.dig_P1 = read16_LE(BME280_REGISTER_DIG_P1);
|
||||||
|
_bme280_calib.dig_P2 = readS16_LE(BME280_REGISTER_DIG_P2);
|
||||||
|
_bme280_calib.dig_P3 = readS16_LE(BME280_REGISTER_DIG_P3);
|
||||||
|
_bme280_calib.dig_P4 = readS16_LE(BME280_REGISTER_DIG_P4);
|
||||||
|
_bme280_calib.dig_P5 = readS16_LE(BME280_REGISTER_DIG_P5);
|
||||||
|
_bme280_calib.dig_P6 = readS16_LE(BME280_REGISTER_DIG_P6);
|
||||||
|
_bme280_calib.dig_P7 = readS16_LE(BME280_REGISTER_DIG_P7);
|
||||||
|
_bme280_calib.dig_P8 = readS16_LE(BME280_REGISTER_DIG_P8);
|
||||||
|
_bme280_calib.dig_P9 = readS16_LE(BME280_REGISTER_DIG_P9);
|
||||||
|
|
||||||
|
_bme280_calib.dig_H1 = read8(BME280_REGISTER_DIG_H1);
|
||||||
|
_bme280_calib.dig_H2 = readS16_LE(BME280_REGISTER_DIG_H2);
|
||||||
|
_bme280_calib.dig_H3 = read8(BME280_REGISTER_DIG_H3);
|
||||||
|
_bme280_calib.dig_H4 = (read8(BME280_REGISTER_DIG_H4) << 4) | (read8(BME280_REGISTER_DIG_H4+1) & 0xF);
|
||||||
|
_bme280_calib.dig_H5 = (read8(BME280_REGISTER_DIG_H5+1) << 4) | (read8(BME280_REGISTER_DIG_H5) >> 4);
|
||||||
|
_bme280_calib.dig_H6 = (int8_t)read8(BME280_REGISTER_DIG_H6);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief return true if chip is busy reading cal data
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
bool Adafruit_BME280::isReadingCalibration(void)
|
||||||
|
{
|
||||||
|
uint8_t const rStatus = read8(BME280_REGISTER_STATUS);
|
||||||
|
|
||||||
|
return (rStatus & (1 << 0)) != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Returns the temperature from the sensor
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BME280::readTemperature(void)
|
||||||
|
{
|
||||||
|
int32_t var1, var2;
|
||||||
|
|
||||||
|
int32_t adc_T = read24(BME280_REGISTER_TEMPDATA);
|
||||||
|
if (adc_T == 0x800000) // value in case temp measurement was disabled
|
||||||
|
return NAN;
|
||||||
|
adc_T >>= 4;
|
||||||
|
|
||||||
|
var1 = ((((adc_T>>3) - ((int32_t)_bme280_calib.dig_T1 <<1))) *
|
||||||
|
((int32_t)_bme280_calib.dig_T2)) >> 11;
|
||||||
|
|
||||||
|
var2 = (((((adc_T>>4) - ((int32_t)_bme280_calib.dig_T1)) *
|
||||||
|
((adc_T>>4) - ((int32_t)_bme280_calib.dig_T1))) >> 12) *
|
||||||
|
((int32_t)_bme280_calib.dig_T3)) >> 14;
|
||||||
|
|
||||||
|
t_fine = var1 + var2;
|
||||||
|
|
||||||
|
float T = (t_fine * 5 + 128) >> 8;
|
||||||
|
return T/100;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Returns the temperature from the sensor
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BME280::readPressure(void) {
|
||||||
|
int64_t var1, var2, p;
|
||||||
|
|
||||||
|
readTemperature(); // must be done first to get t_fine
|
||||||
|
|
||||||
|
int32_t adc_P = read24(BME280_REGISTER_PRESSUREDATA);
|
||||||
|
if (adc_P == 0x800000) // value in case pressure measurement was disabled
|
||||||
|
return NAN;
|
||||||
|
adc_P >>= 4;
|
||||||
|
|
||||||
|
var1 = ((int64_t)t_fine) - 128000;
|
||||||
|
var2 = var1 * var1 * (int64_t)_bme280_calib.dig_P6;
|
||||||
|
var2 = var2 + ((var1*(int64_t)_bme280_calib.dig_P5)<<17);
|
||||||
|
var2 = var2 + (((int64_t)_bme280_calib.dig_P4)<<35);
|
||||||
|
var1 = ((var1 * var1 * (int64_t)_bme280_calib.dig_P3)>>8) +
|
||||||
|
((var1 * (int64_t)_bme280_calib.dig_P2)<<12);
|
||||||
|
var1 = (((((int64_t)1)<<47)+var1))*((int64_t)_bme280_calib.dig_P1)>>33;
|
||||||
|
|
||||||
|
if (var1 == 0) {
|
||||||
|
return 0; // avoid exception caused by division by zero
|
||||||
|
}
|
||||||
|
p = 1048576 - adc_P;
|
||||||
|
p = (((p<<31) - var2)*3125) / var1;
|
||||||
|
var1 = (((int64_t)_bme280_calib.dig_P9) * (p>>13) * (p>>13)) >> 25;
|
||||||
|
var2 = (((int64_t)_bme280_calib.dig_P8) * p) >> 19;
|
||||||
|
|
||||||
|
p = ((p + var1 + var2) >> 8) + (((int64_t)_bme280_calib.dig_P7)<<4);
|
||||||
|
return (float)p/256;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Returns the humidity from the sensor
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BME280::readHumidity(void) {
|
||||||
|
readTemperature(); // must be done first to get t_fine
|
||||||
|
|
||||||
|
int32_t adc_H = read16(BME280_REGISTER_HUMIDDATA);
|
||||||
|
if (adc_H == 0x8000) // value in case humidity measurement was disabled
|
||||||
|
return NAN;
|
||||||
|
|
||||||
|
int32_t v_x1_u32r;
|
||||||
|
|
||||||
|
v_x1_u32r = (t_fine - ((int32_t)76800));
|
||||||
|
|
||||||
|
v_x1_u32r = (((((adc_H << 14) - (((int32_t)_bme280_calib.dig_H4) << 20) -
|
||||||
|
(((int32_t)_bme280_calib.dig_H5) * v_x1_u32r)) + ((int32_t)16384)) >> 15) *
|
||||||
|
(((((((v_x1_u32r * ((int32_t)_bme280_calib.dig_H6)) >> 10) *
|
||||||
|
(((v_x1_u32r * ((int32_t)_bme280_calib.dig_H3)) >> 11) + ((int32_t)32768))) >> 10) +
|
||||||
|
((int32_t)2097152)) * ((int32_t)_bme280_calib.dig_H2) + 8192) >> 14));
|
||||||
|
|
||||||
|
v_x1_u32r = (v_x1_u32r - (((((v_x1_u32r >> 15) * (v_x1_u32r >> 15)) >> 7) *
|
||||||
|
((int32_t)_bme280_calib.dig_H1)) >> 4));
|
||||||
|
|
||||||
|
v_x1_u32r = (v_x1_u32r < 0) ? 0 : v_x1_u32r;
|
||||||
|
v_x1_u32r = (v_x1_u32r > 419430400) ? 419430400 : v_x1_u32r;
|
||||||
|
float h = (v_x1_u32r>>12);
|
||||||
|
return h / 1024.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
Calculates the altitude (in meters) from the specified atmospheric
|
||||||
|
pressure (in hPa), and sea-level pressure (in hPa).
|
||||||
|
|
||||||
|
@param seaLevel Sea-level pressure in hPa
|
||||||
|
@param atmospheric Atmospheric pressure in hPa
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BME280::readAltitude(float seaLevel)
|
||||||
|
{
|
||||||
|
// Equation taken from BMP180 datasheet (page 16):
|
||||||
|
// http://www.adafruit.com/datasheets/BST-BMP180-DS000-09.pdf
|
||||||
|
|
||||||
|
// Note that using the equation from wikipedia can give bad results
|
||||||
|
// at high altitude. See this thread for more information:
|
||||||
|
// http://forums.adafruit.com/viewtopic.php?f=22&t=58064
|
||||||
|
|
||||||
|
float atmospheric = readPressure() / 100.0F;
|
||||||
|
return 44330.0 * (1.0 - pow(atmospheric / seaLevel, 0.1903));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
Calculates the pressure at sea level (in hPa) from the specified altitude
|
||||||
|
(in meters), and atmospheric pressure (in hPa).
|
||||||
|
@param altitude Altitude in meters
|
||||||
|
@param atmospheric Atmospheric pressure in hPa
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BME280::seaLevelForAltitude(float altitude, float atmospheric)
|
||||||
|
{
|
||||||
|
// Equation taken from BMP180 datasheet (page 17):
|
||||||
|
// http://www.adafruit.com/datasheets/BST-BMP180-DS000-09.pdf
|
||||||
|
|
||||||
|
// Note that using the equation from wikipedia can give bad results
|
||||||
|
// at high altitude. See this thread for more information:
|
||||||
|
// http://forums.adafruit.com/viewtopic.php?f=22&t=58064
|
||||||
|
|
||||||
|
return atmospheric / pow(1.0 - (altitude/44330.0), 5.255);
|
||||||
|
}
|
300
libraries/Adafruit_BME280_Library/Adafruit_BME280.h
Normal file
300
libraries/Adafruit_BME280_Library/Adafruit_BME280.h
Normal file
@ -0,0 +1,300 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BME280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BME280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2650
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
#ifndef __BME280_H__
|
||||||
|
#define __BME280_H__
|
||||||
|
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
#include "Arduino.h"
|
||||||
|
#else
|
||||||
|
#include "WProgram.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
I2C ADDRESS/BITS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
#define BME280_ADDRESS (0x77)
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
REGISTERS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
enum
|
||||||
|
{
|
||||||
|
BME280_REGISTER_DIG_T1 = 0x88,
|
||||||
|
BME280_REGISTER_DIG_T2 = 0x8A,
|
||||||
|
BME280_REGISTER_DIG_T3 = 0x8C,
|
||||||
|
|
||||||
|
BME280_REGISTER_DIG_P1 = 0x8E,
|
||||||
|
BME280_REGISTER_DIG_P2 = 0x90,
|
||||||
|
BME280_REGISTER_DIG_P3 = 0x92,
|
||||||
|
BME280_REGISTER_DIG_P4 = 0x94,
|
||||||
|
BME280_REGISTER_DIG_P5 = 0x96,
|
||||||
|
BME280_REGISTER_DIG_P6 = 0x98,
|
||||||
|
BME280_REGISTER_DIG_P7 = 0x9A,
|
||||||
|
BME280_REGISTER_DIG_P8 = 0x9C,
|
||||||
|
BME280_REGISTER_DIG_P9 = 0x9E,
|
||||||
|
|
||||||
|
BME280_REGISTER_DIG_H1 = 0xA1,
|
||||||
|
BME280_REGISTER_DIG_H2 = 0xE1,
|
||||||
|
BME280_REGISTER_DIG_H3 = 0xE3,
|
||||||
|
BME280_REGISTER_DIG_H4 = 0xE4,
|
||||||
|
BME280_REGISTER_DIG_H5 = 0xE5,
|
||||||
|
BME280_REGISTER_DIG_H6 = 0xE7,
|
||||||
|
|
||||||
|
BME280_REGISTER_CHIPID = 0xD0,
|
||||||
|
BME280_REGISTER_VERSION = 0xD1,
|
||||||
|
BME280_REGISTER_SOFTRESET = 0xE0,
|
||||||
|
|
||||||
|
BME280_REGISTER_CAL26 = 0xE1, // R calibration stored in 0xE1-0xF0
|
||||||
|
|
||||||
|
BME280_REGISTER_CONTROLHUMID = 0xF2,
|
||||||
|
BME280_REGISTER_STATUS = 0XF3,
|
||||||
|
BME280_REGISTER_CONTROL = 0xF4,
|
||||||
|
BME280_REGISTER_CONFIG = 0xF5,
|
||||||
|
BME280_REGISTER_PRESSUREDATA = 0xF7,
|
||||||
|
BME280_REGISTER_TEMPDATA = 0xFA,
|
||||||
|
BME280_REGISTER_HUMIDDATA = 0xFD
|
||||||
|
};
|
||||||
|
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
CALIBRATION DATA
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint16_t dig_T1;
|
||||||
|
int16_t dig_T2;
|
||||||
|
int16_t dig_T3;
|
||||||
|
|
||||||
|
uint16_t dig_P1;
|
||||||
|
int16_t dig_P2;
|
||||||
|
int16_t dig_P3;
|
||||||
|
int16_t dig_P4;
|
||||||
|
int16_t dig_P5;
|
||||||
|
int16_t dig_P6;
|
||||||
|
int16_t dig_P7;
|
||||||
|
int16_t dig_P8;
|
||||||
|
int16_t dig_P9;
|
||||||
|
|
||||||
|
uint8_t dig_H1;
|
||||||
|
int16_t dig_H2;
|
||||||
|
uint8_t dig_H3;
|
||||||
|
int16_t dig_H4;
|
||||||
|
int16_t dig_H5;
|
||||||
|
int8_t dig_H6;
|
||||||
|
} bme280_calib_data;
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
class Adafruit_BME280_Unified : public Adafruit_Sensor
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adafruit_BME280_Unified(int32_t sensorID = -1);
|
||||||
|
|
||||||
|
bool begin(uint8_t addr = BME280_ADDRESS);
|
||||||
|
void getTemperature(float *temp);
|
||||||
|
void getPressure(float *pressure);
|
||||||
|
float pressureToAltitude(float seaLevel, float atmospheric, float temp);
|
||||||
|
float seaLevelForAltitude(float altitude, float atmospheric, float temp);
|
||||||
|
void getEvent(sensors_event_t*);
|
||||||
|
void getSensor(sensor_t*);
|
||||||
|
|
||||||
|
private:
|
||||||
|
uint8_t _i2c_addr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
};
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class Adafruit_BME280 {
|
||||||
|
public:
|
||||||
|
enum sensor_sampling {
|
||||||
|
SAMPLING_NONE = 0b000,
|
||||||
|
SAMPLING_X1 = 0b001,
|
||||||
|
SAMPLING_X2 = 0b010,
|
||||||
|
SAMPLING_X4 = 0b011,
|
||||||
|
SAMPLING_X8 = 0b100,
|
||||||
|
SAMPLING_X16 = 0b101
|
||||||
|
};
|
||||||
|
|
||||||
|
enum sensor_mode {
|
||||||
|
MODE_SLEEP = 0b00,
|
||||||
|
MODE_FORCED = 0b01,
|
||||||
|
MODE_NORMAL = 0b11
|
||||||
|
};
|
||||||
|
|
||||||
|
enum sensor_filter {
|
||||||
|
FILTER_OFF = 0b000,
|
||||||
|
FILTER_X2 = 0b001,
|
||||||
|
FILTER_X4 = 0b010,
|
||||||
|
FILTER_X8 = 0b011,
|
||||||
|
FILTER_X16 = 0b100
|
||||||
|
};
|
||||||
|
|
||||||
|
// standby durations in ms
|
||||||
|
enum standby_duration {
|
||||||
|
STANDBY_MS_0_5 = 0b000,
|
||||||
|
STANDBY_MS_10 = 0b110,
|
||||||
|
STANDBY_MS_20 = 0b111,
|
||||||
|
STANDBY_MS_62_5 = 0b001,
|
||||||
|
STANDBY_MS_125 = 0b010,
|
||||||
|
STANDBY_MS_250 = 0b011,
|
||||||
|
STANDBY_MS_500 = 0b100,
|
||||||
|
STANDBY_MS_1000 = 0b101
|
||||||
|
};
|
||||||
|
|
||||||
|
// constructors
|
||||||
|
Adafruit_BME280(void);
|
||||||
|
Adafruit_BME280(int8_t cspin);
|
||||||
|
Adafruit_BME280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin);
|
||||||
|
|
||||||
|
bool begin(void);
|
||||||
|
bool begin(TwoWire *theWire);
|
||||||
|
bool begin(uint8_t addr);
|
||||||
|
bool begin(uint8_t addr, TwoWire *theWire);
|
||||||
|
bool init();
|
||||||
|
|
||||||
|
void setSampling(sensor_mode mode = MODE_NORMAL,
|
||||||
|
sensor_sampling tempSampling = SAMPLING_X16,
|
||||||
|
sensor_sampling pressSampling = SAMPLING_X16,
|
||||||
|
sensor_sampling humSampling = SAMPLING_X16,
|
||||||
|
sensor_filter filter = FILTER_OFF,
|
||||||
|
standby_duration duration = STANDBY_MS_0_5
|
||||||
|
);
|
||||||
|
|
||||||
|
void takeForcedMeasurement();
|
||||||
|
float readTemperature(void);
|
||||||
|
float readPressure(void);
|
||||||
|
float readHumidity(void);
|
||||||
|
|
||||||
|
float readAltitude(float seaLevel);
|
||||||
|
float seaLevelForAltitude(float altitude, float pressure);
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
TwoWire *_wire;
|
||||||
|
void readCoefficients(void);
|
||||||
|
bool isReadingCalibration(void);
|
||||||
|
uint8_t spixfer(uint8_t x);
|
||||||
|
|
||||||
|
void write8(byte reg, byte value);
|
||||||
|
uint8_t read8(byte reg);
|
||||||
|
uint16_t read16(byte reg);
|
||||||
|
uint32_t read24(byte reg);
|
||||||
|
int16_t readS16(byte reg);
|
||||||
|
uint16_t read16_LE(byte reg); // little endian
|
||||||
|
int16_t readS16_LE(byte reg); // little endian
|
||||||
|
|
||||||
|
uint8_t _i2caddr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
int32_t t_fine;
|
||||||
|
|
||||||
|
int8_t _cs, _mosi, _miso, _sck;
|
||||||
|
|
||||||
|
bme280_calib_data _bme280_calib;
|
||||||
|
|
||||||
|
// The config register
|
||||||
|
struct config {
|
||||||
|
// inactive duration (standby time) in normal mode
|
||||||
|
// 000 = 0.5 ms
|
||||||
|
// 001 = 62.5 ms
|
||||||
|
// 010 = 125 ms
|
||||||
|
// 011 = 250 ms
|
||||||
|
// 100 = 500 ms
|
||||||
|
// 101 = 1000 ms
|
||||||
|
// 110 = 10 ms
|
||||||
|
// 111 = 20 ms
|
||||||
|
unsigned int t_sb : 3;
|
||||||
|
|
||||||
|
// filter settings
|
||||||
|
// 000 = filter off
|
||||||
|
// 001 = 2x filter
|
||||||
|
// 010 = 4x filter
|
||||||
|
// 011 = 8x filter
|
||||||
|
// 100 and above = 16x filter
|
||||||
|
unsigned int filter : 3;
|
||||||
|
|
||||||
|
// unused - don't set
|
||||||
|
unsigned int none : 1;
|
||||||
|
unsigned int spi3w_en : 1;
|
||||||
|
|
||||||
|
unsigned int get() {
|
||||||
|
return (t_sb << 5) | (filter << 3) | spi3w_en;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
config _configReg;
|
||||||
|
|
||||||
|
|
||||||
|
// The ctrl_meas register
|
||||||
|
struct ctrl_meas {
|
||||||
|
// temperature oversampling
|
||||||
|
// 000 = skipped
|
||||||
|
// 001 = x1
|
||||||
|
// 010 = x2
|
||||||
|
// 011 = x4
|
||||||
|
// 100 = x8
|
||||||
|
// 101 and above = x16
|
||||||
|
unsigned int osrs_t : 3;
|
||||||
|
|
||||||
|
// pressure oversampling
|
||||||
|
// 000 = skipped
|
||||||
|
// 001 = x1
|
||||||
|
// 010 = x2
|
||||||
|
// 011 = x4
|
||||||
|
// 100 = x8
|
||||||
|
// 101 and above = x16
|
||||||
|
unsigned int osrs_p : 3;
|
||||||
|
|
||||||
|
// device mode
|
||||||
|
// 00 = sleep
|
||||||
|
// 01 or 10 = forced
|
||||||
|
// 11 = normal
|
||||||
|
unsigned int mode : 2;
|
||||||
|
|
||||||
|
unsigned int get() {
|
||||||
|
return (osrs_t << 5) | (osrs_p << 3) | mode;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
ctrl_meas _measReg;
|
||||||
|
|
||||||
|
|
||||||
|
// The ctrl_hum register
|
||||||
|
struct ctrl_hum {
|
||||||
|
// unused - don't set
|
||||||
|
unsigned int none : 5;
|
||||||
|
|
||||||
|
// pressure oversampling
|
||||||
|
// 000 = skipped
|
||||||
|
// 001 = x1
|
||||||
|
// 010 = x2
|
||||||
|
// 011 = x4
|
||||||
|
// 100 = x8
|
||||||
|
// 101 and above = x16
|
||||||
|
unsigned int osrs_h : 3;
|
||||||
|
|
||||||
|
unsigned int get() {
|
||||||
|
return (osrs_h);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
ctrl_hum _humReg;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
59
libraries/Adafruit_BME280_Library/README.md
Normal file
59
libraries/Adafruit_BME280_Library/README.md
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
This is a library for the Adafruit BME280 Humidity, Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BME280 Breakout
|
||||||
|
* http://www.adafruit.com/products/2652
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, up to 4 pins are required to interface
|
||||||
|
|
||||||
|
Use of this library also requires [Adafruit_Sensor](https://github.com/adafruit/Adafruit_Sensor)
|
||||||
|
to be installed on your local system.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Check out the links above for our tutorials and wiring diagrams
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
|
||||||
|
To download. click the DOWNLOAD ZIP button, rename the uncompressed folder Adafruit_BME280.
|
||||||
|
Check that the Adafruit_BME280 folder contains Adafruit_BME280.cpp and Adafruit_BME280.h
|
||||||
|
|
||||||
|
Place the Adafruit_BME280 library folder your arduinosketchfolder/libraries/ folder.
|
||||||
|
You may need to create the libraries subfolder if its your first library. Restart the IDE.
|
||||||
|
|
||||||
|
We also have a great tutorial on Arduino library installation at:
|
||||||
|
http://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use
|
||||||
|
<!-- START COMPATIBILITY TABLE -->
|
||||||
|
|
||||||
|
## Compatibility
|
||||||
|
|
||||||
|
MCU | Tested Works | Doesn't Work | Not Tested | Notes
|
||||||
|
------------------ | :----------: | :----------: | :---------: | -----
|
||||||
|
Atmega328 @ 16MHz | X | | |
|
||||||
|
Atmega328 @ 12MHz | X | | |
|
||||||
|
Atmega32u4 @ 16MHz | X | | | Use SDA/SCL on pins D2 & D3
|
||||||
|
Atmega32u4 @ 8MHz | X | | | Use SDA/SCL on pins D2 & D3
|
||||||
|
ESP8266 | X | | | I2C: just works, SPI: SDA/SCL default to pins 4 & 5 but any two pins can be assigned as SDA/SCL using Wire.begin(SDA,SCL)
|
||||||
|
ESP32 | X | | | I2C: just works, SPI: SDA/SCL default to pins 4 & 5 but any two pins can be assigned as SDA/SCL using Wire.begin(SDA,SCL)
|
||||||
|
Atmega2560 @ 16MHz | X | | | Use SDA/SCL on pins 20 & 21
|
||||||
|
ATSAM3X8E | X | | | Use SDA/SCL on pins 20 & 21
|
||||||
|
ATSAM21D | X | | |
|
||||||
|
ATtiny85 @ 16MHz | | X | |
|
||||||
|
ATtiny85 @ 8MHz | | X | |
|
||||||
|
Intel Curie @ 32MHz | | | X |
|
||||||
|
STM32F2 | | | X |
|
||||||
|
|
||||||
|
* ATmega328 @ 16MHz : Arduino UNO, Adafruit Pro Trinket 5V, Adafruit Metro 328, Adafruit Metro Mini
|
||||||
|
* ATmega328 @ 12MHz : Adafruit Pro Trinket 3V
|
||||||
|
* ATmega32u4 @ 16MHz : Arduino Leonardo, Arduino Micro, Arduino Yun, Teensy 2.0
|
||||||
|
* ATmega32u4 @ 8MHz : Adafruit Flora, Bluefruit Micro
|
||||||
|
* ESP8266 : Adafruit Huzzah
|
||||||
|
* ATmega2560 @ 16MHz : Arduino Mega
|
||||||
|
* ATSAM3X8E : Arduino Due
|
||||||
|
* ATSAM21D : Arduino Zero, M0 Pro
|
||||||
|
* ATtiny85 @ 16MHz : Adafruit Trinket 5V
|
||||||
|
* ATtiny85 @ 8MHz : Adafruit Gemma, Arduino Gemma, Adafruit Trinket 3V
|
||||||
|
|
||||||
|
<!-- END COMPATIBILITY TABLE -->
|
@ -0,0 +1,157 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BME280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BME280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2650
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface. The device's I2C address is either 0x76 or 0x77.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BME280.h>
|
||||||
|
|
||||||
|
#define BME_SCK 13
|
||||||
|
#define BME_MISO 12
|
||||||
|
#define BME_MOSI 11
|
||||||
|
#define BME_CS 10
|
||||||
|
|
||||||
|
#define SEALEVELPRESSURE_HPA (1013.25)
|
||||||
|
|
||||||
|
Adafruit_BME280 bme; // I2C
|
||||||
|
//Adafruit_BME280 bme(BME_CS); // hardware SPI
|
||||||
|
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI
|
||||||
|
|
||||||
|
unsigned long delayTime;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
Serial.println(F("BME280 test"));
|
||||||
|
|
||||||
|
if (! bme.begin(&Wire1)) {
|
||||||
|
Serial.println("Could not find a valid BME280 sensor, check wiring!");
|
||||||
|
while (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
Serial.println("-- Default Test --");
|
||||||
|
Serial.println("normal mode, 16x oversampling for all, filter off,");
|
||||||
|
Serial.println("0.5ms standby period");
|
||||||
|
delayTime = 5000;
|
||||||
|
|
||||||
|
|
||||||
|
// For more details on the following scenarious, see chapter
|
||||||
|
// 3.5 "Recommended modes of operation" in the datasheet
|
||||||
|
|
||||||
|
/*
|
||||||
|
// weather monitoring
|
||||||
|
Serial.println("-- Weather Station Scenario --");
|
||||||
|
Serial.println("forced mode, 1x temperature / 1x humidity / 1x pressure oversampling,");
|
||||||
|
Serial.println("filter off");
|
||||||
|
bme.setSampling(Adafruit_BME280::MODE_FORCED,
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // temperature
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // pressure
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // humidity
|
||||||
|
Adafruit_BME280::FILTER_OFF );
|
||||||
|
|
||||||
|
// suggested rate is 1/60Hz (1m)
|
||||||
|
delayTime = 60000; // in milliseconds
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
// humidity sensing
|
||||||
|
Serial.println("-- Humidity Sensing Scenario --");
|
||||||
|
Serial.println("forced mode, 1x temperature / 1x humidity / 0x pressure oversampling");
|
||||||
|
Serial.println("= pressure off, filter off");
|
||||||
|
bme.setSampling(Adafruit_BME280::MODE_FORCED,
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // temperature
|
||||||
|
Adafruit_BME280::SAMPLING_NONE, // pressure
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // humidity
|
||||||
|
Adafruit_BME280::FILTER_OFF );
|
||||||
|
|
||||||
|
// suggested rate is 1Hz (1s)
|
||||||
|
delayTime = 1000; // in milliseconds
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
// indoor navigation
|
||||||
|
Serial.println("-- Indoor Navigation Scenario --");
|
||||||
|
Serial.println("normal mode, 16x pressure / 2x temperature / 1x humidity oversampling,");
|
||||||
|
Serial.println("0.5ms standby period, filter 16x");
|
||||||
|
bme.setSampling(Adafruit_BME280::MODE_NORMAL,
|
||||||
|
Adafruit_BME280::SAMPLING_X2, // temperature
|
||||||
|
Adafruit_BME280::SAMPLING_X16, // pressure
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // humidity
|
||||||
|
Adafruit_BME280::FILTER_X16,
|
||||||
|
Adafruit_BME280::STANDBY_MS_0_5 );
|
||||||
|
|
||||||
|
// suggested rate is 25Hz
|
||||||
|
// 1 + (2 * T_ovs) + (2 * P_ovs + 0.5) + (2 * H_ovs + 0.5)
|
||||||
|
// T_ovs = 2
|
||||||
|
// P_ovs = 16
|
||||||
|
// H_ovs = 1
|
||||||
|
// = 40ms (25Hz)
|
||||||
|
// with standby time that should really be 24.16913... Hz
|
||||||
|
delayTime = 41;
|
||||||
|
|
||||||
|
/*
|
||||||
|
// gaming
|
||||||
|
Serial.println("-- Gaming Scenario --");
|
||||||
|
Serial.println("normal mode, 4x pressure / 1x temperature / 0x humidity oversampling,");
|
||||||
|
Serial.println("= humidity off, 0.5ms standby period, filter 16x");
|
||||||
|
bme.setSampling(Adafruit_BME280::MODE_NORMAL,
|
||||||
|
Adafruit_BME280::SAMPLING_X1, // temperature
|
||||||
|
Adafruit_BME280::SAMPLING_X4, // pressure
|
||||||
|
Adafruit_BME280::SAMPLING_NONE, // humidity
|
||||||
|
Adafruit_BME280::FILTER_X16,
|
||||||
|
Adafruit_BME280::STANDBY_MS_0_5 );
|
||||||
|
|
||||||
|
// Suggested rate is 83Hz
|
||||||
|
// 1 + (2 * T_ovs) + (2 * P_ovs + 0.5)
|
||||||
|
// T_ovs = 1
|
||||||
|
// P_ovs = 4
|
||||||
|
// = 11.5ms + 0.5ms standby
|
||||||
|
delayTime = 12;
|
||||||
|
*/
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Only needed in forced mode! In normal mode, you can remove the next line.
|
||||||
|
bme.takeForcedMeasurement(); // has no effect in normal mode
|
||||||
|
|
||||||
|
printValues();
|
||||||
|
delay(delayTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void printValues() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bme.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
|
||||||
|
Serial.print(bme.readPressure() / 100.0F);
|
||||||
|
Serial.println(" hPa");
|
||||||
|
|
||||||
|
Serial.print("Approx. Altitude = ");
|
||||||
|
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
|
||||||
|
Serial.println(" m");
|
||||||
|
|
||||||
|
Serial.print("Humidity = ");
|
||||||
|
Serial.print(bme.readHumidity());
|
||||||
|
Serial.println(" %");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
}
|
@ -0,0 +1,82 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BME280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BME280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2650
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface. The device's I2C address is either 0x76 or 0x77.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BME280.h>
|
||||||
|
|
||||||
|
#define BME_SCK 13
|
||||||
|
#define BME_MISO 12
|
||||||
|
#define BME_MOSI 11
|
||||||
|
#define BME_CS 10
|
||||||
|
|
||||||
|
#define SEALEVELPRESSURE_HPA (1013.25)
|
||||||
|
|
||||||
|
Adafruit_BME280 bme; // I2C
|
||||||
|
//Adafruit_BME280 bme(BME_CS); // hardware SPI
|
||||||
|
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI
|
||||||
|
|
||||||
|
unsigned long delayTime;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
Serial.println(F("BME280 test"));
|
||||||
|
|
||||||
|
bool status;
|
||||||
|
|
||||||
|
// default settings
|
||||||
|
// (you can also pass in a Wire library object like &Wire2)
|
||||||
|
status = bme.begin();
|
||||||
|
if (!status) {
|
||||||
|
Serial.println("Could not find a valid BME280 sensor, check wiring!");
|
||||||
|
while (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
Serial.println("-- Default Test --");
|
||||||
|
delayTime = 1000;
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
printValues();
|
||||||
|
delay(delayTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void printValues() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bme.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
|
||||||
|
Serial.print(bme.readPressure() / 100.0F);
|
||||||
|
Serial.println(" hPa");
|
||||||
|
|
||||||
|
Serial.print("Approx. Altitude = ");
|
||||||
|
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
|
||||||
|
Serial.println(" m");
|
||||||
|
|
||||||
|
Serial.print("Humidity = ");
|
||||||
|
Serial.print(bme.readHumidity());
|
||||||
|
Serial.println(" %");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
}
|
9
libraries/Adafruit_BME280_Library/library.properties
Normal file
9
libraries/Adafruit_BME280_Library/library.properties
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
name=Adafruit BME280 Library
|
||||||
|
version=1.0.7
|
||||||
|
author=Adafruit
|
||||||
|
maintainer=Adafruit <info@adafruit.com>
|
||||||
|
sentence=Arduino library for BME280 sensors.
|
||||||
|
paragraph=Arduino library for BME280 humidity and pressure sensors.
|
||||||
|
category=Sensors
|
||||||
|
url=https://github.com/adafruit/Adafruit_BME280_Library
|
||||||
|
architectures=*
|
297
libraries/Adafruit_BMP085_Library/Adafruit_BMP085.cpp
Normal file
297
libraries/Adafruit_BMP085_Library/Adafruit_BMP085.cpp
Normal file
@ -0,0 +1,297 @@
|
|||||||
|
/***************************************************
|
||||||
|
This is a library for the Adafruit BMP085/BMP180 Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 or BMP180 Breakout
|
||||||
|
----> http://www.adafruit.com/products/391
|
||||||
|
----> http://www.adafruit.com/products/1603
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
#include "Adafruit_BMP085.h"
|
||||||
|
|
||||||
|
Adafruit_BMP085::Adafruit_BMP085() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
boolean Adafruit_BMP085::begin(uint8_t mode) {
|
||||||
|
if (mode > BMP085_ULTRAHIGHRES)
|
||||||
|
mode = BMP085_ULTRAHIGHRES;
|
||||||
|
oversampling = mode;
|
||||||
|
|
||||||
|
Wire.begin();
|
||||||
|
|
||||||
|
if (read8(0xD0) != 0x55) return false;
|
||||||
|
|
||||||
|
/* read calibration data */
|
||||||
|
ac1 = read16(BMP085_CAL_AC1);
|
||||||
|
ac2 = read16(BMP085_CAL_AC2);
|
||||||
|
ac3 = read16(BMP085_CAL_AC3);
|
||||||
|
ac4 = read16(BMP085_CAL_AC4);
|
||||||
|
ac5 = read16(BMP085_CAL_AC5);
|
||||||
|
ac6 = read16(BMP085_CAL_AC6);
|
||||||
|
|
||||||
|
b1 = read16(BMP085_CAL_B1);
|
||||||
|
b2 = read16(BMP085_CAL_B2);
|
||||||
|
|
||||||
|
mb = read16(BMP085_CAL_MB);
|
||||||
|
mc = read16(BMP085_CAL_MC);
|
||||||
|
md = read16(BMP085_CAL_MD);
|
||||||
|
#if (BMP085_DEBUG == 1)
|
||||||
|
Serial.print("ac1 = "); Serial.println(ac1, DEC);
|
||||||
|
Serial.print("ac2 = "); Serial.println(ac2, DEC);
|
||||||
|
Serial.print("ac3 = "); Serial.println(ac3, DEC);
|
||||||
|
Serial.print("ac4 = "); Serial.println(ac4, DEC);
|
||||||
|
Serial.print("ac5 = "); Serial.println(ac5, DEC);
|
||||||
|
Serial.print("ac6 = "); Serial.println(ac6, DEC);
|
||||||
|
|
||||||
|
Serial.print("b1 = "); Serial.println(b1, DEC);
|
||||||
|
Serial.print("b2 = "); Serial.println(b2, DEC);
|
||||||
|
|
||||||
|
Serial.print("mb = "); Serial.println(mb, DEC);
|
||||||
|
Serial.print("mc = "); Serial.println(mc, DEC);
|
||||||
|
Serial.print("md = "); Serial.println(md, DEC);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::computeB5(int32_t UT) {
|
||||||
|
int32_t X1 = (UT - (int32_t)ac6) * ((int32_t)ac5) >> 15;
|
||||||
|
int32_t X2 = ((int32_t)mc << 11) / (X1+(int32_t)md);
|
||||||
|
return X1 + X2;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Adafruit_BMP085::readRawTemperature(void) {
|
||||||
|
write8(BMP085_CONTROL, BMP085_READTEMPCMD);
|
||||||
|
delay(5);
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("Raw temp: "); Serial.println(read16(BMP085_TEMPDATA));
|
||||||
|
#endif
|
||||||
|
return read16(BMP085_TEMPDATA);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t Adafruit_BMP085::readRawPressure(void) {
|
||||||
|
uint32_t raw;
|
||||||
|
|
||||||
|
write8(BMP085_CONTROL, BMP085_READPRESSURECMD + (oversampling << 6));
|
||||||
|
|
||||||
|
if (oversampling == BMP085_ULTRALOWPOWER)
|
||||||
|
delay(5);
|
||||||
|
else if (oversampling == BMP085_STANDARD)
|
||||||
|
delay(8);
|
||||||
|
else if (oversampling == BMP085_HIGHRES)
|
||||||
|
delay(14);
|
||||||
|
else
|
||||||
|
delay(26);
|
||||||
|
|
||||||
|
raw = read16(BMP085_PRESSUREDATA);
|
||||||
|
|
||||||
|
raw <<= 8;
|
||||||
|
raw |= read8(BMP085_PRESSUREDATA+2);
|
||||||
|
raw >>= (8 - oversampling);
|
||||||
|
|
||||||
|
/* this pull broke stuff, look at it later?
|
||||||
|
if (oversampling==0) {
|
||||||
|
raw <<= 8;
|
||||||
|
raw |= read8(BMP085_PRESSUREDATA+2);
|
||||||
|
raw >>= (8 - oversampling);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("Raw pressure: "); Serial.println(raw);
|
||||||
|
#endif
|
||||||
|
return raw;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::readPressure(void) {
|
||||||
|
int32_t UT, UP, B3, B5, B6, X1, X2, X3, p;
|
||||||
|
uint32_t B4, B7;
|
||||||
|
|
||||||
|
UT = readRawTemperature();
|
||||||
|
UP = readRawPressure();
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
// use datasheet numbers!
|
||||||
|
UT = 27898;
|
||||||
|
UP = 23843;
|
||||||
|
ac6 = 23153;
|
||||||
|
ac5 = 32757;
|
||||||
|
mc = -8711;
|
||||||
|
md = 2868;
|
||||||
|
b1 = 6190;
|
||||||
|
b2 = 4;
|
||||||
|
ac3 = -14383;
|
||||||
|
ac2 = -72;
|
||||||
|
ac1 = 408;
|
||||||
|
ac4 = 32741;
|
||||||
|
oversampling = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
B5 = computeB5(UT);
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B5 = "); Serial.println(B5);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// do pressure calcs
|
||||||
|
B6 = B5 - 4000;
|
||||||
|
X1 = ((int32_t)b2 * ( (B6 * B6)>>12 )) >> 11;
|
||||||
|
X2 = ((int32_t)ac2 * B6) >> 11;
|
||||||
|
X3 = X1 + X2;
|
||||||
|
B3 = ((((int32_t)ac1*4 + X3) << oversampling) + 2) / 4;
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("B6 = "); Serial.println(B6);
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B3 = "); Serial.println(B3);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
X1 = ((int32_t)ac3 * B6) >> 13;
|
||||||
|
X2 = ((int32_t)b1 * ((B6 * B6) >> 12)) >> 16;
|
||||||
|
X3 = ((X1 + X2) + 2) >> 2;
|
||||||
|
B4 = ((uint32_t)ac4 * (uint32_t)(X3 + 32768)) >> 15;
|
||||||
|
B7 = ((uint32_t)UP - B3) * (uint32_t)( 50000UL >> oversampling );
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
Serial.print("B4 = "); Serial.println(B4);
|
||||||
|
Serial.print("B7 = "); Serial.println(B7);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (B7 < 0x80000000) {
|
||||||
|
p = (B7 * 2) / B4;
|
||||||
|
} else {
|
||||||
|
p = (B7 / B4) * 2;
|
||||||
|
}
|
||||||
|
X1 = (p >> 8) * (p >> 8);
|
||||||
|
X1 = (X1 * 3038) >> 16;
|
||||||
|
X2 = (-7357 * p) >> 16;
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("p = "); Serial.println(p);
|
||||||
|
Serial.print("X1 = "); Serial.println(X1);
|
||||||
|
Serial.print("X2 = "); Serial.println(X2);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
p = p + ((X1 + X2 + (int32_t)3791)>>4);
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
Serial.print("p = "); Serial.println(p);
|
||||||
|
#endif
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t Adafruit_BMP085::readSealevelPressure(float altitude_meters) {
|
||||||
|
float pressure = readPressure();
|
||||||
|
return (int32_t)(pressure / pow(1.0-altitude_meters/44330, 5.255));
|
||||||
|
}
|
||||||
|
|
||||||
|
float Adafruit_BMP085::readTemperature(void) {
|
||||||
|
int32_t UT, B5; // following ds convention
|
||||||
|
float temp;
|
||||||
|
|
||||||
|
UT = readRawTemperature();
|
||||||
|
|
||||||
|
#if BMP085_DEBUG == 1
|
||||||
|
// use datasheet numbers!
|
||||||
|
UT = 27898;
|
||||||
|
ac6 = 23153;
|
||||||
|
ac5 = 32757;
|
||||||
|
mc = -8711;
|
||||||
|
md = 2868;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
B5 = computeB5(UT);
|
||||||
|
temp = (B5+8) >> 4;
|
||||||
|
temp /= 10;
|
||||||
|
|
||||||
|
return temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
float Adafruit_BMP085::readAltitude(float sealevelPressure) {
|
||||||
|
float altitude;
|
||||||
|
|
||||||
|
float pressure = readPressure();
|
||||||
|
|
||||||
|
altitude = 44330 * (1.0 - pow(pressure /sealevelPressure,0.1903));
|
||||||
|
|
||||||
|
return altitude;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*********************************************************************/
|
||||||
|
|
||||||
|
uint8_t Adafruit_BMP085::read8(uint8_t a) {
|
||||||
|
uint8_t ret;
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
Wire.requestFrom(BMP085_I2CADDR, 1);// send data n-bytes read
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
ret = Wire.read(); // receive DATA
|
||||||
|
#else
|
||||||
|
ret = Wire.receive(); // receive DATA
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Adafruit_BMP085::read16(uint8_t a) {
|
||||||
|
uint16_t ret;
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
Wire.requestFrom(BMP085_I2CADDR, 2);// send data n-bytes read
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
ret = Wire.read(); // receive DATA
|
||||||
|
ret <<= 8;
|
||||||
|
ret |= Wire.read(); // receive DATA
|
||||||
|
#else
|
||||||
|
ret = Wire.receive(); // receive DATA
|
||||||
|
ret <<= 8;
|
||||||
|
ret |= Wire.receive(); // receive DATA
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Adafruit_BMP085::write8(uint8_t a, uint8_t d) {
|
||||||
|
Wire.beginTransmission(BMP085_I2CADDR); // start transmission to device
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
Wire.write(a); // sends register address to read from
|
||||||
|
Wire.write(d); // write data
|
||||||
|
#else
|
||||||
|
Wire.send(a); // sends register address to read from
|
||||||
|
Wire.send(d); // write data
|
||||||
|
#endif
|
||||||
|
Wire.endTransmission(); // end transmission
|
||||||
|
}
|
79
libraries/Adafruit_BMP085_Library/Adafruit_BMP085.h
Normal file
79
libraries/Adafruit_BMP085_Library/Adafruit_BMP085.h
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
/***************************************************
|
||||||
|
This is a library for the Adafruit BMP085/BMP180 Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 or BMP180 Breakout
|
||||||
|
----> http://www.adafruit.com/products/391
|
||||||
|
----> http://www.adafruit.com/products/1603
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
#ifndef ADAFRUIT_BMP085_H
|
||||||
|
#define ADAFRUIT_BMP085_H
|
||||||
|
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
#include "Arduino.h"
|
||||||
|
#else
|
||||||
|
#include "WProgram.h"
|
||||||
|
#endif
|
||||||
|
#include "Wire.h"
|
||||||
|
|
||||||
|
#define BMP085_DEBUG 0
|
||||||
|
|
||||||
|
#define BMP085_I2CADDR 0x77
|
||||||
|
|
||||||
|
#define BMP085_ULTRALOWPOWER 0
|
||||||
|
#define BMP085_STANDARD 1
|
||||||
|
#define BMP085_HIGHRES 2
|
||||||
|
#define BMP085_ULTRAHIGHRES 3
|
||||||
|
#define BMP085_CAL_AC1 0xAA // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC2 0xAC // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC3 0xAE // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC4 0xB0 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC5 0xB2 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_AC6 0xB4 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_B1 0xB6 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_B2 0xB8 // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MB 0xBA // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MC 0xBC // R Calibration data (16 bits)
|
||||||
|
#define BMP085_CAL_MD 0xBE // R Calibration data (16 bits)
|
||||||
|
|
||||||
|
#define BMP085_CONTROL 0xF4
|
||||||
|
#define BMP085_TEMPDATA 0xF6
|
||||||
|
#define BMP085_PRESSUREDATA 0xF6
|
||||||
|
#define BMP085_READTEMPCMD 0x2E
|
||||||
|
#define BMP085_READPRESSURECMD 0x34
|
||||||
|
|
||||||
|
|
||||||
|
class Adafruit_BMP085 {
|
||||||
|
public:
|
||||||
|
Adafruit_BMP085();
|
||||||
|
boolean begin(uint8_t mode = BMP085_ULTRAHIGHRES); // by default go highres
|
||||||
|
float readTemperature(void);
|
||||||
|
int32_t readPressure(void);
|
||||||
|
int32_t readSealevelPressure(float altitude_meters = 0);
|
||||||
|
float readAltitude(float sealevelPressure = 101325); // std atmosphere
|
||||||
|
uint16_t readRawTemperature(void);
|
||||||
|
uint32_t readRawPressure(void);
|
||||||
|
|
||||||
|
private:
|
||||||
|
int32_t computeB5(int32_t UT);
|
||||||
|
uint8_t read8(uint8_t addr);
|
||||||
|
uint16_t read16(uint8_t addr);
|
||||||
|
void write8(uint8_t addr, uint8_t data);
|
||||||
|
|
||||||
|
uint8_t oversampling;
|
||||||
|
|
||||||
|
int16_t ac1, ac2, ac3, b1, b2, mb, mc, md;
|
||||||
|
uint16_t ac4, ac5, ac6;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // ADAFRUIT_BMP085_H
|
28
libraries/Adafruit_BMP085_Library/README.txt
Normal file
28
libraries/Adafruit_BMP085_Library/README.txt
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
This is a library for the Adafruit BMP085/BMP180 Barometric Pressure + Temp sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 or BMP180 Breakout
|
||||||
|
----> http://www.adafruit.com/products/391
|
||||||
|
----> http://www.adafruit.com/products/1603
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Check out the links above for our tutorials and wiring diagrams
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
|
||||||
|
To download. click the DOWNLOAD ZIP button, rename the uncompressed folder Adafruit_BMP085.
|
||||||
|
Check that the Adafruit_BMP085 folder contains Adafruit_BMP085.cpp and Adafruit_BMP085.h
|
||||||
|
|
||||||
|
Place the Adafruit_BMP085 library folder your arduinosketchfolder/libraries/ folder.
|
||||||
|
You may need to create the libraries subfolder if its your first library. Restart the IDE.
|
||||||
|
|
||||||
|
We also have a great tutorial on Arduino library installation at:
|
||||||
|
http://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use
|
@ -0,0 +1,66 @@
|
|||||||
|
#include <Wire.h>
|
||||||
|
#include <Adafruit_BMP085.h>
|
||||||
|
|
||||||
|
/***************************************************
|
||||||
|
This is an example for the BMP085 Barometric Pressure & Temp Sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP085 Breakout
|
||||||
|
----> https://www.adafruit.com/products/391
|
||||||
|
|
||||||
|
These displays use I2C to communicate, 2 pins are required to
|
||||||
|
interface
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit and open-source hardware by purchasing
|
||||||
|
products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
// Connect VCC of the BMP085 sensor to 3.3V (NOT 5.0V!)
|
||||||
|
// Connect GND to Ground
|
||||||
|
// Connect SCL to i2c clock - on '168/'328 Arduino Uno/Duemilanove/etc thats Analog 5
|
||||||
|
// Connect SDA to i2c data - on '168/'328 Arduino Uno/Duemilanove/etc thats Analog 4
|
||||||
|
// EOC is not used, it signifies an end of conversion
|
||||||
|
// XCLR is a reset pin, also not used here
|
||||||
|
|
||||||
|
Adafruit_BMP085 bmp;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
if (!bmp.begin()) {
|
||||||
|
Serial.println("Could not find a valid BMP085 sensor, check wiring!");
|
||||||
|
while (1) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bmp.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(bmp.readPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
// Calculate altitude assuming 'standard' barometric
|
||||||
|
// pressure of 1013.25 millibar = 101325 Pascal
|
||||||
|
Serial.print("Altitude = ");
|
||||||
|
Serial.print(bmp.readAltitude());
|
||||||
|
Serial.println(" meters");
|
||||||
|
|
||||||
|
Serial.print("Pressure at sealevel (calculated) = ");
|
||||||
|
Serial.print(bmp.readSealevelPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
// you can get a more precise measurement of altitude
|
||||||
|
// if you know the current sea level pressure which will
|
||||||
|
// vary with weather and such. If it is 1015 millibars
|
||||||
|
// that is equal to 101500 Pascals.
|
||||||
|
Serial.print("Real altitude = ");
|
||||||
|
Serial.print(bmp.readAltitude(101500));
|
||||||
|
Serial.println(" meters");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
delay(500);
|
||||||
|
}
|
9
libraries/Adafruit_BMP085_Library/library.properties
Normal file
9
libraries/Adafruit_BMP085_Library/library.properties
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
name=Adafruit BMP085 Library
|
||||||
|
version=1.0.0
|
||||||
|
author=Adafruit
|
||||||
|
maintainer=Adafruit <info@adafruit.com>
|
||||||
|
sentence=A powerful but easy to use BMP085/BMP180 Library
|
||||||
|
paragraph=A powerful but easy to use BMP085/BMP180 Library
|
||||||
|
category=Sensors
|
||||||
|
url=https://github.com/adafruit/Adafruit-BMP085-Library
|
||||||
|
architectures=*
|
326
libraries/Adafruit_BMP280_Library/Adafruit_BMP280.cpp
Normal file
326
libraries/Adafruit_BMP280_Library/Adafruit_BMP280.cpp
Normal file
@ -0,0 +1,326 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C to communicate, 2 pins are required to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
#include "Arduino.h"
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include "Adafruit_BMP280.h"
|
||||||
|
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
PRIVATE FUNCTIONS
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
Adafruit_BMP280::Adafruit_BMP280()
|
||||||
|
: _cs(-1), _mosi(-1), _miso(-1), _sck(-1)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
Adafruit_BMP280::Adafruit_BMP280(int8_t cspin)
|
||||||
|
: _cs(cspin), _mosi(-1), _miso(-1), _sck(-1)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
Adafruit_BMP280::Adafruit_BMP280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin)
|
||||||
|
: _cs(cspin), _mosi(mosipin), _miso(misopin), _sck(sckpin)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
|
||||||
|
bool Adafruit_BMP280::begin(uint8_t a) {
|
||||||
|
_i2caddr = a;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
// i2c
|
||||||
|
Wire.begin();
|
||||||
|
} else {
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
pinMode(_cs, OUTPUT);
|
||||||
|
|
||||||
|
if (_sck == -1) {
|
||||||
|
// hardware SPI
|
||||||
|
SPI.begin();
|
||||||
|
} else {
|
||||||
|
// software SPI
|
||||||
|
pinMode(_sck, OUTPUT);
|
||||||
|
pinMode(_mosi, OUTPUT);
|
||||||
|
pinMode(_miso, INPUT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (read8(BMP280_REGISTER_CHIPID) != 0x58)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
readCoefficients();
|
||||||
|
write8(BMP280_REGISTER_CONTROL, 0x3F);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint8_t Adafruit_BMP280::spixfer(uint8_t x) {
|
||||||
|
if (_sck == -1)
|
||||||
|
return SPI.transfer(x);
|
||||||
|
|
||||||
|
// software spi
|
||||||
|
//Serial.println("Software SPI");
|
||||||
|
uint8_t reply = 0;
|
||||||
|
for (int i=7; i>=0; i--) {
|
||||||
|
reply <<= 1;
|
||||||
|
digitalWrite(_sck, LOW);
|
||||||
|
digitalWrite(_mosi, x & (1<<i));
|
||||||
|
digitalWrite(_sck, HIGH);
|
||||||
|
if (digitalRead(_miso))
|
||||||
|
reply |= 1;
|
||||||
|
}
|
||||||
|
return reply;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Writes an 8 bit value over I2C/SPI
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_BMP280::write8(byte reg, byte value)
|
||||||
|
{
|
||||||
|
if (_cs == -1) {
|
||||||
|
Wire.beginTransmission((uint8_t)_i2caddr);
|
||||||
|
Wire.write((uint8_t)reg);
|
||||||
|
Wire.write((uint8_t)value);
|
||||||
|
Wire.endTransmission();
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg & ~0x80); // write, bit 7 low
|
||||||
|
spixfer(value);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads an 8 bit value over I2C
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint8_t Adafruit_BMP280::read8(byte reg)
|
||||||
|
{
|
||||||
|
uint8_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
Wire.beginTransmission((uint8_t)_i2caddr);
|
||||||
|
Wire.write((uint8_t)reg);
|
||||||
|
Wire.endTransmission();
|
||||||
|
Wire.requestFrom((uint8_t)_i2caddr, (byte)1);
|
||||||
|
value = Wire.read();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
value = spixfer(0);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a 16 bit value over I2C
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint16_t Adafruit_BMP280::read16(byte reg)
|
||||||
|
{
|
||||||
|
uint16_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
Wire.beginTransmission((uint8_t)_i2caddr);
|
||||||
|
Wire.write((uint8_t)reg);
|
||||||
|
Wire.endTransmission();
|
||||||
|
Wire.requestFrom((uint8_t)_i2caddr, (byte)2);
|
||||||
|
value = (Wire.read() << 8) | Wire.read();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
value = (spixfer(0) << 8) | spixfer(0);
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Adafruit_BMP280::read16_LE(byte reg) {
|
||||||
|
uint16_t temp = read16(reg);
|
||||||
|
return (temp >> 8) | (temp << 8);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a signed 16 bit value over I2C
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
int16_t Adafruit_BMP280::readS16(byte reg)
|
||||||
|
{
|
||||||
|
return (int16_t)read16(reg);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int16_t Adafruit_BMP280::readS16_LE(byte reg)
|
||||||
|
{
|
||||||
|
return (int16_t)read16_LE(reg);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads a signed 16 bit value over I2C
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
|
||||||
|
uint32_t Adafruit_BMP280::read24(byte reg)
|
||||||
|
{
|
||||||
|
uint32_t value;
|
||||||
|
|
||||||
|
if (_cs == -1) {
|
||||||
|
Wire.beginTransmission((uint8_t)_i2caddr);
|
||||||
|
Wire.write((uint8_t)reg);
|
||||||
|
Wire.endTransmission();
|
||||||
|
Wire.requestFrom((uint8_t)_i2caddr, (byte)3);
|
||||||
|
|
||||||
|
value = Wire.read();
|
||||||
|
value <<= 8;
|
||||||
|
value |= Wire.read();
|
||||||
|
value <<= 8;
|
||||||
|
value |= Wire.read();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.beginTransaction(SPISettings(500000, MSBFIRST, SPI_MODE0));
|
||||||
|
digitalWrite(_cs, LOW);
|
||||||
|
spixfer(reg | 0x80); // read, bit 7 high
|
||||||
|
|
||||||
|
value = spixfer(0);
|
||||||
|
value <<= 8;
|
||||||
|
value |= spixfer(0);
|
||||||
|
value <<= 8;
|
||||||
|
value |= spixfer(0);
|
||||||
|
|
||||||
|
digitalWrite(_cs, HIGH);
|
||||||
|
if (_sck == -1)
|
||||||
|
SPI.endTransaction(); // release the SPI bus
|
||||||
|
}
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Reads the factory-set coefficients
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_BMP280::readCoefficients(void)
|
||||||
|
{
|
||||||
|
_bmp280_calib.dig_T1 = read16_LE(BMP280_REGISTER_DIG_T1);
|
||||||
|
_bmp280_calib.dig_T2 = readS16_LE(BMP280_REGISTER_DIG_T2);
|
||||||
|
_bmp280_calib.dig_T3 = readS16_LE(BMP280_REGISTER_DIG_T3);
|
||||||
|
|
||||||
|
_bmp280_calib.dig_P1 = read16_LE(BMP280_REGISTER_DIG_P1);
|
||||||
|
_bmp280_calib.dig_P2 = readS16_LE(BMP280_REGISTER_DIG_P2);
|
||||||
|
_bmp280_calib.dig_P3 = readS16_LE(BMP280_REGISTER_DIG_P3);
|
||||||
|
_bmp280_calib.dig_P4 = readS16_LE(BMP280_REGISTER_DIG_P4);
|
||||||
|
_bmp280_calib.dig_P5 = readS16_LE(BMP280_REGISTER_DIG_P5);
|
||||||
|
_bmp280_calib.dig_P6 = readS16_LE(BMP280_REGISTER_DIG_P6);
|
||||||
|
_bmp280_calib.dig_P7 = readS16_LE(BMP280_REGISTER_DIG_P7);
|
||||||
|
_bmp280_calib.dig_P8 = readS16_LE(BMP280_REGISTER_DIG_P8);
|
||||||
|
_bmp280_calib.dig_P9 = readS16_LE(BMP280_REGISTER_DIG_P9);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BMP280::readTemperature(void)
|
||||||
|
{
|
||||||
|
int32_t var1, var2;
|
||||||
|
|
||||||
|
int32_t adc_T = read24(BMP280_REGISTER_TEMPDATA);
|
||||||
|
adc_T >>= 4;
|
||||||
|
|
||||||
|
var1 = ((((adc_T>>3) - ((int32_t)_bmp280_calib.dig_T1 <<1))) *
|
||||||
|
((int32_t)_bmp280_calib.dig_T2)) >> 11;
|
||||||
|
|
||||||
|
var2 = (((((adc_T>>4) - ((int32_t)_bmp280_calib.dig_T1)) *
|
||||||
|
((adc_T>>4) - ((int32_t)_bmp280_calib.dig_T1))) >> 12) *
|
||||||
|
((int32_t)_bmp280_calib.dig_T3)) >> 14;
|
||||||
|
|
||||||
|
t_fine = var1 + var2;
|
||||||
|
|
||||||
|
float T = (t_fine * 5 + 128) >> 8;
|
||||||
|
return T/100;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_BMP280::readPressure(void) {
|
||||||
|
int64_t var1, var2, p;
|
||||||
|
|
||||||
|
// Must be done first to get the t_fine variable set up
|
||||||
|
readTemperature();
|
||||||
|
|
||||||
|
int32_t adc_P = read24(BMP280_REGISTER_PRESSUREDATA);
|
||||||
|
adc_P >>= 4;
|
||||||
|
|
||||||
|
var1 = ((int64_t)t_fine) - 128000;
|
||||||
|
var2 = var1 * var1 * (int64_t)_bmp280_calib.dig_P6;
|
||||||
|
var2 = var2 + ((var1*(int64_t)_bmp280_calib.dig_P5)<<17);
|
||||||
|
var2 = var2 + (((int64_t)_bmp280_calib.dig_P4)<<35);
|
||||||
|
var1 = ((var1 * var1 * (int64_t)_bmp280_calib.dig_P3)>>8) +
|
||||||
|
((var1 * (int64_t)_bmp280_calib.dig_P2)<<12);
|
||||||
|
var1 = (((((int64_t)1)<<47)+var1))*((int64_t)_bmp280_calib.dig_P1)>>33;
|
||||||
|
|
||||||
|
if (var1 == 0) {
|
||||||
|
return 0; // avoid exception caused by division by zero
|
||||||
|
}
|
||||||
|
p = 1048576 - adc_P;
|
||||||
|
p = (((p<<31) - var2)*3125) / var1;
|
||||||
|
var1 = (((int64_t)_bmp280_calib.dig_P9) * (p>>13) * (p>>13)) >> 25;
|
||||||
|
var2 = (((int64_t)_bmp280_calib.dig_P8) * p) >> 19;
|
||||||
|
|
||||||
|
p = ((p + var1 + var2) >> 8) + (((int64_t)_bmp280_calib.dig_P7)<<4);
|
||||||
|
return (float)p/256;
|
||||||
|
}
|
||||||
|
|
||||||
|
float Adafruit_BMP280::readAltitude(float seaLevelhPa) {
|
||||||
|
float altitude;
|
||||||
|
|
||||||
|
float pressure = readPressure(); // in Si units for Pascal
|
||||||
|
pressure /= 100;
|
||||||
|
|
||||||
|
altitude = 44330 * (1.0 - pow(pressure / seaLevelhPa, 0.1903));
|
||||||
|
|
||||||
|
return altitude;
|
||||||
|
}
|
157
libraries/Adafruit_BMP280_Library/Adafruit_BMP280.h
Normal file
157
libraries/Adafruit_BMP280_Library/Adafruit_BMP280.h
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C to communicate, 2 pins are required to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
#ifndef __BMP280_H__
|
||||||
|
#define __BMP280_H__
|
||||||
|
|
||||||
|
#if (ARDUINO >= 100)
|
||||||
|
#include "Arduino.h"
|
||||||
|
#else
|
||||||
|
#include "WProgram.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
|
||||||
|
#ifdef __AVR_ATtiny85__
|
||||||
|
#include "TinyWireM.h"
|
||||||
|
#define Wire TinyWireM
|
||||||
|
#else
|
||||||
|
#include <Wire.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
I2C ADDRESS/BITS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
#define BMP280_ADDRESS (0x77)
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
REGISTERS
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
enum
|
||||||
|
{
|
||||||
|
BMP280_REGISTER_DIG_T1 = 0x88,
|
||||||
|
BMP280_REGISTER_DIG_T2 = 0x8A,
|
||||||
|
BMP280_REGISTER_DIG_T3 = 0x8C,
|
||||||
|
|
||||||
|
BMP280_REGISTER_DIG_P1 = 0x8E,
|
||||||
|
BMP280_REGISTER_DIG_P2 = 0x90,
|
||||||
|
BMP280_REGISTER_DIG_P3 = 0x92,
|
||||||
|
BMP280_REGISTER_DIG_P4 = 0x94,
|
||||||
|
BMP280_REGISTER_DIG_P5 = 0x96,
|
||||||
|
BMP280_REGISTER_DIG_P6 = 0x98,
|
||||||
|
BMP280_REGISTER_DIG_P7 = 0x9A,
|
||||||
|
BMP280_REGISTER_DIG_P8 = 0x9C,
|
||||||
|
BMP280_REGISTER_DIG_P9 = 0x9E,
|
||||||
|
|
||||||
|
BMP280_REGISTER_CHIPID = 0xD0,
|
||||||
|
BMP280_REGISTER_VERSION = 0xD1,
|
||||||
|
BMP280_REGISTER_SOFTRESET = 0xE0,
|
||||||
|
|
||||||
|
BMP280_REGISTER_CAL26 = 0xE1, // R calibration stored in 0xE1-0xF0
|
||||||
|
|
||||||
|
BMP280_REGISTER_CONTROL = 0xF4,
|
||||||
|
BMP280_REGISTER_CONFIG = 0xF5,
|
||||||
|
BMP280_REGISTER_PRESSUREDATA = 0xF7,
|
||||||
|
BMP280_REGISTER_TEMPDATA = 0xFA,
|
||||||
|
};
|
||||||
|
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*=========================================================================
|
||||||
|
CALIBRATION DATA
|
||||||
|
-----------------------------------------------------------------------*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint16_t dig_T1;
|
||||||
|
int16_t dig_T2;
|
||||||
|
int16_t dig_T3;
|
||||||
|
|
||||||
|
uint16_t dig_P1;
|
||||||
|
int16_t dig_P2;
|
||||||
|
int16_t dig_P3;
|
||||||
|
int16_t dig_P4;
|
||||||
|
int16_t dig_P5;
|
||||||
|
int16_t dig_P6;
|
||||||
|
int16_t dig_P7;
|
||||||
|
int16_t dig_P8;
|
||||||
|
int16_t dig_P9;
|
||||||
|
|
||||||
|
uint8_t dig_H1;
|
||||||
|
int16_t dig_H2;
|
||||||
|
uint8_t dig_H3;
|
||||||
|
int16_t dig_H4;
|
||||||
|
int16_t dig_H5;
|
||||||
|
int8_t dig_H6;
|
||||||
|
} bmp280_calib_data;
|
||||||
|
/*=========================================================================*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
class Adafruit_BMP280_Unified : public Adafruit_Sensor
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adafruit_BMP280_Unified(int32_t sensorID = -1);
|
||||||
|
|
||||||
|
bool begin(uint8_t addr = BMP280_ADDRESS);
|
||||||
|
void getTemperature(float *temp);
|
||||||
|
void getPressure(float *pressure);
|
||||||
|
float pressureToAltitude(float seaLevel, float atmospheric, float temp);
|
||||||
|
float seaLevelForAltitude(float altitude, float atmospheric, float temp);
|
||||||
|
void getEvent(sensors_event_t*);
|
||||||
|
void getSensor(sensor_t*);
|
||||||
|
|
||||||
|
private:
|
||||||
|
uint8_t _i2c_addr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
};
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class Adafruit_BMP280
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adafruit_BMP280(void);
|
||||||
|
Adafruit_BMP280(int8_t cspin);
|
||||||
|
Adafruit_BMP280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin);
|
||||||
|
|
||||||
|
bool begin(uint8_t addr = BMP280_ADDRESS);
|
||||||
|
float readTemperature(void);
|
||||||
|
float readPressure(void);
|
||||||
|
float readAltitude(float seaLevelhPa = 1013.25);
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
void readCoefficients(void);
|
||||||
|
uint8_t spixfer(uint8_t x);
|
||||||
|
|
||||||
|
void write8(byte reg, byte value);
|
||||||
|
uint8_t read8(byte reg);
|
||||||
|
uint16_t read16(byte reg);
|
||||||
|
uint32_t read24(byte reg);
|
||||||
|
int16_t readS16(byte reg);
|
||||||
|
uint16_t read16_LE(byte reg); // little endian
|
||||||
|
int16_t readS16_LE(byte reg); // little endian
|
||||||
|
|
||||||
|
uint8_t _i2caddr;
|
||||||
|
int32_t _sensorID;
|
||||||
|
int32_t t_fine;
|
||||||
|
|
||||||
|
int8_t _cs, _mosi, _miso, _sck;
|
||||||
|
|
||||||
|
bmp280_calib_data _bmp280_calib;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
43
libraries/Adafruit_BMP280_Library/README.md
Normal file
43
libraries/Adafruit_BMP280_Library/README.md
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#Adafruit BMP280 Driver (Barometric Pressure Sensor) #
|
||||||
|
|
||||||
|
This driver is for the Adafruit BMP280 Breakout (http://www.adafruit.com/products/2651)
|
||||||
|
|
||||||
|
## About the BMP280 ##
|
||||||
|
|
||||||
|
This precision sensor from Bosch is the best low-cost sensing solution for measuring barometric pressure and temperature. Because pressure changes with altitude you can also use it as an altimeter!
|
||||||
|
|
||||||
|
## About this Driver ##
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code. Please support Adafruit and open-source hardware by purchasing products from Adafruit!
|
||||||
|
|
||||||
|
Written by Kevin (KTOWN) Townsend for Adafruit Industries.
|
||||||
|
|
||||||
|
<!-- START COMPATIBILITY TABLE -->
|
||||||
|
|
||||||
|
## Compatibility
|
||||||
|
|
||||||
|
MCU | Tested Works | Doesn't Work | Not Tested | Notes
|
||||||
|
----------------- | :----------: | :----------: | :---------: | -----
|
||||||
|
Atmega328 @ 16MHz | X | | |
|
||||||
|
Atmega328 @ 12MHz | X | | |
|
||||||
|
Atmega32u4 @ 16MHz | X | | | Use SDA/SCL on pins D2 & D3
|
||||||
|
Atmega32u4 @ 8MHz | X | | | Use SDA/SCL on pins D2 & D3
|
||||||
|
ESP8266 | X | | | SDA/SCL default to pins 4 & 5 but any two pins can be assigned as SDA/SCL using Wire.begin(SDA,SCL)
|
||||||
|
Atmega2560 @ 16MHz | X | | | Use SDA/SCL on pins 20 & 21
|
||||||
|
ATSAM3X8E | X | | | Use SDA/SCL on pins 20 & 21
|
||||||
|
ATSAM21D | X | | |
|
||||||
|
ATtiny85 @ 16MHz | | | X |
|
||||||
|
ATtiny85 @ 8MHz | | | X |
|
||||||
|
|
||||||
|
* ATmega328 @ 16MHz : Arduino UNO, Adafruit Pro Trinket 5V, Adafruit Metro 328, Adafruit Metro Mini
|
||||||
|
* ATmega328 @ 12MHz : Adafruit Pro Trinket 3V
|
||||||
|
* ATmega32u4 @ 16MHz : Arduino Leonardo, Arduino Micro, Arduino Yun, Teensy 2.0
|
||||||
|
* ATmega32u4 @ 8MHz : Adafruit Flora, Bluefruit Micro
|
||||||
|
* ESP8266 : Adafruit Huzzah
|
||||||
|
* ATmega2560 @ 16MHz : Arduino Mega
|
||||||
|
* ATSAM3X8E : Arduino Due
|
||||||
|
* ATSAM21D : Arduino Zero, M0 Pro
|
||||||
|
* ATtiny85 @ 16MHz : Adafruit Trinket 5V
|
||||||
|
* ATtiny85 @ 8MHz : Adafruit Gemma, Arduino Gemma, Adafruit Trinket 3V
|
||||||
|
|
||||||
|
<!-- END COMPATIBILITY TABLE -->
|
@ -0,0 +1,57 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
This is a library for the BMP280 humidity, temperature & pressure sensor
|
||||||
|
|
||||||
|
Designed specifically to work with the Adafruit BMEP280 Breakout
|
||||||
|
----> http://www.adafruit.com/products/2651
|
||||||
|
|
||||||
|
These sensors use I2C or SPI to communicate, 2 or 4 pins are required
|
||||||
|
to interface.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code,
|
||||||
|
please support Adafruit andopen-source hardware by purchasing products
|
||||||
|
from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried & Kevin Townsend for Adafruit Industries.
|
||||||
|
BSD license, all text above must be included in any redistribution
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <Adafruit_Sensor.h>
|
||||||
|
#include <Adafruit_BMP280.h>
|
||||||
|
|
||||||
|
#define BMP_SCK 13
|
||||||
|
#define BMP_MISO 12
|
||||||
|
#define BMP_MOSI 11
|
||||||
|
#define BMP_CS 10
|
||||||
|
|
||||||
|
Adafruit_BMP280 bme; // I2C
|
||||||
|
//Adafruit_BMP280 bme(BMP_CS); // hardware SPI
|
||||||
|
//Adafruit_BMP280 bme(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
Serial.println(F("BMP280 test"));
|
||||||
|
|
||||||
|
if (!bme.begin()) {
|
||||||
|
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
|
||||||
|
while (1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.print("Temperature = ");
|
||||||
|
Serial.print(bme.readTemperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
|
||||||
|
Serial.print("Pressure = ");
|
||||||
|
Serial.print(bme.readPressure());
|
||||||
|
Serial.println(" Pa");
|
||||||
|
|
||||||
|
Serial.print("Approx altitude = ");
|
||||||
|
Serial.print(bme.readAltitude(1013.25)); // this should be adjusted to your local forcase
|
||||||
|
Serial.println(" m");
|
||||||
|
|
||||||
|
Serial.println();
|
||||||
|
delay(2000);
|
||||||
|
}
|
9
libraries/Adafruit_BMP280_Library/library.properties
Normal file
9
libraries/Adafruit_BMP280_Library/library.properties
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
name=Adafruit BMP280 Library
|
||||||
|
version=1.0.2
|
||||||
|
author=Adafruit
|
||||||
|
maintainer=Adafruit <info@adafruit.com>
|
||||||
|
sentence=Arduino library for BMP280 sensors.
|
||||||
|
paragraph=Arduino library for BMP280 pressure and altitude sensors.
|
||||||
|
category=Sensors
|
||||||
|
url=https://github.com/adafruit/Adafruit_BMP280_Library
|
||||||
|
architectures=*
|
@ -0,0 +1,369 @@
|
|||||||
|
/*!
|
||||||
|
* @file Adafruit_CircuitPlayground.cpp
|
||||||
|
*
|
||||||
|
* @mainpage Adafruit CircuitPlayground Library
|
||||||
|
*
|
||||||
|
* @section intro_sec Introduction
|
||||||
|
*
|
||||||
|
* This is the documentation for Adafruit's CircuitPlayground driver for the
|
||||||
|
* Arduino platform. It is designed specifically to work with the
|
||||||
|
* Adafruit CircuitPlayground boards:
|
||||||
|
* - https://www.adafruit.com/products/3000
|
||||||
|
* - https://www.adafruit.com/products/3333
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Adafruit invests time and resources providing this open source code,
|
||||||
|
* please support Adafruit and open-source hardware by purchasing
|
||||||
|
* products from Adafruit!
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @section author Author
|
||||||
|
*
|
||||||
|
* Written by Ladyada and others for Adafruit Industries.
|
||||||
|
*
|
||||||
|
* @section license License
|
||||||
|
*
|
||||||
|
* BSD license, all text here must be included in any redistribution.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <Adafruit_Circuit_Playground.h>
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Set up the CircuitPlayground hardware
|
||||||
|
@param brightness Optional brightness to set the neopixels to
|
||||||
|
@returns True if device is set up, false on any failure
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
boolean Adafruit_CircuitPlayground::begin(uint8_t brightness) {
|
||||||
|
pinMode(CPLAY_REDLED, OUTPUT);
|
||||||
|
pinMode(CPLAY_BUZZER, OUTPUT);
|
||||||
|
#ifdef __AVR__
|
||||||
|
pinMode(CPLAY_CAPSENSE_SHARED, OUTPUT);
|
||||||
|
pinMode(CPLAY_LEFTBUTTON, INPUT);
|
||||||
|
pinMode(CPLAY_RIGHTBUTTON, INPUT);
|
||||||
|
pinMode(CPLAY_SLIDESWITCHPIN, INPUT);
|
||||||
|
#else // Circuit Playground Express
|
||||||
|
pinMode(CPLAY_LEFTBUTTON, INPUT_PULLDOWN);
|
||||||
|
pinMode(CPLAY_RIGHTBUTTON, INPUT_PULLDOWN);
|
||||||
|
pinMode(CPLAY_SLIDESWITCHPIN, INPUT_PULLUP);
|
||||||
|
irReceiver=IRrecvPCI(CPLAY_IR_RECEIVER);
|
||||||
|
irDecoder=IRdecode();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
strip = Adafruit_CPlay_NeoPixel();
|
||||||
|
strip.updateType(NEO_GRB + NEO_KHZ800);
|
||||||
|
strip.updateLength(10);
|
||||||
|
strip.setPin(CPLAY_NEOPIXELPIN);
|
||||||
|
|
||||||
|
lis = Adafruit_CPlay_LIS3DH(CPLAY_LIS3DH_CS);
|
||||||
|
mic = Adafruit_CPlay_Mic();
|
||||||
|
|
||||||
|
speaker.begin();
|
||||||
|
|
||||||
|
strip.begin();
|
||||||
|
strip.show(); // Initialize all pixels to 'off'
|
||||||
|
strip.setBrightness(brightness);
|
||||||
|
|
||||||
|
#ifdef __AVR__
|
||||||
|
cap[0] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 0);
|
||||||
|
cap[1] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 1);
|
||||||
|
cap[2] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 2);
|
||||||
|
cap[3] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 3);
|
||||||
|
cap[4] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 6);
|
||||||
|
cap[5] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 9);
|
||||||
|
cap[6] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 10);
|
||||||
|
cap[7] = CPlay_CapacitiveSensor(CPLAY_CAPSENSE_SHARED, 12);
|
||||||
|
#else // Circuit Playground Express // Circuit Playground Express
|
||||||
|
for(int i=0; i<7; i++) {
|
||||||
|
cap[i] = Adafruit_CPlay_FreeTouch(A1+i, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
|
||||||
|
if (! cap[i].begin()) return false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return lis.begin(CPLAY_LIS3DH_ADDRESS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read capacitive touch sensor
|
||||||
|
@param p the pin to read. Must be a captouch enabled pin.
|
||||||
|
@param samples Optional number of samples to take. Defaults to 10.
|
||||||
|
@returns measured captouch value
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint16_t Adafruit_CircuitPlayground::readCap(uint8_t p, uint8_t samples) {
|
||||||
|
#ifdef __AVR__ // Circuit Playground Classic
|
||||||
|
switch (p) {
|
||||||
|
case 0: return cap[0].capacitiveSensor(samples);
|
||||||
|
case 1: return cap[1].capacitiveSensor(samples);
|
||||||
|
case 2: return cap[2].capacitiveSensor(samples);
|
||||||
|
case 3: return cap[3].capacitiveSensor(samples);
|
||||||
|
case 6: return cap[4].capacitiveSensor(samples);
|
||||||
|
case 9: return cap[5].capacitiveSensor(samples);
|
||||||
|
case 10: return cap[6].capacitiveSensor(samples);
|
||||||
|
case 12: return cap[7].capacitiveSensor(samples);
|
||||||
|
default: return 0;
|
||||||
|
}
|
||||||
|
#else // Circuit Playground Express // Circuit Playground Express
|
||||||
|
// analog pins r ez!
|
||||||
|
if ((p >= A1) && (p <= A7)) {
|
||||||
|
return cap[p - A1].measure();
|
||||||
|
}
|
||||||
|
// oof digital pins
|
||||||
|
switch (p) {
|
||||||
|
case 0: return cap[A6 - A1].measure();
|
||||||
|
case 1: return cap[A7 - A1].measure();
|
||||||
|
case 2: return cap[A5 - A1].measure();
|
||||||
|
case 3: return cap[A4 - A1].measure();
|
||||||
|
case 6: return cap[A1 - A1].measure();
|
||||||
|
case 9: return cap[A2 - A1].measure();
|
||||||
|
case 10: return cap[A3 - A1].measure();
|
||||||
|
default: return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief turn on or off the red LED on pin #13
|
||||||
|
@param v pass true to turn LED on, false to turn LED off
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_CircuitPlayground::redLED(boolean v) {
|
||||||
|
digitalWrite(CPLAY_REDLED, v);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the slide switch
|
||||||
|
@returns true if slide switch in set, false if not
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
boolean Adafruit_CircuitPlayground::slideSwitch(void) {
|
||||||
|
return digitalRead(CPLAY_SLIDESWITCHPIN);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the left button
|
||||||
|
@returns true if button is pressed, false if not
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
boolean Adafruit_CircuitPlayground::leftButton(void) {
|
||||||
|
return digitalRead(CPLAY_LEFTBUTTON);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the right button
|
||||||
|
@returns true if button is pressed, false if not
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
boolean Adafruit_CircuitPlayground::rightButton(void) {
|
||||||
|
return digitalRead(CPLAY_RIGHTBUTTON);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief play a tone on the onboard buzzer
|
||||||
|
@param freq the frequency to play
|
||||||
|
@param time the duration of the tone in milliseconds
|
||||||
|
@param wait Optional flag to wait for time milliseconds after playing the tone. Defaults to true.
|
||||||
|
@note The driver circuitry is an on/off transistor driver, so you will only be able to play square waves.
|
||||||
|
It is also not the same loudness over all frequencies but is designed to be the loudest at around 4 KHz
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_CircuitPlayground::playTone(uint16_t freq, uint16_t time, boolean wait) {
|
||||||
|
tone(CPLAY_BUZZER, freq, time);
|
||||||
|
if (wait) delay(time);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the onboard lightsensor
|
||||||
|
@returns value between 0 and 1023 read from the light sensor
|
||||||
|
@note 1000 Lux will roughly read as 2 Volts (or about 680 as a raw analog reading).
|
||||||
|
A reading of about 300 is common for most indoor light levels.
|
||||||
|
Note that outdoor daylight is 10,000 Lux or even higher, so this sensor is best
|
||||||
|
suited for indoor light levels!
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint16_t Adafruit_CircuitPlayground::lightSensor(void) {
|
||||||
|
return analogRead(CPLAY_LIGHTSENSOR);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the onboard sound sensor. A reading of ~0 is silent, and
|
||||||
|
loud audio will result in a reading between -500 and 500 or so.
|
||||||
|
@returns value of the sound sensor
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
int16_t Adafruit_CircuitPlayground::soundSensor(void) {
|
||||||
|
int16_t x;
|
||||||
|
mic.capture(&x, 1);
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the X parameter of the onboard accelerometer. Value returned is
|
||||||
|
defined by setAccelRange().
|
||||||
|
@returns X value of the accelerometer
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_CircuitPlayground::motionX(void) {
|
||||||
|
sensors_event_t event;
|
||||||
|
CircuitPlayground.lis.getEvent(&event);
|
||||||
|
return event.acceleration.x;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the Y parameter of the onboard accelerometer. Value returned is
|
||||||
|
defined by setAccelRange().
|
||||||
|
@returns Y value of the accelerometer
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_CircuitPlayground::motionY(void) {
|
||||||
|
sensors_event_t event;
|
||||||
|
CircuitPlayground.lis.getEvent(&event);
|
||||||
|
return event.acceleration.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the Z parameter of the onboard accelerometer. Value returned is
|
||||||
|
defined by setAccelRange().
|
||||||
|
@returns the Z value of the onboard accelerometer
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_CircuitPlayground::motionZ(void) {
|
||||||
|
sensors_event_t event;
|
||||||
|
CircuitPlayground.lis.getEvent(&event);
|
||||||
|
return event.acceleration.z;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the onboard thermistor.
|
||||||
|
@returns temperature reading in Centigrade.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_CircuitPlayground::temperature(void) {
|
||||||
|
// Thermistor test
|
||||||
|
float reading;
|
||||||
|
|
||||||
|
reading = analogRead(CPLAY_THERMISTORPIN);
|
||||||
|
|
||||||
|
//Serial.print("Thermistor reading: "); Serial.println(reading);
|
||||||
|
|
||||||
|
// convert the value to resistance
|
||||||
|
reading = ((1023.0 * SERIESRESISTOR) / reading);
|
||||||
|
reading -= SERIESRESISTOR;
|
||||||
|
|
||||||
|
//Serial.print("Thermistor resistance: "); Serial.println(reading);
|
||||||
|
|
||||||
|
float steinhart;
|
||||||
|
steinhart = reading / THERMISTORNOMINAL; // (R/Ro)
|
||||||
|
steinhart = log(steinhart); // ln(R/Ro)
|
||||||
|
steinhart /= BCOEFFICIENT; // 1/B * ln(R/Ro)
|
||||||
|
steinhart += 1.0 / (TEMPERATURENOMINAL + 273.15); // + (1/To)
|
||||||
|
steinhart = 1.0 / steinhart; // Invert
|
||||||
|
steinhart -= 273.15; // convert to C
|
||||||
|
|
||||||
|
return steinhart;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief read the onboard thermistor.
|
||||||
|
@returns temperature reading in Farenheight.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
float Adafruit_CircuitPlayground::temperatureF(void) {
|
||||||
|
float tempF = CircuitPlayground.temperature() * 1.8 + 32;
|
||||||
|
return tempF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief get a color value from the color wheel.
|
||||||
|
@param WheelPos a value 0 to 255
|
||||||
|
@returns a color value. The colours are a transition r - g - b - back to r.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint32_t Adafruit_CircuitPlayground::colorWheel(uint8_t WheelPos) {
|
||||||
|
WheelPos = 255 - WheelPos;
|
||||||
|
if (WheelPos < 85) {
|
||||||
|
return strip.Color(255 - WheelPos * 3, 0, WheelPos * 3);
|
||||||
|
}
|
||||||
|
if (WheelPos < 170) {
|
||||||
|
WheelPos -= 85;
|
||||||
|
return strip.Color(0, WheelPos * 3, 255 - WheelPos * 3);
|
||||||
|
}
|
||||||
|
WheelPos -= 170;
|
||||||
|
return strip.Color(WheelPos * 3, 255 - WheelPos * 3, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief detect a color value from the light sensor
|
||||||
|
@param red the pointer to where the red component should be stored.
|
||||||
|
@param green the pointer to where the green component should be stored.
|
||||||
|
@param blue the pointer to where the blue component should be stored.
|
||||||
|
@returns the components of the detected colors in the passed pointers.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void Adafruit_CircuitPlayground::senseColor(uint8_t& red, uint8_t& green, uint8_t& blue) {
|
||||||
|
// Save the current pixel brightness so it can later be restored. Then bump
|
||||||
|
// the brightness to max to make sure the LED is as bright as possible for
|
||||||
|
// the color readings.
|
||||||
|
uint8_t old_brightness = strip.getBrightness();
|
||||||
|
strip.setBrightness(255);
|
||||||
|
// Set pixel 1 (next to the light sensor) to full red, green, blue
|
||||||
|
// color and grab a light sensor reading. Make sure to wait a bit
|
||||||
|
// after changing pixel colors to let the light sensor change
|
||||||
|
// resistance!
|
||||||
|
setPixelColor(1, 255, 0, 0); // Red
|
||||||
|
delay(LIGHT_SETTLE_MS);
|
||||||
|
uint16_t raw_red = lightSensor();
|
||||||
|
setPixelColor(1, 0, 255, 0); // Green
|
||||||
|
delay(LIGHT_SETTLE_MS);
|
||||||
|
uint16_t raw_green = lightSensor();
|
||||||
|
setPixelColor(1, 0, 0, 255); // Blue
|
||||||
|
delay(LIGHT_SETTLE_MS);
|
||||||
|
uint16_t raw_blue = lightSensor();
|
||||||
|
// Turn off the pixel and restore brightness, we're done with readings.
|
||||||
|
setPixelColor(1, 0);
|
||||||
|
strip.setBrightness(old_brightness);
|
||||||
|
// Now scale down each of the raw readings to be within
|
||||||
|
// 0 to 255. Remember each sensor reading is from the ADC
|
||||||
|
// which has 10 bits of resolution (0 to 1023), so dividing
|
||||||
|
// by 4 will change the range from 0-1023 to 0-255. Also
|
||||||
|
// use the min function to clamp the value to 255 at most (just
|
||||||
|
// to prevent overflow from 255.xx to 0).
|
||||||
|
red = min(255, raw_red/4);
|
||||||
|
green = min(255, raw_green/4);
|
||||||
|
blue = min(255, raw_blue/4);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief check whether or not this device is a CircuitPlayground Express.
|
||||||
|
@returns True if the device is a CircuitPlayground Express, false if it is a 'classic'.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
boolean Adafruit_CircuitPlayground::isExpress(void) {
|
||||||
|
#ifdef __AVR__
|
||||||
|
return false;
|
||||||
|
#else
|
||||||
|
return true;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
// instantiate static
|
||||||
|
Adafruit_CircuitPlayground CircuitPlayground;
|
@ -0,0 +1,3 @@
|
|||||||
|
// this is a placeholder file. dont undo or delete this 'clever hack' :)
|
||||||
|
|
||||||
|
#include <Adafruit_Circuit_Playground.h>
|
@ -0,0 +1,231 @@
|
|||||||
|
/*!
|
||||||
|
* @file Adafruit_Circuit_Playground.h
|
||||||
|
*
|
||||||
|
* This is part of Adafruit's CircuitPlayground driver for the Arduino platform. It is
|
||||||
|
* designed specifically to work with the Adafruit CircuitPlayground boards.
|
||||||
|
*
|
||||||
|
* Adafruit invests time and resources providing this open source code,
|
||||||
|
* please support Adafruit and open-source hardware by purchasing
|
||||||
|
* products from Adafruit!
|
||||||
|
*
|
||||||
|
* Written by Ladyada and others for Adafruit Industries.
|
||||||
|
*
|
||||||
|
* BSD license, all text here must be included in any redistribution.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _ADAFRUIT_CIRCUITPLAYGROUND_H_
|
||||||
|
#define _ADAFRUIT_CIRCUITPLAYGROUND_H_
|
||||||
|
|
||||||
|
#include <Arduino.h>
|
||||||
|
#include "utility/Adafruit_CPlay_NeoPixel.h"
|
||||||
|
#include "utility/Adafruit_CPlay_LIS3DH.h"
|
||||||
|
#include "utility/Adafruit_CPlay_Mic.h"
|
||||||
|
#include "utility/Adafruit_CPlay_Speaker.h"
|
||||||
|
#include "utility/CP_Firmata.h"
|
||||||
|
|
||||||
|
#ifdef __AVR__ // Circuit Playground 'classic'
|
||||||
|
#include "utility/CPlay_CapacitiveSensor.h"
|
||||||
|
#else
|
||||||
|
#include "utility/Adafruit_CPlay_FreeTouch.h"
|
||||||
|
#include "utility/IRLibCPE.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef NOT_AN_INTERRUPT // Not defined in Arduino 1.0.5
|
||||||
|
#define NOT_AN_INTERRUPT -1 ///< Pin is not on an interrupt
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __AVR__ // Circuit Playground 'classic'
|
||||||
|
#define CPLAY_CAPSENSE_SHARED 30 ///< capacitive sense pin
|
||||||
|
#define CPLAY_REDLED 13 ///< red LED pin
|
||||||
|
#define CPLAY_NEOPIXELPIN 17 ///< neopixel pin
|
||||||
|
#define CPLAY_SLIDESWITCHPIN 21 ///< slide switch pin
|
||||||
|
#define CPLAY_LEFTBUTTON 4 ///< left button pin
|
||||||
|
#define CPLAY_RIGHTBUTTON 19 ///< right button pin
|
||||||
|
#define CPLAY_LIGHTSENSOR A5 ///< light sensor pin
|
||||||
|
#define CPLAY_THERMISTORPIN A0 ///< thermistor pin
|
||||||
|
#define CPLAY_SOUNDSENSOR A4 ///< sound sensor pin
|
||||||
|
#define CPLAY_BUZZER 5 ///< buzzer pin
|
||||||
|
#define CPLAY_LIS3DH_CS 8 ///< LIS3DH chip select pin
|
||||||
|
#define CPLAY_LIS3DH_INTERRUPT 7 ///< LIS3DH interrupt pin
|
||||||
|
#define CPLAY_LIS3DH_ADDRESS 0x18 ///< LIS3DH I2C address
|
||||||
|
#else // Circuit Playground Express
|
||||||
|
#define CPLAY_LEFTBUTTON 4 ///< left button pin
|
||||||
|
#define CPLAY_RIGHTBUTTON 5 ///< right button pin
|
||||||
|
#define CPLAY_SLIDESWITCHPIN 7 ///< slide switch pin
|
||||||
|
#define CPLAY_NEOPIXELPIN 8 ///< neopixel pin
|
||||||
|
#define CPLAY_REDLED 13 ///< red led pin
|
||||||
|
#define CPLAY_IR_EMITTER 25 ///< IR emmitter pin
|
||||||
|
#define CPLAY_IR_RECEIVER 26 ///< IR receiver pin
|
||||||
|
#define CPLAY_BUZZER A0 ///< buzzer pin
|
||||||
|
#define CPLAY_LIGHTSENSOR A8 ///< light sensor pin
|
||||||
|
#define CPLAY_THERMISTORPIN A9 ///< thermistor pin
|
||||||
|
#define CPLAY_SOUNDSENSOR A4 ///< TBD I2S
|
||||||
|
#define CPLAY_LIS3DH_CS -1 ///< LIS3DH chip select pin
|
||||||
|
#define CPLAY_LIS3DH_INTERRUPT 27 ///< LIS3DH interrupt pin
|
||||||
|
#define CPLAY_LIS3DH_ADDRESS 0x19 ///< LIS3DH I2C address
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define SERIESRESISTOR 10000 ///< series resistor for thermistor
|
||||||
|
#define THERMISTORNOMINAL 10000 ///< resistance of thermistor at 25 degrees C
|
||||||
|
#define TEMPERATURENOMINAL 25 ///< temp. for nominal resistance (almost always 25 C)
|
||||||
|
|
||||||
|
#define BCOEFFICIENT 3380 ///< The beta coefficient of the thermistor (usually 3000-4000)
|
||||||
|
|
||||||
|
/*!
|
||||||
|
@brief Configuration to tune the color sensing logic:
|
||||||
|
Amount of time (in milliseconds) to wait between
|
||||||
|
changing the pixel color and reading the light
|
||||||
|
sensor.
|
||||||
|
*/
|
||||||
|
#define LIGHT_SETTLE_MS 100
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief Class that stores state and functions for interacting with CircuitPlayground hardware
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
class Adafruit_CircuitPlayground {
|
||||||
|
public:
|
||||||
|
boolean begin(uint8_t brightness=20);
|
||||||
|
|
||||||
|
Adafruit_CPlay_NeoPixel strip; ///< the neopixel strip object
|
||||||
|
Adafruit_CPlay_LIS3DH lis; ///< the accelerometer object
|
||||||
|
Adafruit_CPlay_Mic mic; ///< the microphone object
|
||||||
|
Adafruit_CPlay_Speaker speaker; ///< the speaker object
|
||||||
|
|
||||||
|
#ifdef __AVR__ // Circuit Playground 'classic'
|
||||||
|
CPlay_CapacitiveSensor cap[8]; ///< the array of capacitive touch sensors
|
||||||
|
#else
|
||||||
|
Adafruit_CPlay_FreeTouch cap[7]; ///< the array of capacitive touch sensors
|
||||||
|
IRrecvPCI irReceiver; ///< the IR receiver object
|
||||||
|
IRdecode irDecoder; ///< the IR decoder object
|
||||||
|
IRsend irSend; ///< the IR send object
|
||||||
|
#endif
|
||||||
|
|
||||||
|
boolean slideSwitch(void);
|
||||||
|
void redLED(boolean v);
|
||||||
|
void playTone(uint16_t freq, uint16_t time, boolean wait=true);
|
||||||
|
boolean leftButton(void);
|
||||||
|
boolean rightButton(void);
|
||||||
|
uint16_t lightSensor(void);
|
||||||
|
int16_t soundSensor(void);
|
||||||
|
float temperature(void);
|
||||||
|
float temperatureF(void);
|
||||||
|
|
||||||
|
uint16_t readCap(uint8_t p, uint8_t samples=10);
|
||||||
|
|
||||||
|
// Accelerometer
|
||||||
|
float motionX(void);
|
||||||
|
float motionY(void);
|
||||||
|
float motionZ(void);
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief set the range of the MEMS accelerometer.
|
||||||
|
@param range the range to set the accelerometer to. LIS3DH_RANGE_2_G
|
||||||
|
is the smallest (+-2G) but will give the greatest precision, while LIS3DH_RANGE_8_G
|
||||||
|
is the largest (+-8G) but with the lease precision. LIS3DH_RANGE_4_G is in the middle.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void setAccelRange(lis3dh_range_t range) { lis.setRange(range); }
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief turn on tap detection. Tap detection can detect single taps or 'double taps'
|
||||||
|
(like a double-click).
|
||||||
|
@param c If c is 1 you will only detect single taps, one at a time.
|
||||||
|
If c is 2, you will be able to detect both single taps and double taps.
|
||||||
|
@param clickthresh the threshold over which to register a tap
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void setAccelTap(uint8_t c, uint8_t clickthresh)
|
||||||
|
{ lis.setClick(c, clickthresh, 10, 20, 255); }
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief test whether or not a tap has been detected
|
||||||
|
@return 0 if no tap is detected, 1 if a single tap is detected, and 2 or 3 if double tap is detected.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint8_t getAccelTap(void) { return (lis.getClick() >> 8) & 0x3; }
|
||||||
|
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief turn off all neopixels on the board
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void clearPixels(void) { strip.clear(); strip.show(); }
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief set the color of a neopixel on the board
|
||||||
|
@param p the pixel to set. Pixel 0 is above the pad labeled 'GND' right next to the
|
||||||
|
USB connector, while pixel 9 is above the pad labeled '3.3V' on the other side of
|
||||||
|
the USB connector.
|
||||||
|
@param c a 24bit color value to set the pixel to
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void setPixelColor(uint8_t p, uint32_t c) {strip.setPixelColor(p, c); strip.show();}
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief set the color of a neopixel on the board
|
||||||
|
@param p the pixel to set. Pixel 0 is above the pad labeled 'GND' right next to the
|
||||||
|
USB connector, while pixel 9 is above the pad labeled '3.3V' on the other side of
|
||||||
|
the USB connector.
|
||||||
|
@param r a 0 to 255 value corresponding to the red component of the desired color.
|
||||||
|
@param g a 0 to 255 value corresponding to the green component of the desired color.
|
||||||
|
@param b a 0 to 255 value corresponding to the blue component of the desired color.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
void setPixelColor(uint8_t p, uint8_t r, uint8_t g, uint8_t b) {strip.setPixelColor(p, r, g, b); strip.show();}
|
||||||
|
|
||||||
|
/*! @brief set the global brightness of all neopixels.
|
||||||
|
@param b a 0 to 255 value corresponding to the desired brightness. The default brightness
|
||||||
|
of all neopixels is 30. */
|
||||||
|
void setBrightness(uint16_t b){strip.setBrightness(b);}
|
||||||
|
|
||||||
|
/*! @brief Get a sinusoidal value from a sine table
|
||||||
|
@param x a 0 to 255 value corresponding to an index to the sine table
|
||||||
|
@returns An 8-bit sinusoidal value back */
|
||||||
|
uint8_t sine8(uint8_t x) { return strip.sine8(x); }
|
||||||
|
|
||||||
|
/*! @brief Get a gamma-corrected value from a gamma table
|
||||||
|
@param x a 0 to 255 value corresponding to an index to the gamma table
|
||||||
|
@returns An 8-bit gamma-corrected value back */
|
||||||
|
uint8_t gamma8(uint8_t x) { return strip.gamma8(x); }
|
||||||
|
|
||||||
|
uint32_t colorWheel(uint8_t x);
|
||||||
|
|
||||||
|
// Basic RGB color sensing with the light sensor and nearby neopixel.
|
||||||
|
// Both functions do the same thing and just differ in how they return the
|
||||||
|
// result, either as explicit RGB bytes or a 24-bit RGB color value.
|
||||||
|
void senseColor(uint8_t& red, uint8_t& green, uint8_t& blue);
|
||||||
|
|
||||||
|
/**************************************************************************/
|
||||||
|
/*!
|
||||||
|
@brief detect a color using the onboard light sensor
|
||||||
|
@return a 24 bit color. The most significant byte is red, followed by green, and
|
||||||
|
the least significant byte is blue.
|
||||||
|
*/
|
||||||
|
/**************************************************************************/
|
||||||
|
uint32_t senseColor() {
|
||||||
|
// Use the individual color component color sense function and then recombine
|
||||||
|
// tbe components into a 24-bit color value.
|
||||||
|
uint8_t red, green, blue;
|
||||||
|
senseColor(red, green, blue);
|
||||||
|
return ((uint32_t)red << 16) | ((uint32_t)green << 8) | blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean isExpress(void);
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
extern Adafruit_CircuitPlayground CircuitPlayground; ///< instantiated by default
|
||||||
|
|
||||||
|
#endif
|
2492
libraries/Adafruit_Circuit_Playground/Doxyfile
Normal file
2492
libraries/Adafruit_Circuit_Playground/Doxyfile
Normal file
File diff suppressed because it is too large
Load Diff
14
libraries/Adafruit_Circuit_Playground/README.md
Normal file
14
libraries/Adafruit_Circuit_Playground/README.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# Adafruit CircuitPlayground Library [![Build Status](https://travis-ci.org/adafruit/Adafruit_CircuitPlayground.svg?branch=master)](https://travis-ci.org/adafruit/Adafruit_CircuitPlayground)
|
||||||
|
|
||||||
|
<img src="https://cdn-shop.adafruit.com/970x728/3333-01.jpg" height="300"/>
|
||||||
|
|
||||||
|
This is a library for the Adafruit CircuitPlayground boards:
|
||||||
|
* https://www.adafruit.com/products/3333
|
||||||
|
* https://www.adafruit.com/product/3000
|
||||||
|
|
||||||
|
Check out the links above for our tutorials and wiring diagrams.
|
||||||
|
|
||||||
|
Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit!
|
||||||
|
|
||||||
|
Written by Limor Fried/Ladyada and others for Adafruit Industries.
|
||||||
|
MIT license, all text above must be included in any redistribution
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,56 @@
|
|||||||
|
// Fidget spinner logic.
|
||||||
|
// This class represents a fidget spinner that can be spun to a specified
|
||||||
|
// velocity and then over time will slow down and stop. The spinner keeps track
|
||||||
|
// of its continuous (floating point) position value within the range 0...<10
|
||||||
|
// so it can map to CircuitPlayground pixel positions easily.// Author: Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
// Usage:
|
||||||
|
// - Create an instance of the class (specifying a custom decay value between 0 and 1,
|
||||||
|
// the lower the decay the faster the spinner slows down).
|
||||||
|
// - Call spin to start the spinner moving at the specified velocity (in pixels/second).
|
||||||
|
// - Call getPosition periodically to get the current spinner position given an elapsed
|
||||||
|
// amount of seconds since the last getPosition call.
|
||||||
|
#ifndef FIDGETANIMATION_H
|
||||||
|
#define FIDGETANIMATION_H
|
||||||
|
|
||||||
|
class FidgetSpinner {
|
||||||
|
public:
|
||||||
|
FidgetSpinner(float decay=0.5):
|
||||||
|
_position(0.0), _velocity(0.0), _elapsedS(0.0), _decay(decay)
|
||||||
|
{}
|
||||||
|
|
||||||
|
void spin(float velocity) {
|
||||||
|
// Start the fidget spinner moving at the specified velocity (in pixels/second).
|
||||||
|
// Over time the spinner will slow down based on its decay value.
|
||||||
|
_velocity = velocity;
|
||||||
|
_elapsedS = 0.0; // Reset elapsed time to start the decay from the beginning.
|
||||||
|
}
|
||||||
|
|
||||||
|
float getPosition(float deltaS) {
|
||||||
|
// Get the fidget spinner's current position after moving for the specified number
|
||||||
|
// of milliseconds. Returns a continuous value in the range 0...<10.
|
||||||
|
_elapsedS += deltaS;
|
||||||
|
// Compute current velocity based on exponential decay of initial
|
||||||
|
// velocity over the elapsed time (this causes the spinner to
|
||||||
|
// gradually slow down and mimics the effects of friction).
|
||||||
|
float currentVelocity = _velocity*pow(_decay, _elapsedS);
|
||||||
|
// Now move the position based on the current velocity.
|
||||||
|
_position += currentVelocity*deltaS;
|
||||||
|
// Finally make sure position is constrained within 0...<10 range.
|
||||||
|
_position = fmod(_position, 10.0);
|
||||||
|
if (_position < 0.0) {
|
||||||
|
// Ensure position is never negative by wrapping back to the
|
||||||
|
// same pixel position in a positive location.
|
||||||
|
_position += 10.0;
|
||||||
|
}
|
||||||
|
return _position;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
float _position;
|
||||||
|
float _velocity;
|
||||||
|
float _elapsedS;
|
||||||
|
float _decay;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,269 @@
|
|||||||
|
// Circuit Playground Digital Fidget Spinner
|
||||||
|
// -----------------------------------------
|
||||||
|
// Uses the Circuit Playground accelerometer to detect when the board
|
||||||
|
// is flicked from one side or the other and animates the pixels spinning
|
||||||
|
// around accordingly (with decay in speed to simulate friction).
|
||||||
|
// Press one button to cycle through different color combinations,
|
||||||
|
// and another button to cycle through 4 different types of animations
|
||||||
|
// (single dot, dual dot, single sine wave, dual sine wave).
|
||||||
|
// See the FidgetSpinner.h and PeakDetector.h files as tabs at the top
|
||||||
|
// for more of the sketch code!
|
||||||
|
// Author: Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include "FidgetSpinner.h"
|
||||||
|
#include "PeakDetector.h"
|
||||||
|
|
||||||
|
|
||||||
|
// Configure which accelerometer axis to check:
|
||||||
|
// This should be one of the following values (uncomment only ONE):
|
||||||
|
//#define AXIS CircuitPlayground.motionX() // X axis, good for Circuit Playground express (SAMD21).
|
||||||
|
#define AXIS CircuitPlayground.motionY() // Y axis, good for Circuit Playground classic (32u4).
|
||||||
|
//#define AXIS CircuitPlayground.motionZ() // Z axis, wacky--try it!
|
||||||
|
|
||||||
|
// Configure how the axis direction compares to pixel movement direction:
|
||||||
|
#define INVERT_AXIS true // Set to true or 1 to invert the axis direction vs.
|
||||||
|
// pixel movement direction, or false/0 to disable.
|
||||||
|
// If the pixels spin in the opposite direction of your
|
||||||
|
// flick all the time then try changing this value.
|
||||||
|
|
||||||
|
// Configure pixel brightness.
|
||||||
|
// Set this to a value from 0 to 255 (minimum to maximum brightness).
|
||||||
|
#define BRIGHTNESS 255
|
||||||
|
|
||||||
|
// Configure peak detector behavior:
|
||||||
|
#define LAG 30 // Lag, how large is the buffer of filtered samples.
|
||||||
|
// Must be an integer value!
|
||||||
|
#define THRESHOLD 20.0 // Number of standard deviations above average a
|
||||||
|
// value needs to be to be considered a peak.
|
||||||
|
#define INFLUENCE 0.1 // Scale down peak values to this percent influence
|
||||||
|
// when storing them back in the filtered values.
|
||||||
|
// Should be a value from 0 to 1.0 where smaller
|
||||||
|
// values mean peaks have less influence.
|
||||||
|
|
||||||
|
// Configure spinner decay, i.e. how much it slows down. This should
|
||||||
|
// be a value from 0 to 1 where smaller values cause the spinner to
|
||||||
|
// slow down faster.
|
||||||
|
#define DECAY 0.66
|
||||||
|
|
||||||
|
// Debounce times for peak detection and button presses.
|
||||||
|
// You probably don't need to change these.
|
||||||
|
#define PEAK_DEBOUNCE_MS 500
|
||||||
|
#define BUTTON_DEBOUNCE_MS 20
|
||||||
|
|
||||||
|
// Define combinations of colors. Each combo has a primary and secondary color
|
||||||
|
// that are defined as 24-bit RGB values (like HTML colors, set them using hex
|
||||||
|
// values). First define a struct to specify the types colors. Then define
|
||||||
|
// the list of color combos. If you want to change color combos (like add or
|
||||||
|
// remove them, skip down to the colors[] array below and change it.
|
||||||
|
typedef struct {
|
||||||
|
uint32_t primary;
|
||||||
|
uint32_t secondary;
|
||||||
|
} colorCombo;
|
||||||
|
// Add or remove color combos here:
|
||||||
|
colorCombo colors[] = {
|
||||||
|
// Each color combo has the following form:
|
||||||
|
// { .primary = 24-bit RGB color (use hex), .secondary = 24-bit RGB color },
|
||||||
|
// Make sure each combo ends in a comma EXCEPT for the last one!
|
||||||
|
{ .primary = 0xFF0000, .secondary = 0x000000 }, // Red to black
|
||||||
|
{ .primary = 0x00FF00, .secondary = 0x000000 }, // Green to black
|
||||||
|
{ .primary = 0x0000FF, .secondary = 0x000000 }, // Blue to black
|
||||||
|
{ .primary = 0xFF0000, .secondary = 0x00FF00 }, // Red to green
|
||||||
|
{ .primary = 0xFF0000, .secondary = 0x0000FF }, // Red to blue
|
||||||
|
{ .primary = 0x00FF00, .secondary = 0x0000FF } // Green to blue
|
||||||
|
};
|
||||||
|
|
||||||
|
// Uncomment this to output a stream of debug information
|
||||||
|
// from the accelerometer and peak detector. Use the serial
|
||||||
|
// plotter to view the graph of these 4 values:
|
||||||
|
// - Accelerometer y axis value (in m/s^2)
|
||||||
|
// - Peak detector filtered y axis average
|
||||||
|
// - Peak detector filtered y axis standard deviation
|
||||||
|
// - Peak detector result, 0=no peak 1=positive peak, -1=negative peak
|
||||||
|
#define DEBUG
|
||||||
|
|
||||||
|
|
||||||
|
// Global state used by the sketch (you don't need to change this):
|
||||||
|
PeakDetector peakDetector(LAG, THRESHOLD, INFLUENCE);
|
||||||
|
FidgetSpinner fidgetSpinner(DECAY);
|
||||||
|
uint32_t lastMS = millis();
|
||||||
|
uint32_t peakDebounce = 0;
|
||||||
|
uint32_t buttonDebounce = 0;
|
||||||
|
bool lastButton1;
|
||||||
|
bool lastButton2;
|
||||||
|
int currentAnimation = 0;
|
||||||
|
int currentColor = 0;
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// Initialize serial output for debugging and plotting.
|
||||||
|
Serial.begin(115200);
|
||||||
|
// Initialize Circuit Playground library and set accelerometer
|
||||||
|
// to its widest +/-16G range.
|
||||||
|
CircuitPlayground.begin(BRIGHTNESS);
|
||||||
|
CircuitPlayground.setAccelRange(LIS3DH_RANGE_16_G);
|
||||||
|
// Initialize starting button state.
|
||||||
|
lastButton1 = CircuitPlayground.leftButton();
|
||||||
|
lastButton2 = CircuitPlayground.rightButton();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Update time since last loop call.
|
||||||
|
uint32_t currentMS = millis();
|
||||||
|
uint32_t deltaMS = currentMS - lastMS; // Time in milliseconds.
|
||||||
|
float deltaS = deltaMS / 1000.0; // Time in seconds.
|
||||||
|
lastMS = currentMS;
|
||||||
|
|
||||||
|
// Grab the current accelerometer axis value and look for a sudden peak.
|
||||||
|
float accel = AXIS;
|
||||||
|
int result = peakDetector.detect(accel);
|
||||||
|
|
||||||
|
// If in debug mode, print out the current acceleration and peak detector
|
||||||
|
// state (average, standard deviation, and peak result). Use the serial
|
||||||
|
// plotter to view this over time.
|
||||||
|
#ifdef DEBUG
|
||||||
|
Serial.print(accel);
|
||||||
|
Serial.print(",");
|
||||||
|
Serial.print(peakDetector.getAvg());
|
||||||
|
Serial.print(",");
|
||||||
|
Serial.print(peakDetector.getStd());
|
||||||
|
Serial.print(",");
|
||||||
|
Serial.println(result);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// If there was a peak and enough time has elapsed since the last peak
|
||||||
|
// (i.e. to 'debounce' the noisey peak signal a bit) then start the spinner
|
||||||
|
// moving at a velocity proportional to the accelerometer value.
|
||||||
|
if ((result != 0) && (currentMS >= peakDebounce)) {
|
||||||
|
peakDebounce = currentMS + PEAK_DEBOUNCE_MS;
|
||||||
|
// Invert accel because accelerometer axis positive/negative is flipped
|
||||||
|
// with respect to pixel positive/negative movement.
|
||||||
|
if (INVERT_AXIS) {
|
||||||
|
fidgetSpinner.spin(-accel);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fidgetSpinner.spin(accel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if enough time has passed to test for button releases.
|
||||||
|
if (currentMS >= buttonDebounce) {
|
||||||
|
buttonDebounce = currentMS + BUTTON_DEBOUNCE_MS;
|
||||||
|
// Check if any button was released. I.e. the last known button
|
||||||
|
// state was pressed (true) and the current state is released (false).
|
||||||
|
bool button1 = CircuitPlayground.leftButton();
|
||||||
|
bool button2 = CircuitPlayground.rightButton();
|
||||||
|
if (!button1 && lastButton1) {
|
||||||
|
// Button 1 released!
|
||||||
|
// Change to the next animation (looping back to start after 3 since
|
||||||
|
// there are 4 total animations).
|
||||||
|
currentAnimation = (currentAnimation + 1) % 4;
|
||||||
|
}
|
||||||
|
if (!button2 && lastButton2) {
|
||||||
|
// Button 2 released!
|
||||||
|
// Change to the next color index.
|
||||||
|
currentColor = (currentColor + 1) % (sizeof(colors)/sizeof(colorCombo));
|
||||||
|
}
|
||||||
|
lastButton1 = button1;
|
||||||
|
lastButton2 = button2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update the spinner position and draw the current animation frame.
|
||||||
|
float pos = fidgetSpinner.getPosition(deltaS);
|
||||||
|
switch (currentAnimation) {
|
||||||
|
case 0:
|
||||||
|
// Single dot.
|
||||||
|
animateDots(pos, 1);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
// Two opposite dots.
|
||||||
|
animateDots(pos, 2);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
// Sine wave with one peak.
|
||||||
|
animateSine(pos, 1.0);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
// Sine wave with two peaks.
|
||||||
|
animateSine(pos, 2.0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Helper functions:
|
||||||
|
void fillPixels(const uint32_t color) {
|
||||||
|
// Set all the pixels on CircuitPlayground to the specified color.
|
||||||
|
for (int i=0; i<CircuitPlayground.strip.numPixels();++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
float constrainPosition(const float pos) {
|
||||||
|
// Take a continuous positive or negative value and map it to its relative positon
|
||||||
|
// within the range 0...<10 (so it's valid as an index to CircuitPlayground pixel
|
||||||
|
// position).
|
||||||
|
float result = fmod(pos, CircuitPlayground.strip.numPixels());
|
||||||
|
if (result < 0.0) {
|
||||||
|
result += CircuitPlayground.strip.numPixels();
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
float lerp(const float x, const float x0, const float x1, const float y0, const float y1) {
|
||||||
|
// Linear interpolation of value y within y0...y1 given x and range x0...x1.
|
||||||
|
return y0 + (x-x0)*((y1-y0)/(x1-x0));
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t primaryColor() {
|
||||||
|
return colors[currentColor].primary;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t secondaryColor() {
|
||||||
|
return colors[currentColor].secondary;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t colorLerp(const float x, const float x0, const float x1, const uint32_t c0, const uint32_t c1) {
|
||||||
|
// Perform linear interpolation of 24-bit RGB color values.
|
||||||
|
// Will return a color within the range of c0...c1 proportional to the value x within x0...x1.
|
||||||
|
uint8_t r0 = (c0 >> 16) & 0xFF;
|
||||||
|
uint8_t g0 = (c0 >> 8) & 0xFF;
|
||||||
|
uint8_t b0 = c0 & 0xFF;
|
||||||
|
uint8_t r1 = (c1 >> 16) & 0xFF;
|
||||||
|
uint8_t g1 = (c1 >> 8) & 0xFF;
|
||||||
|
uint8_t b1 = c1 & 0xFF;
|
||||||
|
uint32_t r = int(lerp(x, x0, x1, r0, r1));
|
||||||
|
uint32_t g = int(lerp(x, x0, x1, g0, g1));
|
||||||
|
uint32_t b = int(lerp(x, x0, x1, b0, b1));
|
||||||
|
return (r << 16) | (g << 8) | b;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Animation functions:
|
||||||
|
void animateDots(float pos, int count) {
|
||||||
|
// Simple discrete dot animation. Spins dots around the board based on the specified
|
||||||
|
// spinner position. Count specifies how many dots to display, each one equally spaced
|
||||||
|
// around the pixels (in practice any count that 10 isn't evenly divisible by will look odd).
|
||||||
|
// Count should be from 1 to 10 (inclusive)!
|
||||||
|
fillPixels(secondaryColor());
|
||||||
|
// Compute each dot's position and turn on the appropriate pixel.
|
||||||
|
for (int i=0; i<count; ++i) {
|
||||||
|
float dotPos = constrainPosition(pos + i*(float(CircuitPlayground.strip.numPixels())/float(count)));
|
||||||
|
CircuitPlayground.strip.setPixelColor(int(dotPos), primaryColor());
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
void animateSine(float pos, float frequency) {
|
||||||
|
// Smooth sine wave animation. Sweeps a sine wave of primary to secondary color around
|
||||||
|
// the board pixels based on the specified spinner position.
|
||||||
|
// Compute phase based on spinner position. As the spinner position changes the phase will
|
||||||
|
// move the sine wave around the pixels.
|
||||||
|
float phase = 2.0*PI*(constrainPosition(pos)/10.0);
|
||||||
|
for (int i=0; i<CircuitPlayground.strip.numPixels();++i) {
|
||||||
|
// Use a sine wave to compute the value of each pixel based on its position for time
|
||||||
|
// (and offset by the global phase that depends on fidget spinner position).
|
||||||
|
float x = sin(2.0*PI*frequency*(i/10.0)+phase);
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, colorLerp(x, -1.0, 1.0, primaryColor(), secondaryColor()));
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
@ -0,0 +1,122 @@
|
|||||||
|
// Signal peak detector using smoothed z-score algorithm.
|
||||||
|
// Detects when a continuous signal has a significant peak in values. Based on
|
||||||
|
// algorithm from the answer here:
|
||||||
|
// https://stackoverflow.com/questions/22583391/peak-signal-detection-in-realtime-timeseries-data/22640362#22640362
|
||||||
|
// Author: Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
// Usage:
|
||||||
|
// - Create an instance of the PeakDetector class and configure its lag, threshold,
|
||||||
|
// and influence. These likely need to be adjust to fit your dataset. See the
|
||||||
|
// Stack Overflow question above for more details on their meaning.
|
||||||
|
// - Continually call detect and feed it a new sample value. Detect will return 0
|
||||||
|
// if no peak was detected, 1 if a positive peak was detected and -1 if a negative
|
||||||
|
// peak was detected.
|
||||||
|
#ifndef PEAKDETECTOR_H
|
||||||
|
#define PEAKDETECTOR_H
|
||||||
|
|
||||||
|
class PeakDetector {
|
||||||
|
public:
|
||||||
|
PeakDetector(const int lag=5, const float threshold=3.5, const float influence=0.5):
|
||||||
|
_lag(lag), _threshold(threshold), _influence(influence), _avg(0.0), _std(0.0), _primed(false), _index(0)
|
||||||
|
{
|
||||||
|
// Allocate memory for last samples (used during averaging) and set them all to zero.
|
||||||
|
_filtered = new float[lag];
|
||||||
|
for (int i=0; i<lag; ++i) {
|
||||||
|
_filtered[i] = 0.0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
~PeakDetector() {
|
||||||
|
// Deallocate memory for samples.
|
||||||
|
if (_filtered != NULL) {
|
||||||
|
delete[] _filtered;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int detect(float sample) {
|
||||||
|
// Detect if the provided sample is a positive or negative peak.
|
||||||
|
// Will return 0 if no peak detected, 1 if a positive peak and -1
|
||||||
|
// if a negative peak.
|
||||||
|
int result = 0;
|
||||||
|
// Fill up filtered samples if not yet primed with enough available samples.
|
||||||
|
if (_primed && (abs(sample-_avg) > (_threshold*_std))) {
|
||||||
|
// Detected a peak!
|
||||||
|
// Determine type of peak, positive or negative.
|
||||||
|
if (sample > _avg) {
|
||||||
|
result = 1;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
result = -1;
|
||||||
|
}
|
||||||
|
// Save this sample but scaled down based on influence.
|
||||||
|
_filtered[_index] = (_influence*sample) + ((1.0-_influence)*_filtered[_previousIndex()]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Did not detect a peak, or not yet primed with enough samples.
|
||||||
|
// Just record this sample and move on.
|
||||||
|
_filtered[_index] = sample;
|
||||||
|
}
|
||||||
|
// Increment index of next filtered sample.
|
||||||
|
_incrementIndex();
|
||||||
|
// When primed update the average and standard deviation of the most recent
|
||||||
|
// filtered values.
|
||||||
|
if (_primed) {
|
||||||
|
// Compute mean of filtered values.
|
||||||
|
_avg = 0.0;
|
||||||
|
for (int i=0; i<_lag; ++i) {
|
||||||
|
_avg += _filtered[i];
|
||||||
|
}
|
||||||
|
_avg = _avg/float(_lag);
|
||||||
|
// Compute standard deviation of filtered values.
|
||||||
|
_std = 0.0;
|
||||||
|
for (int i=0; i<_lag; ++i) {
|
||||||
|
_std += pow(_filtered[i]-_avg, 2.0);
|
||||||
|
}
|
||||||
|
_std = sqrt(_std/float(_lag));
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
float getAvg() {
|
||||||
|
// Return the current signal average, useful for debugging.
|
||||||
|
return _avg;
|
||||||
|
}
|
||||||
|
|
||||||
|
float getStd() {
|
||||||
|
// Return the current signal standard deviation, useful for debugging.
|
||||||
|
return _std;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
float _lag;
|
||||||
|
float _threshold;
|
||||||
|
float _influence;
|
||||||
|
float* _filtered;
|
||||||
|
float _avg;
|
||||||
|
float _std;
|
||||||
|
bool _primed;
|
||||||
|
int _index;
|
||||||
|
|
||||||
|
void _incrementIndex() {
|
||||||
|
// Increment the index of the current sample.
|
||||||
|
_index += 1;
|
||||||
|
if (_index >= _lag) {
|
||||||
|
// Loop back to start of sample buffer when full, but be sure to note
|
||||||
|
// when this happens to indicate we are primed with enough samples.
|
||||||
|
_index = 0;
|
||||||
|
_primed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int _previousIndex() {
|
||||||
|
// Find the index of the last sample.
|
||||||
|
int result = _index-1;
|
||||||
|
if (result < 0) {
|
||||||
|
result = _lag-1;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@ -0,0 +1,23 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
float X, Y, Z;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
X = CircuitPlayground.motionX();
|
||||||
|
Y = CircuitPlayground.motionY();
|
||||||
|
Z = CircuitPlayground.motionZ();
|
||||||
|
|
||||||
|
Serial.print("X: ");
|
||||||
|
Serial.print(X);
|
||||||
|
Serial.print(" Y: ");
|
||||||
|
Serial.print(Y);
|
||||||
|
Serial.print(" Z: ");
|
||||||
|
Serial.println(Z);
|
||||||
|
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
CircuitPlayground.redLED(HIGH);
|
||||||
|
delay(500);
|
||||||
|
CircuitPlayground.redLED(LOW);
|
||||||
|
delay(500);
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
bool leftButtonPressed;
|
||||||
|
bool rightButtonPressed;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
leftButtonPressed = CircuitPlayground.leftButton();
|
||||||
|
rightButtonPressed = CircuitPlayground.rightButton();
|
||||||
|
|
||||||
|
Serial.print("Left Button: ");
|
||||||
|
if (leftButtonPressed) {
|
||||||
|
Serial.print("DOWN");
|
||||||
|
} else {
|
||||||
|
Serial.print(" UP");
|
||||||
|
}
|
||||||
|
Serial.print(" Right Button: ");
|
||||||
|
if (rightButtonPressed) {
|
||||||
|
Serial.print("DOWN");
|
||||||
|
} else {
|
||||||
|
Serial.print(" UP");
|
||||||
|
}
|
||||||
|
Serial.println();
|
||||||
|
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
int value;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
value = CircuitPlayground.lightSensor();
|
||||||
|
|
||||||
|
Serial.print("Light Sensor: ");
|
||||||
|
Serial.println(value);
|
||||||
|
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,25 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
|
||||||
|
delay(500);
|
||||||
|
|
||||||
|
CircuitPlayground.setPixelColor(0, 255, 0, 0);
|
||||||
|
CircuitPlayground.setPixelColor(1, 128, 128, 0);
|
||||||
|
CircuitPlayground.setPixelColor(2, 0, 255, 0);
|
||||||
|
CircuitPlayground.setPixelColor(3, 0, 128, 128);
|
||||||
|
CircuitPlayground.setPixelColor(4, 0, 0, 255);
|
||||||
|
|
||||||
|
CircuitPlayground.setPixelColor(5, 0xFF0000);
|
||||||
|
CircuitPlayground.setPixelColor(6, 0x808000);
|
||||||
|
CircuitPlayground.setPixelColor(7, 0x00FF00);
|
||||||
|
CircuitPlayground.setPixelColor(8, 0x008080);
|
||||||
|
CircuitPlayground.setPixelColor(9, 0x0000FF);
|
||||||
|
|
||||||
|
delay(5000);
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
bool slideSwitch;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
slideSwitch = CircuitPlayground.slideSwitch();
|
||||||
|
|
||||||
|
Serial.print("Slide Switch: ");
|
||||||
|
if (slideSwitch) {
|
||||||
|
Serial.print("+");
|
||||||
|
} else {
|
||||||
|
Serial.print("-");
|
||||||
|
}
|
||||||
|
Serial.println();
|
||||||
|
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
float value;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Take 10 milliseconds of sound data to calculate
|
||||||
|
value = CircuitPlayground.mic.soundPressureLevel(10);
|
||||||
|
|
||||||
|
Serial.print("Sound Sensor SPL: ");
|
||||||
|
Serial.println(value);
|
||||||
|
|
||||||
|
delay(90);
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
CircuitPlayground.playTone(500, 100);
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
float tempC, tempF;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
tempC = CircuitPlayground.temperature();
|
||||||
|
tempF = CircuitPlayground.temperatureF();
|
||||||
|
|
||||||
|
Serial.print("tempC: ");
|
||||||
|
Serial.print(tempC);
|
||||||
|
Serial.print(" tempF: ");
|
||||||
|
Serial.println(tempF);
|
||||||
|
|
||||||
|
delay(1000);
|
||||||
|
}
|
@ -0,0 +1,84 @@
|
|||||||
|
# Hello Circuit Playground
|
||||||
|
A set of very basic example sketches to demonstrate the various components
|
||||||
|
of the [Circuit Playground](https://www.adafruit.com/products/3000).
|
||||||
|
These sketches were tested and verified with:
|
||||||
|
* Circuit Playground Developer Edition
|
||||||
|
* Ubuntu 16.04 LTS
|
||||||
|
* Arduino IDE 1.6.11
|
||||||
|
* Adafruit AVR Boards 1.4.9
|
||||||
|
* Adafruit Circuit Playground Library 1.6.1
|
||||||
|
|
||||||
|
## Hello_Blink
|
||||||
|
Blinks the little red LED next to the micro USB connector once per second.
|
||||||
|
|
||||||
|
## Hello_SlideSwitch
|
||||||
|
The position (+ or -) of the slide switch is sent to the serial monitor once
|
||||||
|
per second.
|
||||||
|
```
|
||||||
|
Slide Switch: -
|
||||||
|
Slide Switch: +
|
||||||
|
Slide Switch: +
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_Buttons
|
||||||
|
The position (UP or DOWN) of the two push buttons are sent to the serial
|
||||||
|
monitor once per second.
|
||||||
|
```
|
||||||
|
Left Button: UP Right Button: UP
|
||||||
|
Left Button: DOWN Right Button: UP
|
||||||
|
Left Button: UP Right Button: UP
|
||||||
|
Left Button: UP Right Button: DOWN
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_LightSensor
|
||||||
|
The reading (0-1023) from the light sensor is sent to the serial monitor once
|
||||||
|
per second.
|
||||||
|
```
|
||||||
|
Light Sensor: 962
|
||||||
|
Light Sensor: 954
|
||||||
|
Light Sensor: 275
|
||||||
|
Light Sensor: 192
|
||||||
|
Light Sensor: 688
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_Temperature
|
||||||
|
The temperature is sent to the serial monitor once per second.
|
||||||
|
```
|
||||||
|
tempC: 28.25 tempF: 83.02
|
||||||
|
tempC: 29.71 tempF: 85.64
|
||||||
|
tempC: 30.72 tempF: 87.30
|
||||||
|
tempC: 31.85 tempF: 89.32
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_Accelerometer
|
||||||
|
The readings (in m/s<sup>2</sup>) from the 3 axes of the accelerometer are sent
|
||||||
|
to the serial monitor once per second. (1G ~= 9.8 m/s<sup>2</sup>)
|
||||||
|
```
|
||||||
|
X: -0.33 Y: 2.41 Z: 9.40
|
||||||
|
X: -1.25 Y: 4.20 Z: 1.86
|
||||||
|
X: -7.95 Y: -3.50 Z: -2.47
|
||||||
|
X: 0.11 Y: -8.38 Z: 2.25
|
||||||
|
X: -2.28 Y: 2.73 Z: 9.10
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_SoundSensor
|
||||||
|
The reading (0-1023) from the sound sensor (microphone) is sent to the serial
|
||||||
|
monitor once per second.
|
||||||
|
```
|
||||||
|
Sound Sensor: 339
|
||||||
|
Sound Sensor: 339
|
||||||
|
Sound Sensor: 1023
|
||||||
|
Sound Sensor: 10
|
||||||
|
Sound Sensor: 15
|
||||||
|
Sound Sensor: 1023
|
||||||
|
Sound Sensor: 336
|
||||||
|
```
|
||||||
|
|
||||||
|
## Hello_Speaker
|
||||||
|
Plays a 500Hz tone for 0.1 seconds on the speaker, followed by 1 second of
|
||||||
|
silence.
|
||||||
|
|
||||||
|
## Hello_NeoPixels
|
||||||
|
Clears all pixels for 0.5 seconds then displays colors on the fist 5 pixels
|
||||||
|
using individual 8-bit values and the same colors on the next 5 pixels using
|
||||||
|
24-bit values. After 5 seconds, this repeats.
|
@ -0,0 +1,163 @@
|
|||||||
|
/* Infrared_NeoPixel.ino Example sketch for IRLib2 and Circuit Playground Express
|
||||||
|
Illustrates how to change NeoPixel patterns and colors using
|
||||||
|
an IR remote. Programmed to use IR codes for Adafruit mini remote
|
||||||
|
https://www.adafruit.com/product/389
|
||||||
|
Press the following keys on the remote:
|
||||||
|
vol- decrease brightness
|
||||||
|
vol+ increase brightness
|
||||||
|
right arrow rotate clockwise
|
||||||
|
left arrow rotate counterclockwise
|
||||||
|
up arrow rotate faster
|
||||||
|
down arrow rotate slower
|
||||||
|
0 rainbow pattern
|
||||||
|
1 candy cane pattern
|
||||||
|
2 one red pixel
|
||||||
|
3 decreased solid colors
|
||||||
|
4 increase solid colors
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include "adafruit_mini_codes.h"
|
||||||
|
|
||||||
|
#if !defined(ARDUINO_SAMD_CIRCUITPLAYGROUND_EXPRESS)
|
||||||
|
#error "Infrared support is only for the Circuit Playground Express, it doesn't work with the Classic version"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
//Pattern numbers
|
||||||
|
#define RAINBOW 0
|
||||||
|
#define CANDY_CANE 1
|
||||||
|
#define JUST_ONE 2
|
||||||
|
#define MONOCHROME 3
|
||||||
|
|
||||||
|
uint8_t i,j,Phase, Pattern;
|
||||||
|
int8_t Direction, Mono;
|
||||||
|
int16_t Bright, Speed;
|
||||||
|
|
||||||
|
void Show_Pattern(void) {
|
||||||
|
CircuitPlayground.setBrightness(Bright);
|
||||||
|
for(i=0;i<11;i++) {
|
||||||
|
j= (20+i+Phase*Direction) % 10;
|
||||||
|
switch (Pattern) {
|
||||||
|
case RAINBOW:
|
||||||
|
CircuitPlayground.setPixelColor(j, CircuitPlayground.colorWheel(25*i));
|
||||||
|
break;
|
||||||
|
case CANDY_CANE:
|
||||||
|
if((i % 5)<2) {
|
||||||
|
CircuitPlayground.setPixelColor(j, 255,0,0);
|
||||||
|
} else {
|
||||||
|
CircuitPlayground.setPixelColor(j, 255,255,255);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case JUST_ONE:
|
||||||
|
if(i<2) {
|
||||||
|
CircuitPlayground.setPixelColor(j, 255,0,0);
|
||||||
|
} else {
|
||||||
|
CircuitPlayground.setPixelColor(j, 0,0,0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case MONOCHROME:
|
||||||
|
CircuitPlayground.setPixelColor(i, CircuitPlayground.colorWheel(25*Mono));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); // Start the receiver
|
||||||
|
Bright=8; Phase=0; Pattern=2; Direction=1; Speed=300;
|
||||||
|
Mono=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// First up, display whatever neopixel patterm we're doing
|
||||||
|
Show_Pattern();
|
||||||
|
|
||||||
|
// a small pause
|
||||||
|
delay(Speed);
|
||||||
|
|
||||||
|
// go to next phase next time
|
||||||
|
Phase++;
|
||||||
|
if (Phase >= 10) {
|
||||||
|
Phase = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Did we get any infrared signals?
|
||||||
|
if (! CircuitPlayground.irReceiver.getResults()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Did we get any decodable messages?
|
||||||
|
if (! CircuitPlayground.irDecoder.decode()) {
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); // Restart receiver
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// We can print out the message if we want...
|
||||||
|
CircuitPlayground.irDecoder.dumpResults(false);
|
||||||
|
|
||||||
|
// Did we get any NEC remote messages?
|
||||||
|
if (! CircuitPlayground.irDecoder.protocolNum == NEC) {
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); // Restart receiver
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// What message did we get?
|
||||||
|
switch(CircuitPlayground.irDecoder.value) {
|
||||||
|
case ADAF_MINI_0_10_PLUS:
|
||||||
|
Serial.println("Rainbow mode!");
|
||||||
|
Pattern = RAINBOW;
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_1:
|
||||||
|
Serial.println("Candy Cane mode!");
|
||||||
|
Pattern = CANDY_CANE;
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_2:
|
||||||
|
Serial.println("Just One mode!");
|
||||||
|
Pattern = JUST_ONE;
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_3:
|
||||||
|
Serial.println("Monochrome mode, less");
|
||||||
|
Pattern = MONOCHROME;
|
||||||
|
Mono--;
|
||||||
|
if (Mono < 0) {
|
||||||
|
Mono = 9;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_4:
|
||||||
|
Serial.println("Monochrome mode, more");
|
||||||
|
Pattern = MONOCHROME;
|
||||||
|
Mono++;
|
||||||
|
if (Mono > 9) {
|
||||||
|
Mono = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_LEFT_ARROW:
|
||||||
|
Serial.println("Counter-Clockwise");
|
||||||
|
Direction = 1;
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_RIGHT_ARROW:
|
||||||
|
Serial.println("Clockwise");
|
||||||
|
Direction = -1;
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_VOLUME_UP:
|
||||||
|
Serial.println("Brighter");
|
||||||
|
Bright = min(255, Bright+2);
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_VOLUME_DOWN:
|
||||||
|
Serial.println("Dimmer");
|
||||||
|
Bright = max(0, Bright-2);
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_UP_ARROW:
|
||||||
|
Serial.println("Faster");
|
||||||
|
Speed = max(50, Speed-50);
|
||||||
|
break;
|
||||||
|
case ADAF_MINI_DOWN_ARROW:
|
||||||
|
Serial.println("Slower");
|
||||||
|
Speed = min(2000, Speed+50);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
//Restart receiver
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn();
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
IR codes for Adafruit mini remote
|
||||||
|
https://www.adafruit.com/product/389
|
||||||
|
Uses NEC protocol
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define ADAF_MINI_VOLUME_DOWN 0xfd00ff
|
||||||
|
#define ADAF_MINI_PLAY_PAUSE 0xfd807f
|
||||||
|
#define ADAF_MINI_VOLUME_UP 0xfd40bf
|
||||||
|
#define ADAF_MINI_SETUP 0xfd20df
|
||||||
|
#define ADAF_MINI_UP_ARROW 0xfda05f
|
||||||
|
#define ADAF_MINI_STOP_MODE 0xfd609f
|
||||||
|
#define ADAF_MINI_LEFT_ARROW 0xfd10ef
|
||||||
|
#define ADAF_MINI_ENTER_SAVE 0xfd906f
|
||||||
|
#define ADAF_MINI_RIGHT_ARROW 0xfd50af
|
||||||
|
#define ADAF_MINI_0_10_PLUS 0xfd30cf
|
||||||
|
#define ADAF_MINI_DOWN_ARROW 0xfdb04f
|
||||||
|
#define ADAF_MINI_REPEAT 0xfd708f
|
||||||
|
#define ADAF_MINI_1 0xfd08f7
|
||||||
|
#define ADAF_MINI_2 0xfd8877
|
||||||
|
#define ADAF_MINI_3 0xfd48b7
|
||||||
|
#define ADAF_MINI_4 0xfd28d7
|
||||||
|
#define ADAF_MINI_5 0xfda857
|
||||||
|
#define ADAF_MINI_6 0xfd6897
|
||||||
|
#define ADAF_MINI_7 0xfd18e7
|
||||||
|
#define ADAF_MINI_8 0xfd9867
|
||||||
|
#define ADAF_MINI_9 0xfd58a7
|
||||||
|
|
@ -0,0 +1,29 @@
|
|||||||
|
/* Infrared_Read.ino Example sketch for IRLib2 and Circuit Playground Express
|
||||||
|
Illustrates how to receive an IR signal, decode it and print
|
||||||
|
information about it to the serial monitor.
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
#if !defined(ARDUINO_SAMD_CIRCUITPLAYGROUND_EXPRESS)
|
||||||
|
#error "Infrared support is only for the Circuit Playground Express, it doesn't work with the Classic version"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
Serial.begin(9600);
|
||||||
|
|
||||||
|
while (!Serial); // Wait until serial console is opened
|
||||||
|
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); // Start the receiver
|
||||||
|
Serial.println("Ready to receive IR signals");
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
//Continue looping until you get a complete signal received
|
||||||
|
if (CircuitPlayground.irReceiver.getResults()) {
|
||||||
|
CircuitPlayground.irDecoder.decode(); //Decode it
|
||||||
|
CircuitPlayground.irDecoder.dumpResults(false); //Now print results. Use false for less detail
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); //Restart receiver
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
/* Infrared_Record.ino Example sketch for IRLib2 and Circuit Playground Express
|
||||||
|
Illustrates how to receive an IR signal, decode and save it.
|
||||||
|
Then retransmit it whenever you push the left pushbutton.
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
#if !defined(ARDUINO_SAMD_CIRCUITPLAYGROUND_EXPRESS)
|
||||||
|
#error "Infrared support is only for the Circuit Playground Express, it doesn't work with the Classic version"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* IR signals consist of a protocol number, a value, and a number of bits.
|
||||||
|
* Store all of these values for future use.
|
||||||
|
*/
|
||||||
|
uint8_t IR_protocol;
|
||||||
|
uint32_t IR_value;
|
||||||
|
uint16_t IR_bits;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
while (!Serial);
|
||||||
|
Serial.println("Send an IR signal and I will record it.");
|
||||||
|
Serial.println("Press the left button and we will retransmit it.");
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); // Start the receiver
|
||||||
|
IR_protocol=0; // Indicates we've not received a code yet
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
/* Receiver will look for a signal and when wa complete frame of data
|
||||||
|
* has been received, getResults() returns true. Once that happens,
|
||||||
|
* the receiver stops reccording so you will need to restart it
|
||||||
|
* after you have processed the data.
|
||||||
|
*/
|
||||||
|
if(CircuitPlayground.irReceiver.getResults()) {
|
||||||
|
//attempt to decode it
|
||||||
|
if(CircuitPlayground.irDecoder.decode()) {
|
||||||
|
Serial.println("IR decoded");
|
||||||
|
//Print the results. Change parameter to "true" for verbose output.
|
||||||
|
CircuitPlayground.irDecoder.dumpResults(false);
|
||||||
|
Serial.println("Saving results. Press left button to retransmit.");
|
||||||
|
IR_protocol=CircuitPlayground.irDecoder.protocolNum;
|
||||||
|
IR_value= CircuitPlayground.irDecoder.value;
|
||||||
|
IR_bits= CircuitPlayground.irDecoder.bits;
|
||||||
|
}
|
||||||
|
CircuitPlayground.irReceiver.enableIRIn(); //Restart receiver
|
||||||
|
}
|
||||||
|
|
||||||
|
/* If the left button is pressed and we have received a code
|
||||||
|
* retransmit it using the sender.
|
||||||
|
*/
|
||||||
|
if (CircuitPlayground.leftButton()) {
|
||||||
|
Serial.println("Left button pressed!");
|
||||||
|
if(IR_protocol) {
|
||||||
|
CircuitPlayground.irSend.send(IR_protocol, IR_value, IR_bits);
|
||||||
|
Serial.println("Sending recorded IR signal");
|
||||||
|
Serial.print("Protocol:"); Serial.print(IR_protocol,DEC);
|
||||||
|
Serial.print(" Value:0x"); Serial.print(IR_value,HEX);
|
||||||
|
Serial.print(" Bits:"); Serial.println(IR_bits,DEC);
|
||||||
|
} else {
|
||||||
|
Serial.println("No signal saved yet.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
/* Infrared_Send.ino Example sketch for IRLib2 and Circuit Playground Express
|
||||||
|
Illustrates how to transmit an IR signal whenever you do push one of the
|
||||||
|
built-in pushbuttons.
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
#if !defined(ARDUINO_SAMD_CIRCUITPLAYGROUND_EXPRESS)
|
||||||
|
#error "Infrared support is only for the Circuit Playground Express, it doesn't work with the Classic version"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
//Defines for a Samsung TV using NECx protocol
|
||||||
|
#define MY_PROTOCOL NECX
|
||||||
|
#define MY_BITS 32
|
||||||
|
#define MY_MUTE 0xE0E0F00F
|
||||||
|
#define MY_POWER 0xE0E040BF
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// If the left button is pressed send a mute code.
|
||||||
|
if (CircuitPlayground.leftButton()) {
|
||||||
|
CircuitPlayground.irSend.send(MY_PROTOCOL,MY_MUTE,MY_BITS);
|
||||||
|
while (CircuitPlayground.leftButton()) {}//wait until button released
|
||||||
|
}
|
||||||
|
// If the right button is pressed send a power code.
|
||||||
|
if (CircuitPlayground.rightButton()) {
|
||||||
|
CircuitPlayground.irSend.send(MY_PROTOCOL,MY_POWER,MY_BITS);
|
||||||
|
while (CircuitPlayground.rightButton()) {}//wait until button released
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,107 @@
|
|||||||
|
/* Infrared_Testpattern.ino Example sketch for IRLib2 and Circuit Playground Express
|
||||||
|
* Send an easily recognized pattern of bits from one Arduino
|
||||||
|
* to another to verify that your protocol is working. Load
|
||||||
|
* this sketch to send a signal. Use the "dump" sketch on the other
|
||||||
|
* Arduino to receive codes. Open the serial monitor and type the
|
||||||
|
* number Of the protocol want to test.
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
#if !defined(ARDUINO_SAMD_CIRCUITPLAYGROUND_EXPRESS)
|
||||||
|
#error "Infrared support is only for the Circuit Playground Express, it doesn't work with the Classic version"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
Serial.begin(9600);
|
||||||
|
while (!Serial); // Wait for serial console
|
||||||
|
|
||||||
|
Serial.println("Type the protocol number: 1-12 Or '-1' for all");
|
||||||
|
}
|
||||||
|
|
||||||
|
void sendOne(uint8_t protocol, uint32_t data, uint16_t data2 = 0, uint8_t khz = 0) {
|
||||||
|
Serial.print("Protocol #"); Serial.print(protocol, DEC);
|
||||||
|
Serial.print("\t"); Serial.print(Pnames(protocol));
|
||||||
|
Serial.print("\t data = 0x"); Serial.print(data, HEX);
|
||||||
|
|
||||||
|
if (data2) {
|
||||||
|
Serial.print("\t data2 = 0x"); Serial.print(data2, HEX);
|
||||||
|
Serial.print(" "); Serial.print(data2, DEC);
|
||||||
|
Serial.print(" dec");
|
||||||
|
}
|
||||||
|
if (khz) {
|
||||||
|
CircuitPlayground.irSend.send(protocol, data, data2, khz);
|
||||||
|
Serial.print(" khz="); Serial.println(khz,DEC);
|
||||||
|
} else {
|
||||||
|
CircuitPlayground.irSend.send(protocol, data, data2);
|
||||||
|
Serial.println();
|
||||||
|
}
|
||||||
|
delay(2000);
|
||||||
|
}
|
||||||
|
#define PATTERN1 0x12345678
|
||||||
|
#define ALL1S 0xFFFFFFFF
|
||||||
|
|
||||||
|
void doTest (uint8_t P) {
|
||||||
|
switch (P) {
|
||||||
|
case 1: sendOne(1,PATTERN1); //NEC Regular data
|
||||||
|
sendOne(1,REPEAT_CODE); //NEC Special ditto repeat code
|
||||||
|
sendOne(1,PATTERN1,40); //Pioneer is NEC with 40 kHz modulation
|
||||||
|
break;
|
||||||
|
case 2: sendOne(2,PATTERN1,12); //Sony 12 bits
|
||||||
|
sendOne(2,PATTERN1,15); //Sony 15 bits
|
||||||
|
sendOne(2,PATTERN1,20); //Sony 20 bits
|
||||||
|
break; //Note: Sony always sends three copies of signal
|
||||||
|
case 3: sendOne(3,ALL1S,13); //RC5
|
||||||
|
sendOne(3,ALL1S,14); //RC5-F7
|
||||||
|
sendOne(3,ALL1S,14,57); //RC5-F7-57
|
||||||
|
break;
|
||||||
|
case 4: sendOne(4,0x0ffff,20); //RC6-0-16 Original Phillips RC6
|
||||||
|
sendOne(4,0xcfffff,24); //RC6-6-20 Used by some Sky and Sky+ remotes
|
||||||
|
sendOne(4,0xcfffff,28); //RC6-6-24 a.k.a. "Replay" protocol
|
||||||
|
sendOne(4,ALL1S,32); //RC6-6-32 a.k.a. "MCE" protocol
|
||||||
|
break;
|
||||||
|
case 5: sendOne(5,ALL1S); //Panasonic_Old 22 bits used by some SA and Cisco cable boxes
|
||||||
|
break;
|
||||||
|
case 6: //JVC use "true" for first frame, "false" for repeats
|
||||||
|
//When "true" it automatically sends one repeat. Use "false"
|
||||||
|
//for additional repeats. The 2 lines below will actually send
|
||||||
|
//a total of 3 frames... A first and 2 repeats.
|
||||||
|
sendOne(6,PATTERN1,true);
|
||||||
|
sendOne(6,PATTERN1,false);
|
||||||
|
break;
|
||||||
|
case 7: sendOne(7,PATTERN1); //NECx used by many Samsung TVs
|
||||||
|
sendOne(7,REPEAT_CODE); //Some varieties use ditto
|
||||||
|
break;
|
||||||
|
case 8: sendOne(8,0x12345,0x1234);//Samsung36 16 bit address +20 data
|
||||||
|
break;
|
||||||
|
case 9: sendOne(9,PATTERN1); //G.I.Cable 16 bits with ditto repeat
|
||||||
|
sendOne(9,REPEAT_CODE); //This will report NEC if both protocols used
|
||||||
|
break;
|
||||||
|
case 10: sendOne(10,PATTERN1); //DirecTV default no repeat, 38 khz
|
||||||
|
sendOne(10,PATTERN1,true);//3rd parameter is repeat flag
|
||||||
|
sendOne(10,PATTERN1,false,40);//4th is khz, 38, 40, 57 are legal
|
||||||
|
break;
|
||||||
|
case 11: sendOne(11,ALL1S,12); //RCMM Phillips protocol used by U-Verse
|
||||||
|
sendOne(11,ALL1S,24); //also 24 or 32 bit possible
|
||||||
|
sendOne(11,ALL1S,32);
|
||||||
|
break;
|
||||||
|
case 12: sendOne(12,CYKM_MOUSE_MOVE+CYKM_DIR_RIGHT);//Move mouse right
|
||||||
|
sendOne(12,CYKM_MOUSE_MOVE+CYKM_DIR_UP); //Move mouse up
|
||||||
|
sendOne(12,CYKM_MOUSE_MOVE+CYKM_DIR_LEFT); //Move mouse left
|
||||||
|
sendOne(12,CYKM_MOUSE_MOVE+CYKM_DIR_DOWN); //Move mouse down
|
||||||
|
break;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
void loop() {
|
||||||
|
if (Serial.available () > 0) {
|
||||||
|
int16_t i = Serial.parseInt();
|
||||||
|
if(i==-1) {
|
||||||
|
for(i=1;i<=12;i++) {
|
||||||
|
doTest(i);
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
doTest(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,464 @@
|
|||||||
|
// Circuit Playground Birthday Candles
|
||||||
|
//
|
||||||
|
// All the NeoPixels will flicker like candles and the speaker will
|
||||||
|
// play the tune to Happy Birthday continuously. Blow on the board
|
||||||
|
// to slowly blow out all the candles and hear a victory song!
|
||||||
|
// Controls:
|
||||||
|
// - Slide switch: Move this to +/on to hear music or -/off to disable sound.
|
||||||
|
// - Left button: Hold this down and press reset to use a rainbow flicker color.
|
||||||
|
// - Right button: Hold this down and press reset to use a simple solid color (no flicker).
|
||||||
|
// - If neither left or right button are pressed at startup then a flame-like
|
||||||
|
// flickering animation will be used.
|
||||||
|
// After all the candles are blown out press reset to reset and start over!
|
||||||
|
//
|
||||||
|
// Author: Tony DiCola
|
||||||
|
// License: MIT (https://opensource.org/licenses/MIT)
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
// General configuration defines:
|
||||||
|
#define BREATH_THRESHOLD 92 // Peak to peak sound pressure level that
|
||||||
|
// determines if someone is blowing on the board.
|
||||||
|
// You can open the serial console to see the sound
|
||||||
|
// levels and adjust as necessary!
|
||||||
|
|
||||||
|
#define FLAME_LIFE_MS 200 // Amount of time (in milliseconds) that each
|
||||||
|
// candle flame takes to blow out. Increase this
|
||||||
|
// to make it harder/slower to blow them all out
|
||||||
|
// and decrease it to make it easier/faster.
|
||||||
|
|
||||||
|
#define FLAME_HUE 35 // Primary hue of the flame. This is a value in
|
||||||
|
// degrees from 0.0 to 360.0, see HSV color space
|
||||||
|
// for different hue values:
|
||||||
|
// https://en.wikipedia.org/wiki/HSL_and_HSV#/media/File:Hsl-hsv_models.svg
|
||||||
|
// The value 35 degrees is a nice orange in the
|
||||||
|
// middle of red and yellow hues that will look like
|
||||||
|
// a flame flickering as the hues animate.
|
||||||
|
// For the flicker effect the pixels will cycle
|
||||||
|
// around hues that are +/-10 degrees of this value.
|
||||||
|
// For the solid effect the pixels will be set
|
||||||
|
// to this hue (at full saturation and value).
|
||||||
|
// Rainbow effect ignores this hue config and
|
||||||
|
// cycles through all of them.
|
||||||
|
|
||||||
|
#define LIT_CANDLES 10 // The number of candles to start with lit. By
|
||||||
|
// default all 10 candles/pixels will be lit but
|
||||||
|
// adjust down to light less for a young kid's
|
||||||
|
// birthday.
|
||||||
|
|
||||||
|
// A few music note frequencies as defined in this tone example:
|
||||||
|
// https://www.arduino.cc/en/Tutorial/toneMelody
|
||||||
|
#define NOTE_C4 262
|
||||||
|
#define NOTE_CS4 277
|
||||||
|
#define NOTE_D4 294
|
||||||
|
#define NOTE_DS4 311
|
||||||
|
#define NOTE_E4 330
|
||||||
|
#define NOTE_F4 349
|
||||||
|
#define NOTE_FS4 370
|
||||||
|
#define NOTE_G4 392
|
||||||
|
#define NOTE_GS4 415
|
||||||
|
#define NOTE_A4 440
|
||||||
|
#define NOTE_AS4 466
|
||||||
|
#define NOTE_B4 494
|
||||||
|
#define NOTE_C5 523
|
||||||
|
#define NOTE_CS5 554
|
||||||
|
#define NOTE_D5 587
|
||||||
|
#define NOTE_DS5 622
|
||||||
|
#define NOTE_E5 659
|
||||||
|
#define NOTE_F5 698
|
||||||
|
#define NOTE_FS5 740
|
||||||
|
#define NOTE_G5 784
|
||||||
|
#define NOTE_GS5 831
|
||||||
|
#define NOTE_A5 880
|
||||||
|
#define NOTE_AS5 932
|
||||||
|
#define NOTE_B5 988
|
||||||
|
|
||||||
|
// Define note durations. You only need to adjust the whole note
|
||||||
|
// time and other notes will be subdivided from it directly.
|
||||||
|
#define WHOLE 2200 // Length of time in milliseconds of a whole note (i.e. a full bar).
|
||||||
|
#define HALF WHOLE/2
|
||||||
|
#define QUARTER HALF/2
|
||||||
|
#define EIGHTH QUARTER/2
|
||||||
|
#define EIGHTH_TRIPLE QUARTER/3
|
||||||
|
#define SIXTEENTH EIGHTH/2
|
||||||
|
|
||||||
|
// Color gamma correction table, this makes the hues of the NeoPixels
|
||||||
|
// a little more accurate by accounting for our eye's non-linear color
|
||||||
|
// sensitivity. See this great guide for more details:
|
||||||
|
// https://learn.adafruit.com/led-tricks-gamma-correction/the-issue
|
||||||
|
const uint8_t PROGMEM gamma8[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2,
|
||||||
|
2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5,
|
||||||
|
5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10,
|
||||||
|
10, 10, 11, 11, 11, 12, 12, 13, 13, 13, 14, 14, 15, 15, 16, 16,
|
||||||
|
17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 24, 24, 25,
|
||||||
|
25, 26, 27, 27, 28, 29, 29, 30, 31, 32, 32, 33, 34, 35, 35, 36,
|
||||||
|
37, 38, 39, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 50,
|
||||||
|
51, 52, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 66, 67, 68,
|
||||||
|
69, 70, 72, 73, 74, 75, 77, 78, 79, 81, 82, 83, 85, 86, 87, 89,
|
||||||
|
90, 92, 93, 95, 96, 98, 99,101,102,104,105,107,109,110,112,114,
|
||||||
|
115,117,119,120,122,124,126,127,129,131,133,135,137,138,140,142,
|
||||||
|
144,146,148,150,152,154,156,158,160,162,164,167,169,171,173,175,
|
||||||
|
177,180,182,184,186,189,191,193,196,198,200,203,205,208,210,213,
|
||||||
|
215,218,220,223,225,228,231,233,236,239,241,244,247,249,252,255 };
|
||||||
|
|
||||||
|
|
||||||
|
// Global program state.
|
||||||
|
int lit = LIT_CANDLES; // How many candles are still lit. Once all are extinguished this falls to -1.
|
||||||
|
float frequencies[10] = {0}; // Random frequencies and phases will be generated for each pixel to
|
||||||
|
float phases[10] = {0}; // define an organic but random looking flicker effect.
|
||||||
|
enum AnimationType { SOLID, FLICKER, RAINBOW }; // Which type of animation is currently running.
|
||||||
|
AnimationType animation = FLICKER;
|
||||||
|
|
||||||
|
|
||||||
|
// Play a note of the specified frequency and for the specified duration.
|
||||||
|
// Hold is an optional bool that specifies if this note should be held a
|
||||||
|
// little longer, i.e. for eigth notes that are tied together.
|
||||||
|
// While waiting for a note to play the waitBreath delay function is used
|
||||||
|
// so breath detection and pixel animation continues to run. No tones
|
||||||
|
// will play if the slide switch is in the -/off position or all the
|
||||||
|
// candles have been blown out.
|
||||||
|
void playNote(int frequency, int duration, bool hold=false, bool measure=true) {
|
||||||
|
// Check if the slide switch is off or the candles have been blown out
|
||||||
|
// and stop immediately without playing anything.
|
||||||
|
if (!CircuitPlayground.slideSwitch() || lit < 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (hold) {
|
||||||
|
// For a note that's held play it a little longer than the specified duration
|
||||||
|
// so it blends into the next tone (but there's still a small delay to
|
||||||
|
// hear the next note).
|
||||||
|
CircuitPlayground.playTone(frequency, duration + duration/32, false);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// For a note that isn't held just play it for the specified duration.
|
||||||
|
CircuitPlayground.playTone(frequency, duration, false);
|
||||||
|
}
|
||||||
|
// Use waitBreath instead of Arduino's delay because breath detection and
|
||||||
|
// pixel animation needs to occur while music plays. However skip this logic
|
||||||
|
// if not asked for (measure = false, only needed when playing celebration
|
||||||
|
// song so as to not continue waiting for breaths).
|
||||||
|
if (measure) {
|
||||||
|
waitBreath(duration + duration/16);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
delay(duration + duration/16);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delay for the specified number of milliseconds while at the same time
|
||||||
|
// listening for a continuous loud sound on from the microphone, i.e. someone
|
||||||
|
// blowing directly on it, and animating the NeoPixels. When a breath is detected
|
||||||
|
// the number of lit candles will gradually decrease. Once the number of lit
|
||||||
|
// candles hits zero then a celebration tune is played and everything stops.
|
||||||
|
void waitBreath(uint32_t milliseconds) {
|
||||||
|
float peakToPeak = measurePeak(milliseconds);
|
||||||
|
// Serial.println(peakToPeak);
|
||||||
|
while (peakToPeak >= BREATH_THRESHOLD) {
|
||||||
|
// Decrement the number of lit candles and keep it from going below
|
||||||
|
// the value -1 (a sentinel that indicates all the candles are blown out
|
||||||
|
// and no music playback, etc. should occur anymore).
|
||||||
|
lit = max(lit-1, -1);
|
||||||
|
// For the simple solid color animation (i.e. no flickering) only update
|
||||||
|
// the pixels when the lit pixel count changes. This allows the tone
|
||||||
|
// playback to sound better because the pixels don't need to be updated
|
||||||
|
// during delays and music note playback (the pixel writing messes with
|
||||||
|
// interrupts that drive tone playback and cause scratchier sounding tones).
|
||||||
|
if (animation == SOLID) {
|
||||||
|
showLitSolid();
|
||||||
|
}
|
||||||
|
// Check if we just hit 0 candles lit up, i.e. they're all blown out.
|
||||||
|
// Turn off the pixels and play a little celebration tune when it
|
||||||
|
// happens, then indicate the candles are blown out with the -1 sentinel value.
|
||||||
|
if (lit == 0) {
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
celebrateSong();
|
||||||
|
lit = -1;
|
||||||
|
}
|
||||||
|
// Keep measuring the peak to peak sound value for a period of time
|
||||||
|
// that it takes to blow out another candle.
|
||||||
|
peakToPeak = measurePeak(FLAME_LIFE_MS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Song to play when the candles are blown out.
|
||||||
|
void celebrateSong() {
|
||||||
|
// Play a little charge melody, from:
|
||||||
|
// https://en.wikipedia.org/wiki/Charge_(fanfare)
|
||||||
|
// Note the explicit boolean parameters in particular the measure=false
|
||||||
|
// at the end. This means the notes will play without any breath measurement
|
||||||
|
// logic. Without this false value playNote will try to keep waiting for candles
|
||||||
|
// to blow out during the celebration song!
|
||||||
|
playNote(NOTE_G4, EIGHTH_TRIPLE, true, false);
|
||||||
|
playNote(NOTE_C5, EIGHTH_TRIPLE, true, false);
|
||||||
|
playNote(NOTE_E5, EIGHTH_TRIPLE, false, false);
|
||||||
|
playNote(NOTE_G5, EIGHTH, true, false);
|
||||||
|
playNote(NOTE_E5, SIXTEENTH, false);
|
||||||
|
playNote(NOTE_G5, HALF, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Measure the peak to peak sound pressure level from the microphone
|
||||||
|
// for a specified number of milliseconds.
|
||||||
|
// While measuring the current NeoPixel animation will be updated too.
|
||||||
|
float measurePeak(uint32_t milliseconds) {
|
||||||
|
float soundMax = 0;
|
||||||
|
// Loop until the specified number of milliseconds have ellapsed.
|
||||||
|
uint32_t start = millis();
|
||||||
|
uint32_t current = start;
|
||||||
|
while ((current - start) < milliseconds) {
|
||||||
|
// Inside the loop check the sound pressure level 10ms at a time
|
||||||
|
float sample = CircuitPlayground.mic.soundPressureLevel(10);
|
||||||
|
Serial.println(sample);
|
||||||
|
soundMax = max(sample, soundMax);
|
||||||
|
// Be sure to drive the NeoPixel animation too.
|
||||||
|
animatePixels(current);
|
||||||
|
current = millis();
|
||||||
|
}
|
||||||
|
return soundMax;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Perform a frame of animation on the NeoPixels.
|
||||||
|
// Current is the current monotonically increasing time in milliseconds.
|
||||||
|
void animatePixels(uint32_t current) {
|
||||||
|
switch (animation) {
|
||||||
|
case FLICKER:
|
||||||
|
showLitFlicker(current);
|
||||||
|
break;
|
||||||
|
case RAINBOW:
|
||||||
|
showLitRainbow(current);
|
||||||
|
break;
|
||||||
|
// Ignore the SOLID case as it has no animation.
|
||||||
|
// This makes the audio smoother since it doesn't get interrupted by
|
||||||
|
// NeoPixel writing like the other animations. The pixels are instead
|
||||||
|
// changed only once when the number of lit candles changes (see the
|
||||||
|
// waitBreath function's loop).
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper to change the color of a NeoPixel on the Circuit Playground board.
|
||||||
|
// Will automatically convert from HSV color space to RGB and apply gamma
|
||||||
|
// correction.
|
||||||
|
float setPixelHSV(int i, float h, float s, float v) {
|
||||||
|
// Convert HSV to RGB
|
||||||
|
float r, g, b = 0.0;
|
||||||
|
HSVtoRGB(&r, &g, &b, h, s, v);
|
||||||
|
// Lookup gamma correct RGB colors (also convert from 0...1.0 RGB range to 0...255 byte range).
|
||||||
|
uint8_t r1 = pgm_read_byte(&gamma8[int(r*255.0)]);
|
||||||
|
uint8_t g1 = pgm_read_byte(&gamma8[int(g*255.0)]);
|
||||||
|
uint8_t b1 = pgm_read_byte(&gamma8[int(b*255.0)]);
|
||||||
|
// Set the color of the pixel.
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, r1, g1, b1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Rainbow candle flicker animation.
|
||||||
|
// Uses a sine wave with random frequency and phase (computed ahead of time in setup)
|
||||||
|
// to smoothly modulate the hue of each NeoPixel candle flame over time.
|
||||||
|
void showLitRainbow(uint32_t current) {
|
||||||
|
// Convert time from milliseconds to seconds.
|
||||||
|
float t = current/1000.0;
|
||||||
|
// Loop through each pixel and compute its color.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
if (i < lit) {
|
||||||
|
// This pixel should be lit, so compute its hue from the sine wave
|
||||||
|
// equation and set the color accordingly. Notice the frequency
|
||||||
|
// is scaled down by 10 to 'slow down' the rainbow flicker animation.
|
||||||
|
// This lets the same random frequencies be shared between fast candle
|
||||||
|
// flame effects and this slower rainbow flicker effect.
|
||||||
|
float x = sin(2.0*PI*frequencies[i]/10.0*t + phases[i]);
|
||||||
|
// Interpolate the sine wave between all 360 degree hue values.
|
||||||
|
float h = lerp(x, -1.0, 1.0, 0.0, 360.0);
|
||||||
|
setPixelHSV(i, h, 1.0, 1.0);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// This pixel has been blown out, just turn it off.
|
||||||
|
setPixelHSV(i, 0, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Flickering candle animation effect.
|
||||||
|
// Uses a noisey sine wave to modulate the hue of each pixel within a range
|
||||||
|
// of flame colors. The sine wave has some low and high frequency components
|
||||||
|
// which give it an organice and seemingly random appearance.
|
||||||
|
void showLitFlicker(uint32_t current) {
|
||||||
|
// First determine the low and high bounds of the flicker hues.
|
||||||
|
// These are +/- 10 degrees of the specified target hue and will
|
||||||
|
// wrap around to the start/end as appropriate.
|
||||||
|
float lowHue = fmod(FLAME_HUE - 10.0, 360.0);
|
||||||
|
float highHue = fmod(FLAME_HUE + 10.0, 360.0);
|
||||||
|
// Convert time from milliseconds to seconds.
|
||||||
|
float t = current/1000.0;
|
||||||
|
// Loop through each pixel and compute its color.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
if (i < lit) {
|
||||||
|
// This pixel should be lit, so compute its hue by composing
|
||||||
|
// a low frequency / slowly changing sine wave with a high
|
||||||
|
// frequency / fast changing cosine wave. This means the candle will
|
||||||
|
// pulse and jump around in an organice but random looking way.
|
||||||
|
// The frequencies and phases of the waves are randomly generated at
|
||||||
|
// startup in the setup function.
|
||||||
|
// Low frequency wave is a sine wave with random freuqency between 1 and 4,
|
||||||
|
// and offset by a random phase to keep pixels from all starting at the same
|
||||||
|
// color:
|
||||||
|
float lowFreq = sin(2.0*PI*frequencies[i]*t + phases[i]);
|
||||||
|
// High frequency is a faster changing cosine wave that uses a different
|
||||||
|
// pixel's random frequency.
|
||||||
|
float highFreq = cos(3.0*PI*frequencies[(i+5)%10]*t);
|
||||||
|
// Add the low and high frequency waves together, then interpolate their value
|
||||||
|
// to a hue that's +/-20% of the configured target hue.
|
||||||
|
float h = lerp(lowFreq+highFreq, -2.0, 2.0, lowHue, highHue);
|
||||||
|
setPixelHSV(i, h, 1.0, 1.0);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// This pixel has been blown out, just turn it off.
|
||||||
|
setPixelHSV(i, 0, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Simple solid lit candle effect.
|
||||||
|
// No animation, each pixel is lit with the specified flame hue until they're all blown out.
|
||||||
|
void showLitSolid() {
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
if (i < lit) {
|
||||||
|
// This pixel should be lit.
|
||||||
|
setPixelHSV(i, FLAME_HUE, 1.0, 1.0);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// This pixel has been blown out, just turn it off.
|
||||||
|
setPixelHSV(i, 0, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
// HSV to RGB color space conversion function taken directly from:
|
||||||
|
// https://www.cs.rit.edu/~ncs/color/t_convert.html
|
||||||
|
void HSVtoRGB( float *r, float *g, float *b, float h, float s, float v )
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
float f, p, q, t;
|
||||||
|
if( s == 0 ) {
|
||||||
|
// achromatic (grey)
|
||||||
|
*r = *g = *b = v;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
h /= 60; // sector 0 to 5
|
||||||
|
i = floor( h );
|
||||||
|
f = h - i; // factorial part of h
|
||||||
|
p = v * ( 1 - s );
|
||||||
|
q = v * ( 1 - s * f );
|
||||||
|
t = v * ( 1 - s * ( 1 - f ) );
|
||||||
|
switch( i ) {
|
||||||
|
case 0:
|
||||||
|
*r = v;
|
||||||
|
*g = t;
|
||||||
|
*b = p;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
*r = q;
|
||||||
|
*g = v;
|
||||||
|
*b = p;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
*r = p;
|
||||||
|
*g = v;
|
||||||
|
*b = t;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
*r = p;
|
||||||
|
*g = q;
|
||||||
|
*b = v;
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
*r = t;
|
||||||
|
*g = p;
|
||||||
|
*b = v;
|
||||||
|
break;
|
||||||
|
default: // case 5:
|
||||||
|
*r = v;
|
||||||
|
*g = p;
|
||||||
|
*b = q;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Linear interpolation of value y within y0...y1 given x and x0...x1.
|
||||||
|
float lerp(float x, float x0, float x1, float y0, float y1) {
|
||||||
|
return y0 + (x-x0)*((y1-y0)/(x1-x0));
|
||||||
|
}
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// Initialize serial output and Circuit Playground library.
|
||||||
|
Serial.begin(115200);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
// Check if a button is being pressed at startup and change the
|
||||||
|
// animation mode accordingly.
|
||||||
|
if (CircuitPlayground.leftButton()) {
|
||||||
|
// Rainbow animation on left button press at startup.
|
||||||
|
animation = RAINBOW;
|
||||||
|
}
|
||||||
|
else if (CircuitPlayground.rightButton()) {
|
||||||
|
// Solid color animation on right button press at startup.
|
||||||
|
animation = SOLID;
|
||||||
|
// Since the solid animation doesn't update every frame, bootstrap it by
|
||||||
|
// turning all the pixels on at the start. As candles are blown out the
|
||||||
|
// pixels will be updated (see the waitBreath function's loop).
|
||||||
|
showLitSolid();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Otherwise default to flicker animation.
|
||||||
|
animation = FLICKER;
|
||||||
|
}
|
||||||
|
// Read the sound sensor and use it to initialize the random number generator.
|
||||||
|
randomSeed(CircuitPlayground.soundSensor());
|
||||||
|
// Precompute random frequency and phase values for each pixel.
|
||||||
|
// This gives the flicker an organic but random looking appearance.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
// Generate random floating point frequency values between 1.0 and 4.0.
|
||||||
|
frequencies[i] = random(1000, 4000)/1000.0;
|
||||||
|
// Generate random floating point phase values between 0 and 2*PI.
|
||||||
|
phases[i] = random(1000)/1000.0 * 2.0 * PI;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Play happy birthday tune, from:
|
||||||
|
// http://www.irish-folk-songs.com/happy-birthday-tin-whistle-sheet-music.html#.WXFJMtPytBw
|
||||||
|
// Inside each playNote call it will play a note and drive the NeoPixel animation
|
||||||
|
// and check for a breath against the sound sensor. Once all the candles are blown out
|
||||||
|
// the playNote calls will stop playing music.
|
||||||
|
playNote(NOTE_D4, EIGHTH, true);
|
||||||
|
playNote(NOTE_D4, EIGHTH);
|
||||||
|
playNote(NOTE_E4, QUARTER); // Bar 1
|
||||||
|
playNote(NOTE_D4, QUARTER);
|
||||||
|
playNote(NOTE_G4, QUARTER);
|
||||||
|
playNote(NOTE_FS4, HALF); // Bar 2
|
||||||
|
playNote(NOTE_D4, EIGHTH, true);
|
||||||
|
playNote(NOTE_D4, EIGHTH);
|
||||||
|
playNote(NOTE_E4, QUARTER); // Bar 3
|
||||||
|
playNote(NOTE_D4, QUARTER);
|
||||||
|
playNote(NOTE_A4, QUARTER);
|
||||||
|
playNote(NOTE_G4, HALF); // Bar 4
|
||||||
|
playNote(NOTE_D4, EIGHTH, true);
|
||||||
|
playNote(NOTE_D4, EIGHTH);
|
||||||
|
playNote(NOTE_D5, QUARTER); // Bar 5
|
||||||
|
playNote(NOTE_B4, QUARTER);
|
||||||
|
playNote(NOTE_G4, QUARTER);
|
||||||
|
playNote(NOTE_FS4, QUARTER); // Bar 6
|
||||||
|
playNote(NOTE_E4, QUARTER);
|
||||||
|
playNote(NOTE_C5, EIGHTH, true);
|
||||||
|
playNote(NOTE_C5, EIGHTH);
|
||||||
|
playNote(NOTE_B4, QUARTER); // Bar 7
|
||||||
|
playNote(NOTE_G4, QUARTER);
|
||||||
|
playNote(NOTE_A4, QUARTER);
|
||||||
|
playNote(NOTE_G4, HALF); // Bar 8
|
||||||
|
// One second pause before repeating the loop and playing
|
||||||
|
// the tune again. Use waitBreath instead of delay so the
|
||||||
|
// pixel animation and breath check continues to happen.
|
||||||
|
waitBreath(1000);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,205 @@
|
|||||||
|
// FFT-based audio visualizer for Adafruit Circuit Playground: uses the
|
||||||
|
// built-in mic on A4, 10x NeoPixels for display. Built on the ELM-Chan
|
||||||
|
// FFT library for AVR microcontrollers.
|
||||||
|
|
||||||
|
// The fast Fourier transform (FFT) algorithm converts a signal from the
|
||||||
|
// time domain to the frequency domain -- e.g. turning a sampled audio
|
||||||
|
// signal into a visualization of frequencies and magnitudes -- an EQ meter.
|
||||||
|
|
||||||
|
// The FFT algorithm itself is handled in the Circuit Playground library;
|
||||||
|
// the code here is mostly for converting that function's output into
|
||||||
|
// animation. In most AV gear it's usually done with bargraph displays;
|
||||||
|
// with a 1D output (the 10 NeoPixels) we need to get creative with color
|
||||||
|
// and brightness...it won't look great in every situation (seems to work
|
||||||
|
// best with LOUD music), but it's colorful and fun to look at. So this
|
||||||
|
// code is mostly a bunch of tables and weird fixed-point (integer) math
|
||||||
|
// that probably doesn't make much sense even with all these comments.
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// GLOBAL STUFF ------------------------------------------------------------
|
||||||
|
|
||||||
|
// Displaying EQ meter output straight from the FFT may be 'correct,' but
|
||||||
|
// isn't always visually interesting (most bins spend most time near zero).
|
||||||
|
// Dynamic level adjustment narrows in on a range of values so there's
|
||||||
|
// always something going on. The upper and lower range are based on recent
|
||||||
|
// audio history, and on a per-bin basis (some may be more active than
|
||||||
|
// others, so this keeps one or two "loud" bins from spoiling the rest.
|
||||||
|
|
||||||
|
#define BINS 10 // FFT output is filtered down to this many bins
|
||||||
|
#define FRAMES 4 // This many FFT cycles are averaged for leveling
|
||||||
|
uint8_t lvl[FRAMES][BINS], // Bin levels for the prior #FRAMES frames
|
||||||
|
avgLo[BINS], // Pseudo rolling averages for bins -- lower and
|
||||||
|
avgHi[BINS], // upper limits -- for dynamic level adjustment.
|
||||||
|
frameIdx = 0; // Counter for lvl storage
|
||||||
|
|
||||||
|
// CALIBRATION CONSTANTS ---------------------------------------------------
|
||||||
|
|
||||||
|
const uint8_t PROGMEM
|
||||||
|
// Low-level noise initially subtracted from each of 32 FFT bins
|
||||||
|
noise[] = { 0x04,0x03,0x03,0x03, 0x02,0x02,0x02,0x02,
|
||||||
|
0x02,0x02,0x02,0x02, 0x01,0x01,0x01,0x01,
|
||||||
|
0x01,0x01,0x01,0x01, 0x01,0x01,0x01,0x01,
|
||||||
|
0x01,0x01,0x01,0x01, 0x01,0x01,0x01,0x01 },
|
||||||
|
// FFT bins (32) are then filtered down to 10 output bins (to match the
|
||||||
|
// number of NeoPixels on Circuit Playground). 10 arrays here, one per
|
||||||
|
// output bin. First element of each is the number of input bins to
|
||||||
|
// merge, second element is index of first merged bin, remaining values
|
||||||
|
// are scaling weights as each input bin is merged into output. The
|
||||||
|
// merging also "de-linearizes" the FFT output, so it's closer to a
|
||||||
|
// logarithmic scale with octaves evenly-ish spaced, music looks better.
|
||||||
|
bin0data[] = { 1, 2, 147 },
|
||||||
|
bin1data[] = { 2, 2, 89, 14 },
|
||||||
|
bin2data[] = { 2, 3, 89, 14 },
|
||||||
|
bin3data[] = { 4, 3, 15, 181, 58, 3 },
|
||||||
|
bin4data[] = { 4, 4, 15, 181, 58, 3 },
|
||||||
|
bin5data[] = { 6, 5, 6, 89, 185, 85, 14, 2 },
|
||||||
|
bin6data[] = { 7, 7, 5, 60, 173, 147, 49, 9, 1 },
|
||||||
|
bin7data[] = { 10, 8, 3, 23, 89, 170, 176, 109, 45, 14, 4, 1 },
|
||||||
|
bin8data[] = { 13, 11, 2, 12, 45, 106, 167, 184, 147, 89, 43, 18, 6, 2, 1 },
|
||||||
|
bin9data[] = { 18, 14, 2, 6, 19, 46, 89, 138, 175, 185, 165, 127, 85, 51, 27, 14, 7, 3, 2, 1 },
|
||||||
|
// Pointers to 10 bin arrays, because PROGMEM arrays-of-arrays are weird:
|
||||||
|
* const binData[] = { bin0data, bin1data, bin2data, bin3data, bin4data,
|
||||||
|
bin5data, bin6data, bin7data, bin8data, bin9data },
|
||||||
|
// R,G,B values for color wheel covering 10 NeoPixels:
|
||||||
|
reds[] = { 0xAD, 0x9A, 0x84, 0x65, 0x00, 0x00, 0x00, 0x00, 0x65, 0x84 },
|
||||||
|
greens[] = { 0x00, 0x66, 0x87, 0x9E, 0xB1, 0x87, 0x66, 0x00, 0x00, 0x00 },
|
||||||
|
blues[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xC3, 0xE4, 0xFF, 0xE4, 0xC3 },
|
||||||
|
gamma8[] = { // Gamma correction improves the appearance of midrange colors
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||||
|
0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x05, 0x06,
|
||||||
|
0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x08, 0x08, 0x08, 0x09, 0x09, 0x09,
|
||||||
|
0x0A, 0x0A, 0x0A, 0x0B, 0x0B, 0x0B, 0x0C, 0x0C, 0x0D, 0x0D, 0x0D, 0x0E,
|
||||||
|
0x0E, 0x0F, 0x0F, 0x10, 0x10, 0x11, 0x11, 0x12, 0x12, 0x13, 0x13, 0x14,
|
||||||
|
0x14, 0x15, 0x15, 0x16, 0x16, 0x17, 0x18, 0x18, 0x19, 0x19, 0x1A, 0x1B,
|
||||||
|
0x1B, 0x1C, 0x1D, 0x1D, 0x1E, 0x1F, 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23,
|
||||||
|
0x24, 0x25, 0x26, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2A, 0x2B, 0x2C, 0x2D,
|
||||||
|
0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
|
||||||
|
0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x44, 0x45, 0x46,
|
||||||
|
0x47, 0x48, 0x49, 0x4B, 0x4C, 0x4D, 0x4E, 0x50, 0x51, 0x52, 0x54, 0x55,
|
||||||
|
0x56, 0x58, 0x59, 0x5A, 0x5C, 0x5D, 0x5E, 0x60, 0x61, 0x63, 0x64, 0x66,
|
||||||
|
0x67, 0x69, 0x6A, 0x6C, 0x6D, 0x6F, 0x70, 0x72, 0x73, 0x75, 0x77, 0x78,
|
||||||
|
0x7A, 0x7C, 0x7D, 0x7F, 0x81, 0x82, 0x84, 0x86, 0x88, 0x89, 0x8B, 0x8D,
|
||||||
|
0x8F, 0x91, 0x92, 0x94, 0x96, 0x98, 0x9A, 0x9C, 0x9E, 0xA0, 0xA2, 0xA4,
|
||||||
|
0xA6, 0xA8, 0xAA, 0xAC, 0xAE, 0xB0, 0xB2, 0xB4, 0xB6, 0xB8, 0xBA, 0xBC,
|
||||||
|
0xBF, 0xC1, 0xC3, 0xC5, 0xC7, 0xCA, 0xCC, 0xCE, 0xD1, 0xD3, 0xD5, 0xD7,
|
||||||
|
0xDA, 0xDC, 0xDF, 0xE1, 0xE3, 0xE6, 0xE8, 0xEB, 0xED, 0xF0, 0xF2, 0xF5,
|
||||||
|
0xF7, 0xFA, 0xFC, 0xFF };
|
||||||
|
const uint16_t PROGMEM
|
||||||
|
// Scaling values applied to each FFT bin (32) after noise subtraction
|
||||||
|
// but prior to merging/filtering. When multiplied by these values,
|
||||||
|
// then divided by 256, these tend to produce outputs in the 0-255
|
||||||
|
// range (VERY VERY "ISH") at normal listening levels. These were
|
||||||
|
// determined empirically by throwing lots of sample audio at it.
|
||||||
|
binMul[] = { 405, 508, 486, 544, 533, 487, 519, 410,
|
||||||
|
481, 413, 419, 410, 397, 424, 412, 411,
|
||||||
|
511, 591, 588, 577, 554, 529, 524, 570,
|
||||||
|
546, 559, 511, 552, 439, 488, 483, 547, },
|
||||||
|
// Sums of bin weights for bin-merging tables above.
|
||||||
|
binDiv[] = { 147, 103, 103, 257, 257, 381, 444, 634, 822, 1142 };
|
||||||
|
|
||||||
|
// SETUP FUNCTION - runs once ----------------------------------------------
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
CircuitPlayground.setBrightness(255);
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
|
||||||
|
// Initialize rolling average ranges
|
||||||
|
uint8_t i;
|
||||||
|
for(i=0; i<BINS; i++) {
|
||||||
|
avgLo[i] = 0;
|
||||||
|
avgHi[i] = 255;
|
||||||
|
}
|
||||||
|
for(i=0; i<FRAMES; i++) {
|
||||||
|
memset(&lvl[i], 127, sizeof(lvl[i]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// LOOP FUNCTION - runs over and over - does animation ---------------------
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint16_t spectrum[32]; // FFT spectrum output buffer
|
||||||
|
|
||||||
|
CircuitPlayground.mic.fft(spectrum);
|
||||||
|
|
||||||
|
// spectrum[] is now raw FFT output, 32 bins.
|
||||||
|
|
||||||
|
// Remove noise and apply EQ levels
|
||||||
|
uint8_t i, N;
|
||||||
|
uint16_t S;
|
||||||
|
for(i=0; i<32; i++) {
|
||||||
|
N = pgm_read_byte(&noise[i]);
|
||||||
|
if(spectrum[i] > N) { // Above noise threshold: scale & clip
|
||||||
|
S = ((spectrum[i] - N) *
|
||||||
|
(uint32_t)pgm_read_word(&binMul[i])) >> 8;
|
||||||
|
spectrum[i] = (S < 255) ? S : 255;
|
||||||
|
} else { // Below noise threshold: clip
|
||||||
|
spectrum[i] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// spectrum[] is now noise-filtered, scaled & clipped
|
||||||
|
// FFT output, in range 0-255, still 32 bins.
|
||||||
|
|
||||||
|
// Filter spectrum[] from 32 elements down to 10,
|
||||||
|
// make pretty colors out of it:
|
||||||
|
|
||||||
|
uint16_t sum, level;
|
||||||
|
uint8_t j, minLvl, maxLvl, nBins, binNum, *data;
|
||||||
|
|
||||||
|
for(i=0; i<BINS; i++) { // For each output bin (and each pixel)...
|
||||||
|
data = (uint8_t *)pgm_read_word(&binData[i]);
|
||||||
|
nBins = pgm_read_byte(&data[0]); // Number of input bins to merge
|
||||||
|
binNum = pgm_read_byte(&data[1]); // Index of first input bin
|
||||||
|
data += 2;
|
||||||
|
for(sum=0, j=0; j<nBins; j++) {
|
||||||
|
sum += spectrum[binNum++] * pgm_read_byte(&data[j]); // Total
|
||||||
|
}
|
||||||
|
sum /= pgm_read_word(&binDiv[i]); // Average
|
||||||
|
lvl[frameIdx][i] = sum; // Save for rolling averages
|
||||||
|
minLvl = maxLvl = lvl[0][i]; // Get min and max range for bin
|
||||||
|
for(j=1; j<FRAMES; j++) { // from prior stored frames
|
||||||
|
if(lvl[j][i] < minLvl) minLvl = lvl[j][i];
|
||||||
|
else if(lvl[j][i] > maxLvl) maxLvl = lvl[j][i];
|
||||||
|
}
|
||||||
|
|
||||||
|
// minLvl and maxLvl indicate the extents of the FFT output for this
|
||||||
|
// bin over the past few frames, used for vertically scaling the output
|
||||||
|
// graph (so it looks interesting regardless of volume level). If too
|
||||||
|
// close together though (e.g. at very low volume levels) the graph
|
||||||
|
// becomes super coarse and 'jumpy'...so keep some minimum distance
|
||||||
|
// between them (also lets the graph go to zero when no sound playing):
|
||||||
|
if((maxLvl - minLvl) < 23) {
|
||||||
|
maxLvl = (minLvl < (255-23)) ? minLvl + 23 : 255;
|
||||||
|
}
|
||||||
|
avgLo[i] = (avgLo[i] * 7 + minLvl) / 8; // Dampen min/max levels
|
||||||
|
avgHi[i] = (maxLvl >= avgHi[i]) ? // (fake rolling averages)
|
||||||
|
(avgHi[i] * 3 + maxLvl) / 4 : // Fast rise
|
||||||
|
(avgHi[i] * 31 + maxLvl) / 32; // Slow decay
|
||||||
|
|
||||||
|
// Second fixed-point scale then 'stretches' each bin based on
|
||||||
|
// dynamic min/max levels to 0-256 range:
|
||||||
|
level = 1 + ((sum <= avgLo[i]) ? 0 :
|
||||||
|
256L * (sum - avgLo[i]) / (long)(avgHi[i] - avgLo[i]));
|
||||||
|
// Clip output and convert to color:
|
||||||
|
if(level <= 255) {
|
||||||
|
uint8_t r = (pgm_read_byte(&reds[i]) * level) >> 8,
|
||||||
|
g = (pgm_read_byte(&greens[i]) * level) >> 8,
|
||||||
|
b = (pgm_read_byte(&blues[i]) * level) >> 8;
|
||||||
|
CircuitPlayground.strip.setPixelColor(i,
|
||||||
|
pgm_read_byte(&gamma8[r]),
|
||||||
|
pgm_read_byte(&gamma8[g]),
|
||||||
|
pgm_read_byte(&gamma8[b]));
|
||||||
|
} else { // level = 256, show white pixel OONTZ OONTZ
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, 0x56587F);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
|
||||||
|
if(++frameIdx >= FRAMES) frameIdx = 0;
|
||||||
|
}
|
@ -0,0 +1,137 @@
|
|||||||
|
/* This example shows how to use the FFT library with a Circuit Playground
|
||||||
|
* Express. Requires installing the "Adafruit Zero FFT library" (use the
|
||||||
|
* Arduino Library Manager to install it!
|
||||||
|
*
|
||||||
|
* The LEDs will map around the circle when frequencies between FREQ_MIN
|
||||||
|
* and FREQ_MAX are detected
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include "Adafruit_ZeroFFT.h"
|
||||||
|
|
||||||
|
//this must be a power of 2
|
||||||
|
#define DATA_SIZE 256
|
||||||
|
|
||||||
|
#define NUM_PIXELS 10
|
||||||
|
|
||||||
|
//the sample rate
|
||||||
|
#define FS 22000
|
||||||
|
|
||||||
|
//the lowest frequency that will register on the meter
|
||||||
|
#define FREQ_MIN 600
|
||||||
|
|
||||||
|
//the highest frequency that will register on the meter
|
||||||
|
#define FREQ_MAX 3000
|
||||||
|
|
||||||
|
#define MIN_INDEX FFT_INDEX(FREQ_MIN, FS, DATA_SIZE)
|
||||||
|
#define MAX_INDEX FFT_INDEX(FREQ_MAX, FS, DATA_SIZE)
|
||||||
|
|
||||||
|
#define SCALE_FACTOR 32
|
||||||
|
|
||||||
|
int16_t pixelData[NUM_PIXELS + 1];
|
||||||
|
int16_t inputData[DATA_SIZE];
|
||||||
|
|
||||||
|
const uint8_t
|
||||||
|
// R,G,B values for color wheel covering 10 NeoPixels:
|
||||||
|
reds[] = { 0xAD, 0x9A, 0x84, 0x65, 0x00, 0x00, 0x00, 0x00, 0x65, 0x84 },
|
||||||
|
greens[] = { 0x00, 0x66, 0x87, 0x9E, 0xB1, 0x87, 0x66, 0x00, 0x00, 0x00 },
|
||||||
|
blues[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xC3, 0xE4, 0xFF, 0xE4, 0xC3 },
|
||||||
|
gamma8[] = { // Gamma correction improves the appearance of midrange colors
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||||
|
0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x05, 0x06,
|
||||||
|
0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x08, 0x08, 0x08, 0x09, 0x09, 0x09,
|
||||||
|
0x0A, 0x0A, 0x0A, 0x0B, 0x0B, 0x0B, 0x0C, 0x0C, 0x0D, 0x0D, 0x0D, 0x0E,
|
||||||
|
0x0E, 0x0F, 0x0F, 0x10, 0x10, 0x11, 0x11, 0x12, 0x12, 0x13, 0x13, 0x14,
|
||||||
|
0x14, 0x15, 0x15, 0x16, 0x16, 0x17, 0x18, 0x18, 0x19, 0x19, 0x1A, 0x1B,
|
||||||
|
0x1B, 0x1C, 0x1D, 0x1D, 0x1E, 0x1F, 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23,
|
||||||
|
0x24, 0x25, 0x26, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2A, 0x2B, 0x2C, 0x2D,
|
||||||
|
0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
|
||||||
|
0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x44, 0x45, 0x46,
|
||||||
|
0x47, 0x48, 0x49, 0x4B, 0x4C, 0x4D, 0x4E, 0x50, 0x51, 0x52, 0x54, 0x55,
|
||||||
|
0x56, 0x58, 0x59, 0x5A, 0x5C, 0x5D, 0x5E, 0x60, 0x61, 0x63, 0x64, 0x66,
|
||||||
|
0x67, 0x69, 0x6A, 0x6C, 0x6D, 0x6F, 0x70, 0x72, 0x73, 0x75, 0x77, 0x78,
|
||||||
|
0x7A, 0x7C, 0x7D, 0x7F, 0x81, 0x82, 0x84, 0x86, 0x88, 0x89, 0x8B, 0x8D,
|
||||||
|
0x8F, 0x91, 0x92, 0x94, 0x96, 0x98, 0x9A, 0x9C, 0x9E, 0xA0, 0xA2, 0xA4,
|
||||||
|
0xA6, 0xA8, 0xAA, 0xAC, 0xAE, 0xB0, 0xB2, 0xB4, 0xB6, 0xB8, 0xBA, 0xBC,
|
||||||
|
0xBF, 0xC1, 0xC3, 0xC5, 0xC7, 0xCA, 0xCC, 0xCE, 0xD1, 0xD3, 0xD5, 0xD7,
|
||||||
|
0xDA, 0xDC, 0xDF, 0xE1, 0xE3, 0xE6, 0xE8, 0xEB, 0xED, 0xF0, 0xF2, 0xF5,
|
||||||
|
0xF7, 0xFA, 0xFC, 0xFF };
|
||||||
|
|
||||||
|
// the setup routine runs once when you press reset:
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Track low and high levels for dynamic adjustment
|
||||||
|
int minLvl = 0, maxLvl = 1000;
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
int i;
|
||||||
|
CircuitPlayground.mic.capture(inputData, DATA_SIZE);
|
||||||
|
|
||||||
|
// Center data on average amplitude
|
||||||
|
int32_t avg = 0;
|
||||||
|
for(i=0; i<DATA_SIZE; i++) avg += inputData[i];
|
||||||
|
avg /= DATA_SIZE;
|
||||||
|
// Scale for FFT
|
||||||
|
for(i=0; i<DATA_SIZE; i++)
|
||||||
|
inputData[i] = (inputData[i] - avg) * SCALE_FACTOR;
|
||||||
|
|
||||||
|
//run the FFT
|
||||||
|
ZeroFFT(inputData, DATA_SIZE);
|
||||||
|
|
||||||
|
// Sum inputData[] (FFT output) into pixelData[] bins.
|
||||||
|
// Note that pixelData[] has one element more than the number of
|
||||||
|
// pixels actually displayed -- this is on purpose, as the last
|
||||||
|
// element tends to be zero and not visually interesting.
|
||||||
|
memset(pixelData, 0, sizeof pixelData); // Clear pixelData[] buffer
|
||||||
|
for(i=MIN_INDEX; i<=MAX_INDEX; i++){
|
||||||
|
int ix = map(i, MIN_INDEX, MAX_INDEX, 0, NUM_PIXELS);
|
||||||
|
pixelData[ix] += inputData[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Figure the max and min levels for the current frame
|
||||||
|
int most = pixelData[0], least = pixelData[0];
|
||||||
|
for(i=1; i<NUM_PIXELS; i++) {
|
||||||
|
if(pixelData[i] > most) most = pixelData[i];
|
||||||
|
if(pixelData[i] < least) least = pixelData[i];
|
||||||
|
}
|
||||||
|
// Always have some minimum space between, else it's too "jumpy"
|
||||||
|
if((most - least) < 15) most = least + 15;
|
||||||
|
|
||||||
|
// Dynamic max/min is sort of a fake rolling average...
|
||||||
|
maxLvl = (most > maxLvl) ?
|
||||||
|
(maxLvl * 3 + most + 1) / 4 : // Climb fast
|
||||||
|
(maxLvl * 31 + most + 15) / 32; // Fall slow
|
||||||
|
minLvl = (least < minLvl) ?
|
||||||
|
(minLvl * 3 + least + 3) / 4 : // Fall fast
|
||||||
|
(minLvl * 31 + least + 31) / 32; // Climb slow
|
||||||
|
|
||||||
|
//display the data
|
||||||
|
int n;
|
||||||
|
for(i=0; i<NUM_PIXELS; i++) {
|
||||||
|
// Scale pixel data to 0-511ish range based on dynamic levels
|
||||||
|
n = map(pixelData[i], minLvl, maxLvl, 0, 511);
|
||||||
|
if(n < 0) n = 0;
|
||||||
|
else if(n > 511) n = 511;
|
||||||
|
|
||||||
|
int r, g, b;
|
||||||
|
if(n < 256) {
|
||||||
|
// Lower half of range: interp from black to RGB pixel color
|
||||||
|
r = map(n, 0, 255, 0, reds[i]);
|
||||||
|
g = map(n, 0, 255, 0, greens[i]);
|
||||||
|
b = map(n, 0, 255, 0, blues[i]);
|
||||||
|
} else {
|
||||||
|
// Upper half of range: interp from RGB color to white
|
||||||
|
r = map(n, 256, 511, reds[i] , 255);
|
||||||
|
g = map(n, 256, 511, greens[i], 255);
|
||||||
|
b = map(n, 256, 511, blues[i] , 255);
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, gamma8[r], gamma8[g], gamma8[b]);
|
||||||
|
}
|
||||||
|
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
@ -0,0 +1,156 @@
|
|||||||
|
// Audio level visualizer for Adafruit Circuit Playground: uses the
|
||||||
|
// built-in microphone, 10x NeoPixels for display. Like the FFT example,
|
||||||
|
// the real work is done in the Circuit Playground library via the 'mic'
|
||||||
|
// object; this code is almost entirely just dressing up the output with
|
||||||
|
// a lot of averaging and scaling math and colors.
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// GLOBAL STUFF ------------------------------------------------------------
|
||||||
|
|
||||||
|
// To keep the display 'lively,' an upper and lower range of volume
|
||||||
|
// levels are dynamically adjusted based on recent audio history, and
|
||||||
|
// the graph is fit into this range.
|
||||||
|
#define FRAMES 8
|
||||||
|
uint16_t lvl[FRAMES], // Audio level for the prior #FRAMES frames
|
||||||
|
avgLo = 6, // Audio volume lower end of range
|
||||||
|
avgHi = 512, // Audio volume upper end of range
|
||||||
|
sum = 256 * FRAMES; // Sum of lvl[] array
|
||||||
|
uint8_t lvlIdx = 0; // Counter into lvl[] array
|
||||||
|
int16_t peak = 0; // Falling dot shows recent max
|
||||||
|
int8_t peakV = 0; // Velocity of peak dot
|
||||||
|
|
||||||
|
// SETUP FUNCTION - runs once ----------------------------------------------
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
CircuitPlayground.setBrightness(128);
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
|
||||||
|
for(uint8_t i=0; i<FRAMES; i++) lvl[i] = 256;
|
||||||
|
}
|
||||||
|
|
||||||
|
// COLOR TABLES for animation ----------------------------------------------
|
||||||
|
|
||||||
|
const uint8_t PROGMEM
|
||||||
|
reds[] = { 0x9A, 0x75, 0x00, 0x00, 0x00, 0x65, 0x84, 0x9A, 0xAD, 0xAD },
|
||||||
|
greens[] = { 0x00, 0x00, 0x00, 0x87, 0xB1, 0x9E, 0x87, 0x66, 0x00, 0x00 },
|
||||||
|
blues[] = { 0x95, 0xD5, 0xFF, 0xC3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
|
||||||
|
gamma8[] = { // Gamma correction improves the appearance of midrange colors
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||||
|
0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x05, 0x06,
|
||||||
|
0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x08, 0x08, 0x08, 0x09, 0x09, 0x09,
|
||||||
|
0x0A, 0x0A, 0x0A, 0x0B, 0x0B, 0x0B, 0x0C, 0x0C, 0x0D, 0x0D, 0x0D, 0x0E,
|
||||||
|
0x0E, 0x0F, 0x0F, 0x10, 0x10, 0x11, 0x11, 0x12, 0x12, 0x13, 0x13, 0x14,
|
||||||
|
0x14, 0x15, 0x15, 0x16, 0x16, 0x17, 0x18, 0x18, 0x19, 0x19, 0x1A, 0x1B,
|
||||||
|
0x1B, 0x1C, 0x1D, 0x1D, 0x1E, 0x1F, 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23,
|
||||||
|
0x24, 0x25, 0x26, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2A, 0x2B, 0x2C, 0x2D,
|
||||||
|
0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
|
||||||
|
0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x44, 0x45, 0x46,
|
||||||
|
0x47, 0x48, 0x49, 0x4B, 0x4C, 0x4D, 0x4E, 0x50, 0x51, 0x52, 0x54, 0x55,
|
||||||
|
0x56, 0x58, 0x59, 0x5A, 0x5C, 0x5D, 0x5E, 0x60, 0x61, 0x63, 0x64, 0x66,
|
||||||
|
0x67, 0x69, 0x6A, 0x6C, 0x6D, 0x6F, 0x70, 0x72, 0x73, 0x75, 0x77, 0x78,
|
||||||
|
0x7A, 0x7C, 0x7D, 0x7F, 0x81, 0x82, 0x84, 0x86, 0x88, 0x89, 0x8B, 0x8D,
|
||||||
|
0x8F, 0x91, 0x92, 0x94, 0x96, 0x98, 0x9A, 0x9C, 0x9E, 0xA0, 0xA2, 0xA4,
|
||||||
|
0xA6, 0xA8, 0xAA, 0xAC, 0xAE, 0xB0, 0xB2, 0xB4, 0xB6, 0xB8, 0xBA, 0xBC,
|
||||||
|
0xBF, 0xC1, 0xC3, 0xC5, 0xC7, 0xCA, 0xCC, 0xCE, 0xD1, 0xD3, 0xD5, 0xD7,
|
||||||
|
0xDA, 0xDC, 0xDF, 0xE1, 0xE3, 0xE6, 0xE8, 0xEB, 0xED, 0xF0, 0xF2, 0xF5,
|
||||||
|
0xF7, 0xFA, 0xFC, 0xFF };
|
||||||
|
|
||||||
|
// LOOP FUNCTION - runs over and over - does animation ---------------------
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
uint8_t i, r, g, b;
|
||||||
|
uint16_t minLvl, maxLvl, a, scaled;
|
||||||
|
int16_t p;
|
||||||
|
|
||||||
|
p = CircuitPlayground.mic.soundPressureLevel(10); // 10 ms
|
||||||
|
p = map(p, 56, 140, 0, 350); // Scale to 0-350 (may overflow)
|
||||||
|
a = constrain(p, 0, 350); // Clip to 0-350 range
|
||||||
|
sum -= lvl[lvlIdx];
|
||||||
|
lvl[lvlIdx] = a;
|
||||||
|
sum += a; // Sum of lvl[] array
|
||||||
|
minLvl = maxLvl = lvl[0]; // Calc min, max of lvl[]...
|
||||||
|
for(i=1; i<FRAMES; i++) {
|
||||||
|
if(lvl[i] < minLvl) minLvl = lvl[i];
|
||||||
|
else if(lvl[i] > maxLvl) maxLvl = lvl[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Keep some minimum distance between min & max levels,
|
||||||
|
// else the display gets "jumpy."
|
||||||
|
if((maxLvl - minLvl) < 40) {
|
||||||
|
maxLvl = (minLvl < (512-40)) ? minLvl + 40 : 512;
|
||||||
|
}
|
||||||
|
avgLo = (avgLo * 7 + minLvl + 2) / 8; // Dampen min/max levels
|
||||||
|
avgHi = (maxLvl >= avgHi) ? // (fake rolling averages)
|
||||||
|
(avgHi * 3 + maxLvl + 1) / 4 : // Fast rise
|
||||||
|
(avgHi * 31 + maxLvl + 8) / 32; // Slow decay
|
||||||
|
|
||||||
|
a = sum / FRAMES; // Average of lvl[] array
|
||||||
|
if(a <= avgLo) { // Below min?
|
||||||
|
scaled = 0; // Bargraph = zero
|
||||||
|
} else { // Else scale to fixed-point coordspace 0-2560
|
||||||
|
scaled = 2560L * (a - avgLo) / (avgHi - avgLo);
|
||||||
|
if(scaled > 2560) scaled = 2560;
|
||||||
|
}
|
||||||
|
if(scaled >= peak) { // New peak
|
||||||
|
peakV = (scaled - peak) / 4; // Give it an upward nudge
|
||||||
|
peak = scaled;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint8_t whole = scaled / 256, // Full-brightness pixels (0-10)
|
||||||
|
frac = scaled & 255; // Brightness of fractional pixel
|
||||||
|
int whole2 = peak / 256, // Index of peak pixel
|
||||||
|
frac2 = peak & 255; // Between-pixels position of peak
|
||||||
|
uint16_t a1, a2; // Scaling factors for color blending
|
||||||
|
|
||||||
|
for(i=0; i<10; i++) { // For each NeoPixel...
|
||||||
|
if(i <= whole) { // In currently-lit area?
|
||||||
|
r = pgm_read_byte(&reds[i]), // Look up pixel color
|
||||||
|
g = pgm_read_byte(&greens[i]),
|
||||||
|
b = pgm_read_byte(&blues[i]);
|
||||||
|
if(i == whole) { // Fraction pixel at top of range?
|
||||||
|
a1 = (uint16_t)frac + 1; // Fade toward black
|
||||||
|
r = (r * a1) >> 8;
|
||||||
|
g = (g * a1) >> 8;
|
||||||
|
b = (b * a1) >> 8;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
r = g = b = 0; // In unlit area
|
||||||
|
}
|
||||||
|
// Composite the peak pixel atop whatever else is happening...
|
||||||
|
if(i == whole2) { // Peak pixel?
|
||||||
|
a1 = 256 - frac2; // Existing pixel blend factor 1-256
|
||||||
|
a2 = frac2 + 1; // Peak pixel blend factor 1-256
|
||||||
|
r = ((r * a1) + (0x84 * a2)) >> 8; // Will
|
||||||
|
g = ((g * a1) + (0x87 * a2)) >> 8; // it
|
||||||
|
b = ((b * a1) + (0xC3 * a2)) >> 8; // blend?
|
||||||
|
} else if(i == (whole2-1)) { // Just below peak pixel
|
||||||
|
a1 = frac2 + 1; // Opposite blend ratios to above,
|
||||||
|
a2 = 256 - frac2; // but same idea
|
||||||
|
r = ((r * a1) + (0x84 * a2)) >> 8;
|
||||||
|
g = ((g * a1) + (0x87 * a2)) >> 8;
|
||||||
|
b = ((b * a1) + (0xC3 * a2)) >> 8;
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.setPixelColor(i,
|
||||||
|
pgm_read_byte(&gamma8[r]),
|
||||||
|
pgm_read_byte(&gamma8[g]),
|
||||||
|
pgm_read_byte(&gamma8[b]));
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
|
||||||
|
peak += peakV;
|
||||||
|
if(peak <= 0) {
|
||||||
|
peak = 0;
|
||||||
|
peakV = 0;
|
||||||
|
} else if(peakV >= -126) {
|
||||||
|
peakV -= 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(++lvlIdx >= FRAMES) lvlIdx = 0;
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
/* This example samples the microphone for 50 milliseconds repeatedly
|
||||||
|
* and returns the max sound pressure level in dB SPL
|
||||||
|
* https://en.wikipedia.org/wiki/Sound_pressure
|
||||||
|
*
|
||||||
|
* open the serial plotter window in the arduino IDE for a nice graph
|
||||||
|
* of sound pressure level over time.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
Serial.begin(115200);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
Serial.println(CircuitPlayground.mic.soundPressureLevel(50));
|
||||||
|
}
|
@ -0,0 +1,119 @@
|
|||||||
|
/*
|
||||||
|
LED VU meter for Circuit Playground
|
||||||
|
This is a port of the Adafruit Amplitie project to Circuit Playground.
|
||||||
|
Based on code for the adjustable sensitivity version of amplitie from:
|
||||||
|
https://learn.adafruit.com/led-ampli-tie/the-code
|
||||||
|
|
||||||
|
Hardware requirements:
|
||||||
|
- Circuit Playground
|
||||||
|
|
||||||
|
Software requirements:
|
||||||
|
- Adafruit Circuit Playground library
|
||||||
|
|
||||||
|
Written by Adafruit Industries. Distributed under the BSD license.
|
||||||
|
This paragraph must be included in any redistribution.
|
||||||
|
|
||||||
|
*/
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
#define SAMPLE_WINDOW 10 // Sample window for average level
|
||||||
|
#define PEAK_HANG 24 // Time of pause before peak dot falls
|
||||||
|
#define PEAK_FALL 4 // Rate of falling peak dot
|
||||||
|
|
||||||
|
#define INPUT_FLOOR 56 // Lower range of mic sensitivity in dB SPL
|
||||||
|
#define INPUT_CEILING 110 // Upper range of mic sensitivity in db SPL
|
||||||
|
|
||||||
|
byte peak = 16; // Peak level of column; used for falling dots
|
||||||
|
unsigned int sample;
|
||||||
|
byte dotCount = 0; //Frame counter for peak dot
|
||||||
|
byte dotHangCount = 0; //Frame counter for holding peak dot
|
||||||
|
|
||||||
|
float mapf(float x, float in_min, float in_max, float out_min, float out_max);
|
||||||
|
|
||||||
|
void setup()
|
||||||
|
{
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop()
|
||||||
|
{
|
||||||
|
int numPixels = CircuitPlayground.strip.numPixels();
|
||||||
|
float peakToPeak = 0; // peak-to-peak level
|
||||||
|
unsigned int c, y;
|
||||||
|
|
||||||
|
//get peak sound pressure level over the sample window
|
||||||
|
peakToPeak = CircuitPlayground.mic.soundPressureLevel(SAMPLE_WINDOW);
|
||||||
|
|
||||||
|
//limit to the floor value
|
||||||
|
peakToPeak = max(INPUT_FLOOR, peakToPeak);
|
||||||
|
|
||||||
|
// Serial.println(peakToPeak);
|
||||||
|
|
||||||
|
//Fill the strip with rainbow gradient
|
||||||
|
for (int i=0;i<=numPixels-1;i++){
|
||||||
|
CircuitPlayground.strip.setPixelColor(i,Wheel(map(i,0,numPixels-1,30,150)));
|
||||||
|
}
|
||||||
|
|
||||||
|
c = mapf(peakToPeak, INPUT_FLOOR, INPUT_CEILING, numPixels, 0);
|
||||||
|
|
||||||
|
// Turn off pixels that are below volume threshold.
|
||||||
|
if(c < peak) {
|
||||||
|
peak = c; // Keep dot on top
|
||||||
|
dotHangCount = 0; // make the dot hang before falling
|
||||||
|
}
|
||||||
|
if (c <= numPixels) { // Fill partial column with off pixels
|
||||||
|
drawLine(numPixels, numPixels-c, CircuitPlayground.strip.Color(0, 0, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the peak dot to match the rainbow gradient
|
||||||
|
y = numPixels - peak;
|
||||||
|
CircuitPlayground.strip.setPixelColor(y-1,Wheel(map(y,0,numPixels-1,30,150)));
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
|
||||||
|
// Frame based peak dot animation
|
||||||
|
if(dotHangCount > PEAK_HANG) { //Peak pause length
|
||||||
|
if(++dotCount >= PEAK_FALL) { //Fall rate
|
||||||
|
peak++;
|
||||||
|
dotCount = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
dotHangCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//Used to draw a line between two points of a given color
|
||||||
|
void drawLine(uint8_t from, uint8_t to, uint32_t c) {
|
||||||
|
uint8_t fromTemp;
|
||||||
|
if (from > to) {
|
||||||
|
fromTemp = from;
|
||||||
|
from = to;
|
||||||
|
to = fromTemp;
|
||||||
|
}
|
||||||
|
for(int i=from; i<=to; i++){
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, c);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
float mapf(float x, float in_min, float in_max, float out_min, float out_max)
|
||||||
|
{
|
||||||
|
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Input a value 0 to 255 to get a color value.
|
||||||
|
// The colours are a transition r - g - b - back to r.
|
||||||
|
uint32_t Wheel(byte WheelPos) {
|
||||||
|
if(WheelPos < 85) {
|
||||||
|
return CircuitPlayground.strip.Color(WheelPos * 3, 255 - WheelPos * 3, 0);
|
||||||
|
}
|
||||||
|
else if(WheelPos < 170) {
|
||||||
|
WheelPos -= 85;
|
||||||
|
return CircuitPlayground.strip.Color(255 - WheelPos * 3, 0, WheelPos * 3);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
WheelPos -= 170;
|
||||||
|
return CircuitPlayground.strip.Color(0, WheelPos * 3, 255 - WheelPos * 3);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,64 @@
|
|||||||
|
// example sketch to turn your circuit playground into a picoboard
|
||||||
|
// potentiometer is 'simulated' by tilting the cplay (accelerometer Z is reported)
|
||||||
|
// pin #13 red LED is lit when data is sent to Scratch!
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
#define SCRATCH_DATA_REQUEST 0x01
|
||||||
|
#define SCRATCH_FW_VER 0x04
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
while (!Serial);
|
||||||
|
Serial.begin(38400);
|
||||||
|
//Serial.println("Start!");
|
||||||
|
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
pinMode(13, OUTPUT);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
if (!Serial.available())
|
||||||
|
return;
|
||||||
|
|
||||||
|
char c = Serial.read();
|
||||||
|
|
||||||
|
if (c != SCRATCH_DATA_REQUEST)
|
||||||
|
return;
|
||||||
|
|
||||||
|
digitalWrite(13, HIGH);
|
||||||
|
// data is a request!
|
||||||
|
sendPacket(0xF, SCRATCH_FW_VER);
|
||||||
|
sendPacket(0x0, analogRead(A0));
|
||||||
|
sendPacket(0x1, analogRead(A1));
|
||||||
|
sendPacket(0x2, analogRead(A2));
|
||||||
|
if (CircuitPlayground.leftButton() || CircuitPlayground.rightButton()) {
|
||||||
|
sendPacket(0x3, 0x0);
|
||||||
|
} else {
|
||||||
|
sendPacket(0x3, 0xFFFF);
|
||||||
|
}
|
||||||
|
sendPacket(0x4, CircuitPlayground.temperature() * 10);
|
||||||
|
sendPacket(0x5, 1023 - CircuitPlayground.lightSensor());
|
||||||
|
float s = CircuitPlayground.mic.soundPressureLevel(10);
|
||||||
|
sendPacket(0x6, s);
|
||||||
|
float z = CircuitPlayground.motionZ();
|
||||||
|
z *= -50; // reverse direction
|
||||||
|
z += 512;
|
||||||
|
sendPacket(0x7, z);
|
||||||
|
|
||||||
|
digitalWrite(13, LOW);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sendPacket(uint8_t channel, uint16_t data) {
|
||||||
|
uint8_t packet0, packet1;
|
||||||
|
|
||||||
|
channel &= 0xF;
|
||||||
|
if (data >= 1024) data = 1023;
|
||||||
|
|
||||||
|
packet0 = 0x80 | (channel << 3) | ((data >> 7) & 0x7);
|
||||||
|
packet1 = data & 0x7F;
|
||||||
|
|
||||||
|
Serial.write(packet0);
|
||||||
|
//delay(1);
|
||||||
|
Serial.write(packet1);
|
||||||
|
//delay(1);
|
||||||
|
}
|
@ -0,0 +1,209 @@
|
|||||||
|
// Talkie library
|
||||||
|
// Copyright 2011 Peter Knight
|
||||||
|
// This code is released under GPLv2 license.
|
||||||
|
//
|
||||||
|
// The following phrases are derived from those built into the
|
||||||
|
// Acorn Computers Speech Synthesiser add-on from 1983.
|
||||||
|
//
|
||||||
|
// A male voice with an RP English accent, voiced by Kenneth Kendall.
|
||||||
|
//
|
||||||
|
// Due to the large vocabulary, this file takes up 16Kbytes of flash.
|
||||||
|
// To save space, just copy and paste the words you need.
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
const uint8_t spPAUSE1[] PROGMEM = {0x08,0x14,0xC1,0xDD,0x45,0x64,0x03,0x00,0xFC,0x4A,0x56,0x26,0x3A,0x06,0x0A};
|
||||||
|
//const uint8_t spPAUSE2[] PROGMEM = {0x08,0x14,0xC1,0xDD,0x45,0x64,0x03,0x00,0x00,0x00,0xC0,0xFF,0x4A,0x46,0x51,0x39,0x79,0x15,0x0A};
|
||||||
|
//const uint8_t spTONE1[] PROGMEM = {0x8D,0xF2,0xDE,0xDD,0xDD,0x93,0x74,0xAA,0x53,0x9D,0xEA,0x54,0xA7,0x3A,0xD5,0xA9,0x4E,0x75,0xAA,0x53,0x9D,0xEA,0x54,0xA7,0x3A,0xD5,0xA9,0x4E,0x75,0xAA,0x53,0x9D,0xEA,0x54,0xA7,0x3A,0xD5,0xA9,0x4E,0x75,0xAA,0x53,0x9D,0xEA,0x54,0xA7,0x3A,0xD5,0xA9,0x4E,0x75,0xAA,0x53,0x9D,0xFA,0x4A,0x26,0x51,0x39,0x79,0x15,0x0A};
|
||||||
|
//const uint8_t spTONE2[] PROGMEM = {0x4D,0xF1,0xDE,0xDD,0xDD,0x93,0x74,0xA5,0x2B,0x5D,0xE9,0x4A,0x57,0xBA,0xD2,0x95,0xAE,0x74,0xA5,0x2B,0x5D,0xE9,0x4A,0x57,0xBA,0xD2,0x95,0xAE,0x74,0xA5,0x2B,0x5D,0xE9,0x4A,0x57,0xBA,0xD2,0x95,0xAE,0x74,0xA5,0x2B,0x5D,0xE9,0x4A,0x57,0xBA,0xD2,0x95,0xAE,0x74,0xA5,0x2B,0x5D,0xF9,0x11,0x5A};
|
||||||
|
//const uint8_t sp_D[] PROGMEM = {0x64,0x14,0xCA,0xDD,0x45,0x64,0x83,0xEB,0xB7,0x71,0x17,0x53,0x37,0xA9,0x6F,0x5E,0xDC,0xCD,0x6D,0xFF,0x11,0x51,0x5A};
|
||||||
|
//const uint8_t sp_ED[] PROGMEM = {0x69,0x2C,0x8E,0xCA,0x33,0x16,0xB9,0xA9,0x58,0xAA,0xC8,0x6A,0x28,0x96,0x2C,0x45,0xC3,0xB3,0x31,0x99,0x84,0x72,0x77,0x11,0xD9,0xE0,0xA6,0x6D,0xDC,0xC5,0xD4,0x4D,0x1A,0x9A,0x17,0x77,0x73,0xDB,0xFF,0x71,0x39,0x49,0x5A};
|
||||||
|
//const uint8_t sp_ING[] PROGMEM = {0x2B,0x99,0xCE,0xD1,0x7D,0x22,0x8F,0x7A,0x78,0x25,0xCF,0xA9,0x3C,0xBA,0x15,0x1A,0xA5,0xAA,0x52,0x1A,0x66,0x12,0xE8,0xAE,0xD0,0x7A,0x52,0x63,0x56,0x5C,0x4E,0x9E,0x45,0x0D,0x51,0x59,0xA9,0x46,0x66,0x3B,0xB8,0xBE,0x38,0x97,0x10,0xB3,0xE3,0x07,0x04,0x38,0xA3,0xFA,0x65,0x5A};
|
||||||
|
//const uint8_t sp_S[] PROGMEM = {0x04,0xF8,0xD4,0x5D,0x00,0x8F,0xB9,0x0B,0xE0,0x4B,0x33,0x06,0x7C,0xE6,0xC5,0x80,0xCF,0xD5,0x09,0xF0,0x0D,0x0A,0x02,0xBE,0x12,0x43,0xC0,0x55,0x6C,0xFF,0x39,0x51,0x51,0x15,0x5A};
|
||||||
|
const uint8_t sp_TEEN[] PROGMEM = {0xA0,0x80,0x25,0x5C,0x14,0x70,0x5C,0x71,0x89,0x87,0x21,0xCA,0x19,0xDB,0x2D,0xE9,0x8E,0xA8,0x77,0xA2,0x8C,0x64,0x06,0x01,0xDF,0xAA,0x3C,0xEB,0xD6,0xAE,0xA4,0x20,0x3B,0xB3,0x4B,0x3F,0x12,0x48,0x5E,0xC5,0x29,0xC3,0x4C,0x48,0x76,0x5D,0xBB,0x0C,0x23,0xA2,0xC4,0x75,0xE4,0x32,0x64,0xAE,0x36,0xAE,0x49,0xC3,0x10,0x84,0xC5,0xB9,0x39,0x71,0x43,0x10,0x96,0xAB,0x96,0x44,0x0D,0x59,0x72,0x96,0x59,0x6A,0x31,0x74,0x19,0xE6,0x66,0xB6,0xFF,0x09,0x15,0x5A};
|
||||||
|
//const uint8_t sp_TH[] PROGMEM = {0x08,0x18,0x22,0x94,0x02,0x02,0xE8,0xDC,0x85,0x00,0x5D,0xB8,0x31,0x20,0x87,0x30,0x04,0x04,0x99,0xFE,0x4D,0x15,0x5A};
|
||||||
|
//const uint8_t sp_T[] PROGMEM = {0x04,0x68,0x24,0xC4,0x01,0x07,0x44,0x1A,0xA0,0x42,0xE3,0xD1,0x0C,0x67,0x68,0x36,0xB5,0x5B,0x3F,0xBC,0x91,0x47,0xCD,0x49,0xD3,0x70,0x4A,0x91,0x35,0x3B,0x2F,0xFF,0x2D,0x5A};
|
||||||
|
const uint8_t sp_Z[] PROGMEM = {0xA1,0xEB,0x38,0x38,0x3C,0x67,0x9B,0xF6,0x6B,0x12,0x97,0x6C,0x62,0x5B,0x06,0x2C,0x40,0x46,0x80,0x2F,0x58,0x11,0xF0,0x95,0x08,0x02,0xBE,0x31,0x47,0xC0,0x17,0x52,0xFF,0x06};
|
||||||
|
//const uint8_t spZERO[] PROGMEM = {0xA2,0x2B,0x20,0x2D,0xAA,0x1A,0xAA,0xB6,0x81,0xD4,0x88,0x72,0xAC,0x80,0x8F,0xC4,0x34,0x90,0xAA,0x8F,0x44,0xD5,0x43,0x4D,0xCB,0x16,0x33,0x8C,0xB6,0x44,0x23,0x9A,0xDC,0x21,0xA7,0x6B,0xAD,0x60,0x28,0x83,0x9C,0x9E,0x75,0x82,0x69,0x12,0x74,0xB2,0xD1,0xF1,0x87,0x74,0xAA,0x89,0x46,0x27,0x18,0x36,0x39,0x5C,0x17,0x9D,0x60,0xA8,0x92,0x34,0x5B,0xB4,0xA2,0xA6,0xCA,0xD2,0x7D,0xD1,0x88,0x73,0xB6,0xF2,0xA8,0x96,0x23,0xCD,0x83,0x4D,0x23,0x5D,0xB7,0x2C,0x0F,0x74,0xF3,0xC8,0xDC,0x8A,0x5C,0xA9,0xA4,0x3B,0x55,0xAB,0x73,0xE5,0xE2,0x3A,0xD7,0x6D,0x2C,0x49,0x8B,0x3D,0x6F,0x95,0xB1,0x78,0x4D,0xD7,0x78,0x94,0xA6,0x64,0xC3,0x33,0xE2,0x52,0x9A,0x92,0x8D,0x08,0xF3,0x4B,0x61,0x4A,0x31,0xDC,0xB8,0x26,0xBB,0x25,0x05,0x77,0x95,0x7A,0xF4,0x06,0x06};
|
||||||
|
//const uint8_t spHUNDRED[] PROGMEM = {0xA2,0x6D,0x76,0xD2,0x5D,0x1B,0xE9,0x62,0xFB,0xD7,0x3F,0x7E,0xB7,0x69,0x05,0x9E,0x7A,0x04,0x95,0xBB,0xAC,0x64,0xE2,0x11,0x35,0x9C,0x7C,0xE2,0x49,0x4A,0x1C,0xA5,0xC5,0x52,0xB9,0x0E,0x89,0xD5,0x56,0xA1,0x63,0x4B,0x16,0xA1,0x2D,0x21,0xCD,0x84,0x23,0x85,0xB6,0xD7,0x11,0x75,0x93,0xDD,0xDA,0x52,0x38,0xC9,0xAA,0x75,0xEB,0xB3,0xA3,0xF2,0xC8,0xC6,0xA5,0x2F,0x8E,0xCA,0x33,0x16,0x85,0xB1,0x58,0xAA,0xC8,0x6A,0x28,0xA6,0x2C,0x45,0xC3,0xB3,0x31,0x99,0x84,0x72,0x77,0x11,0xD9,0x60,0xA6,0x6D,0xDC,0xC5,0xD4,0xCD,0xFF,0x06,0x06,0x06};
|
||||||
|
//const uint8_t spTHOUSAND[] PROGMEM = {0x08,0x68,0x2A,0x14,0x03,0x04,0xE8,0x32,0x9C,0x00,0xD5,0x46,0x2C,0x3F,0xE5,0x08,0xD1,0xAA,0x7C,0xFC,0xDC,0xAB,0x5C,0xAA,0xC8,0xF1,0x4B,0xAC,0x6E,0xD5,0xC9,0xC7,0xAB,0x7E,0x2A,0x4D,0x67,0x1D,0xBF,0x86,0xCD,0x54,0x9D,0x75,0x82,0xEA,0x2F,0xD2,0x68,0xE5,0x8A,0x4A,0x1C,0x37,0xA1,0x97,0x2D,0x8A,0xCE,0xC3,0x35,0x5E,0xB6,0x24,0x29,0xA9,0xF0,0x5C,0x15,0xDA,0xCB,0x28,0xD5,0xBC,0x5D,0xE8,0x9F,0xA0,0x50,0x55,0xE5,0x71,0x68,0xDD,0xE2,0x15,0x2C,0x92,0xA5,0xB4,0x25,0x84,0x2A,0xD7,0xE5,0xD2,0x17,0x1B,0x6E,0x1C,0x9B,0xD2,0x98,0xA4,0x59,0x53,0xB6,0x0E,0x53,0x36,0xE2,0x41,0x9E,0x39,0x4C,0x59,0x99,0x39,0x5B,0x6E,0x33,0x16,0x21,0x5A,0x16,0x5A,0xCC,0x98,0xB8,0x59,0x9B,0xA7,0x46,0xA0,0x50,0xEE,0x2E,0x22,0x1B,0xDC,0xB4,0x8D,0xBB,0x98,0xBA,0x49,0x43,0xF3,0xE2,0x6E,0x6E,0xFB,0xFF,0x46};
|
||||||
|
//const uint8_t spONE[] PROGMEM = {0xA6,0x90,0x76,0xCC,0x43,0x6B,0xB9,0x42,0xD8,0x35,0x77,0xA9,0x19,0x72,0xE5,0x46,0xD2,0x62,0x56,0xCB,0xAC,0x9F,0x68,0xE1,0x4E,0x23,0x09,0x71,0x23,0x55,0x3A,0x9E,0xB8,0xC4,0x4B,0x77,0x6D,0x74,0xE3,0x93,0x54,0x7B,0xE5,0x6E,0x2D,0x4F,0xD6,0xEC,0x56,0x84,0xB5,0x3A,0x45,0x0D,0x5D,0xA1,0xD6,0xA8,0xF4,0xC5,0x58,0x84,0x78,0xEC,0x34,0x64,0x6D,0x16,0xEA,0x8D,0xC2,0x90,0x95,0x66,0xB1,0x25,0x0E,0x43,0x92,0x1A,0x43,0x9E,0x26,0x0C,0x49,0x49,0xB4,0x78,0xEA,0x34,0x16,0x1B,0xA6,0xEA,0xB1,0xC9,0x24,0x82,0xBB,0x88,0xC8,0x06,0x00,0xF8,0x26};
|
||||||
|
//const uint8_t spTWO[] PROGMEM = {0x0E,0x58,0x56,0xCB,0x00,0xD7,0xAB,0x19,0xE0,0x38,0xCB,0xE6,0x0C,0x65,0x8A,0x61,0xAD,0x86,0x9D,0xA5,0x79,0xA4,0x2D,0x1E,0x6E,0x61,0x69,0x9A,0xF6,0x79,0x04,0x85,0xA4,0x6B,0xC8,0xEF,0x16,0x17,0x94,0xA1,0xC1,0xBB,0x5B,0x5E,0x61,0x86,0x05,0x7E,0x0A,0xA5,0x0A,0x25,0xA6,0x75,0x3A,0x34,0x8E,0x5F,0xA8,0xEB,0x4B,0xD7,0x49,0xBB,0xE6,0x12,0x8F,0xDD,0xE0,0xC5,0x78,0xB2,0xBC,0x36,0x83,0x15,0xEB,0x2E,0xF2,0x48,0x0D,0x46,0x9E,0x89,0xE9,0x2B,0x31,0xC8,0x32,0x2C,0x9E,0xAB,0xFF,0x5A,0x26};
|
||||||
|
//const uint8_t spTWEN_[] PROGMEM = {0x01,0x98,0xC1,0xC2,0x00,0xCD,0x4E,0x28,0xA0,0xCC,0x8A,0xE2,0xC7,0xA2,0x6E,0x16,0x8D,0x8E,0x57,0xBC,0x4B,0xBA,0xAF,0x3E,0x7E,0x0F,0x45,0xE1,0xDA,0xF9,0x04,0xD3,0x35,0x85,0x7A,0xAB,0x13,0x75,0xE5,0xD4,0x16,0x89,0x46,0xDC,0x94,0xD0,0x51,0xD9,0x4D,0x69,0x56,0x1C,0xC5,0xA9,0x8C,0xD4,0x42,0xB9,0xBB,0x88,0x6C,0x80,0xFF,0x66};
|
||||||
|
const uint8_t spTHREE[] PROGMEM = {0x08,0xA8,0xC2,0x8C,0x02,0x04,0x68,0x2A,0xDC,0xF9,0x51,0x5B,0x96,0x79,0x8D,0x10,0xE5,0xCA,0x2E,0x9A,0x76,0x72,0xD0,0xC2,0x5C,0x25,0x21,0x23,0xCD,0x0C,0x4F,0xD4,0x22,0x7A,0x46,0x34,0x3E,0xF1,0x48,0x86,0xD2,0xB1,0xEA,0x24,0x33,0x16,0x62,0xE7,0xAA,0x55,0xAC,0xD4,0x04,0xD5,0x8D,0x47,0xB3,0x53,0x33,0xE4,0x2C,0x69,0xED,0x4E,0x81,0x30,0x53,0xA7,0xF5,0xBB,0x14,0x43,0xF4,0x92,0x36,0xEC,0x92,0x04,0xD5,0x4B,0xD2,0xB8,0xAB,0x23,0xF4,0x34,0xCE,0x63,0x19,0x57,0x73,0x84,0xAE,0x26,0x69,0x9C,0x8D,0xC0,0xAB,0x6B,0x87,0xB1,0x7B,0x94,0x99,0x8A,0xF2,0x5A,0x66};
|
||||||
|
//const uint8_t spTHIR_[] PROGMEM = {0x08,0xC8,0x22,0x19,0x01,0x4D,0x05,0x0B,0xA0,0x73,0x17,0x03,0x74,0xE1,0x96,0x9C,0x69,0x92,0x4B,0xCC,0xF1,0x08,0xA3,0x77,0x1E,0xAF,0xB2,0xC7,0x2F,0xD6,0xB4,0x2C,0x2F,0x1F,0xBF,0x9B,0xE0,0x0C,0x79,0x7C,0x82,0x6E,0x92,0x3D,0x64,0xF5,0x09,0x7B,0x70,0x09,0xD3,0x39,0x27,0xAA,0x8E,0x23,0xBD,0xAA,0xA6,0xB4,0x39,0x56,0xD3,0xAC,0x85,0x40,0xA1,0xDC,0x5D,0x44,0x36,0xFC,0x16};
|
||||||
|
//const uint8_t spFOUR[] PROGMEM = {0x08,0xA8,0xCA,0x94,0x00,0x5D,0x84,0x31,0x20,0xA9,0x0A,0x05,0x54,0x1D,0x16,0xBC,0xAA,0xDC,0xC3,0xC4,0xCE,0x0A,0x92,0xDA,0x94,0xA0,0x4D,0xC7,0x4F,0x7C,0xDA,0x0B,0x73,0x9F,0x20,0xAA,0x2D,0x73,0xCE,0x75,0x92,0x28,0xB7,0x23,0xD9,0xF7,0xCA,0x82,0xB9,0x16,0xD3,0x5C,0xA3,0x88,0x7A,0x2A,0x83,0x72,0x8D,0x2E,0xEA,0xED,0x08,0xCC,0xD3,0x86,0x68,0xB6,0xCD,0x29,0x77,0x19,0xA3,0xDE,0xD6,0xA0,0xDE,0x65,0x0C,0x66,0x5B,0x82,0x73,0x97,0x31,0xD8,0x2D,0x0B,0xEA,0x53,0xC6,0x10,0xB6,0x24,0xB8,0x77,0x99,0x42,0x98,0x4C,0xE5,0xDC,0x6E,0x0A,0xA3,0x4C,0xC3,0x17,0xFE,0x5A,0x16};
|
||||||
|
//const uint8_t spFOUR_[] PROGMEM = {0x08,0xA8,0xCA,0x94,0x00,0x5D,0x84,0x31,0x20,0xA9,0x0A,0x05,0x54,0x1D,0x16,0xBC,0xAA,0xDC,0xC3,0xC4,0xCE,0x0A,0x92,0xDA,0x94,0xA0,0x4D,0xC7,0x4F,0x7C,0xDA,0x0B,0x73,0x9F,0x20,0xAA,0x2D,0x73,0xCE,0xB5,0x92,0x60,0xAE,0xC5,0x34,0xD7,0xC8,0xA2,0x9E,0xCA,0xA0,0x5C,0x2D,0x8B,0x66,0xDB,0x9C,0x72,0xA7,0x22,0x98,0x6D,0x09,0xCE,0x6D,0x8A,0x30,0xCA,0x34,0x7C,0xE1,0xFF,0x56};
|
||||||
|
//const uint8_t spFIVE[] PROGMEM = {0x08,0xE8,0xD2,0x15,0x03,0x02,0xA8,0x3A,0x5D,0x01,0x55,0x96,0x0E,0x3F,0xA5,0x70,0xE7,0x98,0xBD,0x82,0xDC,0xDB,0x5D,0xAD,0xD6,0x0A,0x4A,0xF8,0x70,0xF5,0x86,0x27,0x2E,0xFE,0xD3,0xC5,0x6B,0x9D,0xB4,0xE9,0xAB,0x94,0x68,0x78,0xAA,0xEA,0x2F,0xC3,0xA3,0xF1,0xE9,0x6A,0xD8,0x88,0xF0,0xD9,0xA7,0x6F,0x61,0xA2,0xDC,0x66,0xAF,0xBE,0x85,0xB6,0x34,0x9B,0xB5,0xFA,0xEE,0x5D,0xD2,0x73,0xCE,0xEA,0xBB,0x33,0x8A,0xAC,0x3A,0x63,0xE8,0x56,0x29,0xAB,0xAB,0x94,0xBE,0x67,0x45,0xCB,0x9E,0x5D,0xFA,0xE6,0x04,0xB3,0x72,0x76,0xEA,0x8A,0x26,0x6F,0xCF,0x29,0xA9,0x4D,0xCA,0x34,0x3D,0x6A,0xC7,0xC1,0x0F,0xFF,0x5A,0x56};
|
||||||
|
//const uint8_t spFIF_[] PROGMEM = {0x08,0x28,0xD4,0x14,0x03,0x06,0x68,0x2A,0x74,0x79,0xCD,0x30,0x75,0xFB,0xE4,0x13,0x4C,0x1D,0xC8,0x13,0xAB,0x4E,0xD0,0x9D,0x62,0x94,0x4F,0x29,0x51,0x53,0x4A,0x9E,0x3E,0x59,0x00,0x4D,0x98,0x28,0x60,0x99,0x54,0x0D,0x20,0x50,0x28,0x77,0x17,0x91,0x0D,0xF0,0x36};
|
||||||
|
//const uint8_t spSIX[] PROGMEM = {0x04,0xF8,0x82,0x8D,0x03,0x0A,0xF8,0xCA,0xDC,0x01,0x5F,0x79,0x28,0xE0,0xEB,0x30,0x05,0x7C,0xED,0xBE,0xBC,0xAD,0x8A,0x34,0x62,0xD5,0x0D,0x4E,0xB4,0xDC,0x12,0x87,0x77,0x1A,0xD5,0x28,0x09,0x1E,0xBE,0x24,0x36,0xA8,0x15,0xCA,0xDD,0x45,0x64,0x03,0x80,0x01,0xF2,0x54,0x31,0xC0,0x57,0x15,0x02,0xF8,0xCA,0x8C,0x01,0xDF,0x58,0x12,0xE0,0x1B,0x0B,0x04,0x7C,0x2F,0x86,0x80,0xEF,0xD4,0xFE,0x5A,0x36};
|
||||||
|
//const uint8_t spSIX_[] PROGMEM = {0x04,0xF8,0x82,0x8D,0x03,0x0A,0xF8,0xCA,0xDC,0x01,0x5F,0x79,0x28,0xE0,0x6B,0xF7,0xE5,0x6D,0x55,0xA4,0x11,0xAB,0x4E,0xB4,0xDC,0x12,0x87,0x77,0x0A,0xCD,0x28,0x09,0x1E,0xBE,0x04,0xB5,0x42,0xB9,0xBB,0x88,0x6C,0x00,0x06,0xE4,0xA9,0x22,0x80,0xAF,0xCC,0x08,0xF0,0x8D,0x25,0x06,0xFE,0x76};
|
||||||
|
//const uint8_t spSEVEN[] PROGMEM = {0x08,0xF8,0x5C,0x9D,0x01,0x5F,0x78,0x08,0xE0,0x8B,0x74,0x05,0x7C,0x15,0xAE,0x81,0x61,0x57,0x6B,0x9A,0xDC,0x75,0x8E,0xD7,0x6D,0x48,0x89,0x2F,0x3E,0x41,0x0B,0xED,0x29,0x3A,0xFB,0x44,0xD5,0xA7,0x87,0xDA,0xA2,0x96,0xC4,0x50,0x11,0xCA,0xB5,0x54,0xAD,0x65,0x6A,0x88,0xB8,0x6A,0x6D,0x0E,0x63,0xC6,0xD6,0xB8,0x8D,0xB9,0x46,0x38,0xD9,0xEC,0x34,0xE5,0xAC,0x45,0xBE,0x75,0xC2,0x94,0x84,0x78,0xBB,0x37,0xB6,0x93,0x9E,0xC8,0x24,0x82,0xBB,0x88,0xC8,0x06,0x00,0x80,0xFF,0x5A,0x76};
|
||||||
|
//const uint8_t spSEVEN_[] PROGMEM = {0x08,0xF8,0x5C,0x9D,0x01,0x5F,0x78,0x08,0xE0,0x8B,0x74,0x05,0x7C,0x15,0xAE,0x81,0x61,0x57,0x6B,0x9A,0xDC,0x75,0x4E,0xD0,0x42,0x7B,0x8A,0xCE,0xBE,0x41,0x4B,0x62,0xA8,0x08,0xE5,0x5A,0xAA,0xD6,0x32,0x35,0x44,0x5C,0xB5,0x36,0x87,0x31,0x63,0x6B,0xDC,0xDB,0x34,0xE6,0x1A,0xE1,0x64,0xB3,0xC3,0x94,0xB3,0x16,0xF9,0xD6,0x71,0x53,0x12,0xE2,0xED,0xDE,0xF8,0xFF,0x0E};
|
||||||
|
//const uint8_t spEIGHT[] PROGMEM = {0x23,0x1E,0xC5,0x58,0x33,0xA7,0x9E,0xA0,0x6A,0xF1,0xAD,0x9E,0xB2,0xE2,0xEE,0x49,0xAB,0x3A,0xCA,0x2A,0x66,0x72,0x94,0xE9,0xDA,0xBB,0x0A,0xC3,0x30,0x8C,0xB5,0x1D,0x5B,0x4C,0x42,0xB9,0xBB,0x88,0x6C,0x00,0x00,0x01,0x5C,0x91,0x26,0x01,0x04,0x14,0x9F,0xFA,0x5A,0x0E};
|
||||||
|
const uint8_t spEIGH_[] PROGMEM = {0x23,0x1E,0xC5,0x58,0x33,0xA7,0x9E,0xA0,0x6A,0xF1,0xAD,0x9E,0xB2,0xE2,0xEE,0x49,0xAB,0x3A,0xCA,0x2A,0x66,0x72,0x94,0xE9,0xDA,0xBB,0x0A,0xC3,0x30,0x8C,0xB5,0x1D,0x5B,0x4C,0x42,0xB9,0xBB,0x88,0x6C,0x00,0x80,0xFF,0x4E};
|
||||||
|
//const uint8_t spNINE[] PROGMEM = {0xA1,0x4A,0x4C,0xF4,0x31,0xDD,0x85,0x32,0x71,0xB6,0xC7,0x74,0x97,0x8A,0xCC,0x54,0x1F,0xCB,0x5D,0xC9,0x33,0x35,0x7D,0xCC,0xE4,0x2D,0x6B,0x20,0xF9,0x58,0xEB,0x9F,0xA4,0xCB,0x56,0x13,0x6F,0x74,0xE2,0xAE,0x37,0x5C,0x3D,0xD1,0x89,0x9B,0xBD,0x74,0xF1,0x44,0x27,0x69,0xE6,0xDA,0xD5,0x13,0x9D,0xB4,0xAB,0x9B,0x10,0x4F,0x74,0xF2,0x29,0x67,0xC2,0x3C,0xE5,0x29,0xA7,0xE9,0xAA,0x90,0x54,0xA7,0x9A,0xBE,0x3D,0x52,0x5A,0x9D,0x66,0xC5,0x51,0x49,0x6B,0x74,0xDA,0x95,0x46,0x30,0xA2,0xD1,0xE8,0x66,0x2E,0xE4,0xCA,0xCA,0x6D,0x58,0x21,0x89,0x3A,0x23,0x87,0x21,0x73,0xB5,0x71,0x4D,0x6A,0x86,0x20,0x2C,0xCE,0xCD,0x89,0x1A,0x82,0xB0,0x5C,0xB5,0x24,0x6A,0x08,0x22,0x2A,0x2D,0x3D,0xAB,0x3E,0x4A,0xAD,0x34,0xF3,0xF5,0x5A,0x4E};
|
||||||
|
const uint8_t spNINE_[] PROGMEM = {0xA1,0x4A,0x4C,0xF4,0x31,0xDD,0x85,0x32,0x71,0xB6,0xC7,0x74,0x57,0xF2,0x4C,0x4D,0x1F,0x33,0x79,0xCB,0x1A,0x48,0x3E,0xD6,0xFA,0x27,0xE9,0xB2,0xD5,0xC4,0x1B,0x9D,0xB8,0xD9,0x4B,0x17,0x4F,0x74,0xD2,0xAE,0x6E,0x42,0x3C,0xD1,0x29,0xA7,0xE9,0xAA,0x90,0x54,0xA7,0x9A,0xBE,0x3D,0x52,0x5A,0x9D,0x66,0xC5,0x51,0x49,0x6B,0x74,0xDA,0x95,0x46,0x30,0xA2,0xD1,0xE8,0x66,0x2E,0xE4,0xCA,0xCA,0x6D,0x58,0x21,0x89,0x3A,0x23,0x87,0x21,0x73,0xB5,0x71,0x4D,0x6A,0x86,0x20,0x2C,0xCE,0xCD,0xC9,0xFF,0x41};
|
||||||
|
//const uint8_t spA[] PROGMEM = {0x27,0x5A,0x3E,0x95,0xDB,0xDB,0x9C,0x68,0xDA,0x26,0x6D,0xAF,0x75,0xA2,0xA5,0x8B,0xBD,0xBD,0xF6,0x89,0x86,0x4F,0xCA,0xF2,0xDA,0x27,0xEA,0xC1,0xB8,0x2A,0xEB,0x9C,0xB8,0x07,0xE5,0xAA,0xAA,0x72,0xD2,0x1E,0x45,0xAA,0xBA,0xCA,0x2A,0x47,0x13,0xF1,0xEA,0x29,0xAB,0x9B,0xD9,0x59,0xA6,0x96,0x8C,0x7E,0x14,0x23,0x99,0x9A,0x3D,0xC6,0x1E,0x98,0x73,0xAB,0x52,0x1B,0x47,0x12,0xF2,0xAE,0xD9,0x75,0x2C,0x63,0x4F,0xC4,0x59,0x53,0xE5,0xFF,0x39,0x25,0x79,0x61,0x41};
|
||||||
|
const uint8_t spACORN[] PROGMEM = {0x23,0x9B,0x35,0x85,0xD3,0x96,0x9C,0x64,0xD6,0x12,0x0A,0x5F,0x7C,0xA2,0x95,0xD6,0x30,0x6C,0xF1,0x89,0x56,0x18,0x86,0xCC,0x45,0x2B,0x5A,0xA1,0x11,0x2B,0x1B,0xB7,0x68,0x34,0x06,0xCF,0x9E,0x94,0xB2,0x91,0x19,0x32,0xAB,0x96,0x2A,0x84,0x72,0x77,0x11,0xD9,0x00,0x0A,0x08,0x51,0xC9,0x02,0x25,0x8F,0x6D,0x54,0x4D,0x66,0xB6,0x22,0x86,0x09,0x33,0xDA,0xD5,0xDA,0xE8,0x2A,0xD3,0xB0,0x4F,0xEB,0x92,0xA9,0xCA,0xA0,0xBC,0x6D,0x48,0xA6,0x2A,0x83,0xF2,0x95,0x29,0xD9,0xEC,0x34,0xEC,0x9B,0xE6,0x90,0xAA,0x5D,0x78,0x73,0x98,0x63,0xC9,0x74,0xD6,0x57,0x6E,0x8E,0xCB,0x42,0x6C,0x66,0xB9,0x29,0x0D,0x4B,0xE6,0x8E,0x1B,0xC6,0x94,0x2C,0x84,0xA2,0x73,0x98,0xB2,0x71,0x0B,0xF0,0xCC,0x6E,0x4E,0x3A,0xD4,0xD8,0xB3,0xAA,0xB9,0x68,0x33,0x23,0xD5,0xF2,0x25,0x51,0x15,0x31,0x41};
|
||||||
|
//const uint8_t spAFTER[] PROGMEM = {0xA5,0xC9,0x76,0xCB,0x1C,0x13,0xAF,0x3A,0xAB,0x1D,0x0B,0xEE,0xBC,0xEA,0xAC,0x6F,0x2C,0x38,0xF3,0xA9,0xB3,0xB9,0xF6,0x90,0xCC,0xA7,0xCA,0xFA,0x3A,0x82,0x33,0x9F,0x2A,0x9B,0xED,0x08,0xCE,0xBC,0xEA,0xEC,0x3B,0xD3,0xB1,0x57,0x69,0xB2,0xCD,0x6C,0xA3,0xD6,0x04,0x68,0xCE,0x44,0x02,0x14,0x40,0xA0,0x08,0xEE,0x22,0x22,0x1B,0x14,0xB0,0x8D,0x7B,0xAB,0x06,0x33,0xB3,0xD2,0x4C,0xA7,0xAA,0xD6,0x3C,0xCD,0x56,0x9D,0xBA,0x3A,0x8D,0x34,0x5D,0x35,0xDA,0xE2,0xB5,0xD2,0xEC,0x55,0x68,0x73,0xF2,0x74,0xF5,0x55,0xFF,0x39,0x49,0x41,0x71,0x41};
|
||||||
|
//const uint8_t spAGAIN[] PROGMEM = {0xA9,0x28,0x2E,0x64,0x68,0x26,0xAF,0xB2,0x26,0xF3,0xA4,0xAE,0x73,0x8A,0x1A,0xDC,0x4A,0x62,0xF6,0xC9,0xBA,0x6B,0x2A,0x93,0xC5,0xA9,0x28,0xC2,0x71,0x39,0x26,0xFB,0x2C,0x15,0xDE,0xA8,0x98,0x9B,0x93,0x91,0x4C,0x19,0x90,0x59,0x71,0x56,0x34,0x5C,0x40,0x55,0x55,0x3E,0x61,0x0B,0xC2,0x13,0x1B,0xE5,0x44,0x3D,0x89,0x56,0x74,0xDC,0x13,0x77,0xAF,0x3C,0x31,0x55,0x4E,0x32,0x7C,0x50,0x45,0x2D,0x5E,0xD9,0xF0,0x4E,0x59,0xB5,0x78,0x95,0x23,0x26,0x59,0x65,0xED,0x55,0xF7,0x24,0x94,0x55,0x65,0x47,0x3B,0xA4,0x92,0x5D,0x55,0x99,0x5D,0x1A,0xBA,0x26,0xCD,0xD9,0x4A,0x61,0x2C,0x9C,0x2A,0x33,0x9D,0x84,0x31,0x29,0x4B,0xE7,0xF0,0xEA,0xC6,0x64,0x34,0x9C,0x23,0x4D,0x18,0x8B,0xE4,0xD6,0x50,0x2F,0x61,0x48,0x5A,0xD3,0xC2,0x5D,0xFD,0x15,0x39,0x55,0x79,0x59,0x41};
|
||||||
|
//const uint8_t spAMOUNT[] PROGMEM = {0xA3,0x6E,0x6E,0xDC,0x95,0x1A,0x9E,0xB2,0xBA,0xC9,0x30,0x5A,0x74,0x8B,0x55,0xA4,0xE2,0x29,0x94,0x93,0x4B,0x91,0x9C,0x14,0x43,0xB7,0x6B,0x79,0x36,0x52,0x0A,0xD5,0xAD,0xE7,0x25,0x4D,0x46,0x5A,0x21,0xD7,0x9D,0x28,0x87,0x75,0x75,0x59,0x78,0x82,0xE2,0xAE,0x42,0xB5,0xE1,0x09,0xAA,0xBB,0x72,0xB3,0x86,0x27,0xAA,0xEE,0x3A,0xCD,0x6A,0x9D,0xBC,0xB4,0x2E,0xB7,0xAC,0x72,0xCA,0x1A,0x3A,0xD2,0x74,0xCA,0x6A,0x4A,0x2E,0x0F,0xD1,0x59,0xAD,0x2D,0x49,0x5B,0x28,0xBC,0xA4,0xB6,0x47,0xA8,0x14,0x57,0xE7,0x5B,0xD6,0x0B,0xE5,0xEE,0x22,0xB2,0x01,0x40,0x01,0x4B,0x67,0x08,0xE0,0x67,0x4F,0x04,0xB4,0x94,0xFA,0x39,0x41};
|
||||||
|
//const uint8_t spAN[] PROGMEM = {0xAB,0x6E,0xA5,0xD4,0xCC,0x27,0x9F,0x72,0xBA,0x75,0x75,0x69,0x75,0xCA,0xE9,0x36,0xD4,0xB9,0xD5,0xA9,0x86,0x5F,0x37,0xE7,0xC5,0xA7,0x1A,0x7E,0xC3,0x9D,0x1A,0x9F,0x6A,0xB8,0x75,0x0F,0x5E,0x74,0xEA,0x61,0xD7,0x3D,0x64,0xD5,0x69,0x86,0x19,0xB7,0xD0,0x55,0xAB,0xE9,0xA6,0x3D,0xC4,0x5A,0x95,0xBA,0xB1,0xC0,0x51,0x9B,0xDA,0xAA,0xAA,0x94,0x96,0x23,0x6E,0xAB,0xB2,0x54,0x59,0x4E,0x27,0xA9,0xAA,0xC6,0x4C,0xCD,0x1D,0xFD,0x11,0x39,0x41};
|
||||||
|
//const uint8_t spAND[] PROGMEM = {0x2B,0x98,0x61,0x52,0x43,0x1B,0x9F,0x60,0xF8,0x0D,0x73,0x6B,0x74,0x82,0xE1,0xCF,0xD5,0x3D,0xD6,0x09,0x86,0x3B,0x37,0xF7,0x5A,0x27,0x9C,0x76,0xCC,0xDD,0x6B,0x9D,0x68,0xB8,0xB5,0x70,0x8F,0x75,0xB2,0x1E,0xC6,0xC3,0xBD,0xD6,0xAA,0x6A,0x8B,0x08,0xCF,0x28,0xA3,0x6B,0xA9,0x2D,0x3C,0x6A,0xB5,0xBE,0xF9,0xD6,0xB4,0xA8,0x55,0x86,0x1A,0xC3,0x42,0xB2,0x56,0x1C,0x5D,0x1F,0xA5,0x45,0x87,0xC5,0x32,0x83,0x97,0xDE,0x65,0x9E,0xC8,0x0E,0x6A,0x0C,0xD2,0xAB,0x35,0x62,0xA9,0xD1,0xCB,0xCC,0x36,0x4B,0x4C,0x06,0xA1,0xDC,0x5D,0x44,0x36,0xB8,0x69,0x1B,0x77,0x31,0x75,0x93,0x86,0xE6,0xC5,0xDD,0xDC,0xF6,0xFF,0x25,0x51,0x09,0x15,0x79,0x39,0x41};
|
||||||
|
//const uint8_t spANOTHER[] PROGMEM = {0xA5,0x2E,0x29,0x3C,0xD4,0x27,0xAD,0xBA,0xA6,0xF4,0x94,0xA8,0x75,0xCB,0x55,0xD4,0xE8,0xE1,0x12,0x75,0x5A,0x59,0x0C,0x66,0x73,0x3B,0x29,0x65,0xB3,0x68,0xC7,0x65,0x77,0x34,0x5D,0x96,0x86,0x4A,0xAB,0x55,0x36,0x3B,0x11,0xAA,0xAD,0x6E,0x79,0xCA,0xA6,0x26,0xC3,0xB5,0xD5,0x2D,0x53,0x9B,0x75,0x59,0xB2,0x4C,0x72,0x5D,0x52,0xAE,0xA1,0x96,0xB8,0xB4,0x55,0xB6,0xA6,0x4A,0x93,0x51,0x67,0x97,0x5E,0x54,0x57,0x57,0x95,0x83,0x87,0xCB,0x54,0x5D,0x55,0x8E,0x5E,0x2A,0x13,0x77,0x55,0x39,0x79,0x9A,0x54,0x9D,0x52,0xD7,0x10,0x59,0xA2,0x73,0xFE,0x25,0x51,0x75,0x65,0x39,0x41};
|
||||||
|
//const uint8_t spANSWER[] PROGMEM = {0x23,0xC8,0xF6,0xDA,0x43,0x3C,0x1E,0x3F,0x9B,0xCD,0x10,0xC9,0x78,0xFC,0x6C,0xB6,0x5C,0x35,0xE3,0x09,0xB2,0xDB,0x72,0xB1,0x94,0x27,0xC8,0xFE,0xCA,0xD4,0x53,0x9E,0xA8,0xC4,0xF7,0xA4,0x48,0x34,0xA2,0xA2,0x56,0x13,0xB4,0x69,0x8B,0x0B,0x4F,0x69,0xF0,0xB5,0x39,0x51,0x71,0x54,0x1A,0x0D,0x9B,0x04,0x01,0x1D,0xB8,0x11,0xE0,0x4B,0x51,0x09,0x58,0x40,0x03,0xA5,0x6A,0xA2,0x24,0x31,0x66,0xB7,0xBA,0xBA,0x30,0xE7,0xB8,0xBD,0xFA,0x1A,0x3D,0x4C,0x6A,0xF1,0x1A,0x9A,0xCB,0x48,0xE3,0xD5,0x6B,0xAC,0xBE,0x22,0x95,0x57,0xB7,0xB1,0x64,0x4F,0xE3,0x9C,0x93,0xA6,0x92,0x9A,0xCD,0x22,0xD6,0xFF,0x4D,0x39,0x41};
|
||||||
|
//const uint8_t spANY[] PROGMEM = {0xA3,0xEA,0xC1,0x59,0x33,0x17,0x9F,0x6A,0xF9,0x52,0x0E,0x5B,0x7D,0x8A,0xE5,0xC6,0x28,0x6C,0xF3,0x29,0xA6,0x1B,0xE5,0xF4,0xCD,0xA7,0xDC,0x66,0x94,0x23,0x56,0x8D,0xB2,0x4B,0x85,0x31,0x8B,0x32,0xAB,0x55,0x6D,0xDB,0x44,0xE6,0x0B,0x57,0x75,0xEC,0x30,0x44,0xAE,0x5A,0xD5,0xB6,0x83,0xD0,0xD5,0x70,0x55,0xCB,0x35,0x70,0xE5,0xC2,0x55,0x4D,0x3F,0xC0,0x55,0x33,0x47,0x35,0x7C,0x80,0x55,0x95,0x0A,0x6D,0x4F,0x82,0x15,0x13,0xE4,0xFF,0x51,0x19,0x21,0x41,0x19,0x49,0x41,0x35,0x41};
|
||||||
|
//const uint8_t spAVAILABLE[] PROGMEM = {0x23,0x6F,0xB6,0x2C,0x8D,0x57,0x9D,0x62,0xE8,0x89,0x08,0xDA,0x7C,0xB2,0xAE,0xC6,0xDD,0xF9,0xD5,0xC8,0x9B,0x2C,0x0D,0xA3,0x57,0xA9,0xAA,0x3C,0xD5,0x95,0x5A,0x85,0xBA,0x53,0x13,0x73,0xF6,0x16,0xEA,0xCE,0xCD,0xC4,0x44,0x5D,0xCB,0xAA,0x36,0x49,0xE5,0x36,0x2B,0xEA,0xC6,0x38,0x53,0x56,0x9D,0x68,0xB8,0x64,0x2F,0x69,0x75,0xA2,0xE1,0x93,0xA2,0x6C,0xF1,0x89,0x46,0x08,0x8A,0xF2,0x59,0x27,0x9A,0xAE,0xC0,0x32,0x5A,0xAD,0x78,0x18,0x25,0x8F,0x5C,0xDC,0xD2,0xC2,0x4B,0x94,0x6B,0x53,0xCF,0x56,0x9E,0x83,0x27,0xEA,0xB4,0x2A,0x45,0x4A,0x4D,0x36,0x39,0x19,0x95,0x81,0xA6,0xB9,0x46,0x63,0x36,0x25,0xEE,0xE6,0xE6,0xB1,0x4B,0x1B,0xC3,0xBA,0xA8,0x2E,0x4E,0x7D,0xC8,0x15,0xAA,0xF1,0x2A,0x0D,0x21,0x75,0xA8,0x59,0x6B,0x3F,0xF9,0xD9,0x4C,0x3E,0x65,0x06,0x65,0xEB,0xFF,0x21};
|
||||||
|
//const uint8_t spB[] PROGMEM = {0xA9,0xB2,0x56,0x3D,0xBD,0x2B,0x95,0xB8,0x28,0xC1,0x9D,0xAD,0xD5,0xBC,0x69,0x1C,0xA2,0xAF,0x51,0xF3,0x97,0x0D,0xB0,0xBE,0xC6,0x3B,0x5C,0xD1,0xF2,0x06,0x32,0x1B,0x7B,0x67,0x2B,0x5F,0xD1,0x80,0x66,0x62,0x8F,0x6A,0x3B,0x26,0x9E,0x89,0xDD,0x9A,0x1D,0x85,0x70,0xA7,0x4E,0x1A,0x56,0x60,0x94,0xEB,0x3A,0x69,0x9C,0x8E,0xC8,0xBF,0xE2,0xB8,0xB1,0x6B,0xB0,0x9D,0x72,0xEC,0xC6,0x6E,0xC1,0x67,0xD3,0x8E,0x1B,0x47,0x04,0xE9,0xA9,0x28,0xFF,0x11,0x41,0x21};
|
||||||
|
//const uint8_t spBAD[] PROGMEM = {0x08,0x00,0x71,0xC2,0x98,0xD1,0xA7,0xA9,0x5A,0xAA,0x13,0x14,0x15,0x1C,0x69,0xAD,0x4F,0x30,0xEC,0x88,0xAB,0x2F,0x3A,0xC1,0xB0,0x23,0x6E,0x51,0xEB,0x04,0xC3,0x9E,0x84,0x44,0xA3,0x13,0xF5,0xD0,0x16,0x16,0xB1,0x4E,0xDC,0x63,0x7B,0xA8,0xC7,0x3A,0x59,0x8F,0xED,0xA9,0x51,0xEB,0x54,0xAD,0x66,0x84,0x45,0xE5,0x55,0xB7,0x9C,0x91,0xE6,0xB5,0x57,0xDB,0x62,0x78,0x99,0xD7,0x6E,0x7D,0xCD,0xE6,0xEE,0x59,0xA5,0xF5,0x25,0xBA,0x85,0x57,0x99,0xD2,0x97,0xA0,0x11,0xD6,0x75,0xC2,0x98,0xBC,0x66,0xD6,0x46,0xD6,0x23,0x19,0x85,0x72,0x77,0x11,0xD9,0xE0,0xFA,0x6D,0xDC,0xC5,0xD4,0x4D,0xEA,0x9B,0x17,0x77,0x73,0xDB,0xFF,0x39,0x51,0x51,0x75,0x15,0x51,0x21};
|
||||||
|
//const uint8_t spBETWEEN[] PROGMEM = {0xAC,0x55,0xAC,0x3C,0x22,0x63,0xB7,0xBA,0x5A,0x67,0x33,0xED,0xB4,0xF2,0x6A,0x99,0x33,0x6A,0x51,0xC8,0x9B,0x65,0xB1,0xC8,0x44,0xA4,0x10,0xCA,0xDD,0x45,0x64,0x03,0x04,0x60,0x7A,0xB3,0x00,0xCC,0xD0,0x6E,0x80,0x52,0x36,0x8A,0x9B,0x47,0xBB,0x32,0xC7,0x5A,0x6E,0x36,0x29,0x6E,0xB6,0xFA,0x38,0x4D,0x1B,0x65,0xF8,0x9A,0xE3,0x8D,0xA4,0x10,0xD5,0x8B,0x57,0x36,0x13,0x61,0xF4,0xC4,0x1E,0x45,0x77,0x60,0x33,0xED,0xA8,0xB5,0x55,0x61,0xEC,0x94,0xEA,0xD1,0x4F,0x47,0x18,0x33,0x71,0xDA,0x30,0x0C,0x51,0xCE,0xC4,0x6E,0x63,0x37,0x24,0x91,0x95,0xB8,0x8C,0x85,0xBB,0x25,0x87,0xDA,0x3A,0xFE,0x09,0x15,0x79,0x21};
|
||||||
|
//const uint8_t spBOTH[] PROGMEM = {0x85,0xD5,0xA6,0x32,0xC5,0x16,0x8D,0xA2,0x58,0xCD,0xD4,0xB8,0xBB,0x8B,0x53,0x56,0x6B,0x5E,0xA6,0x8F,0x6F,0xB9,0xAA,0x6C,0x2C,0xCA,0xFC,0xCE,0xAA,0x8A,0x51,0x6F,0xD5,0x3B,0xB3,0x6A,0x55,0x50,0xAD,0x2D,0x39,0xA9,0xD5,0x51,0x7A,0x64,0x46,0x2A,0x01,0x34,0x65,0x22,0x01,0x09,0x48,0x80,0x03,0x0C,0x28,0xDC,0x94,0x01,0x41,0x95,0xFE,0x39,0x79,0x15,0x15,0x55,0x21};
|
||||||
|
//const uint8_t spBUTTON[] PROGMEM = {0xA9,0x69,0xCE,0xC2,0x45,0x14,0x9F,0x28,0xFB,0xB5,0x14,0xDD,0x78,0xA2,0x5C,0x26,0x52,0x6D,0xD1,0x8A,0x4A,0xEE,0x2C,0xB7,0x45,0x23,0x2A,0x39,0x23,0x35,0x1A,0x92,0x58,0x28,0x77,0x17,0x91,0x0D,0x00,0xA8,0x28,0x2E,0xAA,0xD0,0x9D,0xA4,0xAA,0xE8,0x8E,0x26,0x75,0x56,0x9A,0x68,0x34,0x83,0xD3,0x55,0x1A,0xB2,0x95,0x54,0x71,0xCF,0x61,0xCE,0x4A,0x22,0x38,0xBD,0x98,0xA5,0x70,0xD7,0x10,0x4F,0x22,0x96,0xA2,0x4C,0x83,0x3D,0xEB,0xFF,0x61};
|
||||||
|
//const uint8_t spC[] PROGMEM = {0x0C,0xF8,0x8A,0x45,0x02,0x1A,0x50,0xC0,0xE7,0x11,0x16,0x30,0xC0,0xE3,0x69,0xCD,0x5D,0x8A,0xC9,0xB3,0x6D,0x2F,0x6F,0x39,0x03,0xE9,0xA9,0xBD,0xFC,0xE5,0x14,0x6C,0xB6,0xF1,0x0E,0x57,0xB2,0x9D,0x82,0xCC,0xD6,0x9E,0xD9,0x28,0x77,0x10,0x94,0x9E,0xDA,0xAD,0xD9,0x49,0x91,0x76,0xE2,0x94,0x7E,0x25,0x46,0xDE,0x89,0x53,0x86,0x15,0x08,0xE5,0xBA,0x4E,0x1D,0xD3,0x38,0x1D,0x92,0x7F,0xC5,0x89,0x63,0x1C,0xDD,0x38,0x3C,0x48,0x4F,0x45,0x71,0x43,0x33,0xA8,0xDB,0x63,0xFB,0xFF,0x51,0x15,0x15,0x51,0x65,0x65,0x41,0x61};
|
||||||
|
//const uint8_t spCASSETTE[] PROGMEM = {0x06,0x68,0x86,0x65,0x84,0x55,0x8B,0x74,0xB9,0xAD,0x13,0xB5,0xEC,0x1A,0x16,0x8D,0x4F,0xD6,0xC3,0x68,0x98,0xB4,0x3A,0x79,0x77,0xA5,0x69,0xB6,0xBA,0x14,0xD5,0xAB,0xB9,0x75,0x29,0x04,0x2C,0xA4,0x86,0x80,0x83,0x23,0x10,0x70,0x99,0x3B,0x03,0x3E,0xCB,0x64,0xC0,0x67,0x91,0x02,0xB8,0x2A,0x42,0x01,0x4B,0x95,0x2D,0xB7,0x59,0x97,0xD2,0x58,0x7C,0xA2,0xEE,0x52,0xC2,0x7D,0xF1,0xC9,0xBA,0x2F,0x09,0xB7,0xD5,0xA7,0xEA,0x3E,0x25,0xDC,0x57,0xA7,0xA6,0x19,0x93,0x8A,0x98,0x89,0x1A,0xA1,0xDC,0x5D,0x44,0x36,0x80,0x00,0xAE,0x48,0x93,0x00,0x02,0xAA,0x6F,0xF8,0x25,0x51,0x15,0x61,0x41,0x25,0x41,0x09,0x61};
|
||||||
|
//const uint8_t spCHARACTER[] PROGMEM = {0x0A,0x68,0x46,0x44,0x01,0x4D,0x91,0xB6,0x60,0x44,0xC1,0x10,0x8F,0xB3,0xDC,0xEE,0xCD,0xCA,0x42,0xCE,0x71,0x5A,0x2E,0x2B,0xCD,0x58,0xC7,0x6B,0x7E,0xA3,0xD5,0x63,0x9D,0xA0,0x85,0xCE,0xB4,0x48,0x74,0xA2,0x96,0xA2,0xCD,0x2D,0xD5,0xC8,0x6A,0xD1,0xC2,0x8A,0xCC,0x23,0x6B,0x45,0x12,0x23,0x33,0xAD,0xBC,0x57,0x35,0xB5,0xCC,0x35,0x8A,0x9E,0x94,0xA2,0xAA,0x31,0x03,0x82,0x62,0x43,0xA0,0x50,0xEE,0x2E,0x22,0x1B,0x00,0x40,0x00,0xDB,0xA4,0x96,0xA2,0x98,0xE0,0xD2,0xAC,0xD4,0xFA,0xEA,0xC3,0x42,0xA2,0x55,0x5A,0x72,0x33,0x4D,0xEF,0xDA,0x6E,0x2D,0x35,0xC2,0x24,0x2B,0xDB,0xF5,0xFF,0x51,0x15,0x51,0x19,0x05,0x59,0x79,0x61};
|
||||||
|
//const uint8_t spCOMPLETE[] PROGMEM = {0x06,0x28,0x29,0x68,0x44,0x29,0xAA,0xA6,0xD6,0xEC,0x15,0xE7,0x9C,0xE6,0x64,0xAB,0x5A,0x9E,0xBD,0x96,0x41,0xB6,0x0D,0x79,0xB2,0xDC,0x48,0xDD,0xCD,0x94,0x49,0x53,0x15,0x7B,0x12,0x54,0x09,0xE5,0xEE,0x22,0xB2,0x01,0x14,0x50,0x7C,0x78,0x00,0x9A,0x61,0x4B,0xC1,0xE2,0x93,0xE8,0x21,0xA7,0x07,0xCB,0x1C,0xDC,0xC1,0xAB,0xEA,0x2C,0x77,0x06,0x03,0xDB,0x5E,0x3C,0xA2,0xA5,0x05,0xFC,0xBA,0x76,0x8B,0x57,0x31,0xE0,0xEE,0xDA,0x24,0x16,0xCA,0xDD,0x45,0x64,0x03,0x00,0x28,0xE0,0x8A,0x34,0x0D,0x20,0xA0,0xFA,0x86,0xFF,0x25,0x51,0x15,0x55,0x05,0x59,0x79,0x61};
|
||||||
|
const uint8_t spCOMPUTER[] PROGMEM = {0x06,0x28,0x29,0x68,0x44,0x29,0xAA,0xA6,0xD6,0xEC,0x15,0xE7,0x9C,0xE6,0x64,0xAB,0x5A,0x9E,0xBD,0x96,0x41,0xB6,0x0D,0x79,0xB2,0xDC,0x48,0xDD,0xCD,0x94,0x49,0x53,0x15,0x7B,0x12,0x54,0x09,0xE5,0xEE,0x22,0xB2,0x81,0x01,0xD5,0x86,0x97,0xA0,0x47,0x22,0xCF,0xAA,0xDC,0xFC,0x26,0x8D,0xB2,0x7D,0xF5,0xF2,0x33,0x6D,0xCD,0xB0,0xD7,0x3B,0xE8,0x11,0x2A,0x84,0x72,0x77,0x11,0xD9,0xA0,0x80,0x6D,0x35,0x1D,0xB0,0x89,0xFB,0x48,0x8A,0x35,0x75,0xED,0xDA,0xAB,0xAA,0xDE,0x2D,0x24,0x57,0xAF,0xB6,0xF9,0xB6,0x14,0x5D,0x5D,0xA6,0x52,0xD3,0x5C,0x73,0xB6,0xDB,0xB3,0x4F,0x4F,0x89,0x31,0xFF,0x15,0x61,0x51,0x25,0x25,0x79,0x61};
|
||||||
|
//const uint8_t spCORRECT[] PROGMEM = {0x0A,0x28,0x71,0xD9,0x00,0xB9,0x39,0x97,0xA8,0xD4,0x66,0xF3,0x68,0x32,0xA2,0x94,0xCD,0x35,0x62,0xF2,0x4A,0x4A,0xD1,0x22,0xB7,0xC5,0x2D,0xCD,0x87,0x93,0xD3,0x5A,0xA7,0x34,0x2E,0x0A,0x75,0xEB,0x12,0xD2,0x30,0x31,0x2C,0xBC,0x73,0x48,0xC2,0xC0,0x0C,0x8B,0x4E,0x25,0x4A,0x13,0x4B,0xD2,0x5A,0x8F,0xA0,0x14,0x4E,0x2E,0x5F,0x7C,0xA2,0x56,0x2C,0x34,0x6C,0xF1,0x89,0x5B,0x90,0xF0,0xC8,0x29,0x27,0xEB,0x49,0x2D,0x3D,0xEA,0xB4,0xA2,0x25,0xD6,0xCE,0x9A,0x8C,0x0A,0xA1,0xDC,0x5D,0x44,0x36,0x00,0x00,0x00,0x28,0xE0,0x8A,0x34,0x0D,0x20,0xA0,0x9A,0x86,0xFF,0x11};
|
||||||
|
//const uint8_t spD[] PROGMEM = {0x0C,0xB8,0xD0,0x64,0x64,0x0F,0x15,0x8B,0x5A,0xE8,0x15,0x6C,0xE1,0xA0,0x39,0x8B,0x8E,0xFB,0x4C,0x00,0x57,0x2F,0x3A,0xEE,0x75,0x09,0x5C,0x33,0xEB,0xF8,0xC7,0x3A,0x70,0xEF,0xEC,0x13,0x6D,0xEB,0x20,0xB3,0xB5,0x46,0x32,0x2D,0x43,0xF6,0xC4,0x1E,0xC5,0x8A,0x0A,0x3A,0x13,0xBB,0x55,0xDB,0x3B,0x70,0x4F,0xE5,0xD6,0xEC,0x68,0xC0,0xBD,0x95,0x7B,0x97,0x87,0x38,0xFD,0x41,0x15,0x41,0x11};
|
||||||
|
//const uint8_t spDATA[] PROGMEM = {0x65,0x3C,0x3A,0x32,0x23,0x64,0xAF,0x78,0x10,0xA7,0xAC,0x6C,0x78,0xA2,0xA1,0x8D,0x3A,0x6B,0xF1,0x89,0x66,0x4C,0xF2,0xB0,0xC6,0x27,0x9A,0xA1,0x49,0xC3,0x5A,0x9D,0x68,0xC6,0x00,0xAB,0x5C,0x34,0xA2,0x59,0x03,0xD4,0x6B,0x56,0x89,0x47,0x64,0x8C,0xAA,0x5A,0x24,0x16,0xCA,0xDD,0x45,0x64,0x83,0x03,0x36,0x4B,0x33,0xC0,0xC6,0xA1,0xA5,0x28,0x4A,0xBD,0xA5,0xA3,0xAC,0xAA,0x79,0xB3,0xD0,0x9C,0xB2,0xA6,0x16,0xD2,0x53,0xF4,0x71,0x5B,0x4A,0x1E,0x75,0xF3,0x5B,0x61,0xAD,0xB9,0x3D,0xC5,0x2E,0xFD,0x51,0x15,0x41,0x11};
|
||||||
|
//const uint8_t spDATE[] PROGMEM = {0xAC,0xDD,0xD0,0x3D,0x2D,0x6D,0x8F,0x74,0xB1,0x24,0xB5,0x48,0x7C,0xA2,0x2E,0x8D,0x2B,0xB3,0xF6,0x09,0x87,0x36,0xAE,0xAE,0xC5,0x27,0xA8,0x5A,0x7C,0xAB,0xA7,0xAC,0xB8,0x7B,0xD2,0xAA,0x8E,0xB2,0x8A,0x99,0x1C,0x65,0xBA,0xF6,0xAE,0xC2,0x30,0x0C,0x63,0x6D,0xC7,0x16,0x93,0x50,0xEE,0x2E,0x22,0x1B,0x00,0x40,0x00,0x57,0xA4,0x49,0x00,0x01,0xC5,0xA7,0xFE,0x79,0x11};
|
||||||
|
//const uint8_t spDO[] PROGMEM = {0x0C,0x98,0x92,0x79,0x04,0x53,0x32,0x57,0x47,0xA7,0x19,0x8C,0xA0,0x90,0x74,0x0D,0xF9,0xDD,0xE2,0x82,0x32,0x34,0x78,0x77,0xCB,0x2B,0xCC,0xB0,0xC0,0x4F,0xA1,0x54,0xA1,0xC4,0xB4,0x4E,0x87,0xC6,0xF1,0x0B,0x75,0x7D,0xE9,0x3A,0x69,0xD7,0x5C,0xE2,0xB1,0x1B,0xBC,0x18,0x4F,0x96,0xD7,0x66,0xB0,0x62,0xDD,0x45,0x1E,0xFD,0x25,0x41,0x19,0x19,0x79,0x11};
|
||||||
|
//const uint8_t spDOLLAR[] PROGMEM = {0xA4,0xD2,0x34,0xA3,0x2B,0x1D,0x8D,0xA0,0x11,0xF7,0xB0,0x4A,0x7D,0x82,0xA2,0x5B,0xCD,0xBC,0xD3,0x09,0x72,0x98,0x70,0xD5,0x8E,0x27,0xC8,0xE1,0xD2,0xD5,0x32,0x9D,0x30,0x87,0x2D,0x57,0xCB,0x74,0xA2,0x14,0x2F,0x5D,0x3C,0xD3,0x8A,0xB3,0xAB,0x76,0x8A,0x4C,0x2D,0xCD,0x26,0x32,0xA0,0x96,0xD6,0x7C,0xB4,0x39,0x76,0x18,0x77,0xCB,0x36,0xE5,0x9C,0xA1,0x3C,0x95,0xD3,0x94,0x5B,0x99,0x69,0x55,0x8E,0x8B,0x5D,0xFE,0x15,0x39,0x79,0x11};
|
||||||
|
//const uint8_t spDONT[] PROGMEM = {0x61,0x3C,0xD5,0x4B,0x23,0xEC,0xAE,0xA2,0x0B,0x67,0xF3,0xE8,0x74,0x8A,0x61,0x52,0x2C,0x74,0xF7,0x29,0xBB,0x2E,0xB3,0x94,0x3D,0xA7,0xEC,0x3A,0xCD,0x4B,0xF6,0x9C,0xB2,0x9B,0x54,0x4B,0xD9,0x7D,0xCA,0xAE,0x43,0x3D,0xB9,0xF7,0xA9,0x9A,0x76,0x4B,0x13,0xDF,0xAD,0xCA,0x56,0x3D,0xC8,0x3C,0xA7,0x2A,0x09,0x91,0x55,0x4B,0x1A,0xEA,0xAC,0xB0,0x4B,0xC2,0x0D,0x6A,0x44,0x70,0x17,0x11,0xD9,0x20,0x80,0x2D,0xD2,0x24,0x80,0x80,0xE2,0x53,0xFF,0x39,0x75,0x79,0x11};
|
||||||
|
//const uint8_t spDOWN[] PROGMEM = {0x08,0x48,0x60,0x82,0xD4,0x8E,0xBA,0x57,0xB4,0xED,0xE6,0x74,0x92,0x6A,0x1E,0x8D,0x4F,0xD4,0x54,0x6A,0x8A,0xB7,0x3A,0x51,0x13,0x2B,0xA5,0xB1,0xE8,0x44,0x55,0x9F,0x95,0x58,0xAB,0x13,0x55,0xFB,0x9E,0xEA,0xAD,0x4E,0x5C,0xED,0x47,0xA9,0x37,0x3C,0x69,0x35,0x1F,0x69,0xD1,0xF0,0xE4,0xD5,0x5D,0xA4,0xF9,0xAA,0x53,0x96,0xB0,0x51,0x66,0x8B,0x4E,0x5D,0xDC,0x7A,0x86,0xAE,0x1C,0x43,0x29,0x6D,0x29,0x76,0x2B,0x8D,0x29,0xA4,0x78,0xE4,0xAC,0x30,0xC5,0xEC,0xE2,0x51,0x93,0xDC,0x14,0x93,0xAB,0xD8,0x34,0x72,0x53,0x32,0x96,0xA2,0x99,0xD9,0x8D,0x49,0xC8,0xB8,0x86,0x67,0x33,0x44,0x21,0x53,0x16,0x5A,0xCC,0xE0,0x65,0x54,0x69,0xBA,0x36,0x7D,0xE4,0xDA,0xA5,0xA3,0xF8,0xFF,0x51};
|
||||||
|
//const uint8_t spE[] PROGMEM = {0x21,0x3A,0x4A,0x41,0x77,0x63,0xCF,0x68,0x27,0x3B,0x1D,0xC5,0x6A,0x4A,0x38,0x55,0x7B,0x16,0xB3,0x2E,0xED,0xAA,0x42,0x78,0x15,0xB5,0xB6,0xA5,0x9F,0x19,0xD9,0x2F,0xE3,0xD4,0x3E,0x0F,0x69,0x98,0x01,0xD9,0x2F,0xE3,0xE4,0xE1,0xFF,0x09,0x61,0x41,0x51};
|
||||||
|
//const uint8_t spEACH[] PROGMEM = {0xA5,0x58,0x36,0x91,0xB6,0x1B,0xED,0x62,0x15,0xD3,0x05,0xF0,0xD6,0xC2,0x55,0xCE,0xE0,0x20,0x5B,0x0B,0x77,0xB9,0xCA,0x11,0x05,0x7C,0xBA,0x62,0xA9,0x7A,0x40,0xEE,0xAE,0x8A,0xA8,0x13,0xC1,0x5D,0x44,0x64,0x03,0x28,0x60,0x67,0x17,0x07,0xEC,0xD6,0x19,0x80,0x5D,0x3A,0x03,0xB0,0xFA,0xA6,0x05,0x14,0xB0,0xEA,0xB8,0x00,0xE6,0x6C,0x27,0xC0,0x4C,0x26,0xFF,0x39,0x51,0x35,0x51,0x19,0x51};
|
||||||
|
//const uint8_t spELEVEN[] PROGMEM = {0x25,0xED,0x5A,0x29,0x36,0xAB,0x8C,0xAC,0x1B,0xC3,0xD8,0x5A,0xB8,0xE2,0x41,0x5C,0xEC,0x32,0xD3,0x48,0x07,0x56,0xB5,0xB2,0x34,0x2D,0xA9,0xC0,0xC3,0x3A,0x56,0xB5,0xA4,0x80,0x08,0xED,0x6C,0xD5,0xE2,0x0E,0xDC,0xB9,0xA3,0xE5,0x09,0x06,0x77,0xEE,0xB4,0x45,0x27,0x1A,0xA2,0x34,0xD2,0x16,0x9D,0xA8,0xCB,0xB4,0x72,0x7F,0x74,0x92,0xAE,0xC7,0xDD,0x78,0x51,0xCB,0x4B,0x2C,0x0F,0x96,0xDA,0xA1,0x69,0xAA,0x2C,0x84,0x63,0xBB,0xB9,0xF1,0x52,0x57,0x4E,0x9C,0xC6,0x5C,0x23,0x9C,0x6C,0x76,0x98,0x72,0xD6,0x22,0xDF,0x3A,0x66,0x4A,0x42,0xBC,0xDD,0x1B,0xDB,0x09,0x8D,0x22,0xB8,0x8B,0x88,0x6C,0x00,0x80,0xFF,0x11,0x51,0x71,0x41,0x71,0x39,0x51};
|
||||||
|
//const uint8_t spENGAGED[] PROGMEM = {0xA3,0x18,0x41,0xD9,0xAB,0xE6,0x9C,0x7C,0x86,0x64,0x89,0x98,0x7D,0xD2,0x29,0x82,0xB4,0xA3,0x56,0x49,0x93,0x92,0x28,0x4A,0x77,0x35,0x4B,0x59,0x56,0xD8,0x45,0xAD,0x25,0x66,0x28,0x13,0xC1,0x5D,0x44,0x64,0x23,0x20,0x28,0xEA,0x96,0x0F,0x2D,0xE0,0x55,0xB3,0x56,0x3C,0xA4,0x63,0x4E,0xCD,0xBA,0xD1,0x89,0x7B,0x30,0xAA,0x8C,0x3A,0x27,0xE9,0x91,0xB5,0xA2,0xAA,0x9E,0xB4,0x45,0xF2,0x8C,0xAE,0x7B,0x8A,0x9E,0xC8,0x32,0xBB,0xEA,0xA9,0x7A,0x65,0xC9,0xE8,0xAA,0xAB,0x9D,0x39,0x49,0x3A,0x17,0x8F,0x61,0x24,0x43,0x9D,0x7C,0x5C,0xA6,0xEE,0x49,0x6A,0x7A,0x52,0x1A,0x47,0x61,0x8C,0xEA,0x39,0x64,0x10,0xC1,0xDD,0x45,0x64,0x03,0x02,0x40,0xEC,0x0A,0xCF,0xAC,0xEE,0x12,0x2A,0x45,0x00,0x7B,0x99,0x4A,0x40,0x01,0xA7,0x94,0x09,0x60,0x47,0x13,0x04,0x8A,0xE0,0x2E,0x22,0xB2,0xC1,0x4D,0xD7,0xB8,0x8B,0xA9,0x9B,0x34,0x0C,0x23,0xEE,0xE6,0xB6,0xFF,0x25,0x51,0x15,0x39,0x51};
|
||||||
|
//const uint8_t spENTER[] PROGMEM = {0x23,0x98,0x29,0x45,0xD2,0x9A,0x9C,0x60,0xF9,0x16,0x49,0x6D,0x7C,0x83,0x13,0x6C,0x9D,0xAC,0x65,0x8D,0x57,0xD8,0xA4,0x72,0x79,0xD4,0x6E,0x51,0x91,0x22,0xA7,0x9E,0xA4,0xC4,0x99,0xAB,0x3E,0x55,0x3C,0x97,0x44,0xC1,0xF1,0x12,0x76,0x50,0x23,0x94,0xBB,0x8B,0xC8,0x06,0x03,0x7C,0x11,0xA1,0x80,0x4D,0x23,0x5A,0x96,0x9D,0x79,0x7A,0x57,0x19,0x7D,0xF5,0xEE,0x6E,0xBE,0x78,0x8C,0xD5,0xA5,0x85,0xD9,0xEA,0x36,0x95,0x98,0xE6,0x1A,0xB3,0xCA,0x5C,0x62,0x98,0x5B,0xCE,0xCC,0xF3,0xFF,0x25,0x79,0x25,0x25,0x51};
|
||||||
|
//const uint8_t spERROR[] PROGMEM = {0x2B,0x98,0xB1,0xC5,0x9C,0x1B,0x1F,0x7F,0xBA,0x96,0x48,0xAE,0x75,0x82,0x1E,0xCA,0xCA,0xA4,0xD1,0x09,0x6B,0xB3,0x12,0xF3,0xC6,0x23,0x2E,0x5B,0x82,0x4B,0x33,0x8F,0xB4,0x2C,0x29,0x2A,0x6F,0xD5,0xB3,0x51,0xD7,0x66,0x23,0x2E,0x8B,0x4E,0x5F,0x4B,0x57,0xA8,0x2C,0x3E,0x43,0x8D,0x55,0xA9,0xB2,0x7A,0x0C,0x25,0x57,0x85,0xCA,0xE3,0x39,0x94,0xB1,0xD4,0x68,0x93,0x9A,0xFC,0x51,0x05,0x41,0x61,0x65,0x51};
|
||||||
|
//const uint8_t spESCAPE[] PROGMEM = {0x21,0x68,0x5E,0xB9,0x22,0x26,0xAF,0x74,0xB8,0xA4,0x08,0x5F,0x75,0xD2,0xA5,0x9B,0x34,0x6C,0xD5,0xCA,0xAA,0x36,0x29,0xAF,0x49,0x25,0xBF,0x24,0x54,0x2A,0x52,0x09,0xE0,0x12,0x73,0x0B,0x58,0x40,0x01,0xDF,0xB8,0x09,0xE0,0xF1,0x0A,0x04,0x0A,0xE5,0xEE,0x22,0xB2,0x41,0x01,0x53,0xB3,0x35,0xB3,0x79,0xD2,0x89,0x8A,0x73,0xDC,0x16,0x29,0xCA,0x3B,0xCE,0x09,0x7B,0x52,0x29,0xCF,0x3A,0x27,0x1D,0x51,0x39,0xB3,0xEA,0xAC,0x6A,0x14,0x61,0xCF,0xAA,0xDB,0x86,0x11,0x99,0x3C,0xB3,0x0E,0x99,0x84,0x72,0x77,0x11,0xD9,0x00,0x00,0x80,0x80,0x60,0x9D,0x09,0x90,0xB2,0x08,0x02,0x82,0x35,0xFD,0x31};
|
||||||
|
//const uint8_t spF[] PROGMEM = {0x23,0x1E,0x29,0x44,0x32,0xE6,0x9C,0x70,0xA6,0x16,0x09,0x9F,0x7D,0xC2,0xE5,0x53,0xB4,0xBD,0xF6,0x89,0xA6,0x77,0x89,0xF6,0x25,0x27,0x1D,0x39,0x35,0x9C,0x9B,0x8C,0xA2,0xA4,0x34,0xB7,0xA8,0x8A,0x80,0x14,0xCC,0x09,0x30,0x6C,0x05,0x05,0x38,0xC0,0x80,0xE1,0x2B,0x08,0x30,0x4C,0x3A,0x01,0x9A,0x49,0xC7,0x00,0x06,0xFE,0x75,0x51,0x31};
|
||||||
|
//const uint8_t spFEW[] PROGMEM = {0x08,0xA8,0x54,0x95,0x02,0x0C,0x68,0xD2,0xC8,0x00,0x33,0x2B,0xB5,0xBC,0x6B,0x45,0xDB,0xAA,0x3C,0xF2,0xE9,0x12,0x68,0x72,0xD1,0x2E,0x56,0x31,0xB4,0x83,0xB5,0xBD,0x5C,0x45,0xC3,0xCE,0xB9,0xB2,0x6A,0x94,0x15,0xBB,0x4C,0xD3,0xE6,0x56,0x55,0xD0,0xA1,0xC9,0xBF,0x5B,0x55,0x50,0x7B,0x04,0xEE,0xEE,0x55,0xA9,0x12,0xDE,0x70,0xA3,0x9D,0xA1,0x8A,0xF4,0xC2,0x8D,0x76,0xDA,0xEA,0xFF,0x51,0x19,0x49,0x31};
|
||||||
|
const uint8_t spFILE[] PROGMEM = {0x08,0xE8,0xD2,0x95,0x00,0x4D,0xA7,0x09,0xA0,0xC8,0xF0,0xE6,0xE5,0x54,0x9E,0x4A,0x8F,0x4E,0x50,0xFC,0x95,0xB9,0x36,0xB8,0xE1,0x89,0xAA,0xB9,0x52,0xF3,0x86,0x27,0x6E,0xFA,0xDA,0xCD,0x5A,0x9E,0xB4,0xEA,0x6B,0x77,0x6B,0x79,0x8A,0xA6,0xB7,0x32,0xA4,0xD3,0xA9,0xBA,0xDD,0xC8,0x94,0x55,0xA7,0xEB,0xA1,0x3D,0x83,0x17,0x9F,0xBE,0x87,0x90,0x08,0x5B,0x3C,0x86,0xEE,0x4C,0xB2,0x6C,0x71,0x99,0x8A,0x97,0x48,0xAF,0xD9,0x61,0xCE,0x4E,0x2B,0xB4,0xE6,0x84,0x25,0x79,0xCF,0x22,0x5F,0xED,0x67,0x33,0x85,0xEE,0x66,0xD2,0x8D,0xDD,0x18,0x62,0x64,0x52,0xAC,0xB2,0xE3,0xFF,0x15,0x65,0x25,0x49,0x31};
|
||||||
|
//const uint8_t spFIRST[] PROGMEM = {0x04,0xC8,0x2C,0x94,0x01,0x53,0x54,0x08,0x60,0xB0,0x54,0x01,0x54,0x99,0x3A,0x9C,0xEC,0x53,0xC3,0xB4,0xF6,0xF1,0xAB,0x29,0x0B,0x93,0xD5,0xC7,0x6F,0xAE,0x2D,0x95,0x57,0x9D,0xA8,0xDA,0xD2,0x70,0x5B,0x74,0x92,0x6E,0x5A,0xC3,0x64,0xF3,0x29,0xBA,0x4D,0x4D,0x93,0xCD,0xAB,0xEF,0x36,0x35,0x4C,0x5E,0xA7,0x21,0x5B,0xF7,0xF6,0x9C,0x95,0xC6,0x12,0x4D,0xC3,0x7B,0xB4,0x02,0x82,0xD5,0x12,0xC0,0x42,0xA1,0x0A,0xF8,0xC2,0x9C,0x01,0x5F,0x78,0x0A,0xE0,0x73,0x37,0x01,0x7C,0xE6,0x2E,0x80,0x1F,0xD8,0x10,0x28,0x94,0xBB,0x8B,0xC8,0x06,0x06,0x4C,0xE1,0x25,0x80,0x4D,0x39,0x11,0x30,0x44,0xE8,0xFF,0x11,0x39,0x55,0x79,0x31};
|
||||||
|
//const uint8_t spFOUND[] PROGMEM = {0x04,0x18,0x2E,0x5D,0x01,0xC3,0xA4,0x2A,0x60,0xEA,0x08,0x0F,0x8C,0x38,0xC5,0xB2,0x30,0x5E,0xB4,0xF2,0x9C,0x2A,0xD2,0x68,0xD5,0x29,0x4A,0xDC,0xC8,0xE0,0x8E,0xA7,0x2A,0x61,0x33,0x92,0x3B,0x9F,0xBA,0xBA,0x8D,0x4C,0xEE,0x74,0xEA,0xEA,0x27,0x32,0x79,0xF5,0x69,0x6B,0x18,0xCF,0xA0,0x55,0xAB,0x2D,0xB1,0xBD,0x94,0x56,0xAD,0xA6,0xA4,0xF2,0x14,0x5E,0xB5,0xEA,0x12,0xD2,0x0B,0x25,0xD3,0xAA,0x8A,0x8B,0x08,0x34,0xCD,0xA3,0xAA,0x2A,0xA4,0x41,0x9D,0xB5,0xAA,0x52,0xA7,0xA5,0x48,0x5A,0xAA,0x22,0x44,0x9E,0x32,0x0E,0x6B,0x82,0x94,0x1C,0x2A,0xC7,0xA1,0xDD,0xC6,0x5D,0x4C,0xDD,0x94,0xBE,0x79,0x71,0x37,0xB7,0xFD,0x59,0x79,0x25,0x31};
|
||||||
|
const uint8_t spFROM[] PROGMEM = {0x08,0xE8,0xDA,0x84,0x02,0x0A,0x68,0x26,0x54,0x03,0xAE,0x88,0x83,0x2A,0xC4,0x73,0x97,0x2A,0x2D,0x8D,0x90,0xC8,0xBD,0xEA,0x1C,0xAD,0x22,0xA8,0xF7,0x69,0xB2,0xAF,0x8A,0xA4,0x3E,0xA7,0xCD,0xBE,0x2A,0x12,0xF7,0x9C,0x2E,0x9B,0x6D,0x0B,0xEA,0x72,0xFA,0x6C,0x6E,0x34,0xB8,0xF5,0xEA,0xB3,0xBE,0xB5,0xE0,0xD6,0xA3,0xCF,0x7A,0x5A,0x43,0x3D,0xB7,0x2E,0xAB,0xB6,0x14,0x52,0x5D,0xDA,0x24,0x5A,0x43,0x58,0x4B,0x6E,0x43,0x13,0x9D,0x85,0x91,0xB6,0xF1,0xCD,0xFF,0x71};
|
||||||
|
//const uint8_t spG[] PROGMEM = {0xA1,0xDE,0xDD,0x89,0x30,0xD2,0x58,0x60,0x64,0x2B,0x1A,0xB1,0x45,0x97,0x95,0xCC,0xA8,0xC8,0xD9,0xAB,0x77,0xB8,0xFD,0x13,0x4C,0x2B,0xE8,0x39,0xB5,0x6F,0xB4,0x92,0x6D,0x14,0x38,0xB7,0xF2,0xCE,0x46,0xB5,0xBD,0x22,0xE5,0x34,0x6E,0xDD,0xCE,0x8E,0x90,0x53,0x27,0x0D,0x3B,0x08,0xE2,0x4E,0x9D,0x34,0xAC,0x24,0x88,0xD7,0x75,0xF3,0x90,0x86,0x55,0x04,0x71,0xA7,0x49,0x19,0x66,0x16,0xE0,0xED,0xC5,0x61,0x18,0x01,0xB8,0x7B,0x62,0x87,0x61,0x64,0x22,0xCF,0x8E,0xFC,0x11,0x79,0x79,0x71};
|
||||||
|
//const uint8_t spGOOD[] PROGMEM = {0xA9,0x2C,0xA9,0xC5,0xD4,0x6C,0x8F,0xA2,0x61,0xD7,0x68,0xE9,0xBC,0xCA,0x22,0xCC,0xDB,0x64,0xCD,0xA9,0x92,0x2A,0x37,0xB3,0xCD,0xB7,0x3A,0x55,0x52,0x19,0xAE,0xFA,0x7A,0x57,0xA3,0xCE,0xC2,0xA3,0x42,0x57,0xD7,0x06,0x35,0x22,0xB8,0x8B,0x88,0x6C,0x70,0xC3,0x36,0xEE,0x62,0xEA,0xC6,0x75,0xCD,0x8B,0xBB,0xB9,0x6D,0xDF,0xFD,0x09};
|
||||||
|
//const uint8_t spH[] PROGMEM = {0xC3,0x1B,0xD1,0x29,0xA2,0x6A,0xAF,0x68,0xC6,0x46,0xF3,0x6C,0x74,0xC2,0x91,0x12,0xCD,0x7B,0xD1,0x89,0x66,0x2C,0xD4,0xAC,0x45,0x27,0x5E,0xB9,0x91,0xB3,0x16,0xAD,0x6C,0xD5,0x41,0x8C,0x58,0x94,0xAA,0xD9,0x02,0xB8,0x7A,0x11,0xA9,0x84,0x72,0x77,0x11,0xD9,0x00,0xA0,0x80,0x69,0xCC,0x15,0xB0,0xB3,0x8B,0x03,0x76,0xEB,0x0C,0xC0,0x2E,0x9D,0x01,0x58,0x7D,0xD3,0x02,0x0A,0x58,0x75,0x5C,0x00,0x73,0xB6,0x13,0x60,0x26,0x93,0xFF,0x51,0x35,0x41,0x09};
|
||||||
|
//const uint8_t spHAVE[] PROGMEM = {0xAC,0x19,0xA1,0xBD,0x3C,0x2B,0x8F,0x68,0x44,0x8F,0x54,0x33,0x7D,0x9C,0xEA,0xDD,0x53,0x3D,0xF2,0x71,0x87,0x6B,0x8B,0xB0,0xDA,0x27,0x18,0x6E,0xDD,0xC3,0x6A,0x9D,0x68,0x9A,0x09,0x4F,0x6B,0x74,0xE2,0x69,0x27,0x23,0xA5,0xD1,0x29,0x86,0x9F,0x8C,0xD4,0xC5,0xA7,0x6A,0xA9,0x22,0xC2,0x27,0x8D,0xAE,0xC6,0xB2,0x48,0x2F,0xD5,0xFA,0x1A,0xC2,0xD3,0x7C,0x54,0x1B,0x4A,0x2C,0xF6,0xB4,0xCA,0x69,0x48,0xA1,0xD8,0xD7,0x6A,0xB9,0xC1,0x55,0xD7,0xA9,0xAC,0x64,0x46,0x6F,0x3C,0xCB,0xAD,0x95,0x9A,0x8A,0x31,0x73,0xB6,0xC4,0x6A,0x6C,0x32,0xD4,0x58,0x54,0xFF,0x49};
|
||||||
|
//const uint8_t spI[] PROGMEM = {0x2B,0x2B,0xA5,0x3A,0xCD,0x9B,0x9C,0xB4,0x9A,0x8B,0x08,0x5B,0xB4,0x92,0xE2,0xDF,0x3D,0xBD,0xE6,0x89,0x4B,0x7C,0xB7,0x88,0x98,0x27,0x2D,0xFE,0xC3,0x22,0x6A,0x9E,0xB4,0xF8,0x0F,0xF7,0x68,0x78,0xB2,0x6A,0x3E,0x23,0x6C,0xE5,0xA9,0x9B,0xBA,0x8C,0xD4,0xD6,0xA7,0x6E,0xFA,0x32,0x4A,0x57,0x9F,0xB1,0xF9,0x89,0x48,0x5B,0x73,0xA6,0x16,0xCB,0x33,0x6C,0xF1,0x5A,0x7B,0x0E,0x8F,0xB0,0xDA,0x63,0x6D,0x51,0x3C,0xB2,0x16,0xB7,0xAD,0x79,0xD5,0xEC,0x9A,0x53,0xB6,0x9E,0x44,0x62,0xBB,0x4E,0xDA,0xBA,0x63,0xCD,0x99,0xCA,0x69,0xED,0x8E,0x2C,0x27,0xE5,0xFC,0x19,0x41,0x71,0x51,0x19,0x19,0x49};
|
||||||
|
//const uint8_t spILLEGAL[] PROGMEM = {0x25,0x19,0x4C,0xA9,0x6F,0x42,0xF7,0x2C,0x67,0x21,0x5F,0x20,0x38,0xC3,0x1E,0x96,0xE4,0x70,0x65,0x4B,0x5F,0xDD,0xA2,0x43,0x85,0xAD,0xA2,0xF5,0x08,0xB6,0x36,0xD0,0xD6,0x26,0x2B,0x9A,0xD6,0x40,0xBB,0xAA,0xAC,0x64,0x79,0x03,0xDD,0xAE,0x3D,0xB2,0x99,0x08,0x6A,0xBA,0x72,0xA9,0x56,0x37,0xE0,0xE9,0x46,0xA6,0x5A,0xDD,0x81,0xAA,0x67,0x21,0x50,0x04,0x77,0x11,0x91,0x0D,0xAE,0x28,0xA9,0xC1,0xD4,0x6C,0x97,0x36,0xC7,0x46,0xF7,0x48,0x34,0xFA,0xAA,0xC3,0x4A,0x7D,0xF1,0x18,0xB2,0x8F,0x0C,0xCE,0x35,0x65,0x8A,0xB1,0xDC,0x39,0x5B,0x87,0x39,0x94,0x72,0xE3,0x5E,0x1C,0xA6,0x10,0xDB,0x83,0xB2,0xAB,0x1B,0xA3,0x1B,0x6B,0xB4,0xB5,0x7E,0xF8,0x5A,0x39,0x49};
|
||||||
|
//const uint8_t spIN_[] PROGMEM = {0xCD,0x9E,0xC3,0x89,0x23,0x17,0x9F,0x68,0xC5,0x42,0xCA,0x5C,0x74,0xC2,0xE5,0x12,0xB9,0x62,0xE1,0x09,0x97,0x76,0x92,0x8A,0x46,0x2D,0x28,0x92,0xEC,0x38,0xD3,0x35,0xBF,0x39,0xF4,0xE1,0x74,0xD7,0xFC,0xE6,0xD0,0x46,0x52,0x79,0xF3,0x9B,0x45,0x1F,0x49,0x2D,0x28,0x12,0xCA,0xDD,0x45,0x64,0xC3,0xFF,0x15,0x55,0x05,0x39,0x49};
|
||||||
|
//const uint8_t spINPUT[] PROGMEM = {0x23,0x58,0x3A,0x90,0xAB,0x56,0x6F,0x6F,0x79,0x4B,0x19,0x5A,0xE7,0xA2,0xE1,0x15,0x21,0xB1,0x1A,0xEE,0x5A,0x5C,0x24,0x45,0x5B,0x68,0x0B,0x49,0x91,0x14,0x6B,0xA5,0xC5,0xA5,0x49,0x72,0x2D,0x95,0x17,0x92,0x0B,0xE5,0xEE,0x22,0xB2,0x01,0x04,0x10,0xB5,0xA6,0x02,0x72,0x34,0x4D,0x55,0x9C,0xC1,0xAA,0x35,0x39,0xD5,0xA1,0xBB,0x98,0xF7,0xE8,0xD4,0xC6,0xA4,0x85,0x39,0x73,0xC8,0x20,0x94,0xBB,0x8B,0xC8,0x06,0x00,0x05,0x5C,0x91,0xA6,0x01,0x04,0x54,0xDF,0xF0,0x65,0x49};
|
||||||
|
const uint8_t spIS[] PROGMEM = {0xC9,0x5F,0x3E,0x90,0xB2,0x17,0xDF,0xE0,0x04,0xDB,0x04,0x72,0xF5,0xA2,0x13,0x6E,0x1D,0xC8,0xD5,0x8B,0x4E,0xB4,0x5C,0x23,0x65,0x2F,0x3A,0xE9,0x76,0x85,0x1C,0xB5,0xE8,0x94,0x33,0x24,0x89,0xD6,0xA2,0xD5,0xCD,0xD4,0x24,0x54,0x8B,0xC6,0xD8,0x0D,0x4B,0xF8,0xD6,0x29,0x63,0xE2,0x6E,0x9D,0x1D,0x3B,0x8F,0x66,0x3C,0xD0,0xCD,0xA3,0x12,0xDA,0x89,0x01,0x13,0xB0,0x23,0xE0,0x61,0x76,0x04,0x7C,0x4A,0xFA,0x29};
|
||||||
|
//const uint8_t spJ[] PROGMEM = {0xA1,0xDE,0xDD,0x89,0x30,0xD2,0x68,0x60,0x64,0x2B,0x1A,0xB1,0x45,0x97,0x13,0x75,0x61,0x18,0xBE,0x29,0x4F,0xD4,0x95,0x53,0x45,0x67,0x3A,0xD1,0xF0,0xC1,0x61,0xD1,0xEA,0xC4,0x43,0x17,0x67,0x64,0xEB,0x93,0x74,0xE3,0xDC,0x91,0xAD,0x4F,0xDA,0x83,0x4A,0x78,0x35,0x39,0x79,0x0F,0x2A,0xE5,0x59,0x67,0x55,0xDD,0xA9,0x54,0xD6,0x92,0xD5,0x0E,0x13,0x14,0x13,0x8D,0xC7,0x58,0x95,0xE8,0x4C,0x57,0x2E,0x63,0x35,0x6C,0x33,0x5D,0x25,0x8D,0xCD,0x90,0xD5,0x74,0xE8,0x3C,0x86,0xB1,0x08,0x8E,0xEB,0x35,0xFD,0x69};
|
||||||
|
//const uint8_t spK[] PROGMEM = {0x06,0xA8,0x86,0x99,0x01,0x2D,0x10,0x0D,0x7F,0x04,0xC5,0x0C,0xB7,0x72,0xBC,0xE6,0xD9,0xDB,0x2A,0xEE,0x71,0x47,0x48,0x0E,0xB7,0x25,0x37,0x38,0x71,0xF7,0x26,0x15,0x39,0xE7,0xA4,0x3D,0xA9,0x94,0x65,0xDD,0x53,0xB4,0xC0,0xDE,0x51,0xD5,0x4E,0xDD,0xBD,0x72,0x55,0xCC,0x39,0x6D,0x77,0xCA,0xD5,0x39,0xA7,0xB5,0xCD,0xB1,0x74,0xF7,0xD4,0xD6,0xF7,0x28,0x1C,0x5D,0x75,0xDA,0x38,0x92,0x90,0x77,0xCD,0xAE,0x63,0x19,0x7B,0x22,0xCE,0x9A,0x2A,0xFF,0x4D,0x51,0x69};
|
||||||
|
//const uint8_t spKEY[] PROGMEM = {0x09,0xE8,0x9C,0xCD,0x01,0x93,0x4B,0x38,0x60,0x6A,0xD5,0x61,0x4F,0x27,0xE8,0x35,0xB6,0x87,0xB3,0xBC,0x81,0xD5,0xD6,0x59,0xEE,0xB2,0x0A,0xD1,0x9B,0x64,0xFB,0x2B,0x3C,0x56,0xC1,0x7A,0x63,0xCF,0x68,0xE4,0xDB,0x2B,0x48,0x6F,0xEC,0x99,0x97,0x7A,0x07,0x01,0x9D,0xB1,0x5D,0x6B,0xD7,0x2D,0x4D,0x18,0xD3,0x72,0xFE,0x19};
|
||||||
|
//const uint8_t spL[] PROGMEM = {0x23,0x1A,0x59,0x35,0xD5,0xEB,0xAC,0xA4,0x05,0xC9,0xF0,0xAA,0x73,0x92,0x16,0xD5,0xC3,0xBA,0xCA,0xC9,0x5A,0xF1,0x72,0x8E,0x2A,0xA7,0xA8,0x25,0xDA,0xD9,0xE7,0x9C,0xBA,0xC6,0xEC,0x14,0x5E,0xB3,0xBA,0xE2,0xB3,0x5D,0x69,0x73,0xE9,0xB3,0xB3,0x09,0x91,0xDD,0xA5,0x4F,0x2E,0x3A,0xD9,0xF2,0xA4,0x21,0x79,0x5B,0xA7,0xE8,0xEC,0x86,0x50,0xA2,0x59,0xBA,0xB5,0x1B,0x42,0x8E,0x32,0xAA,0xD6,0x61,0x8C,0xC5,0x5B,0x70,0x1A,0xAB,0x31,0x05,0x6B,0xA1,0x6A,0xFC,0x51,0x71,0x25,0x41,0x19};
|
||||||
|
//const uint8_t spLARGE[] PROGMEM = {0xA1,0xEA,0x60,0xD8,0x3D,0x6F,0x95,0xBA,0x83,0x96,0xF4,0xBC,0xD5,0xAA,0x0D,0x4A,0xC2,0xEC,0x61,0x2B,0x26,0x68,0x71,0xF7,0x07,0x2B,0x9B,0xB0,0x34,0x55,0x36,0x9D,0x38,0x9B,0x51,0x37,0x7F,0x78,0xE2,0x62,0xC7,0xDC,0x6C,0xE3,0x89,0xB2,0xF9,0x34,0xD5,0x16,0x27,0xCE,0xE6,0xD2,0xC5,0x5A,0x9C,0x24,0xE7,0x4B,0x17,0x6B,0xB1,0xD2,0x5C,0xAE,0xDC,0xB4,0xE1,0xCA,0x73,0xDD,0x72,0x95,0x46,0xA7,0xCC,0xA9,0xCA,0x8D,0x1B,0xAE,0x3A,0xB5,0x4A,0x57,0x6D,0x38,0xBA,0xD4,0xAB,0xC2,0x64,0xD1,0x1A,0x73,0xAE,0x4C,0xE5,0x85,0x6B,0xCA,0xB9,0x22,0x54,0x16,0xB6,0x29,0xC7,0x8C,0x10,0x7B,0x14,0xA6,0x94,0xA4,0xD4,0xA7,0xA1,0x9A,0x93,0x71,0x31,0x8B,0x54,0x64,0x12,0xCA,0xDD,0x45,0x64,0x03,0x02,0x9A,0x23,0x11,0xC0,0x68,0xEB,0x0A,0x58,0x75,0x4C,0x02,0x04,0x18,0x6B,0xFC,0xFF,0x15,0x65,0x41,0x19};
|
||||||
|
//const uint8_t spLAST[] PROGMEM = {0xA1,0x4D,0xA0,0x6D,0xCC,0x17,0x96,0xA6,0x80,0xB1,0x8C,0x58,0x58,0x9B,0x55,0x75,0x56,0x96,0xA6,0x9B,0x56,0xD5,0xE4,0x44,0x19,0xAE,0x3A,0x75,0x55,0x9D,0x95,0xB4,0xF9,0xD6,0xA7,0x2E,0xAE,0xB3,0x1D,0x37,0x9F,0xA6,0x98,0xA9,0x0A,0xEA,0xBD,0x9B,0xD5,0x54,0x3D,0x99,0x41,0xBD,0x47,0x93,0x5D,0x79,0x51,0x56,0x76,0xF5,0xA1,0xE5,0xE1,0xA2,0xD8,0x00,0x17,0x8B,0x69,0x40,0x00,0x8F,0x91,0x52,0x00,0x81,0x22,0xB8,0x8B,0x88,0x6C,0x60,0xC0,0x91,0x14,0x0C,0x58,0x5C,0xED,0xFF,0x51,0x39,0x49,0x19};
|
||||||
|
//const uint8_t spLINE[] PROGMEM = {0xA1,0xAC,0x20,0xB9,0x2D,0x57,0x97,0x62,0x81,0xE0,0x0C,0x7B,0x58,0xF2,0x01,0x42,0x3A,0xED,0x45,0x4B,0x27,0x48,0xB7,0x8A,0x95,0x23,0x99,0x20,0x2D,0x4A,0x57,0x9D,0xA8,0x8B,0xD5,0x94,0xB8,0x79,0xA2,0x6A,0xCE,0x43,0x7D,0xE6,0x89,0x4B,0xF8,0x08,0x8B,0x5A,0x27,0x2D,0x75,0xC3,0xBD,0x2A,0x9F,0xAC,0xDA,0x4F,0xB7,0xA8,0x75,0xF2,0x29,0x67,0xC2,0x3C,0xE5,0x29,0xA7,0xE9,0xAA,0x90,0x54,0xA7,0x9A,0xBE,0x3D,0x52,0x5A,0x9D,0x66,0xC5,0x51,0x49,0x6B,0x74,0xFA,0x95,0x46,0x30,0xA2,0xD1,0x18,0x66,0x2E,0xE4,0xCA,0xCA,0x6D,0x58,0x21,0x89,0x3A,0x23,0x87,0xA1,0x70,0xB5,0x71,0x4D,0xEA,0x07,0x33,0x24,0x61,0xB9,0x6A,0x49,0xFE,0x59};
|
||||||
|
//const uint8_t spM[] PROGMEM = {0x2B,0x1B,0x41,0x55,0x3B,0x9A,0x9C,0x64,0x85,0x34,0x4E,0x6B,0x73,0xA2,0xAD,0x52,0xB4,0xBD,0xD1,0x89,0xA6,0x4E,0xF6,0xF1,0x46,0x27,0x9E,0x32,0x38,0xD6,0x5A,0x9D,0x74,0x86,0x11,0x2F,0x6A,0x74,0xB2,0x61,0xDB,0x23,0xB1,0xF3,0x28,0x7B,0x96,0x18,0x10,0xBB,0xB9,0x73,0x43,0xD2,0x92,0x81,0xBE,0x56,0x0D,0xD1,0x58,0x18,0x56,0x17,0x35,0x78,0xEF,0x26,0xDA,0x4D,0xCC,0x10,0xAD,0xA6,0x52,0x77,0x31,0x43,0x50,0x9A,0x49,0xD1,0x36,0x74,0x39,0x86,0x2B,0x59,0xAD,0xFF,0x4D,0x39,0x41,0x59};
|
||||||
|
//const uint8_t spMANY[] PROGMEM = {0xAE,0x4D,0x9A,0xEC,0x2C,0x62,0xC7,0xAA,0x54,0x49,0x93,0x6D,0x78,0xE2,0x55,0xF5,0x10,0xA4,0x6E,0xAD,0x4E,0x3D,0x5D,0xB3,0xBA,0xAD,0x3A,0xF5,0xF0,0x2D,0x6A,0xBE,0xEA,0xD4,0xD3,0xA7,0x98,0xF9,0xAA,0xD4,0x54,0x43,0xD2,0xDA,0xB1,0x52,0x9D,0x25,0xEB,0x69,0x85,0x59,0xF5,0xF0,0x4E,0xA6,0xB1,0xE8,0x34,0xD3,0x16,0x71,0xE5,0xC2,0x53,0x2F,0xDB,0x44,0x99,0x2B,0x47,0xDD,0xA3,0x92,0x47,0x8F,0xAE,0xF5,0xFF,0x65,0x55,0x39,0x49,0x59};
|
||||||
|
//const uint8_t spMINUS[] PROGMEM = {0xAE,0x48,0xCA,0xB4,0x51,0xB6,0xE4,0xA2,0x65,0xD9,0x84,0x25,0xE2,0x96,0x99,0xAE,0xA4,0xEA,0x4B,0x53,0xF1,0x79,0xE2,0xA6,0xB7,0x43,0xAD,0xE5,0x89,0xBA,0xDC,0x0E,0x8D,0x94,0x27,0x1A,0x6A,0x32,0xDC,0x5A,0x9E,0x68,0xD9,0x16,0x0F,0x4F,0x78,0xE2,0xE5,0x97,0xC5,0x22,0xE1,0xCA,0x96,0x1B,0x16,0xA9,0x98,0xAD,0x6C,0x52,0xA9,0xC5,0xA3,0x94,0xA6,0x28,0xD5,0x92,0x48,0xDC,0xDA,0x16,0x22,0xD8,0xAA,0x76,0x1B,0x9B,0x75,0x37,0x8D,0x39,0x69,0x4C,0x26,0x3C,0x6D,0x1A,0x87,0x31,0x45,0x13,0xF3,0xAD,0x25,0x80,0x0D,0xD4,0x05,0xF0,0x39,0x8B,0x00,0xBE,0x10,0x36,0xC0,0xE7,0xEC,0x1A,0xE0,0x00,0x07,0x08,0xF0,0xAD,0xD0,0xFF,0x51,0x25,0x79,0x59};
|
||||||
|
//const uint8_t spMORE[] PROGMEM = {0xA6,0x2A,0x06,0xA3,0xD1,0x9D,0xE5,0xAA,0x97,0x2D,0xCA,0xEC,0xCA,0x8C,0xF2,0xAC,0x28,0x93,0x4F,0x53,0xEE,0xB9,0xA2,0x4C,0xBE,0x44,0x35,0xE7,0x8A,0x0B,0xDA,0x15,0xF1,0x5C,0x2B,0x29,0x70,0xD7,0xD5,0x7C,0xAF,0x2C,0x91,0x5B,0x17,0xF3,0xB3,0xF2,0x82,0x67,0x5D,0xC4,0xCF,0xAA,0x0A,0x99,0x35,0x51,0xBF,0xA3,0xC9,0xB4,0xD7,0x83,0xF2,0xB6,0x2E,0x89,0x59,0x75,0xEA,0x5B,0xC6,0xA8,0x77,0xC4,0x79,0x4F,0x1A,0x83,0xDB,0x16,0xE3,0xCD,0x65,0x0C,0x7E,0x4B,0x4C,0x36,0x97,0x31,0x9A,0x6D,0x75,0xEE,0x5D,0xC6,0x50,0x3B,0x54,0x75,0xD3,0xFF,0x15,0x65,0x55,0x59};
|
||||||
|
//const uint8_t spMUST[] PROGMEM = {0xA1,0xCD,0x9E,0xCA,0xC1,0x93,0xB5,0x26,0x3B,0x89,0x04,0x69,0xD3,0xEA,0xEC,0x24,0x0A,0xB4,0xED,0xA8,0xB3,0xD7,0x48,0x90,0x36,0xA3,0xCE,0x5E,0xA3,0x80,0xD2,0x9C,0xBA,0x84,0xC9,0x0A,0xCC,0x74,0xEA,0x6A,0x26,0x23,0x25,0xD3,0xA9,0x9B,0x9E,0x8A,0x94,0x4E,0xA7,0x6A,0x66,0x2A,0x93,0x5B,0xAD,0xAA,0x04,0xAF,0xE0,0xA8,0xDD,0xEA,0x49,0x32,0xDC,0xCC,0x93,0x02,0x2E,0xE6,0x10,0xC0,0x13,0xE4,0x0A,0x78,0x96,0x5C,0x03,0x02,0x78,0x82,0x1C,0x81,0x22,0xB8,0x8B,0x88,0x6C,0x10,0xC0,0x15,0x69,0x12,0x40,0x40,0xF1,0xA9,0xFF,0x39};
|
||||||
|
//const uint8_t spN[] PROGMEM = {0x27,0x9E,0x71,0x99,0x3D,0x16,0x9D,0x68,0xBA,0x22,0xCB,0xAC,0x75,0xA2,0xE9,0x92,0x22,0x73,0xD6,0x89,0xA6,0x2F,0xF2,0xC8,0x59,0x27,0x59,0x61,0x55,0x4D,0x6A,0x9D,0x7C,0xBB,0x52,0x0D,0xAD,0x35,0xAA,0xAE,0x9D,0x5A,0x3C,0x76,0xAB,0xBB,0x72,0x1A,0x0E,0x3B,0xA5,0xED,0x2A,0x68,0x30,0x9D,0x96,0xBE,0x69,0xE7,0xC1,0x54,0x53,0x87,0x3A,0xD4,0xA1,0x0C,0x4D,0xBB,0x14,0xBA,0xDB,0x34,0x14,0x1F,0x62,0x16,0xB1,0x42,0x57,0x8C,0x49,0x8A,0xC5,0xFC,0x51,0x59,0x41,0x39};
|
||||||
|
//const uint8_t spNAME[] PROGMEM = {0x24,0x56,0x3C,0xA2,0x3D,0x12,0xAB,0x82,0x99,0xD8,0x96,0x48,0x62,0x32,0x6E,0x7C,0x9B,0xD3,0x8D,0x49,0x95,0xD2,0x6B,0x49,0x3B,0x21,0xF1,0x52,0xFA,0xA5,0xEC,0x9C,0x68,0x89,0xC0,0xD6,0xAA,0x74,0xA2,0xA5,0x8A,0xD3,0xAA,0xD6,0x09,0xA7,0x29,0x4A,0xCB,0x5A,0x27,0x9A,0x2A,0xB9,0xA2,0x6A,0x9F,0x68,0x9A,0xA4,0xCC,0xAA,0x7D,0xD2,0xE5,0x0A,0xCD,0xBB,0xF6,0xC9,0x67,0x4C,0xD4,0x98,0x3A,0xAB,0x1A,0x5E,0xD0,0x7B,0xEA,0x8C,0x76,0x3A,0x03,0xED,0x9E,0xDD,0xDA,0xE1,0x14,0xAD,0x6A,0x96,0xEB,0xAA,0x10,0xA9,0xF4,0x26,0x66,0x48,0x5A,0x32,0xD0,0xD7,0x9A,0x21,0x69,0xAA,0x62,0x4F,0x62,0x87,0xFF,0x51,0x35,0x49,0x15,0x41,0x71,0x51,0x39};
|
||||||
|
//const uint8_t spNEGATIVE[] PROGMEM = {0x26,0x2E,0x4C,0x24,0xCC,0x13,0xC5,0x32,0x14,0x49,0xD0,0x9C,0xA4,0x9B,0x92,0x25,0xC9,0x33,0x9C,0x6E,0x46,0x32,0x94,0x91,0x7B,0x2C,0x3E,0xD1,0x74,0x21,0x6E,0xD1,0xF8,0x84,0xCB,0x26,0x9B,0x7B,0xE3,0x13,0x4C,0x93,0xE8,0x9D,0xAB,0x46,0x30,0x4A,0x41,0x44,0xCE,0x22,0x49,0xD7,0x06,0x16,0xB5,0x7A,0x64,0xDD,0x15,0x87,0x8A,0xE2,0x95,0x75,0xA3,0xD0,0x13,0xB5,0x56,0xDA,0x94,0x70,0x75,0xD4,0x26,0x9D,0x50,0xEE,0x2E,0x22,0x1B,0x0C,0xB0,0xA8,0x85,0x03,0x16,0x0B,0x0D,0xED,0x16,0x4E,0x5A,0x16,0xBB,0xB4,0xC3,0x2A,0xA5,0x57,0x9D,0x32,0x74,0x27,0x1C,0x59,0x73,0xC2,0xD2,0x8D,0x70,0x65,0xCE,0x76,0x4B,0x33,0x22,0xE5,0x39,0xCB,0x2D,0xD5,0x93,0xA5,0xD5,0x2C,0x33,0x67,0x23,0x5A,0x5A,0x35,0xC5,0x5C,0x55,0x88,0xA9,0x35,0x36,0xF3,0x70,0xA9,0xA9,0xAA,0x98,0x00,0x4D,0x9B,0xFC,0x75,0x51,0x39};
|
||||||
|
//const uint8_t spNEW[] PROGMEM = {0xAE,0x88,0x82,0xB6,0x2D,0xD5,0xA4,0x3A,0x49,0xF5,0xA1,0x8C,0xDB,0xEB,0x52,0x27,0x25,0xF6,0x62,0x75,0x47,0xDD,0xB5,0xA2,0x6D,0x55,0x1E,0xF9,0x74,0x09,0x34,0xB9,0xA8,0xC5,0x53,0x19,0xE8,0x75,0xE5,0x11,0x0C,0x67,0x60,0x5B,0x0F,0x8F,0xDF,0x64,0xB0,0x87,0xAF,0xDE,0xC1,0x88,0x0A,0x1F,0x55,0xD6,0x57,0x23,0x8D,0x6C,0x54,0x35,0x56,0xA6,0xC2,0x89,0x73,0x31,0xDF,0xE4,0x5A,0xE1,0x4E,0xCD,0xF2,0x91,0x1B,0xB4,0x3A,0x13,0xF3,0x26,0x66,0x64,0x61,0x2D,0xD4,0x93,0xE8,0xF1,0xFF,0x79,0x39};
|
||||||
|
//const uint8_t spNO[] PROGMEM = {0xAC,0xEF,0xCC,0xD9,0x25,0x6C,0xBB,0xB6,0x50,0xD1,0xC7,0x74,0x17,0x9A,0x42,0xD9,0x1E,0xD3,0x5D,0xAA,0x2B,0x51,0x7D,0x2C,0x77,0x29,0xAF,0xC4,0xF4,0x31,0x93,0xB7,0xAC,0x81,0xE4,0x63,0xAD,0x7F,0xD2,0x2E,0x5B,0x4D,0xBC,0xD1,0x89,0x9B,0x6E,0x33,0xF5,0x4D,0x27,0x6B,0x26,0x3D,0xD8,0x56,0x9F,0xA2,0xEA,0x0E,0x53,0xDB,0x74,0xAA,0xA6,0x32,0x42,0xE5,0xD3,0xEE,0xC7,0xD8,0x44,0xA7,0x19,0x7E,0x0E,0x53,0x32,0xE3,0x6C,0xF6,0x28,0x8C,0xC1,0xB7,0x19,0xE5,0x9C,0x38,0xDA,0xF1,0xFF,0x15,0x79,0x39};
|
||||||
|
//const uint8_t spNOT[] PROGMEM = {0xA1,0xCD,0x9A,0xA3,0x71,0xEC,0xA6,0x36,0x1B,0xCA,0xA4,0x56,0x9A,0xDA,0x6A,0xB1,0x4D,0x4B,0x73,0x6E,0x4F,0xDD,0x9C,0x7B,0x91,0xA5,0x3D,0x75,0x75,0xD3,0xE6,0x9C,0xFA,0x34,0xC5,0xEC,0xB8,0x4B,0xE6,0xD3,0x14,0xB3,0x6B,0xAE,0x69,0x4E,0x5D,0xCC,0x4E,0x98,0x64,0x3E,0x75,0x71,0x33,0xE6,0x9C,0xA9,0x95,0x39,0x44,0xB9,0x48,0x23,0x53,0x64,0xB7,0xE9,0xE2,0x19,0x51,0x2B,0x82,0xBB,0x88,0xC8,0x06,0x60,0xC0,0x15,0x69,0x1C,0x40,0x40,0xF1,0xA9,0xFF,0x75,0x79,0x39};
|
||||||
|
//const uint8_t spNOW[] PROGMEM = {0xAE,0x2A,0x92,0x7A,0x28,0x9D,0x86,0xA2,0x48,0xF4,0xA7,0x72,0x56,0xF2,0x2A,0xC8,0x5E,0xD2,0x5E,0xC9,0x2A,0x53,0x7E,0xB5,0xEA,0x27,0xEE,0xBA,0x3C,0xC4,0x3A,0x9E,0xA8,0xEB,0xC9,0x52,0xCD,0x78,0xA2,0xA6,0xB7,0x52,0xAD,0xE5,0x89,0x9A,0xBA,0x0E,0xB5,0x8C,0x27,0xE9,0x6A,0x27,0xCD,0x52,0x9E,0xAC,0xA9,0xED,0x32,0xCD,0x78,0xEA,0xAE,0xB6,0xD3,0x35,0xD7,0x69,0x9B,0xDE,0xCE,0x94,0xCE,0x6B,0xAC,0xEE,0x2A,0x93,0x36,0x8D,0xB1,0xB8,0xCD,0x08,0xDA,0x54,0xA7,0x32,0xA6,0x54,0x1E,0xA2,0xB7,0xC2,0x14,0x73,0x8B,0x85,0xDD,0x32,0x53,0xC8,0x2D,0x2E,0xFE,0xEA,0xFF,0x25,0x51,0x21,0x59,0x55,0x39};
|
||||||
|
//const uint8_t spNUMBER[] PROGMEM = {0xA6,0x0A,0x42,0x72,0xB9,0xDC,0x84,0x32,0x0A,0x89,0xA3,0x72,0x13,0xF2,0xC0,0x35,0x0E,0xDB,0x4D,0x49,0x13,0x57,0x3D,0xAA,0xA4,0x27,0xAE,0xAE,0xC3,0x25,0x12,0x9F,0xA8,0xBA,0x2D,0x37,0x4F,0x74,0x82,0x62,0xAF,0xC3,0x3C,0xD5,0xF1,0x8B,0xBD,0x0E,0xB5,0x44,0xCB,0xAF,0x72,0xAD,0x91,0xDC,0xAC,0xA0,0xCA,0xB1,0x46,0x4A,0x33,0x82,0x6C,0x46,0x03,0xA4,0x4B,0x8A,0xB2,0x0C,0x2B,0x90,0x2D,0x2A,0x33,0xD2,0xB2,0xC4,0x3E,0x8B,0xCA,0xCA,0xD2,0x10,0x5F,0xD5,0xAA,0xE2,0xDB,0x8C,0x65,0x53,0xAB,0x73,0x09,0x57,0xAE,0xDB,0x6D,0x28,0xB1,0xDC,0xC5,0x1F,0xB7,0x29,0x87,0xF0,0xD0,0xBE,0x94,0xE7,0xB0,0x64,0x1F,0x16,0x5A,0x53,0xEC,0xFA,0x79};
|
||||||
|
//const uint8_t spO[] PROGMEM = {0x2B,0xC9,0x21,0xCD,0x2C,0x1F,0xEE,0xE4,0xA4,0xC5,0x54,0x9A,0xE9,0xA6,0x9B,0xAE,0x2C,0xBB,0x4A,0x55,0xDB,0xB4,0xB3,0x95,0xA7,0xD4,0x2E,0xEA,0xAB,0x67,0xDE,0xF2,0x68,0xC7,0x4D,0x74,0x63,0x29,0x82,0x5E,0x4F,0xD4,0x9D,0xB9,0x08,0x95,0xB1,0xE7,0x2E,0xB6,0xD1,0x57,0xA6,0x52,0x69,0xD4,0xB5,0x16,0xAA,0xCA,0xB7,0x54,0xE1,0x1C,0xFD,0x69,0x61,0x79,0x19,0x61,0x72,0x79};
|
||||||
|
//const uint8_t spOCLOCK[] PROGMEM = {0x2B,0xAB,0xA6,0xC3,0x9D,0x37,0xAF,0x3C,0x87,0x0C,0x17,0x79,0xD5,0x8A,0x38,0x9D,0xDD,0x7A,0x16,0x2A,0x84,0x72,0x77,0x11,0xD9,0x00,0x00,0x06,0x28,0xA5,0x3B,0x00,0x5D,0x6B,0xA4,0x60,0x59,0x0D,0x09,0x55,0x32,0xBC,0xA4,0x35,0x4B,0xAD,0xD1,0x70,0x73,0xF6,0x16,0xD7,0x29,0x2B,0xCC,0xAD,0xCA,0x4D,0x67,0xAD,0x2C,0xF5,0xAE,0x50,0x9D,0x38,0x86,0xD4,0x3B,0x4B,0x65,0x65,0x98,0xD2,0x4B,0x75,0xF3,0xDA,0x64,0x12,0xCA,0xDD,0x45,0x64,0x03,0x00,0x00,0x28,0x20,0x15,0x23,0x02,0xE4,0xE4,0x8C,0x80,0x2C,0x07,0xFE,0x31,0x79};
|
||||||
|
//const uint8_t spOF[] PROGMEM = {0x2B,0x2E,0x6E,0x3A,0x95,0xBA,0x9C,0x28,0xFB,0xCB,0x10,0x5B,0x75,0xA3,0x13,0x67,0xFF,0xE5,0xAC,0xAB,0x57,0x92,0xE2,0x76,0x8A,0x36,0x1E,0x69,0x4A,0x5B,0x26,0xBE,0x78,0xD4,0x29,0x4D,0xBB,0xE8,0xE2,0xD4,0xC6,0x51,0x29,0x5A,0xB7,0xD2,0x10,0x72,0x8E,0x71,0xD7,0x72,0x63,0x52,0xE9,0xAE,0xDA,0xDA,0x8F,0x6E,0x2A,0x3A,0xDD,0x94,0x6D,0xEB,0xE9,0xFF,0x31,0x31,0x79};
|
||||||
|
//const uint8_t spOFF[] PROGMEM = {0xCD,0xCB,0x7E,0x52,0x55,0x1A,0xAD,0x28,0xFB,0x2B,0x33,0xCD,0x74,0x83,0x13,0x66,0xF7,0xA5,0x6A,0xAD,0x56,0x5C,0xF4,0x4E,0x38,0x75,0x6E,0x79,0x0A,0x5B,0xA6,0xF2,0x28,0xB5,0xA1,0x8E,0x9B,0xC5,0xEC,0xD0,0x27,0x97,0x19,0x6A,0x8D,0x14,0x50,0x6C,0x87,0x00,0x9A,0x6D,0x67,0xC0,0x34,0xE9,0x04,0x98,0xA6,0x82,0x00,0xCD,0x55,0x10,0xA0,0x9B,0x70,0x04,0x54,0x53,0xFE,0x11,0x19,0x79};
|
||||||
|
//const uint8_t spOLD[] PROGMEM = {0xA9,0x68,0x21,0xBC,0x44,0x1A,0xAF,0xB2,0x98,0x88,0x34,0x7D,0xBC,0xCB,0x55,0xA5,0x54,0xA6,0x1A,0xB7,0x56,0x9D,0x5D,0xBA,0xB1,0x3E,0x1E,0x75,0x8C,0x11,0x42,0xFD,0x78,0xD6,0xA3,0x89,0xAA,0xC3,0x94,0x37,0xF7,0xA6,0x34,0xD1,0x58,0x1B,0x4B,0xDF,0xDA,0xA4,0xBA,0x58,0xEC,0x04,0x4F,0x9F,0xEB,0x5C,0x87,0x2A,0x59,0x2E,0xC7,0x74,0x1F,0xDA,0x5C,0x28,0xCC,0x5C,0x0B,0x19,0x85,0x72,0x77,0x11,0xD9,0xE0,0xFA,0x6D,0xDC,0xC5,0xD4,0x4D,0xEA,0x9B,0x17,0x77,0x73,0xDB,0xFF,0x39,0x79};
|
||||||
|
//const uint8_t spON[] PROGMEM = {0x25,0x2A,0xF6,0xC6,0xD4,0xE3,0x9C,0xB0,0x89,0xDD,0x14,0x4B,0x7C,0x82,0x2A,0x6E,0x8D,0xA3,0xD6,0x09,0x8A,0xFC,0x51,0xCE,0xD8,0x37,0x3A,0x71,0x76,0x37,0xAA,0xDE,0xF8,0x64,0x39,0xDE,0xA8,0x7A,0xE3,0xD5,0xA4,0x71,0x29,0xEE,0xB5,0x4B,0x5F,0xDC,0x26,0x9B,0x2D,0x29,0x43,0xB6,0x15,0xC2,0x91,0x38,0x0C,0x91,0xA7,0x47,0x58,0xE3,0x30,0x06,0xE9,0x51,0x9A,0x8D,0xDD,0x14,0x94,0x7B,0x69,0xA6,0x76,0x63,0x94,0x1A,0x23,0x9E,0xDA,0x8D,0x51,0x9A,0xBB,0x56,0x9A,0xFF,0x4D,0x19,0x39,0x79};
|
||||||
|
//const uint8_t spONLY[] PROGMEM = {0x29,0x2B,0xC1,0xDD,0xA4,0x66,0x9F,0xA8,0xEB,0xB2,0x34,0xD9,0x7C,0xA2,0xA6,0xDA,0x5C,0xA5,0xD5,0x09,0x9B,0x2C,0x73,0xD5,0x4D,0x2B,0xC8,0xAA,0xD5,0x2D,0x5E,0x0E,0x3F,0xA9,0x88,0x50,0xDB,0x34,0x82,0xA2,0xC2,0x1A,0x35,0x5D,0x0B,0x0A,0x17,0x5B,0x75,0xF7,0x25,0x2A,0x92,0x62,0x34,0xDC,0xA7,0x28,0x49,0xEA,0xD4,0x4A,0x92,0xB2,0x28,0xB9,0xCD,0x3B,0x51,0xC9,0x33,0x97,0x48,0xAD,0x96,0xB9,0x68,0x75,0xB6,0x6A,0x19,0x5B,0x79,0xF4,0xCD,0x99,0xBA,0xD7,0xE2,0x36,0x34,0xA3,0x96,0xD5,0xB3,0xDD,0x58,0xB4,0x7A,0xE7,0x46,0xB2,0xD3,0xFF,0x25,0x79};
|
||||||
|
//const uint8_t spOR[] PROGMEM = {0x25,0xCA,0xEC,0xCA,0x8C,0xF2,0xB4,0x28,0x93,0x4F,0x53,0xEE,0x39,0xA2,0x4C,0xBE,0x44,0x35,0x67,0x8B,0x0B,0xDA,0x15,0xF1,0x5C,0x23,0x29,0x70,0xD7,0xD5,0x7C,0xCF,0xA4,0x65,0x89,0xDC,0xBA,0x98,0x9F,0x96,0x17,0x3C,0xEB,0x22,0x7E,0x5A,0x93,0x69,0xAF,0x07,0xE5,0x2D,0x5D,0x12,0xB3,0xEA,0xD4,0x37,0x8D,0x51,0xEF,0x88,0xF3,0x9E,0x30,0x06,0xB7,0x2D,0xC6,0x9B,0xFF,0x05};
|
||||||
|
//const uint8_t spP[] PROGMEM = {0x0E,0x18,0x5D,0x29,0x79,0x95,0x93,0x6E,0x8D,0x98,0xE1,0x4E,0xC3,0x54,0x35,0x76,0x97,0xBB,0x8C,0x81,0xF7,0xD4,0x19,0xF1,0x75,0x01,0x5C,0x3B,0x7B,0x64,0x3B,0x05,0x50,0x4E,0xED,0xD6,0xEC,0x68,0xC0,0xBD,0x95,0x7B,0x97,0x87,0x38,0xFD,0x25,0x51,0x15,0x51,0x59,0x41,0x25,0x41,0x05};
|
||||||
|
//const uint8_t spPARAMETER[] PROGMEM = {0x04,0xD0,0xA2,0x3D,0xA5,0xC5,0xA7,0x9B,0x6B,0xCD,0x91,0xE6,0x21,0x85,0xE3,0x71,0x7B,0xDA,0xB2,0x1C,0xB8,0x38,0x3C,0x6E,0xCA,0xD2,0xC5,0x32,0xF5,0xB6,0x31,0x6B,0x69,0x39,0x6C,0x61,0xE9,0x65,0x45,0xA5,0x5B,0x71,0x45,0xA3,0x13,0xD4,0x9C,0x11,0x9A,0x8D,0x4E,0xD0,0xEC,0x46,0xBA,0xD5,0x5A,0x49,0x89,0x9E,0x42,0x39,0xB9,0xE4,0xC9,0x49,0x31,0x74,0xBB,0x92,0x67,0x23,0xA5,0x50,0xDD,0x4A,0x9E,0x8C,0xB4,0x42,0xAE,0x3B,0x65,0x2D,0x5E,0xC6,0x3E,0xA5,0xB5,0xD5,0x69,0x28,0xC7,0x62,0xD2,0x0A,0xE5,0xEE,0x22,0xB2,0x41,0x01,0x9B,0x65,0x1A,0xA0,0xE0,0xF0,0xD6,0x24,0xEF,0x96,0xDA,0xB5,0xCE,0xD0,0x82,0x7B,0xAA,0xAE,0x1E,0x53,0x4D,0x15,0xA1,0xF2,0xB8,0x8D,0x25,0x57,0x84,0xEA,0xE2,0x32,0x96,0x9C,0x11,0xEC,0x93,0xFF,0x51,0x61,0x39,0x51,0x05};
|
||||||
|
//const uint8_t spPENCE[] PROGMEM = {0x02,0x28,0x46,0xAA,0xB9,0x23,0x1B,0xBB,0x69,0x98,0xE5,0x17,0x2B,0x59,0x96,0x71,0x4F,0xB0,0xC2,0x88,0xA5,0x34,0x3E,0xC9,0x76,0x23,0x96,0xDA,0xE8,0x64,0xC7,0x8E,0x7B,0x48,0xA3,0x55,0x4E,0x53,0x12,0x26,0x89,0x5B,0xDD,0x94,0x4B,0xA9,0xC4,0x29,0x6D,0x51,0x6A,0xC5,0x19,0x27,0xF5,0x45,0xB1,0xAF,0x78,0x5C,0xD5,0x27,0x21,0xB9,0x16,0x95,0x09,0x90,0x61,0x1A,0x01,0x3E,0x43,0x16,0xC0,0x67,0x22,0x0A,0xF8,0x4C,0x4D,0x01,0x9F,0xAA,0x09,0xE0,0x53,0x55,0x02,0x7C,0xA9,0xFC,0x51,0x65,0x41,0x51,0x19,0x05};
|
||||||
|
//const uint8_t spPLEASE[] PROGMEM = {0x06,0xC8,0xD6,0x4C,0x01,0x45,0x8B,0x05,0xFB,0x18,0x56,0xAA,0x70,0xD2,0x82,0xC3,0x95,0x2D,0x7D,0xF5,0x0C,0x96,0xB7,0xB5,0x81,0xB6,0x36,0x59,0xC1,0xB4,0x06,0xDA,0x55,0x65,0x25,0xCB,0x1B,0xE8,0x76,0xED,0x91,0xCD,0x44,0x50,0xD3,0x95,0x47,0x31,0x87,0x82,0x76,0xCD,0x6A,0xED,0xEA,0x06,0x3C,0xDD,0x28,0x75,0xAB,0x3B,0x50,0xF5,0xAC,0xD4,0xCF,0xA1,0xC0,0x5D,0xB3,0x52,0x3F,0xBB,0x01,0x77,0xD5,0x2E,0xFD,0x6C,0x06,0xDC,0x35,0x3B,0xF5,0x33,0x0B,0x68,0xF7,0xEC,0xD4,0x8F,0x20,0x60,0xD9,0xB3,0x53,0xDF,0xA4,0x50,0x7A,0x57,0x0E,0x5D,0xC7,0xC1,0xE1,0x39,0xDB,0xB4,0x5F,0x93,0xB8,0x64,0x13,0xDB,0x32,0x60,0x01,0x32,0x02,0x7C,0xC1,0x8A,0x80,0xAF,0x44,0x10,0xF0,0x8D,0x39,0x02,0xBE,0x90,0xFA,0x65,0x55,0x19,0x05};
|
||||||
|
//const uint8_t spPLUS[] PROGMEM = {0x02,0xF0,0xD6,0xCC,0x01,0x51,0x8B,0x8D,0xA2,0x29,0x65,0x4B,0x5F,0x3D,0x8B,0x51,0x34,0xB3,0x99,0x2E,0x0B,0x4F,0xD9,0xF4,0x66,0x84,0xB6,0x3C,0x75,0x35,0x93,0x91,0x92,0xE9,0x54,0xCD,0x4C,0x65,0x72,0xAB,0x55,0x95,0xE0,0x15,0x1C,0xB5,0x5B,0x3D,0x49,0x86,0x9B,0x79,0x52,0xC0,0xC5,0x1C,0x1A,0xD0,0x80,0x06,0x04,0xF0,0x04,0xF9,0xFF,0x15,0x39,0x49,0x79,0x05};
|
||||||
|
//const uint8_t spPOINT[] PROGMEM = {0x02,0xC8,0x5A,0x5C,0x00,0x45,0x4E,0x25,0xB7,0xF0,0x2C,0x4D,0x74,0xDC,0xDC,0xD8,0x26,0xDD,0x65,0xE6,0x70,0x93,0xDF,0xCA,0xA0,0x8E,0xD3,0x5D,0x5E,0x0E,0x9B,0x19,0xD4,0xF2,0x64,0xD3,0x94,0x69,0x51,0xAA,0x53,0xAC,0x34,0x4A,0x65,0xB5,0x4A,0x3B,0x32,0x69,0x85,0x5B,0x2B,0x7D,0x57,0x6A,0x59,0xE4,0xC6,0x0C,0x45,0xA8,0xB6,0x69,0x5A,0x32,0x09,0xE5,0xEE,0x22,0xB2,0x01,0x00,0x14,0x70,0x45,0x9A,0x06,0x10,0xD0,0x7C,0xC3,0xFF,0x51,0x35,0x49,0x15,0x49,0x65,0x79,0x05};
|
||||||
|
//const uint8_t spPOSITIVE[] PROGMEM = {0x02,0xF0,0x3E,0xA5,0x45,0x45,0x57,0x5A,0xB0,0xEA,0x15,0xA4,0x56,0xAA,0xA6,0x35,0x57,0x90,0xCA,0x54,0x3A,0xA7,0x3C,0x41,0x8E,0x5B,0x61,0x92,0x69,0x87,0x23,0xAA,0xFC,0xC4,0xC4,0x56,0x05,0x20,0x81,0x8D,0x94,0x5D,0xAC,0x21,0xAA,0x6E,0x56,0x32,0x49,0x8A,0x99,0x6D,0x3A,0xE9,0xE0,0x2E,0x1E,0xB6,0xAA,0x15,0x4D,0x98,0xB8,0xC5,0x22,0x32,0x08,0xE5,0xEE,0x22,0xB2,0x41,0x01,0x57,0xB2,0x19,0x60,0x33,0xB5,0x92,0x54,0x66,0x52,0x13,0xB5,0x47,0x3D,0x9C,0xA1,0x67,0x34,0x6E,0x43,0xF7,0xCC,0x99,0x31,0x3B,0xCD,0xCD,0x91,0x56,0xE4,0x9C,0xB0,0x14,0xE3,0xA6,0xAE,0xBB,0xDD,0x5A,0xAD,0x9A,0x39,0xF7,0x41,0x40,0xB3,0x6A,0xFF,0x5A,0x39,0x55,0x79,0x05};
|
||||||
|
//const uint8_t spPOUN_[] PROGMEM = {0x04,0xA0,0x4E,0x54,0x01,0x2E,0x98,0x36,0x2B,0xD9,0x09,0x0F,0xAA,0xB5,0x9C,0xBC,0xB2,0x5C,0xA3,0xF4,0xF1,0x4B,0xED,0x4C,0xB3,0x45,0x27,0xC8,0x75,0x32,0x4D,0x17,0x9E,0xA8,0xC4,0xCD,0x32,0x69,0x79,0xE2,0x92,0xB6,0xD2,0xB9,0xE3,0x48,0xF3,0x88,0x51,0xCE,0xCA,0x2D,0xCF,0x23,0xD5,0x35,0x67,0xB6,0x32,0xE5,0x52,0xB3,0x5C,0x59,0x9A,0x94,0xD2,0xC5,0x62,0x63,0xEA,0x62,0xB6,0x42,0xED,0x46,0xA9,0x2F,0x8A,0xBA,0x28,0xB2,0xA4,0xA1,0x48,0xAA,0xE5,0x48,0x1B,0x86,0xA4,0xA4,0x82,0x3D,0x4D,0x1C,0xFC,0xE0,0x87,0xFF,0x65,0x65,0x51,0x25,0x05};
|
||||||
|
//const uint8_t spPRESS[] PROGMEM = {0x04,0xA8,0x34,0x9D,0x01,0x2D,0x44,0x0A,0x20,0xF7,0xAC,0x60,0xA7,0x2E,0xA6,0xE6,0x76,0xAA,0xBB,0xBC,0x3C,0x28,0xBD,0xAC,0xC9,0xF1,0x6B,0x31,0x37,0xD7,0x35,0x27,0x6A,0x21,0x34,0xC2,0x56,0x9F,0x7C,0xF8,0x12,0x0B,0x59,0x7D,0x9A,0x19,0x4A,0x34,0x65,0xCD,0x6A,0x87,0x77,0x89,0xD4,0x25,0xA9,0x6F,0x8E,0x7C,0x3C,0xEA,0x08,0x20,0x73,0x53,0x01,0x7C,0x25,0xC6,0x80,0x4F,0xD5,0x08,0xF0,0x0D,0x1B,0x03,0xBE,0x21,0x63,0xC0,0x57,0x6C,0x04,0xF8,0x42,0x92,0x00,0x4F,0x90,0x22,0xE0,0x7B,0x56,0x04,0x7C,0x47,0x82,0x80,0xEF,0x84,0x11,0xF0,0x03,0xE9,0xFF,0x59,0x41,0x25,0x71,0x79,0x25,0x05};
|
||||||
|
//const uint8_t spPROGRAMME[] PROGMEM = {0x0C,0x48,0x2E,0x95,0x03,0x2E,0x0A,0x8D,0x3D,0xDA,0x13,0xD5,0x68,0xF9,0xA9,0x73,0x68,0xC7,0x94,0x13,0x94,0x62,0xA9,0xC6,0xAB,0x4F,0x50,0x63,0x84,0x19,0xAD,0x3E,0x41,0x0B,0xEE,0x6E,0xB8,0xE9,0x04,0xD5,0x69,0x84,0xF0,0xAB,0x11,0x66,0xE7,0x66,0x22,0xAF,0x5C,0x14,0xA3,0x2B,0xAB,0x2E,0x34,0xA9,0x54,0x19,0x1D,0x96,0x4A,0xE5,0x3E,0xAB,0xB8,0x44,0x9C,0x50,0xA7,0x66,0x21,0xA4,0x71,0x52,0x95,0x33,0x17,0x66,0xA7,0x1D,0x75,0x69,0x1A,0x94,0xE9,0x75,0xB5,0xA5,0xA9,0x9B,0xE7,0x9A,0x33,0xB4,0xD8,0xE1,0xC1,0x5D,0xCE,0xD8,0xFC,0x44,0x24,0x75,0x3E,0x53,0x8B,0xE5,0x19,0xBC,0x78,0xCC,0x35,0x76,0x64,0xF2,0xED,0x36,0xD7,0x54,0x51,0xCE,0xB3,0xEB,0x1C,0xE6,0xEC,0x34,0x0C,0xAC,0x89,0x9F,0xED,0xF2,0x45};
|
||||||
|
//const uint8_t spQ[] PROGMEM = {0x0E,0x58,0x5E,0xD8,0x00,0x3B,0xAA,0x3A,0x60,0xB5,0xF1,0x16,0xF4,0x82,0x54,0xD1,0x65,0x5A,0x3C,0xB4,0x42,0x6E,0x2F,0xDA,0xF1,0x8A,0x9B,0x0C,0xF6,0xF0,0xD5,0x2B,0x29,0x7C,0x54,0x59,0x5F,0xED,0x64,0xA4,0x59,0x1C,0x93,0xFA,0xA6,0x52,0x24,0xB1,0xAA,0x6C,0xAF,0x42,0xE5,0xC5,0x89,0x44,0xAE,0x76,0x95,0x36,0xC7,0xEA,0xB9,0xCA,0x34,0x4A,0xBF,0x70,0xE4,0x12,0xD3,0x28,0xF5,0x2C,0x11,0x8B,0x55,0x2B,0xC2,0xB2,0x69,0x2E,0x96,0xED,0xFF,0x25};
|
||||||
|
//const uint8_t spR[] PROGMEM = {0x23,0x2C,0xEE,0x2A,0x8C,0x57,0xAE,0x28,0xC7,0x4F,0x33,0x5D,0xB8,0xB2,0xEC,0xAF,0xD2,0x78,0xD5,0xCE,0x46,0x53,0xCC,0x74,0x25,0x6E,0xEE,0x7D,0x19,0xAA,0xDA,0xF1,0xC4,0xCD,0x7D,0xE8,0x73,0x9F,0xFB,0x5C,0x86,0xA2,0x7F,0x2C,0x79,0x55,0x1D,0xD2,0x98,0xE6,0xA6,0xAB,0x8D,0xCE,0xE3,0xFF,0x11,0x51,0x25};
|
||||||
|
//const uint8_t spRED[] PROGMEM = {0xAA,0xE6,0xBE,0x2D,0x32,0x1C,0x9B,0x4A,0xB8,0x36,0x77,0x73,0x62,0x0A,0x9E,0xDD,0x3C,0xC2,0xB1,0xCB,0x64,0x08,0xF5,0x8C,0xC6,0x29,0x76,0x8D,0x2C,0x3D,0x5A,0x8F,0xA0,0x78,0x0E,0x6F,0x5F,0x74,0xFD,0xE3,0x8F,0x60,0x6A,0xE9,0xAD,0x4F,0x38,0x6D,0x8A,0xA5,0xB7,0x3A,0xF1,0x30,0xCE,0x59,0xB9,0xF8,0x64,0x23,0x38,0x47,0x46,0x93,0x53,0x77,0x67,0x12,0x15,0x4B,0x4E,0xD7,0x9C,0x89,0x77,0x2E,0x1A,0x7D,0x73,0x62,0x56,0x35,0xC9,0x8D,0xCD,0x90,0x86,0x57,0x2D,0x35,0x24,0x49,0x9A,0xD9,0x91,0xC8,0x20,0x94,0xBB,0x8B,0xC8,0x06,0x37,0x6D,0xE3,0x2E,0xA6,0x6E,0xD2,0xD0,0xBC,0xB8,0x9B,0xDB,0xFE,0x15,0x51,0x65,0x51,0x25};
|
||||||
|
//const uint8_t spRESET[] PROGMEM = {0xAA,0xF0,0x4D,0x54,0x22,0x5B,0xFB,0xAC,0xC5,0x49,0x53,0x66,0x5A,0xCB,0x15,0x76,0xCB,0xA8,0x1B,0xAD,0x56,0x70,0x8C,0x21,0xCF,0x34,0xDA,0xC1,0x76,0x9B,0xBB,0xAC,0x83,0xCC,0x34,0x72,0x7E,0x93,0x42,0x39,0x3D,0x4B,0x01,0x17,0xBB,0x69,0x40,0x00,0x8F,0x85,0x09,0xE0,0xCA,0x0C,0x01,0x5C,0x16,0x29,0x80,0x2B,0x23,0x0C,0xB0,0x69,0x7A,0x2B,0xAA,0x16,0x1B,0xA9,0xD8,0xAB,0x6F,0x56,0x75,0xDC,0x67,0xAF,0xA1,0x7B,0x93,0x4A,0x5B,0x3C,0xC6,0x91,0x42,0xD3,0x74,0x71,0x9A,0xAA,0x93,0x68,0xEB,0x29,0x6C,0x11,0xCA,0xDD,0x45,0x64,0x03,0x28,0x60,0x28,0x77,0x01,0x3C,0x23,0x29,0x80,0x6B,0xD4,0x09,0xB0,0x98,0x27,0x02,0x0A,0x2D,0xFB,0x39,0x25,0x55,0x15,0x51,0x25};
|
||||||
|
//const uint8_t spRETURN[] PROGMEM = {0xA1,0x8A,0x26,0xD5,0x38,0xB3,0xA4,0x3C,0x26,0xF2,0x08,0xEB,0x3D,0x92,0xEC,0x29,0x2D,0x63,0xD3,0x4A,0x9A,0x27,0xD7,0x8A,0x8E,0xA1,0x6B,0x91,0x8C,0xAD,0x12,0x93,0x4C,0x28,0x77,0x17,0x91,0x0D,0x00,0x06,0x58,0xCA,0xDC,0x01,0x1D,0xB5,0x35,0xBF,0xB0,0x90,0x88,0xA8,0x75,0xFC,0x64,0xDD,0xCB,0xAA,0xD6,0xF1,0x9B,0x0F,0x77,0xD5,0x56,0xC7,0x6F,0xA1,0x23,0x45,0x33,0x9D,0xA0,0xFA,0xF6,0x54,0x6B,0x79,0xA2,0xEA,0xCB,0x42,0x7D,0xD5,0x49,0x6A,0xEC,0x70,0xD5,0x56,0x27,0x6F,0xBE,0x3D,0xC5,0x5A,0xAE,0xAA,0xA6,0x48,0x97,0x58,0xB4,0xBA,0xE6,0xCB,0x53,0xB5,0x65,0x19,0x4A,0xF0,0x70,0xA9,0x49,0x69,0x2C,0x31,0xDC,0x34,0x27,0xA5,0xA9,0xC6,0x0A,0x33,0xAF,0x95,0xE6,0x16,0x23,0xC5,0x3D,0x51,0x98,0x9A,0x13,0x33,0x89,0x44,0x61,0x6A,0xCC,0x34,0x52,0xDD,0xFC,0x39,0x55,0x25};
|
||||||
|
//const uint8_t spRUN[] PROGMEM = {0x22,0x11,0xAE,0x5C,0xA3,0x94,0x98,0x4A,0xB8,0x0E,0xF7,0x92,0x67,0x0A,0x1E,0xDB,0x4D,0x5B,0xA9,0xC9,0x79,0x49,0xD3,0x0C,0x27,0x21,0x35,0x49,0xCD,0xBB,0xD8,0x8E,0x38,0x35,0x71,0x2D,0xF7,0x70,0xE2,0x12,0x2F,0xDD,0xB5,0xD1,0x49,0xAA,0xBD,0x72,0xB7,0x96,0x27,0x6B,0x76,0x2B,0xC2,0x5A,0x9D,0xA2,0x86,0xAE,0x50,0x6B,0x54,0xFA,0x62,0x2C,0x42,0x3C,0x76,0x1A,0xB2,0x36,0x0B,0xF5,0x46,0x61,0xC8,0x4A,0xB3,0xD8,0x12,0x87,0x21,0x49,0x8D,0x21,0x4F,0x13,0x86,0xA4,0x24,0x5A,0x3C,0x75,0x1A,0x8B,0x0D,0x53,0xF5,0xD8,0xFF,0x71,0x39,0x49,0x39,0x39,0x55,0x25};
|
||||||
|
//const uint8_t spRUNNING[] PROGMEM = {0x22,0x11,0xAE,0x5C,0xA3,0x94,0x98,0x4A,0xB8,0x0E,0xF7,0x92,0x67,0x2A,0x1E,0xDB,0x4D,0x5B,0xA9,0x29,0x78,0x49,0xD3,0x0C,0x27,0x21,0x37,0x49,0xCD,0xBB,0xD8,0x8E,0x38,0x35,0x71,0x2D,0xF7,0x70,0xA2,0x92,0xB3,0xCC,0x35,0xD5,0x89,0x6A,0xD8,0x0C,0x8D,0x94,0x27,0x6C,0x7E,0x32,0x38,0x5D,0xAE,0xB0,0x7B,0x0F,0xC5,0xF6,0xD8,0xA2,0xCA,0x4D,0x9A,0x5B,0x75,0x49,0x0B,0x75,0x59,0x2A,0xB5,0x2B,0x99,0xCE,0xD1,0x7D,0x22,0x8F,0x7A,0x78,0x25,0xCF,0xA9,0x3C,0xBA,0x15,0x1A,0xA5,0xAA,0x52,0x1A,0x66,0x12,0xE8,0xAE,0xD0,0x7A,0x52,0x53,0x96,0x1A,0x45,0xD6,0x54,0x4D,0x49,0x6A,0x1A,0x79,0x56,0x35,0x66,0xC5,0xE5,0xE4,0x59,0xD4,0x10,0x95,0x95,0x6A,0x64,0xD6,0x83,0x1D,0x5C,0x5F,0x9C,0x4B,0x88,0xD9,0xF1,0x03,0x02,0x9C,0x51,0xFD,0x65};
|
||||||
|
//const uint8_t spS[] PROGMEM = {0x2D,0x9E,0xC9,0x85,0x3B,0x16,0xAF,0x68,0x87,0x31,0x4A,0x6B,0x74,0xC2,0xA5,0x8B,0xA4,0xA3,0xD1,0x89,0x96,0x4E,0xF2,0xF1,0x46,0x27,0x99,0x26,0xC9,0xC7,0x17,0x9F,0x62,0x85,0x11,0x69,0x6D,0x7D,0xEA,0x11,0x82,0xBD,0x74,0xF5,0x6A,0xBB,0x57,0xA9,0xF0,0x25,0x0C,0x08,0x46,0x52,0x00,0xDF,0xA7,0x69,0x40,0x01,0xDF,0xA5,0x71,0x80,0x00,0x3F,0xA4,0x51,0x00,0x01,0x3F,0xA5,0x61,0x00,0x03,0xFF,0x51,0x59,0x41,0x65};
|
||||||
|
//const uint8_t spSAME[] PROGMEM = {0x02,0xB8,0x54,0xCC,0x02,0x06,0x38,0x8C,0xDD,0x02,0x27,0x5D,0x22,0xB0,0xB5,0x2A,0x9D,0x74,0xA9,0xE2,0xB4,0xAA,0x75,0x92,0x69,0x8A,0xD2,0xB2,0xD6,0x49,0xA7,0x4A,0xAE,0xA8,0xDA,0x27,0x9D,0x26,0x29,0xB3,0x6A,0x9F,0x72,0xB9,0x42,0xF3,0xAE,0x7D,0xEA,0x19,0x13,0x35,0xA6,0xCE,0xEA,0x86,0x17,0xF4,0x9E,0x3A,0x6B,0x9A,0xCE,0x40,0xBB,0x67,0xB7,0x69,0x38,0x45,0xAB,0x9A,0xE5,0xE6,0x2A,0x44,0x2A,0xBD,0x89,0x5B,0x93,0x96,0x0C,0xF4,0xB5,0x6E,0x4D,0x9A,0xAA,0xD8,0x93,0xD8,0x35,0xCC,0xD9,0x70,0x1B,0x79,0xDB,0xFF,0x51,0x25,0x79,0x61,0x65};
|
||||||
|
//const uint8_t spSCORE[] PROGMEM = {0x06,0xF8,0x46,0xCB,0x00,0x4F,0x79,0x28,0xE0,0x3B,0x75,0x03,0xFC,0xE0,0xE1,0x80,0xEB,0xAC,0x11,0x28,0x94,0xBB,0x8B,0xC8,0x06,0x05,0xA4,0x51,0xC4,0x80,0x78,0x87,0x8B,0x17,0xF3,0x90,0x9A,0x37,0x3A,0x6E,0xC1,0xD3,0x96,0x94,0xFB,0x78,0x05,0xF5,0x78,0xB1,0xDF,0x13,0x64,0xB2,0x6D,0x41,0x79,0x4E,0x94,0xE9,0xB6,0x39,0xE5,0x59,0x99,0xF7,0x97,0x66,0xB2,0x69,0x14,0x3E,0x4E,0xB8,0xC8,0xAA,0x52,0xFB,0x5C,0x95,0x68,0xAF,0x4B,0x6B,0x7A,0x47,0x50,0x5E,0x2E,0x9D,0xA9,0x55,0x41,0xB1,0xB8,0x74,0x3E,0x66,0x27,0xE9,0x9A,0xD6,0x7B,0xDF,0x55,0xC2,0x5D,0x5B,0x1F,0x5C,0x75,0x33,0x6F,0x6D,0x7D,0xF4,0x55,0xC9,0xB2,0xA5,0x75,0xC9,0x59,0x85,0xFA,0xE6,0x3A,0xFC,0x11,0x39,0x79,0x61,0x51,0x65};
|
||||||
|
//const uint8_t spSECOND[] PROGMEM = {0x02,0xD8,0xD4,0x53,0x01,0x97,0x6B,0x28,0xE0,0x4B,0x8B,0x62,0x1F,0x92,0xE6,0xA1,0x8E,0x8F,0x5B,0x9D,0x6B,0x6A,0xCD,0x3E,0x7E,0x0F,0xA5,0xA9,0x56,0x7B,0xC5,0x2D,0xB9,0x96,0xE4,0x1C,0xE4,0x0B,0xE5,0xEE,0x22,0xB2,0x01,0x04,0x90,0x7B,0x50,0x29,0xB3,0x73,0x36,0xF7,0x2A,0xA5,0x2D,0x21,0x54,0xB9,0x2E,0xA7,0xBE,0xD8,0x70,0xE3,0xD8,0xE4,0xC6,0x24,0xCD,0x9A,0xB2,0xB5,0x9B,0xB2,0x11,0x0F,0xF2,0xCC,0x66,0xCA,0xCA,0xCC,0xD9,0x72,0x9B,0xB1,0x08,0xD1,0xB2,0xD0,0x62,0xC6,0xC4,0xCD,0xDA,0x3C,0x35,0x02,0x85,0x72,0x77,0x11,0xD9,0x10,0xA6,0x11,0x22,0xA2,0x44,0x76,0x98,0xB6,0x71,0x17,0x53,0x37,0xFF,0x19,0x19,0x41,0x59,0x65};
|
||||||
|
//const uint8_t spSMALL[] PROGMEM = {0x04,0xF8,0x8A,0x85,0x03,0x12,0x10,0xC0,0xB7,0xA6,0x26,0x0E,0x3E,0x2C,0x50,0xBB,0xD8,0x38,0x46,0x35,0x6C,0x41,0x56,0xE2,0x43,0xD2,0x6C,0x04,0x99,0x67,0x96,0x51,0x9E,0x15,0x24,0x36,0x6D,0xAA,0x79,0x4F,0x98,0xF8,0xB6,0xAA,0xE5,0x59,0x51,0x12,0xDB,0xA6,0x9C,0x67,0xA5,0x89,0xED,0x98,0x5A,0x9E,0x91,0x67,0x3A,0xAB,0xAA,0x7E,0x47,0x9D,0xD8,0xAE,0xBB,0xF8,0x1B,0x43,0x25,0xB9,0x9E,0xE4,0x2F,0x8D,0x51,0xCC,0x7A,0x43,0xDF,0x30,0xFB,0x32,0x69,0x2A,0x3B,0xC3,0xEC,0x73,0xA7,0x1A,0xEF,0x4E,0xB3,0x8F,0xD1,0x2E,0xD2,0x37,0x4D,0x21,0xF8,0x04,0x5B,0xD6,0x30,0x46,0x6F,0xEB,0x22,0xD9,0xDC,0x18,0xA2,0x8F,0x61,0x65,0x31,0x63,0x72,0x36,0x09,0x91,0xF6,0xFF,0x15,0x25,0x41,0x15,0x65};
|
||||||
|
//const uint8_t spSTART[] PROGMEM = {0x08,0xD8,0x50,0x05,0x01,0x5F,0xB1,0x12,0xE0,0x33,0x55,0x06,0x7C,0xEE,0x66,0x80,0x6F,0x54,0x19,0xF0,0x65,0x18,0x07,0x10,0x28,0x94,0xBB,0x8B,0xC8,0x06,0x03,0x6C,0x96,0x36,0x9C,0xAA,0xD3,0x5D,0xBC,0xD3,0xF1,0x8A,0x52,0x6F,0xE9,0x28,0x27,0x28,0xF1,0x32,0x24,0x3C,0x9D,0x28,0xC7,0x4B,0x97,0xF0,0x74,0xD2,0x9C,0xAE,0x4D,0x23,0xE3,0x2D,0x56,0x95,0xF3,0xB6,0x85,0x76,0x5A,0x5D,0x2E,0xDB,0x1A,0xB6,0x6A,0x8C,0xB9,0x4C,0xAA,0xEB,0xC2,0x36,0x95,0x18,0x15,0x2A,0x0B,0xCB,0x54,0x83,0x8E,0x9B,0xB4,0x24,0x93,0x50,0xEE,0x2E,0x22,0x1B,0x00,0x18,0x70,0x94,0x3A,0x03,0x5E,0x66,0x53,0xC0,0x51,0x96,0x04,0xD8,0x42,0x02,0x01,0x8D,0xBA,0xFD,0x05,0x79,0x15,0x65};
|
||||||
|
//const uint8_t spSTOP[] PROGMEM = {0x08,0xF8,0x92,0x8D,0x00,0x5F,0x89,0x32,0xE0,0x6B,0x35,0x01,0x7C,0xAD,0x2A,0x80,0xEF,0x55,0x04,0xF0,0xA3,0x08,0x01,0xBE,0x13,0x46,0xA0,0x50,0xEE,0x2E,0x22,0x1B,0x1C,0xB0,0x8D,0xD5,0x70,0x9B,0xCE,0x10,0xB3,0x4E,0x27,0xCC,0xB1,0x3D,0x59,0x33,0x9F,0x38,0xC7,0xA9,0x74,0xD3,0x7D,0xB3,0x51,0xA4,0x58,0x9D,0xC9,0xB9,0x51,0x23,0x94,0xBB,0x8B,0xC8,0x06,0x00,0x60,0x80,0x57,0x96,0x04,0xC8,0xCE,0x1D,0x01,0x79,0x84,0x22,0xC0,0x3B,0xF7,0xFF,0x09,0x61,0x15,0x49,0x75,0x65};
|
||||||
|
//const uint8_t spSWITCH[] PROGMEM = {0x08,0xB8,0x84,0x95,0x01,0x5F,0x73,0x30,0xE0,0x73,0x0B,0x01,0x7C,0xE9,0xA6,0x80,0x2F,0x22,0x05,0xF0,0xB5,0xB8,0x02,0xBE,0x51,0x53,0xC0,0x6F,0x66,0x02,0xE8,0x3A,0x2B,0x78,0x89,0x47,0xB8,0x89,0x97,0xE2,0x47,0xB5,0x2A,0xA1,0x9F,0x4E,0xD0,0x69,0xAA,0x25,0xAD,0x3E,0xD1,0x94,0xC1,0x3A,0xBA,0xF9,0x14,0x33,0x05,0x69,0xD9,0xE2,0x52,0x0F,0xAF,0xA4,0x59,0x8F,0x51,0x23,0x94,0xBB,0x8B,0xC8,0x06,0x00,0x02,0x74,0x69,0x2E,0x80,0xD3,0x42,0x0C,0x70,0xC6,0x84,0x03,0x76,0x9B,0x72,0xC0,0x1A,0x9B,0x06,0x58,0xF5,0xDC,0x01,0x73,0x6D,0x1A,0x60,0x95,0x4E,0x01,0x8C,0xA8,0x42,0x80,0xAA,0x4C,0x10,0x10,0xA5,0xE9,0xFF,0x15};
|
||||||
|
const uint8_t spT[] PROGMEM = {0x0E,0x38,0xC2,0xD4,0x00,0x57,0xB5,0x36,0x77,0x29,0x26,0xCF,0xB6,0xBD,0xBC,0xE5,0x0C,0xA4,0xA7,0xF6,0xF2,0x97,0x53,0xB0,0xD9,0xC6,0x3B,0x5C,0xC9,0x76,0x0A,0x32,0x5B,0x7B,0x66,0xA3,0xDC,0x41,0x50,0x7A,0x6A,0xB7,0x66,0x27,0x45,0xDA,0x89,0x53,0xFA,0x95,0x18,0x79,0x27,0x4E,0x19,0x56,0x20,0x94,0xEB,0x3A,0x75,0x4C,0xE3,0x74,0x48,0xFE,0x15,0x27,0x8E,0x71,0x74,0xE3,0xF0,0x20,0x3D,0x15,0xC5,0x0D,0xCD,0xA0,0x6E,0x8F,0xED,0xFF,0x39,0x51,0x15};
|
||||||
|
//const uint8_t spTEN[] PROGMEM = {0x0E,0x38,0xD4,0x53,0x01,0x8B,0x85,0x68,0x60,0x05,0xDD,0x29,0x5B,0xBA,0xE9,0x1B,0x9D,0x68,0xE6,0x62,0x73,0x6F,0x7C,0xA2,0x19,0x46,0x34,0xBC,0xD1,0x49,0x56,0x68,0xD1,0xB4,0xC5,0x27,0x1F,0x39,0xC5,0xCD,0x67,0x9F,0xB2,0x3B,0xD3,0x8C,0x9C,0x33,0x9A,0xEE,0x4C,0x5D,0x62,0x4E,0xEA,0xAB,0x61,0x4B,0x49,0xB9,0xA9,0xCF,0x4A,0xBC,0x34,0xED,0x84,0x21,0x69,0x4D,0xD7,0x74,0x15,0x86,0x24,0xDC,0xCA,0x4A,0xB1,0x1B,0x92,0x94,0x28,0x4B,0x55,0x6E,0x48,0x52,0xC2,0x33,0x55,0xFF,0x69,0x39,0x41,0x09,0x15};
|
||||||
|
//const uint8_t spTHANK[] PROGMEM = {0x08,0xC8,0xDC,0x15,0x01,0x4D,0xA8,0x10,0x60,0xF2,0x50,0x01,0x74,0x93,0x3A,0x9C,0xEA,0x5D,0x8B,0x27,0xF6,0x71,0x87,0x2A,0x2E,0xB7,0xC5,0xC7,0x1B,0x7E,0xB4,0xD4,0x26,0x9D,0xA8,0xA7,0xB2,0x94,0x0A,0xBD,0x92,0x5E,0x3C,0x42,0xCB,0xCC,0x68,0x9B,0x09,0xAD,0x54,0xDB,0x65,0xC8,0xC6,0x75,0xD1,0x92,0xF8,0xD1,0x8C,0xC9,0x98,0x17,0x59,0x1A,0x54,0x08,0xE5,0xEE,0x22,0xB2,0x01,0x08,0x50,0x7B,0x38,0x03,0x4A,0x08,0x16,0x40,0x89,0x46,0xFF,0x15,0x41,0x09,0x15};
|
||||||
|
//const uint8_t spTHAT[] PROGMEM = {0x6C,0x18,0x34,0x25,0xC5,0x57,0xEA,0xC6,0xD5,0x9D,0x06,0x85,0x4A,0x97,0x50,0x77,0x96,0xEC,0xC2,0x6D,0x4A,0xD5,0x65,0x51,0x30,0x35,0x19,0x51,0xD7,0x49,0xCD,0x71,0x7B,0x45,0xC3,0x26,0xB5,0xFA,0xE2,0x93,0xCC,0xD0,0x5C,0xAA,0x8D,0x4F,0x3E,0x72,0x69,0x99,0x36,0x3E,0xD5,0xC8,0xED,0x19,0xD2,0x64,0xB5,0xA3,0x64,0x96,0xE9,0x92,0xD1,0xB7,0xE2,0x19,0x9A,0xB3,0x48,0x2F,0x94,0xBB,0x8B,0xC8,0x06,0x00,0x00,0x05,0x5C,0x91,0xA6,0x01,0x04,0x34,0xDF,0xF0,0x51,0x09,0x15};
|
||||||
|
const uint8_t spTHE[] PROGMEM = {0xA6,0x48,0xB2,0x28,0xA4,0x26,0xBB,0x3C,0xA9,0xA4,0xE0,0x6C,0x5C,0xD2,0x2A,0x8B,0x83,0x64,0xF1,0x8A,0x3A,0x1F,0x71,0x91,0xC7,0xCB,0xEF,0x74,0xD9,0xC3,0x1F,0x2D,0x7F,0x88,0x96,0x34,0x7D,0x75,0xFC,0xA1,0xD6,0x52,0x79,0xD5,0x89,0x86,0x1C,0x0B,0x93,0xCD,0xA7,0xE8,0x76,0x3C,0x9D,0x56,0xEF,0xA6,0xB5,0xD5,0x87,0xA7,0xFA,0x94,0xFF,0x39,0x51,0x09,0x15};
|
||||||
|
//const uint8_t spTHEN[] PROGMEM = {0xA6,0x4B,0x24,0x24,0xCD,0x6A,0xD9,0xCE,0xF5,0x99,0x84,0xB8,0xBB,0xEB,0x3C,0x8C,0x6A,0xC8,0xC2,0x30,0x7F,0x7C,0xEA,0x61,0x83,0xD2,0xFC,0xD1,0x69,0xBA,0x4E,0xCA,0x8C,0x57,0xA7,0xED,0x26,0xD9,0xD3,0x3F,0x9D,0x66,0xD8,0x66,0x4B,0xDD,0x74,0x9A,0x69,0x47,0x2C,0x74,0xD5,0x6A,0xA6,0x1E,0x75,0xD7,0xD6,0xA3,0xED,0xC6,0xB1,0xD9,0xE3,0xB6,0xB6,0x1B,0xC5,0xE1,0x74,0x3A,0x9A,0xAE,0x0C,0x9B,0xCB,0xE9,0x68,0x86,0x0C,0x28,0x49,0x67,0xFF,0x11,0x25,0x49,0x09,0x15};
|
||||||
|
//const uint8_t spTHIRD[] PROGMEM = {0x08,0x28,0xAA,0x8C,0x02,0x0C,0xC8,0xBA,0x8D,0x01,0x4D,0x86,0x1B,0xA0,0xE9,0xB6,0xE3,0x16,0x53,0x9A,0xE2,0xB3,0x8F,0x5D,0x55,0x6A,0x99,0xDD,0x3E,0x76,0x93,0xA5,0x19,0xF6,0xF8,0xB8,0x43,0x97,0xA6,0xF2,0xEA,0xE3,0x77,0xD3,0x96,0xAA,0x8B,0x4E,0xD4,0x74,0x69,0x98,0x3F,0x3E,0x79,0xF3,0xE9,0x29,0x3E,0xE7,0x54,0x2D,0x79,0x1A,0xD7,0xD4,0xD3,0xB6,0xE8,0xE1,0x12,0x73,0x4E,0x57,0xA3,0x87,0x4B,0xCE,0x59,0x7D,0x0B,0xEE,0x21,0x36,0x67,0x0C,0xCD,0xBA,0x85,0xDB,0xE2,0x36,0x54,0x6F,0xEE,0x56,0x97,0xDB,0x58,0x8D,0x7A,0x5A,0x4E,0x2E,0x63,0x51,0x1A,0x15,0x39,0x49,0x8C,0x49,0x8A,0xBA,0x76,0x45,0x36,0x46,0xEA,0x96,0x9E,0x31,0x15,0xD0,0x95,0x85,0x00,0x96,0x90,0x44,0x40,0x96,0xE1,0xFF,0x65,0x49,0x09,0x15};
|
||||||
|
const uint8_t spTHIS[] PROGMEM = {0xAA,0xF2,0xD2,0x6C,0xA4,0x2A,0xAA,0xCA,0x4B,0xB5,0xB6,0x6C,0x18,0xCA,0xAA,0x94,0x53,0xB4,0xF1,0x8A,0x3B,0x0B,0xEC,0xD2,0x45,0x27,0xEC,0xDC,0x71,0xCA,0x67,0x9D,0x68,0x48,0xC7,0xE9,0x58,0x74,0xD2,0x69,0x13,0x22,0x63,0xF1,0xA9,0x86,0x35,0xEC,0xCC,0xC5,0xAD,0xEE,0x5E,0x68,0xE4,0xE2,0x2A,0x20,0xE3,0x10,0x01,0x2C,0x62,0x66,0x80,0xC7,0xDC,0x15,0xF0,0x98,0x94,0x00,0x3E,0xB7,0x10,0xC0,0xA3,0x96,0x0C,0xF8,0x42,0x9D,0x01,0xDF,0x09,0x33,0xE0,0x1B,0x31,0x02,0x7C,0xA7,0x42,0x80,0x6F,0x94,0x10,0xF0,0x95,0x39,0x02,0x1A,0x0E,0xFD,0x51,0x59,0x49,0x15};
|
||||||
|
//const uint8_t spTIME[] PROGMEM = {0x0E,0x38,0xD0,0xC3,0x01,0x47,0xBB,0x3A,0x20,0xEB,0x8E,0xE6,0x95,0x14,0x61,0x1A,0xA2,0x96,0x97,0x73,0xBB,0x4A,0x59,0x3E,0x7E,0xC9,0x5B,0xAE,0x99,0xE8,0x04,0xD5,0x7C,0x95,0x78,0xAA,0x13,0x34,0x75,0x55,0x1A,0x89,0x4E,0xD4,0xCC,0x56,0xA9,0xB5,0x3A,0x71,0xF3,0x93,0x65,0xD6,0xE8,0xA4,0xC3,0x8F,0xA7,0x6B,0xAB,0x53,0x8D,0x98,0xE2,0xE6,0x8D,0x46,0x35,0x42,0x90,0x65,0xD6,0x69,0xDD,0xF0,0x46,0x5E,0x55,0xBA,0x0C,0x4D,0x89,0x4E,0x45,0xE4,0x30,0x44,0x25,0xD9,0xE2,0xA9,0xFD,0xA8,0xA6,0xA2,0x30,0xDA,0x2C,0xB5,0x9A,0x8B,0xE6,0x70,0xCC,0x36,0xFF,0x4D,0x25,0x15};
|
||||||
|
//const uint8_t spTRY[] PROGMEM = {0x06,0x98,0xA9,0x2D,0x01,0x33,0xB5,0x3B,0xA0,0x87,0x8C,0xE6,0xD7,0x10,0xEE,0xC2,0x72,0x86,0x9B,0xA6,0x16,0x95,0x27,0x9C,0xDE,0x09,0x4A,0xDE,0x72,0xF5,0x86,0x27,0xAE,0xEE,0xCA,0xD5,0x53,0x9E,0xAC,0x99,0xAD,0x54,0x4B,0x79,0xBA,0x66,0xB7,0x33,0xA4,0xF5,0x1A,0xAA,0xDB,0x8A,0xD4,0x55,0x6B,0x2C,0x61,0xC3,0xD2,0x66,0x8D,0xA9,0xE4,0x76,0x37,0x9F,0x54,0xA6,0x1A,0x2C,0xC2,0xB2,0x72,0x1A,0xB3,0xD5,0xA8,0xEA,0x32,0x69,0x2C,0x46,0x62,0xAA,0xCA,0x84,0xB1,0x5A,0xB6,0xC9,0x0E,0xEB,0xC6,0x51,0x58,0x34,0x3A,0xAE,0x1B,0x47,0x66,0x89,0x48,0xBB,0xFF,0x51,0x35,0x19,0x51,0x75,0x15};
|
||||||
|
//const uint8_t spTWELVE[] PROGMEM = {0x06,0x58,0xCA,0xCC,0x00,0x4D,0x57,0x09,0xA0,0xC4,0x88,0xE4,0x85,0x1A,0x66,0xEA,0xAB,0x9A,0x1F,0x6B,0xAB,0x8B,0x6E,0x3A,0x7E,0x71,0xA3,0x6E,0xBC,0xF9,0x84,0xD5,0x8D,0xBA,0xCB,0xCA,0x13,0x35,0xD5,0xEA,0xA9,0x9B,0x4E,0xD2,0xED,0x78,0x18,0xAD,0x3A,0x45,0x0D,0xE5,0xC9,0xB6,0x7A,0x0C,0x25,0xB6,0x25,0xC5,0xED,0x32,0xE4,0xD6,0x16,0x54,0xB7,0xCB,0x9C,0x83,0x57,0x50,0x2D,0x2A,0x6B,0x76,0x9E,0x89,0xBE,0xAA,0x2C,0x29,0x64,0x18,0x59,0xEA,0xB2,0x24,0x9F,0x69,0xE8,0xA9,0xD3,0x12,0x8D,0x75,0xB1,0x75,0x4D,0x4B,0x8C,0x5E,0x46,0xD6,0x3A,0xCD,0xC1,0xB5,0x86,0xF8,0x66,0x04,0xB0,0x16,0x4A,0x80,0xA2,0xCB,0x10,0x50,0x55,0xDB,0xFF,0x51,0x05,0x4D,0x15};
|
||||||
|
//const uint8_t spTYPE[] PROGMEM = {0x0A,0x38,0xB4,0x53,0x01,0xCB,0xA7,0x8F,0xB0,0x9B,0x4C,0x4F,0xB1,0x35,0xBC,0x66,0x32,0xD4,0x59,0xE3,0xF1,0x4A,0xCF,0x72,0xD3,0xCA,0x27,0xAC,0xB9,0x2A,0x5D,0x1B,0x9D,0xAC,0xE5,0x8A,0x72,0x6D,0xB5,0xDA,0x9E,0x52,0xC2,0x7D,0x55,0x1A,0x9B,0x17,0xC9,0xC8,0x56,0x66,0xEA,0x4D,0xC5,0x24,0x6A,0x93,0x49,0x28,0x77,0x17,0x91,0x0D,0x00,0x00,0x80,0x80,0x10,0xD9,0x10,0x90,0x8B,0x19,0x02,0x52,0x11,0xF9,0x55};
|
||||||
|
//const uint8_t spU[] PROGMEM = {0xAE,0x5A,0x40,0x2C,0xB7,0xC5,0x84,0x6C,0x42,0xA1,0xD8,0x0D,0x13,0xD2,0x89,0x05,0x6D,0x37,0x74,0x4A,0xA6,0x50,0xB0,0x9B,0x4A,0x2D,0x9E,0xCA,0x40,0xAF,0x2B,0x8F,0x60,0x38,0x03,0xDB,0x7A,0x78,0xFC,0x26,0x83,0x3D,0x7C,0xF5,0x0E,0x46,0x54,0xF8,0xA8,0xB2,0xBE,0x1A,0x69,0x64,0xA3,0xAA,0xB1,0x32,0x15,0x4E,0x9C,0x8B,0xF9,0x26,0xD7,0x0A,0x77,0x6A,0x96,0x8F,0xDC,0xA0,0xD5,0x99,0x98,0x37,0x31,0x23,0x0B,0x6B,0xA1,0x9E,0x44,0x8F,0x6A,0x94,0xE2,0x2B,0x42,0xED,0xA8,0x41,0xA8,0x4F,0x37,0xAD,0xA3,0x06,0xE1,0xD6,0x5D,0x3D,0xAD,0x1A,0x7C,0x6A,0x11,0xC9,0x36,0xFF,0x09,0x55};
|
||||||
|
//const uint8_t spUH[] PROGMEM = {0x2B,0x68,0x6E,0xD4,0xD4,0x56,0x9D,0xA0,0xB9,0x75,0x13,0x69,0x75,0x82,0xEA,0x2B,0x5C,0x6D,0xD5,0x89,0x5B,0xC8,0x72,0x95,0x45,0x2B,0xAF,0x3E,0x53,0xDD,0x6E,0x8F,0xBA,0xF8,0x4C,0x75,0xBB,0x5D,0xDA,0x5C,0xC3,0xD5,0x2B,0xD6,0xFF,0x05,0x55};
|
||||||
|
//const uint8_t spUP[] PROGMEM = {0x27,0xAA,0x66,0x33,0x5D,0x16,0x9E,0xB0,0xDA,0xCB,0x32,0x9D,0x79,0xA2,0x2A,0x2F,0x23,0xB4,0xE5,0x49,0xBA,0xB8,0xCE,0xE2,0xCE,0xA7,0x6A,0x72,0xBB,0x9A,0xBA,0x94,0x36,0x87,0xCE,0x66,0x59,0x45,0x26,0xA1,0xDC,0x5D,0x44,0x36,0x00,0x00,0x03,0xBC,0x4F,0x13,0x40,0x52,0xA1,0xFF,0x35};
|
||||||
|
//const uint8_t spV[] PROGMEM = {0xA6,0x4E,0xCC,0x25,0x42,0x1A,0xB9,0xBA,0x0A,0x23,0x57,0x6E,0xED,0xCA,0xC2,0x94,0x23,0xA4,0xB5,0x2F,0x52,0xD6,0x98,0x61,0xA6,0x35,0x59,0xE1,0xB2,0x01,0xD6,0xD7,0x78,0x45,0xCB,0x1B,0xC8,0x6C,0xEC,0x9D,0xAD,0x7C,0x45,0x03,0x9A,0x89,0x3D,0xAA,0xED,0x98,0x78,0x26,0x76,0x6B,0x76,0x14,0xC2,0x9D,0x3A,0x69,0x58,0x81,0x51,0xAE,0xEB,0xA4,0x71,0x3A,0x22,0xFF,0x8A,0xE3,0xC6,0xAE,0xC1,0x76,0xCA,0xB1,0x1B,0xBB,0x05,0x9F,0x4D,0x3B,0x6E,0x1C,0x11,0xA4,0xA7,0xA2,0xA8,0x61,0x3A,0xA4,0xCE,0x71,0xFA,0x4D,0x25,0x51,0x35};
|
||||||
|
//const uint8_t spVERY[] PROGMEM = {0xAE,0xAD,0x4A,0xC8,0x4A,0x53,0xE7,0xB6,0x56,0xAB,0xEC,0xBA,0x48,0xD2,0x37,0x9E,0xA2,0xAB,0x22,0x4F,0xFF,0x78,0x8A,0xEE,0x8A,0x33,0x6C,0xD5,0x29,0xAA,0x37,0x6D,0xCF,0xC5,0xA7,0x6C,0x51,0xAC,0x74,0x56,0xB7,0xAA,0x0F,0x49,0xD2,0xCA,0x5A,0xAA,0x3E,0xC4,0x44,0x6A,0xCD,0xA9,0x7A,0x74,0xD2,0xCC,0xD5,0xA7,0xEA,0x2E,0x50,0x27,0x57,0x9F,0x6A,0xB8,0x44,0x99,0x5A,0xBC,0xAA,0xE9,0x0B,0x25,0x73,0xF5,0x68,0x7B,0x14,0x8A,0xA8,0x59,0xA1,0xAB,0x9A,0xB9,0x22,0xA3,0xFC,0x75};
|
||||||
|
//const uint8_t spW[] PROGMEM = {0xA3,0xBF,0x2A,0xC2,0x43,0x64,0xAD,0xA4,0xA8,0x94,0xF4,0x5A,0x7C,0xE2,0xEA,0xC7,0x52,0x6C,0xD1,0x89,0xAA,0x9B,0x4C,0x97,0x4E,0x27,0x2A,0x71,0xB2,0x8C,0x57,0xB5,0x38,0xFB,0x8A,0x14,0x5A,0xA8,0x32,0x6F,0xCA,0x5C,0x28,0xB5,0x2D,0x46,0x51,0xA2,0x85,0x91,0x6E,0x1E,0x75,0x72,0x22,0x13,0xB5,0xB8,0x37,0x65,0xEA,0x96,0xD9,0x3A,0x1B,0x97,0x29,0x2B,0xB6,0x3E,0xAF,0x95,0xE6,0x64,0xC4,0x27,0x6B,0x66,0x98,0xA3,0x95,0x6C,0x8B,0x45,0x61,0x8D,0x26,0x2D,0x4D,0x5F,0xB9,0xD5,0x87,0x56,0x37,0x7B,0xF4,0x15,0x39,0x41,0x75};
|
||||||
|
//const uint8_t spWANT[] PROGMEM = {0xAA,0x24,0xBE,0x7D,0x34,0x6C,0x9B,0x9C,0xE6,0xD1,0xF0,0x68,0x58,0xB2,0x80,0x3F,0xDD,0xD4,0xED,0x88,0x23,0xBD,0x6A,0x53,0xBE,0x27,0xCA,0x7C,0xB3,0x4C,0xF5,0x9C,0x28,0xD9,0x2F,0x57,0xF3,0x7C,0xE2,0x94,0xAE,0x5C,0x2D,0xD5,0x29,0xB2,0xDF,0x18,0xD6,0x64,0xBB,0x2E,0x7D,0x56,0x66,0xCE,0x96,0x3B,0x8E,0x64,0x16,0xCA,0xDD,0x45,0x64,0x03,0x80,0x02,0xAE,0x48,0xD3,0x00,0x02,0x9A,0x6F,0xFC,0x65,0x41,0x75};
|
||||||
|
//const uint8_t spWAS[] PROGMEM = {0x26,0x33,0x36,0xF3,0x90,0x9C,0x98,0xDC,0xB8,0xCC,0x41,0xE6,0x92,0xF2,0x20,0x22,0x2A,0x4D,0x55,0x2B,0x02,0x9F,0xAE,0x54,0x3C,0xAB,0x48,0xBC,0xBB,0x4A,0xF4,0x8E,0xAA,0xA8,0xED,0x48,0xEC,0x33,0xEA,0xA2,0xA6,0x23,0x61,0xCF,0xA8,0x8B,0x9A,0x8A,0xC4,0xDD,0xA3,0xCE,0x66,0xD3,0x9C,0x36,0xCD,0xAA,0x15,0xD9,0x2C,0x87,0xF8,0xEB,0x52,0x34,0x38,0x62,0x62,0x9B,0x7C,0x27,0x80,0x0D,0xC8,0x18,0x70,0x29,0x0B,0x05,0x30,0xF0,0x51,0x25,0x51,0x75};
|
||||||
|
//const uint8_t spWERE[] PROGMEM = {0xAA,0xF0,0x6C,0xA3,0x02,0x7D,0xD9,0xAC,0x44,0x99,0xB7,0x67,0x50,0xAE,0x13,0x26,0xEB,0x5E,0x56,0xB5,0x4E,0xD8,0x7C,0xB8,0xAB,0xB6,0x3A,0x61,0xF5,0xED,0xA9,0xD6,0xF2,0x44,0xD5,0x97,0x85,0xFA,0xAA,0x93,0xD4,0xD8,0xE1,0xAA,0xAD,0x4E,0xDE,0x7C,0x7B,0x8A,0xB5,0x5C,0x55,0x4D,0x91,0x2E,0xB1,0x68,0x75,0xCD,0x97,0xA7,0x6A,0xCB,0x32,0x94,0xE0,0xE1,0x52,0x93,0xD2,0x58,0x62,0xB8,0x69,0x4E,0x4A,0x53,0x8D,0x15,0x66,0x5E,0xEB,0xFF,0x15,0x41,0x09,0x75};
|
||||||
|
//const uint8_t spWHAT[] PROGMEM = {0xAA,0xD4,0x2A,0xB3,0x9D,0x59,0x99,0x42,0xDA,0xCC,0x43,0x72,0x62,0x0A,0xE1,0x32,0x07,0x99,0x4B,0xC9,0x03,0xFB,0xCC,0x10,0xAE,0x2B,0x4B,0x6C,0x32,0x53,0xF4,0x9D,0x2C,0xCB,0x29,0x0F,0xF6,0x7B,0xF2,0xAC,0x32,0x27,0x28,0xCF,0x2A,0x8A,0xEE,0xCC,0xC4,0x3C,0xA3,0x2C,0x26,0xB2,0x9C,0x7A,0xB7,0x32,0x7B,0x69,0xB5,0x74,0x83,0x4A,0x11,0xDC,0x45,0x44,0x36,0x80,0x00,0xAE,0x48,0x93,0x00,0x02,0x8A,0x4F,0xFD,0x09,0x61,0x49,0x09,0x75};
|
||||||
|
//const uint8_t spWHICH[] PROGMEM = {0x6A,0x62,0x7E,0xD2,0x82,0xD5,0xD8,0x3E,0xB5,0xD6,0xAF,0xB9,0xCA,0xAA,0x51,0x27,0xBE,0xE6,0x2A,0xAB,0x4E,0xD9,0xAD,0xA3,0xB5,0xEC,0x3A,0x65,0x0F,0x49,0x92,0xB6,0x6B,0x15,0x3D,0xB3,0xA8,0x55,0x4B,0x54,0x88,0xE0,0x2E,0x22,0xB2,0x41,0x01,0x73,0x8C,0x29,0x60,0xB6,0x0D,0x05,0xEC,0xDA,0xA1,0x80,0xD9,0xB7,0x14,0x30,0xC6,0x04,0x03,0xC6,0x0C,0xC3,0xC0,0xFF,0x0D};
|
||||||
|
//const uint8_t spX[] PROGMEM = {0xAD,0x18,0x21,0x28,0xCA,0x6A,0x9F,0xA0,0x3B,0xA3,0xCA,0xA8,0x7D,0x82,0x61,0x83,0xA2,0x63,0xD1,0x89,0x86,0x0F,0xCA,0xF2,0xC9,0x27,0x1E,0xA5,0xC8,0xD3,0x96,0x8C,0xB4,0x55,0xD1,0xB4,0x6A,0x42,0x0A,0xA1,0xDC,0x5D,0x44,0x36,0x00,0x00,0x18,0x20,0x5D,0x0B,0x07,0x1C,0xD5,0x69,0x80,0xAB,0x2A,0x14,0x70,0x65,0xA6,0x02,0x8E,0x48,0x67,0xC0,0x57,0x1A,0x0C,0xF8,0x41,0x8D,0x01,0xDF,0x89,0x30,0xE0,0x1B,0x66,0x02,0xFC,0xC8,0x46,0x80,0x27,0x38,0x10,0x50,0x69,0xC6,0xFF,0x4D};
|
||||||
|
//const uint8_t spY[] PROGMEM = {0xA2,0x64,0xA6,0x72,0x4C,0x1C,0xA9,0x42,0xB8,0xE2,0xB6,0x48,0xE4,0x32,0xE9,0x5B,0x3D,0x75,0x61,0x4B,0xAD,0xB9,0xB4,0x90,0x5C,0x23,0x4A,0xE6,0x52,0x43,0x73,0xAD,0xA8,0xE8,0xAD,0x48,0xCA,0x75,0xA2,0xAA,0xAF,0x2D,0xC4,0xD3,0x89,0x9B,0xBE,0x0E,0x57,0x4F,0x27,0xAB,0x66,0xDB,0x5D,0x32,0x9E,0xBA,0x9A,0xAD,0x0C,0xC9,0x78,0xDA,0x66,0xB6,0xA2,0xB8,0xD3,0xEA,0x9B,0xD9,0x8A,0xE2,0xCD,0x6B,0x6C,0x66,0xD3,0x4A,0x56,0x8D,0xA9,0xD9,0x71,0x4F,0x99,0x39,0xC6,0x6E,0x43,0x22,0x75,0x71,0x1B,0xBB,0x36,0xAE,0xF1,0x59,0x65,0x6C,0x5A,0xA5,0x37,0x2B,0xA7,0xB1,0x5B,0xE1,0x9C,0xAE,0xF5,0x25,0x41,0x51,0x4D};
|
||||||
|
//const uint8_t spYEAR[] PROGMEM = {0x26,0xEF,0x40,0xB5,0xB6,0x69,0x9B,0x6C,0x01,0x91,0xB8,0xA1,0xEC,0xD2,0x05,0x95,0xF4,0x96,0x76,0x48,0x36,0x61,0xD6,0x59,0xDB,0x25,0x3A,0x5C,0x89,0xE7,0x22,0x8F,0x60,0x49,0x07,0xB9,0xAD,0x3D,0xFD,0x15,0x2C,0x97,0x40,0x53,0xAB,0x4E,0xB0,0x5C,0xA2,0x74,0x2E,0x3A,0xD1,0xD4,0x41,0xB6,0xDE,0xE8,0x64,0xD3,0x06,0xC5,0xD8,0xAA,0x53,0x0C,0x9F,0x9A,0x21,0x8B,0x57,0xD7,0x7D,0x79,0xAA,0x3C,0x19,0x43,0x0B,0x1D,0x29,0x7A,0x79,0x4C,0x35,0x77,0x24,0xC7,0x95,0x36,0xD7,0x34,0x91,0x6C,0x97,0xCB,0x5C,0xD3,0x44,0xB1,0x5D,0x2E,0x73,0x8D,0xEB,0x29,0x36,0x29,0xCD,0xA5,0x76,0x06,0xE7,0xE8,0xFF,0x65,0x51,0x4D};
|
||||||
|
//const uint8_t spYES[] PROGMEM = {0x21,0x5B,0x2E,0x81,0xA6,0x56,0xF5,0x6C,0xA4,0xCB,0x25,0x4A,0xE7,0xA2,0x93,0x8E,0xE0,0x1A,0x61,0xAB,0x6F,0x72,0xB2,0xE1,0x4B,0x2C,0x64,0xF5,0xAD,0x56,0x37,0x43,0x89,0xA6,0xAC,0xC9,0x23,0x02,0xBE,0x12,0xE3,0x00,0x03,0x3E,0x55,0x23,0xC0,0x37,0x6C,0x0C,0xF8,0x86,0x8C,0x01,0x5F,0xB1,0x11,0xE0,0x0B,0xC9,0xFF,0x25,0x55,0x79,0x4D};
|
||||||
|
//const uint8_t spYOUR[] PROGMEM = {0xA1,0x69,0x86,0xD1,0xA7,0x2B,0xE5,0x3A,0x55,0x2D,0x08,0xDA,0xC4,0xCA,0x56,0x16,0xA9,0x5C,0xA3,0x3D,0x4F,0x99,0x44,0x59,0x85,0xF4,0x5A,0x65,0x74,0xE3,0xA9,0xDC,0xFB,0x96,0xA7,0x4A,0x7A,0xA2,0x8C,0x72,0x9F,0x2A,0xDA,0xC9,0x54,0xCE,0xBD,0xEA,0x10,0x26,0x42,0xB4,0xF7,0xAA,0xA3,0xDF,0x08,0xD1,0xDE,0xA3,0x8E,0x6E,0x23,0x44,0x73,0x8F,0x3A,0x9A,0x8D,0x54,0xC9,0x35,0xEA,0xE4,0xBA,0xD2,0xB0,0xF7,0x68,0x92,0xDF,0x74,0x91,0x9C,0xA5,0x89,0xBD,0xD3,0x48,0x3B,0xF8,0xF6,0xFF,0x2D};
|
||||||
|
//const uint8_t spZ[] PROGMEM = {0x08,0x38,0x20,0x4D,0x02,0x12,0x08,0xED,0x05,0x66,0xEE,0x19,0xA7,0x34,0x1B,0xA8,0x86,0x55,0xEA,0x91,0x6C,0x90,0x9C,0x9E,0xB1,0x4E,0xB4,0x71,0x51,0x66,0xCE,0x3A,0xD1,0xD0,0x41,0x65,0x5D,0xFB,0x24,0x43,0x27,0xB5,0x77,0xE3,0x53,0x8C,0x10,0x94,0x96,0x8D,0x4F,0x35,0x5C,0x50,0x46,0xAD,0x3E,0x4D,0xB7,0x41,0x51,0xB9,0xE4,0xF4,0xDD,0x19,0x67,0xD6,0x9C,0x35,0x74,0x6D,0x1C,0x59,0x8B,0xCB,0x38,0xAC,0xB2,0x69,0xB4,0x36,0x43,0xD1,0xCC,0xA6,0x53,0x5A,0x0C,0x91,0x8B,0x56,0xB4,0x25,0x33,0x74,0xC5,0xCE,0xAE,0x4E,0xFE};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.speaker.say(spTHIS);
|
||||||
|
CircuitPlayground.speaker.say(spIS);
|
||||||
|
CircuitPlayground.speaker.say(spTHE);
|
||||||
|
CircuitPlayground.speaker.say(spACORN);
|
||||||
|
CircuitPlayground.speaker.say(spCOMPUTER);
|
||||||
|
CircuitPlayground.speaker.say(sp_Z);
|
||||||
|
CircuitPlayground.speaker.say(spFILE);
|
||||||
|
CircuitPlayground.speaker.say(spFROM);
|
||||||
|
CircuitPlayground.speaker.say(spNINE_);
|
||||||
|
CircuitPlayground.speaker.say(sp_TEEN);
|
||||||
|
CircuitPlayground.speaker.say(spEIGH_);
|
||||||
|
CircuitPlayground.speaker.say(spT);
|
||||||
|
CircuitPlayground.speaker.say(spTHREE);
|
||||||
|
CircuitPlayground.speaker.say(spPAUSE1);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this
|
||||||
|
// will turn off the pin 13 LED (it's connected to a microcontroller
|
||||||
|
// pin that's also related to the speaker), but there's a small
|
||||||
|
// audible click when it turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
}
|
@ -0,0 +1,73 @@
|
|||||||
|
// Talkie library
|
||||||
|
// Copyright 2011 Peter Knight
|
||||||
|
// This code is released under GPLv2 license.
|
||||||
|
//
|
||||||
|
// A female voice with an American accent
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
const uint8_t spTHE[] PROGMEM = {0x08,0xE8,0x3E,0x55,0x01,0xC3,0x86,0x27,0xAF,0x72,0x0D,0x4D,0x97,0xD5,0xBC,0x64,0x3C,0xF2,0x5C,0x51,0xF1,0x93,0x36,0x8F,0x4F,0x59,0x2A,0x42,0x7A,0x32,0xC3,0x64,0xFF,0x3F};
|
||||||
|
const uint8_t spTIME[] PROGMEM = {0x0E,0x28,0xAC,0x2D,0x01,0x5D,0xB6,0x0D,0x33,0xF3,0x54,0xB3,0x60,0xBA,0x8C,0x54,0x5C,0xCD,0x2D,0xD4,0x32,0x73,0x0F,0x8E,0x34,0x33,0xCB,0x4A,0x25,0xD4,0x25,0x83,0x2C,0x2B,0xD5,0x50,0x97,0x08,0x32,0xEC,0xD4,0xDC,0x4C,0x33,0xC8,0x70,0x73,0x0F,0x33,0xCD,0x20,0xC3,0xCB,0x43,0xDD,0x3C,0xCD,0x8C,0x20,0x77,0x89,0xF4,0x94,0xB2,0xE2,0xE2,0x35,0x22,0x5D,0xD6,0x4A,0x8A,0x96,0xCC,0x36,0x25,0x2D,0xC9,0x9A,0x7B,0xC2,0x18,0x87,0x24,0x4B,0x1C,0xC9,0x50,0x19,0x92,0x2C,0x71,0x34,0x4B,0x45,0x8A,0x8B,0xC4,0x96,0xB6,0x5A,0x29,0x2A,0x92,0x5A,0xCA,0x53,0x96,0x20,0x05,0x09,0xF5,0x92,0x5D,0xBC,0xE8,0x58,0x4A,0xDD,0xAE,0x73,0xBD,0x65,0x4B,0x8D,0x78,0xCA,0x2B,0x4E,0xD8,0xD9,0xED,0x22,0x20,0x06,0x75,0x00,0x00,0x80,0xFF,0x07};
|
||||||
|
const uint8_t spIS[] PROGMEM = {0x21,0x18,0x96,0x38,0xB7,0x14,0x8D,0x60,0x3A,0xA6,0xE8,0x51,0xB4,0xDC,0x2E,0x48,0x7B,0x5A,0xF1,0x70,0x1B,0xA3,0xEC,0x09,0xC6,0xCB,0xEB,0x92,0x3D,0xA7,0x69,0x1F,0xAF,0x71,0x89,0x9C,0xA2,0xB3,0xFC,0xCA,0x35,0x72,0x9A,0xD1,0xF0,0xAB,0x12,0xB3,0x2B,0xC6,0xCD,0x4F,0xCC,0x32,0x26,0x19,0x07,0xDF,0x0B,0x8F,0xB8,0xA4,0xED,0x7C,0xCF,0x23,0x62,0x8B,0x8E,0xF1,0x23,0x0A,0x8B,0x6E,0xCB,0xCE,0xEF,0x54,0x44,0x3C,0xDC,0x08,0x60,0x0B,0x37,0x01,0x1C,0x53,0x26,0x80,0x15,0x4E,0x14,0xB0,0x54,0x2B,0x02,0xA4,0x69,0xFF,0x7F};
|
||||||
|
const uint8_t spA_M_[] PROGMEM = {0xCD,0xEF,0x86,0xAB,0x57,0x6D,0x0F,0xAF,0x71,0xAD,0x49,0x55,0x3C,0xFC,0x2E,0xC5,0xB7,0x5C,0xF1,0xF2,0x87,0x66,0xDD,0x4E,0xC5,0xC3,0xEF,0x92,0xE2,0x3A,0x65,0xB7,0xA0,0x09,0xAA,0x1B,0x97,0x54,0x82,0x2E,0x28,0x77,0x5C,0x52,0x09,0x1A,0xA3,0xB8,0x76,0x49,0x25,0x68,0x8C,0x73,0xDB,0x24,0x95,0xA0,0x32,0xA9,0x6B,0xA7,0xD9,0x82,0x26,0xA9,0x76,0x42,0xD6,0x08,0xBA,0xE1,0xE8,0x0E,0x5A,0x2B,0xEA,0x9E,0x3D,0x27,0x18,0xAD,0xA8,0x07,0xF1,0x98,0x90,0x35,0xA2,0x96,0x44,0xA3,0x5D,0x66,0x8B,0x6B,0x12,0xCD,0x32,0x85,0x25,0xC9,0x81,0x2D,0xC3,0x64,0x85,0x34,0x58,0x89,0x94,0x52,0x1C,0x52,0x2F,0x35,0xDA,0xC7,0x51,0x48,0x23,0x97,0xCC,0x2C,0x97,0x2E,0xF3,0x5C,0xF3,0xA2,0x14,0xBA,0x2C,0x48,0xCE,0xCA,0x76,0xE8,0x32,0x2F,0x34,0xB2,0xDB,0x85,0xC9,0x83,0x90,0xA8,0x2C,0x57,0x26,0x8F,0x9C,0xBD,0xA2,0x53,0xD9,0xC2,0x54,0x59,0x28,0x99,0x4B,0x2C,0x5D,0xFF,0x3F};
|
||||||
|
//const uint8_t spP_M_[] PROGMEM = {0x0E,0x98,0x41,0x54,0x00,0x43,0xA0,0x05,0xAB,0x42,0x8E,0x1D,0xA3,0x15,0xEC,0x4E,0x58,0xF7,0x92,0x66,0x70,0x1B,0x66,0xDB,0x73,0x99,0xC1,0xEB,0x98,0xED,0xD6,0x25,0x25,0x6F,0x70,0x92,0xDD,0x64,0xD8,0xFC,0x61,0xD0,0x66,0x83,0xD6,0x0A,0x86,0x23,0xAB,0x69,0xDA,0x2B,0x18,0x9E,0x3D,0x37,0x69,0x9D,0xA8,0x07,0x71,0x9F,0xA0,0xBD,0xA2,0x16,0xD5,0x7C,0x54,0xF6,0x88,0x6B,0x54,0x8B,0x34,0x49,0x2D,0x29,0x49,0x3C,0x34,0x64,0xA5,0x24,0x1B,0x36,0xD7,0x72,0x13,0x92,0xA4,0xC4,0x2D,0xC3,0xB3,0x4B,0xA3,0x62,0x0F,0x2B,0x37,0x6E,0x8B,0x5A,0xD4,0x3D,0xDD,0x9A,0x2D,0x50,0x93,0xF6,0x4C,0xAA,0xB6,0xC4,0x85,0x3B,0xB2,0xB1,0xD8,0x93,0x20,0x4D,0x8F,0x24,0xFF,0x0F};
|
||||||
|
//const uint8_t spOH[] PROGMEM = {0xC6,0xC9,0x71,0x5A,0xA2,0x92,0x14,0x2F,0x6E,0x97,0x9C,0x46,0x9D,0xDC,0xB0,0x4D,0x62,0x1B,0x55,0x70,0xDD,0x55,0xBE,0x0E,0x36,0xC1,0x33,0x37,0xA9,0xA7,0x51,0x1B,0xCF,0x3C,0xA5,0x9E,0x44,0xAC,0x3C,0x7D,0x98,0x7B,0x52,0x96,0x72,0x65,0x4B,0xF6,0x1A,0xD9,0xCA,0xF5,0x91,0x2D,0xA2,0x2A,0x4B,0xF7,0xFF,0x01};
|
||||||
|
//const uint8_t spOCLOCK[] PROGMEM = {0x21,0x4E,0x3D,0xB8,0x2B,0x19,0xBB,0x24,0x0E,0xE5,0xEC,0x60,0xE4,0xF2,0x90,0x13,0xD4,0x2A,0x11,0x80,0x00,0x42,0x69,0x26,0x40,0xD0,0x2B,0x04,0x68,0xE0,0x4D,0x00,0x3A,0x35,0x35,0x33,0xB6,0x51,0xD9,0x64,0x34,0x82,0xB4,0x9A,0x63,0x92,0x55,0x89,0x52,0x5B,0xCA,0x2E,0x34,0x25,0x4E,0x63,0x28,0x3A,0x50,0x95,0x26,0x8D,0xE6,0xAA,0x64,0x58,0xEA,0x92,0xCE,0xC2,0x46,0x15,0x9B,0x86,0xCD,0x2A,0x2E,0x37,0x00,0x00,0x00,0x0C,0xC8,0xDD,0x05,0x01,0xB9,0x33,0x21,0xA0,0x74,0xD7,0xFF,0x07};
|
||||||
|
//const uint8_t spONE[] PROGMEM = {0xCC,0x67,0x75,0x42,0x59,0x5D,0x3A,0x4F,0x9D,0x36,0x63,0xB7,0x59,0xDC,0x30,0x5B,0x5C,0x23,0x61,0xF3,0xE2,0x1C,0xF1,0xF0,0x98,0xC3,0x4B,0x7D,0x39,0xCA,0x1D,0x2C,0x2F,0xB7,0x15,0xEF,0x70,0x79,0xBC,0xD2,0x46,0x7C,0x52,0xE5,0xF1,0x4A,0x6A,0xB3,0x71,0x47,0xC3,0x2D,0x39,0x34,0x4B,0x23,0x35,0xB7,0x7A,0x55,0x33,0x8F,0x59,0xDC,0xA2,0x44,0xB5,0xBC,0x66,0x72,0x8B,0x64,0xF5,0xF6,0x98,0xC1,0x4D,0x42,0xD4,0x27,0x62,0x38,0x2F,0x4A,0xB6,0x9C,0x88,0x68,0xBC,0xA6,0x95,0xF8,0x5C,0xA1,0x09,0x86,0x77,0x91,0x11,0x5B,0xFF,0x0F};
|
||||||
|
//const uint8_t spTWO[] PROGMEM = {0x0E,0x38,0x6E,0x25,0x00,0xA3,0x0D,0x3A,0xA0,0x37,0xC5,0xA0,0x05,0x9E,0x56,0x35,0x86,0xAA,0x5E,0x8C,0xA4,0x82,0xB2,0xD7,0x74,0x31,0x22,0x69,0xAD,0x1C,0xD3,0xC1,0xD0,0xFA,0x28,0x2B,0x2D,0x47,0xC3,0x1B,0xC2,0xC4,0xAE,0xC6,0xCD,0x9C,0x48,0x53,0x9A,0xFF,0x0F};
|
||||||
|
//const uint8_t spTHREE[] PROGMEM = {0x02,0xD8,0x2E,0x9C,0x01,0xDB,0xA6,0x33,0x60,0xFB,0x30,0x01,0xEC,0x20,0x12,0x8C,0xE4,0xD8,0xCA,0x32,0x96,0x73,0x63,0x41,0x39,0x89,0x98,0xC1,0x4D,0x0D,0xED,0xB0,0x2A,0x05,0x37,0x0F,0xB4,0xA5,0xAE,0x5C,0xDC,0x36,0xD0,0x83,0x2F,0x4A,0x71,0x7B,0x03,0xF7,0x38,0x59,0xCD,0xED,0x1E,0xB4,0x6B,0x14,0x35,0xB7,0x6B,0x94,0x99,0x91,0xD5,0xDC,0x26,0x48,0x77,0x4B,0x66,0x71,0x1B,0x21,0xDB,0x2D,0x8A,0xC9,0x6D,0x88,0xFC,0x26,0x28,0x3A,0xB7,0x21,0xF4,0x1F,0xA3,0x65,0xBC,0x02,0x38,0xBB,0x3D,0x8E,0xF0,0x2B,0xE2,0x08,0xB7,0x34,0xFF,0x0F};
|
||||||
|
//const uint8_t spFOUR[] PROGMEM = {0x0C,0x18,0xB6,0x9A,0x01,0xC3,0x75,0x09,0x60,0xD8,0x0E,0x09,0x30,0xA0,0x9B,0xB6,0xA0,0xBB,0xB0,0xAA,0x16,0x4E,0x82,0xEB,0xEA,0xA9,0xFA,0x59,0x49,0x9E,0x59,0x23,0x9A,0x27,0x3B,0x78,0x66,0xAE,0x4A,0x9C,0x9C,0xE0,0x99,0xD3,0x2A,0xBD,0x72,0x92,0xEF,0xE6,0x88,0xE4,0x45,0x4D,0x7E,0x98,0x2D,0x62,0x67,0x37,0xF9,0xA1,0x37,0xA7,0x6C,0x94,0xE4,0xC7,0x1E,0xDC,0x3C,0xA5,0x83,0x1F,0x8B,0xEB,0x52,0x0E,0x0E,0x7E,0x2E,0x4E,0xC7,0x31,0xD2,0x79,0xA5,0x3A,0x0D,0xD9,0xC4,0xFF,0x07};
|
||||||
|
//const uint8_t spFIVE[] PROGMEM = {0x02,0xE8,0x3E,0x8C,0x01,0xDD,0x65,0x08,0x60,0x98,0x4C,0x06,0x34,0x93,0xCE,0x80,0xE6,0xDA,0x9A,0x14,0x6B,0xAA,0x47,0xD1,0x5E,0x56,0xAA,0x6D,0x56,0xCD,0x78,0xD9,0xA9,0x1C,0x67,0x05,0x83,0xE1,0xA4,0xBA,0x38,0xEE,0x16,0x86,0x9B,0xFA,0x60,0x87,0x5B,0x18,0x6E,0xEE,0x8B,0x1D,0x6E,0x61,0xB9,0x69,0x36,0x65,0xBA,0x8D,0xE5,0xE5,0x3E,0x1C,0xE9,0x0E,0x96,0x9B,0x5B,0xAB,0x95,0x2B,0x58,0x6E,0xCE,0xE5,0x3A,0x6A,0xF3,0xB8,0x35,0x84,0x7B,0x05,0xA3,0xE3,0x36,0xEF,0x92,0x19,0xB4,0x86,0xDB,0xB4,0x69,0xB4,0xD1,0x2A,0x4E,0x65,0x9A,0x99,0xCE,0x28,0xD9,0x85,0x71,0x4C,0x18,0x6D,0x67,0x47,0xC6,0x5E,0x53,0x4A,0x9C,0xB5,0xE2,0x85,0x45,0x26,0xFE,0x7F};
|
||||||
|
const uint8_t spSIX[] PROGMEM = {0x0E,0xD8,0xAE,0xDD,0x03,0x0E,0x38,0xA6,0xD2,0x01,0xD3,0xB4,0x2C,0xAD,0x6A,0x35,0x9D,0xB1,0x7D,0xDC,0xEE,0xC4,0x65,0xD7,0xF1,0x72,0x47,0x24,0xB3,0x19,0xD9,0xD9,0x05,0x70,0x40,0x49,0xEA,0x02,0x98,0xBE,0x42,0x01,0xDF,0xA4,0x69,0x40,0x00,0xDF,0x95,0xFC,0x3F};
|
||||||
|
//const uint8_t spSEVEN[] PROGMEM = {0x02,0xB8,0x3A,0x8C,0x01,0xDF,0xA4,0x73,0x40,0x01,0x47,0xB9,0x2F,0x33,0x3B,0x73,0x5F,0x53,0x7C,0xEC,0x9A,0xC5,0x63,0xD5,0xD1,0x75,0xAE,0x5B,0xFC,0x64,0x5C,0x35,0x87,0x91,0xF1,0x83,0x36,0xB5,0x68,0x55,0xC5,0x6F,0xDA,0x45,0x2D,0x1C,0x2D,0xB7,0x38,0x37,0x9F,0x60,0x3C,0xBC,0x9A,0x85,0xA3,0x25,0x66,0xF7,0x8A,0x57,0x1C,0xA9,0x67,0x56,0xCA,0x5E,0xF0,0xB2,0x16,0xB2,0xF1,0x89,0xCE,0x8B,0x92,0x25,0xC7,0x2B,0x33,0xCF,0x48,0xB1,0x99,0xB4,0xF3,0xFF};
|
||||||
|
//const uint8_t spEIGHT[] PROGMEM = {0xC3,0x6C,0x86,0xB3,0x27,0x6D,0x0F,0xA7,0x48,0x99,0x4E,0x55,0x3C,0xBC,0x22,0x65,0x36,0x4D,0xD1,0xF0,0x32,0xD3,0xBE,0x34,0xDA,0xC3,0xEB,0x82,0xE2,0xDA,0x65,0x35,0xAF,0x31,0xF2,0x6B,0x97,0x95,0xBC,0x86,0xD8,0x6F,0x82,0xA6,0x73,0x0B,0xC6,0x9E,0x72,0x99,0xCC,0xCB,0x02,0xAD,0x3C,0x9A,0x10,0x60,0xAB,0x62,0x05,0x2C,0x37,0x84,0x00,0xA9,0x73,0x00,0x00,0xFE,0x1F};
|
||||||
|
//const uint8_t spNINE[] PROGMEM = {0xCC,0xA1,0x26,0xBB,0x83,0x93,0x18,0xCF,0x4A,0xAD,0x2E,0x31,0xED,0x3C,0xA7,0x24,0x26,0xC3,0x54,0xF1,0x92,0x64,0x8B,0x8A,0x98,0xCB,0x2B,0x2E,0x34,0x53,0x2D,0x0E,0x2F,0x57,0xB3,0x0C,0x0D,0x3C,0xBC,0x3C,0x4C,0x4B,0xCA,0xF4,0xF0,0x72,0x0F,0x6E,0x49,0x53,0xCD,0xCB,0x53,0x2D,0x35,0x4D,0x0F,0x2F,0x0F,0xD7,0x0C,0x0D,0x3D,0xBC,0xDC,0x4D,0xD3,0xDD,0xC2,0xF0,0x72,0x52,0x4F,0x57,0x9B,0xC3,0xAB,0x89,0xBD,0x42,0x2D,0x0F,0xAF,0x5A,0xD1,0x71,0x91,0x55,0xBC,0x2C,0xC5,0x3B,0xD8,0x65,0xF2,0x82,0x94,0x18,0x4E,0x3B,0xC1,0x73,0x42,0x32,0x33,0x15,0x45,0x4F,0x79,0x52,0x6A,0x55,0xA6,0xA3,0xFF,0x07};
|
||||||
|
//const uint8_t spTEN[] PROGMEM = {0x0E,0xD8,0xB1,0xDD,0x01,0x3D,0xA8,0x24,0x7B,0x04,0x27,0x76,0x77,0xDC,0xEC,0xC2,0xC5,0x23,0x84,0xCD,0x72,0x9A,0x51,0xF7,0x62,0x45,0xC7,0xEB,0x4E,0x35,0x4A,0x14,0x2D,0xBF,0x45,0xB6,0x0A,0x75,0xB8,0xFC,0x16,0xD9,0x2A,0xD9,0xD6,0x0A,0x5A,0x10,0xCD,0xA2,0x48,0x23,0xA8,0x81,0x35,0x4B,0x2C,0xA7,0x20,0x69,0x0A,0xAF,0xB6,0x15,0x82,0xA4,0x29,0x3C,0xC7,0x52,0x08,0xA2,0x22,0xCF,0x68,0x4B,0x2E,0xF0,0x8A,0xBD,0xA3,0x2C,0xAB,0x40,0x1B,0xCE,0xAA,0xB2,0x6C,0x82,0x40,0x4D,0x7D,0xC2,0x89,0x88,0x8A,0x61,0xCC,0x74,0xD5,0xFF,0x0F};
|
||||||
|
const uint8_t spELEVEN[] PROGMEM = {0xC3,0xCD,0x76,0x5C,0xAE,0x14,0x0F,0x37,0x9B,0x71,0xDE,0x92,0x55,0xBC,0x2C,0x27,0x70,0xD3,0x76,0xF0,0x83,0x5E,0xA3,0x5E,0x5A,0xC1,0xF7,0x61,0x58,0xA7,0x19,0x35,0x3F,0x99,0x31,0xDE,0x52,0x74,0xFC,0xA2,0x26,0x64,0x4B,0xD1,0xF1,0xAB,0xAE,0xD0,0x2D,0xC5,0xC7,0x2F,0x36,0xDD,0x27,0x15,0x0F,0x3F,0xD9,0x08,0x9F,0x62,0xE4,0xC2,0x2C,0xD4,0xD8,0xD3,0x89,0x0B,0x1B,0x57,0x11,0x0B,0x3B,0xC5,0xCF,0xD6,0xCC,0xC6,0x64,0x35,0xAF,0x18,0x73,0x1F,0xA1,0x5D,0xBC,0x62,0x45,0xB3,0x45,0x51,0xF0,0xA2,0x62,0xAB,0x4A,0x5B,0xC9,0x4B,0x8A,0x2D,0xB3,0x6C,0x06,0x2F,0x29,0xB2,0xAC,0x8A,0x18,0xBC,0x28,0xD9,0xAA,0xD2,0x92,0xF1,0xBC,0xE0,0x98,0x8C,0x48,0xCC,0x17,0x52,0xA3,0x27,0x6D,0x93,0xD0,0x4B,0x8E,0x0E,0x77,0x02,0x00,0xFF,0x0F};
|
||||||
|
//const uint8_t spTWELVE[] PROGMEM = {0x06,0x28,0x46,0xD3,0x01,0x25,0x06,0x13,0x20,0xBA,0x70,0x70,0xB6,0x79,0xCA,0x36,0xAE,0x28,0x38,0xE1,0x29,0xC5,0x35,0xA3,0xE6,0xC4,0x16,0x6A,0x53,0x8C,0x97,0x9B,0x72,0x86,0x4F,0x28,0x1A,0x6E,0x0A,0x59,0x36,0xAE,0x68,0xF8,0x29,0x67,0xFA,0x06,0xA3,0x16,0xC4,0x96,0xE6,0x53,0xAC,0x5A,0x9C,0x56,0x72,0x77,0x31,0x4E,0x49,0x5C,0x8D,0x5B,0x29,0x3B,0x24,0x61,0x1E,0x6C,0x9B,0x6C,0x97,0xF8,0xA7,0x34,0x19,0x92,0x4C,0x62,0x9E,0x72,0x65,0x58,0x12,0xB1,0x7E,0x09,0xD5,0x2E,0x53,0xC5,0xBA,0x36,0x6B,0xB9,0x2D,0x17,0x05,0xEE,0x9A,0x6E,0x8E,0x05,0x50,0x6C,0x19,0x07,0x18,0x50,0xBD,0x3B,0x01,0x92,0x08,0x41,0x40,0x10,0xA6,0xFF,0x0F};
|
||||||
|
//const uint8_t spTHIRTEEN[] PROGMEM = {0x08,0xE8,0x2C,0x15,0x01,0x43,0x07,0x13,0xE0,0x98,0xB4,0xA6,0x35,0xA9,0x1E,0xDE,0x56,0x8E,0x53,0x9C,0x7A,0xE7,0xCA,0x5E,0x76,0x8D,0x94,0xE5,0x2B,0xAB,0xD9,0xB5,0x62,0xA4,0x9C,0xE4,0xE6,0xB4,0x41,0x1E,0x7C,0xB6,0x93,0xD7,0x16,0x99,0x5A,0xCD,0x61,0x76,0x55,0xC2,0x91,0x61,0x1B,0xC0,0x01,0x5D,0x85,0x05,0xE0,0x68,0x51,0x07,0x1C,0xA9,0x64,0x80,0x1D,0x4C,0x9C,0x95,0x88,0xD4,0x04,0x3B,0x4D,0x4E,0x21,0x5C,0x93,0xA8,0x26,0xB9,0x05,0x4B,0x6E,0xA0,0xE2,0xE4,0x57,0xC2,0xB9,0xC1,0xB2,0x93,0x5F,0x09,0xD7,0x24,0xCB,0x4E,0x41,0x25,0x54,0x1D,0x62,0x3B,0x05,0x8D,0x52,0x57,0xAA,0xAD,0x10,0x24,0x26,0xE3,0xE1,0x36,0x5D,0x10,0x85,0xB4,0x97,0x85,0x72,0x41,0x14,0x52,0x5E,0x1A,0xCA,0xF9,0x91,0x6B,0x7A,0x5B,0xC4,0xE0,0x17,0x2D,0x54,0x1D,0x92,0x8C,0x1F,0x25,0x4B,0x8F,0xB2,0x16,0x41,0xA1,0x4A,0x3E,0xE6,0xFA,0xFF,0x01};
|
||||||
|
//const uint8_t spFOURTEEN[] PROGMEM = {0x0C,0x58,0xAE,0x5C,0x01,0xD9,0x87,0x07,0x51,0xB7,0x25,0xB3,0x8A,0x15,0x2C,0xF7,0x1C,0x35,0x87,0x4D,0xB2,0xDD,0x53,0xCE,0x28,0x2B,0xC9,0x0E,0x97,0x2D,0xBD,0x2A,0x17,0x27,0x76,0x8E,0xD2,0x9A,0x6C,0x80,0x94,0x71,0x00,0x00,0x02,0xB0,0x58,0x58,0x00,0x9E,0x0B,0x0A,0xC0,0xB2,0xCE,0xC1,0xC8,0x98,0x7A,0x52,0x95,0x24,0x2B,0x11,0xED,0x36,0xD4,0x92,0xDC,0x4C,0xB5,0xC7,0xC8,0x53,0xF1,0x2A,0xE5,0x1A,0x17,0x55,0xC5,0xAF,0x94,0xBB,0xCD,0x1C,0x26,0xBF,0x52,0x9A,0x72,0x53,0x98,0xFC,0xC2,0x68,0xD2,0x4D,0x61,0xF0,0xA3,0x90,0xB6,0xD6,0x50,0xC1,0x8F,0x42,0xDA,0x4A,0x43,0x39,0x3F,0x48,0x2D,0x6B,0x33,0xF9,0xFF};
|
||||||
|
//const uint8_t spFIFTEEN[] PROGMEM = {0x08,0xE8,0x2A,0x0D,0x01,0xDD,0xBA,0x31,0x60,0x6A,0xF7,0xA0,0xAE,0x54,0xAA,0x5A,0x76,0x97,0xD9,0x34,0x69,0xEF,0x32,0x1E,0x66,0xE1,0xE2,0xB3,0x43,0xA9,0x18,0x55,0x92,0x4E,0x37,0x2D,0x67,0x6F,0xDF,0xA2,0x5A,0xB6,0x04,0x30,0x55,0xA8,0x00,0x86,0x09,0xE7,0x00,0x01,0x16,0x17,0x05,0x70,0x40,0x57,0xE5,0x01,0xF8,0x21,0x34,0x00,0xD3,0x19,0x33,0x80,0x89,0x9A,0x62,0x34,0x4C,0xD5,0x49,0xAE,0x8B,0x53,0x09,0xF7,0x26,0xD9,0x6A,0x7E,0x23,0x5C,0x13,0x12,0xB3,0x04,0x9D,0x50,0x4F,0xB1,0xAD,0x14,0x15,0xC2,0xD3,0xA1,0xB6,0x42,0x94,0xA8,0x8C,0x87,0xDB,0x74,0xB1,0x70,0x59,0xE1,0x2E,0xC9,0xC5,0x81,0x5B,0x55,0xA4,0x4C,0x17,0x47,0xC1,0x6D,0xE3,0x81,0x53,0x9C,0x84,0x6A,0x46,0xD9,0x4C,0x51,0x31,0x42,0xD9,0x66,0xC9,0x44,0x85,0x29,0x6A,0x9B,0xAD,0xFF,0x07};
|
||||||
|
//const uint8_t spSIXTEEN[] PROGMEM = {0x0A,0x58,0x5A,0x5D,0x00,0x93,0x97,0x0B,0x60,0xA9,0x48,0x05,0x0C,0x15,0xAE,0x80,0xAD,0x3D,0x14,0x30,0x7D,0xD9,0x50,0x92,0x92,0xAC,0x0D,0xC5,0xCD,0x2A,0x82,0xAA,0x3B,0x98,0x04,0xB3,0x4A,0xC8,0x9A,0x90,0x05,0x09,0x68,0x51,0xD4,0x01,0x23,0x9F,0x1A,0x60,0xA9,0x12,0x03,0xDC,0x50,0x81,0x80,0x22,0xDC,0x20,0x00,0xCB,0x06,0x3A,0x60,0x16,0xE3,0x64,0x64,0x42,0xDD,0xCD,0x6A,0x8A,0x5D,0x28,0x75,0x07,0xA9,0x2A,0x5E,0x65,0x34,0xED,0x64,0xBB,0xF8,0x85,0xF2,0x94,0x8B,0xAD,0xE4,0x37,0x4A,0x5B,0x21,0xB6,0x52,0x50,0x19,0xAD,0xA7,0xD8,0x4A,0x41,0x14,0xDA,0x5E,0x12,0x3A,0x04,0x91,0x4B,0x7B,0x69,0xA8,0x10,0x24,0x2E,0xE5,0xA3,0x81,0x52,0x90,0x94,0x5A,0x55,0x98,0x32,0x41,0x50,0xCC,0x93,0x2E,0x47,0x85,0x89,0x1B,0x5B,0x5A,0x62,0x04,0x44,0xE3,0x02,0x80,0x80,0x64,0xDD,0xFF,0x1F};
|
||||||
|
//const uint8_t spSEVENTEEN[] PROGMEM = {0x02,0x98,0x3A,0x42,0x00,0x5B,0xA6,0x09,0x60,0xDB,0x52,0x06,0x1C,0x93,0x29,0x80,0xA9,0x52,0x87,0x9A,0xB5,0x99,0x4F,0xC8,0x3E,0x46,0xD6,0x5E,0x7E,0x66,0xFB,0x98,0xC5,0x5A,0xC6,0x9A,0x9C,0x63,0x15,0x6B,0x11,0x13,0x8A,0x9C,0x97,0xB9,0x9A,0x5A,0x39,0x71,0xEE,0xD2,0x29,0xC2,0xA6,0xB8,0x58,0x59,0x99,0x56,0x14,0xA3,0xE1,0x26,0x19,0x19,0xE3,0x8C,0x93,0x17,0xB4,0x46,0xB5,0x88,0x71,0x9E,0x97,0x9E,0xB1,0x2C,0xC5,0xF8,0x56,0xC4,0x58,0xA3,0x1C,0xE1,0x33,0x9D,0x13,0x41,0x8A,0x43,0x58,0xAD,0x95,0xA9,0xDB,0x36,0xC0,0xD1,0xC9,0x0E,0x58,0x4E,0x45,0x01,0x23,0xA9,0x04,0x37,0x13,0xAE,0x4D,0x65,0x52,0x82,0xCA,0xA9,0x37,0x99,0x4D,0x89,0xBA,0xC0,0xBC,0x14,0x36,0x25,0xEA,0x1C,0x73,0x52,0x1D,0x97,0xB8,0x33,0xAC,0x0E,0x75,0x9C,0xE2,0xCE,0xB0,0xDA,0xC3,0x51,0x4A,0x1A,0xA5,0xCA,0x70,0x5B,0x21,0xCE,0x4C,0x26,0xD2,0x6C,0xBA,0x38,0x71,0x2E,0x1F,0x2D,0xED,0xE2,0x24,0xB8,0xBC,0x3D,0x52,0x88,0xAB,0x50,0x8E,0xA8,0x48,0x22,0x4E,0x42,0xA0,0x26,0x55,0xFD,0x3F};
|
||||||
|
//const uint8_t spEIGHTEEN[] PROGMEM = {0x2E,0x9C,0xD1,0x4D,0x54,0xEC,0x2C,0xBF,0x1B,0x8A,0x99,0x70,0x7C,0xFC,0x2E,0x29,0x6F,0x52,0xF6,0xF1,0xBA,0x20,0xBF,0x36,0xD9,0xCD,0xED,0x0C,0xF3,0x27,0x64,0x17,0x73,0x2B,0xA2,0x99,0x90,0x65,0xEC,0xED,0x40,0x73,0x32,0x12,0xB1,0xAF,0x30,0x35,0x0B,0xC7,0x00,0xE0,0x80,0xAE,0xDD,0x1C,0x70,0x43,0xAA,0x03,0x86,0x51,0x36,0xC0,0x30,0x64,0xCE,0x4C,0x98,0xFB,0x5C,0x65,0x07,0xAF,0x10,0xEA,0x0B,0x66,0x1B,0xFC,0x46,0xA8,0x3E,0x09,0x4D,0x08,0x2A,0xA6,0x3E,0x67,0x36,0x21,0x2A,0x98,0x67,0x9D,0x15,0xA7,0xA8,0x60,0xEE,0xB6,0x94,0x99,0xA2,0x4A,0x78,0x22,0xC2,0xA6,0x8B,0x8C,0x8E,0xCC,0x4C,0x8A,0x2E,0x8A,0x4C,0xD3,0x57,0x03,0x87,0x28,0x71,0x09,0x1F,0x2B,0xE4,0xA2,0xC4,0xC5,0x6D,0xAD,0x54,0x88,0xB2,0x63,0xC9,0xF2,0x50,0x2E,0x8A,0x4A,0x38,0x4A,0xEC,0x88,0x28,0x08,0xE3,0x28,0x49,0xF3,0xFF};
|
||||||
|
//const uint8_t spNINETEEN[] PROGMEM = {0xC2,0xEA,0x8A,0x95,0x2B,0x6A,0x05,0x3F,0x71,0x71,0x5F,0x0D,0x12,0xFC,0x28,0x25,0x62,0x35,0xF0,0xF0,0xB3,0x48,0x1E,0x0F,0xC9,0xCB,0x2F,0x45,0x7C,0x2C,0x25,0x1F,0xBF,0x14,0xB3,0x2C,0xB5,0x75,0xFC,0x5A,0x5C,0xA3,0x5D,0xE1,0xF1,0x7A,0x76,0xB3,0x4E,0x45,0xC7,0xED,0x96,0x23,0x3B,0x18,0x37,0x7B,0x18,0xCC,0x09,0x51,0x13,0x4C,0xAB,0x6C,0x4C,0x4B,0x96,0xD2,0x49,0xAA,0x36,0x0B,0xC5,0xC2,0x20,0x26,0x27,0x35,0x63,0x09,0x3D,0x30,0x8B,0xF0,0x48,0x5C,0xCA,0x61,0xDD,0xCB,0xCD,0x91,0x03,0x8E,0x4B,0x76,0xC0,0xCC,0x4D,0x06,0x98,0x31,0x31,0x98,0x99,0x70,0x6D,0x2A,0xA3,0xE4,0x16,0xCA,0xBD,0xCE,0x5C,0x92,0x57,0x28,0xCF,0x09,0x69,0x2E,0x7E,0xA5,0x3C,0x63,0xA2,0x30,0x05,0x95,0xD2,0x74,0x98,0xCD,0x14,0x54,0xCA,0x53,0xA9,0x96,0x52,0x50,0x28,0x6F,0xBA,0xCB,0x0C,0x41,0x50,0xDE,0x65,0x2E,0xD3,0x05,0x89,0x4B,0x7B,0x6B,0x20,0x17,0x44,0xAE,0xED,0x23,0x81,0x52,0x90,0x85,0x73,0x57,0xD0,0x72,0x41,0xB1,0x02,0xDE,0x2E,0xDB,0x04,0x89,0x05,0x79,0xBB,0x62,0xE5,0x76,0x11,0xCA,0x61,0x0E,0xFF,0x1F};
|
||||||
|
//const uint8_t spTWENTY[] PROGMEM = {0x01,0x98,0xD1,0xC2,0x00,0xCD,0xA4,0x32,0x20,0x79,0x13,0x04,0x28,0xE7,0x92,0xDC,0x70,0xCC,0x5D,0xDB,0x76,0xF3,0xD2,0x32,0x0B,0x0B,0x5B,0xC3,0x2B,0xCD,0xD4,0xDD,0x23,0x35,0xAF,0x44,0xE1,0xF0,0xB0,0x6D,0x3C,0xA9,0xAD,0x3D,0x35,0x0E,0xF1,0x0C,0x8B,0x28,0xF7,0x34,0x01,0x68,0x22,0xCD,0x00,0xC7,0xA4,0x04,0xBB,0x32,0xD6,0xAC,0x56,0x9C,0xDC,0xCA,0x28,0x66,0x53,0x51,0x70,0x2B,0xA5,0xBC,0x0D,0x9A,0xC1,0xEB,0x14,0x73,0x37,0x29,0x19,0xAF,0x33,0x8C,0x3B,0xA7,0x24,0xBC,0x42,0xB0,0xB7,0x59,0x09,0x09,0x3C,0x96,0xE9,0xF4,0x58,0xFF,0x0F};
|
||||||
|
const uint8_t spTHIRTY[] PROGMEM = {0x08,0x98,0xD6,0x15,0x01,0x43,0xBB,0x0A,0x20,0x1B,0x8B,0xE5,0x16,0xA3,0x1E,0xB6,0xB6,0x96,0x97,0x3C,0x57,0xD4,0x2A,0x5E,0x7E,0x4E,0xD8,0xE1,0x6B,0x7B,0xF8,0x39,0x63,0x0D,0x9F,0x95,0xE1,0xE7,0x4C,0x76,0xBC,0x91,0x5B,0x90,0x13,0xC6,0x68,0x57,0x4E,0x41,0x8B,0x10,0x5E,0x1D,0xA9,0x44,0xD3,0xBA,0x47,0xB8,0xDD,0xE4,0x35,0x86,0x11,0x93,0x94,0x92,0x5F,0x29,0xC7,0x4C,0x30,0x0C,0x41,0xC5,0x1C,0x3B,0x2E,0xD3,0x05,0x15,0x53,0x6C,0x07,0x4D,0x15,0x14,0x8C,0xB5,0xC9,0x6A,0x44,0x90,0x10,0x4E,0x9A,0xB6,0x21,0x81,0x23,0x3A,0x91,0x91,0xE8,0xFF,0x01};
|
||||||
|
//const uint8_t spFOURTY[] PROGMEM = {0x04,0x18,0xB6,0x4C,0x00,0xC3,0x56,0x30,0xA0,0xE8,0xF4,0xA0,0x98,0x99,0x62,0x91,0xAE,0x83,0x6B,0x77,0x89,0x78,0x3B,0x09,0xAE,0xBD,0xA6,0x1E,0x63,0x3B,0x79,0x7E,0x71,0x5A,0x8F,0x95,0xE6,0xA5,0x4A,0x69,0xB9,0x4E,0x8A,0x5F,0x12,0x56,0xE4,0x58,0x69,0xE1,0x36,0xA1,0x69,0x2E,0x2B,0xF9,0x95,0x93,0x55,0x17,0xED,0xE4,0x37,0xC6,0xBA,0x93,0xB2,0x92,0xDF,0x19,0xD9,0x6E,0xC8,0x0A,0xFE,0x60,0xE8,0x37,0x21,0xC9,0xF9,0x8D,0x61,0x5F,0x32,0x13,0xE7,0x17,0x4C,0xD3,0xC6,0xB1,0x94,0x97,0x10,0x8F,0x8B,0xAD,0x11,0x7E,0xA1,0x9A,0x26,0x92,0xF6,0xFF,0x01};
|
||||||
|
//const uint8_t spFIFTY[] PROGMEM = {0x08,0xE8,0x2E,0x84,0x00,0x23,0x84,0x13,0x60,0x38,0x95,0xA5,0x0F,0xCF,0xE2,0x79,0x8A,0x8F,0x37,0x02,0xB3,0xD5,0x2A,0x6E,0x5E,0x93,0x94,0x79,0x45,0xD9,0x05,0x5D,0x0A,0xB9,0x97,0x63,0x02,0x74,0xA7,0x82,0x80,0xEE,0xC3,0x10,0xD0,0x7D,0x28,0x03,0x6E,0x14,0x06,0x70,0xE6,0x0A,0xC9,0x9A,0x4E,0x37,0xD9,0x95,0x51,0xCE,0xBA,0xA2,0x14,0x0C,0x81,0x36,0x1B,0xB2,0x5C,0x30,0x38,0xFA,0x9C,0xC9,0x32,0x41,0xA7,0x18,0x3B,0xA2,0x48,0x04,0x05,0x51,0x4F,0x91,0x6D,0x12,0x04,0x20,0x9B,0x61,0x89,0xFF,0x1F};
|
||||||
|
const uint8_t spGOOD[] PROGMEM = {0x0A,0x28,0xCD,0x34,0x20,0xD9,0x1A,0x45,0x74,0xE4,0x66,0x24,0xAD,0xBA,0xB1,0x8C,0x9B,0x91,0xA5,0x64,0xE6,0x98,0x21,0x16,0x0B,0x96,0x9B,0x4C,0xE5,0xFF,0x01};
|
||||||
|
const uint8_t spMORNING[] PROGMEM = {0xCE,0x08,0x52,0x2A,0x35,0x5D,0x39,0x53,0x29,0x5B,0xB7,0x0A,0x15,0x0C,0xEE,0x2A,0x42,0x56,0x66,0xD2,0x55,0x2E,0x37,0x2F,0xD9,0x45,0xB3,0xD3,0xC5,0xCA,0x6D,0x27,0xD5,0xEE,0x50,0xF5,0x50,0x94,0x14,0x77,0x2D,0xD8,0x5D,0x49,0x92,0xFD,0xB1,0x64,0x2F,0xA9,0x49,0x0C,0x93,0x4B,0xAD,0x19,0x17,0x3E,0x66,0x1E,0xF1,0xA2,0x5B,0x84,0xE2,0x29,0x8F,0x8B,0x72,0x10,0xB5,0xB1,0x2E,0x4B,0xD4,0x45,0x89,0x4A,0xEC,0x5C,0x95,0x14,0x2B,0x8A,0x9C,0x34,0x52,0x5D,0xBC,0xCC,0xB5,0x3B,0x49,0x69,0x89,0x87,0xC1,0x98,0x56,0x3A,0x21,0x2B,0x82,0x67,0xCC,0x5C,0x85,0xB5,0x4A,0x8A,0xF6,0x64,0xA9,0x96,0xC4,0x69,0x3C,0x52,0x81,0x58,0x1C,0x97,0xF6,0x0E,0x1B,0xCC,0x0D,0x42,0x32,0xAA,0x65,0x12,0x67,0xD4,0x6A,0x61,0x52,0xFC,0xFF};
|
||||||
|
//const uint8_t spAFTERNOON[] PROGMEM = {0xC7,0xCE,0xCE,0x3A,0xCB,0x58,0x1F,0x3B,0x07,0x9D,0x28,0x71,0xB4,0xAC,0x9C,0x74,0x5A,0x42,0x55,0x33,0xB2,0x93,0x0A,0x09,0xD4,0xC5,0x9A,0xD6,0x44,0x45,0xE3,0x38,0x60,0x9A,0x32,0x05,0xF4,0x18,0x01,0x09,0xD8,0xA9,0xC2,0x00,0x5E,0xCA,0x24,0xD5,0x5B,0x9D,0x4A,0x95,0xEA,0x34,0xEE,0x63,0x92,0x5C,0x4D,0xD0,0xA4,0xEE,0x58,0x0C,0xB9,0x4D,0xCD,0x42,0xA2,0x3A,0x24,0x37,0x25,0x8A,0xA8,0x8E,0xA0,0x53,0xE4,0x28,0x23,0x26,0x13,0x72,0x91,0xA2,0x76,0xBB,0x72,0x38,0x45,0x0A,0x46,0x63,0xCA,0x69,0x27,0x39,0x58,0xB1,0x8D,0x60,0x1C,0x34,0x1B,0x34,0xC3,0x55,0x8E,0x73,0x45,0x2D,0x4F,0x4A,0x3A,0x26,0x10,0xA1,0xCA,0x2D,0xE9,0x98,0x24,0x0A,0x1E,0x6D,0x97,0x29,0xD2,0xCC,0x71,0xA2,0xDC,0x86,0xC8,0x12,0xA7,0x8E,0x08,0x85,0x22,0x8D,0x9C,0x43,0xA7,0x12,0xB2,0x2E,0x50,0x09,0xEF,0x51,0xC5,0xBA,0x28,0x58,0xAD,0xDB,0xE1,0xFF,0x03};
|
||||||
|
//const uint8_t spEVENING[] PROGMEM = {0xCD,0x6D,0x98,0x73,0x47,0x65,0x0D,0x6D,0x10,0xB2,0x5D,0x93,0x35,0x94,0xC1,0xD0,0x76,0x4D,0x66,0x93,0xA7,0x04,0xBD,0x71,0xD9,0x45,0xAE,0x92,0xD5,0xAC,0x53,0x07,0x6D,0xA5,0x76,0x63,0x51,0x92,0xD4,0xA1,0x83,0xD4,0xCB,0xB2,0x51,0x88,0xCD,0xF5,0x50,0x45,0xCE,0xA2,0x2E,0x27,0x28,0x54,0x15,0x37,0x0A,0xCF,0x75,0x61,0x5D,0xA2,0xC4,0xB5,0xC7,0x44,0x55,0x8A,0x0B,0xA3,0x6E,0x17,0x95,0x21,0xA9,0x0C,0x37,0xCD,0x15,0xBA,0xD4,0x2B,0x6F,0xB3,0x54,0xE4,0xD2,0xC8,0x64,0xBC,0x4C,0x91,0x49,0x12,0xE7,0xB2,0xB1,0xD0,0x22,0x0D,0x9C,0xDD,0xAB,0x62,0xA9,0x38,0x53,0x11,0xA9,0x74,0x2C,0xD2,0xCA,0x59,0x34,0xA3,0xE5,0xFF,0x03};
|
||||||
|
const uint8_t spPAUSE1[] PROGMEM = {0x00,0x00,0x00,0x00,0xFF,0x0F};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.speaker.say(spGOOD);
|
||||||
|
CircuitPlayground.speaker.say(spMORNING);
|
||||||
|
CircuitPlayground.speaker.say(spPAUSE1);
|
||||||
|
CircuitPlayground.speaker.say(spTHE);
|
||||||
|
CircuitPlayground.speaker.say(spTIME);
|
||||||
|
CircuitPlayground.speaker.say(spIS);
|
||||||
|
CircuitPlayground.speaker.say(spELEVEN);
|
||||||
|
CircuitPlayground.speaker.say(spTHIRTY);
|
||||||
|
CircuitPlayground.speaker.say(spSIX);
|
||||||
|
CircuitPlayground.speaker.say(spA_M_);
|
||||||
|
CircuitPlayground.speaker.say(spPAUSE1);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this
|
||||||
|
// will turn off the pin 13 LED (it's connected to a microcontroller
|
||||||
|
// pin that's also related to the speaker), but there's a small
|
||||||
|
// audible click when it turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,444 @@
|
|||||||
|
// Talkie library
|
||||||
|
// Copyright 2011 Peter Knight
|
||||||
|
// This code is released under GPLv2 license.
|
||||||
|
//
|
||||||
|
// The following phrases are derived from VM61003/4/5 ROMs
|
||||||
|
//
|
||||||
|
// A male voice with a US accent.
|
||||||
|
//
|
||||||
|
// These phrases have a very military bias
|
||||||
|
// with lots of very useful engineering words.
|
||||||
|
// They also have good expression.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// ROM VM61003
|
||||||
|
//const uint8_t spZERO[] PROGMEM = {0x69,0xFB,0x59,0xDD,0x51,0xD5,0xD7,0xB5,0x6F,0x0A,0x78,0xC0,0x52,0x01,0x0F,0x50,0xAC,0xF6,0xA8,0x16,0x15,0xF2,0x7B,0xEA,0x19,0x47,0xD0,0x64,0xEB,0xAD,0x76,0xB5,0xEB,0xD1,0x96,0x24,0x6E,0x62,0x6D,0x5B,0x1F,0x0A,0xA7,0xB9,0xC5,0xAB,0xFD,0x1A,0x62,0xF0,0xF0,0xE2,0x6C,0x73,0x1C,0x73,0x52,0x1D,0x19,0x94,0x6F,0xCE,0x7D,0xED,0x6B,0xD9,0x82,0xDC,0x48,0xC7,0x2E,0x71,0x8B,0xBB,0xDF,0xFF,0x1F};
|
||||||
|
//const uint8_t spONE[] PROGMEM = {0x66,0x4E,0xA8,0x7A,0x8D,0xED,0xC4,0xB5,0xCD,0x89,0xD4,0xBC,0xA2,0xDB,0xD1,0x27,0xBE,0x33,0x4C,0xD9,0x4F,0x9B,0x4D,0x57,0x8A,0x76,0xBE,0xF5,0xA9,0xAA,0x2E,0x4F,0xD5,0xCD,0xB7,0xD9,0x43,0x5B,0x87,0x13,0x4C,0x0D,0xA7,0x75,0xAB,0x7B,0x3E,0xE3,0x19,0x6F,0x7F,0xA7,0xA7,0xF9,0xD0,0x30,0x5B,0x1D,0x9E,0x9A,0x34,0x44,0xBC,0xB6,0x7D,0xFE,0x1F};
|
||||||
|
//const uint8_t spTWO[] PROGMEM = {0x06,0xB8,0x59,0x34,0x00,0x27,0xD6,0x38,0x60,0x58,0xD3,0x91,0x55,0x2D,0xAA,0x65,0x9D,0x4F,0xD1,0xB8,0x39,0x17,0x67,0xBF,0xC5,0xAE,0x5A,0x1D,0xB5,0x7A,0x06,0xF6,0xA9,0x7D,0x9D,0xD2,0x6C,0x55,0xA5,0x26,0x75,0xC9,0x9B,0xDF,0xFC,0x6E,0x0E,0x63,0x3A,0x34,0x70,0xAF,0x3E,0xFF,0x1F};
|
||||||
|
//const uint8_t spTHREE[] PROGMEM = {0x0C,0xE8,0x2E,0x94,0x01,0x4D,0xBA,0x4A,0x40,0x03,0x16,0x68,0x69,0x36,0x1C,0xE9,0xBA,0xB8,0xE5,0x39,0x70,0x72,0x84,0xDB,0x51,0xA4,0xA8,0x4E,0xA3,0xC9,0x77,0xB1,0xCA,0xD6,0x52,0xA8,0x71,0xED,0x2A,0x7B,0x4B,0xA6,0xE0,0x37,0xB7,0x5A,0xDD,0x48,0x8E,0x94,0xF1,0x64,0xCE,0x6D,0x19,0x55,0x91,0xBC,0x6E,0xD7,0xAD,0x1E,0xF5,0xAA,0x77,0x7A,0xC6,0x70,0x22,0xCD,0xC7,0xF9,0x89,0xCF,0xFF,0x03};
|
||||||
|
//const uint8_t spFOUR[] PROGMEM = {0x08,0x68,0x21,0x0D,0x03,0x1C,0x90,0xC0,0x88,0x92,0xB2,0x29,0x87,0x76,0x2B,0x2D,0x5C,0x7B,0x06,0xD9,0xED,0x74,0x64,0x51,0x54,0x4D,0xA2,0xBA,0x99,0xB7,0x3A,0xF8,0xEA,0x74,0xCA,0xD3,0x87,0xBE,0x94,0x3D,0xA4,0xD4,0x4E,0xC9,0x5F,0xF7,0x72,0xA7,0x9C,0x1C,0x63,0xDE,0xF2,0x9B,0xBE,0x34,0x84,0x27,0x2D,0x4B,0xF8,0x53,0x09,0x9C,0x0E,0xB7,0xEE,0xCB,0x5B,0x70,0xDD,0xB2,0xFC,0x3F};
|
||||||
|
//const uint8_t spFIVE[] PROGMEM = {0x08,0x68,0x4E,0x9D,0x02,0x1C,0x60,0xC0,0x8C,0x69,0x12,0xB0,0xC0,0x28,0xAB,0x8C,0x9C,0xC0,0x2D,0xBB,0x38,0x79,0x31,0x15,0xA3,0xB6,0xE4,0x16,0xB7,0xDC,0xF5,0x6E,0x57,0xDF,0x54,0x5B,0x85,0xBE,0xD9,0xE3,0x5C,0xC6,0xD6,0x6D,0xB1,0xA5,0xBF,0x99,0x5B,0x3B,0x5A,0x30,0x09,0xAF,0x2F,0xED,0xEC,0x31,0xC4,0x5C,0xBE,0xD6,0x33,0xDD,0xAD,0x88,0x87,0xE2,0xD2,0xF2,0xF4,0xE0,0x16,0x2A,0xB2,0xE3,0x63,0x1F,0xF9,0xF0,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spSIX[] PROGMEM = {0x04,0xF8,0xB9,0x55,0x01,0xBF,0xA5,0x1B,0xE0,0x37,0x0F,0x03,0xFC,0x96,0x61,0x80,0xDF,0x3C,0x0C,0xF0,0x93,0xDA,0x4A,0x87,0x49,0x53,0x91,0x37,0x2B,0x6D,0xD2,0x55,0x23,0xDE,0xAC,0xAA,0xB9,0x16,0x09,0xFF,0xB2,0xFA,0x66,0x93,0x3C,0x63,0xF3,0x9C,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x02,0x14,0x97,0xAA,0x80,0xAB,0x6B,0x0D,0xF0,0x63,0xA5,0x01,0x7E,0xCB,0x30,0xC0,0x6F,0xE9,0x0A,0xF8,0x25,0x93,0x01,0x3F,0x57,0xFC,0x3F};
|
||||||
|
//const uint8_t spSEVEN[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x56,0x59,0x6C,0x98,0x47,0x3E,0x59,0x4D,0x89,0x69,0x66,0xB9,0x7A,0x34,0x39,0x86,0x9B,0xD9,0xA6,0xD4,0xE7,0x10,0xAE,0xCA,0xAD,0x47,0x97,0x5D,0x9A,0xA9,0xAE,0x1A,0x75,0xB1,0xA5,0x66,0xF9,0xB2,0xD4,0x4D,0x63,0xB6,0x84,0x9A,0x52,0x76,0x45,0x11,0x1A,0xAA,0x4B,0x31,0x0C,0x79,0x4A,0xB0,0x49,0xC5,0x50,0xA2,0x41,0xA1,0xC9,0x65,0xD9,0xAB,0x89,0x56,0x84,0xFF,0x07};
|
||||||
|
//const uint8_t spEIGHT[] PROGMEM = {0xAD,0x1B,0xDE,0x58,0x23,0x17,0xAF,0x6E,0xE8,0x20,0xEB,0x5C,0xBC,0xEA,0x61,0x03,0xAD,0x73,0xF6,0xAA,0x66,0x4A,0xD0,0xCC,0xD9,0xAB,0x1E,0x45,0xC1,0xA3,0x66,0xAF,0x61,0x36,0x03,0x8B,0x5A,0x9C,0xA6,0x51,0x04,0xA2,0x66,0x96,0xBB,0xBA,0x47,0xEC,0xED,0x8A,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x80,0x02,0x86,0x74,0x63,0xC0,0xE6,0x6A,0xFF,0x0F};
|
||||||
|
//const uint8_t spNINE[] PROGMEM = {0x62,0x75,0xDC,0x33,0xB5,0x62,0xB9,0x25,0x0B,0x8E,0x34,0x8F,0xD3,0xA6,0xAE,0x59,0xD2,0x34,0xE9,0x18,0x87,0x27,0xC9,0xD0,0x78,0xAB,0x6F,0xCE,0xC2,0x45,0x1B,0xAF,0xB6,0xF8,0x51,0x73,0x9D,0xB3,0x9A,0x12,0xC7,0x2C,0x6D,0xC9,0xAA,0x73,0x4B,0xF3,0x88,0x26,0xAB,0xCE,0x2D,0xCC,0x23,0xEA,0xAC,0x26,0xB7,0xD0,0x88,0x98,0xB3,0xBA,0x5C,0x43,0x32,0x7D,0xCE,0x1A,0x4A,0x0A,0xCD,0xF4,0x39,0x6B,0xAA,0x3E,0x24,0xCB,0x67,0xAF,0xB5,0xD9,0xE4,0x18,0x5F,0xB4,0xF6,0x6E,0x92,0x62,0x7D,0xD1,0x38,0xBA,0x09,0xF2,0x8D,0x59,0xED,0xE8,0x3A,0xD8,0x27,0x16,0xA6,0xBB,0x7B,0xF2,0x74,0x4F,0x92,0x9E,0x1E,0xC8,0x4A,0xC3,0x49,0x7A,0x9A,0x25,0x2B,0xF5,0x24,0xE9,0xEE,0xD1,0x24,0x25,0x27,0xBA,0xBB,0x25,0x51,0xD3,0xAA,0x24,0xAE,0x5E,0x54,0x55,0x3A,0xD4,0xFF,0x03};
|
||||||
|
//const uint8_t spTEN[] PROGMEM = {0x0A,0xD8,0x5C,0x4D,0x03,0x2B,0xAB,0x5E,0xC4,0x33,0x2B,0xAF,0x62,0x84,0x12,0x0D,0x7B,0xB3,0xCA,0x66,0x43,0xA2,0xE3,0xF6,0xAA,0xAA,0x4E,0xC9,0x89,0xDB,0xAB,0x6E,0xBA,0xC5,0xDB,0x66,0xAF,0xB9,0xE8,0xE6,0x4C,0xBF,0x3D,0xE6,0x6A,0xC4,0x4B,0xCA,0x49,0xD9,0xBA,0x61,0x2B,0x09,0x25,0xED,0xE8,0x5A,0xB4,0xC4,0xED,0xA6,0x6B,0x18,0xE1,0x56,0xB7,0x9A,0xAE,0xA6,0x44,0x47,0xDC,0x6E,0xBE,0xC2,0xDD,0xA5,0xF0,0xB8,0xD9,0xFD,0x7F};
|
||||||
|
//const uint8_t spELEVEN[] PROGMEM = {0x29,0x6F,0x52,0xA8,0xBB,0x6A,0x8F,0xBA,0x2B,0xC5,0xE8,0x9C,0xBD,0xAA,0x61,0x1D,0xB5,0xE3,0xF1,0xAA,0x9A,0x35,0xB6,0xB0,0xC5,0xAB,0x5E,0x44,0x53,0x4D,0xBA,0xAD,0x7A,0x42,0x1B,0xE1,0x5C,0xB3,0x9A,0x09,0x6D,0x94,0x62,0xE9,0x6A,0x8A,0x6A,0x37,0x8D,0xC7,0xAB,0x69,0xBC,0xDD,0xCC,0x5F,0xAF,0xB6,0xC9,0x76,0x37,0x7F,0xBD,0xDA,0x62,0xCA,0xDD,0x62,0xD1,0xEA,0xB2,0xCB,0x70,0xA3,0x45,0x69,0xCA,0x36,0xDD,0x14,0x1B,0xAE,0xBE,0x98,0x74,0x33,0x5E,0x39,0xFA,0x6C,0xC3,0x42,0xFC,0xF1,0xE8,0x8B,0x2E,0x71,0x8D,0xDB,0x63,0xA8,0x1A,0xAB,0x39,0x9C,0x8C,0xBE,0x69,0xCA,0xD2,0x50,0x32,0xFA,0xA6,0xD8,0x4B,0x52,0x71,0xEB,0xAA,0xE4,0x28,0x4E,0xD5,0xAD,0xCB,0xC2,0x3C,0x35,0x1D,0xB5,0x36,0xDB,0x14,0xAB,0x8C,0xF4,0xFF};
|
||||||
|
//const uint8_t spTWELVE[] PROGMEM = {0x09,0x98,0xDA,0x22,0x01,0x37,0x78,0x1A,0x20,0x85,0xD1,0x50,0x3A,0x33,0x11,0x81,0x5D,0x5B,0x95,0xD4,0x44,0x04,0x76,0x9D,0xD5,0xA9,0x3A,0xAB,0xF0,0xA1,0x3E,0xB7,0xBA,0xD5,0xA9,0x2B,0xEB,0xCC,0xA0,0x3E,0xB7,0xBD,0xC3,0x5A,0x3B,0xC8,0x69,0x67,0xBD,0xFB,0xE8,0x67,0xBF,0xCA,0x9D,0xE9,0x74,0x08,0xE7,0xCE,0x77,0x78,0x06,0x89,0x32,0x57,0xD6,0xF1,0xF1,0x8F,0x7D,0xFE,0x1F};
|
||||||
|
//const uint8_t spTHIRTEEN[] PROGMEM = {0x08,0x18,0xA2,0x12,0x03,0x18,0x40,0xC0,0x50,0x13,0x25,0x1D,0x3A,0x55,0x9D,0x5B,0xAF,0xAA,0xAB,0x74,0x4A,0xE9,0xB6,0xAA,0x6A,0xC7,0xA0,0xDD,0xDD,0xA8,0xAA,0x1F,0x82,0x75,0xED,0xA5,0x2A,0x8D,0x31,0xC6,0xB3,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0x10,0x80,0xED,0x2C,0x12,0x70,0x53,0x55,0x00,0x66,0x2E,0x1D,0xD9,0x8C,0x46,0x14,0xB9,0x64,0xD5,0xD3,0x1B,0xD2,0xD4,0xAC,0xD1,0x2E,0x6B,0x44,0x9B,0xA5,0x46,0xBF,0xAC,0x91,0x6E,0x04,0x19,0xE3,0xD2,0x4A,0x76,0x6E,0xA4,0x2D,0xCB,0x2A,0xC9,0x65,0xE8,0xB6,0x0D,0x29,0x6C,0xEB,0xA1,0xC3,0xD1,0x1D,0x54,0xB9,0x28,0x75,0x67,0xB7,0x90,0xE5,0x6A,0x27,0xDC,0xDD,0xA1,0xB7,0xB9,0x92,0xF2,0x77,0x1B,0x1C,0x92,0x0D,0xDD,0xDF,0x92,0x9A,0x59,0x55,0xFC,0x7F};
|
||||||
|
//const uint8_t spFOURTEEN[] PROGMEM = {0x08,0xE8,0x2A,0x94,0x00,0xC3,0x56,0x10,0x60,0xFA,0x0A,0x01,0x4C,0x97,0xAE,0x80,0x66,0xCB,0x4A,0x6F,0xF3,0x84,0xB1,0xB4,0x6E,0x9D,0x73,0x57,0x1A,0xD0,0x6E,0x74,0xC1,0x7D,0x71,0x61,0xD6,0x51,0x07,0xF7,0x26,0x25,0xDE,0x46,0x15,0xED,0x52,0x37,0xFB,0x29,0x65,0x1E,0x18,0x61,0xD6,0x1A,0x81,0x53,0x94,0xAA,0x50,0x0D,0x00,0x80,0x02,0x2C,0xE3,0x5E,0x80,0x13,0xBA,0x13,0x30,0x43,0xDB,0x2A,0x46,0x34,0xA2,0x8E,0xC5,0xAB,0x9A,0xDE,0x88,0x2E,0x4A,0xAD,0x7A,0x7A,0x25,0x7E,0x0F,0xB2,0xDA,0x69,0x84,0xED,0xC4,0xEC,0xEA,0xA6,0x15,0xF6,0x53,0xB1,0x6B,0x18,0x56,0x38,0x4F,0xCC,0x8D,0x71,0x5A,0x61,0x7F,0x35,0x3A,0xC6,0xA1,0x44,0xFC,0xCD,0x74,0x9B,0xBA,0xC1,0xCA,0x54,0xAB,0x6D,0x6C,0x06,0x3B,0x5D,0xED,0xB4,0xA1,0x29,0x6A,0x37,0x57,0xDD,0x86,0x2A,0xA9,0x52,0x43,0x51,0xEB,0xAA,0x0E,0x8E,0xA8,0x48,0xFF,0x0F};
|
||||||
|
//const uint8_t spFIFTEEN[] PROGMEM = {0x02,0x68,0xD6,0xCC,0x00,0x43,0x9A,0x39,0x60,0x3A,0xF7,0x51,0x34,0x5B,0x6A,0x2C,0x6D,0x4E,0xD5,0x92,0x99,0x89,0x2C,0x39,0x55,0xF3,0xAE,0xA6,0x32,0x67,0x54,0xC5,0x99,0xB9,0xC8,0x1C,0x07,0x0C,0xA5,0x94,0x01,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x02,0xB0,0x84,0x4A,0x6B,0x4F,0x6C,0x23,0x15,0x2F,0x6D,0x18,0xC1,0x44,0xC2,0x17,0x8F,0x69,0xBA,0x54,0xA8,0x58,0x3D,0xE6,0x6D,0x53,0xA1,0x73,0xF5,0x5A,0xA6,0x31,0xA2,0x8D,0x89,0x63,0x9D,0xCE,0x88,0xD6,0x47,0xB6,0x75,0x5B,0x13,0x6C,0xAF,0x54,0x96,0x61,0x84,0x22,0x64,0x74,0x59,0x9A,0x61,0x4B,0x0D,0xA7,0x65,0x6A,0x86,0xD2,0x23,0x5C,0xA7,0xB1,0x08,0xCA,0xB0,0x70,0x9D,0x86,0xA2,0x38,0xC9,0xA2,0x55,0xE8,0x32,0x11,0x8F,0x94,0xD6,0xFF,0x0F};
|
||||||
|
//const uint8_t spSIXTEEN[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x96,0xB7,0xA5,0x1B,0x9B,0x66,0x5A,0x59,0xB3,0x26,0x1A,0xF6,0xA6,0x15,0xCD,0x2B,0x59,0xFA,0x6A,0x04,0x4E,0x51,0xAA,0x42,0x35,0x40,0x01,0x25,0xA7,0x24,0xE0,0x98,0x1E,0x07,0xFC,0x9D,0x2E,0x80,0x57,0x9D,0x18,0xB0,0x05,0x6A,0x02,0xAE,0x54,0x1D,0x6D,0x77,0xCA,0xEA,0xF9,0x78,0xF5,0xD3,0x1A,0x51,0xE7,0xE2,0x35,0x4F,0x6F,0xC4,0x53,0x93,0xC6,0x3A,0x9D,0x91,0x6C,0x86,0x6A,0xC7,0x34,0x2A,0x7A,0x66,0x36,0x9D,0xD3,0xA9,0xC8,0x99,0xD5,0x72,0x75,0xC7,0x92,0xA3,0x96,0xC3,0xD3,0x3D,0x46,0xA4,0x3A,0x09,0x4F,0x73,0x98,0xE1,0xEA,0x24,0x3C,0xDD,0x92,0x87,0xBB,0x93,0xF4,0x0D,0x63,0x94,0x2E,0x75,0xFF,0x1F};
|
||||||
|
//const uint8_t spSEVENTEEN[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0x32,0x03,0xFC,0x5C,0xB6,0xAA,0x26,0x53,0xD5,0x7D,0xF5,0x6A,0x8A,0x4E,0xB5,0xCC,0x47,0xAB,0xAB,0xAA,0xD4,0xC2,0x36,0xA7,0x31,0xF9,0x30,0x33,0x49,0x9D,0x86,0x6C,0xD5,0x5D,0xA4,0xF5,0xE8,0xAB,0x32,0x37,0x97,0x95,0x69,0xA8,0x0A,0x7B,0x50,0xD5,0xA5,0xA1,0x69,0xA8,0x56,0x63,0x1B,0xC6,0xA6,0xB1,0x43,0xD4,0x35,0x24,0xE0,0x18,0xB3,0x96,0xAF,0xBC,0x99,0x86,0x9A,0x5A,0xD5,0x2C,0x71,0xD6,0xC4,0x5C,0xF5,0x2C,0x4E,0x94,0x31,0x6B,0x35,0x33,0x1A,0xF2,0x64,0xE9,0xD5,0x4F,0xAF,0xA8,0x1B,0x81,0xC7,0xBC,0xAC,0x91,0x9E,0x1B,0x29,0xDB,0x32,0x8A,0x7A,0x19,0xA8,0xEC,0x43,0x08,0xC5,0xB9,0xE9,0xF4,0x34,0x0D,0x35,0xAE,0x76,0xD3,0x5B,0x14,0x76,0xA9,0x3B,0x4A,0x7F,0x77,0x58,0xA1,0xE6,0x38,0xFD,0xDD,0x51,0x9A,0xBB,0xAB,0xF4,0x57,0x67,0x16,0xDA,0xB3,0xFE,0x1F};
|
||||||
|
//const uint8_t spEIGHTEEN[] PROGMEM = {0x6B,0x18,0x36,0x88,0x3B,0x1B,0xEF,0x61,0x0D,0xD3,0x27,0x52,0xE5,0x9A,0x51,0x8F,0x1E,0xC8,0x96,0x4B,0x5A,0xD5,0x03,0x61,0xD5,0xCC,0x72,0x75,0x35,0x10,0xD3,0x13,0x11,0x81,0x53,0x94,0xAA,0x50,0x0D,0x80,0x02,0x2C,0x95,0x5A,0x80,0x17,0xC7,0x57,0x3E,0xBD,0x33,0x6B,0x36,0x59,0xD5,0xC8,0x4E,0xE4,0xB9,0x64,0xD5,0x33,0x24,0x61,0xE7,0xA4,0x35,0x2C,0xEF,0x28,0x9B,0xA5,0xC6,0x38,0x9D,0xA2,0x5F,0x84,0x6E,0xCB,0x74,0x8A,0x7E,0x6E,0xA6,0xEC,0xCD,0xB0,0x76,0x4B,0xD4,0x72,0x74,0x87,0x1E,0xA9,0x76,0xD2,0x3D,0x3C,0x59,0x84,0x26,0x4D,0x4F,0xD3,0x68,0x15,0xEE,0xE4,0xFF,0x01};
|
||||||
|
//const uint8_t spNINETEEN[] PROGMEM = {0x6E,0x2F,0x44,0xB4,0x5B,0x93,0xA6,0xAD,0x32,0x96,0x2E,0x69,0xBA,0x96,0x26,0xD3,0xCC,0x65,0xF1,0x1A,0x9B,0x9C,0xE0,0xD4,0x2D,0x6B,0x68,0xA6,0xCD,0xCA,0x56,0xAF,0xAE,0xB9,0x64,0x6F,0x5F,0xB4,0xEA,0xE6,0x84,0xA7,0xA3,0x52,0xAB,0x5B,0x40,0xAB,0x28,0xD3,0xAE,0xCD,0x0A,0xC7,0x5D,0x35,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x50,0x80,0xAB,0x4C,0x0A,0xB0,0x7C,0x4B,0xCB,0x57,0xDE,0x4C,0x43,0x4D,0xAD,0x6A,0x96,0x38,0x6B,0x62,0xAE,0x7A,0x16,0x27,0xCA,0x98,0xB5,0x9A,0x19,0x0D,0x79,0xB2,0xF4,0xEA,0xA7,0x57,0xD4,0x8D,0xC0,0x63,0x5E,0xD6,0x48,0xCF,0x8D,0x94,0x6D,0x19,0x45,0xBD,0x0C,0x54,0xF6,0x21,0x84,0xE2,0xDC,0x74,0x79,0x9A,0x86,0x1A,0x57,0xBB,0xE5,0x2D,0x0A,0xBB,0xD4,0x1D,0x95,0xBF,0x3B,0xAC,0x50,0x73,0x5C,0xFE,0xEE,0x28,0xCD,0xDD,0x55,0xF8,0xAB,0x33,0x0B,0xED,0x59,0xFF,0x0F};
|
||||||
|
//const uint8_t spTWENTY[] PROGMEM = {0x0A,0xE8,0x4A,0xCD,0x01,0xDB,0xB9,0x33,0xC0,0xA6,0x54,0x0C,0xA4,0x34,0xD9,0xF2,0x0A,0x6C,0xBB,0xB3,0x53,0x0E,0x5D,0xA6,0x25,0x9B,0x6F,0x75,0xCA,0x61,0x52,0xDC,0x74,0x49,0xA9,0x8A,0xC4,0x76,0x4D,0xD7,0xB1,0x76,0xC0,0x55,0xA6,0x65,0xD8,0x26,0x99,0x5C,0x56,0xAD,0xB9,0x25,0x23,0xD5,0x7C,0x32,0x96,0xE9,0x9B,0x20,0x7D,0xCB,0x3C,0xFA,0x55,0xAE,0x99,0x1A,0x30,0xFC,0x4B,0x3C,0xFF,0x1F};
|
||||||
|
//const uint8_t spTHIRTY[] PROGMEM = {0x02,0x18,0xA2,0x52,0x02,0x16,0x60,0xC0,0x50,0x13,0x25,0x6B,0x2C,0xC4,0xDC,0x52,0xAF,0xB2,0x8B,0x70,0x2A,0xCD,0xBA,0xAA,0xAA,0xC7,0x60,0xCC,0xFD,0xAA,0x8B,0x5D,0x85,0x35,0xED,0xA3,0x2B,0xD3,0x31,0x52,0xF2,0x2A,0xA0,0x7A,0xA5,0x00,0x2C,0xED,0xD2,0xFA,0x9E,0x8C,0x45,0x7D,0xF5,0xD8,0xBA,0x55,0xB2,0xAC,0xD5,0xED,0xE8,0xDE,0x51,0x2A,0x57,0x97,0xA7,0x07,0x41,0xAF,0x5A,0xEC,0xB6,0xEE,0x19,0x7D,0x7A,0xB1,0x9B,0xBA,0x23,0xCC,0xE9,0x5A,0xFF,0x0F};
|
||||||
|
const uint8_t spFOURTY[] PROGMEM = {0x04,0xC8,0xCE,0x8C,0x01,0xCB,0x94,0x33,0x60,0xDA,0x0C,0x01,0x0C,0x13,0xAE,0x80,0xEA,0xD3,0x4A,0x1D,0xC4,0xB4,0x26,0x39,0x1E,0x75,0xA2,0xB3,0x9C,0xAC,0x7E,0x54,0x51,0xEC,0x52,0xAA,0xFA,0x51,0x05,0x73,0xC1,0xE5,0xDC,0x47,0x9D,0xC2,0x8A,0xB5,0x6A,0x57,0x40,0xF5,0x4A,0x01,0x58,0xDA,0xA5,0x8D,0xC3,0x24,0x89,0x5B,0xAF,0xB1,0xB4,0x20,0xE4,0x5E,0x8B,0xC7,0xDA,0x9D,0xA3,0x54,0xBE,0x4E,0xF7,0x8C,0x41,0x98,0xF1,0xC6,0x3D,0x3D,0x0A,0xEA,0xF4,0x23,0xF7,0x34,0x47,0x9C,0x53,0x93,0xDC,0xD3,0x15,0x63,0x6D,0x4D,0x32,0xCF,0x98,0x41,0xA4,0xB9,0xF8,0xFF,0x01};
|
||||||
|
//const uint8_t spFIFTY[] PROGMEM = {0x08,0x68,0x3A,0x05,0x01,0x5D,0xA4,0x12,0x60,0xD8,0x0A,0x02,0x4C,0x5F,0x21,0x80,0xE9,0xD2,0x15,0xD0,0x6C,0xD9,0x4A,0x9B,0x09,0x91,0x94,0x2D,0x2B,0xEF,0x2A,0x95,0x52,0x37,0xAF,0xA2,0xD9,0x52,0x09,0xFD,0x4C,0x80,0x61,0x2B,0x08,0x30,0x7D,0x85,0x00,0xA6,0x4B,0x47,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x0A,0x30,0x74,0xD9,0xE8,0xBB,0x34,0xF2,0x8C,0xD5,0x63,0xE9,0x56,0x49,0x2B,0x1F,0xAF,0x6D,0x04,0x27,0xAA,0x58,0x53,0xEE,0x19,0x93,0x30,0xFD,0x4B,0xB9,0x67,0x70,0xE4,0xAA,0xD5,0xEE,0x6D,0x96,0xB1,0xA6,0x66,0x87,0xB7,0x67,0x22,0x8F,0xA9,0xFD,0xFF};
|
||||||
|
//const uint8_t spSIXTY[] PROGMEM = {0x06,0x78,0x90,0xC4,0x00,0x3F,0x66,0x18,0xE0,0xA7,0x8C,0x04,0x7C,0x9F,0x11,0x80,0xDF,0xDA,0x57,0xD1,0x5D,0xBB,0x2B,0x2D,0x59,0x45,0x6B,0xA9,0xC6,0xB2,0xA6,0x14,0xAD,0x9B,0x18,0x59,0x17,0x04,0x4E,0x51,0xAA,0x42,0x35,0x40,0x01,0x35,0x8D,0x17,0xE0,0xC4,0x9A,0x02,0xBC,0x54,0x85,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x04,0x60,0x48,0x37,0x07,0x6C,0xAE,0xB6,0xAA,0xA9,0x53,0x54,0xA5,0xCB,0xAA,0xBB,0x4B,0x12,0xB7,0x37,0x6B,0x18,0x31,0x51,0xDC,0x5F,0xAF,0x79,0x34,0x47,0xD1,0x58,0x3D,0xD6,0xD1,0x14,0xD5,0x72,0x71,0xDB,0x47,0x51,0xD4,0xC8,0xD7,0xFF,0x0F};
|
||||||
|
//const uint8_t spSEVENTY[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0x32,0x03,0xFC,0x5C,0xB6,0x8A,0x2E,0x42,0xDD,0x6C,0xD3,0x2A,0x3B,0x2F,0xD3,0xB4,0xCD,0xAB,0xCA,0xA6,0xD4,0x2B,0x37,0xB5,0x3A,0x3A,0x8F,0x10,0x5B,0x99,0xFA,0x6C,0xC3,0xCC,0x78,0xD5,0x6A,0x8A,0x0D,0x0B,0xF5,0x47,0x63,0xAC,0x9A,0x33,0xC5,0x63,0xA7,0xB1,0x2A,0xEC,0x50,0xD7,0x9C,0x96,0x66,0xB0,0x92,0xC2,0x95,0x01,0x9E,0x32,0x2D,0xDB,0x0B,0xE3,0xE2,0xAC,0xAD,0xED,0x4D,0x39,0xB9,0xD5,0xC6,0xB5,0x0F,0x13,0xCC,0xE1,0x9B,0xC7,0xD1,0x9D,0x93,0x66,0x7C,0x2E,0xE7,0x70,0x49,0x94,0xBE,0xA5,0x5C,0xC3,0x25,0x72,0xC5,0xA6,0x72,0x0F,0xEF,0x28,0x59,0xAB,0xDD,0x3D,0xAA,0x91,0x58,0xAD,0xFA,0x7F};
|
||||||
|
//const uint8_t spEIGHTY[] PROGMEM = {0x63,0xEA,0xD2,0x28,0x37,0x67,0xAD,0x7E,0xF9,0x26,0xAC,0x58,0xB3,0x9A,0x91,0x1C,0x34,0xB3,0xC9,0x68,0x46,0x13,0x54,0xEF,0x25,0xA3,0x1E,0x85,0xD1,0x7C,0x96,0x88,0x21,0x52,0xB3,0x71,0x4F,0xA4,0x80,0x25,0x42,0x4B,0x37,0x82,0x82,0xD9,0x2C,0x1E,0xD3,0x4C,0x06,0xEA,0xB5,0x64,0xAC,0xCB,0x3B,0x50,0xE5,0xE2,0xB2,0x2F,0xEB,0x40,0x53,0x8F,0xCB,0x39,0xBD,0x21,0x75,0x2D,0xCE,0x6F,0x7A,0x67,0x12,0x90,0xEC,0xD9,0xFF,0x0F};
|
||||||
|
//const uint8_t spNINETY[] PROGMEM = {0x6E,0x28,0x1C,0xE3,0x38,0xB4,0xB8,0x3E,0x33,0xAA,0xE5,0xF0,0xB2,0xBA,0x26,0xD2,0x5D,0x6C,0xF5,0xA9,0x9A,0x9C,0xB0,0x90,0x35,0xA7,0xAA,0x76,0xDC,0x52,0xD6,0x9C,0xA2,0x56,0xB7,0x70,0x9D,0xB3,0xB2,0x56,0x4C,0xC2,0x7D,0xCA,0xCA,0x7A,0x11,0xF1,0x88,0x31,0xAD,0xE8,0x91,0x34,0xA2,0xCA,0x88,0xD6,0x08,0xAD,0xF4,0x4C,0x5C,0x80,0xA9,0x52,0x5A,0xB7,0xD2,0xB8,0x30,0xB6,0x19,0xC3,0x48,0x4A,0xE2,0xB1,0x64,0xCD,0x33,0x97,0xA0,0xE9,0x96,0xB1,0xCC,0xD8,0x02,0x6E,0x5F,0xDA,0x3A,0xD3,0x30,0xB8,0x7F,0x29,0xEB,0x4C,0x8D,0x10,0xB1,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spHUNDRED[] PROGMEM = {0x04,0xC8,0x7E,0x5C,0x02,0x0A,0xA8,0x62,0x43,0x03,0xA7,0xA8,0x62,0x43,0x4B,0x97,0xDC,0xF2,0x14,0xC5,0xA7,0x9B,0x7A,0xD3,0x95,0x37,0xC3,0x1E,0x16,0x4A,0x66,0x36,0xF3,0x5A,0x89,0x6E,0xD4,0x30,0x55,0xB5,0x32,0xB7,0x31,0xB5,0xC1,0x69,0x2C,0xE9,0xF7,0xBC,0x96,0x12,0x39,0xD4,0xB5,0xFD,0xDA,0x9B,0x0F,0xD1,0x90,0xEE,0xF5,0xE4,0x17,0x02,0x45,0x28,0x77,0x11,0xD9,0x40,0x9E,0x45,0xDD,0x2B,0x33,0x71,0x7A,0xBA,0x0B,0x13,0x95,0x2D,0xF9,0xF9,0x7F};
|
||||||
|
//const uint8_t spTHOUSAND[] PROGMEM = {0x08,0x48,0xCC,0x0C,0x01,0x5D,0xA9,0x21,0x60,0x2A,0x33,0x04,0x4C,0x65,0x4A,0x80,0xE9,0x52,0x57,0xDD,0x84,0x7B,0x98,0x36,0x3E,0x75,0x13,0x19,0xE1,0xB4,0xE5,0x54,0x55,0x76,0x86,0xCB,0x9A,0x53,0x15,0xDB,0x99,0xAA,0x6B,0x4E,0x51,0x42,0x67,0x8A,0x2E,0x39,0x59,0x0A,0x9D,0xA1,0xB6,0x64,0x64,0x31,0x4F,0xBA,0xDA,0x93,0x55,0x44,0xB7,0xE9,0x2A,0x9B,0x57,0x95,0xF9,0xBA,0xAB,0x74,0x69,0x75,0x62,0x13,0x2A,0xB2,0xB9,0xF5,0x87,0x8B,0x87,0x8B,0x36,0x07,0x3C,0x82,0x1E,0x81,0x32,0xFD,0xEE,0x1A,0xC6,0x52,0xD7,0x3A,0x49,0xBA,0x99,0x6C,0x39,0x7B,0xA7,0xE9,0x1A,0xB2,0xA5,0xED,0x43,0x55,0x88,0xE1,0x97,0xF2,0x74,0x59,0x21,0xC6,0xAF,0xCB,0x33,0x1C,0x99,0xBB,0xC5,0x2D,0xD7,0xB0,0x24,0xE1,0x1A,0x2F,0x9C,0xCD,0xA0,0x85,0xBB,0x5D,0x77,0x16,0x89,0xD1,0x26,0xC9,0xCC,0x95,0x04,0x65,0xBB,0x25,0x25,0xB7,0x11,0x96,0x25,0xBD,0x3A,0x7D,0x53,0xAB,0xB9,0x69,0x1B,0xF3,0x35,0x67,0xA6,0x2A,0x5B,0xFE,0x1F};
|
||||||
|
//const uint8_t spMILLION[] PROGMEM = {0x69,0xCE,0x5C,0x74,0xD4,0x9A,0xF6,0xF1,0xF4,0x83,0x9B,0x98,0xF9,0xE2,0x53,0xB4,0x60,0xA6,0x6A,0x6B,0x4E,0xD6,0x43,0x9A,0x8A,0xAC,0x39,0x69,0x37,0xE5,0xA6,0xB2,0xE6,0xA4,0x4D,0xB9,0x25,0xCB,0x9A,0x93,0x4E,0x2D,0x62,0x65,0xE9,0x4E,0x36,0x55,0x3A,0x69,0xA4,0x5D,0x55,0xCF,0x8E,0x6A,0xBA,0x66,0xD5,0xCD,0x2B,0x99,0xE7,0x9A,0xD3,0x37,0xAF,0xEC,0x9E,0x6B,0xCE,0xD4,0x4C,0x8A,0x79,0xAC,0x1A,0x7B,0x93,0xA9,0xE1,0xF1,0x69,0x5C,0x95,0x95,0x7A,0xD8,0xC2,0x76,0x35,0x83,0xE1,0xEE,0x6E,0xD2,0xD5,0x2D,0xBA,0x79,0x64,0x09,0xD7,0x48,0xE8,0x1C,0x9A,0x26,0x5D,0xCD,0xA0,0x47,0x84,0x9B,0xF4,0x34,0x8D,0xAE,0x1E,0x59,0xFE,0x1F};
|
||||||
|
//const uint8_t spPATH[] PROGMEM = {0x08,0x48,0xCC,0x0C,0x03,0xA9,0xAE,0x51,0x2D,0xAD,0x22,0xAF,0xA6,0x24,0xD3,0x8A,0x9C,0xB2,0xBA,0xEA,0x52,0xA2,0x6D,0xF6,0xEA,0xAA,0x4F,0x89,0xB2,0xDB,0x6B,0x68,0xAE,0xC5,0x4B,0x1F,0xAF,0xA5,0xFA,0x96,0x48,0x9B,0x3D,0xB6,0x12,0x52,0xCB,0x63,0xF6,0x38,0x4B,0x28,0x2D,0xF7,0xD9,0xED,0x29,0x29,0xAC,0xA4,0x96,0xA4,0x37,0x07,0x8F,0xE6,0xAE,0x6C,0xFE,0xDC,0x2C,0x42,0xA2,0x2E,0x02,0x92,0x72,0x65,0x40,0x33,0x69,0x0C,0x18,0x2E,0x8D,0x00,0xC3,0x56,0x50,0x80,0x00,0xD3,0xA5,0x23,0xA0,0xD9,0xB2,0xFF,0x07};
|
||||||
|
//const uint8_t spNEGATIVE[] PROGMEM = {0x66,0x88,0x82,0x3A,0xDD,0xE3,0x84,0x31,0x4B,0x6C,0x0F,0x4F,0x9C,0x86,0xAA,0xA0,0x3D,0xB5,0xF1,0xEA,0xBA,0x33,0x71,0xB5,0x59,0xAB,0x1A,0x36,0x55,0x43,0x57,0xAF,0x72,0xF8,0x52,0x4D,0xDD,0xB2,0xF2,0x91,0x92,0x34,0x64,0x75,0xA9,0x9B,0x31,0x8A,0x94,0x4A,0xA3,0x1E,0x3E,0x41,0x4A,0x56,0xAF,0xB6,0x59,0xC3,0x08,0x5F,0xBD,0xBA,0x6A,0x9C,0xD3,0x7C,0x95,0x9A,0x9D,0xF2,0x28,0x8F,0x06,0x68,0x19,0x4C,0xD8,0xCC,0x6C,0x39,0x60,0x28,0x93,0x00,0x5C,0x19,0xD6,0xCA,0x6A,0x9D,0x5C,0x6B,0xD1,0x18,0x8A,0x31,0xC9,0xA8,0x45,0x63,0xCB,0x3A,0x38,0x2B,0x17,0x95,0xA7,0x04,0x95,0xD0,0x99,0x5D,0x9E,0xE2,0x55,0x43,0xE7,0x75,0x79,0xB3,0x35,0x0D,0xCF,0x55,0xEE,0xCB,0x5E,0x2D,0x38,0x36,0x89,0x3F,0x07,0x33,0x63,0xE9,0x82,0x80,0x60,0x35,0x08,0x50,0x5D,0x2A,0x02,0xAA,0x4D,0xFB,0x7F};
|
||||||
|
//const uint8_t spPOINT[] PROGMEM = {0x0A,0xC8,0x2E,0x8C,0x01,0xD1,0x85,0x95,0x34,0x8B,0xAA,0x74,0x56,0xBD,0xCA,0xE8,0xA6,0xCA,0x29,0xCB,0x2A,0x92,0xEE,0xCA,0xA4,0x36,0x2B,0x2F,0xAA,0x3C,0x43,0x9A,0xAC,0xBC,0x78,0xF3,0xD0,0x68,0xD4,0xB2,0x6A,0x45,0x4A,0x2A,0xA6,0xC9,0x93,0xC4,0x29,0x09,0xC7,0x24,0x8D,0xB1,0xD3,0xCD,0x08,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0xE0,0x80,0x63,0xC2,0x14,0x70,0x94,0x19,0x01,0xA6,0x32,0xFB,0x7F};
|
||||||
|
//const uint8_t spAFFIRMATIVE[] PROGMEM = {0xA5,0x4F,0x7A,0xD3,0x3C,0x5A,0x8F,0xAE,0xC8,0xA9,0x70,0xED,0xBD,0xBA,0x2A,0x3B,0xC3,0xD9,0x8F,0x00,0x6C,0x4A,0x21,0x40,0xD3,0xCA,0x08,0x18,0xC2,0x04,0x01,0xC3,0x86,0x11,0x60,0xDA,0x4C,0x05,0x54,0x53,0xDA,0x9C,0x58,0x16,0xED,0xC8,0xEB,0x88,0xE2,0x4C,0xEC,0xC1,0x36,0x23,0xC8,0x65,0xD1,0x17,0xBA,0xB4,0x20,0xE5,0xE4,0x6A,0x8A,0x53,0xA2,0xAC,0x0B,0x73,0x38,0xC9,0xC8,0xB2,0x68,0xCE,0x92,0x24,0x33,0x5B,0x45,0xB1,0xA9,0x11,0xB6,0x6A,0x75,0x4D,0x96,0x98,0xC7,0xAA,0xD6,0x37,0x91,0xEC,0x12,0xAF,0xC8,0xD1,0xB1,0x88,0x97,0x25,0x76,0xC0,0x96,0x22,0x01,0xF8,0x2E,0x2C,0x01,0x53,0x99,0xAD,0xA1,0x7A,0x13,0xF5,0x7A,0xBD,0xE6,0xAE,0x43,0xD4,0x7D,0xCF,0xBA,0xBA,0x0E,0x51,0xF7,0xDD,0xED,0x6A,0xB6,0x94,0xDC,0xF7,0xB4,0xB7,0x5A,0x57,0x09,0xDF,0x9D,0xBE,0x62,0xDC,0xD4,0x75,0xB7,0xFB,0xAA,0x55,0x33,0xE7,0x3E,0xE2,0x2B,0xDC,0x5D,0x35,0xFC,0x98,0xAF,0x79,0x0F,0x0F,0x56,0x6D,0xBE,0xE1,0xA6,0xAA,0x42,0xCE,0xFF,0x03};
|
||||||
|
//const uint8_t spTIMES[] PROGMEM = {0x06,0x18,0xD2,0xCD,0x01,0x9B,0xAB,0x69,0x60,0x15,0xD5,0x74,0x44,0xF2,0x9A,0x55,0x15,0x3B,0xEE,0x29,0x4B,0x76,0xB5,0xEA,0xE2,0xC7,0xBD,0x64,0xC9,0xAA,0x4B,0x18,0xF3,0x94,0x25,0xAB,0x2B,0x61,0xCC,0x53,0x96,0xAE,0xA9,0xC6,0x56,0x4F,0x59,0x32,0xA6,0x9A,0x5D,0x23,0x7C,0xCE,0x58,0x6B,0x54,0x0B,0xCF,0xC9,0x6D,0xAF,0xDE,0x24,0x2A,0x26,0x95,0xBD,0x49,0x61,0x0F,0x8D,0x97,0x8F,0x74,0x56,0x29,0xEC,0x6E,0x55,0xF3,0x69,0x8E,0x26,0x44,0xCC,0xAD,0xAA,0x39,0x9A,0x14,0x71,0x93,0x6A,0xE6,0xAC,0x86,0xCD,0xD5,0xE2,0xA6,0xEB,0x92,0x10,0x71,0xC9,0x9B,0xAE,0x8B,0xD8,0xCD,0xC3,0x4D,0xBE,0xD3,0xFD,0x7D,0x84,0x09,0x33,0x53,0xC0,0xF7,0x48,0x0A,0xD8,0x90,0xF3,0xFF,0x01};
|
||||||
|
//const uint8_t spDIVIDED[] PROGMEM = {0x0A,0x28,0x30,0x6C,0x2C,0x43,0xAA,0x8B,0x64,0xA4,0xD3,0x0F,0xE5,0x22,0x26,0x5B,0x4E,0xD7,0x8C,0xAB,0x98,0x6D,0x39,0x7D,0xD3,0x66,0x1A,0xDC,0xA5,0x4D,0x85,0x99,0xA9,0x71,0x96,0x36,0x57,0xA5,0x6A,0x62,0x71,0x4E,0x5B,0x64,0xA5,0x07,0xA5,0x59,0x55,0x72,0x95,0x61,0xBC,0xF9,0xA4,0xD9,0x95,0xA7,0xC9,0xE6,0x11,0x95,0x90,0x56,0x62,0xAB,0x5B,0x5A,0xA2,0x6B,0x4A,0xCE,0x2E,0x59,0x73,0x2E,0xC1,0xB9,0xBA,0xB5,0x09,0x9B,0x45,0x54,0xEB,0x36,0x54,0xAD,0x14,0xBC,0x73,0xDA,0xD4,0x8C,0x51,0x48,0x2F,0x6E,0x4B,0x53,0x4E,0xAE,0xB9,0x9A,0x1D,0x8E,0x64,0xA6,0x45,0xA3,0xFF,0x07};
|
||||||
|
//const uint8_t spBY[] PROGMEM = {0xEC,0x10,0x32,0x23,0xC5,0x3B,0xAF,0xBD,0x69,0x8D,0x72,0xEA,0x72,0xFA,0x2A,0xAB,0xC3,0x68,0xCB,0xE9,0xB3,0x99,0x0C,0x95,0xCD,0xA7,0x4B,0xB1,0x33,0xD4,0x96,0x9C,0x2E,0xFB,0x8D,0x50,0x5B,0x73,0xBA,0x1C,0xD6,0xC2,0x62,0xC9,0xE9,0x53,0x69,0x4B,0x8B,0x39,0x67,0xCA,0xB9,0x2C,0x35,0xE7,0xAC,0x39,0x97,0xF4,0xD4,0x9C,0xB3,0xF6,0x92,0x3C,0x4B,0x72,0xCE,0xD8,0x4B,0xB4,0x28,0xCD,0x29,0xEB,0xA8,0xD9,0xAD,0x34,0x96,0xB4,0xAB,0x56,0xF5,0xD0,0x9E,0x33,0xAE,0x56,0xD4,0xC2,0x7B,0x4D,0xBB,0x5B,0x34,0x89,0xE8,0x35,0xE5,0xE9,0xDD,0x4D,0xD5,0xD7,0xD4,0xEF,0xFF,0x01};
|
||||||
|
//const uint8_t spHOURS[] PROGMEM = {0x63,0xC9,0x66,0xA2,0xCC,0x57,0x9F,0xB1,0xF1,0xCE,0x6E,0xEE,0x72,0xBB,0xD3,0x24,0x3B,0x99,0x49,0x79,0x6E,0x35,0x2A,0x1F,0x27,0xBD,0xC8,0x4B,0x69,0x4D,0xDA,0xB0,0x54,0x2E,0x65,0xB0,0x65,0x34,0x43,0xF8,0x96,0x31,0x75,0xA5,0x6E,0xEA,0x53,0xD7,0x7C,0xA4,0x27,0xD7,0x00,0x6F,0xD7,0x1B,0x1F,0xFF,0xB8,0xB7,0x26,0x16,0x49,0xEB,0xE6,0x5F,0xF7,0x56,0x2B,0x62,0xEA,0xEB,0xDC,0xDB,0x83,0xB2,0x9A,0x74,0x73,0xEF,0x76,0x9E,0xC4,0xAA,0xDE,0x7D,0xBF,0x87,0xA6,0xA0,0x52,0x06,0x7C,0x4B,0x24,0x01,0x09,0x70,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spPLUS[] PROGMEM = {0x0A,0xC8,0x2A,0x54,0x01,0xCD,0xA1,0xA6,0x22,0x09,0x1B,0x57,0x57,0x35,0xF2,0x2C,0x7C,0x93,0x35,0xF3,0x2A,0x2B,0xD9,0x51,0xD3,0x2D,0xAB,0xCC,0xFC,0x4B,0xC3,0x37,0xAF,0x32,0xC9,0xB7,0x72,0x5F,0x39,0xCA,0xE8,0xD3,0x9B,0x7B,0x72,0xA9,0xBE,0xE4,0x48,0x32,0x27,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0E,0x30,0xE0,0xB7,0xD4,0xFF,0x07};
|
||||||
|
//const uint8_t spMINUS[] PROGMEM = {0x6A,0xCE,0x8C,0xF4,0xD4,0x93,0x86,0xA5,0x49,0xE2,0x31,0x73,0x1B,0x96,0x26,0x48,0xC6,0x25,0x59,0x9A,0x1B,0x67,0xEC,0xD4,0x34,0x69,0xEA,0x16,0x31,0x33,0x92,0x9C,0xA1,0x88,0xEC,0x08,0xEA,0x72,0xBA,0x2A,0xA6,0x2D,0xB4,0xCB,0xC9,0xBA,0x19,0xB5,0xD4,0x35,0x27,0xEB,0xA9,0x29,0xCC,0x67,0x9F,0xAC,0x65,0xE7,0xE0,0x9E,0x32,0xAA,0x11,0xD1,0xCD,0xC3,0x4D,0x6B,0x7B,0xA0,0x54,0xF5,0x4C,0x67,0x68,0xA1,0xC4,0xC4,0x17,0x8F,0xA5,0x46,0x37,0x97,0x5E,0xD2,0xAE,0x12,0xDD,0x5D,0x7A,0x89,0xBB,0x72,0x72,0xF5,0xD8,0xD9,0x02,0xA8,0xB2,0x58,0x01,0xDF,0x9B,0x09,0xE0,0xB7,0x74,0x01,0xFC,0xE6,0xA9,0x80,0x9F,0x52,0x05,0xF0,0x67,0xFB,0xFF,0x03};
|
||||||
|
//const uint8_t spEQUALS[] PROGMEM = {0x6D,0x18,0x49,0x91,0xBC,0x17,0xEF,0x6E,0x15,0xA3,0x15,0xA2,0xE5,0x93,0x9D,0xB5,0x7C,0x6C,0x07,0xB6,0x7C,0x1C,0xF2,0x11,0x19,0xAC,0xB2,0x0E,0x02,0x45,0x28,0x77,0x11,0xD9,0x00,0x04,0xF0,0xA3,0x88,0x01,0xBE,0x65,0xB4,0x36,0xC8,0x8D,0x08,0xF4,0x33,0xBB,0x39,0xB4,0xB5,0xE2,0xAE,0x0E,0xF2,0xDB,0xD7,0xBA,0xA7,0x23,0xD3,0xEA,0x0E,0xF0,0x9B,0x8E,0xC8,0xAE,0x92,0x24,0x77,0x38,0x33,0xF8,0x68,0xE6,0xD6,0xF1,0x4C,0xD7,0x25,0x21,0xE2,0x92,0x37,0x5D,0x17,0xB1,0x9B,0x87,0x9B,0x7C,0xB7,0xFB,0xFB,0x08,0x13,0x66,0xA6,0x80,0xEF,0x91,0x14,0xB0,0x21,0xE7,0xFF,0x03};
|
||||||
|
//const uint8_t spRED[] PROGMEM = {0x64,0x94,0x76,0xD2,0x24,0xD2,0xA8,0x45,0x97,0x94,0x72,0x95,0xAB,0x26,0x51,0x9B,0x32,0xCC,0x89,0x9A,0x64,0x0B,0xCE,0x34,0x67,0x61,0xF4,0x4D,0xA4,0x43,0x9C,0x8F,0x3E,0x0F,0xB6,0xB0,0x70,0xBF,0xBA,0x12,0x53,0xC2,0xAD,0xFB,0xEA,0x9A,0x19,0xD1,0xB4,0x2E,0xAB,0xEF,0x76,0x59,0xC2,0x76,0xAF,0xA1,0xAB,0x61,0x29,0xDF,0xB5,0x86,0xA1,0x86,0x35,0xFC,0xD3,0xEA,0x27,0x1F,0x96,0xB0,0x4F,0xA2,0x33,0xAC,0x7D,0x4C,0x43,0x89,0x5E,0xCA,0x8C,0x11,0x0F,0x5D,0xBA,0xC9,0x44,0x25,0x2C,0x49,0x69,0x9A,0x48,0x16,0xCF,0x47,0xAD,0xAD,0xD6,0x45,0xB5,0x66,0x99,0xA6,0x26,0x67,0x86,0x9C,0xAC,0xDA,0x96,0x92,0x99,0x2C,0xF2,0xFF,0x03};
|
||||||
|
//const uint8_t spYELLOW[] PROGMEM = {0x69,0xBD,0x56,0x15,0xAC,0x67,0xE5,0xA5,0xCC,0x2B,0x8E,0x82,0xD8,0xD6,0x39,0x9E,0xAE,0x85,0x50,0x37,0x5F,0x7D,0xEB,0x53,0x55,0x1B,0xDE,0xA6,0x6B,0x56,0x5D,0x74,0x47,0x2B,0x77,0x6E,0x75,0x87,0x59,0x95,0xA4,0x76,0x76,0x6B,0xCE,0xA2,0xB3,0x4C,0xF2,0xCF,0xBD,0xED,0xC9,0x54,0xB6,0x52,0x9F,0x7E,0xA5,0xDB,0xC7,0xCA,0x46,0x5D,0x13,0xEF,0xF8,0x84,0x37,0xA8,0xA9,0x0C,0xF2,0xE3,0xBE,0x24,0xC6,0x2B,0x48,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spGREEN[] PROGMEM = {0x64,0xD5,0xA2,0x22,0x23,0xAC,0xB0,0x4D,0xF1,0xCA,0x2C,0x55,0x1A,0xF6,0x6C,0x3F,0x24,0xC4,0x72,0x19,0xB2,0xCA,0xA0,0x62,0x67,0xAD,0x8B,0x49,0xCD,0x53,0xDC,0x8D,0x3A,0x55,0x0E,0x4D,0xB5,0x3F,0xAA,0xD2,0x38,0x5C,0xBD,0xFD,0xAA,0x5A,0x51,0x76,0xB7,0x2D,0xA3,0xEE,0xC5,0xD1,0xD2,0x6F,0xAD,0x66,0x78,0x43,0xDB,0x28,0x35,0xDA,0x61,0x15,0xED,0x22,0x4C,0x6B,0x87,0x15,0x8A,0x73,0xB3,0xAD,0xEB,0x52,0xB9,0x4E,0xAD,0xB6,0xAE,0x29,0xB2,0x09,0x0B,0x5B,0xDA,0xA6,0xB1,0xCA,0xDC,0x69,0x69,0xAB,0xC2,0x0A,0x73,0xD5,0xA5,0x6D,0x9A,0xD5,0x3D,0x12,0x95,0xB6,0x7A,0x15,0xB7,0x8A,0x58,0xDA,0xE2,0x54,0x32,0x42,0x62,0x69,0x8A,0x13,0x35,0xCD,0x48,0xFF,0x0F};
|
||||||
|
//const uint8_t spWHITE[] PROGMEM = {0xAE,0x32,0xFE,0x93,0xC3,0x94,0xF9,0xBA,0x34,0xDE,0x5F,0x71,0xB3,0xB6,0xD5,0x46,0x77,0xA1,0x4D,0x5D,0xD6,0x50,0xD4,0xBA,0x8C,0x6C,0x5E,0x63,0xD3,0xAD,0x32,0xBA,0xBA,0xCC,0x3D,0x38,0x71,0xF9,0xE2,0xBA,0x84,0x75,0x24,0x65,0xAA,0x5C,0x82,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x28,0x60,0x48,0x37,0x06,0x6C,0xAE,0x86,0xC0,0x29,0x4A,0x55,0xA8,0xC6,0xFF,0x03};
|
||||||
|
//const uint8_t spTHEE[] PROGMEM = {0x08,0x20,0xBA,0x0D,0x03,0x6D,0x3E,0x2C,0x55,0x45,0xB3,0x8C,0xBE,0x05,0x65,0xD5,0x78,0x32,0xDA,0xEE,0x85,0x34,0xF2,0xF6,0xE8,0x86,0x33,0xE0,0xCA,0xC7,0xAD,0x9B,0xCE,0x81,0xBB,0x66,0xB7,0x61,0x06,0x07,0xEE,0x9C,0xD5,0xC6,0xA9,0x1D,0x65,0x72,0xD1,0xFF,0x03};
|
||||||
|
//const uint8_t spTHE[] PROGMEM = {0x08,0x20,0xBA,0x0D,0x03,0x69,0xDF,0xA8,0xCD,0x85,0x3B,0xD7,0x79,0xF4,0x59,0xB7,0xA9,0xFA,0xA2,0xD5,0x27,0xD9,0x6E,0x11,0x8B,0xC6,0x90,0xB4,0x47,0xA8,0x6D,0xFA,0x7F};
|
||||||
|
//const uint8_t spANSWER[] PROGMEM = {0x63,0x6E,0x3E,0xC5,0xC7,0x17,0xEF,0x79,0x8D,0x3D,0xB4,0x68,0xD9,0x9B,0x35,0x0C,0x3F,0x62,0x69,0xAB,0x57,0xD7,0x7C,0x71,0xB8,0x2F,0x59,0x75,0x0D,0xE6,0x4E,0x5D,0xA7,0x55,0xCD,0x60,0x6A,0xB8,0xEB,0x52,0x55,0x89,0x15,0xE1,0x6E,0x6A,0x95,0xAA,0x09,0xC9,0x22,0x2C,0x8B,0x03,0x7E,0x1D,0x75,0xC0,0x6F,0xA5,0x0E,0xF8,0xAB,0xC5,0x01,0x2F,0xBA,0xAF,0xB1,0x89,0x54,0x4E,0xEF,0xBA,0xC6,0x26,0x5B,0x69,0x3C,0xDB,0x58,0xAB,0x1F,0xA6,0x95,0x6C,0x63,0x2F,0x79,0x88,0x97,0xB3,0x96,0xA3,0xD4,0x46,0x5E,0xEA,0x56,0xCE,0xD2,0x0A,0xAD,0xB9,0xCB,0xFF,0x03};
|
||||||
|
//const uint8_t spIS[] PROGMEM = {0xA3,0xED,0xC6,0x30,0x3D,0x57,0xAD,0x7E,0xA8,0x42,0xA9,0x5C,0xB5,0xFA,0xA9,0x8A,0xB8,0x62,0xF3,0xEA,0x86,0x48,0xE6,0x8A,0x57,0xAB,0xEB,0x22,0x58,0x23,0x5E,0xAF,0xAE,0xCA,0x64,0xF5,0x7C,0x3C,0xBA,0xCA,0x93,0xD5,0xE3,0x76,0xEB,0x3B,0x4E,0x55,0xB3,0x4D,0x65,0xB8,0x58,0x5D,0xDD,0x72,0x97,0xE9,0x1B,0x55,0x27,0x4D,0xD3,0xE6,0x85,0xD5,0x4D,0x3D,0x6B,0xF9,0x5F,0x50,0x1B,0x26,0x27,0x0A,0xF8,0xAD,0x54,0x01,0xBF,0xBA,0x0B,0xE0,0xA7,0xF4,0xFF,0x07};
|
||||||
|
//const uint8_t spSTART[] PROGMEM = {0x02,0xF8,0x49,0xCC,0x00,0xBF,0x87,0x3B,0xE0,0xB7,0x60,0x03,0xFC,0x9A,0xAA,0x80,0x3F,0x92,0x11,0x30,0x29,0x9A,0x02,0x86,0x34,0x5F,0x65,0x13,0x69,0xE2,0xDA,0x65,0x35,0x59,0x8F,0x49,0x59,0x97,0xD5,0x65,0x7D,0x29,0xA5,0xDE,0x56,0x97,0xF5,0x85,0x8E,0xE4,0x5D,0x6D,0x0E,0x23,0x39,0xDC,0x79,0xD4,0xA5,0x35,0x75,0x72,0xEF,0x51,0x95,0xE9,0x38,0xE6,0xB9,0x4B,0x5D,0x1A,0x26,0x6B,0x3B,0x46,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x40,0x01,0x43,0xBA,0x31,0x60,0x73,0x35,0x04,0x4E,0x51,0xAA,0x42,0x35,0xFE,0x1F};
|
||||||
|
//const uint8_t spSTOP[] PROGMEM = {0x08,0xF8,0x91,0x55,0x00,0x3F,0x09,0x1B,0xE0,0x9B,0x48,0x03,0xFC,0xE0,0x6E,0x80,0xEF,0xDC,0x1D,0xF0,0x83,0x1B,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x60,0x80,0xA7,0x4C,0x47,0x5C,0x4D,0xA9,0xA6,0xAE,0xD9,0xE9,0x4A,0xAB,0xAA,0xF0,0xE4,0x2D,0x23,0xCB,0x76,0x2B,0x83,0x37,0xCF,0x6C,0xA4,0xC9,0x5F,0xB8,0xEB,0xEA,0x91,0xC4,0x3C,0x91,0x6A,0x8B,0x53,0x1C,0x4A,0xA4,0xA9,0xD7,0x42,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x80,0x00,0xCE,0x85,0x08,0x20,0x27,0xF7,0xFF,0x07};
|
||||||
|
//const uint8_t spREADY[] PROGMEM = {0x6A,0xB4,0xD9,0x25,0x4A,0xE5,0xDB,0xD9,0x8D,0xB1,0xB2,0x45,0x9A,0xF6,0xD8,0x9F,0xAE,0x26,0xD7,0x30,0xED,0x72,0xDA,0x9E,0xCD,0x9C,0x6D,0xC9,0x6D,0x76,0xED,0xFA,0xE1,0x93,0x8D,0xAD,0x51,0x1F,0xC7,0xD8,0x13,0x8B,0x5A,0x3F,0x99,0x4B,0x39,0x7A,0x13,0xE2,0xE8,0x3B,0xF5,0xCA,0x77,0x7E,0xC2,0xDB,0x2B,0x8A,0xC7,0xD6,0xFA,0x7F,};
|
||||||
|
//const uint8_t spTEMPERATURE[] PROGMEM = {0x0A,0x38,0xDE,0x32,0x00,0x2F,0xBB,0x37,0xBF,0x59,0x57,0x76,0x6F,0xB8,0xB2,0x16,0xCA,0xC4,0x75,0xCB,0x4A,0xAB,0x4A,0xF3,0xF6,0xCD,0x2B,0x2D,0x66,0x94,0xD7,0xBA,0xB4,0x34,0x79,0x93,0x52,0x97,0x16,0xB2,0x28,0x5B,0x4D,0x43,0x36,0x10,0x20,0xAB,0xB2,0x52,0xC4,0x26,0x9A,0x26,0x49,0x47,0x9B,0x1B,0xA5,0xA6,0x74,0x5D,0x43,0xF1,0x65,0x14,0x91,0xAD,0xED,0xB5,0x99,0xB1,0x69,0x1A,0x20,0xC0,0x0A,0x84,0x0E,0xD8,0xD3,0x23,0x01,0xA3,0x4C,0x1A,0xA0,0xF5,0xC9,0xD6,0x95,0xE0,0x24,0x1D,0xD9,0x5A,0x9B,0x9C,0x8B,0xAE,0x79,0x2B,0x43,0xAC,0xA6,0xDE,0x9C,0x35,0x9D,0xB1,0xB3,0x47,0x52,0xD7,0x74,0xC6,0x2E,0x52,0xA1,0x5E,0xC2,0x1D,0x3B,0xEB,0xB8,0x65,0x0D,0x5F,0xAA,0x26,0xB6,0xE2,0x35,0x7C,0xA9,0x2A,0xFB,0x6A,0x16,0xF7,0xE7,0x9E,0x4C,0xEB,0xD9,0xFE,0x1F};
|
||||||
|
//const uint8_t spTIME[] PROGMEM = {0x0E,0x18,0xA2,0x34,0x00,0x4B,0x0E,0x2B,0x20,0x5B,0xB7,0x51,0xA4,0x94,0x5A,0xAE,0xA5,0x56,0x99,0x4B,0x6B,0xBA,0xCC,0x5D,0x75,0x8E,0x63,0xD6,0x32,0x67,0x35,0x39,0x8F,0x5A,0xEB,0x9C,0x35,0x16,0xBF,0x26,0x2D,0x4B,0xD6,0x58,0xED,0x39,0x8D,0xAE,0x59,0x47,0xD3,0x1B,0xDC,0xD2,0x66,0x9C,0x5D,0xB6,0xC9,0xE8,0xEA,0x76,0x37,0x9F,0x62,0x6D,0x8B,0xCB,0xD3,0x42,0x88,0x8C,0x2D,0x2A,0x6F,0x8B,0x6A,0x1E,0x36,0xA5,0x7C,0xD5,0xB1,0xBB,0x78,0xE2,0xF2,0x56,0x4B,0x6E,0xEA,0x4E,0xCA,0x5B,0x3D,0x87,0xA8,0x39,0x09,0x6F,0x75,0xE2,0xA6,0x6A,0xF7,0xFF,0x01};
|
||||||
|
//const uint8_t spA_M[] PROGMEM = {0x6B,0xE8,0xC9,0x44,0x22,0xD7,0xEC,0xE1,0xB4,0x23,0x3B,0xA9,0xE5,0x9A,0x53,0xF5,0x64,0x64,0x59,0x6B,0x4F,0x35,0xB2,0x91,0x45,0x3D,0x39,0xF5,0xC8,0x86,0x1A,0xF9,0xE4,0xF4,0xA3,0x19,0xA9,0xE7,0x92,0xD3,0x8D,0x22,0x64,0xD9,0x4B,0xC6,0x3A,0x8A,0xA1,0x74,0x3D,0x69,0xFB,0xAC,0x89,0xE4,0xF9,0xA4,0x0C,0x3D,0x89,0x6A,0xE5,0xE2,0x33,0xF6,0x2A,0xE2,0xD1,0xAB,0x4F,0xD7,0xAB,0xB3,0x46,0xAE,0x3E,0x75,0x6F,0x66,0x6A,0xB9,0xE6,0xD4,0xAD,0x9A,0xBA,0xE6,0x92,0xD3,0xB6,0xA2,0xEE,0x5A,0x73,0x4E,0x57,0x93,0xBB,0x9B,0x2D,0x39,0x43,0x89,0xE9,0x6E,0xB6,0x64,0x4D,0xC5,0x5B,0x04,0xB9,0xDC,0xB1,0x34,0x2D,0x16,0x64,0x76,0xDB,0x5E,0x95,0x78,0xA0,0xC9,0x2D,0x7B,0xD3,0xE2,0x41,0x26,0xB7,0x9C,0xCD,0x70,0x1A,0x85,0x92,0x74,0x56,0xA5,0x91,0x68,0x4A,0xD2,0xD5,0x0C,0xA5,0x89,0x29,0x49,0x57,0x33,0x1C,0xC9,0x2A,0x27,0xDD,0xCD,0x71,0xAA,0xAA,0xE2,0xF4,0x34,0xCB,0x19,0x6C,0x72,0xD2,0x57,0x95,0x44,0x90,0xC9,0xFD,0x7F};
|
||||||
|
//const uint8_t spP_M[] PROGMEM = {0x0A,0xC8,0xDC,0x95,0x01,0xC6,0x90,0xB5,0xB4,0x19,0x41,0xCD,0x58,0xD2,0xD2,0xE6,0x51,0xA3,0x7B,0xF6,0xCA,0x46,0x25,0x92,0xAC,0x25,0xAB,0x98,0xCD,0x91,0x2C,0x57,0xAF,0x6A,0x56,0x43,0x8A,0xDA,0x3C,0xBA,0x59,0x0D,0x29,0x6B,0x55,0x9B,0x66,0x35,0xA4,0xAC,0x47,0x6D,0x99,0xD5,0x90,0xAA,0x1E,0xB7,0x75,0x66,0x43,0xEA,0xBA,0x35,0x86,0x9E,0x44,0xB5,0x72,0xF1,0x19,0x7B,0x15,0xF1,0xE8,0xD5,0xA7,0xEB,0xD5,0x59,0x23,0x57,0x9F,0xBA,0x37,0x33,0xB5,0x5C,0x73,0xEA,0x56,0x4D,0x5D,0x73,0xC9,0x69,0x5B,0x51,0x77,0xAD,0x39,0xA7,0xAB,0xC9,0xDD,0xCD,0x96,0x9C,0xA1,0xC4,0x74,0x37,0x5B,0xB2,0xA6,0xE2,0x2D,0x82,0x5C,0xEE,0x58,0x9A,0x16,0x0B,0x32,0xBB,0x6D,0xAF,0x4A,0x3C,0xD0,0xE4,0x96,0xBD,0x69,0xF1,0x20,0x93,0x5B,0xCE,0x66,0x38,0x8D,0x42,0x49,0x3A,0xAB,0xD2,0x48,0x34,0x25,0xE9,0x6A,0x86,0xD2,0xC4,0x94,0xA4,0xAB,0x19,0x8E,0x64,0x95,0x93,0xEE,0xE6,0x38,0x55,0x55,0x71,0xBA,0x9B,0xE5,0x0C,0x36,0x39,0xFF,0x0F};
|
||||||
|
//const uint8_t spOCLOCK[] PROGMEM = {0xAD,0x8C,0xBE,0x22,0xC5,0x56,0x8D,0xBE,0xC8,0xB1,0x74,0xE9,0x33,0xEA,0xCA,0xD7,0x38,0xB9,0x8F,0xA8,0x63,0x4A,0x14,0xEB,0xCE,0xA0,0x80,0xEC,0xA6,0x14,0xD0,0x94,0x87,0x00,0x06,0x8B,0x6A,0x59,0xE2,0x97,0x6E,0xEC,0x79,0x65,0x49,0x5F,0xA9,0xC9,0xEA,0x55,0x15,0x79,0xAD,0xCE,0x5B,0x56,0x9F,0xD5,0x15,0x87,0xAF,0x59,0x73,0x91,0x57,0x9C,0xBE,0x65,0xAC,0xD9,0x5C,0x4A,0xD8,0xE6,0x71,0xE4,0xB0,0xEE,0x61,0xAB,0xCA,0x93,0x4A,0x7A,0x5A,0x2E,0x42,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x40,0x00,0x75,0x0E,0x71,0x00,0x01,0xD1,0x11,0xFF,0x3F};
|
||||||
|
//const uint8_t spDEGREES[] PROGMEM = {0x0A,0x28,0x30,0x6C,0x74,0x53,0x25,0xB3,0x67,0xAC,0x95,0x0D,0x63,0x24,0x11,0x8B,0x57,0x31,0xBC,0xA1,0x54,0xAC,0x19,0xF5,0x70,0x06,0x3C,0xB6,0xC6,0x0D,0x91,0xA9,0xCE,0x52,0x28,0x36,0x32,0xDD,0x95,0x69,0xB2,0xF8,0xD8,0xBA,0x6C,0xDA,0x31,0x34,0x69,0xA9,0x53,0x30,0xE3,0x92,0x74,0xA9,0x2A,0x55,0x4D,0x92,0xD3,0x97,0xAA,0x46,0x13,0x2A,0x4D,0xBF,0xEA,0x1E,0x82,0xB1,0x74,0xEB,0xEA,0x86,0x09,0x82,0xF6,0x35,0x6B,0x18,0xCE,0x11,0x27,0x66,0x8D,0x69,0x38,0x47,0x9C,0x5C,0x3C,0x96,0xE9,0x1C,0xA1,0x73,0xF5,0xD8,0xA7,0x33,0xA4,0xCE,0xC5,0xE5,0x18,0x41,0x91,0x3B,0x1F,0xB7,0x73,0x04,0x25,0xAA,0x5C,0x53,0xDE,0x19,0x83,0x30,0x6C,0x6B,0x7A,0x87,0x77,0xE4,0x8C,0x3D,0xE5,0x1D,0xD1,0x50,0xCC,0xB7,0xA6,0x6F,0x38,0x27,0x76,0xDD,0x12,0xBE,0xA1,0x83,0x38,0x78,0xAF,0xF9,0x9A,0x0A,0x14,0xB7,0xCF,0xE9,0xBF,0x24,0x44,0x5C,0xF2,0xA6,0xFF,0x22,0x76,0xF3,0x70,0x93,0x7F,0x05,0x7C,0x8F,0xA4,0x01,0x01,0x6C,0xC8,0xC9,0x80,0x1F,0x3C,0xFE,0x1F};
|
||||||
|
//const uint8_t spCELCIUS[] PROGMEM = {0x08,0x68,0x48,0x94,0x00,0x37,0x30,0x0A,0xE0,0x0F,0x17,0x05,0xFC,0xEE,0x64,0x80,0xDF,0x8B,0x0D,0xF0,0x6F,0x89,0x01,0xDE,0x54,0x4D,0xCD,0xB7,0x5E,0xCA,0xE2,0x65,0x65,0x4D,0x87,0x99,0xD9,0x9A,0x95,0x57,0xD9,0x6E,0x61,0x6B,0x56,0x96,0xD5,0x84,0xA7,0xAC,0x5E,0x69,0x08,0x1B,0x6E,0xB6,0x79,0xC4,0xC1,0x6F,0x96,0x48,0xA7,0x96,0x44,0x7D,0x9E,0xC2,0x9D,0x5A,0xD6,0x51,0x45,0x18,0x7B,0x31,0xC0,0x63,0xC4,0x0E,0xF8,0xD5,0x24,0x00,0x7F,0xB8,0x07,0xE0,0x77,0xD5,0xD6,0x2D,0x11,0x4E,0x6A,0x59,0x5B,0x57,0xAD,0x70,0x44,0x3C,0x1E,0x43,0xD7,0x46,0xD6,0xF6,0x68,0x2C,0x55,0x2A,0xC7,0xC4,0xAA,0xB6,0x36,0x65,0x1C,0xE3,0x8F,0xC6,0xD6,0x55,0x88,0x96,0x2F,0x6E,0x47,0xB1,0x21,0x9E,0xF9,0x78,0x3C,0x55,0x96,0x46,0xF8,0xAA,0xF2,0x57,0x35,0xAC,0x91,0x8B,0xD2,0x5F,0x79,0x4B,0x4A,0xAE,0x66,0xC0,0x67,0xA4,0x0A,0xF8,0xC9,0xC4,0x00,0xAF,0x38,0x2B,0xE0,0x35,0x55,0x0E,0x30,0xE0,0xB5,0x92,0xFF,0x07};
|
||||||
|
//const uint8_t spFARENHEIT[] PROGMEM = {0x04,0xE8,0xDE,0x1D,0x01,0x4B,0xBB,0x12,0x60,0x7A,0x77,0x01,0x0C,0xED,0x36,0x8A,0xEA,0xDD,0xDC,0x64,0xCD,0x2A,0x6A,0x34,0x4F,0xAD,0x25,0xBB,0x5C,0x55,0xCB,0xE6,0x29,0xBD,0x64,0xD7,0xAB,0xA9,0xC5,0x3C,0xA4,0xEB,0x88,0x56,0x35,0xB6,0x74,0x57,0x97,0xBA,0xD8,0xD8,0xDC,0xDD,0x59,0xE9,0x73,0xE3,0x94,0x30,0x6F,0x6B,0x2C,0xC1,0x42,0xC3,0xBA,0xAE,0xBA,0x85,0x14,0xB7,0x9C,0x5D,0xCE,0x6E,0x49,0x53,0x3D,0x6E,0x3A,0x9B,0x46,0x29,0xF3,0x78,0x0C,0x28,0xAE,0x53,0x03,0x1A,0x58,0x5D,0xD5,0x93,0x19,0xB2,0x66,0xF5,0xC5,0x4C,0x64,0xC8,0x9A,0xB1,0xB6,0x58,0x96,0x66,0x4F,0xC6,0xD5,0x5C,0x8B,0xA7,0xBE,0x2E,0x57,0xB3,0xC9,0x59,0xF1,0x66,0xDC,0x3D,0xB7,0xB8,0xD9,0x9A,0x72,0xB7,0x22,0xA6,0xDE,0xB5,0xD3,0xD7,0x1A,0xB9,0xF4,0xCE,0x46,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x14,0x30,0x85,0xBA,0x00,0x9E,0xAF,0xF8,0x7F};
|
||||||
|
//const uint8_t spERROR[] PROGMEM = {0x6D,0x6C,0x6E,0x89,0x5B,0x36,0x8F,0xA9,0x9B,0x11,0x5A,0xE9,0x33,0xA7,0x31,0x17,0xB7,0x4A,0x47,0xFD,0xC6,0x92,0x9A,0x8B,0x2F,0x65,0x4B,0x6B,0x1C,0xE4,0xD5,0xD8,0x2D,0xAF,0x65,0x8D,0x83,0xAD,0x9A,0xB2,0x95,0x23,0x76,0x93,0x58,0xCA,0xD7,0xCE,0xEC,0x57,0xF8,0xD8,0x5B,0x3A,0x8B,0x3D,0xC5,0xE7,0x7C,0xE9,0xCD,0xBD,0x30,0x86,0xDA,0x86,0x2F,0x97,0x82,0x38,0xEC,0x13,0xFE,0xE4,0x07,0xED,0x35,0x4B,0xF8,0x73,0x4E,0xEC,0xD2,0x3C,0xEE,0x2F,0xCB,0xB9,0x9D,0x3B,0xFF,0x3F};
|
||||||
|
const uint8_t spMILES[] PROGMEM = {0xA5,0xA8,0x86,0xDA,0xD9,0xDC,0x8E,0xB2,0x1A,0xCD,0x22,0x53,0x32,0xEA,0x64,0xB3,0x92,0x43,0xC9,0xAA,0x63,0x69,0x77,0xD3,0xB9,0xA3,0x49,0xEE,0x42,0x5A,0x67,0xAF,0x36,0x9B,0x73,0x19,0x5D,0xBC,0xBA,0xA2,0xD7,0x65,0x64,0xF1,0xEA,0x8B,0x59,0xD3,0x96,0xC7,0x6B,0x28,0xA1,0xC5,0x4B,0x1F,0xB7,0xB1,0xEA,0x55,0x19,0x79,0xD5,0x96,0xE2,0x46,0xAC,0x65,0x51,0x59,0xB3,0x1F,0xB6,0xB1,0x47,0x6D,0x4D,0x6E,0x3C,0x5D,0x16,0xA5,0x2D,0xBA,0x89,0x52,0xD9,0xE8,0xB6,0xE0,0x36,0x4A,0x74,0x57,0xD8,0x83,0xE9,0x2A,0xE3,0xCE,0xE6,0x88,0x26,0x2B,0x59,0x5A,0x89,0x33,0x98,0xAC,0x44,0x4B,0x1D,0xAE,0x4B,0x42,0xC4,0x25,0x6F,0xB8,0x2F,0x62,0x37,0x0F,0x37,0xF1,0x56,0xC0,0xF7,0x48,0x02,0xD8,0x90,0xF3,0xFF,0x01};
|
||||||
|
const uint8_t spPER[] PROGMEM = {0x0A,0x28,0xC2,0x44,0x01,0xD1,0x88,0x2A,0x20,0x67,0xB7,0xD2,0x85,0xAA,0xDC,0x4D,0x6B,0x4E,0x9B,0xC3,0x30,0x1D,0x65,0x5B,0x6D,0xF1,0xC3,0x74,0x9C,0x6D,0x8C,0x25,0x0C,0xF1,0x71,0xB6,0xB1,0xE6,0x5A,0xA8,0x2B,0x59,0xCA,0x99,0xAA,0x63,0x9C,0x64,0x49,0x57,0x69,0x8D,0xB2,0xE2,0x25,0xDD,0xA5,0x25,0xEA,0x8A,0x97,0xF0,0xE4,0x21,0x54,0xA3,0x59,0xFE,0x1F};
|
||||||
|
const uint8_t spHOUR[] PROGMEM = {0xA5,0x8E,0x2D,0x23,0xA2,0xEA,0x9C,0xA3,0x98,0xC9,0x70,0x5B,0x72,0xC6,0xA2,0x36,0x23,0x74,0xCD,0x19,0x8A,0xDA,0x0C,0xD7,0x2D,0xA7,0xCB,0x7A,0x33,0x5D,0xB6,0x9C,0x36,0xDA,0xAD,0x72,0xEE,0x32,0x5A,0x9F,0xBA,0xD2,0xA9,0xF3,0xE8,0x5C,0x9C,0x8C,0x60,0x2F,0x63,0x70,0x79,0x3C,0x82,0xBD,0xCC,0x61,0x2C,0x31,0xA7,0x54,0x73,0x96,0xB1,0xA6,0xE6,0x1C,0x43,0x59,0xDA,0x9E,0x9A,0x53,0x2C,0x77,0x29,0x47,0xEE,0x46,0x31,0xDC,0x25,0x9D,0xB9,0x3A,0xFA,0x4A,0x96,0x74,0x15,0xDF,0x82,0x17,0xDA,0xC2,0x95,0xA7,0x60,0xAE,0x66,0xF9,0x7F};
|
||||||
|
//const uint8_t spMINUTES[] PROGMEM = {0x66,0x55,0xD2,0xA2,0xD3,0xEB,0xBA,0xD5,0x0B,0xB5,0x2A,0x4B,0x66,0x16,0xA7,0x38,0x2A,0x22,0x4D,0x9B,0xB2,0x32,0x35,0xF3,0x36,0xAB,0xAE,0x8E,0x42,0xB3,0xA6,0x9C,0xAA,0x58,0x76,0xCF,0x2E,0x7D,0x8A,0xEA,0xC5,0x2C,0x7A,0xCA,0xCA,0x9A,0xE3,0x54,0x8E,0x26,0xA3,0xE8,0x16,0xD3,0x4B,0x93,0xAC,0xBA,0x5B,0x36,0x17,0x5D,0x73,0xFA,0xE6,0x52,0xD4,0x62,0xF1,0x59,0xBA,0x49,0x31,0x8B,0xD5,0x63,0xAF,0xDE,0xC5,0xAC,0xDF,0x20,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0xC0,0x80,0xE9,0x24,0x04,0xB0,0xDC,0xAE,0x01,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x0A,0xF8,0xAD,0x54,0x03,0x0C,0xF8,0x2D,0x95,0x01,0xBF,0x94,0xFD,0x3F};
|
||||||
|
const uint8_t spGUSTING_TO[] PROGMEM = {0x0A,0x28,0xB9,0x65,0xEC,0x5D,0x8F,0xAA,0xB8,0xEB,0x55,0x16,0x1B,0x62,0x69,0x6B,0x56,0x55,0xD4,0x98,0xA7,0xAF,0x5E,0x75,0xB1,0x27,0xEE,0xB1,0xB9,0x34,0x9D,0x87,0x64,0x52,0x42,0x07,0xFC,0xC0,0xA2,0x80,0x7F,0x53,0x05,0xF0,0x47,0x09,0x02,0x6E,0x10,0x71,0xC0,0x61,0x6E,0xA3,0xAD,0xDA,0xC5,0xB5,0x56,0x8F,0xB6,0x1B,0x23,0xCD,0x58,0xDD,0xFA,0xEE,0x15,0x63,0xAD,0x52,0xEA,0x9B,0x45,0x6F,0x53,0xF9,0xA9,0x6F,0x9A,0xAC,0xDD,0xEC,0xA5,0xBE,0x6A,0x8C,0x49,0x97,0x67,0x86,0xA2,0xA0,0xCA,0x59,0x0B,0x59,0x0A,0x51,0x73,0xAF,0x34,0x01,0xD8,0x22,0x2C,0x00,0xC7,0x45,0x95,0xA1,0x1A,0x63,0xF1,0x58,0xD5,0xC6,0x6A,0x44,0x35,0x74,0x4D,0x9B,0x8A,0x30,0xB3,0x94,0x2D,0x65,0xCA,0xD4,0x3D,0x8B,0xD6,0xA4,0x29,0xE3,0x48,0x2B,0xDC,0x9C,0xA6,0x8C,0x22,0xA2,0x61,0x73,0x98,0x12,0xAA,0x92,0xA4,0xCD,0x69,0x4E,0xA4,0x43,0x9D,0xB6,0xA4,0x39,0xF2,0x36,0x57,0x5E,0x1D,0x96,0xC8,0x47,0x43,0x75,0x73,0x58,0x32,0x2D,0x2D,0xD5,0x5E,0xFF,0x0F};
|
||||||
|
//const uint8_t spGUST[] PROGMEM = {0x0A,0x28,0x30,0x6C,0x74,0xDD,0x8C,0x93,0x71,0x9B,0x55,0x55,0x5B,0x26,0x6A,0x6B,0x56,0x95,0x63,0xBA,0x59,0x2D,0x5E,0x55,0x0E,0xED,0x6E,0xB9,0x7A,0x54,0x29,0x8E,0x85,0xD6,0xA2,0xD1,0xA4,0xD8,0x16,0x56,0x8B,0x19,0x90,0x8D,0xB8,0x02,0x9E,0x32,0xD3,0x80,0x02,0xBE,0xB3,0xD0,0x80,0x01,0xBE,0x37,0x55,0xC0,0xCF,0x6E,0x04,0xF8,0x33,0x15,0x81,0x53,0x94,0xAA,0x50,0x0D,0x30,0xC0,0x90,0x6E,0x02,0xD8,0x5C,0x0D,0x81,0x53,0x94,0xAA,0x50,0x8D,0xFF,0x07};
|
||||||
|
//const uint8_t spEAST[] PROGMEM = {0xAD,0x9A,0xD1,0x10,0xAB,0xE7,0x8C,0x62,0x25,0x43,0x8C,0x5E,0x32,0xF2,0x99,0x04,0xA9,0x66,0xC9,0xC8,0x67,0x62,0xE4,0xEE,0x25,0xA3,0x98,0x59,0x90,0xB2,0xE7,0x8C,0x72,0x46,0x01,0xA9,0x9E,0x3D,0xFA,0x99,0x18,0xB5,0x7A,0x76,0x9B,0x87,0x25,0xF4,0xE9,0x59,0x65,0xED,0x8A,0xB0,0xAB,0x56,0x0A,0xE0,0x0F,0x13,0x03,0xFC,0xE8,0x66,0x80,0x9F,0xD3,0x0C,0xF0,0x67,0x99,0x05,0x0C,0xF0,0x93,0xBB,0x02,0x7E,0xA9,0x44,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x0C,0x30,0xA4,0x9B,0x02,0x36,0x57,0x43,0xE0,0x14,0xA5,0x2A,0x54,0xE3,0xFF,0x01};
|
||||||
|
//const uint8_t spWEST[] PROGMEM = {0x6C,0x65,0x7E,0xD3,0xCD,0x1C,0x8B,0x83,0xBA,0x4B,0x37,0xB3,0xC3,0x0E,0x56,0x36,0xD9,0xDD,0x61,0xD8,0x75,0x9C,0x34,0xA1,0xAE,0x6B,0x49,0x72,0xDC,0x83,0xD6,0xAE,0xAE,0xDA,0xD6,0x70,0x7E,0xB3,0xBA,0xEA,0x5C,0xCB,0xE3,0xCE,0x1A,0x9A,0x6B,0xF1,0xB0,0xC7,0x6B,0x6E,0xBA,0x39,0xD2,0x5E,0xB5,0xB3,0xDA,0xE4,0xF4,0x9C,0xED,0xDE,0x96,0xC3,0x83,0x22,0xB1,0x01,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x01,0xF8,0x2D,0xD5,0x01,0xBF,0x94,0x19,0xE0,0xE7,0x32,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x14,0x30,0xA4,0x1B,0x03,0x36,0x57,0xFB,0x7F};
|
||||||
|
//const uint8_t spSOUTH[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x4E,0x56,0xE5,0x24,0xA7,0xB6,0x3D,0x45,0x15,0x53,0x5A,0xBA,0xF5,0x54,0xD9,0x6D,0x58,0xEA,0xEA,0x55,0xA7,0xB8,0x6E,0xE5,0xAB,0xC7,0x98,0xEC,0x85,0x94,0xAD,0x6E,0x4B,0xB4,0x97,0x52,0xB6,0x2A,0x6C,0x31,0x6C,0x98,0xDB,0x46,0xF3,0xF8,0xB2,0x69,0xE6,0x1B,0xCD,0xE3,0x6A,0xBB,0xA9,0x2F,0x12,0xAF,0x4B,0xE3,0xC1,0xDE,0x89,0x01,0x43,0x54,0x72,0x80,0x03,0x14,0xA0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spNORTH[] PROGMEM = {0x6E,0x4A,0x9C,0x62,0x4A,0xEB,0x84,0xA5,0x08,0xD2,0x2E,0x69,0x92,0x96,0xAA,0x48,0x33,0xA5,0x69,0x9A,0x8B,0x24,0x8F,0x90,0xA6,0x63,0xAA,0xD6,0x42,0x9C,0xD7,0xAC,0x3E,0x1B,0xCB,0x52,0x5A,0xB2,0xDA,0xE8,0x3A,0xC3,0x68,0xCD,0xAA,0x42,0xDE,0xF0,0xE0,0x2C,0xAB,0x08,0x6D,0x35,0x83,0xB3,0x8C,0x32,0xD4,0xE1,0x2A,0xEA,0x33,0x86,0xD8,0x9B,0x3A,0x69,0xCF,0x58,0x73,0x6E,0xEA,0xA2,0xDC,0xE3,0xCC,0xD5,0x78,0x52,0x73,0xB5,0x33,0x37,0x93,0x48,0xD9,0x14,0xAE,0x52,0x5C,0x35,0x74,0x12,0x03,0x86,0xA8,0xE4,0x00,0x07,0x08,0x30,0xD4,0x04,0x01,0x1A,0x1F,0xFB,0x7F};
|
||||||
|
const uint8_t spNORTHEAST[] PROGMEM = {0x66,0x4E,0x92,0xBD,0x43,0x67,0xBB,0x35,0x4A,0xAA,0xF4,0x68,0x1C,0xD6,0xAC,0xB0,0x32,0x2C,0x71,0x59,0xB2,0x62,0x0B,0xB7,0xA6,0x63,0x4C,0x3A,0x2C,0x43,0x96,0xAE,0x21,0xE9,0x8A,0x0A,0x4E,0xBA,0x9A,0xE8,0xD6,0x33,0x25,0xDE,0xA8,0x62,0x6C,0xED,0xE2,0x78,0x2B,0x4D,0x61,0xB8,0x06,0xBB,0x8C,0x38,0x35,0x95,0x31,0x59,0xD9,0x92,0x32,0x85,0x8B,0xB5,0x75,0x2A,0xB6,0x5C,0x51,0x65,0x25,0x0C,0x18,0x6A,0x82,0x01,0xDD,0xAC,0xA6,0x78,0xEB,0x35,0x53,0x4C,0xBD,0xE2,0x61,0x1C,0xCD,0x6C,0xC9,0x48,0x86,0x31,0xE4,0x8E,0x27,0x2D,0x9D,0xCE,0x81,0x3A,0x1F,0xB7,0x6C,0xA6,0x00,0xAC,0x5A,0xDC,0xFA,0xE9,0x1D,0xA8,0x6B,0x76,0x99,0x67,0x51,0xE0,0xA8,0xD9,0x61,0x9D,0xD9,0x80,0xAA,0x1E,0x9B,0x6D,0x54,0x26,0xF6,0x5A,0xA2,0xF6,0xA1,0x8D,0xD4,0xBC,0xB5,0x01,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x01,0xF8,0x2D,0xD5,0x01,0xBF,0x94,0x19,0xE0,0xE7,0x32,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x40,0x01,0x4F,0xA9,0x31,0x60,0x73,0xB5,0xFF,0x07};
|
||||||
|
//const uint8_t spNORTHWEST[] PROGMEM = {0x2A,0x4D,0x9C,0x7D,0x4A,0xE2,0x84,0x35,0x49,0xCA,0x34,0xAB,0xDD,0xD6,0x6A,0xC5,0xD4,0xA5,0xC9,0x18,0x8B,0x4E,0x57,0xD7,0xAE,0x6B,0x48,0x7A,0xD2,0x92,0xBB,0xAE,0x2E,0x9A,0x4D,0x2B,0xF1,0xB6,0xEA,0x64,0xCE,0xB5,0xC5,0xEF,0x2A,0x53,0x5C,0xAE,0xD4,0x5C,0xAB,0xCA,0x35,0xA9,0x42,0x5B,0x29,0x60,0x88,0x4A,0x05,0x0C,0x35,0x21,0x80,0x6E,0x56,0x5D,0xEB,0xD4,0xB9,0x26,0xA7,0x76,0x9D,0x51,0x5F,0x1C,0x9C,0xA7,0x75,0x51,0x5E,0x71,0x52,0xDF,0x55,0x67,0x75,0x2E,0x45,0x9B,0x57,0x5D,0xEC,0x88,0x95,0xBE,0x5E,0x5D,0xB1,0xA1,0x6D,0x71,0x7B,0xAD,0xD5,0x87,0x96,0xE6,0xED,0x75,0x54,0x1B,0x5A,0x16,0xAB,0xDB,0x53,0x43,0x58,0x68,0x2C,0x16,0x7F,0xF2,0x61,0xD1,0xBB,0x49,0x01,0x99,0x37,0x3A,0xE0,0xBB,0x0E,0x07,0x7C,0xB7,0xE5,0x80,0xD7,0x3B,0x1D,0xF0,0xCA,0x24,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x0A,0x18,0xD2,0x8D,0x01,0x9B,0xAB,0x21,0x70,0x8A,0x52,0x15,0xAA,0xF1,0xFF};
|
||||||
|
//const uint8_t spSOUTHEAST[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x56,0x5D,0xF5,0x84,0xA5,0xAE,0x59,0x75,0x36,0x13,0x11,0xB6,0x7A,0x95,0xC9,0x6E,0x78,0xFA,0xEA,0x95,0xC5,0xDC,0x1E,0x16,0x93,0x5B,0x1A,0x6A,0xBB,0x73,0xCC,0x4E,0x59,0x74,0x15,0x4D,0x3C,0x3B,0x54,0x5B,0x96,0x99,0x8A,0x2D,0x03,0x0C,0x51,0xE9,0x80,0x6E,0x56,0x2D,0xD0,0xA2,0xEA,0x98,0xCD,0x73,0x4E,0xCB,0x87,0x17,0x94,0xCC,0xC7,0xA5,0x18,0x4E,0x81,0xA7,0x6E,0x97,0x6A,0x5A,0x01,0xD9,0x9E,0x5D,0xDA,0xE5,0x0D,0xA8,0x7B,0x56,0x19,0x67,0x12,0xA4,0xAA,0xD9,0x65,0x1B,0x89,0x50,0xBA,0x67,0xA7,0x63,0x38,0x22,0x9D,0x5A,0x9C,0x8E,0x21,0x8D,0xD9,0xBB,0xB3,0x01,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x01,0xF8,0x2D,0xD5,0x01,0xBF,0x94,0x19,0xE0,0xE7,0x32,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0xC0,0x01,0x53,0xA8,0x0B,0xE0,0xF9,0x8A,0xFF,0x07};
|
||||||
|
//const uint8_t spSOUTHWEST[] PROGMEM = {0x0C,0xB8,0x5E,0x92,0x01,0xCF,0xB8,0x32,0xE0,0xA7,0x14,0x05,0xFC,0x56,0x6A,0x81,0x00,0xFC,0x96,0xEA,0x80,0x5F,0xCA,0x0C,0xF0,0x73,0xD9,0x6A,0x8B,0x19,0xF7,0xD4,0xCF,0xAB,0xCD,0x66,0x23,0x42,0x37,0xAF,0x3A,0xAB,0x4B,0x4B,0xEB,0xBC,0xAA,0x18,0x37,0xDC,0x6C,0x55,0x2B,0x42,0xDA,0x08,0x91,0x59,0xA9,0x88,0x7A,0xAC,0x89,0x5A,0xAA,0x61,0x50,0x37,0x53,0x95,0xA2,0x80,0x21,0x2A,0x05,0xD0,0xCD,0x6A,0x68,0xAB,0x0E,0x53,0x33,0xC7,0xAE,0x0B,0x6A,0x8A,0x9D,0x52,0x97,0x2E,0xE8,0x6B,0x32,0xEE,0xBA,0xAA,0xC2,0xBA,0xB4,0xA8,0xEB,0xAA,0xAB,0x1C,0x97,0xE6,0x2F,0xAB,0x69,0xAA,0x34,0x5A,0x5E,0xAF,0xA9,0x9A,0x92,0x4C,0x7F,0xB4,0xF6,0x6A,0x4B,0x2A,0xF2,0x56,0x3B,0x4B,0x48,0x49,0xAF,0xD9,0xE9,0x29,0x3E,0xA4,0xF8,0x16,0x1B,0xE0,0x19,0x57,0x05,0xFC,0x94,0x62,0x80,0xDF,0x4A,0x2D,0x10,0x80,0xDF,0x52,0x1D,0xF0,0x4B,0x99,0x01,0x7E,0x2E,0x43,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x1C,0x30,0x85,0xBA,0x00,0x9E,0xAF,0xF8,0x7F};
|
||||||
|
//const uint8_t spHAIL[] PROGMEM = {0x08,0x28,0x5A,0x1C,0x01,0x45,0x7B,0x94,0x62,0x04,0x21,0xB3,0x8C,0xB3,0xF2,0xAA,0x59,0x3B,0xDB,0xF2,0x4A,0x9B,0x27,0x89,0x9A,0x3A,0x2B,0xED,0x41,0xD8,0xBA,0x97,0xAC,0x74,0x44,0x25,0xCD,0x5E,0xBD,0xB2,0x11,0x95,0xB4,0x6A,0xCD,0xCA,0x47,0x74,0x92,0x8C,0x3B,0x3B,0x5F,0xD5,0x30,0x4E,0x3A,0xF1,0x78,0xF5,0x5D,0x05,0x6B,0xDB,0xEB,0xB1,0x36,0x5E,0xE6,0x25,0x9F,0xC7,0x9E,0x74,0x47,0xBA,0x6C,0x2E,0x47,0xF0,0x1B,0xEA,0xB6,0xB9,0x9C,0x41,0x6F,0x96,0x72,0x9F,0x72,0x25,0x3E,0x55,0x46,0xDE,0xD2,0x1D,0xE5,0x55,0x08,0x67,0xCB,0xF7,0xFF,0x03};
|
||||||
|
//const uint8_t spTORNADO[] PROGMEM = {0x01,0xD8,0x5C,0xCD,0x03,0x25,0xCF,0x6E,0x54,0xC5,0x9D,0xB4,0x22,0x4C,0x17,0x2B,0x69,0xB5,0xAA,0x94,0x5B,0x6D,0x28,0xEB,0x6A,0x72,0x6C,0x93,0xE1,0x6C,0xAB,0xAD,0xC5,0xDC,0xD4,0x93,0xAD,0xBE,0x59,0x91,0x32,0x89,0xB7,0xBA,0x1E,0x59,0x4B,0xD5,0xDE,0xEA,0x86,0x2B,0xE1,0xD0,0xD5,0xAB,0x9D,0xAE,0x95,0x52,0x37,0xAF,0x76,0xF9,0x51,0x4C,0x5D,0xB3,0x9A,0xE5,0x8A,0xB1,0x6C,0xF5,0x6A,0xA6,0x2F,0x41,0x97,0x2E,0xA1,0xCD,0x5C,0x24,0xD3,0xDA,0xAC,0x69,0xC8,0x60,0x4D,0xFD,0xBC,0xE6,0x22,0x4A,0xAC,0x7C,0xF3,0x58,0x63,0x0C,0xCE,0x88,0xD6,0x6D,0x8E,0x29,0x25,0xD2,0x37,0x96,0x2D,0x74,0xB3,0xB0,0x58,0x55,0xF6,0x58,0x4B,0x2C,0x6C,0x57,0x39,0x42,0x2B,0xF6,0x88,0x3D,0xE9,0xF4,0x65,0x38,0x25,0xF7,0x86,0xCB,0xB5,0x21,0xCB,0xEA,0xAB,0xEE,0xE0,0xAB,0x93,0xCC,0xE9,0xFF,0x03};
|
||||||
|
const uint8_t spWIND[] PROGMEM = {0x22,0xA7,0x75,0xCD,0xC5,0x6D,0x9B,0x85,0xF5,0x74,0x4D,0xB7,0xEC,0x66,0x5E,0x2A,0x34,0x3C,0x56,0x99,0x4D,0xED,0x60,0x95,0x46,0x6B,0x48,0xAA,0xDD,0x0C,0x57,0xAF,0xBA,0x59,0x17,0x0B,0x5A,0xB3,0xCA,0x9E,0x9C,0x4D,0xF5,0xC9,0x2A,0x9A,0x77,0x71,0x8F,0xD9,0xAB,0x68,0x21,0xC4,0xDC,0x67,0xAF,0xB6,0x1A,0xB7,0x70,0x9F,0x3C,0xFA,0xA6,0xD9,0x52,0xCC,0x69,0x5B,0x9A,0x60,0x69,0x35,0x7B,0x65,0x6D,0x92,0x65,0x54,0xEC,0xA7,0xBD,0x69,0xD4,0x31,0xB3,0x17,0xCE,0xAA,0x30,0x92,0x32,0x89,0xB9,0xB2,0xC4,0x09,0x8B,0x54,0xEC,0x16,0x22,0x73,0x3D,0x13,0x93,0xDB,0x91,0xF4,0xC9,0x48,0x45,0x6F,0x06,0x14,0x18,0xD6,0xCE,0x1E,0x53,0x44,0x6C,0xCB,0xFF,0x03};
|
||||||
|
//const uint8_t spWEATHER[] PROGMEM = {0x6A,0xA5,0xFE,0xB2,0x48,0x95,0xE8,0x55,0xAF,0x7C,0x65,0x1B,0x73,0x37,0xE1,0xAA,0x58,0x6C,0xBC,0xAC,0xAB,0xBA,0x1D,0xB3,0xAA,0x7C,0x4E,0x26,0xAB,0xDB,0x10,0xD4,0xB8,0x07,0x6D,0x5D,0x4D,0x71,0x29,0xE1,0xFC,0x78,0xD5,0x35,0xBA,0xA6,0xF8,0x92,0x55,0x94,0x10,0x12,0x52,0x4B,0x5A,0x9E,0x83,0xBA,0xF2,0xC6,0x71,0x45,0xB6,0x2E,0x8E,0xDD,0x28,0xF4,0x59,0x87,0x24,0x55,0xC3,0x34,0xC4,0x60,0x92,0x36,0x95,0xDB,0x50,0x9C,0x9A,0x4B,0x3E,0x6E,0x73,0x31,0xC5,0x5A,0xB6,0xB9,0xAD,0xD5,0x35,0xC9,0x48,0x9F,0x72,0xD5,0xB0,0xC8,0xCB,0x79,0xD2,0x55,0x6A,0x41,0x2C,0xED,0x4D,0x7F,0x99,0x06,0x9D,0xBA,0x35,0xFD,0x65,0x27,0x8C,0x59,0xD6,0xFF,0x07};
|
||||||
|
//const uint8_t spSHOWERS[] PROGMEM = {0x0C,0x38,0x71,0x54,0x01,0xBB,0x6D,0x69,0xC0,0x02,0x1E,0xF0,0x40,0x04,0x34,0xB0,0x8A,0x1A,0x4A,0x2D,0x75,0xCB,0x2A,0x72,0x68,0xF3,0xD6,0xCD,0x2B,0x4F,0x61,0xDD,0x5B,0x57,0x8F,0x2C,0xD6,0x71,0x4F,0x59,0x5D,0x72,0x3F,0x3B,0x32,0xB8,0x69,0x2A,0xED,0x89,0x28,0x93,0xB4,0xA1,0xF7,0x6D,0xA4,0x0A,0x7A,0xA7,0x31,0x9A,0x57,0x3E,0xF4,0x93,0xD6,0xEC,0x8E,0xE4,0x30,0x4F,0x3A,0x73,0x1E,0xF0,0xC5,0x3E,0xE1,0x28,0xAD,0xC1,0x86,0xF3,0xB8,0xA3,0x4C,0x83,0x4A,0xE9,0xEB,0xCE,0x1C,0x02,0x6D,0x22,0xAB,0x39,0x4B,0x08,0xD4,0xCE,0xFC,0xE6,0xCA,0xDE,0x30,0xAA,0xFA,0xB9,0xEB,0x92,0x10,0x71,0xC9,0x1B,0xEE,0x8B,0xD8,0xCD,0xC3,0x4D,0xBC,0xDD,0xF3,0x7D,0x84,0x09,0x33,0x53,0xC0,0xF7,0x48,0x02,0xD8,0x90,0xF3,0xFF,0x01};
|
||||||
|
//const uint8_t spSLEET[] PROGMEM = {0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0xC6,0xD0,0x70,0x44,0xA8,0x78,0x5D,0x45,0xC7,0xDE,0x2E,0x94,0x77,0x15,0x93,0x68,0x99,0x72,0xD6,0x95,0x35,0x6D,0xAA,0x66,0x8F,0x57,0x3A,0xA2,0xB0,0x98,0x3F,0x59,0xC5,0x08,0x4C,0x56,0xBD,0xB8,0x35,0xD3,0x29,0x70,0xF7,0xE3,0x34,0xCE,0xA8,0xC0,0x5D,0x8F,0xDD,0x32,0x3C,0xA1,0x6D,0x5F,0x42,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x14,0x30,0xA4,0x1B,0x03,0x36,0x57,0x43,0xE0,0x14,0xA5,0x2A,0x54,0xE3,0xFF,0x01};
|
||||||
|
//const uint8_t spSMOKE[] PROGMEM = {0x08,0xE8,0x58,0x94,0x01,0xDF,0x30,0x33,0xE0,0x7B,0x65,0x03,0xFC,0x12,0xEA,0x80,0x5F,0x8B,0x1D,0xF0,0x7B,0xA8,0x03,0x5E,0x53,0x56,0x40,0xA1,0x1C,0xAE,0xF1,0x2C,0xA2,0x52,0xDD,0xA4,0x3A,0x2B,0xCC,0x71,0x89,0x37,0xEA,0x2C,0x33,0x5D,0xA1,0xCD,0x2A,0x92,0xEC,0x56,0xE7,0x36,0x23,0x0F,0x7E,0x4B,0x4C,0xD6,0x8C,0x3C,0xDA,0x69,0x35,0x5E,0xDD,0xEA,0x68,0xB7,0x55,0xA9,0x6F,0x19,0x82,0xBD,0x14,0x95,0xBE,0x61,0xF1,0x76,0xC3,0x85,0xFB,0x88,0x25,0xE8,0x29,0x63,0x73,0x87,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x08,0xA0,0x94,0x62,0x0C,0x20,0xA0,0xA4,0x20,0x04,0x94,0xE2,0xF6,0xFF};
|
||||||
|
//const uint8_t spSTORM[] PROGMEM = {0x0C,0xF8,0x59,0x51,0x01,0x3F,0x07,0x19,0xE0,0xB7,0x91,0x00,0xFC,0x3E,0x9C,0x80,0x5F,0xC3,0x0C,0xF0,0x57,0x0B,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xC0,0x80,0xCD,0xD5,0x5A,0x5C,0x79,0x16,0x07,0x67,0x1B,0x45,0x92,0x5D,0x96,0xD8,0x77,0xE4,0x3E,0x6E,0x99,0x63,0x97,0x96,0xF9,0xB8,0x69,0xC6,0x4D,0x5A,0x16,0xDA,0x64,0x88,0x26,0x69,0x65,0x28,0x13,0xE6,0xA1,0xB6,0xB5,0xB1,0xB4,0x5B,0xA4,0xBA,0xD6,0xA5,0x9C,0x1A,0x2D,0x79,0xDA,0x90,0x63,0x8B,0x0D,0xE7,0x29,0x53,0x4E,0x2D,0x36,0x94,0xB7,0xCC,0xD9,0x15,0x75,0xB1,0xDD,0xB2,0x16,0xDD,0x98,0x45,0xE6,0xCA,0x56,0x45,0x8B,0xB9,0x4A,0x2D,0xFB,0x20,0xED,0xEA,0x64,0xB5,0x9C,0x4D,0x96,0xA4,0x70,0xD4,0x72,0x75,0x15,0x92,0x2A,0x56,0xCB,0xDD,0x94,0x6B,0x89,0x45,0xFD,0x7F};
|
||||||
|
//const uint8_t spSNOW[] PROGMEM = {0x04,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0D,0x18,0xE0,0xB7,0x54,0x05,0xFC,0x52,0x56,0xAA,0xAA,0x30,0x2B,0xC5,0x6E,0xAD,0x56,0xD1,0x95,0xB9,0x26,0xAD,0x59,0x79,0x95,0x91,0x52,0xB2,0x76,0x65,0x55,0x54,0x73,0xC9,0xD6,0x95,0x15,0x51,0x2D,0xC9,0x6B,0x56,0x99,0xD4,0xB4,0xA4,0x6C,0x19,0x43,0xB4,0x5B,0x12,0xB2,0xA5,0x0C,0x3E,0x6D,0xAA,0xDB,0x9E,0xB2,0xFA,0xB0,0x11,0x26,0x5B,0xD2,0xEE,0xD2,0x44,0x88,0xAE,0x4E,0xB7,0x2B,0x1D,0xC9,0xBA,0xC5,0xFD,0xAE,0x4C,0xAA,0x58,0x37,0xF7,0xBB,0x3A,0x6E,0xA2,0x59,0xDC,0xA3,0xD3,0x86,0x8B,0xF4,0x75,0x8F,0x8F,0x95,0x41,0xDA,0xC7,0xDD,0xD1,0x55,0x05,0x86,0xEB,0xFF,0x07};
|
||||||
|
//const uint8_t spSAND[] PROGMEM = {0x0C,0xF8,0x55,0x45,0x01,0xBF,0x1A,0x1B,0xE0,0x47,0x23,0x07,0xFC,0x64,0xE2,0x80,0x5F,0x5C,0x02,0xF0,0x63,0xBA,0x01,0x7E,0x4A,0x5C,0x49,0x53,0xA9,0x6A,0xFE,0x78,0xD5,0xCD,0x96,0x68,0xC6,0xE3,0x55,0x15,0xE7,0x9A,0x55,0x93,0x57,0x55,0xBD,0x69,0x67,0xD5,0x5A,0x65,0xCB,0x62,0xE5,0x53,0x7B,0x95,0x35,0xA8,0x75,0x56,0xA5,0x55,0x55,0x67,0xDA,0x99,0x95,0x56,0x5F,0xAD,0x4B,0x67,0x4C,0x5A,0x43,0xD3,0xC5,0x99,0x31,0x71,0xAD,0x8D,0xB5,0x64,0xF9,0xCC,0xB6,0x35,0x3A,0x1A,0x61,0x8B,0xD2,0xD1,0x34,0x6B,0xAB,0xDB,0x09,0x67,0x93,0x22,0xAB,0x66,0x2F,0x9C,0x55,0x61,0x24,0x65,0x12,0x73,0x65,0x89,0x13,0x16,0xA9,0xD8,0x2D,0x44,0xE6,0x7A,0x26,0x26,0xB7,0x23,0xE9,0x93,0x91,0x4A,0x00,0x05,0x86,0xA5,0xBD,0x3B,0x23,0x17,0xDB,0xF2,0xFF};
|
||||||
|
//const uint8_t spPELLETS[] PROGMEM = {0x06,0xA8,0xDC,0x55,0x01,0xC5,0x2A,0xB7,0xAC,0x58,0x53,0xB3,0x48,0x31,0xF2,0x12,0xCD,0xCD,0xAB,0xF6,0xCA,0x8B,0x2B,0x37,0xB7,0xC7,0xAB,0xC8,0x72,0xD3,0x52,0x17,0x8F,0xA2,0xE0,0x1D,0x0E,0x6D,0x3D,0xAA,0x82,0x77,0x28,0x3C,0xC9,0xA8,0xB3,0xB8,0xB0,0xB0,0x55,0x63,0x6A,0x7C,0x5D,0xC3,0x37,0x8D,0xB5,0xC8,0x91,0x88,0x7A,0x55,0x8E,0x62,0x8B,0x32,0x66,0x16,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x04,0x18,0x54,0x8C,0x01,0x3F,0x28,0x1A,0xE0,0x1B,0x57,0x05,0xFC,0x94,0xC2,0x80,0xDF,0x4A,0x39,0xF0,0xFF};
|
||||||
|
//const uint8_t spRAIN[] PROGMEM = {0x62,0xE1,0x7E,0x5D,0x2D,0xEC,0x88,0x49,0xB4,0x64,0x4F,0x77,0x6A,0x26,0xDB,0xD8,0xA3,0x54,0x6B,0xEB,0x72,0x97,0xD4,0xE2,0xAC,0xAB,0x29,0x49,0xDD,0xD2,0xD6,0xAC,0xBA,0x3A,0xE7,0x6C,0x7F,0xB4,0xAA,0x16,0x8C,0x62,0x63,0xD2,0xA8,0x86,0x0D,0xD2,0x8B,0x4A,0xA3,0x19,0x3E,0x48,0x2F,0x2B,0xCD,0xA6,0xF5,0xC3,0x39,0xD9,0x45,0xA8,0x32,0x0D,0x6B,0xE4,0x67,0x81,0xEB,0x54,0xD6,0xAA,0x45,0x6B,0x2D,0x70,0x59,0x9B,0xC6,0x2A,0x57,0x25,0x69,0x2F,0x8A,0x32,0x2D,0x14,0xA5,0xAB,0x69,0xF6,0x52,0xB7,0x93,0xAF,0xF4,0x34,0xAD,0x96,0xE6,0x89,0xC2,0xD3,0x44,0xAA,0xB5,0x37,0xFC,0x7F};
|
||||||
|
//const uint8_t spICE[] PROGMEM = {0xA9,0x89,0xE1,0x3C,0x3C,0x66,0x8F,0x31,0xEB,0x0B,0x2B,0x5F,0xBD,0xA6,0x62,0xC6,0xA2,0xEC,0xF1,0x6A,0xAB,0x6B,0xAE,0xF6,0x47,0xAB,0x6A,0x31,0xB0,0x3C,0x17,0x8F,0xAE,0x67,0x43,0x8B,0x5A,0x5C,0xC6,0x9E,0x18,0x2D,0x6B,0x76,0x58,0x5A,0x40,0xF1,0x98,0xC6,0x6A,0x6F,0xD2,0x20,0xBD,0x1B,0x1B,0xE0,0x49,0x13,0x03,0x7C,0x13,0x66,0x80,0x1F,0x3D,0x0C,0xF0,0x53,0x84,0x02,0x7E,0x77,0x57,0xC0,0x0F,0x66,0x0A,0xF8,0x29,0x44,0x01,0xBF,0x16,0x0B,0xE0,0x8F,0x34,0x01,0x7C,0x6B,0xF9,0xFF};
|
||||||
|
//const uint8_t spHEAT[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x50,0x40,0x00,0xD3,0xA5,0x8F,0x62,0xC6,0x20,0x48,0x7F,0x3A,0xCA,0x19,0x83,0x20,0xF3,0x49,0x6F,0x46,0x3F,0x83,0x02,0x57,0xCF,0x6E,0xEB,0x74,0x06,0xDC,0x7D,0x2B,0x5D,0xD3,0x28,0xC8,0xF4,0x6C,0x75,0x75,0x29,0x64,0x1D,0x2B,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x03,0x4C,0xA1,0xEE,0x80,0xE7,0x2B,0x04,0x70,0x63,0xE6,0xFF,0x03};
|
||||||
|
//const uint8_t spFOG[] PROGMEM = {0x08,0xE8,0x26,0x15,0x01,0x5D,0xBB,0x22,0x60,0xEA,0x34,0x06,0x0C,0x9B,0xCE,0x80,0x2C,0xD3,0x46,0x96,0x64,0xAF,0x06,0x65,0x1B,0x45,0xB4,0x33,0x1A,0xD4,0x6D,0x94,0xD1,0xEC,0x68,0x70,0xD7,0x51,0x45,0xB3,0xAD,0xC1,0x7D,0x47,0x13,0xED,0xB6,0x86,0xF4,0x19,0x43,0xB4,0xDB,0x1E,0xDC,0x67,0x8C,0xD1,0x6E,0xA9,0x6B,0x9F,0xB6,0x45,0xBF,0xA9,0x61,0x7D,0xDA,0x99,0xF4,0x96,0x86,0xE7,0x6D,0x4F,0x32,0xA7,0x16,0xE2,0xC7,0x9D,0x71,0x26,0x99,0xB3,0x67,0x77,0x0A,0x35,0x1E,0x91,0xB1,0xC2,0x19,0x48,0x7A,0x45,0x26,0x12,0x40,0xC9,0x2D,0x69,0xEF,0x7A,0x54,0xC5,0x5D,0xFF,0x3F};
|
||||||
|
//const uint8_t spHEAVY[] PROGMEM = {0x08,0xC8,0x46,0x13,0x03,0xAB,0xAE,0x5E,0xCC,0xB3,0x6B,0xAF,0xB6,0x99,0x10,0xAB,0xBC,0xB3,0xEA,0xE6,0x52,0x34,0xE2,0xF6,0xAA,0x8A,0x73,0x55,0xD7,0x35,0xA6,0xF1,0xDA,0x55,0xC3,0x56,0x85,0x76,0xC8,0x10,0x63,0xB3,0x33,0xB2,0x16,0x54,0xC4,0x6D,0xF1,0xCA,0x7A,0x50,0x96,0xC8,0x25,0xA3,0xE8,0x41,0xD1,0x32,0x1F,0xCF,0xA2,0x56,0xFF,0x0F};
|
||||||
|
//const uint8_t spLAND[] PROGMEM = {0x6E,0x5A,0x88,0xA6,0x58,0xD6,0xA6,0x6D,0x00,0x5B,0x23,0x6F,0x56,0xD6,0x0E,0x6C,0x83,0xAD,0x5D,0x59,0x06,0xB0,0x75,0xB2,0xF6,0x6B,0xC8,0x7A,0xCA,0x54,0x56,0xAF,0xA1,0xB3,0x2E,0x4B,0xDD,0xBC,0x86,0x21,0x3B,0x34,0x6D,0xCD,0xEA,0x86,0x6A,0xD5,0xB2,0xD5,0xAB,0x19,0xA6,0xC5,0xD2,0x56,0xAF,0xB2,0x9B,0xE2,0xAC,0x58,0xB4,0x8A,0xE6,0x5C,0xDA,0x6B,0xF6,0xCA,0x4B,0x34,0x4F,0x9B,0xDA,0x2B,0xCD,0x3E,0xAC,0x65,0xA3,0xB4,0xA4,0x19,0x2A,0x37,0x57,0xD5,0xE2,0xAE,0x29,0x52,0x53,0x73,0x49,0x9A,0xC2,0x6A,0x73,0xB5,0x08,0x28,0x30,0xAC,0xE5,0x55,0x84,0x84,0xE6,0xA2,0xFF,0x07};
|
||||||
|
//const uint8_t spTHIN[] PROGMEM = {0x08,0x48,0xCC,0x0C,0x01,0x5D,0xA9,0x21,0x60,0x2A,0x33,0x04,0x4C,0x65,0x4A,0x80,0xE9,0x52,0x57,0xDD,0x43,0x88,0xA8,0x3D,0x5E,0x55,0x0F,0xC1,0xEA,0xFE,0x68,0x95,0xCD,0x99,0x78,0xE4,0xA4,0x55,0x14,0x6B,0x1A,0x56,0x93,0x57,0xD1,0x2D,0x79,0xB8,0x29,0x5D,0x45,0x37,0x14,0x1E,0xEE,0x64,0x55,0x4D,0x85,0x86,0xFA,0xEC,0xFF,0x07};
|
||||||
|
//const uint8_t spOF[] PROGMEM = {0x65,0x4A,0xEA,0x3A,0x5C,0xB2,0xCE,0x6E,0x57,0xA7,0x48,0xE6,0xD2,0x5D,0xBB,0xEC,0x62,0x17,0xBB,0xDE,0x7D,0x9F,0xDA,0x5C,0x5C,0x7A,0xAA,0xB5,0x6E,0xCB,0xD0,0x0E,0xAD,0x6E,0xAF,0xEE,0xF9,0x88,0x67,0xBC,0xDC,0x3D,0xAC,0x60,0xB8,0x45,0xF3,0xB7,0xBF,0xC3,0xDD,0xA2,0xBB,0xAB,0xCD,0x89,0x8F,0x7F,0xFE,0x1F};
|
||||||
|
//const uint8_t spAERIAL[] PROGMEM = {0xE2,0x8A,0xCC,0xD5,0xDC,0xDD,0x9A,0xAB,0x09,0x13,0x55,0x53,0xE2,0x8E,0xA6,0x4C,0xC4,0xC4,0xC9,0xDA,0x6A,0x72,0x13,0x97,0x36,0xAB,0xAF,0x3E,0x8C,0x4B,0xB7,0xAC,0x36,0x87,0x90,0x48,0xDF,0xB2,0xEA,0x94,0x4D,0xAB,0x6C,0xD3,0xAA,0x63,0x13,0x6F,0xCB,0xDC,0xAD,0x4A,0x9D,0x3A,0x3C,0x7C,0xB7,0x2A,0x0F,0x6A,0x2E,0xF7,0x3D,0xDA,0xD2,0xD9,0x43,0x23,0xF7,0x1A,0x6A,0x08,0xF4,0xB6,0xDD,0x63,0x6C,0x21,0xC1,0xCA,0x37,0xAF,0xB9,0x9B,0x22,0x49,0xDD,0xB2,0xB6,0x6E,0x46,0x29,0x74,0xF3,0x38,0x9A,0x2A,0x97,0x90,0x2E,0xEE,0x08,0xBA,0x4C,0xCC,0xD2,0x20,0x00,0xBC,0x32,0x02,0x58,0x9D,0x9A,0xCE,0x60,0xA6,0x4D,0xA4,0x5B,0xBA,0x83,0x9D,0x56,0x93,0xAC,0xE1,0xF6,0x71,0x8B,0xD5,0xBB,0xA6,0xD7,0xA7,0x29,0x63,0xC9,0x12,0x7E,0x1F,0x36,0x4D,0xB8,0xAD,0xFB,0xBD,0xB9,0x66,0xD1,0x74,0xEE,0x0F,0x7A,0x5A,0x9C,0x3B,0xFF,0x3F};
|
||||||
|
//const uint8_t spOBSCURED[] PROGMEM = {0xA3,0xAF,0xDA,0xB4,0x42,0x57,0x8F,0x21,0xB9,0x34,0x35,0x6B,0x2D,0x06,0xEE,0x46,0x2D,0x32,0x16,0x1B,0x99,0x6B,0xB7,0xA8,0x98,0x69,0x1E,0xDA,0xD4,0x45,0xD4,0x3A,0xE0,0xA6,0x08,0x07,0xDC,0x30,0x15,0x80,0x57,0xBC,0x10,0xB0,0xB8,0x38,0x02,0xBA,0x37,0x51,0x40,0x14,0xA2,0xA3,0xE9,0xA9,0x18,0x4A,0xBA,0x8D,0xB6,0xD9,0x60,0x5C,0xE9,0xDA,0xBA,0xAC,0x4A,0x68,0x25,0x5F,0x19,0xA3,0x2F,0x96,0xE3,0x3C,0x69,0x0A,0xD5,0x38,0x9B,0xF3,0x84,0x3D,0x34,0x95,0x09,0xE9,0x13,0xF6,0x58,0x85,0xD7,0xB4,0x4F,0xBA,0x72,0x0F,0xCA,0xE4,0xDC,0xE1,0xCD,0x31,0x49,0x87,0xFB,0x86,0x3F,0x67,0xA1,0x2C,0xE9,0x13,0xFE,0xDA,0x95,0x35,0x25,0x8B,0xFA,0x4B,0x66,0x51,0xF7,0x76,0xEC,0xCF,0x5C,0x38,0xBA,0xD4,0xB8,0x7F,0x04,0x51,0x31,0xB7,0x1D,0xFE,0x26,0x93,0x35,0x7D,0x4B,0x78,0x6B,0x32,0xD6,0x8C,0x4D,0x08,0xC8,0x1E,0xED,0xFF,0x01};
|
||||||
|
//const uint8_t spBROKEN[] PROGMEM = {0x0C,0x08,0x51,0xBC,0x74,0xB1,0x49,0x72,0x8A,0xF7,0xD5,0xC5,0xAC,0xA9,0xAE,0xE9,0x56,0x9B,0xCC,0x06,0x85,0xF5,0x5D,0x6D,0x52,0x97,0x1C,0xB2,0xBB,0x75,0x51,0x4E,0x58,0xE0,0x66,0x60,0x40,0x99,0x4E,0x04,0xE0,0x3E,0x7C,0xED,0xC5,0x9B,0x7A,0xF8,0xE2,0xB5,0x77,0x19,0x26,0xA5,0x5B,0xCA,0xD5,0xA4,0x9B,0xA5,0xAC,0x4E,0x7F,0x37,0x6C,0xED,0x62,0x3D,0xFD,0xCD,0xB0,0x85,0x99,0xDD,0xF4,0x0D,0xCF,0x12,0xE6,0x51,0xCB,0x57,0x8D,0x84,0x69,0xC4,0x71,0x5F,0xAD,0x66,0x4C,0x99,0xE8,0xFF,0x01};
|
||||||
|
//const uint8_t spALOFT[] PROGMEM = {0xAD,0xCE,0xE2,0xC2,0x5C,0x57,0xF7,0xB6,0xB5,0xDE,0x74,0x05,0x6B,0x93,0xD2,0x7A,0xD3,0x1D,0xE0,0x4D,0x6A,0xBB,0xDA,0xCC,0xA6,0x4B,0x25,0xC9,0x68,0xA2,0xBE,0x72,0xD1,0x35,0xA3,0x09,0xEE,0xD2,0x45,0xBB,0xAC,0x36,0xC4,0x0F,0x89,0x6C,0xBD,0xFA,0x90,0x2E,0xCC,0xBC,0xF3,0x9A,0x83,0xBF,0x30,0xF3,0xCE,0xE3,0x88,0xF1,0x5C,0x2D,0x36,0xB7,0x3B,0xDA,0x2B,0x33,0xED,0x9C,0x9E,0x50,0xC7,0x4D,0xF3,0x75,0x7A,0x52,0xEC,0x74,0xD1,0x49,0x02,0xA8,0x26,0x55,0x00,0x5D,0x87,0x32,0xA0,0x9B,0x52,0x0E,0x20,0x70,0x8A,0x52,0x15,0xAA,0x01,0xA0,0x80,0x21,0xDD,0x18,0xB0,0xB9,0x1A,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xFF,0x0F};
|
||||||
|
//const uint8_t spCEILING[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0xB2,0x95,0x0E,0xED,0x8A,0x61,0x6B,0x46,0x39,0x7C,0x30,0x86,0x7E,0x19,0xC5,0x88,0x4E,0x94,0xFA,0x65,0x15,0xDD,0x29,0x6B,0xEB,0xEA,0x56,0x54,0xA6,0x16,0xC5,0xAB,0x47,0x31,0xB0,0xA6,0x85,0xB6,0x59,0x79,0x53,0xCE,0x91,0x3E,0x6B,0x14,0x4D,0xA9,0x54,0x79,0xA9,0x52,0x54,0x8D,0x39,0x21,0x56,0x4B,0xD1,0x34,0x76,0xB9,0xDA,0x2D,0x79,0xD3,0x58,0xED,0x6A,0x37,0xE5,0x59,0x51,0x55,0xB0,0x13,0x91,0x31,0x57,0x61,0x6A,0x69,0x48,0xA6,0x59,0x55,0x85,0xCB,0xF9,0x7F};
|
||||||
|
//const uint8_t spPARTIALLY[] PROGMEM = {0x0A,0x68,0xD2,0x88,0x01,0xD1,0x9A,0x8F,0x3C,0x94,0x76,0x77,0xEE,0xB4,0xEA,0xE8,0xCE,0xB5,0x69,0xCB,0xAA,0xB3,0x3E,0xE7,0x91,0x3E,0xAB,0x8A,0xA1,0x65,0x4A,0x36,0x97,0x2A,0x15,0x93,0xF5,0xEC,0x24,0x80,0xA0,0x84,0x13,0x30,0xC3,0x78,0x00,0x56,0x9A,0x4A,0xC0,0x8C,0x53,0x0E,0x68,0x61,0xB2,0x65,0x4D,0x9A,0x7B,0xAA,0xDA,0xD2,0x36,0x90,0xE3,0xAC,0xE9,0x46,0xD7,0xA0,0x77,0x88,0xB8,0x4B,0xDB,0x02,0xB2,0xA6,0xEA,0xBE,0x1D,0x87,0x62,0x27,0x4B,0xB2,0xB5,0x57,0x59,0xE6,0x2E,0xBB,0xC7,0x31,0x59,0x3A,0x96,0x6F,0x69,0x4F,0x17,0xC1,0xDA,0xFE,0x39,0xDD,0x3D,0x1B,0x8B,0xC7,0xAA,0x7C,0xA5,0xB3,0x47,0x61,0xB7,0x5C,0xF2,0xFF};
|
||||||
|
//const uint8_t spVISIBILITY[] PROGMEM = {0xE6,0xCA,0xCA,0x8D,0x55,0x73,0x9B,0x23,0x09,0x77,0x76,0xCB,0xE2,0x8E,0x2A,0x4C,0xD5,0xD4,0xB5,0xDB,0x8B,0x50,0x35,0x15,0xDF,0x6B,0xEC,0x36,0x5C,0x95,0x5D,0xAD,0xB6,0x19,0x33,0x75,0xDD,0xB2,0xEA,0xA6,0x4C,0xDD,0xED,0xCD,0xAA,0x9B,0x72,0x75,0xF1,0xD5,0xAB,0xFE,0xCE,0xC4,0x44,0x9D,0x06,0xE0,0x0A,0xE3,0x51,0xBE,0x50,0xE9,0xCC,0x52,0x57,0x31,0x54,0xB8,0x28,0x6D,0x59,0x65,0x55,0xE6,0x6A,0xBC,0x57,0xB5,0xD4,0x87,0xBB,0x67,0x2B,0xD6,0x93,0x50,0xE6,0x9E,0xAD,0x56,0x59,0x6C,0x98,0xAA,0x6C,0x5E,0x65,0x36,0x69,0xA6,0xBE,0x79,0x15,0x8D,0x56,0xB8,0xC9,0xE6,0x52,0x75,0x10,0x2D,0x1C,0x4D,0x57,0xD5,0x70,0x87,0xAB,0x74,0x5E,0x45,0x65,0x63,0x2E,0xB6,0x69,0x55,0x55,0xB6,0x39,0x59,0x6B,0x33,0x64,0xEA,0xE6,0xA4,0xB9,0x0C,0x30,0x85,0x7A,0xCB,0x9F,0x0C,0x66,0xD5,0xDC,0x2B,0xEF,0xC1,0x48,0x2C,0x97,0xAC,0x7C,0x58,0x47,0xAA,0x58,0x3C,0xF2,0xA1,0x0C,0x69,0x72,0x71,0x2A,0xBA,0x10,0xB4,0x8D,0x99,0xAC,0x21,0xA6,0x6A,0x4C,0x6D,0xFF,0x3F};
|
||||||
|
//const uint8_t spDRIZZLE[] PROGMEM = {0x69,0xDD,0x6E,0xD2,0x4D,0x48,0x97,0x6D,0xC6,0xF0,0x66,0x96,0x5D,0x86,0x62,0xC3,0x54,0x2D,0xD9,0x68,0x73,0x92,0x64,0xB7,0x74,0xAB,0x2A,0x4E,0x43,0xCD,0xB6,0xAC,0xB2,0xEA,0x54,0x35,0x7D,0xDD,0xCA,0xC6,0xDA,0xC8,0x7C,0x73,0xA9,0xBF,0x90,0x30,0x92,0xAC,0x65,0xF8,0xB7,0xD0,0x45,0x95,0x08,0x20,0x83,0xE8,0x31,0x67,0x9E,0xE1,0xAE,0x6B,0xDA,0x14,0xD5,0x46,0x98,0x6C,0x71,0x7B,0x30,0x1F,0x6A,0xB6,0x35,0x9C,0x41,0x5F,0x99,0x68,0x5B,0x77,0x07,0xFD,0xC9,0xEA,0x6D,0xDD,0xED,0xED,0xA7,0xA8,0xB7,0xFD,0x7F};
|
||||||
|
//const uint8_t spINDICATED[] PROGMEM = {0xAB,0x1B,0xD6,0xC9,0xAB,0x26,0xAD,0x72,0xA8,0x64,0x99,0x9C,0xB5,0xB2,0x26,0x4D,0x33,0x62,0xF2,0xC8,0xBA,0xC1,0xF2,0x34,0xD7,0x2D,0x6B,0x1A,0x3B,0x5C,0xDD,0x84,0x3C,0x09,0x1A,0xF1,0x4E,0x34,0xEA,0xA1,0x5C,0x99,0xAD,0xD9,0xAA,0xA7,0x70,0x91,0xD4,0x35,0xA3,0x19,0x26,0x90,0x4B,0x5F,0x9B,0xB9,0x39,0xA4,0x59,0xA9,0x84,0xE6,0x29,0x54,0xC4,0xCC,0x71,0x2A,0x66,0xDE,0xD0,0x88,0xB8,0x0E,0x98,0xD6,0xB9,0x55,0x55,0x33,0x67,0x46,0xED,0x55,0xF7,0xA8,0x64,0x99,0x8B,0x57,0x37,0x7C,0x92,0xA4,0xBF,0x59,0x5D,0x0F,0x89,0x1A,0xB1,0x78,0xF5,0xCD,0x18,0x86,0xF7,0xE2,0x34,0x1C,0x67,0x21,0x24,0x91,0xDB,0x74,0x75,0x38,0xB1,0x65,0x59,0x73,0x71,0xCA,0xEE,0x3D,0x67,0xCD,0xD5,0x98,0x98,0xE7,0xE3,0xB1,0x34,0x6B,0xCA,0xE2,0xAB,0xC5,0x2A,0x64,0x45,0x44,0x44,0x94,0xEB,0xFF,0x03};
|
||||||
|
//const uint8_t spSEVERE[] PROGMEM = {0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0xD4,0xD5,0x76,0x11,0x41,0xAE,0x5B,0x56,0x5B,0xB4,0xB9,0xBA,0x6C,0x4D,0x43,0x16,0xEA,0x1A,0xE2,0xD6,0x8D,0x99,0xBB,0xB3,0x4B,0xBA,0x34,0x36,0x69,0x26,0x21,0xEA,0x56,0xD9,0x7D,0x28,0x05,0x77,0x5B,0xE9,0xF0,0x25,0x18,0xB2,0x65,0xC5,0x2D,0x24,0x72,0xC9,0xEA,0x15,0x35,0x3F,0xC4,0x43,0x9B,0x47,0x54,0x72,0xA1,0x0E,0x6E,0x19,0x51,0x8E,0xCE,0xDE,0xBC,0x65,0x24,0xD9,0x27,0x9B,0x79,0x1B,0x95,0x16,0x11,0xA2,0xA6,0x8E,0xFF,0x1F};
|
||||||
|
//const uint8_t spMODERATE[] PROGMEM = {0x22,0xB3,0x2C,0x72,0xC2,0x1C,0x8B,0x4D,0xAA,0xAC,0x21,0x6B,0xE2,0xD6,0x20,0xA4,0x46,0x24,0x59,0x58,0x92,0xE0,0x1C,0xB1,0xB8,0x63,0x8E,0x66,0x5B,0x9D,0x5B,0xAF,0x31,0xE9,0x6B,0x4E,0x6B,0xB3,0xFA,0x2C,0xAF,0x25,0xAD,0xF5,0x6A,0xB3,0xFE,0xB0,0xF2,0x55,0xAB,0x4A,0x6E,0x2C,0xCD,0x57,0x29,0xC0,0x05,0xEB,0x50,0xD7,0xAC,0x12,0xAA,0x4A,0x4A,0x91,0x1B,0xA7,0x78,0xAA,0x4B,0x45,0xAC,0x54,0x6A,0xA9,0xBB,0x15,0xA9,0x52,0x9A,0x99,0xAF,0x55,0xE4,0xCA,0x61,0xEA,0xBD,0x56,0x5E,0x8A,0x73,0x4A,0xB6,0x5A,0x79,0x49,0xCE,0x4E,0xDD,0x98,0x55,0x5C,0x95,0x77,0x64,0x42,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x14,0x30,0x85,0xBA,0x02,0x9E,0xAF,0x10,0xC0,0x8D,0x99,0xFF,0x0F};
|
||||||
|
//const uint8_t spGREENWICH[] PROGMEM = {0x04,0x88,0x2D,0xA2,0x34,0xC5,0x87,0x9B,0x89,0x95,0x56,0xE7,0x2A,0x6E,0xA6,0xF1,0x56,0x9D,0x9B,0x84,0xBB,0xB6,0x5F,0x45,0xC9,0xAE,0x91,0xB2,0x75,0x15,0xC5,0x96,0xC4,0xD8,0xEB,0x55,0x35,0x17,0x12,0x61,0xB7,0x47,0x53,0x2C,0x55,0xAA,0xD9,0x6D,0x4B,0xB1,0x58,0x61,0xEE,0x7A,0xAD,0x5D,0x97,0x68,0xF9,0xA3,0xB1,0x0D,0xD5,0xC2,0xED,0xAF,0xD2,0xDE,0x74,0xB1,0x4C,0xBC,0x0C,0x47,0xB7,0x45,0x1A,0xFE,0x0A,0x81,0x53,0x94,0xAA,0x50,0x0D,0x40,0xC0,0x74,0xE2,0x0A,0xD8,0x29,0xDC,0x01,0xBB,0x64,0x38,0xE0,0xE4,0x6A,0x07,0xCC,0xF2,0xE1,0x80,0xD9,0xC6,0x19,0xD0,0x67,0xD8,0xFF,0x03};
|
||||||
|
//const uint8_t spMEAN[] PROGMEM = {0x66,0x0A,0x5C,0xE3,0x24,0x9C,0x84,0x3D,0x08,0xCE,0xE5,0x48,0x9B,0xE6,0xAC,0x30,0x5B,0x3C,0xCD,0x2A,0x66,0x31,0x82,0x88,0x35,0xAB,0x98,0xCD,0x11,0x33,0x17,0xAF,0x6A,0x36,0x43,0x8C,0x5C,0xBC,0xAA,0xD9,0x14,0x29,0x6B,0xD6,0xA8,0x67,0x15,0xE4,0xEA,0x49,0x63,0x98,0x4D,0x90,0xAB,0x46,0xB5,0x79,0x66,0x42,0xED,0x1E,0xDD,0x96,0xE1,0x89,0x62,0x2A,0x48,0x59,0x9B,0x26,0xCE,0xF1,0x30,0x69,0x6F,0x1A,0xDB,0xD2,0xEC,0x84,0xAB,0x2A,0x6C,0x2B,0x4D,0xE5,0x9E,0x24,0x28,0x23,0xCA,0x89,0xF9,0x8A,0xC2,0xB2,0xD1,0xD4,0xE1,0xAB,0x1A,0xD3,0xCB,0x3D,0x87,0xAF,0x19,0x4C,0xCB,0x70,0x9D,0xBE,0xE6,0x5C,0xCC,0x7D,0xD6,0xFF,0x03};
|
||||||
|
//const uint8_t spMIST[] PROGMEM = {0xAC,0x75,0x2C,0x7C,0x4A,0x93,0x98,0x43,0x4B,0x8F,0x49,0x4B,0x6C,0x56,0xA9,0x3C,0x36,0xB4,0x8E,0x99,0xB5,0xB2,0x98,0xB0,0xC4,0x61,0x0C,0x52,0x6D,0x42,0xEA,0xA4,0x31,0x71,0xD5,0x6A,0xAE,0xBB,0xBA,0xE6,0x8D,0xCD,0xFD,0xF6,0xAA,0xBA,0x0F,0x56,0xF7,0xC7,0xAB,0x6C,0xC1,0xC5,0xAD,0x67,0xAF,0xB6,0xBA,0xE0,0xF0,0x99,0xBD,0xA6,0x6A,0x9B,0x2C,0x6A,0x76,0x5B,0x8B,0x6B,0x32,0xAF,0x5B,0xE9,0x79,0x62,0x46,0x41,0x94,0x1A,0xE0,0x19,0x57,0x05,0xFC,0x94,0x62,0x80,0xDF,0x4A,0x2D,0x10,0x80,0xDF,0x52,0x1D,0xF0,0x4B,0x99,0x01,0x7E,0x2E,0x43,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x14,0x30,0x85,0xBA,0x00,0x9E,0xAF,0x20,0xC0,0x8D,0x99,0xFF,0x0F};
|
||||||
|
//const uint8_t spESTIMATED[] PROGMEM = {0xE3,0xEE,0xD1,0xD8,0xBD,0x17,0xAF,0xB1,0x7A,0xD5,0xF2,0x9D,0xBD,0xDA,0xEA,0x4C,0xCB,0x67,0xF6,0xAA,0x8A,0x0B,0x0D,0xEF,0x45,0x2B,0x2F,0xD6,0x3C,0xB4,0x17,0xAF,0xE2,0x99,0x30,0x15,0x77,0x52,0x80,0x67,0xB6,0x1C,0x70,0x53,0x0F,0x03,0x4E,0x72,0x0E,0xC0,0x35,0x16,0xCB,0x6F,0x3A,0x4C,0x4D,0x56,0x97,0x22,0xC8,0x70,0x4D,0xDD,0x5C,0x8A,0x28,0xCC,0xAA,0xA4,0xCE,0xCA,0x8B,0x4B,0xD3,0xD0,0xD5,0x2B,0x6F,0x36,0xC4,0xD2,0x16,0xAD,0xA2,0xBB,0x60,0x8F,0x58,0xB4,0xCA,0xE6,0x8D,0xDD,0x72,0xB1,0xEB,0x13,0x33,0xB3,0xF4,0xC6,0xA3,0x1B,0xB6,0x95,0x8D,0x3A,0xAD,0xBA,0x06,0x15,0x93,0x9E,0xBD,0x9A,0xE2,0x45,0xCD,0x7A,0xCA,0x68,0xAB,0x75,0x11,0xF5,0x55,0x6A,0x30,0xBC,0xC2,0x33,0x62,0x88,0x51,0x8B,0x8C,0x8C,0xB4,0xF9,0xFF};
|
||||||
|
//const uint8_t spDECREASING[] PROGMEM = {0x0C,0x28,0x30,0xAC,0x8C,0xCB,0xA6,0xAB,0x45,0xEC,0x55,0x0D,0x65,0x24,0x19,0x77,0x56,0xD5,0xB5,0xA2,0x76,0x3E,0xDE,0x55,0xA9,0x87,0x55,0xB0,0x89,0xD7,0x6A,0x88,0x42,0xB4,0xCB,0x43,0x22,0x70,0x8A,0x52,0x15,0xAA,0x01,0x0C,0x08,0x57,0x95,0x01,0xA1,0x69,0x28,0xA0,0xD4,0xF4,0x95,0xF5,0xE8,0xC4,0xA9,0x5B,0x56,0x3E,0x42,0x20,0x95,0xAD,0xD9,0xF9,0x28,0x46,0x30,0xE4,0xB4,0xD7,0xAD,0x7A,0xAE,0xDB,0x81,0xDC,0x1A,0xE0,0x77,0x73,0x05,0xFC,0x69,0xAE,0x80,0xDF,0x35,0x34,0xB0,0x8A,0xA6,0x43,0x25,0xEC,0xF1,0x9A,0xAA,0x75,0x91,0x8E,0xC7,0x6B,0xAD,0xDA,0xD5,0x2F,0x16,0x95,0xA3,0x1A,0x95,0x3C,0x1B,0x19,0xCE,0x6C,0x39,0xC7,0x25,0xAC,0xB9,0xB3,0xA1,0x31,0x33,0xDB,0xEE,0x2E,0x8E,0x5B,0xC2,0x1D,0x9A,0x27,0x1B,0xC9,0x54,0x8B,0xED,0xDE,0x6C,0xC5,0x53,0xAD,0x72,0xF8,0x5A,0x54,0x8E,0xF4,0xD1,0xE1,0xEB,0x4D,0xD5,0x24,0x46,0xFD,0x3F};
|
||||||
|
//const uint8_t spMOVING[] PROGMEM = {0x6A,0x91,0xB2,0x23,0xC5,0x93,0x98,0xD9,0x2A,0xED,0x14,0x4F,0x12,0xA6,0xA4,0xB8,0x8A,0xD5,0x59,0x99,0xB2,0xA2,0x09,0x66,0x27,0xA5,0x0B,0x26,0x33,0x84,0x9E,0xB4,0x36,0xF1,0x4A,0x77,0xF8,0x5C,0x9A,0x28,0x2B,0x5D,0xE1,0x75,0x69,0x82,0xCE,0x0C,0xA6,0xC5,0xA1,0x8F,0x2A,0xDC,0x55,0x63,0xBB,0xA1,0x33,0x57,0x71,0x8B,0x5D,0x9A,0xA4,0xCC,0xC2,0x2A,0xD5,0xAA,0x9B,0x13,0xB5,0xF0,0x59,0xAB,0xE9,0x41,0xD8,0x2A,0x26,0x8D,0xB6,0x6B,0xE1,0x5A,0xB1,0x5A,0xDA,0xAA,0xA8,0x53,0xC4,0x69,0x69,0xAB,0xA2,0x71,0x51,0x27,0xA9,0xAF,0x92,0xF5,0x13,0xE3,0xFD,0x3F};
|
||||||
|
//const uint8_t spPRESSURE[] PROGMEM = {0x08,0x88,0x44,0xC5,0x00,0xC5,0xB9,0x1A,0xA0,0x64,0xB3,0xD1,0xA5,0x2C,0xA5,0xC5,0x6B,0x56,0x97,0xB3,0xBA,0xA7,0x6E,0x59,0x63,0xC9,0xAE,0x11,0xBA,0x65,0x2D,0x25,0x99,0x5A,0xDA,0xEA,0xB6,0x36,0xEB,0x2A,0xE1,0x29,0x13,0xB0,0xAC,0x6B,0x02,0x66,0xD9,0x4C,0xC0,0xCC,0xDB,0x0E,0x68,0x41,0xA9,0x4D,0xC5,0x27,0x49,0x7B,0xB6,0xB2,0xD6,0x34,0x8C,0xAD,0xFE,0xCB,0x51,0x8E,0xB3,0x15,0x75,0x2D,0x57,0x1E,0x4A,0xBE,0xDC,0x25,0xDD,0xB9,0x09,0xC5,0x4A,0x96,0xF0,0xE4,0xC3,0x9C,0x25,0x5D,0xDC,0x53,0x9E,0x72,0x25,0xA7,0x71,0x6F,0x79,0xA9,0x69,0xAC,0xF4,0xFF,0x01};
|
||||||
|
//const uint8_t spALTERNATE[] PROGMEM = {0xAA,0xB0,0xAF,0x4D,0xA5,0x6B,0x95,0xC9,0xCE,0x4D,0xE5,0x6C,0x32,0x46,0x57,0xB7,0x8C,0xBC,0xCD,0xE8,0x82,0xB9,0x4E,0x91,0xAC,0xAB,0x8E,0xE2,0xA7,0x8C,0xB3,0x8E,0x2C,0xEA,0x9C,0x52,0xF1,0x56,0xB2,0x6C,0x64,0x52,0xC4,0x2D,0x02,0x1C,0xE7,0x24,0x40,0x31,0xEA,0x01,0x18,0xBE,0x6D,0x78,0x4D,0x87,0x8A,0xB9,0x9B,0x95,0x94,0x90,0x4C,0xC3,0xDD,0x56,0x56,0xAA,0xAA,0x85,0xB4,0x6B,0x79,0xB2,0x62,0x11,0x51,0xAF,0x65,0x49,0x89,0x77,0x68,0xDC,0x95,0x36,0x1D,0x12,0x61,0x8B,0x46,0x56,0x45,0x89,0xB7,0x2F,0x5C,0x59,0x13,0x25,0x9E,0xBE,0xA8,0x64,0x45,0x04,0xA7,0xE6,0x46,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x0C,0x30,0xA4,0x9B,0x02,0x36,0x57,0x43,0xE0,0x14,0xA5,0x2A,0x54,0xE3,0xFF,0x01};
|
||||||
|
//const uint8_t spCLEAR[] PROGMEM = {0x0C,0xC8,0xA3,0x39,0x00,0xC5,0x96,0x3B,0xA0,0x73,0x4F,0x03,0x4C,0xAD,0xD5,0xB2,0xCC,0x6C,0x42,0xB8,0xCB,0xCA,0x1A,0xE7,0xAC,0xE4,0xB6,0x2B,0x9F,0x46,0xC2,0x82,0xB6,0xAD,0x62,0x5A,0x37,0x0A,0xDE,0xB6,0x8A,0x19,0xDA,0xC1,0x69,0xDB,0x2A,0xA6,0x2B,0x85,0x90,0xAD,0xAB,0x9C,0xAE,0x04,0x53,0xB6,0xAC,0x72,0xD8,0x12,0x2C,0xD9,0x32,0xAA,0xE6,0x9A,0xB8,0x65,0xCB,0xA8,0xAA,0x6D,0xD4,0x95,0x2E,0xA5,0x2A,0xB6,0x51,0x4F,0xB2,0xA5,0xAA,0xA4,0x45,0x59,0xF1,0xFA,0xFF};
|
||||||
|
//const uint8_t spCURRENT[] PROGMEM = {0x0A,0xC8,0xB3,0xC0,0x01,0xB9,0x34,0x8F,0x3C,0x37,0xB1,0x28,0x4E,0xBB,0xEA,0x34,0xC4,0xB3,0xB8,0xED,0xAA,0x53,0xE7,0xB0,0x32,0xF7,0xAB,0xCE,0x83,0xD3,0x2D,0xDD,0xAF,0x3A,0x17,0xB5,0xD0,0xEC,0xB6,0xAA,0x62,0x52,0x46,0xF3,0x4A,0xAB,0xAA,0x71,0x69,0x9C,0xCA,0xAE,0x4A,0x82,0xBB,0xD8,0x52,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0xA0,0x80,0x21,0xDD,0x18,0xB0,0xB9,0xDA,0xFF,0x03};
|
||||||
|
//const uint8_t spBLOWING[] PROGMEM = {0x08,0x28,0xA5,0xD4,0xEC,0xC8,0x8C,0xB9,0xA7,0x9D,0xB4,0x27,0x23,0x3E,0x69,0x4A,0xD2,0x90,0x84,0xAE,0x29,0xAD,0x5B,0x7D,0xA1,0x36,0xA9,0xD4,0x76,0xB5,0x59,0xF4,0xB8,0xC8,0x9E,0x55,0x27,0xB9,0xAD,0xAA,0x5D,0x5A,0x15,0xE5,0xB5,0x98,0xF6,0x6D,0x75,0x30,0x97,0x6E,0xD4,0xA7,0xB5,0x21,0xAE,0xBB,0xC9,0xE6,0x36,0xC4,0x5C,0x92,0x1E,0xAB,0xDA,0x9A,0x83,0x6B,0x46,0xBC,0x6A,0x47,0xF3,0xC1,0x3A,0xDE,0xB9,0x1D,0x3D,0x24,0xCB,0xFA,0xAA,0xF2,0xF6,0xA4,0x6C,0x6B,0x15,0xCB,0x57,0x35,0x47,0x15,0xC5,0x49,0x6F,0x35,0x6C,0x95,0xE2,0x38,0x3D,0xCD,0x53,0x86,0x4B,0x1C,0xF7,0x54,0x4B,0x95,0xAA,0x71,0xDC,0xD3,0x12,0x87,0x5B,0x85,0xF9,0x7F};
|
||||||
|
//const uint8_t spAT[] PROGMEM = {0xA9,0xAC,0x36,0xB9,0x32,0x1F,0xAD,0xB5,0xBA,0x94,0x4C,0x9F,0xBD,0xA6,0xE6,0x4A,0x23,0xED,0xF1,0x1A,0xBB,0x19,0xD3,0xB4,0xCD,0x6B,0xEC,0x6A,0xCC,0xD2,0x36,0xAF,0xB1,0xCB,0x91,0x70,0x7B,0x8D,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x80,0x00,0xA6,0x54,0x37,0xC0,0x55,0x2A,0x04,0x58,0x9C,0xF5,0xFF,0x01};
|
||||||
|
//const uint8_t spTURBULANCE[] PROGMEM = {0x01,0x18,0xCE,0x22,0x01,0xDB,0x55,0x04,0xA0,0x85,0xB6,0x11,0xA7,0x10,0x2C,0xE3,0xDE,0x56,0x9E,0xBB,0x8A,0x17,0x65,0x1B,0x59,0xAA,0xC6,0xDE,0x94,0xA7,0xE4,0xD1,0x07,0xC7,0x90,0x37,0xD6,0x10,0x9F,0x3E,0x69,0x6A,0xCC,0x94,0x84,0x5A,0x44,0xA6,0x6E,0x7D,0x35,0xCE,0x5C,0xD9,0x75,0x0D,0x4D,0x05,0x73,0x66,0xD7,0x35,0x74,0x19,0xCA,0x19,0x5D,0xD6,0x58,0x55,0x9A,0xBB,0x6E,0x5D,0x73,0x47,0x56,0x9E,0xEA,0xB5,0x2D,0x0B,0x73,0x55,0x98,0xF2,0xB5,0x74,0x5A,0x69,0x2E,0x5D,0xD6,0xD4,0xC4,0xB8,0xB8,0x76,0x5E,0x63,0x67,0xED,0x1A,0xB6,0x69,0x0C,0x4D,0x9A,0x94,0x6A,0xEB,0xD0,0x15,0x89,0xDD,0x1C,0x6E,0xC4,0x9A,0xA9,0x45,0xB1,0x39,0x32,0xC0,0x33,0xAE,0x0A,0xF8,0x29,0xC5,0x00,0xBF,0x95,0x5A,0xC0,0x00,0xBF,0xA5,0x1A,0xE0,0x97,0xB2,0xFF,0x07};
|
||||||
|
//const uint8_t spTHINLY[] PROGMEM = {0x08,0x38,0x2C,0x14,0x01,0x4D,0x84,0x0A,0xA0,0xC9,0xF0,0x14,0x37,0x13,0xEA,0x62,0xAD,0x57,0x56,0xAD,0x99,0xAA,0xBD,0x59,0x79,0x73,0xAE,0xEA,0xFE,0x78,0x15,0x4D,0x87,0x5A,0xE8,0xA3,0x51,0x76,0x87,0x56,0x61,0x76,0x47,0xD5,0x0C,0xD9,0xB8,0xDB,0x1B,0xCD,0xA0,0xAE,0x59,0x98,0x64,0x74,0x1B,0xC9,0xB8,0x89,0xDB,0xD5,0x56,0x39,0xAA,0xAE,0x9B,0x4F,0xDB,0x65,0xB1,0x87,0xBD,0x5E,0x7D,0x77,0x89,0x6E,0xF1,0x68,0x0D,0xDD,0x39,0x84,0xE7,0xA2,0x32,0xF4,0x88,0x12,0xDE,0xB5,0xFF,0x1F};
|
||||||
|
//const uint8_t spINCREASING[] PROGMEM = {0xA3,0x69,0x2A,0x58,0x3D,0x1E,0x8D,0x66,0x89,0x54,0x4A,0x5B,0xBD,0xBA,0xC5,0x43,0xA4,0x74,0x55,0xE9,0x9B,0x22,0x59,0xD7,0x68,0x6D,0x68,0x9A,0x64,0x5D,0xAD,0x85,0x21,0x2B,0xCC,0x55,0x93,0x8B,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x10,0x20,0xCD,0x14,0x06,0xC4,0xD6,0x6C,0x80,0x9C,0x32,0x5B,0x96,0xA3,0xA9,0x98,0xB9,0x59,0x79,0x49,0x6C,0xE6,0xD6,0x75,0x14,0xD5,0x28,0xD9,0xD8,0xEA,0x96,0xB5,0xA0,0x28,0xE5,0xAF,0x4B,0x79,0x5D,0xB7,0x00,0xB9,0x35,0xC0,0xF3,0x1E,0x0E,0xF8,0xC9,0x23,0x01,0x3F,0x89,0x8D,0xA4,0xAB,0x60,0xF5,0x58,0xBC,0xDA,0xA1,0x42,0x24,0xFD,0xF5,0x1A,0x96,0x4E,0xA1,0xF2,0x55,0x6B,0x5C,0xCA,0x99,0xCF,0x2B,0xB6,0x71,0x18,0xE1,0x6A,0x89,0xD6,0xC6,0x6E,0xC8,0xCB,0xCD,0x6E,0x1B,0x9A,0x21,0x6F,0x37,0xA7,0x65,0xAC,0x9A,0xCB,0xD4,0x14,0x95,0xA1,0x5A,0xD2,0x50,0x2F,0xFC,0xFF};
|
||||||
|
//const uint8_t spMORE_THAN[] PROGMEM = {0x62,0x4E,0x9C,0x62,0xCC,0x9C,0xBA,0x3D,0x09,0x8E,0x52,0x4F,0x9C,0xE6,0xA2,0xA5,0x82,0x55,0x55,0x99,0xAA,0xA2,0x0C,0x53,0xC5,0x6D,0xEC,0x9A,0xBD,0x43,0xA4,0x8C,0x3E,0xC8,0x9A,0x4D,0x72,0x3A,0xDA,0x28,0x7B,0x26,0xD1,0xE9,0xAA,0x83,0xED,0x1E,0xC3,0x34,0x2B,0x0F,0xFE,0x2C,0x55,0x72,0x8F,0x2C,0xD4,0xD4,0x32,0xD9,0xB5,0xD2,0x98,0xCD,0x3A,0xB4,0xE3,0xC8,0xB2,0x69,0x4A,0x8F,0x45,0xA6,0x76,0x26,0x24,0x35,0x6B,0xA9,0x2E,0x73,0x35,0xF1,0x4A,0x5D,0xBA,0x2E,0x53,0x54,0xAD,0xCD,0xAA,0xAA,0x33,0x35,0xCD,0x55,0xAB,0xEA,0xAA,0x58,0x33,0x5E,0xAD,0xBA,0xC9,0x66,0xCF,0x7C,0xBD,0x9A,0x66,0x9A,0x23,0x73,0xD1,0x6E,0x56,0xDB,0x74,0x73,0x66,0x2C,0xDA,0xED,0x6A,0x9B,0x6A,0xCE,0x88,0x47,0xAB,0x6B,0x56,0x74,0x38,0x9D,0xB4,0xB6,0x1A,0x8A,0x94,0x74,0xD5,0x9A,0x66,0xA9,0xDC,0x42,0x63,0xA9,0xAB,0x46,0x5F,0x4E,0xCD,0xA9,0x2E,0x42,0xE8,0xB2,0x2C,0xFD,0x3F};
|
||||||
|
//const uint8_t spLESS_THAN[] PROGMEM = {0x69,0x5D,0x40,0x2B,0x54,0x92,0xA4,0xE5,0x20,0xEC,0x51,0x71,0x9A,0xC6,0x83,0x70,0x46,0x34,0xDE,0x18,0x16,0xE4,0x09,0x33,0xA7,0xAB,0x2E,0x74,0x32,0x42,0x36,0xAF,0xAA,0x88,0xB6,0x0A,0xFF,0xBC,0xAA,0x12,0x5C,0x53,0xFA,0xF1,0x28,0x6B,0x32,0x0D,0x9C,0x59,0x01,0xF8,0x86,0xC4,0x01,0x7F,0x86,0x1A,0xE0,0xCF,0x52,0x03,0xFC,0x60,0x89,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x8C,0xAC,0x88,0x12,0x37,0x7B,0xB4,0xAA,0x2A,0x5A,0xBC,0xFC,0xF6,0x6A,0x9B,0x6B,0x76,0xF7,0xC7,0xAB,0xAB,0x36,0xB9,0x32,0x1E,0xAD,0xAE,0xBA,0x90,0x8A,0x9C,0xB5,0xBA,0x62,0x52,0xDA,0x72,0xD6,0xE8,0x8B,0x48,0x1D,0xF5,0xB9,0xAD,0xAB,0x86,0xBC,0x25,0x1D,0xB7,0xBE,0x19,0xF2,0x91,0x50,0x3A,0x86,0xA2,0xCB,0x4C,0xB2,0xD3,0xFF,0x03};
|
||||||
|
//const uint8_t spFREEZING[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0xD6,0x8A,0x6A,0xD2,0x43,0x4D,0xCE,0x28,0x52,0xA5,0xA6,0xD4,0x2C,0xAB,0x2E,0x89,0x5D,0x5D,0xDA,0xAD,0xAA,0x67,0x25,0x09,0x7B,0xB3,0x8A,0x11,0x1D,0x29,0xED,0xF5,0x28,0x9A,0x27,0xF4,0x8C,0xDB,0xAD,0xA8,0x4A,0x28,0xDD,0x5F,0xB5,0xAA,0x31,0x67,0x33,0xDD,0x35,0xDA,0x8D,0x4D,0xCD,0x2D,0xEF,0x18,0x7E,0x16,0x74,0x57,0x2F,0xAD,0xF9,0x95,0x31,0xCC,0xD3,0x8E,0xB6,0x93,0x64,0x8B,0xDC,0xB8,0xEA,0x1E,0x8C,0x45,0xE3,0xCE,0x6A,0xBA,0x17,0xCA,0xF2,0xC2,0xA3,0x6D,0x06,0xDB,0x43,0x9C,0x8C,0xB6,0x19,0x2C,0x0B,0x76,0xD3,0xDA,0xA2,0xB0,0xCD,0xC5,0x75,0x69,0x93,0xE4,0x31,0x35,0xD7,0xAA,0x77,0x52,0x73,0x25,0x52,0xFD,0x3F};
|
||||||
|
//const uint8_t spAIR[] PROGMEM = {0xAD,0x6F,0x5E,0x38,0xBB,0x1A,0xAE,0xBE,0x67,0x65,0xCF,0x5C,0xB9,0x9A,0x5E,0x83,0xD4,0x7D,0xF3,0xAA,0x5A,0x31,0x2C,0xCF,0xC5,0xA3,0xAC,0xA5,0x20,0x83,0x5F,0x8F,0xB2,0xE6,0x01,0x1F,0xFA,0x34,0xCA,0x52,0x13,0x72,0xE8,0xD5,0x28,0xF2,0x10,0x9E,0xE0,0x57,0xA3,0xCC,0x93,0xB4,0xD5,0x7B,0x95,0xAA,0x6C,0x0C,0x93,0xCE,0xF4,0xFF};
|
||||||
|
//const uint8_t spBELOW[] PROGMEM = {0x0C,0x50,0xD6,0x6C,0x24,0xD5,0x39,0x73,0x58,0xEB,0x55,0x75,0x9F,0x8C,0x65,0x6B,0x56,0xD3,0x9C,0x92,0x94,0x3F,0x19,0x6D,0xD3,0xC6,0x9C,0xB6,0x66,0x74,0x8B,0x89,0x6B,0x52,0xB7,0xD1,0x2D,0xC6,0x11,0xC1,0xE9,0x5B,0xB7,0x04,0x65,0x3A,0x66,0x1F,0xDD,0x16,0x54,0xA5,0xD8,0x6D,0xD5,0x8D,0x66,0xBB,0xF2,0xD6,0x55,0x15,0x9E,0xED,0x2A,0x5B,0x56,0x95,0x79,0x4F,0xA8,0x74,0x19,0x65,0x14,0xD3,0x21,0xD2,0xB9,0x15,0x51,0xCE,0x18,0x6B,0xE7,0x52,0x78,0xBD,0xAD,0xA4,0x9D,0x53,0xE9,0xE5,0xB6,0x91,0x74,0x49,0x55,0x90,0xD3,0xC2,0xBA,0x25,0xD4,0x91,0x74,0xAB,0x69,0x1B,0x57,0x47,0x31,0xEA,0xAA,0x75,0x44,0x23,0x45,0xBB,0x9B,0xCD,0xF9,0x7F};
|
||||||
|
//const uint8_t spAND[] PROGMEM = {0x6B,0xA8,0x2E,0x79,0xAC,0x37,0xAE,0xA5,0xBA,0xE4,0xCE,0x5C,0xB8,0xA6,0xE6,0x92,0xB3,0x62,0xD1,0x9A,0xAA,0x2B,0x8E,0x8A,0x45,0x6B,0xAA,0xA6,0x38,0x33,0x66,0x97,0xA9,0x39,0xCC,0xD0,0xF0,0x9C,0xA6,0x66,0xB1,0x5C,0xD2,0xB3,0x99,0x93,0xA4,0x0E,0x19,0x17,0x64,0xE3,0xBA,0x34,0xB3,0x6D,0x96,0xA7,0x69,0x53,0x57,0xDD,0xD2,0x96,0x6A,0x8A,0x45,0xA2,0xF5,0xFF,0x03};
|
||||||
|
//const uint8_t spFOR[] PROGMEM = {0x08,0xA8,0x56,0x98,0x00,0xD5,0x97,0x13,0x60,0xD8,0x50,0x51,0x58,0x77,0xA5,0x81,0x59,0x62,0x57,0xBA,0x20,0x6E,0x25,0x58,0x5B,0xEB,0x83,0xB9,0xE2,0x14,0xEF,0xA3,0x0F,0x7E,0x2D,0x8A,0xBD,0x8D,0x3E,0x86,0x11,0x4F,0xF3,0x37,0x86,0x64,0x53,0xCB,0x2D,0x77,0x18,0x33,0x2F,0x09,0x97,0x45,0xFF,0x0F};
|
||||||
|
//const uint8_t spHAZE[] PROGMEM = {0x08,0x28,0x5A,0x1C,0x01,0x45,0x7B,0xB4,0xA6,0x39,0x92,0x8E,0x2A,0xBD,0xCA,0x1E,0x8D,0x22,0x63,0xCE,0xAA,0xBA,0x73,0xD2,0xF1,0xDB,0xAB,0xEA,0xCE,0x48,0xC7,0x27,0xAF,0x6A,0x78,0x47,0x9D,0x98,0xBD,0x9A,0xEE,0x14,0x6D,0x73,0xF6,0x18,0x87,0x75,0x94,0xC9,0xC7,0x6D,0x19,0xD6,0x40,0xB6,0x6E,0xB5,0x7D,0x78,0x43,0xDE,0x5A,0x5C,0xF6,0x11,0x14,0x79,0x72,0x71,0x3A,0xBB,0x63,0xB2,0xCE,0xD7,0xE1,0xAC,0x8E,0x54,0x63,0x6A,0xBB,0x2B,0x18,0xF1,0xAE,0xAE,0x15,0xEE,0xCC,0x5D,0x22,0x72,0x55,0x7A,0x3A,0x09,0x27,0xCD,0xBE,0xE5,0x59,0x58,0xDD,0xD4,0xB3,0x86,0xF7,0x05,0xB5,0x61,0x72,0xA2,0x80,0xDF,0x4A,0x15,0xF0,0xAB,0xBB,0x00,0x7E,0x4A,0xFF,0x7F,0x08};
|
||||||
|
//const uint8_t spHIGH[] PROGMEM = {0x28,0x5A,0x1C,0x01,0x45,0x7B,0x94,0x32,0x87,0xB0,0x32,0x8E,0xB2,0xF2,0xE4,0xC6,0x33,0x65,0xF6,0xCA,0x53,0x68,0x8F,0xD4,0xC5,0xAB,0x48,0xA9,0x22,0xDD,0x17,0xAD,0x32,0xD5,0xF4,0x74,0x5F,0xBC,0xBA,0x1C,0xCB,0x32,0x74,0xF1,0x1A,0x8A,0x6F,0x8B,0xD4,0xC5,0x6B,0xAD,0xAE,0xCD,0x4B,0x17,0xAF,0xA3,0xBA,0x56,0x2F,0x7D,0x34,0xEE,0xEA,0x5A,0xAC,0x6D,0x51,0x7B,0x9A,0x6D,0xF1,0xD2,0x47,0xFD,0x2D,0x6F,0xD1,0x21,0x33,0xF9,0x30,0x7D,0x2D,0x88,0x74,0xD4,0xE4,0xF4,0x57,0xAF,0x34,0xD5,0x93,0xD2,0xDF,0x82,0x61,0x76,0xCF,0xFE,0x7F};
|
||||||
|
//const uint8_t spSCATTERED[] PROGMEM = {0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x04,0x4E,0x51,0xAA,0x42,0x35,0xC0,0x00,0x3D,0x15,0xAD,0xA0,0x15,0x65,0xCB,0xB8,0xBD,0xB2,0xEA,0x4D,0xB2,0xE2,0xD1,0x2A,0x4A,0x30,0xAD,0x8A,0xDB,0xAB,0xAA,0xC5,0x35,0x23,0xEF,0xAC,0xA6,0x64,0xB5,0xD2,0x2D,0x6D,0xFA,0x49,0xCD,0xD2,0xCB,0x91,0x00,0xBA,0x55,0x6D,0x5D,0x6D,0xC2,0xE1,0xB6,0xA8,0x4C,0x65,0x32,0xB5,0xEB,0xAB,0xB2,0x96,0x65,0x90,0x45,0xBB,0xCB,0x5E,0x5B,0x82,0x0C,0x6F,0x2E,0x67,0xAD,0x45,0xDC,0xBC,0x27,0x9D,0x75,0x88,0xA8,0x44,0x5B,0x75,0x65,0x43,0x56,0x96,0x35,0xD9,0x15,0xA5,0x68,0x79,0x34,0x64,0x40,0x81,0x61,0xE5,0x1E,0xCE,0x4D,0xCC,0x3B,0xFF,0x3F};
|
||||||
|
//const uint8_t spINCREASING_TO[] PROGMEM = {0x6E,0x1D,0x59,0xD1,0x2C,0x9B,0xB4,0x75,0x58,0x03,0x9F,0x9A,0x35,0xBA,0x1E,0x04,0xB3,0x7A,0xF6,0x6A,0x7B,0x52,0xB2,0xA8,0x39,0xAB,0xED,0x3E,0xC8,0x32,0x67,0x9F,0xBE,0x8B,0x62,0xAD,0x58,0xD4,0xFA,0x6E,0x48,0xC7,0xDC,0x69,0x1B,0xBA,0x41,0x6B,0x0B,0xA7,0xA5,0xAF,0x1A,0x63,0xD4,0xED,0xBA,0x21,0x4A,0xCA,0x35,0x8B,0x23,0x66,0xCB,0xCA,0x32,0xAD,0x12,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x60,0x80,0x94,0xBC,0x0C,0x90,0x72,0xB8,0x01,0x72,0x2C,0x1F,0x49,0xC9,0x62,0x92,0xD2,0xF9,0x64,0x2D,0x1A,0x49,0xEA,0x96,0x95,0xF5,0xAC,0x20,0x69,0x8F,0x5B,0xD6,0x3C,0xB1,0x47,0x3D,0x4A,0xC0,0x44,0xAA,0x01,0xF8,0xDE,0x33,0x00,0xBF,0x85,0x27,0xE0,0x3B,0x8F,0x95,0x76,0xED,0xAC,0xEA,0xAB,0x57,0x3E,0x8C,0x13,0x67,0x3C,0x1E,0xC5,0xB0,0x8A,0x32,0x51,0xB9,0x15,0x55,0xB1,0x4D,0x49,0xDC,0x56,0x54,0x49,0xE5,0x66,0xAE,0x5B,0x5E,0x15,0x95,0x9B,0xA9,0x2E,0x59,0x91,0x58,0x25,0xAE,0xC6,0x65,0x51,0xD0,0xA4,0xA4,0x66,0x04,0x4E,0x51,0xAA,0x42,0x35,0xC0,0x00,0x4D,0x8B,0x27,0x60,0xBB,0xEA,0x00,0xF4,0x70,0x5D,0xB2,0xAA,0x55,0xCD,0x74,0x75,0x69,0xB3,0x64,0xCB,0x92,0x37,0xA5,0x8B,0x42,0xA2,0x52,0xDF,0xA4,0x2E,0x4A,0xCE,0x0E,0xDD,0xFC,0xFF};
|
||||||
|
//const uint8_t spIN[] PROGMEM = {0x65,0xED,0xD6,0xD1,0x2A,0x3F,0xB5,0x65,0x98,0x40,0xED,0xDA,0x3C,0xE6,0xA1,0x13,0x79,0x72,0xF5,0x1A,0x87,0x09,0x94,0x8E,0xC7,0x63,0x6C,0xDE,0xD1,0x2A,0x2F,0xB7,0xB1,0x7A,0xE7,0x88,0xBC,0x9C,0xA6,0xE6,0x30,0x53,0xCD,0x49,0x99,0x9A,0xA5,0x70,0x73,0xC7,0x65,0x6A,0x86,0x22,0xD5,0x9D,0xA4,0xB9,0x19,0x8C,0xD0,0x70,0x1D,0xE6,0xAA,0x31,0x4B,0xDD,0x8D,0x5B,0xB2,0xC4,0x31,0xCD,0x44,0xFF,0x0F};
|
||||||
|
//const uint8_t spLOW[] PROGMEM = {0x65,0xDF,0x98,0xA3,0x4A,0xB4,0xE5,0x65,0x4E,0xAB,0x9F,0xD4,0xA2,0x92,0xBC,0x9E,0xB6,0xF2,0xC8,0x71,0xEA,0x7B,0x9B,0xD5,0x24,0x5E,0x3D,0xCC,0x79,0x77,0x3B,0xFB,0xB9,0xF4,0xBD,0xEE,0xF5,0x0C,0x97,0x37,0x5D,0x0B,0x92,0xC7,0xDF,0xFE,0xFD,0x7F,0xA1,0x4A,0x36,0xBD,0xDD,0x3B,0x97,0x2D,0xE6,0xB2,0xD4,0x6C,0x35,0xA6,0x18,0x2A,0x4A,0x6D,0xD3,0x1A,0xB3,0xDA,0x08,0x97,0xDE,0x6B,0x88,0x66,0x3D,0x5D,0x7B,0x8F,0x21,0xA9,0xF6,0x08,0xF1,0x1C,0xE6,0x2C,0xC3,0xD2,0x28,0xB5,0x5B,0x32,0x77,0x0D,0x53,0x27,0x69,0xEB,0xD2,0xD9,0x55,0x1C,0x97,0x65,0x4B,0x33,0xD5,0x70,0x12,0xF6,0x29,0x5A,0x45,0x45,0xC9,0xFF,0x03,0x08,0x9C,0xA2,0x54,0x85,0x6A,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spTHUNDERSTORM[] PROGMEM = {0x04,0xE8,0xA6,0x94,0x02,0x14,0x38,0x79,0x15,0x15,0x16,0xB2,0xF9,0xE4,0x4D,0x76,0x7A,0xD2,0x96,0x93,0x37,0xD9,0x61,0x41,0x9B,0x5B,0x5E,0x0D,0x66,0xAB,0x39,0x2B,0x45,0xD6,0xD8,0xA1,0xE1,0xA6,0x54,0xC5,0x50,0xB0,0x5B,0x9B,0xD5,0x35,0x93,0x4A,0x1E,0x69,0x4F,0x53,0x43,0xA1,0x94,0x79,0x5B,0x6D,0x8D,0x09,0x5A,0x96,0x6D,0x0C,0xA5,0x30,0x85,0x47,0xE6,0x00,0x2C,0xC3,0x16,0x80,0x9B,0xC3,0x1C,0xF0,0x4F,0xAB,0x02,0xEE,0x49,0x45,0x40,0x17,0xA0,0xAD,0xDE,0xC6,0x42,0xD8,0xDD,0xAC,0x3E,0xF3,0x0E,0x4A,0xCF,0x36,0x86,0xA8,0xCF,0xB9,0x38,0x5B,0x99,0x43,0x3D,0xB7,0xC2,0xAC,0x6D,0x09,0x6D,0x2C,0x9D,0xEB,0xB6,0x35,0xD6,0x91,0x74,0x49,0x5A,0x8E,0x58,0x5A,0x32,0x24,0x6D,0xD9,0x52,0x4E,0xEE,0xE2,0xB6,0xE5,0xCF,0xC5,0x79,0x8A,0x7B,0xA7,0x3F,0x77,0xB6,0x76,0xEF,0x9D,0xFE,0xDC,0x9C,0xD3,0xCC,0x8B,0xFB,0xB3,0x56,0x35,0x59,0x2B,0xE6,0x8F,0xD6,0xC4,0xAD,0x23,0xAB,0x3F,0x19,0x35,0xA7,0xAE,0x6C,0xFE,0xAC,0xD8,0xD2,0x3D,0x77,0xF9,0x5F,0x71,0x2D,0x65,0xA7,0x04,0xF8,0xCD,0x99,0x00,0x7F,0xB4,0xFC,0x3F};
|
||||||
|
//const uint8_t spOVERCAST[] PROGMEM = {0xAA,0xF1,0xE6,0xC2,0xCC,0x3A,0x97,0x26,0x8A,0x6D,0x31,0xEE,0x36,0x8A,0x4C,0xBB,0xD5,0xD9,0xDB,0xC8,0x22,0xEF,0xB6,0xC0,0x7C,0x2D,0x8D,0x62,0xDA,0x12,0xFD,0xA7,0xCC,0x9B,0x72,0x4F,0x4E,0x2C,0x6A,0x43,0xAA,0x53,0xCD,0x71,0x18,0xBA,0x76,0x73,0x55,0xDB,0xAD,0x8E,0xB1,0x38,0x1A,0xF3,0x8E,0x2E,0xC5,0x44,0x5F,0xEC,0x3D,0xFA,0x52,0x12,0x6C,0xA9,0x4F,0x1B,0x6A,0x5A,0xC4,0xD5,0x2C,0x69,0x6E,0x79,0x80,0x47,0xDB,0x20,0x70,0x8A,0x52,0x15,0xAA,0x01,0x01,0xE8,0x56,0xC8,0x01,0x55,0x29,0xAF,0xB2,0x26,0xE5,0x94,0x9A,0xBD,0xC6,0xE6,0x8B,0xAD,0xEC,0xF5,0x5A,0x9A,0x69,0xD1,0xB1,0xD7,0x6B,0xED,0x7A,0x54,0xC7,0x5E,0xAF,0xB5,0xEB,0x56,0x6B,0xFD,0xBC,0xB6,0x66,0x47,0xB5,0x6C,0xF5,0x38,0x9B,0x6A,0xF5,0xB6,0xCF,0xE3,0xAE,0x21,0xB5,0x2C,0x16,0xB7,0xA7,0xBA,0xD2,0xD6,0x5C,0xDC,0x9E,0x12,0xDD,0x8B,0xA7,0x76,0xBA,0x73,0xB4,0x48,0xDE,0xD8,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x50,0xC0,0x90,0x6E,0x0C,0xD8,0x5C,0xED,0xFF,0x01};
|
||||||
|
//const uint8_t spUNLIMITED[] PROGMEM = {0x65,0x4D,0xEE,0xCC,0x33,0x56,0x8D,0x26,0xEB,0x0B,0x2B,0x5F,0xB5,0xAA,0xA2,0xC7,0x3D,0x65,0xF1,0x2A,0x53,0x0A,0x77,0xAB,0xCA,0xA5,0xCC,0x8A,0xDB,0x38,0xDC,0x94,0x32,0x2B,0x1E,0x63,0x77,0x13,0xCA,0xA0,0xB5,0x95,0x3C,0x6D,0xAA,0xA2,0xB1,0x94,0x10,0xB7,0xA5,0x8A,0xA2,0xD3,0x54,0x5A,0xB7,0xAA,0x90,0x98,0x50,0x6A,0xD3,0xAA,0x4A,0xAC,0xC3,0xB1,0xCD,0x2A,0x8A,0xCA,0xE0,0xB0,0x25,0xAB,0xE8,0x22,0x92,0x53,0xD7,0xAC,0x72,0xA8,0x48,0x49,0x5E,0x33,0xAA,0xAA,0xD9,0x32,0xC9,0x4E,0x69,0x8A,0x62,0xCB,0xA2,0xA4,0xA3,0xCF,0x26,0x5D,0x43,0x16,0x8F,0x39,0xBB,0x54,0x4D,0x7F,0xD4,0x96,0xAC,0x2C,0xD2,0x62,0x31,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xE0,0x80,0x26,0x53,0x1D,0xB0,0x09,0x59,0x9B,0xB3,0x13,0x33,0xAF,0xC5,0x63,0x6D,0xDA,0x55,0x53,0xB7,0x94,0xBD,0x58,0x17,0x8D,0xF8,0x53,0x8E,0xAA,0x42,0x25,0x6C,0x4B,0x38,0x87,0x74,0xA3,0xE0,0xAE,0xE4,0x72,0x24,0x7D,0x32,0x52,0xD1,0xBB,0x3C,0xDD,0x19,0xB9,0xD8,0x96,0xFF,0x07};
|
||||||
|
//const uint8_t spLOW2[] PROGMEM = {0x61,0xA9,0xC0,0x3A,0x4C,0xD3,0xA5,0xA5,0x43,0xEE,0x74,0x49,0x97,0x96,0x45,0xA8,0x4A,0x25,0xDB,0x18,0x06,0xD1,0x72,0xA3,0xAC,0xAB,0x6E,0x34,0xDB,0x94,0xFB,0xAE,0xBA,0xD2,0x6A,0x33,0xE9,0xB2,0xAA,0xCC,0xA6,0xCD,0xB4,0xCF,0xAA,0x13,0xDF,0x36,0x95,0xBE,0xA3,0x0D,0x6A,0x2B,0x54,0xFA,0x94,0x21,0x98,0x2B,0x51,0xEF,0x9D,0x16,0x17,0xB7,0x58,0x7C,0x57,0xDA,0x5D,0xD8,0x34,0xD2,0xCE,0xE9,0xD0,0xB3,0x5D,0xB8,0x56,0x87,0x53,0x8F,0x51,0xE5,0x68,0x1C,0x4E,0x95,0xDF,0x44,0x65,0x75,0xB8,0x64,0x3B,0x17,0xF1,0xAE,0xEE,0x56,0xA3,0x43,0xC9,0x5B,0xBB,0x5B,0xF6,0x35,0x15,0x6B,0xE3,0x1E,0x13,0xCF,0x4D,0xB4,0xCF,0xFF,0x03};
|
||||||
|
//const uint8_t spPERCENT[] PROGMEM = {0x02,0xC8,0xD9,0x5C,0x03,0x2D,0x8A,0xB1,0x30,0x46,0x52,0xAF,0xBA,0x86,0x26,0x1A,0xF6,0x77,0x9B,0xD3,0xD5,0x18,0x68,0x69,0x59,0x63,0xEF,0x80,0x5F,0x5A,0x2D,0x60,0x01,0x0B,0x68,0xC0,0x03,0xAB,0x6E,0xDE,0x25,0x2D,0x17,0xDF,0xFA,0x36,0xBB,0x1D,0x53,0xB1,0x6E,0x23,0x5D,0xA7,0x5D,0x23,0x92,0xB9,0xA7,0x62,0x7F,0x20,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0xA0,0x80,0xA5,0x33,0x0C,0xF0,0xB3,0x27,0x02,0x5A,0x4A,0xFD,0x7F};
|
||||||
|
//const uint8_t spOVER[] PROGMEM = {0x63,0x6F,0xC4,0x7A,0x1D,0xB5,0xED,0x61,0x37,0xBB,0x6E,0x75,0x62,0xD9,0x2D,0xEC,0xBF,0x56,0xAD,0x09,0xBA,0x32,0x8C,0x13,0xC7,0xD6,0xED,0x4D,0x85,0x86,0x99,0xE3,0x3E,0xB7,0x29,0x86,0x90,0x2C,0x76,0xDB,0xE6,0x98,0x95,0xBB,0x38,0x4F,0x5B,0x72,0x29,0xB4,0x51,0x6F,0x7D,0xAF,0x47,0xB9,0x73,0x71,0x8C,0x31,0x3F,0xE1,0xC9,0xA9,0x50,0xD6,0xFD,0xBA,0x27,0x57,0xC5,0x6E,0xCD,0xFD,0xFF};
|
||||||
|
// ROM VM61004
|
||||||
|
//const uint8_t spALPHA[] PROGMEM = {0x63,0xA9,0x21,0xB4,0x3C,0x16,0xAF,0xB6,0x84,0xD2,0x0A,0x5F,0xB3,0xAA,0xE2,0xDA,0x32,0xF4,0xCD,0x2A,0x93,0xDF,0x28,0xD7,0x27,0xAB,0xC8,0xE2,0x5B,0x93,0x57,0xAF,0xB2,0xD0,0x1B,0x0B,0xEE,0xB2,0xCA,0x24,0xAE,0xC3,0x28,0x4B,0xA9,0x0B,0xAF,0x0E,0x13,0x47,0x02,0xA8,0xA6,0x4C,0x00,0x4D,0x57,0x08,0xA0,0x99,0x0C,0x01,0x74,0xED,0xB1,0xEA,0x22,0xBA,0xD4,0xA9,0xCD,0xAA,0x2B,0xEF,0xD6,0xE0,0xBD,0x6B,0x69,0xAC,0x5A,0x83,0xF7,0xAE,0xB3,0xB1,0x6A,0x0B,0xDE,0x32,0xF6,0xA2,0x3A,0xC2,0x79,0x73,0xBD,0xF2,0xFD,0xFF};
|
||||||
|
//const uint8_t spBRAVO[] PROGMEM = {0x02,0x10,0x2C,0x34,0xB4,0x46,0xAF,0xC8,0x8A,0xBD,0xD4,0x84,0xA9,0xE6,0x2D,0xFC,0x46,0x1D,0x7B,0x48,0x87,0x2A,0x5F,0x55,0x76,0x13,0xE9,0xBA,0x7A,0x97,0xBB,0x9C,0x55,0x69,0xA3,0xAB,0x48,0xD7,0xD5,0xB1,0x0F,0x63,0xF7,0xA1,0xE6,0x2A,0x3B,0x8E,0x65,0x0C,0xA9,0x52,0x55,0x56,0x8D,0xB6,0x92,0x6A,0x77,0xF1,0xBB,0xC6,0x86,0xB2,0x3A,0x44,0xFD,0x9C,0xDB,0x52,0x48,0xD7,0x38,0xB9,0xEF,0x7B,0xDD,0xC3,0xEE,0x7D,0x67,0xB0,0xF4,0x89,0x67,0xBC,0xFE,0x1F};
|
||||||
|
//const uint8_t spCHARLIE[] PROGMEM = {0x06,0xD8,0x2D,0x2C,0x01,0x33,0xB7,0x67,0xA0,0xC5,0xC5,0x8D,0xC8,0xB2,0xB7,0x96,0x17,0xBF,0x26,0x87,0xF9,0x5A,0x91,0xF3,0xB0,0x1F,0x75,0x19,0x45,0xCE,0xCD,0x71,0xD4,0x65,0x54,0x39,0x8E,0xDA,0x71,0xB6,0xD1,0xC5,0x30,0xE9,0x6E,0x69,0xCB,0x5C,0x51,0x8F,0x15,0x66,0x49,0xFB,0x80,0x31,0xA2,0xE6,0x7D,0x9D,0x55,0xB6,0x59,0xD8,0xEA,0x71,0x0F,0xDE,0xCA,0xE5,0x9B,0xC7,0xD3,0x65,0x92,0x55,0x6C,0x2E,0xEF,0x30,0x49,0x92,0xB1,0x3A,0xBD,0xC3,0x04,0x72,0xE7,0xE6,0xF0,0x75,0xEB,0xA8,0x93,0xAB,0xFF,0x1F};
|
||||||
|
//const uint8_t spDELTA[] PROGMEM = {0x0A,0x28,0x30,0x6C,0xAD,0xC3,0xA7,0xAA,0x70,0xD7,0xD5,0x76,0x5D,0x22,0xEE,0x5B,0x57,0xD9,0xF9,0xB8,0xA6,0x6D,0x59,0x65,0x16,0x9B,0xA1,0xDE,0x7B,0xD5,0x99,0x6D,0xA5,0x58,0xDE,0xD5,0x64,0x11,0x5D,0xC2,0x69,0xCA,0x30,0x25,0x5B,0x85,0x32,0x21,0x40,0x96,0x26,0x0E,0x58,0x4A,0x33,0x00,0x4B,0xB5,0xAD,0xAE,0x9A,0xF0,0x30,0xDF,0xB2,0xC7,0x31,0x35,0x55,0xE9,0x21,0x5D,0xFB,0x34,0xF6,0xAA,0xC6,0x3C,0xA5,0x73,0x3F,0xFE,0x1F};
|
||||||
|
//const uint8_t spECHO[] PROGMEM = {0x2B,0x6F,0xB1,0xD9,0xD3,0x36,0xDF,0xF6,0x36,0xB7,0x26,0x85,0x08,0xE5,0x2E,0x22,0x1B,0x20,0x00,0x25,0xAC,0x2A,0x20,0xCF,0xD3,0x52,0x45,0x53,0x6A,0xA9,0x9E,0x4F,0x9B,0x54,0x47,0xB9,0xE4,0xDF,0xC3,0x1C,0xC6,0x98,0x45,0x65,0xBB,0x78,0x9F,0xCB,0x5C,0xD2,0xEA,0x43,0x67,0xB0,0xE5,0xCD,0x7B,0x38,0x9D,0xAD,0x2C,0x15,0x37,0xF1,0xFC,0x7F};
|
||||||
|
//const uint8_t spFOXTROT[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0xF4,0x91,0xC6,0x58,0x15,0xCA,0x8B,0x47,0x9A,0xFC,0x64,0x1A,0xAF,0x19,0x59,0x4A,0x9D,0xA1,0xFA,0x64,0x64,0xA9,0x65,0x86,0xE4,0xE2,0x91,0xA7,0xEE,0x99,0x92,0xAB,0x04,0xE0,0xA2,0x93,0x04,0x08,0x90,0x9D,0x33,0x03,0x9E,0x71,0x65,0xC0,0x4F,0x29,0x0A,0xF8,0xAD,0xD4,0x02,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x00,0x86,0x21,0x57,0xC0,0x48,0x53,0x01,0x18,0x36,0xBC,0x65,0xA9,0x4B,0xAA,0x4B,0x9B,0xD6,0xC4,0xEE,0x11,0x41,0x6B,0xDB,0x94,0xEC,0x94,0x36,0xED,0x6D,0x4B,0x76,0x93,0x9E,0xFC,0xA5,0xED,0xD9,0x4D,0x58,0xEA,0x9A,0xBE,0xB7,0x2B,0xC5,0x76,0x4F,0x7F,0x14,0xFE,0xD8,0xCD,0x2B,0x7A,0xB2,0xFA,0x9B,0xF2,0x88,0xF0,0xAE,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x80,0x00,0x8E,0xE0,0x30,0xC0,0xB2,0x53,0xFF,0x0F};
|
||||||
|
//const uint8_t spGOLF[] PROGMEM = {0x0A,0x88,0xA1,0x71,0x15,0x85,0x76,0x45,0x8A,0xFF,0x9B,0xDF,0x6C,0x65,0x99,0x5C,0xB7,0x72,0xDE,0x9D,0xED,0x72,0x77,0x73,0x6C,0x4B,0x54,0x35,0x63,0xE4,0xA6,0xEE,0xF9,0x34,0x57,0x94,0x39,0x63,0xE4,0x86,0x5F,0x04,0x98,0x34,0xDD,0x02,0x0E,0x98,0x32,0x5D,0x03,0x12,0xE0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spHOTEL[] PROGMEM = {0x08,0xC8,0x4A,0x0C,0x01,0xC5,0x74,0x11,0xA0,0xCA,0xEA,0xD1,0x36,0x5A,0xDD,0x46,0xDE,0x56,0x55,0x49,0x76,0x07,0x79,0xDB,0xC5,0x28,0x0A,0xEE,0x6E,0x61,0xFF,0xBD,0xAC,0x0D,0x02,0x45,0x70,0x17,0x11,0xD9,0x00,0x02,0xE8,0x54,0x2D,0x00,0xD5,0x84,0x05,0x60,0x2A,0xB3,0x93,0x35,0x67,0x66,0x9C,0x6B,0x4E,0x56,0xBD,0x9B,0x6A,0xDD,0x39,0x59,0xF1,0xAE,0x6E,0xBD,0xF8,0x14,0xC5,0xA7,0x85,0xE5,0xE2,0x53,0x15,0xD5,0x9E,0x2E,0x9F,0xCF,0x50,0xE4,0xA6,0x07,0xBF,0x59,0x6B,0xC5,0x33,0x19,0xD8,0xA5,0x1C,0x89,0xCE,0x94,0x61,0x9B,0x74,0x7A,0xDD,0x13,0xC4,0x4B,0xFC,0xE9,0x4E,0xA7,0xAE,0x0A,0xA5,0xCD,0xFF,0x03};
|
||||||
|
//const uint8_t spINDIA[] PROGMEM = {0xA3,0x9D,0xD6,0x99,0x32,0x17,0x8F,0x66,0x86,0x16,0x74,0x5F,0xB3,0x9A,0xE1,0x4A,0xC4,0xF4,0xCE,0xAE,0x46,0xD1,0x1D,0x5A,0x46,0x3A,0x99,0x45,0x2B,0xAA,0x82,0xAC,0x08,0x27,0xBE,0x5A,0xDD,0x0C,0x25,0x42,0xBC,0x7B,0xF5,0xD3,0x17,0x61,0xF8,0x96,0xDD,0xEF,0x61,0x2C,0xCD,0x8A,0x44,0xC6,0xE3,0xB1,0x57,0x1B,0x62,0x69,0xAF,0xC7,0x99,0x9C,0x7B,0x66,0x2C,0x6E,0x77,0xF6,0x69,0x11,0xF6,0xAA,0xBC,0x29,0xA4,0x87,0xDB,0xE7,0xF4,0xE5,0x14,0x1E,0x1A,0xAB,0xDD,0x9F,0x62,0x7A,0x68,0xAC,0xFA,0x7F};
|
||||||
|
//const uint8_t spJULIET[] PROGMEM = {0x61,0x5D,0x96,0x49,0x34,0xD2,0x06,0x60,0xC7,0x90,0x0C,0x8C,0x66,0xF6,0x15,0x22,0x4D,0x37,0xAA,0x6A,0xC8,0x2C,0x6D,0xCD,0x28,0xB2,0x15,0x8B,0xE4,0x35,0xB3,0x68,0x79,0x51,0xE6,0xDA,0x9C,0xBE,0x15,0x43,0x89,0xF0,0xA2,0xDB,0x95,0x77,0xA7,0xA6,0x66,0x49,0x77,0xB1,0x9A,0x9E,0x0A,0xD5,0x75,0xEB,0xEE,0xF6,0xB0,0xC6,0xE6,0x83,0xD2,0xE3,0xEB,0x5E,0xD7,0xDA,0x5C,0x48,0x87,0x6D,0x9E,0x7B,0xDF,0xF3,0x89,0x40,0x11,0xCA,0x5D,0x44,0x36,0x00,0x38,0x60,0xEA,0x8C,0x00,0x2C,0xB3,0x6D,0x01,0x01,0x14,0x5F,0x8E,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spKILO[] PROGMEM = {0x06,0xE8,0x12,0xD9,0x02,0x12,0x68,0xE1,0x8C,0x86,0xD4,0xF5,0x76,0xC6,0x33,0x1A,0xD1,0x74,0x4A,0x54,0x1E,0x6F,0x26,0x2B,0x5B,0xDC,0x42,0x93,0xB2,0xED,0x71,0x4D,0x95,0x7B,0x8E,0x53,0xDF,0xBD,0xAE,0xB5,0xB0,0xCC,0x2A,0xEE,0xBB,0xF7,0x76,0x26,0x53,0xD9,0x4A,0x7D,0xFB,0x59,0x6E,0x1F,0x2B,0x1B,0x75,0x4D,0xBC,0xE3,0x13,0xDE,0xA0,0xA6,0x32,0xC8,0xAF,0xFB,0x93,0x18,0xAF,0x20,0x7D,0xFF,0x0F};
|
||||||
|
//const uint8_t spLIMA[] PROGMEM = {0x61,0x5A,0x90,0xBA,0xC0,0xD7,0xA6,0x69,0x00,0x19,0x85,0x6A,0xDA,0x9A,0xCD,0x24,0xD9,0xCC,0xCB,0x2A,0x46,0x76,0x66,0xF5,0x37,0x3B,0x9B,0xC9,0x48,0x7B,0x50,0xD4,0x8E,0xD9,0xBD,0xA8,0x75,0x6B,0xB3,0x62,0xEE,0xF4,0xB8,0xB5,0xAD,0xFD,0xE8,0x1B,0xAF,0xCC,0xA2,0xCE,0x7B,0xD8,0xFB,0x38,0xB3,0xDA,0xC8,0xD0,0x55,0xFD,0xA9,0x6F,0x7D,0xFF,0x1F};
|
||||||
|
//const uint8_t spMIKE[] PROGMEM = {0x66,0x31,0x3C,0x7C,0x52,0xE3,0xC4,0x69,0xF5,0x85,0x57,0x86,0x51,0xAA,0xD3,0x56,0x75,0xA1,0x69,0x9D,0x6F,0x7D,0xCA,0x6A,0x57,0x23,0x6D,0xF5,0xCD,0x57,0xD1,0x4B,0x50,0x78,0x2C,0xDA,0x75,0x69,0x46,0x77,0xB4,0xCE,0xDB,0xB1,0x45,0xAD,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x18,0xD0,0x3C,0x91,0x03,0x5A,0x09,0xB1,0x80,0x00,0xB2,0x13,0xFE,0x7F};
|
||||||
|
//const uint8_t spNOVEMBER[] PROGMEM = {0x66,0x2D,0x02,0x62,0x4B,0xE3,0x8E,0xA5,0xEB,0x10,0x77,0x6E,0xB3,0xAA,0x2A,0x2A,0x39,0x74,0xCB,0x2A,0x0B,0xCB,0xB2,0xE4,0xAE,0xAB,0x4C,0xBC,0xDB,0x9C,0xFA,0xB6,0x2A,0x8A,0x29,0x33,0xEE,0x93,0xEA,0xA0,0xA6,0xC4,0xB9,0x55,0xE8,0x92,0xA8,0x54,0xA7,0xC4,0x6E,0x18,0x32,0xCC,0x54,0x2D,0xB7,0xB5,0xA9,0x72,0x53,0x51,0xBC,0xAA,0xE2,0x53,0x2C,0xB4,0xF5,0x2A,0x8A,0x2B,0xB5,0xD2,0xD5,0xAB,0x28,0xA6,0xD4,0xDA,0x5A,0xAF,0x22,0xFB,0x32,0x2B,0x4B,0xD3,0x8A,0x14,0xDC,0xDA,0xC8,0x4E,0xA9,0x52,0x24,0x6B,0x53,0xB9,0x6A,0xF0,0x51,0xB5,0x42,0xE9,0x31,0xC0,0x9B,0xB0,0x34,0xA7,0xA6,0xD4,0x85,0x6F,0xCA,0x5A,0xC2,0x0A,0x2E,0xE6,0x6B,0x67,0x89,0xC3,0xB4,0xD8,0x2F,0x5D,0x25,0x0D,0xD3,0x52,0xDF,0xF4,0x14,0xDF,0x44,0x47,0xFB,0xD2,0x53,0x72,0xA2,0x1E,0x75,0x09,0x4F,0x89,0x8D,0x7C,0xB4,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spOSCAR[] PROGMEM = {0x6B,0xC8,0xE2,0xB2,0x42,0x3A,0xDF,0xFA,0x16,0x27,0x4F,0xAE,0x7D,0xC4,0x17,0xB7,0x2C,0x45,0xAF,0xA4,0xB6,0x6D,0x80,0x03,0xD8,0x0C,0xF0,0xA7,0x9B,0x07,0x3C,0xE0,0x80,0xEB,0xB5,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x02,0x34,0x75,0x65,0xB6,0xA6,0xAE,0xA2,0x34,0x6E,0xEA,0x8B,0x9B,0x24,0x13,0xA5,0xAD,0xCD,0xA9,0xC8,0x86,0xF3,0xCE,0x7E,0x8E,0x6D,0xC9,0xCD,0xB0,0x5A,0x7A,0xCF,0xAD,0xEE,0xF5,0x4C,0x77,0x89,0x83,0x3A,0xA9,0x37,0x7F,0xE1,0x2F,0xAD,0x48,0x87,0xB3,0xFC,0x3F};
|
||||||
|
//const uint8_t spPAPA[] PROGMEM = {0x0A,0x28,0x56,0xB9,0xA5,0x45,0x55,0x84,0x49,0xCC,0x93,0x66,0xD7,0x19,0x26,0x4B,0x4E,0x96,0xDD,0x44,0xBA,0xAE,0xBE,0xD9,0xCC,0x10,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x60,0x80,0xF1,0xE9,0xAB,0xCA,0xA6,0x23,0xD4,0x36,0xDF,0xE1,0x8C,0x55,0x74,0x86,0x6B,0x9F,0xB1,0x67,0xBD,0xE1,0xE6,0xBB,0xDB,0x97,0x53,0x45,0x88,0xCF,0xAE,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spQUEBEC[] PROGMEM = {0x0C,0x88,0x7E,0x8C,0x02,0xA5,0x0A,0x31,0xDD,0x5C,0xB2,0xAC,0x26,0x5B,0xCF,0x4C,0xEE,0xBB,0xBB,0xDE,0xA7,0xCD,0xA8,0xB4,0x75,0x4D,0x1C,0xB7,0xD1,0xD5,0x28,0xEE,0xE6,0x5B,0x76,0x7B,0x9A,0x1A,0xC4,0x33,0xF3,0xF1,0x6D,0x76,0x3F,0xE7,0xB6,0xB6,0xEC,0x12,0x91,0x9B,0xF2,0x8E,0x40,0x11,0xCA,0x5D,0x44,0x36,0x80,0x00,0x7A,0x2F,0x53,0x40,0x2D,0x24,0x14,0xF8,0x7F};
|
||||||
|
//const uint8_t spROMEO[] PROGMEM = {0xA2,0xD5,0x39,0x38,0xCA,0xEC,0xDB,0xA5,0x4C,0xA1,0x98,0x5A,0xB9,0xF2,0xD3,0x47,0x6F,0xE9,0x69,0xCA,0x4E,0xDD,0x89,0x57,0x0E,0x69,0x3F,0x45,0x61,0xD9,0x95,0x98,0x65,0x67,0x25,0x6B,0x86,0x64,0x4C,0xAC,0xF5,0xE2,0x54,0xCD,0x86,0x7A,0xD0,0xE6,0x35,0x4C,0xD7,0x02,0xA5,0x7B,0xF6,0xB0,0xA7,0xBD,0xAC,0xB5,0xAA,0x54,0x1D,0xDB,0xB2,0xF6,0xEC,0xC3,0xD3,0x64,0x73,0xD9,0x63,0xC8,0x2C,0xD5,0xDF,0xE9,0x0C,0xA1,0x33,0xD8,0xF2,0xE6,0x33,0x5E,0xEE,0x09,0xB6,0xB2,0x54,0xDC,0xF8,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spSIERRA[] PROGMEM = {0x0C,0xF8,0xAD,0x54,0x03,0x06,0xF8,0x2D,0xD5,0x01,0xBF,0x94,0x39,0xE0,0xE7,0x32,0x0B,0xB4,0xAC,0x3B,0x25,0x75,0x5F,0xBD,0x8A,0x11,0x0D,0x39,0x63,0xF5,0x28,0x47,0x34,0xE0,0xEA,0x4D,0xA3,0x1A,0x49,0x91,0xBB,0x56,0x8D,0x7A,0x78,0x45,0xD9,0x7C,0xB2,0x9A,0xE1,0x9C,0x78,0xE2,0xF1,0x69,0x86,0x09,0x92,0xB1,0xD7,0xA7,0x6E,0x2E,0xD9,0xC7,0x5E,0x9F,0xBA,0x84,0xE4,0x1C,0x79,0xBD,0xAA,0xD4,0xC4,0xB2,0x79,0xCD,0xA8,0x53,0x97,0xF0,0xA6,0x3C,0xA3,0x4B,0x53,0xC3,0x9A,0xF2,0x8C,0x31,0x55,0x0B,0x1D,0xEA,0xB3,0xF6,0x14,0x3D,0x2D,0x35,0xCF,0xD9,0xB3,0x1B,0xF3,0xD0,0x3E,0xEB,0x2C,0x7A,0xDC,0x53,0x36,0x8F,0x2B,0xC5,0xD6,0x70,0x7F,0xD5,0x9E,0x14,0xDB,0xC2,0x7C,0x55,0xF9,0x72,0x4C,0x2F,0xF1,0x97,0xE9,0xCF,0x6A,0xB5,0xC2,0x76,0x96,0x3F,0x87,0xD2,0xD2,0x58,0xF9,0xFF};
|
||||||
|
//const uint8_t spTANGO[] PROGMEM = {0x0E,0xD8,0x5C,0xCD,0x03,0x2B,0x2A,0xD9,0xD4,0x23,0x2B,0xAD,0xB4,0x26,0x57,0x8F,0x58,0xB2,0xB2,0x56,0x5C,0x2D,0x63,0xF6,0xCA,0x5A,0x36,0xF5,0xCC,0x59,0x2B,0x6B,0x91,0xB5,0xDB,0x42,0xB7,0xBC,0x5A,0xEA,0x34,0x57,0x5D,0xCA,0x62,0x68,0x5C,0x55,0xB5,0xAB,0xA3,0xA2,0x09,0x13,0xA7,0x65,0xA8,0x2A,0x98,0x53,0x56,0x8F,0xA9,0xB2,0x30,0x19,0xDD,0xB3,0xA6,0x22,0xCB,0xA4,0xB4,0xEB,0x18,0xB3,0xEA,0x90,0x92,0x2E,0x6D,0x0D,0xBE,0xC3,0x52,0x3A,0xA7,0x23,0xC4,0x0A,0x4B,0xD9,0x5B,0xAE,0x50,0x32,0x3C,0xA4,0x73,0xF8,0x42,0x0B,0x37,0x93,0xD5,0xE6,0xF3,0x35,0xDD,0x95,0x7F,0xAB,0xCF,0x87,0xF2,0x34,0xDE,0xF7,0xFF};
|
||||||
|
//const uint8_t spUNIFORM[] PROGMEM = {0x61,0x3D,0x56,0x98,0xD4,0xB6,0xE6,0xA5,0x8D,0xC7,0xA8,0x01,0xC5,0xDA,0x33,0x2C,0x97,0x06,0x12,0xD9,0x4F,0xD9,0x6D,0x30,0xA6,0x65,0xDF,0x79,0x4B,0x8B,0x11,0xCF,0xE0,0xAE,0x29,0xCD,0x4E,0x5D,0x38,0xEA,0xF5,0xF4,0x64,0x45,0x47,0x84,0xCA,0xE6,0x5D,0xF5,0x96,0x01,0xCD,0x97,0x6A,0x40,0x03,0x1A,0x28,0x5D,0xD0,0xDB,0x61,0xEC,0x7D,0xF7,0x7B,0x3C,0x53,0x16,0xDB,0x9A,0xEA,0xF5,0x2E,0x6B,0x2D,0x6A,0x43,0x46,0xBC,0xCD,0xB3,0x3D,0xD9,0xB5,0xDA,0x70,0xDF,0x72,0xE7,0x94,0xEA,0xCD,0x9D,0xDD,0x9D,0xBC,0x73,0xA9,0x28,0x35,0x4F,0x12,0x41,0xE1,0x96,0xD4,0x3D,0x4D,0x24,0xA7,0x8A,0x94,0xF8,0xFA,0x37,0x7C,0xCD,0x76,0x78,0x50,0xEA,0xF8,0xFD,0x3F};
|
||||||
|
//const uint8_t spVICTOR[] PROGMEM = {0x6E,0x6E,0x52,0x55,0xCD,0xDD,0xA8,0xAD,0x72,0x55,0x95,0x70,0xE3,0xB6,0xE9,0xDD,0xD4,0x84,0x4E,0xD9,0xA6,0x4B,0x0B,0x65,0xA5,0x2B,0x6D,0x2E,0x4D,0x42,0xB6,0xAC,0xAC,0xDB,0x12,0x49,0x5D,0xBD,0xF2,0x1E,0x02,0x2D,0x6C,0x35,0x30,0xA0,0x72,0x46,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x40,0x01,0x33,0x49,0x3A,0x60,0x5A,0xF1,0x32,0x96,0x6C,0x2C,0x2D,0x5D,0xDA,0x9C,0x63,0x21,0x9F,0xE6,0x2F,0x5B,0x29,0x4D,0xBC,0x94,0xAF,0xED,0xA5,0x34,0xF1,0x72,0xB6,0x74,0x94,0xBA,0x82,0xC3,0xFE,0xCB,0x59,0x46,0x93,0x34,0xE5,0x2B,0x57,0xE9,0x85,0x5A,0xE2,0xC7,0xDD,0xE5,0x0A,0xA7,0x4B,0xA7,0xFF,0x07};
|
||||||
|
//const uint8_t spWHISKEY[] PROGMEM = {0x04,0x88,0xAE,0x8C,0x03,0x12,0x08,0x51,0x74,0x65,0xE9,0xEC,0x68,0x24,0x59,0x46,0x78,0x41,0xD7,0x13,0x37,0x6D,0x62,0xC3,0x5B,0x6F,0xDC,0xD2,0xEA,0x54,0xD2,0xE3,0x89,0x01,0x7E,0x2B,0xF7,0x80,0x07,0x14,0xD0,0xE5,0x15,0x38,0x60,0x8C,0x70,0x03,0x04,0x29,0x36,0xBA,0x5E,0x14,0x34,0x72,0xF6,0xE8,0xA7,0x6F,0x82,0xF4,0x2D,0x73,0xEA,0x47,0x3A,0x67,0x6A,0xC0,0xF0,0x2F,0xF1,0x4E,0xCF,0xA8,0x8A,0x1C,0xB9,0xD8,0xFF,0xEE,0x1F,0xBB,0x59,0xD0,0xD6,0xFE,0x3F};
|
||||||
|
//const uint8_t spXRAY[] PROGMEM = {0xAB,0xAA,0xDE,0xB4,0x62,0x66,0x9F,0xA2,0x75,0x73,0xD3,0x6E,0x72,0xB2,0x56,0x54,0xCB,0xBA,0xB6,0x01,0x92,0xC7,0x26,0x40,0x4B,0x43,0x0C,0xC8,0x29,0xC5,0x01,0xCF,0xB8,0x1A,0xE0,0xA7,0x14,0x07,0xFC,0x56,0xEA,0x01,0x05,0x98,0x60,0x5A,0xEA,0xD4,0x29,0xB5,0xB8,0xEB,0x68,0x53,0x17,0xB3,0x96,0x6E,0xA3,0x2F,0x29,0x54,0x5B,0xF6,0x8D,0xB5,0xA9,0x32,0x5E,0xDB,0x37,0xB6,0xA1,0xDB,0xB1,0x74,0xCB,0x58,0xBA,0x49,0x91,0xF6,0xCD,0xE3,0x1A,0x3A,0x85,0x3A,0x56,0xB7,0x6B,0x98,0x62,0xEA,0xF8,0xDC,0xBE,0x9E,0x83,0xD4,0xE3,0x49,0xF8,0x7B,0x71,0x54,0xAF,0xD9,0xE1,0xEF,0x53,0x55,0xB8,0xE7,0xFE,0x3F};
|
||||||
|
//const uint8_t spZULU[] PROGMEM = {0x6D,0xFE,0xDE,0xC4,0xC4,0xE8,0x29,0x60,0x00,0x2E,0x0F,0x9C,0x6C,0x29,0x71,0x2A,0x4E,0x77,0x93,0x15,0x77,0x2A,0xAE,0xC3,0xCE,0x76,0x3C,0x92,0xA5,0x44,0x78,0xD1,0x6D,0xCF,0x47,0x3B,0xB8,0xBB,0x07,0xF6,0x5B,0x43,0x91,0x6E,0xA9,0xF2,0x65,0x4C,0xC9,0x98,0x97,0x69,0x9F,0xBA,0xE5,0x33,0x9C,0xC1,0x9A,0x8F,0xCA,0xDE,0x70,0x07,0x9D,0xEE,0xC9,0x79,0xE2,0xED,0xFF,0xFF,0x07};
|
||||||
|
//const uint8_t spAFFIRMATIVE[] PROGMEM = {0xA5,0x4F,0x7A,0xD3,0x3C,0x5A,0x8F,0xAE,0xC8,0xA9,0x70,0xED,0xBD,0xBA,0x2A,0x3B,0xC3,0xD9,0x8F,0x00,0x6C,0x4A,0x21,0x40,0xD3,0xCA,0x08,0x18,0xC2,0x04,0x01,0xC3,0x86,0x11,0x60,0xDA,0x4C,0x05,0x54,0x53,0xDA,0x9C,0x58,0x16,0xED,0xC8,0xEB,0x88,0xE2,0x4C,0xEC,0xC1,0x36,0x23,0xC8,0x65,0xD1,0x17,0xBA,0xB4,0x20,0xE5,0xE4,0x6A,0x8A,0x53,0xA2,0xAC,0x0B,0x73,0x38,0xC9,0xC8,0xB2,0x68,0xCE,0x92,0x24,0x33,0x5B,0x45,0xB1,0xA9,0x11,0xB6,0x6A,0x75,0x4D,0x96,0x98,0xC7,0xAA,0xD6,0x37,0x91,0xEC,0x12,0xAF,0xC8,0xD1,0xB1,0x88,0x97,0x25,0x76,0xC0,0x96,0x22,0x01,0xF8,0x2E,0x2C,0x01,0x53,0x99,0xAD,0xA1,0x7A,0x13,0xF5,0x7A,0xBD,0xE6,0xAE,0x43,0xD4,0x7D,0xCF,0xBA,0xBA,0x0E,0x51,0xF7,0xDD,0xED,0x6A,0xB6,0x94,0xDC,0xF7,0xB4,0xB7,0x5A,0x57,0x09,0xDF,0x9D,0xBE,0x62,0xDC,0xD4,0x75,0xB7,0xFB,0xAA,0x55,0x33,0xE7,0x3E,0xE2,0x2B,0xDC,0x5D,0x35,0xFC,0x98,0xAF,0x79,0x0F,0x0F,0x56,0x6D,0xBE,0xE1,0xA6,0xAA,0x42,0xCE,0xFF,0x03};
|
||||||
|
//const uint8_t spNEGATIVE[] PROGMEM = {0x66,0x88,0x82,0x3A,0xDD,0xE3,0x84,0x31,0x4B,0x6C,0x0F,0x4F,0x9C,0x86,0xAA,0xA0,0x3D,0xB5,0xF1,0xEA,0xBA,0x33,0x71,0xB5,0x59,0xAB,0x1A,0x36,0x55,0x43,0x57,0xAF,0x72,0xF8,0x52,0x4D,0xDD,0xB2,0xF2,0x91,0x92,0x34,0x64,0x75,0xA9,0x9B,0x31,0x8A,0x94,0x4A,0xA3,0x1E,0x3E,0x41,0x4A,0x56,0xAF,0xB6,0x59,0xC3,0x08,0x5F,0xBD,0xBA,0x6A,0x9C,0xD3,0x7C,0x95,0x9A,0x9D,0xF2,0x28,0x8F,0x06,0x68,0x19,0x4C,0xD8,0xCC,0x6C,0x39,0x60,0x28,0x93,0x00,0x5C,0x19,0xD6,0xCA,0x6A,0x9D,0x5C,0x6B,0xD1,0x18,0x8A,0x31,0xC9,0xA8,0x45,0x63,0xCB,0x3A,0x38,0x2B,0x17,0x95,0xA7,0x04,0x95,0xD0,0x99,0x5D,0x9E,0xE2,0x55,0x43,0xE7,0x75,0x79,0xB3,0x35,0x0D,0xCF,0x55,0xEE,0xCB,0x5E,0x2D,0x38,0x36,0x89,0x3F,0x07,0x33,0x63,0xE9,0x82,0x80,0x60,0x35,0x08,0x50,0x5D,0x2A,0x02,0xAA,0x4D,0xFB,0x7F};
|
||||||
|
//const uint8_t spMAYDAY[] PROGMEM = {0x66,0xB7,0x52,0x7A,0xCC,0x9D,0x84,0xDD,0x4B,0xA9,0x36,0x77,0x12,0x96,0xC8,0x54,0x27,0x2C,0x5E,0x1A,0x8A,0x10,0xEE,0xB4,0x78,0xAB,0xE9,0xD1,0x4C,0x43,0x57,0xAF,0xA2,0x27,0x57,0xF1,0x58,0xB5,0xD2,0x91,0x82,0xCC,0x73,0xF1,0x4A,0x46,0x76,0xB4,0xA8,0x25,0x2B,0x1E,0xCD,0x50,0xBD,0x66,0xAF,0x78,0x24,0x26,0xF5,0x6E,0xBC,0x63,0x02,0x14,0x18,0xD6,0xFA,0x63,0xD3,0xD4,0x39,0xE6,0xAA,0xBB,0x57,0x36,0xA9,0xC5,0xA7,0x6D,0x5E,0xD9,0xAD,0x97,0x9C,0xA1,0xB9,0x60,0x8B,0x58,0x7D,0xC6,0xEE,0x92,0x2D,0x7C,0xCB,0x99,0xBB,0x29,0xD6,0xF2,0xCD,0x77,0x19,0xEB,0xD4,0x25,0x5C,0xB6,0x79,0x6C,0x3D,0x26,0x69,0xF8,0xAA,0xB4,0x57,0x63,0x14,0x93,0x0B,0xD3,0xD9,0x93,0x92,0x45,0xAE,0x49,0xF7,0xB0,0x81,0x32,0xB9,0x38,0xDD,0xCD,0x28,0xE6,0xD4,0xA2,0xF4,0x34,0x69,0xD8,0x5B,0x8B,0xC2,0xDB,0xAB,0x90,0x7B,0xAD,0x36,0x6F,0xEF,0x22,0xA6,0xD5,0xF8,0xFF,0x01};
|
||||||
|
//const uint8_t spWARNING[] PROGMEM = {0x6A,0x15,0x71,0x5C,0xDC,0x23,0x89,0x8D,0xD5,0x36,0xB5,0x8C,0x2D,0x36,0xDA,0xC6,0xCC,0xDD,0x91,0x5A,0xB9,0xBF,0x51,0xC7,0xCC,0x69,0x76,0x6A,0xA6,0x12,0xD2,0xB6,0xCE,0xDB,0x6B,0x0F,0xCC,0xBA,0xAA,0x10,0x2E,0xBC,0x29,0xED,0x2A,0xA2,0x5B,0xF3,0xA5,0x2C,0x2B,0x4F,0xA9,0x25,0x9A,0xBC,0xAE,0xBC,0x74,0xD3,0xF0,0x70,0xD6,0x8A,0xE4,0xC4,0x8A,0x3D,0xEE,0x6A,0x9B,0x57,0x35,0x8F,0xD4,0x6B,0xE8,0x3E,0xD8,0x22,0x16,0xAE,0x71,0xF8,0x20,0x4D,0x5F,0xB4,0xE6,0xE1,0x83,0xB4,0x7C,0xD6,0x58,0x46,0x0A,0x94,0xF1,0x99,0x73,0x09,0x47,0xAF,0x28,0x9D,0x16,0x34,0x1C,0xD5,0x61,0xA5,0xAA,0x13,0x73,0x65,0x43,0x15,0xE2,0x71,0xD2,0x95,0x0D,0x67,0x72,0xD8,0x4E,0x77,0xB1,0x5C,0xCE,0xEE,0xA4,0x3C,0x2D,0xBA,0xA4,0x5A,0xE5,0xF2,0x74,0x57,0x6C,0xA9,0xAB,0xFE,0x1F};
|
||||||
|
//const uint8_t spICING[] PROGMEM = {0x69,0xCA,0x66,0xDD,0xD3,0x16,0xEF,0x71,0x0D,0xC5,0xAC,0x66,0xDB,0xA3,0xD5,0x57,0x57,0xDC,0x6D,0xB7,0x56,0xDB,0xA2,0x63,0x87,0x5F,0x5E,0x55,0xCB,0x4C,0x69,0x35,0xBB,0xD5,0x87,0x17,0xB3,0x66,0x57,0x03,0x3C,0xE3,0x6A,0x80,0x9F,0x52,0x1C,0xF0,0x5B,0xA9,0x07,0x02,0xF0,0x5B,0xEA,0x9A,0xBB,0x0A,0xD1,0xB4,0xC7,0x6B,0xEE,0x2E,0x44,0xCB,0x17,0x97,0xBD,0x67,0x63,0x2F,0x9F,0x94,0x8E,0x16,0x29,0xDA,0x2D,0x4E,0x3A,0xAB,0xE1,0xF2,0xD0,0xD8,0xE9,0x6A,0x86,0x33,0xCC,0x9C,0xA4,0xBB,0x19,0xCE,0x54,0xB5,0xE3,0x9E,0x6A,0x35,0x52,0x2D,0xB6,0x7A,0xBB,0x53,0x2D,0x09,0xBB,0xFF,0x0F};
|
||||||
|
//const uint8_t spDANGER[] PROGMEM = {0x0A,0x28,0x30,0x6C,0xD4,0xC7,0x54,0x19,0xAA,0x9B,0xD5,0x34,0x6B,0xCA,0xEE,0x6B,0x56,0xDD,0xBD,0xA9,0x44,0xAC,0x59,0xD5,0x08,0xC1,0x9C,0xB1,0x7A,0x65,0x33,0x24,0x72,0xE7,0xAC,0x95,0x8C,0x64,0xE0,0x13,0x95,0x57,0xD4,0xBD,0x50,0x8D,0x45,0x19,0x51,0xB3,0x98,0x61,0xAE,0x64,0xA4,0xCD,0x60,0x94,0x85,0xD2,0x90,0x47,0x41,0x35,0xEA,0xEA,0x5A,0x73,0x4A,0x99,0xA0,0x38,0x09,0xC0,0x76,0x42,0xA3,0x9C,0xDA,0x94,0x35,0xF2,0x8C,0xB1,0x66,0x25,0x0D,0xDB,0x3C,0x86,0x9A,0x4B,0xA0,0x35,0xFB,0x98,0x4B,0x72,0xE2,0xB3,0x6C,0x6D,0xCB,0x43,0xC8,0x47,0xF2,0xA5,0x23,0x6F,0x21,0x6F,0xCE,0x16,0x8E,0xBC,0x89,0x2B,0xB5,0x6F,0x38,0xCB,0x32,0xD2,0x96,0x6C,0xEE,0x2C,0xDB,0x48,0x5B,0xF2,0xB9,0xAB,0x2C,0x11,0x2F,0xEE,0x1D,0xEE,0x52,0x07,0x25,0x43,0xFB,0xFF,0x03};
|
||||||
|
//const uint8_t spEMERGENCY[] PROGMEM = {0xA3,0x5B,0xCE,0x18,0x23,0x9F,0xAC,0x76,0x79,0x13,0x88,0x7C,0xB2,0xAA,0x19,0x8C,0x21,0x72,0xF5,0xAA,0x5A,0x50,0xD2,0xB0,0xD5,0xA9,0x76,0x52,0xB2,0x53,0xAD,0x95,0x26,0x72,0xD5,0x1A,0x8D,0xD6,0xDA,0x24,0xC5,0x22,0xC2,0x5E,0xAB,0x93,0xD6,0xB0,0x54,0xA5,0xAB,0x88,0x31,0xCD,0x93,0x92,0xAD,0x3C,0xDB,0x56,0x59,0xF6,0xB6,0x92,0x5C,0x83,0x6C,0x30,0xEB,0x0A,0x4A,0x5D,0xC6,0x45,0xAF,0x23,0xA8,0x53,0xC8,0xC2,0xF2,0xAA,0x24,0x3B,0x12,0xD3,0x6E,0xED,0xF2,0xB3,0x0C,0x99,0xDD,0x4B,0x00,0xB6,0x13,0x3A,0xE5,0xD4,0xA6,0xAC,0x91,0xE7,0x54,0xC3,0xA4,0xA1,0xE9,0xB6,0xD3,0x4E,0x19,0x46,0xA1,0xFD,0x46,0x3B,0xB9,0x8A,0x8E,0xB4,0x29,0x43,0x15,0xC2,0x93,0x1C,0xBD,0x8C,0x45,0xB0,0x8D,0x71,0xBD,0x36,0x6D,0xA6,0xA6,0xA2,0x69,0x0D,0xF0,0x8C,0xAB,0x02,0x7E,0x4A,0x31,0xC0,0x6F,0xA5,0x16,0x18,0x55,0x37,0x2E,0xEA,0xFE,0x65,0x0C,0x43,0xBB,0x50,0xFA,0x96,0x36,0x4E,0x93,0x82,0xE5,0x7B,0xDB,0x32,0x94,0x33,0x6E,0xFC,0x19,0xDB,0x74,0xC1,0x58,0xB1,0xA6,0xEC,0xCB,0x17,0x43,0xFA,0x9A,0x70,0x0C,0x6F,0x60,0x55,0xAB,0xFF,0x1F};
|
||||||
|
//const uint8_t spROGER[] PROGMEM = {0x62,0x11,0xBD,0xD8,0x32,0x95,0xAA,0x99,0xD7,0x26,0x8F,0xB0,0xAB,0x26,0x3E,0x9C,0x2B,0x4D,0x9D,0x1A,0xD5,0x74,0xCA,0x30,0x65,0x61,0x74,0x4D,0x25,0x32,0x98,0xB7,0x36,0x0C,0x71,0x4B,0xD3,0xBE,0xEA,0x98,0x3A,0xCC,0xAD,0xCF,0x2A,0x92,0x1F,0x6F,0xB1,0x2D,0x2B,0x4F,0x7E,0xAC,0xDC,0x36,0xAD,0x38,0xE7,0xD4,0x70,0xDF,0xB4,0xE2,0x52,0x2C,0x54,0x3D,0x53,0x28,0xB2,0xA4,0xF0,0x72,0x57,0xA5,0x5E,0xAD,0x83,0xD9,0x64,0x23,0x60,0x7B,0x93,0x08,0x8C,0x7E,0x44,0x17,0x72,0xF3,0xDB,0x86,0x92,0x85,0xAD,0x7D,0x57,0x1B,0x6B,0x1E,0xA6,0x0C,0xFD,0xE5,0x2C,0x53,0x31,0x5A,0xF3,0xA6,0x3B,0x37,0xA1,0x6C,0xCD,0xE2,0xEE,0x9C,0x8D,0xDD,0x37,0xE9,0xFF,0x03};
|
||||||
|
//const uint8_t spHERTZ[] PROGMEM = {0x08,0x28,0xA6,0x4B,0x00,0x55,0x56,0x23,0xA0,0x9A,0x99,0x12,0xE7,0x12,0x18,0xC3,0x5D,0x56,0x52,0xED,0x29,0xAC,0xE9,0xDF,0xD9,0xAE,0xE7,0x18,0xD6,0x5A,0x12,0xAC,0x34,0x1F,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x08,0xD8,0x26,0x94,0x01,0xBF,0x95,0x71,0xC0,0x02,0x16,0xD0,0x80,0x07,0x34,0xC0,0x01,0x0E,0xFC,0x3F,0x08,0x9C,0xA2,0x54,0x85,0x6A,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spSECURITY[] PROGMEM = {0x02,0xF8,0x59,0xC8,0x00,0xBF,0xB7,0x18,0xE0,0x97,0xB4,0x00,0xFC,0x1E,0xD6,0xA2,0x1F,0xCB,0x44,0x9D,0xDD,0xAA,0xA7,0x0C,0xE1,0xD4,0x2D,0xAB,0x1E,0xB6,0x10,0xCB,0xB6,0x20,0x70,0x8A,0x52,0x15,0xAA,0x01,0x06,0x98,0x36,0xC2,0x01,0xD3,0x09,0x07,0x60,0x96,0xB6,0x91,0xF4,0x98,0x84,0xA9,0x5D,0x46,0x51,0x6D,0x11,0xB7,0xF4,0x1D,0x79,0xD1,0x2D,0x3C,0xDC,0x77,0xE4,0x39,0x34,0xCB,0x88,0xDF,0x51,0xE4,0x98,0x64,0xAD,0x7E,0x47,0x5D,0x42,0xB2,0x45,0xFA,0x29,0x43,0x0D,0xEE,0x8A,0xE1,0xD5,0x01,0x83,0xAB,0x39,0x20,0x03,0xF7,0x35,0x34,0xAF,0x64,0x9A,0xAF,0xC6,0x38,0x8C,0xA3,0x54,0xAC,0x2E,0xCB,0xF0,0x8E,0x14,0xB9,0xB9,0x2E,0x7E,0xFD,0x7F};
|
||||||
|
//const uint8_t spTARGET[] PROGMEM = {0x0A,0xD8,0x5C,0x4D,0x03,0x25,0x8D,0xA9,0x24,0x5A,0x52,0xB6,0x22,0x85,0x31,0x1F,0xDC,0xD2,0xF2,0xB4,0x4C,0xDB,0xE5,0xCA,0xC8,0x52,0x0B,0xEE,0xA6,0xC7,0x2D,0xCF,0x53,0x69,0x43,0x6E,0xA5,0xBA,0x94,0x80,0x2A,0xAA,0x65,0xFA,0x1C,0x88,0x36,0x23,0x51,0x1B,0xEB,0x30,0xF4,0xB0,0x36,0x6B,0xA8,0x51,0x24,0x3D,0xD6,0xAC,0xA1,0x84,0x44,0x4F,0x7F,0xD4,0xE6,0x41,0x46,0x70,0x62,0x23,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0xA0,0x80,0x21,0xDD,0x18,0xB0,0xB9,0xDA,0xFF,0x03};
|
||||||
|
//const uint8_t spVECTORS[] PROGMEM = {0x6A,0x4B,0x3C,0xC5,0x34,0xD2,0x98,0xBD,0x50,0x77,0x91,0x4C,0xAA,0xF6,0x42,0x2C,0xD8,0xD2,0x8D,0x39,0x2A,0x33,0x13,0x75,0x35,0xEE,0xEC,0xDC,0x44,0x45,0x1D,0x8F,0x2C,0xDB,0x10,0xF3,0xC8,0xB4,0xDA,0x6A,0xC3,0x34,0xBD,0xCF,0x6A,0x6A,0x48,0xF1,0xF0,0xCD,0xBB,0x41,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x18,0x50,0x39,0x23,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x90,0x80,0x65,0xD5,0x57,0xD1,0x4C,0x2A,0x66,0x64,0x1D,0x65,0xC9,0x49,0xDC,0x9A,0xAF,0x95,0xA5,0x18,0x5A,0x49,0xDF,0x56,0xD4,0xA2,0xE8,0x61,0xDD,0x5A,0xD1,0x82,0x93,0x6A,0x64,0x55,0xC0,0x53,0x00,0x0A,0x78,0x04,0x38,0x00,0x9B,0xA2,0x30,0xA0,0x60,0xB1,0xFF,0x07};
|
||||||
|
//const uint8_t spLIGHT[] PROGMEM = {0x69,0x18,0x44,0xD2,0x83,0xB2,0x95,0x69,0x63,0x1A,0x17,0x49,0xD7,0xA6,0x85,0x78,0x5D,0xD5,0xFB,0x1A,0x33,0xDF,0x76,0x97,0x2D,0x6B,0x68,0x6C,0x4A,0x53,0xF7,0xAC,0xA9,0x89,0x71,0x2D,0xDD,0x33,0xA6,0x26,0x9B,0xAD,0x6D,0x77,0x5B,0x7A,0x70,0xF4,0xC8,0x45,0xE1,0x69,0x8E,0xA9,0x6B,0x6E,0x89,0x62,0x78,0x45,0x8D,0x7C,0x8C,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x06,0x01,0x0C,0x30,0xA4,0x9B,0x02,0x36,0x57,0x43,0xE0,0x14,0xA5,0x2A,0x54,0xE3,0xFF,0x01};
|
||||||
|
//const uint8_t spFRONT[] PROGMEM = {0x08,0x88,0xDC,0x95,0x01,0x55,0x86,0x2A,0xA0,0x85,0x76,0x05,0xD4,0x90,0x4E,0x00,0x33,0xA9,0x47,0x19,0xBB,0xB4,0x9B,0x7B,0x5B,0x55,0xC8,0xDE,0xE6,0x91,0x65,0x55,0x29,0xB4,0xA5,0xD9,0xE2,0x55,0xE7,0xD0,0x1A,0xEE,0xB3,0x57,0x97,0x53,0x6A,0x78,0xCE,0x69,0x53,0x8A,0x1E,0x1A,0xD5,0x28,0x1C,0x59,0x89,0x27,0x87,0x6D,0x77,0x17,0x25,0x1E,0x62,0x99,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x50,0xC0,0x90,0x6E,0x0C,0xD8,0x5C,0x0D,0x81,0x53,0x94,0xAA,0x50,0x8D,0xFF,0x07};
|
||||||
|
//const uint8_t spWAY[] PROGMEM = {0xAC,0xE7,0x7E,0xC2,0xD4,0x1C,0xAB,0x8D,0xC7,0x31,0xB5,0xB0,0xAD,0x76,0x91,0xD6,0x8D,0x2D,0x71,0x58,0x4D,0x59,0x67,0x91,0xB5,0x6B,0xC8,0xB2,0x3D,0x9C,0xB6,0xAD,0xA1,0xE9,0xE4,0x48,0x7E,0xB3,0xDA,0x96,0x8D,0x2D,0x6D,0xF5,0xAA,0x7B,0x32,0xD2,0xCC,0xD5,0xAB,0xEE,0xC9,0x51,0x33,0x17,0xAF,0xBA,0x87,0x00,0x8B,0x5C,0x3C,0x9B,0xFF,0x07};
|
||||||
|
//const uint8_t spGLIDE[] PROGMEM = {0x08,0x28,0xBD,0x94,0x8D,0x52,0x45,0xAE,0x93,0x1B,0xB3,0x07,0x5F,0x66,0x66,0xAE,0xC6,0xDC,0xB1,0x8E,0xA9,0xA4,0x9B,0xF3,0x6A,0x1B,0x8E,0x0D,0xE6,0xB6,0xAB,0xAD,0xBC,0x3B,0x8C,0xFA,0xAE,0x36,0xCB,0x2D,0x35,0xD9,0xBC,0xBA,0x22,0x36,0x2D,0x64,0xF3,0xEA,0x8B,0x3C,0xD7,0xD2,0xCD,0x6B,0x2C,0xEA,0x4C,0xDB,0x57,0xAD,0x35,0xDB,0x15,0x2F,0x5B,0xB4,0xB6,0x62,0x46,0xB2,0x6C,0xD1,0xD8,0xB3,0x69,0xA9,0xB6,0x95,0xE3,0x2A,0xC1,0xB4,0x23,0x67,0xB7,0x2B,0x5B,0xD7,0xAD,0xBC,0x59,0xAE,0x92,0x28,0x22,0xA7,0x72,0xBA,0x8A,0x17,0xAE,0xEA,0x49,0xEA,0xF2,0x3C,0xAD,0x22,0x2D,0x93,0xD3,0x93,0x88,0x2E,0x57,0xC2,0xCE,0x46,0x94,0x5D,0x33,0x49,0xAA,0xBA,0x35,0x76,0xF3,0x4D,0xFF,0x0F};
|
||||||
|
//const uint8_t spOPEN[] PROGMEM = {0xA9,0x28,0xC4,0x77,0x84,0xB2,0xB4,0xB2,0x11,0x99,0x35,0xCC,0xDA,0xAA,0x4E,0x78,0xD6,0x31,0x4B,0xAB,0x0B,0xB6,0x2D,0xC5,0xCE,0xAE,0xCD,0xC2,0x5D,0xC3,0x1D,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x08,0x10,0xC3,0x6C,0x0D,0xD9,0xA4,0x5B,0xC8,0xD6,0xB5,0x66,0x13,0xE6,0xE9,0x6B,0xC6,0x5E,0x95,0x5B,0x84,0xAD,0x29,0x67,0x53,0xAC,0x15,0x62,0x37,0x3D,0x5D,0x29,0x67,0x49,0xD4,0xF4,0x0C,0xAB,0x94,0x21,0x56,0xD3,0x3B,0x8C,0x48,0x98,0xC5,0x4D,0x5F,0xE7,0x26,0xE1,0x16,0xC7,0x7D,0x4D,0x73,0x84,0xBA,0x9D,0xFF,0x07};
|
||||||
|
//const uint8_t spLIGHTS[] PROGMEM = {0x69,0x18,0x44,0xD2,0x83,0xB2,0x95,0x69,0x63,0x1A,0x17,0x49,0xD7,0xA6,0x85,0x78,0x5D,0xD5,0xFB,0x1A,0x33,0xDF,0x76,0x97,0x2D,0x6B,0x68,0x6C,0x4A,0x53,0xF7,0xAC,0xA9,0x89,0x71,0x2D,0xDD,0x33,0xA6,0x26,0x9B,0xAD,0x6D,0x77,0x5B,0x7A,0x70,0xF4,0xC8,0x45,0xE1,0x69,0x8E,0xA9,0x6B,0x6E,0x89,0x62,0x78,0x45,0x8D,0x7C,0x8C,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x03,0xBE,0x13,0x54,0xC0,0x2F,0x61,0x06,0xF8,0xD9,0xCD,0x00,0xCF,0xB8,0x2A,0xE0,0xA7,0x14,0x06,0xFC,0x56,0xCA,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spON[] PROGMEM = {0x69,0x0C,0x69,0xAB,0x44,0x92,0x96,0x36,0x86,0xED,0x52,0x8D,0xD7,0xDA,0x10,0xB7,0x53,0x35,0x5E,0x6B,0x43,0xB9,0x4A,0xD5,0x78,0xAD,0x0D,0xE9,0x32,0xD4,0x9A,0xB5,0x21,0xBA,0x4B,0x37,0x4B,0xDA,0xE6,0x68,0x2E,0xDD,0x2D,0x6D,0xDB,0x62,0x58,0x37,0xF7,0x34,0xED,0x48,0xAE,0x3D,0xDC,0x53,0xA5,0x33,0xE5,0x54,0xF3,0x6C,0x9D,0xCE,0xE4,0xCA,0x42,0x2A,0x73,0xB8,0x8A,0xE6,0x72,0x4D,0x55,0xE9,0x2A,0x46,0x22,0x24,0x6C,0xA7,0xBB,0x3B,0x0E,0x57,0x57,0x12,0xEE,0x6A,0xC4,0x93,0xCD,0x8E,0x79,0x6A,0xD4,0x60,0x49,0xC7,0xFF,0x0F};
|
||||||
|
//const uint8_t spGUNDISH[] PROGMEM = {0x0E,0xA8,0xB9,0xA5,0x55,0x55,0x85,0x68,0x5B,0xA7,0x55,0x55,0x5D,0x66,0xA1,0x5B,0x56,0x55,0xCC,0x88,0x96,0x6F,0x5E,0x65,0xB6,0x25,0x11,0x7E,0x7B,0x64,0x45,0x97,0x86,0xC4,0x9C,0x96,0x16,0x25,0x19,0x9A,0x8E,0x4B,0x52,0x35,0x75,0x4A,0xA8,0xAE,0x09,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xA0,0x80,0x02,0xC3,0x4A,0x3B,0x54,0x8A,0x8A,0x6F,0x1E,0x43,0xB5,0xCE,0xE6,0x35,0x7B,0x4D,0x4D,0x25,0x6B,0xE4,0xAA,0x31,0x77,0x1E,0x62,0x95,0xAB,0xDA,0x36,0x74,0xB1,0x58,0xEC,0x2E,0xE7,0x88,0x25,0xC2,0xDE,0x5B,0x01,0x3B,0x4E,0x1B,0x60,0xA5,0x6D,0x03,0xEC,0x38,0xAD,0x80,0x15,0xB6,0x05,0xB0,0xCA,0xB6,0x00,0x66,0xBE,0x14,0xC0,0x8C,0xD7,0x0C,0x18,0x6D,0x92,0x00,0xBD,0x97,0xFD,0x3F};
|
||||||
|
//const uint8_t spR_NAV[] PROGMEM = {0x29,0x89,0x7E,0x53,0x5D,0x53,0x8F,0x21,0xAB,0x2F,0x75,0xEB,0xB2,0x86,0x4A,0x77,0xB4,0x34,0xEB,0x1A,0x8A,0xB8,0xE6,0xD6,0xAE,0xAB,0x2B,0xEA,0x5D,0x96,0x3B,0xAF,0xBA,0xF8,0x13,0x5D,0xDA,0xB4,0xEA,0x92,0x9B,0x7C,0x24,0xCF,0x6A,0x4A,0x67,0x4F,0xF7,0xCC,0xBB,0xD9,0x0D,0x80,0x69,0x92,0x95,0x6C,0x76,0x27,0xAD,0x2B,0x96,0x33,0x39,0x1D,0x97,0xBE,0x1A,0x6C,0xD7,0x70,0xBC,0x86,0x1A,0xD4,0xCC,0x7B,0xD1,0x1A,0xAB,0x37,0x8D,0xA8,0xD9,0x6B,0x6A,0x26,0xC5,0x2B,0x9E,0xAC,0xA5,0xEB,0x56,0x29,0x5B,0xBD,0xD6,0xAE,0x5B,0xB5,0x6C,0xCD,0x5E,0xD7,0xDA,0xF4,0xA8,0xB4,0xBF,0x5E,0x7B,0x53,0x6D,0xDA,0xBE,0x7A,0xEF,0xEB,0xAC,0xBA,0xD5,0xDB,0x57,0xB5,0xAB,0xD8,0x32,0x2F,0xBF,0x5D,0xEE,0xA2,0xC6,0x7C,0xFC,0x61,0xB9,0xB3,0x69,0xF3,0xF2,0x99,0xE9,0x4E,0xAE,0xD5,0xDB,0x1F,0x85,0x3B,0xC7,0x34,0x37,0x5D,0xC5,0xA6,0xA8,0xC2,0x5D,0x35,0x36,0x9F,0xF8,0x84,0x80,0x60,0x35,0x08,0x50,0x5D,0xEA,0xFF,0x03};
|
||||||
|
//const uint8_t spSELECT[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0x46,0xB7,0x44,0xAA,0xA9,0xE4,0x59,0x5D,0x53,0x15,0x6C,0xBA,0x65,0xF5,0x85,0x55,0xB8,0xF3,0xE6,0x35,0x2C,0xA8,0x6B,0xAC,0xC9,0xD6,0xB0,0x90,0xAE,0xB1,0xA5,0x5D,0x5D,0xE5,0x9B,0x1A,0xF6,0x7A,0xB5,0x55,0x8E,0x5B,0xF8,0xE6,0xD5,0x36,0x37,0x9C,0x9A,0xAB,0x46,0xD3,0x63,0x62,0x71,0x4C,0x44,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x40,0x01,0x43,0xBA,0x09,0x60,0x73,0x35,0x04,0x4E,0x51,0xAA,0x42,0x35,0xFE,0x1F};
|
||||||
|
//const uint8_t spFILED[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0xB6,0xCA,0x18,0x27,0xDC,0xA4,0xD5,0xEA,0x52,0xEA,0x08,0xD1,0x4D,0xAB,0x4F,0x69,0x3C,0xD4,0x36,0xAD,0x21,0xBB,0x33,0x2B,0x5B,0xBD,0xC6,0xAA,0xCE,0x65,0x74,0xF5,0x5A,0x9A,0x5C,0xE7,0x91,0xCD,0x6B,0x1D,0xA2,0x8D,0x57,0xBB,0xAC,0xBD,0x89,0x56,0x39,0xDD,0x3C,0xEE,0x6A,0x4B,0x74,0xAC,0x73,0xBB,0x8B,0x1D,0xB1,0xB1,0xDD,0xE5,0x89,0x7E,0x22,0x4C,0x36,0xA5,0x27,0xDA,0xCD,0x50,0xE9,0x12,0x9E,0xA8,0x67,0xDC,0xB8,0x8B,0x7B,0x82,0x9D,0x56,0xE5,0xAE,0xEE,0x8D,0xDE,0x5B,0x49,0xBB,0xAA,0x37,0x7B,0x6B,0x07,0xCE,0x4A,0x5E,0x47,0xD2,0x27,0x23,0x15,0x03,0x0A,0x0C,0x4B,0x7F,0x8F,0x29,0x22,0xB6,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spMIG[] PROGMEM = {0x2A,0x95,0xCA,0x3B,0xD3,0xD5,0xB8,0x59,0x6B,0xAD,0x0A,0x75,0x13,0xA6,0xA8,0x28,0xAA,0xCC,0xE9,0x18,0xB3,0x52,0x73,0x97,0xB4,0xAB,0x1F,0x36,0x95,0x52,0xDF,0xAC,0x6A,0xD8,0x60,0x6E,0x7F,0xBC,0xCA,0xEE,0x9C,0xB4,0xE3,0xF6,0x2A,0xBA,0x35,0xF2,0x8E,0xCB,0xA3,0xE9,0xDA,0xD1,0xC6,0x1F,0xA5,0x6E,0x58,0x07,0x1D,0x5D,0x28,0x76,0xCF,0x55,0x6F,0xCC,0x12,0x3B,0x84,0xCC,0xB8,0x50,0xC5,0xE2,0xB0,0x34,0x63,0xCA,0x64,0xA7,0xAB,0xAB,0x44,0xB6,0x48,0x92,0x9E,0x29,0x13,0x71,0x7D,0xB5,0xDB,0x9B,0x08,0x92,0x8B,0x55,0x6E,0x6B,0x51,0x44,0x2D,0x66,0xFD,0x3F};
|
||||||
|
//const uint8_t spALERT[] PROGMEM = {0xAD,0xCD,0xBE,0x45,0x2D,0x5B,0x8F,0xB6,0xC8,0x72,0x57,0xDB,0xD4,0xEA,0x0E,0xBC,0x8D,0xAC,0x6B,0xA9,0x27,0x90,0x49,0x56,0x77,0xA5,0x19,0x50,0xC7,0x58,0xD2,0xAD,0xA6,0x88,0x2C,0x53,0xDE,0xB2,0xAA,0xA2,0x2A,0x2C,0xB8,0xCB,0xA8,0x73,0x68,0xB6,0x96,0xBC,0x63,0x48,0xA9,0x30,0x5B,0xF2,0x94,0x35,0x97,0x80,0x2E,0xDE,0x53,0x8E,0x1A,0x06,0x65,0x24,0x4F,0x7A,0x6A,0x6E,0x94,0xE1,0x3E,0xE9,0x6F,0x3E,0x89,0x2B,0xF2,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0x0A,0x18,0xD2,0x8D,0x01,0x9B,0xAB,0x21,0x70,0x8A,0x52,0x15,0xAA,0xF1,0xFF};
|
||||||
|
//const uint8_t spZONE[] PROGMEM = {0x69,0x79,0x9C,0x4C,0xDC,0xB2,0x96,0xE5,0x39,0x4D,0x43,0xF6,0x6A,0x80,0x09,0x28,0x1C,0xB0,0x09,0x8A,0x01,0x1E,0x46,0x1D,0x53,0xD1,0x16,0x66,0xFE,0x66,0x4C,0xD9,0x44,0xA4,0xE9,0x9B,0xB1,0x24,0xDB,0x19,0x26,0x5B,0xDA,0x12,0xE3,0x84,0x99,0xBE,0x69,0x67,0x34,0x93,0xE1,0xB2,0xA6,0x9D,0xA1,0x54,0x18,0xC7,0xDC,0x76,0x85,0x54,0x69,0x12,0x4D,0xCB,0x15,0x4B,0xA5,0xB1,0x35,0x2D,0x77,0x08,0x59,0x2E,0xD1,0x38,0xDD,0x49,0x79,0xB5,0x6A,0x9D,0x74,0x57,0x2B,0x91,0x66,0x76,0xD3,0xD3,0xBC,0x58,0xAA,0xD9,0x49,0x4F,0x56,0x66,0xA5,0x16,0x27,0xBD,0xCD,0x8A,0x95,0x6A,0x9C,0xF4,0x56,0xCB,0x5E,0xA2,0x51,0xD2,0x9B,0x5D,0xB1,0x5B,0x2C,0x4E,0x5F,0x49,0x16,0xA6,0x55,0xFB,0xFF,0x01};
|
||||||
|
//const uint8_t spTERMINAL[] PROGMEM = {0x0E,0xD8,0x2E,0x35,0x00,0xCB,0x75,0x78,0x60,0x04,0xA9,0x18,0x65,0xF1,0xEA,0x95,0xE4,0x6E,0x9C,0x4B,0x79,0x56,0x9E,0xAA,0x73,0x1C,0x75,0x19,0x65,0xCC,0xA1,0xB5,0xB8,0xA6,0xD5,0xD9,0x9B,0x64,0x52,0xD4,0xD6,0x67,0x6B,0x92,0xCD,0x71,0xD7,0x90,0x4C,0x9B,0x8C,0xAD,0x19,0x53,0x56,0x6D,0xDA,0xF6,0xBA,0xAC,0x49,0x4B,0xB6,0x4A,0x9C,0xB1,0x66,0x6F,0x96,0x21,0xCD,0xC6,0x9E,0x79,0xA7,0x95,0x76,0x19,0x67,0x12,0x53,0x1E,0xDC,0xB5,0x9C,0x51,0x5E,0xAB,0x6B,0xD7,0xF4,0x07,0x7D,0xA5,0x6A,0xAD,0xC3,0x1F,0xCC,0xB7,0x88,0xB7,0x71,0x7F,0x10,0xB7,0x6A,0x9A,0x36,0xFC,0x89,0xF6,0xBA,0x4B,0x5A,0xF7,0x47,0x39,0x13,0xC1,0x79,0xCC,0x57,0x54,0x67,0x8A,0xB8,0xF9,0x7F,0x0E,0x98,0xA1,0xC4,0x01,0xDD,0x28,0x8F,0x74,0x84,0x64,0x73,0xAF,0x75,0xEA,0x1A,0x9D,0x2A,0x73,0xF1,0x69,0x9A,0x2F,0xB6,0xB2,0xC7,0xA7,0xAE,0xBA,0x38,0xDB,0x6F,0x9F,0x2A,0xD9,0x92,0x8E,0x9A,0xDA,0xCA,0x66,0x29,0x5B,0x4A,0x95,0x6B,0x12,0x97,0x68,0xD1,0x5A,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0xD2,0x51,0x26,0x35,0x1E,0xAA,0x8B,0x67,0x39,0xAA,0xCC,0xAF,0x44,0xB5,0xCB,0xA8,0x0B,0x99,0x09,0x96,0x2C,0xAD,0xC9,0x64,0x26,0x99,0xBB,0xB4,0x36,0x91,0x9E,0x22,0xCE,0x9A,0xBA,0xC4,0xAA,0x1B,0x2C,0x4B,0xEA,0x0B,0x8D,0x0C,0x23,0xB7,0xFF,0x0F};
|
||||||
|
//const uint8_t spRADIOS[] PROGMEM = {0xA1,0x77,0x8D,0xAD,0x43,0xEC,0xC5,0x3E,0x75,0xA1,0x53,0xA4,0x9B,0xFD,0x55,0x56,0x1F,0xAC,0x2D,0x5B,0x56,0xD9,0x42,0x90,0xB6,0x2D,0x5E,0x65,0x8F,0x8E,0x52,0xFE,0x78,0x54,0x2D,0x08,0x6B,0xE4,0x66,0x33,0x5A,0xE9,0x9E,0xE9,0x31,0xDA,0xB2,0x4D,0x32,0x7A,0xB4,0x19,0x63,0xB7,0x8A,0xDA,0xBD,0xB8,0x8D,0xDD,0x13,0x59,0xD7,0xEC,0x31,0xF7,0x20,0xA8,0x9D,0x8F,0xC7,0xDA,0x9C,0x90,0x8D,0xBF,0x1A,0x67,0xD3,0xA1,0xD4,0xB2,0xA5,0x9D,0xC5,0xA5,0x6A,0xF2,0xEF,0xF6,0x66,0xD5,0xC1,0xC3,0x6B,0xD2,0x97,0x54,0xA7,0x0E,0xEF,0x49,0x5F,0xB4,0x15,0x99,0xB4,0x3B,0xFC,0x31,0xA7,0xBB,0xCA,0x6A,0xF7,0xC7,0x1C,0x69,0x62,0xAB,0xCD,0x9F,0x52,0x84,0x8A,0xAE,0x36,0x7F,0xF2,0xE6,0xAA,0xBE,0xD9,0xFC,0x31,0x06,0x7A,0xC4,0xD2,0xF0,0x17,0x55,0xC6,0x6A,0x59,0xD3,0xF7,0x9B,0xA5,0xA9,0x49,0x0D,0xFB,0xF7,0x11,0x26,0xCC,0x4C,0x01,0xDF,0x23,0xFD,0x3F};
|
||||||
|
//const uint8_t spSPEED[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x0C,0x50,0x94,0x73,0x4B,0x7B,0x30,0xA6,0x90,0x35,0x23,0x9B,0xC9,0x09,0xD3,0xD6,0x8C,0x72,0x78,0x45,0xDE,0x5A,0xDC,0xDA,0x11,0x04,0x74,0xFA,0x51,0xEB,0x67,0x30,0xC0,0xA9,0xC5,0x6D,0x99,0xDE,0x80,0xA6,0x16,0xB7,0x6D,0x6A,0x41,0xD9,0x9C,0x54,0xF6,0x26,0x84,0x7C,0x73,0x91,0x3A,0x22,0xF1,0xA8,0xB2,0x48,0xEC,0xF4,0x34,0x22,0x32,0x6D,0x89,0x2B,0x92,0xB4,0x0C,0xAF,0x55,0xAE,0x69,0xDA,0x48,0x25,0x2D,0x03,0x0A,0x0C,0x4B,0x4F,0xCF,0x6C,0x2A,0xB9,0xFA,0xFF,0x01};
|
||||||
|
//const uint8_t spKNOTS[] PROGMEM = {0x6E,0x4A,0x92,0xBA,0x45,0x1D,0xA7,0x39,0x4B,0xEA,0x52,0x4D,0x92,0xA6,0xAA,0xB1,0xDD,0xCC,0xC9,0x98,0xAA,0x95,0x52,0xB5,0xA6,0x6B,0xCC,0x7A,0x9C,0xDB,0x17,0xAF,0xA1,0xF2,0x6D,0x6E,0x6B,0xB3,0xA6,0x22,0xB7,0x68,0xAC,0xCD,0x9A,0xB3,0xDE,0x94,0xB6,0x25,0xEB,0x28,0x62,0x8B,0xDB,0x36,0x8F,0xB3,0x98,0x75,0x6D,0x5D,0xDD,0xAE,0x12,0x56,0x3C,0xEC,0x95,0xBB,0xCB,0x8C,0x30,0xCE,0xC6,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x10,0x60,0x50,0x31,0x06,0xFC,0xA0,0x68,0x80,0x67,0x5C,0x15,0xF0,0x53,0x0A,0x03,0x7E,0x2B,0xE5,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spEXPECT[] PROGMEM = {0x6B,0xE8,0xAA,0xD5,0x53,0x36,0xAF,0xA1,0xAB,0x16,0x6B,0x5D,0xB5,0xFA,0x66,0x0A,0x73,0x7D,0x25,0x03,0x72,0x00,0x45,0x40,0x96,0x4E,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x20,0x70,0x8A,0x52,0x15,0xAA,0x01,0x0E,0xC8,0x26,0x65,0xE5,0xC5,0x87,0x5A,0xD8,0xEA,0x95,0x57,0x17,0xE2,0xE1,0x4F,0x56,0x56,0x5D,0x4A,0x64,0x2C,0x5E,0x59,0x0D,0x2A,0xE3,0x35,0x6B,0x64,0xAD,0x08,0x8D,0x55,0xA5,0x54,0x74,0x13,0xA4,0x11,0xAE,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x50,0xC0,0x90,0x6E,0x02,0xD8,0x5C,0x0D,0x81,0x53,0x94,0xAA,0x50,0x8D,0xFF,0x07};
|
||||||
|
//const uint8_t spACTION[] PROGMEM = {0x63,0x6C,0x39,0x25,0xC3,0xE7,0x8C,0xAE,0xD5,0xF0,0x30,0x9F,0xB3,0x9A,0x5A,0x2C,0xC2,0x63,0xEA,0xAA,0x5B,0x49,0x8B,0xD0,0x39,0xAB,0xAA,0x55,0xB5,0x3C,0xA6,0x08,0x20,0x18,0x61,0x04,0x4E,0x51,0xAA,0x42,0x35,0xC0,0x00,0x2D,0x44,0x24,0x60,0x97,0x9E,0x02,0xCC,0x34,0x5B,0x80,0x95,0xA6,0x46,0x3E,0x92,0x33,0xBB,0x74,0x5E,0x79,0x77,0x26,0x9C,0xBA,0x65,0x55,0x4D,0xA9,0x5A,0xF9,0xAA,0x56,0x36,0x0B,0x15,0x6E,0x71,0x47,0xD1,0x2D,0x46,0xBA,0xDA,0x1D,0x45,0xB3,0x58,0xEE,0xE6,0x66,0x54,0x55,0x9A,0x65,0xC4,0xAC,0xFF,0x07};
|
||||||
|
//const uint8_t spRADIAL[] PROGMEM = {0x6A,0x66,0x69,0xCC,0x3C,0xED,0x84,0xD9,0x36,0xCA,0x4C,0xF1,0x3A,0xC6,0xD4,0x29,0x34,0x2C,0xDB,0x6A,0x4B,0x09,0x53,0x97,0xAE,0xAB,0xEA,0xAE,0x85,0x93,0xD7,0xAC,0xA2,0x97,0x64,0x51,0x7D,0x32,0xB2,0x9E,0x84,0xD5,0xEC,0x71,0xA8,0x32,0x65,0xB3,0xAA,0x44,0xAB,0x98,0xCE,0x91,0x23,0x96,0xAC,0x6A,0x04,0x47,0xAE,0x5C,0xB2,0xEA,0x11,0x1D,0xA9,0x62,0xCD,0x6A,0x7A,0x54,0x94,0xF2,0x35,0xAB,0xAD,0x32,0x54,0xCA,0xBB,0xAC,0x3E,0xC9,0x32,0x4F,0xDE,0xBC,0xC6,0x24,0xD7,0xCD,0xB9,0xCF,0x1E,0xDB,0x10,0xC5,0x86,0x07,0xE5,0x09,0x83,0x73,0xEB,0xAE,0xB4,0xE9,0xFF,0x01};
|
||||||
|
//const uint8_t spPOWER[] PROGMEM = {0x0A,0x88,0x22,0xDC,0x00,0x45,0x57,0x8C,0xAA,0xE9,0x88,0x4A,0x4A,0xB4,0x8A,0xEC,0x3A,0xD3,0x79,0xF1,0xCA,0x93,0x5F,0xF7,0xD4,0xC7,0x2B,0x4B,0x6E,0x33,0x82,0x17,0xAF,0x2C,0xA4,0x8D,0x70,0x5A,0xDD,0x32,0x5F,0xD7,0x3D,0x70,0xF3,0x28,0x42,0x3A,0xB7,0xC6,0xDE,0xA3,0x0A,0x61,0x55,0x97,0xFA,0xAC,0x31,0x86,0xA2,0x6C,0xF1,0xB2,0x8E,0x14,0x86,0x7D,0xD8,0x6F,0x3B,0x73,0x69,0xB4,0xE5,0xDC,0xF5,0x29,0x6F,0xF1,0x83,0x74,0xEE,0x37,0xBC,0x35,0x2E,0xCA,0xBA,0xEE,0xF8,0xFD,0x3F};
|
||||||
|
//const uint8_t spGAS[] PROGMEM = {0x01,0x28,0xD6,0xC4,0x00,0x39,0x08,0x8D,0xAA,0x44,0x97,0xD2,0x98,0xBC,0xBA,0x12,0x43,0x22,0x7D,0xF6,0x9A,0xAA,0x2D,0xD3,0xB6,0xC5,0x6B,0xAD,0xAE,0xCC,0xCA,0x56,0xAF,0xAD,0xDA,0x32,0x2F,0x7B,0xBD,0x8E,0xEA,0xCB,0xAC,0x6C,0xF1,0x38,0xAA,0x2F,0x8D,0xF4,0xC7,0xED,0xAE,0x3E,0xAD,0xD4,0x67,0xF7,0x3B,0xBD,0xB5,0x58,0x99,0x74,0x13,0xF3,0x95,0x6D,0x21,0x92,0xB1,0x19,0x50,0x85,0x0B,0x03,0x9A,0x4F,0x21,0x40,0x2B,0x6D,0x02,0x68,0x3A,0xED,0xFF,0x01};
|
||||||
|
//const uint8_t spINFORMATION[] PROGMEM = {0xAE,0xE8,0x39,0x98,0xBC,0xD6,0x8C,0xA2,0x19,0xE5,0x98,0x98,0xB4,0x8A,0x6E,0x55,0xBC,0xA3,0xD6,0x2A,0x9B,0x36,0xF5,0xF2,0x59,0xAB,0x6C,0x96,0x2A,0x5C,0xED,0x8C,0x2A,0x2B,0xAD,0x10,0x8E,0x93,0xAA,0x6C,0xC5,0x95,0xB2,0xA1,0xEB,0x96,0x49,0x33,0x33,0xC7,0xA9,0x9F,0x2E,0x33,0x42,0x14,0x3B,0xA0,0xB9,0xF6,0x51,0x26,0x57,0x6A,0x4D,0x59,0x46,0x97,0x5C,0xA9,0x37,0x6C,0x49,0x7D,0xB0,0xEA,0x15,0x54,0xB7,0xF4,0xC9,0x4A,0x94,0x52,0xBD,0xD5,0x14,0x9D,0xA6,0xAD,0xAB,0x57,0xDD,0x54,0xA8,0x8D,0x6F,0x5E,0x55,0x77,0xCE,0xD6,0xBE,0x6A,0x15,0x3D,0x28,0x5B,0xE5,0xC2,0x56,0x8E,0xAA,0xCC,0xE6,0xAD,0x13,0x30,0x72,0x5B,0x02,0x66,0xE9,0x4E,0xC0,0x4A,0x1B,0x09,0xE8,0xA5,0x7D,0x15,0x2D,0xAA,0x72,0xD8,0xE6,0x55,0xB7,0xA0,0x26,0xE1,0xAB,0x5B,0x53,0x0D,0x76,0xAA,0xC4,0x29,0x75,0x35,0x38,0x66,0xE2,0x64,0xD4,0x55,0x73,0xA6,0x48,0x9C,0x51,0x17,0x6D,0x6E,0x1E,0x8D,0xFE,0x1F};
|
||||||
|
//const uint8_t spTRUE[] PROGMEM = {0x06,0xE8,0x36,0xB4,0x00,0x53,0xB7,0x25,0xA0,0xDB,0xF5,0x00,0x94,0x54,0xDE,0x8A,0x58,0x54,0x43,0x2C,0x6B,0x2B,0x63,0x94,0x32,0x95,0xE6,0xAD,0x4C,0xC6,0xC2,0x82,0xDA,0xB7,0xA2,0x10,0x2F,0x69,0xCE,0x9E,0x8A,0x4C,0xA2,0xA4,0xB0,0x6B,0xCA,0x13,0x89,0xB2,0x86,0x2E,0x21,0x0F,0x2C,0xCB,0x13,0xB6,0x84,0xCC,0xAB,0x0A,0x75,0x7E,0x12,0x32,0xAF,0xD2,0x2C,0xBC,0xCD,0xFF,0x03};
|
||||||
|
//const uint8_t spPRESSURE[] PROGMEM = {0x08,0x88,0x44,0xC5,0x00,0xC5,0xB9,0x1A,0xA0,0x64,0xB3,0xD1,0xA5,0x2C,0xA5,0xC5,0x6B,0x56,0x97,0xB3,0xBA,0xA7,0x6E,0x59,0x63,0xC9,0xAE,0x11,0xBA,0x65,0x2D,0x25,0x99,0x5A,0xDA,0xEA,0xB6,0x36,0xEB,0x2A,0xE1,0x29,0x13,0xB0,0xAC,0x6B,0x02,0x66,0xD9,0x4C,0xC0,0xCC,0xDB,0x0E,0x68,0x41,0xA9,0x4D,0xC5,0x27,0x49,0x7B,0xB6,0xB2,0xD6,0x34,0x8C,0xAD,0xFE,0xCB,0x51,0x8E,0xB3,0x15,0x75,0x2D,0x57,0x1E,0x4A,0xBE,0xDC,0x25,0xDD,0xB9,0x09,0xC5,0x4A,0x96,0xF0,0xE4,0xC3,0x9C,0x25,0x5D,0xDC,0x53,0x9E,0x72,0x25,0xA7,0x71,0x6F,0x79,0xA9,0x69,0xAC,0xF4,0xFF,0x01};
|
||||||
|
//const uint8_t spCHECK[] PROGMEM = {0x0C,0xD8,0x39,0xC4,0x01,0xBB,0xA6,0x04,0x60,0xB6,0x90,0x04,0x8C,0x54,0xBE,0x8A,0x9A,0x5D,0x3D,0x7D,0xCD,0x2E,0x56,0xD1,0x7C,0x49,0x94,0xAF,0x5E,0x79,0x2B,0xC5,0xA1,0xB6,0x18,0x81,0x53,0x94,0xAA,0x50,0x0D,0x00,0x06,0xD4,0x39,0xC4,0x80,0xBA,0x8C,0x11,0x10,0x1D,0xF1,0xFF,0x03};
|
||||||
|
//const uint8_t spDECREASE[] PROGMEM = {0x0C,0x28,0x30,0x6C,0x0D,0x5B,0x97,0xB2,0x88,0xBF,0xD3,0x4D,0x93,0x4C,0x6E,0x5B,0x56,0x3F,0x42,0x21,0xA6,0x6F,0x6E,0xFD,0xC8,0x09,0x9C,0xB6,0x19,0x81,0x53,0x94,0xAA,0x50,0x0D,0x50,0x40,0x6A,0x2D,0x0A,0xC8,0xB1,0x42,0x01,0xA9,0x96,0x8F,0x22,0x17,0x4E,0x33,0x4D,0xB7,0xCA,0x9A,0xC4,0xCC,0xA5,0xEB,0x28,0x9A,0x73,0xD2,0xD2,0xAD,0x2D,0x1D,0x29,0x80,0xD3,0x1E,0xB7,0xB4,0x19,0xC6,0xE8,0x5A,0xDC,0xD2,0x2A,0x85,0x32,0x6A,0x95,0x02,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x0C,0xF8,0x2D,0x95,0x01,0xBF,0x94,0x31,0xE0,0xE7,0xB2,0xFF,0x07};
|
||||||
|
//const uint8_t spADVISE[] PROGMEM = {0x63,0xEC,0xBA,0x55,0xCB,0xD7,0xAC,0xB1,0x9B,0x56,0x75,0x5B,0xB3,0xC6,0x66,0x43,0xC2,0x6D,0xB5,0x98,0xBC,0x55,0x71,0xEF,0x99,0x6A,0xD6,0x22,0x23,0xC3,0x6A,0xAA,0x25,0x90,0x34,0x4F,0x6B,0x2C,0x16,0xCB,0xD3,0x35,0x3D,0x49,0x38,0xBA,0x0A,0x53,0x51,0xDB,0xAB,0x4F,0x66,0xC2,0x9C,0x37,0xAD,0xAE,0x88,0x6D,0x0B,0xE9,0xB3,0xBA,0x22,0xB6,0x3C,0x64,0xCB,0xEA,0x2A,0xDF,0xD2,0xB4,0x2D,0xAB,0x6D,0x62,0xD3,0x52,0xB7,0xAC,0xA6,0xF3,0x75,0x2F,0xD9,0xBC,0x9A,0x21,0xD6,0xBC,0x64,0xF5,0xAA,0xBB,0x1D,0x0E,0xB7,0xD7,0xAB,0x6A,0xA6,0xA8,0x3C,0x5F,0xAD,0xAA,0xCB,0xC2,0xB2,0x9A,0xDD,0x9A,0x2A,0x12,0x93,0x67,0x72,0xEB,0xBE,0x62,0x37,0x8A,0x2C,0x0A,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0xD2,0xFF,0x07};
|
||||||
|
//const uint8_t spYOU[] PROGMEM = {0xA9,0x2A,0x42,0x38,0xBA,0x63,0xA6,0xAE,0x0B,0x21,0x8D,0x69,0x98,0xFA,0x29,0x15,0x25,0x6A,0x56,0xE9,0xBB,0x53,0xE4,0xCA,0xC5,0xA3,0xED,0xCA,0x99,0x5A,0xDB,0xB6,0xB6,0x50,0x77,0x2D,0xEE,0x1A,0xBA,0x84,0xA2,0x24,0xA9,0xAB,0xEB,0x03,0xED,0xD4,0xA4,0xD5,0x6E,0x12,0xAA,0xB2,0x9C,0x13,0xFD,0x3F};
|
||||||
|
//const uint8_t spHAVE[] PROGMEM = {0x08,0x48,0xCC,0x0C,0x03,0x2B,0x6B,0xD9,0x34,0x34,0xA7,0xAC,0xAA,0x25,0xD7,0xB0,0x98,0xB3,0xAA,0x96,0x5C,0x23,0x7C,0xCE,0xAA,0x6A,0x72,0x4D,0x8B,0x39,0xAB,0xAD,0xD1,0xB5,0x34,0xA7,0xAC,0xBE,0xC6,0xD4,0xD2,0x98,0xBC,0xA6,0x1A,0x53,0x53,0x62,0xF2,0x58,0x4B,0x74,0x2B,0x8D,0xC9,0xE3,0x28,0xD1,0x2D,0xCC,0x66,0x8F,0xB3,0xE8,0xD2,0x28,0x5B,0x34,0xCE,0x62,0x53,0x23,0x65,0x31,0x02,0x82,0xD5,0x20,0x40,0x75,0xA9,0x08,0xA8,0x36,0xED,0xFF,0x01};
|
||||||
|
//const uint8_t spERROR2[] PROGMEM = {0x6D,0x6C,0x6E,0x89,0x5B,0x36,0x8F,0xA9,0x9B,0x11,0x5A,0xE9,0x33,0xA7,0x31,0x17,0xB7,0x4A,0x47,0xFD,0xC6,0x92,0x9A,0x8B,0x2F,0x65,0x4B,0x6B,0x1C,0xE4,0xD5,0xD8,0x2D,0xAF,0x65,0x8D,0x83,0xAD,0x9A,0xB2,0x95,0x23,0x76,0x93,0x58,0xCA,0xD7,0xCE,0xEC,0x57,0xF8,0xD8,0x5B,0x3A,0x8B,0x3D,0xC5,0xE7,0x7C,0xE9,0xCD,0xBD,0x30,0x86,0xDA,0x86,0x2F,0x97,0x82,0x38,0xEC,0x13,0xFE,0xE4,0x07,0xED,0x35,0x4B,0xF8,0x73,0x4E,0xEC,0xD2,0x3C,0xEE,0x2F,0xCB,0xB9,0x9D,0x3B,0xFF,0x3F};
|
||||||
|
//const uint8_t spALL[] PROGMEM = {0x0A,0x48,0x71,0xA9,0xE4,0x45,0x9F,0x9B,0x99,0xEB,0x56,0x04,0x3F,0x6E,0xA6,0xBD,0x5A,0x15,0x7D,0x97,0x1B,0x6F,0x69,0x55,0xB4,0xD3,0xEE,0xB4,0xA7,0x55,0xD1,0x5C,0x8B,0xCB,0xDE,0x56,0x06,0x77,0x2D,0xA6,0x7B,0x5A,0x19,0xED,0x97,0x98,0x6D,0x69,0x45,0xB4,0x57,0xA6,0xB6,0xB9,0x15,0x51,0x7D,0x9B,0x68,0x97,0x52,0x04,0xDF,0x63,0xE8,0x5D,0x4B,0x11,0xF5,0x76,0x83,0xA6,0x2D,0x55,0x14,0x5F,0xCE,0xD6,0x39,0xD5,0xC1,0x7D,0x38,0x67,0xA7,0xFF,0x07};
|
||||||
|
//const uint8_t spLONG[] PROGMEM = {0x6C,0xB1,0xAE,0x5D,0x4D,0x93,0x9A,0xCB,0xB9,0x14,0x4F,0xB7,0x2D,0x4E,0x5B,0x4C,0x22,0x9D,0xAD,0xDB,0x5C,0xA3,0x28,0x57,0x77,0x6D,0xF5,0xC9,0xD3,0x42,0xD2,0xAE,0x29,0x98,0xA9,0x08,0xCA,0x72,0x86,0x68,0xB7,0x23,0xA8,0xCB,0xE9,0xA2,0xBD,0x36,0x97,0x2C,0xAB,0x0E,0xE1,0x52,0x43,0x5B,0xAF,0x22,0xD4,0x31,0x8B,0x58,0xB4,0xB2,0x58,0xDB,0xDC,0xB2,0xF1,0x48,0xB3,0x6C,0x5F,0x0A,0x25,0x2D,0x2D,0x5A,0xAB,0xD9,0x54,0x8F,0xAC,0x28,0xCE,0x92,0x54,0x34,0xF2,0xEA,0xC4,0x9B,0xCB,0xF2,0xFF,0x03};
|
||||||
|
//const uint8_t spNO[] PROGMEM = {0x62,0xF2,0x5C,0x72,0x4A,0x62,0x9B,0x35,0x70,0xCE,0x49,0xA9,0xE5,0xD6,0xC8,0x39,0x27,0x65,0x76,0x58,0x8A,0x20,0xEF,0xE4,0x39,0x63,0xAE,0x4A,0xD4,0x43,0x66,0xAF,0x3E,0x07,0x77,0xF1,0x78,0xB3,0xDA,0x6C,0x23,0x52,0xFC,0xCD,0xAA,0xB2,0xA9,0x28,0xA1,0x2F,0xAB,0x88,0x62,0xB2,0x9C,0xBA,0x8C,0x2C,0xE8,0xF7,0x60,0xEA,0xD2,0x52,0x6B,0xCF,0x93,0xA5,0x53,0x49,0x5C,0x98,0x48,0x90,0x4D,0x29,0x31,0x7E,0x23,0x48,0x36,0x85,0xCC,0x9A,0x89,0x24,0xEE,0xFC,0xFF};
|
||||||
|
//const uint8_t spIMMEDIATELY[] PROGMEM = {0xAE,0xEC,0x81,0xD9,0xA2,0x6A,0xB7,0xBE,0x2B,0x25,0xEB,0x9C,0xBD,0xBA,0xA6,0x95,0xB5,0x7D,0x71,0xE9,0x92,0x64,0xEF,0x92,0x24,0xA5,0x2B,0x8A,0xAC,0x4B,0x93,0xB4,0xAE,0x1A,0xD2,0x4A,0x4D,0xD2,0xBA,0x22,0x59,0xAB,0xD4,0x4D,0x69,0x93,0x64,0xEF,0x10,0xB7,0xAB,0x1A,0x29,0x98,0x83,0x57,0xAF,0x72,0xA6,0x64,0x0C,0x5D,0xB3,0xF2,0x99,0x8A,0xD1,0x74,0x4D,0xC9,0x2B,0x15,0x89,0xF6,0xDA,0xA9,0x29,0xC2,0xD0,0x2A,0x1B,0x8F,0x6A,0x7A,0x07,0xCE,0x58,0xBC,0xEA,0xE9,0x1C,0xA8,0x73,0xF1,0x18,0x86,0x73,0xE0,0xC9,0x5B,0x6B,0x1C,0xDA,0x91,0x27,0x1E,0xAF,0xA5,0xAB,0x20,0x6D,0x7F,0x85,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x10,0xE0,0x78,0x61,0x06,0x34,0xA6,0x52,0xD6,0x8D,0x79,0x93,0xB9,0xCB,0xD8,0x2F,0xC7,0x69,0xA6,0x36,0x6B,0x6F,0x34,0xD3,0x42,0xF3,0xAD,0x7D,0x89,0x0A,0x4A,0xEB,0xBA,0xAE,0x29,0xDB,0x30,0x6D,0xCF,0xB8,0x87,0x4D,0xE6,0xB4,0xCD,0xE5,0xEE,0xD1,0x51,0x32,0x5F,0xA7,0xA7,0x67,0x25,0xD5,0x6E,0x6C,0xDE,0xDE,0x84,0x4C,0x73,0xF6,0xFF,0x03};
|
||||||
|
//const uint8_t spFINAL[] PROGMEM = {0x08,0x48,0x4C,0x45,0x00,0x43,0x87,0x0A,0xA0,0xBB,0x0A,0x06,0x74,0x37,0xA9,0x80,0x21,0xC3,0x56,0x15,0x7D,0x67,0x38,0x2F,0x5E,0x55,0x56,0x93,0x9E,0xBC,0x79,0x55,0xC5,0xB4,0x47,0xE8,0xE6,0x55,0x16,0x97,0x9A,0x65,0xAB,0x56,0x51,0x7C,0x48,0x75,0x2C,0x5E,0x45,0xF1,0x66,0x65,0x9D,0xA8,0x15,0x59,0x9B,0xB7,0xA4,0xAA,0x95,0x27,0xDB,0x56,0x61,0x69,0x56,0x9E,0xCC,0x86,0x9B,0x74,0x1E,0x59,0xC1,0x33,0xA6,0x92,0x75,0x64,0x15,0xD5,0x84,0x72,0xDA,0x96,0x65,0x12,0xB5,0xCC,0x6D,0x4B,0xD1,0x40,0xB6,0xA9,0xB6,0x55,0x9D,0xB2,0x25,0x16,0x69,0xF7,0xFF,0x01};
|
||||||
|
//const uint8_t spPLEASE[] PROGMEM = {0x02,0x28,0x92,0xAD,0x95,0x45,0x6A,0xBB,0xA8,0xDB,0x51,0x15,0x16,0x5D,0x4C,0x6B,0x56,0xB5,0x84,0xB4,0x39,0x75,0x5D,0x45,0xD7,0x61,0xEC,0xBC,0x66,0x65,0xD3,0x85,0x60,0xE8,0x9A,0x95,0x2E,0xEB,0x0C,0x1D,0x4B,0x46,0x36,0x8C,0x22,0x77,0xBE,0x19,0x59,0x57,0x4A,0x1A,0xFE,0x66,0xE4,0x5D,0xA9,0xA8,0xE9,0xE6,0x51,0xFE,0x10,0x22,0x2C,0x4E,0x0D,0xF0,0x8C,0xAB,0x02,0x7E,0x4A,0xF9,0x7F};
|
||||||
|
//const uint8_t spSTART[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x04,0x4E,0x51,0xAA,0x42,0x35,0x40,0x01,0x43,0xBA,0x31,0x60,0x73,0xB5,0x55,0xE6,0x98,0xEA,0xA5,0x5B,0x46,0x9D,0x5D,0x6B,0x0E,0xF5,0x19,0x75,0xB1,0xC7,0xBE,0x94,0xBB,0x55,0xB9,0x1B,0x9F,0xD8,0xAD,0x5E,0xB5,0xB2,0x0C,0xA3,0x71,0xED,0x90,0x8A,0xBA,0xD8,0x55,0x22,0x09,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x10,0x80,0x21,0xDD,0x14,0xB0,0xB9,0x1A,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xFF,0x0F};
|
||||||
|
//const uint8_t spCOURSE[] PROGMEM = {0x02,0x08,0xCB,0x50,0x01,0xB1,0x17,0x95,0xDA,0xF7,0xF0,0x14,0xE9,0xD2,0x06,0x1F,0xD6,0x65,0xC8,0x4F,0x1B,0x43,0x38,0xE3,0x65,0xBF,0x65,0x89,0x6E,0xD9,0x0E,0x7B,0x97,0x35,0x85,0xC2,0x1A,0xD8,0x53,0xF6,0x5C,0x1D,0xB3,0xA4,0x6B,0x3A,0x72,0x11,0x0D,0xB3,0x2E,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0D,0x28,0xE0,0xB7,0x54,0x06,0xFC,0x52,0xC6,0x80,0x9F,0xCB,0xFE,0x1F};
|
||||||
|
//const uint8_t spRADAR[] PROGMEM = {0x22,0x0B,0x34,0xA2,0xC2,0x9C,0xB0,0x8C,0x77,0x97,0x08,0x77,0xE2,0x56,0xDD,0xD4,0xD2,0xDC,0x49,0x9A,0x43,0x27,0x0F,0x57,0x6F,0x6D,0xC8,0x9D,0x93,0x43,0xF3,0x8D,0xAA,0xFA,0x54,0x0B,0x5D,0xB3,0xAA,0xEE,0x9B,0xB9,0xE4,0xCD,0xC8,0xA6,0x6F,0xC2,0xD2,0x35,0x23,0x9D,0x71,0x08,0x5D,0xD6,0x8C,0xBC,0x67,0x61,0x31,0x5D,0x5D,0xDA,0x69,0x5C,0x48,0x2D,0xCD,0x68,0xAA,0x0B,0x76,0xF3,0x27,0xA3,0x2F,0xBA,0x24,0x4B,0xD6,0xB4,0x31,0x99,0x75,0x1F,0xDA,0xD3,0xC6,0xAC,0x2E,0x74,0xB1,0x4F,0x19,0x8B,0xB8,0xE0,0xA3,0x3E,0x65,0xCA,0x66,0x4D,0x8F,0xFA,0xA4,0x39,0xC7,0x96,0x58,0xCA,0x93,0x96,0x94,0x9A,0x63,0x39,0x5F,0x58,0x63,0x4F,0xCE,0xA5,0xBC,0xFF,0x0F};
|
||||||
|
//const uint8_t spPLAN[] PROGMEM = {0x02,0x48,0xC2,0x4B,0x01,0xC3,0xB3,0xA5,0xBA,0x09,0xCE,0x4C,0xB3,0x3D,0xEA,0x64,0xAA,0x42,0x78,0xED,0xAA,0xAB,0xE8,0xB0,0xE4,0xCF,0xAB,0x6B,0xBC,0xDC,0x46,0x57,0xAD,0xBE,0xAB,0x52,0x1B,0x9D,0xB5,0xA6,0xAE,0x4A,0x6C,0x6C,0xF6,0x5A,0x9B,0x2C,0xB1,0xB5,0x45,0x63,0xEB,0xA2,0x55,0xD7,0x16,0x8D,0xA3,0xEB,0x12,0x2F,0x5D,0xD4,0xAE,0x26,0x5B,0x6C,0x6C,0x51,0xBB,0x8A,0x29,0xC9,0xF0,0x59,0xE9,0x2A,0x56,0xCA,0xA9,0x1C,0xA7,0xBB,0x68,0xCE,0xA2,0x70,0x1A,0x9E,0x62,0x38,0x8B,0xDD,0x49,0x78,0x8A,0xD1,0x48,0x36,0x27,0xE1,0x6D,0x9E,0x43,0x2D,0x1C,0xFF,0x3F};
|
||||||
|
//const uint8_t spTARGET[] PROGMEM = {0x01,0xD8,0xD6,0x23,0x00,0xDD,0xB5,0x0B,0xC0,0x47,0xD6,0x51,0xA4,0x34,0x9C,0x8D,0x5D,0x56,0x9D,0xCA,0x48,0x0E,0x74,0x5E,0x6D,0xEE,0xC5,0x39,0xB4,0x79,0x75,0xA5,0x0E,0xDB,0xE2,0x96,0x35,0xD4,0x7C,0xC4,0x4B,0x7D,0xC2,0x58,0x6F,0x81,0x36,0xF5,0x62,0x6B,0x70,0x68,0x3F,0x6A,0xBB,0x1C,0xC3,0x24,0x8B,0xAB,0x92,0xB1,0x35,0x1F,0x60,0x6B,0xAB,0xC6,0x36,0x74,0x0B,0xB5,0x6E,0x6E,0x57,0x17,0xC5,0xD2,0xFE,0xCB,0xDD,0xC5,0x3A,0x45,0xD4,0x47,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x40,0x01,0x43,0xBA,0x31,0x60,0x73,0x35,0x04,0x4E,0x51,0xAA,0x42,0x35,0xFE,0x1F};
|
||||||
|
//const uint8_t spWINDOWS[] PROGMEM = {0x6A,0x50,0xC5,0xAC,0xDC,0x62,0x97,0xDE,0xDA,0x2A,0x77,0x4E,0xB3,0xAA,0x2C,0xD3,0x35,0x78,0xCB,0x2A,0xAB,0x76,0xF5,0xD0,0x27,0xAB,0xA8,0xC6,0xD5,0xCC,0x6E,0xB7,0xA2,0x19,0xC8,0x76,0x8B,0x3B,0x8A,0xAA,0x28,0xCA,0xCD,0x69,0xA9,0x8A,0xC4,0x6A,0x35,0xA7,0xA1,0xCE,0x02,0x27,0xCC,0x53,0x8D,0x61,0x38,0x73,0x16,0x4D,0xB3,0x86,0xAC,0x4A,0xCD,0xF3,0xD1,0x18,0xB3,0x69,0x31,0xF7,0x4F,0x63,0x49,0xBA,0x3C,0xDC,0x76,0x8D,0x2D,0x99,0x8C,0x32,0xD9,0xD4,0x8E,0xA8,0x3A,0xCA,0x64,0x4F,0x39,0x93,0xEE,0x08,0xE3,0xDE,0xE1,0x0E,0xB6,0xA2,0x45,0x76,0x87,0x37,0xC6,0x08,0x27,0x5F,0xE3,0xBE,0xE0,0x23,0xCC,0xB4,0x93,0xFB,0x83,0x09,0x2B,0xD3,0xD5,0xE6,0x8F,0x36,0x54,0xC3,0x57,0x87,0xEF,0x05,0xB5,0x61,0x72,0x92,0x7F,0x05,0xFC,0x56,0xAA,0x80,0x5F,0xDD,0x05,0xF0,0x53,0xFA,0xFF,0x03};
|
||||||
|
//const uint8_t spWATCH[] PROGMEM = {0x66,0xD5,0xEA,0x4B,0x5C,0x9C,0xA6,0xCD,0xEA,0x6F,0x72,0x73,0xDF,0xE6,0x60,0xBF,0xC8,0x23,0xFB,0x58,0xA2,0xBE,0x52,0x57,0x7F,0x6B,0x2D,0x72,0xCB,0x93,0xF3,0xAC,0xB3,0xA8,0x4D,0x0F,0xEE,0x83,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x00,0x01,0xB6,0x17,0x33,0xC0,0xAE,0x13,0x16,0x70,0xC0,0xAA,0x17,0x01,0x98,0xB9,0xD5,0x00,0xB3,0xB4,0xFE,0x3F};
|
||||||
|
//const uint8_t spUSE[] PROGMEM = {0x69,0x1E,0x4C,0x44,0xBA,0x66,0x95,0x69,0x28,0x25,0xEE,0x5A,0xDC,0xC6,0x1E,0x04,0x25,0x73,0xF1,0x18,0x9A,0x13,0xB2,0xF4,0x55,0xA3,0xAB,0x5A,0x24,0x42,0x5F,0xB7,0xA6,0x08,0xD5,0x4C,0xFE,0x52,0xEA,0xC8,0xC3,0x3C,0xEC,0x73,0xAA,0xA2,0xD2,0x54,0xCB,0xCD,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x18,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x66,0x80,0x9F,0xCB,0xFE,0x1F};
|
||||||
|
//const uint8_t spTURN[] PROGMEM = {0x09,0xD8,0x3E,0x2D,0x00,0x3D,0x8F,0x2B,0xA0,0x54,0xE3,0x56,0xA4,0xC1,0xD2,0xC5,0xAD,0x56,0x95,0xB7,0x51,0x15,0x75,0x19,0x55,0xDE,0x45,0x3E,0xD4,0x65,0x55,0x25,0x2F,0xF3,0x52,0x97,0x55,0xD5,0x38,0x2C,0xC3,0x59,0x57,0x55,0xB3,0x91,0x47,0x54,0x1B,0x65,0x51,0x62,0xA9,0x5A,0x75,0x94,0x55,0xB1,0x95,0x69,0xDC,0x5E,0xB6,0xB2,0x48,0x8E,0x52,0xB7,0xD3,0xAA,0xAA,0x55,0x32,0xD2,0xE6,0xFF,0x03};
|
||||||
|
//const uint8_t spTRAFFIC[] PROGMEM = {0x08,0x18,0x55,0xCD,0x01,0xD3,0xA9,0x05,0x60,0xE8,0x76,0x07,0x94,0x58,0xDE,0xB2,0x54,0xD5,0xAD,0xCC,0xCD,0xC8,0x73,0xD3,0xB0,0xE2,0x2D,0xA3,0xCA,0xD5,0xAD,0xDC,0x5E,0xAF,0xAA,0x9A,0x15,0x6F,0x59,0xBD,0xEA,0x12,0x52,0xCB,0x6D,0x36,0x02,0xAA,0x0C,0xE3,0x80,0x02,0xBA,0x09,0x2D,0x55,0xC9,0xEA,0x2E,0x55,0x65,0xCC,0x25,0x98,0x86,0xE5,0xEC,0xB1,0xD4,0xA0,0x92,0x56,0xAB,0xCA,0x56,0xA3,0x60,0x55,0xAE,0x44,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x18,0xD0,0x52,0xB0,0x02,0x6A,0x08,0x52,0x40,0x0B,0x41,0x04,0x88,0xDA,0xF0,0xFF,0x01};
|
||||||
|
//const uint8_t spCHECK[] PROGMEM = {0x01,0xB8,0xD2,0xD4,0x03,0xAB,0xAE,0xD1,0xD5,0x2D,0x17,0xAF,0xA1,0xA9,0x12,0x6D,0x7B,0xBD,0xA6,0x6E,0x47,0xA5,0x6D,0xF5,0x9A,0xBB,0x6D,0xD5,0xB6,0x55,0x6B,0x1D,0xBA,0x55,0xDB,0x56,0x8D,0xAD,0xDB,0x16,0x1D,0x5B,0x34,0xAE,0xE6,0x82,0xA3,0x63,0x51,0xB8,0x6B,0x24,0x9B,0xEC,0xD2,0xE6,0xEE,0xC5,0xA0,0xDB,0x2B,0x22,0xB0,0xA8,0x52,0x15,0xAA,0x01,0xA0,0x80,0xDE,0x5C,0x19,0xD0,0xBC,0x08,0x03,0x5A,0x31,0x46,0x40,0x8D,0x2C,0xFF,0x0F};
|
||||||
|
//const uint8_t spSLOW[] PROGMEM = {0x0A,0xB8,0x9C,0xC4,0x00,0xBF,0x68,0x1A,0xE0,0x3F,0xF1,0x00,0xFC,0x24,0xE9,0x80,0x9F,0x2C,0x0D,0x70,0x84,0x47,0xA9,0x3A,0xD2,0x11,0x97,0x6C,0xA3,0xAA,0xC4,0xD6,0x8C,0xB3,0xAC,0x32,0xB3,0x1A,0x57,0xE9,0xB2,0xEA,0xCC,0x7B,0xC2,0xB8,0xEB,0xAA,0x93,0xE8,0x71,0x93,0x6E,0xAB,0x49,0xAA,0x3B,0x9D,0xFB,0xB5,0x36,0xA8,0xAD,0x50,0xE9,0xDB,0x86,0x60,0xA7,0x5C,0xB4,0x4B,0x1A,0x5D,0xAD,0x54,0xF6,0x5D,0xE9,0x36,0x3D,0x4A,0x28,0x17,0x87,0xCB,0xB4,0x0E,0x63,0xDD,0xED,0x6E,0x53,0x3A,0x5D,0xB8,0xB3,0x7B,0x6C,0x5A,0x77,0xE5,0x3E,0xEE,0xB3,0xAD,0xC5,0xD5,0xF6,0xFC,0x3F};
|
||||||
|
//const uint8_t spRELEASE[] PROGMEM = {0xA2,0x11,0xD5,0xAC,0x42,0xD5,0x99,0x45,0x16,0xB3,0x0A,0x75,0xEB,0x66,0x5F,0xC8,0xDB,0xDC,0x7E,0x19,0x4B,0xE6,0x42,0x2B,0x67,0xAB,0x6D,0x26,0x99,0xCA,0xBB,0xAC,0x66,0xB8,0x44,0x2A,0xDB,0x32,0xDA,0x16,0x0C,0xA4,0x6D,0xCD,0xE8,0x17,0xE5,0x50,0xF5,0x76,0xA3,0x5F,0x88,0x5B,0xA4,0x66,0xAF,0x7E,0x33,0x4D,0x66,0x4F,0xBB,0x9A,0xA6,0x43,0xD8,0xFD,0xF1,0xAA,0xBB,0x33,0x92,0xC8,0xD7,0x2B,0x9F,0xC1,0x91,0x22,0x17,0x8F,0xAC,0x3B,0x01,0x9F,0x9E,0x5D,0xD2,0x26,0x14,0xB3,0x72,0x71,0xC9,0x7F,0xAA,0x4C,0x44,0x25,0x0E,0xF8,0xC9,0xC2,0x01,0xBF,0xB8,0x3B,0xE0,0xA7,0x08,0x07,0xDC,0xEA,0xFE,0xFF};
|
||||||
|
//const uint8_t spKEY[] PROGMEM = {0x09,0xE8,0x4A,0x35,0x01,0x53,0x8B,0x04,0x60,0x15,0x97,0x92,0x76,0x47,0xAC,0x5D,0x93,0x47,0x36,0x93,0x22,0x65,0xAF,0x19,0xD9,0x2C,0x8A,0x14,0xBD,0x65,0xE5,0xB3,0x28,0x52,0xF5,0x92,0x95,0xCF,0xA8,0xC8,0xDD,0xB3,0x47,0xB1,0xB2,0x21,0x65,0x3F,0x6E,0xE5,0xCC,0x82,0x5C,0xF9,0x44,0x97,0xB9,0xFC,0x7F};
|
||||||
|
//const uint8_t spIGNITION[] PROGMEM = {0xAD,0x2F,0xDE,0x38,0xCB,0x7B,0x8F,0xA1,0xC5,0x04,0x6B,0xDB,0x3C,0x87,0x30,0x15,0xEE,0x90,0xCF,0x31,0xC3,0x14,0x0D,0xC5,0x5A,0x58,0x4E,0xCB,0x14,0xC2,0x96,0x95,0xD4,0x4D,0x4A,0xA6,0x7B,0x56,0xCC,0x30,0x25,0xA3,0xA3,0xE4,0xAA,0x5A,0xD7,0x0C,0x44,0x86,0xB9,0x59,0x75,0xB7,0x2E,0x1A,0x32,0x7B,0x15,0x43,0x85,0x4A,0xDB,0xA2,0x55,0x74,0x6F,0x62,0x1E,0xB3,0x5A,0x31,0xAC,0x31,0x9B,0x2D,0x1A,0xD5,0xCA,0xB3,0x9B,0x21,0x39,0x01,0x33,0x6D,0x27,0x60,0xA5,0xE9,0x00,0xF4,0xB6,0x39,0xDA,0x9A,0x58,0xCD,0x73,0xD5,0x68,0x6B,0x34,0x31,0x8F,0xCF,0xEB,0x18,0x26,0xD5,0x42,0xF7,0x8C,0xA3,0x7B,0xD6,0x74,0x89,0x9B,0xCE,0xEE,0x85,0x32,0x24,0x5A,0x3A,0xBB,0x15,0x29,0xD7,0x68,0xE1,0xE9,0x4E,0xB8,0x5C,0xA3,0x85,0xB7,0x5A,0xB1,0x64,0xAD,0xFB,0xFF};
|
||||||
|
//const uint8_t spDEGREE[] PROGMEM = {0x0C,0x28,0x30,0x2C,0x45,0x43,0x9A,0x72,0xD8,0xEB,0x9D,0xAD,0xBA,0x0B,0x67,0x6E,0x7F,0x3D,0x9A,0xA1,0x1D,0xB9,0xF5,0x0B,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x10,0xD6,0x5C,0x3A,0x35,0x2C,0x66,0x1A,0xA2,0x75,0x73,0x33,0xA7,0xA9,0x0F,0x51,0xD2,0x54,0xDD,0xB6,0x3A,0x27,0x6A,0x4A,0xCB,0xB6,0xCA,0x92,0xC8,0x2C,0x6C,0xED,0x2A,0x7B,0x54,0xD4,0xF2,0xD7,0xA3,0x1A,0xDE,0x50,0x26,0x1E,0xB7,0x7A,0x04,0x05,0x99,0x7C,0xDC,0xEA,0x19,0x0D,0xA8,0xEB,0x76,0xAB,0x66,0x30,0xA0,0xAA,0x59,0xAD,0x1A,0x41,0x40,0xAA,0x67,0xA5,0xAA,0x79,0x14,0xAB,0x9E,0xFD,0xFF};
|
||||||
|
//const uint8_t spRAIN[] PROGMEM = {0xE1,0x48,0xA5,0xCB,0x42,0x6C,0xB7,0xB1,0xE6,0x60,0x33,0x57,0x32,0xDA,0x54,0x38,0x5C,0xC3,0xD9,0x68,0x72,0xE5,0x28,0xF3,0xE4,0xAB,0xCE,0x59,0x3D,0x23,0xBA,0x8E,0xAA,0x78,0xE7,0x6E,0x7F,0xBC,0xCA,0xEE,0x9D,0xA2,0xFD,0xD2,0x2A,0x86,0x33,0xCA,0xB5,0xD2,0xAB,0xE8,0x56,0xA9,0x56,0xAA,0x8C,0xB2,0x39,0x8C,0x8C,0x88,0x33,0xAA,0x6E,0x31,0x32,0xDC,0xC9,0x68,0xBA,0xC1,0x48,0x77,0x27,0xAD,0xED,0x4A,0x39,0xC3,0x6A,0xF7,0xE1,0xFF,0x01};
|
||||||
|
//const uint8_t spREPAIR[] PROGMEM = {0x62,0x14,0xCD,0xB8,0xBC,0xEC,0xBA,0xC9,0x35,0xB2,0xF4,0x54,0x96,0xA6,0x34,0xC9,0xC5,0xDB,0xDE,0x1A,0x6A,0x93,0x60,0xF1,0x6C,0x67,0xE8,0x3E,0x91,0xC3,0xB6,0x8C,0xA1,0x15,0x47,0x0E,0xDD,0x22,0x82,0xC0,0xDD,0x26,0xC5,0x09,0x02,0x12,0x33,0xC3,0x00,0x06,0x0C,0x50,0x9C,0x73,0xC9,0x6A,0x12,0x33,0xB5,0x59,0xAB,0x28,0x89,0x22,0xBC,0xAB,0x9C,0xA2,0xC5,0x62,0x0B,0xDD,0x72,0x8A,0x96,0x9A,0x35,0xE4,0xCB,0x29,0x5A,0x1E,0xD6,0x90,0x35,0xAB,0x6A,0xB9,0xD0,0x4A,0xBE,0x8C,0xA1,0xA5,0x42,0x1B,0xF9,0xD2,0xD6,0x1A,0x86,0x74,0x65,0xCB,0xD8,0x4B,0x5C,0x96,0xE5,0x2E,0xE3,0xA8,0x6E,0x85,0x8F,0xB6,0xB6,0xBB,0xA4,0x25,0x59,0xEE,0x52,0xEE,0xEA,0x8E,0xE9,0xB8,0xEB,0xFF,0x03};
|
||||||
|
//const uint8_t spCANCEL[] PROGMEM = {0x0E,0x98,0xC5,0x25,0x00,0xB3,0x94,0x38,0x60,0x64,0x96,0x93,0xB5,0x2A,0xEA,0xD6,0xB3,0x4F,0xD5,0xAA,0x6A,0x58,0x2D,0x39,0x75,0xCB,0x66,0x61,0xB5,0xF8,0x54,0xB5,0xA8,0xBB,0x6E,0xED,0x55,0xD5,0x90,0x5A,0xB4,0x71,0x5A,0xD5,0x0C,0x85,0x69,0x7A,0x2A,0x45,0xD5,0x98,0xA1,0xE9,0x3A,0x54,0x85,0x93,0x2D,0x45,0x93,0xD6,0x56,0xC9,0x6A,0xE2,0x76,0x0C,0xF0,0x6B,0xA9,0x07,0x02,0xF0,0x5B,0x4A,0x00,0x9E,0xF2,0x68,0x45,0x11,0xEE,0xA9,0xB2,0xA6,0xAD,0x51,0x4C,0x86,0xEA,0xE6,0x72,0x66,0xD6,0x9D,0xC6,0x59,0xD2,0x1F,0x65,0x77,0x2B,0x75,0x09,0xBF,0xD7,0xD3,0x21,0xD2,0x35,0xFC,0x51,0xD6,0xA4,0x71,0xD6,0xF0,0x47,0x99,0x93,0x86,0x6D,0xC2,0x9F,0x79,0x4D,0x3A,0x66,0x31,0x5F,0x51,0x5E,0xE9,0xDC,0xE4,0xFF,0x01};
|
||||||
|
//const uint8_t spVERIFY[] PROGMEM = {0xE6,0x68,0x52,0x8D,0x5D,0xDC,0x84,0x63,0xE4,0x09,0x57,0x51,0xD2,0xFA,0x6E,0x4D,0xC5,0xA5,0xCB,0x69,0x9B,0x77,0x55,0x97,0xCD,0xA7,0x6D,0xB6,0x54,0xC3,0xB6,0x9C,0xB6,0x04,0x37,0x77,0xCF,0x76,0xDA,0x5C,0xD5,0xDD,0x3D,0xDB,0xE8,0x52,0xE3,0x70,0x77,0x6F,0xAB,0xCF,0x55,0xD2,0x2C,0xBD,0x9D,0xA9,0xF8,0xD4,0x34,0xCB,0xBA,0xE6,0x12,0x5A,0xC2,0x65,0x73,0x1A,0x5B,0x2E,0x73,0xA5,0x25,0x0C,0x68,0xBA,0x94,0x01,0x43,0x97,0x09,0x60,0xB8,0x4A,0x03,0x14,0x2D,0x3E,0xDA,0x14,0xBC,0x82,0x7C,0xC9,0x5A,0x8A,0x9E,0x0C,0x97,0x2F,0x6B,0xED,0xAC,0xDB,0x52,0xB6,0xAC,0xBD,0xCA,0x4D,0x4F,0xD9,0xD2,0xAE,0xA2,0x36,0x3C,0xF5,0xF5,0x78,0xAA,0xEA,0xC8,0x94,0x35,0xED,0xEB,0xA2,0x3D,0x5A,0xD6,0x94,0xAF,0xE9,0xB6,0x0C,0xFE,0x52,0xFE,0x9A,0xD4,0xCA,0x7A,0x4A,0xFA,0x5B,0x74,0x4D,0xB7,0xC5,0xFF,0x0F};
|
||||||
|
//const uint8_t spREADY[] PROGMEM = {0x62,0x57,0x8D,0x2D,0xDD,0xD5,0xA5,0x3D,0x36,0x36,0x77,0x77,0x36,0x96,0xDC,0x38,0x25,0xCC,0xDB,0x19,0x4B,0xB0,0xD0,0xB0,0xAE,0xA7,0x6B,0xDE,0x35,0xCC,0xB6,0x9C,0xAA,0x05,0x57,0x67,0xDB,0x92,0xAA,0x6A,0xC8,0x82,0x7D,0x0B,0xEA,0x3C,0xB7,0xB0,0xAC,0x86,0x04,0xE8,0xC0,0xAD,0x8D,0x2D,0x88,0x98,0xF5,0x9D,0xB1,0x0C,0xEF,0x24,0xE1,0x6B,0xDA,0x3E,0x7D,0x12,0x86,0x7F,0x69,0xD7,0xF4,0x2D,0x10,0xB6,0xA5,0x5F,0xE5,0x99,0x21,0x11,0x2B,0x5E,0xD7,0xEF,0xFF,0x01};
|
||||||
|
//const uint8_t spUSE2[] PROGMEM = {0x6D,0x38,0x86,0x14,0x3C,0x57,0x8F,0x7E,0x07,0x53,0x60,0xDD,0x3A,0xAA,0xEE,0x84,0x28,0xF3,0xC9,0x28,0x5A,0x20,0x96,0xAC,0xC5,0x23,0xEB,0x59,0x51,0xCC,0xDE,0xAC,0xAC,0x7B,0x27,0x31,0xD9,0xB2,0x8A,0xA6,0x54,0x2C,0x64,0xCD,0x2E,0x4A,0x1D,0x99,0x7B,0x16,0x6D,0x4E,0x53,0x60,0xE9,0x55,0xD4,0x26,0xCC,0x5E,0x9B,0xA7,0xCA,0x96,0xB4,0x47,0x2D,0x99,0x6A,0x5B,0xD2,0x91,0x14,0x47,0xB8,0x6E,0x49,0x67,0x32,0x1C,0xAE,0xB5,0x24,0x5D,0x8D,0x9A,0x93,0x45,0xB7,0x74,0x3F,0x8B,0xA9,0x14,0x6B,0xCB,0xFD,0x14,0x87,0x88,0x7A,0x6B,0xD7,0xB7,0x9E,0xCA,0xA2,0xCE,0x00,0x1B,0x50,0x3A,0xE0,0x11,0x0E,0x03,0x3C,0x82,0xEA,0x80,0x2F,0x50,0xFE,0x1F};
|
||||||
|
//const uint8_t spOUT[] PROGMEM = {0x65,0x4A,0x6E,0xBC,0xD5,0x3B,0x8F,0xBE,0xA8,0xF5,0x72,0xED,0xBC,0x9A,0xAA,0x36,0x22,0x75,0xCB,0x6A,0x8B,0x9D,0x28,0xD3,0xCD,0xAB,0xCD,0x66,0xB2,0x5C,0x36,0xAF,0x3E,0xD9,0x8D,0x52,0xE9,0x3C,0xFA,0xE8,0x36,0x5A,0xB5,0xF7,0x68,0xA2,0x1D,0x4B,0xB5,0xDE,0xA6,0x4D,0xBC,0xD2,0x1D,0x3E,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0x0E,0x98,0x42,0xDD,0x00,0xCF,0x57,0xFC,0x3F};
|
||||||
|
//const uint8_t spOTHER[] PROGMEM = {0x6D,0xCC,0xBE,0xB4,0xC2,0x57,0x8D,0xB1,0xD8,0xB1,0x74,0xDD,0xB4,0xBA,0x6C,0xC6,0xD3,0x6C,0xD5,0xAA,0xA3,0x1E,0x2F,0xF5,0xD9,0xAE,0x4A,0x32,0x35,0xC8,0x67,0x87,0xA1,0x88,0x94,0xE4,0x4C,0xDC,0x86,0xA2,0x43,0x52,0x7C,0xF6,0x18,0x72,0x34,0x71,0xF7,0x55,0x63,0x2C,0x31,0x30,0x4A,0xF6,0xB4,0xB5,0xA4,0x46,0x1D,0xEE,0x53,0xAE,0x9A,0x17,0x65,0xB0,0x6F,0xBA,0xCB,0x0C,0x88,0xA2,0x2E,0xE9,0x29,0xB3,0xD0,0x1A,0xFB,0xA4,0xA7,0xF4,0x01,0x6F,0xEA,0x13,0xDE,0x72,0x02,0x46,0x79,0x4F,0xF8,0xCA,0x52,0xAC,0xD2,0x76,0xFF,0x0F};
|
||||||
|
//const uint8_t spOIL[] PROGMEM = {0xA1,0x0C,0x61,0xBC,0x44,0x3A,0xA6,0xC5,0x95,0xB3,0x10,0xEB,0xD5,0x86,0x10,0x2E,0xCC,0x25,0xEF,0x6A,0xA3,0xDA,0xF4,0xE4,0xAC,0xAB,0xC9,0x7C,0xDC,0x9B,0xFB,0xAC,0xA6,0x88,0x56,0x1B,0xD9,0xB3,0xDA,0x2A,0x46,0x64,0xAD,0xCB,0x1A,0x2A,0x6B,0xF7,0x96,0x4D,0x6B,0xCC,0x6C,0xB2,0x5C,0xF2,0x8C,0x35,0xB1,0xED,0x52,0x49,0x5B,0xD6,0xC8,0x7B,0x52,0x38,0x6B,0x5A,0x23,0xAF,0x4E,0xE1,0xAE,0x69,0x4B,0x3C,0xBC,0xC9,0x5A,0xFF,0x3F};
|
||||||
|
//const uint8_t spOFF[] PROGMEM = {0x69,0x70,0xBB,0xCD,0x25,0x36,0xB5,0xCE,0xD7,0x0D,0x57,0xED,0x3C,0x3A,0x5F,0x2F,0xCD,0xB4,0xF3,0xE8,0x7D,0xBE,0x34,0xD3,0xCE,0x63,0x08,0xFE,0xD3,0xDC,0x32,0x8F,0x39,0xFA,0x0F,0x73,0xCF,0xD4,0x8E,0xE8,0x3E,0xCC,0xBC,0x77,0x99,0x63,0xB8,0x30,0xF3,0x4E,0xE9,0x8E,0x79,0xDC,0x25,0x76,0xFA,0x9B,0x00,0xC3,0x56,0x10,0x60,0xFA,0x0A,0x01,0x4C,0x97,0xAE,0x80,0x66,0xCB,0x08,0x30,0x54,0xFA,0xFF,0x03};
|
||||||
|
//const uint8_t spNEAR[] PROGMEM = {0xAE,0x4D,0x0A,0xD7,0xCD,0x1D,0x9B,0x36,0x48,0x5A,0x55,0x4F,0xAD,0xDA,0x24,0xF1,0xCC,0x24,0xB3,0xAB,0xBD,0x94,0x55,0xD7,0xD4,0xAD,0x2A,0x8A,0x2D,0x2A,0x4A,0x8D,0xAA,0x3B,0x65,0xEB,0x98,0xB4,0xEA,0x11,0x9C,0xB8,0xFD,0xD6,0xA8,0x7B,0x30,0x94,0xB1,0x47,0xAD,0xA9,0x51,0xD1,0x47,0x5F,0xB5,0xA6,0x64,0xC3,0x18,0xDE,0x54,0xEA,0x5C,0x1D,0xED,0xB8,0x77,0xA9,0x53,0x4D,0x94,0xA7,0x3C,0xA5,0x4A,0xB9,0x50,0x9F,0xF2,0x94,0x29,0xC5,0xC6,0x38,0xCA,0x93,0xCE,0xE8,0x17,0x7B,0xB8,0xE7,0xFF,0x03};
|
||||||
|
//const uint8_t spGREAT[] PROGMEM = {0x6E,0xF3,0x59,0xC2,0x46,0xD9,0xA9,0xCD,0x0C,0x95,0x0E,0x55,0x6E,0x36,0x3D,0x9D,0xAA,0x4C,0xAE,0xD9,0xF4,0x0C,0xCC,0x36,0x7B,0x6E,0xF5,0x8B,0xF4,0x4C,0xB2,0x95,0x29,0x76,0xCC,0xD2,0xF4,0xB6,0xA6,0x5C,0xC4,0xD3,0xAA,0xEF,0x9A,0xAA,0x2F,0x8C,0x8C,0x4D,0x6B,0x19,0x6E,0x48,0xD2,0x56,0xAD,0x7D,0xB8,0x42,0x4E,0x5F,0xDD,0xCE,0x6E,0x0C,0x7C,0x72,0x71,0x38,0x87,0x36,0xD0,0xCE,0xD9,0x6C,0x1B,0x5A,0xC9,0x22,0x12,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0x0E,0x18,0xD2,0xCD,0x01,0x9B,0xAB,0x09,0xE0,0x98,0x2D,0x01,0x2C,0x15,0x86,0x80,0x1A,0x15,0xFE,0x1F};
|
||||||
|
//const uint8_t spMIXTURE[] PROGMEM = {0x61,0x8C,0x92,0x6B,0x4D,0xEA,0x94,0x31,0x0B,0xF6,0x29,0x49,0xDC,0x86,0x2A,0x44,0xB3,0x2D,0xCD,0xEA,0xAB,0x0A,0xD7,0xD0,0xDE,0xAB,0xEB,0x2A,0x55,0xD3,0x7B,0xAF,0xBE,0xDB,0x24,0x0F,0xDB,0x84,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x04,0x60,0xEB,0xE9,0x00,0x7C,0x9B,0xED,0x80,0xDF,0x42,0x14,0xF0,0x7B,0x28,0x02,0xA7,0x28,0x55,0xA1,0x1A,0xA0,0x80,0xB3,0x3B,0x13,0xB0,0x82,0xE9,0xE8,0x7A,0x4C,0x26,0xB3,0xBC,0xA3,0xAB,0x59,0x58,0x4B,0xF7,0xB6,0x29,0x27,0xA1,0x2C,0xF9,0xDA,0xB6,0x5C,0x92,0x64,0xA9,0x6F,0x3B,0x73,0x57,0xCE,0xE6,0x3E,0xE9,0xCA,0xDD,0x31,0x86,0xFA,0x95,0x27,0x97,0x44,0x5F,0xEA,0x9F,0xFE,0xD4,0x94,0xAA,0xB9,0x5F,0xF8,0x53,0x15,0x9A,0xB2,0x7C,0xFF,0x0F};
|
||||||
|
//const uint8_t spMUCH[] PROGMEM = {0x61,0x4A,0x92,0xAA,0xC5,0x13,0xA7,0xA9,0x08,0xD1,0x16,0x8D,0xDB,0xC6,0xCE,0x5C,0xDA,0x31,0xEE,0x1A,0x2A,0x6B,0x6F,0xA3,0x24,0xAB,0x49,0x6E,0xC3,0xDD,0x36,0xAD,0x3A,0xDB,0xB6,0x92,0xD8,0xB8,0xCA,0x9C,0x9C,0xDB,0xAB,0x31,0xAB,0x3D,0x4B,0xAB,0x0C,0x99,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x01,0x66,0x55,0x55,0xC0,0x6C,0x9D,0x0E,0x98,0x7D,0x26,0x00,0xAB,0x4F,0x39,0x60,0xB6,0x99,0x00,0xCC,0x3E,0x15,0x80,0xD9,0x3A,0x15,0x30,0xFB,0xD6,0xFF,0x03};
|
||||||
|
//const uint8_t spGREAT2[] PROGMEM = {0x6A,0xD1,0x55,0x75,0xC2,0x95,0xAA,0x5D,0x0C,0xD1,0x4E,0x55,0x66,0x56,0x35,0x58,0x3B,0xD5,0x99,0x99,0xCD,0x24,0x9F,0x50,0x77,0x61,0x0A,0x03,0xAB,0x4C,0xB2,0xB5,0x3E,0x2D,0x2C,0x0B,0xCD,0xBA,0xBA,0x52,0x35,0xC4,0x2D,0xDB,0x6A,0x9B,0x2B,0xD1,0xB4,0x2D,0xAB,0x1A,0xB6,0x88,0xD3,0xB7,0xAC,0x7C,0xD8,0x44,0xAE,0x5C,0xB3,0xD2,0xE1,0x1D,0x34,0x73,0xC9,0x48,0x47,0x12,0x34,0xEB,0x26,0x26,0xDB,0x8C,0x59,0xAD,0x1A,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0xE0,0x80,0x2D,0xC3,0x1C,0xF0,0xAD,0xFB,0xFF,0x03};
|
||||||
|
//const uint8_t spIS[] PROGMEM = {0xA3,0xED,0xC6,0x30,0x3D,0x57,0xAD,0x7E,0xA8,0x42,0xA9,0x5C,0xB5,0xFA,0xA9,0x8A,0xB8,0x62,0xF3,0xEA,0x86,0x48,0xE6,0x8A,0x57,0xAB,0xEB,0x22,0x58,0x23,0x5E,0xAF,0xAE,0xCA,0x64,0xF5,0x7C,0x3C,0xBA,0xCA,0x93,0xD5,0xE3,0x76,0xEB,0x3B,0x4E,0x55,0xB3,0x4D,0x65,0xB8,0x58,0x5D,0xDD,0x72,0x97,0xE9,0x1B,0x55,0x27,0x4D,0xD3,0xE6,0x85,0xD5,0x4D,0x3D,0x6B,0xF9,0x5F,0x50,0x1B,0x26,0x27,0x0A,0xF8,0xAD,0x54,0x01,0xBF,0xBA,0x0B,0xE0,0xA7,0xF4,0xFF,0x07};
|
||||||
|
//const uint8_t spCAUTION[] PROGMEM = {0x0A,0xC8,0xF9,0xD9,0x01,0xD9,0x3D,0x19,0x20,0xA5,0xA1,0x11,0x45,0xBB,0x56,0xC2,0xAD,0x46,0x91,0xCC,0x56,0x24,0x75,0x19,0x65,0x52,0x57,0x5A,0xBC,0x65,0xE6,0xA3,0x88,0xA9,0xA4,0xC3,0x33,0x2A,0xC0,0x71,0xB3,0x04,0xAC,0x50,0x99,0x80,0x15,0xBB,0x13,0x30,0xE3,0xD6,0x98,0xA7,0xDF,0x48,0x61,0x36,0x6B,0xA9,0x3E,0x59,0x33,0xBA,0xAC,0xB5,0xCA,0x14,0xAF,0xD8,0xDC,0xB6,0xE2,0xC4,0x52,0x72,0x51,0x39,0xBB,0x32,0x9C,0xE0,0xB9,0xE5,0x6A,0xDA,0xB8,0xC4,0xEA,0x96,0xBB,0x4B,0xA7,0x52,0xA9,0x57,0xEE,0x6A,0xC4,0x52,0x22,0x6E,0x7D,0xD2,0x53,0xB3,0xB9,0x8A,0xD6,0xFA,0x7F};
|
||||||
|
//const uint8_t spBELOW[] PROGMEM = {0x0C,0x50,0xD6,0x6C,0x24,0xD5,0x39,0x73,0x58,0xEB,0x55,0x75,0x9F,0x8C,0x65,0x6B,0x56,0xD3,0x9C,0x92,0x94,0x3F,0x19,0x6D,0xD3,0xC6,0x9C,0xB6,0x66,0x74,0x8B,0x89,0x6B,0x52,0xB7,0xD1,0x2D,0xC6,0x11,0xC1,0xE9,0x5B,0xB7,0x04,0x65,0x3A,0x66,0x1F,0xDD,0x16,0x54,0xA5,0xD8,0x6D,0xD5,0x8D,0x66,0xBB,0xF2,0xD6,0x55,0x15,0x9E,0xED,0x2A,0x5B,0x56,0x95,0x79,0x4F,0xA8,0x74,0x19,0x65,0x14,0xD3,0x21,0xD2,0xB9,0x15,0x51,0xCE,0x18,0x6B,0xE7,0x52,0x78,0xBD,0xAD,0xA4,0x9D,0x53,0xE9,0xE5,0xB6,0x91,0x74,0x49,0x55,0x90,0xD3,0xC2,0xBA,0x25,0xD4,0x91,0x74,0xAB,0x69,0x1B,0x57,0x47,0x31,0xEA,0xAA,0x75,0x44,0x23,0x45,0xBB,0x9B,0xCD,0xF9,0x7F};
|
||||||
|
//const uint8_t spCYLINDER[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0xD4,0x51,0x0C,0x9E,0x6A,0x6A,0xBD,0x57,0xD1,0x44,0xBA,0x84,0x6E,0x5E,0x45,0xC7,0xD1,0xE6,0xBA,0x75,0x15,0x87,0xD2,0xB4,0xB3,0xDB,0x55,0x1E,0x4C,0x55,0xA9,0x4E,0x56,0xD1,0x60,0xA7,0xBB,0xB5,0x5E,0x65,0xC7,0x1D,0x1A,0xB6,0x79,0x94,0x4D,0x91,0x8D,0xBB,0xBD,0x56,0x56,0x85,0x31,0x1E,0xF2,0x52,0x99,0x05,0xE6,0xA9,0xC6,0x53,0xAD,0x17,0xDC,0xC3,0x59,0x79,0x0D,0x53,0x87,0xB3,0x4A,0xD6,0x55,0x56,0x5D,0x42,0xE9,0xD9,0x56,0x59,0xED,0x12,0x0D,0x67,0x1D,0x55,0x89,0x8B,0xBC,0x94,0x67,0x54,0x39,0x34,0xD8,0xB2,0xEF,0x5A,0x85,0x32,0xF8,0xC6,0x2C,0xE8,0xFD,0xFF};
|
||||||
|
//const uint8_t spCONTACT[] PROGMEM = {0x0E,0x28,0x79,0xC4,0x00,0x39,0x3B,0x8C,0x22,0xC7,0xF0,0x36,0xAB,0xB5,0x86,0xAC,0x27,0xBD,0x64,0xF3,0x1A,0x2B,0xDB,0x96,0xF6,0x2E,0xAB,0x2B,0xE6,0xCC,0xD3,0x16,0xAD,0xBA,0xD8,0x15,0x4F,0x5F,0xB4,0xAA,0x6A,0xC2,0x92,0xB2,0x6D,0x2B,0x9B,0x66,0x1B,0x2E,0x4D,0xA1,0xCA,0x92,0x3A,0xA9,0x55,0xB1,0x2E,0x0A,0x57,0xD7,0xB2,0x94,0x80,0xC9,0x8A,0x4A,0xD1,0x43,0xB1,0x52,0xD6,0x59,0x45,0xF1,0xA6,0x69,0x5D,0x79,0x55,0xD5,0xA7,0x96,0xE7,0xE2,0xD5,0x96,0x50,0x52,0x11,0x8B,0x57,0x53,0xB3,0x5B,0x69,0xCF,0x1E,0x75,0xAD,0x46,0x2D,0x5D,0x06,0x81,0x53,0x94,0xAA,0x50,0x0D,0x00,0x00,0x03,0x4C,0xA1,0x6E,0x80,0xE7,0x2B,0xFE,0x1F};
|
||||||
|
//const uint8_t spAND[] PROGMEM = {0x6B,0xA8,0x2E,0x79,0xAC,0x37,0xAE,0xA5,0xBA,0xE4,0xCE,0x5C,0xB8,0xA6,0xE6,0x92,0xB3,0x62,0xD1,0x9A,0xAA,0x2B,0x8E,0x8A,0x45,0x6B,0xAA,0xA6,0x38,0x33,0x66,0x97,0xA9,0x39,0xCC,0xD0,0xF0,0x9C,0xA6,0x66,0xB1,0x5C,0xD2,0xB3,0x99,0x93,0xA4,0x0E,0x19,0x17,0x64,0xE3,0xBA,0x34,0xB3,0x6D,0x96,0xA7,0x69,0x53,0x57,0xDD,0xD2,0x96,0x6A,0x8A,0x45,0xA2,0xF5,0xFF,0x03};
|
||||||
|
//const uint8_t spFUEL[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0xB6,0x8A,0x19,0x92,0x21,0x7D,0xF3,0x2E,0x56,0x31,0x62,0x09,0xA4,0x6C,0x59,0x65,0xE3,0xA6,0xDA,0xB2,0xB5,0xD4,0x41,0xA4,0x67,0xD2,0xEA,0xD4,0x5B,0x3D,0x11,0x4E,0x5B,0xD2,0x1A,0xF8,0x86,0x07,0xEE,0x2D,0x5B,0xA2,0x5B,0xA6,0x9A,0x35,0x1D,0x89,0x6E,0xBB,0x48,0xBF,0xF4,0x26,0x3E,0x53,0xCC,0x59,0xD3,0x97,0x68,0x6F,0x09,0xA7,0x09,0x7F,0x14,0x35,0x21,0xD4,0xE4,0xFF,0x01};
|
||||||
|
//const uint8_t spFOR[] PROGMEM = {0x08,0xA8,0x56,0x98,0x00,0xD5,0x97,0x13,0x60,0xD8,0x50,0x51,0x58,0x77,0xA5,0x81,0x59,0x62,0x57,0xBA,0x20,0x6E,0x25,0x58,0x5B,0xEB,0x83,0xB9,0xE2,0x14,0xEF,0xA3,0x0F,0x7E,0x2D,0x8A,0xBD,0x8D,0x3E,0x86,0x11,0x4F,0xF3,0x37,0x86,0x64,0x53,0xCB,0x2D,0x77,0x18,0x33,0x2F,0x09,0x97,0x45,0xFF,0x0F};
|
||||||
|
//const uint8_t spSEQUENCE[] PROGMEM = {0x0C,0xF8,0x4E,0xCC,0x00,0x3F,0xBB,0x1B,0xE0,0x77,0x57,0x03,0xFC,0x15,0x12,0x80,0x3F,0x4D,0x57,0xD2,0x8D,0xB2,0xB8,0x2F,0x5E,0xE9,0xF0,0xCE,0xE4,0xFE,0x78,0x65,0x23,0x18,0x52,0xE5,0xE2,0x94,0x8F,0x4A,0x10,0xDD,0x95,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x04,0x84,0x7C,0x82,0x00,0x55,0xDD,0x5A,0x16,0x4D,0x87,0x15,0x6F,0x5E,0x4B,0x56,0x15,0xDE,0xB2,0x79,0x6C,0x59,0xA7,0x47,0xDB,0xAA,0x72,0x66,0x9D,0x96,0xED,0x0B,0xC3,0x93,0x4C,0x78,0x57,0xCC,0x0C,0x7F,0xB5,0x1C,0x23,0x95,0x58,0xFD,0x59,0x73,0xA4,0x7A,0x62,0xF2,0x37,0x6E,0xE2,0x66,0x6E,0x08,0xF0,0x1D,0x91,0x00,0x7E,0x71,0x34,0xC0,0x1F,0x29,0x06,0xF8,0xB5,0xD4,0x00,0xBF,0x17,0x1B,0xE0,0x67,0x43,0x05,0xBC,0xEE,0xF2,0xFF};
|
||||||
|
//const uint8_t spSIDE[] PROGMEM = {0x06,0x38,0x00,0xD5,0x01,0x3F,0x31,0x3B,0xE0,0x1F,0xB1,0x00,0xFC,0xAE,0x56,0x8A,0x5F,0xCD,0x8B,0x8D,0xE9,0x2A,0x2A,0x1F,0x97,0xB4,0xD5,0xAB,0x2B,0x72,0xDC,0xCA,0x36,0xAF,0xAE,0x89,0x4D,0x29,0xDB,0xB2,0xBA,0x2E,0x26,0xB4,0xAC,0xCB,0x6A,0xAB,0x2D,0xCD,0xB4,0xD5,0xAB,0xA9,0x21,0x24,0x23,0x16,0xAD,0xAA,0x5A,0xE7,0xCE,0x9C,0x95,0xAA,0x2C,0x8D,0xC2,0x2B,0xA1,0xAA,0xB9,0x49,0x1B,0x2B,0x8B,0xAE,0x1E,0x46,0x94,0xCC,0xD2,0x94,0xA1,0x6A,0x55,0xB5,0x5C,0xF5,0xFF};
|
||||||
|
//const uint8_t spSLOW[] PROGMEM = {0x04,0xF8,0x8E,0x98,0x00,0xDF,0x30,0x2A,0xE0,0x27,0x11,0x07,0xFC,0x64,0x6C,0x80,0x9F,0xD5,0x1C,0xF0,0x8B,0x48,0xEB,0x2B,0xCE,0x52,0x93,0x2C,0xAD,0xCF,0x38,0xBB,0x02,0xB3,0xAE,0x2E,0xB1,0xE9,0x62,0xEE,0xBB,0xDA,0x24,0x7B,0x42,0xB8,0xEF,0x6A,0x0A,0xC9,0x4E,0xE7,0x6C,0xAB,0x8A,0x7C,0xCA,0x8D,0xF3,0xB4,0x2A,0xC8,0x2D,0x57,0xEE,0x5D,0x4A,0xAF,0x37,0xDD,0xB0,0xB7,0x2B,0x55,0x9C,0x30,0xE1,0x8E,0xAC,0x96,0xFA,0xC2,0xD9,0xDC,0xFC,0x3F};
|
||||||
|
//const uint8_t spTO[] PROGMEM = {0x09,0xD8,0x4E,0x34,0x00,0x4B,0xA7,0xA5,0xBC,0xE9,0x62,0x55,0x4B,0x53,0x9A,0xAC,0x5C,0x2D,0xF9,0x4B,0xE9,0x32,0x73,0xD3,0xA1,0x3D,0xA5,0x4F,0x52,0x2D,0x9B,0xB6,0xA4,0x21,0x79,0x95,0xC0,0xAC,0xAD,0x16,0xED,0xDC,0x22,0x23,0xC2,0xFF,0x03};
|
||||||
|
//const uint8_t spRICH[] PROGMEM = {0xAE,0x50,0xD1,0xA2,0x94,0xAD,0xB9,0xDA,0x44,0xF3,0x74,0x8E,0xE3,0x5A,0x9D,0xCC,0xDC,0xD5,0x6E,0xE8,0x6C,0xD2,0x74,0x55,0x67,0xA9,0x0D,0x89,0x3C,0x42,0x93,0xB7,0x2A,0x0F,0x4A,0x72,0x4B,0xB7,0xCA,0x1A,0x4D,0xD5,0x75,0xCD,0x2A,0x9A,0x0B,0xB6,0xB0,0xD7,0xAB,0x6C,0x36,0xC9,0xC2,0x5F,0xAD,0xB6,0x05,0x67,0xF7,0x58,0x55,0xE6,0xEA,0x83,0xCC,0xE3,0x13,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x40,0x80,0x59,0x55,0x15,0x30,0x5B,0xA7,0x03,0x66,0x9F,0x09,0xC0,0xEA,0x53,0x0E,0x98,0x6D,0x26,0x00,0xB3,0x4F,0x05,0x60,0xB6,0x4E,0x05,0xCC,0xBE,0xC5,0x80,0xD1,0xA6,0xFE,0x1F};
|
||||||
|
//const uint8_t spPUMPS[] PROGMEM = {0x02,0x88,0xCE,0x53,0x00,0xC9,0x86,0xA6,0x22,0x9A,0xCE,0x64,0x69,0xB5,0xDA,0x64,0x36,0xDD,0x75,0xF3,0xEA,0x32,0xDF,0xB6,0x92,0xCE,0x63,0xCE,0x7C,0xCB,0x4A,0x37,0xB7,0x3D,0xA9,0x0D,0x4B,0x5D,0x9C,0x8E,0x10,0x3A,0xC3,0x62,0x49,0x38,0x83,0x0A,0x2F,0x12,0x37,0xFA,0x44,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x40,0x01,0x49,0x79,0x1A,0xE0,0x19,0x57,0x05,0xFC,0x94,0x62,0x80,0xDF,0x4A,0x2D,0xA0,0x80,0xDF,0x52,0x15,0xF0,0x4B,0xD9,0xFF,0x03};
|
||||||
|
//const uint8_t spLEVEL[] PROGMEM = {0x69,0xAB,0xC4,0xB3,0xD8,0x92,0x86,0x2D,0x83,0xEE,0x60,0xCD,0x12,0xD6,0x0C,0x66,0x45,0x2C,0x73,0x58,0x0B,0xA8,0x53,0xD6,0xAC,0x6D,0xE9,0xC0,0x57,0xC5,0xB2,0xAE,0xA1,0xB0,0x49,0x0D,0x7B,0xBD,0x86,0xA2,0x47,0x35,0xE3,0xF5,0xEA,0xB2,0x4B,0x4B,0xCB,0xC7,0xA3,0xCD,0xDE,0x23,0x59,0x1A,0x9A,0x31,0x8B,0xB0,0x54,0x76,0xE3,0xC6,0x26,0x5C,0x2C,0xCC,0x76,0x6B,0x92,0xBC,0x34,0x95,0xC6,0xA3,0xCE,0x74,0xDB,0x85,0x3B,0x8F,0xBA,0x90,0x9C,0x51,0xCC,0xD6,0xEA,0x4C,0x63,0x56,0x30,0x6D,0xA9,0x23,0xCF,0x59,0xD0,0x34,0xB5,0xF9,0x7F};
|
||||||
|
//const uint8_t spLOWER[] PROGMEM = {0x66,0x4D,0xA8,0x2A,0x4C,0xDA,0x9A,0x3D,0xC2,0x6D,0x31,0x6F,0xE3,0xB6,0x06,0x7C,0x55,0x22,0xA9,0x5B,0x23,0xE8,0x31,0xD3,0x34,0x61,0x49,0x28,0xBB,0x83,0xB2,0x94,0xB9,0x02,0xEB,0x4A,0xF2,0xBB,0xC6,0x42,0x23,0x43,0x2D,0xEE,0xEA,0x0B,0xA9,0x09,0xE3,0x6E,0xAB,0x29,0x24,0x27,0x95,0xBD,0xAD,0x3A,0xB1,0x9E,0x50,0xCA,0x36,0xAA,0xC0,0x67,0x5C,0xD9,0x6B,0xAA,0x9C,0xBE,0x36,0x23,0x2F,0xA5,0xB2,0xFE,0x42,0x42,0xFC,0x8C,0x22,0xC4,0x15,0x2B,0xCE,0x33,0x8A,0x98,0x9D,0xA7,0xA9,0x77,0x2B,0x52,0x17,0xDE,0xE4,0xDC,0xAD,0x48,0x2D,0x60,0x8B,0x73,0x97,0x3C,0x35,0x83,0x2D,0xCA,0xF2,0xFF};
|
||||||
|
//const uint8_t spREAR[] PROGMEM = {0x66,0x54,0xCD,0xCD,0x43,0x95,0x9A,0x49,0x95,0x50,0x4F,0x71,0xEA,0x26,0x53,0x4C,0x23,0xD9,0x4D,0x1A,0x62,0xC5,0x70,0xD7,0x74,0xAB,0xAD,0x9D,0x9D,0x42,0xDB,0xAD,0xBA,0xFB,0x52,0x68,0x59,0xBB,0xAA,0xEE,0x92,0x61,0x74,0xF5,0xAA,0x7B,0x2C,0x82,0xD1,0xCD,0xAB,0x6B,0x21,0x91,0x46,0x37,0x8F,0xB9,0x7A,0x47,0x5F,0x7D,0xDD,0xE6,0x1A,0x12,0x75,0xF9,0x53,0x39,0x6A,0x6E,0xD4,0xC5,0xDD,0xED,0x28,0x65,0xD0,0x16,0x7B,0x87,0x3B,0x97,0x01,0x3D,0xEA,0x1B,0xBE,0x9C,0x16,0xF9,0xB1,0x6F,0xF8,0x73,0x2B,0x88,0xA1,0x2E,0xE1,0xCF,0xDB,0x21,0x9B,0xDA,0x84,0x3F,0x6F,0x87,0x49,0xEA,0x1C,0xFE,0x3C,0x12,0xA6,0x25,0x4B,0xF8,0xF3,0x54,0x3E,0xD7,0xD4,0xFF,0x0F};
|
||||||
|
//const uint8_t spHOLD[] PROGMEM = {0x08,0x28,0xDA,0x03,0x03,0xA1,0x1F,0xD0,0xFD,0x83,0x12,0xB7,0x36,0xCA,0xDA,0x40,0xCD,0xD2,0xDA,0xCC,0xFD,0x82,0xA8,0x6B,0x6B,0x12,0xF3,0x2B,0xA6,0xAE,0xAD,0x8E,0x2C,0xB7,0x09,0xDB,0xB6,0x3A,0xD1,0x9A,0x11,0x68,0xDB,0xAA,0x8C,0x6B,0x4B,0xA0,0x6D,0xAB,0x32,0xC9,0x2D,0xC1,0xB4,0xAD,0x48,0x2C,0xB7,0x98,0xD2,0x96,0x3C,0x31,0xDB,0x60,0xC9,0x56,0xB2,0x24,0x6C,0x9C,0xD5,0x6B,0xCA,0x93,0x90,0x0A,0x35,0x37,0xA9,0xCA,0x54,0xDD,0x32,0x92,0x8E,0xB4,0x8A,0x16,0xD5,0x78,0x3D,0x8A,0x6A,0x8A,0x4C,0x6B,0xF1,0xFF,0x03};
|
||||||
|
//const uint8_t spLONG[] PROGMEM = {0xAE,0xAF,0xC0,0x32,0x92,0xB3,0x86,0xB5,0x02,0x2F,0x77,0xEE,0x17,0xD6,0x0C,0xB3,0xD5,0xB5,0x4B,0x58,0x0A,0xF0,0xCE,0xA0,0x3E,0x63,0xAE,0xC8,0xAB,0x03,0xB2,0x8C,0x31,0xAA,0x9B,0x60,0xED,0xB2,0x86,0xE0,0x6E,0x9C,0xAD,0xED,0xEA,0xA3,0xBD,0x71,0xB6,0xAE,0xAB,0x8D,0xEE,0xC6,0xC4,0xDB,0xAE,0x36,0xFA,0x6B,0x53,0x6F,0xBB,0x9A,0x18,0xB7,0x4C,0x3D,0xCB,0xAA,0x43,0x9C,0x34,0xF5,0x36,0xA3,0x8A,0xA6,0xAB,0xD9,0x93,0xB6,0xAA,0x70,0xF3,0x53,0xB7,0xD3,0xEA,0xC2,0xD5,0xD7,0xCC,0x6E,0xAB,0x9B,0x26,0x6B,0x77,0x25,0xAD,0x4E,0xC6,0x2A,0xD8,0xE5,0xFC,0x3F};
|
||||||
|
//const uint8_t spLEVEL[] PROGMEM = {0xA5,0x1E,0x40,0x27,0x84,0xF3,0x94,0xB6,0x03,0x5F,0x65,0x8F,0x9B,0xBA,0x09,0x64,0x1D,0xA3,0xCE,0x6A,0x2B,0xEB,0x34,0xB5,0xC7,0xAB,0xAE,0x62,0x4C,0x23,0x67,0xAF,0xBA,0xE8,0x11,0xF7,0x5C,0xBC,0xEA,0x62,0x4B,0x43,0x63,0xF1,0xAA,0x53,0xF0,0x0A,0xCD,0xD9,0x66,0xCC,0x22,0x2C,0x95,0xDD,0xB8,0xB1,0x09,0x17,0x0B,0xB3,0x1D,0xF6,0x22,0x23,0xD3,0x39,0x96,0x99,0x6D,0xEB,0x10,0x89,0xC5,0x65,0x09,0xFA,0xDA,0x44,0x7A,0xB7,0x2D,0xF1,0x1D,0x17,0xCD,0x52,0xF6,0xC4,0xAE,0x9D,0xA5,0x6F,0x3A,0x12,0xBD,0x76,0x96,0x2C,0xE9,0x8C,0xFC,0xCB,0x59,0xBB,0xB8,0x3B,0xCA,0xED,0x62,0xEE,0xA4,0x1E,0xEF,0x3E,0x9D,0xBC,0xF5,0xFF,0x03};
|
||||||
|
//const uint8_t spLEFT[] PROGMEM = {0x6E,0x4C,0xB8,0x8B,0xB5,0xDA,0xA6,0x75,0x23,0xEA,0x24,0x4B,0x1B,0xD6,0x0D,0x69,0x02,0xBD,0x5D,0x59,0x36,0xA2,0x49,0xB4,0x76,0x65,0xDC,0x88,0xC7,0x31,0x96,0xAD,0xA1,0xF1,0x8A,0x30,0xD9,0xB2,0xBA,0x2E,0xDB,0xC2,0x74,0xCB,0x6A,0x9B,0x29,0x4D,0xB3,0x35,0xAB,0x6B,0xAE,0x25,0x2D,0x56,0xAF,0xB1,0xF8,0xD4,0xB2,0x9C,0x23,0x80,0x6A,0x52,0x05,0xD0,0x75,0x28,0x03,0xBA,0x29,0xE5,0x00,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x0A,0x18,0xD2,0x8D,0x01,0x9B,0xAB,0x21,0x70,0x8A,0x52,0x15,0xAA,0xF1,0xFF};
|
||||||
|
//const uint8_t spRIGHT[] PROGMEM = {0xAA,0x90,0xD5,0xAD,0x55,0x9D,0xA9,0x56,0x94,0xD4,0x0A,0x97,0xAB,0x7A,0x39,0x9C,0xBB,0x44,0x5D,0xE8,0xFD,0x14,0x3D,0x53,0xF7,0xAD,0x09,0x5D,0xAB,0xD4,0xDD,0xAD,0x3A,0xCB,0x0B,0x2F,0xE9,0xBC,0xEA,0xA2,0xCF,0xBC,0x74,0xD5,0xAA,0xAB,0x1D,0x89,0xD2,0xC7,0xAB,0xAD,0x21,0xA9,0xD2,0x1F,0x8F,0xB1,0x5A,0xA7,0xA9,0x7A,0x54,0x8E,0xE1,0x12,0xBC,0xF2,0x65,0x38,0xBB,0x67,0x8A,0xEE,0x56,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x80,0x03,0xA6,0x50,0x77,0xC0,0xF3,0x15,0x04,0xD8,0xCA,0xEC,0xFF,0x01};
|
||||||
|
//const uint8_t spOPEN[] PROGMEM = {0xA5,0x4D,0xB2,0xD7,0x84,0xBA,0xB4,0x2A,0xCA,0x59,0x16,0xDD,0x3A,0xCA,0xC4,0x67,0x85,0xA5,0xDF,0x2A,0x2A,0xCA,0x75,0xE5,0x6C,0x2D,0xCF,0x28,0x27,0x9C,0xBD,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0x90,0xA2,0xAE,0xCA,0x5C,0xD5,0xF1,0xCA,0xAB,0x32,0xAF,0xA0,0xCE,0xAB,0x2C,0x3A,0xDC,0x4D,0xBE,0x8C,0xB2,0x38,0x0D,0x91,0x9C,0xD3,0x8A,0x6E,0x48,0xC7,0x2C,0x6E,0x29,0x9A,0x64,0x1D,0xB3,0xB8,0xA5,0xAC,0x5C,0x74,0xCC,0x92,0x96,0x2A,0x6B,0x73,0x97,0xAC,0xFD,0xFF};
|
||||||
|
//const uint8_t spSTRAY[] PROGMEM = {0x04,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0D,0x18,0xE0,0xB7,0x54,0x05,0xFC,0x52,0x86,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x30,0x20,0x1A,0x51,0x75,0xD4,0xD8,0x99,0x69,0x76,0x46,0x13,0x07,0x87,0x95,0xA4,0x5F,0x75,0x1A,0x92,0x5A,0x9C,0x6E,0xD5,0xB9,0x9A,0x5B,0x71,0xB6,0x55,0xE6,0x9C,0xE2,0x25,0x5B,0x56,0x59,0x6D,0xB1,0xB5,0xBE,0x5E,0x75,0x57,0xC5,0x3A,0xB6,0x7A,0x4D,0x5D,0x05,0x7B,0xDB,0xA3,0x31,0x37,0x1B,0x64,0x1D,0x8F,0xC6,0xD1,0xA3,0xB2,0x47,0xDE,0x6E,0x67,0x0B,0xCC,0x59,0x75,0xB9,0xDD,0xCD,0x91,0x74,0xE5,0xE4,0xF2,0x74,0xE7,0x28,0x9B,0xB3,0xD3,0xDB,0x8D,0xA1,0x5D,0x3E,0x2A,0x6F,0x33,0x42,0x39,0xBD,0x38,0xFD,0xA3,0x3B,0xAA,0xE7,0x9A,0xF0,0x8F,0xA1,0xA4,0x56,0x4B,0xCC,0x3F,0x96,0xB3,0x48,0x2C,0xF9,0x7F};
|
||||||
|
//const uint8_t spCLOSE[] PROGMEM = {0x0C,0x88,0xBD,0xD2,0x00,0x59,0x4D,0x19,0xA0,0x8A,0x2E,0x05,0x74,0x65,0x11,0x8A,0x4C,0xA3,0x47,0xB0,0xE9,0x28,0x33,0xAB,0x09,0xE1,0xCE,0xA3,0xA9,0x24,0x26,0x8C,0xFB,0x8C,0xA6,0xD0,0x1A,0x55,0xE9,0x33,0xBA,0xC4,0xA7,0xCD,0x64,0x6B,0x1B,0xA2,0xDA,0x34,0x95,0xCD,0x65,0xF5,0x7E,0x5D,0xD5,0x37,0xA7,0xDD,0xFB,0x4A,0x13,0xDD,0x94,0x8E,0xA0,0x2B,0xCD,0x78,0x93,0x3B,0x83,0xA9,0x50,0x93,0xCD,0xE6,0x0B,0xD6,0x32,0xC4,0x57,0xBB,0x2F,0x79,0x33,0x95,0x58,0xAC,0xBE,0x64,0x4D,0x4D,0xFC,0x91,0x7B,0x06,0x76,0x17,0xB3,0x6C,0xEE,0xB9,0x96,0x3D,0x49,0xD2,0xA5,0xF7,0x39,0xD1,0x22,0xCE,0x46,0x5E,0x47,0xD2,0x27,0x23,0x15,0x7F,0xD3,0xDB,0x9D,0x91,0x8B,0x6D,0x71,0x6F,0x8F,0x29,0x22,0xB6,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spEVACUATE[] PROGMEM = {0x21,0x19,0xDA,0x89,0xAA,0x16,0x8F,0x7E,0x6A,0x63,0xAA,0x5A,0x7C,0xFA,0x69,0x83,0x31,0x72,0xCD,0x69,0x86,0x0F,0xA2,0xF4,0x2D,0xA3,0x6D,0x4E,0xD8,0x42,0xBB,0x94,0xBE,0x3A,0x33,0x55,0x69,0x9D,0xC6,0xAE,0xCD,0x54,0xCD,0x4D,0x19,0x87,0x72,0x17,0x31,0x37,0xAB,0xAB,0xDE,0xD5,0x54,0x5B,0x9F,0xAA,0xF9,0xD0,0x50,0x5B,0x73,0x8A,0x66,0x5A,0xC2,0x63,0xCD,0xC9,0x6A,0x0C,0x2D,0xEB,0xC5,0x27,0xAB,0x49,0xBD,0x6C,0x1A,0x8D,0xA4,0x15,0xF6,0x92,0x93,0x8C,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x18,0x60,0x45,0x57,0x03,0x9C,0x3C,0xB2,0xD2,0x11,0x12,0xB1,0x6C,0xCB,0xEA,0x9A,0x72,0xD2,0xD6,0x2D,0xA3,0x2F,0xA8,0x52,0x9A,0xBA,0x96,0x29,0xF2,0x4D,0x2B,0xE8,0xD2,0xE6,0x4C,0x27,0xAD,0xB1,0xEF,0x9A,0x9B,0x69,0xF3,0xC4,0x6D,0x67,0x6F,0x3E,0xD5,0x52,0xBB,0xAD,0xA3,0x87,0x36,0x4A,0xED,0xBA,0xCE,0x1E,0x52,0x38,0x7D,0xF3,0x3E,0xD3,0x35,0x6C,0x32,0x55,0x6C,0xB1,0x37,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0xA0,0x80,0x29,0xD4,0x05,0xF0,0x7C,0xC5,0xFF,0x03};
|
||||||
|
//const uint8_t spFAILURE[] PROGMEM = {0x04,0x18,0xB6,0x82,0x02,0x04,0x98,0xBE,0x42,0x00,0xD3,0xA5,0x6B,0x60,0xD5,0xC3,0x95,0x48,0xC8,0x96,0xD5,0x0D,0x57,0xCC,0xA5,0xAB,0x57,0xDF,0x54,0xB0,0xB5,0xAD,0x5E,0xC3,0x60,0x95,0x62,0x9A,0xAE,0x2D,0x9D,0xBA,0x7B,0xA8,0xF7,0xB4,0x36,0x19,0x4E,0xEE,0xE9,0xCA,0xDA,0x75,0x20,0xB7,0x6D,0x69,0x6B,0xD3,0x81,0x32,0xB1,0xA6,0x6D,0xCD,0x05,0x68,0x47,0xDF,0xB2,0x37,0x5F,0x24,0x2D,0x5D,0xC2,0x55,0x5C,0x92,0x9C,0xF4,0x09,0x6F,0xB6,0x85,0x76,0x96,0xC5,0xBD,0xD9,0x37,0xE8,0x9A,0x3E,0xF7,0xE6,0x16,0x90,0x69,0xDE,0xDC,0x97,0xAB,0x63,0xB4,0xA7,0xFD,0x7F};
|
||||||
|
//const uint8_t spSERVICE[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0x32,0x03,0xFC,0x5C,0x56,0xF2,0x6A,0x2A,0x20,0x2C,0xF9,0xC8,0x8A,0x2F,0xC1,0x95,0xEC,0x23,0xCD,0x31,0x99,0x97,0xB3,0x8F,0x34,0xBB,0x12,0x5A,0xF1,0x1E,0xF2,0xE4,0x42,0xA5,0xC8,0xA9,0x98,0x9C,0x49,0xD5,0x08,0x37,0x6D,0x29,0x26,0x55,0x52,0xBA,0xB6,0xB5,0x58,0x17,0x0F,0x7F,0xDD,0xCE,0x6C,0x5D,0xC2,0xF3,0xD7,0x78,0x9A,0x49,0x51,0xB3,0xCE,0xE5,0xAB,0x3A,0xD9,0xCC,0x76,0x95,0xBF,0xDB,0x76,0x15,0xF6,0x67,0x80,0x5F,0x53,0x0C,0xF0,0x6B,0xB2,0x03,0x7E,0x4E,0x37,0xC0,0x6F,0x66,0x0A,0xF8,0xAB,0xD9,0x00,0x7F,0xA6,0x29,0xE0,0xB7,0x92,0xFF,0x07};
|
||||||
|
//const uint8_t spABORT[] PROGMEM = {0xAD,0x4E,0x66,0x4A,0xDC,0x17,0xAF,0xA5,0xC8,0x19,0x35,0xDD,0xBA,0x86,0x22,0x7A,0xCC,0x64,0xEB,0x1A,0x92,0x9A,0x56,0xB3,0x2E,0x6A,0x36,0x31,0x85,0x2C,0x5A,0x89,0x45,0xDB,0x56,0xB2,0x68,0x2D,0x56,0x69,0xCA,0x59,0xBD,0x35,0x5B,0xB9,0xEA,0x50,0xB5,0x2E,0x6C,0xE5,0xA2,0xBA,0x5C,0x5D,0x8F,0x26,0xF1,0x19,0x55,0xCE,0xBA,0xEA,0x28,0x66,0xCC,0x28,0xFB,0xAA,0x12,0xEB,0x55,0x67,0xF7,0xAB,0x08,0xFA,0x5A,0x82,0xBD,0x9D,0x2C,0xDA,0x0D,0x29,0xD1,0xB6,0x92,0x58,0x8B,0xB3,0xA8,0xCF,0x8A,0x72,0x4E,0xCA,0x32,0xAD,0x25,0x2C,0xDB,0x8C,0xD5,0x95,0x22,0x70,0x8A,0x52,0x15,0xAA,0x01,0xE0,0x80,0x21,0xDD,0x0C,0xB0,0xB9,0x1A,0x03,0xA7,0x28,0x55,0xA1,0x1A,0xFF,0x0F};
|
||||||
|
//const uint8_t spIDEMTIFY[] PROGMEM = {0xA9,0x8C,0x23,0xDD,0xB3,0xA7,0x9C,0xB1,0xA9,0x89,0x08,0x59,0x73,0x86,0xA6,0xCA,0xB2,0x74,0xF3,0xE9,0xBB,0x1A,0xD6,0xB6,0xCD,0xA3,0x1F,0x6A,0x88,0x4A,0x3F,0x22,0x70,0x8A,0x52,0x15,0xAA,0x01,0x02,0xC8,0xA0,0xEC,0x14,0xD5,0x26,0x95,0xE7,0xE2,0x93,0x15,0xDD,0x5C,0x15,0x8B,0x4E,0x96,0x4D,0x49,0x47,0xD5,0x1E,0x59,0x36,0xEE,0x43,0x1D,0xA9,0x54,0xC7,0x87,0x8A,0x8B,0x9D,0x55,0x54,0x95,0x92,0x12,0x8B,0x46,0x91,0x83,0x6B,0x70,0xCE,0x6E,0x75,0xF6,0x61,0x89,0xD1,0x04,0x14,0xD0,0x5D,0x88,0x01,0x9A,0x6B,0x1F,0x59,0x51,0x1D,0xA9,0x92,0x7A,0xD4,0x31,0x76,0xB8,0xC9,0xEB,0x35,0x44,0x37,0x11,0xA6,0xAF,0xD7,0x98,0xF5,0x85,0x85,0xBE,0x5E,0x63,0x15,0x1B,0x5A,0xBA,0x7A,0xCD,0x5D,0xB4,0x7B,0xEB,0xE6,0xB5,0x74,0x59,0xA2,0x6D,0x9B,0xD7,0xDA,0x75,0x91,0xB4,0xAF,0xFA,0x7F};
|
||||||
|
//const uint8_t spTOO_LOW[] PROGMEM = {0x01,0xD8,0x41,0x33,0x00,0x33,0x66,0x29,0xA0,0x58,0xA3,0x92,0x04,0x63,0xEE,0xE5,0x93,0x46,0x5A,0x98,0xA5,0x14,0xB7,0x6D,0x59,0x61,0x16,0x56,0xD0,0x35,0x65,0x85,0x6A,0x5A,0x43,0xB6,0x54,0x64,0xC3,0x95,0x01,0xF1,0x5A,0xD5,0x85,0x78,0x14,0xB4,0x6B,0x75,0x27,0x52,0x9E,0xD0,0x6D,0xD5,0x83,0x6A,0x7B,0x60,0xB7,0x53,0x77,0xE6,0x6D,0x8E,0xFD,0x4E,0xDB,0x68,0x8C,0x07,0xF5,0x3B,0x6D,0xA5,0xD9,0x11,0x94,0x6F,0xF5,0x85,0xD5,0x84,0x73,0xF6,0x31,0x16,0x56,0x93,0x26,0xF9,0xC7,0x9A,0x59,0x4D,0x9A,0xF8,0x6B,0x67,0xE6,0x35,0xA1,0xE2,0xB7,0x5C,0x89,0x77,0xA7,0xAA,0xBF,0xF2,0x44,0x39,0xED,0x2A,0x79,0xCA,0x13,0xD4,0x96,0x8A,0xE5,0x2D,0x4F,0x70,0x5B,0x2A,0x96,0xA7,0xFC,0xC1,0x4E,0xB9,0x72,0x6E,0xF7,0x7B,0x7F,0xA9,0x2C,0x79,0xCC,0x6F,0xD2,0xBA,0x8A,0xF5,0xF9,0x7F};
|
||||||
|
//const uint8_t spCENTRE[] PROGMEM = {0x0A,0xF8,0xAD,0xD4,0x00,0xBF,0xA5,0x3B,0xE0,0xB7,0x72,0x07,0xFC,0x59,0x1E,0x80,0x1F,0xD5,0x56,0xD6,0xAD,0xAB,0xA9,0x6C,0x59,0x55,0xCB,0xAE,0xA6,0xB9,0x66,0x0D,0x35,0xA5,0xBA,0xE6,0xEC,0x35,0xD6,0xE8,0xEA,0x52,0x73,0xDA,0xD4,0x1C,0xA7,0x88,0x27,0x71,0x43,0x91,0xE8,0x95,0x61,0x0F,0x12,0xF0,0x94,0x5A,0x02,0xA6,0x32,0x2B,0xC7,0x8A,0xEA,0xAA,0x6A,0xBB,0xEC,0x2D,0xA6,0x88,0x49,0xA7,0x74,0x94,0xA2,0x54,0xA9,0x9D,0xC2,0x59,0x8A,0x62,0x97,0x6E,0x4E,0x57,0xA9,0x8D,0x36,0xDC,0x25,0xDC,0xD5,0x1D,0xC3,0x4A,0xBE,0xF0,0x34,0x73,0x0C,0x67,0xFE,0xC2,0x5B,0xEA,0x02,0xAD,0xE4,0x31,0x6F,0x79,0x81,0xE9,0xD4,0xF9,0xFF,0x01};
|
||||||
|
//const uint8_t spAREA[] PROGMEM = {0xA5,0xAF,0x89,0x35,0xB2,0x6B,0xAF,0xAE,0xFB,0x62,0x6E,0xDB,0xBC,0xEA,0xEE,0x46,0x78,0x64,0xCB,0xAA,0x6A,0x6E,0x96,0xA1,0xAE,0xAB,0xCA,0x8B,0x3D,0x92,0xB3,0xB6,0x2A,0x1D,0x4A,0x73,0xCE,0x3A,0xEA,0xB2,0x29,0xD5,0x24,0xF3,0xAA,0xEB,0x64,0x09,0xD3,0xD5,0x6B,0xA8,0x59,0x30,0x32,0x36,0xAD,0xB1,0x05,0x07,0x8F,0xDC,0xBC,0xE6,0x6A,0x1D,0x23,0xEA,0xD5,0x5A,0x9B,0x29,0x0A,0xCD,0x4D,0x6B,0x6D,0xAA,0x38,0x34,0x5F,0xAF,0xB5,0xD3,0xA1,0xD0,0x5C,0xDC,0xD6,0xC1,0x52,0x5C,0x65,0xCF,0xFF,0x03};
|
||||||
|
//const uint8_t spBASE[] PROGMEM = {0x0C,0x50,0xD6,0x6C,0x75,0xC5,0x86,0x48,0x46,0x9B,0xD5,0x54,0xEF,0xA2,0xEE,0x6B,0x56,0xD3,0xA3,0x8A,0x7A,0x2E,0x5E,0x55,0x4F,0x42,0x66,0x35,0x7B,0x94,0x3D,0x10,0x45,0xCC,0xE2,0x52,0x36,0x87,0x1A,0x39,0x75,0x4A,0xFB,0x74,0x99,0xA0,0x7A,0x35,0xC0,0x33,0xAE,0x0A,0xF8,0x29,0xC5,0x00,0xBF,0x95,0xFE,0x3F};
|
||||||
|
//const uint8_t spCONTROL[] PROGMEM = {0x0A,0xA8,0xBA,0xB8,0x14,0xDD,0x9C,0x92,0x98,0xEB,0x55,0x54,0xDD,0xA6,0x61,0x9D,0x57,0xDB,0x78,0xBB,0xA6,0x6E,0x5E,0x6D,0xE3,0x6E,0x99,0xDC,0xB8,0x74,0x55,0x89,0xAF,0x70,0xF4,0xD4,0x67,0x45,0xDD,0x6C,0x76,0x55,0x19,0x44,0x46,0xB1,0x39,0x32,0xC0,0xB0,0xC5,0x0E,0x18,0xB6,0x53,0x01,0xC1,0x98,0x94,0x2A,0x14,0x4B,0x09,0xC9,0xB2,0xAA,0x68,0x2A,0x3D,0xD8,0xFB,0x2A,0x93,0x98,0x76,0x63,0xEF,0xA7,0xCC,0x6C,0x3A,0x8D,0xB3,0xAE,0x2A,0xB1,0xED,0x64,0xC9,0x32,0xEA,0x82,0x67,0x4A,0x28,0x6B,0x6B,0x33,0xA9,0x69,0x94,0xAC,0xBD,0x2D,0x43,0xD4,0xDD,0x01,0x9A,0x2F,0x4C,0x59,0xC9,0x38,0xAA,0xDF,0xFF,0x07};
|
||||||
|
//const uint8_t spMEASURED[] PROGMEM = {0x61,0xF0,0xDC,0xA3,0x42,0x9C,0x94,0x3E,0x09,0xB5,0x4A,0x4E,0xD2,0xDA,0xCA,0x45,0xBD,0xCD,0xC9,0x6A,0xAB,0x0B,0xD3,0xD0,0xC5,0xAB,0xA9,0x3A,0xD4,0xDA,0x1F,0xAF,0xBA,0xEB,0x50,0x6D,0x7F,0xBD,0x9A,0xE6,0x43,0xD4,0x7D,0xD1,0x18,0x46,0x30,0x65,0xF5,0xCE,0x6D,0xDE,0xAD,0xC2,0x50,0x98,0x05,0x60,0x45,0xD7,0x00,0x74,0xAD,0xD4,0x96,0x92,0x85,0xB4,0xAC,0x73,0xD9,0x72,0x36,0xD4,0xD1,0xBC,0xE5,0xCC,0xD9,0xD0,0x57,0xF3,0xA5,0x27,0x17,0x43,0x1F,0xE9,0x93,0x9E,0x9C,0x1C,0x7D,0x2C,0x5F,0x79,0x4B,0x54,0xB2,0xCC,0x6C,0xE6,0x2B,0x91,0x4C,0x39,0x1A,0x8B,0xAF,0x69,0x94,0x88,0x4E,0xCC,0xFE,0x88,0xDC,0x2B,0x32,0x71,0xFA,0xBB,0x35,0x67,0xF3,0xD4,0xE1,0xA9,0x59,0x55,0xD4,0x57,0xFF,0x3F};
|
||||||
|
//const uint8_t spD[] PROGMEM = {0x08,0x20,0xBA,0x0D,0x03,0x6D,0x3E,0x2C,0x55,0x45,0xB3,0x8C,0xBE,0x05,0x65,0xD5,0x78,0x32,0xDA,0xEE,0x85,0x34,0xF2,0xF6,0xE8,0x86,0x33,0xE0,0xCA,0xC7,0xAD,0x9B,0xCE,0x81,0xBB,0x66,0xB7,0x61,0x06,0x07,0xEE,0x9C,0xD5,0xC6,0xA9,0x1D,0x65,0x72,0xD1,0xFF,0x03};
|
||||||
|
//const uint8_t spTHE[] PROGMEM = {0x08,0x20,0xBA,0x0D,0x03,0x69,0xDF,0xA8,0xCD,0x85,0x3B,0xD7,0x79,0xF4,0x59,0xB7,0xA9,0xFA,0xA2,0xD5,0x27,0xD9,0x6E,0x11,0x8B,0xC6,0x90,0xB4,0x47,0xA8,0x6D,0xFA,0x7F};
|
||||||
|
//const uint8_t spVACUUM[] PROGMEM = {0x66,0x2B,0x2E,0xCC,0x98,0x12,0xBB,0xA3,0x4B,0x77,0x13,0xB7,0x5D,0x8E,0x6A,0x5C,0x43,0xAD,0xF5,0xEA,0x72,0x30,0x77,0xAB,0xD9,0xAB,0x29,0x3E,0x2C,0xAC,0x16,0xAF,0xA6,0xF8,0xB4,0xB4,0x5A,0xBC,0xEA,0x9A,0xDC,0xCA,0xBA,0xF6,0xA8,0x6B,0x11,0x0F,0xEB,0x50,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x01,0x66,0x0C,0x56,0xC0,0x89,0xA5,0x06,0x98,0x21,0xB9,0x4D,0xCD,0x2B,0x6A,0xFB,0xA6,0x36,0x37,0xEF,0xC4,0xED,0x7B,0xDA,0xD6,0xAC,0xB3,0xB4,0xF6,0x69,0x7B,0xB5,0x2E,0x56,0xD2,0xBB,0x1C,0xD9,0x84,0x45,0x4A,0xD3,0x72,0x66,0x55,0x1E,0x2E,0xF1,0xCA,0xD5,0x94,0x5B,0x98,0x9A,0x29,0x77,0x17,0xAE,0xE1,0x1C,0x25,0x3D,0x4D,0xA6,0x85,0x8B,0x99,0xFF,0x07};
|
||||||
|
//const uint8_t spABEAN[] PROGMEM = {0xAD,0xCF,0x3E,0x25,0xAC,0x56,0xF5,0x7E,0xF6,0xAA,0x13,0xB6,0x4D,0xC3,0x6A,0xAB,0x41,0x9A,0x32,0x0B,0x4D,0xEC,0x06,0xA7,0x5D,0x33,0xDC,0xF1,0x1A,0x7A,0x74,0x61,0xE7,0x37,0xAB,0x1E,0xD1,0x19,0xD3,0xB6,0xAC,0x7A,0x3A,0x63,0xEC,0x58,0xB3,0x9A,0xE9,0x8D,0x68,0xA3,0xD2,0xEA,0x86,0x53,0xD2,0x8B,0xC0,0x63,0x9C,0x4E,0x49,0x2E,0x43,0x8F,0x65,0x68,0x65,0x3D,0x37,0xDD,0xB6,0x61,0x94,0x75,0x3D,0x54,0x39,0x9A,0x21,0xCB,0xB6,0x8A,0xE5,0xA9,0x8A,0xAD,0x4A,0x6C,0x97,0xA7,0x28,0xB6,0x4C,0x8D,0x5D,0xDE,0xAC,0xD8,0x2B,0x4C,0x4E,0x39,0x9B,0xE1,0x34,0x0A,0x25,0xE5,0xAC,0x4A,0x23,0xD1,0x94,0xA4,0xAB,0x19,0x4A,0x13,0x53,0x92,0xAE,0x66,0x38,0x92,0x55,0xCE,0xFF,0x03};
|
||||||
|
// ROM VM61005
|
||||||
|
//const uint8_t spATU[] PROGMEM = {0x29,0xE9,0x25,0x94,0x23,0xEA,0x8C,0x79,0x78,0x67,0xAE,0x5C,0xB3,0xE6,0x11,0x82,0x39,0xAA,0xF5,0x6A,0xA7,0x4F,0xA2,0xAC,0x25,0xBB,0x5D,0xD5,0x8C,0x45,0x18,0xB9,0x74,0xE5,0x33,0x35,0x62,0xE4,0x92,0x91,0x8D,0x2C,0x28,0x59,0x4B,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x04,0x14,0xAA,0x62,0x80,0xAA,0x94,0x05,0xE0,0x34,0x65,0x0B,0x8B,0x22,0xAB,0xCD,0xC8,0x23,0x1D,0x45,0x90,0xB2,0xE6,0x8C,0x6C,0x66,0x41,0xAA,0x9E,0x33,0xB2,0x99,0x04,0xA9,0x7B,0x49,0xCB,0x66,0x64,0xE4,0x9E,0x25,0x25,0x9F,0x91,0x91,0x6B,0x16,0x97,0x62,0x46,0x46,0xEE,0x59,0x52,0x8A,0x11,0x09,0xB9,0x67,0x71,0x29,0x46,0x26,0x94,0xAE,0x25,0xAD,0x18,0x45,0x90,0x2A,0x9E,0x8C,0x7C,0x04,0x25,0x2A,0x5F,0x3B,0xF2,0x69,0x8D,0xA9,0x64,0xED,0x28,0xBB,0x56,0xD1,0xE2,0x2F,0xA3,0xAD,0xC2,0x4D,0x92,0xB7,0x94,0x21,0x49,0x37,0x4F,0xFA,0x12,0x06,0x17,0x2C,0x83,0x7D,0xB1,0x9A,0x64,0x33,0x75,0xCF,0x55,0x6A,0x12,0x25,0x3D,0x54,0x3B,0xBB,0x59,0x9B,0x49,0x73,0xF1,0xE2,0x56,0xA7,0x3A,0xC2,0xC5,0x8B,0x5B,0x03,0xEF,0x72,0x53,0xB5,0x7E,0x73,0x9B,0xD7,0x1D,0xA9,0xAC,0xF5,0xFF,0x01};
|
||||||
|
//const uint8_t spFSS[] PROGMEM = {0x6D,0xEE,0xC6,0x55,0x3A,0x56,0xAF,0xB1,0x79,0x17,0xEB,0x58,0xBD,0xEA,0x66,0x53,0x3C,0x63,0xF1,0x2A,0x6B,0x72,0x4D,0xEB,0xC6,0x2B,0x2B,0x45,0xC3,0x6C,0xA2,0x84,0x72,0xAA,0x60,0x13,0xB1,0x43,0x80,0x61,0x2B,0x28,0x40,0x80,0xE9,0x2B,0x08,0x30,0x5D,0x3A,0x01,0x9A,0x2D,0x43,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x60,0xB4,0x2D,0x9A,0x84,0xF7,0xE2,0xD5,0xB4,0x60,0x92,0x51,0x8B,0x57,0xD5,0x5C,0xB2,0x47,0x2E,0x59,0x55,0x8D,0x6E,0x6E,0xBD,0x78,0x95,0x35,0x5B,0xB0,0x4F,0xEC,0x56,0x76,0x36,0xAC,0x16,0x35,0x05,0xF0,0x8C,0xAB,0x00,0x7E,0x4A,0x11,0xC0,0x6F,0xA5,0x12,0x50,0xC0,0x6F,0xA9,0x0A,0xF8,0xA5,0x4C,0x01,0x3F,0x97,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0xCA,0xEF,0x51,0xD5,0xB5,0xB6,0x8E,0xBE,0x39,0xE7,0x8C,0x9C,0xBD,0xFA,0xEE,0x8A,0x3D,0xEC,0xF5,0xAA,0x9A,0x0F,0x8E,0x88,0x27,0xAB,0xAA,0xDE,0x25,0xA3,0xEE,0xAC,0xBA,0xC5,0x12,0xB7,0x78,0xB2,0xA6,0xA1,0x46,0x2C,0xF4,0xF3,0xD8,0xAB,0x2F,0x0E,0xEF,0xC7,0xE1,0xAE,0xDD,0x5D,0x74,0x13,0x0B,0xE0,0x19,0x57,0x01,0xFC,0x94,0x22,0x80,0xDF,0x4A,0x35,0xA0,0x80,0xDF,0x52,0x05,0xF0,0x4B,0x99,0x00,0x7E,0x2E,0x13,0xC0,0x4F,0x69,0x04,0xF8,0xAD,0x94,0x00,0xBF,0xBA,0xFF,0x3F};
|
||||||
|
//const uint8_t spILS[] PROGMEM = {0x66,0x0B,0x63,0x45,0x2F,0x27,0xB6,0x2D,0xB9,0x2B,0x0D,0x9F,0x3D,0x96,0xAC,0x76,0x34,0x6D,0xCD,0x18,0x2B,0xDF,0xB1,0xD2,0xB5,0xAB,0xAF,0xF2,0x52,0xCB,0xD6,0xAC,0xBA,0x89,0x0D,0x6F,0xFD,0xBC,0xAA,0xAE,0x46,0xA2,0xF4,0xD5,0x2A,0x9B,0x4F,0x2A,0x8F,0xC7,0xAB,0xE8,0x3E,0x31,0x22,0x16,0xAF,0xA2,0xDB,0xC0,0xC8,0x5C,0xBC,0xCA,0xEE,0x92,0x22,0x72,0xF1,0xAA,0x9A,0x2B,0x8A,0xC8,0x25,0xAB,0xAE,0xA6,0xA4,0x2C,0x1E,0xAF,0xBA,0x98,0xD1,0x52,0x7F,0xBC,0xAA,0xEC,0xC7,0x43,0x62,0x71,0xAB,0xA2,0x3D,0x73,0xC9,0x45,0xA5,0x8C,0xE6,0xD2,0xC9,0x16,0xA7,0x2A,0x98,0x73,0x63,0x5B,0x3C,0xAA,0x2C,0xCE,0x4D,0x6D,0xF5,0xAA,0xB2,0x1A,0x0D,0xCB,0xDB,0xAB,0xAE,0xAA,0x25,0x2C,0x1E,0xAF,0xAE,0x9A,0x92,0xF0,0x7C,0x3C,0x86,0xEA,0x8A,0xC3,0xEB,0x71,0x5B,0xAB,0x2D,0x8E,0xC8,0xC7,0xED,0xCC,0x26,0x35,0xB3,0x66,0x95,0xB7,0xD8,0xB0,0xD2,0x5A,0xDC,0xFE,0x1A,0x52,0x43,0x7B,0x76,0x7A,0x73,0x34,0x37,0xDF,0x58,0xEE,0xA8,0xD1,0x52,0x64,0x1D,0x19,0xE0,0x19,0x57,0x05,0xFC,0x94,0x62,0x80,0xDF,0x4A,0x2D,0x10,0x80,0xDF,0x52,0x1D,0xF0,0x4B,0x99,0x01,0x7E,0x2E,0xFB,0x7F};
|
||||||
|
//const uint8_t spIFR[] PROGMEM = {0x66,0x0B,0x63,0x45,0x2F,0x27,0xB6,0x2D,0xB9,0x2B,0x0D,0x9F,0x3D,0x96,0xAC,0x76,0x34,0x6D,0xCD,0x18,0x2B,0xDF,0xB1,0xD2,0xB5,0xAB,0xAF,0xF2,0x52,0xCB,0xD6,0xAC,0xBA,0x89,0x0D,0x6F,0xFD,0xBC,0xAA,0xAE,0x46,0xA2,0xF4,0xD5,0x2A,0x9B,0x4F,0x2A,0x8F,0xC7,0xAB,0xE8,0x3E,0x31,0x22,0x16,0xAF,0xA2,0xDB,0xC0,0xC8,0x5C,0xBC,0xCA,0xEE,0x92,0x22,0x72,0xF1,0x2E,0x57,0xDD,0xBC,0x4B,0x44,0x2F,0x5E,0x75,0x75,0x21,0x11,0x3D,0x7B,0x55,0xD5,0xA5,0x84,0xF7,0xEC,0x55,0xE5,0x50,0x9A,0xDE,0xB3,0x57,0x99,0x7D,0x99,0xCB,0xD4,0x4E,0x65,0x2A,0x25,0x69,0x19,0xC6,0x00,0xC3,0x56,0x28,0x60,0xFA,0x0A,0x05,0x4C,0x97,0xAE,0x80,0x66,0xCB,0x5A,0x13,0xCD,0xB6,0x2B,0x6F,0x1E,0x6D,0x32,0xD7,0xAA,0xBA,0x7A,0x74,0x49,0x5F,0x9B,0xE9,0xE6,0xD1,0x25,0x75,0x25,0xAE,0x5B,0xDA,0x10,0xDD,0x27,0x97,0x6F,0x6E,0x4B,0x74,0x97,0x5A,0xBA,0xB9,0xED,0xC9,0x5D,0x6A,0xEB,0xE6,0x72,0xC6,0x32,0xE6,0xAD,0x9B,0xD3,0x1D,0xE3,0xB8,0xAF,0xF4,0x4E,0x4F,0x4A,0x6D,0xBA,0xD2,0x27,0x3D,0x39,0xB5,0xDB,0x72,0x96,0xF4,0xA6,0x92,0x1A,0x27,0x7D,0xC2,0x9B,0xA7,0x4B,0xB5,0x76,0x36,0x5F,0xBE,0x12,0x23,0xBA,0x98,0x7E,0xFF,0x0F};
|
||||||
|
//const uint8_t spVFR[] PROGMEM = {0xE6,0xCC,0xC6,0x44,0x53,0xB3,0xB8,0x35,0x6B,0x53,0x4D,0xCD,0x1B,0x96,0x64,0x55,0x2D,0xB4,0xB3,0x5B,0x8B,0x31,0x15,0x53,0xCF,0x6E,0xEB,0xCA,0x59,0x54,0x1D,0x87,0x7D,0x5A,0x73,0x61,0x55,0x5C,0xA6,0xE9,0x5C,0x58,0x5C,0xCD,0x68,0x67,0x08,0x01,0xD3,0xB6,0xAB,0x9E,0xC1,0x18,0xDD,0x97,0xAC,0x6A,0xA6,0x20,0xD0,0x58,0xB2,0xAA,0x15,0x83,0xC0,0x62,0xC9,0x2A,0x67,0x0E,0xA4,0xC8,0x27,0xAB,0xEC,0x5E,0xC8,0xA3,0xE6,0xAC,0xAA,0x07,0x93,0xF0,0xBC,0xB3,0xEA,0x6A,0x43,0x32,0xE2,0xF1,0xAE,0x57,0x5B,0x7D,0x4A,0x5A,0x3C,0x5E,0x6D,0xF1,0x6E,0x21,0xB6,0xD0,0x00,0xC3,0x56,0x28,0x60,0xFA,0x0A,0x05,0x4C,0x97,0xAE,0x80,0x66,0xCB,0x5A,0x13,0xCD,0xB6,0x2B,0x6F,0x1E,0x6D,0x32,0xD7,0xAA,0xBA,0x7A,0x74,0x49,0x5F,0x9B,0xE9,0xE6,0xD1,0x25,0x75,0x25,0xAE,0x5B,0xDA,0x10,0xDD,0x27,0x97,0x6F,0x6E,0x4B,0x74,0x97,0x5A,0xBA,0xB9,0xED,0xC9,0x5D,0x6A,0xEB,0xE6,0x72,0xC6,0x32,0xE6,0xAD,0x9B,0xD3,0x1D,0xE3,0xB8,0xAF,0xF4,0x4E,0x4F,0x4A,0x6D,0xBA,0xD2,0x27,0x3D,0x39,0xB5,0xDB,0x72,0x96,0xF4,0xA6,0x92,0x1A,0x27,0x7D,0xC2,0x9B,0xA7,0x4B,0xB5,0x76,0x36,0x5F,0xBE,0x12,0x23,0xBA,0x98,0x7E,0xFF,0x0F};
|
||||||
|
//const uint8_t spVHE[] PROGMEM = {0x66,0xCD,0x32,0x1C,0x3D,0xD2,0xBA,0xB5,0x2A,0x77,0x74,0x4E,0x13,0xB6,0x2A,0x4D,0x45,0xCC,0x4D,0xD8,0xA6,0x0B,0x56,0x11,0xB5,0x65,0x9D,0xAE,0xDD,0x98,0xD9,0xB4,0x7E,0xDA,0x34,0x16,0xD5,0x36,0xEA,0x6A,0x99,0x2D,0x73,0xF5,0x2A,0x46,0x52,0xA2,0x88,0x25,0x2B,0x1F,0x99,0x89,0xA3,0x96,0xAC,0x74,0x24,0x41,0xAA,0x5E,0x32,0x92,0x11,0x08,0xB5,0x67,0xCE,0x48,0x66,0x64,0x94,0x9A,0x25,0x2B,0x9D,0x51,0x40,0x72,0xE6,0x34,0x6B,0x18,0x85,0xE8,0x99,0x12,0xE8,0xEE,0x05,0x32,0xEF,0x76,0x1B,0x46,0x72,0x34,0xED,0xD5,0x67,0x6E,0x56,0xB8,0xB3,0xAB,0x9C,0x76,0xFA,0x44,0xCD,0x58,0x72,0xCA,0x51,0x8C,0xCC,0x6B,0xC9,0x29,0x67,0x0B,0x50,0xAF,0x25,0x27,0x9F,0x5D,0xC1,0xA2,0x97,0xAC,0x62,0x76,0x03,0xB1,0x5E,0x52,0x9A,0x26,0x89,0xAD,0xB3,0xB1,0x00,0xBA,0x40,0x73,0xC0,0x69,0x29,0x0E,0x38,0x79,0x3B,0x01,0x2B,0x85,0x04,0x60,0x7A,0x21,0x04,0x4E,0x51,0xAA,0x42,0x35,0xA0,0x75,0xB3,0x08,0x72,0xF6,0x9C,0xD6,0xAC,0x64,0x88,0x59,0xB3,0x47,0xB3,0x4A,0x22,0x78,0x2E,0x19,0xED,0x6A,0x81,0x60,0xB5,0x64,0x74,0xAB,0x3A,0x60,0xD4,0x92,0xD1,0xAF,0x1A,0x40,0x5E,0xB3,0xC7,0xBC,0xA2,0x01,0x57,0xCF,0x6E,0xEB,0xCA,0x06,0x14,0x3D,0xBB,0x6C,0x2B,0x19,0x70,0xF6,0xA3,0xB4,0x4F,0xAF,0x20,0xDD,0xB3,0xC3,0x31,0x83,0x82,0xF4,0x3C,0x0A,0xE7,0x0C,0x0A,0xD2,0x73,0x2B,0x5C,0xB3,0x2B,0xB2,0xF7,0xEC,0x70,0xCF,0xE2,0xC0,0x5E,0x4B,0xC2,0xB3,0x52,0x02,0x79,0xBD,0x0E,0xEF,0xCC,0x0A,0x9A,0xB3,0xEA,0xFF,0x01};
|
||||||
|
//const uint8_t spLANDING_GEAR[] PROGMEM = {0x66,0x1F,0xC0,0xC7,0xD5,0xB2,0x85,0x2D,0xA1,0x4D,0x72,0xEF,0x54,0xD6,0x06,0xB2,0x59,0x3D,0xCB,0x98,0xAB,0x98,0x70,0xD5,0xC7,0x6B,0xA8,0xAA,0xDD,0x3D,0x1E,0xAF,0xAE,0xAB,0x56,0xCB,0x58,0xB5,0xAA,0xAE,0x8B,0x23,0x73,0xF1,0x2A,0xBA,0x2E,0xCE,0xAC,0xD9,0xAB,0x68,0xB6,0x39,0x35,0x67,0x97,0xA2,0x3B,0x28,0xD7,0xE0,0xE4,0xAA,0xAA,0x60,0x9C,0x43,0xA3,0xE9,0xAA,0xE2,0x0C,0x0A,0xD9,0x6D,0x9A,0xA2,0x58,0x2C,0x16,0xAD,0xB6,0x3B,0x65,0xD3,0x5E,0xBC,0xBA,0x11,0x14,0x2D,0x6A,0x76,0xEB,0x47,0x26,0xAA,0x0A,0x23,0x69,0xE8,0x0E,0xC6,0x4D,0xDD,0xA4,0xA1,0x19,0x1C,0x57,0x71,0xEB,0xC6,0xA2,0x68,0x45,0x25,0x8B,0x9A,0xA2,0xA4,0x75,0x71,0x2F,0x69,0x59,0x29,0x41,0x2D,0x92,0xA4,0x65,0x24,0x03,0xF1,0x5E,0x3D,0xA6,0x91,0x0C,0x25,0x6A,0xC9,0x18,0x47,0x74,0x94,0x8A,0x27,0x63,0x6E,0x3E,0x41,0xC7,0x3E,0xB7,0xA5,0xC5,0x01,0x19,0xDE,0x53,0xD6,0x5A,0x12,0x7C,0x78,0x4B,0x59,0x4B,0x2F,0xC8,0xA2,0x4D,0x65,0x2F,0xBD,0x20,0x1A,0x7F,0x97,0xB3,0xE4,0x06,0x5B,0xEA,0x52,0xAE,0x92,0x06,0x74,0x69,0x4F,0xB9,0xB3,0x6F,0x88,0x91,0xB4,0xE9,0xC9,0x25,0xA0,0x87,0x56,0xA5,0x27,0x97,0x80,0x4D,0xDE,0x1B,0xDE,0x3C,0x95,0xCB,0xC4,0xED,0xFF,0x03};
|
||||||
|
//const uint8_t spLEVEL_OFF[] PROGMEM = {0x66,0xC8,0xA0,0xCB,0x4C,0xDA,0x84,0x2D,0x81,0x6A,0x57,0x4D,0x1A,0xD7,0xB0,0x34,0x90,0xC3,0x6A,0xBD,0xD6,0x5C,0x58,0x87,0xB1,0xAC,0x59,0x7D,0xD1,0x9D,0x26,0xF1,0x64,0x35,0x55,0xB7,0x9B,0xC6,0x92,0x55,0x14,0x57,0xEE,0x52,0x8B,0x57,0x9E,0x6D,0x64,0x88,0x37,0x0E,0x55,0x91,0xE5,0xC1,0xE2,0x38,0x55,0x83,0x9B,0x85,0x6A,0xEC,0x96,0x67,0xD1,0x6D,0xA2,0x76,0x56,0x5A,0x68,0x4D,0x33,0x75,0x1E,0x69,0x23,0x36,0xA7,0xE0,0xB5,0xA5,0x85,0xFA,0x2E,0x61,0x97,0x94,0x45,0xEE,0xE7,0x68,0xAD,0x47,0x56,0xF0,0x74,0x13,0x77,0x1E,0x45,0x16,0xD3,0x4D,0xBC,0x69,0x94,0x49,0x6E,0x17,0x4B,0xEF,0x55,0x45,0x73,0x95,0x6C,0xBD,0x57,0x13,0xED,0x55,0xB0,0xF5,0x1E,0x7D,0x08,0x9F,0xC1,0xDE,0x7B,0x4C,0xD1,0x7E,0x06,0x7B,0x9E,0xB6,0x47,0x73,0x95,0xA2,0x79,0xC6,0x15,0xFD,0x65,0x88,0xF7,0x69,0x4F,0x0C,0x9B,0x21,0xD6,0xBB,0x3C,0xB1,0x8E,0x27,0xE5,0x2E,0x77,0xA5,0xE2,0x6B,0x5C,0x8D,0x08,0x30,0x6C,0x05,0x01,0xA6,0xAF,0x10,0xC0,0x74,0xE9,0x0A,0x68,0xB6,0x8C,0x01,0xDD,0x65,0x12,0xA0,0x9B,0xF4,0xFF,0x07};
|
||||||
|
//const uint8_t spUNDERCARRIAGE[] PROGMEM = {0x6D,0x4C,0x7A,0xCB,0xCA,0x3B,0xAF,0xAE,0xF2,0x29,0x2B,0xEB,0xBC,0xEA,0x26,0x26,0x24,0x75,0xF5,0xAE,0x57,0xD1,0x0C,0x87,0x8B,0xB9,0x69,0x59,0x55,0x54,0x2E,0xE1,0x3A,0x65,0x59,0x52,0x85,0x54,0x63,0x95,0x37,0x6B,0xC6,0x6C,0x6D,0x56,0x51,0x63,0x30,0x47,0xE4,0x5D,0x45,0x09,0x85,0xDA,0x9A,0x77,0x95,0xCD,0x2C,0xD2,0x88,0xBF,0xD2,0x74,0x3E,0x84,0xA3,0x79,0x54,0x57,0x8C,0xA2,0x67,0x64,0x01,0x03,0xCC,0x1A,0x12,0x80,0x61,0x0D,0x1D,0x30,0x43,0xD0,0x6A,0x9B,0x77,0xB2,0x8C,0xD5,0xAB,0xEB,0xBE,0x98,0xCB,0xB6,0xAC,0x7E,0xAA,0x76,0x1C,0xEF,0xBA,0x86,0x21,0x3B,0x70,0xB5,0xEF,0xDA,0x9A,0x1E,0xE7,0x95,0x7C,0x63,0xCF,0xD5,0xCC,0xCB,0xB2,0xB5,0x35,0x0F,0xF1,0x70,0xCB,0xDE,0xCE,0xD2,0x4C,0xDD,0x3C,0x7D,0xBB,0x8A,0x6F,0xB2,0xB2,0xED,0xE3,0xEE,0x76,0x84,0x53,0xBB,0x94,0xBB,0xEB,0x62,0x2E,0xDF,0x5D,0x9E,0xA1,0x52,0x38,0xBD,0x4B,0x78,0xA6,0x0E,0xE1,0xD0,0xAE,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x00,0xBA,0x61,0x51,0xC0,0xEE,0x21,0x06,0x58,0x6D,0x47,0x3D,0x7D,0x4D,0xBA,0xA3,0x96,0xFF,0x07};
|
||||||
|
//const uint8_t spSPOILERS[] PROGMEM = {0x04,0xB8,0x81,0x51,0x00,0x7F,0xB8,0x28,0xE0,0x77,0x27,0x03,0xFC,0x5E,0x6C,0x80,0x7F,0x4B,0x0C,0xF0,0xA6,0x2A,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x80,0x80,0x42,0x45,0x5B,0x9A,0x55,0xA6,0xBB,0x5B,0x6E,0x65,0xE2,0xB5,0xE6,0x98,0xAE,0x95,0x49,0xCE,0x8A,0x72,0xB6,0x91,0x47,0x35,0x2D,0xC1,0xD9,0x46,0x96,0xDC,0x98,0x26,0x6F,0x19,0x79,0x76,0xCD,0x56,0xBC,0x6A,0x55,0x45,0x0F,0xEB,0xC8,0xEA,0x51,0x55,0xD1,0xEA,0x29,0x9F,0x47,0x57,0x49,0xA5,0x27,0x76,0x2D,0x4B,0xA2,0xD3,0x66,0x92,0xAF,0xAC,0x59,0xB6,0xA5,0xE3,0x9A,0xB2,0xE6,0x98,0xA6,0x29,0x5D,0xCA,0x5E,0x4A,0x0B,0xB7,0xF8,0x2F,0x67,0xA9,0x83,0xD2,0xEA,0x2D,0xDD,0xA5,0x37,0x58,0xA9,0xFF,0xF4,0x96,0x19,0x68,0xA5,0x59,0xC3,0x5B,0x6A,0xA0,0xB6,0x66,0x0B,0x6F,0xF1,0x49,0xDC,0x9E,0x3D,0x7D,0x97,0x84,0x88,0x4B,0xDE,0xF4,0x5D,0xC4,0x6E,0x1E,0x6E,0xF2,0x57,0xFE,0xEF,0x23,0x4C,0x98,0x99,0x02,0xBE,0x47,0x12,0xC0,0x86,0x9C,0xFF,0x0F};
|
||||||
|
//const uint8_t spAIR_BRAKES[] PROGMEM = {0x6D,0x6E,0x56,0x38,0xAA,0x56,0x9E,0xAE,0xFB,0x60,0x2E,0xDF,0x72,0xEA,0x9E,0x82,0x24,0xED,0xCD,0x29,0x5A,0x2E,0xB2,0x94,0x27,0x2B,0xAB,0xDD,0xA8,0x5C,0x1E,0x8F,0xB4,0xB4,0x80,0x49,0x5E,0xDC,0xD2,0xDC,0x15,0x37,0x79,0x75,0xC9,0x52,0x57,0x9C,0xC2,0xD5,0xA6,0xE3,0x39,0xD9,0xC2,0xED,0xB0,0x55,0xA9,0x09,0x55,0xB7,0x83,0x00,0xE0,0x36,0x5A,0xDB,0x75,0xA5,0xA8,0x59,0x19,0x6D,0x4A,0x25,0x74,0xEC,0x7D,0x8D,0x25,0x96,0xD2,0x8A,0xF7,0xB5,0x34,0xDB,0x01,0xED,0xDE,0xD7,0xD2,0x6D,0x39,0x96,0x65,0x5F,0x47,0x0B,0xA5,0x94,0xDA,0x65,0x9C,0xDD,0x17,0x63,0xF9,0x9E,0xB2,0xD6,0x48,0x3C,0x5B,0xAB,0xEA,0x1A,0xFE,0x5E,0x05,0x2C,0x63,0x31,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x40,0x80,0xA1,0xDA,0x11,0x50,0x6D,0xAB,0x02,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x0C,0xF8,0xAD,0x94,0x02,0x08,0xF8,0x2D,0xF5,0xFF,0x01};
|
||||||
|
//const uint8_t spAERIAL[] PROGMEM = {0xA3,0x6F,0x41,0x59,0x27,0x56,0xAD,0xA6,0xC7,0x66,0x4E,0x6F,0xB3,0x8A,0xEE,0x86,0xB9,0xB5,0xCB,0xCA,0x4A,0x49,0xB6,0x92,0xBC,0x23,0xCB,0x8B,0xC3,0x82,0xB3,0xB4,0x2C,0x4D,0x6A,0x49,0xEA,0xDC,0xB2,0x34,0xA8,0x39,0x25,0xD7,0xC8,0xF3,0xA0,0x14,0xF3,0x2C,0xAB,0xAC,0xC5,0xC9,0x4D,0xB6,0xAC,0xA6,0xBB,0x44,0x69,0xDF,0xB2,0x86,0xE1,0x0A,0xB9,0x6C,0xF3,0x9A,0xBA,0x09,0xD4,0xF6,0xCF,0x6B,0x19,0x26,0x99,0x52,0xF7,0xAE,0xAD,0xD9,0x34,0x75,0xD9,0xD2,0xF6,0x6C,0xD2,0xD2,0xED,0x73,0x39,0x42,0xD8,0xA4,0xAA,0xCE,0xE9,0xF4,0x71,0xCB,0x34,0x7A,0xA5,0x33,0xA9,0x9E,0x34,0xCE,0x9C,0xAE,0x28,0x67,0x5C,0x25,0x6B,0xB8,0x82,0xEE,0x09,0xA5,0x7C,0xE6,0xF6,0xE6,0x86,0xD4,0x9A,0xFD,0x3F};
|
||||||
|
//const uint8_t spENGINE[] PROGMEM = {0xAB,0x1F,0xC1,0xC9,0x33,0x67,0xAD,0x7A,0x9A,0x64,0x9D,0x98,0xB5,0x8A,0xE1,0x8B,0x35,0x7D,0xD6,0xCA,0xBA,0x09,0x8E,0x8C,0xD9,0x2B,0xED,0x8E,0xD3,0xD4,0x13,0xAF,0xA4,0x19,0x4A,0x37,0x73,0xB5,0x92,0xAA,0xA8,0xCC,0xD4,0x75,0x4B,0xB3,0xA0,0x76,0x09,0xD7,0x2D,0x4F,0x82,0xCB,0xC2,0x13,0x8F,0x62,0x58,0x12,0xB5,0x4A,0xE5,0x80,0xC2,0x58,0x56,0x3F,0x63,0xB9,0x30,0xEB,0x59,0x7D,0x0B,0x2A,0x12,0xBE,0x7A,0x0D,0xDD,0x86,0x52,0xD8,0xD6,0xB5,0x76,0x9D,0xC6,0xA1,0x5B,0xD6,0x36,0x75,0xB8,0x04,0xF7,0x2D,0x47,0xB3,0xE4,0xA5,0x66,0xB7,0x9C,0x45,0xB2,0x97,0x58,0xD4,0x72,0x15,0xC5,0xD6,0xA2,0x71,0xEB,0x1D,0xEE,0xAA,0xB1,0x3C,0x5C,0x4D,0x78,0x9A,0xC6,0x08,0x0F,0x25,0xFF,0x0F};
|
||||||
|
//const uint8_t spFLAME_OUT[] PROGMEM = {0x04,0x18,0xB6,0x82,0x02,0x04,0x98,0xBE,0x42,0x00,0xD3,0xA5,0x2B,0xA0,0xD9,0xB2,0x56,0x65,0x29,0xEB,0xCC,0x59,0x57,0xD9,0x69,0x8F,0x18,0x65,0x59,0x79,0x17,0x1D,0xEA,0xB2,0x66,0x65,0xCD,0x84,0x44,0xC6,0xEC,0x95,0x76,0x67,0xE4,0x13,0x93,0x56,0xD6,0xAD,0x91,0xAF,0x55,0x1A,0x45,0xF7,0x64,0x69,0x96,0x64,0x54,0xD5,0xB0,0xA7,0x89,0xDD,0xD1,0x35,0xAD,0x92,0xC1,0x71,0x47,0xDF,0x44,0xA7,0x14,0x6F,0x1E,0x73,0xE3,0x5D,0xD6,0xB2,0x65,0xAC,0x8D,0x77,0x6B,0xE9,0x96,0xB6,0x37,0xD6,0xAD,0xAD,0x7B,0xDB,0x5E,0xC4,0xB4,0x96,0x75,0xE9,0x7B,0xBB,0xB2,0xDA,0xB2,0xD2,0xDD,0xE9,0x89,0x6E,0x22,0x42,0x5B,0xB9,0x2F,0xE4,0xAA,0x50,0x5B,0x84,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x18,0x60,0x0A,0x75,0x01,0x3C,0x5F,0xF1,0xFF};
|
||||||
|
//const uint8_t spFLAK_LOAD[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0x96,0x9A,0x24,0x6D,0x43,0xD9,0x4D,0xE9,0xBD,0xEB,0x0A,0xD2,0x25,0xAB,0xCB,0x72,0xD3,0x8C,0x17,0xAF,0xBA,0xA8,0x0B,0x37,0x7B,0xB3,0xCA,0x62,0x47,0x23,0x72,0xC9,0xCA,0x8B,0x6F,0xAD,0xC8,0xC5,0x2B,0x2B,0x29,0xAC,0x2C,0x67,0x8F,0x2C,0x87,0xB4,0x52,0x2F,0x85,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x08,0x20,0x1A,0x51,0x73,0xD4,0xD8,0x99,0x69,0x76,0x4C,0x1B,0xA5,0x4F,0x40,0x26,0x8D,0x63,0x9A,0x13,0x8D,0x1A,0xA2,0xD5,0x63,0x6E,0x38,0x3B,0x8D,0xBA,0xAC,0xA9,0x92,0xEA,0x30,0xEA,0xB2,0xE6,0x42,0xBB,0xCD,0xB4,0x4B,0x5B,0x92,0xD8,0x52,0xB3,0xDE,0x6D,0x4F,0x6A,0x22,0x94,0xF7,0x94,0x2B,0xA9,0x0D,0x33,0xED,0x1D,0xAE,0xE0,0xDA,0x0A,0xED,0x77,0x78,0xA2,0xAD,0x48,0x96,0x2E,0xE1,0x8B,0xB2,0x3D,0x55,0xBA,0xB8,0x3F,0xEA,0xD6,0x10,0xEF,0xEB,0xFE,0x1C,0xDC,0x54,0xBD,0x8B,0xFA,0x92,0x73,0x36,0xC9,0x34,0xEC,0xCB,0x86,0x2C,0xD0,0x57,0x93,0xDB,0x91,0xF4,0xC9,0x48,0x45,0xEF,0xB4,0x77,0x67,0xE4,0x62,0x5B,0xDC,0xD9,0x63,0x8A,0x88,0x6D,0xF9,0x7F};
|
||||||
|
//const uint8_t spINBOUND[] PROGMEM = {0xAA,0x1C,0x91,0xC9,0x6C,0x13,0x8F,0x7A,0x58,0x43,0xCD,0x9A,0x3D,0xCA,0xE9,0x92,0x38,0xE2,0xC9,0xC8,0x86,0x4B,0x66,0x8F,0x27,0x2B,0x9B,0x32,0x94,0xC3,0x6E,0xAF,0x64,0x38,0xB4,0x34,0x4F,0xB6,0x92,0x61,0xC9,0xD2,0xDD,0xD9,0x4A,0x9B,0xA4,0x34,0x73,0xC7,0x23,0x2B,0x82,0x2A,0xDC,0x1C,0xB7,0x3C,0x71,0x19,0x77,0x4F,0x9C,0x0A,0x2F,0xA5,0xD3,0xAC,0xB6,0x6B,0x85,0xD1,0x76,0xCE,0xD4,0xBE,0x5D,0x7D,0xD1,0x69,0x66,0xDC,0x78,0x35,0x45,0xB5,0x6B,0xCA,0xEA,0xD5,0x17,0xDD,0xEE,0x29,0x8F,0xD6,0x50,0xF4,0xB8,0x97,0xBE,0x5E,0x73,0x55,0xE3,0x5E,0xF2,0x7A,0x2D,0x55,0xAD,0x5B,0xCA,0xEB,0xB5,0x55,0xB9,0x29,0xA5,0x9B,0xD7,0xD9,0xF8,0x16,0x97,0x6E,0x59,0x67,0xD1,0x97,0x92,0xB2,0xBA,0x9D,0x59,0x5F,0x70,0xE9,0xAB,0x76,0x26,0xB7,0xEE,0x2E,0x8B,0xD2,0x19,0x4A,0x9B,0x59,0x2C,0x0E,0x67,0x28,0xA5,0xC1,0x55,0x39,0x5C,0x59,0x94,0x35,0x5B,0x95,0x70,0x55,0xCD,0xD1,0x12,0x6A,0xC2,0xD5,0x0C,0x79,0x4B,0x2A,0x35,0x57,0x91,0x14,0x43,0x51,0x47,0x5C,0x49,0x71,0x19,0x6D,0xAD,0xF4,0x0C,0x93,0x21,0xA6,0xA9,0xC7,0xD7,0x82,0x9B,0xB1,0xAF,0x09,0x77,0xCD,0xE6,0x42,0xDD,0xF8,0xFF,0x01};
|
||||||
|
//const uint8_t spIGNITE[] PROGMEM = {0x65,0x28,0x52,0xBD,0xBA,0x62,0xAF,0x61,0xC8,0x20,0xED,0x5C,0xBC,0x87,0xD5,0xF7,0x68,0xE0,0x15,0x77,0xDA,0xD0,0x8B,0x82,0x77,0x2C,0x72,0x53,0x92,0x22,0x93,0x52,0x1B,0x81,0x53,0x94,0xAA,0x50,0x0D,0x30,0x53,0x94,0x9C,0xA3,0xE1,0xBA,0x0C,0xCD,0x41,0xA6,0xB9,0x9B,0xD5,0xD5,0x10,0xE1,0xAC,0x4B,0x56,0x5D,0x7C,0x6B,0xB8,0xDE,0x19,0x75,0xF1,0xA3,0x9E,0x7A,0x67,0xD5,0xD5,0xB4,0x46,0xEB,0xED,0xD5,0x56,0x5F,0x9C,0x69,0x8F,0xCA,0xD0,0x82,0x51,0x67,0x4E,0xAA,0x43,0x19,0x5B,0x66,0x4A,0xAB,0xD9,0x08,0x9C,0xAA,0x54,0x85,0x6A,0x00,0x00,0x28,0x60,0x0A,0x75,0x02,0x3C,0x5F,0xF1,0xFF};
|
||||||
|
//const uint8_t spNO_TURN[] PROGMEM = {0x6A,0xF5,0x4C,0x63,0x52,0x6B,0x9B,0x35,0x70,0x89,0x09,0x5B,0xE4,0xD6,0xC8,0xC4,0xBB,0x64,0xB1,0x5B,0x33,0x11,0xAF,0xE2,0xC5,0x6D,0xE9,0x5A,0x4C,0x95,0xBA,0xAE,0xBE,0x78,0x4B,0xE3,0x78,0xB3,0xDA,0xAC,0x32,0xD2,0xE4,0xCD,0x2A,0xB3,0x9C,0x34,0xA3,0x2D,0x2B,0x8B,0x6C,0x53,0xC2,0x5A,0xB7,0xD4,0xAB,0xCD,0x30,0xDA,0x5C,0x52,0xAF,0x27,0xCC,0xAC,0xB3,0xAA,0x5C,0x12,0xCA,0x2E,0xD7,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x04,0xE0,0x4A,0x53,0x0F,0x04,0x60,0x2A,0xB3,0x15,0x94,0x14,0xAC,0xA5,0x59,0x56,0x5A,0x62,0x91,0x2E,0x77,0x19,0x79,0x71,0x4D,0xFC,0x94,0x65,0xE4,0xB9,0x26,0xFA,0x51,0xE7,0x51,0xE6,0xD2,0x68,0xC7,0x9D,0x47,0x57,0xD2,0x90,0x1C,0x77,0x19,0x7D,0x0D,0xC3,0x7C,0xDC,0x65,0x2C,0xCD,0xAF,0xE0,0x72,0x96,0xB1,0x35,0x3F,0x82,0xAB,0x59,0xC7,0xD1,0x5C,0x0B,0x75,0xB8,0x1B,0x67,0x0B,0xA1,0x12,0xD1,0xB4,0x5C,0xCD,0xAB,0x84,0x4A,0xDD,0x72,0x37,0x6F,0x6E,0xA4,0x75,0xCA,0x53,0x0D,0x79,0xA9,0xC5,0x2D,0x4F,0x33,0xA2,0xA9,0x12,0x37,0xBD,0x3D,0x8A,0xB9,0x69,0xE3,0xF4,0x57,0x6B,0xEA,0x69,0x0B,0xD3,0xDF,0x82,0xAB,0xBB,0xAD,0xFE,0x7F};
|
||||||
|
//const uint8_t spFLAPS[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0xD6,0x8A,0xA2,0x65,0xD2,0xD8,0xED,0xE8,0xA2,0xE9,0x0E,0x92,0x36,0xAB,0x4D,0x6A,0xD3,0x55,0x16,0xAF,0x3A,0x9B,0x75,0x73,0x5F,0xBC,0xAA,0x1C,0xDA,0xCA,0x73,0xF6,0xAA,0x72,0x0C,0x6F,0xEB,0x29,0xAB,0xC9,0x31,0x6D,0xBC,0x27,0xB7,0x31,0xC5,0x88,0xB1,0x99,0xDC,0xCE,0x12,0xD3,0xDA,0x72,0x76,0xBF,0xC2,0x9D,0x93,0x7B,0x5A,0x2E,0x41,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0xC0,0x00,0xD1,0x88,0x32,0xE0,0x19,0x57,0x06,0xFC,0x94,0x42,0x80,0xDF,0x4A,0x29,0x40,0x80,0xDF,0x52,0xFF,0x1F};
|
||||||
|
//const uint8_t spEVACUATION[] PROGMEM = {0xA5,0xEF,0x4C,0x45,0xB6,0x16,0x95,0x71,0x6A,0x67,0xEC,0x5C,0xDD,0xC6,0x1E,0x9D,0xA8,0x6C,0x4B,0x58,0xAB,0x30,0x95,0x52,0xAF,0xE6,0x48,0x5C,0xD5,0xC3,0x93,0xB8,0xA3,0x6B,0x57,0x66,0x75,0xBA,0x86,0xEA,0x42,0xCD,0xB4,0xCD,0xEA,0x9A,0x2E,0xF1,0xB0,0xCD,0xAB,0xAB,0xAE,0x34,0x3D,0x56,0xAF,0xA6,0x86,0xD4,0xB2,0x5A,0xB4,0xAA,0x9A,0xCC,0xD2,0xAB,0xF6,0x2C,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x03,0xAC,0xE8,0x6A,0x80,0x93,0x47,0x0C,0xB0,0x53,0x4A,0x2B,0x7A,0x74,0xE0,0xB4,0x35,0xAD,0x2A,0x34,0xC4,0x86,0xB7,0xA4,0xDA,0xF3,0x0D,0x09,0xDC,0x5C,0xDA,0xC0,0xAF,0x38,0xB8,0xF3,0xAA,0x93,0xD8,0xD0,0xA0,0xDE,0xAB,0x2A,0xB2,0xC5,0x92,0x37,0xAF,0xB2,0xF9,0x22,0x73,0xD9,0xBC,0x8A,0x1E,0x0D,0xDD,0x7D,0x75,0xA8,0x5A,0x20,0xF6,0xCA,0x45,0x0C,0x38,0x71,0x54,0x01,0xBB,0x6D,0x19,0x60,0x97,0xEB,0x00,0xEC,0xB2,0x16,0x80,0x95,0x2F,0xD6,0xD4,0x54,0xA8,0x94,0x77,0x6E,0x73,0xD3,0xA1,0x1E,0xB2,0xBA,0xAD,0xDD,0xB1,0x94,0x8B,0xB5,0xB1,0x77,0xCB,0x52,0xAE,0xD6,0xCA,0x31,0x9C,0x48,0xA8,0x45,0x4D,0xE7,0x70,0x46,0x61,0x12,0x2D,0x5D,0x53,0x3B,0x99,0x73,0xB4,0x74,0x0F,0xED,0x92,0xAA,0x51,0xD3,0xD3,0x5C,0xBA,0xAB,0xA5,0xF9,0x7F};
|
||||||
|
//const uint8_t spDOORS[] PROGMEM = {0x0A,0x28,0x30,0xAC,0x35,0x43,0x85,0x89,0x58,0xDE,0x51,0x67,0xED,0x6E,0xAE,0xAB,0x57,0x9D,0x44,0x87,0x26,0x77,0x1D,0x4D,0xA2,0x53,0x16,0xEC,0x6D,0x36,0xA5,0xF7,0x75,0xD4,0x93,0xBC,0xB5,0x25,0xB4,0xE6,0x4C,0xCE,0x9A,0xB6,0x50,0x9B,0x2A,0xA9,0x5F,0x3A,0xE2,0x70,0x69,0xC7,0x3E,0x69,0x8B,0xD3,0xB9,0x03,0xFB,0x86,0x2B,0xD5,0xC4,0x6C,0xF6,0x93,0x9E,0x5C,0x12,0xAA,0xC4,0x6F,0x7A,0xF2,0x34,0xF2,0x56,0xBF,0xE9,0xC9,0xCD,0x30,0xCA,0xFC,0xA5,0x27,0x17,0x65,0xAD,0xE8,0x13,0xDE,0xEC,0x44,0xC3,0x63,0xB3,0x79,0x93,0x15,0xF1,0xC8,0xD5,0xE9,0xBB,0x24,0x44,0x5C,0xF2,0xA6,0xFF,0x22,0x76,0xF3,0x70,0x93,0xFF,0xF4,0x7F,0x1F,0x61,0xC2,0xCC,0x14,0xF0,0x3C,0x92,0x06,0xFE,0x1F};
|
||||||
|
//const uint8_t spCABIN[] PROGMEM = {0x06,0x28,0x42,0xCD,0x01,0x23,0x8A,0x18,0xA0,0x1B,0xE5,0x55,0xB4,0x64,0x6A,0x1E,0x8B,0x57,0x59,0x83,0x6B,0x64,0x2C,0x5E,0x45,0xF1,0xA9,0x95,0xB1,0x78,0xE5,0x25,0x84,0x95,0xE5,0xEC,0x95,0x95,0x98,0x96,0x12,0xB3,0x4D,0x6D,0xBD,0xAB,0xBB,0xB5,0x32,0xAD,0x51,0x61,0xE1,0x9E,0x66,0x35,0xC5,0xBB,0xBA,0xC4,0xA2,0xD5,0x16,0x13,0x12,0x56,0xB3,0xD7,0xD8,0x8C,0x59,0xB0,0xD5,0x6C,0x63,0xB7,0xA8,0xE3,0x6E,0xAF,0x8D,0xC3,0x12,0xB7,0x9B,0xB5,0x32,0x37,0x45,0xB2,0xAE,0xD6,0xEB,0xE2,0x56,0x2F,0x35,0x4B,0xAA,0x8C,0xD8,0x94,0xC8,0x8C,0x4C,0x27,0xFF,0x0F};
|
||||||
|
//const uint8_t spARRIVAL[] PROGMEM = {0x65,0x4D,0x66,0xD3,0x8A,0xBB,0x8C,0x25,0xF9,0x49,0x29,0xCD,0x37,0xE6,0x58,0xC3,0x6D,0xD8,0x5F,0x98,0xFD,0x64,0xCF,0x62,0x7D,0x6E,0xB6,0x57,0x34,0xCA,0xD4,0xB9,0xC9,0x1C,0x15,0xEF,0x60,0x96,0x46,0xBF,0xD9,0xA2,0x45,0xEB,0x18,0x62,0xF1,0xF0,0x61,0x3D,0xAB,0x4B,0x76,0x23,0x42,0xF3,0xAC,0x26,0xEB,0xF5,0x4C,0xD9,0xB4,0x8A,0x1C,0xCA,0xCA,0x62,0xD5,0x4A,0x4B,0x74,0x6D,0xAB,0xD9,0x2B,0xA9,0xC1,0xB4,0xBD,0x26,0xAF,0xB8,0x65,0x93,0xD0,0x98,0xD5,0xD2,0xEC,0x54,0xC3,0x74,0x51,0x28,0x8A,0x74,0x09,0x63,0x37,0xA1,0x9F,0xCA,0xD4,0xD5,0xAC,0xA4,0xBE,0xF3,0xF0,0x74,0xB6,0xDD,0xFA,0xCC,0x7A,0x42,0x31,0x4B,0xEB,0x2B,0xAA,0x2D,0xC1,0x6C,0x6D,0x68,0x30,0xB7,0x15,0xB2,0xB7,0xB1,0xC3,0x9C,0x56,0xC8,0xDF,0xA6,0x06,0x6A,0x52,0x31,0x6F,0x9F,0xCA,0xD2,0x41,0x4E,0x18,0xF7,0xFD,0x7F};
|
||||||
|
//const uint8_t spACKNOWLEDGE[] PROGMEM = {0xAD,0x2E,0xB6,0xD4,0x27,0x26,0xAD,0xA9,0x9A,0x56,0xEF,0x78,0xBC,0xC6,0x66,0x5B,0xAD,0xFD,0xCD,0x1A,0x9A,0x1F,0xF1,0xF2,0xD7,0x6B,0xA8,0x3D,0xA9,0x24,0x66,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x40,0x80,0xA8,0xDC,0x43,0x1E,0xA5,0x78,0xAB,0x27,0x29,0x5D,0xD1,0xE8,0xEB,0x52,0x77,0xF4,0xD5,0x91,0x27,0x5B,0xD2,0xD5,0x55,0xD5,0x66,0xC1,0x8F,0x57,0x53,0x45,0xA7,0x25,0x6D,0x5E,0x75,0x56,0x9B,0x1E,0xBC,0x65,0x55,0x59,0x5F,0xBA,0xEB,0xEE,0x95,0x25,0x7F,0x11,0x6A,0xAB,0x47,0x1A,0xC2,0x64,0x41,0x36,0x1E,0x49,0x46,0x1F,0x6E,0xD2,0x69,0xC5,0x29,0xB4,0x15,0x4D,0xED,0x15,0x97,0x98,0x9A,0x3C,0xB5,0x57,0x5C,0x7D,0x72,0x48,0xCD,0x5E,0x49,0xB5,0x2A,0x69,0x3D,0x5B,0x25,0x56,0x5A,0x45,0x67,0x0C,0x91,0x09,0x63,0xD5,0x59,0x16,0x53,0xB5,0x33,0xA3,0x68,0x74,0x49,0xD7,0x8C,0xA4,0xAC,0xDE,0x24,0x5D,0xAB,0x96,0x02,0x8A,0x5D,0x03,0x34,0x4E,0xE4,0x80,0xD9,0xD2,0xFF,0x1F};
|
||||||
|
//const uint8_t spRAISE[] PROGMEM = {0x62,0x63,0x65,0x45,0xC3,0xED,0xAA,0x55,0x2C,0x67,0xCF,0x70,0x9A,0x06,0xDB,0xD9,0xBD,0xC5,0xEF,0x68,0x52,0xE7,0xB0,0x94,0x6C,0xAB,0x2A,0x39,0x54,0x53,0xBA,0xAE,0xB2,0xF9,0x66,0x49,0x5D,0xBD,0x8A,0xEE,0x8A,0x24,0xED,0xF1,0xAA,0x86,0x2B,0x92,0xF4,0xC5,0xAB,0x1B,0x26,0x50,0x3B,0x16,0xAF,0xBE,0x1B,0x43,0xEF,0x5A,0x3C,0xA6,0xE1,0x0C,0xAC,0x6B,0xF6,0x58,0x7A,0x64,0xF4,0xEA,0xD9,0x65,0x1D,0x41,0x41,0xAB,0x1E,0x97,0x6D,0x24,0x43,0xCE,0x5A,0x5C,0xF6,0xEE,0x04,0xAD,0xEA,0x71,0x78,0xBA,0x57,0x34,0x8F,0xD7,0xEE,0x69,0x5A,0xD1,0xC3,0x3F,0x9B,0xBF,0x48,0xA3,0xF4,0x58,0xEC,0xFE,0x6A,0x8D,0x4D,0x62,0x75,0x5A,0x2F,0x09,0x11,0x97,0xBC,0x61,0xBD,0x88,0xDD,0x3C,0xDC,0xC4,0xB5,0xEC,0xDF,0x47,0x98,0x30,0x33,0x05,0x7C,0x8F,0x24,0x80,0x0D,0x39,0xFF,0x1F};
|
||||||
|
//const uint8_t spLIST[] PROGMEM = {0x66,0x19,0x98,0xB2,0x8C,0xDB,0x85,0xB5,0x43,0xEE,0x22,0x5B,0x93,0x96,0x0E,0x75,0x0C,0x63,0x75,0x9B,0x36,0xC3,0x2E,0x96,0xB5,0xA3,0x3F,0x9C,0x3A,0x50,0xDA,0xAE,0xBA,0x9A,0x74,0x15,0x5B,0xB3,0xCA,0x26,0x4B,0x25,0x74,0xCD,0x2A,0xBB,0x2A,0xD1,0xD0,0x35,0xAB,0xAA,0x3A,0x24,0x3C,0x16,0x8F,0xA5,0x58,0x97,0xB0,0x9A,0xD5,0xF6,0x12,0x5D,0x4D,0xBA,0xB4,0x01,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x01,0xF8,0x2D,0xD5,0x01,0xBF,0x94,0x19,0xE0,0xE7,0x32,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x14,0x30,0xA4,0x1B,0x03,0x36,0x57,0xFB,0x7F};
|
||||||
|
//const uint8_t spAPPROACH[] PROGMEM = {0xA9,0xCA,0xBA,0xCB,0x4D,0xB7,0x9C,0xA9,0x88,0x69,0x71,0xDB,0x7A,0x86,0xAC,0x37,0xC5,0x6D,0xF3,0x18,0x92,0x19,0x37,0x97,0xDE,0xB6,0x46,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x10,0x10,0x98,0xA9,0x02,0x72,0x30,0x2B,0x49,0x0E,0x11,0x16,0xA6,0x64,0x64,0xB1,0x6A,0x4A,0x72,0x96,0x95,0x67,0x15,0x6D,0x21,0xE9,0x57,0x5E,0x44,0xA7,0x25,0xF6,0x5D,0x79,0xE1,0x9D,0x1A,0xD8,0x77,0x64,0x91,0x77,0x69,0x48,0x36,0x97,0x99,0xE4,0x16,0x11,0x99,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x02,0xCC,0xAA,0xAA,0x80,0xD9,0x3A,0x1D,0x30,0xFB,0x4C,0x00,0x56,0x9F,0x72,0xC0,0x6C,0x33,0x01,0x98,0x7D,0x2A,0x00,0xB3,0x75,0x2A,0x60,0xF6,0x2D,0x06,0x8C,0x36,0xF5,0xFF};
|
||||||
|
//const uint8_t spDEPARTURE[] PROGMEM = {0x0A,0x28,0x30,0x6C,0x0C,0x4B,0x86,0xA3,0xD9,0xEA,0xD5,0x4D,0xE5,0xCA,0x6E,0x5B,0x56,0x37,0x6C,0x08,0x9B,0x6F,0x59,0x5D,0x31,0x26,0xE6,0xD1,0x09,0x81,0x53,0x94,0xAA,0x50,0x0D,0x20,0x80,0x37,0x2E,0xAD,0x09,0xF1,0xD8,0xDD,0x35,0xAD,0x22,0x8E,0xD2,0x4C,0xEE,0xB2,0x8A,0x14,0x56,0x7C,0xA9,0xCF,0xCA,0x72,0x1A,0xAE,0xA6,0xCD,0x2D,0x2B,0x35,0xB0,0x53,0x72,0x95,0xAC,0x66,0x56,0x71,0x4D,0x85,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x10,0x60,0x56,0x55,0x05,0xCC,0xD6,0xE9,0x80,0xD9,0x67,0x46,0x53,0x3A,0x53,0x94,0x75,0x2D,0x6D,0x1E,0x4C,0x95,0xFC,0xB9,0x8D,0xB9,0x28,0xC6,0x70,0x9F,0x36,0x97,0xAC,0xE8,0x63,0xF9,0xD2,0x5A,0x3A,0x4A,0x78,0x6C,0x65,0x87,0xD1,0xE2,0xEB,0x19,0xF3,0xFF,0x01};
|
||||||
|
//const uint8_t spCLEARANCE_DELIVERY[] PROGMEM = {0x02,0xC8,0x71,0xD2,0x03,0x06,0x18,0xCA,0xA7,0x25,0x95,0x44,0x9B,0x59,0x92,0x95,0x55,0x1B,0x6E,0x26,0x6B,0x56,0xDE,0x42,0x09,0x05,0xAF,0x5D,0x79,0x33,0xA5,0xD8,0xBA,0x6D,0xE4,0x39,0x71,0x58,0x4A,0xB7,0x96,0xA5,0x4A,0xE9,0x12,0xCE,0x46,0x96,0x8B,0x94,0x58,0xB8,0x5D,0x69,0x0E,0x5A,0xEA,0x91,0x7A,0xA5,0xC5,0xBA,0x7B,0xF8,0xA2,0x96,0x65,0x29,0xD9,0xE2,0x71,0x43,0x5A,0x04,0xD6,0x8A,0x25,0x49,0xC5,0x12,0x26,0xAA,0xE6,0xC4,0x00,0x3F,0x84,0x58,0xC0,0x01,0x7F,0x66,0x18,0xE0,0x19,0x57,0x04,0x4E,0x51,0xAA,0x42,0x35,0x20,0x00,0x4B,0x84,0xAF,0x62,0x09,0x0D,0x0E,0xE9,0xBB,0xB2,0xC6,0x22,0xC4,0x65,0xCB,0x28,0x26,0x96,0x31,0xB2,0xAD,0xAD,0x9C,0x50,0xD7,0xC0,0xB6,0xAC,0x62,0x62,0x6D,0x13,0x6D,0xBB,0xF2,0x26,0xCB,0x55,0x75,0xF5,0xCA,0x9B,0x2A,0xE3,0xB0,0x35,0x2B,0x2F,0xAE,0x94,0x53,0xDA,0xA4,0x22,0x59,0x0D,0x0D,0xB5,0xA3,0xFA,0xA0,0xCB,0xC5,0x5C,0x89,0x5A,0x12,0x0B,0x77,0x73,0x55,0x61,0x0F,0x93,0x2D,0x52,0xB5,0xA6,0x29,0x0E,0x2C,0x2D,0xCE,0xD2,0x96,0xDC,0x38,0xB9,0xA5,0xCB,0x58,0x73,0x52,0xB3,0x8C,0xAE,0x63,0xAF,0xAE,0x48,0xCB,0x37,0x8F,0xBB,0x59,0xC7,0xA8,0xD8,0x5C,0x9E,0x61,0x82,0xA4,0x7C,0x75,0xFA,0xBB,0x74,0x92,0xCD,0x55,0xE1,0xEF,0xDA,0x50,0x27,0x5F,0xA5,0x7F,0x8C,0x60,0x56,0xDF,0x6A,0xFE,0x3E,0xD9,0xD5,0x72,0xD2,0xFF,0x03};
|
||||||
|
//const uint8_t spFUEL[] PROGMEM = {0x04,0x98,0xB6,0x52,0x00,0xCD,0x85,0x29,0x60,0xF8,0x32,0x01,0x0C,0xDF,0xC1,0x01,0x97,0xCE,0xB1,0x29,0x81,0x8C,0x4B,0xDE,0x93,0x22,0x85,0xAF,0x19,0xF9,0x70,0x41,0x58,0xB6,0x75,0xA4,0x9D,0x9A,0x49,0x71,0xB7,0x96,0x16,0x5A,0x21,0x01,0x79,0x5A,0xDA,0x70,0x94,0x37,0xF8,0x2B,0x79,0xA6,0x51,0x55,0x90,0xB7,0xE4,0x99,0x59,0x77,0x90,0xB7,0x56,0x55,0x2A,0x3D,0x49,0xEA,0x5A,0x5D,0xA9,0xCC,0x04,0xBA,0x6B,0x6D,0xA5,0x3C,0xE3,0x98,0xAE,0xF4,0x95,0xC9,0xB6,0x60,0x97,0xD4,0x17,0x2A,0x5B,0x8C,0x5D,0xD2,0x98,0x49,0xF4,0x10,0x77,0x0E,0x63,0x05,0x55,0x25,0xB8,0xFB,0xFF,0x01};
|
||||||
|
//const uint8_t spIDLE[] PROGMEM = {0x61,0x89,0xEE,0x3C,0xD2,0x57,0xB7,0x3E,0xAB,0x0B,0x2B,0xDB,0xBC,0xDA,0x1C,0x56,0xA3,0x7C,0xF1,0xAA,0x4B,0x4C,0x4B,0xF3,0xC5,0xAB,0xAC,0x21,0x29,0xD3,0x57,0xAF,0xB2,0x87,0x42,0x0F,0x5F,0x32,0xCA,0x1A,0x9D,0xDC,0xBC,0xB5,0x02,0x0A,0x0C,0x1B,0x53,0xB6,0xAE,0xC9,0xDE,0x79,0x8D,0x1D,0x55,0x46,0x70,0x9F,0x31,0x0F,0x50,0x95,0x41,0x79,0xDB,0xD6,0x41,0x75,0x3B,0xF9,0x6B,0x47,0x26,0xDB,0x25,0x9C,0x25,0xDD,0x89,0x7F,0x05,0x73,0x9F,0x70,0x07,0x73,0xE9,0x64,0xBD,0xC3,0x1F,0xCC,0x56,0xB0,0x74,0x72,0xBF,0x77,0x17,0x22,0xDE,0xE9,0xFF,0x01};
|
||||||
|
//const uint8_t spINCREASE[] PROGMEM = {0xAD,0x6F,0xD4,0xC4,0x2F,0x63,0xAD,0x7E,0xEA,0x60,0xEA,0x58,0xBD,0xFA,0xE1,0x92,0x25,0xE3,0xD1,0xEA,0xBA,0x31,0xF6,0xB4,0x59,0xA5,0xAB,0x06,0xB3,0x5C,0x9D,0x94,0xAE,0x6A,0xF2,0x49,0x51,0x12,0xFA,0xA4,0xA8,0x57,0x45,0x29,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x40,0x80,0xDC,0x57,0x05,0x90,0x72,0x99,0x02,0xF2,0xA8,0x68,0x69,0x2A,0xEC,0x52,0xD6,0x75,0x65,0x25,0xAA,0x4A,0xCA,0xD6,0x95,0xF4,0xEC,0xC2,0x2E,0x6B,0x46,0xDC,0x13,0x91,0x47,0x2D,0x29,0x71,0x73,0x28,0x99,0xB3,0xA4,0x44,0x53,0x28,0x49,0x7A,0x17,0x05,0x3C,0xE3,0xAA,0x80,0x9F,0x52,0x0C,0xF0,0x5B,0xA9,0x05,0x0C,0xF0,0x5B,0x2A,0x03,0x7E,0x29,0xFB,0x7F};
|
||||||
|
//const uint8_t spUP[] PROGMEM = {0x69,0x2C,0x6A,0x32,0xCC,0x97,0xAC,0xA1,0xC8,0x4D,0x37,0x5F,0xB3,0xFA,0xA2,0x36,0x42,0x63,0xC9,0x6A,0x93,0x9B,0x08,0xCD,0x25,0xAB,0xCD,0x76,0x32,0x25,0x96,0x94,0x21,0x96,0x4A,0x97,0xB9,0xE3,0xA6,0xD0,0x3D,0x2C,0xF6,0x0A,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x00,0x00,0x04,0x70,0x2E,0x44,0x00,0x39,0xB9,0x23,0x20,0x35,0xD7,0xFF,0x07};
|
||||||
|
//const uint8_t spTAXI[] PROGMEM = {0x0A,0xD8,0x5C,0x4D,0x03,0x23,0xA8,0xD6,0x34,0x2C,0x1A,0xAD,0xAA,0x84,0xB4,0x48,0x5F,0xB2,0x9A,0xAA,0xDB,0xBD,0x75,0xCD,0x6A,0x9A,0x6D,0x8D,0xB6,0xD5,0xAB,0x69,0xA5,0xA8,0x3C,0x1A,0x81,0x02,0x6A,0x28,0x33,0xC0,0x4B,0xE5,0x0E,0x78,0xCE,0x4C,0x01,0xAF,0x86,0xA7,0xE2,0x59,0x37,0x96,0x70,0xD3,0xCA,0x6E,0x9D,0xD4,0xED,0x4D,0xAB,0xBA,0x36,0xD4,0x8A,0x37,0xAD,0x1C,0x4E,0xD1,0xAB,0x16,0xB7,0x72,0x78,0x81,0xC8,0x9A,0x5D,0xCA,0xE1,0x15,0xA2,0x66,0x51,0x2A,0x46,0x50,0xF0,0x98,0xC5,0xA1,0x68,0x8A,0x79,0xB2,0x43,0xA9,0xA2,0x7B,0x45,0x31,0x8F,0xFD,0xFF};
|
||||||
|
//const uint8_t spAS[] PROGMEM = {0x63,0xAF,0x26,0xC4,0x33,0x6B,0xAF,0xB9,0xCA,0x92,0xEC,0xB8,0xB5,0xE6,0x66,0x4A,0xBC,0xFC,0xF1,0x9A,0xBA,0x6A,0xF1,0xF2,0xC7,0x6B,0x6A,0xB2,0x25,0xD2,0x1F,0xAD,0xB1,0xAA,0xE2,0xB0,0xBC,0xDD,0xE6,0xA2,0x42,0x82,0x73,0x51,0x59,0x16,0x35,0x35,0xD7,0xBE,0x0E,0x58,0x80,0xDC,0x00,0x9F,0x22,0xFF,0x3F};
|
||||||
|
//const uint8_t spCONVERGING[] PROGMEM = {0x0C,0x28,0x65,0xCD,0x03,0xAD,0x28,0xB1,0x99,0xC2,0x1A,0xAD,0xB2,0xEA,0x32,0x4D,0xDD,0xB2,0x9A,0x46,0x33,0xB4,0x6D,0x75,0x6B,0xAA,0x22,0xDD,0xE4,0xBA,0xA3,0x6B,0x82,0x65,0x42,0xE2,0x8D,0xAE,0x72,0xD5,0x74,0xA9,0x92,0xC6,0x68,0x4C,0xD3,0xC4,0xA9,0x59,0xBD,0x2A,0xD3,0x74,0x27,0x65,0x6B,0x3A,0x4C,0x45,0x1D,0xB7,0x3E,0xC5,0xA4,0x28,0xCE,0xBA,0xDA,0x94,0x03,0x63,0x28,0xEF,0xAA,0x8A,0x5B,0xC6,0x53,0xFD,0xAB,0x6C,0x6A,0x1D,0x46,0xB5,0xAF,0xA2,0x74,0x23,0x0D,0xCD,0x5E,0xAA,0x3A,0x48,0x84,0x23,0x59,0x68,0x9A,0x62,0x11,0xCF,0x2C,0x09,0x98,0x82,0x69,0xD5,0x2B,0xA5,0x90,0xA9,0xB7,0x55,0x34,0x6B,0xC2,0x15,0xAD,0x57,0x31,0x62,0x08,0xA5,0xAD,0x19,0x65,0x6F,0x42,0x9A,0x3E,0x6B,0x94,0xCD,0x61,0x66,0xB8,0xD9,0x51,0x56,0x4D,0x95,0x66,0x6A,0x5A,0x59,0x25,0x55,0x9A,0xA9,0xF9,0x7F};
|
||||||
|
//const uint8_t spABOVE[] PROGMEM = {0x6D,0x89,0x6E,0x33,0x43,0x5B,0xAD,0x29,0xEB,0x09,0x77,0xDB,0xB4,0xA6,0x2C,0x27,0x2D,0xB4,0x73,0x1A,0xA3,0x2A,0x37,0xA1,0x9D,0x66,0x51,0xBE,0x54,0xCC,0x5B,0x99,0xC5,0xD8,0x52,0x15,0xDF,0x64,0x56,0x61,0xCA,0x45,0xBD,0xF5,0xEA,0x1A,0xAF,0x0A,0xA3,0x2C,0xAB,0x2B,0x72,0xCA,0x54,0x36,0xAF,0x2E,0xEB,0x4D,0x67,0xDB,0xB4,0xBA,0x6C,0x36,0x82,0x6D,0xD5,0x6A,0xB3,0xBC,0x70,0xB6,0x4D,0xAB,0x4D,0xB6,0xC2,0x59,0x17,0xA5,0x2E,0xE9,0xF4,0x60,0x69,0xE9,0xE6,0xCC,0xC2,0xCC,0xC4,0xB5,0x5B,0xB7,0x0D,0x13,0x61,0x25,0xFF,0x0F};
|
||||||
|
//const uint8_t spBRAKE[] PROGMEM = {0x6C,0xE5,0x7C,0xBC,0x3D,0x2D,0x91,0x8D,0xA8,0xC9,0x34,0x77,0x64,0x36,0x4F,0xD2,0xDD,0xC3,0x49,0x39,0x62,0x08,0x97,0x14,0xE5,0x63,0x88,0xC5,0x4C,0x93,0xDD,0xAF,0x3E,0x35,0x0B,0x4D,0xCA,0xBE,0xDA,0x1C,0x52,0xB5,0xAD,0xFB,0x6A,0x9B,0x2E,0xE5,0xD5,0x2D,0xAB,0x19,0xB2,0x94,0xC6,0xB7,0xAC,0x66,0xD8,0x64,0x6E,0x5B,0xBD,0x9B,0xD2,0x0C,0x1B,0x44,0x13,0xAF,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x10,0x40,0x9D,0x43,0x0C,0xA8,0xCB,0x98,0x03,0xFF,0x0F};
|
||||||
|
//const uint8_t spCALM[] PROGMEM = {0x06,0x28,0x2D,0xC9,0x00,0xA5,0x3B,0x2B,0x20,0x16,0xE6,0x51,0x25,0xB7,0xA1,0xA9,0x99,0x4F,0x9D,0xCD,0x96,0x24,0x77,0x59,0x4D,0xE1,0xDB,0x5C,0xDA,0x65,0x34,0xC9,0x5C,0x71,0xD9,0xAA,0xD1,0x46,0x77,0x29,0xE5,0x8D,0x5B,0x17,0xE2,0x85,0x74,0x34,0x1E,0x73,0x0C,0xE7,0xDA,0xD1,0xA8,0x1C,0x21,0x9D,0x4B,0x47,0xE3,0x72,0x86,0x78,0xA1,0xE5,0x8D,0xCB,0x15,0xF2,0xB9,0x94,0x37,0x2E,0x57,0x8C,0x1B,0x16,0xDA,0xBA,0xDC,0x99,0x6F,0x84,0x49,0x92,0xF4,0x14,0xC5,0x96,0xA9,0xB1,0xD3,0x9B,0x15,0x7B,0x85,0xC9,0x49,0x67,0x55,0x1A,0x89,0xA6,0x24,0x9F,0xE9,0x6A,0x86,0xD2,0xC4,0x94,0xA4,0xAB,0x19,0x8E,0x64,0x95,0xF3,0xFF};
|
||||||
|
//const uint8_t spBREAKING[] PROGMEM = {0x04,0x50,0xD6,0x2C,0xB5,0xA1,0xB8,0x5A,0x9A,0xFB,0x35,0xE4,0x14,0x21,0x69,0xEA,0x57,0x97,0x8B,0x87,0x84,0xE5,0x5B,0x6D,0x33,0xC9,0xD6,0xB6,0x65,0xD5,0x23,0x14,0x72,0xD9,0xEA,0x52,0x8D,0x2B,0x24,0x92,0x4B,0x58,0xD3,0x85,0x92,0x86,0xB9,0x26,0xC0,0xB4,0xCA,0x0E,0x98,0x4C,0xA4,0x24,0x3B,0x36,0x2B,0xAB,0xD3,0x55,0x8E,0xC4,0xA4,0xD5,0xB3,0x47,0x3D,0x22,0x51,0x74,0x95,0x1E,0x75,0x0F,0x68,0x5D,0x66,0x76,0xD4,0xDD,0x60,0x64,0xA8,0x9A,0xD1,0x0C,0x8B,0x9E,0x69,0x4A,0x5B,0xDB,0x35,0x66,0xBA,0x39,0x69,0x43,0xD3,0x18,0xE3,0xAA,0x34,0xB5,0x4D,0xA3,0x6D,0x85,0x99,0xFF,0x07};
|
||||||
|
//const uint8_t spCALL[] PROGMEM = {0x0C,0x48,0xE9,0x59,0x00,0xD9,0x3D,0xB5,0xBD,0xE8,0x55,0x33,0x69,0xBC,0xDA,0x64,0xD6,0xC2,0x24,0xD7,0xE8,0x83,0xDF,0x34,0xD7,0x3E,0x63,0xF4,0x71,0xC3,0x42,0xB3,0xB6,0xC9,0xD7,0x75,0x73,0xEB,0xDA,0x56,0x5F,0x36,0x5C,0xAD,0x6F,0xDB,0x7C,0x9E,0x4C,0xF1,0x5C,0x65,0x0F,0xAD,0xD3,0xD9,0x7A,0x96,0xDD,0xED,0x51,0x97,0xEE,0x95,0x0E,0xB7,0xC7,0x5C,0x7A,0x77,0x3A,0xDD,0x1E,0x0D,0xDE,0x4D,0xE9,0xB2,0xFD,0xD4,0xA4,0x77,0xA7,0xCB,0x97,0xAE,0x80,0xDC,0x9D,0xEE,0xE0,0x6A,0x95,0x35,0x4B,0x7A,0x82,0xD9,0x68,0x90,0x2E,0xFF,0x0F};
|
||||||
|
//const uint8_t spCROSSWIND[] PROGMEM = {0x08,0x08,0x75,0x85,0x01,0xC1,0x6F,0x38,0xA0,0xEA,0xE2,0x92,0x66,0x5F,0xA9,0x56,0x72,0x47,0x19,0xAA,0x95,0x16,0xB7,0x5E,0x75,0xC8,0x55,0x1E,0xD2,0x6D,0x35,0xD1,0x5E,0x69,0x72,0x97,0x55,0x47,0xFD,0x29,0x29,0x9B,0x47,0x15,0xC2,0xAB,0xA5,0x6F,0x2A,0x55,0xC8,0xAD,0x25,0xD1,0x48,0x01,0x7F,0x19,0x79,0x20,0x00,0xBF,0x85,0x18,0xE0,0xBF,0x10,0x03,0x14,0x5D,0x65,0x0A,0x67,0xC6,0x2D,0x25,0x89,0x99,0x9C,0xB8,0xC1,0xE0,0xC4,0x69,0xF0,0x62,0x8B,0x93,0xBB,0xAC,0xBE,0xB0,0x72,0x6A,0xD9,0x72,0xBA,0x26,0x43,0x75,0x64,0xD1,0x6A,0x1B,0x77,0xD3,0xB5,0x59,0xAB,0x2D,0xD2,0xCD,0xC7,0x2A,0x8D,0xB6,0x49,0x89,0x50,0xAF,0x3A,0xDA,0x26,0xD9,0xD3,0x2D,0x6E,0xE9,0x9A,0xC6,0xE8,0x30,0x7B,0xAE,0x4B,0x02,0x27,0xC5,0x93,0x94,0x71,0x47,0x0B,0x15,0x71,0xD2,0x86,0xC1,0xDC,0xC4,0xAC,0xF7,0xFF,0x03};
|
||||||
|
//const uint8_t spCRYSTALS[] PROGMEM = {0x08,0x88,0x5B,0x4A,0x00,0x39,0x67,0x96,0xAC,0xA4,0x70,0x11,0xF5,0xB2,0xAA,0x12,0x25,0xC4,0xAD,0xCB,0xAA,0xAB,0x2C,0xD1,0xB4,0x35,0xAD,0x6D,0x22,0xC4,0xC5,0x3B,0x05,0xE0,0x59,0x31,0x05,0xBC,0x97,0xCC,0x80,0x1D,0x19,0x15,0x70,0x92,0x49,0x89,0x7F,0xF0,0x0C,0x55,0xA7,0xAD,0x2A,0x34,0x53,0x5C,0xD6,0xB4,0xB6,0x21,0x1F,0x0B,0xEA,0xD2,0xDA,0x8A,0x7C,0xDC,0xA8,0x4B,0x6B,0x1B,0xF2,0x71,0xC5,0x3E,0xAD,0xCD,0xA4,0xCA,0x59,0x5A,0xA7,0xAE,0xC1,0x8C,0x10,0xC9,0x93,0xD6,0x4B,0x42,0xC4,0x25,0xAF,0x02,0xBE,0x47,0x12,0xC0,0x86,0x9C,0x0A,0xF8,0xD9,0xFC,0xFF,0x01};
|
||||||
|
//const uint8_t spCYLINDER[] PROGMEM = {0x0C,0xF8,0x8E,0x59,0x00,0x7F,0x06,0x29,0xE0,0x37,0x47,0x03,0xFC,0x1E,0xE2,0x80,0x5F,0x43,0x02,0xF0,0x6B,0xB0,0x03,0x7E,0x15,0x5D,0xC9,0xA4,0xE6,0xE2,0x9E,0x65,0x95,0x4D,0x94,0x73,0xE8,0x9A,0x55,0x77,0x5A,0xCD,0x6E,0x5B,0x57,0x7D,0x28,0x55,0x87,0x38,0x1B,0x75,0x43,0x5D,0x6E,0xE2,0x66,0x95,0x45,0x4C,0x98,0x59,0xCB,0x55,0x36,0x3C,0x1E,0xA6,0xAD,0x5A,0xD5,0x14,0x46,0x6B,0xB0,0x29,0x75,0x95,0x18,0x6D,0xA6,0x2C,0xD5,0x45,0x60,0xAC,0xB1,0xF3,0xD2,0x8C,0xC0,0xC6,0x26,0x49,0x5B,0x55,0x5D,0x08,0x65,0x74,0x19,0x65,0x49,0x81,0xDA,0xDC,0x65,0x94,0x25,0x35,0xCA,0x72,0x9E,0x56,0x96,0xDC,0x20,0x47,0x79,0x5A,0x59,0x7C,0x23,0x1F,0xE7,0x09,0x79,0x8A,0xC2,0x5B,0xBE,0x2A,0x0D,0x25,0x28,0x8F,0x57,0xAD,0xFF,0x07};
|
||||||
|
//const uint8_t spCYCLE[] PROGMEM = {0x08,0x78,0x1C,0x51,0x00,0x3F,0x0B,0x29,0xE0,0xB7,0x52,0x05,0xFC,0xE2,0xEA,0x80,0xDF,0x8D,0x1D,0xF0,0x93,0xE9,0x8A,0xAB,0xA8,0x30,0x97,0x36,0xAB,0x4E,0x7E,0x4C,0x33,0x36,0xAF,0xBA,0x84,0x32,0x77,0x5F,0xBD,0xAA,0x1A,0x5C,0x33,0x72,0xD1,0xA8,0x5A,0x11,0x09,0xCB,0x4A,0xAE,0xA9,0x0E,0xA5,0x3D,0x22,0x81,0x00,0x72,0x5A,0x1E,0x43,0x12,0x13,0xE1,0xD2,0x79,0xCC,0x89,0x5F,0xBB,0xAA,0xB7,0xB6,0x16,0xB4,0x13,0x22,0xD9,0xCB,0x5A,0xD0,0x4C,0x0A,0x67,0x2B,0x7B,0xA6,0xD5,0x25,0x94,0xD5,0x1D,0x89,0x7A,0xAE,0x48,0xDA,0xFF,0x07};
|
||||||
|
//const uint8_t spDOWN[] PROGMEM = {0x02,0x28,0x30,0x6C,0x55,0x4D,0x25,0xAB,0xF9,0xEA,0x55,0x57,0x9B,0xA2,0x6E,0x6B,0x56,0x53,0x74,0xAA,0xB7,0xAF,0x5E,0x4D,0xD5,0x6D,0xD6,0xBA,0x78,0x75,0xC5,0xB6,0x79,0xEB,0xE2,0x35,0x64,0x3B,0xA6,0x63,0x4B,0xF6,0xB0,0x96,0xEC,0xD6,0xB4,0x6D,0xC9,0xDA,0x52,0x58,0xD3,0xB6,0xC5,0x6D,0x4B,0xFE,0x4C,0xDA,0x17,0x97,0x3D,0xB4,0xB6,0x48,0x9F,0x5C,0x8E,0x2C,0x2D,0x47,0xC2,0x76,0x3D,0xCB,0x59,0xB9,0xDA,0x68,0x4A,0x2D,0x57,0xB7,0xAC,0x25,0xE1,0xE4,0xFF,0x01};
|
||||||
|
//const uint8_t spGROUND[] PROGMEM = {0x02,0x28,0xBD,0xD4,0xEC,0xC1,0x97,0x99,0x99,0xAB,0x31,0xA4,0xAC,0x69,0xAE,0xF6,0x56,0x97,0x8A,0xA6,0xA5,0x24,0x5F,0x5D,0x6A,0x96,0xEE,0xD6,0x76,0xB5,0xA9,0xA6,0x87,0xFB,0xE6,0xD5,0x64,0xBF,0xEA,0xA9,0x8B,0x57,0x9D,0xE2,0x8A,0x87,0x2F,0x59,0x55,0x8C,0x6D,0xEE,0xB9,0x64,0x94,0xD1,0x75,0x94,0x66,0xAB,0x56,0x55,0xC9,0xD9,0xEC,0x8E,0x43,0x9D,0x25,0x8D,0xB3,0x64,0x11,0x43,0xE0,0xE1,0x21,0x19,0x53,0x0E,0x61,0xEF,0xCE,0xC8,0xC5,0xB6,0xFC,0x3F};
|
||||||
|
//const uint8_t spFULL[] PROGMEM = {0x04,0xA8,0x4C,0x85,0x00,0xC3,0x56,0x10,0x60,0xFA,0x0A,0x01,0x4C,0x97,0xAE,0x80,0x66,0xCB,0x5A,0xD9,0x44,0xA4,0x9B,0xD9,0x19,0x55,0x12,0x3D,0x26,0xD4,0x75,0x56,0xAB,0x2A,0x34,0xD7,0x19,0xBB,0xAD,0xAA,0x11,0xDB,0x14,0xCC,0x36,0xCA,0x4E,0x78,0xDA,0xD1,0xFD,0x28,0x1B,0x91,0x69,0x43,0xF7,0xAD,0xCA,0x4C,0x37,0x99,0xD3,0x95,0x2A,0x4B,0x5D,0x27,0x71,0x57,0x2B,0xD7,0x78,0x6B,0x29,0x52,0x4E,0xFF,0x1F};
|
||||||
|
//const uint8_t spNEW[] PROGMEM = {0xA9,0x2F,0x12,0x27,0x44,0xDC,0xA6,0xA1,0x29,0x18,0x0F,0x4D,0x1C,0x86,0x24,0x78,0x45,0x34,0x75,0x1A,0xAA,0xC4,0x71,0xD5,0xD8,0xAD,0x2F,0x0A,0xDB,0xCD,0x62,0xAF,0xAE,0x1B,0x33,0x0A,0x7B,0xBC,0xEA,0x6E,0x4D,0x39,0xE4,0xC9,0xAA,0x9B,0x52,0x95,0x92,0xD5,0xAD,0xCD,0xDC,0xDC,0x4B,0x3E,0x95,0x21,0xCA,0x70,0x0F,0x7D,0x1D,0x16,0xA7,0x33,0xCA,0xE4,0x91,0xDB,0xBC,0x2C,0x0F,0xA7,0x2F,0xEE,0xF0,0xB2,0xDD,0x9D,0xD6,0xA8,0xCB,0xCB,0x71,0x73,0x5A,0x63,0x5E,0x2B,0x26,0x32,0xA8,0xAD,0xFA,0x9C,0x19,0x37,0x95,0xAC,0xE6,0xF7,0xBE,0xDC,0x55,0xD3,0x9A,0xDF,0xA9,0xF1,0x30,0x49,0x6A,0x7E,0xAF,0xDB,0x42,0x79,0x8D,0xF9,0x43,0x76,0x73,0x8A,0x35,0xFF,0x0F};
|
||||||
|
//const uint8_t spLEG[] PROGMEM = {0xA9,0x1F,0x40,0x26,0x84,0xDC,0xA6,0x61,0x00,0xDD,0x42,0xCA,0x5A,0xFA,0x01,0x75,0x1D,0xA4,0xC9,0xEA,0x2B,0xAB,0x32,0xB5,0xD5,0xAB,0x6D,0xA2,0x43,0xDD,0x56,0xAF,0xAE,0xC8,0xB4,0xA8,0x58,0xBC,0x86,0x2A,0x4B,0xBD,0x72,0xF1,0x9A,0xAB,0x4A,0x89,0xCA,0xC7,0xE3,0x6C,0x36,0xC9,0x2A,0x16,0x97,0xAB,0x05,0x47,0xEF,0x78,0xE4,0x9E,0xDE,0x19,0xBC,0x62,0x96,0x78,0xB2,0x62,0xDA,0x35,0xCB,0xEC,0x09,0x42,0x7D,0xDB,0x64,0x93,0xD7,0x53,0xCF,0x4E,0x93,0x42,0xDE,0x8A,0x55,0x2C,0x22,0x71,0xFA,0x46,0x3C,0x33,0x33,0xDB,0xE9,0xAB,0x81,0xA9,0x22,0x17,0x87,0xAF,0x45,0xC5,0x8C,0x5C,0xF4,0xFF};
|
||||||
|
//const uint8_t spMAINTAIN[] PROGMEM = {0xAD,0xCD,0xDC,0xA4,0xDD,0xE2,0x94,0x21,0x73,0x93,0x76,0x8D,0xB3,0xFA,0x1A,0xD5,0xCC,0x7C,0xC9,0xEA,0xBB,0x4F,0x91,0x8C,0xC7,0xAB,0x1B,0x2E,0x59,0x3A,0x1E,0xAF,0x66,0x84,0x24,0xE9,0x98,0x35,0xEA,0xE1,0x1D,0x75,0x7D,0xE2,0xA8,0x9B,0x26,0xEF,0xB0,0xB8,0xAD,0x29,0x92,0x7C,0xDC,0xEC,0xA6,0x36,0x4B,0xAC,0x70,0x77,0x6C,0xFA,0x26,0xB1,0x3C,0x58,0x49,0x00,0xA6,0x49,0x4F,0xC0,0xB5,0xED,0xAD,0xEA,0x26,0x98,0xAD,0x66,0xAF,0xBA,0x7B,0x17,0xF1,0x58,0xB2,0xEA,0x61,0x4B,0x29,0xED,0xCD,0xEA,0xBA,0x0C,0x91,0xCD,0xC5,0xAB,0x1F,0x26,0x45,0xC6,0x1F,0xAD,0x7E,0xDA,0x64,0x1E,0x5F,0xB4,0xFA,0xE9,0x92,0x64,0x63,0xE6,0xEA,0xA6,0x0E,0xD6,0xF3,0x8A,0xAB,0x1B,0xCA,0xD8,0xD7,0x46,0xB5,0xAE,0x19,0x8C,0x72,0xB3,0xDB,0xFA,0xA6,0x29,0xDA,0xCC,0x6E,0xE9,0x9B,0xC1,0x0C,0x73,0x55,0xAD,0x6F,0xC1,0x55,0x25,0x6A,0x86,0xA1,0x28,0xD5,0x10,0x8F,0x6C,0xFA,0xEA,0x54,0x95,0xBD,0xF2,0xFF,0x03};
|
||||||
|
//const uint8_t spLANDING[] PROGMEM = {0x61,0x1B,0x88,0x67,0x05,0xBB,0x84,0x35,0x91,0x5A,0x45,0x5B,0xBA,0x96,0xAC,0xBB,0xD4,0x75,0xF3,0x1A,0xAB,0x6A,0xD7,0xB0,0xC5,0x6B,0xA8,0x36,0xD5,0x33,0x1E,0xAF,0xAA,0x3A,0x97,0xCA,0x9C,0xBD,0x8A,0xE6,0x83,0x33,0x6B,0xF2,0xCA,0x8B,0x0B,0x29,0xAF,0xCA,0x23,0x6B,0x86,0x32,0x35,0x55,0xB5,0x7C,0x78,0xCC,0x32,0x67,0xE5,0xAA,0x2A,0x50,0x9E,0xC3,0x75,0x19,0xB6,0x4D,0x53,0x56,0x3B,0xAB,0x6E,0xCE,0x4C,0xA4,0xE7,0xAC,0xB6,0x7B,0x67,0xB6,0xBE,0xB3,0x86,0x69,0x93,0x39,0xE3,0xF1,0x1A,0x87,0x77,0x94,0x89,0x99,0x65,0xEA,0x1E,0x6D,0xD2,0x82,0xB5,0xB9,0x1B,0xF2,0x0A,0xB1,0x5B,0xD6,0x6E,0xC9,0x2A,0xD5,0x6A,0x59,0xBB,0x26,0xAB,0xD4,0xA8,0x61,0xAD,0x92,0xBC,0x8B,0xAD,0x99,0x23,0x61,0xB3,0x0D,0xB6,0xFB,0xFF};
|
||||||
|
//const uint8_t spLEAN[] PROGMEM = {0x61,0x1B,0x88,0x67,0x05,0xBB,0x84,0x35,0x91,0x5A,0x45,0x5B,0xBA,0x9A,0xC6,0xC3,0x44,0xAD,0xCB,0x2A,0xAA,0x56,0xD5,0x8C,0x27,0x2B,0x1F,0x5E,0x99,0x33,0x9E,0xAC,0x6C,0xE6,0x60,0x8C,0x98,0xBD,0xF2,0x99,0x8C,0xB8,0x73,0xD4,0xAA,0x87,0x17,0xB2,0x8D,0x20,0x63,0x18,0x46,0x28,0xCE,0xC3,0xB4,0x71,0x3A,0x45,0x3F,0x37,0xD3,0x96,0xE9,0x85,0xEC,0xC2,0x4C,0xDB,0x87,0x65,0xB6,0x75,0xD3,0xE5,0x18,0x51,0xD8,0x26,0x4A,0xA5,0x67,0x44,0x74,0x6F,0x75,0x9C,0xDE,0x11,0xD1,0xBD,0xD4,0x71,0x7A,0x47,0xA4,0x70,0x75,0x55,0xE9,0x2D,0x32,0x5D,0xCB,0x63,0xFD,0x3F};
|
||||||
|
//const uint8_t spSET[] PROGMEM = {0x08,0xD8,0x84,0x99,0x01,0xCF,0xB8,0x32,0xE0,0xA7,0x14,0x05,0xFC,0x56,0x6A,0x81,0x00,0xFC,0x96,0xEA,0x80,0x5F,0xCA,0x56,0x3E,0x79,0xAA,0xAA,0xB7,0x5E,0x45,0xD3,0xA9,0x6A,0xF9,0x64,0x15,0xDD,0xB4,0x99,0xC6,0x9A,0x55,0xD4,0x50,0x62,0xD6,0xB5,0x4B,0xD6,0x78,0x4B,0x58,0xCD,0x44,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x14,0x30,0x85,0x3A,0x03,0x9E,0xAF,0xF8,0x7F};
|
||||||
|
//const uint8_t spSHORT[] PROGMEM = {0x0C,0x38,0x71,0x54,0x01,0xBB,0x6D,0x19,0x60,0x97,0xEB,0x00,0xEC,0xB2,0x16,0x80,0x95,0x2F,0x02,0x30,0xFB,0xB8,0x03,0x7A,0x0E,0x69,0x45,0xF5,0x1D,0x21,0x22,0xA7,0x95,0xD1,0xB6,0x6B,0xB1,0xF6,0x56,0x87,0xD6,0x62,0xC9,0xDE,0x5A,0x1B,0x46,0x72,0x2C,0x7A,0x6B,0x5D,0x1C,0x81,0x35,0x98,0xA7,0x4C,0xA9,0x3A,0xE6,0xAA,0x1F,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x40,0x01,0x43,0xBA,0x31,0x60,0x73,0x35,0x04,0x4E,0x51,0xAA,0x42,0x35,0xFE,0x1F};
|
||||||
|
//const uint8_t spWAKE[] PROGMEM = {0x62,0x21,0xE9,0x3A,0x54,0x9D,0x88,0x83,0xA4,0xCF,0x10,0x76,0x2C,0x4E,0x52,0x2E,0x83,0xC5,0xB1,0x3A,0x59,0xDD,0x74,0xD6,0x8C,0xEE,0x10,0xB3,0x92,0x45,0x3A,0x8F,0x25,0xC4,0xCC,0x60,0xED,0xB2,0xA6,0xE2,0xC3,0x42,0xFC,0xCD,0xEA,0xAA,0x57,0x49,0xCF,0xC5,0xAB,0xEE,0x41,0x29,0x22,0xAF,0xAC,0x7C,0x14,0x05,0x8F,0xBA,0x9D,0xB2,0xD1,0x09,0x32,0x7A,0xA1,0xA8,0xA6,0x19,0x32,0x55,0x3B,0x08,0x2C,0xAA,0x54,0x85,0x6A,0x00,0x28,0xA0,0x79,0x11,0x0D,0x08,0xA0,0x15,0xE3,0xFF,0x07,0x08,0x9C,0xA2,0x54,0x85,0x6A,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spADIS[] PROGMEM = {0x6D,0xEA,0x36,0x48,0x2A,0x57,0x8D,0x69,0xFA,0x66,0xCC,0x58,0xBD,0xDA,0xE9,0x8A,0x28,0x63,0xCD,0xAA,0x47,0x48,0x94,0x8C,0x25,0xAB,0x1A,0x49,0xD0,0xAC,0x9B,0x80,0x00,0x9E,0x32,0x6D,0x59,0xF3,0x2A,0x26,0xDD,0xB8,0x65,0xD5,0xA9,0xB8,0xCC,0xE2,0x91,0x15,0xE5,0xE2,0xD1,0xB3,0x47,0xD6,0x44,0xB2,0x4A,0xAE,0x32,0xC0,0x33,0xAE,0x0A,0xF8,0x29,0xC5,0x00,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0x32,0x03,0xFC,0x5C,0xF6,0xFF};
|
||||||
|
//const uint8_t spNOTEM[] PROGMEM = {0x66,0x8B,0x52,0xBC,0xCD,0x26,0x85,0x35,0x08,0xC9,0x31,0xAD,0x1C,0x97,0x36,0x77,0xE5,0xA6,0x46,0xAB,0x57,0x9B,0xF5,0x88,0x54,0x2D,0x59,0x55,0x51,0x6D,0x6E,0xBC,0x76,0x15,0xD9,0x94,0xA7,0xF0,0xEB,0x91,0x27,0x93,0xA6,0xA6,0x6B,0x5A,0x9E,0xB2,0x8A,0xA4,0xA7,0x41,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x04,0xF0,0x94,0xA9,0x07,0x56,0x55,0xBD,0x8B,0xA5,0xB7,0x5A,0x4D,0x4B,0xAE,0xE6,0xFE,0x78,0x0D,0xCD,0xA6,0x48,0xDB,0xEA,0xF2,0x24,0x9F,0x11,0xEE,0x8D,0xCB,0x53,0x64,0x7A,0x0A,0x39,0x4D,0x77,0x65,0xE3,0x2E,0x62,0x37,0xDD,0x8D,0xB6,0x96,0x48,0xD4,0x70,0x27,0x5F,0x96,0x6C,0x4E,0xFE,0x1F};
|
||||||
|
//const uint8_t spRVRS[] PROGMEM = {0x65,0x8C,0x79,0x22,0xCC,0x12,0xAF,0x31,0xE9,0x2B,0x4E,0xEB,0xBD,0xC6,0x64,0x2F,0xA5,0xA4,0xCF,0x1A,0x52,0x38,0xF5,0xA1,0xCE,0xAB,0x2D,0xF6,0xC4,0x0F,0x7B,0xAF,0x2A,0xC7,0xC1,0x5E,0xDC,0xB4,0x8A,0x3C,0x12,0xCF,0x79,0x63,0xCB,0x73,0x53,0x5E,0xE7,0x9E,0xA9,0x4E,0x51,0xCD,0x4D,0x9D,0xBA,0x26,0xC9,0xA2,0x30,0xF5,0xE2,0xBA,0xC6,0x4C,0xD4,0x22,0xF1,0xA8,0x9A,0x71,0x52,0xF7,0xBA,0x2B,0xEB,0x51,0xC9,0x3C,0xD6,0xAC,0x6C,0x04,0x43,0x8D,0x5C,0xB2,0xF2,0x61,0x15,0xB4,0x6B,0xF6,0x2A,0x87,0x33,0xD0,0xAE,0x39,0xAB,0xEE,0x46,0xD1,0x27,0x97,0xAC,0xBA,0x1A,0xE7,0x70,0xBF,0xBD,0xDA,0x14,0x93,0xCB,0xE2,0xF6,0xEA,0x62,0x1C,0xC9,0xE2,0x55,0xAB,0x8F,0x69,0x24,0x93,0x5E,0x8D,0x21,0xD6,0x96,0x0A,0x7A,0x35,0xE6,0x58,0xDB,0xA2,0xF8,0xF5,0x98,0x53,0x4D,0x8F,0xE6,0xCD,0x63,0xCF,0xCD,0x3D,0x8B,0x56,0xB7,0x23,0xE7,0xB0,0x18,0xFA,0xDC,0xCE,0xDC,0x42,0xB3,0x69,0x73,0xBA,0x72,0x29,0x8E,0xA1,0xDD,0xE1,0x4A,0xD5,0x78,0x9A,0x3F,0xA5,0x3B,0x25,0xE3,0x59,0xDD,0x1D,0xEE,0x1C,0x9D,0xAA,0xBC,0xB7,0x7B,0x8A,0x0F,0xB2,0x89,0x4C,0xE9,0x29,0x2E,0x89,0xBB,0x5A,0xBB,0xB7,0x7A,0x13,0x93,0x58,0x9C,0xBE,0x63,0xC3,0x8D,0xC4,0x5D,0xFA,0x2F,0x09,0x11,0x97,0xBC,0xE1,0xBF,0x88,0xDD,0x3C,0xDC,0x28,0xE0,0x7B,0x24,0x01,0x6C,0xC8,0x89,0x80,0xE5,0xDD,0xFF,0x1F};
|
||||||
|
//const uint8_t spSQUALKING[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x20,0x70,0x8A,0x52,0x15,0xAA,0x81,0x80,0xC4,0xCC,0x30,0xC0,0x81,0x92,0x79,0xBB,0xA1,0x49,0x59,0x47,0xE9,0xE2,0xA6,0x05,0x65,0x5B,0x65,0x48,0x17,0x12,0xDA,0x77,0x55,0x31,0x9E,0x69,0x5A,0xEF,0x55,0xC7,0xD6,0x16,0x26,0x9D,0x5A,0x97,0xE2,0x72,0x39,0xF7,0x01,0x05,0x54,0x1F,0xAA,0x80,0x6A,0x8D,0x47,0xD3,0xB2,0x90,0x47,0x2E,0x1E,0xF3,0xF0,0x25,0x58,0xF6,0xA6,0xED,0xDD,0x1A,0xEB,0xF9,0xC4,0x70,0x35,0xCB,0x5A,0xCB,0x61,0xC3,0xD5,0x0C,0x67,0xA8,0x39,0x76,0x77,0x31,0xDC,0xAE,0xEA,0xD8,0x3D,0xD5,0x48,0xA5,0x98,0x92,0xFF,0x07};
|
||||||
|
//const uint8_t spMAGNETOS[] PROGMEM = {0x6A,0xD5,0x3A,0xB3,0xD5,0xED,0xBA,0x35,0x08,0xCD,0x0A,0x73,0x9A,0xD6,0xA4,0x38,0xCA,0xDD,0xC9,0x59,0x8A,0x2F,0x97,0x90,0xCD,0x67,0x6A,0xA6,0x5C,0x4B,0xD7,0x9C,0xB1,0xDB,0x72,0x69,0x5D,0x73,0x86,0x6E,0x4A,0x64,0x7D,0xF3,0x19,0x7A,0x59,0xC2,0xD1,0x55,0x6D,0x68,0xD1,0xC0,0x47,0x2A,0xA9,0x51,0x19,0xAF,0x26,0x49,0xAC,0x46,0x27,0xB4,0xDA,0x3D,0x91,0x1B,0x82,0xE0,0x1E,0x35,0xD7,0xAB,0x6D,0x8E,0xC5,0xAD,0x07,0xAF,0xA2,0x07,0x65,0xCB,0x1C,0xBD,0xB2,0x91,0x94,0x34,0x73,0xD2,0xCA,0x46,0x64,0xB2,0xA8,0x59,0x25,0x1F,0x46,0xC9,0x4C,0x3B,0xAF,0xBC,0x6B,0x17,0x53,0x5D,0xB3,0xB2,0xAA,0x52,0xDD,0x74,0xE9,0x2A,0x8A,0x28,0x0B,0x97,0xD7,0xAB,0x2C,0xAC,0xDD,0x43,0x3E,0xEF,0x72,0x55,0x95,0x54,0x5A,0xE8,0xAA,0x55,0x55,0x96,0xAE,0xC2,0x9B,0x47,0x3B,0x84,0x85,0x89,0x78,0x4B,0xEB,0x45,0xEC,0xE6,0xE1,0xA6,0xEC,0xDF,0x47,0x98,0x30,0x33,0x05,0x7C,0x8F,0x24,0x80,0x0D,0x39,0xFF,0x1F};
|
||||||
|
//const uint8_t spSTABILISER[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x30,0xE0,0xFB,0x08,0x04,0x4E,0x51,0xAA,0x42,0x35,0x40,0x00,0x4F,0x99,0xAE,0xA8,0x6B,0x57,0x75,0x5F,0xBD,0xCA,0xEE,0x42,0xC4,0xFD,0xCE,0xAA,0xBA,0x77,0x56,0x8F,0x39,0xA3,0x6A,0xCE,0xD9,0xDC,0x17,0xBB,0xDA,0xA8,0x8C,0x70,0x6E,0xC5,0x7A,0xE6,0xDA,0xCC,0x23,0xF5,0x98,0x92,0xEC,0x54,0xD3,0x34,0xA3,0x2F,0xB4,0x26,0x8C,0xBA,0x95,0xB1,0x62,0x1F,0x77,0xE8,0xB2,0xC6,0x4A,0xAA,0xC3,0xA9,0xEB,0x1A,0x1B,0xAD,0xB6,0xE0,0x2D,0x6B,0xAC,0x7C,0x52,0x53,0x37,0xAF,0xB9,0xC9,0x09,0x49,0xD9,0xBC,0x96,0x2E,0xCB,0xB5,0x65,0xF3,0x5A,0x9B,0x48,0x8D,0xB1,0x57,0x6D,0x2F,0x41,0x2C,0xA2,0x27,0x85,0xFD,0x97,0xF6,0x00,0x91,0x5D,0x0F,0x03,0xFC,0xEC,0x6A,0x81,0xB6,0x37,0x1F,0xC2,0xA1,0x6D,0xD2,0x55,0x72,0x92,0xB4,0xE4,0x0B,0x4F,0x59,0xCA,0x91,0xD2,0xD7,0xBC,0x65,0x08,0xE5,0x70,0x67,0xF7,0xA5,0xE4,0xE8,0xE7,0x69,0xCC,0x57,0x86,0x52,0xB6,0x76,0x31,0x7F,0x59,0x2C,0x95,0xBA,0xFA,0xFF,0x01};
|
||||||
|
//const uint8_t spPAKM[] PROGMEM = {0x0A,0xD8,0x5C,0x4D,0x03,0xAB,0xA8,0x21,0x2C,0x3D,0x96,0xAC,0xAA,0xFA,0xD2,0x08,0x5B,0xB2,0xAA,0x16,0x53,0x32,0x7C,0x49,0xAB,0x4A,0x12,0x39,0xEB,0x30,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x02,0x9A,0x0B,0x56,0x40,0xCF,0x46,0xAB,0x69,0xC9,0x28,0x2D,0x67,0xAF,0xBE,0x3A,0xE7,0x6C,0xBF,0xBD,0xC6,0x6A,0x43,0x72,0xFC,0xD6,0x58,0x9A,0x4A,0x89,0xF5,0x47,0xE3,0x68,0xBA,0xC4,0xC6,0x66,0xB5,0xA3,0xEA,0x94,0x68,0xAB,0xDD,0xCE,0x2A,0x5A,0xA3,0x6D,0x71,0xB9,0x8A,0x0F,0x2D,0x8F,0xD9,0xE5,0x49,0xBA,0xB4,0x32,0x26,0xD5,0xA7,0x3E,0xE5,0x6D,0x86,0x2D,0xCC,0xEC,0x96,0x77,0x78,0x96,0x30,0x8F,0x9A,0xDE,0x6A,0x24,0x4C,0x23,0x4E,0x7E,0xFF,0x1F};
|
||||||
|
//const uint8_t spSELCAL[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0x32,0x03,0xFC,0x5C,0xB6,0x92,0xA6,0x4B,0x39,0x6D,0xF5,0x4A,0x8B,0x4C,0x8B,0xB4,0xD7,0x2B,0xAB,0x7C,0xDC,0x52,0x5F,0xAE,0x2C,0xEA,0x0D,0x37,0xDD,0xBC,0xF2,0x68,0x26,0xD3,0x38,0xB3,0x2A,0x32,0x29,0x35,0x93,0xAC,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x03,0xAA,0x35,0x72,0x40,0x31,0xC2,0xAB,0xAD,0x45,0xC5,0x3D,0x5B,0xAF,0xAE,0x14,0x95,0xC8,0x5C,0xBC,0xFA,0x62,0x52,0x63,0xED,0xF5,0x6A,0x8B,0x6F,0xB1,0xD6,0x55,0xEB,0x2C,0x7E,0x55,0x4B,0x17,0x8D,0xAB,0xA8,0x75,0x19,0x5B,0xBC,0xFE,0x6C,0xD6,0x3C,0x75,0x76,0x79,0xA3,0x5F,0xF3,0xB0,0xD9,0xE9,0x4F,0xF2,0x4B,0x43,0x37,0xA7,0x3F,0x98,0xAF,0x30,0xE9,0xEC,0x7E,0xEF,0x3E,0x52,0xB5,0x8B,0xFB,0x43,0xE8,0x6A,0xD2,0xD6,0x08,0x70,0xDE,0x03,0x01,0xC1,0x5A,0xFE,0x3F};
|
||||||
|
//const uint8_t spVORTAC[] PROGMEM = {0x66,0x8D,0x2E,0xDC,0x95,0x9B,0xB8,0xAD,0x30,0x0F,0x29,0x51,0xE2,0x8E,0xCA,0x54,0x35,0xCC,0xB1,0x3B,0x87,0x34,0x65,0x55,0xC5,0x65,0x9B,0x3A,0x53,0x83,0x1C,0xB5,0x2E,0xD8,0x4A,0x4D,0x89,0x3D,0x1A,0xEF,0x2F,0xD4,0x39,0xED,0x68,0x82,0xB9,0x92,0x22,0x6F,0xA3,0x70,0x79,0xD5,0x9A,0xB3,0x8D,0x22,0xD4,0xA2,0x29,0xEC,0x32,0x8A,0xD4,0x94,0xBB,0x38,0xF7,0x28,0xEB,0x70,0x71,0x36,0x27,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x00,0x9E,0x32,0x95,0xC0,0xAA,0x4B,0x08,0x0A,0xCF,0x8C,0xAB,0xCB,0x3E,0x24,0x3A,0x56,0xAF,0xA1,0xB8,0x12,0x1F,0xDF,0xBC,0xA6,0x6A,0x5B,0x74,0x6C,0xF3,0xDA,0xAA,0x2D,0xB5,0xD6,0xD5,0xE3,0xAC,0xAE,0xC4,0xDB,0x5F,0xB5,0xAF,0xFA,0x94,0x68,0x5B,0x54,0xBE,0x66,0x9B,0x6C,0x6D,0x93,0xFB,0xDB,0x11,0x5E,0x8F,0x98,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x80,0x00,0xBA,0x6F,0x66,0x40,0x8B,0x41,0x14,0xF8,0x7F};
|
||||||
|
//const uint8_t spVOR[] PROGMEM = {0x6E,0x2D,0xDA,0x45,0x5C,0xDD,0x84,0xAD,0x1A,0x57,0x51,0x51,0x93,0xF6,0xA1,0xC2,0x58,0x59,0x49,0x3A,0x96,0xAF,0x20,0x51,0xC5,0x6D,0xE8,0xC6,0x48,0x2D,0x32,0xAF,0xB6,0x47,0x63,0x0A,0x5B,0xBD,0xAA,0x11,0x9C,0x30,0xE3,0xCD,0x2A,0x67,0x74,0x86,0xC8,0x35,0xAB,0x98,0xC1,0x08,0x33,0x97,0xAC,0x62,0x64,0x43,0xCA,0x58,0xBD,0x8A,0x91,0x1D,0x39,0x6C,0xCD,0x2A,0x9A,0x56,0x89,0x94,0xAD,0xAB,0xCC,0xAA,0x4D,0xDD,0x5A,0x8F,0x2A,0xEA,0x75,0x73,0xD9,0xD2,0xEA,0xA8,0x2E,0xDD,0xB8,0x77,0xAF,0x5B,0x1D,0xD4,0x65,0x18,0xE5,0x29,0x75,0x50,0x57,0x6E,0x94,0xB7,0xD4,0x4E,0x5F,0xBB,0xB1,0x9F,0x52,0x7B,0x73,0xAD,0xAA,0x79,0x5A,0x15,0xF4,0xB6,0x07,0xE5,0x59,0x75,0xF0,0x97,0xE2,0x9E,0x6F,0xD5,0xC1,0x5D,0x6A,0x58,0xB6,0xD5,0x44,0x7B,0xA9,0x29,0x7D,0x57,0x17,0xE2,0xB9,0x94,0x75,0x5E,0x7D,0x4C,0x6B,0x56,0xDA,0x65,0x2D,0x31,0x8E,0x7B,0x4B,0xE7,0xB5,0xA4,0x5C,0x96,0x45,0x9D,0xC7,0x91,0x62,0x9B,0x0D,0xF7,0x2D,0x57,0xCA,0x65,0xB6,0xDC,0x25,0xDD,0x29,0x96,0xE9,0x73,0x9F,0xF2,0xA4,0x12,0x9A,0xCB,0xAD,0xD3,0x9B,0x8B,0x73,0x2E,0x6D,0x0E,0x6F,0x2A,0x49,0x71,0xB2,0x25,0xBD,0xB9,0x05,0x76,0x6B,0x67,0xF7,0xE5,0x16,0x30,0x6E,0x9D,0xDD,0x57,0xB6,0xE1,0xB8,0x65,0x34,0x5F,0x79,0x62,0x65,0xD2,0xFA,0xFF,0x01};
|
||||||
|
//const uint8_t spBARKER[] PROGMEM = {0xA1,0x0D,0xDA,0xCB,0xC1,0x9D,0xA6,0x3E,0x2A,0xAF,0x04,0x8D,0xDB,0xFA,0xAC,0x2C,0x5B,0xD8,0x4A,0xEB,0x7D,0xD9,0xB4,0xA4,0xA6,0xAD,0x0D,0x79,0x25,0x96,0x56,0xF7,0x76,0x54,0x31,0x0E,0xD7,0xD2,0xA6,0x51,0x25,0x3F,0x98,0x4F,0x9B,0x4A,0x5D,0xC2,0x83,0xA7,0x38,0x41,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x18,0xD0,0xCD,0x9B,0x02,0x4A,0x4C,0x34,0x40,0xCC,0x68,0x6D,0xCC,0x53,0xB1,0x8A,0x77,0xB7,0x35,0xF7,0x44,0x39,0xEA,0xDB,0xD6,0xD2,0x9B,0x78,0x29,0x6F,0x3A,0x4B,0x5E,0x81,0xE3,0x7C,0xE9,0xC9,0xAD,0xD0,0x46,0x73,0x87,0xB7,0xB4,0x42,0x1D,0xCA,0x63,0xBE,0xF2,0x98,0x47,0x74,0xF7,0xFF,0x03};
|
||||||
|
//const uint8_t spHEADING[] PROGMEM = {0x08,0x08,0x06,0x05,0x01,0x51,0x81,0x96,0xB6,0x67,0xA3,0x10,0x8B,0xB4,0xAA,0x62,0xD9,0x3A,0x2A,0xD2,0x2A,0x5B,0x72,0xF6,0xC8,0x25,0xAB,0x6A,0x36,0xD8,0x33,0x1F,0xAF,0xAA,0xAB,0x64,0xF3,0xB8,0xAD,0x1A,0x6E,0xC2,0xA3,0x32,0x62,0xEA,0x0A,0x52,0xCB,0x8C,0xD4,0xAB,0xEA,0xCE,0x49,0xB5,0x96,0xAC,0xAA,0x07,0x43,0xF5,0x9A,0xB3,0xEA,0x1E,0x88,0xAB,0xB2,0xF0,0xA8,0x9B,0xC1,0x4E,0x57,0xA5,0xA3,0x6E,0x06,0x2B,0x5C,0xED,0xAC,0xBA,0x69,0x8A,0x72,0x8D,0x5B,0x9A,0xA6,0xC8,0x37,0xC5,0xEE,0xFF,0x03};
|
||||||
|
//const uint8_t spETA[] PROGMEM = {0xAD,0x5F,0x31,0x18,0x3C,0x97,0xAC,0x6E,0xC5,0x22,0xF0,0x5C,0xBA,0x9A,0x15,0x03,0xA1,0x6A,0xCE,0x2A,0x67,0x71,0xC0,0xAA,0xC5,0xAB,0x98,0x41,0x41,0xBA,0x17,0xAB,0xCA,0xD2,0xC8,0x2D,0xB5,0x83,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x28,0x60,0x50,0x95,0x04,0x7C,0x9B,0x96,0x80,0xED,0xAF,0x46,0xD6,0x0D,0xB3,0x57,0xD7,0x5E,0xF9,0xCC,0x8E,0x14,0xB9,0x64,0x15,0x2B,0x07,0x62,0xC4,0x92,0x55,0xAE,0x1C,0x88,0x99,0x4B,0x56,0x35,0x73,0x20,0x66,0x2E,0x19,0xD5,0x8C,0x06,0xDC,0xF9,0x64,0xD5,0x23,0x18,0x4A,0xC6,0x9C,0xD5,0x0C,0x9F,0x24,0xE9,0x8F,0x57,0xD7,0x6D,0x90,0x55,0x3C,0x5E,0x43,0x37,0x41,0xD6,0xFE,0x78,0xCD,0xDD,0x24,0x59,0xFB,0xE3,0xB5,0x76,0x13,0xEC,0x13,0x8B,0xC6,0x31,0x6C,0x92,0xB4,0xBF,0x1A,0x77,0x77,0x46,0xDE,0x31,0xBB,0x3C,0xC3,0x05,0x4A,0xFB,0xE3,0xF4,0x0D,0x17,0xA0,0x13,0xAF,0xD2,0xD7,0x8D,0x60,0x4D,0xDD,0x2A,0xFF,0xC8,0x42,0x96,0xD5,0x26,0xFD,0xA3,0x10,0x7B,0x74,0x5B,0xF3,0xF7,0x22,0xAE,0x1C,0x65,0xFE,0x1F};
|
||||||
|
//const uint8_t spDOWNWIND[] PROGMEM = {0x0C,0x28,0x30,0xAC,0x95,0xCB,0x4E,0x85,0xAA,0x9B,0xD5,0x4F,0x15,0x46,0xA1,0x7D,0x57,0x57,0x6D,0xA8,0x96,0xAF,0x59,0x6D,0xB5,0x65,0x1E,0xF6,0x7A,0x35,0xC5,0xAF,0x59,0xD8,0xA3,0x55,0x65,0xB7,0x6A,0xE9,0x8B,0x57,0x99,0xFC,0x68,0x78,0xCC,0x59,0x59,0x8C,0x99,0xAE,0x59,0x67,0x65,0x55,0x4B,0x85,0xA4,0xAA,0x96,0x35,0x45,0xD5,0x12,0xAA,0x47,0x99,0xB4,0x4D,0x50,0x3A,0x2E,0x75,0xD4,0xB2,0x89,0xA1,0x26,0x35,0x41,0xEB,0x16,0x49,0xDD,0x55,0x47,0x93,0x59,0x42,0x8B,0x57,0x55,0xB4,0x5B,0x3A,0xBF,0x5E,0x65,0xD3,0x2E,0x91,0x7A,0x7B,0x95,0xCD,0x98,0x44,0xFA,0xE5,0x55,0x16,0xCB,0xA5,0x5E,0x55,0x46,0x55,0x35,0x75,0xA8,0xC5,0x69,0x55,0x55,0xD8,0x61,0xEA,0xA4,0xD5,0x59,0x52,0x87,0x69,0x62,0x57,0x3B,0x29,0x9D,0xDC,0x15,0x5B,0xBF,0x98,0xB9,0xB0,0xF5,0xF9,0x7F};
|
||||||
|
//const uint8_t spCEILING[] PROGMEM = {0x0C,0xF8,0x29,0x45,0x01,0xBF,0x95,0x5A,0x20,0x00,0xBF,0xA5,0x3A,0xE0,0x97,0xB2,0x95,0x0E,0xED,0x8A,0x61,0x6B,0x46,0x39,0x7C,0x30,0x86,0x7E,0x19,0xC5,0x88,0x4E,0x94,0xFA,0x65,0x15,0xDD,0x29,0x6B,0xEB,0xEA,0x56,0x54,0xA6,0x16,0xC5,0xAB,0x47,0x31,0xB0,0xA6,0x85,0xB6,0x59,0x79,0x53,0xCE,0x91,0x3E,0x6B,0x14,0x4D,0xA9,0x54,0x79,0xA9,0x52,0x54,0x8D,0x39,0x21,0x56,0x4B,0xD1,0x34,0x76,0xB9,0xDA,0x2D,0x79,0xD3,0x58,0xED,0x6A,0x37,0xE5,0x59,0x51,0x55,0xB0,0x13,0x91,0x31,0x57,0x61,0x6A,0x69,0x48,0xA6,0x59,0x55,0x85,0xCB,0xF9,0x7F};
|
||||||
|
//const uint8_t spMIDPOINT[] PROGMEM = {0xE2,0xE0,0x62,0xAA,0x5D,0xED,0x98,0x5D,0xA8,0x8C,0x0A,0x8D,0xE3,0x36,0xAD,0x2D,0xCA,0x2D,0xB6,0xDB,0x8C,0xB2,0x68,0xD7,0x38,0x6B,0xA9,0x4A,0x4D,0xCB,0x5A,0xAF,0xBE,0x59,0x55,0xCD,0x78,0xB5,0xEA,0x6E,0x9C,0xD5,0xE3,0xCE,0x2A,0xBB,0x49,0x11,0xF5,0x27,0xA2,0x14,0x2A,0xA3,0xBD,0x03,0xB1,0x5A,0x88,0x8E,0x0E,0xB7,0xC4,0x6A,0x21,0x2A,0xC2,0x23,0x31,0x69,0x1D,0x8E,0xAA,0x4C,0xDB,0x08,0x00,0x7A,0x12,0x03,0x0A,0x08,0xD6,0x3D,0x55,0xD5,0xA4,0x3B,0x99,0xAD,0x52,0x79,0x3F,0x99,0x42,0xAD,0x4E,0x19,0xED,0x54,0x05,0xB6,0x39,0x55,0xD4,0xDB,0x96,0xB4,0xF4,0x54,0xD1,0x4C,0x78,0xEA,0xD2,0x53,0x65,0x57,0xEA,0xE5,0x6B,0x4E,0x55,0x54,0x4A,0x6E,0x34,0x6A,0x55,0x54,0x52,0x65,0x69,0x51,0x35,0x5A,0x46,0xB4,0x99,0x23,0x03,0x4C,0xA1,0xEE,0x80,0xE7,0x2B,0x04,0x70,0x63,0xE6,0xFF,0x03};
|
||||||
|
//const uint8_t spSIGNET[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x07,0xFC,0x52,0x76,0x8A,0x2E,0xC3,0xD8,0x6D,0xF5,0xC9,0xBB,0x4E,0x95,0xF0,0xD7,0xA7,0xE8,0x3A,0x59,0xD2,0x57,0xAF,0x62,0xA4,0x00,0x0D,0x5D,0xED,0xEA,0x22,0x99,0xBA,0xAD,0xA2,0x68,0xB9,0xED,0x4C,0x37,0x59,0x62,0xE0,0x6A,0xC3,0xCD,0x9C,0xA8,0xD1,0xB0,0x8E,0x70,0x4F,0x9C,0xE6,0xA8,0xCD,0xC3,0xB5,0x4E,0x9E,0xCB,0x58,0xAC,0xBB,0xA5,0x3E,0x2E,0x73,0xD1,0xEE,0xD1,0xFE,0x68,0xAC,0x4D,0xBB,0x7A,0xD9,0xAB,0xB2,0x57,0xE3,0x1A,0xEE,0x3F,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x05,0x4C,0xA1,0x2E,0x80,0xE7,0x2B,0x08,0x70,0x63,0xE6,0xFF,0x03};
|
||||||
|
//const uint8_t spROLL_OUT[] PROGMEM = {0x2C,0x16,0x31,0xA5,0xD2,0xE5,0x9A,0x53,0xFB,0x51,0xF5,0x88,0xA2,0x0E,0x91,0x5A,0x2C,0xCD,0xAE,0x3B,0x5C,0x36,0xC9,0x50,0x7B,0x65,0x0D,0x45,0x34,0x43,0x9C,0x8F,0x29,0x64,0x0F,0x4D,0x4D,0x3F,0xFA,0xA8,0xBA,0xD2,0xA9,0xEB,0xE8,0xA2,0x98,0x71,0xA3,0xAE,0xA3,0x4E,0xB4,0x37,0x95,0xB2,0x8E,0x32,0x91,0xD9,0x10,0xCE,0x3A,0xAA,0x28,0x7A,0x52,0x38,0xDD,0xA8,0x83,0xCA,0x6A,0xB4,0x64,0xA3,0xC9,0xC2,0x6A,0x50,0xEB,0xAC,0x36,0xCB,0x4D,0x33,0xDB,0xBC,0xFA,0xA4,0x37,0x34,0x7C,0xF5,0xEA,0xB3,0xDE,0xD0,0xF4,0xD5,0xAB,0xCB,0x7A,0x43,0xD3,0x5B,0x8F,0x36,0x86,0x35,0xCF,0x68,0x39,0xEA,0x58,0xCA,0xDC,0x72,0x51,0x2B,0x43,0xCE,0x0C,0x8D,0x45,0xA9,0x4C,0x31,0xDC,0x24,0x6A,0x9B,0x36,0xF1,0x4A,0x77,0xF8,0x8C,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x80,0x02,0xA6,0x50,0x57,0xC0,0xF3,0x15,0x02,0xB8,0x31,0xF3,0xFF,0x01};
|
||||||
|
//const uint8_t spCROCS[] PROGMEM = {0x0A,0x28,0x4A,0x5D,0x01,0xA5,0xB8,0xBB,0xA4,0x94,0xEA,0x72,0xB7,0x32,0x92,0xD8,0x24,0x5D,0x2D,0xCB,0xAA,0x52,0xAC,0x74,0x37,0x2F,0xAB,0x4A,0x7E,0x22,0x5D,0x36,0xAF,0x2A,0xFB,0xF1,0x74,0x59,0xB3,0xAB,0x55,0xE7,0x54,0x51,0x62,0x4B,0x5A,0x93,0x6C,0x46,0xAA,0xC4,0x41,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0x0C,0x10,0x8D,0xA8,0x02,0x9E,0x71,0x55,0xC0,0x4F,0x29,0x06,0xF8,0xAD,0xD4,0x02,0x0A,0xF8,0x2D,0x95,0x01,0xBF,0x94,0x31,0xE0,0xE7,0xB2,0xFF,0x07};
|
||||||
|
//const uint8_t spAIRCRAFT[] PROGMEM = {0x61,0xEE,0xCA,0x44,0x3B,0x63,0xAD,0xB9,0x19,0x67,0xDD,0x6C,0xB5,0xBA,0x16,0x8B,0xA4,0x6D,0xF3,0x6A,0x5A,0x1A,0x92,0xE1,0x2D,0xA3,0x2A,0x79,0x50,0x96,0x36,0xB7,0x2A,0xFB,0x45,0x3D,0xDC,0x9D,0xBA,0x64,0x07,0xA2,0x39,0x31,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x40,0x80,0x62,0x5E,0x05,0x90,0xDB,0xA8,0x02,0x72,0x6B,0x1F,0x59,0x9E,0x14,0xA9,0x96,0x69,0xD4,0xB9,0xB1,0x97,0xD9,0xE6,0xD5,0x17,0xDB,0x62,0x23,0x9B,0xD7,0x54,0xD5,0xA8,0xAE,0x6E,0x5E,0x73,0x57,0xA3,0x32,0xB2,0x79,0xAD,0x4D,0xAD,0xEA,0xE8,0xE6,0xB5,0x96,0x50,0x9C,0x61,0xAB,0x0C,0x50,0x4D,0xAA,0x01,0xBA,0x0E,0x65,0x40,0x37,0xA5,0x1C,0x40,0xE0,0x14,0xA5,0x2A,0x54,0x03,0xC0,0x00,0x43,0xBA,0x29,0x60,0x73,0x35,0x04,0x4E,0x51,0xAA,0x42,0x35,0xFE,0x1F};
|
||||||
|
//const uint8_t spALTIMETER[] PROGMEM = {0x23,0xCF,0xBE,0x38,0x23,0x57,0xAF,0x2A,0xDB,0xF6,0x34,0x7B,0xBD,0xAA,0xE4,0xD6,0xC3,0x6C,0xF3,0x2A,0x93,0xBA,0x08,0xB3,0xDE,0xAB,0x4A,0xBA,0xA2,0x45,0xBB,0x84,0x2E,0x2B,0x4D,0x67,0x69,0x03,0x06,0x78,0x31,0x23,0x02,0x2B,0x5B,0xDA,0x44,0x92,0x3B,0xAD,0xB4,0xB9,0x34,0x31,0xED,0xBC,0xB2,0xE2,0xD2,0x2C,0x75,0xF5,0xC8,0x92,0xCD,0x6C,0x65,0x2B,0x23,0xCB,0x26,0x63,0x54,0xC2,0x9C,0x22,0x9B,0x8C,0x74,0x69,0x73,0xCA,0xA2,0xCB,0x3C,0x6C,0xD3,0xA9,0xAA,0x0E,0x4B,0xB1,0xD5,0xA9,0x0E,0x4A,0xB2,0x38,0x12,0x8D,0x66,0x86,0x0A,0x55,0x55,0xDA,0xFA,0x11,0x5A,0x44,0x55,0xE9,0x18,0x72,0x63,0x09,0xB3,0xAC,0x63,0x2C,0xC5,0x30,0x5A,0xBA,0x8C,0xA5,0x84,0x42,0x5D,0xC9,0xDA,0xD6,0x12,0x17,0x69,0xD5,0x5B,0xDB,0x4A,0x29,0xD4,0x95,0xAC,0x65,0x2F,0xA5,0x50,0x57,0xB2,0xFC,0x3F,0x61,0x0C,0x21,0x29,0x3D,0xDC,0xBA,0xD9,0x35,0xB5,0x30,0x97,0xEB,0x06,0xDF,0x39,0x2C,0x9C,0x6B,0xEB,0x42,0xD5,0xD0,0x74,0x76,0xAB,0x4E,0x21,0xD3,0x82,0xDB,0xAE,0x3A,0x9B,0x0D,0x0D,0xD9,0xBC,0xEA,0x1C,0xD3,0xCD,0x7D,0xF5,0xA8,0x8B,0xE5,0x72,0x4D,0x39,0xA5,0x29,0x9A,0x3A,0xC5,0x9C,0xB4,0x2E,0x1B,0x6D,0xA7,0x74,0x9C,0xA6,0xE8,0xBC,0x8A,0x24,0x5E,0x98,0xBD,0x89,0x1C,0xE1,0xA4,0x61,0x37,0x61,0xC3,0x03,0xB3,0xB4,0x3D,0xF8,0x0D,0x0B,0xCA,0x3B,0xF6,0xAC,0xDB,0xBC,0xA8,0xEF,0x3A,0xAA,0x6D,0xF1,0x92,0xCD,0xEB,0xAA,0xBA,0xC4,0xC6,0xB6,0xAC,0xAB,0xE9,0x14,0x6D,0x5F,0xDD,0xEE,0xA6,0x93,0x75,0x7C,0x73,0x7B,0x9A,0x75,0xF2,0x8E,0xD5,0xE5,0x6B,0x49,0xD9,0x23,0x67,0x87,0xBF,0x3B,0x43,0xAB,0x98,0xF5,0xFF};
|
||||||
|
//const uint8_t spAUTOPILOT[] PROGMEM = {0x65,0x8F,0xB6,0xCB,0x5C,0x9D,0x8C,0x3D,0x9A,0x5D,0x55,0x6D,0xBB,0xA6,0x2C,0x66,0x5D,0xA5,0xEB,0x1A,0x92,0xBA,0x76,0xD5,0xDE,0xAB,0x2D,0x6A,0x32,0x45,0xF2,0xB6,0xA9,0x59,0xC9,0x70,0x52,0xB3,0x8A,0x1C,0xCB,0x9D,0x35,0xD5,0xAA,0xB2,0x1A,0x55,0x8F,0x4C,0xAB,0x2E,0x74,0xDC,0xC2,0x7C,0xAF,0x3A,0x93,0x4D,0x35,0xC9,0x53,0x5A,0x6F,0x36,0x4D,0xB8,0x13,0x02,0x9F,0x2A,0x55,0xA1,0x1A,0x20,0x80,0x2C,0xCA,0x5B,0x95,0x55,0x5A,0xA8,0xC5,0x5A,0x55,0xF2,0x93,0x69,0xB4,0x6A,0x75,0xD9,0x4D,0x86,0xF3,0x96,0xD5,0x55,0xB5,0x69,0xC5,0x5B,0x56,0x57,0xEC,0x9A,0x96,0xAE,0x5E,0x5D,0x71,0x63,0x1E,0xB6,0x79,0xB5,0x03,0x55,0x0B,0x67,0x9B,0xD5,0x74,0xDC,0xA5,0x9C,0x69,0x56,0x55,0x5C,0x69,0x72,0xAC,0x5C,0x65,0xB3,0x4B,0xC9,0xB1,0x64,0x15,0xD5,0x06,0x27,0xD5,0x62,0x36,0x48,0x1D,0x1E,0x99,0x2D,0xFF,0x1F};
|
||||||
|
//const uint8_t spLOCALIZER[] PROGMEM = {0x2C,0x2B,0x40,0x3A,0x52,0x93,0x88,0xD5,0x91,0x9A,0x0C,0x49,0xAD,0xD6,0x80,0x63,0x32,0x38,0xB3,0x5B,0x12,0xD6,0xEE,0xE0,0xD4,0x69,0xEE,0x84,0xB2,0x9B,0xDC,0x8E,0xBA,0x50,0xDF,0x12,0x6A,0x77,0x8A,0xC2,0x62,0x53,0x38,0xDB,0x49,0x32,0xCB,0x0E,0xE5,0xAC,0x21,0x0A,0x62,0x5A,0x94,0x72,0x93,0xC4,0xCA,0x0E,0x17,0x51,0x03,0x0C,0x48,0xFA,0xA5,0x85,0x49,0x77,0x98,0x69,0xCB,0x91,0x25,0x95,0xE3,0x4E,0x59,0x4B,0xE5,0xCD,0x56,0x12,0xA7,0x29,0x75,0x46,0x3B,0x6C,0xDC,0x69,0xB5,0x49,0x4D,0xBB,0xE8,0xE6,0xD5,0x17,0x31,0x15,0xAA,0x5B,0xD6,0x58,0xC5,0x94,0xA7,0x6D,0x59,0x53,0x53,0x13,0x5A,0xFA,0x79,0xCD,0x5D,0x8F,0x49,0xDB,0xAB,0x31,0x57,0x6F,0x52,0x99,0x97,0x04,0xB0,0x20,0xB1,0x07,0x0C,0xF0,0xB3,0xEB,0xDA,0x9B,0x0F,0xE1,0xD0,0x36,0xED,0x2A,0x39,0x49,0x5A,0xF2,0xB5,0xA7,0x2C,0xE5,0x48,0xE9,0x5B,0xDE,0x32,0x84,0x72,0xB8,0x73,0xFA,0x52,0x72,0xF4,0xF3,0x34,0xE9,0x2B,0x43,0x29,0x5B,0xBB,0x84,0xBF,0x2C,0x96,0x4A,0x5D,0xFD,0xFF};
|
||||||
|
//const uint8_t spCOWL[] PROGMEM = {0x06,0x68,0x61,0xC4,0x01,0x45,0x27,0x39,0xA0,0xB6,0xE2,0x91,0x97,0x94,0x62,0x69,0x89,0x57,0x9E,0x73,0x79,0xB9,0x2E,0x5E,0x65,0xB6,0x1B,0x96,0xBC,0x65,0x94,0xC9,0x6D,0x44,0xC8,0x96,0x51,0x46,0x7F,0x61,0xAE,0x9B,0x47,0x15,0xED,0x65,0x98,0x6C,0x69,0x75,0xD4,0x5F,0xEE,0xDC,0xA5,0xD5,0xC1,0x7E,0xA9,0xCA,0x96,0x56,0x07,0xFF,0x69,0xA2,0xAB,0x4B,0xE9,0xE3,0x95,0x91,0xAD,0x4E,0xB9,0x8B,0x3B,0x42,0xD1,0x26,0x64,0x36,0xEE,0x08,0x66,0xAA,0x98,0x85,0x3C,0xC8,0x8F,0x00,0x6F,0xF2,0xFF};
|
||||||
|
//const uint8_t spINFLIGHT[] PROGMEM = {0x6D,0xE8,0x5A,0x28,0xAA,0x2B,0xAF,0xB6,0x39,0x21,0xEF,0x9A,0xBD,0x9A,0xEE,0x8D,0x2C,0x6B,0xF6,0x2A,0x6B,0x14,0xB5,0x98,0x3A,0x25,0xAB,0x1A,0x3A,0x2C,0x12,0xB7,0xB4,0x28,0x6A,0xB7,0x48,0x3C,0xD2,0x2A,0xA9,0xC2,0xDD,0x75,0x49,0xAA,0xC4,0x0E,0x77,0x4F,0x21,0x4D,0x82,0xA6,0xD4,0x35,0x9B,0xBC,0xB0,0xD0,0x52,0x93,0x45,0x80,0x61,0x2B,0x08,0x30,0x7D,0x85,0x00,0xA6,0x4B,0x57,0x40,0xB3,0x65,0x0A,0x18,0x86,0xB4,0xB4,0x41,0x55,0x85,0xF0,0x92,0xD1,0x16,0xBA,0x63,0x4E,0x6B,0x56,0x5F,0xE9,0xB5,0xBA,0xAE,0x5E,0x7D,0x51,0x17,0x9E,0xBE,0x68,0x75,0xD5,0x8E,0x44,0xF8,0xAA,0x55,0x37,0xEF,0xDC,0x5E,0xB3,0x57,0xDB,0xBC,0xF0,0xF8,0xD6,0x6E,0x6D,0x33,0xCC,0xED,0x13,0x1B,0x81,0x53,0x94,0xAA,0x50,0x0D,0x00,0x05,0x0C,0xE9,0xC6,0x80,0xCD,0xD5,0x10,0x38,0x45,0xA9,0x0A,0xD5,0xF8,0x7F};
|
||||||
|
//const uint8_t spOVERSPEED[] PROGMEM = {0xA9,0x0B,0x7A,0x87,0x59,0xB7,0x94,0x3A,0x8A,0x59,0x11,0xDE,0x5A,0xAA,0xC8,0x6B,0x4D,0xA9,0x4B,0x2B,0x22,0xEF,0x51,0xA3,0x2E,0x2D,0x8F,0xBC,0xCB,0x1D,0x53,0x9B,0x3A,0xA2,0xF4,0xB4,0x90,0x1D,0x9A,0x69,0x5C,0x94,0x5C,0x75,0x2B,0xA3,0x4D,0x77,0x77,0xBB,0xAD,0x88,0xD1,0xB8,0x92,0xB6,0x94,0x32,0x25,0xC3,0x1C,0xEA,0x53,0xCA,0xDC,0x1C,0x6C,0xA8,0x4F,0x29,0xCB,0x24,0xCA,0x90,0x3E,0xAD,0x9C,0xA6,0x84,0xCC,0x9C,0x06,0xE0,0x47,0x55,0x07,0xFC,0xE2,0x62,0x80,0x3F,0x4B,0x0C,0xF0,0xBD,0x32,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x20,0x80,0xE2,0xC2,0x5B,0xD9,0x1C,0xB3,0x96,0xAD,0x1E,0x55,0x8F,0x42,0xDC,0xFE,0xB8,0xD5,0xC3,0x0B,0xF2,0xE6,0xE3,0x56,0x8F,0x28,0x28,0x9B,0xB3,0x4A,0x33,0xA2,0x80,0x6C,0xCD,0x2A,0xCD,0x0C,0x02,0x72,0x39,0xAB,0x34,0xD3,0x29,0xF0,0xD6,0xA4,0xD2,0x74,0xAE,0xA4,0xED,0x0B,0x45,0xCB,0x74,0x55,0x8B,0x44,0x66,0xBD,0x50,0x95,0xAD,0x6C,0xA9,0x4C,0xDD,0x88,0x72,0x64,0xE7,0xFF,0x07};
|
||||||
|
//const uint8_t spDEPARTURE[] PROGMEM = {0x0A,0x28,0x30,0xAC,0x65,0x5D,0xBA,0x8A,0xD9,0xE6,0x51,0x55,0x65,0x2A,0x6E,0xAB,0x43,0x9D,0x8C,0x99,0x86,0xCC,0x42,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x40,0x00,0x55,0xA4,0x31,0x20,0x99,0xB6,0x52,0xC4,0xD2,0x52,0x89,0x69,0x46,0x15,0xCB,0xB2,0x0F,0x6C,0x19,0x75,0x4A,0xC3,0xB1,0xB8,0x67,0xB4,0xC5,0xAD,0xF0,0x51,0x9F,0xD1,0x95,0x50,0x64,0x2B,0x7D,0xD3,0x90,0x0B,0x6B,0x87,0xBB,0x02,0x05,0x0C,0xAB,0x92,0x80,0x9D,0x3A,0x13,0x30,0xD3,0x86,0x03,0x8A,0x16,0x29,0x4D,0x69,0x42,0xD1,0xD2,0xBB,0xAD,0xA5,0x07,0xC9,0x50,0xDF,0x74,0x95,0x56,0x44,0x47,0xF9,0xCA,0x53,0xB6,0x51,0x14,0xE5,0x75,0x7F,0x9E,0x4A,0xD1,0x92,0x27,0xFC,0x79,0x19,0x5A,0x4B,0xDE,0xF0,0xE7,0xAE,0x58,0xE3,0x9E,0xCD,0x5F,0x9E,0x6A,0x29,0x67,0x51,0x7F,0xED,0x25,0xEE,0x2A,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spLAUNCH[] PROGMEM = {0x6E,0x2E,0xD0,0xA3,0x8A,0x32,0xA7,0x25,0xC3,0xAC,0x4E,0xCA,0xB4,0xE6,0x4C,0xAA,0xDB,0x28,0xED,0x1A,0xA2,0xBA,0x71,0xD1,0xB6,0xAB,0x4F,0x72,0x3B,0xD4,0xD2,0xAE,0x26,0xBA,0xA9,0x30,0xEB,0xBC,0xAA,0x58,0xCB,0x5D,0x63,0xD5,0xC8,0x92,0x2F,0x4B,0x8D,0x44,0x29,0x4B,0x4A,0xA3,0xA8,0x1C,0xB9,0x2C,0x2A,0xC9,0x90,0x8A,0x85,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x28,0x60,0xB6,0x4E,0x07,0xCC,0x3E,0x13,0x80,0xD5,0xA7,0x02,0x30,0xDB,0x8C,0x03,0x66,0x9F,0x72,0xC0,0x6C,0x9D,0x0A,0x98,0x7D,0x4B,0x00,0xA3,0x4D,0xFD,0x3F};
|
||||||
|
//const uint8_t spTOWER[] PROGMEM = {0x06,0x78,0x4A,0x2D,0x00,0x53,0x99,0xB5,0x2A,0xDB,0x62,0x8B,0x4C,0x34,0xAA,0x12,0xCB,0xC2,0x6C,0xF1,0x18,0x8A,0x9E,0xB0,0x94,0xCD,0x6B,0x2A,0x72,0x4A,0x8B,0xBA,0xAC,0x39,0xCB,0x6D,0x29,0xEE,0xD2,0xD6,0x68,0xAE,0xA5,0xA9,0x4B,0xD9,0x83,0xBB,0xD4,0xC1,0x2E,0x6D,0x8F,0xE1,0xCC,0x16,0xB3,0x94,0x23,0xD9,0x53,0x39,0xEC,0x53,0xCE,0x5C,0x06,0xFD,0x30,0x4B,0xB9,0x72,0x5D,0xB4,0xC3,0xDE,0xE9,0xCE,0x65,0xC1,0x8E,0xFB,0x86,0xBB,0xAC,0xC0,0x0A,0x69,0x1B,0x9E,0xD2,0x12,0xAA,0xB5,0x53,0x78,0xF3,0x33,0x6E,0xB1,0x4C,0xFF,0x0F};
|
||||||
|
//const uint8_t spFLIGHTWATCH[] PROGMEM = {0x02,0x18,0x2E,0xDD,0x00,0xDD,0x74,0x18,0x60,0x86,0x72,0x03,0x8C,0x90,0x92,0xA2,0x2A,0xB8,0x7A,0x4C,0xEE,0xCA,0x92,0xD8,0x36,0x93,0x24,0x2B,0xCF,0xE2,0xD2,0x4C,0x57,0xAF,0x2C,0x87,0xB1,0x94,0x58,0xBC,0xB2,0x1A,0x52,0x4A,0x73,0xCE,0xCA,0x5B,0x48,0x2C,0xCF,0x45,0xA3,0x6A,0x59,0x30,0xAD,0x1B,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x08,0x28,0xDE,0x54,0xAC,0x5A,0x77,0x84,0x86,0x22,0xB5,0x09,0xBB,0x91,0xAA,0x4A,0xD5,0x26,0xF2,0xB9,0xBA,0xB8,0x0D,0x8B,0xC9,0x17,0x16,0xE4,0x77,0x2C,0xC1,0x6D,0x6A,0xB1,0xBF,0x35,0x27,0x7D,0x2D,0xC9,0x79,0xD6,0x5A,0xC4,0x8E,0x24,0xF7,0x1D,0x5B,0x65,0x3B,0x9C,0xD2,0x67,0xEC,0x45,0x6F,0x5A,0xF1,0xE6,0x74,0xA7,0xD0,0x96,0x69,0x2B,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x05,0xAC,0x12,0x1E,0x80,0x55,0x3A,0x02,0xB0,0xCA,0x76,0x00,0x66,0xDE,0x74,0xC0,0xE8,0x9B,0x0A,0x18,0x75,0x8A,0x00,0xAD,0xA6,0xFE,0x3F};
|
||||||
|
//const uint8_t spSTALL[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x04,0x4E,0x51,0xAA,0x42,0x35,0x40,0x01,0x43,0xBA,0x31,0x60,0x73,0xB5,0x95,0x35,0x91,0x4E,0x29,0x5B,0x57,0x9D,0x64,0x85,0xA5,0x6C,0x59,0x6D,0x92,0x5D,0x9E,0xD4,0x75,0xF5,0xD1,0x4C,0x45,0x50,0xDF,0x35,0x44,0x3B,0x95,0x46,0x7D,0xC7,0x1A,0xDC,0x54,0x28,0xF7,0x1D,0x5B,0xB4,0x53,0xA9,0xDC,0xA5,0xED,0xC1,0x4F,0x35,0xCB,0x9E,0x76,0x44,0xBB,0x95,0x22,0x7D,0xDA,0x19,0xDD,0x54,0xB3,0xF4,0x29,0x57,0x70,0x53,0x25,0xDA,0x39,0xDD,0x21,0x5C,0x26,0x69,0xE7,0xF4,0x04,0x7B,0x55,0x22,0x59,0xC2,0x13,0x7C,0x4D,0x92,0xE6,0x75,0xAF,0xAE,0xDD,0xC2,0x91,0x59,0x7E,0xFF,0x0F};
|
||||||
|
//const uint8_t spTOUCHDOWN[] PROGMEM = {0x02,0x78,0x4A,0xCD,0x00,0x53,0x99,0xB5,0x64,0xE8,0x10,0x57,0x59,0xB9,0xB2,0x92,0x52,0x5D,0x6D,0xCD,0x2A,0x4A,0x2C,0x89,0xF0,0xD5,0xAB,0x28,0x21,0x39,0x3D,0x56,0x33,0xC0,0x7A,0x76,0x04,0x74,0x4E,0x66,0x80,0x9B,0x33,0x02,0x70,0x4B,0x4D,0x00,0x6E,0xAE,0x36,0xC0,0xCD,0x53,0x08,0x28,0x30,0x4C,0x03,0xAB,0x6E,0x2A,0x54,0x4B,0x57,0xAF,0xAE,0x98,0x30,0x6F,0x5B,0xB2,0xBA,0xE2,0x5B,0xB5,0x75,0xF5,0x58,0x8B,0x1F,0x93,0xD6,0x55,0x63,0xAB,0x7A,0x83,0x46,0xD6,0x8C,0xB3,0xD8,0x35,0x6E,0x59,0xD2,0xCE,0xA2,0xD7,0x69,0x74,0x4D,0x79,0x92,0x1F,0xF3,0xD2,0x39,0xE1,0x8D,0x7E,0xCC,0x5A,0xE7,0xB8,0x3F,0x8C,0xD0,0xC8,0x98,0xE2,0x7E,0xD7,0xDA,0xC3,0x23,0x96,0xF9,0x7D,0x6C,0x0B,0x8B,0x5A,0xE6,0xCF,0x46,0xAC,0x3C,0x1D,0xBB,0xBF,0x3A,0xD5,0xD4,0xB0,0xFD,0xFF};
|
||||||
|
//const uint8_t spSQUALK[] PROGMEM = {0x0C,0x78,0xC6,0x95,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0B,0x04,0xE0,0xB7,0x54,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x10,0xE0,0xC3,0x4B,0xCA,0xBC,0x3B,0x72,0x73,0x4F,0xAB,0x0E,0x6E,0xC2,0x82,0xB2,0xAD,0x2A,0x9A,0x69,0x0F,0xF6,0xB6,0x8A,0xE0,0xB6,0xD2,0x39,0xCB,0xC8,0x42,0xDA,0x70,0xB5,0x9E,0x23,0x8D,0x75,0xDC,0x54,0x3B,0xBA,0x2C,0xB5,0x65,0x15,0x76,0x8D,0xC0,0xA2,0x4A,0x55,0xA8,0x06,0x80,0x02,0x7A,0x73,0x65,0x40,0xF3,0x22,0x0C,0x68,0xC5,0x18,0x01,0x35,0xB2,0xFC,0x3F};
|
||||||
|
//const uint8_t spELEVATION[] PROGMEM = {0x23,0x69,0xC1,0x25,0xAD,0x6A,0xAF,0xAA,0xCA,0x51,0x4F,0xDB,0xBC,0xAA,0x42,0xAE,0x22,0x64,0x75,0x2B,0x0B,0xBC,0x11,0xD5,0xB6,0xA3,0x28,0xE8,0x5A,0x4D,0x63,0xAF,0x22,0xF3,0x2D,0x17,0xED,0xBC,0xCA,0xCC,0xBB,0xDC,0x34,0xF3,0xA8,0xB2,0x4E,0xF7,0x90,0x44,0xA1,0xCD,0x3A,0xDD,0x9D,0x12,0x85,0xBE,0x8A,0x52,0x0D,0x72,0xB2,0xFA,0x1A,0x42,0xCD,0x74,0xF5,0xAA,0xBA,0x6B,0x15,0x97,0xCD,0xAB,0x9E,0xBA,0x15,0x53,0xB7,0xAC,0x7A,0x9A,0x62,0x2C,0xDF,0xBC,0xBA,0xEE,0x02,0xA5,0x62,0xF3,0xE8,0x67,0x1C,0x45,0xD1,0x2C,0x09,0x98,0x79,0x2B,0x01,0x27,0x75,0x27,0x60,0x96,0xED,0x04,0x8C,0xD8,0x36,0xEA,0x16,0x44,0xCC,0x7D,0xD5,0x9A,0xBA,0x4B,0xE1,0xD0,0xBD,0x63,0x9F,0x2A,0x9D,0x43,0xFB,0xB5,0x63,0xA9,0x36,0x71,0xEC,0x57,0xCE,0xA6,0x45,0xCA,0x35,0x5E,0xB9,0xBA,0x52,0x49,0xD7,0x68,0xE5,0xEE,0x56,0x35,0xD4,0x9D,0x96,0xA7,0x19,0x09,0x37,0x73,0x12,0x9E,0x6C,0x5B,0xCC,0xB2,0x76,0x78,0x8B,0xB1,0x30,0xCD,0x3A,0xFF,0x0F};
|
||||||
|
//const uint8_t spCLIMB[] PROGMEM = {0x06,0xC8,0x39,0x29,0x00,0x8D,0x45,0x06,0x60,0xF2,0xC8,0x96,0x35,0x50,0x39,0x41,0x6E,0x46,0x56,0xD8,0x8C,0x19,0xAF,0x19,0x45,0xA5,0xB3,0x1A,0xB2,0x66,0x55,0x45,0x5C,0x49,0xDA,0x9A,0x55,0x17,0xB5,0x25,0x65,0x6B,0x56,0x5D,0xF4,0x25,0xB7,0xB5,0x5E,0x75,0x35,0x17,0xDC,0xD6,0x66,0x35,0x4D,0xAF,0x4B,0x69,0xEB,0xD5,0x34,0xDF,0xAA,0x69,0xAB,0x57,0x55,0x9C,0x69,0x74,0x2C,0x1A,0x65,0x33,0xA2,0xA5,0x9E,0xBA,0x14,0xCD,0x88,0x16,0x47,0x92,0x52,0x54,0x2D,0x5A,0x1C,0x49,0x4A,0x5E,0x35,0x47,0x52,0xB8,0xAE,0x79,0xCA,0x72,0x0E,0x17,0x89,0x86,0x29,0x4B,0xC9,0xD4,0xBC,0x43,0xFE,0x3F};
|
||||||
|
//const uint8_t spBANK[] PROGMEM = {0xA9,0x1A,0xCA,0xCD,0xDD,0x92,0xAE,0xAC,0xD8,0x16,0x69,0x79,0xBD,0xEA,0x62,0x4A,0x7C,0xF4,0xF5,0xAA,0xAA,0x2B,0xB1,0xB6,0xC7,0xAB,0xAA,0x2E,0xC5,0xDB,0x66,0xAF,0xBA,0xF9,0x14,0x6F,0x5B,0xBC,0x86,0xEE,0x92,0xBD,0x7D,0xD1,0x1A,0xBB,0x2B,0xB6,0xF1,0x45,0x6B,0x1B,0x3A,0xD9,0x36,0x56,0xED,0xAD,0x1D,0xD3,0x36,0xF1,0xFA,0xC2,0x7E,0x98,0x33,0x08,0xC9,0x31,0xAD,0x6C,0x4F,0x04,0x16,0x55,0xAA,0x42,0x35,0x00,0x14,0xD0,0x9B,0x2B,0x03,0x9A,0x17,0x61,0x40,0x2B,0xC6,0x08,0xA8,0x91,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spACCELERATED[] PROGMEM = {0x6D,0xAA,0xA6,0xD5,0x3B,0x1E,0xB7,0xB1,0xD9,0x56,0x6B,0x7F,0xB3,0x86,0xE6,0x47,0xBC,0xFC,0xF5,0x18,0x6A,0x4F,0x2A,0x89,0xD9,0x08,0x9C,0xA2,0x54,0x85,0x6A,0x00,0x10,0x20,0x2A,0xF7,0x00,0x7C,0xD5,0x15,0x80,0xEF,0x3D,0x1D,0xF0,0x43,0x44,0x00,0xFE,0x88,0x58,0xF9,0xA0,0xA9,0xEA,0x9E,0x69,0xE5,0xD5,0xB4,0x9A,0xDB,0xEB,0x55,0x64,0xD7,0xE6,0xAE,0x8F,0x57,0x91,0xCC,0xB9,0x9B,0xAC,0x6E,0x79,0xB0,0x13,0xC3,0xD2,0xAC,0x14,0x21,0xEB,0xA8,0xB4,0xB6,0x52,0xF8,0x2E,0x59,0x5C,0xEA,0x52,0x19,0x1A,0x57,0xB8,0x6B,0x69,0x55,0x2C,0x5C,0x16,0xE6,0x67,0x55,0x39,0xBA,0x59,0x58,0xDE,0x55,0x35,0x53,0x6C,0xA9,0x9B,0x57,0xD5,0x6C,0x92,0x87,0x6F,0x1E,0x75,0x8B,0xCE,0x4E,0xB1,0x38,0x0D,0xDB,0x95,0x29,0xA9,0xE2,0x55,0x77,0x9D,0x64,0x1A,0x8B,0x57,0xDD,0x54,0xB0,0x45,0x2C,0x5E,0x4D,0xD3,0x49,0x92,0xF1,0xB8,0xB5,0x4D,0x27,0x8B,0xEA,0x63,0x37,0x34,0x66,0x64,0x2E,0xAB,0xFF,0x1F};
|
||||||
|
//const uint8_t spTRIM[] PROGMEM = {0x0E,0x68,0xCE,0xD4,0x01,0x57,0x9A,0x06,0x60,0x2A,0xB3,0x56,0xE6,0xA2,0x66,0x66,0x4E,0x57,0x95,0x9B,0x9A,0xA5,0x34,0x5F,0x55,0x49,0x26,0x56,0xD2,0x7D,0x55,0xCD,0x07,0x6B,0x4B,0x9B,0x55,0x57,0xEB,0x1A,0xA9,0x73,0x46,0x53,0x85,0x4B,0xB8,0xC4,0x6D,0x5D,0x93,0x2E,0xE9,0x1C,0xB7,0xF5,0x55,0xB8,0xA5,0x71,0xDC,0xD6,0x35,0xE1,0x5A,0x4E,0x71,0x4B,0x9B,0x69,0x68,0x3B,0x35,0x2D,0x7D,0x50,0xE1,0x45,0xE2,0xE6,0xFF,0x01};
|
||||||
|
//const uint8_t spUNICOM[] PROGMEM = {0x6A,0xA8,0x40,0xBD,0x2E,0x4D,0xBA,0xB6,0x22,0xB1,0x9C,0xA8,0xDD,0xCA,0xEE,0x84,0xB8,0x63,0xD5,0x2A,0xBA,0x55,0x91,0x94,0x37,0xA3,0x68,0x46,0xCC,0x83,0x9E,0x94,0xB2,0x2A,0xEC,0x34,0x49,0x5A,0xEA,0xAA,0xB0,0xD2,0x25,0xDE,0xEA,0xAA,0x49,0x17,0x93,0x35,0xAB,0xAF,0xD2,0xD5,0x53,0x1F,0x95,0xB5,0x4B,0x67,0x2B,0xFE,0x82,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x80,0x01,0x72,0x50,0x51,0x40,0xC9,0x8A,0xA3,0x4B,0xC5,0x2D,0x8A,0x5B,0xAD,0x36,0xC7,0x76,0x2F,0xDE,0xB2,0xE6,0xA2,0xA6,0x64,0xA4,0xCD,0x5A,0x8A,0x9C,0x96,0x96,0x36,0x6B,0x6B,0x7C,0x86,0x5B,0xBA,0x8E,0xBB,0xB1,0x19,0x69,0x69,0xDB,0xEE,0xCA,0x77,0xB8,0xB4,0x6B,0xF9,0xB3,0xBE,0xA2,0xD6,0x35,0xE5,0x8F,0x69,0xC2,0x42,0xE6,0x94,0x3F,0xEB,0xF2,0x12,0xB4,0x5A,0xBE,0x22,0xCA,0x4B,0xD1,0x6C,0xF9,0x8A,0x8B,0x2C,0x35,0x29,0xE5,0x6B,0xDA,0xBD,0x4C,0xCC,0x84,0x2F,0xBA,0x8A,0x34,0xAB,0xFB,0xFF};
|
||||||
|
//const uint8_t spSLOKE[] PROGMEM = {0x02,0xF8,0x56,0xC4,0x00,0x3F,0xBA,0x28,0xE0,0x07,0x0B,0x03,0xFC,0x60,0x66,0x80,0x5F,0xD4,0x0C,0xF0,0x4B,0xA8,0x02,0x7E,0x31,0x29,0xFD,0x10,0xEA,0x96,0xEC,0xAE,0xF5,0x95,0x7A,0xA6,0xC3,0xD6,0xD5,0x17,0x61,0x55,0x4C,0xAD,0x57,0x5B,0x58,0x76,0x29,0xF6,0x5D,0x55,0x61,0x31,0xA1,0xD4,0x77,0x15,0x89,0xF7,0x98,0x4A,0x9F,0x92,0x79,0xB5,0xA5,0x6C,0xBD,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x10,0x40,0x32,0x26,0x02,0x48,0x41,0x85,0x00,0xCE,0x2B,0xFE,0x3F};
|
||||||
|
//const uint8_t spNINER[] PROGMEM = {0x66,0xAA,0x1A,0xB5,0xDC,0x9A,0x84,0x35,0x4B,0xCA,0xD4,0x68,0x1C,0xD6,0x24,0x29,0x53,0xA3,0x4E,0x59,0xAA,0x22,0x2F,0xB3,0xBA,0x6D,0x6A,0x9A,0xAC,0x4D,0xE3,0xAE,0xB1,0xB8,0x36,0x33,0x7B,0xBC,0xDA,0x6A,0xC7,0x2D,0x64,0xF5,0xAA,0x9B,0xD9,0x90,0x94,0x2D,0xAB,0xEA,0xAA,0x4D,0x47,0x57,0xAF,0xA2,0xB9,0xA4,0x18,0x5F,0xB4,0xCA,0xE6,0x9D,0xAA,0x63,0x52,0x6B,0xAA,0xC5,0x72,0x0B,0xC7,0x63,0x68,0x85,0x9D,0x33,0x13,0x8D,0xA5,0x66,0xC7,0x2C,0xDD,0xD4,0xD6,0x66,0x4F,0xF0,0x38,0x6F,0xDB,0x6B,0x5C,0xE2,0xA5,0xBC,0xE1,0x2C,0xF1,0x88,0x8E,0xFA,0xA6,0xAF,0xD9,0x67,0x3C,0xCE,0x5B,0xFE,0x1A,0x17,0x7C,0x35,0xB7,0xFB,0xCB,0x36,0x5A,0x97,0x59,0xF0,0xFF};
|
||||||
|
//const uint8_t spGALLEY[] PROGMEM = {0x04,0x68,0x41,0x7D,0xB4,0x3D,0x18,0x49,0xFA,0xEA,0x55,0xB5,0x28,0xEC,0x1D,0x4F,0x56,0x5D,0x7D,0x70,0xB4,0x3F,0x59,0x75,0xF5,0x25,0x95,0xF6,0x78,0x55,0xC5,0xAE,0x95,0xDB,0xAD,0x51,0xC6,0x38,0xD6,0x58,0x53,0x4A,0x11,0xF9,0xBB,0x05,0x2D,0x5A,0x65,0x2C,0xA9,0x29,0x33,0x67,0x35,0x45,0x35,0x8D,0xE5,0xED,0xD5,0x0D,0x5D,0x10,0xE1,0x8F,0xD6,0xD0,0x8D,0x83,0x57,0x3E,0x6A,0x63,0xB3,0x82,0x59,0xF9,0xC8,0x65,0xCD,0x10,0xA5,0x7B,0xCB,0xFF,0x07};
|
||||||
|
//const uint8_t spFREEDOM[] PROGMEM = {0x04,0x18,0xB6,0x82,0x00,0xD3,0x57,0x08,0x60,0xBA,0x74,0x05,0x34,0x5B,0xD6,0xB2,0x54,0xA8,0x29,0x2D,0xFD,0xCA,0x6A,0x62,0x75,0xD7,0xA5,0x2B,0xEF,0xD5,0x48,0xDC,0x37,0xAF,0x7C,0x44,0x43,0x8E,0x58,0xDD,0xCA,0x9E,0x04,0xC5,0xED,0xF1,0x18,0xB6,0x4D,0x53,0x56,0x3B,0x63,0xEA,0xD6,0x85,0x43,0x57,0xAF,0xB1,0x28,0x13,0xAF,0x78,0x3D,0xE6,0x6C,0xD5,0xD2,0x7D,0x73,0x39,0x72,0x70,0x0F,0xD7,0x57,0xE5,0x4A,0x26,0x3D,0x55,0x9B,0x96,0x27,0xEB,0xD0,0x24,0xB1,0x53,0x9E,0xAA,0xCD,0x82,0xCD,0x4E,0x79,0x8A,0x31,0x0F,0x32,0x39,0xE9,0x49,0x26,0x34,0xC5,0xE2,0xA4,0xA7,0x44,0x4F,0x57,0x6B,0x92,0xDE,0x12,0xD4,0x5C,0x3D,0xF2,0xFF,0x03};
|
||||||
|
//const uint8_t spFLIGHT[] PROGMEM = {0x02,0x28,0xC6,0x55,0x00,0xDD,0xA4,0x2B,0x60,0xB8,0x32,0x05,0x0C,0x13,0x5C,0x86,0xA2,0x39,0x3A,0x55,0x6E,0xE8,0xA3,0xD0,0x33,0x96,0xB6,0xAB,0xAF,0x64,0xC6,0x8D,0xD6,0xAC,0x36,0xEB,0x0D,0xF7,0xB8,0xBD,0xEA,0x6A,0x5A,0x22,0x63,0xF6,0xAA,0x5A,0x30,0x2E,0x9F,0xD9,0xA3,0x6C,0x8E,0xB9,0xA3,0x23,0xBB,0x3E,0x08,0xD5,0x8D,0x8A,0x6C,0xEE,0x61,0x93,0xA9,0x62,0x8B,0xBD,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x30,0xC0,0x53,0x66,0x06,0x78,0xBE,0xE2,0xFF,0x01};
|
||||||
|
//const uint8_t spDEGREE[] PROGMEM = {0x0C,0x28,0x30,0x2C,0x45,0x43,0x9A,0x72,0xD8,0xEB,0x9D,0xAD,0xBA,0x0B,0x67,0x6E,0x7F,0x3D,0x9A,0xA1,0x1D,0xB9,0xF5,0x0B,0x02,0xA7,0x28,0x55,0xA1,0x1A,0x10,0xD6,0x5C,0x3A,0x35,0x2C,0x66,0x1A,0xA2,0x75,0x73,0x33,0xA7,0xA9,0x0F,0x51,0xD2,0x54,0xDD,0xB6,0x3A,0x27,0x6A,0x4A,0xCB,0xB6,0xCA,0x92,0xC8,0x2C,0x6C,0xED,0x2A,0x7B,0x54,0xD4,0xF2,0xD7,0xA3,0x1A,0xDE,0x50,0x26,0x1E,0xB7,0x7A,0x04,0x05,0x99,0x7C,0xDC,0xEA,0x19,0x0D,0xA8,0xEB,0x76,0xAB,0x66,0x30,0xA0,0xAA,0x59,0xAD,0x1A,0x41,0x40,0xAA,0x67,0xA5,0xAA,0x79,0x14,0xAB,0x9E,0xFD,0xFF};
|
||||||
|
//const uint8_t spAIRPORT[] PROGMEM = {0x63,0xEC,0xC1,0xB0,0x2A,0x1E,0x9D,0xA6,0xA7,0x46,0x29,0x5D,0x7D,0xEA,0xBA,0x02,0x4B,0x75,0xD5,0xA8,0xCB,0x13,0x5A,0xB2,0x55,0xAD,0xCA,0x4B,0x70,0x9D,0x37,0xA5,0x2A,0xB4,0xC0,0x4D,0xEC,0x82,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x00,0x03,0x82,0x77,0xE7,0x00,0x02,0x68,0x19,0x2E,0xBD,0x77,0x17,0x12,0x9C,0xB9,0xCD,0x41,0x5D,0xB3,0x9B,0xDE,0xB6,0x44,0x7D,0x29,0x25,0xFA,0xCA,0x1E,0xC2,0xA8,0x0F,0xFB,0x6B,0x77,0x0A,0x43,0xBE,0xE2,0xA7,0x5C,0xA5,0x0C,0x78,0x8B,0x7E,0x04,0x4E,0x51,0xAA,0x42,0x35,0x00,0x40,0x01,0x53,0xA8,0x2B,0xE0,0xF9,0x8A,0xFF,0x07};
|
||||||
|
//const uint8_t spAIRSPEED[] PROGMEM = {0x2A,0xEB,0x29,0x59,0xD3,0x9A,0xAC,0xBD,0x87,0x24,0x69,0x5F,0xBC,0xC6,0xE1,0x86,0xA1,0x6D,0xF3,0x1A,0xBA,0x3F,0xC1,0xE1,0x3E,0xAB,0x69,0xF6,0x05,0x96,0xFB,0xAC,0xAA,0xBA,0x23,0x3C,0xF1,0x33,0xCA,0xDA,0x02,0x86,0xA2,0x73,0xAB,0x96,0x9E,0x14,0x52,0xB5,0x0E,0xF8,0x49,0xD8,0x01,0xBF,0x5A,0x1A,0xE0,0xAF,0x70,0x01,0x24,0xA0,0x81,0x00,0x8F,0x55,0x08,0x10,0xB9,0xD5,0xC8,0x5A,0x52,0x61,0xD7,0xD7,0xAB,0x9C,0x31,0x18,0xD3,0xB6,0xAE,0x6A,0xC6,0x40,0xE8,0x5C,0x32,0xAA,0x99,0x02,0xA1,0x6B,0x76,0xAB,0x66,0x34,0xA0,0xA9,0x59,0xAD,0x9A,0x49,0x41,0xA6,0x26,0xB5,0x62,0x46,0x01,0xE9,0x9A,0xD5,0x8A,0xAE,0x19,0x3D,0x73,0x31,0x2B,0x99,0xDE,0x4C,0x37,0xCB,0xAE,0x1E,0x46,0x94,0xCC,0xD2,0x94,0xA1,0x6A,0x55,0xB5,0x5C,0xF5,0xFF};
|
||||||
|
//const uint8_t spCLEARANCE[] PROGMEM = {0x0E,0xC8,0x21,0x3D,0x00,0x53,0x99,0xA5,0xEC,0x45,0xB7,0x08,0x89,0x32,0x8A,0x4C,0xA3,0x4D,0xB4,0xED,0x29,0xAA,0x77,0x37,0xB1,0x35,0x27,0x6F,0x31,0x4C,0x5C,0xB6,0x9C,0xBC,0x99,0x56,0x6C,0xED,0xB2,0xCA,0x1C,0x5D,0xAD,0xA4,0x5D,0xAB,0x63,0x91,0x8A,0x74,0xF7,0xAD,0x8B,0x45,0x23,0x32,0xD4,0x8F,0x35,0x65,0xC9,0x88,0xF0,0xB6,0xD6,0xEC,0x43,0x33,0x6C,0x73,0xDB,0x8B,0x4E,0xCD,0xF0,0x5D,0x69,0xAF,0x4A,0x74,0xD4,0x12,0xA9,0xA3,0x58,0x35,0x65,0x5F,0x88,0x80,0x42,0xC2,0x19,0xF0,0x8C,0xAB,0x02,0x7E,0x4A,0x31,0xC0,0x6F,0xA5,0x1E,0x30,0xC0,0x6F,0xA9,0x0A,0xF8,0xA5,0xEC,0xFF,0x01};
|
||||||
|
//const uint8_t spALTITUDE[] PROGMEM = {0xAD,0xAE,0xA6,0xB4,0xD2,0x6F,0x8D,0xA5,0xA9,0x0D,0x2D,0x5D,0xBD,0xBA,0x26,0xB6,0xA4,0x6C,0xF5,0xAA,0x2B,0xBB,0xD1,0xF0,0xCE,0xAB,0x48,0xEA,0xD3,0xCC,0x3B,0xAF,0x22,0xBA,0xCE,0x60,0xEB,0x8C,0xC0,0x29,0x4A,0x55,0xA8,0x06,0x38,0x60,0x72,0x8B,0x92,0x5C,0x16,0x2A,0x6A,0xB9,0x56,0x3E,0x68,0x1A,0x87,0x6F,0x5E,0x55,0xA7,0xA9,0x9C,0xB6,0x1A,0x81,0x53,0x94,0xAA,0x50,0x0D,0x08,0xC0,0x12,0x16,0x09,0xF8,0xBA,0x6B,0x14,0xC7,0x4E,0xA7,0x3B,0xE3,0x52,0x65,0x6D,0xE4,0x95,0xAB,0x46,0x55,0xB9,0x89,0x96,0x6C,0x19,0x4D,0xA5,0xA6,0xD6,0xB4,0xA5,0x34,0x85,0xB8,0x79,0xD3,0xE7,0x52,0x67,0x1C,0x6E,0xCD,0x6F,0x5A,0x9D,0x49,0x98,0x37,0xBF,0x0E,0x75,0x50,0x29,0x5E,0xF6,0x84,0x95,0x4C,0x6F,0xA6,0x9B,0x65,0x57,0x0F,0x23,0x4A,0x66,0x69,0x04,0x50,0x60,0x58,0x19,0xAA,0x56,0x55,0xCB,0x55,0xFF,0x0F};
|
||||||
|
//const uint8_t spRADIAL[] PROGMEM = {0x6A,0x12,0xC3,0xB4,0x52,0x95,0xAA,0x49,0x74,0xD7,0x0C,0x53,0xE2,0x26,0xD3,0xD4,0xD2,0x4C,0x5D,0xE9,0x62,0xA1,0x56,0x8D,0xDC,0xAB,0x2B,0x21,0x54,0x93,0x57,0xAF,0xA6,0xA5,0x60,0x0D,0x79,0xB3,0x9A,0xDE,0x94,0xD4,0xFD,0xF1,0xAA,0x47,0x56,0xD4,0x8C,0x25,0xAD,0x6E,0x54,0x54,0x26,0x13,0xB2,0x51,0x89,0x8A,0x09,0xB5,0x55,0x96,0x2D,0x13,0x29,0xBC,0x57,0x19,0x7A,0x60,0xB4,0xEA,0xD9,0x6D,0x1C,0x4E,0x50,0xA7,0x16,0x8D,0x79,0x58,0x27,0x9C,0x58,0xBD,0xE6,0x6E,0x9C,0xA4,0x6D,0xF3,0xD8,0xB2,0x2A,0xB1,0xB6,0x2D,0xE3,0xCA,0xA2,0x33,0x92,0x7B,0x97,0x3B,0xCA,0x6D,0x73,0xC9,0x5B,0xEE,0x24,0xB6,0x43,0xB9,0x6B,0x79,0xA2,0xB8,0x71,0xE5,0xB4,0xE9,0x0D,0xE6,0xDA,0x44,0xBA,0xA5,0x37,0xAA,0x9A,0x30,0x4A,0x9B,0xBE,0xA8,0x72,0x22,0x28,0x4D,0xFA,0xA3,0x8C,0x4E,0xA7,0x34,0xFF,0x0F};
|
||||||
|
//const uint8_t spREMARK[] PROGMEM = {0x2C,0xD0,0xA9,0xD8,0xCB,0xAD,0xA9,0x4D,0x76,0xE3,0x74,0x57,0x62,0x56,0x59,0x5D,0x22,0xCC,0x89,0x5B,0x54,0x53,0x2B,0x73,0x67,0x69,0x8C,0x15,0xCB,0xD2,0xBD,0xAD,0xA6,0x26,0x76,0x31,0x6B,0xBB,0xAA,0x9E,0x9C,0x38,0xED,0xCB,0xCA,0x66,0x08,0x84,0x8A,0x35,0x2D,0xEB,0x56,0x40,0xAF,0x16,0xB7,0xA4,0x18,0xD4,0x2A,0x9F,0xEC,0x32,0x6D,0x74,0x8A,0xBC,0x49,0x2A,0x83,0xE4,0x1C,0xF6,0x38,0xA5,0xCA,0x9A,0xDA,0xD9,0x9D,0xAC,0xAA,0x68,0xCD,0x36,0xB1,0xB3,0xAA,0x10,0x2E,0xB5,0xA8,0xED,0xAA,0xA2,0xB9,0xD4,0xA1,0x26,0xAB,0xCE,0xFA,0x42,0x97,0xDB,0xEC,0x7A,0xB5,0x45,0x9D,0xE9,0x51,0x97,0x31,0x14,0x7B,0xAA,0x47,0x9B,0xC7,0x50,0xFD,0xB2,0x2E,0xF5,0x46,0xE0,0x14,0xA5,0x2A,0x54,0x03,0x00,0xC0,0x01,0xBD,0xB9,0x2A,0xA0,0x79,0x11,0x06,0xB4,0x62,0x8C,0x80,0x1A,0x59,0xFE,0x1F};
|
||||||
|
//const uint8_t spREFUELLING[] PROGMEM = {0xAE,0x37,0xD5,0xB4,0x42,0xEC,0xB9,0x5E,0x17,0xD7,0x0C,0x56,0x96,0xFA,0x98,0xB1,0xD5,0xC2,0xDD,0xA8,0x6B,0xC6,0x60,0x8B,0xB5,0xA3,0xEE,0xCA,0x50,0x26,0x57,0xB7,0x6A,0x72,0x23,0x9E,0x9A,0x55,0xEA,0x66,0x04,0x6C,0x6A,0x16,0x02,0x94,0x14,0x31,0x40,0x77,0x65,0x06,0x18,0xAE,0xDD,0x00,0x23,0x4C,0x3A,0x60,0xA4,0xCD,0x11,0x0E,0x6F,0x44,0x69,0x5B,0x56,0x3E,0x7C,0x30,0xA4,0xAE,0x5D,0x79,0x57,0xA6,0x54,0xBC,0xB6,0xE5,0x91,0x67,0x5A,0x73,0x97,0x94,0x27,0x5A,0xA3,0x85,0xD9,0x5A,0x55,0x98,0xB5,0x27,0xA6,0x2F,0x43,0xD4,0xBA,0xC6,0x96,0x2E,0x2D,0x09,0xD7,0x9A,0x71,0x9F,0xB6,0x66,0x56,0xE5,0xA1,0x7D,0xC6,0x5A,0x65,0xBA,0xA4,0x6E,0x1E,0x7B,0xB5,0x29,0x1A,0xFA,0xB9,0x9C,0x3D,0x87,0x70,0xEA,0xED,0x76,0xF7,0x14,0xCC,0x63,0x8F,0xDA,0xDB,0xB3,0x88,0x97,0xD6,0x6E,0x7F,0xF7,0x6C,0xD6,0x56,0xA7,0x7D,0xCD,0x70,0x78,0x5A,0xEC,0xF1,0x35,0xAD,0xEE,0x16,0x75,0xEA,0x53,0x9E,0xAA,0x34,0x4A,0x23,0xCE,0xFF,0x03};
|
||||||
|
//const uint8_t spOUTER[] PROGMEM = {0xA9,0x4B,0x39,0x23,0x6C,0x12,0x8D,0xA9,0xA8,0xB3,0xB4,0x5C,0xB2,0xC6,0x2A,0x3E,0x22,0x62,0xC9,0xEA,0x1A,0xFD,0x88,0xF0,0x35,0xAB,0x29,0xF2,0xBC,0xCC,0x3B,0xAF,0x32,0xFA,0xB5,0x62,0xDF,0xB4,0x8A,0xE4,0xC6,0x8A,0xAD,0x63,0xE8,0xAB,0x55,0x17,0x0B,0x5B,0x01,0xE8,0x3A,0xAC,0x54,0x2D,0x6D,0xB8,0x2A,0x9D,0x52,0xA4,0x24,0x5C,0xE9,0xAD,0x47,0x51,0x4A,0x83,0x2E,0xF6,0x6E,0x55,0x4E,0x83,0xF4,0x94,0xBB,0x54,0x25,0x2C,0xE2,0x51,0x9E,0x54,0xA7,0x18,0x18,0x43,0xB9,0xFF,0x1F};
|
||||||
|
//const uint8_t spMIDDLE[] PROGMEM = {0x69,0x2E,0x92,0xF4,0x9C,0xAB,0x96,0xB9,0x1A,0xB4,0x52,0x4F,0x1A,0xA6,0xA0,0x24,0x8B,0x23,0x4A,0x9A,0xB2,0x22,0x6F,0xB3,0x38,0x6D,0xC8,0x8A,0xAD,0x43,0xEA,0xAC,0xA6,0xCB,0x74,0x76,0xDD,0xB3,0xAA,0xCE,0xDC,0x2C,0xED,0xCB,0x2A,0x86,0x08,0x53,0xE3,0x2D,0xA2,0xE2,0xAA,0x3D,0x22,0x66,0x97,0x76,0xD9,0x08,0x53,0xB3,0xBD,0x8A,0xC2,0x22,0xC2,0x39,0xEB,0x2A,0x0B,0xAB,0x0A,0xA1,0xAE,0xAD,0xCA,0xB8,0x27,0x84,0xBA,0xB6,0x2A,0xB1,0x9A,0x64,0x6A,0x93,0xAA,0x20,0x6A,0x92,0xB8,0x73,0x69,0x33,0x9D,0x2A,0x91,0x36,0xFF,0x0F};
|
||||||
|
//const uint8_t spINNER[] PROGMEM = {0xA5,0x6A,0x52,0xA9,0x37,0x2B,0xAD,0x6A,0xD8,0x40,0xEB,0x98,0xB5,0x8A,0xEE,0x9D,0x3C,0xE2,0xF6,0x2A,0xBB,0x0D,0x0E,0xD7,0xC7,0xAB,0x6A,0x1E,0x3D,0xDD,0xED,0xAE,0xAA,0x37,0x09,0x15,0x49,0xBB,0xEA,0xD2,0x45,0xC3,0xAD,0xCD,0x68,0x4A,0x1B,0x92,0xC1,0xBC,0xAD,0x2E,0xFE,0x04,0x5E,0xFC,0xB5,0xAA,0xDA,0x17,0x38,0xD1,0xD7,0xEA,0x92,0x0E,0xE4,0xD4,0x4F,0x69,0x4B,0x5C,0xD0,0x16,0xDD,0xFF,0x0F};
|
||||||
|
//const uint8_t spINSTRUMENTS[] PROGMEM = {0xA2,0x8F,0xDA,0x63,0xB7,0x23,0xA6,0xA1,0x6A,0xB1,0xCB,0x8E,0x34,0xC6,0xA6,0x9D,0xAA,0xB3,0xD2,0xEA,0xBB,0x37,0xF2,0x88,0x45,0xA3,0x6D,0x46,0x34,0x25,0x6B,0x97,0x36,0x49,0xEA,0x94,0x70,0x12,0xBA,0x28,0x69,0x82,0x2B,0x71,0x08,0x5E,0x12,0x52,0x55,0xA5,0x0E,0x78,0x4E,0xC8,0x01,0x4F,0x93,0x1B,0xE0,0xE5,0x76,0x06,0x34,0xCF,0x2E,0x80,0x5E,0xCB,0x02,0xD0,0x8C,0x53,0x1B,0x52,0xE1,0xB0,0x88,0xAC,0x6D,0x88,0x45,0x22,0x52,0xD7,0xA4,0x39,0x1A,0xE3,0x2A,0x4E,0x9A,0x8E,0xCA,0x83,0xAC,0xB9,0x6E,0x3B,0x8B,0x2E,0x0D,0xE3,0xB6,0xE3,0x2C,0x3E,0xD5,0xC3,0xF6,0xB4,0xAB,0x99,0x34,0x4B,0x59,0x5D,0xAE,0x26,0x53,0xBD,0x64,0x73,0x79,0xAA,0x21,0x6B,0x77,0xAB,0xE9,0x89,0x4A,0xA2,0x25,0x12,0x23,0x70,0x8A,0x52,0x15,0xAA,0x01,0x00,0x0A,0x98,0x42,0x5D,0x00,0xCF,0x57,0x30,0xE0,0x3B,0x41,0x05,0xFC,0x12,0xA6,0x80,0x9F,0xDD,0x14,0xF0,0x8C,0x2B,0x03,0x7E,0x4A,0xF9,0x7F};
|
||||||
|
//const uint8_t spFLIGHT[] PROGMEM = {0x04,0x68,0x2A,0x42,0x00,0xC5,0xB8,0x0A,0xA0,0x9B,0x74,0x05,0x0C,0x57,0xA6,0x80,0x61,0x82,0xCB,0x50,0x34,0x47,0xA7,0xCA,0x0D,0x7D,0x14,0x7A,0xC6,0xD2,0x76,0xF5,0x95,0xCC,0xB8,0xD1,0x9A,0xD5,0x66,0xBD,0xE1,0x1E,0xB7,0x57,0x5D,0x4D,0x4B,0x64,0xCC,0x5E,0x55,0x0B,0xC6,0xE5,0x33,0x7B,0x94,0xCD,0x31,0x77,0x74,0x64,0xD7,0x07,0xA1,0xBA,0x51,0x91,0x11,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x00,0x03,0x0C,0xE9,0x26,0x80,0xCD,0xD5,0x10,0x38,0x45,0xA9,0x0A,0xD5,0xF8,0x7F};
|
||||||
|
//const uint8_t spAPPROACHES[] PROGMEM = {0x63,0xCD,0x66,0x24,0x32,0x1B,0xAD,0xA5,0x98,0x55,0xF3,0xD8,0x75,0x86,0xCA,0x27,0xDC,0xB5,0xCF,0x19,0x92,0x9C,0x88,0xB0,0x5D,0x65,0x08,0x61,0xCC,0xDC,0x76,0x21,0x70,0x8A,0x52,0x15,0xAA,0x01,0xA0,0x80,0x94,0xCD,0x15,0x90,0xB3,0x47,0xC9,0x42,0x93,0x32,0xF1,0x2C,0x35,0x5B,0x79,0xB2,0x99,0x66,0xD2,0x7C,0x65,0x95,0x44,0x6B,0x51,0xB6,0x91,0x66,0x9E,0xC5,0xCE,0xD9,0x52,0x11,0x0B,0xAB,0x59,0xC4,0x46,0x7E,0xE3,0xCA,0x26,0xEE,0x9A,0x00,0x4D,0x92,0x06,0x60,0xB7,0xB0,0x04,0xEC,0xD4,0xBD,0xAA,0x19,0x9C,0xD9,0x34,0xEF,0x6A,0xAB,0x75,0x16,0x8F,0xCD,0xAB,0xAB,0x2A,0x44,0x33,0x37,0xAF,0xB1,0x89,0x10,0x73,0xDF,0x3C,0xC6,0x2E,0x4D,0xC2,0xB4,0x77,0x9B,0x9B,0x54,0x75,0xD5,0xDE,0x6D,0xEE,0x24,0x9C,0x34,0xFB,0xB6,0x79,0x61,0x75,0x53,0xCF,0x5A,0xFE,0x17,0xD4,0x86,0xC9,0x89,0x02,0x7E,0x2B,0x55,0xC0,0xAF,0xEE,0x02,0xF8,0x29,0xFD,0xFF,0x01};
|
||||||
|
//const uint8_t spGEAR[] PROGMEM = {0x6D,0xDC,0x21,0x39,0x34,0x92,0xB4,0xAE,0x09,0xA6,0x9A,0x8E,0xBD,0x9A,0xEE,0x19,0xA3,0x6B,0xC9,0x6A,0x7A,0x31,0x54,0x8F,0xC7,0xAB,0xED,0xB1,0x40,0x52,0x5F,0xAD,0xB6,0xDB,0x41,0x1A,0xDE,0x3C,0xDA,0xEA,0x06,0x79,0x69,0x77,0x6B,0x4A,0x5E,0x90,0xC5,0x5E,0xAD,0x2E,0x71,0x41,0x8E,0x7A,0xB7,0x2A,0x87,0x01,0x3F,0xEA,0x55,0xAA,0x5C,0x13,0x6A,0xA8,0x67,0x68,0x52,0x71,0x98,0xE2,0x5C,0xAC,0xCC,0xC4,0xDC,0x22,0x14,0xFD,0x3F};
|
||||||
|
//const uint8_t spBOOST[] PROGMEM = {0x0C,0x50,0xD6,0xAC,0x94,0x51,0xAB,0x67,0x60,0x9F,0x5A,0xD6,0xB6,0x0E,0x69,0xB4,0xAA,0x52,0x93,0xBA,0xE4,0xC5,0xAF,0x06,0x78,0xC6,0x55,0x01,0x3F,0xA5,0x28,0xE0,0xB7,0x52,0x0D,0x18,0xE0,0xB7,0x54,0x03,0xFC,0x52,0xA6,0x80,0x9F,0xCB,0x10,0x38,0x45,0xA9,0x0A,0xD5,0x00,0x30,0xC0,0x90,0x6E,0x02,0xD8,0x5C,0xED,0xFF,0x01};
|
||||||
|
//const uint8_t spTELEPHONE[] PROGMEM = {0x0C,0x98,0xD6,0xDC,0x01,0x47,0x9A,0x16,0x7F,0xFA,0x14,0x13,0x4A,0xB5,0xEA,0x6A,0x52,0x53,0x75,0xF5,0xAA,0x1B,0x9B,0xB4,0xE0,0x3E,0xAB,0xEE,0xA0,0x2A,0x93,0xFC,0xAC,0xBA,0xF0,0x8E,0x11,0xCA,0xBD,0x9A,0x62,0xB2,0x52,0xA8,0x75,0xE9,0x92,0xD5,0x74,0x92,0xC6,0x02,0x18,0xB6,0xC2,0x03,0x06,0x98,0xBE,0x42,0x02,0xA3,0x0E,0x7E,0xCC,0x95,0x3B,0xAE,0x29,0x86,0xF6,0x30,0x5A,0xB5,0xD6,0xE8,0x27,0xCC,0xA8,0x4E,0xDB,0xA2,0xAD,0x0A,0xE1,0xAA,0x65,0x8F,0x3E,0x46,0x45,0x9D,0x96,0x23,0xC6,0x68,0x55,0x75,0x92,0xCE,0xE8,0xBC,0x4D,0x4C,0x4E,0x3A,0x93,0xB1,0x51,0x57,0x25,0xE9,0x6C,0x86,0xD3,0xDD,0xE4,0x84,0xAB,0x69,0xAC,0x72,0x55,0x12,0xAE,0xA2,0x28,0xD3,0x42,0x51,0xB8,0x9B,0x66,0x2F,0x75,0x3B,0xF1,0x0E,0x77,0xD3,0x6A,0x69,0x9E,0xE8,0xFF,0x01};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.speaker.say(spWIND);
|
||||||
|
CircuitPlayground.speaker.say(spNORTHEAST);
|
||||||
|
CircuitPlayground.speaker.say(spGUSTING_TO);
|
||||||
|
CircuitPlayground.speaker.say(spFOURTY);
|
||||||
|
CircuitPlayground.speaker.say(spMILES);
|
||||||
|
CircuitPlayground.speaker.say(spPER);
|
||||||
|
CircuitPlayground.speaker.say(spHOUR);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this
|
||||||
|
// will turn off the pin 13 LED (it's connected to a microcontroller
|
||||||
|
// pin that's also related to the speaker), but there's a small
|
||||||
|
// audible click when it turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
}
|
@ -0,0 +1,243 @@
|
|||||||
|
// Talkie library
|
||||||
|
// Copyright 2011 Peter Knight
|
||||||
|
// This code is released under GPLv2 license.
|
||||||
|
//
|
||||||
|
// The following phrases are derived from VM61002 ROM
|
||||||
|
//
|
||||||
|
// A male voice with a US accent.
|
||||||
|
//
|
||||||
|
// These phrases have a very military bias
|
||||||
|
// with lots of very useful engineering words.
|
||||||
|
// They also have good expression.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
//const uint8_t spZERO[] PROGMEM = {0x69,0xFB,0x59,0xDD,0x51,0xD5,0xD7,0xB5,0x6F,0x0A,0x78,0xC0,0x52,0x01,0x0F,0x50,0xAC,0xF6,0xA8,0x16,0x15,0xF2,0x7B,0xEA,0x19,0x47,0xD0,0x64,0xEB,0xAD,0x76,0xB5,0xEB,0xD1,0x96,0x24,0x6E,0x62,0x6D,0x5B,0x1F,0x0A,0xA7,0xB9,0xC5,0xAB,0xFD,0x1A,0x62,0xF0,0xF0,0xE2,0x6C,0x73,0x1C,0x73,0x52,0x1D,0x19,0x94,0x6F,0xCE,0x7D,0xED,0x6B,0xD9,0x82,0xDC,0x48,0xC7,0x2E,0x71,0x8B,0xBB,0xDF,0xFF,0x1F};
|
||||||
|
//const uint8_t spFOUR[] PROGMEM = {0x08,0x68,0x21,0x0D,0x03,0x04,0x28,0xCE,0x92,0x03,0x23,0x4A,0xCA,0xA6,0x1C,0xDA,0xAD,0xB4,0x70,0xED,0x19,0x64,0xB7,0xD3,0x91,0x45,0x51,0x35,0x89,0xEA,0x66,0xDE,0xEA,0xE0,0xAB,0xD3,0x29,0x4F,0x1F,0xFA,0x52,0xF6,0x90,0x52,0x3B,0x25,0x7F,0xDD,0xCB,0x9D,0x72,0x72,0x8C,0x79,0xCB,0x6F,0xFA,0xD2,0x10,0x9E,0xB4,0x2C,0xE1,0x4F,0x25,0x70,0x3A,0xDC,0xBA,0x2F,0x6F,0xC1,0x75,0xCB,0xF2,0xFF};
|
||||||
|
//const uint8_t spEIGHT[] PROGMEM = {0x65,0x69,0x89,0xC5,0x73,0x66,0xDF,0xE9,0x8C,0x33,0x0E,0x41,0xC6,0xEA,0x5B,0xEF,0x7A,0xF5,0x33,0x25,0x50,0xE5,0xEA,0x39,0xD7,0xC5,0x6E,0x08,0x14,0xC1,0xDD,0x45,0x64,0x03,0x00,0x80,0x00,0xAE,0x70,0x33,0xC0,0x73,0x33,0x1A,0x10,0x40,0x8F,0x2B,0x14,0xF8,0x7F};
|
||||||
|
//const uint8_t spTWELVE[] PROGMEM = {0x09,0x98,0xDA,0x22,0x01,0x37,0x78,0x1A,0x20,0x85,0xD1,0x50,0x3A,0x33,0x11,0x81,0x5D,0x5B,0x95,0xD4,0x44,0x04,0x76,0x9D,0xD5,0xA9,0x3A,0xAB,0xF0,0xA1,0x3E,0xB7,0xBA,0xD5,0xA9,0x2B,0xEB,0xCC,0xA0,0x3E,0xB7,0xBD,0xC3,0x5A,0x3B,0xC8,0x69,0x67,0xBD,0xFB,0xE8,0x67,0xBF,0xCA,0x9D,0xE9,0x74,0x08,0xE7,0xCE,0x77,0x78,0x06,0x89,0x32,0x57,0xD6,0xF1,0xF1,0x8F,0x7D,0xFE,0x1F};
|
||||||
|
//const uint8_t spTWENTY[] PROGMEM = {0x0A,0xE8,0x4A,0xCD,0x01,0xDB,0xB9,0x33,0xC0,0xA6,0x54,0x0C,0xA4,0x34,0xD9,0xF2,0x0A,0x6C,0xBB,0xB3,0x53,0x0E,0x5D,0xA6,0x25,0x9B,0x6F,0x75,0xCA,0x61,0x52,0xDC,0x74,0x49,0xA9,0x8A,0xC4,0x76,0x4D,0xD7,0xB1,0x76,0xC0,0x55,0xA6,0x65,0xD8,0x26,0x99,0x5C,0x56,0xAD,0xB9,0x25,0x23,0xD5,0x7C,0x32,0x96,0xE9,0x9B,0x20,0x7D,0xCB,0x3C,0xFA,0x55,0xAE,0x99,0x1A,0x30,0xFC,0x4B,0x3C,0xFF,0x1F};
|
||||||
|
//const uint8_t spONE[] PROGMEM = {0x66,0x4E,0xA8,0x7A,0x8D,0xED,0xC4,0xB5,0xCD,0x89,0xD4,0xBC,0xA2,0xDB,0xD1,0x27,0xBE,0x33,0x4C,0xD9,0x4F,0x9B,0x4D,0x57,0x8A,0x76,0xBE,0xF5,0xA9,0xAA,0x2E,0x4F,0xD5,0xCD,0xB7,0xD9,0x43,0x5B,0x87,0x13,0x4C,0x0D,0xA7,0x75,0xAB,0x7B,0x3E,0xE3,0x19,0x6F,0x7F,0xA7,0xA7,0xF9,0xD0,0x30,0x5B,0x1D,0x9E,0x9A,0x34,0x44,0xBC,0xB6,0x7D,0xFE,0x1F};
|
||||||
|
//const uint8_t spFIVE[] PROGMEM = {0x08,0x68,0x4E,0x9D,0x02,0x1C,0x60,0xC0,0x8C,0x69,0x12,0xB0,0xC0,0x28,0xAB,0x8C,0x9C,0xC0,0x2D,0xBB,0x38,0x79,0x31,0x15,0xA3,0xB6,0xE4,0x16,0xB7,0xDC,0xF5,0x6E,0x57,0xDF,0x54,0x5B,0x85,0xBE,0xD9,0xE3,0x5C,0xC6,0xD6,0x6D,0xB1,0xA5,0xBF,0x99,0x5B,0x3B,0x5A,0x30,0x09,0xAF,0x2F,0xED,0xEC,0x31,0xC4,0x5C,0xBE,0xD6,0x33,0xDD,0xAD,0x88,0x87,0xE2,0xD2,0xF2,0xF4,0xE0,0x16,0x2A,0xB2,0xE3,0x63,0x1F,0xF9,0xF0,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spNINE[] PROGMEM = {0xE6,0xA8,0x1A,0x35,0x5D,0xD6,0x9A,0x35,0x4B,0x8C,0x4E,0x6B,0x1A,0xD6,0xA6,0x51,0xB2,0xB5,0xEE,0x58,0x9A,0x13,0x4F,0xB5,0x35,0x67,0x68,0x26,0x3D,0x4D,0x97,0x9C,0xBE,0xC9,0x75,0x2F,0x6D,0x7B,0xBB,0x5B,0xDF,0xFA,0x36,0xA7,0xEF,0xBA,0x25,0xDA,0x16,0xDF,0x69,0xAC,0x23,0x05,0x45,0xF9,0xAC,0xB9,0x8F,0xA3,0x97,0x20,0x73,0x9F,0x54,0xCE,0x1E,0x45,0xC2,0xA2,0x4E,0x3E,0xD3,0xD5,0x3D,0xB1,0x79,0x24,0x0D,0xD7,0x48,0x4C,0x6E,0xE1,0x2C,0xDE,0xFF,0x0F};
|
||||||
|
//const uint8_t spTHIR_[] PROGMEM = {0x04,0xA8,0xBE,0x5C,0x00,0xDD,0xA5,0x11,0xA0,0xFA,0x72,0x02,0x74,0x97,0xC6,0x01,0x09,0x9C,0xA6,0xAB,0x30,0x0D,0xCE,0x7A,0xEA,0x6A,0x4A,0x39,0x35,0xFB,0xAA,0x8B,0x1B,0xC6,0x76,0xF7,0xAB,0x2E,0x79,0x19,0xCA,0xD5,0xEF,0xCA,0x57,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x00,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spHUNDRED[] PROGMEM = {0x04,0xC8,0x7E,0x5C,0x02,0x0A,0xA8,0x62,0x43,0x03,0xA7,0xA8,0x62,0x43,0x4B,0x97,0xDC,0xF2,0x14,0xC5,0xA7,0x9B,0x7A,0xD3,0x95,0x37,0xC3,0x1E,0x16,0x4A,0x66,0x36,0xF3,0x5A,0x89,0x6E,0xD4,0x30,0x55,0xB5,0x32,0xB7,0x31,0xB5,0xC1,0x69,0x2C,0xE9,0xF7,0xBC,0x96,0x12,0x39,0xD4,0xB5,0xFD,0xDA,0x9B,0x0F,0xD1,0x90,0xEE,0xF5,0xE4,0x17,0x02,0x45,0x28,0x77,0x11,0xD9,0x40,0x9E,0x45,0xDD,0x2B,0x33,0x71,0x7A,0xBA,0x0B,0x13,0x95,0x2D,0xF9,0xF9,0x7F};
|
||||||
|
//const uint8_t spTWO[] PROGMEM = {0x06,0xB8,0x59,0x34,0x00,0x27,0xD6,0x38,0x60,0x58,0xD3,0x91,0x55,0x2D,0xAA,0x65,0x9D,0x4F,0xD1,0xB8,0x39,0x17,0x67,0xBF,0xC5,0xAE,0x5A,0x1D,0xB5,0x7A,0x06,0xF6,0xA9,0x7D,0x9D,0xD2,0x6C,0x55,0xA5,0x26,0x75,0xC9,0x9B,0xDF,0xFC,0x6E,0x0E,0x63,0x3A,0x34,0x70,0xAF,0x3E,0xFF,0x1F};
|
||||||
|
//const uint8_t spSIX[] PROGMEM = {0x04,0xF8,0xAD,0x4C,0x02,0x16,0xB0,0x80,0x06,0x56,0x35,0x5D,0xA8,0x2A,0x6D,0xB9,0xCD,0x69,0xBB,0x2B,0x55,0xB5,0x2D,0xB7,0xDB,0xFD,0x9C,0x0D,0xD8,0x32,0x8A,0x7B,0xBC,0x02,0x00,0x03,0x0C,0xB1,0x2E,0x80,0xDF,0xD2,0x35,0x20,0x01,0x0E,0x60,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spTEN[] PROGMEM = {0x0E,0x38,0x3C,0x2D,0x00,0x5F,0xB6,0x19,0x60,0xA8,0x90,0x93,0x36,0x2B,0xE2,0x99,0xB3,0x4E,0xD9,0x7D,0x89,0x85,0x2F,0xBE,0xD5,0xAD,0x4F,0x3F,0x64,0xAB,0xA4,0x3E,0xBA,0xD3,0x59,0x9A,0x2E,0x75,0xD5,0x39,0x6D,0x6B,0x0A,0x2D,0x3C,0xEC,0xE5,0xDD,0x1F,0xFE,0xB0,0xE7,0xFF,0x03};
|
||||||
|
//const uint8_t spFIF_[] PROGMEM = {0x08,0x98,0x31,0x93,0x02,0x1C,0xE0,0x80,0x07,0x5A,0xD6,0x1C,0x6B,0x78,0x2E,0xBD,0xE5,0x2D,0x4F,0xDD,0xAD,0xAB,0xAA,0x6D,0xC9,0x23,0x02,0x56,0x4C,0x93,0x00,0x05,0x10,0x90,0x89,0x31,0xFC,0x3F};
|
||||||
|
//const uint8_t spTHOUSAND[] PROGMEM = {0x0C,0xE8,0x2E,0xD4,0x02,0x06,0x98,0xD2,0x55,0x03,0x16,0x68,0x7D,0x17,0xE9,0x6E,0xBC,0x65,0x8C,0x45,0x6D,0xA6,0xE9,0x96,0xDD,0xDE,0xF6,0xB6,0xB7,0x5E,0x75,0xD4,0x93,0xA5,0x9C,0x7B,0x57,0xB3,0x6E,0x7D,0x12,0x19,0xAD,0xDC,0x29,0x8D,0x4F,0x93,0xB4,0x87,0xD2,0xB6,0xFC,0xDD,0xAC,0x22,0x56,0x02,0x70,0x18,0xCA,0x18,0x26,0xB5,0x90,0xD4,0xDE,0x6B,0x29,0xDA,0x2D,0x25,0x17,0x8D,0x79,0x88,0xD4,0x48,0x79,0x5D,0xF7,0x74,0x75,0xA1,0x94,0xA9,0xD1,0xF2,0xED,0x9E,0xAA,0x51,0xA6,0xD4,0x9E,0x7F,0xED,0x6F,0xFE,0x2B,0xD1,0xC7,0x3D,0x89,0xFA,0xB7,0x0D,0x57,0xD3,0xB4,0xF5,0x37,0x55,0x37,0x2E,0xE6,0xB2,0xD7,0x57,0xFF,0x0F};
|
||||||
|
//const uint8_t spTHREE[] PROGMEM = {0x0C,0xE8,0x2E,0x94,0x01,0x4D,0xBA,0x4A,0x40,0x03,0x16,0x68,0x69,0x36,0x1C,0xE9,0xBA,0xB8,0xE5,0x39,0x70,0x72,0x84,0xDB,0x51,0xA4,0xA8,0x4E,0xA3,0xC9,0x77,0xB1,0xCA,0xD6,0x52,0xA8,0x71,0xED,0x2A,0x7B,0x4B,0xA6,0xE0,0x37,0xB7,0x5A,0xDD,0x48,0x8E,0x94,0xF1,0x64,0xCE,0x6D,0x19,0x55,0x91,0xBC,0x6E,0xD7,0xAD,0x1E,0xF5,0xAA,0x77,0x7A,0xC6,0x70,0x22,0xCD,0xC7,0xF9,0x89,0xCF,0xFF,0x03};
|
||||||
|
//const uint8_t spSEVEN[] PROGMEM = {0x0C,0xF8,0x5E,0x4C,0x01,0xBF,0x95,0x7B,0xC0,0x02,0x16,0xB0,0xC0,0xC8,0xBA,0x36,0x4D,0xB7,0x27,0x37,0xBB,0xC5,0x29,0xBA,0x71,0x6D,0xB7,0xB5,0xAB,0xA8,0xCE,0xBD,0xD4,0xDE,0xA6,0xB2,0x5A,0xB1,0x34,0x6A,0x1D,0xA7,0x35,0x37,0xE5,0x5A,0xAE,0x6B,0xEE,0xD2,0xB6,0x26,0x4C,0x37,0xF5,0x4D,0xB9,0x9A,0x34,0x39,0xB7,0xC6,0xE1,0x1E,0x81,0xD8,0xA2,0xEC,0xE6,0xC7,0x7F,0xFE,0xFB,0x7F};
|
||||||
|
//const uint8_t spELEVEN[] PROGMEM = {0xA5,0xEF,0xD6,0x50,0x3B,0x67,0x8F,0xB9,0x3B,0x23,0x49,0x7F,0x33,0x87,0x31,0x0C,0xE9,0x22,0x49,0x7D,0x56,0xDF,0x69,0xAA,0x39,0x6D,0x59,0xDD,0x82,0x56,0x92,0xDA,0xE5,0x74,0x9D,0xA7,0xA6,0xD3,0x9A,0x53,0x37,0x99,0x56,0xA6,0x6F,0x4F,0x59,0x9D,0x7B,0x89,0x2F,0xDD,0xC5,0x28,0xAA,0x15,0x4B,0xA3,0xD6,0xAE,0x8C,0x8A,0xAD,0x54,0x3B,0xA7,0xA9,0x3B,0xB3,0x54,0x5D,0x33,0xE6,0xA6,0x5C,0xCB,0x75,0xCD,0x5E,0xC6,0xDA,0xA4,0xCA,0xB9,0x35,0xAE,0x67,0xB8,0x46,0x40,0xB6,0x28,0xBB,0xF1,0xF6,0xB7,0xB9,0x47,0x20,0xB6,0x28,0xBB,0xFF,0x0F};
|
||||||
|
//const uint8_t sp_TEEN[] PROGMEM = {0x09,0x58,0x2A,0x25,0x00,0xCB,0x9F,0x95,0x6C,0x14,0x21,0x89,0xA9,0x78,0xB3,0x5B,0xEC,0xBA,0xB5,0x23,0x13,0x46,0x97,0x99,0x3E,0xD6,0xB9,0x2E,0x79,0xC9,0x5B,0xD8,0x47,0x41,0x53,0x1F,0xC7,0xE1,0x9C,0x85,0x54,0x22,0xEC,0xFA,0xDB,0xDD,0x23,0x93,0x49,0xB8,0xE6,0x78,0xFF,0x3F};
|
||||||
|
//const uint8_t spA[] PROGMEM = {0x65,0x2C,0x96,0xAD,0x7B,0x6A,0x9F,0x66,0xE4,0x20,0x8D,0x9C,0x73,0xAB,0x5B,0xDC,0xE2,0x96,0xB7,0xBA,0xF5,0x6A,0x66,0x28,0xA0,0xCE,0xD5,0xBB,0xDB,0xFD,0x1E,0xE6,0x38,0xA7,0x36,0xCF,0x9C,0x80,0x51,0x8B,0xEB,0x52,0xD7,0xBC,0xFF,0x3F};
|
||||||
|
//const uint8_t spB[] PROGMEM = {0xA6,0x2F,0xAA,0x05,0x5C,0xD6,0x8C,0xBC,0xC7,0x16,0x70,0x59,0x33,0xB2,0x95,0x0B,0xC1,0xFD,0xCD,0xCC,0x66,0x3A,0xF3,0x51,0xAD,0x98,0x00,0x55,0x8B,0x67,0xDB,0xC7,0x3E,0xD5,0xAD,0xEE,0x75,0x2F,0xE7,0x2C,0x4D,0x60,0xBE,0x26,0xDF,0xF1,0x89,0xEF,0xFF,0x03};
|
||||||
|
//const uint8_t spC[] PROGMEM = {0x04,0xF8,0xA5,0x83,0x03,0x12,0xB0,0x80,0x07,0x22,0xB0,0xC2,0xEE,0x8D,0x45,0x7D,0xC9,0xCA,0x67,0x29,0x42,0xF5,0x35,0x3B,0xDF,0xF9,0x28,0x66,0x0D,0x40,0xCF,0xD7,0xB3,0x1C,0xCD,0xAC,0x06,0x14,0xB5,0x68,0x0E,0x7D,0xEE,0x4B,0xDF,0xD2,0x39,0x5B,0x02,0x44,0xBD,0xCE,0x57,0xBE,0xF2,0x9D,0xEE,0x55,0x0A,0xC1,0x73,0x4D,0x7E,0xF2,0xF3,0xFF};
|
||||||
|
//const uint8_t spD[] PROGMEM = {0x06,0x98,0x30,0x68,0xE4,0x6B,0x84,0xA0,0xE8,0xD3,0x93,0x8D,0xEC,0x84,0x9E,0x4B,0x6E,0x36,0x8A,0x19,0x0D,0xA8,0xEA,0x71,0xAF,0x7A,0xDF,0xE7,0xB2,0xAD,0xE0,0x00,0xD3,0x8B,0xEB,0x9E,0x8F,0x7C,0xA6,0x73,0xE5,0x40,0xA8,0x5A,0x1C,0xAF,0x78,0xC5,0xDB,0xDF,0xFF,0x0F};
|
||||||
|
//const uint8_t spE[] PROGMEM = {0xA2,0x59,0x95,0x51,0xBA,0x17,0xF7,0x6A,0x95,0xAB,0x38,0x42,0xE4,0x92,0x5D,0xEE,0x62,0x15,0x33,0x3B,0x50,0xD6,0x92,0x5D,0xAE,0x6A,0xC5,0x04,0xA8,0x5A,0xBC,0xEB,0xDD,0xEC,0x76,0x77,0xBB,0xDF,0xD3,0x9E,0xF6,0x32,0x97,0xBE,0xF5,0xAD,0xED,0xB3,0x34,0x81,0xF9,0x9A,0xFF,0x07};
|
||||||
|
//const uint8_t spF[] PROGMEM = {0xAB,0x1B,0x61,0x94,0xDD,0xD6,0xDC,0xF1,0x74,0xDD,0x37,0xB9,0xE7,0xEA,0xD3,0x35,0xB3,0x1C,0xE1,0xAF,0x6F,0x77,0xC7,0xB5,0xD4,0xE0,0x56,0x9C,0x77,0xDB,0x5A,0x9D,0xEB,0x98,0x8C,0x61,0xC0,0x30,0xE9,0x1A,0xB0,0x80,0x05,0x14,0x30,0x6D,0xBB,0x06,0x24,0x20,0x01,0x0E,0x10,0xA0,0x06,0xB5,0xFF,0x07};
|
||||||
|
//const uint8_t spG[] PROGMEM = {0x6E,0x3F,0x29,0x8D,0x98,0x95,0xCD,0x3D,0x00,0xAB,0x38,0x95,0xE2,0xD4,0xEB,0x34,0x81,0x7A,0xF2,0x51,0x53,0x50,0x75,0xEB,0xCE,0x76,0xB6,0xD3,0x95,0x8D,0x92,0x48,0x99,0xAB,0x77,0xBE,0xCB,0xDD,0x8E,0x71,0x96,0x04,0x8C,0x5A,0x3C,0xE7,0x39,0xF7,0xAD,0x6E,0xF5,0x2A,0xD7,0x2A,0x85,0xE0,0xB9,0x26,0x3E,0xF1,0xF9,0x7F};
|
||||||
|
//const uint8_t spH[] PROGMEM = {0x65,0x18,0x6D,0x90,0x2D,0xD6,0xEC,0xF6,0x56,0xB7,0xBC,0xC5,0xAE,0xC7,0x30,0xA3,0x01,0x6D,0x2D,0xCE,0x8B,0x3D,0xDC,0xD6,0x3C,0x61,0x76,0xC5,0x25,0x9B,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x80,0x01,0x2B,0x87,0x38,0x60,0xE5,0xED,0x08,0x58,0xC0,0x02,0x16,0xB0,0x80,0x06,0x34,0x40,0x80,0x76,0xD3,0xFE,0x1F};
|
||||||
|
//const uint8_t spI[] PROGMEM = {0xAA,0x8D,0x63,0xA8,0xAA,0x66,0xAD,0xB9,0xA8,0xCB,0x08,0xDD,0x7C,0xFB,0x5B,0xDF,0xFA,0x36,0xB7,0x39,0x6D,0xB5,0xA3,0x15,0xBA,0xF8,0x76,0xBB,0xDF,0xD3,0x9E,0xD7,0xDA,0x5C,0x49,0xA5,0x2D,0xDE,0x7B,0xDB,0x6B,0x76,0x29,0xAF,0xC7,0x6D,0xEF,0x31,0xD8,0x5C,0x1E,0xF7,0xBD,0x1E,0xF5,0x48,0xE7,0x28,0x89,0xE2,0xF2,0x38,0x5F,0xF9,0xFE,0x7F};
|
||||||
|
//const uint8_t spL[] PROGMEM = {0x6B,0x68,0x2E,0xD8,0x2A,0x37,0xDF,0xFE,0xF6,0xA7,0xAF,0x21,0xBC,0xC4,0x17,0xDF,0xFE,0xF6,0x67,0xC8,0x6A,0xC3,0x4D,0x3A,0xDF,0x61,0x4D,0x95,0x6C,0xA6,0x71,0x9E,0xB1,0x36,0x98,0x53,0x49,0x5E,0xFB,0x5A,0x8E,0x0A,0x7A,0x43,0xD9,0x4F,0x3C,0xC2,0x59,0xE0,0xF4,0x08,0xF9,0x09,0x67,0x03,0x31,0x19,0xA2,0x25,0x9E,0xFF,0x0F};
|
||||||
|
//const uint8_t spJ[] PROGMEM = {0x6E,0x5A,0xC1,0x99,0x54,0xB2,0x09,0x60,0x49,0x22,0x07,0xEC,0xA8,0x16,0x80,0x5D,0x26,0xC7,0xD0,0xA3,0x92,0x78,0x74,0x3E,0x55,0x2F,0x21,0x6A,0xB1,0xFA,0x56,0xB7,0xBA,0xD5,0xAD,0x6F,0x7D,0xBB,0x3D,0x8E,0x75,0xB4,0x22,0x36,0x7F,0x53,0xCF,0x7E,0xB5,0x67,0x96,0x61,0x34,0xDB,0x52,0x9F,0xF4,0x8E,0xDC,0x88,0xE1,0x5F,0xF2,0x9D,0xEF,0xFF,0x07};
|
||||||
|
//const uint8_t spK[] PROGMEM = {0x01,0x18,0x91,0xB9,0x00,0x4D,0x91,0x46,0x60,0x65,0x2D,0xB3,0xB8,0x67,0xED,0x53,0xF4,0x14,0x64,0x11,0x4B,0x6E,0x79,0x8B,0x5B,0xDE,0xF2,0x74,0xC3,0x05,0x6A,0xE7,0xEA,0x3D,0xEC,0x71,0x2F,0x6D,0x1F,0xB1,0x00,0x2B,0xDF,0xF4,0xA3,0x1D,0xB3,0x24,0x60,0xD4,0xE2,0x7A,0xE5,0x2B,0xDF,0xE9,0x1E,0x43,0x48,0xA3,0xEB,0xE4,0xFB,0xFF,0x01};
|
||||||
|
//const uint8_t spM[] PROGMEM = {0xA9,0xE8,0xC5,0xD8,0x73,0x16,0xCF,0xE2,0x0E,0xB7,0xBB,0xCD,0xA9,0xBB,0x6F,0xF1,0xF0,0xD5,0xB7,0xBE,0xCD,0xEE,0xC6,0x50,0x63,0x72,0x98,0x58,0xEE,0x73,0x5F,0xDB,0xD6,0x62,0x72,0x98,0x58,0xAE,0x7B,0xDD,0xD3,0x5E,0x45,0x72,0x93,0xD8,0x8D,0x87,0x3D,0xEC,0x61,0xCF,0x70,0x96,0x58,0xE1,0xA2,0x4D,0xE2,0x15,0xEF,0xFF,0x07};
|
||||||
|
//const uint8_t spN[] PROGMEM = {0x41,0xEE,0xD1,0xC8,0xB3,0x16,0xEF,0xEE,0xD4,0xC3,0x35,0x59,0xC4,0xE3,0x5B,0xDD,0xEA,0x56,0xBB,0x59,0xED,0x92,0xCD,0x91,0xB4,0x78,0x4F,0x63,0x19,0x9E,0x38,0x2C,0x9C,0xCE,0xA5,0xAF,0xF5,0x08,0xC7,0xB0,0xC2,0x61,0x1E,0x35,0x1E,0xF1,0x8C,0x57,0xBC,0xD3,0xDD,0x4D,0x49,0xB8,0xCE,0x0E,0xF7,0x34,0xAD,0x16,0xBC,0xF9,0xFF,0x01};
|
||||||
|
//const uint8_t spO[] PROGMEM = {0xA3,0x6D,0xB4,0xBA,0x8D,0xBC,0xAD,0xA6,0x92,0xEC,0x0E,0xF2,0xB6,0xAB,0x5D,0x8C,0xA2,0xE0,0xEE,0x16,0xF6,0x3F,0xCB,0x39,0xCC,0xB1,0xAC,0x91,0xE5,0x0C,0x8B,0xBF,0xB0,0x3B,0xD3,0x1D,0x28,0x59,0xE2,0xE9,0x4F,0x7B,0xF9,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spP[] PROGMEM = {0x02,0x88,0x26,0xD4,0x00,0x6D,0x96,0xB5,0xB8,0x25,0x05,0x89,0x6C,0x3D,0xD2,0xE6,0x51,0xB3,0xA6,0xF4,0x48,0x67,0x09,0xA0,0x8C,0xC7,0x33,0x9B,0x79,0xCB,0x67,0x0E,0x80,0xCA,0xD7,0xBD,0x6A,0xD5,0x72,0x06,0xB4,0xB5,0xBA,0xB7,0xBD,0xAF,0x73,0x5D,0xF3,0x91,0x8F,0x78,0xFE,0x3F};
|
||||||
|
//const uint8_t spQ[] PROGMEM = {0x0E,0x98,0xD5,0x28,0x02,0x11,0x18,0xE9,0xCC,0x46,0x98,0xF1,0x66,0xA7,0x27,0x1D,0x21,0x99,0x92,0xB6,0xDC,0x7C,0x17,0xAB,0x2C,0xD2,0x2D,0x13,0x3B,0xEF,0xAA,0x75,0xCE,0x94,0x47,0xD0,0xEE,0x3A,0xC4,0x29,0x2F,0x61,0x35,0x31,0xA2,0x50,0xB6,0xF8,0xCD,0x1F,0xFF,0x0F};
|
||||||
|
//const uint8_t spR[] PROGMEM = {0xAB,0xC8,0x72,0x33,0x93,0xBB,0xDC,0xEE,0xB6,0xB7,0xB9,0xF5,0x68,0x53,0x5C,0xA9,0xA6,0x4D,0xB3,0x6B,0x73,0x0A,0xCB,0x71,0xD8,0xBB,0xAF,0x7D,0x2F,0x47,0xB6,0xC7,0xF4,0x94,0x37,0x9D,0xA9,0x34,0xF8,0x53,0x97,0x78,0xFD,0x3F};
|
||||||
|
//const uint8_t spS[] PROGMEM = {0x6B,0x6E,0xD9,0x34,0x6C,0xE6,0xDC,0xF6,0x36,0xB7,0xBE,0xF5,0x19,0xAA,0x0F,0x2D,0xDA,0x25,0x7B,0x19,0x5B,0x4D,0x9A,0xA2,0xE7,0xB8,0x1D,0x23,0xA5,0x26,0x71,0x2A,0x03,0xFC,0x94,0xE6,0x01,0x0F,0x68,0x40,0x03,0x12,0xE0,0x00,0x07,0x30,0xF0,0xFF};
|
||||||
|
//const uint8_t spT[] PROGMEM = {0x01,0xD8,0xB6,0xDD,0x01,0x2F,0xF4,0x38,0x60,0xD5,0xD1,0x91,0x4D,0x97,0x84,0xE6,0x4B,0x4E,0x36,0xB2,0x10,0x67,0xCD,0x19,0xD9,0x2C,0x01,0x94,0xF1,0x78,0x66,0x33,0xEB,0x79,0xAF,0x7B,0x57,0x87,0x36,0xAF,0x52,0x08,0x9E,0x6B,0xEA,0x5A,0xB7,0x7A,0x94,0x73,0x45,0x47,0xAC,0x5A,0x9C,0xAF,0xFF,0x07};
|
||||||
|
//const uint8_t spU[] PROGMEM = {0xA1,0x9F,0x9C,0x94,0x72,0x26,0x8D,0x76,0x07,0x55,0x90,0x78,0x3C,0xEB,0x59,0x9D,0xA2,0x87,0x60,0x76,0xDA,0x72,0x8B,0x53,0x36,0xA5,0x64,0x2D,0x7B,0x6E,0xB5,0xFA,0x24,0xDC,0x32,0xB1,0x73,0x1F,0xFA,0x1C,0x16,0xAB,0xC6,0xCA,0xE0,0xB5,0xDF,0xCD,0xA1,0xD4,0x78,0x1B,0xB6,0x53,0x97,0x74,0xA7,0x21,0xBC,0xE4,0xFF,0x01};
|
||||||
|
//const uint8_t spV[] PROGMEM = {0x66,0xF3,0xD2,0x38,0x43,0xB3,0xD8,0x2D,0xAC,0x4D,0xBB,0x70,0xB0,0xDB,0xB0,0x0E,0x17,0x2C,0x26,0xAE,0xD3,0x32,0x6C,0xBB,0x32,0xAB,0x19,0x63,0xF7,0x21,0x6C,0x9C,0xE5,0xD4,0x33,0xB6,0x80,0xCB,0x9A,0x9B,0xAF,0x6C,0xE5,0x42,0x70,0x7F,0xB3,0xB3,0x9D,0xEE,0x7C,0x55,0x2B,0x26,0x40,0xD5,0xE2,0xD9,0xF6,0xB1,0x4F,0x75,0xAB,0x7B,0x3D,0xCA,0x35,0x4B,0x13,0x98,0xAF,0xA9,0x57,0x7E,0xF3,0x97,0xBE,0x19,0x0B,0x31,0xF3,0xCD,0xFF,0x03};
|
||||||
|
//const uint8_t spW[] PROGMEM = {0xA1,0xDE,0xC2,0x44,0xC2,0xFC,0x9C,0x6A,0x88,0x70,0x09,0x59,0x7B,0x8A,0xCA,0x3B,0x3D,0xA4,0xCF,0xCD,0x56,0x96,0xC4,0xA6,0xBB,0xF4,0x6E,0x59,0xE2,0x9D,0xEA,0xE2,0x4A,0xD5,0x12,0x65,0xBB,0xB3,0xEB,0x51,0x57,0x12,0x99,0xC1,0xD9,0x6E,0xB7,0xC7,0x31,0x35,0x92,0x6A,0xC9,0x9B,0xC7,0x34,0x4C,0x12,0x46,0x6C,0x99,0x73,0x5F,0xDA,0xD2,0x92,0x92,0x64,0x6C,0xEE,0x6B,0xD9,0x6A,0x22,0x71,0x8F,0xCF,0xE5,0x2C,0x41,0xD4,0xDD,0x36,0xA5,0x3B,0x19,0xF5,0x0C,0xEE,0x13,0xEF,0xFC,0x9A,0xD7,0x85,0xC8,0x62,0xEE,0x6D,0xBF,0xFF,0x07};
|
||||||
|
//const uint8_t spX[] PROGMEM = {0xAD,0x68,0xC9,0xC5,0x32,0x56,0xDF,0xFA,0x54,0x2D,0x35,0x7B,0xF8,0xEA,0x5B,0xDD,0xE6,0x4C,0x6D,0x04,0xA6,0xC5,0xEA,0xB9,0x84,0xB5,0x75,0x23,0x37,0x4F,0x83,0x40,0x11,0xCA,0x5D,0x44,0x36,0x00,0x28,0xA0,0xE6,0x31,0x0F,0x68,0xC0,0x00,0xBF,0x8D,0x79,0xC0,0x03,0x16,0xD0,0x00,0x07,0xFE,0x1F};
|
||||||
|
//const uint8_t spY[] PROGMEM = {0x6A,0xB1,0xA2,0xA7,0x95,0xD2,0xD8,0x25,0x0F,0xA3,0x2D,0xB2,0x7A,0x1C,0xB3,0xDE,0xE6,0xD4,0x45,0x6D,0x56,0xCA,0x9A,0x5B,0xDF,0xFA,0xB6,0xBB,0xDB,0xFD,0x1A,0x8A,0x6F,0x2B,0xF3,0x37,0x7B,0x19,0x4B,0xD3,0x25,0x39,0xFA,0xB9,0x6F,0x6D,0xEB,0x31,0xC4,0x5C,0x1E,0xF7,0xAD,0x1F,0xE5,0x1C,0xA5,0x48,0x5C,0x1E,0xD7,0x2B,0x5F,0xF9,0xFA,0x7F};
|
||||||
|
//const uint8_t spZ[] PROGMEM = {0x6D,0xFD,0xC6,0x5C,0x95,0xD5,0xF5,0xD5,0x02,0x7B,0x5D,0xFD,0x51,0x2D,0x2A,0xE4,0x77,0x75,0xA3,0x3A,0xB1,0xFA,0x9B,0x5D,0xEF,0x6A,0x55,0x33,0x27,0x60,0xD4,0xE2,0xD9,0xCC,0x76,0x4E,0x73,0x9D,0x7B,0x3F,0xFB,0x59,0xAE,0x55,0x0A,0xC1,0x73,0x4D,0xBD,0xEA,0x9D,0x9E,0x15,0x12,0xA0,0x6B,0x75,0x7E,0xFE,0x1F};
|
||||||
|
//const uint8_t spALPHA[] PROGMEM = {0xAD,0xED,0x6A,0xDC,0x4B,0x57,0xEF,0xF6,0xB4,0x53,0x6C,0x6A,0x4B,0x97,0x53,0x77,0x7E,0x19,0xC9,0x9B,0x57,0x99,0xCC,0x7B,0x9A,0x6E,0x9E,0x45,0x2B,0xA2,0xA9,0x0A,0x91,0xCC,0xB5,0x00,0x02,0x14,0x67,0xA1,0x80,0x16,0x2C,0x3C,0x60,0x80,0xE6,0x2C,0x4A,0x51,0x54,0x47,0x38,0x6F,0xDE,0xC3,0x5D,0xF6,0x36,0xF7,0x7A,0xE5,0xFB,0xFF,0x01};
|
||||||
|
//const uint8_t spBRAVO[] PROGMEM = {0x61,0x5A,0xBA,0xC2,0xDD,0x62,0x85,0xD6,0xE8,0x15,0x59,0xB1,0x97,0x9A,0x30,0xD5,0xBC,0x85,0xDF,0xA8,0x63,0x0F,0xE9,0x50,0xE5,0xA7,0xCA,0x6E,0x22,0x5D,0x57,0xEF,0x72,0x97,0xB3,0x2A,0x6D,0x74,0x15,0xE9,0xBA,0x3A,0xF6,0x66,0xE8,0x3E,0xD4,0x5C,0x65,0xD7,0x31,0x2D,0x95,0x54,0xBB,0x8B,0xDF,0xD9,0xAE,0xB1,0xA1,0xAC,0x0E,0x51,0x3F,0xE7,0xB6,0x14,0xD2,0x35,0x4E,0xEE,0xFB,0x5E,0x77,0xB3,0x7B,0xDF,0x19,0x2C,0x7D,0xEC,0xE9,0x2F,0x73,0x05,0xDF,0x19,0x2C,0x7D,0xF8,0xF3,0xFF};
|
||||||
|
//const uint8_t spCHARLIE[] PROGMEM = {0x06,0xD8,0x2D,0x2C,0x01,0x33,0xB7,0x67,0x60,0xC4,0x35,0x94,0xAA,0x5A,0xEA,0x93,0x15,0xD7,0xAA,0x23,0xEE,0x56,0x9E,0xD3,0xAA,0x2E,0xE5,0xDB,0xF9,0xC8,0x4B,0x6A,0x8E,0xE3,0x3E,0x33,0x2F,0x45,0x6E,0x62,0x39,0x9A,0x76,0x74,0x4D,0xA5,0xA5,0x73,0xD2,0x3B,0xAC,0xA9,0xD9,0x61,0x0D,0xDF,0x32,0xE6,0xEE,0x0A,0x39,0xE3,0xF3,0x58,0x97,0x2D,0xC2,0x8C,0x2D,0x7D,0x4D,0xE7,0xCC,0x09,0x18,0xB5,0x38,0x5E,0xFE,0xFE,0x7F};
|
||||||
|
//const uint8_t spDELTA[] PROGMEM = {0x02,0xE8,0x54,0x6D,0xB5,0x35,0x84,0xB9,0xDA,0x9A,0x5B,0x9F,0xAA,0x98,0x71,0x77,0xDB,0x7C,0x8A,0x64,0x2F,0x5C,0xBD,0xF7,0xCA,0x33,0x9F,0x4A,0x95,0x2C,0x2D,0xCB,0xD2,0xAA,0x95,0xDD,0x9A,0x7C,0x7B,0x15,0xD2,0x48,0x8C,0x40,0x11,0xCA,0x5D,0x44,0x36,0x28,0xE0,0x47,0x73,0x01,0x24,0xEA,0xB2,0xBA,0x6A,0xC2,0xC3,0x7C,0xCB,0x1D,0xCF,0xD6,0x54,0xA5,0x87,0x74,0xDD,0xE7,0xBA,0xAB,0x1A,0xF3,0x94,0xCE,0xFD,0xC9,0xEF,0xFF,0x03};
|
||||||
|
//const uint8_t spECHO[] PROGMEM = {0x2B,0x6F,0xB1,0xD9,0xD3,0x36,0xDF,0xF6,0x36,0xB7,0x26,0x85,0x08,0xE5,0x2E,0x22,0x1B,0x20,0x00,0x25,0xAC,0x2A,0x20,0xCF,0xD3,0x52,0x45,0x53,0x6A,0xA9,0x9E,0x4F,0x9B,0x54,0x47,0xB9,0xE4,0xDF,0xC3,0x1C,0xC6,0x98,0x45,0x65,0xBB,0x78,0x9F,0xCB,0x5C,0xD2,0xEA,0x43,0x67,0xB0,0xE5,0xCD,0x7B,0x38,0x9D,0xAD,0x2C,0x15,0x37,0xF1,0xFC,0x7F};
|
||||||
|
//const uint8_t spFOXTROT[] PROGMEM = {0x08,0x98,0xB1,0x53,0x02,0x1E,0x88,0xC0,0xCA,0x8B,0xDA,0x4A,0x97,0x2E,0xB7,0xBA,0xD5,0x2A,0x73,0xE8,0x48,0xD3,0xCD,0xAD,0xA8,0x35,0xA2,0xC5,0xAA,0x90,0x42,0x84,0x72,0x17,0x91,0x0D,0x0A,0xA8,0xA1,0xC5,0x01,0xAF,0xF8,0x78,0x40,0x01,0x6F,0xB5,0x23,0xA0,0x47,0x53,0x0C,0x44,0xC0,0x03,0xAD,0x49,0x85,0x53,0x53,0xDD,0x8D,0x26,0x56,0xCB,0x70,0xCD,0xB7,0xA6,0x64,0xC7,0x2B,0x39,0xEF,0x5A,0xAA,0xB8,0xF4,0xE2,0x3E,0xF3,0x1C,0x57,0x0E,0x1D,0x69,0xBA,0xD9,0x5F,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x80,0x00,0x8E,0xE0,0x30,0xC0,0xB2,0x53,0x04,0xA8,0xCA,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spGOLF[] PROGMEM = {0x0A,0x88,0xA1,0x71,0x15,0x85,0x76,0x45,0x8A,0xFF,0x9B,0xDF,0x6C,0x65,0x99,0x5C,0xB7,0x72,0xDE,0x9D,0xED,0x72,0x77,0x73,0x6C,0x4B,0x54,0x35,0x63,0xE4,0xA6,0xEE,0xF9,0x34,0x57,0x94,0x39,0x63,0xE4,0x86,0x5F,0x04,0x98,0x34,0xDD,0x02,0x0E,0x98,0x32,0x5D,0x03,0x12,0xE0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spHENRY[] PROGMEM = {0x08,0xC8,0x4A,0x8C,0x03,0x1A,0x68,0x49,0x0B,0xAC,0xE5,0x11,0xFA,0x14,0xCD,0x35,0x59,0xC4,0xE3,0x5B,0xEC,0xBC,0xA5,0xD5,0x88,0x96,0x99,0xBD,0x9E,0x95,0x3C,0x1B,0xB3,0x64,0x69,0x1A,0xEB,0xD2,0xA7,0xA9,0x1C,0xE6,0xD1,0xDB,0x98,0x07,0xA7,0x5A,0xAA,0x5F,0x53,0x4D,0xAA,0x61,0x9E,0x7D,0xAC,0xDD,0x8E,0x48,0xC8,0x9E,0xB1,0x77,0x5B,0x44,0x95,0xAB,0xEB,0x15,0xAE,0x1E,0x0D,0x2D,0xF3,0x4D,0x7C,0xFC,0xF3,0xFF};
|
||||||
|
//const uint8_t spINDIA[] PROGMEM = {0xA3,0x9D,0xD6,0x99,0x32,0x17,0xAF,0x66,0x86,0x16,0x74,0x5F,0x73,0x9A,0xE1,0x4A,0xC4,0xF4,0xCE,0xAD,0x46,0xD1,0x1D,0x5A,0x46,0x3A,0x99,0x45,0x2B,0xAA,0x82,0xAC,0x08,0x27,0xBE,0x5A,0xDD,0x0C,0x25,0x42,0xBC,0xFB,0xF4,0xD3,0x17,0x61,0xF8,0x96,0x3B,0xDC,0xF1,0x4C,0xDD,0x26,0x4B,0xD9,0x9E,0xBB,0xAC,0xB5,0xBB,0x36,0x0D,0xDA,0x7B,0xF6,0xA6,0xD3,0x3A,0xA5,0xF7,0x7E,0xE7,0x3B,0xBF,0xF2,0x55,0x17,0xD6,0xCE,0xAB,0xFD,0xFF,0xFF};
|
||||||
|
//const uint8_t spJULIET[] PROGMEM = {0x61,0x5D,0x96,0x49,0x34,0xD2,0x06,0x60,0xC7,0x90,0x0C,0x8C,0x66,0xF6,0x15,0x22,0x4D,0x37,0xAA,0x6A,0xC8,0x2C,0x6D,0xCD,0x28,0xB2,0x15,0x8B,0xE4,0x35,0xB3,0x68,0x79,0x51,0xE6,0xDA,0x9C,0xBE,0x15,0x43,0x89,0xF0,0xA2,0xDB,0x95,0x77,0xA7,0xA6,0x66,0x49,0x77,0xB1,0x9A,0x9E,0x0A,0xD5,0x75,0xEB,0xEE,0xF6,0xB0,0xC6,0xE6,0x83,0xD2,0xE3,0xEB,0x5E,0xD7,0xDA,0x5C,0x48,0x87,0x6D,0x9E,0x7B,0xDF,0xF3,0x89,0x40,0x11,0xCA,0x5D,0x44,0x36,0x00,0x38,0x60,0xEA,0x8C,0x00,0x2C,0xB3,0x6D,0x01,0x01,0x14,0x5F,0x8E,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spLIMA[] PROGMEM = {0x61,0x5A,0x90,0xBA,0xC0,0xD7,0xA6,0x69,0x00,0x19,0x85,0x6A,0xDA,0x9A,0xCD,0x24,0xD9,0xCC,0xCB,0x29,0x46,0x76,0x66,0xF5,0x37,0x3B,0x9B,0xC9,0x48,0x7B,0x50,0xD4,0x8E,0xD9,0xBD,0xA8,0x75,0x6B,0xB3,0x62,0xEE,0xF4,0xB8,0xB5,0xAD,0xFD,0x98,0x8A,0x51,0x0E,0x91,0xB4,0xA3,0x6F,0xBC,0x32,0x8B,0x3A,0xDF,0xE1,0xEE,0xE3,0xCC,0x6A,0x23,0x43,0x57,0xF5,0xA7,0xBE,0xF5,0xFD,0x7F};
|
||||||
|
//const uint8_t spMIKE[] PROGMEM = {0x66,0x31,0x3C,0x7C,0x52,0xE3,0xC4,0x69,0xF5,0x85,0x57,0x86,0x51,0xAA,0xD3,0x56,0x75,0xA1,0x69,0x9D,0x6F,0x7D,0xCA,0x6A,0x57,0x23,0x6D,0xF5,0xCD,0x57,0xD1,0x4B,0x50,0x78,0x2C,0xDA,0x75,0x69,0x46,0x77,0xB4,0xCE,0xDB,0xB1,0x45,0xAD,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x18,0xD0,0x3C,0x91,0x03,0x5A,0x09,0xB1,0x80,0x00,0xB2,0x13,0xFE,0x7F};
|
||||||
|
//const uint8_t spNOVEMBER[] PROGMEM = {0x6A,0x2B,0x02,0x62,0x4B,0xE3,0xDA,0x75,0x2C,0x5D,0x87,0xB8,0x73,0x9B,0xD5,0x66,0x1D,0x16,0x66,0x7D,0x57,0x9B,0x45,0x59,0x07,0xB7,0x6B,0x55,0xB0,0x99,0xCD,0x9C,0xAD,0x56,0xA1,0x88,0xCE,0x3A,0x99,0x33,0xFB,0xC5,0xCC,0xD5,0xA8,0xA5,0xA9,0x1B,0xDF,0x8E,0xBA,0x05,0xB3,0x34,0xED,0x7C,0xCB,0x9B,0x8F,0xAC,0x38,0xCB,0x0C,0x6D,0x5C,0xB2,0xA2,0x94,0xDA,0xCD,0x4D,0x2C,0x55,0x2B,0x75,0x4A,0xA7,0xBB,0xD5,0x3D,0xA4,0x2D,0x77,0xE5,0x2A,0xEE,0x9C,0xD7,0xB4,0x65,0x77,0xA0,0x9B,0xFA,0xE2,0x9E,0xAE,0x5C,0x0B,0xAA,0xD4,0xB7,0xBF,0xFD,0x6D,0x9E,0xE2,0x1A,0x7C,0x43,0xAF,0x7A,0xCB,0x30,0xCA,0xE6,0x2D,0xFF,0x0F};
|
||||||
|
//const uint8_t spOSCAR[] PROGMEM = {0x6B,0xC8,0xE2,0xB2,0x42,0x3A,0xDF,0xFA,0x16,0x27,0x4F,0xAE,0x7D,0xC4,0x17,0xB7,0x2C,0x45,0xAF,0xA4,0xB6,0x6D,0x80,0x03,0xD8,0x0C,0xF0,0xA7,0x9B,0x07,0x3C,0xE0,0x80,0xEB,0xB5,0xC1,0x6C,0x4D,0x5D,0x45,0x69,0xDC,0xD4,0x17,0x37,0x49,0x26,0x4A,0x5B,0x9B,0x53,0x91,0x0D,0xE7,0x9D,0xFD,0x1C,0xDB,0x92,0x9B,0x61,0xB5,0xF4,0x9E,0x5B,0xDD,0xEB,0x99,0xEE,0x12,0x07,0x75,0x52,0x6F,0xFE,0xC2,0x5F,0x5A,0x91,0x0E,0x67,0xF9,0x7F};
|
||||||
|
//const uint8_t spPAPA[] PROGMEM = {0x0A,0x70,0x4A,0xB5,0xA5,0x45,0x55,0x84,0x49,0xCC,0x93,0x66,0xD7,0x19,0x26,0x4B,0x4E,0x96,0xDD,0x44,0xBA,0xAE,0xBE,0xD9,0xCC,0x10,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x60,0x80,0xF1,0xE9,0xAB,0xCA,0xA6,0x23,0xD4,0x36,0xDF,0xE1,0x8C,0x55,0x74,0x86,0x6B,0x9F,0xB1,0x67,0xBD,0xE1,0xE6,0xBB,0xDB,0x97,0x53,0x45,0x88,0xCF,0xAE,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spQUEBEC[] PROGMEM = {0x0C,0x88,0x7E,0x8C,0x02,0xA5,0x0A,0x31,0xDD,0x5C,0xB2,0xAC,0x26,0x5B,0xCF,0x4C,0xEE,0xBB,0xBB,0xDE,0xA7,0xCD,0xA8,0xB4,0x75,0x4D,0x1C,0xB7,0xD1,0xD5,0x28,0xEE,0xE6,0x5B,0x76,0x7B,0x9A,0x1A,0xC4,0x33,0xF3,0xF1,0x6D,0x76,0x3F,0xE7,0xB6,0xB6,0xEC,0x12,0x91,0x9B,0xF2,0x8E,0x40,0x11,0xCA,0x5D,0x44,0x36,0x80,0x00,0x7A,0x2F,0x53,0x40,0x2D,0x24,0x14,0xF8,0x7F};
|
||||||
|
//const uint8_t spROMEO[] PROGMEM = {0xA2,0xD5,0x39,0x38,0xCA,0xEC,0xDB,0xA5,0x4C,0xA1,0x98,0x5A,0xB9,0xF2,0xD3,0x47,0x6F,0xE9,0x69,0xCA,0x4E,0xDD,0x89,0x57,0x0E,0x69,0x3F,0x45,0x61,0xD9,0x95,0x98,0x65,0x67,0x25,0x6B,0x86,0x64,0x4C,0xAC,0xF5,0xE2,0x54,0xCD,0x86,0x7A,0xD0,0xE6,0x35,0x4C,0xD7,0x02,0xA5,0x7B,0xF6,0xB0,0xA7,0xBD,0xAC,0xB5,0xAA,0x54,0x1D,0xDB,0xB2,0xF6,0xEC,0xC3,0xD3,0x64,0x73,0xD9,0x63,0xC8,0x2C,0xD5,0xDF,0xE9,0x0C,0xA1,0x33,0xD8,0xF2,0xE6,0x33,0x5E,0xEE,0x09,0xB6,0xB2,0x54,0xDC,0xF8,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spSIERRA[] PROGMEM = {0x0C,0xF8,0xAD,0xDC,0x02,0x1E,0xB0,0x80,0x06,0x4A,0xDE,0x7D,0x90,0xB8,0xBD,0x1E,0xD5,0xC8,0x45,0xE8,0xF6,0x76,0x56,0xB3,0xDE,0xF5,0xAD,0x4F,0x35,0x72,0xB1,0xB8,0xAE,0x39,0x65,0x0F,0x45,0x56,0xFA,0xE5,0xE4,0x25,0x24,0xE5,0xC8,0xE6,0x91,0xC6,0xC9,0x99,0x6E,0x69,0x7B,0xDA,0xF3,0xD5,0xA4,0xA4,0x95,0x6E,0x5D,0xF6,0xB0,0xB7,0xB5,0x17,0x5B,0xD6,0x2A,0x9B,0xC7,0x9D,0x5D,0x5B,0x9B,0xEF,0xEA,0x77,0x7D,0xCA,0x5F,0x55,0xD9,0x94,0xF4,0xFE,0x7F};
|
||||||
|
//const uint8_t spTANGO[] PROGMEM = {0x0E,0x58,0x5A,0xC3,0x02,0x27,0xEB,0xA1,0xC4,0x2B,0x97,0xDC,0xF2,0x16,0x27,0xEF,0x51,0xB9,0x2A,0x2B,0xEF,0xAC,0x64,0x3D,0x60,0x79,0x99,0xE2,0x52,0x74,0x8F,0x9E,0x56,0xAA,0x43,0x99,0x24,0x75,0x5A,0x3A,0x0E,0x4D,0x31,0xC1,0xAC,0x96,0x24,0xCD,0x35,0x96,0x38,0xC9,0xAA,0xD6,0x25,0x17,0x96,0xA6,0xBB,0xE7,0xB0,0xA6,0x2C,0x2A,0xDB,0xC5,0xFB,0x9E,0xE6,0x92,0x76,0x1F,0x3A,0x83,0x2D,0x6F,0x3C,0xC3,0xE5,0x6C,0x65,0xA9,0xB8,0xF1,0xB7,0xBD,0xFF,0x1F};
|
||||||
|
//const uint8_t spUNIFORM[] PROGMEM = {0x61,0x3D,0x56,0x98,0xD4,0xB6,0xE6,0xA5,0x8D,0xC7,0xA8,0x01,0xC5,0xDA,0x33,0x2C,0x97,0x06,0x12,0xD9,0x4F,0xD9,0x6D,0x30,0xA6,0x65,0xDF,0x79,0x4B,0x8B,0x11,0xCF,0xE0,0xAE,0x29,0xCD,0x4E,0x5D,0x38,0xEA,0xF5,0xF4,0x64,0x45,0x47,0x84,0xCA,0xE6,0x5D,0xF5,0x96,0x01,0xCD,0x97,0x6A,0x40,0x03,0x1A,0x28,0x5D,0xD0,0xDB,0x61,0xEC,0x7D,0xF7,0x7B,0x3C,0x53,0x16,0xDB,0x9A,0xEA,0xF5,0x2E,0x6B,0x2D,0x6A,0x43,0x46,0xBC,0xCD,0xB3,0x3D,0xD9,0xB5,0xDA,0x70,0xDF,0x72,0xE7,0x94,0xEA,0xCD,0x9D,0xDD,0x9D,0xBC,0x73,0xA9,0x28,0x35,0x4F,0x12,0x41,0xE1,0x96,0xD4,0x3D,0x4D,0x24,0xA7,0x8A,0x94,0xF8,0xFA,0x37,0x7C,0xCD,0x76,0x78,0x50,0xEA,0xF8,0xFD,0x3F};
|
||||||
|
//const uint8_t spVICTOR[] PROGMEM = {0x6E,0x2D,0xCA,0xD8,0x43,0xD5,0x99,0xBD,0x58,0xE6,0x70,0xF1,0x9A,0x97,0xD5,0xB6,0x54,0xAA,0x26,0x7D,0x6E,0xB5,0xB2,0xD6,0x8D,0x4D,0x74,0xCB,0x4E,0x4D,0x3C,0xB2,0xAA,0x8B,0x38,0x16,0x40,0xE5,0x8C,0x18,0x40,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x0C,0xB0,0xED,0xA4,0x02,0xAA,0x15,0x5A,0x43,0xF5,0x21,0x54,0x96,0x6D,0x2C,0xA5,0x26,0x7A,0xB9,0xB7,0xBE,0xA5,0x27,0x57,0x87,0x2E,0xF7,0x1F,0xFE,0xDC,0x49,0xBB,0xBC,0x6F,0xFC,0xFD,0xEF,0xFF,0xFF,0x07};
|
||||||
|
//const uint8_t spWHISKY[] PROGMEM = {0x04,0x88,0xAE,0x8C,0x03,0x12,0x08,0x51,0x74,0x65,0xE9,0xEC,0x68,0x24,0x59,0x46,0x78,0x41,0xD7,0x13,0x37,0x6D,0x62,0xC3,0x5B,0x6F,0xDC,0xD2,0xEA,0x54,0xD2,0xE3,0x89,0x01,0x7E,0x2B,0xF7,0x80,0x07,0x14,0xD0,0xE5,0x15,0x38,0x60,0x8C,0x70,0x03,0x04,0x29,0x36,0xBA,0x5E,0x14,0x34,0x72,0xF6,0xE8,0xA7,0x6F,0x82,0xF4,0x2D,0x73,0xEA,0x47,0x3A,0x67,0x6A,0xC0,0xF0,0x2F,0xF1,0x4E,0xCF,0xA8,0x8A,0x1C,0xB9,0xD8,0xFF,0xEE,0x1F,0xBB,0x59,0xD0,0xD6,0xFE,0x3F};
|
||||||
|
//const uint8_t spXRAY[] PROGMEM = {0x69,0xAE,0xDE,0x34,0x3A,0x6B,0x9F,0xAC,0xA5,0x66,0x0F,0x5F,0x7D,0x8B,0x5B,0xAD,0xAA,0x8D,0xC0,0xB4,0x58,0xDD,0xDB,0xD0,0xB6,0x6E,0xE4,0xE6,0x69,0x10,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x10,0x40,0xCD,0x63,0x1A,0x60,0xC0,0x6F,0x63,0x1C,0xA0,0x00,0x5B,0xFD,0x54,0xEA,0x54,0xE7,0x66,0x4E,0x8D,0xC3,0xD3,0xF4,0xE6,0xA9,0x4F,0x6B,0xAE,0x2E,0x39,0x42,0xFB,0xEE,0x6D,0x1C,0xCD,0x24,0x45,0xF9,0xE7,0x7E,0xF6,0x33,0x5F,0xF9,0x0A,0xCF,0xB4,0x4B,0x94,0xBE,0x27,0x3E,0xF1,0x75,0xEF,0xCC,0x09,0x18,0xB5,0xF8,0xFF,0x01};
|
||||||
|
//const uint8_t spYANKEE[] PROGMEM = {0x6E,0xEF,0x42,0x58,0xB6,0x6B,0xA7,0x7D,0x68,0x25,0xCC,0x59,0xB4,0xF6,0x11,0x82,0xC8,0x6A,0xF1,0x1A,0x46,0x2E,0x12,0x8D,0x37,0xA7,0xEF,0xC9,0xC9,0xA3,0x6E,0x9F,0x76,0xD4,0x22,0x73,0x7F,0xB4,0xEA,0x51,0x0B,0x2D,0x62,0xE2,0xA8,0x47,0x43,0xD7,0x2E,0x29,0xAE,0x4D,0x92,0xAA,0x28,0x5C,0x8B,0xB9,0x6A,0xEB,0x24,0x95,0xE3,0x80,0x1D,0x93,0x35,0x90,0xBA,0x59,0x03,0x45,0xB3,0x75,0x19,0x46,0x27,0x96,0x98,0xC5,0x65,0x1F,0xCD,0x88,0xBC,0x16,0xD7,0x3D,0x3D,0x63,0x10,0x49,0x6E,0xED,0xF8,0xFA,0xEF,0xFF,0x01};
|
||||||
|
//const uint8_t spZULU[] PROGMEM = {0x6D,0xFE,0xDE,0xC4,0xC4,0xE8,0x29,0x60,0x00,0x2E,0x0F,0x9C,0x6C,0x29,0x71,0x2A,0x4E,0x77,0x93,0x15,0x77,0x2A,0xAE,0xC3,0xCE,0x76,0x3C,0x92,0xA5,0x44,0x78,0xD1,0x6D,0xCF,0x47,0x3B,0xB8,0xBB,0x07,0xF6,0x5B,0x43,0x91,0x6E,0xA9,0xF2,0x65,0x4C,0xC9,0x98,0x97,0x69,0x9F,0xBA,0xE5,0x33,0x9C,0xC1,0x9A,0x8F,0xCA,0xDE,0x70,0x07,0x9D,0xEE,0xC9,0x79,0xE2,0xED,0xFF,0xFF,0x07};
|
||||||
|
//const uint8_t spTHE[] PROGMEM = {0x6E,0xAD,0xCC,0x34,0x9C,0x97,0xE8,0x23,0xED,0x5D,0xA4,0xBB,0xF1,0x96,0xD9,0xEE,0xFA,0xD4,0x45,0x75,0xA6,0xC9,0xE6,0x5B,0xDF,0xE6,0x0E,0x67,0xAE,0x7C,0xD3,0x43,0xFB,0xEC,0x7D,0x9E,0xFD,0xFE,0x7F};
|
||||||
|
//const uint8_t spWATTS[] PROGMEM = {0xAA,0x15,0x7A,0x23,0x5C,0x12,0xE9,0xD1,0x0D,0x5A,0x76,0x75,0xB2,0xAA,0xD0,0x3B,0xD9,0xED,0x81,0x99,0x4A,0x1B,0xD5,0x8C,0x25,0xFA,0xDD,0xF5,0xA9,0xA3,0x9F,0x2C,0xE3,0x2E,0xB7,0xBE,0xCD,0xEE,0xD6,0x9C,0xDC,0x44,0xAB,0xAD,0x6E,0x67,0x0E,0xE9,0xCD,0x7D,0xBB,0x1E,0x0C,0x1C,0x24,0xCA,0x5C,0x59,0x03,0x00,0x01,0xB6,0x2A,0x15,0xC0,0x2F,0x19,0x1A,0xB0,0x80,0x05,0x2C,0x60,0x80,0xAF,0xA2,0x24,0xF0,0xFF};
|
||||||
|
//const uint8_t spMETER[] PROGMEM = {0xA1,0x8F,0x5C,0xB5,0x56,0x92,0xE4,0xE1,0xF4,0xDD,0x0B,0x59,0x6B,0xE3,0x53,0x8C,0x14,0x44,0x15,0x8B,0x46,0x3A,0xB3,0x03,0x7B,0xBE,0x99,0x89,0x49,0xB7,0x72,0xC4,0xEA,0x4C,0x01,0xD8,0x2E,0xC8,0x03,0xA3,0xAB,0x91,0x39,0x2C,0x17,0x8D,0xAE,0x36,0xE6,0x34,0x7F,0x3D,0xE6,0xEA,0x13,0x6C,0x79,0x73,0x3B,0xAA,0x1B,0xB0,0xD3,0x3C,0xFD,0x6A,0x4F,0xF1,0x09,0x35,0x9E,0xA5,0xBE,0xFF,0x0F};
|
||||||
|
const uint8_t spDANGER[] PROGMEM = {0x2D,0xBF,0x21,0x92,0x59,0xB4,0x9F,0xA2,0x87,0x10,0x8E,0xDC,0x72,0xAB,0x5B,0x9D,0x62,0xA6,0x42,0x9E,0x9C,0xB8,0xB3,0x95,0x0D,0xAF,0x14,0x15,0xA5,0x47,0xDE,0x1D,0x7A,0x78,0x3A,0x49,0x65,0x55,0xD0,0x5E,0xAE,0x3A,0xB5,0x53,0x93,0x88,0x65,0xE2,0x00,0xEC,0x9A,0xEA,0x80,0x65,0x82,0xC7,0xD8,0x63,0x0A,0x9A,0x65,0x5D,0x53,0xC9,0x49,0x5C,0xE1,0x7D,0x2F,0x73,0x2F,0x47,0x59,0xC2,0xDE,0x9A,0x27,0x5F,0xF1,0x8B,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spPRESSURE[] PROGMEM = {0x06,0x28,0xC1,0x4C,0x03,0x2D,0x49,0x59,0x4A,0x9A,0x3D,0x9F,0xAC,0x04,0x2D,0x2D,0x69,0x73,0xB2,0x56,0x4C,0x43,0x6D,0xF5,0xCD,0x5A,0x3E,0x6A,0x89,0x09,0x65,0x71,0xC0,0xAA,0xDB,0x1E,0x88,0x40,0x04,0x46,0xDF,0x63,0x0A,0x9A,0x65,0x1D,0x43,0xC9,0x49,0x5C,0xE1,0x7D,0xCF,0x7B,0x9F,0x47,0xB9,0xCA,0x12,0xF6,0xD6,0x3C,0xF9,0x8B,0x9F,0xFD,0xFF,0x1F};
|
||||||
|
//const uint8_t spCHANGE[] PROGMEM = {0x06,0x58,0xD5,0xC3,0x01,0x73,0x6E,0x64,0xC0,0x03,0x2B,0x1B,0xB9,0x95,0xDC,0xFB,0xDE,0xE2,0x14,0xA3,0x06,0x4B,0xE5,0xA2,0x9B,0xEF,0x7C,0x95,0xC3,0x1B,0xCA,0x64,0xA5,0x5D,0xED,0x76,0xCE,0x7D,0x2D,0x6B,0xB3,0x24,0x19,0x11,0x3A,0x1D,0xDD,0x93,0x94,0x7A,0x54,0x7F,0xBA,0xBB,0x4B,0xC5,0x08,0xAD,0x1A,0x9E,0xEE,0x85,0x43,0x2D,0x9E,0x79,0xAA,0x10,0xCA,0xD2,0x2A,0xEA,0xC9,0x82,0xAC,0xC3,0x6B,0xCB,0x87,0x3D,0x51,0xB2,0x75,0x74,0x2D,0xF4,0xCE,0x30,0x2C,0x62,0x76,0x14,0x30,0x94,0x92,0x02,0xC6,0x5C,0xB7,0x00,0x02,0x5A,0x17,0xF9,0x7F};
|
||||||
|
//const uint8_t spMINUS[] PROGMEM = {0xE6,0x28,0xC4,0xF8,0x44,0x9A,0xFB,0xCD,0xAD,0x8D,0x2A,0x4E,0x4A,0xBC,0xB8,0x8C,0xB9,0x8A,0xA9,0x48,0xED,0x72,0x87,0xD3,0x74,0x3B,0x1A,0xA9,0x9D,0x6F,0xB3,0xCA,0x5E,0x8C,0xC3,0x7B,0xF2,0xCE,0x5A,0x5E,0x35,0x66,0x5A,0x3A,0xAE,0x55,0xEB,0x9A,0x57,0x75,0xA9,0x29,0x6B,0xEE,0xB6,0xD5,0x4D,0x37,0xEF,0xB5,0x5D,0xC5,0x95,0x84,0xE5,0xA6,0xFC,0x30,0xE0,0x97,0x0C,0x0D,0x58,0x40,0x03,0x1C,0xA0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spNOT[] PROGMEM = {0x66,0x6B,0x1A,0x25,0x5B,0xEB,0xFA,0x35,0x2D,0xCD,0x89,0xA7,0xDA,0x9A,0x31,0x34,0x93,0x9E,0xA6,0x4B,0x4E,0x57,0xE5,0x86,0x85,0x6C,0xBE,0xED,0x6D,0x57,0x93,0xFC,0xB9,0x96,0x2D,0x1E,0x4D,0xCE,0xAD,0xE9,0x3E,0x7B,0xF7,0x7D,0x66,0xB3,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x40,0x01,0x4B,0xB8,0x2B,0xE0,0x87,0x68,0x05,0x74,0x9D,0x82,0x80,0x62,0x55,0xFE,0x1F};
|
||||||
|
//const uint8_t spSTART[] PROGMEM = {0x04,0xF8,0xC5,0x9C,0x03,0x1A,0xD0,0x80,0x04,0x38,0x00,0x06,0x58,0x22,0x7D,0x65,0x9D,0x87,0x8B,0x5B,0xD7,0x53,0x67,0x37,0x96,0x21,0x79,0x6F,0x7D,0xEB,0xD5,0x64,0xB7,0x92,0x43,0x9B,0xC7,0x50,0xDD,0x92,0x1D,0xF7,0x9E,0x53,0xDF,0xDD,0x59,0xCB,0x21,0xAD,0xF6,0x46,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x40,0x01,0xDD,0xB2,0x2A,0xE0,0xB7,0x0C,0x03,0x4C,0x9D,0x4A,0x80,0xEA,0x54,0xFE,0x1F};
|
||||||
|
//const uint8_t spLINE[] PROGMEM = {0x61,0xED,0x40,0xC7,0xCD,0xD2,0x96,0x65,0x01,0x9E,0x50,0x73,0x5B,0x96,0x83,0x70,0x87,0x2D,0xD9,0x9A,0x3B,0xA9,0x49,0x97,0x2E,0xB7,0xBF,0xDD,0x6D,0x4F,0x5B,0xD5,0xBA,0x95,0x75,0xD9,0xFD,0x1A,0x86,0x6B,0xD6,0x8A,0xC5,0x7B,0x9A,0xF3,0x3C,0xFA,0x51,0xAE,0x9E,0x59,0x55,0x2A,0x72,0xBE,0xC2,0x35,0x12,0xB9,0x88,0xBB,0x89,0x57,0xB8,0x7A,0x72,0x77,0xB0,0x3A,0xE9,0xEF,0x2E,0xC5,0xDD,0x1F,0x87,0xBF,0x8A,0xD0,0xEA,0x68,0xF8,0xFF};
|
||||||
|
//const uint8_t spOFF[] PROGMEM = {0x6B,0x4A,0xE2,0xBA,0x8D,0xBC,0xED,0x66,0xD7,0xBB,0x9E,0xC3,0x98,0x93,0xB9,0x18,0xB2,0xDE,0x7D,0x73,0x67,0x88,0xDD,0xC5,0xF6,0x59,0x15,0x55,0x44,0x56,0x71,0x6B,0x06,0x74,0x53,0xA6,0x01,0x0D,0x68,0x80,0x03,0x1C,0xF8,0x7F};
|
||||||
|
//const uint8_t spTIME[] PROGMEM = {0x0E,0xD8,0x5A,0x2D,0x00,0x37,0xA6,0x39,0xA0,0x9B,0xB0,0x95,0x17,0x9B,0x1E,0x21,0x2D,0x4F,0x51,0xF4,0x86,0x25,0x6F,0xB9,0xD5,0xA9,0xBB,0x9E,0xE0,0xD6,0x36,0xB7,0xBE,0xED,0x1E,0xD6,0xDC,0x5D,0x29,0xB7,0xAF,0xDE,0x6B,0xDD,0xCB,0xDE,0xB4,0xB1,0xAB,0xD6,0xC9,0x67,0x3C,0xDD,0x35,0x85,0x73,0x98,0xD8,0xFD,0x7F};
|
||||||
|
//const uint8_t spAUTOMATIC[] PROGMEM = {0x6B,0xAC,0xA4,0xA7,0x82,0xFD,0xDD,0xF1,0x0E,0x67,0x68,0xB2,0xA2,0x83,0x72,0x1B,0xA0,0x52,0x65,0x03,0xFC,0x24,0x3A,0xEA,0xAD,0xCD,0xD5,0x4C,0xDB,0xA9,0xAB,0x76,0x4B,0x93,0x2D,0x67,0x28,0xA2,0xCC,0xC2,0xF3,0x8C,0x21,0x2B,0xD7,0x70,0xC9,0xD8,0x86,0x4A,0x8D,0xC6,0x35,0x49,0xE9,0x8B,0x54,0x29,0x76,0x37,0x63,0xC8,0xCE,0xDD,0x54,0x6A,0x9D,0xBA,0xC6,0xD2,0xD2,0x58,0x72,0xAB,0x5B,0xDE,0x72,0x35,0x35,0x5B,0x84,0x54,0x6D,0xD3,0xEE,0x90,0x11,0xEA,0x4E,0x5A,0x5B,0x53,0xAA,0xB3,0x2F,0xB9,0xD3,0x59,0xBB,0x6B,0xE5,0x94,0x35,0x7B,0x6F,0xE7,0x34,0xAD,0xD8,0xBA,0x17,0x81,0x22,0x94,0xBB,0x88,0x6C,0x00,0x03,0xB4,0x12,0x22,0x01,0x0E,0xFC,0x3F};
|
||||||
|
//const uint8_t spWEIGHT[] PROGMEM = {0x62,0x13,0x7E,0x23,0x4C,0x22,0xEB,0x4D,0xAD,0x46,0x7F,0x5A,0xB0,0x95,0xB4,0x38,0xF3,0xA1,0x4E,0x6D,0xD6,0x94,0xCC,0x9A,0x3B,0x6D,0x39,0x7D,0xF3,0xC1,0x99,0xF2,0xE6,0xB4,0x23,0x0E,0x51,0xF8,0x9A,0xDB,0x8E,0x6E,0xE4,0x04,0xC9,0x7C,0xDC,0x17,0x75,0x8C,0x26,0xA8,0x56,0x8B,0x11,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x00,0x00,0x01,0xBC,0xC0,0x66,0x80,0x1F,0x73,0x04,0xB0,0xDD,0x34,0x02,0x46,0xE9,0xF8,0x7F};
|
||||||
|
//const uint8_t spSMOKE[] PROGMEM = {0x08,0xF8,0xBB,0x4D,0x02,0x0A,0x78,0x33,0xCC,0x03,0x1E,0x40,0x40,0x53,0x1A,0x22,0xC8,0x92,0x35,0x87,0x92,0xD4,0x74,0x95,0x99,0x55,0x7B,0x52,0xB7,0x5D,0xEE,0x72,0x57,0xAD,0xF7,0x6E,0xA2,0x84,0xFB,0xD6,0xD1,0x6D,0x4E,0x6E,0x84,0xA3,0x37,0x84,0x8B,0x50,0xEE,0x22,0xB2,0x01,0x80,0x01,0x75,0x14,0x7B,0x80,0x01,0x39,0x98,0xFC,0x3F};
|
||||||
|
//const uint8_t spABORT[] PROGMEM = {0x63,0xC9,0xA6,0x2A,0x54,0xD7,0x9C,0xA5,0xF0,0xEC,0x0A,0xCA,0xBB,0x67,0xB6,0x1B,0xD9,0xA6,0xAA,0x59,0xE9,0x46,0x8E,0x20,0xC2,0x83,0x25,0x0B,0x39,0x1D,0x4D,0x4D,0x77,0x37,0x76,0x1A,0x55,0x54,0x53,0xA9,0x94,0x65,0x17,0xAB,0xC8,0xAC,0xDA,0x53,0xB9,0xEF,0x72,0x35,0x51,0x5E,0x58,0xAB,0xFE,0xD5,0x66,0xB5,0x12,0x23,0xFA,0xD7,0x94,0x63,0x53,0x95,0xF8,0x69,0x6B,0xEE,0x4E,0x51,0xE2,0x2F,0x6C,0xB9,0x13,0x57,0x59,0x7F,0x04,0x8A,0x50,0xEE,0x22,0xB2,0x01,0x1C,0xB0,0x9D,0xBA,0x03,0x7E,0x0F,0x53,0xC0,0x48,0x53,0x08,0x88,0xD2,0xEC,0xFF,0x01};
|
||||||
|
//const uint8_t spCALL[] PROGMEM = {0x02,0x48,0xA5,0xD8,0x02,0x1A,0x18,0x71,0x16,0x15,0x95,0xA4,0x7A,0x65,0x95,0xD5,0x44,0x88,0xFB,0x5B,0xDC,0x62,0x95,0x49,0x4E,0xA7,0x49,0xB6,0x5D,0xED,0x76,0x76,0x73,0x9A,0x4B,0xD9,0x83,0xBD,0x2A,0xB4,0xCE,0xF5,0x0A,0x77,0x50,0xB9,0x25,0x92,0x25,0xDE,0xE1,0x49,0xC2,0x77,0x44,0x5D,0xFB,0xEF,0xFF,0x01};
|
||||||
|
//const uint8_t spCYCLE[] PROGMEM = {0x08,0xF8,0xB3,0x5C,0x03,0x16,0xB0,0x80,0x06,0x56,0x55,0x64,0xB9,0xBB,0xB7,0x39,0x4D,0x71,0xA5,0x15,0xBA,0xF8,0x36,0xBB,0x19,0x75,0xCB,0x8A,0xED,0x35,0xB1,0xB7,0xAC,0x15,0xA1,0xDC,0x45,0x64,0x03,0x03,0xE2,0x10,0x2A,0x53,0x54,0xE3,0x69,0xDC,0x79,0xAD,0x1D,0x67,0x57,0xB0,0xB7,0x76,0x6C,0xAC,0xDD,0xC9,0xEC,0xDB,0xD5,0x70,0x4C,0x07,0x69,0xCD,0x8F,0x7B,0x13,0x9B,0x49,0xA1,0xBC,0xFE,0xFB,0x7F};
|
||||||
|
//const uint8_t spDISPLAY[] PROGMEM = {0x04,0x88,0xD0,0x63,0x2C,0x53,0xB5,0xB1,0x52,0x9F,0x3B,0xDF,0x79,0x4F,0x65,0xF8,0xCE,0x5D,0x4D,0xB9,0x29,0xE0,0xCF,0x52,0x0B,0x78,0x40,0x03,0x08,0xC8,0xDC,0x15,0x40,0x02,0xA9,0x2D,0x4A,0x6A,0x45,0xEC,0xB5,0xB6,0xA0,0xCA,0x71,0x4C,0x73,0xEA,0xCA,0x3B,0xC2,0xA5,0xCB,0xAD,0x6E,0x75,0x9A,0xA6,0x93,0xAD,0x62,0xF3,0xED,0xEE,0xB4,0x96,0x1E,0x13,0x25,0x7D,0xF3,0xDE,0xFB,0xDE,0xCE,0xE6,0x15,0xA3,0x6A,0x55,0x7D,0xCA,0x3B,0x62,0x22,0x67,0x6C,0xCE,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spEQUAL[] PROGMEM = {0x6D,0x18,0x49,0x91,0xBC,0x17,0xEF,0x6E,0x15,0xA3,0x15,0xA2,0xE5,0x93,0x9D,0xB5,0x7C,0x6C,0x07,0xB6,0x7C,0x1C,0xF2,0x11,0x19,0xAC,0xB2,0x0E,0x02,0x45,0x28,0x77,0x11,0xD9,0x00,0x04,0xF0,0xA3,0x88,0x01,0xBE,0x65,0xB4,0x36,0xC8,0x8D,0x08,0xF4,0x33,0xBB,0x39,0xB4,0xB5,0xE2,0xAE,0x0E,0xF2,0xDB,0xD7,0x7A,0xA4,0x33,0xD3,0xEA,0x0E,0xF0,0x9B,0xCE,0xC8,0xAE,0x92,0x24,0x77,0xB8,0x33,0xF8,0x68,0xE6,0xD6,0xF1,0xFE,0x7F};
|
||||||
|
//const uint8_t spFAST[] PROGMEM = {0x08,0x68,0xD6,0x55,0x02,0x0A,0x18,0x22,0x5D,0x02,0x1A,0x58,0x45,0x75,0xA3,0x5E,0xFA,0xE6,0x96,0xB7,0x39,0x6D,0xD3,0xA3,0xD6,0xBA,0xFA,0xF6,0x6B,0xAE,0xAE,0xA4,0xCA,0xEE,0xAC,0xAD,0x99,0xD1,0x28,0x5B,0x5C,0x8E,0xE2,0x4A,0x2B,0xFD,0x4E,0xBE,0xE2,0x85,0x80,0x25,0x5B,0x39,0xC0,0x80,0xDF,0x32,0x24,0xA0,0x01,0x0B,0x58,0x80,0x02,0xC0,0x80,0x3B,0x4C,0x14,0xF0,0xBC,0x38,0x03,0x96,0xDD,0xF9,0x7F};
|
||||||
|
//const uint8_t spABOUT[] PROGMEM = {0x63,0xCF,0xA6,0x2A,0x54,0xD7,0xDC,0x6D,0xAD,0x85,0x67,0x57,0x50,0x5E,0x76,0x1A,0xD9,0xA6,0xAA,0x59,0xF9,0x26,0xB6,0x20,0xC2,0x83,0x25,0x0B,0x5B,0x1C,0x4D,0x4D,0x77,0x37,0xA1,0x6F,0xD4,0x45,0xCD,0xB2,0xAC,0xBE,0x98,0xCD,0x34,0xDD,0x72,0xDA,0xAA,0xDA,0x2B,0x79,0xCD,0x6D,0x6F,0x77,0xC7,0xBD,0x94,0x23,0xA4,0xCE,0x22,0xDB,0x15,0x8F,0xF0,0x45,0xEB,0x55,0xC2,0x79,0xC4,0x2F,0x42,0xB9,0x8B,0xC8,0x06,0x00,0x03,0x4C,0xA7,0xEE,0x80,0xD7,0x53,0x09,0x50,0x83,0xCB,0xFF,0x03};
|
||||||
|
//const uint8_t spGO[] PROGMEM = {0x06,0x08,0xDA,0x75,0xB5,0x8D,0x87,0x4B,0x4B,0xBA,0x5B,0xDD,0xE2,0xE4,0x49,0x4E,0xA6,0x73,0xBE,0x9B,0xEF,0x62,0x37,0xBB,0x9B,0x4B,0xDB,0x82,0x1A,0x5F,0xC1,0x7C,0x79,0xF7,0xA7,0xBF,0xFE,0x1F};
|
||||||
|
//const uint8_t spINCH[] PROGMEM = {0x23,0x1B,0xD6,0x48,0x2A,0x67,0x9F,0x76,0xC4,0x20,0x89,0xBC,0x7D,0xEB,0x53,0x8F,0x90,0xEC,0x12,0xB7,0x77,0xBB,0xC6,0xEE,0x55,0x92,0x6B,0x72,0x59,0xAA,0x82,0x28,0x4F,0x35,0xE9,0x68,0x0A,0xB9,0xD3,0x6D,0x93,0xA6,0x28,0xC8,0xB1,0xB0,0x85,0x40,0x11,0xCA,0x5D,0x44,0x36,0x00,0x02,0xD6,0xDC,0xD2,0x80,0x05,0x32,0xE0,0x01,0x0F,0x10,0xA0,0x26,0xA1,0xFF,0x07};
|
||||||
|
//const uint8_t spLOW[] PROGMEM = {0x65,0xDF,0x98,0xA3,0x4A,0xB4,0xE5,0x65,0x4E,0xAB,0x9F,0xD4,0xA2,0x92,0xBC,0x9E,0xB6,0xF2,0xC8,0x71,0xEA,0x7B,0x9B,0xD5,0x24,0x5E,0x3D,0xCC,0x79,0x77,0x3B,0xFB,0xB9,0xF4,0xBD,0xEE,0xF5,0x0C,0x97,0x37,0x5D,0x0B,0x92,0xC7,0xDF,0xFE,0xFD,0x7F};
|
||||||
|
const uint8_t spMOTOR[] PROGMEM = {0x66,0xAA,0x8C,0x69,0x53,0x92,0xC4,0x2D,0x2F,0x6B,0x2A,0x74,0xDA,0x9D,0xB2,0xDD,0xF6,0x36,0xAB,0xCE,0x78,0xDA,0x9D,0xB2,0xD5,0x9A,0x01,0xDB,0x77,0x45,0xA0,0x75,0xC5,0xB8,0x71,0x59,0xDA,0x31,0xE5,0x6A,0x22,0x63,0xDE,0xDA,0x9A,0xBB,0xA3,0x75,0x68,0xAF,0x7B,0x3E,0xC3,0x9D,0x97,0x60,0x87,0xE6,0x8B,0x4F,0x78,0x4B,0x76,0xB2,0x09,0xAF,0xFE,0xFD,0x7F};
|
||||||
|
//const uint8_t spOPEN[] PROGMEM = {0x61,0xCC,0xB8,0x7B,0x8C,0xB2,0xF5,0x61,0x8F,0xAB,0xA9,0x30,0xA7,0x83,0xBC,0xCD,0xBA,0x95,0x19,0x57,0x97,0xB1,0x6B,0xD2,0x58,0x12,0x31,0x11,0x89,0x01,0x01,0x2E,0x9A,0x48,0x60,0x94,0xC5,0x86,0xBB,0xC9,0xA6,0x35,0x36,0x95,0x1A,0xA6,0x7B,0xF6,0x3E,0x8E,0x26,0x42,0x3D,0x78,0xF1,0x3C,0xCB,0xD5,0x0D,0x71,0x78,0x24,0xAB,0x77,0xBA,0x47,0x12,0x73,0xB1,0xB8,0xF9,0xFE,0x7F};
|
||||||
|
//const uint8_t spPERCENT[] PROGMEM = {0x02,0xC8,0xD9,0x5C,0x03,0x2D,0x8A,0xB1,0x30,0x46,0x52,0xAF,0xBA,0x86,0x26,0x1A,0xF6,0x77,0x9B,0xD3,0xD5,0x18,0x68,0x69,0x59,0x63,0xEF,0x80,0x5F,0x5A,0x2D,0x60,0x01,0x0B,0x68,0xC0,0x03,0xAB,0x6E,0xDE,0x25,0x2D,0x17,0xDF,0xFA,0x36,0xBB,0x1D,0x53,0xB1,0x6E,0x23,0x5D,0xA7,0x5D,0x23,0x92,0xB9,0xA7,0x62,0x7F,0x20,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0xA0,0x80,0xA5,0x33,0x0C,0xF0,0xB3,0x27,0x02,0x5A,0x4A,0xFD,0x7F};
|
||||||
|
//const uint8_t spPROBE[] PROGMEM = {0x02,0xC8,0x29,0x5D,0x03,0x2E,0x0A,0x83,0xCB,0x5D,0x33,0xF7,0xFC,0x94,0xD1,0x96,0x57,0x71,0xF2,0x53,0x66,0xDE,0xE9,0x8D,0xDE,0x76,0x3D,0xDB,0x3E,0x95,0xDD,0xBB,0x8E,0x54,0xEA,0x13,0x0F,0x73,0x19,0x95,0x91,0x46,0x9E,0xD8,0x23,0x68,0x47,0x47,0x24,0xE1,0x1F,0xFF,0xC3,0xEF,0x4D,0x6A,0x99,0x25,0x49,0x67,0xF4,0x96,0x69,0xBA,0x24,0x5E,0xEE,0xAA,0x91,0x2B,0x59,0xD7,0xFE,0x3F};
|
||||||
|
//const uint8_t spREADY[] PROGMEM = {0x6A,0xB4,0xD9,0x25,0x4A,0xE5,0xDB,0xD9,0x8D,0xB1,0xB2,0x45,0x9A,0xF6,0xD8,0x9F,0xAE,0x26,0xD7,0x30,0xED,0x72,0xDA,0x9E,0xCD,0x9C,0x6D,0xC9,0x6D,0x76,0xED,0xFA,0xE1,0x93,0x8D,0xAD,0x51,0x1F,0xC7,0xD8,0x13,0x8B,0x5A,0x3F,0x99,0x4B,0x39,0x7A,0x13,0xE2,0xE8,0x3B,0xF5,0xCA,0x77,0x7E,0xC2,0xDB,0x2B,0x8A,0xC7,0xD6,0xFA,0x7F};
|
||||||
|
//const uint8_t spSET[] PROGMEM = {0x08,0xF8,0x35,0x95,0x03,0x02,0xF8,0xC5,0x58,0x03,0x16,0xB0,0xC0,0x2A,0xA6,0x08,0x13,0xD7,0xCE,0xA7,0xEC,0xAE,0xD5,0xCC,0xD6,0xDC,0xEA,0x54,0x35,0xA6,0xA4,0xE5,0x9A,0x3D,0xCC,0x25,0x2E,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x00,0x30,0x60,0x88,0x30,0x05,0xFC,0x1C,0x25,0x80,0x65,0xB6,0x10,0x50,0xA2,0xD0,0xFF,0x03};
|
||||||
|
//const uint8_t spSPEED[] PROGMEM = {0x04,0xF8,0xBD,0x5C,0x02,0x1A,0xD0,0x80,0x04,0x30,0x40,0x00,0x6E,0x55,0x59,0xCB,0x75,0x7A,0x7A,0xA5,0x59,0xC5,0xC8,0x41,0x64,0xBA,0x66,0xE5,0x33,0x95,0x82,0xEB,0xD6,0x9B,0xEE,0x6C,0xE5,0x33,0x8D,0x82,0xEB,0xD6,0x5D,0xAD,0x7E,0xC5,0x22,0x48,0xDF,0xB2,0xC7,0xBD,0xCC,0x6D,0x1E,0xF5,0x60,0xA7,0x65,0x1E,0x95,0x91,0x88,0x9F,0xF4,0x2A,0xD7,0xD0,0x4D,0x64,0xBE,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spUNDER[] PROGMEM = {0xA7,0x6B,0xA4,0x3B,0x4A,0xB3,0x9C,0xAE,0xF1,0xF6,0x48,0xE9,0x7C,0xDB,0x55,0x56,0x13,0x56,0x62,0x8D,0x5B,0x56,0x15,0xFA,0x68,0x68,0xA9,0x79,0x28,0xA2,0xE0,0x31,0x4D,0x8D,0xA6,0x36,0x52,0x27,0x39,0x13,0x85,0x7E,0x7A,0x35,0x56,0x4D,0xB2,0xD6,0xE6,0x4D,0x55,0xAD,0xD5,0x58,0x6B,0x0E,0xB2,0x92,0x3C,0x73,0x2F,0x47,0xE9,0x4A,0x99,0xBC,0x25,0x9F,0xE1,0xCA,0x43,0xB0,0x53,0x7A,0x85,0xBB,0x1C,0xE1,0x56,0xCB,0xEC,0xEF,0xFF,0x07};
|
||||||
|
//const uint8_t spOPERATOR[] PROGMEM = {0xB0,0x9A,0xAC,0xB6,0xC2,0xAD,0xCD,0xA9,0x3B,0x9D,0xCE,0x94,0x2C,0xB7,0x5A,0x65,0xB6,0x9B,0x61,0xBA,0x66,0x15,0xC5,0x65,0x8C,0xF3,0x62,0x94,0x89,0x50,0xEE,0x22,0xB2,0x01,0x5A,0x95,0x7C,0xB9,0xAB,0x25,0x29,0x55,0x5C,0xC2,0xD3,0x94,0xB5,0x37,0xA9,0x0B,0x9B,0x2C,0x4B,0xB9,0xE6,0xA1,0x8E,0x63,0xCE,0x83,0x53,0xD2,0xFC,0xAE,0xA5,0x16,0x97,0x70,0xCD,0x3B,0xD6,0x11,0x4F,0x30,0xB4,0x4F,0xDB,0x46,0x3C,0x62,0xE3,0x3D,0xF9,0x00,0x07,0xCC,0xD4,0x29,0x81,0xB6,0xD5,0x3A,0x28,0x2D,0x7E,0xDB,0x51,0xFD,0x09,0x2C,0xFB,0xCF,0x77,0x7A,0x4A,0x2C,0x94,0x93,0xBC,0xE1,0xA9,0xE1,0x04,0x46,0xFD,0xC5,0x37,0xFC,0x65,0x19,0x56,0x72,0x96,0xFF,0x07};
|
||||||
|
//const uint8_t spAMPS[] PROGMEM = {0x69,0xEA,0xA5,0x45,0xD2,0x57,0xEF,0xF1,0x0E,0x77,0xB8,0xDD,0x6D,0x4F,0x53,0x43,0x49,0x79,0xCC,0xDE,0x5D,0x19,0x9B,0x08,0x2C,0x31,0xA7,0x6E,0x49,0x3C,0x39,0xC5,0xBC,0xEA,0x07,0x81,0x22,0x94,0xBB,0x88,0x6C,0x00,0x06,0x44,0x16,0xC6,0x80,0x5F,0xD3,0x39,0xC0,0x01,0x0E,0x50,0x00,0x03,0x18,0xF8,0x7F};
|
||||||
|
//const uint8_t spMEGA[] PROGMEM = {0x66,0x31,0x3C,0x7C,0x52,0xE3,0xF8,0xC5,0xCF,0x6B,0x2A,0x5E,0x3C,0x34,0x96,0x9C,0xBE,0xC7,0x10,0x77,0x7F,0x7D,0x9B,0x51,0xF5,0xA1,0x6C,0xE2,0x8F,0x53,0xDD,0x1A,0x52,0x68,0x4D,0x0E,0x43,0xF5,0x48,0xE3,0x55,0xBA,0xCD,0x7D,0xA4,0x28,0x6B,0x93,0x35,0xB7,0xC2,0x12,0x9A,0x4F,0xCE,0x5A,0x5D,0x68,0xBA,0x6E,0xDE,0xDB,0x3C,0xC7,0x59,0xA2,0x66,0x6A,0xCC,0xE9,0x6F,0x7D,0xFF,0x1F};
|
||||||
|
//const uint8_t spPICO[] PROGMEM = {0x08,0xC8,0x8E,0x48,0x03,0x2B,0xEA,0xC1,0x48,0xD2,0x57,0x9F,0x6C,0xE6,0x25,0x08,0x5B,0x73,0xB3,0x54,0x8C,0xC1,0xE0,0x56,0xB3,0x75,0x15,0x80,0xE6,0x47,0x3D,0x30,0x86,0xE2,0x82,0x35,0xB4,0xF7,0x1A,0xB2,0x71,0xF3,0xD6,0xBC,0x6B,0xA9,0xA2,0x2C,0x8A,0xBD,0x8F,0x23,0x89,0xF5,0x34,0xC9,0xDF,0xCF,0x76,0x45,0x57,0x51,0x22,0x79,0xD3,0xED,0xFD,0x6A,0xA8,0x75,0x8D,0x8F,0x79,0x6C,0xCD,0x74,0xB6,0xDD,0xEA,0xB5,0x65,0xD4,0xCD,0xFA,0xFC,0x3F};
|
||||||
|
const uint8_t spFIRE[] PROGMEM = {0x04,0x18,0xCE,0x4D,0x02,0x1A,0xD0,0x80,0x04,0x46,0x91,0x55,0x57,0x07,0x6D,0xD9,0xCD,0xAE,0x4F,0x55,0x5D,0x59,0x87,0xAE,0xB9,0xD5,0x6D,0x5B,0xDB,0x7D,0x93,0xB6,0xED,0xEE,0xE3,0x5A,0x6B,0x6A,0xF4,0x91,0xD5,0x73,0x6B,0x67,0xF5,0x47,0xBC,0xD4,0xA7,0x9C,0xA5,0x34,0xE4,0xD0,0xA6,0xF0,0xE4,0xAA,0xB8,0x2D,0xAB,0xC3,0x9B,0x62,0xC2,0xAC,0x74,0xF6,0x9F,0xFB,0x72,0x0B,0xEC,0x92,0xCD,0xEE,0xCF,0x43,0x69,0x4C,0x5B,0xFF,0x3F};
|
||||||
|
//const uint8_t spPOWER[] PROGMEM = {0x0C,0xF0,0xDC,0x4C,0x03,0x2B,0xCD,0x36,0xAB,0x85,0x1B,0x9F,0xBC,0xB1,0xAE,0x6A,0xEA,0x7A,0xB3,0x95,0x15,0xD5,0x39,0x85,0x5D,0x46,0x96,0x7C,0x57,0x3B,0xB6,0x19,0x79,0x30,0x93,0x55,0xA4,0xBB,0xD4,0x2E,0xAD,0x79,0xB1,0xDE,0x3E,0x8D,0x29,0x85,0x61,0x1F,0xF6,0x3B,0xB7,0x7E,0x94,0x33,0x97,0x46,0x5B,0xCE,0x9D,0x9F,0xF0,0x16,0x3F,0x48,0xE7,0x7E,0xC3,0x5B,0xE3,0xA2,0xAC,0xEB,0xF6,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spCOMPLETE[] PROGMEM = {0x0E,0x68,0xA1,0x43,0x03,0xA7,0x2E,0xB2,0x22,0x0B,0xBB,0xDC,0x76,0x75,0x55,0x99,0xB7,0x53,0xB4,0xD1,0x77,0xA6,0x1C,0xA5,0xD6,0x7A,0x9F,0xFA,0x44,0x39,0x5A,0xDC,0x1E,0x9D,0x0C,0x50,0x94,0xB8,0x01,0x46,0x14,0x2F,0x69,0x97,0x9C,0x69,0xA6,0xE4,0x14,0x8D,0x85,0xBB,0x73,0xB3,0x93,0x75,0x6D,0xA2,0x29,0x6F,0x56,0xD6,0xB3,0xB2,0xA8,0x3F,0x59,0xF9,0x18,0x4E,0xA4,0xBE,0x66,0xB6,0x69,0x9F,0xB9,0x08,0xD2,0xDE,0xC4,0x1D,0x81,0x22,0x94,0xBB,0x88,0x6C,0x00,0x00,0x05,0x1C,0xD9,0x6E,0x80,0x65,0x7E,0x18,0xD0,0xEB,0x3A,0x02,0x6A,0x09,0xFC,0x7F};
|
||||||
|
//const uint8_t spREPAIR[] PROGMEM = {0x69,0x8E,0x8D,0xCD,0x22,0x95,0xB7,0xA9,0x74,0x09,0xB2,0x54,0x7F,0xC6,0x16,0x83,0xCD,0xB5,0xEF,0x1A,0x7A,0x18,0x22,0x97,0xBE,0x75,0x62,0x93,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x04,0xE0,0x93,0x59,0xCB,0x92,0x53,0xCB,0x8C,0x9A,0xAB,0x68,0xD1,0xC5,0xC2,0x5E,0x9F,0xB2,0xA5,0x22,0x0F,0xD9,0x72,0xAB,0x5B,0xDF,0xE6,0x4E,0x63,0xA9,0x25,0xB0,0x4A,0x3B,0xCF,0xAD,0x1F,0xE9,0xAE,0x7A,0x85,0x4E,0xF2,0xE5,0x27,0xBF,0xF9,0xCD,0x5F,0xFA,0x4A,0x1C,0x92,0xE3,0xDC,0xE9,0x2B,0x35,0xA9,0x5A,0x72,0xFF,0x3F};
|
||||||
|
//const uint8_t spTEMPERATURE[] PROGMEM = {0x0E,0xF8,0x2E,0x2C,0x00,0xCB,0x8F,0x8F,0xA8,0x59,0x15,0xF7,0x58,0x79,0xD2,0x9A,0x5D,0x22,0xB5,0xF5,0x4D,0x47,0x96,0xAB,0x5A,0x87,0x69,0x0E,0x85,0xF7,0x46,0x1D,0xA1,0x0C,0x10,0xE0,0x32,0xBB,0x04,0x56,0x5E,0x62,0x91,0xA6,0x79,0xEF,0x7D,0xEC,0xC1,0x00,0x63,0x6C,0x46,0xC0,0x03,0x16,0x18,0x7D,0x8F,0x29,0x68,0x96,0xB5,0x4D,0x25,0x27,0x71,0x85,0xF7,0xBE,0xF6,0xBD,0x9F,0xF5,0x09,0x77,0x59,0xC2,0xDE,0x9A,0x27,0xBE,0xFE,0xFD,0x7F};
|
||||||
|
//const uint8_t spSTOP[] PROGMEM = {0x0C,0xF8,0xA5,0x4C,0x02,0x1A,0xD0,0x80,0x04,0x38,0x00,0x1A,0x58,0x59,0x95,0x13,0x51,0xDC,0xE7,0x16,0xB7,0x3A,0x75,0x95,0xE3,0x1D,0xB4,0xF9,0x8E,0x77,0xDD,0x7B,0x7F,0xD8,0x2E,0x42,0xB9,0x8B,0xC8,0x06,0x60,0x80,0x0B,0x16,0x18,0xF8,0x7F};
|
||||||
|
//const uint8_t spMACHINE[] PROGMEM = {0xC2,0x56,0x3C,0x7D,0xDC,0x12,0xDB,0x3E,0x8C,0x89,0xBA,0x4C,0x4A,0x96,0xD3,0x75,0x95,0x12,0x6E,0xBD,0x6F,0xB7,0xBA,0x16,0x5A,0x58,0x3D,0xB3,0x03,0xA6,0x14,0x76,0xC0,0xCC,0x37,0x11,0xC8,0x40,0x04,0x22,0xB0,0x92,0xD9,0x9A,0xC1,0x7D,0xF5,0xCD,0x6F,0x3E,0x8A,0x39,0x14,0xA5,0x72,0xD4,0x28,0x67,0x56,0xD4,0x89,0xD2,0xB3,0xE9,0x63,0x5D,0xD2,0xDA,0x03,0x49,0xA9,0xDB,0xCD,0x47,0x3C,0xE3,0xEB,0xBF,0xF4,0x75,0x57,0xEC,0xEE,0x9B,0xF2,0x9B,0xBE,0x56,0x34,0xCC,0xA2,0xF2,0xFF,0x03};
|
||||||
|
const uint8_t spON[] PROGMEM = {0x65,0x4A,0xEA,0x3A,0x5C,0xB2,0xCE,0x6E,0x57,0xA7,0x48,0xE6,0xD2,0x5D,0xBB,0xEC,0x62,0x17,0xBB,0xDE,0x7D,0x9F,0xDA,0x5C,0x5C,0x7A,0xAA,0xB5,0x6E,0xCB,0xD0,0x0E,0xAD,0x6E,0xAF,0xEE,0xF9,0x88,0x67,0xBC,0xDC,0x3D,0xAC,0x60,0xB8,0x45,0xF3,0xB7,0xBF,0xC3,0xDD,0xA2,0xBB,0xAB,0xCD,0x89,0x8F,0x7F,0xFE,0x1F};
|
||||||
|
//const uint8_t spCONTROL[] PROGMEM = {0x06,0x68,0xA5,0xCD,0x02,0x2B,0xA9,0x36,0xD5,0x43,0x5A,0x9F,0xA6,0xA9,0x36,0x4F,0xEE,0x73,0xDA,0xC1,0xDA,0x35,0x79,0x73,0x6B,0x9B,0x62,0xEA,0xB0,0x78,0xB3,0x4B,0x7D,0x91,0x18,0xED,0xE6,0x16,0x81,0x22,0x94,0xBB,0x88,0x6C,0x10,0x40,0x0B,0xE1,0x1E,0x88,0xC0,0x48,0x53,0xE2,0x0A,0x17,0x67,0x3B,0x3B,0x59,0xB2,0x11,0x95,0xA2,0x7C,0x64,0x91,0x4F,0x47,0x92,0xF7,0x99,0xAF,0xA2,0xE0,0xEE,0x76,0x56,0xBF,0x9B,0x39,0xB4,0x29,0xB1,0x9C,0x76,0xF4,0x56,0xD7,0xBA,0xE5,0x3B,0x3F,0xF1,0x29,0x77,0xE6,0x9D,0x63,0x9C,0xE7,0xFF,0x01};
|
||||||
|
//const uint8_t spELECTRICIAN[] PROGMEM = {0x6B,0x9D,0xA6,0x88,0xD3,0x36,0xDF,0xF1,0x8C,0x5B,0x84,0x93,0x79,0xBB,0x35,0x5C,0x26,0xA9,0xEC,0x6B,0xCF,0x70,0xB8,0x87,0xBA,0x68,0x3F,0x5D,0x4B,0xA1,0x29,0xB6,0xF9,0xB6,0xAD,0x69,0xB1,0x48,0x5B,0x1B,0x23,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x06,0x38,0xAE,0xD2,0x03,0xA3,0xAC,0x59,0x4D,0xDD,0x9D,0xAE,0xA2,0x16,0x63,0x37,0xEB,0xBA,0x8B,0x51,0x36,0x63,0x1A,0x9E,0x6B,0x7A,0x65,0x80,0x55,0xB7,0x3D,0x10,0x81,0x0C,0x58,0x60,0x75,0xCD,0x98,0x84,0xF9,0xA6,0xBD,0xF4,0xAD,0x5C,0x43,0x19,0x46,0x58,0xB4,0x7C,0xE7,0x27,0x7D,0x3D,0x0A,0xBB,0x87,0xDD,0xF8,0xC7,0xFF,0xFF,0x01};
|
||||||
|
//const uint8_t spAT[] PROGMEM = {0xAD,0xA8,0xC9,0xB5,0xBC,0xA6,0xDC,0xFE,0x36,0xB7,0xB9,0xF5,0x6D,0xC7,0x58,0x9B,0x69,0xF9,0x4C,0x99,0x73,0xDD,0xC8,0x24,0x42,0xB9,0x8B,0xC8,0x06,0x00,0x50,0xC0,0x52,0x2E,0x0E,0xB8,0x66,0x8A,0x01,0xAD,0x95,0x20,0x20,0x3A,0xF2,0xFF,0x07};
|
||||||
|
//const uint8_t spRED[] PROGMEM = {0x6A,0xB5,0xD9,0x25,0x4A,0xE5,0xDB,0xC5,0x4F,0x6D,0x88,0x95,0x2D,0xD2,0xB4,0x8F,0x2E,0x37,0x0E,0x33,0xCF,0x7E,0xAA,0x9A,0x5C,0xC3,0xB4,0xCB,0xA9,0x86,0x69,0x76,0xD3,0x37,0xB7,0xBE,0xCD,0xED,0xEF,0xB4,0xB7,0xB0,0x35,0x69,0x94,0x22,0x6D,0x10,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x00,0x50,0xCF,0x0E,0xEE,0x62,0xEA,0xA6,0xBC,0xC3,0x14,0xBB,0x4A,0x9F,0xFA,0xA5,0xAF,0x25,0x13,0x17,0xDF,0x9C,0xBF,0xFF,0x07};
|
||||||
|
//const uint8_t spALL[] PROGMEM = {0x65,0x0D,0xFA,0x3B,0x84,0xFB,0x8D,0x2E,0xB1,0x9D,0x34,0xCA,0xBA,0xAB,0x5D,0xEC,0x62,0x15,0x89,0x5F,0xA7,0x49,0xB6,0x5D,0xEF,0x6E,0x0E,0x73,0x99,0xEB,0x3C,0xCA,0x11,0x65,0xCE,0x18,0xB9,0x89,0x67,0xBC,0xDC,0x15,0xF8,0xE5,0xA0,0xE6,0x71,0x77,0x94,0x51,0x8F,0x96,0xE6,0xFF,0x01};
|
||||||
|
//const uint8_t spCANCEL[] PROGMEM = {0x01,0x98,0x29,0xC4,0x00,0xDD,0x29,0x9C,0xAC,0x25,0xD7,0xD2,0x9C,0x7C,0x8B,0x5B,0xAE,0xBC,0x26,0xB3,0x94,0x89,0x52,0xF2,0xE6,0x29,0x42,0x52,0x53,0x28,0xAA,0xC1,0xB6,0xB0,0xC4,0x0C,0xF8,0xDE,0xC2,0x02,0x1E,0xF0,0x80,0x05,0x46,0x5C,0x78,0x45,0x25,0xE5,0x19,0x53,0x45,0x93,0xE3,0xA2,0x77,0xAE,0x75,0x4B,0x67,0x92,0xD5,0x6D,0x98,0x25,0x3F,0xF9,0xFD,0x7F};
|
||||||
|
//const uint8_t spPHASE[] PROGMEM = {0x22,0x5E,0x2E,0xD5,0xC4,0x64,0xA5,0xF6,0x9A,0x52,0x26,0xF1,0xB6,0xDA,0xEA,0x54,0x2C,0x6B,0xCE,0x69,0x7A,0x0A,0x51,0x89,0xB7,0xA7,0x19,0xA9,0x98,0xCD,0xDE,0xDC,0xE6,0x36,0xAB,0x9B,0xA1,0x11,0x23,0x3E,0xCF,0xB1,0xAF,0x7D,0xAB,0x7B,0x3C,0xFC,0x19,0x9E,0xA6,0x55,0x9C,0x6D,0xB7,0x7F,0xEC,0xCB,0x80,0xEF,0xCB,0x39,0x40,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spNOR[] PROGMEM = {0xE9,0x38,0x5C,0x84,0x33,0xBD,0x8E,0xB6,0x9A,0x70,0x09,0x6B,0xBB,0x8B,0x93,0x66,0xDE,0x91,0xC9,0xFE,0x6E,0xBA,0xB2,0x24,0xAA,0x26,0x51,0xDD,0xCC,0x47,0x1D,0x7C,0x75,0x3A,0xE5,0x99,0xC3,0x5C,0xCA,0x1E,0x52,0x6A,0xA7,0xE4,0xCF,0x7B,0xB9,0x53,0x4E,0x8E,0x31,0x6F,0xFD,0x4C,0x77,0x1A,0xC2,0x93,0x96,0x25,0xDD,0xA9,0x04,0x4E,0x87,0xDB,0xF0,0xE4,0x2D,0xB4,0x6E,0x59,0xE2,0xE3,0xDF,0xFF,0x07};
|
||||||
|
//const uint8_t spEXIT[] PROGMEM = {0x6B,0x68,0xC1,0x24,0xAD,0xEE,0xAC,0xA6,0xE7,0x66,0x57,0x7F,0x73,0x9B,0x5B,0xB6,0xA2,0x1F,0x56,0xC5,0x69,0x6A,0xDA,0x96,0x94,0x02,0xB2,0x89,0x02,0x9A,0x1C,0x35,0xC0,0xCF,0x99,0x16,0xB0,0x80,0x04,0xDA,0x5C,0x83,0x4A,0xF0,0xDC,0x5E,0x5B,0x33,0x49,0xA1,0xFE,0xB9,0x9F,0xE1,0x6B,0x41,0x39,0xD8,0x1E,0x23,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x02,0x38,0xCC,0xDC,0x02,0x04,0x18,0xF6,0xF3,0xFF,0x01};
|
||||||
|
//const uint8_t spFLOW[] PROGMEM = {0x04,0xE8,0x3E,0x83,0x02,0x1C,0xE0,0x80,0x04,0x3C,0x10,0xB2,0x24,0x75,0xD9,0xAC,0x4D,0xCD,0x5A,0x9D,0x85,0xAC,0x93,0x79,0x39,0x75,0xA3,0xDE,0x15,0x98,0xED,0x56,0xB7,0x5A,0x55,0xE2,0xD3,0xE9,0xE4,0x6F,0xD6,0xB3,0x9B,0x43,0x5F,0xEB,0x91,0x4F,0x77,0x5B,0xBB,0x15,0xC2,0x7E,0xFC,0x63,0x5E,0x1B,0xD7,0x0B,0xA5,0xB7,0x7E,0xFF,0x1F};
|
||||||
|
//const uint8_t spGAUGE[] PROGMEM = {0x0E,0x18,0xD5,0xB0,0xB5,0x2B,0x24,0x09,0x7B,0x92,0x55,0xF7,0x4C,0xA2,0xD1,0x8D,0x6F,0x7D,0x9A,0x91,0x83,0x34,0x72,0xCE,0x6D,0x6E,0x73,0xDB,0xD5,0xCD,0x50,0x40,0x9D,0xAB,0xF7,0xB8,0xE7,0xBD,0xB5,0x7D,0xA5,0x46,0x8C,0x58,0x5D,0x0F,0x76,0x15,0x05,0xBE,0x96,0x8D,0xD8,0x59,0x0D,0xE8,0x58,0xD5,0xA2,0x97,0x7A,0xC6,0x72,0x17,0x31,0x5B,0xB2,0x65,0xC0,0x9A,0xCE,0x12,0xB0,0x80,0x02,0xE6,0x50,0xF9,0x7F};
|
||||||
|
//const uint8_t spGREEN[] PROGMEM = {0xE1,0x6A,0xEA,0x2A,0x4A,0xE3,0xA6,0xA1,0xB8,0x49,0x32,0x51,0x9A,0xFA,0xE8,0xCC,0xAC,0x2C,0x59,0xED,0x5A,0x5B,0x3A,0x05,0x27,0x77,0x9D,0xF5,0x29,0xDA,0x70,0x91,0x90,0xB6,0xA7,0x18,0x35,0x90,0xD3,0x17,0xED,0x7C,0xE5,0x33,0x06,0xE2,0x54,0xA5,0x5D,0xCC,0xAA,0xF5,0xB3,0x07,0x50,0xD6,0xA8,0x36,0x8E,0xA0,0x68,0x6B,0x61,0xFA,0x52,0xB7,0xB2,0x8F,0x44,0x54,0x15,0x41,0xD2,0x31,0x12,0x86,0xB8,0xBB,0xCE,0x67,0xBA,0xAA,0x66,0x4B,0xF1,0xB8,0xE9,0xEA,0x91,0x43,0xCC,0x5C,0xC7,0x33,0x5E,0xE5,0x6A,0xD6,0x25,0xDC,0x67,0xA5,0xA7,0x55,0x0D,0xD5,0x98,0x9C,0xDF,0xFF,0x07};
|
||||||
|
//const uint8_t spINSPECTOR[] PROGMEM = {0x29,0xEB,0x5E,0xD9,0x32,0x27,0x9D,0x6E,0xFA,0x66,0x17,0x59,0x7D,0xDB,0xDB,0xB4,0xB6,0x7B,0xD0,0xCC,0x70,0xD2,0xDB,0xD6,0x0D,0xC7,0x38,0xAC,0x4D,0xD2,0xF0,0x0D,0xB3,0xA9,0xBB,0x73,0xC0,0x4F,0xE9,0x11,0xF0,0x80,0x02,0x86,0x52,0x01,0x03,0x44,0xEA,0x7A,0xA2,0x1A,0x43,0xD3,0x6C,0xF3,0x4D,0x6F,0xDA,0xB2,0x56,0x0C,0x82,0xAD,0x31,0x29,0x44,0x28,0x77,0x11,0xD9,0x00,0xE0,0x80,0xED,0x3C,0x46,0x5F,0xEB,0xA0,0xB4,0xF8,0x2D,0x53,0xF5,0x27,0xB0,0xEC,0x3F,0x6F,0x69,0x2F,0xB1,0x50,0x4E,0xF2,0x86,0xB3,0x86,0x13,0x18,0xF5,0x17,0xDF,0xF0,0x96,0x65,0x58,0xC9,0x59,0xFC,0xF7,0xFF};
|
||||||
|
//const uint8_t spMANUAL[] PROGMEM = {0x6E,0x8A,0x42,0x6C,0xD5,0x9A,0xA4,0xB1,0x72,0xA5,0x2A,0x49,0x5B,0x87,0xD3,0x75,0x5B,0x1A,0x2E,0xAB,0x6F,0x7D,0xAB,0x53,0x76,0xDF,0x12,0xE6,0xAF,0x6F,0x71,0x8A,0x1E,0x43,0x52,0x72,0xF1,0x2A,0x7A,0x24,0x4D,0x4E,0xD7,0xA5,0x6A,0x06,0x32,0x2D,0x34,0x8F,0x7A,0x24,0x12,0x97,0x4E,0xB8,0xFA,0xE1,0x1D,0xD5,0xB3,0xE1,0x1A,0x7A,0x0D,0x12,0xB5,0xD5,0x6B,0xAC,0x51,0x24,0xD4,0x56,0x97,0x25,0x5A,0xB3,0x32,0x59,0x93,0xB6,0xA8,0x27,0x3C,0x31,0x4F,0xDE,0xEB,0x5E,0xCF,0x72,0x26,0x3E,0xD5,0xC6,0xF9,0xCA,0x55,0x71,0x77,0x39,0x7B,0x2B,0xD7,0x40,0xD1,0x1D,0xAC,0xBD,0xDC,0x05,0x57,0x77,0x90,0xB7,0xFC,0xFC,0x3F};
|
||||||
|
//const uint8_t spMOVE[] PROGMEM = {0x6A,0xD7,0xC2,0xF2,0xD2,0xEC,0xB8,0x39,0x08,0xF6,0x4D,0x4D,0x1A,0xC6,0x24,0x31,0xB2,0xCC,0x69,0x1E,0x56,0x9D,0x85,0x7B,0x15,0xA4,0x3B,0x55,0x23,0x9E,0x3E,0xE0,0x6D,0xE7,0x23,0xAF,0x20,0xC6,0x0A,0xBC,0xCE,0xA2,0x34,0x91,0x6C,0x89,0x43,0xDF,0x3A,0x94,0x31,0x83,0x6E,0x4D,0xE8,0x9A,0x96,0x0C,0x3A,0x63,0x20,0x5B,0xD8,0xAC,0xEC,0xC8,0x20,0x37,0x7E,0xB7,0xA7,0x3D,0xCD,0xD9,0x8A,0x78,0x28,0x2E,0xB5,0x97,0xBD,0xED,0xCD,0x80,0x52,0x32,0x28,0x80,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spOVER[] PROGMEM = {0x63,0x6F,0xC4,0x7A,0x1D,0xB5,0xED,0x61,0x37,0xBB,0x6E,0x75,0x62,0xD9,0x2D,0xEC,0xBF,0x56,0xAD,0x09,0xBA,0x32,0x8C,0x13,0xC7,0xD6,0xED,0x4D,0x85,0x86,0x99,0xE3,0x3E,0xB7,0x29,0x86,0x90,0x2C,0x76,0xDB,0xE6,0x98,0x95,0xBB,0x38,0x4F,0x5B,0x72,0x29,0xB4,0x51,0x6F,0x7D,0xAF,0x47,0xB9,0x73,0x71,0x8C,0x31,0x3F,0xE1,0xC9,0xA9,0x50,0xD6,0xFD,0xBA,0x27,0x57,0xC5,0x6E,0xCD,0xFD,0xFF};
|
||||||
|
//const uint8_t spPLUS[] PROGMEM = {0x0A,0x18,0x4D,0x44,0x01,0x23,0x70,0x12,0x40,0x8B,0xD8,0x92,0x7A,0xD3,0x63,0x10,0xAD,0x57,0x91,0xC4,0xB5,0x8A,0xAE,0x39,0x45,0xE1,0x93,0xE9,0xBC,0xE5,0x96,0xB7,0x59,0x43,0x15,0x63,0xE9,0xBA,0x6B,0x6E,0xF5,0x64,0x40,0xF0,0xEE,0x0A,0xF8,0x25,0x43,0x03,0x1E,0xD0,0x80,0x04,0x38,0x40,0x01,0x0C,0xFC,0x3F};
|
||||||
|
//const uint8_t spPULL[] PROGMEM = {0x06,0xF0,0xB6,0x9C,0x01,0x2C,0xB7,0x8F,0x28,0xCA,0x1E,0x53,0x5A,0xBA,0x93,0x95,0x0C,0x2C,0xD3,0x81,0xDA,0x76,0xBA,0xB3,0x51,0x57,0x14,0xB3,0x8E,0xEE,0x67,0xDF,0x87,0x34,0x17,0xE2,0x3B,0x86,0x5E,0xEB,0x11,0xCE,0x24,0x62,0xD3,0xB0,0x69,0xBE,0xFD,0xE3,0xDE,0x20,0x67,0x54,0xA5,0xCD,0xFF,0x03};
|
||||||
|
//const uint8_t spREPEAT[] PROGMEM = {0x6E,0xF1,0x49,0x42,0x33,0xD8,0xC5,0xB9,0x8C,0xB9,0x62,0x8A,0x87,0xF6,0xD3,0xB7,0xCC,0xC6,0x1A,0xE9,0x4E,0x33,0x9C,0x23,0x79,0x7C,0xDE,0x4D,0x6B,0x5B,0x62,0xB0,0xF4,0x95,0x64,0x16,0xA1,0xDC,0x45,0x64,0x03,0x04,0xA0,0xB5,0x94,0x96,0xF6,0x14,0x4C,0x62,0xAF,0x4E,0xD6,0x13,0x93,0x66,0xCD,0x3E,0xD9,0x6C,0x89,0x64,0xB1,0xFA,0x66,0xBB,0x18,0xFD,0xAC,0x0A,0x92,0xB5,0xA8,0xAD,0xA3,0x10,0x8B,0x4D,0x6D,0x7B,0x21,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x06,0xB8,0xDC,0xCD,0x01,0x33,0x6C,0x62,0x00,0x03,0xFF,0x0F};
|
||||||
|
//const uint8_t spSHUT[] PROGMEM = {0x04,0x58,0xE3,0x5A,0x03,0x16,0xF0,0x80,0x07,0x22,0x60,0x81,0x55,0xB4,0xE4,0xA2,0x61,0x5D,0x6E,0x71,0xCA,0x12,0x3C,0xCA,0x7C,0xCE,0xAD,0x76,0x31,0xD7,0xBC,0x23,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x06,0xE8,0x44,0x5D,0x01,0x3F,0x66,0x11,0xE0,0x98,0x59,0x04,0xF4,0x38,0xFE,0xFF};
|
||||||
|
//const uint8_t spTEST[] PROGMEM = {0x0E,0x98,0x6A,0xC9,0x00,0x2B,0x37,0xAF,0xA4,0x45,0x91,0xB0,0x5A,0x72,0xEA,0x9A,0x9D,0x23,0xE3,0xCD,0x6D,0x56,0x57,0x93,0x5A,0x78,0x2D,0xD9,0xE3,0x9E,0xEB,0x4E,0x77,0x02,0x6C,0x95,0x4A,0x80,0xDF,0xD2,0x39,0xA0,0x01,0x0D,0x48,0x80,0x01,0x4F,0x2B,0x53,0x00,0x14,0x70,0x45,0x9A,0x06,0x10,0x50,0x73,0xC3,0xFF,0x03};
|
||||||
|
//const uint8_t spVOLTS[] PROGMEM = {0xA0,0xDA,0xA2,0xB2,0x3A,0x44,0x55,0x9C,0xFA,0xB0,0xBA,0x46,0x72,0xDA,0xD1,0xDB,0xAE,0x47,0x59,0x61,0xED,0x28,0x79,0xED,0x45,0xAF,0x5A,0xDF,0x60,0xF4,0x39,0x69,0xAB,0x63,0xD9,0x3B,0xD2,0xBC,0x24,0xA5,0xF5,0xB6,0x0F,0x80,0x01,0x3E,0x63,0x65,0xC0,0x5F,0x63,0x12,0x90,0x80,0x06,0x24,0x20,0x01,0x0E,0xFC,0x3F};
|
||||||
|
//const uint8_t spGALLONS[] PROGMEM = {0x0E,0x28,0x8A,0xE5,0xB4,0xAD,0x04,0x9B,0xF9,0x9A,0x5B,0x9F,0xBA,0xE9,0x91,0x4A,0x5D,0x7D,0xAB,0x53,0x15,0x35,0xBE,0xA2,0x8B,0x77,0x35,0xEA,0xCC,0xC6,0x4F,0xA9,0x6E,0x6B,0x07,0xC8,0xEC,0x45,0xCF,0x6B,0x2C,0xA2,0x7C,0x4D,0x36,0xCF,0x65,0xAC,0x8D,0x97,0xB6,0xE9,0xE2,0x7A,0x86,0x7B,0x44,0xD4,0xB0,0x54,0x1A,0xEE,0xA6,0x51,0x32,0xC2,0xA9,0x7F,0xCC,0xD3,0x2D,0xA3,0xA7,0xC4,0xB7,0xAF,0x7E,0xE4,0xE7,0xBE,0xAF,0x4D,0x54,0x53,0x19,0x03,0xBE,0x60,0x62,0xC0,0xAF,0xAE,0x12,0x90,0x00,0x02,0x6A,0x70,0xFE,0x7F};
|
||||||
|
//const uint8_t spHERTZ[] PROGMEM = {0x04,0xC8,0xA1,0xD8,0x02,0x1E,0x58,0x71,0x2E,0x81,0x31,0xDC,0x65,0x25,0xD5,0x9E,0xC2,0x9A,0xFE,0x9D,0xED,0x7A,0x8E,0x61,0xAD,0x25,0xC1,0x4A,0xF3,0x01,0x00,0x02,0xB6,0x09,0x65,0xC0,0x6F,0x65,0x1C,0xB0,0x80,0x05,0x34,0xE0,0x01,0x0D,0x10,0xA0,0x09,0x97,0xFF,0x07};
|
||||||
|
//const uint8_t spMICRO[] PROGMEM = {0x22,0x8B,0x44,0xF5,0x92,0x9B,0xDA,0xC5,0xCF,0x6B,0xA8,0xBC,0x2B,0x8B,0xB3,0xDC,0xEE,0xB6,0xA7,0x6E,0x3E,0xB9,0xC2,0x56,0x9F,0xA2,0x57,0x93,0xD0,0x9C,0x5D,0x8A,0x3E,0x88,0x52,0xA6,0x32,0x2B,0xAA,0x15,0x34,0xCB,0xD4,0xC0,0x80,0x12,0x23,0x22,0x60,0x81,0x30,0xC5,0xAA,0x61,0x25,0xF9,0x7A,0xDF,0x87,0x31,0x17,0xDE,0x1E,0xC5,0xFE,0xDB,0x96,0xD5,0xD8,0x38,0xF4,0xAB,0x47,0x78,0xBC,0xAB,0x18,0xE1,0x3C,0xFE,0xF5,0xDF,0xFF,0x03};
|
||||||
|
//const uint8_t spOHMS[] PROGMEM = {0xAD,0xC9,0x74,0x37,0x59,0xD2,0xED,0xE6,0xD4,0x95,0xF8,0x56,0xB0,0xD2,0x5D,0x9D,0xAA,0x12,0xAF,0x2D,0xB7,0xBA,0xDB,0xDE,0xB7,0x79,0x68,0x93,0x32,0x96,0xD2,0x97,0xBA,0xE6,0x3D,0x9F,0xEE,0x6A,0x92,0xB9,0x22,0x9C,0x98,0x2B,0x33,0x8E,0x16,0x8F,0xEB,0xEE,0x6E,0xD1,0x5A,0x3C,0x4D,0xB8,0x06,0x09,0x35,0xA5,0xDE,0xE1,0xFA,0xC5,0xD8,0x4D,0xE4,0x2A,0xE0,0x5B,0x15,0x05,0x7C,0x27,0xA4,0x01,0x0E,0x70,0x00,0x01,0xDE,0x6C,0xFE,0x3F};
|
||||||
|
//const uint8_t spAREA[] PROGMEM = {0x2D,0xEF,0xA1,0xC8,0x32,0x36,0xDF,0xE5,0x0C,0xDD,0x0D,0xCB,0x68,0xDF,0xDB,0xAC,0xBA,0x0C,0xB1,0x32,0xED,0x3A,0xAA,0xD4,0x39,0x2C,0x4D,0xEF,0xAC,0x67,0xB3,0xFA,0xD2,0x58,0xD3,0x3D,0xEF,0x1A,0xBA,0x2B,0xD0,0xF2,0xDD,0x73,0x1E,0x4B,0xF7,0x89,0xE6,0xF1,0x79,0xAF,0x63,0xED,0x3E,0xD8,0xDD,0x3E,0x8F,0xAD,0x3A,0xF7,0x76,0x5D,0xD3,0xB7,0xBE,0xB7,0xBB,0xE9,0xB4,0x4E,0xE9,0x5D,0x3F,0xF7,0xA7,0x1C,0x9E,0xEA,0x4B,0xFE,0x1F};
|
||||||
|
//const uint8_t spCIRCUIT[] PROGMEM = {0x02,0x78,0x2D,0x55,0x02,0x12,0xB0,0x80,0x01,0x5E,0x49,0x5D,0x49,0x35,0xAE,0x1A,0xD6,0xF6,0x94,0x25,0x05,0x5B,0x4A,0xD7,0x55,0x94,0x3C,0x28,0x2D,0xFE,0x76,0x11,0xCA,0xEA,0x06,0x25,0x35,0x29,0x02,0x45,0x28,0x77,0x11,0xD9,0x08,0x28,0x4E,0x15,0x1C,0x50,0x1C,0xD3,0xEA,0x6A,0x14,0x49,0xF7,0x4D,0x7B,0x19,0x67,0x53,0x45,0x65,0xB1,0xA7,0x3E,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x80,0x00,0x96,0x56,0x53,0xC0,0x1F,0xAD,0x02,0x78,0xAE,0x06,0x01,0xCB,0xB7,0xFF,0x3F};
|
||||||
|
//const uint8_t spCONNECT[] PROGMEM = {0x06,0xA8,0xD5,0x29,0x24,0x3D,0xAC,0xB3,0x52,0xE6,0x55,0x97,0xA0,0x56,0x12,0x8D,0x4F,0xDB,0x9C,0x6A,0x4B,0x2C,0x2D,0xDD,0xC8,0xA8,0xEE,0xE9,0xB4,0xF6,0xAB,0x6B,0x4E,0xB5,0x28,0x93,0xAC,0xB6,0xC5,0x66,0x4F,0xDB,0x7C,0xBB,0xDB,0xEF,0x69,0x9E,0xE5,0x69,0xA1,0x39,0x3C,0x96,0x20,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x20,0x80,0xA5,0xC3,0x1C,0xB0,0xEC,0x97,0x05,0x18,0xD0,0xCB,0xDA,0xFF,0x03};
|
||||||
|
//const uint8_t spSECONDS[] PROGMEM = {0x04,0xF8,0xC5,0x51,0x01,0xBF,0xA6,0x6A,0x40,0x03,0x16,0xD0,0xC0,0xCA,0xAB,0x75,0x2D,0xCD,0x25,0x37,0xBB,0xD9,0xCA,0xDA,0x54,0x0F,0xEE,0xD9,0x29,0x6B,0x47,0x30,0xD8,0xE3,0x80,0x00,0x6A,0x26,0x6D,0x55,0xEB,0xCA,0x21,0xB9,0xE4,0xD4,0xDD,0x26,0xA5,0xF9,0xE3,0x3D,0xB6,0x75,0x38,0xA3,0x31,0x5B,0x9A,0xB6,0x11,0x51,0x32,0xD2,0xAA,0x3F,0xFC,0x21,0xCE,0x22,0xD1,0xD7,0x2D,0x9E,0x39,0x0B,0x37,0x4E,0xD7,0x26,0xE1,0xFA,0xC4,0x55,0x42,0xFD,0x85,0xFB,0x7B,0x77,0x13,0xA3,0x27,0x80,0x03,0xD0,0x25,0x20,0x01,0x0A,0x20,0x20,0x69,0xD6,0xFF,0x07};
|
||||||
|
//const uint8_t spUNIT[] PROGMEM = {0x61,0xB9,0x96,0x84,0xB9,0x56,0xE5,0xB9,0xCE,0x63,0xDE,0xCE,0x0D,0x30,0x36,0x9F,0x6E,0x86,0x36,0x60,0xE9,0x7B,0xCA,0x5E,0x93,0x45,0xA4,0xEB,0xC9,0xBB,0x77,0x72,0xE7,0x2D,0x2B,0xAB,0xD6,0x24,0x94,0x17,0x8F,0xA2,0x79,0x4C,0xD5,0x48,0x5D,0xAA,0xEE,0x21,0x23,0x42,0xF1,0x1A,0x66,0x54,0x15,0x97,0xD6,0x6B,0x19,0xD1,0xC5,0xC5,0x77,0xEF,0xB3,0x9F,0x7E,0x47,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x01,0xCB,0xBB,0x3B,0xE0,0xD7,0x0A,0x05,0x9C,0xD0,0x4D,0x80,0xE6,0x92,0xFE,0x1F};
|
||||||
|
//const uint8_t spTIMER[] PROGMEM = {0x0E,0xB8,0x36,0xC3,0x01,0xCD,0x98,0xB4,0x38,0x87,0x8C,0x0A,0x59,0x72,0x8B,0x5B,0x9D,0xAA,0x15,0x35,0x0B,0x9F,0x7D,0x8B,0x5D,0xB4,0xAA,0x78,0x96,0xB4,0xB0,0x5B,0xFB,0x32,0xE7,0xE8,0x9C,0x85,0x6D,0xDA,0x96,0xC3,0x10,0x9F,0x78,0x49,0x67,0x35,0xA7,0xF0,0xA6,0x2F,0xDD,0x39,0x2D,0xF2,0x89,0x9F,0xFC,0xC4,0xD7,0xFD,0xC5,0x1F,0xC3,0xBA,0x3F,0xF3,0x97,0x6D,0x54,0xC9,0xFD,0xFE,0x1F};
|
||||||
|
//const uint8_t spUP[] PROGMEM = {0x2D,0xCD,0x72,0xA2,0x55,0x77,0xDD,0xF6,0x36,0xB7,0xB9,0xD5,0xEA,0xB3,0xC9,0x6C,0xF1,0xD5,0xE9,0x4A,0xB6,0xBD,0x39,0x7F,0x21,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x20,0x80,0x48,0xD3,0x08,0x90,0x54,0x28,0x06,0xFE,0x1F};
|
||||||
|
const uint8_t spIS[] PROGMEM = {0xAD,0xED,0xD5,0x58,0xA4,0x9E,0xCE,0x76,0xF5,0xDD,0xAB,0x29,0xF5,0xD2,0xDD,0xEF,0x7E,0x0C,0xC3,0xA9,0x06,0xFA,0xD3,0x32,0x0F,0x6E,0x94,0x22,0x8F,0xF3,0x92,0xF6,0x05,0x43,0xCC,0x74,0x77,0x3E,0xC3,0xF5,0x95,0x98,0xA9,0xBA,0x8B,0x8F,0x00,0x7E,0x73,0xE5,0x00,0x05,0x28,0xF0,0xFF};
|
||||||
|
//const uint8_t spALERT[] PROGMEM = {0xA5,0xCF,0xC6,0xAB,0x55,0x5B,0xAF,0x39,0xDA,0xC9,0x54,0xDD,0xBC,0xC6,0xC2,0x3C,0x27,0x20,0xCF,0x1C,0xD7,0x30,0xB0,0x45,0x16,0x69,0x1D,0xC3,0x11,0xE4,0x59,0x8A,0x7C,0xB5,0x9B,0x8B,0xD9,0x30,0xB7,0xD3,0x76,0x19,0x9A,0x25,0x59,0x57,0x59,0xEC,0x11,0xAF,0xE8,0xD9,0xF9,0x2A,0x8A,0x1D,0xF0,0x75,0x3F,0x73,0xAC,0x87,0x3B,0xA2,0x0B,0xAA,0x2B,0xCF,0xE4,0x10,0xA1,0xDC,0x45,0x64,0x03,0x00,0x80,0x01,0x66,0x36,0x33,0xC0,0xAB,0xD5,0x0A,0x68,0x25,0x85,0x02,0xFF,0x0F};
|
||||||
|
//const uint8_t spADJUST[] PROGMEM = {0xAD,0xAD,0xA1,0xD5,0xC4,0x5A,0x9F,0xB1,0xFA,0x14,0xB3,0x78,0xBC,0x87,0x31,0x55,0x9B,0xEC,0xC2,0x6B,0xC4,0xE6,0xB9,0xDB,0xB8,0x97,0x24,0x87,0xA6,0x99,0x59,0x61,0x4B,0x1C,0x05,0x63,0x56,0x79,0x6C,0x05,0x4C,0xC5,0x14,0x81,0x35,0xB4,0x98,0xAC,0xAE,0x7D,0x6E,0x77,0xAA,0xE2,0xD2,0x5A,0x63,0xD5,0xAD,0x6E,0xBD,0xBA,0xE2,0xD3,0x8A,0xAB,0xF2,0x1C,0x15,0x50,0x41,0x8A,0x03,0x7E,0x29,0xF1,0x80,0x05,0x2C,0xA0,0x01,0x01,0xFC,0xD6,0x2A,0x01,0x60,0xC0,0x0B,0xEC,0x16,0x60,0x40,0xB7,0x63,0xFF,0x0F};
|
||||||
|
//const uint8_t spBETWEEN[] PROGMEM = {0xA2,0xED,0xD9,0x59,0x4C,0xFB,0xEC,0xE2,0x0C,0x33,0x34,0x83,0xD9,0x96,0x3B,0x8E,0x69,0xC6,0x15,0x14,0xDA,0x03,0xE0,0x80,0x6E,0xCD,0x03,0xD0,0xE3,0xB8,0x02,0x72,0x48,0x2B,0x45,0xB0,0xE9,0x69,0x12,0x77,0x55,0x99,0xA7,0x57,0x42,0x93,0x53,0x74,0x19,0xE6,0x89,0x6B,0x4E,0x39,0x82,0xB3,0xA6,0x3E,0x3A,0xE5,0x2C,0x81,0x5C,0x59,0xE9,0xD6,0xAB,0xEB,0x81,0x31,0x27,0xCA,0xCC,0xA5,0x6F,0x65,0x1B,0x09,0x5D,0x3D,0xDC,0xD4,0x23,0x9F,0xE9,0xA9,0x8A,0xB4,0xDD,0x92,0xFC,0x3F};
|
||||||
|
//const uint8_t spMINUTES[] PROGMEM = {0x61,0xCA,0xCC,0x38,0x5B,0x9A,0xE6,0xA9,0xB6,0xA7,0xEC,0x2A,0xC5,0xDD,0x17,0xDF,0xE2,0xE6,0x23,0x6B,0x16,0xC3,0x2D,0x92,0xCC,0x72,0xB5,0xD5,0xBA,0x86,0xD5,0xEC,0xB9,0x94,0xAD,0x98,0x90,0xF4,0x79,0x14,0xDE,0x8E,0x53,0x3C,0x63,0x23,0x02,0x45,0x28,0x77,0x11,0xD9,0x00,0x80,0x80,0xCF,0x58,0x05,0xF0,0x7B,0x99,0x04,0x38,0xC0,0x01,0x0A,0x50,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spBUTTON[] PROGMEM = {0x10,0xA6,0x28,0xDD,0xCD,0x2D,0xD5,0x6A,0x8B,0xEE,0x6C,0xB1,0x4D,0xA7,0xAC,0x2E,0xA3,0x44,0x97,0xDC,0xA6,0xF5,0xCD,0x6B,0x34,0x46,0x13,0x32,0x89,0x50,0xEE,0x22,0xB2,0x01,0x20,0xA5,0xDD,0xA1,0x94,0xBB,0xB3,0xB6,0x0C,0x2F,0xA4,0xE6,0xF1,0xFA,0x96,0x8F,0x70,0x8F,0xC2,0x2A,0xE6,0x4A,0xDD,0xD3,0x2D,0x51,0x7A,0xDA,0xF3,0xAF,0x7B,0x47,0x63,0x51,0x73,0x67,0xE1,0x6B,0x46,0xDD,0x49,0xEB,0xFE,0x3F};
|
||||||
|
//const uint8_t spCLOCK[] PROGMEM = {0x06,0x48,0x65,0x34,0x00,0x93,0xA7,0x5B,0xA0,0xA4,0x95,0xBA,0x5F,0x82,0x9B,0x95,0x07,0x37,0x55,0x24,0x4D,0x4E,0x51,0xE9,0x54,0x25,0x76,0xB9,0xE5,0x2D,0x4F,0x93,0x7D,0xE5,0x98,0xAE,0xDE,0x63,0x3B,0x72,0xC9,0x2C,0x8E,0xD9,0xF1,0x41,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x40,0x00,0x35,0x0D,0x69,0x80,0x02,0xFF,0x0F};
|
||||||
|
//const uint8_t spDEVICE[] PROGMEM = {0x64,0x8E,0x38,0x3C,0x4B,0x62,0x8F,0x7D,0x89,0x14,0xD4,0xCC,0xB5,0x86,0x11,0x9A,0xD1,0xB5,0xCF,0x1C,0xDC,0xDC,0xA5,0x23,0xB5,0x3B,0xCB,0x73,0x9D,0x46,0x99,0x6D,0x59,0x35,0xE5,0xD9,0xF5,0x69,0xAA,0x1E,0xCB,0xE2,0xCD,0xB7,0xB9,0xDD,0x19,0xAA,0x2F,0xE9,0xD0,0xD5,0x7B,0x69,0x57,0xF3,0x49,0x1E,0xF1,0x28,0xDE,0x0C,0xB8,0x36,0x54,0x00,0xBF,0x55,0x6A,0x40,0x03,0x1A,0xE0,0x00,0x07,0x28,0xF0,0xFF};
|
||||||
|
//const uint8_t spEAST[] PROGMEM = {0xAD,0x1D,0x59,0x50,0xBC,0x17,0x8F,0x7A,0x96,0x02,0x8C,0x7C,0xB2,0xEB,0x5D,0xCD,0x7A,0x0C,0x63,0x10,0x71,0xCC,0xEC,0x3E,0xA5,0x75,0x0C,0x41,0xF2,0x7A,0x4C,0x80,0x6F,0x67,0x24,0xA0,0x01,0x05,0xFC,0x3C,0xA5,0x01,0x0D,0x58,0x40,0x02,0x04,0xF8,0xDA,0x1C,0x03,0x1A,0x30,0xC0,0x31,0x37,0x02,0xE8,0xF5,0x8D,0x00,0xD5,0x39,0xFC,0x3F};
|
||||||
|
//const uint8_t spFAIL[] PROGMEM = {0x04,0x98,0x3E,0x8D,0x03,0x1C,0xD0,0x80,0x07,0x4A,0xBF,0x54,0x9B,0x3A,0x79,0x9C,0xCD,0xAA,0x9B,0x0F,0x31,0x8F,0x37,0xB7,0xBE,0xCD,0x6A,0x47,0x2A,0x66,0xB3,0xB7,0xB3,0xDB,0x6B,0x5F,0xC7,0x56,0x44,0x58,0x8E,0x76,0xAA,0x7B,0xD8,0x33,0xB9,0x32,0xD7,0x3C,0xF9,0x0C,0x67,0xD4,0x13,0x9E,0x98,0xC7,0x5F,0xEE,0x49,0x7C,0xAA,0x8D,0xF3,0xF9,0xF7,0xFF,0x01};
|
||||||
|
//const uint8_t spFREQUENCY[] PROGMEM = {0x04,0xA8,0x4A,0x9D,0x01,0x33,0x8C,0x71,0x40,0x02,0x1A,0x08,0x71,0x4E,0x5C,0x52,0xEA,0x7E,0x67,0x2B,0xEB,0xB5,0x98,0x82,0xB7,0xEE,0x64,0xA4,0x7D,0x18,0xB2,0xDB,0x1B,0x9B,0x22,0x50,0x84,0x72,0x17,0x91,0x0D,0x04,0xF0,0x35,0x2D,0x25,0x59,0xB9,0x57,0xCA,0xE2,0x39,0xB4,0xB1,0x69,0xB4,0xF2,0xB4,0x5B,0x97,0xB0,0x14,0x05,0x15,0x91,0x6A,0xF4,0x2A,0x80,0x5F,0x4A,0x2D,0xE0,0x01,0x0B,0x68,0x40,0x03,0x63,0x69,0x56,0xC5,0x25,0x57,0x8D,0xAD,0x27,0x63,0xB1,0x78,0xDC,0x8F,0x7E,0x95,0x6B,0xE6,0x24,0x32,0x5B,0x93,0xEE,0xD1,0x83,0x58,0xEC,0x4D,0x7E,0xE3,0xF7,0xFF};
|
||||||
|
//const uint8_t spGATE[] PROGMEM = {0x0C,0x08,0xDA,0x75,0x2C,0xB3,0x27,0x19,0xBB,0xDD,0xD1,0xB7,0x44,0xE4,0x51,0x73,0x4E,0x3D,0x7A,0x90,0x49,0x2C,0xB9,0xE5,0xAD,0x6E,0xB5,0xBA,0x99,0x0A,0x24,0xE3,0xF1,0x1E,0xFA,0x1E,0xEE,0x31,0x13,0x59,0xE3,0x8D,0xFA,0x47,0x21,0x32,0xAF,0xC7,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x00,0x38,0x60,0x89,0x52,0x03,0x6C,0xF3,0xC3,0x80,0xDE,0xD7,0x08,0x50,0x8D,0xE1,0xFF,0x03};
|
||||||
|
//const uint8_t spHIGH[] PROGMEM = {0x04,0xC8,0x7E,0x9C,0x02,0x12,0xD0,0x80,0x06,0x56,0x96,0x7D,0x67,0x4B,0x2C,0xB9,0xC5,0x6D,0x6E,0x7D,0xEB,0xDB,0xDC,0xEE,0x8C,0x4D,0x8F,0x65,0xF1,0xE6,0xBD,0xEE,0x6D,0xEC,0xCD,0x97,0x74,0xE8,0xEA,0x79,0xCE,0xAB,0x5C,0x23,0x06,0x69,0xC4,0xA3,0x7C,0xC7,0xC7,0xBF,0xFF,0x0F};
|
||||||
|
//const uint8_t spINTRUDER[] PROGMEM = {0xAB,0x1D,0xA9,0x88,0xCC,0x37,0x9F,0x66,0xBA,0x16,0x31,0xFE,0xBC,0xEB,0x55,0x0F,0xCF,0x98,0x69,0x55,0x47,0xD3,0x0C,0xF2,0xA4,0x45,0xAB,0x6D,0x6D,0x43,0x57,0x34,0xF8,0x78,0x34,0x45,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x14,0xD0,0x4A,0x46,0x06,0x34,0xD0,0xD2,0xEC,0x39,0xCC,0xCC,0xDD,0xCC,0x56,0x9E,0x95,0x58,0x14,0xB5,0xDB,0x45,0xAB,0xAB,0x27,0x4B,0xF6,0x74,0xA2,0x62,0xCE,0xB2,0x3C,0x66,0xB7,0x7A,0x2C,0x0B,0x61,0x95,0xBB,0x96,0x96,0x4C,0xD9,0x35,0xDB,0x98,0xAB,0x29,0xA2,0xB3,0x7C,0x73,0xED,0x47,0xBB,0x4A,0x2E,0xD0,0x71,0x3F,0xF9,0x8B,0x5F,0xF8,0x4A,0x0F,0xF4,0xD1,0x3C,0xFF,0x0F};
|
||||||
|
//const uint8_t spMEASURE[] PROGMEM = {0x66,0x71,0x52,0xED,0xD2,0x92,0x86,0x39,0x2B,0xE6,0x4E,0x8F,0x9B,0xC7,0xD1,0x17,0xA3,0x1C,0x22,0x69,0x4F,0xD7,0x73,0xA8,0x9B,0xAE,0xBE,0xF5,0xAD,0x6E,0x39,0xF2,0xEE,0x45,0xD4,0x7C,0xA5,0x01,0x1A,0x63,0x0E,0xC0,0xA8,0x81,0x11,0x18,0x7D,0x8F,0x29,0x68,0x96,0x75,0x0C,0x25,0x27,0x71,0x85,0xF7,0x39,0xCF,0x7D,0x1E,0xE5,0x2A,0x4B,0xD8,0x5B,0xF3,0xE4,0x27,0x3E,0xFE,0x75,0x7F,0x19,0x46,0xD9,0xBC,0xE5,0xFF,0x01};
|
||||||
|
//const uint8_t spNORTH[] PROGMEM = {0x66,0x8E,0x54,0xAC,0x9A,0xE7,0x84,0xA9,0x0A,0xE2,0x1C,0xAE,0x5B,0xC6,0xE6,0x51,0xCD,0x23,0xE9,0xE9,0x8B,0x71,0x77,0xD3,0xAE,0xA7,0x2A,0x22,0x3D,0x8B,0xB2,0x9E,0x32,0x8B,0xCE,0x6C,0xD6,0x76,0x8B,0x55,0x26,0xB7,0xE2,0xCB,0x7A,0x77,0x35,0x87,0xB6,0xE5,0x92,0x54,0xA9,0xF9,0xC6,0x91,0x63,0x88,0xA7,0x77,0xEE,0x67,0xBA,0x4B,0x60,0x2F,0xAB,0xD6,0x04,0x18,0xB2,0x44,0x03,0x06,0xC8,0xB2,0x44,0x03,0x14,0xA0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spPASS[] PROGMEM = {0x0A,0xC8,0x33,0x83,0x03,0xA3,0xEC,0x55,0x2D,0xD4,0x12,0xAF,0xAA,0x04,0xC9,0xD4,0x0E,0x7D,0xAA,0x16,0x4A,0x33,0x65,0xCE,0xAD,0x6F,0x7D,0x9A,0x9A,0xDC,0xDB,0x62,0xEE,0x6D,0x6E,0x73,0xC6,0x12,0xDD,0x5B,0x6B,0xEE,0x5D,0xF6,0x3A,0xCE,0xAA,0xD2,0x26,0xED,0x75,0xBB,0x9B,0x4D,0x6D,0xF1,0x25,0xFD,0x77,0x7F,0xEF,0xD2,0xCE,0x9D,0x46,0x00,0x4B,0x17,0x2B,0xE0,0x8F,0x52,0x0B,0x68,0x40,0x02,0x1C,0x90,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spPOSITION[] PROGMEM = {0x02,0xC8,0x3C,0x78,0x24,0x5D,0xB8,0xBB,0x53,0xB7,0x5B,0xDC,0x62,0xD5,0x4B,0x38,0x87,0xA1,0x1F,0x05,0x5C,0x40,0x66,0x81,0x95,0x1D,0x19,0xA6,0x4E,0x7E,0x4E,0x3C,0x75,0xA8,0x39,0xF5,0x3D,0x51,0xB7,0xA9,0xA6,0xBA,0xE7,0x44,0x2D,0x99,0x2A,0xC7,0xA6,0x04,0x8C,0x3E,0x95,0x81,0x0C,0x78,0xA0,0xF5,0x2D,0xA8,0x98,0xD9,0x96,0x3D,0x8D,0x69,0xE8,0x64,0x4B,0xE9,0x3B,0x8E,0xA1,0x9D,0xBD,0xA4,0x4B,0x3B,0xBA,0x16,0x2C,0x77,0x7B,0xF9,0xCA,0x4F,0x78,0x7B,0x20,0x35,0x0B,0xA7,0xF1,0xFF,0x7F};
|
||||||
|
//const uint8_t spPUSH[] PROGMEM = {0x06,0x28,0x22,0x5D,0x03,0xCB,0x4B,0x2A,0x23,0x03,0xDB,0x9E,0xB8,0x88,0x8C,0x18,0xCC,0x7A,0xD3,0x9B,0xAF,0xBA,0x78,0xE7,0x70,0xEB,0xDA,0xC6,0x9E,0x27,0x44,0x44,0xAB,0x01,0x56,0xBE,0x8A,0x40,0x04,0x22,0xE0,0x01,0x0F,0x78,0x40,0x02,0xFF,0x0F};
|
||||||
|
//const uint8_t spRIGHT[] PROGMEM = {0x66,0xD7,0xB1,0x24,0xDC,0xE3,0x98,0xCD,0x95,0xA4,0x28,0xB5,0x97,0xD6,0xD0,0x8C,0x3A,0x55,0xFE,0x18,0x43,0xB1,0x4C,0x37,0x6F,0xA7,0x2D,0x72,0x22,0x8A,0xF3,0x9E,0xA6,0xFA,0x94,0x0A,0xDD,0x7C,0x9B,0xDB,0xAD,0xB1,0xD7,0x40,0xF3,0x78,0x3D,0xE7,0x7E,0xE6,0x07,0x81,0x22,0x94,0xBB,0x88,0x6C,0x00,0x50,0xC0,0xB6,0xD7,0x1E,0x10,0x40,0x9B,0xEB,0x0C,0x28,0x56,0xE9,0xFF,0x01};
|
||||||
|
//const uint8_t spSLOW[] PROGMEM = {0x04,0xF8,0xCB,0x44,0x01,0xBF,0x86,0x5B,0xC0,0x02,0x1C,0x28,0xD3,0xC6,0x1C,0x55,0xA2,0xAD,0x0F,0xB3,0x3D,0xC5,0xA4,0x16,0x95,0xE4,0xF5,0x64,0x95,0x7B,0x8E,0x53,0xDF,0x9B,0xAD,0x22,0xF1,0xEA,0x61,0xCE,0xBB,0x9B,0xD9,0xCF,0xB9,0x2F,0x7D,0x0D,0x9B,0xD7,0x5D,0x0B,0x92,0x27,0x1E,0xEE,0xD4,0xA5,0x32,0x50,0xDB,0xD8,0xD3,0x5E,0xEE,0xF6,0xB1,0xDD,0x55,0xBB,0xFC,0x3F};
|
||||||
|
//const uint8_t spTOOL[] PROGMEM = {0x09,0x38,0xD6,0xCC,0x01,0xCB,0x76,0xB5,0x38,0x73,0x0B,0x4F,0xCA,0x3A,0x92,0x42,0xAD,0x25,0x29,0xFD,0x4E,0x47,0x9A,0x78,0x64,0x34,0xA4,0xEB,0xC5,0xA8,0x0A,0xB1,0xCA,0x02,0x77,0xB5,0xAF,0x73,0x5A,0x83,0x88,0x69,0xA3,0x6C,0x69,0xCD,0xCC,0x67,0x94,0xDC,0xE7,0x3D,0x5E,0xF1,0x09,0x7F,0x11,0xDA,0xC3,0xE2,0xF5,0xFF,0x01};
|
||||||
|
//const uint8_t spWEST[] PROGMEM = {0x66,0xB7,0x7C,0x53,0x53,0x6B,0xFA,0xC5,0xCF,0x65,0x4C,0x64,0x56,0x5C,0x1C,0xAF,0xA6,0xE0,0xEA,0x68,0x52,0x77,0x8A,0x2A,0xD2,0xB3,0x29,0xDF,0xC9,0x9B,0x4A,0xCD,0xE2,0xCD,0x37,0x5F,0x45,0x8B,0x21,0xAD,0xF1,0x78,0xB7,0xBB,0x1F,0x4B,0x89,0x92,0xC6,0x17,0x5B,0x01,0x8F,0x9B,0x1A,0xE0,0x97,0x48,0x0F,0x78,0xC0,0x03,0x1A,0x10,0xC0,0x9F,0xED,0x1C,0xC0,0x00,0x28,0xE0,0x15,0x56,0x05,0x1C,0x9F,0x43,0x80,0x61,0x26,0xFF,0x1F};
|
||||||
|
//const uint8_t spKILO[] PROGMEM = {0x06,0xD8,0x29,0x25,0x01,0x5D,0x22,0x7B,0xA0,0x85,0x33,0x1A,0x52,0xD7,0xDB,0x19,0xCF,0x68,0x44,0xD3,0x29,0x51,0x79,0xBC,0x99,0xAC,0x6C,0x71,0x0B,0x4D,0xCA,0xB6,0xC7,0x35,0x55,0xEE,0x39,0x4E,0x7D,0xEF,0xBA,0xD6,0xC2,0x32,0xAB,0xB8,0xEF,0xDE,0xDB,0x99,0x4C,0x65,0x2B,0xF5,0xED,0x67,0xB9,0x7D,0xAC,0x6C,0xD4,0x35,0xF1,0x8E,0x4F,0x78,0x83,0x9A,0xCA,0x20,0xBF,0xEE,0x4F,0x62,0xBC,0x82,0xF4,0xFD,0x3F};
|
||||||
|
//const uint8_t spAND[] PROGMEM = {0xA9,0x6B,0x21,0xB9,0x22,0x66,0x9F,0xAE,0xC7,0xE1,0x70,0x7B,0x72,0xBB,0x5B,0xDF,0xEA,0x56,0xBB,0x5C,0x65,0xCB,0x66,0xC5,0x3D,0x67,0xD7,0xAB,0x6D,0x2E,0x64,0x30,0x93,0xEE,0xB1,0xCD,0x3D,0x92,0xB9,0x9A,0xDA,0xB2,0x8E,0x40,0x12,0x9A,0x6A,0xEB,0x96,0x8F,0x78,0x98,0xB3,0x2A,0xB4,0xD3,0x48,0xAA,0x2F,0x7D,0xA7,0x7B,0xFB,0x0C,0x73,0x71,0x5C,0xCE,0x6E,0x5C,0x52,0x6C,0x73,0x79,0x9A,0x13,0x4B,0x89,0x45,0xE9,0x6E,0x49,0x42,0xA9,0x57,0xFF,0x3F};
|
||||||
|
//const uint8_t spFARAD[] PROGMEM = {0x04,0x58,0x3E,0x8D,0x03,0x1C,0xD0,0x80,0x05,0x4A,0xB9,0x54,0x9B,0x3A,0x79,0x9C,0xD5,0xA9,0x7B,0x0C,0x71,0xF7,0xD7,0xB7,0xBE,0xCD,0x68,0x4B,0x56,0xF1,0x12,0x3F,0xB5,0x4B,0x6B,0x2C,0x6C,0x91,0x26,0xBF,0x4E,0x63,0x2E,0x91,0x43,0x5D,0xDB,0xAF,0xA5,0xF9,0x10,0x0D,0xE9,0x3E,0xF7,0x7A,0xF2,0x0B,0x81,0x22,0x94,0xBB,0x88,0x6C,0x20,0xCF,0xA2,0xEE,0x95,0x99,0x38,0x3D,0xDD,0x85,0x89,0xCA,0x96,0xFC,0xFC,0x3F};
|
||||||
|
//const uint8_t spMILLI[] PROGMEM = {0x6E,0xF0,0x8A,0xB3,0x4B,0xEB,0xC6,0xAE,0x36,0xA7,0x1A,0x3A,0x54,0x53,0xD6,0xDC,0xEC,0x66,0x23,0xDF,0x58,0x26,0x43,0xB4,0xCD,0xEA,0x74,0x5D,0x94,0x46,0xF0,0x96,0x3B,0x9D,0x79,0x98,0x26,0x75,0xDB,0xB3,0xD7,0xB6,0xF5,0x90,0xA8,0x91,0x9F,0xEA,0x9E,0xEE,0xE9,0x9B,0x20,0x7D,0xCB,0xFF,0x03};
|
||||||
|
//const uint8_t spCAUTION[] PROGMEM = {0x02,0x48,0x69,0x4D,0x03,0x06,0xE8,0x34,0xA2,0x85,0x95,0x4C,0x78,0xA8,0xD2,0x93,0x66,0xB1,0xE9,0x4D,0x79,0x6F,0x7A,0xD3,0x9D,0xF5,0xCC,0x01,0x2B,0x86,0x06,0x60,0xC5,0xAB,0x08,0x44,0x20,0x00,0xCD,0x10,0x8D,0xB6,0x26,0x11,0x8B,0xE8,0x3C,0xE6,0x62,0x5D,0x3D,0x63,0xF7,0x58,0xBB,0x4E,0xF1,0xB0,0x2E,0xED,0x28,0xCA,0x74,0xCC,0x9B,0xB8,0xB7,0x69,0xA6,0x0E,0x8F,0x66,0xBE,0xAC,0x48,0xC6,0xAD,0xAE,0xFB,0x9A,0x16,0x0E,0xF3,0x78,0xFE,0xF3,0xBF,0xFF,0xED,0xFF,0xFF};
|
||||||
|
//const uint8_t spLIGHT[] PROGMEM = {0x61,0x69,0xC0,0x2B,0x82,0xB3,0xA5,0x79,0x01,0x9A,0x52,0x71,0x57,0xC7,0x31,0x0C,0x5C,0x5D,0xC1,0x59,0x6F,0x7B,0x9A,0xC6,0x3B,0xCB,0xA5,0xCB,0xA9,0xAA,0x6D,0x6B,0xB3,0xCD,0xA7,0x6C,0x29,0xB4,0x34,0x56,0xAF,0xBA,0x0F,0x23,0x93,0x5C,0x32,0xC7,0xB6,0xF6,0x46,0xA4,0x39,0xB3,0xF3,0x86,0x40,0x11,0xCA,0x5D,0x44,0x36,0x00,0x80,0x02,0x96,0x2A,0x35,0xC0,0xB6,0x97,0x0C,0xE8,0xF9,0x04,0x01,0xC5,0x19,0xFC,0x3F};
|
||||||
|
//const uint8_t spCHECK[] PROGMEM = {0x0E,0x58,0x25,0x25,0x00,0xB3,0x8E,0x7B,0x60,0xC5,0x35,0xB3,0x68,0xE4,0xEA,0x53,0xB4,0x1C,0x12,0xEE,0x9B,0x6F,0x79,0xAB,0x5B,0xEF,0x71,0xEF,0xE6,0xAE,0x49,0xA9,0x2A,0x17,0x21,0x50,0x84,0x72,0x17,0x91,0x0D,0x00,0x0A,0x68,0xC5,0x49,0x02,0x12,0xE0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spDEGREES[] PROGMEM = {0x65,0x9F,0x5A,0x48,0x42,0x1D,0x8F,0x61,0xB8,0x62,0x56,0xFE,0xB2,0xFA,0x51,0x9C,0x85,0xED,0xCD,0xEA,0x47,0x4B,0x64,0xD5,0x35,0x69,0xE8,0xC7,0x41,0xD4,0x5E,0x8B,0x25,0x6B,0xB4,0x75,0xB7,0x84,0x40,0x11,0xCA,0x5D,0x44,0x36,0x98,0xAD,0xA9,0xAB,0x28,0x8D,0x1B,0xFA,0xE2,0x26,0xC9,0x44,0x69,0x6A,0xA3,0x13,0x8F,0x70,0xAD,0xA5,0xC9,0x99,0x42,0xDC,0x9C,0x8D,0xA6,0x36,0x4E,0x72,0xB3,0xBF,0xEA,0xD6,0x54,0xD9,0x25,0xFD,0xAA,0x46,0x19,0x86,0x90,0xAF,0xB3,0xEE,0x4D,0x19,0x47,0x12,0x90,0xCE,0x5B,0x75,0xC9,0x5B,0xDA,0x47,0x31,0x14,0xF3,0xD7,0xF9,0xCC,0x77,0xFC,0xFC,0xEF,0xFE,0xE6,0x99,0xC2,0x7C,0x93,0xFE,0xC5,0xDF,0x44,0x08,0x5B,0x75,0x36,0xFF,0xD2,0xC6,0xE2,0x91,0xCE,0xFD,0xDF,0x89,0x9A,0x68,0x3A,0x01,0x4C,0x48,0x2A,0x80,0x5F,0x33,0x34,0x40,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spSERVICE[] PROGMEM = {0x04,0xF8,0xAD,0x94,0x03,0x1A,0xB0,0x80,0x07,0x2C,0xB0,0xA2,0xE6,0xCD,0xD4,0xB4,0xEB,0xC9,0xAA,0x4D,0xE1,0xD6,0xEC,0x23,0x2B,0xBE,0x85,0x96,0xFD,0xCD,0xBC,0x15,0xB9,0x16,0xE9,0xB0,0xBF,0x51,0x66,0x5F,0x24,0xA3,0x7A,0x53,0x97,0xBD,0x89,0xBB,0xC4,0x52,0x4B,0xB1,0xAE,0xE6,0x9A,0xB9,0xEE,0x63,0xAD,0xCE,0x35,0xD4,0x7A,0xCF,0xA3,0x9F,0xE9,0x2E,0xD2,0x25,0xDD,0x77,0x13,0xE0,0xB7,0x52,0x09,0x48,0xC0,0x02,0x16,0x90,0x00,0x05,0xFE,0x1F};
|
||||||
|
//const uint8_t spSWITCH[] PROGMEM = {0x08,0xF8,0x3B,0x93,0x03,0x1A,0xB0,0x80,0x01,0xAE,0xCF,0x54,0x40,0x33,0x99,0x2E,0xF6,0xB2,0x4B,0x9D,0x52,0xA7,0x36,0xF0,0x2E,0x2F,0x70,0xDB,0xCB,0x93,0x75,0xEE,0xA6,0x4B,0x79,0x4F,0x36,0x4C,0x89,0x34,0x77,0xB9,0xF9,0xAA,0x5B,0x08,0x76,0xF5,0xCD,0x73,0xE4,0x13,0x99,0x45,0x28,0x77,0x11,0xD9,0x40,0x80,0x55,0xCB,0x25,0xE0,0x80,0x59,0x2F,0x23,0xE0,0x01,0x0B,0x08,0xA0,0x46,0xB1,0xFF,0x07};
|
||||||
|
//const uint8_t spVALVE[] PROGMEM = {0x61,0x1F,0x5A,0x58,0x4D,0x9C,0x08,0x60,0x58,0x95,0x32,0x0D,0x2D,0xAC,0x26,0x4E,0x46,0xD7,0x5C,0x58,0x18,0xAF,0x3E,0x6D,0x73,0x6A,0x65,0xF6,0xE4,0x34,0xCD,0xA6,0x97,0xD9,0x93,0x5B,0xDF,0xFA,0x36,0xAB,0xCF,0x6A,0xA3,0x55,0x36,0xEF,0x7E,0xCF,0x63,0x2E,0xF4,0xAA,0x9C,0xFA,0x8C,0xAD,0xC1,0x9E,0x76,0xF2,0xD6,0xF7,0xBA,0xD7,0xA3,0x1C,0x85,0x78,0x76,0xA1,0xFA,0x78,0xC4,0x3B,0xDC,0x91,0x55,0x94,0x70,0x6A,0x7F,0xEB,0x87,0x00,0x55,0xA8,0x70,0x80,0x02,0x14,0xC0,0xC0,0xFF,0x03};
|
||||||
|
//const uint8_t spVAL[] PROGMEM = {0x24,0x4B,0x38,0x2C,0x43,0x13,0xBB,0xEC,0xB8,0xB6,0xD0,0x76,0xBD,0xDA,0x6D,0x4B,0xC5,0xD8,0xF7,0x69,0x9B,0x55,0x2B,0xB3,0x27,0xA7,0x69,0x36,0xAD,0xCC,0x9E,0xDC,0xFA,0xD6,0xB7,0x59,0x7D,0x56,0x1B,0xAD,0xB2,0x79,0xF7,0x73,0x68,0x73,0x0C,0x5D,0xE1,0xD2,0xA6,0xEE,0xF9,0x0C,0x57,0xB0,0x13,0xC1,0x9E,0x36,0x5E,0xEE,0xCE,0x22,0xAC,0xD5,0xE2,0xF8,0xDB,0xDC,0x4D,0x09,0xA5,0x47,0xDC,0x78,0x9B,0xBB,0x7B,0x62,0xB7,0x70,0xF6,0xFF};
|
||||||
|
//const uint8_t spNUMBER[] PROGMEM = {0x66,0xA9,0x12,0x72,0x42,0x9B,0x86,0xA5,0x1B,0x90,0x0E,0x6D,0x76,0xA6,0x26,0x2B,0xDC,0xA5,0xCF,0x6D,0x4F,0x95,0x4D,0xA5,0xBB,0x6E,0x5E,0x45,0x31,0x5E,0x65,0x92,0x66,0x14,0x45,0xAA,0xB4,0x98,0x9D,0x5A,0x84,0x2A,0x18,0xF6,0x92,0x74,0x43,0x3A,0xAD,0x5C,0x27,0xDD,0x6D,0x98,0xA3,0x09,0xF5,0x92,0xA4,0x65,0x4C,0x4D,0xA4,0x82,0x56,0x97,0x39,0x77,0xC7,0x68,0xF1,0x5D,0xD6,0xDC,0x1D,0x63,0xD4,0x4F,0xBE,0xC3,0x9D,0x53,0x81,0x4E,0xF3,0x89,0x9F,0xFF,0xDC,0x5F,0x66,0x92,0xB5,0x7A,0xFE,0x7F};
|
||||||
|
//const uint8_t spOUT[] PROGMEM = {0xAD,0xCF,0xE6,0xDD,0xD3,0x17,0xED,0xFE,0xF4,0x9D,0x4F,0x56,0x71,0x97,0xDB,0xDD,0xEE,0x76,0xA7,0xCF,0xAE,0x6A,0x54,0x5A,0xEF,0x7E,0x0F,0x7B,0x4C,0x6B,0x88,0x95,0x21,0xBC,0xD9,0x6F,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x00,0x08,0xE0,0xE8,0x2E,0x0F,0x50,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spPOINT[] PROGMEM = {0x06,0xA8,0xCC,0x4B,0x03,0x2D,0xF3,0x69,0x2B,0x8C,0x1A,0xAF,0x2C,0x98,0xE9,0x28,0x4A,0xB3,0xF3,0x53,0xC6,0x90,0x9E,0xC1,0x6D,0x76,0x77,0xE6,0x9C,0x5D,0xD3,0x75,0xF1,0x58,0x5B,0x75,0x76,0xB7,0x4F,0xE3,0xE8,0xCE,0x31,0x3A,0x17,0xB6,0xB3,0x45,0x96,0xF4,0xAA,0x6D,0x4F,0x75,0x76,0xA3,0x94,0x66,0x6E,0x10,0x28,0x42,0xB9,0x8B,0xC8,0x06,0x50,0xC0,0x32,0x11,0x0A,0x58,0x76,0x87,0x01,0x3D,0xB5,0xFE,0x3F};
|
||||||
|
//const uint8_t spBREAK[] PROGMEM = {0x90,0xC6,0x62,0x2D,0xDC,0xCC,0x76,0xE9,0x63,0x55,0xD3,0x32,0xF5,0xAD,0x4F,0x5D,0x42,0x53,0xF5,0x9D,0xB6,0x14,0x49,0x0D,0xCD,0x73,0xEA,0x5A,0x4C,0xC3,0x6D,0xF3,0x69,0x7A,0x0B,0x52,0x8D,0x25,0xBB,0x9D,0x8B,0xDB,0xC7,0x13,0x90,0x8A,0xC7,0x08,0x14,0xA1,0xDC,0x45,0x64,0x03,0x00,0x03,0xC6,0xA8,0x14,0x40,0xCD,0x4A,0x16,0xE0,0x00,0x06,0xFE,0x1F};
|
||||||
|
//const uint8_t spHOURS[] PROGMEM = {0x63,0xC9,0x66,0xA2,0xCC,0x57,0x9F,0xB1,0xF1,0xCE,0x6E,0xEE,0x72,0xBB,0xD3,0x24,0x3B,0x99,0x49,0x79,0x6E,0x35,0x2A,0x1F,0x27,0xBD,0xC8,0x4B,0x69,0x4D,0xDA,0xB0,0x54,0x2E,0x65,0xB0,0x65,0x34,0x43,0xF8,0x96,0x31,0x75,0xA5,0x6E,0xEA,0x53,0xD7,0x7C,0xA4,0x27,0xD7,0x00,0x6F,0xD7,0x1B,0x1F,0xFF,0xB8,0xB7,0x26,0x16,0x49,0xEB,0xE6,0x5F,0xF7,0x56,0x2B,0x62,0xEA,0xEB,0xDC,0xDB,0x83,0xB2,0x9A,0x74,0x73,0xEF,0x76,0x9E,0xC4,0xAA,0xDE,0x7D,0xBF,0x87,0xA6,0xA0,0x52,0x06,0x7C,0x4B,0x24,0x01,0x09,0x70,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spCALIBRATE[] PROGMEM = {0x0E,0x18,0xC9,0xD9,0x01,0x55,0x29,0x9E,0xA0,0x16,0x97,0x70,0x5F,0x7C,0xB2,0xAA,0xDB,0x2B,0x79,0xCD,0xCD,0x56,0x51,0xC9,0x54,0x0D,0x26,0x1E,0x45,0xC3,0x55,0xDE,0xE2,0xF8,0x54,0xC5,0x94,0xA7,0x73,0x97,0xDB,0x94,0x3E,0xE9,0x52,0x2F,0xF6,0xC2,0x16,0xA9,0x4B,0xB3,0xCC,0x5E,0xD8,0xAA,0x34,0x31,0x73,0x27,0xE5,0x4C,0x8D,0xC3,0xD3,0xF4,0xF6,0xA9,0x2F,0xEB,0xA8,0x2E,0x39,0x42,0xFB,0x8E,0xAB,0x99,0xA4,0x28,0xFF,0x5C,0xEE,0x69,0x97,0x28,0x7D,0x4F,0x7D,0xD2,0xDF,0xAB,0x92,0x98,0x6F,0x41,0x8F,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x18,0xB0,0x42,0xA4,0x02,0x5E,0xA8,0x26,0xC0,0xF0,0xE7,0xFF,0x0F};
|
||||||
|
//const uint8_t spCRANE[] PROGMEM = {0x0A,0xC8,0xBD,0xD5,0x03,0x16,0x50,0x40,0x5E,0x15,0x23,0x4F,0x5D,0xCC,0x87,0xB3,0xAE,0xA2,0xE4,0x64,0x1D,0x73,0x7F,0x8A,0x9A,0x9B,0xB5,0xA5,0xEB,0x29,0x7A,0x4D,0x36,0xB7,0x45,0xB7,0x58,0xF5,0x28,0x8E,0xDA,0x31,0x69,0x77,0x7B,0x98,0x73,0x5F,0xEA,0x1A,0xF6,0x1E,0x99,0xB3,0x62,0x74,0xB8,0xBA,0x47,0x73,0x4F,0xA7,0xF1,0x0A,0x77,0x4F,0xE4,0x2A,0xEE,0xD5,0x3D,0xCD,0x91,0x86,0x86,0xBB,0xF0,0x8C,0xC8,0x6C,0x9A,0xCE,0xFE,0x1F};
|
||||||
|
//const uint8_t spDIRECTION[] PROGMEM = {0xA5,0x7E,0xBE,0x3C,0x49,0x14,0xAF,0x6E,0xAA,0x52,0x72,0xCD,0x77,0xBA,0x66,0x4A,0x38,0xAC,0xDB,0xE9,0x8A,0x0F,0xB6,0xB0,0xF4,0xAD,0x4B,0x5D,0xDC,0x35,0xED,0xCF,0xF6,0xD4,0xA5,0x68,0xB8,0x85,0xFB,0x53,0xD6,0x90,0x34,0x1E,0x9D,0x6E,0x31,0xF2,0x36,0x9D,0x4A,0x6C,0x91,0xC9,0x47,0x18,0x63,0xD1,0xD8,0x02,0xE8,0xC1,0xCC,0x01,0x63,0x6C,0x45,0x20,0x02,0x1E,0x68,0x45,0x8D,0xAA,0x6E,0xD1,0x69,0x36,0x63,0x69,0x81,0x2D,0x25,0x9A,0xD4,0x23,0x1D,0x5D,0x0B,0xA5,0x7B,0xB4,0x78,0xF9,0xDB,0x7D,0x23,0x18,0xB9,0x58,0x7C,0xFF,0xBB,0xAF,0x19,0xC1,0x54,0x4B,0xF6,0xFF};
|
||||||
|
//const uint8_t spENTER[] PROGMEM = {0xAB,0x18,0xB6,0x39,0xDC,0x5E,0xDD,0xFA,0x96,0xAB,0xE8,0x41,0x24,0xC9,0x17,0xE5,0x0A,0x0C,0x70,0x4C,0x65,0xE9,0x4A,0x37,0xCC,0xE4,0xDE,0xB3,0x6F,0x73,0xA9,0x0D,0x36,0x9C,0x37,0xEF,0xE9,0xCA,0x35,0xA0,0x5A,0xFA,0x94,0xB7,0xD4,0xC4,0x48,0xC9,0x93,0xBF,0xFF,0x07};
|
||||||
|
//const uint8_t spFEET[] PROGMEM = {0x08,0x98,0x31,0x93,0x02,0x1C,0xE0,0x80,0x07,0x5A,0x3E,0x4A,0x28,0x99,0x3F,0x59,0xE9,0xE8,0x4E,0x64,0xFE,0x64,0x67,0xA3,0x98,0x45,0x41,0xB2,0x67,0xF7,0x36,0x4F,0x6A,0x9F,0x9D,0x91,0xB3,0x6E,0xA3,0x7B,0xCA,0x30,0x53,0x95,0x03,0x00,0x00,0x08,0x18,0xD2,0x4D,0x00,0xC7,0x6C,0x6A,0x40,0x00,0x3D,0xAC,0x62,0xE0,0xFF,0x01};
|
||||||
|
//const uint8_t spFROM[] PROGMEM = {0x04,0x18,0x26,0x8D,0x03,0x12,0xF0,0x80,0xAB,0x42,0x57,0x8B,0x61,0x6F,0xAB,0x4C,0xCE,0x2B,0xD2,0xD4,0xDD,0xE2,0x96,0xA7,0xCC,0x72,0xCA,0x93,0xDB,0xEC,0x6A,0xB7,0x73,0x68,0x4B,0xA7,0x61,0xA1,0x6C,0xB6,0xAF,0xF9,0x88,0x47,0x3C,0xFD,0xF3,0xFF};
|
||||||
|
//const uint8_t spGAP[] PROGMEM = {0x0C,0x08,0xDA,0x75,0x2C,0xB3,0x27,0x19,0xBB,0xDD,0xD1,0xB7,0x44,0xE4,0x51,0x73,0x4E,0x3B,0x7A,0x90,0x49,0x2C,0x39,0x75,0x77,0xAD,0x66,0xB6,0xE6,0x56,0xA7,0xAA,0x31,0x25,0x2D,0xD7,0xEC,0x61,0x2E,0x71,0x41,0xA0,0x08,0xE5,0x2E,0x22,0x1B,0x00,0x00,0x01,0x5D,0x85,0x29,0xE0,0x88,0x76,0x05,0x4C,0xF7,0xCE,0x80,0xEE,0x9B,0x29,0xF0,0xFF};
|
||||||
|
//const uint8_t spHOLD[] PROGMEM = {0x08,0x68,0x34,0x5A,0x03,0x06,0x98,0x42,0xCC,0x02,0x23,0x4F,0x7C,0xD6,0x85,0xDA,0xAC,0xAC,0xE2,0xD8,0x32,0x4C,0xD3,0xF2,0x8C,0xF3,0x9C,0xA9,0x4B,0xCF,0x5A,0x51,0x91,0xEE,0x04,0xBA,0xEB,0x55,0xED,0xCB,0x12,0x85,0x6F,0x0A,0xBB,0xCB,0x6B,0xDC,0xE3,0x61,0x0F,0x73,0x65,0x41,0xAB,0x6A,0x69,0xCC,0x95,0x04,0x75,0x93,0xA7,0x35,0x67,0xD3,0x28,0xE3,0x9A,0x56,0x5D,0x85,0x93,0x65,0x68,0xB6,0x74,0x55,0x63,0xE6,0x62,0x6B,0xDC,0x59,0x2D,0x87,0xBB,0x3F,0xF9,0x7F};
|
||||||
|
//const uint8_t spLEFT[] PROGMEM = {0x69,0x1D,0xC0,0xDA,0xCC,0xD3,0xA6,0xB5,0x81,0x68,0xD1,0xF4,0xDA,0xC7,0xD3,0x57,0x6F,0x11,0xDC,0x4B,0x6E,0x73,0x9A,0xE6,0x5D,0x5B,0x72,0xF5,0xED,0xF7,0xD2,0xCE,0x92,0x2C,0x5C,0xEA,0x0D,0x03,0x8A,0x0E,0x25,0xC0,0x74,0xE3,0x12,0xD0,0x80,0x04,0x10,0x90,0x89,0x2B,0x08,0x60,0x8B,0x71,0x0B,0x10,0xA0,0xB5,0xF3,0xFF,0x07};
|
||||||
|
//const uint8_t spMILL[] PROGMEM = {0x66,0x8E,0x8A,0xA2,0xC2,0x93,0xFA,0x29,0x8E,0xB9,0x1B,0x6D,0x4B,0xA6,0x26,0xF9,0xE4,0xD6,0xB7,0xBA,0xD5,0x6A,0xAB,0x4C,0x6B,0xD5,0xC7,0x6B,0x28,0xA4,0xB3,0x8D,0xFB,0xCC,0xB9,0xEC,0x05,0x75,0x97,0x61,0xDE,0xBA,0xE7,0x33,0x5D,0x0D,0x47,0x4D,0x80,0x97,0x78,0x9B,0xC7,0xEA,0xA9,0x62,0xED,0xFC,0xFF};
|
||||||
|
//const uint8_t spUH[] PROGMEM = {0x63,0x2A,0xAC,0x2B,0x8D,0xF7,0xEC,0xF1,0xB6,0xB7,0xDD,0xDD,0xEC,0xC7,0x5A,0x58,0x55,0x39,0xF5,0x9E,0x6B,0x3D,0xD3,0x59,0xB8,0x67,0x39,0xEE,0x8A,0x77,0x7A,0xAB,0x54,0x6F,0xC7,0x4C,0xF6,0x91,0xCF,0xFF,0x03};
|
||||||
|
//const uint8_t spPAST[] PROGMEM = {0x0A,0x88,0x29,0x4C,0x02,0x25,0xAB,0x4E,0xB4,0xCC,0x6B,0x9E,0x22,0x47,0x89,0xF2,0xAA,0x7C,0xEA,0x1A,0xDC,0x3A,0xED,0xCE,0xAD,0x6F,0x77,0x87,0x3B,0xCF,0x7D,0x9C,0xD5,0xBA,0x75,0xEA,0xE2,0x7E,0xB5,0xAB,0x05,0x8D,0x96,0x5C,0xE2,0xCE,0x3E,0x39,0x93,0xCA,0x0D,0x03,0xBE,0x37,0xD5,0x80,0x05,0x3C,0x60,0x01,0x0D,0x00,0x02,0x9E,0xE7,0xB0,0x80,0x00,0xA6,0x5E,0x47,0x40,0x1D,0x4B,0xFF,0x0F};
|
||||||
|
//const uint8_t spPRESS[] PROGMEM = {0x02,0x28,0x31,0x43,0x03,0x25,0xCB,0xBE,0xDC,0x5D,0xED,0x94,0x22,0x0E,0xCE,0x70,0xC9,0xBD,0xF2,0x9C,0xD5,0xBD,0x24,0xEF,0xC9,0xAB,0x77,0xF5,0x92,0x3E,0x27,0x6B,0xA1,0x25,0xD5,0x56,0xDF,0xEC,0x34,0x5D,0xA7,0x94,0xF9,0xEB,0x3B,0xEC,0x69,0xEE,0x75,0x15,0xC0,0x57,0xC1,0x02,0xF8,0x3D,0x5D,0x02,0x1A,0xD0,0x80,0x04,0x28,0x80,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spRANGE[] PROGMEM = {0x6C,0xE7,0xA5,0xD9,0x33,0xAD,0xAA,0x4D,0xF7,0xC0,0x6C,0x93,0xEA,0x66,0x3F,0x95,0x3A,0xD5,0x79,0xEB,0x62,0x17,0x69,0x0B,0xE7,0xAB,0x29,0x45,0x8A,0x4B,0xBD,0x9E,0xBA,0x17,0x63,0xB7,0x58,0x7D,0xAB,0x5B,0xAD,0x7A,0x94,0x00,0xAB,0x9C,0xB5,0xBB,0x39,0xCC,0xB9,0xAF,0x75,0x4F,0x7B,0x8F,0x10,0xEE,0x69,0x27,0x9C,0x3D,0x93,0xA4,0x79,0x5C,0x7F,0x87,0xB7,0x7B,0xE6,0x30,0x8B,0xE7,0x5F,0xF3,0x54,0xCD,0x92,0xA1,0x75,0xFC,0xC3,0x80,0x51,0x9C,0x24,0x60,0x01,0x01,0x8C,0xEC,0xF4,0xFF};
|
||||||
|
//const uint8_t spSAFE[] PROGMEM = {0x08,0xF8,0x39,0x4C,0x02,0x1A,0xD0,0x80,0x05,0x3C,0x60,0x81,0x95,0x0F,0x15,0xE2,0x6A,0xAB,0x4F,0xD1,0x43,0x8A,0x8A,0xBF,0xB9,0xD5,0xAD,0x57,0x3F,0xAA,0x23,0xBB,0x3F,0x9E,0xCB,0xDC,0xF3,0x99,0x9E,0x5E,0x19,0xCD,0xEB,0x8E,0x79,0x7A,0x43,0x13,0xED,0x39,0x0C,0x18,0x7E,0x5C,0x02,0x12,0x90,0x00,0x07,0x28,0x40,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spSOUTH[] PROGMEM = {0x08,0xF8,0x2E,0x8C,0x03,0x0C,0xF8,0xB5,0xCD,0x02,0x16,0x50,0xC0,0x6F,0xA5,0x1E,0x50,0xC0,0x37,0xEE,0x23,0x69,0xCA,0x35,0x55,0x57,0xAF,0xA2,0xD8,0x8E,0x16,0x5D,0x7D,0xEB,0xDB,0xDC,0x76,0xF5,0xC9,0x4C,0x95,0x71,0xEF,0x3D,0xCD,0xBD,0x9C,0xC1,0x75,0x95,0x72,0x97,0xFC,0x84,0x3F,0xAA,0xAE,0x31,0xF1,0x2D,0x5E,0x5B,0x72,0x9C,0x62,0xB5,0xF9,0x92,0x8E,0x18,0x93,0xC4,0x04,0x18,0xB2,0x45,0x02,0x1C,0xA0,0x00,0x05,0x28,0x40,0x81,0xFF,0x07};
|
||||||
|
//const uint8_t spTURN[] PROGMEM = {0x01,0x18,0xA9,0xCC,0x02,0x06,0x28,0x4E,0xA9,0x14,0x39,0x25,0x69,0x4B,0xBA,0x5D,0xAE,0xAA,0x84,0x15,0x5A,0xF5,0xBE,0xAB,0x59,0xCF,0x61,0xCE,0x7D,0x6B,0x5B,0x09,0x49,0x76,0xEE,0xB5,0x1E,0xE5,0x69,0x2E,0x44,0xD3,0x9A,0xE6,0x27,0x7C,0x4D,0x09,0xA5,0x47,0xDC,0xF8,0xB9,0xAF,0x7B,0x62,0xB7,0x70,0xE6,0xBE,0x1A,0x54,0x4C,0xB8,0xDD,0xFF,0x03};
|
||||||
|
//const uint8_t spYELLOW[] PROGMEM = {0x69,0xBD,0x56,0x15,0xAC,0x67,0xE5,0xA5,0xCC,0x2B,0x8E,0x82,0xD8,0xD6,0x39,0x9E,0xAE,0x85,0x50,0x37,0x5F,0x7D,0xEB,0x53,0x55,0x1B,0xDE,0xA6,0x6B,0x56,0x5D,0x74,0x47,0x2B,0x77,0x6E,0x75,0x87,0x59,0x95,0xA4,0x76,0x76,0x6B,0xCE,0xA2,0xB3,0x4C,0xF2,0xCF,0xBD,0xED,0xC9,0x54,0xB6,0x52,0x9F,0x7E,0xA5,0xDB,0xC7,0xCA,0x46,0x5D,0x13,0xEF,0xF8,0x84,0x37,0xA8,0xA9,0x0C,0xF2,0xE3,0xBE,0x24,0xC6,0x2B,0x48,0xDF,0xFF,0x03};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.speaker.say(spDANGER);
|
||||||
|
CircuitPlayground.speaker.say(spDANGER);
|
||||||
|
CircuitPlayground.speaker.say(spMOTOR);
|
||||||
|
CircuitPlayground.speaker.say(spIS);
|
||||||
|
CircuitPlayground.speaker.say(spON);
|
||||||
|
CircuitPlayground.speaker.say(spFIRE);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this
|
||||||
|
// will turn off the pin 13 LED (it's connected to a microcontroller
|
||||||
|
// pin that's also related to the speaker), but there's a small
|
||||||
|
// audible click when it turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
}
|
@ -0,0 +1,400 @@
|
|||||||
|
// Talkie library
|
||||||
|
// Copyright 2011 Peter Knight
|
||||||
|
// This code is released under GPLv2 license.
|
||||||
|
//
|
||||||
|
// The following phrases are derived from those built into the
|
||||||
|
// Texas Instruments TI99/4A Speech System add-on from 1979.
|
||||||
|
//
|
||||||
|
// A deep male voice with a southern USA accent.
|
||||||
|
//
|
||||||
|
// Due to the large vocabulary, this file takes up 32Kbytes of flash.
|
||||||
|
// It will not fit in most Arduinos as is, so just copy and paste
|
||||||
|
// out the words you need.
|
||||||
|
//
|
||||||
|
// Note that some words/letters are repeated with different spellings.
|
||||||
|
// eg. 'TWO', 'TO', 'TOO' or 'YOU' and 'U'
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
//const uint8_t spA[] PROGMEM ={ 0xA7,0x8A,0xCE,0x25,0xA7,0x2A,0xDD,0x62,0xE7,0x3B,0xBF,0xF9,0xAD,0x56,0xD5,0x72,0xA0,0x44,0x7D,0x99,0x4D,0xED,0xFC,0xE0,0x87,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spA1[] PROGMEM ={ 0xAD,0x36,0x25,0x46,0x7C,0x2C,0xCD,0x66,0x36,0xB3,0xED,0x6D,0xEF,0x72,0xE7,0xBB,0xD8,0x3F,0x00,0x00};
|
||||||
|
//const uint8_t spABOUT[] PROGMEM ={0xA1,0x08,0x2E,0xCF,0x4A,0xDB,0xF7,0x62,0x54,0xC9,0xC6,0xB9,0xC9,0xDA,0x56,0x45,0xE3,0x1B,0xCE,0x5D,0x55,0x2D,0x43,0x06,0xAA,0xA7,0x86,0x51,0x05,0x95,0xED,0x26,0xBB,0x57,0xE5,0x6D,0xB5,0xAB,0xBD,0xDE,0xD5,0xAE,0x4E,0xE5,0xFD,0xB4,0x69,0xD4,0x9D,0x55,0xAF,0x4A,0x6D,0xC2,0x8E,0x48,0xD4,0x75,0xB5,0x35,0xF3,0xAC,0x36,0x47,0xD4,0xA2,0xB7,0x4B,0x87,0x65,0x00,0x00,0x02,0x64,0xED,0x81,0x80,0xA3,0xDD,0x10,0xE0,0x4D,0x18,0xC0,0x03};
|
||||||
|
//const uint8_t spAFTER[] PROGMEM ={0x25,0x8B,0x23,0xC3,0xA1,0xC3,0x9C,0x2C,0xF6,0x32,0xE7,0xAA,0x7A,0xB3,0x9B,0xDF,0xE2,0x56,0xB5,0x31,0x80,0x15,0xC6,0x1A,0xD0,0x00,0x80,0x01,0x8A,0x32,0x4F,0x85,0x5F,0xEC,0x96,0x9A,0xBD,0xD7,0xB5,0xCB,0x83,0x1B,0xEC,0xA0,0x88,0x8C,0x74,0x62,0xB4,0x03,0xAA,0x2C,0x12,0xB3,0xC9,0x76,0xD6,0xCC,0x70,0xF2};
|
||||||
|
//const uint8_t spAGAIN[] PROGMEM ={0x08,0xD0,0xD1,0xBD,0x55,0xAE,0xA7,0x73,0x54,0xAD,0x53,0xC5,0x18,0xE1,0xA2,0x4B,0x4F,0x9D,0x42,0xA8,0x89,0x76,0x6D,0xB5,0xB7,0x22,0x21,0xE9,0xAD,0x36,0xB3,0x1D,0x4D,0xB1,0x22,0xAE,0x97,0xA4,0xE7,0x23,0x2B,0x89,0x5D,0x63,0x92,0xEC,0x6C,0xA7,0x23,0x2D,0xD5,0x42,0x74,0x14,0xCF,0x6C,0xE4,0xA9,0x45,0x08,0x8D,0xE3,0x5D,0xEF,0x66,0xB4,0xB1,0x67,0xB2,0x66,0xE2,0xD9,0x8F,0x3E,0x8C,0x08,0xF2,0x8C,0x1B,0x06,0xE9,0xA5,0xCC,0x46,0xB6,0x1F,0xEC,0x20,0x07,0x34,0xD0,0x10,0x99,0xDA,0x92,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spALL[] PROGMEM ={0x29,0xB1,0xE6,0x57,0xB9,0xE6,0xD4,0xB4,0xA7,0x23,0x35,0xEE,0xD6,0xD8,0x9B,0xCE,0x74,0x66,0xB3,0x9A,0xD5,0xAC,0x4B,0x23,0xEB,0x8C,0x62,0x3B,0xA9,0x5D,0xE8,0xC4,0xDA,0x56,0x28,0x65,0xBE,0xD7,0xBD,0xEC,0x1F};
|
||||||
|
//const uint8_t spAM[] PROGMEM ={0xA3,0x28,0x4D,0xDD,0x64,0x15,0x9D,0xA2,0x34,0x0B,0xD5,0x4A,0x74,0xAA,0x3C,0x2D,0x44,0x2A,0xD5,0xAD,0x6E,0x75,0xAA,0xD4,0xB5,0x59,0x33,0xCE,0xAD,0x4F,0x1D,0x6B,0x94,0x9A,0x57,0xD9,0xED,0x68,0x6D,0xA9,0x56,0xC9,0xD8,0xAD,0x35,0x8E,0x4B,0xC5,0x54,0xFB,0xCE,0x77,0xA6,0xD3,0x8E,0x4A,0xC3,0xDD,0x98,0x4E,0x7A,0x49,0xE5,0x76,0xEA,0x3B,0xDD,0x3F,0x00,0x00};
|
||||||
|
//const uint8_t spAN[] PROGMEM ={0xA3,0xCA,0xD3,0x4C,0xBC,0x22,0xDF,0x62,0x15,0x65,0x99,0xB3,0x4E,0x9C,0x5D,0xDC,0xE2,0x54,0x65,0x78,0x32,0x77,0xE2,0x5B,0xED,0x6A,0xD7,0xA3,0x8D,0x4D,0x43,0x39,0x13,0xA5,0xD6,0x7A,0x6A,0xD1,0x76,0x63,0x3B,0xDB,0xAB,0x5E,0x06,0x0E,0x95,0x49,0xAC,0x7B,0xDD,0x3F,0x00,0x00};
|
||||||
|
//const uint8_t spAND[] PROGMEM ={0xA1,0xC8,0xD3,0x4C,0xBC,0x22,0xCF,0x62,0xE4,0x65,0x99,0xB3,0x4E,0x9C,0x9B,0xCD,0xAC,0x65,0x65,0x78,0x32,0x77,0xE2,0x96,0x97,0x58,0x2A,0x66,0xB3,0x5B,0x95,0x53,0xB1,0x9A,0x4D,0x69,0x75,0x2A,0x69,0xA2,0x3A,0xA7,0x35,0x31,0x97,0x91,0xD9,0xAC,0xD4,0x25,0x5F,0x85,0x2E,0xB3,0x43,0xAF,0x83,0x9A,0x9A,0xD7,0x76,0xBD,0x0A,0x5C,0x62,0xE3,0xC0,0xF5,0x32,0x70,0x89,0x77,0x2C,0xD3,0x4B,0x47,0x6D,0x3A,0xB1,0xD4,0xA0,0x2D,0xAE,0xD9,0x44,0x92,0x23,0x9F,0xC2,0x54,0x94,0x8B,0x78,0x6C,0xD0,0xA3,0x18,0x52,0x4C,0x75,0xCD,0x5A,0x0F};
|
||||||
|
//const uint8_t spANSWER[] PROGMEM ={0xA5,0x88,0x59,0x2B,0xBC,0x2A,0xDE,0xEA,0x14,0x69,0x78,0x8A,0x56,0x9C,0x9B,0xEF,0x7C,0x64,0x3E,0x25,0x05,0x67,0x3D,0x97,0x5A,0xCF,0xEE,0x78,0x6D,0x75,0x96,0xAA,0x9E,0x2B,0x4D,0x4D,0xB1,0x01,0x6E,0x50,0xF3,0x40,0x06,0x1C,0x70,0xB2,0x7B,0x6B,0x62,0x4C,0x53,0x0D,0xB7,0xA5,0x75,0x5D,0x4C,0x5B,0x9B,0x85,0x5E,0x77,0xCA,0x2C,0xCF,0x65,0x06,0xDD,0x71,0xDA,0xA3,0x95,0x1A,0x64,0xE7,0xDC,0x0C,0x99,0x0F};
|
||||||
|
//const uint8_t spANY[] PROGMEM ={0xA7,0xAA,0x2D,0x53,0x54,0xD7,0xDE,0xEA,0x16,0xB7,0x28,0x45,0x88,0x92,0xAC,0xA3,0xAA,0x14,0x65,0x79,0x08,0xE6,0xD2,0x5B,0xAD,0xB6,0x2E,0x31,0xC1,0x9C,0xD3,0xBA,0x56,0x95,0xD5,0x7A,0x72,0x18,0x52,0x20,0xF3,0xDA,0x00,0x66,0xF0,0x52,0xB5,0xDA,0x0D,0xAB,0xD1,0x3B,0xE2,0x2D,0xB3,0xA2,0xC6,0xC0,0x9D,0xD9,0xCB,0xB5,0x98,0xBC,0x52,0x76,0xCF,0x34,0x0F};
|
||||||
|
const uint8_t spARE[] PROGMEM ={0xA7,0x70,0xB1,0xCE,0x29,0xD2,0xDD,0xFC,0xE6,0x37,0xBF,0xC5,0xA9,0x7C,0xC8,0x4E,0x95,0xE6,0xB7,0x3A,0x8D,0xAF,0x1E,0x19,0x9C,0xFC,0x76,0xAD,0xB3,0x43,0x32,0xDD,0xEA,0xE4,0xCE,0xF5,0xBE,0x2A,0x6B,0x73,0x22,0xD3,0xC5,0xE9,0x2C,0xCA,0xAE,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spAS[] PROGMEM ={0x27,0x2F,0x3D,0x53,0xD5,0x96,0x9E,0xA2,0xF4,0x4C,0x55,0x9F,0x77,0x8B,0x53,0x84,0x9E,0x29,0x96,0x4D,0x6F,0x75,0xAB,0x55,0xFB,0xE2,0x29,0x96,0x63,0x77,0xD3,0xDB,0xDE,0xE6,0x36,0xB4,0xAA,0x78,0x5A,0x54,0x58,0xD7,0xAA,0xE4,0xE1,0x31,0x91,0x4C,0x6B,0x79,0x59,0xE8,0xA4,0xC8,0xAD,0x02,0x16,0x11,0x95,0x00,0x07,0x28,0x40,0x81,0x07};
|
||||||
|
//const uint8_t spASSUME[] PROGMEM ={0xAD,0x31,0x29,0x43,0x23,0x27,0xCF,0xA6,0x37,0xA5,0xB1,0x3E,0x52,0x3D,0x2E,0xE5,0xC1,0x01,0x19,0x84,0x79,0xC0,0x03,0x0E,0x78,0x2E,0x3C,0x03,0x1E,0x68,0xA1,0xD5,0x19,0x1A,0xD9,0x6B,0x26,0x3D,0xE9,0x69,0xCD,0x7A,0x51,0xAB,0x52,0x1B,0xC7,0xA5,0x62,0xAA,0x73,0x1B,0x3B,0xDF,0xFB,0xC1,0x8E,0x76,0xB4,0xD3,0x03};
|
||||||
|
//const uint8_t spAT[] PROGMEM ={0x2B,0x8B,0xC9,0x3A,0x3D,0xA7,0xDC,0xE2,0x16,0xB7,0xD8,0x55,0x6F,0x62,0x03,0x00,0x0A,0xC8,0xCA,0xC5,0x00,0x4B,0xB8,0x11,0xC0,0xA9,0x60,0x80,0x07};
|
||||||
|
//const uint8_t spB[] PROGMEM ={0xAB,0xED,0xD1,0x14,0x5D,0xBB,0xAD,0xB6,0x45,0x57,0xF0,0xDE,0x3A,0x9A,0x59,0x94,0x31,0x62,0xCD,0x6E,0x76,0xB3,0x9B,0xD9,0xF4,0xB6,0xB6,0xB1,0xB7,0x3D,0xEF,0x1F,0x00,0x00};
|
||||||
|
//const uint8_t spBACK[] PROGMEM ={0xA7,0x4D,0x59,0xCB,0x39,0xD6,0x9D,0x21,0x54,0x6D,0x93,0xCE,0x76,0x86,0x54,0xAD,0xCD,0x3A,0xED,0xED,0x6F,0x77,0xDB,0xDB,0xDE,0x2A,0x17,0x00,0x08,0xD0,0xC2,0x44,0x01,0x21,0x8B,0x0A,0x20,0x79,0x27,0x04,0xB8,0x28,0xFC};
|
||||||
|
//const uint8_t spBASE[] PROGMEM ={0xA6,0xE6,0x3C,0x23,0x3D,0x12,0x9C,0x2A,0xE5,0x08,0x36,0xEE,0x76,0xAA,0x9C,0x4D,0x34,0xF2,0xE9,0xAD,0x4F,0x9D,0x93,0xB1,0x66,0x2E,0x5D,0x75,0xF6,0xC6,0x52,0x39,0xFB,0xD6,0xAD,0xC9,0x4A,0xC5,0x37,0x26,0xB7,0x36,0x67,0x15,0xD1,0x5A,0x92,0xBA,0xA9,0xCD,0x98,0xA2,0x8D,0x02,0x2E,0x17,0x51,0xC0,0xB3,0x2A,0x06,0xF8,0xD1,0xD4,0x00,0xBF,0x39,0x1B,0xE0,0x65,0x25,0x05,0x2C,0xD9,0x86,0x00,0x9B,0x0A,0x1E};
|
||||||
|
//const uint8_t spBE[] PROGMEM ={0xAB,0xED,0xD1,0x14,0x5D,0xBB,0xAD,0xB6,0x45,0x57,0xF0,0xDE,0x3A,0x9A,0x59,0x94,0x31,0x62,0xCD,0x6E,0x76,0xB3,0x9B,0xD9,0xF4,0xB6,0xB6,0xB1,0xB7,0x3D,0xEF,0x1F,0x00,0x00};
|
||||||
|
//const uint8_t spBETWEEN[] PROGMEM ={0xA1,0x86,0xA6,0x33,0x23,0x1C,0x9D,0xA2,0x5A,0x0B,0x4E,0xED,0x77,0xAA,0x6A,0xCD,0xD9,0x65,0xAF,0xE9,0x24,0x8D,0xB4,0x8A,0x54,0xC0,0x80,0x51,0x35,0x19,0x90,0x43,0x15,0x01,0xFC,0x34,0x43,0x00,0xEB,0xC2,0x2D,0xF3,0x22,0x33,0x1C,0x3A,0xAF,0x3C,0xE9,0x52,0x35,0xEE,0xBC,0x8A,0x9A,0x1C,0xA5,0xA2,0xF3,0xAC,0x56,0x35,0x6A,0x30,0x78,0xB4,0xDE,0xF5,0x6E,0x76,0xBB,0xBB,0xD9,0x85,0xCE,0x79,0xB2,0x0C,0x9D,0xED,0x5A,0x6B,0x61,0xC3,0xCA,0xB6,0x69,0xA4,0xE5,0x73,0x6B,0x4B,0xAA,0xE1,0x46,0xA7,0x34,0x63,0x88,0x46,0x2A,0x89,0xD6,0x4C,0xFC};
|
||||||
|
//const uint8_t spBLACK[] PROGMEM ={0xA4,0x12,0xBC,0x32,0x22,0x9C,0x94,0xDA,0x78,0x3B,0xD2,0xF4,0xBC,0xAA,0x60,0x65,0x0B,0x3D,0xDD,0xA9,0xAC,0x8B,0x4D,0xC8,0xA4,0xA7,0xF2,0xC9,0x4E,0x64,0xDC,0xDE,0xFA,0xD4,0xA1,0xF9,0x48,0xB4,0x9B,0xDB,0xEE,0xAE,0xF4,0xA1,0x73,0x5A,0x96,0xA1,0x3A,0xD8,0x01,0x40,0x00,0x71,0x38,0x09,0x20,0x16,0x05,0x06,0x24,0x9F,0x80,0x00,0x17,0x94,0x1E};
|
||||||
|
//const uint8_t spBLUE[] PROGMEM ={0x2D,0x0B,0x81,0xC7,0x94,0xD5,0x8F,0x2A,0x27,0x1C,0x27,0x71,0x3F,0xAB,0x55,0x59,0x97,0xA1,0x22,0x79,0x77,0xB5,0xAB,0x59,0xCF,0xB6,0x77,0xA1,0x17,0xB6,0x4B,0x03,0xB3,0xFB,0x9E,0x0D,0x2C,0x6C,0x4A,0x67,0x92,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spBOTH[] PROGMEM ={0xA2,0x45,0x29,0xCD,0xAC,0xD2,0xAE,0x5A,0xFB,0x3C,0xA5,0xC8,0x73,0xAB,0x5B,0xAD,0x4A,0xB9,0xBA,0x40,0xEF,0xBA,0xEB,0x5E,0xA7,0x56,0x94,0x2E,0x21,0x7F,0x9E,0x3B,0xDB,0xC9,0x01,0x08,0x10,0xA5,0x8B,0x02,0x52,0x88,0xD2,0x80,0x01,0xB2,0x6B,0x23,0x80,0x6B,0xC1,0xF0};
|
||||||
|
//const uint8_t spBOTTOM[] PROGMEM ={0xA2,0x23,0xA2,0x3C,0x2C,0x9C,0xAF,0xCA,0xBB,0x7C,0x09,0x9D,0x73,0xAB,0x5D,0xAD,0xDA,0xA6,0x3A,0x36,0xAF,0xBB,0x9B,0xDE,0x28,0x40,0xAA,0x54,0x09,0x94,0xDA,0x36,0x5F,0xF2,0x70,0xD3,0xEB,0xDA,0xC4,0xD6,0x75,0xDA,0xEB,0xB0,0x97,0x1A,0xDF,0xD9,0x4E,0x0E,0x7C,0x78,0x00,0x00};
|
||||||
|
//const uint8_t spBUT[] PROGMEM ={0xAA,0xC5,0xA6,0xCC,0x2D,0xD2,0xAE,0x2A,0x18,0x7F,0x2B,0x59,0xBD,0xAB,0x5B,0xDD,0xEA,0xD6,0xB3,0x4E,0x8D,0xAD,0xE6,0x92,0x13,0x5A,0x36,0x00,0x00,0x0E,0xC8,0xCC,0x0D,0x01,0xDA,0x3B,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spBUY[] PROGMEM ={0xAE,0xC2,0xA6,0xCC,0x2D,0xD2,0x9E,0xC2,0xA7,0x78,0x91,0xC8,0x74,0xAB,0x53,0xB9,0x34,0xA3,0x30,0x8E,0x6F,0x75,0xAB,0x5B,0x9D,0xDA,0x95,0x6E,0x93,0xB1,0x7F,0xEB,0xDB,0xAC,0x2E,0x4C,0x4B,0xC9,0x96,0xDC,0xBB,0xD6,0x85,0xE2,0x61,0x19,0xA5,0x5B,0x1F,0x8A,0xA9,0x77,0x44,0xEE,0x7D,0xEE,0x62,0x2F,0xFB,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spBY[] PROGMEM ={0xAE,0xC2,0xA6,0xCC,0x2D,0xD2,0x9E,0xC2,0xA7,0x78,0x91,0xC8,0x74,0xAB,0x53,0xB9,0x34,0xA3,0x30,0x8E,0x6F,0x75,0xAB,0x5B,0x9D,0xDA,0x95,0x6E,0x93,0xB1,0x7F,0xEB,0xDB,0xAC,0x2E,0x4C,0x4B,0xC9,0x96,0xDC,0xBB,0xD6,0x85,0xE2,0x61,0x19,0xA5,0x5B,0x1F,0x8A,0xA9,0x77,0x44,0xEE,0x7D,0xEE,0x62,0x2F,0xFB,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spBYE[] PROGMEM ={0xAE,0xC2,0xA6,0xCC,0x2D,0xD2,0x9E,0xC2,0xA7,0x78,0x91,0xC8,0x74,0xAB,0x53,0xB9,0x34,0xA3,0x30,0x8E,0x6F,0x75,0xAB,0x5B,0x9D,0xDA,0x95,0x6E,0x93,0xB1,0x7F,0xEB,0xDB,0xAC,0x2E,0x4C,0x4B,0xC9,0x96,0xDC,0xBB,0xD6,0x85,0xE2,0x61,0x19,0xA5,0x5B,0x1F,0x8A,0xA9,0x77,0x44,0xEE,0x7D,0xEE,0x62,0x2F,0xFB,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spC[] PROGMEM ={0x08,0xD0,0xB4,0x42,0x00,0x8B,0x88,0x3A,0xE0,0x2B,0xD5,0x00,0xFC,0x18,0xE6,0x81,0x08,0x78,0xC0,0x00,0x4F,0xAB,0x1C,0xA7,0xF8,0x60,0x31,0x7D,0x73,0xE2,0x1A,0x93,0xD8,0xED,0xEB,0x8D,0x6F,0x72,0xB3,0x51,0xF4,0x9A,0x02,0x1A,0x6F,0x77,0xB5,0xEB,0xD9,0x94,0xB6,0x34,0x22,0xA9,0xA9,0x93,0xBB,0xD0,0x25,0xC7,0x94,0x97,0xA1,0x4D,0xE7,0x95,0xF0,0x9E,0x18,0x35,0x5D,0xF4,0xA0,0xD3,0x29,0x4C,0x75,0xC1,0x82,0x86,0xB9,0xB3,0x07};
|
||||||
|
//const uint8_t spCAN[] PROGMEM ={0x0C,0x68,0x42,0xCC,0x00,0x33,0x2A,0x3B,0x20,0x69,0xD5,0x92,0xE6,0xE9,0xA6,0x9A,0x75,0x6F,0x75,0xAB,0x53,0xA5,0x6E,0x2E,0x5E,0x51,0x6F,0x7D,0x9B,0xDB,0xEC,0x66,0xB7,0xB3,0xE9,0x4D,0xAA,0xAD,0xA7,0x16,0x6D,0x37,0xB9,0xCE,0xB5,0xAB,0x64,0xE0,0x50,0x99,0xC4,0xBE,0xE6,0xCD,0x03};
|
||||||
|
//const uint8_t spCASSETTE[] PROGMEM ={0x0E,0xF0,0x25,0x48,0x03,0x1A,0x68,0xB9,0x49,0xCD,0xE1,0x1D,0xAB,0x56,0x06,0x58,0xD6,0xCD,0x02,0x16,0x70,0xC0,0xB7,0x19,0x16,0x90,0x40,0xAB,0xDC,0x30,0xF7,0xE8,0xBA,0xBB,0xDE,0xF5,0x6C,0x46,0xED,0x9A,0x85,0x79,0xC7,0xA9,0x95,0xAC,0x40,0x03,0x1E,0x20,0x80,0x54,0xA9,0x18,0x78};
|
||||||
|
//const uint8_t spCENTER[] PROGMEM ={0x02,0xF8,0x92,0x55,0x00,0xF7,0x1A,0x2A,0xE0,0x17,0x45,0x03,0xFC,0x16,0xEA,0x80,0x9F,0xD4,0x18,0x60,0x9A,0xEA,0xC9,0x43,0x2F,0x76,0xF5,0xAE,0xB7,0xBA,0xD5,0xA8,0xBC,0x57,0x4B,0x88,0x3A,0xB1,0x49,0x40,0x75,0x1E,0xAD,0x76,0x4D,0x34,0xD2,0x3A,0xDF,0x66,0x36,0xBD,0xA9,0x4D,0xAC,0x75,0x2D,0x9B,0x07};
|
||||||
|
//const uint8_t spCHECK[] PROGMEM ={0x0E,0x98,0xBD,0x32,0x03,0x11,0x60,0x00,0x73,0x1E,0x23,0x0E,0xD9,0xCD,0x33,0xC7,0xEC,0x74,0xA7,0x3B,0x9F,0x55,0x6F,0x7C,0x03,0x00,0x16,0xE0,0x00,0x06,0x30,0xF0};
|
||||||
|
//const uint8_t spCHOICE[] PROGMEM ={0x06,0x98,0xA9,0x2A,0x03,0x16,0x40,0x00,0x9B,0x9D,0x2B,0xB6,0x26,0x3B,0x92,0xF3,0xEE,0x64,0xA7,0x2B,0x8B,0x3A,0xC7,0x83,0xB3,0xED,0x6A,0xD5,0x31,0x8E,0x7A,0x50,0xE7,0xD9,0xB5,0x21,0x99,0x74,0x2D,0x6F,0x5C,0x06,0x5F,0x9C,0xD2,0x3B,0x4A,0x18,0x63,0x70,0x11,0x89,0x19,0x04,0xF8,0x5E,0x48,0x03,0x1A,0xB0,0x80,0x06,0x24,0x40,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spCLEAR[] PROGMEM ={0x02,0x08,0xB1,0x28,0x00,0xDE,0x47,0x06,0xA0,0x3A,0x2B,0x01,0x38,0x5F,0xB9,0x62,0xA3,0x3A,0x25,0xA4,0xED,0x4E,0x4E,0x9A,0x92,0xB1,0x56,0xB4,0xB9,0xD9,0xCD,0x76,0x7E,0xAA,0x54,0x8D,0x35,0xBD,0xEB,0xAD,0x5A,0xED,0x17,0x66,0x9B,0x2D,0xAE,0x6D,0x6E,0x7D,0x67,0x3B,0xDD,0xCB,0xE1,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spCOLOR[] PROGMEM ={0x0E,0x88,0xC7,0x35,0x00,0x31,0x15,0x7B,0x40,0x03,0x27,0xF6,0xAE,0xDA,0x4D,0xB2,0xDD,0x78,0xC4,0xDA,0x7D,0xB1,0xF2,0xEA,0x9E,0xE4,0xAC,0x17,0xAB,0x72,0x31,0x83,0x8B,0xDB,0xEE,0x66,0x76,0xA9,0xB7,0x4D,0x2D,0x9B,0xB6,0xC4,0x41,0x0F,0x7A,0x94,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spCOME[] PROGMEM ={0x0E,0x88,0xCD,0xD4,0x01,0xCE,0xB9,0x38,0x20,0xBA,0x54,0x05,0xC4,0x1C,0x1A,0x92,0x64,0xAA,0x2D,0x38,0xED,0xCD,0x6E,0x76,0x32,0x17,0xBA,0xD5,0xB8,0xC9,0xCD,0x77,0xD5,0x6A,0x9B,0xA5,0x54,0x28,0x4D,0x6C,0x63,0x1B,0xDB,0xD8,0xF9,0xCE,0xF6,0xB2,0xA7,0xFD,0x03};
|
||||||
|
//const uint8_t spCOMES[] PROGMEM ={0x06,0x08,0x5D,0xC5,0x01,0x3E,0x1A,0x1A,0x20,0x85,0x16,0x06,0xA8,0x6A,0x76,0x92,0x90,0xCB,0xCD,0xB5,0xF3,0x49,0x42,0xE8,0x74,0x97,0x26,0x37,0x3D,0xA9,0x4D,0x93,0x62,0x56,0x64,0x67,0xA3,0xB2,0x79,0x82,0x42,0x93,0xA4,0xC6,0x3B,0x2C,0x95,0xF0,0x1E,0x9B,0xD8,0xC6,0x36,0xB4,0xC6,0x72,0x89,0x94,0xDB,0xD0,0x5A,0xED,0x61,0x0E,0x8D,0x53,0xF7,0x0C,0x7A,0xB0,0xA4,0x35,0xC0,0x42,0x40,0x06,0xB8,0x82,0x4D,0x01,0x3F,0xB2,0x1A,0xE0,0x09,0xB6,0x07};
|
||||||
|
//const uint8_t spCOMMA[] PROGMEM ={0x01,0x08,0xD3,0x38,0x00,0xD1,0x84,0x3A,0x20,0xA5,0x75,0x02,0xA8,0x63,0xB6,0x22,0xDB,0x2B,0xDC,0xBD,0xCE,0x4D,0x6E,0xB2,0x12,0xDD,0xCE,0x25,0x3D,0x4E,0x2B,0x6C,0x96,0x52,0xA1,0x34,0xBD,0xAA,0xD5,0x68,0xF4,0x68,0xB1,0xB0,0x04,0xBD,0x6D,0xBD,0x8D,0xED,0x21,0xD8,0xA8,0x0E,0x7E,0xD0,0xFD,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spCOMMAND[] PROGMEM ={0x06,0x08,0xDB,0x58,0x01,0xDE,0x25,0x1B,0xC0,0x64,0xE5,0x53,0x25,0x53,0x6D,0xC1,0x69,0x6F,0x75,0xAB,0x51,0x85,0x40,0xE5,0x60,0xC9,0x67,0x35,0xAB,0x55,0xC5,0x9A,0xDA,0x94,0x55,0x6F,0x75,0xAB,0x5D,0xEF,0x66,0xB5,0xBE,0x7B,0x9A,0x65,0xD4,0xD9,0xB5,0xCE,0x16,0x0B,0xD2,0xB2,0x5C,0x7B,0xD3,0x2B,0xCB,0x9D,0xDC,0x89,0x6D,0xAF,0x7B,0xDD,0x9B,0x9E,0xA9,0x88,0xB4,0x88,0x6B,0x7A,0xE2,0x32,0x3C,0xCB,0x66,0xE8,0xAD,0xB1,0x50,0x9F,0x06,0xB6,0x7F};
|
||||||
|
//const uint8_t spCOMPLETE[] PROGMEM ={0x06,0x08,0xB9,0x65,0xE4,0xB6,0x54,0xB8,0x78,0x92,0x5D,0xED,0xAA,0xD4,0x2E,0x70,0x0B,0x9B,0x9A,0xDC,0x86,0xD6,0x7B,0x6C,0xA5,0xD4,0xEA,0x3A,0xE1,0xDD,0x13,0xCA,0x8E,0xE9,0x8D,0x32,0x0F,0x35,0x27,0x00,0x06,0xF0,0xD6,0xDC,0x02,0x25,0xF1,0xB2,0x3C,0xD4,0x16,0xEF,0x64,0x65,0x4E,0x87,0x56,0xC4,0xAC,0x51,0x04,0x2B,0xDC,0x99,0x75,0x5A,0x15,0x0C,0x6B,0x6D,0x26,0xEC,0x8D,0xEB,0xAD,0xC1,0xEE,0x28,0x2B,0xB2,0xC7,0x33,0x00,0x30,0xA0,0xB1,0x34,0x0D,0x70,0x80,0x02,0xF0};
|
||||||
|
//const uint8_t spCOMPLETED[] PROGMEM ={0x02,0xD0,0xC5,0x99,0x03,0xAD,0xD2,0x35,0x52,0xD3,0x12,0xEF,0xBA,0x34,0xA9,0xE0,0xB2,0x88,0x96,0xD0,0xD8,0x88,0xCF,0x11,0x5E,0x7D,0x23,0x7B,0x10,0x40,0xAD,0xE2,0x1E,0x70,0x40,0xD1,0x9A,0x27,0xF1,0xC6,0x23,0x24,0x32,0x9F,0xD4,0x79,0x33,0x8F,0x6A,0xB5,0xD2,0x14,0x49,0xDD,0x7B,0xF1,0x4C,0x43,0x1E,0x1B,0xB3,0x64,0x6C,0x42,0x00,0xF0,0x15,0x02,0x70,0xDC,0x2D,0xD5,0x25,0x9A,0xA3,0xEB,0xB6,0x5D,0xDF,0x76,0x77,0xA5,0x4F,0xC1,0x8D,0x0D,0xBE,0x88,0x81,0xE9,0xC8,0x88,0xCC,0xC8,0x07,0x31,0x2A,0xE9,0x96,0x9E,0x0E,0xED,0xF0};
|
||||||
|
//const uint8_t spCOMPUTER[] PROGMEM ={0x0A,0x08,0x79,0xC4,0x02,0xA7,0x8A,0xCE,0xD3,0x03,0xDA,0xEE,0xAA,0xD7,0xA5,0xB6,0x59,0x4A,0x85,0xD2,0xD8,0x16,0x8F,0x02,0x60,0x21,0x32,0x00,0x29,0x2B,0x5A,0xE0,0x24,0x25,0x85,0x82,0x5B,0x9F,0x9D,0xAC,0x34,0x38,0x4B,0xB1,0xC8,0x33,0x33,0x07,0x74,0x1D,0x91,0x2A,0xDF,0x34,0xA9,0xAD,0xED,0xAC,0x66,0x3B,0xFB,0xD6,0xBB,0xA6,0xAA,0x1B,0xE9,0xC3,0x60,0x3B,0xFB,0x14,0xA5,0x76,0x83,0xAD,0xE4,0xE9,0xE6,0xDA,0x0C,0x21,0x5A,0x92,0x7A,0xAA,0x07};
|
||||||
|
//const uint8_t spCONNECTED[] PROGMEM ={0x0E,0x88,0xC7,0x35,0x00,0x31,0x15,0x7B,0x20,0x24,0xB1,0x78,0x5A,0xD8,0x92,0x9B,0x9F,0xDC,0xE7,0x70,0x53,0x9F,0x93,0x72,0xEF,0x5D,0x1D,0x2D,0x6D,0x2F,0x4E,0x96,0x72,0x84,0x43,0xD5,0x39,0x69,0x6E,0x91,0x86,0xDD,0x66,0xA4,0x69,0x59,0x90,0x8F,0xEB,0x94,0x45,0xED,0xAA,0x62,0x4A,0x78,0x0D,0x00,0x0A,0x90,0x41,0xA3,0x65,0x25,0x9A,0xA3,0xEB,0xB6,0x59,0xEC,0xAA,0xB6,0xA2,0x17,0x26,0x2C,0xC3,0x33,0xC6,0xDE,0xF6,0xAA,0x57,0xD2,0x2D,0x3D,0x1D,0xBA,0xA6,0x44,0x15,0x16,0xC9,0xAC,0xFA,0x18,0x45,0x94,0xA2,0x26,0xC0,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spCONSOLE[] PROGMEM ={0x02,0xF0,0x31,0xC0,0x02,0x1A,0xE0,0xC0,0x8A,0x5D,0x9C,0x70,0x4D,0x3B,0x37,0xB9,0xC9,0x4E,0x52,0xAA,0xBD,0xB9,0xC2,0x68,0xF1,0x99,0x2D,0x74,0xED,0x80,0xAD,0xDC,0x33,0x10,0x01,0x0B,0xB4,0x4A,0xBB,0x4E,0x4D,0xAF,0x5B,0x6A,0xB1,0xAA,0x54,0xB2,0x5B,0x6E,0x63,0x1F,0x07,0x3F,0x98,0x81,0xD5,0x57,0xD3,0x72,0xA3,0x07,0x3D,0x88,0x91,0xB6,0x0B,0x11,0x73,0xC2,0x47,0x3A,0x3E};
|
||||||
|
//const uint8_t spCORRECT[] PROGMEM ={0x0E,0x70,0xC7,0x49,0x00,0x3E,0x86,0xA5,0x58,0x8D,0x2C,0x53,0xCD,0x76,0x8B,0x56,0x98,0x23,0x95,0xA2,0x99,0x6B,0x95,0x9B,0xDA,0xAC,0xCA,0x27,0x6D,0xF1,0x8D,0xBD,0xAB,0x59,0xF7,0x26,0xB5,0xBE,0x73,0x79,0x4D,0x90,0xDC,0xB9,0x21,0x0C,0x28,0x8F,0x91,0x29,0x47,0x00,0x00,0x01,0x0C,0xED,0xAA,0x80,0xE5,0xA2,0x05,0xD0,0x74,0x3B,0x02,0xBC,0x4B,0x7A,0x00,0x00};
|
||||||
|
//const uint8_t spCOURSE[] PROGMEM ={0x0A,0x70,0xC7,0x49,0x03,0x1A,0x48,0xA1,0xEC,0xB5,0xA4,0xDE,0xA5,0x86,0x35,0xAA,0xD1,0x48,0xD4,0xC8,0x32,0xD5,0x6C,0x2D,0x37,0x47,0x2A,0x45,0x33,0xF7,0xAA,0x36,0xB9,0x63,0xC0,0x29,0x6E,0x1A,0x30,0xC0,0x4F,0xEE,0x16,0xD0,0x80,0x00,0x7E,0x31,0x42,0xC0,0xDF,0x8E,0x08,0xF8,0x4B,0x19,0x01,0xD7,0x92,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spCYAN[] PROGMEM ={0x06,0xF8,0x56,0x4D,0x03,0x1A,0xB0,0x80,0x04,0x52,0x68,0x52,0xA6,0xCB,0xD8,0xDD,0xF1,0x8E,0x77,0xBC,0xE2,0x30,0x22,0x9C,0x26,0xCE,0x8E,0x77,0xBC,0xD2,0xD4,0x5D,0x9D,0xB2,0xFA,0xCD,0x77,0xB5,0xAB,0xDD,0x8C,0xD6,0x95,0x30,0x2D,0x8F,0x34,0xBB,0xDA,0x85,0x41,0x45,0x71,0xE3,0x4E,0x6C,0x07,0x3D,0x88,0x41,0x45,0x55,0xD7,0x4C,0x6D,0x87,0x07};
|
||||||
|
//const uint8_t spD[] PROGMEM ={0x0C,0x10,0xD2,0x62,0x64,0xD9,0x2B,0x4B,0xE6,0xE9,0x91,0xE5,0x28,0x2C,0x53,0x83,0x56,0x96,0x8D,0x88,0x6E,0x4D,0x1A,0x59,0x09,0xC2,0xB2,0x35,0x79,0xE6,0xA3,0xEA,0x49,0x19,0xAA,0xC7,0xF4,0xAA,0xD7,0xBD,0xAD,0x9D,0x1F,0xDC,0xD4,0x92,0x12,0x76,0x0F,0x71,0xFD,0x88,0x82,0x32,0x55,0xE5,0x01};
|
||||||
|
//const uint8_t spDATA[] PROGMEM ={0xAC,0x85,0x6E,0x22,0x2A,0x24,0xB3,0x96,0xA8,0xCC,0x4C,0x77,0x30,0x9A,0x99,0xCA,0x99,0x3D,0xC9,0xC9,0x63,0x52,0x93,0xD8,0xB9,0xB7,0x5A,0x79,0x1E,0x2C,0xE6,0xD3,0x66,0xE7,0x3B,0x37,0x00,0x33,0x9A,0x0E,0x28,0x3E,0xB9,0xD5,0xD1,0x3B,0x1B,0xE6,0x8C,0xD1,0xB8,0x6C,0x29,0x31,0x49,0x66,0x3B,0x7A,0xE7,0xB3,0xDC,0xE3,0x6E,0x19,0x5D,0x0F,0xD3,0xE8,0x2A,0x71,0xF2,0xB3,0x19,0xA3,0xB3,0x30,0x28,0xCB,0xAC,0x0B,0xB7,0x58,0xC9,0x9D,0xC0,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spDECIDE[] PROGMEM ={0xAD,0x1A,0x2C,0x54,0x24,0x32,0xAF,0xAA,0xD8,0x70,0x51,0xD9,0xAA,0xAA,0x18,0x3D,0x44,0x6A,0xAE,0x01,0x7E,0x14,0x8D,0x40,0x04,0x02,0xF0,0x93,0x69,0x04,0x22,0xA0,0x81,0x11,0x06,0x17,0xED,0xD4,0xB1,0x47,0xEA,0x52,0xA7,0x49,0xC6,0x99,0xD9,0xCC,0x7B,0xD1,0x2A,0xD7,0x32,0xC5,0xDB,0x4A,0xAF,0x4A,0xED,0x77,0x24,0x65,0xC9,0x6E,0xAD,0xDF,0x96,0x1C,0x2D,0xA7,0xF5,0x3E,0xBB,0x44,0x47,0xD0,0xDE,0xD7,0x3E,0xF5,0x36,0xB3,0x57,0x56,0x98,0xD4,0x3B,0xE7,0x6C,0xE5,0x95,0x44,0x8F,0x43,0x7A,0x95,0xC9,0x16,0x3D,0xB6,0xE5,0x15,0x69,0xEB,0x01};
|
||||||
|
//const uint8_t spDEVICE[] PROGMEM ={0xC0,0x00,0x62,0xDD,0x4E,0x35,0xBC,0x27,0x99,0xF4,0x3B,0x55,0x31,0x9E,0x14,0xDA,0xAD,0x35,0xD5,0x58,0x51,0x90,0xBB,0xDC,0xBA,0xD6,0x69,0x0F,0x65,0xCA,0x73,0xAA,0x60,0xA6,0x85,0xBD,0xF5,0xCD,0x6E,0x76,0xD3,0x93,0x66,0x3D,0x55,0x42,0x8D,0x6F,0x76,0x8A,0xE4,0xC7,0x5D,0xAC,0xF6,0x6D,0xC7,0x18,0xA3,0x69,0xDA,0x94,0x29,0x83,0x4F,0x52,0x99,0x17,0x2A,0x0C,0x2E,0x18,0x75,0x76,0x29,0x01,0x68,0xD0,0x2A,0x80,0x3F,0x59,0x1D,0xF0,0x8B,0x9B,0x03,0xBE,0x15,0x53,0xC0,0x8F,0x22,0x0A,0xF8,0x89,0x89,0x01,0xDF,0xB0,0x10,0xE0,0x59,0xD6,0x07};
|
||||||
|
//const uint8_t spDID[] PROGMEM ={0xA2,0x13,0xCC,0xCA,0xD3,0x6D,0xA5,0x6E,0x48,0x63,0x55,0x76,0x32,0xF2,0x11,0xDA,0x20,0x65,0xEB,0xCA,0x6B,0x2C,0x01,0xB3,0x35,0x2B,0x4D,0xD9,0x51,0x2A,0x5F,0xAF,0x24,0x45,0x47,0xED,0xBC,0xB5,0xD2,0x18,0x9D,0xAD,0xEA,0xF6,0xC8,0xA2,0x77,0xD6,0xCA,0x27,0xA3,0xAA,0x26,0x8C,0xAB,0xB6,0xB6,0xAE,0xD9,0x70,0x0A,0x7B,0xDB,0xFA,0xE2,0xC2,0x28,0xEC,0x69,0x1D,0x7C,0x0F,0xA6,0xCF,0x4C,0x45,0x2C,0xDD,0xB8,0xAE,0x28,0x17,0xF1,0xD8,0x20,0xC6,0x5C,0xC3,0x04,0x6D,0xEA,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spDIFFERENT[] PROGMEM ={0xAC,0x6A,0x3E,0x8C,0x4D,0xF6,0xFA,0xEA,0xD6,0xB7,0x58,0x79,0x4A,0x6E,0x62,0xF9,0x66,0xA5,0xAE,0xAA,0x59,0x76,0x99,0x50,0x8F,0x5C,0xA1,0x8C,0x4E,0x18,0x10,0xA4,0xAA,0x00,0x54,0xB4,0x74,0x40,0x76,0x65,0x2A,0xB6,0x13,0xCB,0x13,0xF3,0xF4,0x6A,0xD4,0x6E,0x52,0xD8,0x90,0xBF,0xD1,0xF8,0xCD,0xA9,0x8D,0x5D,0x4F,0xEB,0xAB,0xA5,0xB9,0x36,0x3F,0x7D,0x88,0x1D,0x14,0xD6,0xA6,0xF7,0x61,0x50,0x52,0x23,0xB5,0x42,0xD9,0x41,0xF5,0xD6,0x8A,0x26,0x79,0x6A,0x50,0x40,0x37,0x66,0x06,0x38,0xD4,0x4C,0x00,0x5E,0x34,0x12,0x40,0x44,0x37,0x00,0x78};
|
||||||
|
//const uint8_t spDISKETTE[] PROGMEM ={0xAD,0x5F,0xD6,0x95,0x19,0xEC,0x9E,0x2A,0xE5,0x50,0xD6,0x5A,0x7A,0xAA,0x18,0x9D,0xAD,0xEA,0x76,0xAB,0xAB,0x09,0xE3,0xAA,0xAD,0x01,0xF8,0xD9,0x2D,0x03,0x09,0xF8,0xD1,0xCC,0x00,0x15,0xAF,0x82,0x01,0x6A,0x31,0x33,0x40,0x8B,0x4A,0x27,0x4E,0xC9,0xA9,0xAD,0xE6,0xDC,0xE4,0xA4,0x39,0x59,0x99,0xE6,0xDC,0x9B,0xDF,0x6A,0xD5,0x31,0x5A,0x39,0x6F,0xCC,0xD8,0x02,0x80,0x02,0xA2,0x74,0x55,0xC0,0x91,0x16,0x0A,0x18,0xDC,0x1C,0x1E};
|
||||||
|
//const uint8_t spDO[] PROGMEM ={0x2E,0x4E,0x80,0xB3,0x32,0x6D,0x8D,0x22,0x44,0x53,0x4B,0xFB,0x7C,0xB2,0x22,0xAC,0xA8,0x2C,0xFB,0x4E,0x76,0x32,0xD3,0x99,0xB5,0x22,0x51,0x6B,0x49,0xC9,0xDE,0xAB,0xD6,0x38,0x11,0xA9,0x2E,0xD9,0x6B,0x1B,0x7A,0x69,0x2A,0xCD,0xB5,0x9B,0xEF,0x6D,0xAF,0x87,0x07};
|
||||||
|
//const uint8_t spDOES[] PROGMEM ={0xAD,0x4E,0xDE,0x4D,0x4D,0xDE,0xDC,0x7C,0x25,0x26,0x7B,0xB9,0x4D,0x95,0x9D,0xCE,0x74,0xA6,0xAB,0xF0,0x21,0xD3,0xD3,0x16,0xCF,0x6A,0x36,0xB3,0xE9,0x5D,0xE9,0xAC,0xF7,0x70,0xF7,0x2B,0xB9,0xCB,0x9D,0xEB,0xB5,0xF7,0x74,0x8F,0xD1,0xBE,0x67,0x40,0x05,0xEC,0x1A,0xE0,0x00,0x05,0x1E};
|
||||||
|
//const uint8_t spDOING[] PROGMEM ={0xAD,0x49,0xC1,0x54,0x9D,0xF7,0xEE,0x64,0x64,0x3E,0x58,0x9A,0xE9,0xAE,0x94,0x88,0x6E,0xEE,0x5E,0x23,0x62,0x52,0xD3,0x90,0x89,0x6E,0xAE,0x99,0x13,0x4B,0x61,0x8A,0xB9,0x79,0x9C,0x6E,0x55,0x6B,0x65,0xE8,0xBC,0x75,0x36,0xBB,0x9D,0x5D,0xEB,0xEA,0x4A,0xC6,0xF0,0xD6,0xB9,0xB7,0xBD,0xEE,0x45,0x6F,0x1D,0x76,0x50,0xC5,0x11,0x9D,0x75,0xD4,0x41,0x15,0x9B,0xF5,0xD2,0x6A,0x14,0x65,0x43,0xD2,0x6B,0x65,0xEA,0xE2,0x6E,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spDONE[] PROGMEM ={0xC0,0x32,0xA6,0x22,0xD2,0xC3,0x36,0xAB,0x88,0xAA,0x4A,0x8B,0xD8,0xA9,0x8E,0xC1,0xD2,0x2C,0x9E,0xDE,0xEA,0x56,0xA7,0x8A,0x3E,0x2A,0x35,0x52,0xDF,0xEA,0x54,0xD1,0x45,0xA7,0x44,0xEA,0x53,0x05,0x1F,0xE5,0x1E,0x89,0x4F,0x1D,0x42,0x94,0xBB,0x47,0x5D,0x8D,0x0F,0x51,0xEE,0x1E,0xB7,0xB5,0x3E,0x78,0x84,0x79,0x96,0xD0,0x05,0x0F,0x6D,0x19,0x6A,0x42,0x17,0x3C,0xB4,0x65,0xA8,0x56,0x9D,0x0B,0x30,0x16,0xA9,0xDA,0x8C,0xDA,0xD2,0x8C,0xB6,0x02,0x3D,0xF1,0x89,0x4E,0x0F};
|
||||||
|
//const uint8_t spDOUBLE[] PROGMEM ={0xAB,0x2E,0xC2,0x2D,0xCB,0x52,0xAD,0x3A,0x79,0x4B,0xB7,0x59,0x7B,0x2A,0xE3,0xFD,0x46,0x24,0xFD,0xAD,0x6E,0xB5,0x2B,0xD1,0x12,0xDF,0xAE,0x12,0x6D,0x5D,0x23,0x7D,0x5D,0x08,0xA7,0xEE,0x75,0x6B,0x78,0xEB,0x53,0xE6,0xD6,0xB5,0x4D,0x1D,0x5B,0x3D,0x4C,0x9E,0x3A,0x0E,0x7A,0xC0,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spDOWN[] PROGMEM ={0xAE,0x49,0x32,0xCC,0x35,0x95,0x8C,0x36,0x79,0x37,0x35,0x79,0xB3,0x0A,0xEF,0xA7,0x4D,0xA3,0xEE,0x2E,0x76,0xB5,0xAB,0xDD,0xCC,0xB6,0xB5,0x26,0xF4,0xAA,0x58,0xBA,0xDE,0xF5,0xAE,0xF6,0xA1,0x0F,0x1E,0xDA,0x32,0xD4,0x84,0x21,0x78,0x68,0xCB,0x50,0x1D,0x07,0x37,0x6A,0x4B,0x33,0xDA,0x0A,0xEC,0xA8,0x47,0x3E,0xD2,0xE9,0x01};
|
||||||
|
//const uint8_t spDRAW[] PROGMEM ={0xAE,0x70,0xBD,0x54,0xD2,0xE4,0xB6,0x7A,0xC4,0x34,0x07,0x92,0x3A,0xAA,0xE0,0x53,0xD9,0xDD,0xE9,0xA8,0x4C,0x51,0xF7,0x84,0xE4,0xAB,0x32,0xDE,0x4F,0x9D,0xDB,0xDE,0x6A,0x55,0xC6,0xE7,0x27,0x59,0xFA,0x5D,0xED,0x6A,0x57,0xB3,0x9E,0x4D,0x6B,0x55,0xE9,0x55,0x76,0xAF,0xA9,0x93,0xA3,0x86,0xCD,0x3C,0x84,0x4E,0xEC,0x4A,0x87,0x74,0x1A,0x5A,0xB9,0xD3,0x8D,0x33,0x9C,0xEB,0x94,0xF7,0x12,0x33,0xC9,0xAA,0xF3,0xCE,0xD2,0x20,0xE4,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spDRAWING[] PROGMEM ={0xA6,0x0B,0x3E,0x95,0xDD,0x9D,0xBA,0xCE,0x14,0x75,0x4F,0x48,0xDE,0x6A,0xE3,0xFD,0xD4,0xB9,0xED,0xAC,0x5B,0xE5,0xE4,0xAE,0x1B,0x66,0x9F,0xC5,0xCC,0x67,0x36,0xB3,0x9E,0xF7,0x62,0x54,0xD6,0x4D,0x99,0x48,0xDB,0xD5,0x84,0xD0,0x65,0xCA,0x69,0x4F,0x57,0x42,0xA7,0x38,0x67,0x3D,0x5D,0x4B,0x93,0x64,0x94,0xF5,0xF6,0x7B,0x28,0xC3,0x0C,0xAA,0xD0,0xD5,0x5A,0x0D,0xDA,0xD1,0x94,0xB6,0x45,0x3D,0xE8,0x41,0x0C,0xDA,0xD1,0xA6,0x86,0x05,0x35,0x68,0x67,0xDC,0xE1,0x8E,0xD5,0x60,0x95,0x53,0x35,0x45,0x94,0xE3,0x03};
|
||||||
|
//const uint8_t spE[] PROGMEM ={0x21,0x2A,0x81,0x49,0xB7,0x2B,0xD7,0xB4,0xA7,0x33,0xDB,0xD9,0xCE,0x77,0xBE,0xF3,0x51,0xD4,0x22,0x84,0x5D,0x4B,0x66,0xD5,0xAB,0x5A,0x31,0x80,0x59,0x79,0x53,0x3B,0x61,0xE6,0xE7,0x35,0x1F};
|
||||||
|
//const uint8_t spEACH[] PROGMEM ={0xAB,0xE8,0xD1,0x19,0xB2,0x9F,0x8C,0x62,0x24,0x63,0xA8,0x99,0xB3,0x8B,0x5D,0xCC,0xAA,0x35,0xA3,0x99,0x40,0xD4,0x1D,0xDF,0xE1,0x0E,0x80,0x00,0x33,0xB2,0x2A,0x60,0xEF,0x0C,0x0B,0x28,0xE0,0x9C,0x4E,0x01,0xAC,0x69,0xA9,0x80,0x6E,0xCD,0x00,0x01,0x7E,0x90,0x3D};
|
||||||
|
//const uint8_t spEIGHT[] PROGMEM ={0x2D,0x2F,0xC5,0x54,0xA3,0x63,0xB5,0xBC,0x54,0x55,0xCD,0x1E,0x32,0xB2,0x5A,0x85,0xB8,0xBA,0xCE,0xCE,0x66,0x36,0x8B,0x56,0xD5,0x22,0xC8,0x55,0x73,0x63,0x2F,0x07,0x00,0x00,0x02,0x44,0x6D,0xCA,0x01,0x04,0x18,0x21,0x86,0x81,0x07};
|
||||||
|
//const uint8_t spEIGHTY[] PROGMEM ={0x20,0x00,0x2B,0x2D,0x4E,0xD1,0x52,0x32,0x57,0xAC,0x39,0x59,0x4D,0xC6,0xDA,0xBD,0x66,0x25,0x2D,0x0B,0xC9,0x74,0xAB,0x1B,0xCF,0x44,0xD6,0x0A,0x10,0x28,0x2A,0x14,0xBD,0x38,0x41,0xD6,0xD2,0x59,0xED,0x7A,0x74,0xBD,0x19,0x43,0xF6,0xD2,0x3C,0xF8,0x49,0x4F,0x7C,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spELEVEN[] PROGMEM ={0xA7,0x1E,0xC1,0x1C,0xC3,0xD6,0xDE,0xFA,0xD4,0xA9,0xA5,0xA1,0x45,0x9B,0xD5,0xC4,0x10,0xC6,0x94,0xE9,0x76,0xBD,0x6A,0xAF,0x2B,0xD9,0x37,0xEE,0xA9,0x42,0x4F,0x75,0xAB,0xB8,0xB7,0xB8,0xF9,0xCD,0x57,0xEE,0x53,0x89,0xBB,0xD7,0x73,0xAD,0x8D,0x2D,0x1E,0xDC,0x38,0xB7,0xBB,0x9D,0x7D,0x19,0x5C,0x49,0x29,0xD1,0x46,0x6E,0xB4,0x51,0x5D,0x49,0x9A,0xBA,0xC9,0x04,0x36,0xE7,0x4C,0xA2,0x66,0x13,0xC4,0x02,0x2B,0x91,0x98,0x6C,0x14,0x33,0xC9,0xC4,0x62,0x52,0xC1,0x34,0x24,0x52,0x3F};
|
||||||
|
//const uint8_t spELSE[] PROGMEM ={0x21,0x4B,0xC5,0xDC,0x34,0x27,0x97,0xCC,0x67,0xF7,0xD0,0x5E,0x7A,0x8B,0x5B,0xDD,0x6A,0x54,0x3A,0x6D,0x84,0xFA,0xBC,0x56,0x29,0xFF,0xA3,0xCE,0x69,0x6A,0x53,0x5B,0xD7,0x89,0xD0,0xB1,0x40,0x75,0x54,0x5F,0x4D,0x90,0x8B,0xD8,0x56,0xC0,0x95,0xC5,0x16,0x70,0x40,0x07,0x26,0x1A,0x60,0xC0,0xC1,0x6A,0x0C,0xF8,0xD2,0xF2,0x01};
|
||||||
|
//const uint8_t spEND[] PROGMEM ={0xA3,0xC8,0x4D,0x4D,0x3C,0x63,0x9F,0xA2,0xB4,0x34,0x51,0x5F,0x7B,0xF3,0x93,0xE5,0x96,0xA6,0x9A,0x73,0x4F,0x56,0x4A,0xA9,0x54,0xCD,0x3D,0x59,0xC9,0xA5,0x5A,0x33,0xE7,0xE4,0x25,0x96,0x8A,0xD9,0xEC,0x53,0xE5,0x54,0xAC,0x66,0x53,0x4E,0x9D,0x4A,0x9A,0xA8,0xCE,0x59,0x4D,0xCC,0x65,0x64,0x36,0x6B,0x74,0xC9,0x57,0xA1,0xCB,0xEC,0xD0,0xEB,0xA0,0xA6,0xE6,0xB5,0x5D,0xAF,0x02,0x97,0xD8,0x38,0x70,0xBD,0x0C,0x5C,0xE2,0x1D,0xCB,0xF4,0xD2,0x51,0x9B,0x4E,0x2C,0x35,0x68,0x8B,0x6B,0x36,0x91,0xE4,0xC8,0xA7,0x30,0x15,0xE5,0x22,0x1E,0x1B,0xF4,0x28,0x86,0x14,0x53,0x5D,0xB3,0xD6,0x03};
|
||||||
|
//const uint8_t spENDS[] PROGMEM ={0xA7,0xCA,0x39,0xC5,0xCC,0x6B,0x9F,0x2A,0xD7,0x30,0x93,0xA8,0x73,0xAA,0x5C,0xD3,0x55,0xB2,0xEE,0xAD,0x6E,0x75,0xAA,0xD8,0xDD,0xC5,0x2A,0xEA,0xAD,0x6E,0xB3,0xBB,0xD6,0xD9,0x6C,0x6A,0x92,0x95,0x43,0xEF,0x34,0x4C,0xB5,0xD2,0x8D,0x7D,0x1C,0xFC,0x68,0x27,0xD7,0x71,0x23,0x5F,0xEA,0x4C,0x7C,0x47,0x00,0x2C,0x2B,0x04,0x30,0x65,0x84,0x04,0x24,0xC0,0x01,0x0A,0x3C};
|
||||||
|
//const uint8_t spENTER[] PROGMEM ={0xA7,0x28,0x39,0x4C,0x43,0xEF,0x9C,0xA2,0x94,0x34,0x31,0x7D,0x72,0xF2,0xD2,0xD4,0x8D,0xBD,0xC9,0xCD,0x52,0xCE,0xBC,0x77,0xE8,0x99,0xCA,0x85,0x03,0x4A,0x70,0x77,0x40,0xE3,0xE2,0xA3,0xF0,0x53,0xD4,0x9D,0xD7,0xCE,0xB6,0xF7,0x61,0x34,0x1D,0xAA,0xC2,0x16,0x99,0xC9,0x74,0xD6,0xF6,0x88,0xAD,0x26,0x9D,0xD8,0xC6,0x5D,0xF1,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spERROR[] PROGMEM ={0x2B,0xAF,0xC9,0x9C,0xDC,0x97,0x9E,0xBC,0xE5,0x34,0x72,0x5F,0x77,0xF2,0x58,0x4D,0x35,0xA3,0xEB,0xCD,0x5A,0x6A,0x07,0x7B,0x27,0xAD,0xEA,0x59,0xCF,0x5B,0xE5,0xB6,0x89,0x37,0x6E,0xED,0x55,0xAF,0x7B,0xD7,0xFB,0x3A,0xF4,0xA1,0x8D,0xB6,0xB9,0xE8,0xD3,0x56,0x37,0xB9,0xA9,0x1A,0x43,0x5B,0xCC,0xEC,0x16,0x66,0xAB,0xA5,0x72,0x8B,0xAB,0x66,0xC6,0xA3,0xE4,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spEXACTLY[] PROGMEM ={0xA7,0x2A,0x35,0x95,0xC3,0xD7,0xDE,0x7A,0x37,0xA3,0xC9,0xCD,0x48,0xCB,0xD7,0xE4,0x3A,0x36,0xAD,0x89,0x51,0xC0,0xDB,0x1A,0x05,0xA0,0x03,0x54,0x07,0x74,0x80,0x3A,0x8A,0xC9,0xC3,0x55,0xC2,0xCB,0xC9,0xE3,0x8E,0x30,0x1A,0x27,0x37,0xBF,0xF9,0xCD,0x6F,0xB6,0xF2,0xBC,0x25,0x24,0xDA,0x16,0x02,0x70,0x34,0x03,0x20,0x80,0x97,0xCA,0x01,0x48,0x51,0xDD,0x02,0xA5,0x90,0x25,0xDD,0xCC,0x96,0xF4,0x6A,0xF4,0xA1,0x99,0x89,0xD6,0xD5,0x3A,0x84,0x21,0x24,0xE8,0xAC,0x8B,0x1E,0x46,0x6D,0x3D,0x76,0xCC,0x94,0x19,0x8D,0x93,0xBA,0x34,0x51,0xF0};
|
||||||
|
//const uint8_t spEYE[] PROGMEM ={0x23,0x09,0xDE,0x27,0x82,0xBB,0xED,0xEC,0x16,0xB7,0xBE,0xF5,0x6D,0x4E,0x13,0xB2,0x97,0x5B,0xB4,0xDD,0xDD,0xEA,0x42,0xF6,0x70,0x8F,0x39,0xAD,0x8F,0x85,0xDB,0xBC,0xCB,0x94,0x3E,0x64,0xD5,0x1C,0x0B,0x95,0x07,0x37,0x78,0x27,0xB9,0xA9,0x86,0x4D,0x1F,0x3C,0xD3,0xA4,0x1B,0x96,0x35,0xAF,0xE1,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spF[] PROGMEM ={0x2B,0x8B,0x25,0x4A,0xAC,0x13,0xEF,0xEC,0xE6,0xB7,0xB8,0xD5,0xAD,0x6E,0xBD,0x5A,0x1F,0x23,0xD8,0x63,0xD2,0xEE,0xFA,0xE8,0x80,0x68,0x4D,0x3C,0x60,0x01,0x0D,0x68,0x80,0x02,0x0F};
|
||||||
|
//const uint8_t spFIFTEEN[] PROGMEM ={0x0A,0xE8,0x26,0xD4,0x02,0x27,0x2C,0x29,0x84,0xCD,0xDE,0xDC,0xE4,0xA6,0x35,0x8B,0xB9,0x01,0x8A,0x0A,0x54,0x40,0x91,0x1E,0x16,0x40,0x00,0xB2,0x15,0x00,0x0A,0x10,0xC6,0x7C,0xC4,0x3D,0x3A,0x43,0xF6,0x93,0x95,0x8C,0x64,0x0C,0x35,0x73,0x66,0x3A,0xB3,0x9E,0xB7,0x6A,0x34,0x13,0x88,0xBA,0xD3,0xEB,0xDE,0x86,0x2E,0x6B,0x96,0x9A,0x0C,0xE8,0x7B,0xD3,0x53,0x17,0x95,0x11,0xB6,0xEC,0x60,0x07,0x3D,0x88,0x81,0x6B,0x8B,0x96,0xB4,0xC5,0x06,0xA1,0xB4,0x56,0xC2,0xD1,0x03};
|
||||||
|
//const uint8_t spFIFTY[] PROGMEM ={0x0C,0xA8,0x61,0x54,0x02,0x1A,0xF0,0xC0,0x8A,0x73,0x09,0x63,0xB1,0x67,0x37,0x59,0x49,0x2A,0x66,0xAC,0x39,0x66,0xA4,0xD6,0x99,0x55,0x6C,0x84,0x9C,0x2B,0x60,0x66,0x57,0x0D,0x48,0x80,0x03,0x00,0x0A,0xE8,0x34,0x4D,0x01,0x3D,0xA5,0xA4,0xB0,0x05,0x13,0x8A,0x79,0x33,0x8B,0x5E,0x87,0xAE,0x7A,0x61,0xC9,0xF8,0xE2,0x7B,0x3B,0xD8,0x59,0x8F,0x0F};
|
||||||
|
//const uint8_t spFIGURE[] PROGMEM ={0x0C,0xB0,0x3C,0x9C,0x01,0x59,0xBB,0x29,0xA0,0x5A,0x33,0x0B,0x9C,0x30,0x04,0x57,0xCD,0xAC,0x77,0xE2,0x1A,0xD3,0x58,0x74,0xCD,0x89,0x5A,0x36,0xE1,0xF6,0xB7,0x2D,0xAE,0xD5,0x81,0xDB,0x97,0xAA,0x44,0x4B,0x0B,0x2C,0x71,0xC2,0x32,0xE2,0x2A,0xD3,0xDC,0x8E,0x28,0x38,0xAF,0xF4,0x34,0xDB,0xA5,0x5A,0xCD,0xC8,0xC9,0x94,0xB4,0x6A,0x78,0x51,0xB4,0xEA,0xB3,0xEA,0x1A,0x9C,0x21,0x7C,0xEF,0x6A,0x72,0x4A,0x01,0xAF,0x6E,0xAB,0x8D,0x39,0x0D,0xC3,0xD3,0x9F,0x3E,0xF6,0x34,0x0E,0xF6,0xDE,0x7A,0x17,0x93,0xB8,0x33,0xB9,0x1B,0x6D,0x17,0xC9,0xD2,0xEC,0x66,0x70,0x85,0x2C,0xDD,0x92,0x98,0x31,0xB4,0x10,0x52,0x75,0xF5};
|
||||||
|
//const uint8_t spFIND[] PROGMEM ={0x0C,0x30,0x56,0x5C,0x01,0xD1,0xA8,0x5A,0xC0,0x02,0x27,0xB1,0x21,0xD6,0x39,0x93,0x9C,0xDC,0xB6,0x0E,0x93,0x4A,0xB3,0x8B,0x5D,0xED,0x6A,0x57,0xAB,0x8E,0xC3,0x4B,0x2C,0x92,0xEC,0x66,0xB6,0xA5,0xCD,0x4D,0xC5,0x3D,0xA7,0xD4,0xB6,0x76,0xA1,0x63,0xCE,0x32,0xA4,0x63,0xF8,0xDE,0x0F,0x76,0x68,0x93,0x73,0xA6,0xE6,0x39,0xB9,0x0E,0xA9,0x8B,0xD9,0x4D,0xC0,0x2A,0x3F};
|
||||||
|
//const uint8_t spFINE[] PROGMEM ={0x0C,0x30,0x56,0xDC,0x00,0xD1,0xA8,0x46,0x20,0x02,0x2B,0xB4,0x21,0xD6,0x39,0x93,0x9C,0xCC,0xB6,0x0E,0x93,0x4A,0x73,0xB3,0x9B,0xDD,0xFC,0x16,0xA7,0x8A,0xC3,0x4B,0x2C,0x92,0xDC,0xE6,0xB6,0xA7,0xCB,0x4D,0xC5,0x3D,0xA7,0xEC,0x6E,0xF7,0xA1,0x67,0xCE,0x32,0xA4,0x63,0xC4,0xDE,0xF7,0xBE,0xB7,0x83,0x1E,0xF8,0xF0};
|
||||||
|
//const uint8_t spFINISH[] PROGMEM ={0x02,0x48,0xCA,0x55,0x03,0x16,0xF0,0xC0,0x49,0x63,0x32,0xE3,0x8A,0x25,0x27,0xCB,0x39,0x9C,0xC2,0xDA,0xDE,0xEC,0x16,0xA9,0x8A,0x0E,0x22,0x30,0x9B,0xF4,0x6A,0x36,0xA3,0x2D,0xD6,0x49,0x2C,0x5A,0xCC,0xAE,0x75,0x49,0xB3,0x55,0x56,0x45,0x07,0xEC,0x3E,0xE1,0x01,0x0F,0x58,0x40,0x02,0x14,0x78};
|
||||||
|
//const uint8_t spFINISHED[] PROGMEM ={0x02,0x28,0xCA,0x49,0x03,0x16,0xB0,0xC0,0x89,0x73,0x0A,0x31,0x8F,0xB6,0x37,0xB9,0x69,0xCB,0x4A,0x75,0x21,0xF6,0x7A,0xAB,0x28,0xC5,0xD9,0x55,0x2E,0x9F,0xBA,0x06,0x25,0xB5,0x9A,0xB9,0x9B,0xD9,0x96,0x2E,0x31,0x93,0xEA,0x0C,0x69,0x80,0x77,0xCA,0x23,0x10,0x81,0x08,0x48,0x00,0x00,0x14,0x30,0xAC,0x9B,0x01,0xB4,0xB7,0x20,0x80,0x57,0xAE,0x0F};
|
||||||
|
//const uint8_t spFIRST[] PROGMEM ={0x08,0x08,0xDA,0x04,0x03,0x18,0xE0,0x80,0x07,0x42,0x64,0x86,0x69,0x15,0x65,0xDB,0xF9,0xCE,0x77,0x3E,0x8B,0x51,0xBB,0x9E,0xA4,0x6D,0xEE,0x5B,0xEB,0x87,0x89,0x94,0xB9,0xAF,0x7D,0x1D,0x0C,0xF0,0x8A,0xB1,0x01,0x9E,0x17,0xD6,0x00,0x01,0xFE,0x76,0x44,0x80,0x66,0x95,0x00,0x0A,0x68,0xC1,0xDC,0x00,0xDB,0x8A,0x3F};
|
||||||
|
//const uint8_t spFIT[] PROGMEM ={0x04,0x88,0x2E,0x4C,0x02,0x1A,0xD0,0x80,0x07,0x46,0x9C,0x82,0xAB,0x56,0xAE,0xB9,0xC9,0x4D,0x4F,0x1E,0x43,0xA4,0x6A,0xEC,0xD9,0x55,0x6F,0x7C,0xAB,0x7B,0x00,0x50,0x40,0x55,0x2E,0x02,0x68,0xB6,0xE5,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spFIVE[] PROGMEM ={0xC0,0x80,0xE8,0xCD,0x46,0xEE,0x9C,0x6F,0x31,0x66,0x39,0xB9,0xF3,0x35,0x45,0xD6,0xF4,0x64,0xDE,0x77,0x27,0x79,0xDD,0x93,0x7A,0xDF,0x1D,0x14,0x45,0x4E,0xE6,0x43,0x97,0x73,0x05,0x3D,0x45,0x08,0x5D,0xC5,0x15,0xE5,0x54,0x21,0x56,0x06,0x67,0x90,0x53,0xC7,0x54,0x15,0x14,0x75,0x4F,0x1B,0xAB,0x17,0x43,0x25,0x59,0x5D,0x6C,0x5E,0xAA,0x59,0x75,0xF4,0xA9,0x59,0x69,0xD5,0xD4,0xD1,0xC7,0x6A,0xA1,0x5E,0x53,0xDB,0x10,0x8B,0x86,0x46,0x5D,0x6D,0x43,0x28,0x1A,0x1A,0x35,0xB4,0xF4,0x2E,0x4B,0xA9,0x75,0x62,0x33,0x98,0xA2,0xC6,0x5A,0x09,0xD9,0x20,0x95,0x7B,0x99,0xBB,0x06,0x04,0x38,0x27,0x84,0x00,0xE5,0xD5,0x1F};
|
||||||
|
//const uint8_t spFOR[] PROGMEM ={0xC0,0x00,0x23,0x2D,0x24,0xA0,0x01,0x0B,0x58,0x20,0xC5,0xBC,0xF7,0x11,0x4C,0x9A,0x9A,0xA4,0x84,0xF6,0x39,0x85,0x6E,0x97,0x93,0x98,0x84,0x8C,0xF5,0x5E,0x45,0xCD,0xDE,0x2A,0x91,0x63,0xD2,0x58,0x7D,0x6B,0x55,0xB1,0xF2,0x26,0xED,0xA9,0xE7,0xDB,0xC2,0x4B,0xFC,0xBA,0x49,0x2E,0x89,0x55,0xF4,0xE3,0x66,0xB5,0x95,0xAB,0xCC,0xBB,0x9B,0xED,0x30,0xF6,0x11,0x35,0x76,0x7B,0x00,0x00};
|
||||||
|
//const uint8_t spFORTY[] PROGMEM ={0x08,0x48,0x4C,0x8D,0x02,0x0A,0x28,0xDE,0x5D,0x84,0x22,0xCC,0x25,0x50,0xFB,0x9A,0xB4,0x94,0x97,0x19,0x43,0x6D,0xD7,0xD3,0x91,0xA9,0xE2,0x61,0xC5,0xBD,0x7B,0x4E,0x00,0x9D,0x58,0x1C,0x90,0x63,0x6A,0x4A,0x4A,0x0C,0x21,0x9F,0xB7,0xBD,0x18,0x4D,0x8B,0xCE,0x18,0xF1,0x26,0xB7,0xBE,0x73,0x5D,0xB3,0x2E,0x1C,0xD1,0xDA,0x0E,0x72,0x7C};
|
||||||
|
//const uint8_t spFOUR[] PROGMEM ={0xC0,0x00,0x23,0x2D,0x24,0xA0,0x01,0x0B,0x58,0x20,0xC5,0xBC,0xF7,0x11,0x4C,0x9A,0x9A,0xA4,0x84,0xF6,0x39,0x85,0x6E,0x97,0x93,0x98,0x84,0x8C,0xF5,0x5E,0x45,0xCD,0xDE,0x2A,0x91,0x63,0xD2,0x58,0x7D,0x6B,0x55,0xB1,0xF2,0x26,0xED,0xA9,0xE7,0xDB,0xC2,0x4B,0xFC,0xBA,0x49,0x2E,0x89,0x55,0xF4,0xE3,0x66,0xB5,0x95,0xAB,0xCC,0xBB,0x9B,0xED,0x30,0xF6,0x11,0x35,0x76,0x7B,0x00,0x00};
|
||||||
|
//const uint8_t spFOURTEEN[] PROGMEM ={0x00,0x04,0xF0,0xD2,0x54,0x01,0x49,0xB9,0x85,0x94,0xE5,0x6A,0x0F,0x93,0xDF,0x52,0x11,0xEB,0x99,0x39,0x73,0xCA,0xD8,0xA8,0xA3,0xD0,0xCE,0x25,0xE3,0x2B,0x52,0x5D,0xFB,0x8E,0xDC,0x24,0x37,0x1B,0x75,0xAF,0x00,0x1A,0xA4,0x81,0x00,0x95,0x92,0x03,0x80,0x03,0x8A,0x37,0xB6,0x80,0x00,0x8A,0x23,0x2D,0x41,0xD1,0x22,0xDE,0x59,0x6A,0x24,0x4D,0x0B,0x49,0x56,0xE5,0x91,0x0D,0x2D,0xC4,0x99,0x95,0x5B,0x3E,0xB4,0x30,0x57,0x55,0x2E,0x45,0xE7,0xC4,0x3A,0x19,0xB9,0xD4,0x85,0x13,0xC5,0x84,0x99,0xD4,0x54,0x4E,0xE2,0x17,0xA6,0x53,0xDB,0x34,0x8B,0x6F,0x98,0x49,0x5D,0xD6,0x2C,0x35,0x19,0x30,0x74,0x51,0x2B,0xFB,0x79,0x68,0xD1,0x33,0xAD,0xDD,0x1A,0xA6,0x45,0x4F,0xB4,0x56,0x4A,0xCB,0x16,0x3D,0xD3,0x3A,0x25,0x65,0x4A,0x74,0x5C,0xEB,0x8C,0x44,0x24,0xD1,0x49,0xAD,0xBD,0x1A,0x8E,0x1F,0x00,0x00};
|
||||||
|
//const uint8_t spFOURTH[] PROGMEM ={0x08,0xD0,0x22,0x84,0x00,0x51,0x1A,0x0B,0xA0,0x69,0x23,0x03,0xD4,0x50,0x4E,0x00,0x7C,0xCB,0x4B,0x2A,0x5D,0x4D,0x00,0x24,0xEB,0x69,0x48,0xE9,0xDE,0x64,0x88,0xAA,0x21,0xA3,0xBB,0x97,0xC1,0xDA,0xA7,0x9C,0xAD,0x1A,0x45,0xCB,0xD6,0x2A,0x3E,0xB2,0x5D,0x34,0x7B,0xAB,0x75,0xB3,0x1A,0xE5,0xEE,0xA5,0x35,0x95,0x27,0x52,0xDA,0xA6,0x4E,0x27,0x2D,0xCB,0x8C,0x4D,0x00,0xC9,0x8D,0x30,0x80,0x00,0xCF,0x5D,0x11,0xE0,0x99,0x9B,0x00,0xB2,0x34,0x62,0x80,0x0A,0xAA,0x18,0x78};
|
||||||
|
//const uint8_t spFROM[] PROGMEM ={0x80,0x80,0x28,0x55,0x08,0x50,0xBD,0xA3,0x03,0x52,0x48,0x2F,0xA9,0x5A,0x9C,0x19,0x94,0x75,0x64,0x7A,0x68,0x79,0x60,0xA7,0x95,0x99,0x30,0xC3,0x9A,0x51,0x76,0xBE,0xF3,0x51,0x38,0xD7,0xC7,0x92,0xA5,0x67,0x35,0x9B,0xD9,0x96,0xCE,0x1B,0x0D,0x43,0x75,0x1F,0x3B,0xD7,0x5B,0x2D,0x65,0x68,0xC9,0x7D,0xEF,0x7B,0xD3,0x5B,0xCD,0xAD,0xE0,0xEE,0x7C,0xEF,0xFB,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spFRONT[] PROGMEM ={0x06,0xA8,0x21,0xC5,0x03,0x11,0x88,0x40,0x49,0xF5,0x92,0xF4,0x42,0xAF,0x35,0xEB,0xF9,0xA9,0xBC,0xAF,0x0E,0xF2,0xF4,0xBB,0xDE,0x4D,0xEB,0x7D,0x82,0x76,0x69,0x35,0x71,0xB0,0xBD,0xEB,0x93,0x4D,0x33,0x15,0x19,0xC0,0x80,0xA6,0x9A,0x2D,0xF0};
|
||||||
|
//const uint8_t spG[] PROGMEM ={0xAA,0xBE,0xAB,0x90,0xC1,0xD4,0x05,0x60,0x47,0x86,0x51,0xED,0xE2,0xC2,0x6C,0xD9,0x57,0xD5,0x53,0x08,0x81,0x6E,0x5D,0x45,0x2B,0x41,0x64,0xBE,0x66,0x17,0xBB,0xD8,0xD5,0xAE,0x76,0xD3,0xDA,0x92,0x05,0xA5,0xF2,0x76,0x6D,0x53,0x97,0xB5,0xB2,0x5E,0xD4,0x72,0x5D,0xD4,0xCC,0x79,0x11,0xD2,0x77,0xBA,0x93,0xFD,0x03};
|
||||||
|
//const uint8_t spGAMES[] PROGMEM ={0xAA,0x15,0x24,0x2A,0xD6,0xE4,0xB6,0xB6,0x79,0x13,0xB1,0x5C,0xB2,0xF3,0x93,0x97,0xA4,0x66,0x3E,0x75,0x77,0x3E,0xF2,0x52,0x8D,0xCD,0x26,0xF6,0xCC,0x7B,0xDE,0x8A,0x9A,0x14,0x2D,0xBA,0xD2,0xAC,0x66,0xDD,0xEB,0xDE,0x8E,0xB6,0x7A,0x47,0x0D,0xAF,0x95,0x3A,0x6D,0xB1,0x9A,0xDA,0x8E,0xED,0x6C,0x67,0x3A,0x6E,0xA5,0x46,0x42,0xB1,0xED,0x74,0x27,0x3A,0x62,0x32,0xC2,0x23,0x76,0xEA,0x7F,0x22,0x36,0x11,0xF5,0x06,0x38,0x1C,0xC8,0x00,0xDF,0x29,0x39,0xE0,0x7B,0x56,0x03,0x7C,0xCD,0xCA,0x80,0xCC,0x83,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spGET[] PROGMEM ={0xA3,0xAE,0x4A,0xD5,0xC0,0xB4,0xAC,0xB4,0x26,0x17,0xF1,0x58,0xB2,0xF2,0x98,0x2D,0x25,0x72,0xF4,0x2E,0x76,0xB1,0xAB,0x5D,0xCD,0xBA,0x34,0xAE,0x6A,0x58,0x76,0x69,0xDF,0x02,0x00,0x28,0xA0,0xAA,0x30,0x02,0x48,0x6F,0x06,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spGETTING[] PROGMEM ={0xA3,0x9E,0xB9,0x52,0x99,0x1C,0xAF,0x64,0x05,0x67,0xD5,0x74,0x73,0x92,0xE6,0x42,0xB8,0x72,0xF1,0xC9,0x63,0x71,0xA5,0xAC,0x39,0x27,0x4F,0xD5,0x42,0x75,0x13,0xAF,0x3C,0x36,0x4B,0x8C,0xC9,0x06,0x01,0x28,0xD9,0x2C,0x85,0xCD,0x27,0xA3,0x7A,0xAB,0x53,0x95,0xE6,0xA2,0x11,0x4B,0x4E,0x53,0x93,0xB3,0x44,0x2E,0x3E,0x5D,0xCF,0xC6,0xE8,0xD1,0xA8,0x75,0xCD,0x2B,0x71,0x67,0xA4,0xD4,0x27,0x87,0xD2,0x19,0x92,0x4D,0x2F,0x9D,0x6C,0x44,0x4A,0x36,0x83,0xB5,0x38,0x21,0x25,0x43,0x0D,0xC6,0xE0,0x16,0x94,0x0C,0x33,0x38,0x03,0xDD,0x18,0x4E,0xC4,0xC0,0xAC,0x75,0x71,0xA4,0x32,0x53,0xAE,0xC6,0x22,0xE4,0x4C,0x4D,0x39,0x28,0x79,0x54,0x98,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spGIVE[] PROGMEM ={0x6A,0x60,0x22,0x3A,0xD3,0x64,0xA7,0x6E,0x16,0x37,0xA0,0x5A,0x5B,0xBB,0xD1,0x8D,0x56,0x09,0x4C,0xDB,0x77,0x3F,0xFA,0xDA,0x82,0xC5,0xE9,0x7B,0xEF,0x47,0x17,0x92,0x9B,0x06,0x7F,0x1B,0x6D,0x8A,0x12,0x11,0xB2,0x7D,0x35,0x3E,0x68,0xB9,0xD9,0x9B,0x51,0xEB,0xE8,0xE3,0x5A,0xAD,0x4A,0xA5,0x82,0xAD,0x4B,0x36,0x70,0x95,0x8C,0xD6,0xC2,0xD5,0xCA,0x65,0x46,0x98,0x15,0xBB,0x5B,0x04,0x18,0x29,0xC2,0x80,0x14,0x54,0x10,0xA0,0x43,0x2A,0x3C};
|
||||||
|
//const uint8_t spGIVES[] PROGMEM ={0xAA,0x15,0x34,0x26,0x46,0xE5,0xB6,0x66,0x46,0x66,0x56,0x4F,0x3A,0x8A,0x61,0x58,0x24,0x6B,0xD5,0xCA,0x9B,0x36,0xE1,0x9A,0x45,0x2B,0xCB,0xC2,0xD5,0xB6,0x6A,0x8E,0x34,0x58,0xB3,0xD8,0x9A,0x34,0x32,0xE3,0xCD,0x73,0xAB,0xD2,0xC8,0x5D,0x54,0xF3,0x9C,0x9A,0xA3,0xB0,0x2E,0xCC,0xBA,0x66,0x8E,0xCA,0xD9,0x74,0xCB,0x78,0x34,0x9B,0xDE,0xB6,0x2E,0x4A,0x77,0x75,0x4A,0x5D,0xBB,0xDC,0x99,0x5E,0x99,0x50,0x13,0xAB,0xED,0x86,0x28,0x42,0x45,0x35,0xB5,0x1D,0x05,0xF0,0x9D,0xB9,0x02,0x7E,0x50,0x57,0xC0,0x0F,0x2A,0x0C,0xF8,0x8E,0x95,0x00,0x5F,0x33,0x21,0xE0,0x39,0xD2,0x07};
|
||||||
|
//const uint8_t spGO[] PROGMEM ={0xA5,0x4E,0xAE,0x58,0xBC,0x6B,0x9D,0xA2,0x1B,0x75,0xAA,0xC8,0x76,0xAA,0x1C,0x34,0x2C,0x39,0xCB,0xA9,0x82,0xF6,0xB1,0xD4,0x3C,0xA7,0xF2,0x3A,0x37,0x9C,0xBA,0xDD,0xEA,0xD6,0xBB,0x99,0x7D,0x9A,0x8C,0xAA,0x0B,0xC7,0xB4,0x71,0x72,0x93,0x56,0xFD,0x62,0x92,0x56,0xCF,0x0F};
|
||||||
|
//const uint8_t spGOES[] PROGMEM ={0xA3,0xEA,0x46,0x9D,0x2A,0xB2,0x9D,0x3C,0x07,0x0D,0x4B,0xCE,0x72,0x8A,0xA0,0x7D,0x2C,0x35,0xCF,0x29,0xBC,0xCE,0x0D,0xA7,0x6E,0xBB,0xBA,0xF5,0x68,0x8D,0xAA,0x0B,0xC7,0xB4,0xBD,0xCB,0x43,0x1C,0xDD,0xA8,0x55,0xBF,0x98,0xA4,0xF5,0x93,0x99,0x3C,0xF1,0x4C,0x01,0x7F,0x76,0x16,0xC0,0x11,0xC4,0x04,0xF8,0xC3,0x51,0x00,0x7F,0x07,0x12,0xE0,0x55,0x42,0x06,0x74,0x21,0xF1};
|
||||||
|
//const uint8_t spGOING[] PROGMEM ={0xA4,0x42,0xAE,0x3B,0xA3,0x15,0x85,0xDA,0x1B,0x65,0xD5,0x76,0xD2,0xF2,0x98,0x82,0xC5,0x33,0xF3,0xC9,0x13,0xD5,0x8C,0x52,0xDF,0x2B,0xB7,0xAE,0xDF,0x05,0x3A,0xEF,0xAC,0xE5,0x2A,0xF6,0x29,0xC1,0xE6,0x5C,0xB4,0x4A,0xC5,0x6D,0x06,0x59,0xBD,0xAA,0xA0,0x33,0xCD,0x78,0xCB,0x6A,0xDB,0x2C,0x61,0xC1,0xB5,0xBB,0x6B,0x7D,0xF3,0xC6,0x52,0x59,0x31,0x8C,0x25,0x30,0xDA,0x86,0x49,0x3B,0xE9,0x49,0x8C,0x9A,0xD1,0x34,0x44,0x6C,0x39,0xF2,0xC9,0x4E,0x6A,0x0A,0xD9,0x42,0x35,0x2B,0x3E};
|
||||||
|
//const uint8_t spGOOD[] PROGMEM ={0xA3,0x8D,0x29,0x58,0x3C,0x33,0xDF,0xEC,0x14,0x59,0x68,0x6B,0x4A,0xF6,0x5B,0xDD,0xEA,0x56,0xA7,0xB2,0xC6,0x2B,0x3D,0x3A,0xEC,0xBA,0xD7,0xAA,0x26,0xBC,0xD2,0x23,0x1D,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spGOOD_WORK[] PROGMEM ={0xA1,0x89,0xC6,0x95,0xC3,0xF2,0xCD,0xEA,0x14,0x4E,0xA7,0xA6,0x4B,0xFB,0x5B,0xEC,0xE2,0x16,0x0A,0x00,0x57,0x33,0xB4,0xD6,0x58,0xA8,0x4F,0x03,0x10,0x85,0x08,0xDE,0x0E,0x92,0xDA,0xE7,0x21,0x21,0x37,0x4B,0x24,0x32,0xA6,0x88,0x5C,0x77,0xD7,0xF4,0x58,0x42,0x31,0x52,0x3A,0x28,0x53,0x8D,0x46,0x62,0x5A,0x52,0x1C,0xE6,0xED,0x75,0x1F,0xF2,0xA8,0x27,0x00,0x01,0xC4,0xE2,0x22,0x01,0x02,0x94,0xEC,0xF2};
|
||||||
|
//const uint8_t spGOODBYE[] PROGMEM ={0xA9,0x49,0xE1,0x54,0x91,0x2D,0xAF,0x22,0x07,0x55,0x29,0x69,0x7B,0xF2,0x18,0x38,0x32,0x3C,0xCB,0x4D,0x52,0xC8,0x4A,0x5A,0x65,0x99,0x52,0x21,0x6A,0x61,0x69,0x2E,0x45,0x46,0x2C,0x43,0xA9,0x3C,0x3D,0x1C,0x87,0x2A,0x3A,0xFB,0x50,0x6E,0x73,0xEB,0xDB,0xEC,0x6E,0x77,0xA3,0xF7,0xD1,0x4E,0x35,0xA2,0xCC,0x7E,0x74,0x3E,0xC6,0xA8,0x79,0x85,0xD1,0x86,0x64,0x65,0x16,0x95,0x5B,0x13,0x52,0xB0,0x65,0x94,0x2E,0xB5,0x4D,0x6A,0x55,0x65,0xF8,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spGOT[] PROGMEM ={0xA2,0x20,0xBA,0x2A,0xDD,0x13,0x8F,0x2A,0x07,0x13,0x2D,0x5D,0x7B,0xF3,0x93,0xFB,0x6C,0xE1,0x11,0x73,0x4F,0xE1,0x73,0xB6,0x6B,0xD4,0xBF,0xC5,0xAD,0x66,0x5D,0x3A,0xEF,0x5A,0x4A,0xC2,0x52,0xEE,0x75,0x0F,0x20,0x00,0x43,0xC2,0x19,0x30,0x44,0x04,0x3C};
|
||||||
|
//const uint8_t spGRAY[] PROGMEM ={0x04,0xD0,0xD7,0x22,0xA5,0xBA,0x78,0x19,0x8C,0xBA,0x54,0xC8,0x22,0x27,0xAE,0xD9,0x4B,0xA1,0x2A,0xBF,0xA6,0xF8,0x6F,0x99,0x6E,0xFC,0x32,0xD2,0x71,0x65,0x3E,0x4B,0xCB,0x56,0xA2,0x9D,0xED,0xFC,0x14,0xA5,0x99,0x68,0xC4,0xDC,0x5B,0xDD,0x7A,0xB5,0x29,0x93,0x7B,0x6E,0x94,0xDE,0xA7,0x3E,0x46,0xB4,0xAC,0x0E,0x92,0xFA,0xE8,0x49,0xBB,0x3B,0x88,0xEB,0x83,0x11,0xEE,0xE3,0x00,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spGREEN[] PROGMEM ={0xA1,0x0A,0x45,0x46,0xC0,0xA8,0xA6,0xCA,0x66,0x38,0xB5,0x72,0x37,0x0A,0x5F,0x70,0x38,0xDC,0xF7,0xCA,0x63,0xC7,0xE2,0xF0,0x2C,0x27,0x4B,0x55,0x45,0x3C,0x96,0x9D,0xAC,0x77,0x23,0xB2,0x5C,0xBC,0xF3,0x5B,0xEC,0x6A,0xD7,0xAB,0xEE,0xC3,0x19,0x75,0x66,0xEF,0x66,0xB4,0x75,0x19,0xB3,0xF4,0xE2,0xD0,0x39,0x0B,0x1B,0x16,0x76,0x7D,0x6B,0x5A,0x6B,0xE0,0xDD,0x43,0x99,0x68,0x59,0xB2,0x49,0x28,0x43,0xA2,0xD5,0x0A,0x7B,0x25,0x1D,0xBB,0x36,0x44,0x27,0x8E,0x4C,0x24,0x7A,0x1F,0x45,0x4C,0xDB,0x36,0x3C};
|
||||||
|
//const uint8_t spGUESS[] PROGMEM ={0x21,0x1F,0xDE,0x14,0x2D,0xDE,0xEC,0x7C,0xE5,0x39,0x59,0x99,0xE6,0xDC,0x9D,0xEF,0x62,0x57,0xAB,0x8E,0xD1,0xCA,0x79,0x63,0xCE,0x26,0xB7,0x02,0x98,0x3C,0x54,0x01,0x3F,0xA8,0x69,0x40,0x03,0x0A,0xF8,0x3E,0xD4,0x00,0xDF,0x46,0x18,0xE0,0x8A,0x30,0x05,0x64,0x57,0x8C,0x00,0x9D,0x54,0x00,0x80,0xD4,0xC1,0x84,0x5B,0xB9,0x93,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spH[] PROGMEM ={0x27,0x2F,0xC1,0x55,0xAB,0x26,0x9F,0x22,0x47,0x55,0xAB,0x9E,0x7A,0x8A,0x92,0x8C,0x74,0x7B,0xF2,0xAD,0x56,0xD5,0x83,0x11,0x75,0x3D,0xAE,0xB5,0xAC,0x01,0x1C,0x30,0x23,0xAB,0x03,0xF6,0xCE,0xB0,0x00,0x03,0xCE,0xE9,0x14,0xC0,0x9A,0x96,0x0F};
|
||||||
|
//const uint8_t spHAD[] PROGMEM ={0x08,0x30,0xD6,0x4A,0x00,0x3E,0x68,0x85,0x24,0x25,0x75,0x8F,0x8E,0x72,0xE3,0x93,0x96,0xE2,0xA6,0x59,0x75,0x6E,0x7A,0xB3,0x93,0xE7,0x9A,0x2E,0x9A,0x55,0x6F,0x75,0xEA,0x5C,0xB3,0xC5,0x62,0xEA,0x6D,0x6E,0xB3,0xDB,0xDE,0x9A,0x9E,0xEB,0x14,0xF9,0xA8,0x6C,0x7A,0x61,0x9D,0xF4,0x32,0xB2,0xEB,0x8B,0x72,0x11,0x8F,0x0D,0xB9,0xF3,0xA3,0xEA,0x52,0x71,0xA3,0x58,0xD9,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spHAND[] PROGMEM ={0x08,0x10,0xD6,0x13,0x01,0xC6,0x50,0x49,0x40,0x03,0x25,0x4E,0xCD,0x53,0x63,0x1C,0xDF,0xF4,0xA6,0x27,0x4D,0xCD,0x87,0x32,0x93,0xDE,0xEC,0xE6,0xB7,0xB8,0xD5,0x6E,0x56,0xE3,0xAB,0x87,0x79,0xC5,0xE9,0x4D,0x6F,0x4C,0xC3,0xA2,0x55,0xC9,0x44,0xB2,0x8D,0x6E,0x74,0xC3,0x5A,0x66,0xAC,0x5A,0xC3,0x61,0xE8,0x52,0x14,0x51,0xF0,0x2A,0xB6,0xD5,0xCD,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spHANDHELD_UNIT[] PROGMEM ={0x08,0x70,0x5E,0x8C,0x03,0x1A,0x18,0x49,0x1A,0xEE,0xC6,0xE7,0xFC,0x24,0x79,0x64,0x38,0x56,0xD2,0x9B,0xDE,0x6C,0x66,0x21,0x57,0x4E,0xDA,0xE4,0x55,0x99,0x9C,0xD8,0xA8,0x85,0xB0,0x60,0x0B,0x5B,0xC8,0x0A,0x30,0xC0,0x00,0x61,0xA4,0x38,0x30,0x9A,0xD0,0x22,0xC4,0xAB,0xCE,0x6E,0x76,0x33,0x9B,0xD6,0xE8,0x56,0xAD,0x1A,0xB3,0x6B,0x93,0x1A,0x39,0xAA,0x45,0xB3,0xB1,0x6F,0x4C,0x4B,0x5D,0xA8,0x67,0xDB,0x0A,0x7D,0xD0,0xC6,0xBA,0x63,0xD3,0x37,0xA9,0x29,0x23,0x15,0x8B,0xFB,0xA6,0xDA,0x07,0x28,0xD7,0x74,0x17,0xEB,0xD8,0xF8,0xCE,0xF5,0xA1,0x5A,0x50,0xC4,0xD4,0x3C,0xBA,0xD1,0x39,0x8B,0xC8,0x88,0xE1,0x47,0x3D,0x02,0x00,0x08,0xA0,0x7B,0x37,0x0D,0x10,0x20,0x49,0x73,0x0C,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spHAS[] PROGMEM ={0x08,0xB0,0x56,0x94,0x01,0x29,0x3A,0x2B,0x20,0xB5,0x30,0x05,0xF8,0xC0,0x76,0xB2,0xD4,0x3C,0x35,0xC6,0xF1,0x4D,0x6F,0xBA,0xF2,0xD4,0x7C,0x28,0x33,0xE9,0x2E,0x6E,0x75,0xBB,0xDD,0xED,0x7E,0x0C,0xBE,0x7A,0x98,0x57,0x9C,0x3E,0xE4,0xD1,0x8D,0xC6,0x6B,0x99,0x6E,0x6C,0x05,0x74,0x40,0x29,0x01,0x06,0xFC,0xA0,0x82,0x80,0x9F,0x95,0x11,0xF0,0x9C,0x2A,0x3C};
|
||||||
|
//const uint8_t spHAVE[] PROGMEM ={0x0C,0x08,0xD1,0x44,0x02,0x14,0x10,0x40,0x0C,0x4E,0x21,0xF5,0xD9,0x2D,0x33,0xAD,0xCC,0x74,0xA7,0x37,0x3D,0x59,0x1A,0x1E,0x62,0x1D,0xF7,0xE6,0xB7,0xBA,0xF5,0xAA,0x43,0x8D,0x30,0x8F,0xAD,0xBB,0x59,0x8D,0x8F,0x11,0x5A,0xB2,0x66,0xB7,0xBD,0x4D,0x9D,0x8B,0x6A,0x2C,0xDC,0xDA,0x77,0xBA,0x93,0xBD,0xED,0x6D,0xAF,0x7B,0x80,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spHEAD[] PROGMEM ={0x80,0x80,0x60,0x59,0x08,0x10,0x3D,0xB7,0x00,0x62,0x64,0x1D,0x41,0x8E,0x61,0xC6,0xFE,0xE6,0xC6,0x37,0xBE,0xC9,0xC9,0x72,0x09,0x33,0xCE,0x2D,0xB7,0x3A,0x4D,0x4A,0xEE,0xAE,0xB1,0xE6,0x76,0xAB,0x8F,0xD1,0xDC,0x2C,0x96,0x88,0x9E,0xBA,0x50,0xCF,0xB6,0x25,0x07,0x31,0x50,0x97,0xEA,0xD9,0xB2,0xC4,0xC0,0x54,0x7A,0x46,0x38,0x16,0xC3,0x90,0xA6,0xEA,0xEE,0x3A,0x74,0xCD,0x8F,0x14,0x97,0x43,0xD3,0x46,0xAF,0x26,0xDA,0x0D,0x43,0x9F,0x7D,0x9A,0xB3,0x3A,0x79};
|
||||||
|
//const uint8_t spHEAR[] PROGMEM ={0x08,0x08,0xD2,0x88,0x00,0x51,0x29,0x13,0x20,0x5B,0x92,0x94,0x36,0xAF,0x42,0x15,0x6B,0x76,0x32,0xE3,0x1D,0xAF,0xA4,0xE6,0x10,0x48,0xEF,0x3E,0xB3,0x5D,0x8D,0x3A,0xD6,0x32,0x4C,0xF4,0x3E,0xDB,0xDE,0xF5,0x21,0x8D,0x7E,0x9A,0xC8,0x48,0xFE,0x38,0xEA,0x89,0x4F,0x74,0x7A};
|
||||||
|
const uint8_t spHELLO[] PROGMEM ={0x00,0xC0,0x80,0x60,0x59,0x08,0x10,0x3D,0xB7,0x00,0x62,0x64,0x3D,0x55,0x4A,0x9E,0x66,0xDA,0xF6,0x56,0xB7,0x3A,0x55,0x76,0xDA,0xED,0x92,0x75,0x57,0xA3,0x88,0xA8,0xAB,0x02,0xB2,0xF4,0xAC,0x67,0x23,0x73,0xC6,0x2F,0x0C,0xF3,0xED,0x62,0xD7,0xAD,0x13,0xA5,0x46,0x8C,0x57,0xD7,0x21,0x0C,0x22,0x4F,0x93,0x4B,0x27,0x37,0xF0,0x51,0x69,0x98,0x9D,0xD4,0xC8,0xFB,0xB8,0x98,0xB9,0x56,0x23,0x2F,0x93,0xAA,0xE2,0x46,0x8C,0x52,0x57,0x66,0x2B,0x8C,0x07};
|
||||||
|
//const uint8_t spHELP[] PROGMEM ={0x08,0xB0,0x4E,0x94,0x00,0x21,0xA8,0x09,0x20,0x66,0xF1,0x96,0xC5,0x66,0xC6,0x54,0x96,0x47,0xEC,0xAA,0x05,0xD9,0x46,0x3B,0x71,0x94,0x51,0xE9,0xD4,0xF9,0xA6,0xB7,0x18,0xB5,0x35,0xB5,0x25,0xA2,0x77,0xB6,0xA9,0x97,0xB1,0xD7,0x85,0xF3,0xA8,0x81,0xA5,0x6D,0x55,0x4E,0x0D,0x00,0xC0,0x00,0x1B,0x3D,0x30,0x00,0x0F};
|
||||||
|
//const uint8_t spHERE[] PROGMEM ={0x08,0x08,0xD2,0x88,0x00,0x51,0x29,0x13,0x20,0x5B,0x92,0x94,0x36,0xAF,0x42,0x15,0x6B,0x76,0x32,0xE3,0x1D,0xAF,0xA4,0xE6,0x10,0x48,0xEF,0x3E,0xB3,0x5D,0x8D,0x3A,0xD6,0x32,0x4C,0xF4,0x3E,0xDB,0xDE,0xF5,0x21,0x8D,0x7E,0x9A,0xC8,0x48,0xFE,0x38,0xEA,0x89,0x4F,0x74,0x7A};
|
||||||
|
//const uint8_t spHIGHER[] PROGMEM ={0x80,0x01,0x04,0x78,0x1F,0x45,0x01,0x0E,0x94,0xC0,0x8F,0x0E,0xB7,0x8C,0xBA,0xC3,0x1D,0xED,0xE8,0x46,0x2B,0x8A,0x2B,0x4B,0xB5,0xE2,0xCD,0x68,0xC4,0xA5,0xA8,0x99,0x77,0xE9,0x99,0xB4,0xBC,0x15,0x15,0xC9,0x5C,0xDD,0xAB,0x51,0x95,0x1A,0x4C,0xE9,0x5D,0x47,0x9D,0x5A,0x32,0x87,0x66,0x1F,0x4D,0x6C,0x29,0x1A,0x92,0xBD,0xB5,0x7E,0x84,0x50,0x53,0xB7,0xDA,0xA6,0xCE,0x2D,0x91,0x0C,0x5A,0xED,0x7B,0xDD,0xCB,0x81,0xF7,0x74,0x10,0xBD,0xAF,0x4A,0xEA,0xE2,0xF1,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spHIT[] PROGMEM ={0x08,0xB0,0x2E,0x4C,0x00,0xDE,0x47,0x29,0x20,0x2A,0x51,0x0D,0x68,0xA0,0x84,0xD9,0x30,0xC7,0x66,0xC0,0x13,0x97,0xEC,0x2C,0x19,0x4B,0x6E,0x72,0xB3,0x9B,0xB7,0x26,0x79,0x57,0x4A,0x7F,0x02,0x00,0x04,0x88,0xD2,0x54,0x00,0x4B,0x7A,0x08,0x60,0x08,0x37,0x78,0x00,0x00};
|
||||||
|
//const uint8_t spHOME[] PROGMEM ={0x08,0x50,0x71,0x93,0x00,0x36,0x54,0x53,0x80,0x00,0x2A,0x6E,0x92,0x48,0xFA,0x5F,0x52,0x4D,0xD7,0xA3,0x1E,0xF7,0xB8,0x25,0x5A,0xEE,0x9B,0x81,0xFA,0x99,0xF6,0xAC,0x57,0xAD,0xF6,0x22,0xBA,0x1E,0xE0,0xF6,0xA6,0x37,0xAD,0x0D,0x81,0x23,0x03,0xCD,0xF6,0xAE,0x76,0xB5,0xCB,0x5D,0xEE,0x5C,0xA7,0x2D,0xAE,0x4B,0x38,0x35,0xAD,0x4A,0x6D,0xA1,0xD2,0x48,0x74,0xBA,0xB4,0x89,0x57,0x98,0x07};
|
||||||
|
//const uint8_t spHOW[] PROGMEM ={0x80,0x80,0x10,0x4D,0x28,0xA0,0x01,0x03,0xC4,0xE0,0x64,0x80,0xE2,0x3B,0x15,0x10,0xA2,0xDA,0x8A,0x7D,0x8B,0x91,0x88,0xA8,0x23,0xB1,0x23,0x5A,0x22,0xA3,0xCE,0x64,0x24,0xB6,0xE7,0x88,0x67,0xD4,0x91,0xDA,0x52,0x23,0x1A,0x71,0x5A,0xE6,0x62,0xAF,0x8A,0x35,0x69,0x95,0x8D,0x7D,0x22,0xB6,0xA6,0xD4,0xA6,0xF4,0xB2,0xDA,0x92,0xDA,0x96,0x4E,0xA7,0x59,0x31,0x6E,0x9D,0xBB,0xD0,0xCB,0xB2,0xCB,0xCE,0xAB,0x4D,0x2F,0xC6,0x36,0x85,0xB4,0x52,0x3D,0xBF,0x4D,0xEA,0xA1,0x9A,0xF4,0xEC,0x36,0x19,0x85,0x23,0xDC,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spHUNDRED[] PROGMEM ={0x04,0x90,0xCB,0x4D,0x02,0x1A,0x68,0x89,0xCD,0x55,0x22,0xAD,0x79,0xA7,0x3B,0x1D,0x69,0x0A,0x5E,0xC2,0x91,0x7A,0xA6,0x2E,0x65,0x5E,0x73,0xAC,0x2D,0xDB,0x54,0xE6,0xA9,0x8A,0x59,0x42,0xC1,0xB3,0xA4,0xDA,0x67,0x0E,0xB5,0x68,0xDF,0xAB,0x59,0xCD,0x7A,0x35,0xDE,0xB9,0x59,0xC5,0xE3,0xD9,0xE6,0x5E,0x74,0xC4,0xA6,0x47,0x96,0x2D,0xD6,0x12,0x53,0x11,0x11,0xB1,0x59,0xCB,0x95,0x5A,0x58,0xAA,0x4E,0x43,0xD4,0xAE,0xE2,0xFC,0x52,0x0C,0x31,0xA5,0x28,0x56,0x2B,0x31,0xE4,0x10,0x6A,0xEC,0x0E,0xC9,0x10,0x55,0x5A,0x58,0xBA,0x7D,0x00,0x00};
|
||||||
|
//const uint8_t spHURRY[] PROGMEM ={0x00,0x00,0x14,0xE0,0x40,0x4B,0xEC,0x16,0x19,0x95,0xD8,0x3B,0x19,0x89,0xCE,0x8D,0xF1,0xEC,0xB6,0x25,0xBA,0x26,0xC5,0x61,0x97,0x99,0xD4,0xB4,0xE5,0xBA,0xA9,0x55,0x49,0xDE,0x5E,0xAC,0xBA,0x45,0x67,0x8C,0x78,0xB3,0xEB,0xDD,0xCC,0xB6,0xB5,0xB5,0x18,0x72,0xE4,0x9D,0xDA,0xFA,0x4E,0xB7,0x00,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spI[] PROGMEM ={0x23,0x09,0xDE,0x27,0x82,0xBB,0xED,0xEC,0x16,0xB7,0xBE,0xF5,0x6D,0x4E,0x13,0xB2,0x97,0x5B,0xB4,0xDD,0xDD,0xEA,0x42,0xF6,0x70,0x8F,0x39,0xAD,0x8F,0x85,0xDB,0xBC,0xCB,0x94,0x3E,0x64,0xD5,0x1C,0x0B,0x95,0x07,0x37,0x78,0x27,0xB9,0xA9,0x86,0x4D,0x1F,0x3C,0xD3,0xA4,0x1B,0x96,0x35,0xAF,0xE1,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spI_WIN[] PROGMEM ={0x29,0x09,0xDE,0x27,0x82,0xBB,0xF5,0x64,0x26,0x33,0x9D,0xE9,0x48,0x43,0xF6,0x72,0x8B,0xB6,0x35,0x2B,0x99,0x75,0x91,0xAE,0xB2,0x24,0x64,0xC2,0x77,0x99,0x52,0x2B,0x93,0x0B,0x3D,0xED,0x4A,0x2E,0x4D,0xA5,0xC4,0xAC,0x19,0x7A,0x4E,0x55,0xA0,0xB1,0xEA,0x98,0xB7,0x35,0x2D,0x98,0x71,0x51,0xBF,0xD9,0xAE,0xB6,0xC7,0x34,0x4A,0xD9,0xBB,0xBA,0x1E,0xD3,0x39,0xA4,0xEF,0xE8,0x6A,0x48,0xE7,0x90,0xED,0xAD,0x6F,0xAE,0x92,0x9D,0xBA,0xD4,0x3E,0x0D,0xD1,0x99,0x99,0x60,0x13,0x37,0x44,0x4F,0x21,0xEA,0xE9,0xCD,0x60,0xAD,0x26,0x69,0x35,0x53,0xA3,0xB4,0x6E,0x6A,0xD5,0x46,0x8C,0xC2,0x68,0x6B,0xB4,0x6B,0x36,0x19,0xC9,0x95,0x51,0x4A,0xD8,0x64,0x83,0xA9,0x72,0xB8,0x7D};
|
||||||
|
//const uint8_t spIF[] PROGMEM ={0xAB,0x28,0xD5,0x85,0x2D,0x9E,0xDC,0xE2,0x16,0xB7,0x3A,0xB5,0x0D,0x56,0x1E,0x71,0xB9,0x37,0xBA,0x67,0x40,0x88,0xAE,0x12,0x90,0x00,0x05,0x18,0x10,0x9D,0x19,0x07,0x28,0xF0};
|
||||||
|
//const uint8_t spIN[] PROGMEM ={0xAB,0x2A,0xD1,0xC4,0xA2,0x2F,0x9D,0xA2,0x79,0x17,0x8D,0x78,0x78,0x8A,0x92,0x4C,0xCC,0xFA,0xE6,0x29,0x4A,0x36,0x53,0xAB,0xB9,0xB7,0xDA,0xD5,0xA9,0x62,0xB0,0x30,0x8F,0x29,0xA3,0x8E,0x5E,0x23,0x5C,0x66,0x87,0x3A,0x05,0x18,0x49,0xD7,0x18,0xEB,0x58,0xBB,0xDA,0x5B,0x58,0x4B,0x73,0xE4,0x1B,0xDD,0x88,0x46,0x29,0xC9,0xB2,0x74,0x4C,0xDB,0x07};
|
||||||
|
//const uint8_t spINCH[] PROGMEM ={0xAB,0x69,0x59,0x58,0x33,0x66,0x9D,0xAA,0xC6,0x62,0xCE,0x98,0x75,0xAA,0x96,0x5A,0x44,0xED,0xF1,0xAD,0x6E,0xB5,0x9A,0x1C,0x9B,0xCC,0x7A,0xF0,0x9C,0xC2,0xEC,0xAC,0x71,0x85,0x17,0xD6,0x8B,0x58,0x0D,0x77,0x2D,0x57,0xA7,0xC0,0x80,0x46,0xD9,0x08,0x70,0x77,0xBB,0x04,0x34,0xA0,0x01,0x01,0x9C,0x14,0x2D,0x01,0x0A,0x10,0xA0,0xC6,0x0A,0x04,0xE8,0x60,0xFC};
|
||||||
|
//const uint8_t spINCHES[] PROGMEM ={0x23,0x0A,0x41,0xCD,0xA3,0x26,0xDF,0xFC,0xE4,0xB9,0x98,0x11,0x6F,0xE2,0x9D,0xAD,0x2C,0x45,0x53,0xA7,0x8D,0xED,0x72,0x69,0xB5,0x8B,0x96,0x8A,0xA8,0x48,0xC8,0x6C,0x33,0xCB,0x06,0xF8,0x33,0x34,0x03,0x01,0xB8,0x29,0xA5,0x55,0x21,0x68,0x70,0xE4,0xE3,0xD9,0xF4,0x2E,0x75,0x36,0x68,0x88,0xF7,0xAA,0xDC,0xA5,0xCE,0x44,0x0D,0x89,0x49,0xA9,0x00,0x2E,0xD6,0x0D,0xB0,0xB0,0x88,0x05,0x14,0xF0,0x3D,0x89,0x06,0xE0,0x01};
|
||||||
|
//const uint8_t spINSTRUCTION[] PROGMEM ={0xAD,0x6A,0xDE,0x95,0x2B,0x66,0xCD,0x6A,0x57,0xA1,0x8E,0x0E,0x92,0x4D,0x96,0xC6,0xDA,0xD7,0xBE,0xF1,0xAD,0x01,0xBE,0x57,0x53,0xC0,0xCF,0x16,0x1A,0x90,0x00,0x28,0xA0,0x84,0x4E,0x05,0xA4,0x18,0x52,0x52,0x53,0x4D,0x3D,0x25,0xDB,0x48,0x5D,0x0E,0xF3,0xA4,0xAC,0x23,0x0D,0xA9,0xDC,0x93,0xB2,0xF6,0xD4,0x56,0x80,0x00,0xE1,0x55,0x14,0xD0,0xE2,0xAE,0x07,0x2C,0xA0,0x80,0x11,0xFB,0x4A,0xDE,0x4D,0x85,0x28,0x66,0xDD,0xCD,0xE8,0xAA,0xEE,0x62,0x15,0xB7,0x69,0xB0,0x31,0x84,0x4C,0x13,0x89,0x41,0x1A,0xA7,0x04,0x2B,0xCF,0x07,0x3E,0xD0,0x05,0x4D,0x06,0x77,0x5B,0x84,0xDB,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spINSTRUCTIONS[] PROGMEM ={0xAD,0x6A,0xDE,0x95,0x2B,0x66,0xCD,0xAA,0x57,0xA1,0x8E,0x0E,0x92,0x4D,0x96,0xC6,0xDA,0xD7,0xB6,0x11,0xC0,0xF3,0x6A,0x12,0xB0,0x80,0x05,0x24,0x00,0x0A,0x28,0xA1,0x53,0x01,0x29,0x86,0x94,0xD4,0x54,0x53,0x4F,0xC9,0x36,0x52,0x97,0xC3,0x3C,0x29,0xEB,0x4A,0x43,0x2A,0xF7,0xA4,0xAC,0x3D,0xB5,0x15,0x10,0x40,0x78,0x15,0x05,0xB4,0xB8,0x2B,0x01,0x0F,0x18,0x60,0xC4,0xBE,0xD2,0x74,0x53,0x21,0x8A,0x59,0x77,0x33,0xBA,0xAA,0xBB,0x58,0xC5,0x6D,0x18,0x6C,0x0C,0x21,0xD3,0x44,0x62,0x90,0xC6,0x29,0xC1,0xCA,0xF3,0x81,0x0F,0x72,0x94,0x23,0x03,0x5E,0xB2,0xD4,0x00,0x05,0x30,0x80,0x01,0x04,0xCC,0x64,0xF9};
|
||||||
|
//const uint8_t spIS[] PROGMEM ={0x23,0x6B,0xCE,0x99,0x3B,0x16,0xAF,0xAC,0xDA,0x60,0x9E,0xFC,0xB1,0xF2,0xEC,0x9D,0xB5,0xF2,0xC6,0xC9,0x42,0x50,0x37,0xEF,0x46,0x37,0xBF,0xC5,0xAE,0x56,0xE3,0x7D,0x84,0x84,0xDF,0xEE,0x5D,0xEF,0x6B,0x5F,0xFB,0xD6,0x7F,0xA9,0x6E,0x64,0xEE,0x1C,0xB0,0x00,0xB9,0x03,0xBE,0x60,0x76,0xC0,0xF7,0xAC,0x0E,0xF8,0x9A,0xC4,0x00,0xDF,0xB0,0x21,0x40,0x7A,0x97,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spIT[] PROGMEM ={0x2B,0x19,0xC1,0x99,0x3D,0xDE,0xEC,0xE2,0x14,0x2D,0xBA,0x88,0xE5,0xDB,0x55,0xD5,0x9C,0xC6,0xE2,0x4F,0x57,0x9D,0xB2,0x99,0x44,0x5F,0x49,0xAD,0x2D,0x1C,0xB1,0x6D,0xDA,0x0C,0xD1,0x98,0x7A,0xA9,0x66,0x00,0x50,0xC0,0x32,0x1E,0x1E,0x10,0x40,0x72,0x49,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spJ[] PROGMEM ={0xA1,0xBD,0xAB,0x90,0xC1,0xD4,0x19,0x60,0x47,0x86,0x56,0xED,0xE2,0xC2,0x6C,0xD9,0x57,0x15,0xB2,0xA9,0x68,0x35,0xB9,0xD5,0xAE,0x76,0xB5,0xAA,0x14,0x4C,0x3C,0xAA,0xC5,0xAC,0x66,0x33,0xDA,0x9A,0x9C,0x2D,0xA2,0x71,0x1F,0xD2,0x10,0x23,0x71,0x55,0x47,0x0A,0xA3,0x31,0x66,0x3D,0x6E,0x29,0x8C,0x41,0x8B,0x54,0x87,0xE9,0x07};
|
||||||
|
//const uint8_t spJOYSTICK[] PROGMEM ={0x01,0x38,0x49,0x79,0x15,0xC5,0xA5,0x91,0x5B,0xB7,0x53,0x38,0x53,0x95,0xCE,0xD9,0x6E,0x7E,0xB3,0x93,0x79,0x57,0x19,0xC6,0x79,0x57,0xE6,0x53,0x58,0xA8,0xAD,0x5E,0x45,0x0C,0x29,0x9A,0xBE,0x66,0x34,0xC1,0x85,0x78,0x64,0x15,0x05,0xFC,0xAC,0x6C,0x01,0x0D,0x68,0x00,0x03,0x60,0x80,0xAD,0x4D,0x46,0x5E,0x62,0xA8,0xAA,0xAD,0xBD,0x4D,0xEB,0x63,0xE1,0xB0,0x98,0xC5,0x6E,0x08,0x0D,0x33,0x72,0x26,0xB3,0x29,0x38,0x95,0xCE,0x70,0x04,0xC0,0x00,0x6B,0x9D,0x18,0xE0,0x92,0x28,0x06,0xE0,0x01};
|
||||||
|
//const uint8_t spJUST[] PROGMEM ={0x09,0xB8,0x8E,0x60,0xA5,0xC3,0x9A,0x89,0x78,0x9F,0x93,0x67,0x9B,0x2A,0x96,0x6F,0x4F,0x1E,0x62,0xBB,0x8B,0xB7,0xBD,0xC5,0xAD,0x6E,0xD5,0x2A,0x2F,0xC7,0x3C,0x22,0x94,0x02,0xBE,0x95,0xF0,0x80,0x03,0x7E,0x32,0x55,0xC0,0x1F,0xC1,0x1C,0xC0,0x00,0x28,0xA0,0x6A,0x77,0x05,0xDC,0x20,0x22,0x80,0xA4,0x53,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spK[] PROGMEM ={0x09,0xE8,0x51,0x25,0x02,0x0E,0xC8,0xD1,0x78,0x44,0xB9,0x99,0x89,0x57,0x93,0x9D,0xDC,0xF4,0x64,0xA5,0xAA,0xAA,0x65,0x9D,0x9B,0xDF,0xE2,0xD6,0xAB,0xF3,0x56,0xBC,0xBB,0x42,0xF7,0x21,0x0F,0x61,0x4C,0x5E,0x24,0x36,0x2B,0xC5,0xC9,0x4E,0x0F};
|
||||||
|
//const uint8_t spKEY[] PROGMEM ={0x01,0x18,0x9E,0x2D,0x02,0x1E,0x68,0xFE,0x08,0xC6,0x10,0xF5,0x78,0xC6,0x3B,0xD9,0xE9,0xAE,0x76,0xBD,0xDB,0xDD,0x8D,0x7E,0x14,0x13,0xB0,0x7A,0x52,0x86,0xEC,0x99,0x65,0xB6,0x74,0x18,0xB2,0x14,0x8A,0x4F,0xC3,0x76,0xD4,0xA3,0x9D,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spKEYBOARD[] PROGMEM ={0x06,0x18,0x23,0xD4,0x01,0xDD,0x0A,0x7B,0x60,0xF8,0x2B,0xAA,0x40,0xE4,0x97,0x19,0xCE,0x70,0x85,0x23,0x3A,0x43,0xE6,0xD7,0x1E,0xA9,0x84,0x5A,0xAF,0x36,0x4D,0xAC,0x73,0x55,0x29,0x95,0x9F,0x8A,0xDA,0x73,0x51,0x8B,0x5A,0x95,0x5A,0x9A,0xFC,0x52,0xD4,0xDE,0x6A,0x63,0x7C,0xCB,0x48,0xFD,0x68,0x8C,0xF3,0x09,0x67,0xF5,0xA3,0x35,0xA5,0x4A,0x4C,0xD4,0x8F,0xDE,0x56,0x77,0x0D,0xF1,0xDE,0x7A,0x5B,0x42,0xB5,0x34,0x7B,0xEB,0x7D,0x33,0xE5,0xF2,0xF4,0xA9,0x57,0x41,0xC9,0xAB,0x1C,0xDB,0x5E,0xF7,0xBA,0xD7,0xFD,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spKNOW[] PROGMEM ={0xA1,0xF2,0x0E,0x3E,0xD3,0xA9,0x94,0x3A,0x78,0xB8,0xA8,0xA0,0x93,0x6A,0xEF,0xE0,0xA3,0x9C,0xF1,0xAA,0xA2,0xE7,0x32,0xF3,0x24,0xA7,0xB0,0xDE,0xDB,0xDC,0xDB,0xDC,0xFC,0xE6,0x37,0x5F,0x95,0xF2,0xB9,0x61,0xD4,0x65,0x57,0xBB,0x6E,0x2D,0x8F,0xB3,0x6A,0xD4,0xA5,0x76,0xB5,0x0F,0x3D,0xDD,0x1B,0xAA,0x92,0xC8,0xF7,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spL[] PROGMEM ={0x27,0x8F,0x25,0xDC,0xA4,0x5B,0x9F,0x3C,0xE5,0x08,0xA7,0x6A,0x73,0xF2,0x10,0xCB,0x83,0xAB,0xCE,0xCD,0x4F,0xE5,0xE4,0x8D,0xA9,0x74,0xBA,0x55,0xA9,0xF8,0x3E,0x11,0xCF,0x4A,0xB5,0xCE,0x75,0xAE,0x43,0xC3,0xCF,0x84,0x70,0xD6,0x72,0x0D,0xDB,0x67,0xE4,0x11,0xDB,0x35,0xBC,0x7C,0x92,0x6A,0x63,0xD5,0xB2,0xB8,0xAE,0xA2,0xB6,0x79,0xFB};
|
||||||
|
//const uint8_t spLARGE[] PROGMEM ={0xA5,0xB1,0xC6,0x5A,0xB9,0x5A,0xB5,0xDA,0x6A,0x9D,0x80,0x49,0xBD,0x2A,0xAF,0xAB,0x9B,0x79,0xCE,0xAD,0x56,0x11,0x4C,0x55,0x09,0x2F,0x59,0x85,0x8B,0x95,0x29,0xD2,0x64,0x54,0xAE,0x97,0x64,0x50,0x93,0x5D,0xED,0x6A,0xD5,0x7E,0xB9,0x7A,0x50,0xD6,0x59,0xAF,0x3A,0xD4,0x52,0x2E,0x49,0xDF,0x9B,0xD0,0xC6,0x1E,0x82,0x1E,0xF5,0x01,0x34,0xA0,0x01,0x09,0x48,0x80,0x03,0x14,0x78};
|
||||||
|
//const uint8_t spLARGER[] PROGMEM ={0xA9,0xB5,0x9A,0xAF,0x24,0x3C,0xB6,0xDA,0x6B,0xFE,0x94,0xF0,0x74,0x2A,0xE3,0x7B,0x42,0x64,0xC9,0x29,0x9C,0x99,0xB1,0xE0,0xCE,0x27,0xB3,0x39,0x35,0x83,0xBD,0xEC,0x6C,0x65,0x21,0xB6,0x78,0x93,0x97,0x95,0xC7,0x5C,0xA2,0x25,0x5E,0x77,0xB1,0xEB,0xD9,0xE4,0x5E,0x01,0x8D,0xB0,0x6A,0xA0,0x74,0x7E,0x92,0x45,0x6A,0xD7,0xDA,0x87,0xC1,0x2F,0xB2,0x48,0x79,0x1D,0x07,0x3F,0xE8,0x81,0x0F,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spLARGEST[] PROGMEM ={0xA5,0xD0,0xCA,0xB3,0x39,0x66,0x8E,0xCA,0x0B,0xF7,0x15,0xED,0xB4,0xAA,0x20,0xCC,0x9F,0xDC,0xCD,0x29,0xA2,0xF1,0x29,0x93,0x36,0xA7,0xF0,0x3E,0xA6,0x8D,0xD3,0x9C,0xC2,0xE6,0xCC,0x11,0x49,0x7D,0xF3,0x93,0xFB,0x69,0x56,0x2A,0xAD,0x4E,0x1E,0xA7,0xAB,0xB9,0xA6,0x5D,0x55,0x5A,0xA6,0x64,0xE1,0x26,0x54,0xAF,0x65,0x0A,0x10,0xDD,0x04,0x34,0xC2,0x3A,0xEA,0x9B,0xC3,0x08,0x55,0x5B,0xAB,0x83,0x37,0x15,0x9B,0x39,0xA3,0x0D,0xD6,0x42,0x2D,0x6F,0x97,0xDE,0x04,0x77,0x8D,0xAD,0x54,0xFA,0xA0,0x42,0x43,0x2A,0xB5,0x03,0xBE,0x34,0xF1,0x80,0x07,0x28,0x00,0x08,0x40,0xB9,0xC3,0x00,0x47,0xBB,0x09,0x20,0x69,0xE7,0x07};
|
||||||
|
//const uint8_t spLAST[] PROGMEM ={0xA1,0x61,0xFE,0x25,0xB9,0x22,0x96,0x46,0xF8,0xB5,0x82,0xB7,0x32,0x6A,0x3E,0x52,0x23,0xDA,0xD1,0xA9,0x6C,0xCD,0xF0,0x98,0xB0,0xB7,0xB8,0xF9,0xCD,0x6F,0x71,0xAB,0xD3,0x84,0x1E,0x29,0xD6,0x56,0x76,0xD3,0xDB,0xDC,0x29,0x60,0xAB,0x34,0x0D,0x68,0x40,0x02,0x1C,0xC0,0x00,0x80,0x01,0x12,0xCB,0x60,0x40,0x51,0x25,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spLEARN[] PROGMEM ={0xA5,0xB3,0xDA,0x3A,0x85,0xB7,0xB4,0x26,0x6A,0x8E,0x36,0xCC,0xDB,0x6A,0xE9,0xAB,0x92,0x32,0xC9,0xAC,0x56,0x61,0x74,0x8F,0xBB,0x66,0x5A,0x99,0xD5,0x55,0x56,0x92,0x79,0x65,0xCE,0xB7,0xF1,0xAA,0xDA,0x99,0xCF,0x62,0x54,0x21,0x8E,0x52,0xB9,0xB6,0x59,0xEF,0x76,0x75,0x21,0xA7,0x61,0x84,0xF3,0xD9,0xCD,0x3E,0xF4,0x52,0xCB,0xA4,0x85,0x65,0xDF,0xFB,0xCE,0x75,0xCA,0x70,0xB9,0x76,0x2C,0xD7,0x69,0x4D,0x1B,0x16,0x76,0x42,0x67,0x55,0x84,0x64,0xDA,0x7E,0x00,0x00};
|
||||||
|
//const uint8_t spLEFT[] PROGMEM ={0xAD,0x0E,0xB0,0x96,0x2B,0x5A,0x8C,0xC2,0x93,0x49,0xAE,0x5C,0x78,0x72,0x1F,0x23,0xC5,0xBE,0xF6,0xCD,0x6F,0x71,0xEA,0x58,0xA2,0xC4,0x3A,0xF1,0x6D,0x5B,0xE7,0x63,0x04,0x7B,0x4C,0x8A,0x23,0x03,0xA2,0x35,0xD1,0x80,0x02,0x86,0xF7,0x00,0x00,0x70,0x40,0x17,0xE6,0x08,0x60,0x29,0xFD,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spLESS[] PROGMEM ={0xA6,0x16,0xBA,0xDB,0x43,0x52,0x85,0xD6,0x88,0x2A,0x76,0x6D,0x53,0x5A,0xA7,0xD4,0xC3,0xA8,0x6B,0x6B,0x9C,0x31,0x2F,0x92,0xAE,0xA7,0x8E,0xC9,0x5B,0xAC,0xB6,0xDD,0xFA,0xD6,0xA7,0x4A,0x59,0x47,0xB8,0x52,0xDE,0xEA,0x14,0xB1,0x66,0xA3,0x66,0x92,0x52,0xB8,0x1C,0xCE,0x31,0xA1,0x15,0xF0,0x63,0xB8,0x07,0x0C,0xF0,0x83,0x87,0x07,0x02,0xF0,0x83,0x47,0x00,0x9E,0xC9,0x32,0xC0,0x51,0x96,0x04,0x70,0xB1,0x98,0x00,0x31,0x63,0xC2,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spLET[] PROGMEM ={0xA9,0x49,0xCA,0x79,0xC1,0xDA,0x96,0x26,0x5A,0xE3,0x06,0xEF,0xBD,0xEA,0x9C,0xA5,0x5C,0x73,0xD3,0xAE,0x67,0x35,0xAB,0x59,0xC4,0x1C,0x00,0xC0,0x01,0x4D,0x84,0x0B,0x60,0xCA,0x30,0x04,0xF8,0xEC,0xF4};
|
||||||
|
//const uint8_t spLIKE[] PROGMEM ={0xAA,0x96,0xB1,0x5F,0xB1,0xD3,0xC4,0xAA,0x36,0xB3,0xDE,0xD5,0x29,0x5C,0xCD,0xD6,0x68,0x27,0xB7,0x38,0x55,0xAC,0x31,0x6A,0xED,0xE4,0x34,0xB9,0x45,0x19,0xB7,0x9B,0xD6,0xA7,0xA5,0x49,0xB5,0x1A,0xD3,0x58,0xBA,0x18,0xFB,0x46,0x74,0x53,0x69,0xA8,0x16,0x55,0x0A,0x00,0x0C,0x90,0x73,0xA0,0x06,0x24,0xF0};
|
||||||
|
//const uint8_t spLIKES[] PROGMEM ={0xC4,0x75,0x20,0x6D,0x24,0x1D,0x99,0x4A,0x8B,0xF2,0x82,0x4C,0x16,0x5A,0x43,0xD7,0x12,0x66,0x6E,0x69,0x0C,0xCF,0x6C,0x88,0xD6,0xA5,0xB2,0xB2,0xAF,0x50,0x7A,0xCD,0x6A,0x15,0x26,0x6C,0x1B,0xD7,0x92,0x9D,0xCF,0xEC,0xE4,0xDE,0x4F,0x39,0x57,0x93,0x53,0x25,0x37,0x11,0xE2,0x4D,0x4F,0x9B,0x53,0x85,0x8B,0x37,0x1D,0x7D,0xF2,0x25,0x9E,0xD9,0xA8,0x8C,0xB1,0x88,0x46,0xD5,0xE4,0x38,0xFA,0x11,0x00,0x08,0xE0,0x97,0x88,0x00,0xDC,0x72,0x36,0xC0,0x96,0x95,0x06,0xF8,0x3E,0x27,0x00,0x3F,0xBB,0x3B,0xE0,0x07,0x55,0x03,0x7C,0xA3,0x62,0x80,0x2F,0x55,0x1E};
|
||||||
|
//const uint8_t spLINE[] PROGMEM ={0x00,0xA1,0xE2,0xEE,0x35,0x25,0xA2,0xA4,0x42,0x98,0xEE,0x81,0x88,0xD3,0x5A,0x65,0xFC,0x13,0xC6,0xF3,0x29,0x8C,0x8D,0x57,0xCC,0x2C,0xA7,0x30,0xB1,0x5E,0xA4,0xD2,0x9C,0xCA,0xE4,0x3E,0xC9,0x4E,0x73,0x2A,0x93,0x7B,0xD4,0xDA,0xCA,0xA9,0x4C,0xEA,0xB6,0x2A,0x2B,0xA7,0xB2,0xA9,0xCB,0x2D,0xAD,0x9C,0x2A,0x84,0x4A,0xB3,0xB0,0x72,0x9A,0x94,0x35,0x55,0x33,0xD6,0x6A,0x63,0xD5,0x90,0xCA,0x58,0xA3,0xCF,0x55,0x4D,0xA2,0x62,0x95,0x31,0x15,0x72,0xA9,0x8E,0x95,0xC7,0x32,0x26,0xAF,0x9C,0x56,0x29,0xCD,0xC8,0x9D,0x46,0x49,0xA5,0x34,0x23,0xB5,0x69,0xE5,0xE5,0xC8,0x8D,0x3E,0xA9,0xAA,0x76,0xCA,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spLOAD[] PROGMEM ={0x21,0x37,0xCA,0x63,0xC1,0xBC,0xB5,0xDE,0x1B,0x9A,0x46,0xF3,0xD6,0xDA,0xE4,0xA0,0x87,0x32,0xDF,0xAA,0xA2,0x95,0x3D,0xCA,0x7C,0xAB,0x32,0xC6,0x7F,0x20,0xF3,0x8D,0x42,0x85,0xDE,0x02,0xC9,0x36,0x0A,0x1D,0x7B,0x0A,0xD1,0x7F,0xAB,0x94,0xEF,0x29,0x42,0xFF,0xAD,0x52,0xA6,0xA7,0x08,0xBB,0xB6,0x46,0x9B,0xD8,0x44,0xCC,0x57,0x3A,0xAB,0x7D,0xDD,0xA0,0x4F,0xEA,0xAD,0x8C,0x63,0x87,0xDE,0x69,0x74,0xCA,0x26,0x12,0xFA,0xA4,0xC9,0x5A,0x9E,0x71,0xF1,0x1C,0x26,0x6F,0xA8,0x2A,0x31,0x15,0x9B,0xA8,0x8A,0x6C,0xCB,0x54,0x6A,0xA2,0xB2,0xCA,0x7C,0x14,0xB1,0x89,0xCA,0xC8,0x74,0x75,0x12,0xA6,0xEE,0xC2,0x45,0x25,0xA9,0xED,0x44,0x9B,0x83,0xB9,0x73,0xA6,0x42,0x7D,0xB6,0x6E,0x06,0xA4,0xE4,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spLONG[] PROGMEM ={0xA9,0x0D,0x16,0xBB,0x21,0xF3,0xA5,0x2E,0x39,0x98,0x81,0xD0,0x37,0x5A,0xAB,0xAD,0x1B,0x93,0xED,0xAA,0x55,0xEC,0x4F,0x88,0xB6,0xA3,0x92,0x63,0xC7,0x21,0x5A,0x8F,0x42,0xDB,0x3F,0x27,0xCB,0xBC,0x32,0xAB,0xFE,0x8D,0x2C,0xF3,0xC8,0xBC,0xD8,0x37,0x8C,0xD6,0x33,0x6F,0x85,0x8E,0x3F,0xAC,0x9D,0x61,0x54,0xAA,0x5E,0x8A,0x46,0xA2,0xD1,0xE8,0x78,0xAD,0xEA,0xAD,0x4F,0x6B,0xF2,0x96,0xAA,0xB6,0x6E,0x9D,0x49,0x9D,0x61,0xD4,0x39,0xF4,0x3E,0xC0,0xB9,0x5A,0x1D,0xDF,0xBB,0xDE,0x7A,0xF8,0x50,0x8D,0xED,0x3A,0xED,0xE8,0x5D,0x4D,0xB1,0xEF,0x6C,0xFF};
|
||||||
|
//const uint8_t spLOOK[] PROGMEM ={0xA6,0x91,0x3A,0x3B,0x20,0xEF,0xA4,0xC6,0x71,0xAF,0x02,0xED,0xD6,0xEA,0xA8,0x78,0x12,0x34,0x6F,0xCB,0x92,0xA2,0x6E,0xA4,0x7C,0x23,0x0B,0x3C,0x36,0x44,0x9A,0x8E,0xCC,0xB2,0x79,0x96,0x5C,0xD5,0x32,0x2D,0xBF,0x21,0xBB,0xD1,0x28,0xAC,0xD8,0x55,0xD5,0x2D,0xBD,0x2E,0x9D,0x93,0xDD,0xEE,0xB4,0xC7,0x0D,0xDA,0x56,0xA4,0x4A,0x67,0x00,0x50,0x40,0xDE,0xA6,0x0A,0x88,0xD1,0x48,0x00,0xC5,0x17,0x30,0xA0,0xC4,0x20,0x04,0x58,0x2F,0xFC};
|
||||||
|
//const uint8_t spLOOKS[] PROGMEM ={0xA6,0x91,0x3A,0x3B,0x20,0xEF,0xA4,0xC6,0x71,0xAF,0x02,0xED,0xD6,0xEA,0xA8,0x78,0x12,0x34,0x6F,0xCB,0x92,0xA2,0x6E,0xA4,0x7C,0x23,0x0B,0x3C,0x36,0x44,0x9A,0x8E,0xCC,0xB2,0x79,0x96,0x5C,0xD5,0x32,0x2D,0xBF,0x21,0xBB,0xD1,0x28,0xAC,0xD8,0x55,0xD5,0x2D,0xBD,0x2E,0x9D,0x93,0xDD,0xEE,0xB4,0xC7,0x0D,0xDA,0x56,0xA4,0x4A,0x67,0x00,0x20,0x80,0xBB,0xC5,0x0C,0xD8,0xCA,0x92,0x01,0x3F,0x7B,0x72,0x80,0x03,0x1C,0xE0,0x00,0x05,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spLOWER[] PROGMEM ={0xA9,0x2F,0x01,0x36,0x9D,0xF0,0xF7,0x6E,0x36,0xA3,0x92,0x21,0xBF,0x40,0xDB,0xCD,0x6A,0xA6,0x3D,0xAD,0x69,0xC8,0x79,0xA9,0x17,0xF0,0xBE,0xA9,0x12,0xD9,0x5E,0x94,0xF3,0x94,0x56,0x74,0xCF,0x49,0xCD,0x93,0x87,0x30,0xF1,0xE9,0xBD,0xE1,0x72,0xDD,0x22,0x9B,0xDA,0x07,0xA7,0x31,0x8B,0x6E,0xEC,0x5F,0xAA,0xC6,0x2C,0xA6,0xA8,0xE6,0x19,0x6D,0x77,0xF8,0x66,0x6C,0xDA,0xB6,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spM[] PROGMEM ={0x2D,0xCA,0x5E,0x34,0xAA,0x4A,0xAD,0x34,0x27,0x15,0xCF,0x1A,0x75,0xD3,0x95,0xE5,0x24,0x69,0x9E,0xB5,0x4E,0x11,0x5D,0xA6,0xAB,0xA6,0xD9,0xD5,0x68,0x4C,0x1A,0x77,0xB1,0x54,0xA9,0xD5,0x96,0xCA,0xB9,0xB3,0xE5,0x2E,0xF7,0xB1,0xB7,0xBD,0x1D,0xF4,0x08,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spMADE[] PROGMEM ={0x6A,0xD4,0x96,0xCA,0xB9,0xB3,0xB9,0xCE,0x3A,0x6C,0xD1,0x68,0x5B,0x1A,0x1F,0xB0,0x59,0x3C,0xED,0xA9,0xCA,0xF2,0x20,0xAD,0x34,0xB7,0xB8,0xF9,0xC9,0xEB,0x10,0xE5,0x9C,0x3A,0xBB,0x98,0xD5,0x6C,0x66,0x9B,0xFA,0x52,0x48,0xA4,0x67,0x72,0xEE,0xE3,0x00,0xC0,0x46,0xAA,0x32,0x2A,0xC2,0x89,0x1D,0xDD,0x18,0xB4,0xB9,0x95,0xCF,0x14,0x63,0xCC,0x62,0x2C,0x95,0x18,0x1E};
|
||||||
|
//const uint8_t spMAGENTA[] PROGMEM ={0xA2,0xA0,0x26,0xF2,0xCD,0x9D,0xB4,0x4E,0xC5,0x68,0xE7,0x4A,0xB4,0xBA,0x10,0xB5,0x83,0xBD,0xF7,0xE9,0x72,0xB4,0x54,0x93,0x4E,0xA5,0x8B,0x9E,0xCD,0xD8,0x72,0x8A,0x1E,0xDB,0xD8,0x71,0xB3,0xC9,0x06,0x2A,0x2B,0x33,0xCA,0x96,0x02,0x1A,0x41,0xB6,0xC0,0xAA,0x6A,0x34,0x13,0xF1,0x37,0x2B,0x0D,0x4E,0xD3,0xA3,0x2A,0xAD,0xD4,0x07,0x1D,0xB7,0x91,0xB9,0x52,0x1F,0x2D,0xD5,0xCB,0x76,0x4F,0x4D,0xCE,0x8D,0x5D,0x53,0x5A,0x36,0x40,0xB1,0x2A,0x06,0xF0,0xD8,0x6D,0xD5,0x21,0x49,0xAB,0x4E,0xEA,0xDB,0xAD,0xC9,0x27,0x9D,0x90,0x5C,0x92,0x66,0x17,0x3C,0x4A,0x35,0x72,0x5A,0x43,0x36,0x2F,0x8A,0x4A,0x69,0x8D,0x85,0x33,0x2C,0x94,0x9A,0xD9,0x26,0xB5,0xE0,0xB2,0xF2};
|
||||||
|
//const uint8_t spMAKE[] PROGMEM ={0xA2,0xE1,0x56,0x66,0xB8,0x13,0x87,0xCE,0x3A,0x2C,0xB7,0xF4,0x92,0x1A,0xE7,0xB1,0xC4,0xD2,0xCF,0xA9,0x4A,0xF1,0x70,0xA5,0xAD,0xA7,0x28,0xC5,0xDD,0xD4,0x97,0x9E,0xAC,0x64,0x33,0xD3,0x9E,0x73,0xB3,0x93,0xD5,0x6A,0xA2,0xBA,0xB3,0x4F,0xD5,0x46,0x88,0x70,0xBD,0x19,0x6D,0x49,0x42,0x56,0x3D,0xA9,0xF6,0x6E,0x2A,0x95,0x20,0x72,0x13,0x03,0x00,0x18,0x20,0x55,0x65,0x05,0xC4,0xA6,0x28,0x80,0x9C,0x13,0x1E};
|
||||||
|
//const uint8_t spME[] PROGMEM ={0xAC,0x53,0x96,0xB2,0x53,0x33,0x9B,0x36,0x0F,0x30,0x35,0xAE,0xDF,0xDB,0x59,0xAF,0xAA,0xF7,0x52,0x60,0x79,0xBB,0xAB,0x59,0xF5,0xAA,0xB7,0xBD,0xAD,0x6D,0x69,0x5B,0x0B,0x06,0xF3,0x27,0xA5,0xAD,0x45,0x48,0xB2,0x26,0x87,0x3E,0x7A,0xF0,0xEC,0x36,0x6C,0xFA,0x60,0xC1,0xB3,0x52,0x32,0xEB,0x53,0x42,0x66,0x6D,0x39,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spMEAN[] PROGMEM ={0xAE,0x35,0x0E,0xAA,0x2C,0x12,0xA7,0xD6,0x05,0x28,0x75,0x4B,0x3D,0xDA,0x94,0x54,0xD5,0xB4,0xCD,0xA9,0x5A,0x49,0x41,0xB5,0xD7,0xB7,0xBA,0xD5,0xAE,0x46,0x55,0xAD,0xB0,0xEC,0x04,0xDE,0x55,0xAF,0x67,0x33,0xDB,0xD9,0x85,0xCE,0x3A,0xA8,0xD2,0x96,0x1D,0xFB,0xD0,0x5B,0x87,0x6D,0x51,0x8A,0x55,0x2F,0xAD,0x4C,0x6A,0x5B,0x32,0x7D,0xD6,0x05,0x4A,0xD1,0xF8,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spMEMORY[] PROGMEM ={0xA4,0x56,0x96,0x2D,0x29,0xF3,0xB2,0xC2,0x78,0xF4,0x90,0x4C,0x1B,0xAA,0x94,0x2D,0x54,0xAD,0xCD,0xAD,0x6E,0x75,0x8B,0x95,0x97,0x6A,0x6D,0x18,0xC9,0x5C,0xE5,0x12,0x15,0x71,0x24,0x33,0x95,0xCF,0x98,0x22,0xD2,0x38,0xD7,0xA9,0xB1,0x9B,0xCA,0x82,0xDD,0xE4,0x36,0x76,0xA1,0xB3,0x8B,0xCA,0x52,0xBC,0x84,0xDE,0x4F,0x4A,0x1E,0xE9,0x94,0xFA,0xD0,0xC5,0x35,0x7C,0x59,0x18,0x52,0xE1,0x90,0xEC,0xD9,0x6E,0x88,0x89,0xCC,0x6B,0x22,0xAB,0x21,0x5A,0xD6,0xEC,0x0A,0xAC,0x86,0x1C,0xC0,0x22,0x46,0xAC,0x19,0x4B,0x02,0x8B,0x18,0xA9,0x0F};
|
||||||
|
//const uint8_t spMESSAGE[] PROGMEM ={0xA6,0xD3,0x0E,0xAA,0x24,0x63,0x87,0xCE,0x05,0x68,0xD5,0x76,0xD2,0xDA,0x90,0x30,0x94,0x25,0xCB,0xA9,0x4B,0xF5,0x56,0xF1,0x36,0xB7,0x3A,0x55,0x2E,0x5E,0x4A,0x93,0x7A,0x54,0xDE,0x85,0x25,0x9F,0xE4,0x58,0x19,0xE0,0x29,0x57,0x03,0xBC,0x68,0x64,0x80,0xA7,0x5D,0x05,0x50,0x89,0xF3,0x68,0x72,0x51,0x57,0xF1,0xA7,0xBB,0x9B,0x43,0x1E,0xC3,0x14,0xB4,0xB1,0xBB,0x2F,0x70,0x93,0x94,0x2E,0x56,0x95,0x80,0x4D,0x5C,0xA6,0x97,0x87,0xED,0x32,0xED,0xAC,0x20,0x92,0x4E,0x14,0xB0,0xBB,0xA2,0x02,0xCE,0x08,0x52,0xC0,0xCA,0xC2,0x04,0x48,0x4A,0x05,0xE0,0x01};
|
||||||
|
//const uint8_t spMESSAGES[] PROGMEM ={0xAE,0x67,0xDE,0x35,0xAC,0x12,0xA6,0xDE,0x46,0x0C,0x95,0x48,0x9D,0x5A,0x9F,0xC4,0x45,0xB1,0xED,0x68,0x4A,0xCA,0x50,0xE3,0xA4,0xB7,0x1A,0x45,0x6E,0x51,0x86,0x99,0x76,0xA4,0xBE,0x9A,0x4B,0x8C,0xE2,0x92,0x26,0xD7,0xA4,0xD0,0x51,0x1C,0xB0,0xA0,0x8A,0x05,0x2C,0x10,0xC2,0xEA,0x42,0x55,0xB9,0xEB,0xAD,0x56,0xDD,0x43,0xA8,0x18,0xE4,0x0B,0x5D,0x91,0xAA,0xEC,0xD2,0x55,0xF4,0x16,0x5B,0x66,0x84,0x42,0x03,0x74,0x02,0x36,0xDA,0x96,0xDC,0xCC,0xB0,0xFB,0xED,0x76,0x37,0xFB,0xD2,0x7B,0x27,0x65,0x9A,0x4B,0xC3,0x10,0x68,0x86,0x7B,0xE4,0x4C,0xC3,0xA3,0x1C,0xE1,0x91,0x46,0x01,0x07,0xB0,0x30,0xE0,0x1B,0x56,0x02,0x7C,0x25,0xFA};
|
||||||
|
//const uint8_t spMIDDLE[] PROGMEM ={0xA9,0xCD,0x0D,0x82,0x55,0x92,0xB5,0x3A,0x66,0xB0,0x10,0xAD,0x7E,0x8A,0x98,0x34,0xD4,0x2F,0xD6,0xCD,0x6F,0xD6,0x72,0x1B,0xAD,0x8C,0x36,0x6A,0xAB,0x3D,0xAB,0x28,0xA3,0xB6,0xB3,0x6A,0x95,0xB4,0xDF,0xC6,0xD2,0xA6,0x37,0xB5,0x4B,0xBD,0x34,0xBF,0x22,0x9E,0x25,0x8C,0x5A,0xEE,0x3B,0x53,0x9F,0x30,0x69,0xF1,0xA3,0xC2,0x8B,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spMIGHT[] PROGMEM ={0xAE,0xB3,0x4E,0x9B,0x94,0x53,0x87,0xCE,0x59,0x69,0x56,0xB6,0x9B,0xDB,0x5C,0x9F,0x2A,0xA4,0xCE,0x90,0x8A,0x73,0xAB,0x53,0x85,0x5A,0xE9,0x52,0x71,0x4E,0x95,0x7A,0xA6,0x49,0x56,0x59,0x75,0x1E,0xE6,0x2A,0x1D,0x67,0xD4,0xB9,0xA8,0x98,0x57,0xE5,0x54,0x47,0x2F,0x92,0x9D,0x85,0x4D,0x15,0xA5,0xA9,0x8B,0x2B,0x06,0x00,0x06,0x24,0x1D,0xC4,0x80,0x6E,0xD4,0x08,0x10,0x83,0x32,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spMODULE[] PROGMEM ={0xAE,0x51,0x4E,0x5A,0xD4,0xD5,0x84,0xD6,0x3A,0x69,0x51,0x96,0x9B,0x5A,0xE3,0xB4,0x45,0x4C,0xE9,0x6C,0x4E,0x9D,0x42,0x74,0x50,0xD9,0xBD,0xD5,0xAD,0x4E,0x11,0x43,0x56,0x50,0xC5,0x39,0x45,0x72,0x23,0x8E,0x95,0xD4,0x55,0x2A,0x2A,0x45,0x8C,0x6D,0x56,0x21,0x3F,0x9E,0x9E,0x92,0x0D,0x90,0x08,0xEB,0x6A,0x52,0x30,0x95,0xD0,0x74,0xBB,0x19,0x4D,0xD0,0x16,0xDE,0x98,0x6E,0xB6,0xA5,0xB3,0x3A,0xDA,0x13,0xBA,0xA6,0x5E,0xA4,0x19,0x76,0xCB,0x9D,0x66,0x11,0x6B,0xD3,0xC8,0x9F,0x99,0x45,0x8A,0x6F,0x26,0x2F,0x0F};
|
||||||
|
//const uint8_t spMORE[] PROGMEM ={0xA1,0x4D,0x1E,0xC6,0x94,0xE5,0x85,0x36,0x58,0x68,0x57,0x91,0xD7,0xEB,0x54,0xB1,0xDB,0xC6,0x34,0x75,0x72,0x15,0x2A,0x76,0xB3,0x80,0x3F,0x49,0xAC,0x52,0xC5,0x47,0x1D,0xA3,0xB7,0x6D,0xB5,0xC8,0x39,0x29,0xEC,0x7E,0x34,0x3A,0x7B,0x95,0xB3,0xF2,0xD2,0xA9,0x29,0xB9,0xA2,0x59,0xF3,0x90,0x06,0xB3,0xC4,0xD7,0x24,0x8F,0x1B,0xF5,0x10,0x7B,0x4E,0x4D,0x61,0xB0,0x5D,0x64,0xCD,0x55,0x9B,0x3E,0x2C,0xE2,0xD0,0xD0,0xFC};
|
||||||
|
//const uint8_t spMOST[] PROGMEM ={0xAD,0x49,0x1E,0x53,0x8C,0xED,0x96,0xDA,0xBA,0x3C,0x63,0x5D,0xB3,0xAB,0x52,0x88,0xDD,0xC6,0xD5,0x11,0x6B,0x5E,0xF3,0x52,0x39,0x19,0x6B,0x0E,0x7D,0x6B,0x9D,0x5B,0xD3,0x8B,0x50,0x29,0x6E,0xAD,0x04,0xB0,0x54,0xA8,0x05,0x1C,0xF0,0x63,0x98,0x05,0x3C,0x60,0x01,0x09,0x50,0x80,0x00,0x56,0x88,0x19,0x60,0x19,0x72,0x01,0x54,0x15,0x0E,0x00,0x40,0xFA,0x6C,0xDD,0x5C,0x4D,0xF1,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spMOVE[] PROGMEM ={0xA5,0x4A,0x0E,0x5D,0x13,0xF4,0x96,0x3A,0x7B,0x30,0x1B,0x48,0xD6,0x2A,0xE9,0x37,0x44,0xAB,0xD9,0xCE,0x66,0xDA,0x12,0x11,0xC7,0x55,0xB3,0x76,0x49,0x78,0x6D,0xB6,0xCC,0xCA,0x25,0x13,0xAD,0x84,0xBD,0x5B,0x95,0x4A,0x9A,0x1E,0x74,0xDB,0xD4,0xEA,0xC8,0xF4,0xD9,0xA4,0x7B,0xEB,0x82,0xD4,0xB1,0x84,0xEC,0x75,0xA8,0x43,0x1E,0xC2,0x64,0x55,0xB4,0x3A,0x74,0x75,0xB3,0x31,0xEE,0x61,0x21,0x07,0x01,0x54,0xA4,0x10,0x20,0xD8,0x50,0x01,0x04,0xE7,0x4A,0x00,0x9F,0x43,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spMUST[] PROGMEM ={0x6A,0x14,0x4A,0xB2,0xD4,0xDD,0xBA,0x26,0x58,0x2C,0x75,0x71,0x12,0xEA,0x68,0xB1,0xD5,0xD0,0xEE,0xA8,0xBD,0x8D,0x37,0xE1,0xCD,0xBB,0x5A,0x85,0x73,0x75,0xA6,0xD6,0x78,0x17,0xBB,0xDA,0xF5,0x68,0x5D,0xF0,0x52,0x6B,0x29,0xA1,0xCF,0x36,0x4D,0x30,0x95,0x30,0xE0,0xC8,0x54,0x09,0x68,0x40,0x03,0x04,0x80,0x21,0x1E,0x01,0xD0,0xA5,0x03,0x20,0x40,0xEA,0x34,0x05,0x1C,0xA9,0xFE};
|
||||||
|
//const uint8_t spN[] PROGMEM ={0xAB,0x48,0x3A,0x55,0x3F,0x62,0x9D,0x3C,0x15,0x57,0xB3,0x9A,0x7A,0xF2,0xD4,0x2C,0xD8,0x27,0xF6,0xCD,0x77,0xB1,0xAB,0xD3,0xA4,0xEC,0x21,0xEA,0xB3,0x77,0xDB,0x7A,0x13,0xD4,0x55,0xB3,0xB6,0x1F,0xEC,0x60,0x47,0x33,0x7A,0x4F,0xAE,0x9C,0x4E,0xF5,0xC4,0x26,0xA9,0xB9,0x5A,0xD2,0xF2,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spNAME[] PROGMEM ={0xAE,0x0D,0x9A,0xCC,0x9F,0xE3,0xA4,0x2E,0x58,0xB0,0x68,0x6B,0x52,0xBA,0x14,0x40,0xBC,0xAD,0x5A,0xED,0x6A,0x9B,0xDB,0xD2,0x54,0x9F,0x26,0x66,0x8F,0x66,0xB5,0xAA,0x16,0xCA,0x44,0x6D,0xF1,0x2E,0x76,0x31,0x8A,0x11,0x52,0xD8,0x63,0xF1,0xAC,0x76,0x35,0x9A,0x9D,0xC2,0xC0,0x7C,0xD1,0xEC,0x5A,0x3F,0x73,0x2A,0xB8,0xAF,0x6E,0x43,0x9D,0x4E,0xEC,0x3E,0xCB,0x0D,0xC6,0xC1,0x38,0x77,0x12,0x3B,0x98,0xD1,0x7A,0x1C,0x91,0x4E,0x63,0x46,0x19,0x24,0x4C,0xB2,0xB5,0x1A,0xB9,0x95,0x4E,0x4D,0xD7,0xA6,0x93,0xD6,0x2D,0xC2,0x13,0xA9,0xD6,0x25,0x23,0xD6,0x88,0x26,0xDA,0xB0,0x82,0xD4,0xC2,0x32,0x3C};
|
||||||
|
//const uint8_t spNEAR[] PROGMEM ={0xA2,0x66,0x56,0x6E,0xC4,0x4C,0x99,0x8A,0x5B,0xEE,0xB4,0x28,0x6D,0x2A,0x69,0x39,0xCA,0x6D,0x74,0xA8,0x8C,0x61,0xAB,0xB0,0x4A,0x23,0x6F,0x25,0x99,0xD5,0x57,0xDF,0xEC,0x66,0x27,0x2B,0x3D,0x85,0xCC,0xFB,0xDE,0xFC,0x16,0xA7,0x4A,0x23,0x45,0x42,0xB2,0xDF,0xF6,0x76,0xBB,0x6F,0xBD,0x2B,0xA6,0xFA,0xE6,0xA6,0x0E,0x79,0xF0,0xBD,0xEA,0xAD,0x57,0x96,0x72,0x97,0xAA,0x0B,0xD5,0x89,0x58,0x1C,0x3D};
|
||||||
|
//const uint8_t spNEED[] PROGMEM ={0xA1,0x0B,0x0E,0x3C,0xDB,0xA2,0xE4,0xA6,0x54,0xDE,0x42,0x54,0x59,0xE4,0x55,0x55,0xA5,0x42,0x1D,0x8D,0x4F,0xD1,0x04,0xAB,0x7E,0x87,0xEA,0xD9,0xCC,0x66,0x36,0x8B,0x51,0xB5,0xA0,0x44,0x5B,0x93,0x57,0xBD,0x4A,0x28,0x58,0x3C,0x5D,0xCD,0x6C,0xAE,0xA0,0xF1,0x74,0x76,0xB3,0x2F,0x7D,0x2F,0x2A,0x10,0x79,0xA7,0xF5,0xAD,0x88,0x50,0xC4,0x62,0x31,0x44,0x2F,0x24,0x11,0x8B,0xD8,0x40,0x95,0x57,0xA4,0x3B,0xE1,0x83,0x1B,0x52,0x32,0x15,0xF1,0x45,0x7E,0xF0,0xE3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spNEGATIVE[] PROGMEM ={0x62,0xE0,0x5A,0x67,0xDD,0x13,0x89,0x8E,0x19,0xFD,0xD0,0x91,0x98,0xDA,0xE4,0x61,0x33,0x43,0xC9,0x68,0x4A,0xCA,0x70,0xF6,0x35,0xB7,0xBA,0xD5,0xC9,0x73,0x4E,0x57,0xCE,0x25,0x27,0x2B,0xCD,0x55,0xD5,0x96,0xC6,0xCA,0x54,0x39,0x38,0x4A,0x6B,0xE7,0x59,0xEC,0x6A,0xD4,0xC1,0x87,0x98,0xEB,0x66,0x35,0x70,0x53,0x1A,0x9E,0x89,0x48,0x17,0x4D,0x98,0x8B,0x3B,0x11,0x40,0xD4,0x45,0x16,0x58,0x55,0xAC,0xEE,0x2A,0xB6,0xF4,0xB4,0x29,0xA7,0x89,0xF1,0xDA,0xD5,0x86,0x94,0x26,0x2E,0x6B,0x5A,0xEF,0x92,0xB9,0x99,0xCD,0x75,0xBD,0x2E,0x6A,0x66,0x1D,0x5B,0xF5,0xC6,0xA4,0x98,0x46,0x26,0xD5,0xA7,0xD0,0xC6,0xA4,0x4E,0x7C,0x8F,0x00,0xED,0x43,0x30,0xF0};
|
||||||
|
//const uint8_t spNEXT[] PROGMEM ={0xAE,0xF6,0x16,0x3E,0x33,0x25,0x85,0xDA,0x5B,0x78,0x8F,0x34,0x5D,0xEA,0xE0,0x60,0x2C,0x5B,0xF6,0xA9,0x73,0xD6,0x50,0xED,0x3A,0xA7,0xCE,0x55,0x53,0x6C,0xEA,0x9E,0x3A,0x77,0x4D,0x8E,0x49,0x72,0x9A,0xDC,0x35,0xC4,0x37,0xC9,0x6C,0x52,0x53,0x2E,0xA9,0xF2,0x44,0x04,0x30,0xC0,0x91,0x51,0x06,0x78,0x29,0x42,0x03,0x12,0x90,0x00,0x08,0x60,0x04,0x55,0x02,0x9C,0xE0,0x82,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spNICE_TRY[] PROGMEM ={0x66,0x54,0x86,0x66,0x3D,0x24,0x9B,0x41,0x1A,0xBA,0x53,0x93,0x1D,0x06,0xEF,0xE0,0x2B,0x9C,0xCA,0xE9,0xB2,0x4E,0xB7,0xD4,0xB4,0xA7,0xCD,0x36,0xCB,0x5D,0x93,0x9F,0x26,0xFA,0xA8,0x50,0x4F,0x76,0x2A,0x1F,0x33,0x42,0x23,0xD9,0x29,0x7C,0x4E,0xAE,0x88,0x2A,0x2B,0xF7,0xD1,0xAD,0x7C,0xCC,0xAC,0x3C,0x7A,0xD3,0xF4,0x33,0xBD,0xF2,0x42,0x5D,0xB3,0xC2,0x42,0x02,0xAE,0x60,0x0E,0xC0,0x9F,0x46,0x01,0x78,0x37,0x09,0x08,0x10,0x25,0x47,0x02,0x46,0x2D,0x2D,0x40,0x2B,0xE5,0x0E,0xC8,0x25,0xBD,0x44,0x7C,0x46,0x84,0xB9,0x9D,0x91,0xAA,0x11,0x5A,0x03,0x6D,0x5B,0xA2,0x7A,0x59,0x34,0x2E,0x69,0xB1,0x29,0xE9,0x95,0x70,0xAB,0xC5,0xD6,0x6D,0x68,0x53,0xA3,0x9E,0x8C,0xCA,0xE6,0xA8,0x74,0x6D,0x52,0x3A,0x5B,0xC2,0xDD,0xBC,0x74,0xE9,0x6D,0x4A,0xED,0xB2,0x18,0x69,0x70,0xCE,0x33,0x27,0x0C,0xA5,0x21,0x28,0x8F,0x69,0x0F,0xE9,0x86,0x14,0x55,0xCC,0x3A,0x14,0x03,0xB4,0x95,0x7A};
|
||||||
|
//const uint8_t spNINE[] PROGMEM ={0x80,0x52,0xAA,0x32,0x2B,0xDA,0xB6,0xA9,0xAC,0x95,0x69,0xCD,0x48,0xAE,0xB1,0x5E,0xC7,0xAD,0x4D,0xAE,0x3A,0xBA,0x0C,0x51,0xAA,0x72,0xAA,0xE0,0x3B,0x25,0xB0,0xCD,0xA9,0x6C,0x9C,0x34,0xCD,0x2A,0x2B,0x77,0x61,0xD2,0x2C,0xEB,0x8C,0xDC,0xFB,0x49,0xD2,0x29,0x32,0x0A,0x17,0xC7,0xCD,0x22,0xEA,0xA9,0x62,0xA8,0x70,0xC9,0x7A,0xA7,0x4D,0x39,0x33,0x58,0x9B,0x8E,0x2E,0x76,0x0D,0xD5,0xA8,0xD3,0xFA,0xD0,0x43,0xB4,0x35,0x76,0x19,0x52,0x96,0xD0,0xCC,0xC8,0x65,0x88,0x43,0x45,0x23,0xAA,0xBA,0x31,0x0C,0x23,0xCD,0x18,0xC3,0x46,0x19,0x25,0x52,0xB3,0xA6,0x1A,0xB4,0xE3,0x48,0xA9,0x88,0x66,0x14,0x56,0x3D,0x22,0x1B,0x86,0xD1,0x29,0x37,0xCA,0x8C,0x0B,0x00,0xF0};
|
||||||
|
//const uint8_t spNINETY[] PROGMEM ={0xA1,0x73,0x1A,0x3A,0xCA,0x6A,0xE5,0x36,0xB7,0xAB,0x0E,0xB9,0xCA,0xB4,0xEC,0xDC,0xEA,0x56,0xA7,0xCA,0xBD,0x4A,0x24,0x9C,0x9C,0xA2,0x0E,0x4F,0x34,0x4F,0xBC,0x8B,0x55,0xB4,0xC2,0x2C,0xD9,0x96,0x57,0x95,0x1C,0x6A,0x66,0x05,0xF1,0x95,0x6E,0x0D,0x50,0x94,0x4A,0x04,0x4A,0xD1,0xAB,0xA2,0xB1,0xB6,0x9D,0x4D,0xE9,0x3D,0xE7,0xEC,0x0D,0xDB,0xB9,0xF7,0x83,0x1B,0xAB,0x06,0xB7,0x2D,0x27,0x66,0x1A,0x59,0x18,0xDD,0x95,0x99,0x79,0x74,0x13,0x72,0xA3,0x03,0x08,0x90,0x56,0xE3,0x01};
|
||||||
|
//const uint8_t spNO[] PROGMEM ={0xA1,0xF2,0x0E,0x3E,0xD3,0xA9,0x94,0x3A,0x78,0xB8,0xA8,0xA0,0x93,0x6A,0xEF,0xE0,0xA3,0x9C,0xF1,0xAA,0xA2,0xE7,0x32,0xF3,0x24,0xA7,0xB0,0xDE,0xDB,0xDC,0xDB,0xDC,0xFC,0xE6,0x37,0x5F,0x95,0xF2,0xB9,0x61,0xD4,0x65,0x57,0xBB,0x6E,0x2D,0x8F,0xB3,0x6A,0xD4,0xA5,0x76,0xB5,0x0F,0x3D,0xDD,0x1B,0xAA,0x92,0xC8,0xF7,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spNOT[] PROGMEM ={0xAE,0xB1,0x1A,0x3E,0xC3,0x15,0x95,0x26,0x58,0x18,0xF3,0x70,0xDD,0x6A,0x57,0x3B,0x4D,0x4B,0xCE,0xAD,0x6E,0x75,0xAB,0x5B,0xDD,0x7A,0x34,0x76,0xA4,0xBA,0x07,0x93,0xDC,0x01,0x00,0x30,0xC0,0x90,0x70,0x07,0x0C,0x11,0x41,0x00,0x57,0x14,0x1F};
|
||||||
|
//const uint8_t spNOW[] PROGMEM ={0xA9,0x4D,0x9A,0xCD,0x9C,0xDB,0xD6,0xF6,0xD4,0xC9,0x77,0xAA,0x79,0x95,0x5B,0xDF,0xFA,0xD6,0xB7,0xB9,0xED,0xE8,0x9D,0xDF,0x66,0xF3,0xDA,0x7D,0x48,0x83,0x9C,0x15,0xE2,0x96,0x38,0x0E,0x69,0x50,0x65,0x83,0xDC,0x93,0xB8,0x51,0x86,0x1D,0x0C,0x73,0xEC,0x46,0xE9,0x7A,0xCD,0x58,0x96,0x19,0xB5,0xC9,0x54,0x61,0x37,0x6A,0xF0,0x3E,0xD2,0x85,0x64,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spNUMBER[] PROGMEM ={0xA9,0x0D,0x0E,0x2A,0xDD,0x12,0xA7,0xD6,0x5B,0xE8,0x70,0x8F,0xBB,0x9A,0xAC,0x2D,0xCD,0xA4,0xF5,0xA9,0xA2,0xAA,0x4A,0xE5,0xC5,0xB7,0x38,0x99,0x57,0xD3,0xA6,0xD2,0xAA,0x64,0xCA,0x57,0xB8,0x50,0xE6,0x98,0xB9,0x9C,0xA6,0xE4,0x70,0x4B,0xEB,0x2B,0x53,0xE3,0x98,0xEA,0x61,0x6E,0x5D,0x67,0x3A,0x7B,0x3A,0xB7,0xEB,0x5D,0xEF,0x7A,0x5F,0xFB,0x34,0xD8,0x4D,0x9A,0x29,0xAD,0xFD,0xE8,0x26,0xD3,0x44,0x32,0xD5,0xAB,0x9B,0x5C,0x37,0xB2,0xE6,0xAC,0x66,0x8A,0x2B,0xC4,0x44,0xED,0x3E};
|
||||||
|
//const uint8_t spO[] PROGMEM ={0xA7,0x72,0x3A,0xDF,0x95,0xF3,0xDE,0x6A,0x57,0xA3,0xB2,0x3C,0x3F,0x14,0xFD,0xCF,0xAA,0xD7,0xBD,0x49,0x9D,0xD2,0xF3,0x24,0xD4,0x2D,0xF6,0xBE,0x57,0x3D,0x8B,0x37,0xA2,0xD8,0xD8,0x0C,0xDC,0xD7,0x96,0x60,0x68,0x35,0x08,0x97,0xDB,0x28,0x92,0x45,0x2F,0x8D,0x57,0x71,0xC8,0x56,0x5D,0x4E,0xCC,0x2A,0xEE,0xE4,0x01};
|
||||||
|
//const uint8_t spOF[] PROGMEM ={0xA7,0x8A,0x36,0x3E,0xC9,0xB3,0x9E,0x2A,0xDA,0xF8,0x60,0xCF,0x72,0xAA,0xE8,0xE2,0x93,0x2D,0xCB,0xA9,0xA3,0x8F,0x37,0xD1,0x2E,0xA7,0x8E,0x2E,0xDE,0x44,0xDA,0x9C,0x26,0xDA,0x78,0x53,0x69,0xD3,0x1A,0xEF,0x6B,0xD9,0x6C,0x4D,0x6F,0x46,0xE3,0x7C,0x0D,0x99,0xAE,0x49,0x8D,0xF3,0xD9,0xAC,0xBC,0x58,0xB5,0x2A,0x87,0x8A,0x78,0x2A,0xD3,0x06,0x63,0x2A,0x62,0x4A,0x4C,0x3B,0x6D,0xB8,0xA1,0xC9,0x62,0x40,0x66,0xE6,0x04,0xF0,0x22,0x04,0x01,0xDA,0x85,0xC2,0x03};
|
||||||
|
//const uint8_t spOFF[] PROGMEM ={0x2B,0xD5,0xF5,0xC2,0xD4,0xEB,0x9E,0xCA,0x99,0x6B,0x53,0x5D,0x7A,0x2A,0x53,0x66,0x94,0x33,0xCD,0xAD,0x6E,0x75,0xAB,0xDB,0xB4,0x4E,0xFB,0x1C,0x65,0x4B,0x68,0x80,0x6A,0x33,0x3C,0x60,0x01,0x0F,0x38,0x20,0xDB,0x0C,0x03,0xE4,0x98,0xF6};
|
||||||
|
//const uint8_t spOH[] PROGMEM ={0xA7,0x72,0x3A,0xDF,0x95,0xF3,0xDE,0x6A,0x57,0xA3,0xB2,0x3C,0x3F,0x14,0xFD,0xCF,0xAA,0xD7,0xBD,0x49,0x9D,0xD2,0xF3,0x24,0xD4,0x2D,0xF6,0xBE,0x57,0x3D,0x8B,0x37,0xA2,0xD8,0xD8,0x0C,0xDC,0xD7,0x96,0x60,0x68,0x35,0x08,0x97,0xDB,0x28,0x92,0x45,0x2F,0x8D,0x57,0x71,0xC8,0x56,0x5D,0x4E,0xCC,0x2A,0xEE,0xE4,0x01};
|
||||||
|
//const uint8_t spON[] PROGMEM ={0xA7,0x36,0x7E,0xC6,0xD9,0x97,0x9E,0xC2,0xA4,0x2D,0xA5,0x4E,0x7A,0xAB,0x5B,0xED,0x6A,0x57,0xBB,0x9E,0xCD,0x68,0x75,0x4F,0x37,0x2F,0xBB,0xBD,0x2B,0x9D,0x6E,0x91,0xE6,0xE5,0xD8,0xF4,0xD2,0x49,0xB1,0x8D,0x1B,0xDB,0x99,0x4E,0x3A,0x69,0xB1,0x71,0xAC,0x3A,0x1E,0xB4,0x42,0xC7,0x76,0xE8,0x02,0x77,0x35,0xD7,0xC6,0xAE,0x0B,0x29,0x0C,0x31,0x5D,0x22,0x40,0x57,0xE2,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spONE[] PROGMEM ={0xA6,0xA5,0x36,0xDF,0x89,0xEC,0xA5,0x86,0xDB,0xF9,0x42,0x56,0x9A,0x2A,0xE1,0xFB,0x0B,0x38,0x7D,0x6F,0x46,0x63,0x7C,0x9D,0x62,0x25,0x9E,0xCD,0x28,0x5C,0xAC,0x32,0xEA,0x38,0xBB,0x1A,0x4D,0x88,0x56,0x2A,0x53,0x67,0x76,0x79,0x70,0x83,0xF3,0x94,0x6C,0xE9,0xD6,0x0C,0xCE,0x61,0x8A,0xB4,0x3B,0x36,0xCA,0x20,0x1A,0xDC,0xAD,0xCD,0x28,0x8D,0x78,0x7B,0x5B,0x26,0x93,0x10,0x6A,0x95,0x9E,0xDA,0x4C,0x25,0x85,0x9A,0x5A,0x9A,0x07};
|
||||||
|
//const uint8_t spONLY[] PROGMEM ={0x2B,0xD5,0x6E,0x2E,0xC0,0xD3,0x8E,0x42,0xA6,0x79,0xE2,0x49,0x33,0x0A,0x65,0xE7,0x49,0x35,0x59,0xCF,0x6B,0x9E,0xF3,0x52,0x44,0x07,0x19,0x2E,0xF1,0x62,0x95,0xAB,0x56,0x67,0x65,0x61,0x45,0x6E,0x76,0xB3,0xDA,0x68,0xA3,0xD4,0xB9,0xED,0x6E,0x47,0x17,0x52,0x98,0x94,0xDF,0x29,0x7D,0x6C,0x14,0x9A,0x3D,0x35,0xF5,0x31,0x42,0x46,0xA7,0x99,0xD8,0xBB,0xDE,0x59,0x8E,0x4E,0x33,0x63,0x7A,0x67,0x29,0xBA,0xCC,0xC8,0x03};
|
||||||
|
//const uint8_t spOR[] PROGMEM ={0xAD,0x12,0xB9,0x1F,0x2C,0x66,0xB7,0x8A,0xCF,0x59,0xF0,0x6E,0x3C,0x2A,0x91,0xFB,0x51,0xA3,0xD5,0xA8,0x64,0xAF,0x25,0xF5,0x2E,0xAB,0x56,0x23,0xCB,0x54,0xB3,0x9D,0x46,0x4F,0xCF,0x14,0x69,0xBB,0x3A,0x73,0xA4,0x52,0x34,0xF3,0xE8,0xCC,0x91,0x6C,0xD1,0x2C,0xAD,0xB3,0x9B,0x2A,0x9D,0x5B,0xB4,0xD6,0x4D,0x17,0x1D,0xF4,0x59,0x5A,0x37,0x44,0x3D,0xD5,0x53,0x6A,0x7C,0x70,0xE1,0x70,0x35,0xA1,0xCD,0xA9,0x1A,0x49,0xA5,0x22,0x40,0x19,0xB5,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spORDER[] PROGMEM ={0x29,0x15,0xF1,0x5B,0x98,0x56,0xD7,0x6C,0xE4,0xB2,0x8E,0xBB,0xD0,0x96,0x51,0xC8,0xA1,0x9D,0xAC,0x4D,0x4B,0xA5,0x16,0xAE,0x99,0x75,0x0A,0x8D,0x6C,0xCC,0x1E,0x91,0x76,0x54,0x2E,0xBB,0xB8,0xBB,0xF3,0x51,0xBB,0x89,0x65,0x66,0x6B,0x5A,0xED,0x06,0x9C,0x7A,0xB5,0x2A,0xAD,0x5B,0x70,0x6A,0xD5,0xB2,0x74,0x6E,0x41,0x94,0x4B,0xEF,0xD6,0xD9,0xA6,0x62,0xA7,0xEE,0x43,0x6F,0x07,0x6C,0xA9,0x27,0x74,0x03,0x2F,0xEE,0xA5,0x21,0xE7,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spOTHER[] PROGMEM ={0x2B,0x8B,0xDE,0x37,0x38,0xB2,0xDC,0xEA,0x16,0x37,0x3F,0x79,0x34,0xB6,0x2A,0xDC,0xAA,0xD7,0xA9,0x75,0xDE,0x86,0x2D,0x1B,0xCD,0xFA,0xB4,0xC1,0xEB,0x88,0x66,0xAB,0xD6,0x99,0x22,0xA9,0x6D,0x4D,0x4A,0xAF,0x1B,0x75,0x85,0xB6,0xCD,0x43,0x18,0xEC,0x84,0x4E,0x8B,0x36,0xAE,0xF7,0x1B,0x4B,0xD5,0x33,0x84,0xCE,0x17,0x51,0x77,0x4D,0x6C,0xFA,0xD0,0xDC,0x00,0x45,0xE9,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spOUT[] PROGMEM ={0xA7,0xCA,0xAE,0xDB,0x4C,0x96,0x9C,0xCA,0xFB,0x69,0xD3,0xA8,0x7B,0xAB,0x5B,0xAD,0xDA,0x84,0x1D,0x91,0xA8,0xDB,0x6A,0x6B,0xE6,0x59,0x6D,0x8E,0x6B,0x45,0x6F,0x97,0x0E,0xCB,0x00,0x00,0x0A,0xC8,0xDA,0x43,0x00,0x47,0xBB,0x31,0xC0,0x9B,0x30,0x04,0x18,0x17,0x02,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spOVER[] PROGMEM ={0xA7,0xD0,0xAE,0x2F,0x50,0xBA,0x9D,0x5C,0xDB,0xFA,0x24,0xCE,0x3A,0x72,0x19,0xFA,0x15,0x25,0x73,0xCB,0x45,0xAE,0x67,0xB4,0x2E,0xAD,0x10,0xB1,0x4E,0xC1,0x3D,0xB7,0x3A,0x1A,0x57,0x95,0x70,0xD4,0x9A,0x6C,0x4C,0x85,0xCD,0x4D,0xAF,0x5A,0xA5,0x7D,0x9A,0x9B,0xBB,0x1B,0x8D,0x69,0x66,0xE9,0xDC,0xAD,0xB5,0xA6,0x84,0xD8,0xA8,0xB6,0xD4,0xE9,0x2E,0x56,0x23,0x7E,0x42,0xAF,0xBB,0xC8,0x94,0x78,0x76,0xBD,0x99,0x2C,0x59,0xEC,0xCB,0xF5,0xB2,0x98,0x64,0xA6,0xE4,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spP[] PROGMEM ={0x60,0x00,0xEB,0x4C,0x05,0xE0,0xAC,0xE0,0x49,0x72,0x14,0xD1,0xCC,0xB9,0x27,0x9D,0x45,0x99,0x3C,0x9F,0xEE,0x6C,0x17,0xB3,0x6E,0x4D,0x8F,0xCC,0x5C,0x75,0x27,0x75,0xC5,0xA0,0xFA,0x64,0x15,0xD7,0x3B,0x41,0xDD,0x19,0x76,0x4C,0x1F,0x15,0x44,0x77,0x88,0x31,0x83,0x57,0x64,0x1D,0x66,0xFB,0x01};
|
||||||
|
//const uint8_t spPART[] PROGMEM ={0x20,0x01,0x09,0x48,0xA0,0x25,0xBA,0x56,0x3B,0x79,0xDC,0x93,0x9B,0xD2,0x19,0x22,0x4B,0x4F,0x61,0x7B,0x45,0x1A,0x37,0x3D,0x95,0x9B,0xE1,0xE5,0xD4,0x78,0x34,0xEE,0x68,0x94,0xC8,0xEC,0xD6,0xF9,0x43,0x6B,0xD2,0x91,0x4B,0xEF,0x17,0x76,0x4A,0x26,0x48,0xBD,0x6F,0xAC,0xAE,0xAD,0x12,0x00,0x1C,0x50,0xB5,0xBB,0x00,0xA2,0x75,0x85,0x07};
|
||||||
|
//const uint8_t spPARTNER[] PROGMEM ={0x0A,0x10,0x39,0x92,0x03,0x16,0x68,0xB1,0x49,0xEB,0x51,0xD8,0x65,0xA4,0x2E,0xAE,0xDB,0x60,0xB6,0x95,0xB9,0xD2,0x6A,0x4B,0xFE,0x56,0x16,0x72,0x1B,0x9D,0x78,0x6F,0xB9,0x5F,0xA2,0x61,0xE6,0x07,0x00,0xC0,0x14,0xD6,0x61,0x07,0x9F,0xC2,0xD2,0x85,0x19,0xA2,0x89,0xC9,0x67,0x3F,0x87,0x32,0xBA,0x61,0x6A,0x4D,0x6D,0xC3,0xE8,0x0F,0x45,0x38,0x2F,0x4C,0x53,0x98,0xA4,0x19,0xEA,0xC9,0xCD,0xE1,0x30,0xBB,0x59,0xE2,0x07};
|
||||||
|
//const uint8_t spPARTS[] PROGMEM ={0x0A,0x70,0xC6,0x8D,0x02,0x1C,0x68,0x89,0x2E,0xDD,0x41,0x5A,0x7B,0x65,0x26,0x4D,0x86,0xF1,0x9A,0x91,0x9B,0xBA,0xEE,0x49,0x6B,0x5A,0x61,0x5B,0x6B,0x0C,0x6C,0x99,0x75,0x69,0xEC,0x08,0xF6,0x67,0xEF,0xAE,0x75,0x8B,0xB4,0x53,0x32,0xB1,0x4E,0x46,0x65,0x8B,0x92,0x83,0xFC,0xA0,0x83,0x5D,0xC3,0x31,0x30,0xE0,0x65,0x75,0x0D,0x58,0xC0,0x00,0xBF,0x86,0x5B,0x40,0x00,0xBF,0x9A,0x33,0xE0,0x28,0xF5,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spPERIOD[] PROGMEM ={0x06,0x08,0xDE,0x44,0x03,0x23,0xCE,0xCE,0x94,0x23,0x5B,0x8F,0x34,0x84,0x10,0x59,0xCF,0xBA,0xD3,0x91,0xBA,0x14,0xA2,0xCB,0xFE,0x67,0xDE,0x0A,0x57,0x5C,0xB4,0xD9,0xDF,0xA8,0x42,0x77,0xD1,0x10,0xFF,0xA3,0x8A,0x39,0x94,0x3C,0xBA,0x8E,0xA6,0xC4,0x10,0x36,0xFB,0x3C,0xDB,0xD5,0xE6,0x9C,0xCA,0xA6,0x6F,0x76,0x37,0xFB,0xD6,0x07,0xEF,0xA6,0xE1,0x9B,0xCD,0x60,0x9C,0xA9,0x86,0xB5,0x62,0x3D,0xB6,0x1D,0x11,0xA1,0x98,0xF5,0x44,0x57,0xA4,0xA5,0x62,0xD3,0x67,0x61,0xA2,0x66,0x4E,0x09,0x60,0x64,0xD9,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spPLAY[] PROGMEM ={0x06,0xC8,0x55,0x54,0x01,0x49,0x69,0x94,0xC4,0xA4,0x1C,0xE3,0x8A,0xD3,0x93,0x19,0xAF,0x24,0xE4,0x68,0xE1,0x4D,0xBC,0x92,0x58,0x22,0x95,0x27,0xF1,0x4A,0x53,0xF5,0x10,0x99,0x26,0xB3,0x68,0x75,0x29,0x12,0xE2,0x53,0xBB,0x74,0x31,0x52,0x64,0x4F,0xD8,0xDA,0xA7,0x3E,0x3A,0xF6,0xAC,0x2C,0x13,0xFA,0xA0,0x39,0xBA,0x33,0x88,0xEB,0x8D,0x92,0xB9,0x70,0xA1,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spPLAYS[] PROGMEM ={0x0A,0x68,0x51,0x4D,0x00,0x49,0x7A,0x97,0x48,0xD9,0x69,0x15,0xF7,0xB4,0x92,0x10,0xA2,0x9C,0xAB,0xF1,0x4E,0x56,0x12,0x4A,0xA4,0xF0,0xD4,0xD9,0xC9,0x48,0x53,0x51,0x53,0x9D,0xBA,0xA3,0xC8,0x45,0x4C,0xAD,0x9B,0x8C,0xBA,0x96,0x20,0x36,0x7F,0x3A,0xDB,0xDA,0xA5,0x3E,0x25,0x74,0xCB,0xA9,0x5D,0xFB,0xDA,0xA7,0x3E,0x24,0x76,0xF5,0x99,0x9B,0x7A,0x97,0xC5,0x24,0xAA,0x4E,0xE9,0x93,0x0A,0x31,0x8D,0x4E,0x69,0xFC,0x29,0x4D,0x48,0x94,0x1A,0x60,0x09,0x33,0x06,0x5C,0xA6,0xE2,0x80,0x6B,0x4C,0x04,0xD0,0x84,0xE9,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spPLEASE[] PROGMEM ={0x0E,0xC8,0x81,0xD4,0x01,0x59,0x9B,0x8F,0xB0,0x48,0x69,0x57,0x73,0x3B,0xD2,0x24,0x2D,0x3D,0x24,0xCD,0x4A,0xBD,0x33,0x8F,0xF0,0xC7,0x3B,0x6B,0x79,0x4D,0x86,0x9C,0xFE,0x64,0x56,0xA3,0xAA,0x59,0x89,0x3D,0xBE,0xCC,0xA6,0xB7,0xA5,0xCF,0x9D,0x85,0xA5,0xDE,0xE6,0x3E,0xF5,0x29,0xB1,0x98,0xC5,0xE3,0xD2,0x07,0x13,0x10,0x56,0x1D,0xCB,0xF0,0x35,0x87,0x51,0xAE,0x75,0xC0,0x04,0xAC,0x06,0xF8,0x46,0xCD,0x00,0x3F,0x1A,0x19,0xE0,0x7B,0x0B,0x01,0x7C,0xA7,0xF6};
|
||||||
|
//const uint8_t spPOINT[] PROGMEM ={0x0A,0xB0,0x5A,0x8B,0x00,0x5A,0x47,0x23,0x40,0x99,0x29,0x91,0x7A,0xE9,0xD3,0x12,0x8C,0x4A,0x22,0x7D,0xBF,0x82,0xB6,0x19,0xA9,0xD1,0xFD,0x86,0x92,0x66,0xE5,0x41,0xD6,0xAB,0x58,0xB6,0x53,0x25,0xDD,0x2B,0xC6,0x59,0x4E,0x93,0x7D,0x87,0x1A,0xB5,0x3E,0x7D,0xCE,0x65,0xAA,0xBC,0xBA,0x0D,0x29,0x99,0x5A,0xC4,0xCC,0x32,0xE6,0x10,0x2C,0x6A,0x4D,0xDC,0x94,0x99,0x98,0x84,0x39,0x43,0x80,0x45,0x1C,0x08,0xC8,0x98,0x3A,0x00,0x49,0xA6,0x79,0x40,0x00,0x22,0x84,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spPOSITION[] PROGMEM ={0x06,0x70,0x2E,0x58,0x03,0xAE,0x8A,0xA1,0x42,0x49,0x3C,0xAD,0xC2,0xC5,0x48,0xD6,0x58,0x72,0xAA,0x60,0x23,0x55,0x65,0xCD,0xAE,0x77,0xE3,0x80,0x0A,0x28,0x23,0x30,0xAA,0x68,0xD3,0x58,0x6D,0xF6,0x2E,0x6E,0xBA,0x92,0x98,0xDD,0x99,0x7B,0x76,0x4F,0x14,0x70,0x66,0xA6,0x07,0x3C,0x20,0x00,0xEE,0x3D,0x56,0x51,0x5D,0x35,0x2B,0xA5,0xBB,0xCD,0xED,0xDA,0x90,0x12,0xA5,0xA0,0xA6,0xCF,0x63,0x1A,0x83,0xA7,0x30,0x36,0xEF,0x61,0x54,0x5E,0xCD,0xB8,0x9A,0xBA,0xD1,0x18,0xF1,0xE0,0x4A,0x6E,0x26,0x63,0xD9,0x5C,0x32,0x8D,0x9A,0x9C,0x15,0x53,0x6E,0xD7,0x0F};
|
||||||
|
//const uint8_t spPOSITIVE[] PROGMEM ={0x02,0x90,0xC6,0x9D,0x03,0x08,0x10,0x26,0x73,0xC4,0xBA,0x77,0x9A,0x66,0x94,0x95,0xD9,0x3C,0xA3,0x92,0xB5,0x77,0xB6,0xB3,0x95,0x7B,0x57,0xE5,0xEA,0x71,0x5A,0x6E,0x63,0xA9,0xBB,0x57,0x49,0xD5,0x17,0xAC,0x61,0xE9,0x38,0x74,0xBF,0x85,0x1A,0x88,0xDC,0xD0,0x59,0x1F,0xEE,0xEE,0x2D,0x6B,0x95,0x6A,0x6F,0xC2,0xD4,0xAD,0xA7,0xE8,0x94,0x4C,0x76,0x8B,0x56,0xA4,0xF3,0xD2,0x35,0xD4,0x15,0x33,0x20,0x01,0x0D,0x57,0x9B,0xCC,0x15,0x39,0x91,0x63,0x13,0x7B,0x33,0x48,0x97,0x19,0x23,0x35,0xC4,0x20,0x7C,0x44,0xBA,0xC5,0x14,0xA3,0xD6,0xEE,0x1E,0xEE,0x58,0x8C,0xC1,0xB8,0x9A,0xA8,0x6A,0x40,0x80,0xD7,0xCE,0xAA,0x6B,0xA9,0x2D,0x48,0xD5,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spPRESS[] PROGMEM ={0x04,0xC0,0x36,0x4C,0x01,0x2E,0xA9,0x2B,0xC0,0x36,0xAF,0x16,0xB9,0x22,0xE5,0x96,0xC9,0x6E,0x7A,0x32,0xDF,0x2D,0x2C,0x32,0xCE,0xCE,0x77,0x35,0xDB,0xD4,0x9B,0xE4,0xE5,0xBA,0xB6,0xEC,0xA8,0x80,0xEF,0x45,0x34,0x60,0x01,0x03,0xFC,0x28,0x6A,0x80,0x1F,0x4D,0x15,0xF0,0x15,0x99,0x04,0x38,0x00,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spPRINT[] PROGMEM ={0x0A,0x30,0xC5,0x43,0x02,0x18,0x68,0x91,0x5F,0x52,0x52,0xD0,0x76,0x45,0xB1,0xB8,0x6A,0xC4,0xAC,0x1D,0xED,0x78,0xE7,0xAB,0x4E,0x29,0x55,0xDD,0x56,0xB5,0x2E,0x34,0x4B,0x91,0x6C,0x14,0x86,0x2C,0x44,0xB5,0xCC,0x9D,0x1A,0x93,0x76,0x73,0x77,0xC5,0x00,0x0A,0x28,0xDA,0x42,0x00,0x76,0x44,0x10,0x40,0x86,0xB0,0x07};
|
||||||
|
//const uint8_t spPRINTER[] PROGMEM ={0x0A,0x30,0xC5,0x43,0x03,0x1A,0x28,0xB1,0x5F,0x52,0x52,0xD0,0xF6,0xC4,0xB1,0xB8,0x6A,0xC4,0xAC,0x1B,0xDF,0x24,0xE6,0xA5,0x2A,0x8E,0xD5,0xCC,0x9D,0x18,0x40,0x24,0xAB,0x93,0xC7,0x64,0xCE,0x65,0x4D,0x6F,0xBD,0xDA,0x30,0x4D,0xA5,0xA4,0x7D,0xEB,0x5D,0x33,0xD1,0xD3,0xF6,0x69,0x70,0x83,0x34,0x5B,0xD6,0xB8,0xD1,0x54,0x51,0x1B,0x97,0xE5,0xA6,0x50,0x8D,0xC9,0xD5,0x8B,0x99,0xC2,0x51,0x51,0x91,0xCC,0xF0};
|
||||||
|
//const uint8_t spPROBLEM[] PROGMEM ={0x0C,0xC0,0x36,0x4C,0x01,0x2E,0xA9,0x0B,0xC0,0x36,0x2F,0x02,0xB8,0x0E,0xB1,0x62,0x1B,0x3B,0x22,0x28,0xDD,0x4D,0x4E,0xEA,0xFD,0x54,0x70,0xB8,0xB9,0xE9,0xCD,0x56,0x66,0x63,0x55,0xB0,0x35,0x31,0x15,0xF7,0xD6,0x2A,0xEA,0x59,0xD4,0x38,0x66,0x19,0xB7,0x1D,0xD7,0x08,0xE3,0xE1,0x1E,0x4A,0x5B,0xE5,0x9D,0x8C,0xB3,0xD9,0x1F,0x75,0x34,0x39,0x29,0x94,0xFE,0x36,0xB7,0xDD,0xDD,0xE8,0x7C,0xA8,0x0A,0x81,0xA6,0x61,0x88,0x0E,0x5B,0x54,0xD5,0xC6,0x3E,0xF6,0x7E,0x70,0x83,0x77,0x34,0x22,0xAA,0xC5,0x0C,0xDA,0x6A,0x09,0xA7,0x9A,0x07};
|
||||||
|
//const uint8_t spPROBLEMS[] PROGMEM ={0x0C,0xB0,0xCD,0x8B,0x00,0xAE,0x43,0x9C,0xD8,0xC6,0x8E,0x08,0x4A,0x77,0x52,0xEF,0xA6,0xDD,0xA4,0xED,0xC9,0xBC,0x9F,0x76,0x95,0x25,0x27,0xF3,0xA1,0x26,0xD8,0x96,0x9E,0xCC,0xC6,0xEE,0x20,0x5F,0xB2,0x72,0xE3,0xA6,0x92,0xB5,0xAD,0xAA,0x70,0x2A,0x0F,0x76,0xD7,0xA2,0x46,0xB1,0x3D,0x38,0x9C,0x94,0xCA,0x59,0x8D,0x88,0x92,0x5A,0x9A,0xA8,0xB8,0x5A,0xD8,0xDD,0x6A,0x83,0xF6,0x4E,0x15,0xA5,0xAB,0x75,0xB6,0xC6,0x45,0xB2,0x8C,0xDE,0x84,0x2E,0x55,0xCD,0x9A,0x7A,0x67,0xB3,0x4C,0xA1,0xAD,0x1B,0x82,0x83,0x31,0x53,0xAD,0x6E,0x08,0x0E,0xC6,0x35,0xB8,0xBA,0xC1,0x5B,0xE8,0x96,0x60,0x16,0x86,0x22,0x38,0x5D,0x4D,0x2D,0x01,0x3C,0x90,0x12,0xC0,0x57,0xC0,0x0A,0xF8,0x9E,0x59,0x00,0x97,0x83,0x09,0x60,0x11,0x71,0x01,0x24,0x6A,0xF9};
|
||||||
|
//const uint8_t spPROGRAM[] PROGMEM ={0x0A,0x30,0x3E,0x55,0x00,0xAE,0x43,0xB8,0x3C,0xB5,0x54,0x77,0x95,0x7B,0x52,0x67,0x62,0x3C,0xA8,0xCD,0x4D,0x4F,0xEA,0x94,0x9F,0x3B,0xA7,0xDF,0x69,0xC9,0x8C,0xC9,0x11,0xA1,0xF4,0x26,0xE3,0xA9,0x92,0xC4,0xBC,0x8A,0x8A,0xDB,0x8C,0x10,0x73,0xE2,0x2A,0x9D,0xA4,0x83,0xCC,0x49,0xAA,0x4C,0xC5,0x55,0x8F,0x74,0xAB,0x0A,0x93,0x9A,0x43,0xDB,0x9F,0x3A,0x2C,0x4D,0x97,0x68,0x72,0x9B,0xDB,0xDE,0x76,0x77,0xA7,0x0B,0x39,0x32,0x54,0xE7,0xEE,0x7E,0xF4,0x21,0x7A,0xA4,0x72,0x9D,0x30,0x3A,0xCF,0xAD,0x18,0x69,0xDD,0x60,0x1C,0xA7,0x8A,0x66,0x55,0x83,0xF4,0x9A,0xCA,0x99,0x45,0x8D,0x5A,0x4B,0xA6,0x64,0x12,0x35,0x3A,0xAD,0xE6,0x54,0x4E,0xC4,0xE4,0xB5,0x69,0xB0,0xB9,0x05,0x52,0x45,0x1F,0xEE,0xEC,0xAE,0x1F};
|
||||||
|
//const uint8_t spPUT[] PROGMEM ={0x0A,0x30,0x3E,0x55,0x02,0x1C,0x20,0x80,0x0A,0x65,0x27,0xF2,0x3A,0xB2,0xC4,0x96,0xDD,0x74,0x65,0x26,0x94,0xB9,0xF5,0x9C,0x55,0x58,0x1F,0xEE,0xDA,0x6D,0x4A,0x65,0xBD,0x87,0x7A,0x6D,0x04,0x00,0x07,0x0C,0xE3,0x61,0x80,0x69,0xC2,0x18,0x10,0x5C,0x32,0xC0,0x03};
|
||||||
|
//const uint8_t spPUTTING[] PROGMEM ={0x06,0xB0,0xCE,0xCC,0x02,0x1A,0x30,0x91,0x8F,0x5D,0xCE,0x6C,0x67,0x25,0x3A,0x56,0x18,0x67,0xE7,0x93,0x18,0x17,0x19,0x96,0x99,0x4F,0x1A,0x5C,0x58,0x50,0x77,0x12,0x00,0x95,0xDD,0x0A,0x20,0xC1,0x7C,0x44,0x31,0x38,0xA9,0x79,0xA3,0x53,0xE7,0x1E,0xAC,0xE6,0x4B,0x56,0x53,0x5B,0x31,0xBB,0xAE,0x6E,0x5D,0x9D,0x81,0x1C,0xBE,0x30,0xF4,0x29,0x33,0xE4,0x58,0x44,0xD3,0x3B,0x23,0x78,0x49,0x51,0x44,0x2F,0x8D,0xD4,0x8A,0x2A,0x12,0xBD,0xD0,0x1E,0xA3,0x6A,0x49,0xF4,0x46,0xB2,0xB6,0xB9,0x63,0xD1,0x7B,0x23,0x92,0x6A,0x8E,0x59,0x17,0xB4,0x4A,0xAA,0x38,0x02,0x40,0x51,0x52,0xE1,0x69,0xE9,0xF8,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spQ[] PROGMEM ={0x0E,0xB0,0xD1,0x38,0x02,0x06,0x80,0xBE,0xDD,0x01,0xCC,0x58,0x6B,0x60,0x45,0x25,0x2A,0x53,0xF8,0x9A,0x13,0x15,0xEF,0x0C,0xED,0x5D,0x6E,0xB4,0xE2,0xEC,0x9D,0xA9,0x74,0xCF,0x4A,0x93,0x71,0xA5,0x92,0xBD,0x33,0x1F,0x55,0xE0,0x9E,0x5C,0xDA,0xB5,0xD7,0xA9,0xE3,0xA1,0xDC,0x42,0x17,0xC5,0xCE,0x75,0x2C,0xB6,0x87,0xE9,0x02,0xD3,0x09,0xDB,0x6E,0x46,0x33,0x55,0xAB,0xAC,0xF4,0x90,0xC6,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spR[] PROGMEM ={0xA7,0x70,0xB1,0xCE,0x29,0xD2,0xDD,0xFC,0xE6,0x37,0xBF,0xC5,0xA9,0x7C,0xC8,0x4E,0x95,0xE6,0xB7,0x3A,0x8D,0xAF,0x1E,0x19,0x9C,0xFC,0x76,0xAD,0xB3,0x43,0x32,0xDD,0xEA,0xE4,0xCE,0xF5,0xBE,0x2A,0x6B,0x73,0x22,0xD3,0xC5,0xE9,0x2C,0xCA,0xAE,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spRANDOMLY[] PROGMEM ={0xAA,0xA5,0x35,0xCD,0xAD,0x9C,0x84,0x56,0x0C,0xEE,0x2C,0xD3,0xBC,0x1A,0x97,0xA5,0xAD,0xAC,0xF9,0xA9,0x62,0xB4,0x48,0x8B,0x36,0xA7,0x4A,0xC5,0xD2,0x65,0x93,0x9C,0x3C,0x35,0x4B,0x93,0x71,0x72,0xF2,0xD4,0x3C,0x4D,0xDA,0xC9,0xC9,0x63,0xF1,0x30,0x69,0x27,0x2B,0x0F,0xD1,0x2D,0xB8,0x92,0xA4,0x3C,0x7A,0x18,0xF3,0xD2,0x14,0x0A,0x6B,0x68,0x5D,0x5B,0xB5,0xAB,0x8C,0xE2,0x5C,0x95,0x5A,0xA9,0x89,0x54,0xD5,0x43,0x93,0x8E,0xC2,0x1B,0x8F,0x52,0x6B,0x33,0x2A,0x6B,0xA3,0xC2,0x65,0x49,0xA9,0x8D,0xD7,0x09,0x95,0xB9,0xA1,0x31,0x0E,0xCF,0xD4,0x9C,0x87,0xC6,0x3B,0xB8,0x50,0x75,0x9E,0x5A,0xEB,0x70,0x4D,0xDC,0x5E,0xE9,0x9C,0xB6,0x8A,0xC0,0xE6,0xA5,0xB3,0x22,0x47,0x83,0xDB,0x8D,0xD6,0x05,0xAB,0x34,0x5F,0xB6,0xBA,0x10,0x35,0x22,0x62,0xC9,0xE8,0x73,0x22,0x8F,0xCE,0xC6,0xA5,0xCF,0x05,0xDD,0xA7,0x4B,0x85,0x3E,0x26,0xC8,0x9C,0x0E,0x64,0x7A,0x6F,0xB1,0x3B,0x43,0x90,0xEA,0x53,0x04,0x8B,0x2A,0xD3,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spREAD[] PROGMEM ={0xA1,0x13,0x31,0x5C,0x3C,0x95,0x95,0x4E,0x56,0x33,0x75,0x93,0xDF,0x1A,0x3D,0xC4,0xC5,0x45,0xFD,0xAA,0x5D,0x67,0xE7,0xB0,0x6C,0xA7,0x0A,0x9E,0x53,0xD3,0x97,0x9C,0xBC,0x28,0x15,0x9D,0x6A,0xB4,0xB2,0x2A,0x59,0x7D,0xAB,0xE6,0xCA,0x9B,0x11,0x96,0xE9,0x85,0xAB,0xE8,0xD9,0x18,0x22,0xDF,0xDC,0xEA,0x56,0xB7,0x59,0x4D,0xAB,0x21,0xA0,0xFA,0x35,0x74,0x4A,0xA8,0xA7,0x56,0x6C,0xDF,0x99,0x8E,0x4B,0xCB,0xB0,0x8A,0x9D,0xFA,0x6A,0x43,0x18,0x25,0x65,0xED,0x5D,0x9F,0xB2,0xA9,0x90,0xC7,0xCE,0xD3,0x03};
|
||||||
|
//const uint8_t spREAD1[] PROGMEM ={0xA6,0xE5,0x4D,0xDD,0x33,0xE4,0x87,0xC6,0x0C,0x0C,0x4B,0xD3,0x3E,0x2A,0x3F,0x39,0xC5,0x2D,0xEF,0xA9,0x52,0x77,0x17,0xED,0x36,0x37,0xBF,0xF9,0x29,0x52,0xF7,0x10,0xA9,0xD6,0xB7,0xDA,0xF5,0x6E,0x67,0xE7,0x06,0xEB,0x55,0xC5,0xBC,0x91,0x1D,0xEC,0x40,0x02,0xA2,0x32,0xD3,0xD2,0x56,0x18,0x4A,0x6C,0x13,0x51,0xC7,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spREADY_TO_START[] PROGMEM ={0xAE,0x91,0x85,0xD3,0x32,0xB8,0xB5,0xC6,0x35,0x4E,0x09,0xCA,0x7E,0x6A,0xDF,0xB9,0xCC,0xB4,0xFB,0xA9,0xE2,0xD4,0x30,0xD5,0xEE,0xB7,0x5A,0x55,0xEA,0x5A,0x10,0x99,0xA5,0x55,0x31,0x1B,0x1B,0x4E,0xA6,0x55,0xE5,0xAE,0xCA,0xD2,0x9D,0x5A,0x55,0xA6,0x08,0x49,0x2D,0x8D,0xB5,0x6C,0x11,0xB0,0x54,0x9A,0x06,0x0C,0xB0,0x8C,0x45,0x29,0xBC,0x4A,0x53,0xCB,0x4E,0xA5,0xA9,0xC2,0x4C,0xD5,0xF2,0x1A,0xA0,0x03,0x35,0x05,0xFC,0xA9,0x6C,0x01,0x05,0xFC,0x1D,0x0C,0x10,0x80,0xA6,0xD2,0x4F,0x1E,0x43,0x44,0x86,0xB4,0xBD,0xC5,0xAD,0x4E,0xE5,0x8B,0x77,0x18,0x37,0x59,0x85,0x9F,0xE6,0xA5,0xBA,0x78,0x67,0x33,0x6D,0x91,0x9F,0x22,0x1D,0xE6,0xD0,0x45,0xDA,0x49,0x46,0xB8,0x2C,0x00,0x03,0x64,0x19,0xCA,0x80,0x26,0x9B,0x11,0xE0,0x12,0x33,0x00,0xC0,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spRECORDER[] PROGMEM ={0xA4,0x72,0x3A,0x44,0xC5,0xE4,0xA4,0x4A,0x57,0x4E,0x2B,0xF7,0x76,0x9A,0x34,0xAC,0x48,0xC5,0xF9,0xA9,0x4B,0x89,0x64,0xC7,0xEE,0xB7,0x5E,0x75,0xAB,0x1D,0x10,0xE2,0x9E,0xB4,0x59,0x84,0xB1,0x84,0x5B,0x40,0x80,0x67,0xE5,0x0C,0xD0,0xB3,0x09,0x54,0x2A,0xD2,0x96,0x13,0x77,0xAF,0x69,0x4D,0x4B,0x26,0x53,0x77,0x0A,0xF9,0x6F,0x99,0x8E,0x5E,0x99,0x90,0xB5,0x64,0xB6,0x71,0xA5,0x63,0x93,0x50,0xD8,0xCB,0xEE,0x22,0xEA,0x4C,0xE3,0x97,0x98,0x25,0xB7,0xCB,0x4D,0x6F,0x5A,0xE7,0xB7,0xAA,0x27,0xB7,0x2B,0xBD,0x5B,0xCA,0x51,0xDC,0x2D,0x0D,0x6E,0x2B,0x47,0x49,0x7E,0x33,0xF9,0x8B,0x9A,0xCA,0xAD,0xCC,0x6C,0x87,0x50,0x98,0xBB,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spRED[] PROGMEM ={0xA6,0xE5,0x4D,0xDD,0x33,0xE4,0x87,0xC6,0x0C,0x0C,0x4B,0xD3,0x3E,0x2A,0x3F,0x39,0xC5,0x2D,0xEF,0xA9,0x52,0x77,0x17,0xED,0x36,0x37,0xBF,0xF9,0x29,0x52,0xF7,0x10,0xA9,0xD6,0xB7,0xDA,0xF5,0x6E,0x67,0xE7,0x06,0xEB,0x55,0xC5,0xBC,0x91,0x1D,0xEC,0x40,0x02,0xA2,0x32,0xD3,0xD2,0x56,0x18,0x4A,0x6C,0x13,0x51,0xC7,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spREFER[] PROGMEM ={0xA1,0xB6,0x03,0x53,0x4B,0xFC,0x9C,0x2A,0x56,0x2D,0x0E,0xCE,0x37,0x2A,0x1B,0x75,0x34,0xAA,0x71,0xA9,0xB4,0xF5,0x09,0x4B,0x07,0x02,0xF0,0x5A,0x84,0x01,0xD5,0x86,0x52,0x40,0x03,0x02,0x88,0x21,0xB5,0x44,0xB6,0xA9,0x55,0x63,0xE7,0x99,0xF6,0xB4,0x67,0x3D,0xEF,0x55,0xAF,0x5B,0xEB,0x26,0x47,0x26,0x7F,0xA9,0x7D,0x1D,0xD2,0x68,0xBB,0xA9,0x1F,0x77,0x73,0xA3,0xED,0xD4,0x19,0x96,0x2A,0x8C,0x6E,0x50,0xA6,0x59,0x23,0x33,0xB9,0x46,0x91,0x6A,0x89,0xD8,0x28,0x83,0x4A,0x68,0xA4,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spREMEMBER[] PROGMEM ={0x22,0x34,0xD2,0x2D,0xC4,0x9D,0x84,0xDA,0x2E,0x48,0x73,0xF7,0xB7,0xAA,0x54,0xB4,0xC8,0xA5,0xDB,0xAD,0x4E,0x15,0xA3,0xA7,0x53,0xB6,0x29,0xB5,0x0D,0x54,0xCA,0xED,0xD6,0xD7,0xB1,0x4A,0x55,0x4C,0x91,0x81,0xD5,0xE4,0xE6,0x37,0xDB,0x69,0xC9,0xBD,0x73,0x0B,0xE1,0xBA,0x3E,0x8F,0x95,0xA8,0x59,0x50,0x2F,0xB5,0x2C,0xA6,0xB7,0x55,0xCD,0x8A,0xB3,0xD4,0xAA,0xB5,0xA1,0x9B,0xE9,0x60,0xF6,0x34,0xB8,0x85,0xE5,0xC1,0x6F,0xD3,0x68,0x3A,0x45,0x97,0x66,0x89,0x93,0x99,0x6D,0x63,0xCB,0x96,0xAC,0x66,0x31,0x45,0x6D,0xC2,0x6D,0xAB,0xC9,0x4F,0x36,0x33,0x77,0x0B,0x00,0xF0};
|
||||||
|
//const uint8_t spRETURN[] PROGMEM ={0x00,0x60,0x12,0x15,0xC9,0x27,0x9C,0xF1,0xA8,0xBC,0x93,0xD4,0xD2,0x65,0xAB,0x4A,0x51,0x43,0x25,0x7B,0xDF,0x6A,0x54,0x3E,0x98,0x99,0x76,0x2B,0xD3,0x19,0x19,0x91,0x1A,0x4E,0x00,0x12,0xD0,0x4C,0xB8,0x07,0x14,0xE0,0x9D,0x19,0x02,0x78,0xB5,0x5C,0x91,0x4F,0x2E,0x95,0xEA,0x7A,0x27,0x2B,0x0D,0xA5,0xC9,0x8B,0x3C,0xEF,0x74,0x67,0x23,0x0F,0xDB,0x38,0x55,0x32,0xCF,0x6A,0xD4,0x61,0x3A,0x87,0x8B,0xAF,0xD6,0x84,0x6B,0x66,0x4E,0x9D,0x4A,0x1B,0x0F,0xBB,0x86,0xA4,0x09,0x5D,0x58,0x90,0x66,0xE5,0xCA,0x75,0x2C,0x58,0x9B,0xB4,0x69,0xDF,0xF9,0xEE,0x01};
|
||||||
|
//const uint8_t spREWIND[] PROGMEM ={0x62,0xE4,0xC5,0xB4,0x42,0x95,0x86,0x36,0x5C,0x0E,0x68,0xCE,0xBA,0x9A,0x32,0x3C,0x49,0xA9,0xFD,0x6D,0x4E,0x53,0x46,0x1A,0x18,0x77,0x5F,0x4D,0xC9,0x2E,0x98,0x92,0xBD,0x34,0x41,0xA9,0xDB,0x89,0x7B,0xD3,0xD2,0xD8,0x69,0x22,0x49,0x6D,0x13,0x1A,0xEE,0x6B,0x4D,0xD8,0x4D,0xAB,0x9D,0x89,0x0F,0xA1,0x2C,0xBB,0x5A,0x95,0x77,0x3D,0x89,0x91,0x64,0x57,0xBB,0x5A,0x55,0x8C,0x99,0x41,0x65,0xE7,0x56,0xAB,0x4E,0x23,0x5A,0xB8,0xDC,0xEC,0x66,0xB5,0x79,0xBB,0x33,0x57,0x93,0xDD,0xCE,0xAE,0x75,0xF9,0x98,0xB3,0x54,0x13,0xD7,0x6B,0x47,0x15,0x96,0x76,0x6C,0xA7,0x3B,0xD1,0x71,0x2F,0x9D,0x96,0x96,0x59,0x4F,0x4D,0x66,0x46,0xD8,0x0C,0xC3,0xD0,0xA3,0xAA,0xE5,0x1A,0x01,0x5E,0xB6,0x60,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spRIGHT[] PROGMEM ={0xA2,0x65,0x21,0xDD,0x39,0x1C,0x8B,0x9A,0x8E,0x90,0xB0,0x74,0xAC,0x6A,0x3A,0x5C,0xA2,0x43,0x89,0x69,0xF8,0x52,0x8E,0x31,0x27,0xA9,0xD1,0x07,0xB3,0x54,0xDC,0xAF,0xDA,0xC4,0x1A,0x67,0x9D,0x77,0xEB,0x53,0x85,0x9C,0xE9,0xDC,0x71,0x6E,0x75,0xAA,0x58,0x33,0x4D,0x3A,0xEE,0xA9,0xD3,0xF0,0x64,0xCF,0xBA,0xA7,0xC9,0x45,0xC4,0xA2,0x2A,0xCD,0x2E,0xF5,0x29,0xB3,0x44,0x57,0x61,0x33,0x18,0x69,0x92,0xE9,0x16,0x00,0x40,0x01,0x5D,0x79,0x3C};
|
||||||
|
//const uint8_t spROUND[] PROGMEM ={0xAA,0xA2,0xA5,0x4D,0xBD,0x64,0x85,0x5A,0x0D,0x0E,0x2F,0x63,0x3F,0x2A,0x9B,0xB5,0xAD,0xF8,0xFA,0xA9,0x42,0xF0,0x72,0xB5,0xDC,0xA7,0x0A,0x29,0xD2,0xA9,0x1B,0x9F,0x2A,0xE6,0x28,0xA7,0x8E,0x73,0xAA,0x90,0xA3,0x9C,0x36,0xF6,0xA9,0x42,0xCA,0x08,0x6A,0xC7,0xA7,0xF6,0x31,0x2B,0xB0,0xA2,0xAC,0xDA,0xC5,0xAA,0xC0,0x8C,0x33,0x1A,0x93,0x27,0x9C,0x2A,0xCA,0x6A,0x6D,0x98,0x74,0xF4,0x2A,0xA3,0x35,0x61,0xC2,0x28,0x6A,0xB7,0x4E,0xFB,0x49,0xA3,0xA8,0xDD,0x3A,0xA3,0x27,0x94,0x23,0x76,0xEA,0xA5,0x49,0x33,0x73,0xDB,0xA9,0xD7,0x4E,0xDD,0xD5,0xE2,0xA6,0xDE,0x38,0xCE,0x30,0x8B,0x93,0x7A,0x65,0xB9,0x92,0x23,0x71,0xE8,0xB9,0xD5,0x2A,0xB6,0x84,0x6E,0xA0,0xDE,0x2B,0x25,0x62,0x94,0x51,0x73,0xF7,0x0C,0xB7,0x9D,0xC6,0xAE,0x82,0xD3,0x34,0x35,0x03,0x78,0x10,0x65,0x80,0xB6,0xA6,0xF0};
|
||||||
|
//const uint8_t spS[] PROGMEM ={0x04,0x48,0x49,0x74,0x14,0x21,0x4A,0x7A,0x6D,0xAC,0x53,0xA5,0xA2,0x29,0xB1,0x4D,0x4E,0x15,0xB3,0x34,0x6D,0x27,0x3A,0x55,0xC8,0xDA,0x12,0xEB,0xFA,0x56,0xA7,0x8E,0x29,0xC2,0xF1,0xDD,0x84,0xD6,0x3B,0x6D,0x91,0x97,0x25,0x80,0xA3,0xC3,0x2C,0x60,0x80,0x2B,0x53,0x34,0x60,0x01,0x07,0x7C,0xEB,0xEE,0x80,0xEF,0xCC,0x1C,0xF0,0x8D,0x85,0x02,0xBE,0x30,0xC3,0xC0,0x03};
|
||||||
|
//const uint8_t spSAID[] PROGMEM ={0x06,0x38,0xBA,0xCC,0x02,0x16,0xF0,0x80,0x04,0x4E,0x94,0x63,0x98,0xB1,0xBF,0xB9,0xD1,0x8D,0x6F,0x72,0xF2,0x5C,0xC2,0x8C,0x73,0xCB,0xAD,0x4E,0x9D,0x92,0xBB,0x6B,0xAC,0xB9,0xDD,0xE8,0x63,0x34,0x37,0x8B,0x25,0xAE,0xA7,0x2E,0xD4,0xB3,0x6D,0xF1,0x81,0x0D,0xD4,0xA5,0x7A,0xB6,0x2C,0x36,0x30,0x95,0x9E,0x11,0x8E,0x5D,0x37,0xA4,0xA9,0xBA,0xBB,0x56,0x5D,0x1C,0x26,0xCC,0x59,0x1B,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spSAVE[] PROGMEM ={0x0A,0x78,0x46,0xD4,0x02,0x16,0x90,0x40,0x4B,0x7C,0xF2,0x50,0xEF,0x26,0x3B,0x39,0x49,0xEC,0x11,0x22,0xD5,0xF4,0x24,0xB1,0xB8,0x8B,0x4D,0x93,0x95,0xA6,0xAC,0xA6,0xB6,0x4D,0x76,0x36,0xF2,0x5C,0x44,0xD5,0xB7,0xF1,0xAA,0x72,0x15,0x55,0x9F,0x25,0xA3,0xCE,0x59,0x58,0xB3,0x6E,0x8F,0x26,0x67,0x61,0x8D,0x7C,0xDC,0x9A,0x9C,0x85,0x34,0x73,0xF6,0x68,0x4A,0x77,0x22,0xB3,0xA7,0xA3,0x29,0x31,0x98,0xC2,0xD6,0x94,0x36,0x06,0x55,0x73,0x69,0x12,0x3A,0x1F,0xC5,0x8D,0xB5,0x8D,0xEA,0x8C,0x34,0x09,0x33,0x37,0x66,0xE8,0x31,0xDD,0x58,0x69,0x33,0x20,0x84,0x14,0x04,0xE8,0xE8,0x81,0x00,0xED,0x5C,0x1F,0x00,0x00};
|
||||||
|
//const uint8_t spSAY[] PROGMEM ={0x08,0x78,0xDE,0x5C,0x03,0x16,0xB0,0x80,0x05,0x2C,0x60,0x01,0x0D,0xAC,0x38,0xE5,0x70,0xD1,0x9A,0x7B,0x93,0x9B,0x9C,0x34,0xD5,0x30,0xD1,0x9A,0x7B,0xB3,0x93,0xD7,0x1C,0xA4,0x1A,0x6F,0x6E,0xBD,0xBA,0x52,0x59,0xD5,0xB7,0x76,0x1F,0xEA,0x90,0x07,0x37,0xE4,0x82,0x9A,0xF1,0x51,0xDC,0x98,0xAD,0x62,0x74,0x07,0x7A};
|
||||||
|
//const uint8_t spSAYS[] PROGMEM ={0x0C,0xF8,0x0C,0x42,0x01,0xDF,0x8B,0x28,0xE0,0x2B,0x35,0x05,0x5C,0xAD,0x66,0x80,0x17,0xCC,0x2C,0xA0,0x80,0xEF,0x4D,0x39,0x70,0xA2,0x18,0xDC,0x4D,0xAA,0xF1,0x4D,0x57,0x1A,0xAA,0x85,0xC4,0x24,0x99,0xE9,0xCE,0x76,0xB1,0xEB,0xDD,0xAC,0xD6,0x45,0x4F,0xB5,0x5A,0xBC,0xDB,0xD9,0xF6,0xA6,0x35,0x3E,0x58,0x0A,0x67,0x9B,0xD2,0x78,0xEB,0xEE,0x18,0x9D,0x53,0xBB,0xB8,0x9A,0x87,0xEA,0x15,0xC0,0x33,0xA4,0x12,0x30,0xC0,0xD5,0x62,0x1A,0x10,0x40,0x63,0xA1,0x0F};
|
||||||
|
//const uint8_t spSCREEN[] PROGMEM ={0x04,0xF8,0x4A,0x4D,0x00,0x57,0xAB,0x29,0xE0,0x05,0x33,0x0D,0x80,0x01,0x3C,0x2B,0x17,0x80,0x9E,0x4D,0x12,0x28,0xB1,0x19,0x18,0x96,0xA6,0xBD,0xA7,0x23,0xF1,0x93,0x53,0xDC,0xF2,0xAE,0x24,0x4E,0x35,0xA5,0x88,0xBF,0x92,0x11,0x83,0xD0,0x7D,0xCD,0x4E,0x6E,0xBA,0xB3,0x51,0x8C,0x1C,0x0C,0x9A,0x8B,0x77,0xB5,0x9B,0xD1,0xF6,0x9A,0x0C,0xEA,0x8B,0x4B,0x57,0xAB,0x23,0x9B,0x3D,0x76,0x9D,0x73,0x50,0x66,0x65,0xDB,0x77,0xBE,0x77,0xBD,0xF5,0x58,0x6A,0xE5,0xD8,0xF6,0xBA,0x97,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spSECOND[] PROGMEM ={0x0C,0x88,0xC4,0xC2,0x01,0xDF,0x08,0x3B,0xE0,0x17,0x22,0x07,0xFC,0x22,0x1C,0x80,0x5F,0x14,0x1C,0xF0,0x83,0x4A,0x88,0x3A,0x73,0x33,0x31,0x5B,0x3B,0x1D,0x99,0xCB,0x11,0x6E,0x59,0x67,0x64,0xB1,0xB8,0x86,0x66,0x65,0x20,0x80,0xF6,0x26,0x18,0x40,0x80,0x28,0x1A,0xAB,0x0E,0x25,0xCC,0xD4,0x27,0xEF,0x66,0x74,0xDE,0x97,0x6A,0x58,0xEC,0xD0,0x07,0x0F,0xA5,0x29,0x49,0x62,0x1F,0xFB,0xD8,0xBB,0xDE,0x58,0x38,0x0F,0x93,0x62,0x7B,0x31,0xE0,0x90,0x95,0x5A,0x36,0xD3,0x10,0xB3,0x87,0x70,0xC4,0xF4,0xCD,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spSEE[] PROGMEM ={0x08,0xD0,0xB4,0x42,0x00,0x8B,0x88,0x3A,0xE0,0x2B,0xD5,0x00,0xFC,0x18,0xE6,0x81,0x08,0x78,0xC0,0x00,0x4F,0xAB,0x1C,0xA7,0xF8,0x60,0x31,0x7D,0x73,0xE2,0x1A,0x93,0xD8,0xED,0xEB,0x8D,0x6F,0x72,0xB3,0x51,0xF4,0x9A,0x02,0x1A,0x6F,0x77,0xB5,0xEB,0xD9,0x94,0xB6,0x34,0x22,0xA9,0xA9,0x93,0xBB,0xD0,0x25,0xC7,0x94,0x97,0xA1,0x4D,0xE7,0x95,0xF0,0x9E,0x18,0x35,0x5D,0xF4,0xA0,0xD3,0x29,0x4C,0x75,0xC1,0x82,0x86,0xB9,0xB3,0x07};
|
||||||
|
//const uint8_t spSEES[] PROGMEM ={0x08,0x30,0x2C,0x45,0x01,0x3F,0x87,0x7B,0xC0,0x03,0x11,0x88,0x80,0x03,0x8E,0x09,0x1B,0x49,0xB2,0xA6,0x66,0xD1,0xE9,0xC4,0xCD,0x87,0xA2,0xCB,0xD7,0x95,0xF4,0xE8,0x0C,0x11,0x6F,0x77,0x3A,0xB3,0x59,0xF5,0x6A,0xB4,0xBD,0x95,0x02,0xCB,0xB6,0xD2,0x97,0xCA,0x82,0x51,0x4F,0xCA,0x90,0x0A,0x8B,0x58,0xBD,0xCD,0x7D,0x1A,0x62,0x62,0x91,0xC8,0xC7,0x69,0x08,0x91,0x55,0xB5,0xEE,0x84,0x3E,0x68,0x53,0x75,0x5F,0xA1,0x80,0x04,0x34,0x3D,0x60,0x01,0x09,0x50,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spSET[] PROGMEM ={0x06,0xF8,0x4E,0xC9,0x00,0xD7,0x29,0x2B,0xE0,0x3B,0x25,0x0B,0x58,0x40,0x01,0x5B,0xAA,0xB4,0x28,0xA5,0x50,0xD3,0x9C,0x77,0x93,0x9B,0xDE,0xEC,0x54,0x31,0x5B,0x8B,0x4F,0xE2,0x5B,0xF7,0x96,0x01,0x32,0x69,0x03,0x80,0x02,0xBC,0x4C,0xF3,0x00,0x02,0xA8,0x2D,0x05,0x80,0x07};
|
||||||
|
//const uint8_t spSEVEN[] PROGMEM ={0x0C,0xF8,0xDE,0x4C,0x02,0x1A,0xD0,0x80,0x05,0x2C,0xB0,0x62,0x17,0x2D,0x43,0x2B,0xF1,0x4D,0x6E,0xB2,0xD3,0x92,0x19,0x1F,0x6E,0xEC,0x51,0x5C,0xE5,0xB9,0x5A,0x58,0x3A,0x76,0x95,0xF7,0x9E,0x1E,0x30,0xAF,0x77,0x65,0xB2,0x29,0x42,0x2C,0xA6,0xB8,0xD9,0x64,0xCD,0x90,0x8A,0xE5,0x66,0x13,0x38,0x8C,0xD3,0x9D,0x58,0xB4,0x17,0x1B,0x29,0xF7,0x62,0x31,0x5E,0xC5,0x24,0xD3,0x88,0xCD,0x79,0xD6,0x90,0x71,0xF7};
|
||||||
|
//const uint8_t spSEVENTY[] PROGMEM ={0x0E,0xF8,0x41,0x38,0x02,0x1E,0xF0,0x80,0x07,0x2C,0xC0,0x81,0x13,0xBB,0xEC,0xA5,0x31,0xF1,0x6E,0x7C,0xE3,0x96,0xC6,0x64,0x6D,0xA4,0xB1,0x4D,0xE5,0x42,0xB8,0xAB,0x2D,0xEE,0x55,0xAB,0xBC,0x4F,0x33,0xD5,0xD9,0xA5,0x71,0x2E,0xC5,0x95,0x66,0x85,0xD6,0x58,0x98,0x94,0x8C,0xED,0x5B,0xD5,0x09,0x47,0x97,0x5C,0x96,0x44,0x2F,0x64,0x7A,0x84,0x5B,0x06,0x70,0x40,0xD1,0x69,0xA9,0xF6,0x4E,0xB8,0xD6,0x43,0xD5,0x3E,0x0F,0x71,0xB4,0x03,0x3C};
|
||||||
|
//const uint8_t spSHAPE[] PROGMEM ={0x00,0x0C,0x58,0x69,0x43,0x03,0x16,0x88,0x80,0x07,0x3C,0xE0,0x01,0x0F,0x9C,0x24,0x67,0x57,0xD5,0x6E,0x7A,0xD3,0x9B,0xDF,0xEA,0x54,0x2D,0x06,0x89,0xD6,0xD2,0x59,0x87,0xBA,0x06,0x43,0x8B,0xBE,0xE3,0x9A,0x18,0x51,0x2A,0x7B,0x34,0x6E,0x00,0xC0,0x00,0xC1,0x25,0x33,0x80,0xBB,0x30,0x80,0x07};
|
||||||
|
//const uint8_t spSHAPES[] PROGMEM ={0x0A,0x58,0x69,0xC3,0x02,0x1E,0x88,0x80,0x07,0x3C,0xE0,0x81,0x15,0xE5,0xEC,0xAA,0xDA,0x4D,0x6F,0x7C,0xE3,0x9B,0x9C,0xB4,0xC5,0x20,0xD1,0x5A,0x7A,0xF3,0x51,0xD5,0x60,0x68,0xD1,0x77,0x4A,0x1B,0x23,0x4A,0x65,0x8F,0xD6,0x2D,0x00,0x80,0x01,0x7E,0x76,0xB7,0x80,0x03,0x7E,0x72,0x75,0xC0,0x2F,0xA1,0x06,0xF8,0xD9,0xD5,0x00,0x3F,0xB9,0x32,0xE0,0x07,0x16,0x01,0x2C,0xE9,0xF9};
|
||||||
|
//const uint8_t spSHIFT[] PROGMEM ={0x08,0x98,0x6D,0x53,0x03,0x1E,0xF0,0x40,0x02,0x56,0xDA,0x88,0x40,0x04,0x2C,0x70,0x92,0xAA,0x42,0x65,0x7C,0xF3,0x4D,0x6F,0x76,0x8A,0x22,0xC3,0x74,0x6C,0xD3,0xAC,0x7C,0x4B,0x00,0x2B,0x9C,0x39,0xC0,0x01,0x0E,0x70,0x00,0x00,0x40,0x01,0x99,0x87,0x11,0x40,0xB8,0x30,0x78};
|
||||||
|
//const uint8_t spSHORT[] PROGMEM ={0x0E,0x18,0x63,0xDB,0x01,0x63,0xEC,0x3A,0x60,0xF4,0x19,0x0B,0x50,0x60,0xA4,0xCA,0x56,0xBA,0x9B,0x9F,0x99,0x8E,0x54,0xDB,0x8D,0x70,0xD5,0xBE,0xF3,0x55,0x99,0x30,0x66,0x29,0xFA,0x57,0xE5,0x42,0x8B,0xB6,0xEA,0x5B,0x95,0xAF,0xC5,0x52,0xAE,0x2F,0x55,0xAE,0x0B,0x7B,0x54,0x5C,0xD6,0x27,0x67,0x1E,0x12,0x6E,0x00,0x0C,0x50,0xBC,0xAB,0x02,0x52,0x2E,0x41,0x80,0x0E,0x16,0x0F};
|
||||||
|
//const uint8_t spSHORTER[] PROGMEM ={0x08,0x18,0x63,0x5B,0x03,0x16,0x30,0xC0,0x18,0xBB,0x0E,0x18,0x7D,0xC6,0x02,0x14,0x18,0xA9,0x33,0xE1,0x9E,0xAA,0x76,0xA4,0xCA,0x55,0x65,0x90,0xF6,0x91,0xCA,0xB8,0x5D,0x0E,0xEE,0x47,0x2A,0xD3,0x56,0x3A,0xBA,0x5F,0xA9,0x0E,0x13,0x9E,0xEC,0x7D,0xA5,0xD6,0xA7,0xF9,0xB2,0xB6,0x91,0xFA,0xA9,0x1A,0xE6,0x7A,0xC0,0x00,0x21,0x2A,0x07,0xA0,0x0C,0x97,0x92,0xBB,0x24,0x9E,0x16,0x49,0x46,0xE5,0x17,0x85,0xBB,0x67,0x1B,0x8D,0x9F,0xEC,0x96,0x96,0xBD,0x75,0x7E,0xB1,0x5B,0x6A,0xF6,0xD2,0xDB,0x41,0x11,0x19,0xE9,0x42,0x6F,0x07,0x54,0x59,0x24,0x76,0x83,0xED,0xAC,0x99,0xE1,0xC4,0x74,0xF1,0xB2,0xB8,0x9A,0x63,0x00,0x00,0x94,0x26,0x93,0xE2,0xE1,0x6A,0x1E};
|
||||||
|
//const uint8_t spSHOULD[] PROGMEM ={0xE0,0x80,0xD9,0x36,0x23,0x10,0x81,0x04,0xAC,0xB4,0x91,0x81,0x08,0xAC,0x38,0xE8,0x10,0x4D,0xEF,0x77,0x12,0x6F,0x3C,0x23,0x29,0xEF,0x4E,0x57,0xEA,0x74,0xA4,0x87,0xE4,0xBD,0xC5,0xAD,0x6E,0x77,0xBB,0xDD,0x97,0x3E,0x06,0x09,0x37,0x79,0x6B,0x7B,0x3D,0x88,0x5E,0xF0,0xF0,0xB2,0x70,0x9D,0x86,0x6A,0x4C,0x3C,0xCD,0xB5,0xEB,0x53,0x14,0x57,0xD1,0x47,0x08,0xE0,0xDA,0xE3,0x01};
|
||||||
|
//const uint8_t spSIDE[] PROGMEM ={0x04,0xF8,0xC5,0xC4,0x02,0x16,0xB0,0x80,0x05,0x28,0xB0,0x2A,0xEF,0xAB,0x5D,0xA2,0xF1,0x4D,0x6F,0x7A,0xD3,0x93,0x85,0x58,0x65,0x12,0xB3,0x6F,0x7E,0xAA,0x90,0xB3,0x4C,0x7C,0xCE,0xAD,0x4F,0x9B,0x8A,0x85,0x69,0xCD,0xD9,0xDD,0xE8,0x63,0x12,0xD7,0xE8,0xD9,0xBD,0x2F,0x7D,0x8A,0x6C,0x6E,0x75,0x47,0x0C,0x54,0x67,0x84,0x7B,0x62,0xD9,0xB3,0x9E,0xC9,0xF2,0xB4,0x50,0x92,0xFA,0xE5,0xD2,0x4C,0xCD,0xB1,0x69,0xA3,0x57,0x55,0xB1,0x4E,0xAA,0x8F,0x55,0x8D,0x69,0x12,0x3E};
|
||||||
|
//const uint8_t spSIDES[] PROGMEM ={0x08,0xF8,0x56,0x58,0x03,0x1E,0xF0,0x80,0x05,0x24,0xA0,0x81,0x93,0x86,0x5C,0x65,0x92,0x75,0x6E,0x7E,0xF3,0x5B,0xDC,0xE2,0x54,0xA1,0x56,0xAA,0x46,0x9D,0xD3,0xC4,0xA2,0x61,0x56,0x53,0x77,0x3B,0xBA,0x94,0xC5,0xDC,0x6B,0xCA,0xEC,0x7B,0x5F,0xFA,0xE0,0x54,0x3C,0xE2,0x91,0xE8,0xB0,0xA9,0xF0,0x4A,0x99,0xB2,0x93,0x9D,0xEA,0x9F,0x15,0x74,0x31,0xBB,0xBE,0x57,0xC0,0xE6,0x22,0x0E,0xF8,0x4E,0x39,0x02,0x1A,0x78,0x00,0x00};
|
||||||
|
//const uint8_t spSIX[] PROGMEM ={0x06,0x98,0xB6,0xC4,0x01,0x2F,0x66,0x46,0x20,0x01,0xD3,0x96,0x18,0x40,0x04,0xAF,0x96,0xA4,0x60,0xA1,0x52,0x8B,0x6F,0xB2,0x92,0x58,0xC4,0xC5,0x67,0xC9,0x4E,0x46,0x95,0x9A,0xB8,0x44,0x2D,0x76,0x7D,0x48,0xD8,0x13,0x15,0x03,0x00,0x10,0x60,0xA2,0x8B,0x00,0x8E,0xAD,0x52,0xC0,0xCF,0x9E,0x1A,0x10,0xC0,0x8F,0xE6,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spSIXTY[] PROGMEM ={0x06,0xF8,0x8A,0x5C,0x03,0x0E,0xF8,0xCE,0x44,0x01,0x4F,0x98,0x9D,0x24,0x3A,0x37,0xB7,0x78,0x72,0xE2,0x9C,0xCD,0xCC,0xE2,0xC9,0x8A,0x73,0x57,0x51,0xCD,0xBB,0x00,0x0C,0x30,0x25,0x28,0x00,0xC7,0x54,0x04,0xE0,0x5B,0x57,0x05,0x5C,0xC1,0x8C,0x00,0x0F,0xAA,0xC0,0x01,0x35,0x16,0x8D,0x2C,0xEA,0xA0,0xB4,0x6A,0xBC,0xAA,0x92,0x8C,0x39,0xE2,0x4D,0x69,0x4B,0x57,0xA6,0xA8,0xDB,0xA1,0x4F,0x41,0xD0,0xAE,0x63,0x9B,0x31,0x19,0xE2,0xAA,0x0A,0xFD};
|
||||||
|
//const uint8_t spSMALL[] PROGMEM ={0x0C,0xF8,0xD9,0x44,0x02,0x12,0xD0,0x80,0x05,0x34,0x10,0x52,0x69,0x35,0x4A,0xCC,0x5E,0xCC,0x56,0x66,0xDC,0xAD,0xB1,0x37,0xDD,0xD9,0xCC,0x67,0x31,0xAB,0xD9,0x94,0x46,0xD6,0x19,0xC5,0x76,0x52,0xBB,0xD0,0x89,0xB5,0xAD,0x50,0xCA,0x62,0xEF,0x7A,0x7E,0x2F,0x14,0x53,0x99,0xE9,0x79,0x7B,0x52,0x75,0xBB,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spSMALLER[] PROGMEM ={0x04,0xF8,0xD5,0x48,0x02,0x1A,0xD0,0x80,0x06,0x38,0x00,0x29,0xD6,0x46,0xBA,0x59,0x93,0x94,0xD4,0x8B,0x9E,0x64,0x4E,0x3A,0xD3,0x99,0xEC,0x64,0xA7,0x3B,0x2D,0x95,0xD6,0xD3,0x49,0x6A,0xAF,0xD4,0xDA,0xFB,0xAB,0x9A,0xE6,0xD4,0xEA,0xCE,0xD3,0x62,0x89,0x63,0xEF,0x06,0x77,0xD0,0xC6,0xB4,0x91,0x1F,0xDC,0xE8,0x2E,0xAB,0x57,0x78,0xB1,0xD3,0x03};
|
||||||
|
//const uint8_t spSMALLEST[] PROGMEM ={0x0A,0xF8,0x06,0xC5,0x02,0x1E,0xF0,0x00,0x05,0xC0,0xA5,0x34,0x25,0x87,0x5B,0xDA,0x96,0x79,0x95,0x1F,0xAC,0xAD,0x77,0x76,0xB3,0x95,0x59,0x53,0xEF,0xE4,0x8D,0x57,0x66,0xCC,0x97,0xAA,0xA5,0xDD,0x79,0xAD,0x5A,0xE3,0xD8,0x95,0x39,0x35,0x19,0xAD,0xB5,0x13,0xA6,0xBE,0x68,0xF4,0x36,0x44,0x86,0x54,0x93,0x32,0xD8,0xE6,0x6C,0x35,0x2E,0xF3,0x10,0x86,0x10,0xCA,0x18,0x22,0x93,0x01,0xBE,0x15,0xF2,0x40,0x00,0x7E,0x35,0x70,0xC0,0x1F,0x0A,0x18,0x00,0x70,0x40,0xE5,0x16,0x06,0x38,0x4E,0x0C,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spSO[] PROGMEM ={0x06,0xF8,0x51,0x38,0x01,0xDF,0x29,0x07,0xE0,0x47,0xE5,0x04,0x7C,0xA7,0x1C,0x80,0x1F,0xCD,0x22,0x70,0xE2,0xC8,0xA3,0xD3,0x34,0xCF,0x8D,0x6F,0xB2,0x52,0xAB,0xBA,0xCA,0xD9,0xEF,0xCE,0x76,0x35,0xDB,0xD2,0x8B,0x50,0x9B,0x46,0x59,0xC3,0x40,0x57,0x77,0x92,0xA5,0xB4,0x83,0x1A,0xC9,0x99,0x30,0xF1,0xD4,0x62,0x64,0xBD,0x43,0xC5,0xDD,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spSOME[] PROGMEM ={0x0C,0x78,0x55,0x40,0x02,0x12,0xD0,0x80,0x06,0x2C,0x10,0x92,0x64,0xAA,0x2D,0x38,0xED,0x4D,0x6E,0x76,0x32,0x17,0xBA,0xD5,0xB8,0xC9,0xCD,0x76,0xDE,0x2A,0x9B,0xA5,0x54,0x28,0x4D,0xAC,0x63,0x1B,0xDB,0xD8,0xFA,0xCE,0x76,0xB2,0xA7,0xFD,0x03};
|
||||||
|
//const uint8_t spSORRY[] PROGMEM ={0x06,0x38,0xD6,0xD4,0x03,0x01,0xF8,0x5E,0x35,0x00,0x3F,0xBA,0x45,0x20,0x03,0xCB,0x77,0xD6,0xDA,0x35,0x6D,0x9F,0xD8,0x27,0xDF,0x10,0x4F,0x7B,0xE3,0x13,0x87,0x6C,0xE7,0xA6,0x69,0x6E,0x7C,0x12,0x57,0xEC,0xCC,0xB5,0xED,0xCA,0x4C,0xB3,0xB3,0x94,0x2C,0xA3,0xB2,0x4D,0xC7,0x06,0xD7,0x8E,0xC6,0x57,0x69,0x19,0x69,0x37,0xFB,0xD1,0xA7,0xCA,0x66,0x31,0x0D,0x7B,0xDF,0xFA,0x32,0xC8,0x35,0x36,0x56,0xE9,0x72,0x03,0xB3,0x38,0x49,0xA5,0xAD,0xD5,0x21,0xB4,0x4B,0x9B,0xC6,0x19,0xE6,0xF7,0x90,0xF2};
|
||||||
|
//const uint8_t spSPACE[] PROGMEM ={0x0C,0x78,0x46,0x54,0x03,0x1E,0x88,0x00,0x06,0x00,0xC0,0x00,0xAA,0x4A,0x9F,0x3C,0x34,0x73,0xB1,0x4A,0x7D,0xF3,0x53,0xA4,0x66,0xA6,0x1A,0x4B,0x57,0x95,0x93,0xB2,0x46,0xAC,0x9E,0x75,0x6B,0x63,0x10,0x31,0xAF,0xC5,0xB5,0x53,0xC0,0xD7,0xA6,0x11,0x88,0x80,0x07,0x22,0xE0,0x81,0x07};
|
||||||
|
//const uint8_t spSPACES[] PROGMEM ={0xC0,0x80,0x09,0xAC,0x0C,0xF0,0x8C,0x86,0x03,0x7E,0x50,0x77,0xC0,0x8F,0x16,0x0E,0xF8,0x2E,0xD3,0x00,0xCC,0xA5,0x03,0x9C,0x24,0x34,0x73,0xB1,0x4A,0x7D,0xB3,0x93,0xA7,0x66,0xA6,0x1A,0x4B,0x4F,0x9E,0x93,0xB2,0x46,0xAC,0xDE,0x59,0xCB,0x62,0x10,0x31,0xAF,0xC5,0x3D,0x33,0xC0,0xB7,0xA4,0x0E,0xF8,0x4E,0x24,0x00,0xDF,0x98,0x1B,0xA0,0x31,0xF3,0x34,0x98,0xE0,0x66,0x19,0xB7,0xF2,0x90,0xA7,0x38,0x99,0xC9,0x04,0x73,0x8D,0x7A,0x10,0xA6,0xAB,0x3D,0x54,0x58,0xBF,0x01,0x36,0x66,0xD5,0x80,0x02,0x2E,0x23,0x55,0xC0,0x67,0xA8,0x02,0xF8,0x92,0x4D,0x00,0x93,0x98,0xC1,0x03};
|
||||||
|
//const uint8_t spSPELL[] PROGMEM ={0x01,0xF8,0x5E,0x2D,0x01,0x3F,0x9A,0x27,0xE0,0x27,0x0B,0x07,0x5C,0x4D,0x0E,0x00,0x0C,0xB0,0x22,0xEC,0xA4,0x26,0xA4,0xAB,0x57,0xAA,0x93,0xD9,0x98,0xE1,0xDE,0xA9,0x4F,0xEE,0x62,0x86,0x79,0xA5,0x3E,0x85,0x4F,0x19,0xEA,0xD1,0xE6,0x54,0x3E,0x64,0x9A,0x46,0xE6,0x53,0x85,0x90,0x15,0x12,0xBE,0x57,0x6D,0x72,0x65,0xD0,0x7A,0x1A,0xAD,0xCA,0x53,0x4E,0xE3,0xB9,0x0D,0xB2,0x4F,0x06,0xA7,0xE7,0x32,0x8A,0xDE,0xD9,0x10,0x9E,0xD3,0xC4,0x7B,0x47,0x83,0xDB,0xF6,0x93,0x99,0xA4,0x7F,0x2B,0xA2,0x54,0x66,0x16,0x39,0x2C,0x2C,0x2C,0x3D};
|
||||||
|
//const uint8_t spSQUARE[] PROGMEM ={0x0A,0xF8,0x01,0xC5,0x02,0x11,0xC8,0x00,0x06,0x00,0x10,0x20,0xE6,0x18,0x02,0x78,0x6F,0x2B,0x89,0x8C,0x5D,0x69,0x94,0x75,0xA6,0x3B,0x3D,0x69,0x28,0x66,0xA1,0xBE,0xE6,0x66,0x3B,0xDF,0xC5,0xAA,0x62,0x73,0xF1,0xB4,0xAE,0xAD,0xF3,0x87,0x3D,0xCC,0xBB,0xD4,0x21,0x8F,0x69,0xF4,0xDB,0x29,0x42,0x66,0x87,0x29,0x5C,0xD7,0x40,0x4E,0xE6,0xA6,0x70,0xD8,0x92,0x3C,0x91,0x9D,0x1E};
|
||||||
|
//const uint8_t spSTART[] PROGMEM ={0x0A,0xF8,0x41,0xC2,0x00,0x3F,0x59,0x78,0xC0,0x02,0x00,0x01,0xA8,0xCE,0xED,0x84,0xC1,0x65,0x98,0x45,0xEA,0x93,0xD8,0x12,0xE3,0x9C,0x99,0x6F,0x7A,0x32,0x97,0x63,0x82,0xAD,0xCD,0xCA,0x7D,0x0B,0x2F,0xC7,0xA5,0xB7,0x5E,0x9D,0x1F,0xAE,0x19,0xB4,0xA4,0x0F,0x6D,0x0C,0x8D,0x3C,0xC3,0x62,0x87,0x21,0x74,0xD0,0xF0,0x48,0x0C,0x90,0x80,0x61,0x22,0x1C,0xA0,0xB5,0x0B,0x06,0x1E};
|
||||||
|
//const uint8_t spSTEP[] PROGMEM ={0x06,0x78,0xC1,0xD3,0x02,0x11,0xB0,0x00,0x40,0x02,0xAA,0x4A,0x39,0x69,0x88,0xA1,0xA6,0xD5,0xFA,0xA4,0xA1,0x5B,0x88,0x75,0xD3,0x9B,0xDF,0x62,0xB4,0xB6,0x59,0xB9,0x75,0xAC,0x30,0x98,0xA9,0xA5,0xB6,0xB1,0x01,0x80,0x01,0x32,0x04,0x63,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spSTOP[] PROGMEM ={0x0E,0xD8,0x5A,0x3D,0x02,0x11,0xF0,0x00,0x40,0x00,0xBA,0x0F,0x5F,0x85,0x4F,0xBD,0x2A,0x91,0xE4,0x16,0xB7,0xBA,0xD5,0x6D,0x6E,0x33,0x3A,0xDB,0xA7,0x94,0xC7,0xAE,0xEF,0x01,0x00,0x04,0xA0,0xBD,0x39,0x06,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spSUM[] PROGMEM ={0x0C,0x78,0x55,0x40,0x02,0x12,0xD0,0x80,0x06,0x2C,0x10,0x92,0x64,0xAA,0x2D,0x38,0xED,0x4D,0x6E,0x76,0x32,0x17,0xBA,0xD5,0xB8,0xC9,0xCD,0x76,0xDE,0x2A,0x9B,0xA5,0x54,0x28,0x4D,0xAC,0x63,0x1B,0xDB,0xD8,0xFA,0xCE,0x76,0xB2,0xA7,0xFD,0x03};
|
||||||
|
//const uint8_t spSUPPOSED[] PROGMEM ={0x06,0xD8,0xCA,0xC5,0x03,0x11,0x88,0x80,0x07,0x46,0x62,0x74,0x96,0xB9,0xB7,0x9A,0x59,0x2D,0x70,0x05,0x0E,0xB0,0x35,0x6D,0xA5,0xC6,0x65,0x9B,0x6A,0xEB,0x93,0x39,0x93,0x63,0xAA,0x59,0x46,0xA6,0x6D,0x8D,0xAA,0x75,0x99,0xD9,0x2C,0x5A,0xA5,0x4C,0xB7,0x9A,0x76,0x1E,0xB5,0x36,0x55,0x62,0xD6,0x65,0xD4,0xC6,0x54,0xAA,0x6B,0x97,0xD5,0x58,0x9D,0x25,0xAE,0x5D,0x46,0xE3,0x55,0xA6,0x98,0x76,0x6D,0xAD,0xB3,0x15,0x64,0xD6,0x46,0x01,0x15,0x90,0x7B,0x20,0x02,0x11,0x00,0x60,0x80,0x13,0x1E,0x06,0x68,0x22,0x0C,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spSUPPOSED_TO[] PROGMEM ={0x04,0x78,0x4D,0xC8,0x02,0x0E,0xF8,0x45,0xD0,0x01,0xBF,0x9A,0x7A,0xE0,0x14,0x51,0x66,0xB2,0x47,0xEB,0x5B,0xED,0x0A,0x0C,0xE0,0xB5,0x65,0x4B,0xB4,0x9B,0x52,0xF5,0xD6,0x3B,0xBD,0xD9,0xCE,0x46,0x2E,0xDD,0x26,0x47,0xB5,0x9A,0x79,0xCF,0x6B,0xE5,0x80,0x5B,0x98,0x3D,0x60,0x80,0x3F,0x98,0x00,0x12,0xB0,0x9C,0x7A,0x00,0x96,0x74,0x1F,0x55,0x71,0x6E,0x9C,0x9C,0xED,0x36,0xB7,0x1B,0xBD,0xF1,0x1A,0x19,0x3A,0xBB,0xF6,0x61,0x94,0xC1,0x33,0xD3,0x1A,0xB9,0x51,0x24,0xB7,0x4C,0xAF,0x6D,0x46,0x65,0xCB,0xAD,0xA4,0xA1,0x19,0x8D,0x31,0x6B,0xD6,0x44,0x0F};
|
||||||
|
//const uint8_t spSURE[] PROGMEM ={0x00,0x00,0x00,0x40,0x80,0x2C,0x45,0x0D,0xB0,0xE6,0x54,0x04,0x22,0xB0,0xD2,0x5E,0x76,0xAE,0x52,0xF1,0x09,0x4A,0xAC,0x40,0x54,0xAD,0x2B,0x4D,0x3E,0x8C,0x22,0xB5,0xAF,0x34,0xF8,0x30,0x19,0xF7,0xBE,0x72,0xE7,0x43,0x6D,0xDD,0xFD,0xAA,0xBC,0x2B,0xB1,0x55,0xF7,0xA3,0x72,0x39,0x38,0x86,0xBD,0xB7,0xDA,0x54,0x97,0x1C,0x4D,0x9F,0x5B,0xD7,0xD9,0x49,0x5E,0x66,0x5D,0x54,0xAF,0x8A,0x7A,0x5A,0x30,0x52,0xBD,0x2B,0xA2,0xAE,0xA1,0x51,0xF4,0xBE,0x99,0x18,0xBB,0x6B,0x00,0x00,0x78};
|
||||||
|
//const uint8_t spT[] PROGMEM ={0x09,0x58,0xCC,0x3C,0x00,0x2F,0x85,0x96,0x70,0xC6,0x50,0x62,0x69,0xB2,0x92,0x91,0x82,0xC1,0xE3,0xED,0x4D,0x4E,0x3A,0xA2,0x32,0x46,0x3E,0xD9,0xF9,0xAC,0x5A,0x3D,0x2C,0x33,0x77,0xCE,0x4E,0x4D,0x51,0xCC,0xB6,0x59,0xC6,0x35,0x46,0x88,0x4F,0xAB,0x55,0xD5,0x38,0x26,0x3E,0x23,0x66,0x1F,0x00,0x00};
|
||||||
|
//const uint8_t spTAKE[] PROGMEM ={0x09,0xE8,0xDA,0x3D,0x00,0xCD,0xB5,0x18,0x20,0x15,0xB5,0x11,0xA7,0xA6,0x2E,0x31,0xAE,0x6F,0x72,0xD2,0xD2,0xD5,0x28,0xAA,0xE9,0xCD,0x76,0x31,0xEA,0xE8,0xC0,0xB6,0xD2,0x74,0xEC,0xCD,0x98,0x64,0x6A,0x98,0x29,0x06,0x08,0x40,0x74,0x4E,0x16,0x10,0x40,0x0A,0x06,0xF0};
|
||||||
|
//const uint8_t spTEEN[] PROGMEM ={0x01,0x58,0x36,0x25,0x02,0x16,0x38,0x7E,0x0B,0x26,0xE4,0x31,0xF7,0x26,0x37,0x1D,0xD9,0x8C,0xCC,0xD2,0x39,0x69,0x16,0xB3,0xEA,0xCD,0xEC,0x5A,0x37,0xA2,0x30,0x67,0x54,0x09,0xBD,0xB6,0xB4,0x69,0x25,0xC5,0x0E,0x66,0xD0,0x86,0x2E,0xB4,0x6C,0x9B,0x41,0x6A,0x99,0x94,0x74,0xA4,0x06,0x61,0x64,0x53,0xCB,0xB6,0x19,0x3C,0x35,0xCB,0xF2,0x54,0x00,0xF0};
|
||||||
|
//const uint8_t spTELL[] PROGMEM ={0x90,0x80,0xA5,0x42,0x1C,0xD0,0x6C,0x48,0x89,0x63,0x75,0x93,0xA8,0xB8,0x37,0xBD,0xE9,0x4D,0x4F,0x16,0x5A,0x84,0x78,0xD5,0xB9,0xF9,0x29,0x5C,0xCE,0x56,0xC9,0x26,0xB7,0x1A,0xB5,0x6E,0xD5,0xAA,0x31,0x7B,0xB6,0xAD,0x95,0xA3,0x5A,0x34,0x1B,0xD7,0xAE,0x74,0x62,0x55,0x29,0x67,0xE2,0xD0,0xF1,0x9B,0xA9,0xD4,0x51,0x4D,0xCF,0x6E,0xB8,0x4A,0xCB,0x71,0xBD,0x4A,0x16,0xE1,0x25,0xE9,0x01};
|
||||||
|
//const uint8_t spTEN[] PROGMEM ={0x0A,0xB0,0xDC,0xD4,0x01,0x83,0x86,0x28,0x20,0x85,0x10,0x01,0xB8,0x28,0x72,0xE2,0x34,0xCB,0x55,0xA2,0xEE,0x4D,0x6E,0x7A,0xB3,0x9B,0x9F,0x22,0x2E,0x77,0xF6,0x88,0x73,0xEB,0xDD,0xCE,0x2E,0x74,0xDE,0x42,0x4B,0x7A,0xA3,0xD8,0x85,0xDE,0x5B,0x18,0x89,0x4C,0xE9,0x7A,0x67,0xB0,0xC5,0x2B,0xA5,0xE9,0x95,0xE1,0x96,0xE8,0x84,0xAA,0xE7,0x4E,0xC3,0xEC,0x63,0x3F,0x00,0x00};
|
||||||
|
const uint8_t spTEXAS_INSTRUMENTS[] PROGMEM ={0x0E,0xA8,0xCA,0xD4,0x01,0x59,0xA4,0xAE,0x24,0xE8,0xD4,0xF0,0x88,0x74,0x92,0x90,0x4B,0xCD,0xA3,0xDE,0x49,0x62,0x29,0x31,0x8F,0xA5,0x2B,0x49,0x3B,0xD9,0x34,0x9A,0xB8,0x3C,0x24,0x07,0xD1,0x8C,0x63,0x92,0x15,0xB7,0x0C,0x59,0x96,0x01,0x7E,0x51,0xF5,0x80,0x03,0x7E,0x33,0x6A,0xC1,0x5F,0x29,0xC2,0x26,0x7F,0xE5,0xD1,0x94,0x99,0xD8,0xEB,0x95,0x45,0x5D,0xE6,0xEC,0x8F,0x57,0x16,0x6D,0x9A,0xA3,0x3F,0x69,0xF9,0xE2,0x92,0x26,0x96,0xD5,0x01,0xCF,0xB0,0x58,0xC0,0x03,0x1A,0x58,0x59,0x72,0xA5,0x41,0x3C,0x7B,0xE7,0x3B,0x9F,0x45,0x2B,0x9C,0xA6,0x6C,0xAA,0x7A,0xB1,0x0A,0xC0,0xEB,0x01,0x1E,0x70,0xC0,0xAB,0x0E,0x08,0x30,0x44,0x4B,0x00,0xC5,0x81,0x05,0x60,0x14,0x8F,0xD5,0x44,0xE7,0x2E,0x1A,0xCE,0x76,0x93,0x3A,0xE3,0xCC,0x25,0x54,0x79,0xEA,0xB5,0x75,0x17,0x33,0xB7,0xA5,0x77,0xBE,0x0A,0x3C,0x1C,0xF7,0xB1,0x4C,0xDE,0x55,0x70,0x78,0x4A,0x33,0x5B,0xA7,0xE1,0x90,0x71,0xED,0x24,0x67,0xB1,0x26,0x67,0x16,0xE8,0x89,0x15,0x30,0x05,0x9B,0x01,0x7E,0x51,0xF0,0x80,0x00,0x9E,0x47,0x92,0x80,0x02,0x7E,0x01,0x7C};
|
||||||
|
//const uint8_t spTHAN[] PROGMEM ={0xA5,0xC9,0xDE,0xDD,0x88,0x9C,0xE6,0xA6,0xB4,0x22,0xAA,0xA9,0x76,0xE2,0xD4,0x70,0x17,0xAC,0xD6,0x6E,0x72,0x7D,0xEA,0x14,0xBC,0x44,0x6D,0xE9,0xA9,0x72,0x8F,0x64,0xE9,0x24,0xB7,0xBA,0xC5,0x2D,0x6E,0x71,0xAB,0x5B,0x9D,0x36,0x77,0x2F,0xD6,0x88,0x73,0xBB,0xDB,0xED,0xBE,0x0F,0x69,0xB0,0x51,0xD2,0xDC,0x1D,0x87,0xC1,0x79,0x4C,0xD7,0x74,0xED,0x06,0xEB,0x30,0x4D,0xCB,0xAD,0x1F,0x6C,0xAF,0x3B,0xD6,0xC5,0x18,0x22,0x58,0x36,0x01,0xE5,0xC5,0x84,0x86,0xBA,0x9C,0x07};
|
||||||
|
//const uint8_t spTHAT[] PROGMEM ={0x22,0x57,0x51,0x55,0x7D,0x12,0x99,0x46,0x73,0x77,0x73,0x6F,0x65,0x3A,0x2F,0x38,0x35,0xB9,0x91,0xEA,0xB5,0x73,0x21,0xCF,0x56,0xA1,0x4F,0x3E,0x5C,0xC8,0x32,0x97,0x3A,0x45,0x4B,0x35,0x7B,0x7A,0xEA,0x50,0x3D,0x24,0x6A,0xEE,0xA9,0xE3,0xF0,0x94,0xC8,0x3A,0xA7,0x4A,0x33,0x4B,0x2C,0xE2,0x9C,0x2A,0xEE,0x48,0xF1,0xB4,0x73,0xAA,0x30,0x23,0xD4,0xDA,0xF6,0xA9,0x7C,0xF1,0x30,0x2B,0x49,0xAB,0x4A,0xCE,0xCC,0xC5,0x1C,0x97,0xD6,0x18,0x63,0x93,0x4A,0x0A,0x16,0xB0,0x00,0x07,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spTHAT_IS_INCORRECT[] PROGMEM ={0xA5,0x2B,0x51,0x25,0xC8,0x7C,0x9F,0x2A,0x78,0xCD,0xD0,0x7A,0x7A,0x0A,0x1F,0x2D,0xDD,0x7B,0xEE,0x29,0x6C,0x48,0xCF,0xE8,0x29,0xA7,0x30,0x21,0x3D,0x63,0xCA,0x0A,0x40,0xB8,0xA8,0x15,0x67,0x6F,0xEA,0xEA,0x6B,0x4E,0x93,0x42,0x88,0xAA,0xBF,0x3D,0x6D,0x49,0x2E,0x26,0xFE,0x76,0x75,0x39,0x9A,0xA8,0xC6,0xD7,0xD1,0x97,0x6C,0x2A,0x6A,0x7B,0xDA,0x90,0xA3,0x29,0x8B,0x6D,0x6E,0x43,0x49,0xA6,0x4A,0xDC,0xAF,0xF5,0xC5,0x99,0x38,0xF3,0xE7,0xD2,0x17,0x19,0xE2,0x2C,0xBD,0x15,0x70,0x04,0xB1,0x06,0x0C,0xF0,0xB3,0x72,0x00,0x06,0x63,0x63,0x00,0x37,0xD6,0x02,0xD0,0x81,0x67,0x15,0xB9,0x98,0xAA,0xD6,0xE2,0x9B,0x9C,0x38,0x47,0xD3,0xE0,0x6E,0xB2,0xA2,0x64,0x9C,0x8A,0x62,0x76,0x89,0xA2,0x87,0xF1,0x74,0x35,0x25,0xB2,0x52,0xDC,0x27,0x6C,0xAB,0x88,0x19,0xCF,0x37,0x77,0x02,0x01,0x88,0xD9,0x3A,0x44,0xBA,0x72,0x5B,0x52,0xAA,0x1A,0xA5,0x48,0x2E,0x4E,0x4F,0xEA,0x62,0x62,0xB6,0x24,0x32,0x55,0xAB,0x89,0xF9,0xA6,0x2A,0x17,0xB7,0x25,0xD2,0x93,0x26,0xD4,0x73,0x8F,0x50,0xE7,0xF4,0x92,0x6C,0xB6,0x22,0xEF,0xCA,0x4B,0x6A,0xF2,0x8A,0x7D,0xF4,0x0A,0xFD,0x58,0xA7,0xF1,0xD1,0xB2,0x6C,0x6B,0xEF,0xBE,0x4F,0x75,0x06,0x00,0x00,0x03,0x4C,0x27,0x2A,0x80,0x61,0xD4,0x18,0x50,0xB4,0xF2,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spTHAT_IS_RIGHT[] PROGMEM ={0xA6,0xD1,0xC6,0x25,0x68,0x52,0x97,0xCE,0x5B,0x8A,0xE0,0xE8,0x74,0xBA,0x12,0x55,0x82,0xCC,0xF7,0xA9,0x7C,0xB4,0x74,0xEF,0xB9,0xB7,0xB8,0xC5,0x2D,0x14,0x20,0x83,0x07,0x07,0x5A,0x1D,0xB3,0x06,0x5A,0xCE,0x5B,0x4D,0x88,0xA6,0x6C,0x7E,0xA7,0xB5,0x51,0x9B,0xB1,0xE9,0xE6,0x00,0x04,0xAA,0xEC,0x01,0x0B,0x00,0xAA,0x64,0x35,0xF7,0x42,0xAF,0xB9,0x68,0xB9,0x1A,0x96,0x19,0xD0,0x65,0xE4,0x6A,0x56,0x79,0xC0,0xEA,0x93,0x39,0x5F,0x53,0xE4,0x8D,0x6F,0x76,0x8B,0x53,0x97,0x6A,0x66,0x9C,0xB5,0xFB,0xD8,0xA7,0x3A,0x87,0xB9,0x54,0x31,0xD1,0x6A,0x04,0x00,0x06,0xC8,0x36,0xC2,0x00,0x3B,0xB0,0xC0,0x03,0x00,0x00};
|
||||||
|
const uint8_t spTHE[] PROGMEM ={0xA1,0xB5,0x86,0xD3,0xD8,0x1B,0xB9,0xD6,0x1A,0x0E,0x61,0x5F,0x18,0xDA,0xE2,0x58,0xC5,0xA0,0xCF,0x2A,0x6A,0x31,0x15,0xE5,0x2D,0x27,0x6F,0x23,0x94,0x85,0xF6,0xAE,0xBC,0x25,0x21,0xAE,0xBC,0x3D,0xAB,0x59,0xF5,0x26,0x75,0xDD,0x09,0xD1,0xD5,0x4D,0x37,0x44,0x4E,0xD6,0xEF,0x61,0x7C,0x6F,0x86,0xE4,0x41,0xEB,0x4A,0xB4,0x1D,0x1E,0x00,0x00};
|
||||||
|
//const uint8_t spTHE1[] PROGMEM ={0xA9,0x73,0x5E,0x93,0xC9,0x53,0xC7,0x6E,0xB4,0xC9,0x6A,0xBB,0xE9,0xD6,0x5B,0x9D,0x2A,0x3A,0xEF,0x64,0x6F,0x7A,0xAB,0x55,0x45,0xEF,0x93,0xEC,0x49,0x5B,0x6D,0x72,0xA7,0xD1,0x5A,0x49,0x4D,0x72,0x1E,0x8E,0x6A,0xE9,0x01};
|
||||||
|
//const uint8_t spTHEIR[] PROGMEM ={0xA2,0x66,0x3E,0xCC,0x6D,0x62,0x8B,0x9A,0xF9,0x30,0x97,0x8D,0x2C,0x1A,0x6A,0x53,0x53,0x2A,0x09,0x6F,0x58,0x2D,0x45,0x98,0x5B,0x39,0x76,0x75,0xF2,0xE6,0x01,0xD3,0x74,0xE7,0x37,0x3F,0x79,0xAE,0xE6,0xA2,0xD3,0xE6,0xE6,0x37,0xBF,0xC5,0xA9,0xD2,0x50,0x35,0xEB,0x2E,0xA7,0x8A,0x53,0xCD,0xDC,0xBB,0xDC,0x66,0xB5,0xE1,0x52,0x86,0x46,0x93,0xD9,0xB5,0xCE,0x1F,0xCA,0x34,0x6F,0x92,0x3A,0xBF,0x71,0x5C,0xDA,0x45,0xE8,0xFC,0xC0,0x0A,0x6E,0x9B,0xA6,0x0B,0x87,0xCC,0xC8,0x53,0xA9,0x36,0x4C,0x46,0x15,0x73,0x23,0xDA,0x98,0x5C,0x85,0x3D,0x11,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spTHEN[] PROGMEM ={0xA2,0xA1,0x2E,0x2C,0xAC,0x13,0x8B,0x86,0xE9,0xF0,0xD0,0x49,0x2D,0x6A,0xC1,0xD3,0xD3,0xCA,0xB1,0xA8,0x8D,0x30,0x73,0x0F,0xC7,0xA1,0xAA,0xDC,0x54,0x4C,0x53,0x9F,0x3C,0x25,0x37,0xA5,0x6E,0x7D,0xB2,0x54,0xCD,0x59,0xAE,0xCD,0xC9,0x72,0x75,0x53,0x9E,0xD6,0x27,0xCB,0x3D,0x4C,0xA8,0x1B,0x9F,0xAC,0xB4,0x30,0xA5,0x6A,0x7C,0x8A,0xDC,0xC2,0x85,0xA6,0xF1,0xA9,0x72,0x0B,0x53,0xEA,0xC4,0xA7,0x4E,0xCD,0x43,0x69,0x92,0x9C,0x26,0x55,0x4F,0xE5,0x4E,0x72,0xDA,0x90,0x3D,0x4C,0x2A,0x71,0xE9,0xBC,0x85,0x55,0x4F,0x55,0xBE,0x77,0xBD,0xB3,0xB0,0xAE,0xE5,0xDA,0xF4,0xCA,0xE0,0xBA,0xB4,0x6D,0xD5,0x0B,0x2B,0x6D,0xB2,0x91,0x42,0xAF,0x6D,0x48,0xE8,0xD8,0x74,0x7D,0xF4,0xCA,0x4A,0xE5,0x04,0x01,0x3A,0x8A,0x00,0x00,0xC9,0x93,0xF6,0x34,0x71,0xDB,0x0F};
|
||||||
|
//const uint8_t spTHERE[] PROGMEM ={0xA2,0x66,0x3E,0xCC,0x6D,0x62,0x8B,0x9A,0xF9,0x30,0x97,0x8D,0x2C,0x1A,0x6A,0x53,0x53,0x2A,0x09,0x6F,0x58,0x2D,0x45,0x98,0x5B,0x39,0x76,0x75,0xF2,0xE6,0x01,0xD3,0x74,0xE7,0x37,0x3F,0x79,0xAE,0xE6,0xA2,0xD3,0xE6,0xE6,0x37,0xBF,0xC5,0xA9,0xD2,0x50,0x35,0xEB,0x2E,0xA7,0x8A,0x53,0xCD,0xDC,0xBB,0xDC,0x66,0xB5,0xE1,0x52,0x86,0x46,0x93,0xD9,0xB5,0xCE,0x1F,0xCA,0x34,0x6F,0x92,0x3A,0xBF,0x71,0x5C,0xDA,0x45,0xE8,0xFC,0xC0,0x0A,0x6E,0x9B,0xA6,0x0B,0x87,0xCC,0xC8,0x53,0xA9,0x36,0x4C,0x46,0x15,0x73,0x23,0xDA,0x98,0x5C,0x85,0x3D,0x11,0x3C,0x00,0x00};
|
||||||
|
const uint8_t spTHESE[] PROGMEM ={0xA9,0xF5,0xD6,0x4C,0x89,0xB3,0xC4,0x36,0x36,0xA5,0x4E,0xC6,0x4D,0x98,0xB2,0x8C,0x2A,0xCB,0x30,0x09,0xDB,0x34,0x52,0xEB,0x5C,0xA2,0x63,0xD4,0x4A,0x82,0x70,0xB1,0x8F,0x86,0x23,0xE9,0x21,0x10,0x2A,0x37,0xCF,0xB4,0x67,0xB5,0x28,0x55,0x8F,0x46,0x18,0xB9,0x66,0x36,0xAD,0x2B,0x49,0x91,0x32,0x17,0xF7,0xBE,0xF5,0xD5,0x1B,0x71,0xFA,0x96,0xDE,0x97,0xBE,0x38,0x67,0x0E,0xFD,0xD2,0xFA,0x69,0x2C,0x50,0x3C,0x5F,0xEB,0x7F,0x35,0x09,0x50,0x6F,0x01,0xB8,0x9A,0x38,0x00,0xBF,0x2A,0x39,0xE0,0xAF,0x14,0x03,0xFC,0xCC,0xC2,0x80,0x28,0x5C,0x1F};
|
||||||
|
//const uint8_t spTHEY[] PROGMEM ={0xA6,0x11,0x51,0x4D,0xB5,0x13,0xAB,0x96,0xBB,0x60,0xB5,0x76,0xE3,0x9A,0xA8,0x55,0x59,0xDD,0x49,0xAA,0x53,0xF0,0x12,0xB5,0xA5,0xB7,0xBA,0xD5,0xA9,0x72,0xCD,0x10,0xF1,0xA5,0xB7,0xBA,0xD5,0xA9,0x4B,0x0F,0x15,0xC9,0xA5,0xB7,0x39,0x5D,0x6E,0x2E,0xEA,0x35,0xA7,0xF4,0x29,0x63,0xD8,0x6C,0xE4,0x32,0x24,0x63,0x12,0xEF,0xB5,0xD2,0x90,0xA4,0x6A,0x4E,0x84,0x0E,0x43,0x0E,0xC4,0xD5,0x19,0xC8,0x0D,0xC9,0x0A,0xE6,0x7A,0x68,0x33,0x06,0xCD,0xD2,0xE5,0x51,0x1E};
|
||||||
|
//const uint8_t spTHING[] PROGMEM ={0x40,0x00,0x6D,0xDD,0x11,0xE0,0x85,0x3B,0x01,0x9C,0x34,0x16,0x40,0x70,0xA6,0x27,0x89,0xD1,0xD5,0xAD,0x16,0xDE,0xE4,0x24,0xB9,0xB8,0xA8,0xC6,0xE2,0x93,0xD6,0x9E,0x22,0xE2,0x8B,0x4F,0x56,0x67,0x89,0xB0,0xAE,0x3E,0x79,0x5B,0x29,0x2C,0xBA,0xF8,0x54,0x75,0x05,0xB1,0xF9,0xA2,0x51,0xD7,0x69,0xA0,0x1E,0xB3,0x5A,0x5D,0x1A,0x43,0x64,0x54,0x4C,0x4D,0x08,0x60,0xEB,0x6E,0x26,0x34,0xCE,0xC1,0x87,0x39,0x9D,0xD0,0x78,0x07,0x97,0x9A,0x4C,0x42,0x13,0x1C,0x5C,0x68,0x28,0x0D,0x8D,0xB5,0x70,0xA1,0x29,0x27,0x35,0x51,0x39,0x45,0x79,0xC9,0xD0,0xA5,0x60,0xA8,0x6A,0xB3,0x1F};
|
||||||
|
//const uint8_t spTHINGS[] PROGMEM ={0x00,0x08,0x60,0xBA,0x93,0x01,0xDA,0x99,0x33,0x40,0x5B,0x77,0x03,0x78,0xE1,0xAE,0x00,0x27,0x8D,0x2D,0x70,0xE2,0x18,0x4D,0x8D,0x3A,0xF6,0x89,0x4B,0x76,0x76,0xE9,0x5A,0x37,0xBE,0xF1,0xCA,0xCA,0x0E,0x56,0xCE,0x46,0xB7,0xBE,0xED,0x18,0xCA,0x31,0x56,0xA9,0x9A,0x61,0x34,0x16,0x7B,0x25,0xA9,0xD8,0xC9,0x4E,0x66,0x8A,0x1E,0xA6,0xBC,0x18,0xDB,0xC9,0x4D,0xD1,0xC3,0x94,0x27,0x5C,0x37,0x55,0xA1,0x90,0xB1,0x52,0xEC,0x64,0x26,0x2D,0xD2,0x5C,0x25,0x8D,0x00,0x7E,0x0D,0x93,0x80,0x04,0x38,0xC0,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spTHINK[] PROGMEM ={0x08,0xB0,0xD4,0x14,0x01,0x19,0xBB,0x50,0x80,0x03,0x27,0x8E,0xDE,0xDC,0xA5,0x67,0x9F,0x28,0xDA,0x90,0xF0,0x9C,0xB9,0x92,0x3A,0x5B,0x8C,0xAC,0xF3,0xCD,0x6E,0xB5,0xDA,0xB2,0x12,0x55,0xBC,0x65,0x19,0xB5,0x25,0x9F,0x0C,0x27,0x79,0xB4,0x13,0x69,0x83,0x0A,0x35,0x2B,0xC7,0x60,0x80,0xBC,0x4D,0x1D,0x10,0xA3,0x91,0x02,0x8A,0x2F,0x50,0x40,0x89,0x41,0x08,0xB0,0x5E,0xF8,0x01};
|
||||||
|
//const uint8_t spTHIRD[] PROGMEM ={0x08,0xE0,0x3C,0x9D,0x00,0x92,0x56,0x30,0x40,0x12,0x0F,0x05,0x64,0x6B,0x72,0xFC,0xE4,0x24,0x4B,0x32,0xF3,0x89,0x9D,0xF5,0x4C,0x8B,0xCE,0x23,0x76,0x5D,0x24,0xD3,0xF2,0xCC,0x64,0xA6,0xB3,0xD8,0xED,0xEE,0x46,0x1F,0xA6,0x89,0x94,0xE4,0x9F,0x7D,0x1B,0xE2,0x16,0x95,0x94,0xEE,0x79,0x14,0x23,0xF1,0x61,0x95,0x65,0x8B,0x4D,0xCC,0x84,0xA5,0x4F,0xE2,0x30,0x45,0xA5,0x9A,0x11,0x2D,0xDC,0x54,0x8A,0x06,0x73,0x67,0x44,0x80,0xB2,0x6A,0x0F};
|
||||||
|
//const uint8_t spTHIRTEEN[] PROGMEM ={0x00,0x60,0x80,0xA6,0x42,0x18,0x60,0x4D,0xD8,0x8A,0x8C,0xCD,0x28,0xD3,0x46,0x27,0x31,0x21,0xBC,0x5A,0xFD,0xAE,0xD4,0xA4,0x90,0x18,0xF3,0x37,0x32,0x53,0x8D,0x63,0xCC,0x6F,0xC9,0xFC,0x56,0x16,0x0F,0xF7,0xA4,0x20,0x66,0x22,0x32,0x2D,0x01,0x10,0x40,0x0A,0xCF,0x04,0x54,0xA3,0x1C,0xFC,0x56,0x47,0x15,0x24,0xF1,0x4A,0x4A,0x72,0x21,0xCB,0xDB,0x23,0x49,0x5E,0xD8,0xBA,0x4A,0x8D,0xAC,0x19,0x65,0xAD,0x2C,0xD5,0x8A,0xE6,0x94,0xB4,0xB2,0xF4,0xA8,0x5B,0x50,0x94,0xC8,0x4A,0xAD,0x6B,0x4E,0x49,0x32,0x2B,0x97,0xBE,0x79,0x25,0xC9,0x2C,0x1D,0x86,0xEC,0x48,0x2C,0x2B,0x94,0x1B,0x83,0x21,0xF3,0x2E,0x29,0x6E,0xD4,0x46,0xAC,0xD3,0xA4,0xB8,0xD9,0x58,0x8C,0x09,0xB5,0x13,0xE6,0x94,0x21,0x4A,0x53,0x8E,0x5B,0x72,0x83,0x70,0x6F,0x25,0x76,0x81,0x07};
|
||||||
|
//const uint8_t spTHIRTY[] PROGMEM ={0x20,0x80,0x62,0x5D,0x35,0xA0,0x01,0x0B,0x9C,0x38,0x8A,0xB2,0xB4,0x68,0x75,0x12,0xE7,0xDC,0xB3,0x2C,0xCF,0x4A,0x4C,0x51,0xEB,0xD4,0x5C,0x33,0x29,0x89,0x5F,0x10,0x6E,0xD9,0x09,0x57,0x10,0x80,0xE6,0x8C,0x2C,0xB0,0x8A,0x32,0x94,0xD9,0xAA,0xCD,0x68,0xEB,0x0C,0x05,0xB6,0x77,0xBE,0xD3,0x03,0x1F,0xE9,0xF8};
|
||||||
|
//const uint8_t spTHIS[] PROGMEM ={0xA4,0xE6,0x32,0xB2,0x39,0x65,0xB3,0x9A,0xC9,0x8C,0x92,0x70,0x24,0x1A,0x65,0x42,0x9D,0x2A,0xA3,0x6A,0x8D,0x56,0x0B,0xC8,0x56,0xAA,0x35,0xCA,0x34,0xC8,0x7B,0xBB,0xA6,0x04,0x13,0x55,0x6D,0xD2,0xAB,0x93,0x85,0x20,0xE1,0xDE,0x63,0x77,0xBC,0x92,0xE8,0x25,0xDD,0x6A,0xD5,0x4D,0x77,0x5E,0xF3,0x5A,0x19,0xE0,0x69,0x16,0x0F,0x58,0xC0,0x03,0x1E,0xB0,0x80,0x05,0x2C,0xF0};
|
||||||
|
//const uint8_t spTHREE[] PROGMEM ={0x0C,0x08,0xCA,0x44,0x02,0x1A,0xB0,0x40,0xC8,0x4D,0x15,0x73,0xCB,0xB4,0x39,0x0F,0xB9,0xE9,0x14,0xE6,0xAD,0xBE,0xE4,0x7E,0x50,0x50,0xA9,0xDF,0x91,0xE5,0x25,0x05,0x21,0x79,0x47,0x5E,0x7A,0x18,0x09,0xBD,0x5F,0x45,0xCB,0xC1,0xA8,0xF6,0x76,0x56,0xAD,0x2D,0x41,0x98,0xB3,0xEF,0xD4,0x2E,0x0C,0x5E,0x89,0xE5,0x66,0x65,0x3F,0xB8,0xC1,0x6B,0xF2,0x9A,0x0E,0x63,0x46,0xAF,0x38,0xAB,0x53,0xCC,0x03};
|
||||||
|
//const uint8_t spTHREW[] PROGMEM ={0x08,0xB0,0xDC,0x18,0x01,0x41,0xBB,0x50,0x80,0x03,0x16,0x48,0x81,0x6E,0x9C,0x9A,0x92,0x25,0x67,0x35,0x6D,0x89,0x1A,0x52,0x12,0xDA,0x77,0xC4,0x3A,0x4B,0x6B,0xA9,0xAF,0x95,0xD8,0x20,0x15,0x16,0x5E,0x47,0x1A,0xB4,0x7A,0x0E,0xB6,0x9B,0xF9,0xAC,0x5B,0x9F,0x94,0xBA,0x1F,0x66,0x0F,0x83,0x91,0xDE,0xB9,0xD0,0xC6,0x4E,0x7A,0xD6,0x8B,0x5C,0x1E};
|
||||||
|
//const uint8_t spTHROUGH[] PROGMEM ={0x08,0xB0,0xDC,0x18,0x01,0x41,0xBB,0x50,0x80,0x03,0x16,0x48,0x81,0x6E,0x9C,0x9A,0x92,0x25,0x67,0x35,0x6D,0x89,0x1A,0x52,0x12,0xDA,0x77,0xC4,0x3A,0x4B,0x6B,0xA9,0xAF,0x95,0xD8,0x20,0x15,0x16,0x5E,0x47,0x1A,0xB4,0x7A,0x0E,0xB6,0x9B,0xF9,0xAC,0x5B,0x9F,0x94,0xBA,0x1F,0x66,0x0F,0x83,0x91,0xDE,0xB9,0xD0,0xC6,0x4E,0x7A,0xD6,0x8B,0x5C,0x1E};
|
||||||
|
//const uint8_t spTIME[] PROGMEM ={0x00,0x1E,0x90,0x80,0x03,0x72,0x28,0x17,0x80,0x9D,0x61,0x1E,0x38,0xB1,0xAF,0x5D,0xE6,0x5E,0xE7,0x26,0x37,0xB9,0xE9,0x4D,0x4F,0x16,0x66,0x96,0x5A,0xC4,0x3B,0x55,0x5A,0x19,0x2A,0x19,0xF7,0x56,0xA7,0xC9,0x3D,0x55,0x35,0xAB,0xEC,0x76,0x76,0xA9,0xB3,0x0E,0xDB,0xC4,0x1A,0xF9,0xDE,0x74,0xDA,0xE1,0x18,0x97,0x5B,0xDB,0xE9,0xCE,0xF4,0xD2,0x71,0x07,0x65,0xD2,0x07};
|
||||||
|
//const uint8_t spTO[] PROGMEM ={0x02,0xD8,0x51,0x3C,0x00,0xC7,0x7A,0x18,0x20,0x85,0xE2,0xE5,0x16,0x61,0x45,0x65,0xD9,0x6F,0xBC,0xE3,0x99,0xB4,0x34,0x51,0x6B,0x49,0xC9,0xDE,0xAB,0x56,0x3B,0x11,0xA9,0x2E,0xD9,0x73,0xEB,0x7A,0x69,0x2A,0xCD,0xB5,0x9B,0x1A,0x58,0x2A,0x73,0xF3,0xCD,0x6A,0x90,0x62,0x8A,0xD3,0xD3,0xAA,0x41,0xF1,0x4E,0x77,0x75,0xF2};
|
||||||
|
//const uint8_t spTOGETHER[] PROGMEM ={0x09,0x68,0x22,0xD4,0x00,0x5E,0xA6,0x9E,0x3C,0x25,0x77,0x71,0xED,0x72,0xAA,0x1C,0xC3,0x28,0xB4,0x5F,0x6B,0x72,0x75,0xC6,0x94,0x6C,0xAE,0x4D,0x9D,0x50,0x53,0x57,0x8D,0x2A,0xAF,0x60,0x74,0xDD,0x7B,0xAA,0xD2,0xCB,0x59,0xB9,0xDF,0xA9,0x72,0x76,0x57,0xF3,0x2D,0xA7,0x88,0xC9,0x53,0x35,0x96,0xDC,0x62,0x14,0xCE,0x59,0x07,0xE7,0x62,0xD7,0x46,0xA7,0xEE,0x62,0x49,0x66,0xB7,0xDA,0xEC,0xCD,0xDD,0xA8,0x7B,0x19,0x7C,0xD2,0x62,0xF3,0x65,0x65,0x74,0x31,0x9C,0x32,0xEA,0x86,0x49,0x17,0xF5,0xAC,0x4C,0x66,0x56,0x53,0xD9,0xDB,0xC3,0x89,0x58,0x4D,0x30,0x4B,0x6F,0xCB,0x0F};
|
||||||
|
//const uint8_t spTONE[] PROGMEM ={0x09,0x98,0xCA,0xD2,0x01,0x4B,0x5B,0x09,0x20,0xC4,0xB2,0x13,0x06,0x53,0x9D,0x22,0x59,0x6F,0xBC,0xE2,0xA0,0x7A,0x9C,0x25,0xED,0x48,0x82,0x9C,0x35,0xD2,0xA6,0x23,0x75,0x72,0x56,0xD9,0x92,0x96,0xCC,0xCA,0x5D,0x35,0x55,0x5A,0x2A,0x23,0xB7,0x2D,0xC8,0x4D,0xAA,0x1D,0xEF,0xF1,0x40,0xD7,0xA9,0xD5,0x76,0xD2,0x8D,0x62,0x87,0x4E,0xA6,0x0E,0x57,0x8E,0x9B,0x7A,0xA7,0xB3,0x82,0xDC,0x9E,0xEA,0x75,0xD5,0x62,0x09,0x3B,0xAA,0xB7,0x81,0x53,0xB9,0xDC,0xEA,0x5E,0xF5,0x2A,0xA8,0x1B,0x77,0x62,0x31,0x48,0xE7,0x6E,0x92,0x69,0xD8,0xC0,0x75,0x7A,0x58,0xBA,0x7E,0x00,0x00};
|
||||||
|
//const uint8_t spTOO[] PROGMEM ={0x02,0xD8,0x51,0x3C,0x00,0xC7,0x7A,0x18,0x20,0x85,0xE2,0xE5,0x16,0x61,0x45,0x65,0xD9,0x6F,0xBC,0xE3,0x99,0xB4,0x34,0x51,0x6B,0x49,0xC9,0xDE,0xAB,0x56,0x3B,0x11,0xA9,0x2E,0xD9,0x73,0xEB,0x7A,0x69,0x2A,0xCD,0xB5,0x9B,0x1A,0x58,0x2A,0x73,0xF3,0xCD,0x6A,0x90,0x62,0x8A,0xD3,0xD3,0xAA,0x41,0xF1,0x4E,0x77,0x75,0xF2};
|
||||||
|
//const uint8_t spTOP[] PROGMEM ={0x00,0x10,0x80,0x64,0x43,0x03,0xD0,0x59,0xAA,0x01,0x8A,0x1A,0x1D,0x51,0x30,0xDD,0xC1,0xD6,0xE4,0xC6,0x37,0xB9,0xE9,0xCD,0x6E,0x35,0x5A,0x9B,0xA7,0x02,0xA3,0x31,0x02,0x48,0x48,0x07,0x50,0x80,0x94,0x91,0x1C,0x00,0x80,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spTRY[] PROGMEM ={0x0E,0x28,0xA1,0xA2,0x02,0x0E,0x28,0x6D,0xCC,0x03,0x2D,0x56,0x23,0x34,0x9A,0xD2,0x8D,0x44,0xA7,0x71,0x6B,0xD8,0x72,0x12,0x6F,0xA6,0xAC,0xB0,0xCB,0x49,0x82,0x9D,0x4A,0x91,0x26,0x37,0xB9,0xE9,0xC9,0x93,0xED,0x0A,0xD5,0xC6,0xB7,0x3A,0x6D,0xCC,0xE1,0xE6,0x3E,0x67,0x77,0xB3,0x9F,0x7D,0x19,0x42,0x51,0x8B,0xE8,0xB0,0x65,0x88,0xC1,0xC5,0x3B,0xC2,0xA4,0x21,0x38,0xB5,0xCC,0x0A,0xEC,0x86,0x54,0x84,0xD4,0x3B,0xF4,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spTRY_AGAIN[] PROGMEM ={0x0E,0x28,0xA1,0xA2,0x02,0x0E,0x28,0x6D,0x6C,0xC4,0xB6,0xAB,0xA5,0x8B,0xDB,0x15,0xEB,0xEE,0x5E,0xCE,0x6B,0x4E,0xE2,0xED,0x84,0xB9,0x26,0xBE,0xD1,0x0D,0x57,0x10,0x8B,0x9B,0xEB,0x44,0xD9,0xC1,0x0E,0x57,0x1C,0x8B,0x99,0xDB,0x46,0x39,0x69,0x8E,0xA6,0xEE,0x35,0x7B,0x64,0x35,0x26,0xF2,0x44,0xA7,0x94,0xE7,0x24,0x60,0x1B,0x15,0x55,0xCE,0x45,0x66,0x35,0x3B,0x29,0x45,0xD1,0xCC,0x6E,0xE1,0x66,0x64,0xD5,0x39,0x53,0x74,0x9B,0x13,0xE7,0xE0,0xAC,0x55,0xB3,0x4F,0x5C,0x5D,0x98,0x45,0xCC,0xBE,0xD1,0x8D,0x6E,0x72,0xF3,0x5B,0xAD,0x36,0x46,0x4F,0x95,0x8C,0x32,0xFB,0xDE,0x87,0xDE,0x66,0x35,0xD7,0x70,0xE5,0x06,0x4F,0x53,0xCC,0xBC,0x95,0x1A,0xA4,0xD5,0x08,0x19,0xC7,0x0F};
|
||||||
|
//const uint8_t spTURN[] PROGMEM ={0x0A,0xE8,0x3A,0x35,0x02,0x02,0xF0,0x39,0x84,0x00,0x22,0xB5,0x9C,0x28,0xEA,0x31,0x5E,0x57,0x77,0xA3,0x1B,0xDF,0xE4,0x66,0xAB,0x88,0x7E,0x05,0x27,0xB8,0xCF,0x6A,0x54,0xB1,0x0C,0x73,0xAB,0xF6,0x59,0xF7,0x3A,0x35,0x29,0x40,0x4B,0x58,0xE2,0xDC,0xD4,0x36,0xB5,0xD1,0x41,0x6B,0x59,0xAC,0xDC,0x3E,0x00,0x00};
|
||||||
|
//const uint8_t spTWELVE[] PROGMEM ={0x0C,0x70,0x33,0x5D,0x01,0xAE,0x64,0x84,0x80,0xD5,0x5E,0x11,0xDA,0x1A,0x93,0x95,0x9A,0x98,0x95,0xE4,0x6D,0x6F,0xBA,0xD3,0x9B,0xAE,0x5C,0xA7,0x49,0xC7,0x4A,0xB2,0x8B,0x5D,0xED,0x7A,0xD4,0x3A,0x4C,0x1B,0x59,0xE6,0x59,0xF7,0x26,0x35,0xDA,0x65,0x0B,0x4B,0x1C,0xD3,0x48,0x93,0x21,0x6A,0x6A,0x4B,0x9B,0x4D,0x98,0xA2,0xD9,0x51,0x80,0xB3,0xA9,0x0C,0x30,0x21,0x91,0x00,0xD2,0xA7,0x3E};
|
||||||
|
//const uint8_t spTWENTY[] PROGMEM ={0x0A,0x30,0x21,0xDC,0x03,0x0A,0xD0,0x51,0x1D,0x56,0xA4,0xF3,0x94,0x98,0xE5,0x39,0x69,0x0C,0x95,0xEA,0xDC,0xE4,0xA4,0x39,0x85,0x9B,0xD9,0xDC,0x93,0x96,0x1A,0xEE,0x98,0xF5,0x5A,0x61,0xBD,0xBA,0xC9,0x59,0x31,0x85,0x12,0xAE,0xE3,0x66,0x4B,0x54,0xD9,0x1B,0x67,0xB8,0xD3,0x00,0x14,0x13,0xEC,0x80,0x6C,0x93,0x4A,0x9C,0x87,0x93,0x50,0x34,0x6E,0x75,0xAA,0x10,0x32,0x17,0x25,0xF5,0x65,0xA2,0x51,0xCD,0xEC,0x30,0xC4,0x88,0x5C,0x53,0x81,0xED,0xF8};
|
||||||
|
//const uint8_t spTWO[] PROGMEM ={0x02,0xD8,0x51,0x3C,0x00,0xC7,0x7A,0x18,0x20,0x85,0xE2,0xE5,0x16,0x61,0x45,0x65,0xD9,0x6F,0xBC,0xE3,0x99,0xB4,0x34,0x51,0x6B,0x49,0xC9,0xDE,0xAB,0x56,0x3B,0x11,0xA9,0x2E,0xD9,0x73,0xEB,0x7A,0x69,0x2A,0xCD,0xB5,0x9B,0x1A,0x58,0x2A,0x73,0xF3,0xCD,0x6A,0x90,0x62,0x8A,0xD3,0xD3,0xAA,0x41,0xF1,0x4E,0x77,0x75,0xF2};
|
||||||
|
//const uint8_t spTYPE[] PROGMEM ={0x02,0xC8,0xCA,0xDC,0x03,0x06,0x48,0x36,0xBC,0xC4,0xD9,0xA4,0xA5,0x4A,0xAC,0x93,0xBA,0x52,0x19,0x5C,0x51,0x4F,0x1A,0x53,0x65,0xB2,0xCF,0x39,0x59,0xAC,0x91,0xC1,0xD5,0xE4,0x14,0x69,0x84,0xB9,0x66,0x9D,0x55,0xE5,0x69,0xAA,0xDA,0x75,0x47,0x53,0xBA,0xA8,0x59,0x55,0x0D,0x6D,0x48,0x6C,0xEE,0x71,0x19,0x00,0x10,0x40,0x72,0x05,0x02,0x64,0x8C,0x44,0x80,0x8E,0xA9,0x08,0x50,0x29,0xF4,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spU[] PROGMEM ={0xA5,0xDA,0x0D,0x98,0x23,0x6F,0xF4,0x6A,0x55,0x33,0xA9,0x82,0xC6,0xEB,0x91,0xF5,0x68,0x02,0x11,0x5B,0x67,0x36,0x32,0x2B,0xA2,0x24,0x75,0x75,0xCF,0x7B,0xD5,0x9B,0xD6,0x5A,0x61,0xE5,0x49,0xDD,0x6A,0x97,0xFB,0xD8,0xFB,0x5E,0x77,0xA2,0xB3,0x2C,0x45,0x25,0x8D,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spUHOH[] PROGMEM ={0x2B,0xB5,0x31,0x46,0x3C,0x6D,0x9D,0x38,0xB8,0x6A,0xE7,0x5C,0x7C,0x7C,0x53,0xCA,0xCD,0xD7,0xEA,0x76,0xBA,0x45,0x00,0xAD,0xAB,0x00,0x10,0x20,0x6A,0x46,0x08,0xBC,0xCB,0x31,0xB5,0x3A,0x2B,0xF7,0x3A,0x37,0x9C,0xBA,0xDD,0xE2,0x56,0xB7,0xBA,0xD5,0xAA,0x8C,0xAA,0x0B,0xC7,0xB4,0xB3,0x1A,0x95,0x56,0xFD,0x62,0x92,0xB6,0x55,0x8E,0xF5,0x9B,0x29,0xFB,0x52,0xC9,0x38,0x1E,0x46,0x4E,0x44,0xC5,0x9B,0xB7,0xB1,0xC9,0x79};
|
||||||
|
//const uint8_t spUNDER[] PROGMEM ={0xA7,0xC8,0x3A,0xAB,0x54,0x9A,0xDE,0xE2,0x16,0xA7,0x48,0x3E,0x4B,0xC9,0xE7,0x94,0xC2,0x04,0x49,0xB2,0xF4,0x1D,0x33,0x9F,0xBB,0x4A,0x7A,0x29,0xD7,0x89,0x6D,0x2A,0x66,0xC3,0xD2,0x7D,0x61,0x69,0x5B,0xB5,0x22,0x66,0x39,0xB7,0x3E,0x6D,0x4C,0xE1,0x64,0xD6,0x7E,0x74,0x2E,0xBB,0xC8,0x46,0xF2,0xDE,0xD7,0x31,0x8C,0xAE,0xB1,0x44,0x5B,0x56,0x37,0x9A,0x81,0x5E,0x1D,0x8E,0xDD,0xE8,0x87,0x92,0x46,0xBA,0x56,0x63,0x9C,0x21,0x28,0xA2,0xF6,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spUNDERSTAND[] PROGMEM ={0xAB,0xF0,0xC9,0x8F,0xA3,0x1C,0x9F,0xCA,0xA7,0x2A,0xD5,0xA8,0x73,0xAB,0x53,0xA5,0xD0,0xA1,0xE4,0x4D,0x52,0xA5,0x83,0x06,0x45,0x36,0x09,0x95,0x08,0xDA,0xE6,0xED,0xD0,0x54,0xB8,0x7A,0xB4,0xA5,0xC4,0xD2,0x44,0xAD,0xCA,0x16,0x71,0x5A,0xED,0xAB,0x09,0xB7,0xA7,0x9F,0xF5,0x6C,0x46,0x13,0xA6,0x2B,0xA6,0x79,0x4B,0x40,0xE7,0xA0,0x01,0xF8,0x49,0x35,0x02,0x0E,0xF8,0xD1,0x58,0x00,0xDF,0x30,0x82,0x00,0x78,0xF1,0x5A,0xB1,0x8F,0x6E,0xE6,0x13,0xF7,0xE4,0x31,0x87,0xA9,0x4D,0xD3,0x9B,0xEF,0x62,0x56,0xB3,0x1A,0x8D,0x2F,0xE6,0xE6,0x6D,0xB9,0xF7,0xA5,0xB7,0xCD,0xD4,0xAD,0xAD,0xD4,0x3E,0xF4,0xD6,0x51,0x9B,0x95,0x66,0xDF,0x9B,0x9E,0x79,0x9B,0x92,0x92,0x9C,0x7B,0xD7,0x63,0x5F,0x99,0xE6,0x32,0xC3,0x50,0x94,0x8B,0x78,0x6C,0xB0,0xC3,0x03,0x00,0x00};
|
||||||
|
//const uint8_t spUNTIL[] PROGMEM ={0xA7,0x72,0xBE,0xDA,0x25,0xEB,0x9C,0x2A,0xB8,0x2A,0xE7,0xAA,0x7D,0xAB,0x56,0x19,0xA7,0x6E,0x6A,0xCD,0x72,0x95,0xAB,0x54,0x5B,0x8B,0x6D,0x9E,0x9A,0x6D,0x2B,0xFA,0x60,0x4D,0x43,0xD4,0x71,0x02,0xAA,0x4A,0x49,0xC0,0x92,0x29,0x02,0x90,0x3E,0x72,0x25,0xC9,0xB9,0x98,0xFB,0x93,0x9B,0xDC,0x74,0x65,0x31,0x86,0xA9,0xD9,0x93,0x95,0x7B,0xEF,0xE5,0xEA,0x6B,0x56,0x65,0x5D,0x8C,0x6B,0x74,0x4A,0x35,0x9F,0x3D,0x42,0x9D,0x2A,0x37,0xB1,0x0D,0x2D,0xDF,0xDD,0x2C,0x99,0xDA,0xB5,0xEC,0x74,0x18,0x96,0x63,0xD5,0xD2,0x3B,0x6C,0x92,0xB1,0x55,0x4B,0xDB,0xA6,0x41,0x39,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spUP[] PROGMEM ={0x2B,0xB1,0x29,0x47,0xBC,0x1A,0xDF,0x6C,0x65,0xA6,0xD4,0x88,0x4E,0xE3,0x5D,0xB4,0x4A,0xE5,0x5A,0x97,0x6C,0xED,0x2B,0x00,0x60,0x40,0x4C,0xAE,0x08,0x50,0xCE,0x0D,0x03,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spUPPER[] PROGMEM ={0x27,0xCF,0x2E,0xD6,0x55,0xF2,0x9C,0xCC,0x85,0x1A,0xF6,0x4C,0xD5,0x32,0x55,0x73,0xA8,0xCA,0x36,0x00,0x01,0x48,0x6C,0x77,0x40,0x4C,0x6E,0x29,0xB3,0x8B,0xCA,0x5D,0xD6,0xF6,0xAA,0xD5,0x76,0x63,0xA4,0xC9,0xE2,0xDA,0xA6,0xCE,0x2E,0xD2,0x4A,0x5E,0x1C,0x7A,0x33,0xB1,0x5A,0xBD,0xA6,0x1B,0xDC,0x60,0xA9,0x90,0x94,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spUSE[] PROGMEM ={0xAD,0x3A,0x3D,0x03,0x80,0xB7,0xAD,0xA2,0xB7,0x49,0x60,0xCE,0x7F,0x8A,0x9E,0xD2,0xC0,0xB8,0xFF,0x2D,0x4E,0x51,0xAD,0x29,0x27,0xEF,0x9B,0xC5,0xAC,0x5A,0x55,0x99,0xB4,0xA6,0xF4,0xEB,0xD5,0xAC,0x66,0xDD,0x9B,0xD2,0x38,0xE1,0xA1,0x2E,0x8F,0x6B,0x43,0x00,0xA4,0x3F,0x04,0xB0,0x0D,0x82,0x00,0x7E,0x53,0x60,0xC0,0xF7,0x2C,0x0C,0x38,0x16,0xED,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spV[] PROGMEM ={0xA5,0x4A,0x3E,0x44,0x58,0x9D,0xAD,0xAA,0xA4,0x10,0x56,0x69,0x7A,0x8B,0x5B,0x9C,0xA2,0x95,0x20,0xD4,0x78,0xBA,0x8A,0x96,0x9C,0xC8,0xF3,0xE9,0xA8,0x5A,0x76,0xC4,0xA8,0xA7,0xA3,0x6A,0xD1,0x11,0x33,0xEF,0xB4,0xBA,0x07,0x23,0xAA,0xBA,0xDD,0x9A,0x16,0x14,0x29,0xEB,0x4E,0x68,0x6A,0x14,0x94,0xAA,0x29,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spVARY[] PROGMEM ={0xA6,0xD5,0xDA,0x4C,0x39,0xB2,0xA6,0x2E,0xB8,0x08,0x15,0xDB,0x7C,0xAB,0x53,0xD8,0x14,0xEE,0x3E,0x8D,0x6F,0x7E,0xD3,0x9B,0x9E,0x2C,0xA4,0xD4,0x70,0x5B,0xBD,0x2A,0xD7,0x5D,0xC3,0x6D,0xCD,0x6D,0x5A,0x6B,0x16,0x57,0x98,0xB4,0xE9,0xDD,0xE8,0xFD,0x56,0xD7,0xE4,0xEE,0x6D,0x48,0x9D,0x52,0x22,0xDA,0x96,0x29,0x36,0x61,0xAB,0x78,0x93,0xC6,0xA4,0x8D,0xB5,0x6A,0x4E,0x1C,0xDD,0x94,0xBC,0x81,0x76,0x57,0xD6,0x93,0x9E,0xF4,0xF8};
|
||||||
|
//const uint8_t spVERY[] PROGMEM ={0xAE,0x31,0xC6,0x8D,0x4C,0x36,0x95,0x26,0x3B,0x57,0x75,0xDF,0x7A,0xF3,0x9B,0xDF,0xFC,0x64,0xC9,0xBB,0xAA,0x67,0xD7,0x93,0xA7,0x14,0x2A,0x61,0xF9,0x4E,0xE1,0x87,0xB3,0x07,0xE7,0xDB,0xD5,0xAE,0x57,0xEB,0x67,0x88,0x06,0x67,0x5F,0x5D,0xE8,0x2E,0x1A,0xD2,0x7D,0x0E,0x65,0x88,0x49,0x45,0xC7,0x5F,0x97,0x31,0x79,0x65,0x8B,0x5C,0x95,0xA7,0x3C,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spW[] PROGMEM ={0xAC,0xC1,0xAA,0xA2,0xB2,0x1C,0x0F,0x67,0x98,0x08,0x56,0x4F,0x77,0x0A,0x5B,0xD5,0xA3,0xBA,0xD5,0xC8,0x74,0xB7,0xF4,0xDA,0x58,0x23,0x55,0x2D,0xD3,0xAC,0x67,0xC6,0xD4,0xE4,0xC2,0x7F,0xA8,0x7A,0xCB,0x5E,0x8C,0x4A,0xA9,0x6D,0x73,0xE9,0x35,0x2A,0xAB,0x33,0x2D,0xF0,0xCF,0x6A,0xAA,0xF1,0xE4,0x20,0xFF,0xAD,0x9D,0x9E,0x1C,0xB5,0x5B,0xF7,0x2E,0xF5,0xC5,0xAB,0x42,0xFB,0xEB,0xDE,0xB7,0x3E,0x15,0x61,0x29,0xDB,0x53,0x86,0x98,0x54,0xE4,0xE4,0x4B,0x19,0xAC,0x75,0xD7,0x95,0xCF,0x61,0xD0,0xD6,0xDD,0x47,0x76,0xBB,0x51,0x86,0xD4,0x32,0xDB,0x6D,0x46,0xA5,0xDB,0x3A,0xD4,0xAF,0x19,0x9D,0x71,0x99,0x54,0x37,0xAA,0xF5,0x5A,0xA5,0x5C,0x94,0x3C};
|
||||||
|
//const uint8_t spWAIT[] PROGMEM ={0xA6,0x61,0xB6,0x5E,0x14,0xDD,0xB8,0x9A,0xF9,0x7E,0x16,0xF2,0xE3,0x2A,0x56,0x7B,0x45,0x68,0x6B,0x2B,0x94,0x8F,0x0D,0xE3,0x2D,0x27,0x8F,0xD1,0xDC,0x43,0xB6,0x9C,0x22,0x66,0x35,0xF3,0x9C,0x73,0xAA,0x1C,0x94,0xB5,0x72,0xF6,0xAC,0x7B,0xEB,0x7A,0x6B,0x38,0xB2,0x3A,0x8C,0xEE,0x01,0x00,0x1C,0x50,0x99,0x87,0x02,0x9A,0x2A,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spWANT[] PROGMEM ={0xA1,0x56,0x3C,0xDE,0x99,0x2D,0xBB,0x9A,0xDB,0x7D,0x47,0x4A,0xDC,0x6A,0x11,0xFE,0x0D,0xA4,0xED,0xA8,0x8C,0xFE,0x55,0xD2,0x66,0xBB,0x3A,0x55,0x54,0x33,0xC1,0xD2,0xE6,0xD6,0xB7,0x59,0xAD,0x8B,0x93,0xC6,0x5E,0xA7,0x77,0xA9,0xB3,0x25,0x34,0xA4,0xA2,0xA4,0xCE,0xAB,0x30,0x33,0x75,0x1A,0x7B,0x00,0x07,0x78,0xE5,0x24,0x01,0x78,0x00,0x00};
|
||||||
|
//const uint8_t spWANTS[] PROGMEM ={0xAA,0xC2,0xB1,0x5F,0xD1,0xE5,0xA6,0x9A,0xFB,0x7A,0x07,0x49,0xD7,0x2A,0xE9,0xEB,0x0D,0x34,0xEF,0xA8,0x8C,0xC9,0x77,0xF0,0xB6,0xAD,0x30,0xBE,0x5F,0xB0,0x1A,0xCD,0x7C,0x14,0x66,0x8D,0x48,0xA4,0xD9,0x5E,0xF5,0x26,0xB5,0x66,0xB4,0xB2,0x95,0xD9,0xD0,0xDA,0xAB,0xA6,0x9E,0x8A,0x4D,0xA7,0x62,0x71,0x70,0xDB,0x62,0xB9,0xB3,0xAA,0x41,0x9E,0x14,0x80,0x00,0x41,0xB8,0x0A,0x60,0xB2,0x0C,0x01,0xFC,0x6E,0xCE,0x80,0x3F,0x4C,0x08,0xF0,0x8D,0x2A,0x02,0x3E,0x17,0x7F,0x00,0x00};
|
||||||
|
//const uint8_t spWAY[] PROGMEM ={0xAA,0xC1,0x69,0x2A,0xD4,0x98,0xB8,0x9A,0xB9,0x7E,0x55,0x56,0x52,0x6A,0x69,0xEA,0x85,0x31,0xEB,0xAA,0xB4,0xCE,0x37,0x92,0xBC,0xA7,0xB2,0x2E,0x47,0x54,0xB7,0x9C,0x22,0x67,0x73,0xD3,0x58,0x7A,0xF3,0x53,0x94,0xEC,0x6C,0x5E,0x8B,0x6F,0x75,0xAB,0x5B,0xDF,0xE6,0x74,0x2D,0x3A,0x49,0xE4,0xE2,0xDD,0x8D,0xBE,0xE7,0x20,0xF2,0x7A,0xD5,0xFA,0x5A,0x84,0x34,0x66,0x52,0xEA,0x4B,0x64,0x8C,0x9C,0xC2,0xAE,0xF7,0x5C,0x75,0xC6,0x83,0xA8,0x5E,0x73,0xB7,0x6B,0x15,0xAB,0x7A,0xA3,0x38,0xCE,0xDC,0xAA,0xE8,0x8C,0x34,0x6A,0x33,0xA7,0x0F};
|
||||||
|
//const uint8_t spWE[] PROGMEM ={0xAC,0xC5,0x63,0x23,0x90,0x9D,0xC8,0x36,0xB5,0xD2,0x77,0x89,0x50,0x9F,0x55,0xA7,0xC0,0x9C,0x5D,0x33,0x77,0x3D,0xEA,0xE6,0x8D,0x61,0x7A,0xF2,0xAC,0x67,0x35,0xAB,0x59,0x8F,0xA6,0x55,0x63,0xB0,0xBA,0x93,0x1B,0xDD,0xC8,0xC6,0xB4,0xC9,0x81,0x75,0x95,0x99,0x07};
|
||||||
|
//const uint8_t spWEIGH[] PROGMEM ={0xAA,0xC1,0x69,0x2A,0xD4,0x98,0xB8,0x9A,0xB9,0x7E,0x55,0x56,0x52,0x6A,0x69,0xEA,0x85,0x31,0xEB,0xAA,0xB4,0xCE,0x37,0x92,0xBC,0xA7,0xB2,0x2E,0x47,0x54,0xB7,0x9C,0x22,0x67,0x73,0xD3,0x58,0x7A,0xF3,0x53,0x94,0xEC,0x6C,0x5E,0x8B,0x6F,0x75,0xAB,0x5B,0xDF,0xE6,0x74,0x2D,0x3A,0x49,0xE4,0xE2,0xDD,0x8D,0xBE,0xE7,0x20,0xF2,0x7A,0xD5,0xFA,0x5A,0x84,0x34,0x66,0x52,0xEA,0x4B,0x64,0x8C,0x9C,0xC2,0xAE,0xF7,0x5C,0x75,0xC6,0x83,0xA8,0x5E,0x73,0xB7,0x6B,0x15,0xAB,0x7A,0xA3,0x38,0xCE,0xDC,0xAA,0xE8,0x8C,0x34,0x6A,0x33,0xA7,0x0F};
|
||||||
|
//const uint8_t spWEIGHT[] PROGMEM ={0xA6,0x61,0xB6,0x5E,0x14,0xDD,0xB8,0x9A,0xF9,0x7E,0x16,0xF2,0xE3,0x2A,0x56,0x7B,0x45,0x68,0x6B,0x2B,0x94,0x8F,0x0D,0xE3,0x2D,0x27,0x8F,0xD1,0xDC,0x43,0xB6,0x9C,0x22,0x66,0x35,0xF3,0x9C,0x73,0xAA,0x1C,0x94,0xB5,0x72,0xF6,0xAC,0x7B,0xEB,0x7A,0x6B,0x38,0xB2,0x3A,0x8C,0xEE,0x01,0x00,0x1C,0x50,0x99,0x87,0x02,0x9A,0x2A,0x79,0x00,0x00};
|
||||||
|
//const uint8_t spWELL[] PROGMEM ={0x80,0x12,0xD4,0x26,0x55,0x4D,0x89,0xAE,0x42,0x45,0x5B,0x0F,0xB2,0x67,0x6E,0xB9,0x48,0xF5,0x2A,0xDA,0xE7,0x64,0xC6,0x7B,0xB7,0x46,0xEB,0x9B,0xDD,0xF4,0x66,0xB7,0x58,0x95,0x4E,0xB9,0x2E,0x13,0xA7,0x35,0x72,0x4E,0xBA,0x46,0x95,0xDE,0xF6,0x2E,0x75,0xFC,0x4E,0xB2,0x69,0xAA,0xD8,0x9B,0x9E,0xDD,0x0E,0xF4,0x74,0x65,0x7A,0x76,0x5B,0x54,0xCA,0xF1,0x03};
|
||||||
|
//const uint8_t spWERE[] PROGMEM ={0xA2,0xC6,0x61,0x3A,0xD4,0x18,0xBB,0x9A,0xF9,0x7E,0x65,0x74,0x9A,0x6A,0x61,0xEB,0x43,0x21,0xFD,0xAA,0xAD,0xCA,0x8E,0x00,0xE7,0xAB,0xB6,0xCE,0xA3,0x86,0x9D,0xAF,0x5A,0xE5,0x88,0x48,0xCA,0xBE,0x2A,0x93,0x93,0xA3,0xC4,0xFF,0xAC,0x46,0xE5,0x72,0x93,0xAC,0x6B,0x9F,0x55,0xAF,0x7A,0xD5,0x2A,0xD7,0x9A,0x64,0x5C,0xFB,0xA8,0xFD,0x68,0x96,0x12,0xED,0xA5,0xF1,0x23,0x48,0x9B,0x3D,0xBB,0xD6,0xBB,0x20,0x0A,0x53,0xA3,0xBA,0x10,0x92,0x89,0x53,0x95,0x68,0xA3,0x0E,0x53,0x0B,0xC7,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spWHAT[] PROGMEM ={0x26,0xA4,0xE3,0x93,0x54,0x93,0xA4,0x44,0xD9,0x3F,0x11,0x4D,0xDB,0x12,0xED,0x7E,0x4C,0xB4,0xEE,0x48,0x4D,0xDC,0x32,0xC9,0x24,0x3B,0x1B,0x85,0x2F,0xE3,0x2E,0xD1,0xE4,0x56,0xB5,0xD5,0x3D,0x28,0xC0,0xB3,0x0A,0x0B,0x50,0xE0,0x01};
|
||||||
|
//const uint8_t spWHAT_WAS_THAT[] PROGMEM ={0x00,0xA9,0x62,0xAD,0x1F,0x38,0x3A,0x9F,0x4A,0x87,0x7C,0x12,0x6D,0x73,0x2A,0xE7,0xE3,0x4D,0x3D,0xF5,0x29,0x6C,0xCF,0x64,0xAF,0xC4,0x37,0x6F,0x55,0xD0,0x69,0x92,0xEA,0x24,0x00,0x59,0x85,0x1B,0x20,0x84,0x34,0x06,0xF8,0xEC,0x82,0x00,0xED,0xCC,0x52,0xC1,0x6A,0x46,0x6A,0x26,0x3E,0x75,0x54,0x99,0x62,0xD2,0x7D,0x34,0x45,0x44,0xB1,0x72,0x7E,0x07,0x68,0x5C,0xE3,0x00,0x0F,0x6C,0x0D,0x50,0x00,0x19,0x01,0x34,0x71,0x76,0x45,0x8B,0x13,0x66,0x22,0x77,0x54,0xDE,0xBB,0xAB,0xF2,0xEA,0x53,0xF9,0x10,0x61,0x6A,0x6F,0x4E,0xE5,0x9A,0x87,0xC6,0x4C,0x39,0x45,0x8C,0x65,0x66,0xFE,0x78,0x65,0x3E,0xA7,0x7A,0x44,0xE9,0x95,0x85,0x5C,0xEA,0x1E,0x95,0x47,0x11,0x4B,0x99,0x69,0x4C,0x01,0x07,0x0C,0x13,0xA1,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spWHEN[] PROGMEM ={0x25,0x95,0xE1,0x9A,0xCC,0x56,0x8D,0xC4,0xA5,0x0E,0x15,0xBD,0xB3,0x92,0xD8,0xDC,0x55,0xBB,0xEA,0x4E,0x76,0x7A,0xF3,0x5B,0xDD,0x66,0x75,0xA9,0x65,0x09,0x7B,0xEB,0xD0,0x9B,0xA8,0xC6,0xD4,0xA9,0xE2,0x10,0x07,0x3F,0x98,0xC1,0x59,0x6C,0xB1,0x76,0x6D,0x47,0x3B,0x3E,0x00,0x00};
|
||||||
|
//const uint8_t spWHERE[] PROGMEM ={0x00,0x29,0x63,0xB5,0x57,0x58,0xD3,0x8E,0x4C,0xC7,0x6C,0x55,0xEB,0xBB,0xB2,0x98,0x5D,0xD5,0x75,0xCF,0xCD,0x77,0xB1,0xAB,0x5B,0x9F,0x26,0x96,0x64,0x2D,0xCB,0xB7,0xBB,0xD1,0x87,0xE1,0xE2,0x25,0x7D,0x67,0xDF,0x06,0xDF,0x55,0xA2,0xB5,0x4B,0x1A,0xFC,0xA4,0xA8,0xD0,0x45,0x6E,0x08,0x17,0x33,0x24,0x67,0xBA,0x21,0x6C,0x15,0xD5,0x70,0xAC,0x86,0xB8,0xC4,0x04,0xC5,0xE9,0x03};
|
||||||
|
//const uint8_t spWHICH[] PROGMEM ={0x0C,0x50,0xC9,0x53,0x01,0x26,0xBB,0x6B,0x20,0x45,0x3C,0x74,0x89,0x71,0x9A,0x1A,0xAD,0x38,0x78,0x57,0xEB,0x58,0xBA,0x93,0x9B,0x8F,0x2A,0x26,0x27,0xCF,0x98,0x2D,0x2B,0x00,0x30,0xC0,0xDD,0xED,0x1A,0xD0,0x80,0x06,0x24,0x20,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spWHITE[] PROGMEM ={0x08,0x30,0xD5,0x0D,0x4A,0x2A,0xD2,0xBC,0x12,0xA7,0x1A,0xA9,0xF6,0xF9,0xCE,0xDC,0x66,0xA5,0x36,0xD5,0x0B,0x47,0xDB,0x93,0xBA,0x5A,0x6B,0xE2,0x4D,0x4F,0x1A,0x7A,0xB6,0x4B,0x34,0x39,0x59,0x1A,0x99,0x26,0xDA,0xF4,0x14,0x75,0x84,0xA9,0x79,0xDA,0x5B,0xA7,0x36,0x05,0x96,0x88,0x2A,0x0B,0x00,0x40,0x00,0x56,0x5B,0x1C,0xD0,0x74,0x19,0x03,0xB8,0x4F,0x7B};
|
||||||
|
//const uint8_t spWHO[] PROGMEM ={0x00,0x08,0x50,0x31,0x15,0x01,0x5A,0x35,0x1B,0x40,0xD9,0x96,0x92,0xF0,0x18,0x19,0xE2,0x89,0x56,0xE4,0x64,0xA4,0xBB,0xE6,0x19,0x91,0x11,0x59,0x11,0x9A,0xBB,0xC5,0x46,0x64,0x6B,0xF0,0x96,0x9E,0x94,0xCC,0x13,0x1F,0x2B,0xCA,0x5E,0xAB,0xDA,0xD4,0x36,0x74,0x86,0x57,0x89,0x63,0x7F,0xD7,0x0B,0x3D,0x29,0xCE,0x6B,0xD4,0x40,0xCA,0xB8,0x9A,0x37,0x56,0xA3,0xD4,0xE5,0xA6,0x6A,0xE7,0x01};
|
||||||
|
//const uint8_t spWHY[] PROGMEM ={0x0C,0x10,0x21,0x82,0x01,0xD2,0x77,0x26,0x3C,0x6B,0xAA,0x13,0xB1,0x72,0x72,0xE3,0xF2,0x1D,0xA5,0xCD,0xC9,0x9C,0xCD,0x77,0x92,0x35,0x27,0x77,0xBE,0x4F,0x29,0x9A,0xEC,0xE2,0x56,0xB7,0x3A,0xB5,0x8F,0x5D,0x66,0x96,0xF4,0x76,0xA7,0x8B,0xD9,0xCB,0xCD,0x9A,0xDC,0x7E,0xF5,0xA9,0xBA,0x99,0xE7,0x94,0xD9,0x8F,0x21,0x15,0x53,0xAD,0xAC,0xD2,0x86,0x14,0xD9,0xDD,0x27,0x48,0x1A,0xB2,0x67,0x8D,0xCA,0x40,0x6E,0x28,0x8D,0xC8,0xAC,0xCA,0x02,0x00,0x90,0x2E,0x98,0x74,0xB7,0x74,0xF3};
|
||||||
|
//const uint8_t spWILL[] PROGMEM ={0x2C,0xC5,0xA1,0x2B,0x3D,0x64,0x89,0x06,0x95,0xE9,0x10,0xA3,0x65,0x2A,0xE6,0xE6,0x99,0x31,0x69,0xA9,0x85,0xA9,0x37,0xC1,0xAE,0xAB,0x32,0x36,0x9B,0x4D,0xF7,0x9D,0xCA,0x59,0xF7,0x94,0x9A,0x7D,0x8B,0x5B,0xAC,0xCA,0x9A,0x4E,0x97,0xB8,0xBD,0xAB,0x5D,0x8F,0xC6,0xD8,0x5A,0x87,0x6C,0x3A,0xDB,0xDE,0x96,0x56,0xC4,0x59,0xA3,0x70,0xE2,0x5A,0x76,0xBB,0x18,0xCB,0x9E,0xEB,0xD8,0xE9,0x44,0x0D,0xC7,0xA6,0x63,0xB3,0x8B,0x38,0x1D,0xAB,0x8E,0xDB,0x29,0x17,0xA7,0xFD};
|
||||||
|
//const uint8_t spWITH[] PROGMEM ={0xA6,0x65,0xAE,0xCF,0x14,0x6C,0xDB,0x36,0x36,0xA5,0x32,0x3C,0xDE,0x0D,0x94,0xAF,0xCA,0x8A,0x1C,0x11,0x4B,0xBF,0x72,0x63,0x3C,0xA3,0xAC,0xCB,0xCA,0x9D,0xB1,0x88,0x8B,0x99,0xB3,0x98,0xD5,0x6C,0x72,0x8B,0x00,0xAE,0x5D,0x08,0xE0,0x8D,0x0B,0x01,0x82,0x72,0x25,0x40,0x54,0x6E,0x04,0x88,0xDA,0x8D,0x01,0xD6,0xBA,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spWON[] PROGMEM ={0xA6,0xA5,0x36,0xDF,0x89,0xEC,0xA5,0x86,0xDB,0xF9,0x42,0x56,0x9A,0x2A,0xE1,0xFB,0x0B,0x38,0x7D,0x6F,0x46,0x63,0x7C,0x9D,0x62,0x25,0x9E,0xCD,0x28,0x5C,0xAC,0x32,0xEA,0x38,0xBB,0x1A,0x4D,0x88,0x56,0x2A,0x53,0x67,0x76,0x79,0x70,0x83,0xF3,0x94,0x6C,0xE9,0xD6,0x0C,0xCE,0x61,0x8A,0xB4,0x3B,0x36,0xCA,0x20,0x1A,0xDC,0xAD,0xCD,0x28,0x8D,0x78,0x7B,0x5B,0x26,0x93,0x10,0x6A,0x95,0x9E,0xDA,0x4C,0x25,0x85,0x9A,0x5A,0x9A,0x07};
|
||||||
|
//const uint8_t spWORD[] PROGMEM ={0xA1,0x61,0x76,0xDF,0x80,0xE3,0xA7,0x8A,0xDE,0x74,0xB2,0xC8,0x5D,0x2A,0x7E,0xC5,0xDC,0xB2,0x67,0x29,0xF8,0x72,0xC9,0x90,0x4E,0xA5,0x90,0x35,0x25,0x87,0xB3,0xD4,0xA2,0x56,0xAD,0xB2,0x25,0x30,0x96,0xF3,0xF4,0x66,0x34,0x21,0x37,0x71,0x9B,0xFE,0xD9,0xAE,0x36,0xC6,0x66,0x4A,0xD7,0xBF,0xDA,0x14,0x5A,0xD0,0xCB,0x7D,0x69,0xE3,0x0C,0xC6,0xB0,0xE4,0xAA,0xA5,0x51,0xB5,0x63,0x64,0xEB,0x4E,0x74,0x24,0xB8,0x46,0xB7,0x2D,0xDD,0xEB,0x9E,0xF7,0x00,0x00,0xA4,0x49,0x26,0x2D,0x4C,0xEC,0x3C};
|
||||||
|
const uint8_t spWORDS[] PROGMEM ={0xAA,0xC0,0x71,0xAA,0xD4,0xE4,0xB8,0x9A,0xFB,0x7D,0x45,0x4A,0x5E,0x2A,0x96,0xBB,0xCD,0xD8,0xFD,0xA8,0x64,0xF7,0x30,0x27,0xFF,0xA3,0x90,0x39,0x2C,0x5B,0xF4,0xB7,0x42,0x95,0x62,0x6F,0xD1,0x5F,0x2A,0xD9,0x9C,0x2E,0xA8,0x55,0xAE,0x52,0x2D,0x4B,0xD0,0x36,0xA5,0x2E,0x8D,0xED,0x8E,0xBE,0xE2,0xB7,0x36,0xAD,0xF5,0x3D,0x51,0xC6,0xF4,0xB7,0x36,0xF4,0x60,0xAA,0xD0,0x6E,0x3A,0x94,0xDC,0x32,0xCB,0x96,0x6C,0x65,0x2B,0x5A,0x1C,0x43,0xA3,0xDA,0xB6,0xEA,0xB9,0x48,0x0F,0x2F,0x27,0x02,0x78,0x41,0x4D,0x03,0x16,0xD0,0x80,0x05,0x14,0x70,0xA5,0xE8,0x03};
|
||||||
|
//const uint8_t spWORK[] PROGMEM ={0xAA,0xC1,0x65,0xC7,0x59,0x6D,0x85,0x56,0xE8,0x7A,0x53,0x50,0x53,0x5A,0x65,0xEA,0x5D,0x41,0xF9,0xAA,0x8D,0xC9,0x89,0x64,0xE9,0xA7,0x72,0xAA,0xD2,0x5B,0xA5,0x9F,0xCA,0xB8,0x4A,0x29,0xE3,0x3E,0x2A,0xD3,0x92,0xA2,0x45,0xFF,0xAC,0x5A,0x65,0x4B,0xA3,0x8E,0xF3,0x2F,0x95,0x1B,0x89,0x3A,0xAA,0xB7,0x54,0xC9,0xA6,0x3B,0x9B,0x12,0x80,0x00,0xD8,0x68,0xEC,0x81,0x07};
|
||||||
|
//const uint8_t spWORKING[] PROGMEM ={0xAA,0x25,0xA9,0xDB,0x54,0x14,0xA7,0x4E,0xBA,0xDA,0x30,0x70,0x3E,0x6A,0x99,0xAA,0xCD,0xC8,0xFD,0xA9,0x74,0x28,0xF7,0x62,0xE5,0xA7,0xB2,0x76,0x42,0x5A,0x95,0x9F,0xCA,0xA4,0x11,0x6D,0xE3,0xBE,0x0A,0x97,0x8B,0x74,0x54,0x7F,0x2D,0x04,0x60,0x85,0xB8,0x04,0x24,0x10,0x00,0xCB,0xCC,0x57,0x35,0x63,0x18,0x9A,0xAD,0xBE,0xCD,0x6E,0x5B,0xD7,0x9C,0x31,0x67,0x44,0x2A,0x7D,0xB0,0x2C,0x95,0x6E,0xC5,0xF4,0xDC,0x86,0x8F,0xBA,0x29,0xD3,0x73,0x6B,0x31,0x1C,0xB6,0x54,0xCF,0x8D,0xD5,0x72,0xDA,0x16,0xBD,0x34,0x9A,0xC7,0x61,0x4B,0xF4,0xD6,0x40,0xB6,0xA4,0x63,0xD6,0x79,0x43,0x1A,0x6C,0xB6,0x45,0x9F,0xB3,0xAA,0xA3,0xD8,0x81,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spWRITE[] PROGMEM ={0xA2,0x65,0x21,0xDD,0x39,0x1C,0x8B,0x9A,0x8E,0x90,0xB0,0x74,0xAC,0x6A,0x3A,0x5C,0xA2,0x43,0x89,0x69,0xF8,0x52,0x8E,0x31,0x27,0xA9,0xD1,0x07,0xB3,0x54,0xDC,0xAF,0xDA,0xC4,0x1A,0x67,0x9D,0x77,0xEB,0x53,0x85,0x9C,0xE9,0xDC,0x71,0x6E,0x75,0xAA,0x58,0x33,0x4D,0x3A,0xEE,0xA9,0xD3,0xF0,0x64,0xCF,0xBA,0xA7,0xC9,0x45,0xC4,0xA2,0x2A,0xCD,0x2E,0xF5,0x29,0xB3,0x44,0x57,0x61,0x33,0x18,0x69,0x92,0xE9,0x16,0x00,0x40,0x01,0x5D,0x79,0x3C};
|
||||||
|
//const uint8_t spX[] PROGMEM ={0xA5,0x28,0xB1,0x4C,0x2C,0xDE,0xDC,0xEA,0xD4,0xA9,0x84,0x99,0xF6,0x9C,0x5B,0xDF,0x7A,0x36,0xB1,0x05,0x00,0x00,0x30,0xC0,0x4B,0x6E,0x0A,0xF8,0x55,0x5D,0x02,0x1C,0xE0,0x00,0x06,0x30,0xF0};
|
||||||
|
//const uint8_t spY[] PROGMEM ={0xA2,0xC3,0xBE,0x5F,0xC1,0xEC,0xBA,0x86,0xBB,0x7C,0x13,0x72,0x53,0x1A,0x11,0xFB,0x59,0x38,0xCF,0xAA,0x75,0xDD,0x52,0x89,0xA6,0xBB,0xDE,0xF5,0xA9,0x83,0x99,0x35,0xF5,0x2A,0xB7,0x5E,0xB5,0x0F,0x53,0x66,0x51,0x65,0xD5,0x31,0x6C,0x68,0x6A,0xAD,0x5D,0x8D,0x2A,0x54,0x35,0xAD,0xB6,0xDD,0xAB,0x5C,0xA5,0x2A,0x45,0x51,0xF6,0x8A,0x64,0x2B,0x5D,0x3D,0x00,0x00};
|
||||||
|
//const uint8_t spYELLOW[] PROGMEM ={0xAE,0xDB,0x09,0x44,0xBC,0x2F,0xC5,0x2E,0x75,0xD3,0x83,0x8A,0xCF,0xA5,0xD2,0x0C,0x2D,0x4A,0xBE,0x8F,0x4F,0x55,0xAD,0x2B,0x47,0xAF,0x39,0x45,0xF4,0x16,0x1E,0xB9,0xF8,0x14,0xC1,0x7B,0xBB,0x79,0xEB,0x51,0x78,0xE7,0x93,0x1C,0x4D,0x4A,0x15,0xAC,0x6F,0x09,0xB7,0xEB,0xCD,0x6E,0x5A,0xA7,0x72,0xBE,0xAA,0xB4,0xA9,0x7D,0xE8,0x65,0x9E,0x63,0x93,0x36,0x66,0xE0,0xA3,0x4B,0x8C,0x5B,0xA9,0x81,0x97,0x2D,0x31,0xD5,0xA4,0x06,0x1B,0x24,0xC7,0x9C,0xB6,0xE8,0x7D,0x14,0x76,0xF6,0x34,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spYES[] PROGMEM ={0xAA,0x9A,0x0E,0x54,0x6A,0x26,0xC7,0xA6,0xB6,0xAB,0x9D,0xD5,0x0D,0xD8,0xDE,0x9E,0xA6,0x44,0x57,0x8D,0x78,0x73,0xDB,0xD3,0x96,0xEC,0xAE,0xE6,0x4B,0x57,0x1B,0x9B,0x27,0xEB,0xDA,0x9D,0x75,0xAB,0xC2,0x88,0x44,0x6B,0x3B,0xA1,0xB2,0xD1,0x55,0xAC,0x23,0xC4,0xDC,0x00,0xDF,0x88,0x69,0x40,0x03,0x12,0xE0,0x00,0x05,0x28,0x80,0x81,0x07};
|
||||||
|
//const uint8_t spYET[] PROGMEM ={0xAE,0x9F,0x16,0x8C,0x73,0x47,0xC5,0xA1,0xF4,0x3D,0x98,0x40,0xF4,0x9D,0xD5,0xD7,0x64,0x82,0x51,0x8F,0x4F,0xDF,0x6A,0x1A,0x29,0x7F,0x3F,0x6D,0xA9,0x16,0x66,0xFE,0xF4,0x76,0xB7,0x5D,0x4D,0xCC,0x5A,0xE2,0x35,0xA7,0xD4,0x31,0xCA,0xA8,0x6D,0x42,0x96,0x4B,0xE5,0xD6,0xE6,0x8E,0x00,0x14,0x90,0xB5,0x9B,0x00,0x52,0x4C,0x86,0x07,0x00,0x00};
|
||||||
|
//const uint8_t spYOU[] PROGMEM ={0xA5,0xDA,0x0D,0x98,0x23,0x6F,0xF4,0x6A,0x55,0x33,0xA9,0x82,0xC6,0xEB,0x91,0xF5,0x68,0x02,0x11,0x5B,0x67,0x36,0x32,0x2B,0xA2,0x24,0x75,0x75,0xCF,0x7B,0xD5,0x9B,0xD6,0x5A,0x61,0xE5,0x49,0xDD,0x6A,0x97,0xFB,0xD8,0xFB,0x5E,0x77,0xA2,0xB3,0x2C,0x45,0x25,0x8D,0x3C,0x00,0x00};
|
||||||
|
//const uint8_t spYOU_WIN[] PROGMEM ={0x26,0x2B,0x82,0x54,0x76,0x4B,0xA7,0x76,0x04,0x14,0xB6,0xBA,0x5D,0xBA,0x9E,0x48,0x30,0xEA,0xD6,0x69,0x6A,0x73,0x01,0xF7,0xB7,0xA7,0x6A,0xAD,0x0C,0x0C,0xFB,0x8F,0x2C,0x5A,0x55,0x2D,0xFD,0x52,0x62,0x6E,0xBA,0x06,0xA5,0x59,0x8E,0x72,0x1C,0x13,0x97,0x31,0xF7,0x61,0x2C,0x4D,0x5B,0x6E,0x64,0x8E,0x19,0x66,0x3D,0x55,0x16,0x9E,0x56,0xD8,0xF5,0xD4,0x35,0xA6,0x6A,0xC8,0x9A,0xDB,0xDC,0xF6,0xB6,0xB7,0x4D,0x9D,0xB4,0x66,0xEE,0xDE,0xD8,0xB7,0xAA,0xA5,0xC1,0xC2,0xB2,0x22,0xAB,0x86,0x7A,0x2F,0x8D,0x91,0x2D,0x6A,0x94,0x23,0x3D,0xDB,0x8E,0xA8,0xB0,0xCB,0x4E,0x2B,0x39,0x0F,0x00,0x00};
|
||||||
|
//const uint8_t spYOUR[] PROGMEM ={0xA6,0x1A,0x1A,0x4C,0xB2,0x2F,0xF9,0x2A,0x56,0xB9,0x1A,0x55,0xF4,0xEA,0x12,0xB6,0xA5,0x57,0xAD,0xB2,0xD1,0xA2,0x9C,0x95,0xF7,0xBA,0x37,0xA9,0x53,0x53,0x72,0x45,0xB3,0xE6,0x21,0x0D,0x66,0x89,0xAF,0x49,0x9E,0x34,0xE8,0x21,0xF6,0x9C,0x9A,0xCA,0x60,0xBB,0xC8,0x9A,0xAB,0x76,0x43,0x58,0xC4,0xA1,0xA1,0xD9,0x0C,0x2A,0x99,0x86,0xBB,0x2D,0x31,0x98,0xA8,0x1C,0xE6,0x6E,0xE0,0x01,0x00,0x00};
|
||||||
|
//const uint8_t spZ[] PROGMEM ={0xA5,0x4A,0x24,0xCC,0x38,0x73,0x8F,0x7A,0x73,0x37,0x65,0xF6,0xBB,0x9B,0xD6,0x7C,0x6F,0x6A,0xA8,0xEE,0x56,0xD1,0x4D,0xA9,0xB0,0xF4,0x39,0x79,0xC9,0x29,0xC2,0xB6,0xF9,0x64,0x35,0x39,0x72,0xE4,0x93,0x9B,0xAD,0xBC,0x46,0x41,0xC9,0x9E,0xB3,0xAB,0x59,0xCD,0xA6,0x77,0xA1,0xCB,0x8E,0x38,0x7A,0x46,0x3F};
|
||||||
|
//const uint8_t spZERO[] PROGMEM ={0xAD,0x59,0x3A,0xC8,0x18,0xFD,0x9E,0xA2,0x99,0x34,0x23,0xE9,0x77,0xB2,0xE0,0xDD,0xC4,0xAA,0xCD,0x49,0x5C,0x36,0xB3,0xAC,0x36,0x2B,0xB1,0x45,0xD2,0x33,0x72,0xEF,0x6C,0x54,0xA6,0x73,0x79,0x49,0xDE,0xD5,0xD8,0x2A,0xE9,0xA9,0xDE,0x67,0xEF,0x06,0x99,0xBB,0xA4,0x2D,0x75,0x19,0x54,0xB4,0x2F,0xD1,0xB4,0x79,0xF0,0x83,0x1F,0xFC,0xEC,0x17,0xBB,0x3C,0x00,0x00};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.speaker.say(spHELLO);
|
||||||
|
CircuitPlayground.speaker.say(spTHESE);
|
||||||
|
CircuitPlayground.speaker.say(spARE);
|
||||||
|
CircuitPlayground.speaker.say(spTHE);
|
||||||
|
CircuitPlayground.speaker.say(spTEXAS_INSTRUMENTS);
|
||||||
|
CircuitPlayground.speaker.say(spWORDS);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this
|
||||||
|
// will turn off the pin 13 LED (it's connected to a microcontroller
|
||||||
|
// pin that's also related to the speaker), but there's a small
|
||||||
|
// audible click when it turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
}
|
@ -0,0 +1,48 @@
|
|||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// Adjust this number for the sensitivity of the 'click' force
|
||||||
|
// this strongly depend on the range! for 16G, try 5-10
|
||||||
|
// for 8G, try 10-20. for 4G try 20-40. for 2G try 40-80
|
||||||
|
#define CLICKTHRESHHOLD 120
|
||||||
|
|
||||||
|
void setup(void) {
|
||||||
|
while (!Serial);
|
||||||
|
|
||||||
|
Serial.begin(9600);
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
CircuitPlayground.setAccelRange(LIS3DH_RANGE_2_G); // 2, 4, 8 or 16 G!
|
||||||
|
|
||||||
|
// 0 = turn off click detection & interrupt
|
||||||
|
// 1 = single click only interrupt output
|
||||||
|
// 2 = double click only interrupt output, detect single click
|
||||||
|
// Adjust threshhold, higher numbers are less sensitive
|
||||||
|
CircuitPlayground.setAccelTap(1, CLICKTHRESHHOLD);
|
||||||
|
|
||||||
|
// have a procedure called when a tap is detected
|
||||||
|
attachInterrupt(digitalPinToInterrupt(CPLAY_LIS3DH_INTERRUPT), tapTime, FALLING);
|
||||||
|
}
|
||||||
|
|
||||||
|
void tapTime(void) {
|
||||||
|
// do something :)
|
||||||
|
Serial.print("Tap! ");
|
||||||
|
Serial.println(millis()); // the time
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
/*
|
||||||
|
// *or* uncomment this for manual polling of tap data
|
||||||
|
uint8_t click = CircuitPlayground.getAccelTap();
|
||||||
|
if (click == 0) return;
|
||||||
|
if (! (click & 0x30)) return;
|
||||||
|
Serial.print("Click detected (0x"); Serial.print(click, HEX); Serial.print("): ");
|
||||||
|
if (click & 0x10) Serial.print(" single click");
|
||||||
|
if (click & 0x20) Serial.print(" double click");
|
||||||
|
Serial.println();
|
||||||
|
|
||||||
|
delay(100);
|
||||||
|
return;
|
||||||
|
*/
|
||||||
|
}
|
@ -0,0 +1,137 @@
|
|||||||
|
// Circuit Playground Accelerometer Mouse Example
|
||||||
|
// Tilt Circuit Playground left/right and up/down to move your mouse, and
|
||||||
|
// press the left and right push buttons to click the mouse buttons! Make sure
|
||||||
|
// the slide switch is in the on (+) position to enable the mouse, or slide into
|
||||||
|
// the off (-) position to disable it. By default the sketch assumes you hold
|
||||||
|
// Circuit Playground with the USB cable coming out the top.
|
||||||
|
// Author: Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Mouse.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
|
||||||
|
// Configuration values to adjust the sensitivity and speed of the mouse.
|
||||||
|
// X axis (left/right) configuration:
|
||||||
|
#define XACCEL_MIN 0.1 // Minimum range of X axis acceleration, values below
|
||||||
|
// this won't move the mouse at all.
|
||||||
|
#define XACCEL_MAX 8.0 // Maximum range of X axis acceleration, values above
|
||||||
|
// this will move the mouse as fast as possible.
|
||||||
|
#define XMOUSE_RANGE 25.0 // Range of velocity for mouse movements. The higher
|
||||||
|
// this value the faster the mouse will move.
|
||||||
|
#define XMOUSE_SCALE 1 // Scaling value to apply to mouse movement, this is
|
||||||
|
// useful to set to -1 to flip the X axis movement.
|
||||||
|
|
||||||
|
// Y axis (up/down) configuration:
|
||||||
|
// Note that the meaning of these values is exactly the same as the X axis above,
|
||||||
|
// just applied to the Y axis and up/down mouse movement. You probably want to
|
||||||
|
// keep these values the same as for the X axis (which is the default, they just
|
||||||
|
// read the X axis values but you can override with custom values).
|
||||||
|
#define YACCEL_MIN XACCEL_MIN
|
||||||
|
#define YACCEL_MAX XACCEL_MAX
|
||||||
|
#define YMOUSE_RANGE XMOUSE_RANGE
|
||||||
|
#define YMOUSE_SCALE 1
|
||||||
|
|
||||||
|
// Set this true to flip the mouse X/Y axis with the board X/Y axis (what you want
|
||||||
|
// if holding with USB cable facing up).
|
||||||
|
#define FLIP_AXES true
|
||||||
|
|
||||||
|
|
||||||
|
// Floating point linear interpolation function that takes a value inside one
|
||||||
|
// range and maps it to a new value inside another range. This is used to transform
|
||||||
|
// each axis of acceleration to mouse velocity/speed. See this page for details
|
||||||
|
// on the equation: https://en.wikipedia.org/wiki/Linear_interpolation
|
||||||
|
float lerp(float x, float x0, float x1, float y0, float y1) {
|
||||||
|
// Check if the input value (x) is outside its desired range and clamp to
|
||||||
|
// those min/max y values.
|
||||||
|
if (x <= x0) {
|
||||||
|
return y0;
|
||||||
|
}
|
||||||
|
else if (x >= x1) {
|
||||||
|
return y1;
|
||||||
|
}
|
||||||
|
// Otherwise compute the value y based on x's position within its range and
|
||||||
|
// the desired y min & max.
|
||||||
|
return y0 + (y1-y0)*((x-x0)/(x1-x0));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// Initialize Circuit Playground library.
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
// Initialize Arduino mouse library.
|
||||||
|
Mouse.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Check if the slide switch is enabled (on +) and if not then just exit out
|
||||||
|
// and run the loop again. This lets you turn on/off the mouse movement with
|
||||||
|
// the slide switch.
|
||||||
|
if (!CircuitPlayground.slideSwitch()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Grab initial left & right button states to later check if they are pressed
|
||||||
|
// or released. Do this early in the loop so other processing can take some
|
||||||
|
// time and the button state change can be detected.
|
||||||
|
boolean left_first = CircuitPlayground.leftButton();
|
||||||
|
boolean right_first = CircuitPlayground.rightButton();
|
||||||
|
|
||||||
|
// Grab x, y acceleration values (in m/s^2).
|
||||||
|
float x = CircuitPlayground.motionX();
|
||||||
|
float y = CircuitPlayground.motionY();
|
||||||
|
// Use the magnitude of acceleration to interpolate the mouse velocity.
|
||||||
|
float x_mag = abs(x);
|
||||||
|
float x_mouse = lerp(x_mag, XACCEL_MIN, XACCEL_MAX, 0.0, XMOUSE_RANGE);
|
||||||
|
float y_mag = abs(y);
|
||||||
|
float y_mouse = lerp(y_mag, YACCEL_MIN, YACCEL_MAX, 0.0, YMOUSE_RANGE);
|
||||||
|
// Change the mouse direction based on the direction of the acceleration.
|
||||||
|
if (x < 0) {
|
||||||
|
x_mouse *= -1.0;
|
||||||
|
}
|
||||||
|
if (y < 0) {
|
||||||
|
y_mouse *= -1.0;
|
||||||
|
}
|
||||||
|
// Apply any global scaling to the axis (to flip it for example) and truncate
|
||||||
|
// to an integer value.
|
||||||
|
x_mouse = floor(x_mouse*XMOUSE_SCALE);
|
||||||
|
y_mouse = floor(y_mouse*YMOUSE_SCALE);
|
||||||
|
|
||||||
|
// Move mouse.
|
||||||
|
if (!FLIP_AXES) {
|
||||||
|
// Non-flipped axes, just map board X/Y to mouse X/Y.
|
||||||
|
Mouse.move((int)x_mouse, (int)y_mouse, 0);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Flipped axes, swap them around.
|
||||||
|
Mouse.move((int)y_mouse, (int)x_mouse, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Small delay to wait for button state changes and slow down processing a bit.
|
||||||
|
delay(10);
|
||||||
|
|
||||||
|
// Grab a second button state reading to check if the buttons were pressed or
|
||||||
|
// released.
|
||||||
|
boolean left_second = CircuitPlayground.leftButton();
|
||||||
|
boolean right_second = CircuitPlayground.rightButton();
|
||||||
|
|
||||||
|
// Check for left button pressed / released.
|
||||||
|
if (!left_first && left_second) {
|
||||||
|
// Low then high, button was pressed!
|
||||||
|
Mouse.press(MOUSE_LEFT);
|
||||||
|
}
|
||||||
|
else if (left_first && !left_second) {
|
||||||
|
// High then low, button was released!
|
||||||
|
Mouse.release(MOUSE_LEFT);
|
||||||
|
}
|
||||||
|
// Check for right button pressed / released.
|
||||||
|
if (!right_first && right_second) {
|
||||||
|
// Low then high, button was pressed!
|
||||||
|
Mouse.press(MOUSE_RIGHT);
|
||||||
|
}
|
||||||
|
else if (right_first && !right_second) {
|
||||||
|
// High then low, button was released!
|
||||||
|
Mouse.release(MOUSE_RIGHT);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,89 @@
|
|||||||
|
// Circuit Playground Analog Sensor Demo
|
||||||
|
// Shows how to read an analog sensor like temperature, light,
|
||||||
|
// sound, or even external inputs and convert the analog value
|
||||||
|
// to color and sound on the board. Will light up NeoPixel 4 and 5
|
||||||
|
// with a color proportional to the analog value, and if the slide
|
||||||
|
// switch is turned to the left will play a music tone proportional
|
||||||
|
// to the value.
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// Change the analog input value below to try different sensors:
|
||||||
|
#define ANALOG_INPUT A5 // Specify the analog input to read.
|
||||||
|
// Circuit Playground has the following
|
||||||
|
// inputs available:
|
||||||
|
// - A0 = temperature sensor / thermistor
|
||||||
|
// - A4 = sound sensor / microphone
|
||||||
|
// - A5 = light sensor
|
||||||
|
// - A7 = pin #6 on board
|
||||||
|
// - A9 = pin #9 on board
|
||||||
|
// - A10 = pin #10 on board
|
||||||
|
// - A11 = pin #12 on board
|
||||||
|
|
||||||
|
// These defines set the range of expected analog values.
|
||||||
|
// This is used to scale the NeoPixels, sound, etc.
|
||||||
|
#define VALUE_MIN 0
|
||||||
|
#define VALUE_MAX 200
|
||||||
|
|
||||||
|
// These defines set the range of pixel color when mapping
|
||||||
|
// to the sensor value.
|
||||||
|
#define COLOR_RED_MIN 255
|
||||||
|
#define COLOR_GREEN_MIN 0
|
||||||
|
#define COLOR_BLUE_MIN 0
|
||||||
|
|
||||||
|
#define COLOR_RED_MAX 0
|
||||||
|
#define COLOR_GREEN_MAX 0
|
||||||
|
#define COLOR_BLUE_MAX 255
|
||||||
|
|
||||||
|
// These defines set the range of sound frequencies when
|
||||||
|
// mapping to the sensor value.
|
||||||
|
#define TONE_FREQ_MIN 523 // C5 note
|
||||||
|
#define TONE_FREQ_MAX 988 // B5 note
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// Setup serial port.
|
||||||
|
Serial.begin(115200);
|
||||||
|
Serial.println("Circuit Playground Analog Sensor Demos!");
|
||||||
|
|
||||||
|
// Setup Circuit Playground library.
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Get the sensor sensor value and print it out (can use serial plotter
|
||||||
|
// to view realtime graph!).
|
||||||
|
uint16_t value = analogRead(ANALOG_INPUT);
|
||||||
|
Serial.println(value, DEC);
|
||||||
|
|
||||||
|
// Map the sensor value to a color.
|
||||||
|
// Use the range of minimum and maximum sensor values and
|
||||||
|
// min/max colors to do the mapping.
|
||||||
|
if(value < VALUE_MIN) value = VALUE_MIN;
|
||||||
|
else if(value > VALUE_MAX) value = VALUE_MAX;
|
||||||
|
int red = map(value, VALUE_MIN, VALUE_MAX, COLOR_RED_MIN , COLOR_RED_MAX);
|
||||||
|
int green = map(value, VALUE_MIN, VALUE_MAX, COLOR_GREEN_MIN, COLOR_GREEN_MAX);
|
||||||
|
int blue = map(value, VALUE_MIN, VALUE_MAX, COLOR_BLUE_MIN , COLOR_BLUE_MAX);
|
||||||
|
// Gamma correction gives a more linear appearance to brightness ranges
|
||||||
|
red = CircuitPlayground.gamma8(red);
|
||||||
|
green = CircuitPlayground.gamma8(green);
|
||||||
|
blue = CircuitPlayground.gamma8(blue);
|
||||||
|
|
||||||
|
// Light up pixel #4 and 5 with the color.
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
CircuitPlayground.setPixelColor(4, red, green, blue);
|
||||||
|
CircuitPlayground.setPixelColor(5, red, green, blue);
|
||||||
|
|
||||||
|
// Map the sensor value to a tone frequency.
|
||||||
|
int frequency = map(value, VALUE_MIN, VALUE_MAX, TONE_FREQ_MIN, TONE_FREQ_MAX);
|
||||||
|
|
||||||
|
// Play the tone if the slide switch is turned on (to the left).
|
||||||
|
if (CircuitPlayground.slideSwitch()) {
|
||||||
|
// Play tone of the mapped frequency value for 100 milliseconds.
|
||||||
|
CircuitPlayground.playTone(frequency, 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delay for a bit and repeat the loop.
|
||||||
|
delay(100);
|
||||||
|
}
|
@ -0,0 +1,64 @@
|
|||||||
|
// Circuit Playground Color Sensing Example
|
||||||
|
// Use a NeoPixel RGB LED and light sensor on the Circuit Playground board to
|
||||||
|
// do basic color detection. By quickly flashing full red, green, and blue color
|
||||||
|
// light from the NeoPixel the light sensor can read the intensity of the
|
||||||
|
// reflected light and roughly approximate the color of the object.
|
||||||
|
//
|
||||||
|
// After uploading the sketch to Circuit Playground you can press and release the
|
||||||
|
// left or right button to do a color sense and print the red, green, blue component
|
||||||
|
// values to the serial monitor (115200 baud). In addition all the NeoPixels on
|
||||||
|
// the board will be lit up to the detected color. You should hold a brightly
|
||||||
|
// colored object right above the light sensor and NeoPixel #1 (upper
|
||||||
|
// left part of board, look for the eye symbol next to the color sensor) when
|
||||||
|
// performing the color sense.
|
||||||
|
//
|
||||||
|
// Author: Limor Fried & Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(115200);
|
||||||
|
// Initialize Circuit Playground library.
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Detect if the left or right button is pressed by taking two readings with
|
||||||
|
// a small delay inbetween. If the button changes state (like it was pressed
|
||||||
|
// or released) then the two readings will be different.
|
||||||
|
bool left_first = CircuitPlayground.leftButton();
|
||||||
|
bool right_first = CircuitPlayground.rightButton();
|
||||||
|
delay(20);
|
||||||
|
bool left_second = CircuitPlayground.leftButton();
|
||||||
|
bool right_second = CircuitPlayground.rightButton();
|
||||||
|
// Now check if either button was released, i.e. changed from a true (pressed)
|
||||||
|
// state to a false (non-pressed) state.
|
||||||
|
if ((left_first && !left_second) || (right_first && !right_second)) {
|
||||||
|
// Button was pressed, perform a color sense.
|
||||||
|
// First turn off all the pixels to make sure they don't interfere with the
|
||||||
|
// reading.
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
// Now take a color reading (the red, green, blue color components will be
|
||||||
|
// returned in the parameters passed in).
|
||||||
|
uint8_t red, green, blue;
|
||||||
|
CircuitPlayground.senseColor(red, green, blue);
|
||||||
|
// Print out the color components.
|
||||||
|
Serial.print("Color: red=");
|
||||||
|
Serial.print(red, DEC);
|
||||||
|
Serial.print(" green=");
|
||||||
|
Serial.print(green, DEC);
|
||||||
|
Serial.print(" blue=");
|
||||||
|
Serial.println(blue, DEC);
|
||||||
|
// Gamma correction makes LED brightness appear more linear
|
||||||
|
red = CircuitPlayground.gamma8(red);
|
||||||
|
green = CircuitPlayground.gamma8(green);
|
||||||
|
blue = CircuitPlayground.gamma8(blue);
|
||||||
|
// Finally set all the pixels to the detected color.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, red, green, blue);
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
}
|
1095
libraries/Adafruit_Circuit_Playground/examples/comm_badge/coin.h
Normal file
1095
libraries/Adafruit_Circuit_Playground/examples/comm_badge/coin.h
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,47 @@
|
|||||||
|
// Speaker demo for Circuit Playground -- when tapped, plays a very short
|
||||||
|
// digitized sound sample, very quietly (because teeny tiny speaker).
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
|
||||||
|
// Enable ONE of these lines to pick a sound to play back when tapped:
|
||||||
|
#include "coin.h" // Super Mario coin sound
|
||||||
|
//#include "trek.h" // Star Trek TNG communicator noise
|
||||||
|
|
||||||
|
volatile boolean play = false;
|
||||||
|
|
||||||
|
// This function will be called automatically when a tap is detected by the
|
||||||
|
// accelerometer. This just sets the global flag 'play' to true, which is
|
||||||
|
// then detected in loop() (where the sound is then played)...doing heavy
|
||||||
|
// processing within an interrupt function is sometimes considered poor form.
|
||||||
|
void myFunction() {
|
||||||
|
play = true; // Hey loop(), play the sound!
|
||||||
|
}
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
|
||||||
|
// Configure accelerometer for +-4G range, use the tap interrupt
|
||||||
|
// feature to call myFunction() automatically when tapped.
|
||||||
|
CircuitPlayground.setAccelRange(LIS3DH_RANGE_4_G);
|
||||||
|
CircuitPlayground.setAccelTap(1, 127);
|
||||||
|
attachInterrupt(digitalPinToInterrupt(CPLAY_LIS3DH_INTERRUPT), myFunction, RISING);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
while(!play); // Wait for tap interrupt
|
||||||
|
|
||||||
|
// Play sound data in the audio[] array (declared in one of the .h files).
|
||||||
|
// This function "blocks" -- that is, program flow stops until sound is
|
||||||
|
// done playing -- it does not play in the background.
|
||||||
|
CircuitPlayground.speaker.playSound(audio, sizeof(audio), SAMPLE_RATE);
|
||||||
|
|
||||||
|
// Calling speaker.end() after playing a sound is optional -- this will
|
||||||
|
// turn off the pin 13 LED (it's connected to a microcontroller pin that's
|
||||||
|
// also related to the speaker), but there's a small audible click when it
|
||||||
|
// turns off. Tradeoffs!
|
||||||
|
CircuitPlayground.speaker.end();
|
||||||
|
|
||||||
|
play = false; // Clear flag, wait for interrupt
|
||||||
|
}
|
580
libraries/Adafruit_Circuit_Playground/examples/comm_badge/trek.h
Normal file
580
libraries/Adafruit_Circuit_Playground/examples/comm_badge/trek.h
Normal file
@ -0,0 +1,580 @@
|
|||||||
|
#define SAMPLE_RATE 22050
|
||||||
|
|
||||||
|
const uint8_t PROGMEM audio[] = {
|
||||||
|
0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x7F, 0x7E, 0x81, 0x80, 0x7D, 0x80,
|
||||||
|
0x82, 0x7B, 0x81, 0x86, 0x7B, 0x7A, 0x85, 0x83, 0x78, 0x7F, 0x8A, 0x79,
|
||||||
|
0x7B, 0x88, 0x7C, 0x7F, 0x84, 0x78, 0x81, 0x86, 0x7C, 0x7F, 0x83, 0x7B,
|
||||||
|
0x7D, 0x7F, 0x87, 0x9C, 0x67, 0x41, 0xAE, 0xBE, 0x65, 0x39, 0x89, 0xE1,
|
||||||
|
0x40, 0x3A, 0xFB, 0x6A, 0x20, 0xCA, 0xAA, 0x02, 0xC6, 0xB9, 0x30, 0x8E,
|
||||||
|
0x8E, 0x5D, 0xB3, 0x7B, 0x45, 0xCA, 0x4B, 0x7A, 0xDD, 0x00, 0x94, 0xEF,
|
||||||
|
0x2A, 0x75, 0xA6, 0x40, 0xC8, 0x6D, 0x6C, 0x9B, 0x6D, 0x67, 0x93, 0xA3,
|
||||||
|
0x8A, 0x16, 0xA8, 0xC8, 0x6E, 0x55, 0x6F, 0x92, 0x92, 0x89, 0x70, 0x95,
|
||||||
|
0x58, 0x5C, 0xC3, 0xAF, 0x2A, 0x6A, 0xD9, 0x59, 0x44, 0xCA, 0x74, 0x72,
|
||||||
|
0x96, 0x54, 0x77, 0xC1, 0x7B, 0x41, 0x8A, 0xBC, 0x61, 0x5B, 0xA5, 0x6F,
|
||||||
|
0x95, 0x7F, 0x5C, 0x9E, 0x8D, 0x42, 0xB1, 0x95, 0x4E, 0x96, 0x7E, 0x64,
|
||||||
|
0xB8, 0x6F, 0x52, 0xAA, 0x70, 0x78, 0xB0, 0x59, 0x59, 0xB6, 0x8E, 0x4D,
|
||||||
|
0x8F, 0x9E, 0x5D, 0x72, 0xA9, 0x77, 0x66, 0x9B, 0x76, 0x67, 0xAA, 0x7D,
|
||||||
|
0x56, 0x8A, 0xA5, 0x6E, 0x63, 0x93, 0x90, 0x70, 0x81, 0x7B, 0x78, 0x97,
|
||||||
|
0x7B, 0x77, 0x7D, 0x79, 0x80, 0x9F, 0x7F, 0x5A, 0x86, 0x82, 0x88, 0x91,
|
||||||
|
0x74, 0x6E, 0x7D, 0x95, 0x83, 0x6C, 0x89, 0x81, 0x70, 0x90, 0x87, 0x70,
|
||||||
|
0x7B, 0x86, 0x8D, 0x75, 0x73, 0x8B, 0x85, 0x7B, 0x7F, 0x7F, 0x7C, 0x84,
|
||||||
|
0x85, 0x7C, 0x7B, 0x81, 0x7D, 0x80, 0x89, 0x7E, 0x75, 0x7C, 0x8A, 0x81,
|
||||||
|
0x7F, 0x7B, 0x7F, 0x82, 0x7B, 0x7F, 0x87, 0x7F, 0x7A, 0x82, 0x80, 0x7E,
|
||||||
|
0x7B, 0x85, 0x88, 0x78, 0x74, 0x8A, 0x83, 0x7B, 0x80, 0x83, 0x80, 0x75,
|
||||||
|
0x82, 0x88, 0x81, 0x7A, 0x79, 0x85, 0x88, 0x7B, 0x78, 0x80, 0x87, 0x80,
|
||||||
|
0x7E, 0x7B, 0x7E, 0x89, 0x80, 0x79, 0x7B, 0x86, 0x83, 0x78, 0x83, 0x83,
|
||||||
|
0x77, 0x82, 0x88, 0x79, 0x7A, 0x85, 0x83, 0x81, 0x7A, 0x78, 0x88, 0x85,
|
||||||
|
0x79, 0x83, 0x7D, 0x7A, 0x82, 0x85, 0x80, 0x7C, 0x7B, 0x81, 0x85, 0x81,
|
||||||
|
0x7C, 0x7B, 0x82, 0x84, 0x7C, 0x7F, 0x83, 0x7C, 0x7E, 0x83, 0x80, 0x7B,
|
||||||
|
0x7E, 0x85, 0x84, 0x7C, 0x79, 0x7C, 0x8A, 0x8A, 0x71, 0x79, 0x8D, 0x7E,
|
||||||
|
0x78, 0x83, 0x82, 0x7E, 0x7F, 0x7E, 0x80, 0x83, 0x7E, 0x7E, 0x80, 0x7E,
|
||||||
|
0x80, 0x7E, 0x82, 0x82, 0x7C, 0x7E, 0x82, 0x80, 0x80, 0x7B, 0x81, 0x85,
|
||||||
|
0x7E, 0x7A, 0x80, 0x81, 0x81, 0x81, 0x7E, 0x7C, 0x7F, 0x84, 0x7E, 0x7C,
|
||||||
|
0x83, 0x81, 0x7B, 0x81, 0x81, 0x7C, 0x80, 0x84, 0x82, 0x7D, 0x79, 0x82,
|
||||||
|
0x86, 0x7D, 0x7E, 0x80, 0x7E, 0x82, 0x7F, 0x7C, 0x80, 0x86, 0x80, 0x78,
|
||||||
|
0x7F, 0x85, 0x80, 0x7A, 0x84, 0x84, 0x7A, 0x79, 0x87, 0x81, 0x7A, 0x84,
|
||||||
|
0x82, 0x77, 0x80, 0x82, 0x7E, 0x84, 0x82, 0x78, 0x7B, 0x89, 0x7C, 0x7C,
|
||||||
|
0x82, 0x81, 0x82, 0x7B, 0x7E, 0x82, 0x82, 0x7B, 0x82, 0x85, 0x7A, 0x7D,
|
||||||
|
0x82, 0x7E, 0x85, 0x7E, 0x77, 0x88, 0x81, 0x79, 0x7C, 0x85, 0x83, 0x7D,
|
||||||
|
0x7C, 0x80, 0x84, 0x7F, 0x79, 0x7E, 0x8E, 0x7C, 0x73, 0x83, 0x83, 0x80,
|
||||||
|
0x85, 0x7C, 0x77, 0x83, 0x81, 0x81, 0x82, 0x7C, 0x7C, 0x81, 0x87, 0x7D,
|
||||||
|
0x75, 0x84, 0x87, 0x7B, 0x7E, 0x81, 0x7C, 0x84, 0x82, 0x75, 0x83, 0x86,
|
||||||
|
0x7A, 0x7D, 0x84, 0x80, 0x7B, 0x83, 0x84, 0x7B, 0x7E, 0x81, 0x7F, 0x7F,
|
||||||
|
0x82, 0x7E, 0x7E, 0x81, 0x7F, 0x81, 0x7E, 0x7A, 0x86, 0x85, 0x75, 0x7E,
|
||||||
|
0x85, 0x82, 0x7E, 0x7C, 0x81, 0x80, 0x80, 0x7E, 0x7E, 0x7E, 0x84, 0x80,
|
||||||
|
0x7C, 0x83, 0x7E, 0x7B, 0x84, 0x82, 0x7B, 0x80, 0x81, 0x81, 0x7F, 0x7C,
|
||||||
|
0x81, 0x84, 0x7E, 0x7C, 0x7E, 0x81, 0x85, 0x7C, 0x7A, 0x83, 0x85, 0x7C,
|
||||||
|
0x7C, 0x84, 0x81, 0x7A, 0x7E, 0x85, 0x83, 0x78, 0x7C, 0x88, 0x82, 0x7B,
|
||||||
|
0x7B, 0x81, 0x88, 0x7D, 0x79, 0x84, 0x81, 0x7D, 0x81, 0x7E, 0x80, 0x80,
|
||||||
|
0x7C, 0x82, 0x83, 0x7C, 0x7D, 0x84, 0x82, 0x7A, 0x7E, 0x84, 0x80, 0x7D,
|
||||||
|
0x82, 0x7C, 0x7E, 0x85, 0x81, 0x7C, 0x7E, 0x7E, 0x7F, 0x84, 0x7F, 0x7D,
|
||||||
|
0x7D, 0x83, 0x84, 0x7B, 0x7C, 0x85, 0x80, 0x7E, 0x7F, 0x7E, 0x80, 0x83,
|
||||||
|
0x7F, 0x7E, 0x80, 0x7D, 0x80, 0x81, 0x81, 0x7E, 0x7D, 0x81, 0x82, 0x7B,
|
||||||
|
0x80, 0x84, 0x7B, 0x80, 0x80, 0x7C, 0x85, 0x82, 0x79, 0x7E, 0x88, 0x7E,
|
||||||
|
0x77, 0x80, 0x87, 0x80, 0x7C, 0x7E, 0x80, 0x80, 0x81, 0x7C, 0x81, 0x83,
|
||||||
|
0x7C, 0x7E, 0x81, 0x7D, 0x7F, 0x84, 0x80, 0x7D, 0x7C, 0x7E, 0x84, 0x82,
|
||||||
|
0x7B, 0x7B, 0x86, 0x86, 0x79, 0x79, 0x85, 0x82, 0x7E, 0x80, 0x80, 0x7A,
|
||||||
|
0x7E, 0x87, 0x82, 0x7B, 0x7E, 0x7E, 0x82, 0x83, 0x7C, 0x7C, 0x81, 0x87,
|
||||||
|
0x7C, 0x79, 0x83, 0x85, 0x7A, 0x80, 0x81, 0x7F, 0x80, 0x7E, 0x7E, 0x7F,
|
||||||
|
0x83, 0x82, 0x7D, 0x7B, 0x82, 0x84, 0x79, 0x7E, 0x87, 0x80, 0x7C, 0x7C,
|
||||||
|
0x81, 0x85, 0x7C, 0x7E, 0x83, 0x80, 0x7D, 0x7E, 0x82, 0x84, 0x7D, 0x7B,
|
||||||
|
0x83, 0x82, 0x7B, 0x80, 0x82, 0x7E, 0x7E, 0x81, 0x82, 0x7A, 0x7C, 0x87,
|
||||||
|
0x83, 0x7A, 0x7C, 0x80, 0x85, 0x82, 0x77, 0x7E, 0x89, 0x7C, 0x7D, 0x80,
|
||||||
|
0x7C, 0x84, 0x82, 0x7D, 0x82, 0x7F, 0x7B, 0x80, 0x84, 0x80, 0x7C, 0x80,
|
||||||
|
0x84, 0x7B, 0x7C, 0x85, 0x83, 0x7C, 0x7E, 0x7D, 0x80, 0x86, 0x7C, 0x7C,
|
||||||
|
0x84, 0x80, 0x7C, 0x82, 0x80, 0x7B, 0x80, 0x84, 0x81, 0x7B, 0x7B, 0x82,
|
||||||
|
0x85, 0x80, 0x7B, 0x7D, 0x83, 0x7F, 0x7D, 0x83, 0x82, 0x7A, 0x80, 0x82,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x81, 0x84, 0x7B, 0x79, 0x86, 0x82, 0x7D, 0x7D, 0x82,
|
||||||
|
0x82, 0x7C, 0x7C, 0x84, 0x82, 0x7E, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x82,
|
||||||
|
0x7E, 0x79, 0x84, 0x87, 0x7B, 0x7A, 0x81, 0x82, 0x80, 0x7E, 0x7E, 0x80,
|
||||||
|
0x83, 0x7E, 0x7D, 0x83, 0x80, 0x7C, 0x80, 0x80, 0x7C, 0x83, 0x83, 0x7C,
|
||||||
|
0x7C, 0x80, 0x82, 0x80, 0x80, 0x7C, 0x7C, 0x83, 0x81, 0x80, 0x80, 0x7B,
|
||||||
|
0x80, 0x85, 0x7E, 0x7C, 0x81, 0x80, 0x82, 0x80, 0x7E, 0x82, 0x7C, 0x7E,
|
||||||
|
0x82, 0x7F, 0x7F, 0x82, 0x7D, 0x80, 0x83, 0x79, 0x80, 0x85, 0x7C, 0x80,
|
||||||
|
0x80, 0x7B, 0x84, 0x80, 0x7D, 0x82, 0x7E, 0x7F, 0x82, 0x7D, 0x80, 0x80,
|
||||||
|
0x7D, 0x81, 0x82, 0x80, 0x80, 0x79, 0x7D, 0x89, 0x7E, 0x7C, 0x80, 0x7C,
|
||||||
|
0x82, 0x84, 0x7D, 0x7E, 0x80, 0x84, 0x7D, 0x7B, 0x84, 0x7C, 0x80, 0x88,
|
||||||
|
0x77, 0x7C, 0x8A, 0x7B, 0x7B, 0x84, 0x7D, 0x80, 0x85, 0x7A, 0x7E, 0x85,
|
||||||
|
0x7B, 0x7D, 0x88, 0x7D, 0x7B, 0x84, 0x80, 0x7D, 0x7E, 0x83, 0x80, 0x7E,
|
||||||
|
0x7E, 0x80, 0x80, 0x82, 0x7E, 0x7D, 0x81, 0x80, 0x80, 0x80, 0x7E, 0x80,
|
||||||
|
0x7E, 0x7F, 0x83, 0x7F, 0x7E, 0x7F, 0x7F, 0x82, 0x80, 0x7C, 0x82, 0x80,
|
||||||
|
0x7E, 0x84, 0x7E, 0x7A, 0x83, 0x80, 0x7E, 0x83, 0x7F, 0x7C, 0x82, 0x80,
|
||||||
|
0x7E, 0x81, 0x80, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7D, 0x7F, 0x83, 0x81,
|
||||||
|
0x7C, 0x80, 0x83, 0x7C, 0x7B, 0x83, 0x84, 0x7F, 0x7C, 0x80, 0x80, 0x82,
|
||||||
|
0x7F, 0x7C, 0x80, 0x84, 0x7C, 0x7E, 0x83, 0x7E, 0x7E, 0x82, 0x7D, 0x80,
|
||||||
|
0x82, 0x7D, 0x7E, 0x82, 0x80, 0x7D, 0x7F, 0x82, 0x80, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x81, 0x81, 0x7E, 0x7F, 0x81, 0x7F, 0x80, 0x82, 0x7C, 0x80, 0x82,
|
||||||
|
0x7E, 0x7E, 0x80, 0x7E, 0x7E, 0x84, 0x80, 0x7D, 0x82, 0x7E, 0x7E, 0x82,
|
||||||
|
0x7F, 0x7F, 0x82, 0x7E, 0x7E, 0x7F, 0x80, 0x82, 0x82, 0x7D, 0x7D, 0x80,
|
||||||
|
0x7F, 0x7F, 0x81, 0x81, 0x7F, 0x80, 0x80, 0x7E, 0x80, 0x81, 0x7E, 0x7E,
|
||||||
|
0x80, 0x82, 0x7F, 0x7F, 0x81, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x7F,
|
||||||
|
0x80, 0x80, 0x7C, 0x7E, 0x82, 0x84, 0x7D, 0x7B, 0x80, 0x82, 0x82, 0x7E,
|
||||||
|
0x7C, 0x81, 0x83, 0x7E, 0x7E, 0x83, 0x7F, 0x7D, 0x80, 0x7F, 0x81, 0x80,
|
||||||
|
0x7E, 0x80, 0x80, 0x7D, 0x81, 0x82, 0x80, 0x7C, 0x7E, 0x81, 0x84, 0x7E,
|
||||||
|
0x7C, 0x81, 0x81, 0x7E, 0x7E, 0x80, 0x82, 0x7E, 0x7E, 0x80, 0x81, 0x7F,
|
||||||
|
0x80, 0x7F, 0x7E, 0x80, 0x80, 0x7F, 0x80, 0x81, 0x7F, 0x7D, 0x81, 0x81,
|
||||||
|
0x7E, 0x7E, 0x80, 0x7E, 0x80, 0x81, 0x82, 0x80, 0x7D, 0x7D, 0x82, 0x82,
|
||||||
|
0x7D, 0x7D, 0x81, 0x81, 0x7E, 0x7E, 0x80, 0x83, 0x7F, 0x7D, 0x7E, 0x82,
|
||||||
|
0x81, 0x7E, 0x80, 0x80, 0x7D, 0x81, 0x82, 0x7E, 0x7E, 0x7E, 0x80, 0x82,
|
||||||
|
0x7F, 0x7C, 0x80, 0x82, 0x7E, 0x80, 0x82, 0x7E, 0x80, 0x80, 0x7E, 0x7F,
|
||||||
|
0x82, 0x80, 0x7C, 0x82, 0x82, 0x7C, 0x7E, 0x82, 0x80, 0x80, 0x80, 0x80,
|
||||||
|
0x7D, 0x7E, 0x82, 0x81, 0x80, 0x7E, 0x7E, 0x81, 0x80, 0x7F, 0x7F, 0x7E,
|
||||||
|
0x80, 0x7E, 0x80, 0x83, 0x80, 0x7C, 0x80, 0x81, 0x7E, 0x7E, 0x80, 0x82,
|
||||||
|
0x7E, 0x7E, 0x81, 0x81, 0x7E, 0x7E, 0x80, 0x82, 0x7E, 0x7E, 0x7F, 0x82,
|
||||||
|
0x82, 0x7D, 0x80, 0x81, 0x7E, 0x7F, 0x81, 0x7F, 0x7E, 0x82, 0x82, 0x7D,
|
||||||
|
0x7E, 0x81, 0x82, 0x80, 0x7E, 0x7C, 0x80, 0x84, 0x7E, 0x7E, 0x82, 0x7F,
|
||||||
|
0x7E, 0x82, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x82, 0x81,
|
||||||
|
0x7E, 0x7E, 0x80, 0x81, 0x7F, 0x7C, 0x80, 0x82, 0x81, 0x7D, 0x7E, 0x80,
|
||||||
|
0x82, 0x7E, 0x80, 0x7E, 0x7E, 0x82, 0x81, 0x7D, 0x7C, 0x80, 0x82, 0x80,
|
||||||
|
0x80, 0x7E, 0x7E, 0x80, 0x81, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x82, 0x7E,
|
||||||
|
0x7C, 0x83, 0x81, 0x7C, 0x7E, 0x82, 0x84, 0x7E, 0x7C, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x80, 0x82, 0x7E, 0x7E, 0x80, 0x80, 0x7E, 0x81, 0x80, 0x7E,
|
||||||
|
0x80, 0x82, 0x80, 0x7C, 0x7F, 0x82, 0x80, 0x7F, 0x7E, 0x80, 0x82, 0x7E,
|
||||||
|
0x7E, 0x81, 0x80, 0x7E, 0x80, 0x81, 0x7F, 0x7E, 0x7E, 0x82, 0x82, 0x7E,
|
||||||
|
0x7E, 0x80, 0x81, 0x7F, 0x7D, 0x7F, 0x81, 0x80, 0x7E, 0x80, 0x81, 0x7F,
|
||||||
|
0x80, 0x7E, 0x80, 0x81, 0x7F, 0x7F, 0x81, 0x7F, 0x7E, 0x80, 0x81, 0x80,
|
||||||
|
0x7F, 0x7D, 0x80, 0x83, 0x7F, 0x7D, 0x7E, 0x80, 0x7F, 0x81, 0x80, 0x81,
|
||||||
|
0x7F, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x82, 0x7E, 0x7C, 0x80, 0x82, 0x81,
|
||||||
|
0x7F, 0x80, 0x7E, 0x7E, 0x82, 0x7E, 0x7F, 0x80, 0x80, 0x7E, 0x81, 0x80,
|
||||||
|
0x82, 0x83, 0x7E, 0x7C, 0x7D, 0x7D, 0x7E, 0x83, 0x85, 0x7F, 0x78, 0x7D,
|
||||||
|
0x88, 0x95, 0x99, 0x69, 0x2A, 0x4E, 0xC6, 0xFF, 0xAE, 0x2A, 0x00, 0x5F,
|
||||||
|
0xD4, 0xE6, 0x84, 0x28, 0x38, 0x9A, 0xD4, 0xB5, 0x65, 0x32, 0x47, 0x8C,
|
||||||
|
0xC0, 0xB9, 0x83, 0x4B, 0x46, 0x78, 0xAF, 0xB7, 0x84, 0x4F, 0x4E, 0x7C,
|
||||||
|
0xAA, 0xAC, 0x84, 0x5F, 0x57, 0x73, 0x9C, 0xAA, 0x8C, 0x62, 0x57, 0x73,
|
||||||
|
0x9A, 0xA7, 0x8C, 0x67, 0x5E, 0x72, 0x93, 0xA1, 0x8D, 0x6D, 0x61, 0x73,
|
||||||
|
0x90, 0x9B, 0x8C, 0x71, 0x66, 0x74, 0x8C, 0x98, 0x8A, 0x71, 0x6A, 0x79,
|
||||||
|
0x8B, 0x8F, 0x87, 0x7B, 0x70, 0x74, 0x85, 0x91, 0x8B, 0x77, 0x6D, 0x77,
|
||||||
|
0x86, 0x8E, 0x8A, 0x7D, 0x74, 0x75, 0x82, 0x8B, 0x84, 0x7E, 0x7A, 0x7B,
|
||||||
|
0x82, 0x84, 0x84, 0x80, 0x78, 0x78, 0x80, 0x85, 0x8B, 0x80, 0x75, 0x77,
|
||||||
|
0x7E, 0x84, 0x87, 0x89, 0x7E, 0x76, 0x76, 0x81, 0x88, 0x82, 0x7D, 0x7E,
|
||||||
|
0x81, 0x84, 0x81, 0x7D, 0x7B, 0x7A, 0x7C, 0x85, 0x8C, 0x85, 0x7B, 0x75,
|
||||||
|
0x79, 0x7F, 0x84, 0x82, 0x84, 0x86, 0x7F, 0x79, 0x7A, 0x7F, 0x82, 0x7E,
|
||||||
|
0x7A, 0x83, 0x8C, 0x89, 0x7B, 0x70, 0x76, 0x82, 0x83, 0x83, 0x84, 0x88,
|
||||||
|
0x83, 0x79, 0x72, 0x7A, 0x86, 0x83, 0x7B, 0x82, 0x8B, 0x85, 0x7C, 0x75,
|
||||||
|
0x77, 0x7F, 0x82, 0x7F, 0x84, 0x8F, 0x8A, 0x77, 0x69, 0x77, 0x8A, 0x86,
|
||||||
|
0x7B, 0x7C, 0x8E, 0x94, 0x7D, 0x66, 0x6F, 0x86, 0x87, 0x7E, 0x7D, 0x8D,
|
||||||
|
0x94, 0x81, 0x66, 0x68, 0x83, 0x94, 0x82, 0x6E, 0x78, 0x9A, 0x9E, 0x7B,
|
||||||
|
0x5D, 0x66, 0x88, 0x95, 0x7F, 0x6E, 0x81, 0x9C, 0x94, 0x73, 0x5E, 0x72,
|
||||||
|
0x8F, 0x8D, 0x75, 0x6F, 0x88, 0xA4, 0x93, 0x68, 0x59, 0x74, 0x97, 0x95,
|
||||||
|
0x72, 0x65, 0x88, 0xA8, 0x96, 0x68, 0x55, 0x72, 0x99, 0x97, 0x73, 0x65,
|
||||||
|
0x82, 0xA7, 0x9D, 0x6F, 0x51, 0x68, 0x97, 0xA1, 0x7C, 0x60, 0x77, 0xA4,
|
||||||
|
0xA3, 0x76, 0x58, 0x62, 0x88, 0xA1, 0x8B, 0x64, 0x65, 0x90, 0xB2, 0x99,
|
||||||
|
0x60, 0x4A, 0x68, 0x9E, 0xAD, 0x83, 0x57, 0x5F, 0x9A, 0xBA, 0x97, 0x56,
|
||||||
|
0x42, 0x6E, 0xA7, 0xB0, 0x7E, 0x53, 0x61, 0x9C, 0xBC, 0x90, 0x52, 0x47,
|
||||||
|
0x74, 0xA7, 0xAA, 0x78, 0x53, 0x6B, 0xA4, 0xB5, 0x87, 0x4E, 0x4A, 0x7D,
|
||||||
|
0xAE, 0xAA, 0x72, 0x4B, 0x69, 0xA7, 0xBE, 0x89, 0x48, 0x45, 0x7B, 0xB3,
|
||||||
|
0xB2, 0x74, 0x44, 0x5E, 0xA5, 0xC7, 0x96, 0x49, 0x36, 0x71, 0xB3, 0xBC,
|
||||||
|
0x88, 0x49, 0x46, 0x8D, 0xC8, 0xB1, 0x60, 0x35, 0x58, 0xA1, 0xC1, 0x9D,
|
||||||
|
0x5B, 0x3F, 0x6D, 0xB1, 0xC3, 0x8A, 0x48, 0x3D, 0x74, 0xB5, 0xBC, 0x88,
|
||||||
|
0x48, 0x45, 0x87, 0xC0, 0xB5, 0x6E, 0x3B, 0x4F, 0x90, 0xC0, 0xB0, 0x72,
|
||||||
|
0x40, 0x48, 0x90, 0xCA, 0xB9, 0x6B, 0x2D, 0x46, 0x98, 0xCD, 0xB7, 0x67,
|
||||||
|
0x31, 0x4A, 0x99, 0xD1, 0xBB, 0x66, 0x28, 0x42, 0x97, 0xD0, 0xBD, 0x70,
|
||||||
|
0x33, 0x3E, 0x8C, 0xCD, 0xC8, 0x75, 0x2D, 0x36, 0x87, 0xCB, 0xC4, 0x79,
|
||||||
|
0x3D, 0x45, 0x87, 0xC1, 0xB0, 0x76, 0x44, 0x47, 0x8E, 0xB6, 0xAE, 0x88,
|
||||||
|
0x47, 0x4C, 0x83, 0xA8, 0xB2, 0x7C, 0x59, 0x51, 0x84, 0xAE, 0x9D, 0x74,
|
||||||
|
0x5D, 0x73, 0x5D, 0xCC, 0xBE, 0x25, 0x46, 0xD1, 0x43, 0xB9, 0xAD, 0x1A,
|
||||||
|
0xC8, 0x3F, 0x8B, 0xC5, 0x48, 0x91, 0x5E, 0xA4, 0x60, 0x9E, 0x7A, 0x84,
|
||||||
|
0x84, 0x32, 0xF3, 0x38, 0xA3, 0x57, 0xAA, 0x63, 0x88, 0x89, 0x6F, 0x9B,
|
||||||
|
0x89, 0x25, 0x9E, 0xD2, 0x6E, 0x5A, 0x76, 0x79, 0x82, 0xA1, 0x6F, 0x7D,
|
||||||
|
0xB1, 0x2C, 0x83, 0xCF, 0x3E, 0xAE, 0x5E, 0x76, 0x76, 0x88, 0xCC, 0x4E,
|
||||||
|
0x59, 0xA9, 0x57, 0x94, 0x93, 0x8D, 0x5E, 0x70, 0x98, 0x5C, 0xC7, 0x5F,
|
||||||
|
0x7A, 0x6F, 0x83, 0x9F, 0x5B, 0xA5, 0x5E, 0x94, 0x5F, 0x79, 0xCC, 0x63,
|
||||||
|
0x75, 0x77, 0x51, 0xB0, 0x93, 0x7A, 0x7F, 0x51, 0xA4, 0x7C, 0x7C, 0xA6,
|
||||||
|
0x5C, 0x62, 0x98, 0x81, 0x8D, 0x7D, 0x84, 0x71, 0x72, 0x83, 0x8D, 0xA0,
|
||||||
|
0x69, 0x5C, 0x87, 0x92, 0x97, 0x6C, 0x6B, 0x88, 0x7A, 0x8C, 0x98, 0x6F,
|
||||||
|
0x7D, 0x68, 0x7A, 0x9B, 0x90, 0x6A, 0x7C, 0x7D, 0x7E, 0x88, 0x86, 0x83,
|
||||||
|
0x74, 0x6E, 0x82, 0x8A, 0x94, 0x80, 0x68, 0x75, 0x8A, 0x8B, 0x83, 0x80,
|
||||||
|
0x72, 0x76, 0x8A, 0x86, 0x85, 0x7F, 0x75, 0x77, 0x8A, 0x84, 0x7B, 0x8A,
|
||||||
|
0x78, 0x7B, 0x82, 0x7E, 0x7B, 0x88, 0x83, 0x7A, 0x84, 0x86, 0x72, 0x77,
|
||||||
|
0x8B, 0x86, 0x7C, 0x77, 0x87, 0x83, 0x7B, 0x83, 0x81, 0x73, 0x83, 0x7D,
|
||||||
|
0x85, 0x88, 0x77, 0x80, 0x80, 0x7E, 0x7B, 0x86, 0x83, 0x78, 0x82, 0x7B,
|
||||||
|
0x85, 0x84, 0x7C, 0x7C, 0x81, 0x82, 0x7E, 0x7E, 0x84, 0x7B, 0x78, 0x85,
|
||||||
|
0x84, 0x87, 0x7F, 0x72, 0x77, 0x88, 0x88, 0x7E, 0x7C, 0x86, 0x72, 0x7F,
|
||||||
|
0x94, 0x7B, 0x7A, 0x75, 0x78, 0x85, 0x96, 0x90, 0x71, 0x62, 0x6B, 0x91,
|
||||||
|
0xA6, 0x94, 0x65, 0x52, 0x73, 0xA4, 0xAD, 0x8C, 0x52, 0x44, 0x82, 0xB9,
|
||||||
|
0xB5, 0x77, 0x3E, 0x4F, 0x92, 0xBD, 0xB0, 0x69, 0x3A, 0x58, 0x9B, 0xC7,
|
||||||
|
0xA6, 0x59, 0x34, 0x66, 0xAA, 0xC5, 0x98, 0x51, 0x3C, 0x67, 0xAE, 0xCB,
|
||||||
|
0x8D, 0x50, 0x42, 0x65, 0xAD, 0xC5, 0x8F, 0x5C, 0x47, 0x5F, 0xA2, 0xB3,
|
||||||
|
0xA0, 0x6C, 0x4B, 0x65, 0x89, 0xAC, 0x9F, 0x69, 0x5F, 0x72, 0x8D, 0x9B,
|
||||||
|
0x93, 0x74, 0x5A, 0x6A, 0x7E, 0xA6, 0xAC, 0x85, 0x53, 0x51, 0x83, 0x9E,
|
||||||
|
0xA2, 0x7E, 0x59, 0x68, 0x97, 0xA7, 0x85, 0x66, 0x6A, 0x6C, 0x93, 0x9D,
|
||||||
|
0x89, 0x6F, 0x61, 0x80, 0x99, 0x9A, 0x76, 0x5D, 0x74, 0x8A, 0x8B, 0x94,
|
||||||
|
0x82, 0x6E, 0x76, 0x79, 0x87, 0x82, 0x8C, 0x8B, 0x6E, 0x6F, 0x7A, 0x8B,
|
||||||
|
0x9C, 0x7C, 0x6A, 0x72, 0x83, 0x93, 0x8B, 0x7B, 0x74, 0x74, 0x77, 0x85,
|
||||||
|
0x95, 0x86, 0x86, 0x77, 0x67, 0x74, 0x8F, 0x96, 0x86, 0x6D, 0x6D, 0x84,
|
||||||
|
0x8E, 0x92, 0x7C, 0x70, 0x75, 0x77, 0x85, 0x8C, 0x8D, 0x84, 0x79, 0x6D,
|
||||||
|
0x72, 0x88, 0x99, 0x85, 0x6C, 0x71, 0x80, 0x8A, 0x94, 0x81, 0x6E, 0x74,
|
||||||
|
0x80, 0x86, 0x8D, 0x80, 0x73, 0x7A, 0x8B, 0x86, 0x78, 0x7E, 0x7F, 0x7F,
|
||||||
|
0x7C, 0x84, 0x81, 0x83, 0x85, 0x7B, 0x75, 0x75, 0x7F, 0x97, 0x91, 0x72,
|
||||||
|
0x6C, 0x73, 0x8D, 0x95, 0x7F, 0x70, 0x73, 0x86, 0x88, 0x83, 0x85, 0x7B,
|
||||||
|
0x6E, 0x7C, 0x89, 0x8D, 0x88, 0x75, 0x6F, 0x73, 0x88, 0x98, 0x8F, 0x73,
|
||||||
|
0x65, 0x70, 0x8D, 0x9A, 0x86, 0x76, 0x6A, 0x7A, 0x89, 0x95, 0x83, 0x6E,
|
||||||
|
0x77, 0x79, 0x80, 0x98, 0x8B, 0x6D, 0x6A, 0x7E, 0x93, 0x91, 0x80, 0x6E,
|
||||||
|
0x6E, 0x80, 0x8B, 0x90, 0x83, 0x73, 0x70, 0x84, 0x8D, 0x7F, 0x7A, 0x84,
|
||||||
|
0x75, 0x76, 0x90, 0x8B, 0x7D, 0x6F, 0x71, 0x90, 0x97, 0x7A, 0x6E, 0x75,
|
||||||
|
0x87, 0x89, 0x83, 0x7F, 0x7A, 0x7C, 0x87, 0x7B, 0x7F, 0x85, 0x80, 0x7B,
|
||||||
|
0x7B, 0x83, 0x89, 0x7C, 0x76, 0x81, 0x85, 0x86, 0x83, 0x71, 0x74, 0x87,
|
||||||
|
0x90, 0x80, 0x77, 0x79, 0x80, 0x88, 0x84, 0x77, 0x7B, 0x87, 0x7D, 0x80,
|
||||||
|
0x82, 0x81, 0x80, 0x7D, 0x75, 0x82, 0x8F, 0x84, 0x78, 0x73, 0x7C, 0x85,
|
||||||
|
0x95, 0x81, 0x6C, 0x75, 0x86, 0x90, 0x81, 0x7B, 0x75, 0x7D, 0x85, 0x83,
|
||||||
|
0x84, 0x86, 0x72, 0x73, 0x85, 0x89, 0x8A, 0x7E, 0x7B, 0x70, 0x7A, 0x8E,
|
||||||
|
0x8C, 0x82, 0x71, 0x71, 0x88, 0x8E, 0x80, 0x7B, 0x7B, 0x79, 0x7D, 0x8D,
|
||||||
|
0x88, 0x79, 0x7B, 0x7B, 0x80, 0x83, 0x80, 0x83, 0x86, 0x7D, 0x6F, 0x80,
|
||||||
|
0x8B, 0x82, 0x80, 0x7E, 0x75, 0x7D, 0x8B, 0x87, 0x7C, 0x73, 0x7E, 0x86,
|
||||||
|
0x88, 0x7C, 0x78, 0x87, 0x7C, 0x7C, 0x82, 0x80, 0x7E, 0x81, 0x87, 0x7C,
|
||||||
|
0x77, 0x81, 0x80, 0x85, 0x81, 0x7A, 0x7F, 0x7D, 0x83, 0x83, 0x80, 0x7C,
|
||||||
|
0x78, 0x81, 0x85, 0x83, 0x82, 0x7C, 0x7E, 0x75, 0x7E, 0x8B, 0x8A, 0x7C,
|
||||||
|
0x73, 0x7A, 0x84, 0x8A, 0x80, 0x7C, 0x78, 0x80, 0x82, 0x7E, 0x89, 0x7E,
|
||||||
|
0x7D, 0x77, 0x80, 0x81, 0x87, 0x85, 0x7B, 0x78, 0x7D, 0x89, 0x81, 0x7C,
|
||||||
|
0x7A, 0x84, 0x81, 0x83, 0x7E, 0x7A, 0x83, 0x7F, 0x80, 0x7B, 0x82, 0x87,
|
||||||
|
0x7E, 0x78, 0x81, 0x80, 0x85, 0x75, 0x82, 0x88, 0x7B, 0x7F, 0x7D, 0x86,
|
||||||
|
0x7B, 0x7F, 0x7F, 0x78, 0x8A, 0x84, 0x7C, 0x7A, 0x7B, 0x84, 0x87, 0x7D,
|
||||||
|
0x79, 0x80, 0x85, 0x80, 0x7C, 0x80, 0x81, 0x7D, 0x7B, 0x83, 0x83, 0x83,
|
||||||
|
0x7C, 0x78, 0x7E, 0x85, 0x87, 0x7E, 0x79, 0x78, 0x86, 0x83, 0x87, 0x7E,
|
||||||
|
0x76, 0x7E, 0x7E, 0x85, 0x82, 0x81, 0x81, 0x7A, 0x7E, 0x81, 0x81, 0x7F,
|
||||||
|
0x80, 0x7E, 0x7A, 0x83, 0x89, 0x7C, 0x7C, 0x7E, 0x7C, 0x82, 0x84, 0x81,
|
||||||
|
0x7D, 0x7F, 0x80, 0x79, 0x82, 0x84, 0x82, 0x7F, 0x76, 0x7F, 0x83, 0x84,
|
||||||
|
0x84, 0x7C, 0x76, 0x7F, 0x85, 0x83, 0x7F, 0x7E, 0x7C, 0x7D, 0x85, 0x82,
|
||||||
|
0x7E, 0x80, 0x7C, 0x80, 0x80, 0x82, 0x7E, 0x7C, 0x88, 0x7F, 0x78, 0x7C,
|
||||||
|
0x82, 0x87, 0x80, 0x7A, 0x7C, 0x84, 0x84, 0x7E, 0x80, 0x7B, 0x7E, 0x82,
|
||||||
|
0x82, 0x82, 0x7B, 0x7E, 0x82, 0x80, 0x7E, 0x7E, 0x84, 0x80, 0x7C, 0x7A,
|
||||||
|
0x83, 0x87, 0x80, 0x7B, 0x7D, 0x7E, 0x80, 0x84, 0x7F, 0x7E, 0x81, 0x7D,
|
||||||
|
0x7D, 0x84, 0x82, 0x7B, 0x7D, 0x84, 0x7D, 0x7F, 0x84, 0x7F, 0x7E, 0x7D,
|
||||||
|
0x80, 0x80, 0x82, 0x81, 0x7B, 0x7F, 0x7F, 0x7F, 0x84, 0x83, 0x7C, 0x7A,
|
||||||
|
0x80, 0x80, 0x82, 0x82, 0x7E, 0x7C, 0x7E, 0x7E, 0x87, 0x82, 0x7A, 0x7B,
|
||||||
|
0x7E, 0x85, 0x81, 0x7E, 0x7E, 0x84, 0x7C, 0x7C, 0x80, 0x83, 0x81, 0x7E,
|
||||||
|
0x7B, 0x80, 0x85, 0x80, 0x7D, 0x7E, 0x80, 0x7E, 0x80, 0x83, 0x7E, 0x7A,
|
||||||
|
0x83, 0x81, 0x7F, 0x80, 0x7A, 0x82, 0x82, 0x80, 0x7D, 0x7E, 0x84, 0x7C,
|
||||||
|
0x82, 0x7E, 0x7E, 0x81, 0x80, 0x82, 0x7C, 0x7E, 0x83, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x7E, 0x82, 0x7E, 0x82, 0x80, 0x7E, 0x7D, 0x81, 0x82, 0x7E, 0x7D, 0x80,
|
||||||
|
0x83, 0x7E, 0x80, 0x7E, 0x80, 0x81, 0x81, 0x7C, 0x7E, 0x82, 0x7E, 0x82,
|
||||||
|
0x7F, 0x7D, 0x7F, 0x82, 0x80, 0x7E, 0x80, 0x7E, 0x82, 0x7F, 0x82, 0x7A,
|
||||||
|
0x80, 0x82, 0x80, 0x80, 0x7C, 0x82, 0x81, 0x7E, 0x7E, 0x80, 0x82, 0x7E,
|
||||||
|
0x7E, 0x82, 0x7E, 0x80, 0x7F, 0x7E, 0x82, 0x7D, 0x80, 0x82, 0x80, 0x7D,
|
||||||
|
0x7D, 0x85, 0x80, 0x7B, 0x80, 0x81, 0x81, 0x7F, 0x7F, 0x7D, 0x80, 0x82,
|
||||||
|
0x80, 0x7F, 0x7E, 0x7C, 0x83, 0x84, 0x7A, 0x7F, 0x81, 0x7F, 0x80, 0x80,
|
||||||
|
0x7F, 0x80, 0x80, 0x7E, 0x81, 0x80, 0x7C, 0x7E, 0x85, 0x80, 0x7A, 0x81,
|
||||||
|
0x83, 0x7D, 0x7D, 0x80, 0x7F, 0x81, 0x7F, 0x7F, 0x81, 0x7D, 0x81, 0x7E,
|
||||||
|
0x81, 0x7F, 0x7D, 0x85, 0x7E, 0x7C, 0x83, 0x80, 0x7C, 0x7E, 0x82, 0x81,
|
||||||
|
0x80, 0x7E, 0x7E, 0x7F, 0x83, 0x7A, 0x80, 0x86, 0x7E, 0x7C, 0x80, 0x82,
|
||||||
|
0x7D, 0x81, 0x82, 0x7E, 0x7D, 0x81, 0x80, 0x81, 0x7E, 0x7E, 0x82, 0x80,
|
||||||
|
0x7E, 0x7E, 0x80, 0x80, 0x80, 0x7E, 0x7E, 0x81, 0x81, 0x7E, 0x7E, 0x82,
|
||||||
|
0x7D, 0x7F, 0x82, 0x82, 0x7C, 0x7C, 0x81, 0x83, 0x7E, 0x7C, 0x83, 0x7E,
|
||||||
|
0x7E, 0x84, 0x7C, 0x7E, 0x81, 0x82, 0x7D, 0x7E, 0x80, 0x84, 0x7E, 0x7E,
|
||||||
|
0x80, 0x80, 0x82, 0x7E, 0x7C, 0x81, 0x80, 0x7E, 0x83, 0x80, 0x7B, 0x7E,
|
||||||
|
0x82, 0x84, 0x7E, 0x7E, 0x7E, 0x82, 0x81, 0x7C, 0x7E, 0x82, 0x82, 0x7D,
|
||||||
|
0x7F, 0x81, 0x7C, 0x81, 0x85, 0x79, 0x7E, 0x85, 0x7E, 0x80, 0x7C, 0x80,
|
||||||
|
0x82, 0x81, 0x80, 0x79, 0x81, 0x84, 0x80, 0x7C, 0x7E, 0x82, 0x82, 0x7E,
|
||||||
|
0x7E, 0x7E, 0x82, 0x81, 0x7C, 0x82, 0x82, 0x7C, 0x80, 0x84, 0x7C, 0x7C,
|
||||||
|
0x82, 0x82, 0x80, 0x7C, 0x80, 0x81, 0x81, 0x80, 0x7B, 0x80, 0x83, 0x7E,
|
||||||
|
0x80, 0x82, 0x7C, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7C, 0x82, 0x84, 0x7A,
|
||||||
|
0x7C, 0x85, 0x82, 0x7A, 0x81, 0x84, 0x7C, 0x7E, 0x83, 0x7C, 0x80, 0x84,
|
||||||
|
0x7F, 0x7B, 0x82, 0x82, 0x7D, 0x81, 0x81, 0x7E, 0x7E, 0x82, 0x80, 0x7E,
|
||||||
|
0x80, 0x82, 0x7C, 0x81, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x81, 0x7E, 0x80,
|
||||||
|
0x7F, 0x80, 0x80, 0x7D, 0x82, 0x82, 0x7A, 0x81, 0x82, 0x7F, 0x7D, 0x82,
|
||||||
|
0x7F, 0x7F, 0x81, 0x7B, 0x81, 0x81, 0x7E, 0x83, 0x7B, 0x7D, 0x86, 0x7A,
|
||||||
|
0x82, 0x7F, 0x80, 0x7E, 0x81, 0x82, 0x79, 0x82, 0x85, 0x78, 0x7F, 0x85,
|
||||||
|
0x7F, 0x7F, 0x7C, 0x81, 0x83, 0x7E, 0x7F, 0x7B, 0x89, 0x7E, 0x7A, 0x83,
|
||||||
|
0x80, 0x7C, 0x82, 0x84, 0x7C, 0x7B, 0x84, 0x80, 0x7B, 0x85, 0x7E, 0x7E,
|
||||||
|
0x7E, 0x83, 0x7E, 0x7E, 0x82, 0x7E, 0x7E, 0x83, 0x7E, 0x7E, 0x82, 0x80,
|
||||||
|
0x78, 0x85, 0x82, 0x7E, 0x7F, 0x7B, 0x84, 0x81, 0x7F, 0x80, 0x7B, 0x84,
|
||||||
|
0x80, 0x7C, 0x84, 0x7E, 0x7C, 0x84, 0x80, 0x7C, 0x80, 0x81, 0x7F, 0x7E,
|
||||||
|
0x7E, 0x84, 0x7D, 0x7E, 0x82, 0x7E, 0x7E, 0x82, 0x7F, 0x7E, 0x82, 0x7F,
|
||||||
|
0x80, 0x80, 0x7C, 0x81, 0x83, 0x7F, 0x7E, 0x7C, 0x82, 0x84, 0x7C, 0x7F,
|
||||||
|
0x80, 0x80, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x81, 0x80, 0x7D,
|
||||||
|
0x7F, 0x80, 0x82, 0x7D, 0x86, 0x7A, 0x76, 0x8F, 0x7E, 0x77, 0x80, 0x85,
|
||||||
|
0x7F, 0x7C, 0x81, 0x81, 0x7D, 0x82, 0x80, 0x7E, 0x81, 0x7C, 0x80, 0x84,
|
||||||
|
0x80, 0x79, 0x7D, 0x84, 0x8D, 0x89, 0x6A, 0x50, 0x94, 0xCF, 0x80, 0x37,
|
||||||
|
0x5A, 0xB6, 0xB0, 0x64, 0x4B, 0x88, 0xB7, 0x85, 0x58, 0x62, 0x8C, 0xAC,
|
||||||
|
0x8E, 0x56, 0x61, 0x98, 0xA6, 0x7A, 0x59, 0x77, 0x9A, 0x91, 0x79, 0x69,
|
||||||
|
0x76, 0x8F, 0x98, 0x74, 0x67, 0x82, 0x91, 0x88, 0x7A, 0x6A, 0x80, 0x95,
|
||||||
|
0x87, 0x6D, 0x75, 0x87, 0x8F, 0x83, 0x6A, 0x7B, 0x8F, 0x8A, 0x72, 0x76,
|
||||||
|
0x85, 0x88, 0x86, 0x76, 0x77, 0x84, 0x86, 0x82, 0x79, 0x7A, 0x87, 0x7D,
|
||||||
|
0x87, 0x80, 0x6E, 0x7D, 0x97, 0x7B, 0x77, 0x7E, 0x7B, 0x96, 0x74, 0x6E,
|
||||||
|
0x89, 0x91, 0x7F, 0x74, 0x6C, 0x9A, 0x7B, 0x7E, 0x7F, 0x7C, 0x89, 0x76,
|
||||||
|
0x84, 0x79, 0x8B, 0x79, 0x73, 0x9B, 0x72, 0x6A, 0xA1, 0x75, 0x7F, 0x7F,
|
||||||
|
0x6D, 0x9C, 0x6D, 0x86, 0x8F, 0x60, 0x9E, 0x77, 0x60, 0xA8, 0x6B, 0x8F,
|
||||||
|
0x74, 0x7E, 0x93, 0x62, 0x92, 0x69, 0xA8, 0x6A, 0x7B, 0x87, 0x69, 0x99,
|
||||||
|
0x77, 0x89, 0x69, 0xA4, 0x6F, 0x58, 0xB1, 0x7B, 0x5E, 0x9F, 0x77, 0x97,
|
||||||
|
0x54, 0x93, 0x90, 0x3D, 0xCD, 0x8C, 0x41, 0x8B, 0x7E, 0x9D, 0x7D, 0x69,
|
||||||
|
0x72, 0xA8, 0x8E, 0x30, 0xB3, 0x8E, 0x60, 0x83, 0x99, 0x67, 0x94, 0x66,
|
||||||
|
0x97, 0x4E, 0xBA, 0x7B, 0x59, 0xBB, 0x38, 0xB5, 0x54, 0xA8, 0x69, 0x95,
|
||||||
|
0x6D, 0x78, 0xA5, 0x3B, 0xD4, 0x3A, 0x87, 0xC9, 0x2B, 0xB5, 0x64, 0x5E,
|
||||||
|
0xB9, 0x8A, 0x43, 0xA2, 0x95, 0x63, 0x74, 0x8E, 0x8A, 0x71, 0x80, 0x8C,
|
||||||
|
0x87, 0x71, 0x71, 0x8F, 0x83, 0x7D, 0x70, 0x8E, 0x96, 0x6D, 0x69, 0x85,
|
||||||
|
0x93, 0x83, 0x69, 0x7A, 0x9B, 0x88, 0x68, 0x6C, 0x90, 0x96, 0x75, 0x69,
|
||||||
|
0x89, 0x9A, 0x7B, 0x65, 0x79, 0x95, 0x8A, 0x6F, 0x72, 0x92, 0x92, 0x70,
|
||||||
|
0x68, 0x85, 0x97, 0x80, 0x69, 0x7C, 0x99, 0x89, 0x67, 0x6E, 0x90, 0x98,
|
||||||
|
0x76, 0x65, 0x83, 0x9E, 0x84, 0x61, 0x6E, 0x97, 0x98, 0x74, 0x61, 0x83,
|
||||||
|
0xA1, 0x86, 0x5F, 0x6E, 0x96, 0x98, 0x75, 0x64, 0x81, 0x9E, 0x8A, 0x65,
|
||||||
|
0x68, 0x8D, 0x9C, 0x7F, 0x62, 0x74, 0x9F, 0xA6, 0x6B, 0x2F, 0x6C, 0xE8,
|
||||||
|
0xC7, 0x2F, 0x12, 0xA1, 0xF3, 0x88, 0x19, 0x59, 0xCD, 0xC4, 0x56, 0x2A,
|
||||||
|
0x76, 0xCC, 0xBA, 0x54, 0x2F, 0x7D, 0xCD, 0xA7, 0x49, 0x3E, 0x93, 0xC9,
|
||||||
|
0x95, 0x44, 0x4A, 0x9C, 0xBF, 0x86, 0x4A, 0x5D, 0xA1, 0xB1, 0x78, 0x4D,
|
||||||
|
0x6D, 0xA6, 0xA5, 0x6E, 0x54, 0x79, 0xA7, 0x98, 0x67, 0x5C, 0x87, 0xA4,
|
||||||
|
0x85, 0x64, 0x6E, 0x91, 0x95, 0x79, 0x6C, 0x7A, 0x8E, 0x8B, 0x7C, 0x73,
|
||||||
|
0x79, 0x89, 0x8A, 0x7D, 0x74, 0x7C, 0x8A, 0x86, 0x7A, 0x76, 0x80, 0x89,
|
||||||
|
0x84, 0x78, 0x78, 0x82, 0x89, 0x81, 0x76, 0x78, 0x87, 0x8B, 0x7B, 0x72,
|
||||||
|
0x80, 0x8B, 0x84, 0x78, 0x78, 0x82, 0x86, 0x81, 0x7B, 0x7C, 0x81, 0x85,
|
||||||
|
0x81, 0x7B, 0x7C, 0x81, 0x85, 0x80, 0x7C, 0x7C, 0x81, 0x85, 0x7F, 0x7C,
|
||||||
|
0x7D, 0x82, 0x84, 0x7E, 0x7A, 0x7F, 0x87, 0x83, 0x79, 0x79, 0x83, 0x86,
|
||||||
|
0x80, 0x7A, 0x80, 0x84, 0x7E, 0x7C, 0x7F, 0x81, 0x82, 0x7F, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x7E, 0x7F, 0x81, 0x84, 0x80, 0x79, 0x7B, 0x83, 0x87, 0x80,
|
||||||
|
0x79, 0x7B, 0x85, 0x86, 0x7D, 0x79, 0x7E, 0x87, 0x83, 0x7D, 0x79, 0x7F,
|
||||||
|
0x86, 0x83, 0x7C, 0x78, 0x81, 0x86, 0x82, 0x7C, 0x79, 0x80, 0x85, 0x80,
|
||||||
|
0x7D, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x80, 0x82, 0x80, 0x7E,
|
||||||
|
0x7D, 0x7F, 0x82, 0x82, 0x7F, 0x7F, 0x7F, 0x7C, 0x80, 0x82, 0x80, 0x7E,
|
||||||
|
0x7F, 0x81, 0x81, 0x7E, 0x7C, 0x7E, 0x82, 0x84, 0x81, 0x7C, 0x7C, 0x80,
|
||||||
|
0x85, 0x80, 0x7A, 0x7E, 0x83, 0x82, 0x7F, 0x7F, 0x7E, 0x7D, 0x7F, 0x83,
|
||||||
|
0x82, 0x7E, 0x7A, 0x80, 0x85, 0x81, 0x7B, 0x7B, 0x82, 0x88, 0x83, 0x75,
|
||||||
|
0x75, 0x86, 0x90, 0x80, 0x70, 0x77, 0x8D, 0x8D, 0x76, 0x70, 0x84, 0x92,
|
||||||
|
0x82, 0x6D, 0x75, 0x8D, 0x8F, 0x79, 0x6F, 0x80, 0x8E, 0x84, 0x72, 0x76,
|
||||||
|
0x88, 0x8F, 0x7D, 0x70, 0x7B, 0x8B, 0x8B, 0x77, 0x71, 0x7F, 0x8F, 0x86,
|
||||||
|
0x76, 0x75, 0x80, 0x89, 0x87, 0x7B, 0x75, 0x7D, 0x89, 0x84, 0x7C, 0x7C,
|
||||||
|
0x7F, 0x82, 0x80, 0x7E, 0x7A, 0x80, 0x89, 0x84, 0x79, 0x77, 0x80, 0x87,
|
||||||
|
0x82, 0x7C, 0x7C, 0x82, 0x80, 0x7F, 0x7E, 0x80, 0x81, 0x81, 0x7F, 0x7E,
|
||||||
|
0x7E, 0x81, 0x80, 0x81, 0x7F, 0x7D, 0x7E, 0x83, 0x82, 0x7D, 0x7C, 0x82,
|
||||||
|
0x83, 0x7C, 0x79, 0x82, 0x87, 0x80, 0x78, 0x7D, 0x86, 0x84, 0x7C, 0x7C,
|
||||||
|
0x7D, 0x82, 0x85, 0x7F, 0x7A, 0x7C, 0x83, 0x83, 0x7E, 0x83, 0x8A, 0x7D,
|
||||||
|
0x65, 0x6E, 0x95, 0xA7, 0x8B, 0x61, 0x5A, 0x7C, 0xA0, 0xA0, 0x75, 0x5B,
|
||||||
|
0x70, 0x95, 0xA0, 0x83, 0x66, 0x64, 0x7F, 0x96, 0x94, 0x82, 0x70, 0x6E,
|
||||||
|
0x7C, 0x8B, 0x90, 0x84, 0x72, 0x6E, 0x7D, 0x90, 0x8E, 0x7E, 0x73, 0x74,
|
||||||
|
0x7E, 0x89, 0x8D, 0x83, 0x72, 0x71, 0x80, 0x90, 0x89, 0x77, 0x74, 0x83,
|
||||||
|
0x84, 0x77, 0x7C, 0x8F, 0x8B, 0x6E, 0x67, 0x8D, 0xA3, 0x7E, 0x56, 0x6C,
|
||||||
|
0xA3, 0xA6, 0x6F, 0x53, 0x7D, 0xA7, 0x8C, 0x60, 0x6B, 0x99, 0x99, 0x6E,
|
||||||
|
0x61, 0x89, 0xA1, 0x7F, 0x5F, 0x72, 0x9A, 0x93, 0x71, 0x6C, 0x86, 0x8D,
|
||||||
|
0x7B, 0x77, 0x89, 0x87, 0x71, 0x75, 0x91, 0x90, 0x6E, 0x69, 0x8C, 0x9C,
|
||||||
|
0x79, 0x64, 0x80, 0x9E, 0x81, 0x5D, 0x74, 0xA3, 0x99, 0x62, 0x5C, 0x91,
|
||||||
|
0xA8, 0x79, 0x56, 0x7A, 0xA8, 0x94, 0x5C, 0x5E, 0x97, 0xAA, 0x75, 0x50,
|
||||||
|
0x79, 0xAE, 0x9D, 0x5D, 0x50, 0x87, 0xB2, 0x95, 0x5C, 0x5A, 0x89, 0xA5,
|
||||||
|
0x8D, 0x66, 0x63, 0x88, 0x9F, 0x81, 0x68, 0x79, 0x92, 0x8C, 0x74, 0x69,
|
||||||
|
0x76, 0x95, 0xA1, 0x7E, 0x5B, 0x6C, 0x9C, 0x95, 0x67, 0x68, 0x98, 0xA0,
|
||||||
|
0x70, 0x5E, 0x7F, 0x9B, 0x83, 0x69, 0x79, 0x99, 0x90, 0x6A, 0x68, 0x85,
|
||||||
|
0x98, 0x85, 0x69, 0x6E, 0x92, 0xA0, 0x7A, 0x5B, 0x71, 0x9C, 0x97, 0x6E,
|
||||||
|
0x68, 0x89, 0x98, 0x7D, 0x6D, 0x7B, 0x89, 0x83, 0x7D, 0x7A, 0x7C, 0x89,
|
||||||
|
0x8E, 0x7E, 0x6E, 0x76, 0x87, 0x84, 0x7D, 0x86, 0x89, 0x79, 0x72, 0x80,
|
||||||
|
0x89, 0x7E, 0x79, 0x7F, 0x86, 0x84, 0x81, 0x7C, 0x75, 0x7C, 0x8F, 0x8A,
|
||||||
|
0x6F, 0x6B, 0x89, 0x98, 0x83, 0x70, 0x74, 0x87, 0x8C, 0x7E, 0x6F, 0x73,
|
||||||
|
0x8E, 0x9E, 0x83, 0x61, 0x6D, 0x90, 0x93, 0x79, 0x6C, 0x80, 0x93, 0x8C,
|
||||||
|
0x75, 0x6B, 0x7C, 0x93, 0x91, 0x71, 0x65, 0x7F, 0x98, 0x8B, 0x75, 0x77,
|
||||||
|
0x83, 0x83, 0x79, 0x7B, 0x82, 0x80, 0x80, 0x86, 0x84, 0x7C, 0x7D, 0x7D,
|
||||||
|
0x7A, 0x79, 0x87, 0x91, 0x7E, 0x6B, 0x77, 0x92, 0x92, 0x75, 0x68, 0x7D,
|
||||||
|
0x92, 0x8B, 0x74, 0x71, 0x7D, 0x90, 0x90, 0x7D, 0x6A, 0x6E, 0x87, 0x98,
|
||||||
|
0x8A, 0x6D, 0x64, 0x84, 0xA5, 0x93, 0x63, 0x58, 0x82, 0xA3, 0x94, 0x6E,
|
||||||
|
0x63, 0x7C, 0x96, 0x94, 0x7D, 0x69, 0x6B, 0x85, 0x9B, 0x92, 0x70, 0x62,
|
||||||
|
0x79, 0x98, 0x96, 0x7C, 0x6B, 0x71, 0x82, 0x8D, 0x91, 0x80, 0x68, 0x6D,
|
||||||
|
0x8F, 0xA0, 0x85, 0x64, 0x66, 0x83, 0x95, 0x93, 0x7F, 0x6C, 0x6B, 0x81,
|
||||||
|
0x98, 0x91, 0x77, 0x65, 0x6F, 0x8C, 0xA0, 0x91, 0x6A, 0x59, 0x77, 0xA0,
|
||||||
|
0xA0, 0x7D, 0x60, 0x68, 0x85, 0x9B, 0x93, 0x7B, 0x68, 0x6B, 0x80, 0x97,
|
||||||
|
0x9C, 0x83, 0x5F, 0x5B, 0x86, 0xAA, 0x9B, 0x6E, 0x58, 0x6F, 0x92, 0xA2,
|
||||||
|
0x8D, 0x6B, 0x60, 0x76, 0x91, 0x98, 0x8A, 0x75, 0x65, 0x70, 0x8F, 0x9F,
|
||||||
|
0x89, 0x68, 0x64, 0x80, 0x96, 0x96, 0x7F, 0x6A, 0x6C, 0x80, 0x91, 0x91,
|
||||||
|
0x81, 0x70, 0x6D, 0x80, 0x96, 0x8E, 0x72, 0x69, 0x7F, 0x94, 0x8C, 0x78,
|
||||||
|
0x70, 0x7A, 0x88, 0x8B, 0x7F, 0x76, 0x7B, 0x86, 0x86, 0x7A, 0x79, 0x84,
|
||||||
|
0x85, 0x7B, 0x7A, 0x82, 0x8A, 0x82, 0x75, 0x75, 0x83, 0x8D, 0x86, 0x79,
|
||||||
|
0x73, 0x7A, 0x8B, 0x8F, 0x7E, 0x6F, 0x74, 0x87, 0x8E, 0x83, 0x79, 0x78,
|
||||||
|
0x7D, 0x81, 0x82, 0x83, 0x83, 0x7E, 0x78, 0x7C, 0x86, 0x88, 0x7E, 0x75,
|
||||||
|
0x7A, 0x86, 0x88, 0x82, 0x7C, 0x79, 0x7B, 0x84, 0x88, 0x82, 0x7B, 0x78,
|
||||||
|
0x7D, 0x84, 0x86, 0x81, 0x7B, 0x7A, 0x7F, 0x81, 0x84, 0x84, 0x7E, 0x77,
|
||||||
|
0x78, 0x86, 0x8D, 0x81, 0x75, 0x75, 0x80, 0x89, 0x85, 0x7E, 0x78, 0x7C,
|
||||||
|
0x84, 0x85, 0x80, 0x7D, 0x7C, 0x7B, 0x7E, 0x87, 0x8B, 0x7E, 0x72, 0x77,
|
||||||
|
0x88, 0x8B, 0x80, 0x78, 0x7A, 0x83, 0x85, 0x80, 0x7C, 0x7A, 0x7E, 0x83,
|
||||||
|
0x85, 0x83, 0x7C, 0x78, 0x7D, 0x85, 0x85, 0x80, 0x7A, 0x7C, 0x80, 0x83,
|
||||||
|
0x83, 0x82, 0x7C, 0x7A, 0x7D, 0x83, 0x85, 0x81, 0x7C, 0x7A, 0x7E, 0x83,
|
||||||
|
0x85, 0x80, 0x78, 0x7A, 0x83, 0x89, 0x81, 0x78, 0x7A, 0x82, 0x84, 0x80,
|
||||||
|
0x7D, 0x80, 0x82, 0x7F, 0x7D, 0x7D, 0x80, 0x83, 0x82, 0x7F, 0x7D, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x82, 0x81, 0x7E, 0x7D, 0x80, 0x82, 0x80, 0x7E, 0x7E, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7F, 0x80, 0x7F, 0x80, 0x80, 0x7F, 0x7D, 0x7F, 0x82,
|
||||||
|
0x81, 0x7D, 0x7E, 0x81, 0x82, 0x7E, 0x7D, 0x7F, 0x82, 0x80, 0x7C, 0x7D,
|
||||||
|
0x82, 0x85, 0x80, 0x7B, 0x7A, 0x82, 0x84, 0x81, 0x7E, 0x7D, 0x7F, 0x81,
|
||||||
|
0x83, 0x82, 0x7C, 0x78, 0x7C, 0x88, 0x8A, 0x80, 0x74, 0x74, 0x82, 0x91,
|
||||||
|
0x89, 0x75, 0x6E, 0x7B, 0x8D, 0x90, 0x80, 0x70, 0x70, 0x80, 0x92, 0x91,
|
||||||
|
0x7D, 0x68, 0x6E, 0x88, 0x9A, 0x8E, 0x70, 0x64, 0x78, 0x94, 0x98, 0x82,
|
||||||
|
0x68, 0x68, 0x83, 0x99, 0x94, 0x77, 0x65, 0x6F, 0x8C, 0x9B, 0x8C, 0x71,
|
||||||
|
0x65, 0x75, 0x90, 0x98, 0x87, 0x72, 0x69, 0x76, 0x8D, 0x97, 0x89, 0x72,
|
||||||
|
0x6A, 0x78, 0x8C, 0x91, 0x82, 0x75, 0x73, 0x80, 0x8B, 0x89, 0x7F, 0x75,
|
||||||
|
0x73, 0x7C, 0x8B, 0x90, 0x86, 0x72, 0x6D, 0x7E, 0x90, 0x8D, 0x7A, 0x70,
|
||||||
|
0x79, 0x89, 0x8F, 0x82, 0x73, 0x73, 0x80, 0x8B, 0x89, 0x7D, 0x76, 0x79,
|
||||||
|
0x85, 0x89, 0x83, 0x78, 0x76, 0x7E, 0x87, 0x87, 0x80, 0x7B, 0x7B, 0x7E,
|
||||||
|
0x81, 0x82, 0x82, 0x82, 0x7D, 0x79, 0x7D, 0x86, 0x87, 0x7F, 0x78, 0x7A,
|
||||||
|
0x82, 0x87, 0x84, 0x7D, 0x7A, 0x7B, 0x7F, 0x84, 0x86, 0x83, 0x7C, 0x77,
|
||||||
|
0x7B, 0x84, 0x87, 0x82, 0x7B, 0x7A, 0x80, 0x83, 0x83, 0x81, 0x7C, 0x7B,
|
||||||
|
0x7C, 0x81, 0x85, 0x85, 0x80, 0x79, 0x79, 0x80, 0x85, 0x85, 0x7E, 0x79,
|
||||||
|
0x7C, 0x83, 0x85, 0x82, 0x7D, 0x7B, 0x7B, 0x81, 0x85, 0x83, 0x7D, 0x7B,
|
||||||
|
0x7F, 0x83, 0x82, 0x7D, 0x7C, 0x80, 0x81, 0x82, 0x7E, 0x80, 0x82, 0x7F,
|
||||||
|
0x7B, 0x7A, 0x83, 0x89, 0x83, 0x79, 0x77, 0x7F, 0x87, 0x85, 0x7D, 0x7A,
|
||||||
|
0x7C, 0x81, 0x83, 0x82, 0x7E, 0x7B, 0x7C, 0x82, 0x87, 0x82, 0x7A, 0x78,
|
||||||
|
0x7D, 0x84, 0x88, 0x84, 0x7B, 0x75, 0x7C, 0x86, 0x89, 0x80, 0x78, 0x79,
|
||||||
|
0x80, 0x87, 0x85, 0x7E, 0x79, 0x7B, 0x82, 0x87, 0x84, 0x7B, 0x77, 0x7C,
|
||||||
|
0x85, 0x8A, 0x81, 0x75, 0x77, 0x82, 0x87, 0x85, 0x7E, 0x79, 0x7C, 0x82,
|
||||||
|
0x84, 0x82, 0x7E, 0x7C, 0x7E, 0x80, 0x82, 0x82, 0x7C, 0x7C, 0x80, 0x85,
|
||||||
|
0x83, 0x7C, 0x7A, 0x7E, 0x84, 0x83, 0x7F, 0x7C, 0x7D, 0x81, 0x82, 0x80,
|
||||||
|
0x7E, 0x7F, 0x80, 0x7F, 0x80, 0x7F, 0x7E, 0x80, 0x82, 0x82, 0x7E, 0x7B,
|
||||||
|
0x7E, 0x82, 0x81, 0x80, 0x7E, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x82, 0x7E,
|
||||||
|
0x7E, 0x80, 0x82, 0x82, 0x7D, 0x7C, 0x7E, 0x83, 0x84, 0x80, 0x7D, 0x7B,
|
||||||
|
0x7F, 0x83, 0x83, 0x7F, 0x7B, 0x7C, 0x80, 0x84, 0x82, 0x7D, 0x7B, 0x7E,
|
||||||
|
0x84, 0x83, 0x80, 0x7B, 0x7B, 0x80, 0x85, 0x85, 0x7F, 0x7A, 0x7B, 0x81,
|
||||||
|
0x83, 0x82, 0x7F, 0x7D, 0x7C, 0x80, 0x83, 0x83, 0x7E, 0x7B, 0x7E, 0x82,
|
||||||
|
0x83, 0x81, 0x7E, 0x7C, 0x7E, 0x81, 0x82, 0x81, 0x80, 0x7E, 0x7D, 0x7E,
|
||||||
|
0x81, 0x82, 0x80, 0x7D, 0x7E, 0x80, 0x81, 0x82, 0x7E, 0x7D, 0x7E, 0x80,
|
||||||
|
0x82, 0x80, 0x80, 0x7E, 0x7E, 0x80, 0x80, 0x7F, 0x80, 0x81, 0x80, 0x7E,
|
||||||
|
0x7C, 0x80, 0x83, 0x81, 0x7F, 0x7C, 0x7E, 0x82, 0x82, 0x80, 0x7C, 0x7E,
|
||||||
|
0x81, 0x82, 0x80, 0x7F, 0x7F, 0x7E, 0x7E, 0x7F, 0x83, 0x83, 0x7E, 0x7B,
|
||||||
|
0x7D, 0x82, 0x84, 0x82, 0x7C, 0x7C, 0x7F, 0x82, 0x83, 0x7F, 0x7C, 0x7E,
|
||||||
|
0x80, 0x81, 0x81, 0x7F, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7E, 0x7F,
|
||||||
|
0x80, 0x81, 0x7F, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x81, 0x80, 0x7F, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7E, 0x7E,
|
||||||
|
0x80, 0x82, 0x82, 0x7F, 0x7D, 0x7F, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80,
|
||||||
|
0x81, 0x81, 0x7F, 0x7D, 0x7E, 0x80, 0x82, 0x80, 0x7E, 0x7E, 0x80, 0x80,
|
||||||
|
0x80, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x81, 0x7E, 0x7C, 0x7E, 0x82,
|
||||||
|
0x83, 0x80, 0x7C, 0x7D, 0x80, 0x82, 0x80, 0x7E, 0x7E, 0x80, 0x80, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7D, 0x7E, 0x82, 0x83, 0x81, 0x7D, 0x7C, 0x7F, 0x82,
|
||||||
|
0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x7E, 0x7F, 0x81,
|
||||||
|
0x82, 0x7F, 0x7D, 0x7E, 0x80, 0x82, 0x80, 0x7E, 0x7E, 0x80, 0x80, 0x7F,
|
||||||
|
0x80, 0x81, 0x81, 0x7F, 0x7D, 0x7F, 0x81, 0x82, 0x80, 0x7E, 0x7E, 0x80,
|
||||||
|
0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x80, 0x80, 0x7E,
|
||||||
|
0x7F, 0x80, 0x81, 0x80, 0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7D, 0x7E, 0x81,
|
||||||
|
0x82, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80,
|
||||||
|
0x81, 0x81, 0x80, 0x7E, 0x7D, 0x80, 0x81, 0x81, 0x7E, 0x7E, 0x7F, 0x81,
|
||||||
|
0x81, 0x80, 0x7E, 0x7E, 0x7F, 0x80, 0x81, 0x81, 0x7F, 0x7D, 0x7E, 0x81,
|
||||||
|
0x82, 0x7F, 0x7D, 0x7E, 0x81, 0x82, 0x7F, 0x7E, 0x7E, 0x80, 0x81, 0x80,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x80, 0x81, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x81, 0x7F, 0x7D, 0x7E, 0x81,
|
||||||
|
0x82, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x81, 0x80,
|
||||||
|
0x7E, 0x7E, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x80, 0x81, 0x80, 0x7F, 0x7E,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x82, 0x82,
|
||||||
|
0x7F, 0x7C, 0x7E, 0x81, 0x82, 0x80, 0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7E,
|
||||||
|
0x7E, 0x7F, 0x81, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7E, 0x7F, 0x81, 0x81, 0x7F,
|
||||||
|
0x7E, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x81, 0x81, 0x80,
|
||||||
|
0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7E,
|
||||||
|
0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x80, 0x80, 0x7F, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x81, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x80,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x80,
|
||||||
|
0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x80,
|
||||||
|
0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7E,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7E, 0x7E, 0x80,
|
||||||
|
0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80,
|
||||||
|
0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81,
|
||||||
|
0x80, 0x7F, 0x7E, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7E, 0x7F, 0x81, 0x80, 0x80, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x80, 0x80, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x7E,
|
||||||
|
0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7E, 0x80, 0x81,
|
||||||
|
0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x7E, 0x80, 0x80, 0x81, 0x7F, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x7F,
|
||||||
|
0x7E, 0x7E, 0x80, 0x81, 0x81, 0x80, 0x7E, 0x7D, 0x7E, 0x81, 0x82, 0x81,
|
||||||
|
0x7F, 0x7D, 0x7D, 0x80, 0x82, 0x82, 0x7F, 0x7A, 0x79, 0x82, 0x8D, 0x8B,
|
||||||
|
0x77, 0x64, 0x72, 0x96, 0xA3, 0x85, 0x5F, 0x5E, 0x85, 0xA4, 0x96, 0x70,
|
||||||
|
0x5F, 0x74, 0x94, 0x9B, 0x85, 0x6C, 0x69, 0x7A, 0x90, 0x96, 0x86, 0x70,
|
||||||
|
0x69, 0x79, 0x8F, 0x94, 0x83, 0x6F, 0x6E, 0x7E, 0x8F, 0x8E, 0x80, 0x73,
|
||||||
|
0x72, 0x7E, 0x8A, 0x8C, 0x81, 0x75, 0x73, 0x7E, 0x8A, 0x8B, 0x80, 0x74,
|
||||||
|
0x74, 0x80, 0x8B, 0x89, 0x7E, 0x75, 0x77, 0x82, 0x89, 0x86, 0x7D, 0x77,
|
||||||
|
0x7A, 0x83, 0x88, 0x84, 0x7C, 0x77, 0x7C, 0x84, 0x87, 0x83, 0x7C, 0x79,
|
||||||
|
0x7D, 0x83, 0x85, 0x82, 0x7D, 0x7B, 0x7E, 0x81, 0x83, 0x82, 0x7D, 0x7C,
|
||||||
|
0x7E, 0x82, 0x84, 0x81, 0x7D, 0x7C, 0x7F, 0x82, 0x82, 0x80, 0x7D, 0x7D,
|
||||||
|
0x7F, 0x81, 0x83, 0x80, 0x7E, 0x7C, 0x7F, 0x81, 0x82, 0x80, 0x7E, 0x7D,
|
||||||
|
0x7F, 0x82, 0x82, 0x7F, 0x7D, 0x7D, 0x7F, 0x82, 0x83, 0x80, 0x7D, 0x7C,
|
||||||
|
0x7F, 0x81, 0x82, 0x80, 0x7E, 0x7D, 0x80, 0x82, 0x82, 0x7F, 0x7D, 0x7E,
|
||||||
|
0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7D, 0x7F,
|
||||||
|
0x81, 0x82, 0x80, 0x7F, 0x7E, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E,
|
||||||
|
0x7F, 0x81, 0x82, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7E, 0x7E, 0x7F, 0x80, 0x81, 0x81, 0x80,
|
||||||
|
0x7E, 0x7E, 0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x81,
|
||||||
|
0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x81, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7E,
|
||||||
|
0x80, 0x81, 0x80, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7E, 0x7F,
|
||||||
|
0x80, 0x81, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E,
|
||||||
|
0x80, 0x81, 0x80, 0x7E, 0x7D, 0x7E, 0x80, 0x82, 0x81, 0x7F, 0x7D, 0x7E,
|
||||||
|
0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x81, 0x80,
|
||||||
|
0x7E, 0x7E, 0x80, 0x81, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x81, 0x80, 0x7E,
|
||||||
|
0x7E, 0x7F, 0x81, 0x82, 0x81, 0x7F, 0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7E,
|
||||||
|
0x7E, 0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7E, 0x81, 0x83, 0x81, 0x7E, 0x7C,
|
||||||
|
0x7E, 0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7F, 0x82, 0x82, 0x7F, 0x7D, 0x7E,
|
||||||
|
0x80, 0x82, 0x81, 0x7F, 0x7D, 0x7E, 0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7E,
|
||||||
|
0x81, 0x82, 0x80, 0x7E, 0x7E, 0x80, 0x82, 0x80, 0x7E, 0x7D, 0x7F, 0x81,
|
||||||
|
0x82, 0x80, 0x7F, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x7F, 0x7E, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7E, 0x80,
|
||||||
|
0x81, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x81,
|
||||||
|
0x80, 0x7E, 0x7E, 0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7E, 0x80, 0x81, 0x80,
|
||||||
|
0x80, 0x7E, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x7E, 0x7D, 0x7F, 0x84, 0x84, 0x7E, 0x78, 0x7A, 0x83, 0x8A, 0x84, 0x78,
|
||||||
|
0x74, 0x7E, 0x8B, 0x8B, 0x7D, 0x70, 0x76, 0x87, 0x90, 0x87, 0x74, 0x6F,
|
||||||
|
0x7C, 0x8D, 0x8E, 0x7E, 0x6F, 0x74, 0x86, 0x90, 0x86, 0x76, 0x71, 0x7D,
|
||||||
|
0x8B, 0x8B, 0x7E, 0x74, 0x78, 0x85, 0x89, 0x82, 0x79, 0x7A, 0x81, 0x85,
|
||||||
|
0x81, 0x7B, 0x7C, 0x83, 0x84, 0x7E, 0x7A, 0x7E, 0x85, 0x85, 0x7D, 0x77,
|
||||||
|
0x7C, 0x87, 0x89, 0x7F, 0x75, 0x78, 0x85, 0x8C, 0x83, 0x75, 0x74, 0x81,
|
||||||
|
0x8D, 0x88, 0x78, 0x71, 0x7C, 0x8C, 0x8E, 0x7E, 0x70, 0x74, 0x86, 0x90,
|
||||||
|
0x87, 0x75, 0x6F, 0x7C, 0x8D, 0x8F, 0x7F, 0x6F, 0x71, 0x84, 0x92, 0x8B,
|
||||||
|
0x78, 0x6D, 0x76, 0x88, 0x90, 0x87, 0x77, 0x70, 0x78, 0x87, 0x8E, 0x86,
|
||||||
|
0x79, 0x73, 0x7A, 0x87, 0x8B, 0x82, 0x77, 0x77, 0x80, 0x88, 0x87, 0x80,
|
||||||
|
0x79, 0x77, 0x7C, 0x86, 0x8A, 0x84, 0x78, 0x74, 0x7D, 0x89, 0x89, 0x7D,
|
||||||
|
0x74, 0x7A, 0x87, 0x8B, 0x80, 0x75, 0x77, 0x83, 0x8A, 0x84, 0x79, 0x77,
|
||||||
|
0x7F, 0x88, 0x86, 0x7C, 0x77, 0x7B, 0x84, 0x88, 0x83, 0x7B, 0x77, 0x7C,
|
||||||
|
0x85, 0x88, 0x82, 0x79, 0x76, 0x7E, 0x88, 0x88, 0x7F, 0x77, 0x7A, 0x82,
|
||||||
|
0x86, 0x81, 0x7C, 0x7D, 0x81, 0x81, 0x7F, 0x7F, 0x80, 0x80, 0x7E, 0x7E,
|
||||||
|
0x81, 0x83, 0x81, 0x7E, 0x7D, 0x7E, 0x7F, 0x7F, 0x81, 0x83, 0x81, 0x7C,
|
||||||
|
0x7A, 0x7F, 0x85, 0x85, 0x7E, 0x7A, 0x7C, 0x82, 0x85, 0x82, 0x7D, 0x7B,
|
||||||
|
0x7C, 0x7F, 0x83, 0x86, 0x82, 0x7B, 0x78, 0x7D, 0x86, 0x87, 0x80, 0x79,
|
||||||
|
0x7A, 0x81, 0x86, 0x85, 0x7E, 0x7A, 0x79, 0x7F, 0x85, 0x88, 0x82, 0x79,
|
||||||
|
0x76, 0x7D, 0x88, 0x89, 0x80, 0x76, 0x77, 0x81, 0x89, 0x87, 0x7F, 0x77,
|
||||||
|
0x77, 0x7F, 0x88, 0x89, 0x81, 0x76, 0x75, 0x7F, 0x89, 0x89, 0x7E, 0x76,
|
||||||
|
0x78, 0x82, 0x88, 0x85, 0x7D, 0x79, 0x7B, 0x7F, 0x84, 0x85, 0x82, 0x7C,
|
||||||
|
0x79, 0x7D, 0x83, 0x87, 0x82, 0x7A, 0x79, 0x7F, 0x86, 0x86, 0x7F, 0x79,
|
||||||
|
0x7B, 0x81, 0x84, 0x82, 0x7E, 0x7D, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7E, 0x80, 0x82, 0x82, 0x7F, 0x7C, 0x7D, 0x81, 0x83, 0x82, 0x7E,
|
||||||
|
0x7B, 0x7E, 0x83, 0x85, 0x80, 0x7A, 0x7B, 0x81, 0x85, 0x83, 0x7D, 0x7B,
|
||||||
|
0x7E, 0x82, 0x83, 0x80, 0x7D, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x81, 0x7F,
|
||||||
|
0x7D, 0x7D, 0x80, 0x83, 0x81, 0x7E, 0x7C, 0x7E, 0x82, 0x83, 0x7F, 0x7D,
|
||||||
|
0x7E, 0x81, 0x82, 0x80, 0x7E, 0x7F, 0x81, 0x81, 0x7F, 0x7E, 0x7F, 0x81,
|
||||||
|
0x81, 0x7F, 0x7E, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80,
|
||||||
|
0x7F, 0x7E, 0x7E, 0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7F, 0x82, 0x82, 0x7F,
|
||||||
|
0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x82, 0x80, 0x7D,
|
||||||
|
0x7D, 0x80, 0x83, 0x82, 0x7E, 0x7B, 0x7D, 0x82, 0x83, 0x80, 0x7D, 0x7D,
|
||||||
|
0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7F, 0x81, 0x82, 0x80, 0x7E, 0x7D, 0x7F,
|
||||||
|
0x82, 0x82, 0x7F, 0x7D, 0x7E, 0x81, 0x82, 0x80, 0x7E, 0x7E, 0x7F, 0x80,
|
||||||
|
0x81, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7E, 0x7F, 0x80, 0x82, 0x80, 0x7E, 0x7E, 0x7F, 0x81, 0x80, 0x7F, 0x7F,
|
||||||
|
0x7F, 0x80, 0x81, 0x81, 0x7F, 0x7D, 0x7E, 0x80, 0x82, 0x82, 0x7F, 0x7D,
|
||||||
|
0x7E, 0x80, 0x82, 0x81, 0x7F, 0x7D, 0x7E, 0x81, 0x81, 0x80, 0x7E, 0x7E,
|
||||||
|
0x7F, 0x81, 0x81, 0x80, 0x7F, 0x7D, 0x7E, 0x80, 0x82, 0x82, 0x7F, 0x7D,
|
||||||
|
0x7E, 0x80, 0x82, 0x81, 0x7E, 0x7D, 0x7F, 0x81, 0x81, 0x80, 0x7E, 0x7E,
|
||||||
|
0x7F, 0x81, 0x81, 0x80, 0x7E, 0x7E, 0x80, 0x81, 0x81, 0x7F, 0x7E, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x7F, 0x80, 0x81, 0x80, 0x7F, 0x7E, 0x7F, 0x81, 0x80, 0x80,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80,
|
||||||
|
0x80, 0x7F, 0x7F, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F,
|
||||||
|
0x7F, 0x7F, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F, 0x7F, 0x80, 0x7F, 0x80,
|
||||||
|
0x80, 0x80, 0x80, 0x7F, 0x7F, 0x7F };
|
78
libraries/Adafruit_Circuit_Playground/examples/demo/demo.ino
Normal file
78
libraries/Adafruit_Circuit_Playground/examples/demo/demo.ino
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
// Demo program for testing library and board - flip the switch to turn on/off buzzer
|
||||||
|
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
|
||||||
|
// we light one pixel at a time, this is our counter
|
||||||
|
uint8_t pixeln = 0;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
//while (!Serial);
|
||||||
|
Serial.begin(9600);
|
||||||
|
Serial.println("Circuit Playground test!");
|
||||||
|
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// test Red #13 LED
|
||||||
|
CircuitPlayground.redLED(HIGH);
|
||||||
|
delay(100);
|
||||||
|
CircuitPlayground.redLED(LOW);
|
||||||
|
delay(100);
|
||||||
|
|
||||||
|
/************* TEST CAPTOUCH */
|
||||||
|
Serial.print("Capsense #3: "); Serial.println(CircuitPlayground.readCap(3));
|
||||||
|
Serial.print("Capsense #2: "); Serial.println(CircuitPlayground.readCap(2));
|
||||||
|
if (! CircuitPlayground.isExpress()) { // CPX does not have this captouch pin
|
||||||
|
Serial.print("Capsense #0: "); Serial.println(CircuitPlayground.readCap(0));
|
||||||
|
}
|
||||||
|
Serial.print("Capsense #1: "); Serial.println(CircuitPlayground.readCap(1));
|
||||||
|
Serial.print("Capsense #12: "); Serial.println(CircuitPlayground.readCap(12));
|
||||||
|
Serial.print("Capsense #6: "); Serial.println(CircuitPlayground.readCap(6));
|
||||||
|
Serial.print("Capsense #9: "); Serial.println(CircuitPlayground.readCap(9));
|
||||||
|
Serial.print("Capsense #10: "); Serial.println(CircuitPlayground.readCap(10));
|
||||||
|
|
||||||
|
/************* TEST SLIDE SWITCH */
|
||||||
|
if (CircuitPlayground.slideSwitch()) {
|
||||||
|
Serial.println("Slide to the left");
|
||||||
|
} else {
|
||||||
|
Serial.println("Slide to the right");
|
||||||
|
CircuitPlayground.playTone(500 + pixeln * 500, 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
/************* TEST 10 NEOPIXELS */
|
||||||
|
CircuitPlayground.setPixelColor(pixeln++, CircuitPlayground.colorWheel(25 * pixeln));
|
||||||
|
if (pixeln == 11) {
|
||||||
|
pixeln = 0;
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
}
|
||||||
|
|
||||||
|
/************* TEST BOTH BUTTONS */
|
||||||
|
if (CircuitPlayground.leftButton()) {
|
||||||
|
Serial.println("Left button pressed!");
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.rightButton()) {
|
||||||
|
Serial.println("Right button pressed!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/************* TEST LIGHT SENSOR */
|
||||||
|
Serial.print("Light sensor: ");
|
||||||
|
Serial.println(CircuitPlayground.lightSensor());
|
||||||
|
|
||||||
|
/************* TEST SOUND SENSOR */
|
||||||
|
Serial.print("Sound sensor: ");
|
||||||
|
Serial.println(CircuitPlayground.mic.soundPressureLevel(10));
|
||||||
|
|
||||||
|
/************* TEST ACCEL */
|
||||||
|
// Display the results (acceleration is measured in m/s*s)
|
||||||
|
Serial.print("X: "); Serial.print(CircuitPlayground.motionX());
|
||||||
|
Serial.print(" \tY: "); Serial.print(CircuitPlayground.motionY());
|
||||||
|
Serial.print(" \tZ: "); Serial.print(CircuitPlayground.motionZ());
|
||||||
|
Serial.println(" m/s^2");
|
||||||
|
|
||||||
|
/************* TEST THERMISTOR */
|
||||||
|
Serial.print("Temperature ");
|
||||||
|
Serial.print(CircuitPlayground.temperature());
|
||||||
|
Serial.println(" *C");
|
||||||
|
}
|
@ -0,0 +1,95 @@
|
|||||||
|
#ifndef CAPTOUCHDEMO_H
|
||||||
|
#define CAPTOUCHDEMO_H
|
||||||
|
|
||||||
|
#include "Demo.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define CAP_SAMPLES 20 // Number of samples to take for a capacitive touch read.
|
||||||
|
#define TONE_DURATION_MS 100 // Duration in milliseconds to play a tone when touched.
|
||||||
|
|
||||||
|
class CapTouchDemo: public Demo {
|
||||||
|
public:
|
||||||
|
uint16_t CAP_THRESHOLD = 200; // Threshold for a capacitive touch (higher = less sensitive).
|
||||||
|
|
||||||
|
CapTouchDemo() {
|
||||||
|
playSound = false;
|
||||||
|
if (CircuitPlayground.isExpress()) {
|
||||||
|
CAP_THRESHOLD = 800;
|
||||||
|
} else {
|
||||||
|
CAP_THRESHOLD = 200;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
~CapTouchDemo() {}
|
||||||
|
|
||||||
|
|
||||||
|
virtual void loop() {
|
||||||
|
// Clear all the neopixels.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if any of the cap touch inputs are pressed and turn on those pixels.
|
||||||
|
// Also play a tone if in tone playback mode.
|
||||||
|
if (CircuitPlayground.readCap(0, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(3, CircuitPlayground.colorWheel(256/10*3));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(330, TONE_DURATION_MS); // 330hz = E4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(1, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(4, CircuitPlayground.colorWheel(256/10*4));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(349, TONE_DURATION_MS); // 349hz = F4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(2, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(1, CircuitPlayground.colorWheel(256/10));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(294, TONE_DURATION_MS); // 294hz = D4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(3, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(0, CircuitPlayground.colorWheel(0));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(262, TONE_DURATION_MS); // 262hz = C4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(6, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(6, CircuitPlayground.colorWheel(256/10*6));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(440, TONE_DURATION_MS); // 440hz = A4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(9, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(8, CircuitPlayground.colorWheel(256/10*8));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(494, TONE_DURATION_MS); // 494hz = B4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(10, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(9, CircuitPlayground.colorWheel(256/10*9));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(523, TONE_DURATION_MS); // 523hz = C5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CircuitPlayground.readCap(12, CAP_SAMPLES) >= CAP_THRESHOLD) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(5, CircuitPlayground.colorWheel(256/10*5));
|
||||||
|
if (playSound) {
|
||||||
|
CircuitPlayground.playTone(392, TONE_DURATION_MS); // 392hz = G4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Light up the pixels.
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void modePress() {
|
||||||
|
// Turn sound on/off.
|
||||||
|
playSound = !playSound;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
bool playSound;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,27 @@
|
|||||||
|
#ifndef DEMO_H
|
||||||
|
#define DEMO_H
|
||||||
|
|
||||||
|
// Define each mode with the following interface for a loop and modePress
|
||||||
|
// function that will be called during the main loop and if the mode button
|
||||||
|
// was pressed respectively. It's up to each mode implementation to fill
|
||||||
|
// these in and add their logic.
|
||||||
|
class Demo {
|
||||||
|
public:
|
||||||
|
virtual ~Demo() {}
|
||||||
|
|
||||||
|
virtual void loop() = 0;
|
||||||
|
virtual void modePress() = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Linear interpolation function is handy for all the modes to use.
|
||||||
|
float lerp(float x, float xmin, float xmax, float ymin, float ymax) {
|
||||||
|
if (x >= xmax) {
|
||||||
|
return ymax;
|
||||||
|
}
|
||||||
|
if (x <= xmin) {
|
||||||
|
return ymin;
|
||||||
|
}
|
||||||
|
return ymin + (ymax-ymin)*((x-xmin)/(xmax-xmin));
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,40 @@
|
|||||||
|
#ifndef RAINBOWCYCLEDEMO_H
|
||||||
|
#define RAINBOWCYCLEDEMO_H
|
||||||
|
|
||||||
|
#include "Demo.h"
|
||||||
|
|
||||||
|
// Animation speeds to loop through with mode presses. The current milliseconds
|
||||||
|
// are divided by this value so the smaller the value the faster the animation.
|
||||||
|
static int speeds[] = { 5, 10, 50, 100 };
|
||||||
|
|
||||||
|
class RainbowCycleDemo: public Demo {
|
||||||
|
public:
|
||||||
|
RainbowCycleDemo() { currentSpeed = 0; }
|
||||||
|
~RainbowCycleDemo() {}
|
||||||
|
|
||||||
|
virtual void loop() {
|
||||||
|
// Make an offset based on the current millisecond count scaled by the current speed.
|
||||||
|
uint32_t offset = millis() / speeds[currentSpeed];
|
||||||
|
// Loop through each pixel and set it to an incremental color wheel value.
|
||||||
|
for(int i=0; i<10; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, CircuitPlayground.colorWheel(((i * 256 / 10) + offset) & 255));
|
||||||
|
}
|
||||||
|
// Show all the pixels.
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void modePress() {
|
||||||
|
// Increment through the available speeds.
|
||||||
|
currentSpeed += 1;
|
||||||
|
if (currentSpeed >= sizeof(speeds)/sizeof(int)) {
|
||||||
|
currentSpeed = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
int currentSpeed;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,65 @@
|
|||||||
|
#ifndef SENSORDEMO_H
|
||||||
|
#define SENSORDEMO_H
|
||||||
|
|
||||||
|
#include "Demo.h"
|
||||||
|
|
||||||
|
// Define small, medium, large range of light sensor values.
|
||||||
|
static int minLight[] = { 0, 0, 0};
|
||||||
|
static int maxLight[] = { 50, 255, 1023};
|
||||||
|
|
||||||
|
// Define small, medium, large range of temp sensor values (in Fahrenheit).
|
||||||
|
static float minTempF[] = { 80.0, 70.0, -32.0};
|
||||||
|
static float maxTempF[] = { 85.0, 90.0, 212.0};
|
||||||
|
|
||||||
|
// Define color for light sensor pixels.
|
||||||
|
#define LIGHT_RED 0xFF
|
||||||
|
#define LIGHT_GREEN 0x00
|
||||||
|
#define LIGHT_BLUE 0x00
|
||||||
|
|
||||||
|
// Define color for temp sensor pixels.
|
||||||
|
#define TEMP_RED 0x00
|
||||||
|
#define TEMP_GREEN 0x00
|
||||||
|
#define TEMP_BLUE 0xFF
|
||||||
|
|
||||||
|
class SensorDemo: public Demo {
|
||||||
|
public:
|
||||||
|
SensorDemo() { mode = 0; }
|
||||||
|
~SensorDemo() {}
|
||||||
|
|
||||||
|
virtual void loop() {
|
||||||
|
// Reset all lights to off.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Measure the light level and use it to light up its LEDs (right half).
|
||||||
|
uint16_t light = CircuitPlayground.lightSensor();
|
||||||
|
int level = (int)lerp(light, minLight[mode], maxLight[mode], 0.0, 5.0);
|
||||||
|
for (int i=9; i>9-level; --i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, LIGHT_RED, LIGHT_GREEN, LIGHT_BLUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Measure the temperatue and use it to light up its LEDs (left half).
|
||||||
|
float tempF = CircuitPlayground.temperatureF();
|
||||||
|
level = (int)lerp(tempF, minTempF[mode], maxTempF[mode], 0.0, 5.0);
|
||||||
|
for (int i=0; i<level; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, TEMP_RED, TEMP_GREEN, TEMP_BLUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Light up the pixels!
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void modePress() {
|
||||||
|
// Switch to one of three modes for small, medium, big ranges of measurements.
|
||||||
|
mode += 1;
|
||||||
|
if (mode > 2) {
|
||||||
|
mode = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mode;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,71 @@
|
|||||||
|
#ifndef TILTDEMO_H
|
||||||
|
#define TILTDEMO_H
|
||||||
|
|
||||||
|
#include "Demo.h"
|
||||||
|
|
||||||
|
// Define range of possible acceleration values.
|
||||||
|
#define MIN_ACCEL -10.0
|
||||||
|
#define MAX_ACCEL 10.0
|
||||||
|
|
||||||
|
// Define range of colors (min color and max color) using their red, green, blue components.
|
||||||
|
// First the min color:
|
||||||
|
#define MIN_COLOR_RED 0xFF
|
||||||
|
#define MIN_COLOR_GREEN 0x00
|
||||||
|
#define MIN_COLOR_BLUE 0x00
|
||||||
|
|
||||||
|
// Then the max color:
|
||||||
|
#define MAX_COLOR_RED 0x00
|
||||||
|
#define MAX_COLOR_GREEN 0x00
|
||||||
|
#define MAX_COLOR_BLUE 0xFF
|
||||||
|
|
||||||
|
|
||||||
|
class TiltDemo: public Demo {
|
||||||
|
public:
|
||||||
|
TiltDemo() { mode = 0; }
|
||||||
|
~TiltDemo() {}
|
||||||
|
|
||||||
|
virtual void loop() {
|
||||||
|
// Grab the acceleration for the current mode's axis.
|
||||||
|
float accel = 0;
|
||||||
|
switch (mode) {
|
||||||
|
case 0:
|
||||||
|
accel = CircuitPlayground.motionX();
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
accel = CircuitPlayground.motionY();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
accel = CircuitPlayground.motionZ();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Now interpolate the acceleration into a color for the pixels.
|
||||||
|
uint8_t red = (uint8_t)lerp(accel, MIN_ACCEL, MAX_ACCEL, MIN_COLOR_RED, MAX_COLOR_RED);
|
||||||
|
uint8_t green = (uint8_t)lerp(accel, MIN_ACCEL, MAX_ACCEL, MIN_COLOR_GREEN, MAX_COLOR_GREEN);
|
||||||
|
uint8_t blue = (uint8_t)lerp(accel, MIN_ACCEL, MAX_ACCEL, MIN_COLOR_BLUE, MAX_COLOR_BLUE);
|
||||||
|
|
||||||
|
// Gamma correction makes LED brightness appear more linear
|
||||||
|
red = CircuitPlayground.gamma8(red);
|
||||||
|
green = CircuitPlayground.gamma8(green);
|
||||||
|
blue = CircuitPlayground.gamma8(blue);
|
||||||
|
|
||||||
|
// Light up all the pixels the interpolated color.
|
||||||
|
for (int i=0; i<10; ++i) {
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, red, green, blue);
|
||||||
|
}
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void modePress() {
|
||||||
|
// Change the mode (axis being displayed) to a value inside 0-2 for X, Y, Z.
|
||||||
|
mode += 1;
|
||||||
|
if (mode > 2) {
|
||||||
|
mode = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mode;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,100 @@
|
|||||||
|
// This demo is based on the vumeter demo in the Adafruit Circuit Playground library.
|
||||||
|
#ifndef VUMETERDEMO_H
|
||||||
|
#define VUMETERDEMO_H
|
||||||
|
|
||||||
|
#include <math.h>
|
||||||
|
#include "Demo.h"
|
||||||
|
|
||||||
|
#define SAMPLE_WINDOW 10 // Sample window for average level
|
||||||
|
#define PEAK_HANG 24 // Time of pause before peak dot falls
|
||||||
|
#define PEAK_FALL 4 // Rate of falling peak dot
|
||||||
|
#define INPUT_FLOOR 56 // Lower range of mic sensitivity in dB SPL
|
||||||
|
#define INPUT_CEILING 110 // Upper range of mic sensitivity in db SPL
|
||||||
|
|
||||||
|
static byte peak = 16; // Peak level of column; used for falling dots
|
||||||
|
static unsigned int sample;
|
||||||
|
static byte dotCount = 0; //Frame counter for peak dot
|
||||||
|
static byte dotHangCount = 0; //Frame counter for holding peak dot
|
||||||
|
|
||||||
|
static float mapf(float x, float in_min, float in_max, float out_min, float out_max);
|
||||||
|
static void drawLine(uint8_t from, uint8_t to, uint32_t c);
|
||||||
|
|
||||||
|
class VUMeterDemo: public Demo {
|
||||||
|
public:
|
||||||
|
VUMeterDemo() { currentCeiling = 0; }
|
||||||
|
~VUMeterDemo() {}
|
||||||
|
|
||||||
|
virtual void loop() {
|
||||||
|
int numPixels = CircuitPlayground.strip.numPixels();
|
||||||
|
float peakToPeak = 0; // peak-to-peak level
|
||||||
|
unsigned int c, y;
|
||||||
|
|
||||||
|
//get peak sound pressure level over the sample window
|
||||||
|
peakToPeak = CircuitPlayground.mic.soundPressureLevel(SAMPLE_WINDOW);
|
||||||
|
|
||||||
|
//limit to the floor value
|
||||||
|
peakToPeak = max(INPUT_FLOOR, peakToPeak);
|
||||||
|
|
||||||
|
// Serial.println(peakToPeak);
|
||||||
|
|
||||||
|
//Fill the strip with rainbow gradient
|
||||||
|
for (int i=0;i<=numPixels-1;i++){
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, CircuitPlayground.colorWheel(map(i,0,numPixels-1,30,150)));
|
||||||
|
}
|
||||||
|
|
||||||
|
c = mapf(peakToPeak, INPUT_FLOOR, INPUT_CEILING, numPixels, 0);
|
||||||
|
|
||||||
|
// Turn off pixels that are below volume threshold.
|
||||||
|
if(c < peak) {
|
||||||
|
peak = c; // Keep dot on top
|
||||||
|
dotHangCount = 0; // make the dot hang before falling
|
||||||
|
}
|
||||||
|
if (c <= numPixels) { // Fill partial column with off pixels
|
||||||
|
drawLine(numPixels, numPixels-c, CircuitPlayground.strip.Color(0, 0, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the peak dot to match the rainbow gradient
|
||||||
|
y = numPixels - peak;
|
||||||
|
CircuitPlayground.strip.setPixelColor(y-1,CircuitPlayground.colorWheel(map(y,0,numPixels-1,30,150)));
|
||||||
|
CircuitPlayground.strip.show();
|
||||||
|
|
||||||
|
// Frame based peak dot animation
|
||||||
|
if(dotHangCount > PEAK_HANG) { //Peak pause length
|
||||||
|
if(++dotCount >= PEAK_FALL) { //Fall rate
|
||||||
|
peak++;
|
||||||
|
dotCount = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
dotHangCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void modePress() {
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
int currentCeiling;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static float mapf(float x, float in_min, float in_max, float out_min, float out_max)
|
||||||
|
{
|
||||||
|
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Used to draw a line between two points of a given color
|
||||||
|
static void drawLine(uint8_t from, uint8_t to, uint32_t c) {
|
||||||
|
uint8_t fromTemp;
|
||||||
|
if (from > to) {
|
||||||
|
fromTemp = from;
|
||||||
|
from = to;
|
||||||
|
to = fromTemp;
|
||||||
|
}
|
||||||
|
for(int i=from; i<=to; i++){
|
||||||
|
CircuitPlayground.strip.setPixelColor(i, c);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,121 @@
|
|||||||
|
// Circuit Playground MEGA Demo
|
||||||
|
//
|
||||||
|
// Showcases interesting demos of all the components on Circuit Playground.
|
||||||
|
// This is a somewhat advanced sketch that's broken across multiple files (see
|
||||||
|
// the tabs above for all the files). When run on Circuit Playground you can
|
||||||
|
// press the left button to cycle through each demo, and the right button to
|
||||||
|
// cycle through each mode inside a demo. When the slide switch is in the -/right
|
||||||
|
// position the board will 'turn off' and go into deep sleep (pullin around 5mA
|
||||||
|
// of current), and when moved into the +/left position it will turn on and run
|
||||||
|
// the demos. Make sure the switch is on the +/left side after you upload or else
|
||||||
|
// the board won't do anything!
|
||||||
|
//
|
||||||
|
// NOTE: This example requires the Adafruit SleepyDog sleep & watchdog library
|
||||||
|
// be installed. Use the library manager to install, or grab it from its home:
|
||||||
|
// - https://github.com/adafruit/Adafruit_SleepyDog
|
||||||
|
// - https://github.com/adafruit/Adafruit_ASFcore (for Express)
|
||||||
|
//
|
||||||
|
// The following demos are available (in order):
|
||||||
|
// - NeoPixel color rainbow cycle
|
||||||
|
// This animates all 10 neopixels with a rainbow cycle. Changing the mode
|
||||||
|
// changes the speed of animation.
|
||||||
|
// - Volume level meter
|
||||||
|
// This uses the microphone to display a volume level meter. The louder the
|
||||||
|
// volume the more lights light up (and a peak level dot animates back down).
|
||||||
|
// Changing mode changes the sensitivity from medium to very high to very low
|
||||||
|
// and back to medium again (3 levels).
|
||||||
|
// - Capacitive touch instrument
|
||||||
|
// This uses the capacitive touch pads (0, 1, 2, 3, 6, 9, 10, 12) and lights up
|
||||||
|
// a nearby pixel when a pad is touched. Pressing the mode toggles between
|
||||||
|
// playing a different tone for each pad too (8 notes total covering the basic
|
||||||
|
// C4 scale).
|
||||||
|
// - Accelerometer tilt demo
|
||||||
|
// This lights up all the pixels to a color between blue and red depending on
|
||||||
|
// the value of the accelerometer. Try tilting the board around axes to see
|
||||||
|
// how it behaves. Pressing mode toggles between the X, Y, Z axis as the one
|
||||||
|
// under measurements (starts with X axis).
|
||||||
|
// - Temperature & light sensor demo
|
||||||
|
// The left half of the pixels light up blue proportional to the temperature
|
||||||
|
// of the thermistor, and the right half of the pixels light up red proportional
|
||||||
|
// to the light sensor. Pressing mode toggles between small, medium, and big
|
||||||
|
// ranges of measurements for each sensor.
|
||||||
|
//
|
||||||
|
// Author: Tony DiCola
|
||||||
|
// License: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
#include <Adafruit_CircuitPlayground.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <SPI.h>
|
||||||
|
#include "Adafruit_SleepyDog.h"
|
||||||
|
|
||||||
|
// Include all the demos, note that each demo is defined in a separate class to keep the sketch
|
||||||
|
// code below clean and simple.
|
||||||
|
#include "Demo.h"
|
||||||
|
#include "RainbowCycleDemo.h"
|
||||||
|
#include "VUMeterDemo.h"
|
||||||
|
#include "CapTouchDemo.h"
|
||||||
|
#include "TiltDemo.h"
|
||||||
|
#include "SensorDemo.h"
|
||||||
|
|
||||||
|
// Create an instance of each demo class.
|
||||||
|
RainbowCycleDemo rainbowCycleDemo;
|
||||||
|
VUMeterDemo vuMeterDemo;
|
||||||
|
CapTouchDemo capTouchDemo;
|
||||||
|
TiltDemo tiltDemo;
|
||||||
|
SensorDemo sensorDemo;
|
||||||
|
|
||||||
|
// Make a list of all demo class instances and keep track of the currently selected one.
|
||||||
|
int currentDemo = 0;
|
||||||
|
Demo* demos[] = {
|
||||||
|
&rainbowCycleDemo,
|
||||||
|
&vuMeterDemo,
|
||||||
|
&capTouchDemo,
|
||||||
|
&tiltDemo,
|
||||||
|
&sensorDemo
|
||||||
|
};
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
// Initialize serial port and circuit playground library.
|
||||||
|
Serial.begin(115200);
|
||||||
|
Serial.println("Circuit Playground MEGA Demo!");
|
||||||
|
CircuitPlayground.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Check if slide switch is on the left (false) and go to sleep.
|
||||||
|
while (!CircuitPlayground.slideSwitch()) {
|
||||||
|
// Turn off the pixels, then go into deep sleep for a second.
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
Watchdog.sleep(1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check for any button presses by checking their state twice with
|
||||||
|
// a delay inbetween. If the first press state is different from the
|
||||||
|
// second press state then something was pressed/released!
|
||||||
|
bool leftFirst = CircuitPlayground.leftButton();
|
||||||
|
bool rightFirst = CircuitPlayground.rightButton();
|
||||||
|
delay(10);
|
||||||
|
|
||||||
|
// Run current demo's main loop.
|
||||||
|
demos[currentDemo]->loop();
|
||||||
|
|
||||||
|
// Now check for buttons that were released.
|
||||||
|
bool leftSecond = CircuitPlayground.leftButton();
|
||||||
|
bool rightSecond = CircuitPlayground.rightButton();
|
||||||
|
|
||||||
|
// Left button will change the current demo.
|
||||||
|
if (leftFirst && !leftSecond) {
|
||||||
|
// Turn off all the pixels when entering new mode.
|
||||||
|
CircuitPlayground.clearPixels();
|
||||||
|
// Increment the current demo (looping back to zero if at end).
|
||||||
|
currentDemo += 1;
|
||||||
|
if (currentDemo >= (sizeof(demos)/sizeof(Demo*))) {
|
||||||
|
currentDemo = 0;
|
||||||
|
}
|
||||||
|
Serial.print("Changed to demo: "); Serial.println(currentDemo, DEC);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Right button will change the mode of the current demo.
|
||||||
|
if (rightFirst && !rightSecond) {
|
||||||
|
demos[currentDemo]->modePress();
|
||||||
|
}
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user