v0.6.313
This commit is contained in:
12
README.md
12
README.md
@@ -48,6 +48,7 @@ https://aliexpress.com/item/32965676064.html
|
||||
- or **GC9106** 0.96' 160x80 SPI (looks like ST7735S, but it's not him) https://aliexpress.com/item/32947890530.html
|
||||
- or **LCD2004** 20x4 I2C https://aliexpress.com/item/32783128355.html
|
||||
- or **LCD2004** 20x4 without I2C https://aliexpress.com/item/32783128355.html
|
||||
- or **ILI9225** 2.0' 220x176 SPI https://aliexpress.com/item/32952021835.html
|
||||
|
||||
##### Controls
|
||||
- Three tact buttons https://www.aliexpress.com/item/32907144687.html
|
||||
@@ -142,7 +143,7 @@ _\** GPIO 16 and 17 are used by PSRAM on the WROVER modules._
|
||||
---
|
||||
## Dependencies
|
||||
#### Libraries:
|
||||
**Library Manager**: Adafruit_GFX, Adafruit_ST7735\*, Adafruit_SSD1306\*, Adafruit_PCD8544\*, Adafruit_SH110X\*, Adafruit_SSD1327\*, Adafruit_ILI9341\*, Adafruit_SSD1305\*, (\* depending on display model), OneButton, IRremoteESP8266, XPT2046_Touchscreen \
|
||||
**Library Manager**: Adafruit_GFX, Adafruit_ST7735\*, Adafruit_SSD1306\*, Adafruit_PCD8544\*, Adafruit_SH110X\*, Adafruit_SSD1327\*, Adafruit_ILI9341\*, Adafruit_SSD1305\*, TFT_22_ILI9225\* (\* depending on display model), OneButton, IRremoteESP8266, XPT2046_Touchscreen \
|
||||
**Github**: [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer), [AsyncTCP](https://github.com/me-no-dev/AsyncTCP), [async-mqtt-client](https://github.com/marvinroger/async-mqtt-client)* \
|
||||
\* _if you need MQTT support_
|
||||
|
||||
@@ -293,6 +294,15 @@ Work is in progress...
|
||||
|
||||
---
|
||||
## Version history
|
||||
#### v0.6.313
|
||||
- added support for ILI9225 220x176 SPI displays
|
||||
- added support for I2S internal DAC, option I2S_INTERNAL (see [myoptions.h](exsamples/myoptions.h) for exsample) \
|
||||
_(this option worked only with esp32 core version==2.0.0)_
|
||||
- new option SOFT_AP_REBOOT_DELAY (see [myoptions.h](exsamples/myoptions.h) for exsample)
|
||||
- fixed MQTT connection when WiFi reconnected
|
||||
- fixed date display for ILI9341 displays
|
||||
- fixed garbage on volume control with displays ILI9341
|
||||
|
||||
#### v0.6.290
|
||||
- fixed interface blocking error when synchronizing time
|
||||
- time sync optimization
|
||||
|
||||
@@ -19,7 +19,7 @@ The connection tables are located here https://github.com/e2002/yoradio#connecti
|
||||
SDA(MOSI, DIN, SDI) must be connected to pin 23 */
|
||||
//#define TFT_CS 5 /* SPI CS pin */
|
||||
//#define TFT_RST 15 /* SPI RST pin. set to -1 and connect to Esp EN pin */
|
||||
//#define TFT_DC 4 /* SPI DC pin */
|
||||
//#define TFT_DC 4 /* SPI DC/RS pin */
|
||||
/******************************************/
|
||||
|
||||
/* I2C PINS */
|
||||
@@ -107,7 +107,9 @@ The connection tables are located here https://github.com/e2002/yoradio#connecti
|
||||
//#define MUTE_VAL HIGH /* Write this to MUTE_PIN when player is stopped */
|
||||
//#define PL_WITH_NUMBERS /* show the number of station in the playlist */
|
||||
//#define PLAYER_FORCE_MONO false /* mono option on boot - false stereo, true mono */
|
||||
//#define SNTP_SERVER "pool.ntp.org", "0.ru.pool.ntp.org" // custom ntp servers min 1 max 3 comma separated values
|
||||
//#define SNTP_SERVER "pool.ntp.org", "0.ru.pool.ntp.org" /* custom ntp servers min 1 max 3 comma separated values */
|
||||
//#define I2S_INTERNAL false /* If true - use esp32 internal DAC */
|
||||
//#define SOFT_AP_REBOOT_DELAY 0 /* Delay in milliseconds after which ESP is rebooting if it is in softAP mode (0 - disabled) */
|
||||
|
||||
/******************************************/
|
||||
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
#include "src/displays/displayGC9106.h"
|
||||
#elif DSP_MODEL==DSP_CUSTOM
|
||||
#include "src/displays/displayCustom.h"
|
||||
#elif DSP_MODEL==DSP_ILI9225
|
||||
#include "src/displays/displayILI9225.h"
|
||||
#endif
|
||||
|
||||
enum displayMode_e { PLAYER, VOL, STATIONS, NUMBERS, LOST, UPDATING };
|
||||
|
||||
@@ -15,6 +15,10 @@ void getFirstTime() {
|
||||
getLocalTime(&network.timeinfo);
|
||||
}
|
||||
|
||||
void rebootTime() {
|
||||
ESP.restart();
|
||||
}
|
||||
|
||||
void Network::begin() {
|
||||
config.initNetwork();
|
||||
if (config.ssidsCount == 0) {
|
||||
@@ -57,6 +61,7 @@ void Network::begin() {
|
||||
}
|
||||
digitalWrite(LED_BUILTIN, LOW);
|
||||
status = CONNECTED;
|
||||
WiFi.setSleep(false);
|
||||
configTime(config.store.tzHour * 3600 + config.store.tzMin * 60, config.getTimezoneOffset(), SNTP_SERVER);
|
||||
//getLocalTime(&timeinfo);
|
||||
stimer.once_ms(200,getFirstTime);
|
||||
@@ -83,4 +88,7 @@ void Network::raiseSoftAP() {
|
||||
WiFi.softAP(apSsid, apPassword);
|
||||
Serial.printf("\n\nRunning in AP mode.\nConnect to AP %s with password %s for settings.\n\n", apSsid, apPassword);
|
||||
status = SOFT_AP;
|
||||
#if SOFT_AP_REBOOT_DELAY>0
|
||||
rtimer.attach_ms(SOFT_AP_REBOOT_DELAY, rebootTime);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ class Network {
|
||||
void begin();
|
||||
void requestTimeSync(bool withTelnetOutput=false);
|
||||
private:
|
||||
Ticker ntimer, stimer;
|
||||
Ticker ntimer, stimer, rtimer;
|
||||
void raiseSoftAP();
|
||||
};
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef options_h
|
||||
#define options_h
|
||||
|
||||
#define VERSION "0.6.290"
|
||||
#define VERSION "0.6.313"
|
||||
|
||||
/*******************************************************
|
||||
DO NOT EDIT THIS FILE.
|
||||
@@ -36,6 +36,7 @@ The connection tables are located here https://github.com/e2002/yoradio#connecti
|
||||
#define DSP_2004I2C 14 // https://aliexpress.com/item/32783128355.html
|
||||
#define DSP_2004 15 // https://aliexpress.com/item/32783128355.html
|
||||
#define DSP_SSD1305I2C 16 // SSD1305 and SSD1309 128x64 I2C https://aliexpress.com/item/32950307344.html
|
||||
#define DSP_ILI9225 17 // 2.0' 220x176 SPI https://aliexpress.com/item/32952021835.html
|
||||
#define DSP_CUSTOM 101 // your display
|
||||
|
||||
#ifndef DSP_MODEL
|
||||
@@ -215,6 +216,12 @@ The connection tables are located here https://github.com/e2002/yoradio#connecti
|
||||
#ifndef SNTP_SERVER
|
||||
#define SNTP_SERVER "pool.ntp.org", "0.ru.pool.ntp.org" // custom ntp servers min 1 max 3 comma separated values
|
||||
#endif
|
||||
#ifndef I2S_INTERNAL
|
||||
#define I2S_INTERNAL false // If true - use esp32 internal DAC
|
||||
#endif
|
||||
#ifndef SOFT_AP_REBOOT_DELAY
|
||||
#define SOFT_AP_REBOOT_DELAY 0 // Delay in ms after which ESP is rebooting if it is in softAP mode (0 - disabled)
|
||||
#endif
|
||||
/*
|
||||
*** ST7735 display submodel ***
|
||||
INITR_BLACKTAB // 1.8' https://aliexpress.ru/item/1005002822797745.html
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
Player player;
|
||||
|
||||
#if VS1053_CS!=255
|
||||
#if VS1053_CS!=255 && !I2S_INTERNAL
|
||||
Player::Player(): Audio(VS1053_CS, VS1053_DCS, VS1053_DREQ) {
|
||||
|
||||
}
|
||||
@@ -22,15 +22,20 @@ void ResetChip(){
|
||||
delay(100);
|
||||
}
|
||||
#else
|
||||
#if !I2S_INTERNAL
|
||||
Player::Player() {}
|
||||
#else
|
||||
Player::Player(): Audio(true, I2S_DAC_CHANNEL_BOTH_EN) {}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
void Player::init() {
|
||||
if(MUTE_PIN!=255) pinMode(MUTE_PIN, OUTPUT);
|
||||
#if I2S_DOUT!=255
|
||||
#if !I2S_INTERNAL
|
||||
setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
|
||||
#endif
|
||||
#else
|
||||
SPI.begin();
|
||||
if(VS1053_RST>0) ResetChip();
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#define player_h
|
||||
#include "options.h"
|
||||
|
||||
#if I2S_DOUT!=255
|
||||
#if I2S_DOUT!=255 || I2S_INTERNAL
|
||||
#include "src/audioI2S/AudioEx.h"
|
||||
#else
|
||||
#include "src/audioVS1053/audioVS1053Ex.h"
|
||||
|
||||
@@ -509,7 +509,7 @@ bool Audio::connecttohost(const char* host, const char* user, const char* pwd) {
|
||||
|
||||
strcat(resp, "GET ");
|
||||
strcat(resp, extension);
|
||||
strcat(resp, " HTTP/1.0\r\n");
|
||||
strcat(resp, " HTTP/1.1\r\n");
|
||||
strcat(resp, "Host: ");
|
||||
strcat(resp, hostwoext);
|
||||
strcat(resp, "\r\n");
|
||||
@@ -517,7 +517,7 @@ bool Audio::connecttohost(const char* host, const char* user, const char* pwd) {
|
||||
strcat(resp, "Authorization: Basic ");
|
||||
strcat(resp, authorization);
|
||||
strcat(resp, "\r\n");
|
||||
strcat(resp, "User-Agent: ESP32 audioI2S\r\n");
|
||||
strcat(resp, "User-Agent: Mozilla/5.0\r\n");
|
||||
// strcat(resp, "Accept-Encoding: gzip;q=0\r\n"); // otherwise the server assumes gzip compression
|
||||
// strcat(resp, "Transfer-Encoding: \r\n"); // otherwise the server assumes gzip compression
|
||||
strcat(resp, "Connection: keep-alive\r\n\r\n");
|
||||
@@ -541,7 +541,7 @@ bool Audio::connecttohost(const char* host, const char* user, const char* pwd) {
|
||||
wtf = millis();
|
||||
while(!client.connected()){
|
||||
if(millis()-wtf>TIMEOUT_MS * 2){
|
||||
sprintf(chbuf, "Request %s failed! with WTF", m_lastHost);
|
||||
sprintf(chbuf, "Request %s failed with timeout!", m_lastHost);
|
||||
if(audio_info) audio_info(chbuf);
|
||||
return false;
|
||||
break;
|
||||
@@ -556,7 +556,7 @@ bool Audio::connecttohost(const char* host, const char* user, const char* pwd) {
|
||||
if(m_f_ssl == true) {
|
||||
uint32_t t = millis();
|
||||
if(clientsecure.connect(hostwoext, port, TIMEOUT_MS_SSL)) {
|
||||
// clientsecure.setNoDelay(true);
|
||||
clientsecure.setNoDelay(true);
|
||||
// if(audio_info) audio_info("SSL/TLS Connected to server");
|
||||
clientsecure.print(resp);
|
||||
uint32_t dt = millis() - t;
|
||||
@@ -571,16 +571,8 @@ bool Audio::connecttohost(const char* host, const char* user, const char* pwd) {
|
||||
//while(!clientsecure.connected()){;} // wait until the connection is established
|
||||
wtf = millis();
|
||||
while(!clientsecure.connected()){
|
||||
/*wtf++;
|
||||
if(wtf>1000){
|
||||
wtf=0;
|
||||
sprintf(chbuf, "Request %s failed! with WTF", m_lastHost);
|
||||
if(audio_info) audio_info(chbuf);
|
||||
return false;
|
||||
break;
|
||||
}*/
|
||||
if(millis()-wtf>TIMEOUT_MS_SSL){
|
||||
sprintf(chbuf, "Request %s failed! with WTF", m_lastHost);
|
||||
sprintf(chbuf, "Request %s failed with timeout!", m_lastHost);
|
||||
if(audio_info) audio_info(chbuf);
|
||||
return false;
|
||||
break;
|
||||
|
||||
436
yoRadio/src/displays/displayILI9225.cpp
Normal file
436
yoRadio/src/displays/displayILI9225.cpp
Normal file
@@ -0,0 +1,436 @@
|
||||
#include "../../options.h"
|
||||
#if DSP_MODEL==DSP_ILI9225
|
||||
|
||||
#include "displayILI9225.h"
|
||||
#include <SPI.h>
|
||||
#include "fonts/bootlogo.h"
|
||||
#include "../../player.h"
|
||||
#include "../../config.h"
|
||||
#include "../../network.h"
|
||||
|
||||
const char *dow[7] = {"вс","пн","вт","ср","чт","пт","сб"};
|
||||
const char *mnths[12] = {"января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"};
|
||||
extern unsigned char yofont5x7[];
|
||||
extern unsigned char yofont10x14[];
|
||||
|
||||
SPIClass hspi(VSPI);
|
||||
|
||||
DspCore::DspCore(): TFT_22_ILI9225(TFT_RST, TFT_DC, TFT_CS, 0) {
|
||||
|
||||
}
|
||||
|
||||
char* DspCore::utf8Rus(const char* str, bool uppercase) {
|
||||
int index = 0;
|
||||
static char strn[BUFLEN];
|
||||
bool E = false;
|
||||
strlcpy(strn, str, BUFLEN);
|
||||
if (uppercase) {
|
||||
bool next = false;
|
||||
for (char *iter = strn; *iter != '\0'; ++iter)
|
||||
{
|
||||
if (E) {
|
||||
E = false;
|
||||
continue;
|
||||
}
|
||||
byte rus = (byte) * iter;
|
||||
if (rus == 208 && (byte) * (iter + 1) == 129) {
|
||||
*iter = (char)209;
|
||||
*(iter + 1) = (char)145;
|
||||
E = true;
|
||||
continue;
|
||||
}
|
||||
if (rus == 209 && (byte) * (iter + 1) == 145) {
|
||||
*iter = (char)209;
|
||||
*(iter + 1) = (char)145;
|
||||
E = true;
|
||||
continue;
|
||||
}
|
||||
if (next) {
|
||||
if (rus >= 128 && rus <= 143) *iter = (char)(rus + 32);
|
||||
if (rus >= 176 && rus <= 191) *iter = (char)(rus - 32);
|
||||
next = false;
|
||||
}
|
||||
if (rus == 208) next = true;
|
||||
if (rus == 209) {
|
||||
*iter = (char)208;
|
||||
next = true;
|
||||
}
|
||||
*iter = toupper(*iter);
|
||||
}
|
||||
}
|
||||
while (strn[index])
|
||||
{
|
||||
if (strn[index] >= 0xBF)
|
||||
{
|
||||
switch (strn[index]) {
|
||||
case 0xD0: {
|
||||
if (strn[index + 1] == 0x81) {
|
||||
strn[index] = 0xA8;
|
||||
break;
|
||||
}
|
||||
if (strn[index + 1] >= 0x90 && strn[index + 1] <= 0xBF) strn[index] = strn[index + 1] + 0x30;
|
||||
break;
|
||||
}
|
||||
case 0xD1: {
|
||||
if (strn[index + 1] == 0x91) {
|
||||
//strn[index] = 0xB7;
|
||||
strn[index] = 0xB8;
|
||||
break;
|
||||
}
|
||||
if (strn[index + 1] >= 0x80 && strn[index + 1] <= 0x8F) strn[index] = strn[index + 1] + 0x70;
|
||||
break;
|
||||
}
|
||||
}
|
||||
int sind = index + 2;
|
||||
while (strn[sind]) {
|
||||
strn[sind - 1] = strn[sind];
|
||||
sind++;
|
||||
}
|
||||
strn[sind - 1] = 0;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
return strn;
|
||||
}
|
||||
|
||||
void DspCore::apScreen() {
|
||||
setTextSize(TITLE_SIZE1);
|
||||
setTextColor(TFT_FG, TFT_BG);
|
||||
setCursor(TFT_FRAMEWDT, TITLE_TOP1);
|
||||
print("AP NAME: ");
|
||||
print(apSsid);
|
||||
setCursor(TFT_FRAMEWDT, TITLE_TOP2);
|
||||
print("PASSWORD: ");
|
||||
print(apPassword);
|
||||
setTextColor(SILVER, TFT_BG);
|
||||
setCursor(TFT_FRAMEWDT, sheight-TFT_FRAMEWDT-TFT_LINEHGHT*4);
|
||||
print("SETTINGS PAGE ON: ");
|
||||
setCursor(TFT_FRAMEWDT, sheight-TFT_FRAMEWDT-TFT_LINEHGHT*2);
|
||||
print("http://");
|
||||
print(WiFi.softAPIP().toString().c_str());
|
||||
print("/");
|
||||
drawLine(TFT_FRAMEWDT, TITLE_TOP1-8, swidth-TFT_FRAMEWDT*2, TITLE_TOP1-8, SILVER);
|
||||
}
|
||||
|
||||
void DspCore::setTextSize(uint8_t s){
|
||||
if(s==2){
|
||||
setFont(yofont10x14, true);
|
||||
}else{
|
||||
setFont(yofont5x7, true);
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::setTextColor(uint16_t fg, uint16_t bg){
|
||||
bgcolor=bg;
|
||||
setBackgroundColor(bgcolor);
|
||||
fgcolor=fg;
|
||||
}
|
||||
|
||||
void DspCore::setCursor(int16_t x, int16_t y){
|
||||
cursorx=x;
|
||||
cursory=y;
|
||||
}
|
||||
|
||||
uint16_t DspCore::print(const char* s){
|
||||
if(gFont){
|
||||
drawGFXText(cursorx, cursory, s, fgcolor);
|
||||
return 0;
|
||||
}else{
|
||||
cursorx=drawText(cursorx, cursory, s, fgcolor);
|
||||
return cursorx;
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1,
|
||||
int16_t *y1, uint16_t *w, uint16_t *h){
|
||||
if(!gFont){
|
||||
_currentFont cfont = getFont();
|
||||
*w = getTextWidth(string);
|
||||
*h = cfont.height;
|
||||
}else{
|
||||
int16_t iw, ih;
|
||||
getGFXTextExtent(string, x, y, &iw, &ih);
|
||||
*w = (uint16_t)iw;
|
||||
*h = (uint16_t)ih;
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::setFont(uint8_t* font, bool monoSp) {
|
||||
gFont = false;
|
||||
TFT_22_ILI9225::setFont(font, monoSp);
|
||||
}
|
||||
|
||||
void DspCore::setFont(const GFXfont *f) {
|
||||
if (f) {
|
||||
gFont = true;
|
||||
setGFXFont(f);
|
||||
} else {
|
||||
setFont(yofont5x7, false);
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::fillRect(int16_t x, int16_t y, int16_t w, int16_t h,
|
||||
uint16_t color) {
|
||||
if(y<0){
|
||||
h=h+y;
|
||||
y=0;
|
||||
}
|
||||
fillRectangle(x, y, x+w, y+h, color);
|
||||
}
|
||||
|
||||
void DspCore::initD(uint16_t &screenwidth, uint16_t &screenheight) {
|
||||
hspi.begin();
|
||||
begin(hspi);
|
||||
invert(TFT_INVERT);
|
||||
setBackgroundColor(TFT_BG);
|
||||
clear();
|
||||
setOrientation(TFT_ROTATE);
|
||||
setTextSize(1);
|
||||
screenwidth = maxX();
|
||||
screenheight = maxY();
|
||||
swidth = screenwidth;
|
||||
sheight = screenheight;
|
||||
}
|
||||
|
||||
void DspCore::drawLogo() {
|
||||
drawBitmap((swidth - 99) / 2, (sheight-64)/2 - TFT_LINEHGHT*2, bootlogo2, 99, 64);
|
||||
}
|
||||
|
||||
// http://greekgeeks.net/#maker-tools_convertColor
|
||||
uint16_t iclrs[] = { 0x738E /*707070*/, 0x52AA /*575757*/, 0x39C7, 0x18E3 };
|
||||
void DspCore::drawPlaylist(uint16_t currentItem, char* currentItemText) {
|
||||
for (byte i = 0; i < PLMITEMS; i++) {
|
||||
plMenu[i][0] = '\0';
|
||||
}
|
||||
config.fillPlMenu(plMenu, currentItem - 4, PLMITEMS);
|
||||
setTextSize(2);
|
||||
int yStart = (sheight / 2 - PLMITEMHEIGHT / 2) - PLMITEMHEIGHT * (PLMITEMS - 1) / 2 + 3;
|
||||
fillRect(0, (sheight / 2 - PLMITEMHEIGHT / 2) - 1, swidth, PLMITEMHEIGHT, TFT_LOGO);
|
||||
for (byte i = 0; i < PLMITEMS; i++) {
|
||||
if (i == 4) {
|
||||
strlcpy(currentItemText, plMenu[i], PLMITEMLENGHT - 1);
|
||||
} else {
|
||||
setTextColor(iclrs[abs(i - 4)-1], TFT_BG);
|
||||
setCursor(TFT_FRAMEWDT, yStart + i * PLMITEMHEIGHT);
|
||||
fillRect(0, yStart + i * PLMITEMHEIGHT-1, swidth, PLMITEMHEIGHT-7, TFT_BG);
|
||||
print(utf8Rus(plMenu[i], true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::clearDsp() {
|
||||
//fillScreen(TFT_BG);
|
||||
clear();
|
||||
}
|
||||
|
||||
void DspCore::drawScrollFrame(uint16_t texttop, uint16_t textheight, uint16_t bg) {
|
||||
if (TFT_FRAMEWDT==0) return;
|
||||
fillRect(swidth - TFT_FRAMEWDT, texttop, TFT_FRAMEWDT, textheight, bg);
|
||||
fillRect(0, texttop, TFT_FRAMEWDT-1, textheight, bg);
|
||||
}
|
||||
|
||||
void DspCore::getScrolBbounds(const char* text, const char* separator, byte textsize, uint16_t &tWidth, uint16_t &tHeight, uint16_t &sWidth) {
|
||||
int16_t x1, y1;
|
||||
uint16_t w, h;
|
||||
setTextSize(textsize);
|
||||
getTextBounds(text, 0, 0, &x1, &y1, &w, &h);
|
||||
tWidth = w;
|
||||
tHeight = h;
|
||||
getTextBounds(separator, 0, 0, &x1, &y1, &w, &h);
|
||||
sWidth = w;
|
||||
}
|
||||
|
||||
void DspCore::clearScroll(uint16_t texttop, uint16_t textheight, uint16_t bg) {
|
||||
fillRect(0, texttop, swidth, textheight, bg);
|
||||
}
|
||||
|
||||
void DspCore::centerText(const char* text, uint16_t y, uint16_t fg, uint16_t bg) {
|
||||
int16_t x1, y1;
|
||||
uint16_t w, h;
|
||||
const char* txt = text;
|
||||
if(y==90) y=(sheight-64)/2 + 64 + TFT_LINEHGHT;
|
||||
if(y==110) y=(sheight-64)/2 + 64 + TFT_LINEHGHT*3;
|
||||
getTextBounds(txt, 0, 0, &x1, &y1, &w, &h);
|
||||
setTextColor(fg);
|
||||
setCursor((swidth - w) / 2, y);
|
||||
fillRect((swidth-w)/2-5, y, w+10, h, bg);
|
||||
print(txt);
|
||||
}
|
||||
|
||||
void DspCore::rightText(const char* text, uint16_t y, uint16_t fg, uint16_t bg, bool fliprect, uint16_t delta) {
|
||||
int16_t x1, y1;
|
||||
uint16_t w, h;
|
||||
getTextBounds(text, 0, 0, &x1, &y1, &w, &h);
|
||||
setTextColor(fg,bg);
|
||||
setCursor(swidth - w - TFT_FRAMEWDT - delta, y);
|
||||
print(text);
|
||||
}
|
||||
|
||||
void DspCore::displayHeapForDebug() {
|
||||
int16_t vTop = sheight - TFT_FRAMEWDT * 2 - TFT_LINEHGHT * 2 - 2;
|
||||
char buf[50];
|
||||
setTextSize(1);
|
||||
setTextColor(DARK_GRAY, TFT_BG);
|
||||
setCursor(TFT_FRAMEWDT, vTop);
|
||||
fillRect(TFT_FRAMEWDT, vTop, swidth - TFT_FRAMEWDT / 2, 7, TFT_BG);
|
||||
sprintf(buf, "%d / %d", ESP.getFreeHeap(), ESP.getMaxAllocHeap());
|
||||
print(buf);
|
||||
#if VS1053_CS==255
|
||||
// audio buffer;
|
||||
fillRect(0, sheight - 2, swidth, 2, TFT_BG);
|
||||
int astored = player.inBufferFilled();
|
||||
int afree = player.inBufferFree();
|
||||
int aprcnt = 100 * astored / (astored + afree);
|
||||
byte sbw = map(aprcnt, 0, 100 , 0, swidth);
|
||||
fillRect(0, sheight - 2, sbw, 2, SILVER);
|
||||
#endif
|
||||
}
|
||||
|
||||
void DspCore::printClock(const char* timestr) {
|
||||
|
||||
}
|
||||
|
||||
uint16_t cltop = 0;
|
||||
uint8_t clsp = 24;
|
||||
uint16_t clleft = 0;
|
||||
uint16_t clwidth = 0;
|
||||
|
||||
void DspCore::printClock(struct tm timeinfo, bool dots, bool redraw){
|
||||
char timeBuf[50] = { 0 };
|
||||
strftime(timeBuf, sizeof(timeBuf), "%H:%M", &timeinfo);
|
||||
if(strstr(oldTimeBuf, timeBuf)==NULL || redraw){
|
||||
int16_t x1, y1;
|
||||
gFont=true;
|
||||
setGFXFont(&DS_DIGI28pt7b);
|
||||
getTextBounds(oldTimeBuf, 0, 0, &x1, &y1, &wot, &hot);
|
||||
if(cltop==0){
|
||||
cltop=sheight-(TFT_FRAMEWDT * 2 + TFT_LINEHGHT + 38) - hot;
|
||||
}
|
||||
clwidth = wot+clsp+34;
|
||||
clleft=swidth-TFT_FRAMEWDT-clwidth;
|
||||
setCursor(clleft, cltop);
|
||||
setTextColor(TFT_BG);
|
||||
print(oldTimeBuf);
|
||||
strlcpy(oldTimeBuf, timeBuf, 20);
|
||||
getTextBounds(timeBuf, 0, 0, &x1, &y1, &wot, &hot);
|
||||
clwidth = wot+clsp+34;
|
||||
clleft=swidth-TFT_FRAMEWDT-clwidth;
|
||||
setTextColor(TFT_LOGO, TFT_BG);
|
||||
setCursor(clleft, cltop);
|
||||
print(timeBuf);
|
||||
gFont=false;
|
||||
setTextSize(2);
|
||||
setTextColor(TFT_FG, TFT_BG);
|
||||
setCursor(clleft+wot+clsp, cltop-hot+22);
|
||||
print(utf8Rus(dow[timeinfo.tm_wday], false));
|
||||
drawLine(clleft+wot+clsp/2, cltop-34, clleft+wot+clsp/2, cltop+1, SILVER); //vert
|
||||
drawLine(clleft+wot+clsp/2, cltop-hot+20, clleft+wot+clsp/2+35, cltop-hot+20, SILVER); //hor
|
||||
drawLine(TFT_FRAMEWDT, TITLE_TOP1-8, swidth-TFT_FRAMEWDT*2, TITLE_TOP1-8, SILVER);
|
||||
|
||||
sprintf(timeBuf, "%2d %s %d", timeinfo.tm_mday,mnths[timeinfo.tm_mon], timeinfo.tm_year+1900);
|
||||
uint16_t wdate, hdate;
|
||||
getTextBounds(timeBuf, 0, 0, &x1, &y1, &wdate, &hdate);
|
||||
fillRect(swidth - wdate - TFT_FRAMEWDT-20, cltop+10, wdate+20, hdate, TFT_BG);
|
||||
setTextSize(1);
|
||||
rightText(utf8Rus(timeBuf,true), cltop+10, TFT_FG, TFT_BG, false, 12);
|
||||
}
|
||||
setTextSize(2);
|
||||
setTextColor(TFT_LOGO, TFT_BG);
|
||||
setCursor(clleft+wot+clsp, cltop-hot+1);
|
||||
sprintf(timeBuf, "%02d", timeinfo.tm_sec);
|
||||
print(timeBuf);
|
||||
}
|
||||
|
||||
void DspCore::drawVolumeBar(bool withNumber) {
|
||||
int16_t vTop = sheight - TFT_FRAMEWDT * 2;
|
||||
int16_t volTop = sheight - TFT_FRAMEWDT * 2 - TFT_LINEHGHT - 2;
|
||||
int16_t vWidth = swidth - TFT_FRAMEWDT *2;
|
||||
uint16_t ww = map(config.store.volume, 0, 254, 0, vWidth - 2);
|
||||
fillRect(TFT_FRAMEWDT, vTop - 2, vWidth, 6, TFT_BG);
|
||||
drawRectangle(TFT_FRAMEWDT, vTop - 2, TFT_FRAMEWDT+vWidth, 6+vTop - 2, TFT_LOGO);
|
||||
fillRect(TFT_FRAMEWDT + 1, vTop - 1, ww, 5, TFT_LOGO);
|
||||
if (withNumber) {
|
||||
setTextSize(1);
|
||||
setTextColor(TFT_FG);
|
||||
setFont(&DS_DIGI28pt7b);
|
||||
char volstr[4];
|
||||
uint16_t wv, hv;
|
||||
int16_t x1, y1;
|
||||
|
||||
/*setTextColor(TFT_BG);
|
||||
sprintf(volstr, "%d", oldVolume);
|
||||
getTextBounds(volstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
setCursor((swidth - wv) / 2, (sheight-hv)/2 + hv);
|
||||
print(volstr);*/
|
||||
sprintf(volstr, "%d", oldVolume);
|
||||
getTextBounds(volstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
fillRect((swidth - wv) / 2 - 12, (sheight-hv)/2, wv+24, hv, TFT_BG);
|
||||
|
||||
setTextColor(TFT_FG);
|
||||
sprintf(volstr, "%d", config.store.volume);
|
||||
getTextBounds(volstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
setCursor((swidth - wv) / 2, (sheight-hv)/2 + hv);
|
||||
print(volstr);
|
||||
oldVolume=config.store.volume;
|
||||
}
|
||||
}
|
||||
|
||||
void DspCore::drawNextStationNum(uint16_t num) {
|
||||
setTextSize(1);
|
||||
setTextColor(TFT_FG);
|
||||
setFont(&DS_DIGI28pt7b);
|
||||
char numstr[7];
|
||||
uint16_t wv, hv;
|
||||
int16_t x1, y1;
|
||||
sprintf(numstr, "%d", num);
|
||||
getTextBounds(numstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
fillRect(TFT_FRAMEWDT, (sheight-hv)/2, swidth - TFT_FRAMEWDT / 2, hv + 3, TFT_BG);
|
||||
setCursor((swidth - wv) / 2, (sheight-hv)/2 + hv);
|
||||
print(numstr);
|
||||
}
|
||||
|
||||
void DspCore::frameTitle(const char* str) {
|
||||
setTextSize(META_SIZE);
|
||||
centerText(str, TFT_FRAMEWDT, TFT_LOGO, TFT_BG);
|
||||
drawLine(TFT_FRAMEWDT, TITLE_TOP1-8, swidth-TFT_FRAMEWDT*2, TITLE_TOP1-8, SILVER);
|
||||
}
|
||||
|
||||
void DspCore::rssi(const char* str) {
|
||||
int16_t vTop = sheight - TFT_FRAMEWDT * 2 - TFT_LINEHGHT - 2;
|
||||
char buf[20];
|
||||
sprintf(buf, "RSSI:%s", str);
|
||||
setTextSize(1);
|
||||
rightText(buf, vTop, SILVER, TFT_BG);
|
||||
}
|
||||
|
||||
void DspCore::ip(const char* str) {
|
||||
int16_t vTop = sheight - TFT_FRAMEWDT * 2 - TFT_LINEHGHT - 2;
|
||||
char buf[30];
|
||||
sprintf(buf, "IP: %s", str);
|
||||
setTextSize(1);
|
||||
setTextColor(SILVER, TFT_BG);
|
||||
setCursor(TFT_FRAMEWDT, vTop);
|
||||
print(buf);
|
||||
}
|
||||
|
||||
void DspCore::set_TextSize(uint8_t s) {
|
||||
setTextSize(s);
|
||||
}
|
||||
|
||||
void DspCore::set_TextColor(uint16_t fg, uint16_t bg) {
|
||||
setTextColor(fg, bg);
|
||||
}
|
||||
|
||||
void DspCore::set_Cursor(int16_t x, int16_t y) {
|
||||
setCursor(x, y);
|
||||
}
|
||||
|
||||
void DspCore::printText(const char* txt) {
|
||||
print(txt);
|
||||
}
|
||||
|
||||
void DspCore::loop(bool force) {
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
111
yoRadio/src/displays/displayILI9225.h
Normal file
111
yoRadio/src/displays/displayILI9225.h
Normal file
@@ -0,0 +1,111 @@
|
||||
#ifndef displayILI9225_h
|
||||
#define displayILI9225_h
|
||||
|
||||
#include "Arduino.h"
|
||||
#include "TFT_22_ILI9225.h"
|
||||
#include "fonts/DS_DIGI28pt7b.h"
|
||||
|
||||
#define TFT_LINEHGHT 10
|
||||
#define TFT_FRAMEWDT 4
|
||||
#define META_SIZE 2
|
||||
#define TITLE_SIZE1 1
|
||||
#define TITLE_SIZE2 1
|
||||
|
||||
#if !defined(SCROLLDELTA) || !defined(SCROLLTIME)
|
||||
#define SCROLLDELTA 3
|
||||
#define SCROLLTIME 30
|
||||
#endif
|
||||
|
||||
#define PLMITEMS 9
|
||||
#define PLMITEMLENGHT 40
|
||||
#define PLMITEMHEIGHT 22
|
||||
#define TFT_FULLTIME 1
|
||||
|
||||
#define TITLE_TOP1 TFT_FRAMEWDT + META_SIZE * TFT_LINEHGHT + 8
|
||||
#define TITLE_TOP2 TFT_FRAMEWDT + (META_SIZE+2) * TFT_LINEHGHT
|
||||
#define TITLE_FG2 SILVER
|
||||
|
||||
class DspCore: public TFT_22_ILI9225 {
|
||||
public:
|
||||
DspCore();
|
||||
char plMenu[PLMITEMS][PLMITEMLENGHT];
|
||||
uint16_t clockY;
|
||||
void initD(uint16_t &screenwidth, uint16_t &screenheight);
|
||||
void apScreen();
|
||||
void drawLogo();
|
||||
void clearDsp();
|
||||
void centerText(const char* text, uint16_t y, uint16_t fg, uint16_t bg);
|
||||
void rightText(const char* text, uint16_t y, uint16_t fg, uint16_t bg, bool fliprect=false, uint16_t delta = 0);
|
||||
void set_TextSize(uint8_t s);
|
||||
void set_TextColor(uint16_t fg, uint16_t bg);
|
||||
void set_Cursor(int16_t x, int16_t y);
|
||||
void printText(const char* txt);
|
||||
void printClock(const char* timestr);
|
||||
void printClock(struct tm timeinfo, bool dots, bool redraw = false);
|
||||
void displayHeapForDebug();
|
||||
void drawVolumeBar(bool withNumber);
|
||||
void drawNextStationNum(uint16_t num);
|
||||
char* utf8Rus(const char* str, bool uppercase);
|
||||
void drawScrollFrame(uint16_t texttop, uint16_t textheight, uint16_t bg);
|
||||
void getScrolBbounds(const char* text, const char* separator, byte textsize, uint16_t &tWidth, uint16_t &tHeight, uint16_t &sWidth);
|
||||
void clearScroll(uint16_t texttop, uint16_t textheight, uint16_t bg);
|
||||
void frameTitle(const char* str);
|
||||
void rssi(const char* str);
|
||||
void ip(const char* str);
|
||||
void drawPlaylist(uint16_t currentItem, char* currentItemText);
|
||||
void loop(bool force=false);
|
||||
void setFont(uint8_t* font, bool monoSp=false );
|
||||
void setFont(const GFXfont *f = NULL);
|
||||
private:
|
||||
uint16_t swidth, sheight;
|
||||
uint16_t bgcolor, fgcolor;
|
||||
int16_t cursorx, cursory;
|
||||
bool gFont;
|
||||
char oldTimeBuf[20];
|
||||
uint8_t oldVolume;
|
||||
uint16_t wot, hot;
|
||||
void setTextSize(uint8_t s);
|
||||
void setTextColor(uint16_t fg, uint16_t bg=0x0000);
|
||||
void setCursor(int16_t x, int16_t y);
|
||||
uint16_t print(const char* s);
|
||||
void getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1,
|
||||
int16_t *y1, uint16_t *w, uint16_t *h);
|
||||
void fillRect(int16_t x, int16_t y, int16_t w, int16_t h,
|
||||
uint16_t color);
|
||||
};
|
||||
|
||||
extern DspCore dsp;
|
||||
|
||||
/*
|
||||
* TFT COLORS
|
||||
*/
|
||||
#define BLACK 0x0000
|
||||
#define BLUE 0x001F
|
||||
#define RED 0xF800
|
||||
#define GREEN 0x07E0
|
||||
#define MAGENTA 0xF81F
|
||||
#define YELLOW 0xFFE0
|
||||
#define WHITE 0xFFFF
|
||||
#define GRAY 0x7BEF
|
||||
#define DARK_GRAY 0x2945
|
||||
#define LIGHT_GRAY 0xC618
|
||||
#define LIME 0x87E0
|
||||
#define AQUA 0x5D1C
|
||||
#define CYAN 0x07FF
|
||||
#define DARK_CYAN 0x03EF
|
||||
#define ORANGE 0xFCA0
|
||||
#define PINK 0xF97F
|
||||
#define BROWN 0x8200
|
||||
#define VIOLET 0x9199
|
||||
#define SILVER 0xA510
|
||||
#define GOLD 0xA508
|
||||
#define NAVY 0x000F
|
||||
#define MAROON 0x7800
|
||||
#define PURPLE 0x780F
|
||||
#define OLIVE 0x7BE0
|
||||
|
||||
#define TFT_BG BLACK
|
||||
#define TFT_FG WHITE
|
||||
#define TFT_LOGO 0xE68B // 224, 209, 92
|
||||
|
||||
#endif
|
||||
@@ -258,6 +258,9 @@ void DspCore::printClock(struct tm timeinfo, bool dots, bool redraw){
|
||||
|
||||
sprintf(timeBuf, "%2d %s %d", timeinfo.tm_mday,mnths[timeinfo.tm_mon], timeinfo.tm_year+1900);
|
||||
setTextSize(1);
|
||||
uint16_t wdate, hdate;
|
||||
getTextBounds(timeBuf, 0, 0, &x1, &y1, &wdate, &hdate);
|
||||
fillRect(swidth - wdate - TFT_FRAMEWDT-20, cltop+10, wdate+20, hdate, TFT_BG);
|
||||
rightText(utf8Rus(timeBuf,true), cltop+10, TFT_FG, TFT_BG, false, swidth>240?12:0);
|
||||
drawFastVLine(clleft+wot+clsp/2+3, cltop-hot, hot+3, SILVER);
|
||||
drawFastHLine(clleft+wot+clsp/2+3, cltop-hot+29, 42, SILVER);
|
||||
@@ -293,11 +296,14 @@ void DspCore::drawVolumeBar(bool withNumber) {
|
||||
uint16_t wv, hv;
|
||||
int16_t x1, y1;
|
||||
|
||||
setTextColor(TFT_BG);
|
||||
/*setTextColor(TFT_BG);
|
||||
sprintf(volstr, "%d", oldVolume);
|
||||
getTextBounds(volstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
setCursor((swidth - wv) / 2, (sheight-hv)/2 + hv);
|
||||
print(volstr);
|
||||
print(volstr);*/
|
||||
sprintf(volstr, "%d", oldVolume);
|
||||
getTextBounds(volstr, 0, 0, &x1, &y1, &wv, &hv);
|
||||
fillRect((swidth - wv) / 2 - 12, (sheight-hv)/2, wv+24, hv, TFT_BG);
|
||||
|
||||
setTextColor(TFT_FG);
|
||||
sprintf(volstr, "%d", config.store.volume);
|
||||
|
||||
278
yoRadio/src/displays/fonts/yofont10x14.c
Normal file
278
yoRadio/src/displays/fonts/yofont10x14.c
Normal file
@@ -0,0 +1,278 @@
|
||||
#include "../../../options.h"
|
||||
#if DSP_MODEL==DSP_ILI9225
|
||||
#ifndef YOFONT10X14_H
|
||||
#define YOFONT10X14_H
|
||||
|
||||
#ifdef __AVR__
|
||||
#include <avr/io.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#elif defined(ESP8266)
|
||||
#include <pgmspace.h>
|
||||
#else
|
||||
#define PROGMEM
|
||||
#endif
|
||||
|
||||
// Standard ASCII 10x14 font
|
||||
|
||||
const unsigned char yofont10x14[] PROGMEM = {
|
||||
0x0A, 0x0E, 0x00, 0xFF,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x33, 0x33, 0x33, 0x33, 0x03, 0x33, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0xCF, 0x3C, 0xCF, 0x3C, 0xFF, 0x3C, 0xFF, 0x3C, 0xCF, 0x3C, 0xCF, 0x3C, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xF0, 0x00, 0xF0, 0x00, 0xFC, 0x03, 0xFC, 0x03, 0xF0, 0x0F, 0xF0, 0x0F, 0xFC, 0x03, 0xFC, 0x03, 0xF0, 0x00, 0xF0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xFC, 0x0F, 0xFC, 0x0F, 0xF0, 0x03, 0xF0, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0xCC, 0x30, 0xCC, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0xCC, 0x30, 0xCC, 0x30, 0xF0, 0x03, 0xF0, 0x03,
|
||||
0x0A, 0xC0, 0x03, 0xC0, 0x03, 0xF0, 0x33, 0xF0, 0x33, 0xFF, 0x3F, 0xFF, 0x3F, 0xF0, 0x33, 0xF0, 0x33, 0xC0, 0x03, 0xC0, 0x03,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0x30, 0x03, 0x30, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x0F, 0x3C, 0x0F, 0x3C, 0xCF, 0x3C, 0xCF, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0x00, 0x0F, 0x00, 0x0F, 0xC0, 0x30, 0xC0, 0x30, 0xF3, 0x30, 0xF3, 0x30, 0x0F, 0x0F, 0x0F, 0x0F, 0x3F, 0x00, 0x3F, 0x00,
|
||||
0x0A, 0x3C, 0x00, 0x3C, 0x00, 0xC3, 0x0C, 0xC3, 0x0C, 0xC3, 0x3F, 0xC3, 0x3F, 0xC3, 0x0C, 0xC3, 0x0C, 0x3C, 0x00, 0x3C, 0x00,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x33, 0x00, 0x33, 0xFF, 0x0F, 0xFF, 0x0F, 0x0C, 0x00, 0x0C, 0x00, 0xF0, 0x00, 0xF0, 0x00,
|
||||
0x0A, 0x00, 0x3C, 0x00, 0x3C, 0xFF, 0x3F, 0xFF, 0x3F, 0x33, 0x00, 0x33, 0x00, 0x33, 0x0F, 0x33, 0x0F, 0xFF, 0x0F, 0xFF, 0x0F,
|
||||
0x0A, 0xCC, 0x0C, 0xCC, 0x0C, 0xF0, 0x03, 0xF0, 0x03, 0x3F, 0x3F, 0x3F, 0x3F, 0xF0, 0x03, 0xF0, 0x03, 0xCC, 0x0C, 0xCC, 0x0C,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0xFC, 0x0F, 0xFC, 0x0F, 0xF0, 0x03, 0xF0, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xFC, 0x0F, 0xFC, 0x0F, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0xFF, 0x3F, 0xFF, 0x3F, 0x0C, 0x0C, 0x0C, 0x0C, 0x30, 0x03, 0x30, 0x03,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x33, 0xFF, 0x33, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x33, 0xFF, 0x33, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x3C, 0x00, 0x3C, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xCC, 0x30, 0xCC, 0x30, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0xC3, 0x0C, 0xC3, 0x0C,
|
||||
0x0A, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C,
|
||||
0x0A, 0x30, 0x33, 0x30, 0x33, 0x0C, 0x3C, 0x0C, 0x3C, 0xFF, 0x3F, 0xFF, 0x3F, 0x0C, 0x3C, 0x0C, 0x3C, 0x30, 0x33, 0x30, 0x33,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFC, 0x3F, 0xFC, 0x3F, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0xFF, 0x0F, 0xFF, 0x0F, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xCC, 0x0C, 0xCC, 0x0C, 0xF0, 0x03, 0xF0, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xCC, 0x0C, 0xCC, 0x0C, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0xFC, 0x0F, 0xFC, 0x0F, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0xF0, 0x03, 0xF0, 0x03,
|
||||
0x0A, 0x00, 0x0F, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xFF, 0x0F, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x00, 0x0F, 0x00, 0x0F,
|
||||
0x0A, 0x3C, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xFC, 0x03, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x03, 0xFC, 0x03, 0x3C, 0x00, 0x3C, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x33, 0xFF, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x03, 0x30, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x30, 0x03, 0x30, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x30, 0x03, 0x30, 0x03,
|
||||
0x0A, 0x30, 0x0C, 0x30, 0x0C, 0xCC, 0x0C, 0xCC, 0x0C, 0xFF, 0x3F, 0xFF, 0x3F, 0xCC, 0x0C, 0xCC, 0x0C, 0x0C, 0x03, 0x0C, 0x03,
|
||||
0x0A, 0x0F, 0x0C, 0x0F, 0x0C, 0x0F, 0x03, 0x0F, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x3C, 0x30, 0x3C, 0x0C, 0x3C, 0x0C, 0x3C,
|
||||
0x0A, 0x3C, 0x0F, 0x3C, 0x0F, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x33, 0x3C, 0x33, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x33, 0x00, 0x33,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0x03, 0x30, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0x0C, 0x0C, 0x0C, 0x0C, 0xF0, 0x03, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x33, 0x03, 0x33, 0xC3, 0x30, 0xC3, 0x30, 0x33, 0x30, 0x33, 0x30, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x0C, 0x30, 0x0C, 0x30, 0x03, 0x3C, 0x03, 0x3C, 0x03, 0x33, 0x03, 0x33, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x30, 0x3C, 0x30,
|
||||
0x0A, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0x30, 0x03, 0x30, 0x33, 0x30, 0x33, 0x30, 0xCF, 0x30, 0xCF, 0x30, 0x03, 0x0F, 0x03, 0x0F,
|
||||
0x0A, 0xC0, 0x03, 0xC0, 0x03, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x03, 0x00, 0x03,
|
||||
0x0A, 0x3F, 0x0C, 0x3F, 0x0C, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0xC3, 0x0F, 0xC3, 0x0F,
|
||||
0x0A, 0xF0, 0x0F, 0xF0, 0x0F, 0xCC, 0x30, 0xCC, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x00, 0x0F, 0x00, 0x0F,
|
||||
0x0A, 0x03, 0x00, 0x03, 0x00, 0x03, 0x3F, 0x03, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0x33, 0x00, 0x33, 0x00, 0x0F, 0x00, 0x0F, 0x00,
|
||||
0x0A, 0x3C, 0x0F, 0x3C, 0x0F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x0F, 0x3C, 0x0F,
|
||||
0x0A, 0x3C, 0x00, 0x3C, 0x00, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x0C, 0xC3, 0x0C, 0xFC, 0x03, 0xFC, 0x03,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xCC, 0xF0, 0xCC, 0xF0, 0x3C, 0xF0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0x03, 0x30, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0x0C, 0x0C, 0x0C, 0x0C, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x33, 0x03, 0x33, 0xC3, 0x00, 0xC3, 0x00, 0x3C, 0x00, 0x3C, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0xF3, 0x33, 0xF3, 0x33, 0x33, 0x33, 0x33, 0x33, 0xFC, 0x33, 0xFC, 0x33,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x0C, 0x03, 0x0C, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x0F, 0x3C, 0x0F,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x0C, 0x0C, 0x0C, 0x0C,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x0C, 0x0C, 0x0C, 0x0C, 0xF0, 0x03, 0xF0, 0x03,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xCC, 0x3F, 0xCC, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x30, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x0F, 0xFF, 0x0F, 0x03, 0x00, 0x03, 0x00,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x3C, 0x00, 0x3C,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x0C, 0x00, 0x0C, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0x3C, 0x00, 0x3C, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x33, 0x03, 0x33, 0x03, 0x0C, 0x03, 0x0C, 0xFC, 0x33, 0xFC, 0x33,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x03, 0xC3, 0x03, 0xC3, 0x0C, 0xC3, 0x0C, 0x3C, 0x30, 0x3C, 0x30,
|
||||
0x0A, 0x3C, 0x30, 0x3C, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x03, 0x0F, 0x03, 0x0F,
|
||||
0x0A, 0x0F, 0x00, 0x0F, 0x00, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00, 0x0F, 0x00, 0x0F, 0x00,
|
||||
0x0A, 0xFF, 0x0F, 0xFF, 0x0F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x0F, 0xFF, 0x0F,
|
||||
0x0A, 0xFF, 0x03, 0xFF, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0xFF, 0x03, 0xFF, 0x03,
|
||||
0x0A, 0xFF, 0x0F, 0xFF, 0x0F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x0F, 0xF0, 0x0F, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x0F, 0xFF, 0x0F,
|
||||
0x0A, 0x0F, 0x3C, 0x0F, 0x3C, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0F, 0x3C, 0x0F, 0x3C,
|
||||
0x0A, 0x3F, 0x00, 0x3F, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x3F, 0x00, 0x3F, 0x00,
|
||||
0x0A, 0x03, 0x3C, 0x03, 0x3C, 0x03, 0x33, 0x03, 0x33, 0xC3, 0x30, 0xC3, 0x30, 0x33, 0x30, 0x33, 0x30, 0x0F, 0x30, 0x0F, 0x30,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00,
|
||||
0x0A, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x30, 0xC0, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x30, 0xC0, 0x30,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x03, 0xC0, 0x03,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x3F, 0xFC, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x33, 0xC0, 0x33, 0xF0, 0x0F, 0xF0, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x30, 0x30, 0xF3, 0x3F, 0xF3, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0xF3, 0x0F, 0xF3, 0x0F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x3F, 0xC0, 0x3F, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x30, 0xC0, 0x30, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x0C, 0x30, 0x0C,
|
||||
0x0A, 0x30, 0x00, 0x30, 0x00, 0xFF, 0x0F, 0xFF, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0xF0, 0x0F, 0xF0, 0x0F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0xF0, 0x03, 0xF0, 0x03,
|
||||
0x0A, 0xF0, 0x0F, 0xF0, 0x0F, 0x00, 0x30, 0x00, 0x30, 0xC0, 0x0F, 0xC0, 0x0F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x0F, 0xF0, 0x0F,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0C, 0xC0, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0xF0, 0x0F, 0xF0, 0x0F,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x30, 0x3C, 0x30, 0x33, 0x30, 0x33, 0xF0, 0x30, 0xF0, 0x30, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x3C, 0x0F, 0x3C, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x03, 0x30, 0x3C, 0x0F, 0x3C, 0x0F, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0x00, 0x3F, 0x00, 0x3F, 0xC0, 0x30, 0xC0, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0x00, 0x3F, 0x00, 0x3F,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x03, 0x03, 0x03, 0x03, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x0C, 0x03, 0xFF, 0x03, 0xFF, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x0C, 0x03, 0xC3, 0x03, 0xC3, 0x03, 0x3C, 0x03, 0x3C, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x33, 0x03, 0x33, 0x03, 0xCF, 0x00, 0xCF, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFF, 0x03, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x03, 0x3F, 0x03, 0x33, 0x03, 0x33, 0x03, 0xC3, 0x00, 0xC3, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x33, 0x03, 0x33, 0x03, 0xC3, 0x00, 0xC3, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0xF3, 0x03, 0xF3, 0x03, 0x0F, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x33, 0x03, 0x33, 0x03, 0xCC, 0x00, 0xCC, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x0C, 0x03, 0x33, 0x03, 0x33, 0x03, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xC0, 0x33, 0xC0, 0x33, 0x30, 0x3C, 0x30, 0x3C, 0x30, 0x00, 0x30, 0x00, 0x30, 0x3C, 0x30, 0x3C, 0xC0, 0x33, 0xC0, 0x33,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xFC, 0x0F, 0xFC, 0x0F, 0xF0, 0x03, 0xF0, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xFC, 0x0F, 0xFC, 0x0F, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C,
|
||||
0x0A, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0xFC, 0x0F, 0xFC, 0x0F, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0x3F, 0x3F, 0x3F, 0x3F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0x3F, 0x3F, 0x3F, 0x3F, 0x03, 0x30, 0x03, 0x30, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33,
|
||||
0x0A, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33,
|
||||
0x0A, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0x03, 0x30, 0x03, 0x30, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33,
|
||||
0x0A, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x0C, 0x0C, 0x0C, 0x0C, 0xF0, 0x03, 0xF0, 0x03, 0x30, 0x03, 0x30, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0x0C, 0x0C, 0x0C, 0x0C,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x03, 0xF0, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x3C, 0x30, 0x3C, 0x30, 0xF3, 0x33, 0xF3, 0x33, 0x33, 0x33, 0x33, 0x33, 0xF3, 0x33, 0xF3, 0x33, 0x03, 0x0F, 0x03, 0x0F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x33, 0x33, 0x33, 0x33, 0x30, 0x33, 0x30, 0x33, 0x33, 0x33, 0x33, 0x33, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xCC, 0x0C, 0xCC, 0x0C, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x3F, 0x03, 0x3F, 0x03, 0x0F, 0x03, 0x0F, 0xFF, 0x03, 0xFF, 0x03,
|
||||
0x0A, 0x0F, 0x00, 0x0F, 0x00, 0x33, 0x00, 0x33, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x33, 0x00, 0x33, 0x00, 0x0F, 0x00, 0x0F, 0x00,
|
||||
0x0A, 0x0C, 0x0C, 0x0C, 0x0C, 0x30, 0x03, 0x30, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x33, 0x33, 0x33, 0x33, 0x0C, 0x0C, 0x0C, 0x0C,
|
||||
0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x33, 0x33, 0x33, 0x33, 0xF3, 0x3F, 0xF3, 0x3F, 0x33, 0x00, 0x33, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0x3C, 0x00, 0x3C, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xFF, 0x33, 0xFF, 0x33, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0xF0, 0x03, 0xF0, 0x03, 0x30, 0x03, 0x30, 0x03, 0xF0, 0x03, 0xF0, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x3C, 0x03, 0x3C, 0xFC, 0x0F, 0xFC, 0x0F, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x33, 0x00, 0x33, 0xFF, 0x0F, 0xFF, 0x0F, 0x0C, 0x00, 0x0C, 0x00, 0xF0, 0x00, 0xF0, 0x00,
|
||||
0x0A, 0x00, 0xC0, 0x00, 0xC0, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x0C, 0x00, 0x0C, 0xF0, 0x0F, 0xF0, 0x0F, 0x00, 0x30, 0x00, 0x30,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0xF0, 0x0F, 0xF0, 0x0F, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x33, 0x33, 0x33, 0x33, 0x30, 0x33, 0x30, 0x33, 0x33, 0x33, 0x33, 0x33, 0xC0, 0x03, 0xC0, 0x03,
|
||||
0x0A, 0xFC, 0x3F, 0xFC, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00,
|
||||
0x0A, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x0C, 0x0C, 0x0C, 0x0C, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xFC, 0x00, 0xFC, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xCC, 0x00, 0xCC, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0xFC, 0x00, 0xFC, 0x00,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0C, 0x00,
|
||||
0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0xC0, 0x0C, 0xC0, 0x0C, 0x00, 0x0F, 0x00, 0x0F, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xFC, 0x3F, 0xFC, 0x3F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFC, 0x3F, 0xFC, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x03, 0x0F, 0x03, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x0F, 0x3C, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x0F, 0x00, 0x0F, 0x00,
|
||||
0x0A, 0x00, 0xF0, 0x00, 0xF0, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x30, 0x03, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0xF0, 0x00, 0xF0,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0x3F, 0x3F, 0x3F, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x3F, 0x3F, 0x3F, 0x3F,
|
||||
0x0A, 0x03, 0x30, 0x03, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x3C, 0x0F, 0x3C, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x03, 0x0C, 0x03, 0x0C, 0x0C, 0x03, 0x0C, 0x03, 0xC3, 0x00, 0xC3, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0C, 0x0C, 0x0C, 0x0C, 0x03, 0x30, 0x03, 0x30,
|
||||
0x0A, 0x00, 0x30, 0x00, 0x30, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x0C, 0x00, 0x0C, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0xC3, 0x00, 0x3C, 0x00, 0x3C, 0x00,
|
||||
0x0A, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x0C, 0x0C, 0x0C, 0x0C,
|
||||
0x0A, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x0A, 0x3F, 0x00, 0x3F, 0x00, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xFF, 0x0F, 0xFF, 0x0F,
|
||||
0x0A, 0xFC, 0x00, 0xFC, 0x00, 0x03, 0x03, 0x03, 0x03, 0xFF, 0x3F, 0xFF, 0x3F, 0x03, 0x03, 0x03, 0x03, 0xFC, 0x00, 0xFC, 0x00,
|
||||
0x0A, 0x0F, 0x3C, 0x0F, 0x3C, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x03, 0x30, 0x03, 0x0F, 0x3C, 0x0F, 0x3C,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0xF0, 0x00, 0xF0,
|
||||
0x0A, 0x3F, 0x00, 0x3F, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xFF, 0x3F, 0xFF, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x0A, 0x03, 0x00, 0x03, 0x00, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0x00, 0x0F, 0x00, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0x00, 0x0F, 0x00, 0x0F, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x30, 0x00, 0x0F, 0x00, 0x0F,
|
||||
0x0A, 0x0C, 0x0C, 0x0C, 0x0C, 0x03, 0x30, 0x03, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0xFF, 0x3F, 0xFF, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x0F, 0xFC, 0x0F, 0x03, 0x30, 0x03, 0x30, 0xFC, 0x0F, 0xFC, 0x0F,
|
||||
0x0A, 0x3C, 0x30, 0x3C, 0x30, 0xC3, 0x0C, 0xC3, 0x0C, 0xC3, 0x03, 0xC3, 0x03, 0xC3, 0x00, 0xC3, 0x00, 0xFF, 0x3F, 0xFF, 0x3F,
|
||||
0x0A, 0x00, 0x0C, 0x00, 0x0C, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x3F, 0xC0, 0x3F,
|
||||
0x0A, 0xF0, 0x0F, 0xF0, 0x0F, 0xCC, 0x30, 0xCC, 0x30, 0xCC, 0x30, 0xCC, 0x30, 0xC3, 0x30, 0xC3, 0x30, 0x03, 0x0F, 0x03, 0x0F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x0C, 0xC0, 0x0C,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x00, 0xF0, 0x00,
|
||||
0x0A, 0x00, 0xF0, 0x00, 0xF0, 0xC0, 0x3F, 0xC0, 0x3F, 0x30, 0x30, 0x30, 0x30, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0xF0, 0x00, 0xF0,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x03, 0xC0, 0x03,
|
||||
0x0A, 0xF0, 0x3C, 0xF0, 0x3C, 0x00, 0x03, 0x00, 0x03, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x03, 0x00, 0x03, 0xF0, 0x3C, 0xF0, 0x3C,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x0C, 0xC0, 0x0C,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x3C, 0x0C, 0x3C, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0x00, 0x30, 0x00, 0x30, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x00, 0xC0, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0xC0, 0x00, 0xC0, 0x00,
|
||||
0x0A, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x30, 0xC0, 0x30,
|
||||
0x0A, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x3F, 0xF0, 0x3F, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00,
|
||||
0x0A, 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0xF0, 0x0F, 0xF0, 0x0F,
|
||||
0x0A, 0xC0, 0x03, 0xC0, 0x03, 0x30, 0x0C, 0x30, 0x0C, 0xF0, 0xFF, 0xF0, 0xFF, 0x30, 0x0C, 0x30, 0x0C, 0xC0, 0x03, 0xC0, 0x03,
|
||||
0x0A, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0C, 0xC0, 0x0C, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x30, 0x30, 0x30,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0xF0, 0x00, 0xF0,
|
||||
0x0A, 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x30, 0x00, 0x30, 0xF0, 0xFF, 0xF0, 0xFF,
|
||||
0x0A, 0x30, 0x00, 0x30, 0x00, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x0C, 0x00, 0x0C, 0xF0, 0x3F, 0xF0, 0x3F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x0C, 0x00, 0x0C,
|
||||
0x0A, 0xC0, 0x0C, 0xC0, 0x0C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0x30, 0x33, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xF0, 0x3F, 0xF0, 0x3F, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x0F, 0xC0, 0x0F, 0x30, 0x30, 0x30, 0x30, 0xC0, 0x0F, 0xC0, 0x0F,
|
||||
0x0A, 0xC0, 0x30, 0xC0, 0x30, 0x30, 0x0F, 0x30, 0x0F, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0xF0, 0x3F, 0xF0, 0x3F
|
||||
};
|
||||
#endif // YOFONT10X14_H
|
||||
|
||||
#endif //DSP_ILI9225
|
||||
275
yoRadio/src/displays/fonts/yofont5x7.c
Normal file
275
yoRadio/src/displays/fonts/yofont5x7.c
Normal file
@@ -0,0 +1,275 @@
|
||||
#include "../../../options.h"
|
||||
#if DSP_MODEL==DSP_ILI9225
|
||||
#ifndef YOFONTFONT5X7_H
|
||||
#define YOFONTFONT5X7_H
|
||||
|
||||
#ifdef __AVR__
|
||||
#include <avr/io.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#elif defined(ESP8266)
|
||||
#include <pgmspace.h>
|
||||
#else
|
||||
#define PROGMEM
|
||||
#endif
|
||||
|
||||
const unsigned char yofont5x7[] PROGMEM = {
|
||||
0x05, 0x07, 0x00, 0xFF,
|
||||
0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x3E, 0x55, 0x51, 0x55, 0x3E,
|
||||
0x05, 0x3E, 0x6B, 0x6F, 0x6B, 0x3E,
|
||||
0x05, 0x0C, 0x1E, 0x3C, 0x1E, 0x0C,
|
||||
0x05, 0x08, 0x1C, 0x3E, 0x1C, 0x08,
|
||||
0x05, 0x1C, 0x4A, 0x7F, 0x4A, 0x1C,
|
||||
0x05, 0x18, 0x5C, 0x7F, 0x5C, 0x18,
|
||||
0x05, 0x00, 0x1C, 0x1C, 0x1C, 0x00,
|
||||
0x05, 0x7F, 0x63, 0x63, 0x63, 0x7F,
|
||||
0x05, 0x00, 0x1C, 0x14, 0x1C, 0x00,
|
||||
0x05, 0x7F, 0x63, 0x6B, 0x63, 0x7F,
|
||||
0x05, 0x30, 0x48, 0x4D, 0x33, 0x07,
|
||||
0x05, 0x06, 0x29, 0x79, 0x29, 0x06,
|
||||
0x05, 0x20, 0x50, 0x3F, 0x02, 0x0C,
|
||||
0x05, 0x60, 0x7F, 0x05, 0x35, 0x3F,
|
||||
0x05, 0x2A, 0x1C, 0x77, 0x1C, 0x2A,
|
||||
0x05, 0x00, 0x7F, 0x3E, 0x1C, 0x08,
|
||||
0x05, 0x08, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x05, 0x14, 0x22, 0x7F, 0x22, 0x14,
|
||||
0x05, 0x00, 0x5F, 0x00, 0x5F, 0x00,
|
||||
0x05, 0x06, 0x09, 0x7F, 0x01, 0x7F,
|
||||
0x05, 0x4A, 0x55, 0x55, 0x55, 0x29,
|
||||
0x05, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x05, 0x54, 0x62, 0x7F, 0x62, 0x54,
|
||||
0x05, 0x08, 0x04, 0x7E, 0x04, 0x08,
|
||||
0x05, 0x08, 0x10, 0x3F, 0x10, 0x08,
|
||||
0x05, 0x08, 0x08, 0x2A, 0x1C, 0x08,
|
||||
0x05, 0x08, 0x1C, 0x2A, 0x08, 0x08,
|
||||
0x05, 0x1C, 0x10, 0x10, 0x10, 0x10,
|
||||
0x05, 0x1C, 0x3E, 0x08, 0x3E, 0x1C,
|
||||
0x05, 0x30, 0x3C, 0x3F, 0x3C, 0x30,
|
||||
0x05, 0x06, 0x1E, 0x7E, 0x1E, 0x06,
|
||||
0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x00, 0x5F, 0x00, 0x00,
|
||||
0x05, 0x00, 0x07, 0x00, 0x07, 0x00,
|
||||
0x05, 0x14, 0x7F, 0x14, 0x7F, 0x14,
|
||||
0x05, 0x24, 0x2A, 0x7F, 0x2A, 0x12,
|
||||
0x05, 0x23, 0x13, 0x08, 0x64, 0x62,
|
||||
0x05, 0x36, 0x49, 0x56, 0x20, 0x50,
|
||||
0x05, 0x00, 0x00, 0x07, 0x00, 0x00,
|
||||
0x05, 0x00, 0x1C, 0x22, 0x41, 0x00,
|
||||
0x05, 0x00, 0x41, 0x22, 0x1C, 0x00,
|
||||
0x05, 0x14, 0x08, 0x3E, 0x08, 0x14,
|
||||
0x05, 0x08, 0x08, 0x3E, 0x08, 0x08,
|
||||
0x05, 0x00, 0xA0, 0x60, 0x00, 0x00,
|
||||
0x05, 0x08, 0x08, 0x08, 0x08, 0x08,
|
||||
0x05, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x05, 0x20, 0x10, 0x08, 0x04, 0x02,
|
||||
0x05, 0x3E, 0x51, 0x49, 0x45, 0x3E,
|
||||
0x05, 0x44, 0x42, 0x7F, 0x40, 0x40,
|
||||
0x05, 0x42, 0x61, 0x51, 0x49, 0x46,
|
||||
0x05, 0x21, 0x41, 0x45, 0x4B, 0x31,
|
||||
0x05, 0x18, 0x14, 0x12, 0x7F, 0x10,
|
||||
0x05, 0x27, 0x45, 0x45, 0x45, 0x39,
|
||||
0x05, 0x3C, 0x4A, 0x49, 0x49, 0x30,
|
||||
0x05, 0x01, 0x71, 0x09, 0x05, 0x03,
|
||||
0x05, 0x36, 0x49, 0x49, 0x49, 0x36,
|
||||
0x05, 0x06, 0x49, 0x49, 0x29, 0x1E,
|
||||
0x05, 0x00, 0x6C, 0x6C, 0x00, 0x00,
|
||||
0x05, 0x00, 0xAC, 0x6C, 0x00, 0x00,
|
||||
0x05, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x05, 0x14, 0x14, 0x14, 0x14, 0x14,
|
||||
0x05, 0x00, 0x41, 0x22, 0x14, 0x08,
|
||||
0x05, 0x02, 0x01, 0x51, 0x09, 0x06,
|
||||
0x05, 0x3E, 0x41, 0x5D, 0x55, 0x5E,
|
||||
0x05, 0x7C, 0x12, 0x11, 0x12, 0x7C,
|
||||
0x05, 0x7F, 0x49, 0x49, 0x49, 0x36,
|
||||
0x05, 0x3E, 0x41, 0x41, 0x41, 0x22,
|
||||
0x05, 0x7F, 0x41, 0x41, 0x22, 0x1C,
|
||||
0x05, 0x7F, 0x49, 0x49, 0x49, 0x41,
|
||||
0x05, 0x7F, 0x09, 0x09, 0x09, 0x01,
|
||||
0x05, 0x3E, 0x41, 0x49, 0x49, 0x7A,
|
||||
0x05, 0x7F, 0x08, 0x08, 0x08, 0x7F,
|
||||
0x05, 0x00, 0x41, 0x7F, 0x41, 0x00,
|
||||
0x05, 0x20, 0x40, 0x41, 0x3F, 0x01,
|
||||
0x05, 0x7F, 0x08, 0x14, 0x22, 0x41,
|
||||
0x05, 0x7F, 0x40, 0x40, 0x40, 0x60,
|
||||
0x05, 0x7F, 0x02, 0x0C, 0x02, 0x7F,
|
||||
0x05, 0x7F, 0x04, 0x08, 0x10, 0x7F,
|
||||
0x05, 0x3E, 0x41, 0x41, 0x41, 0x3E,
|
||||
0x05, 0x7F, 0x09, 0x09, 0x09, 0x06,
|
||||
0x05, 0x3E, 0x41, 0x51, 0x21, 0x5E,
|
||||
0x05, 0x7F, 0x09, 0x19, 0x29, 0x46,
|
||||
0x05, 0x46, 0x49, 0x49, 0x49, 0x31,
|
||||
0x05, 0x03, 0x01, 0x7F, 0x01, 0x03,
|
||||
0x05, 0x3F, 0x40, 0x40, 0x40, 0x3F,
|
||||
0x05, 0x1F, 0x20, 0x40, 0x20, 0x1F,
|
||||
0x05, 0x3F, 0x40, 0x3C, 0x40, 0x3F,
|
||||
0x05, 0x63, 0x14, 0x08, 0x14, 0x63,
|
||||
0x05, 0x07, 0x08, 0x70, 0x08, 0x07,
|
||||
0x05, 0x61, 0x51, 0x49, 0x45, 0x43,
|
||||
0x05, 0x00, 0x7F, 0x41, 0x41, 0x00,
|
||||
0x05, 0x02, 0x04, 0x08, 0x10, 0x20,
|
||||
0x05, 0x00, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x05, 0x04, 0x02, 0x01, 0x02, 0x04,
|
||||
0x05, 0x40, 0x40, 0x40, 0x40, 0x40,
|
||||
0x05, 0x00, 0x01, 0x02, 0x04, 0x00,
|
||||
0x05, 0x20, 0x54, 0x54, 0x54, 0x78,
|
||||
0x05, 0x7F, 0x48, 0x44, 0x44, 0x38,
|
||||
0x05, 0x38, 0x44, 0x44, 0x44, 0x48,
|
||||
0x05, 0x38, 0x44, 0x44, 0x48, 0x7F,
|
||||
0x05, 0x38, 0x54, 0x54, 0x54, 0x18,
|
||||
0x05, 0x08, 0x7E, 0x09, 0x01, 0x02,
|
||||
0x05, 0x08, 0x54, 0x54, 0x58, 0x3C,
|
||||
0x05, 0x7F, 0x08, 0x04, 0x04, 0x78,
|
||||
0x05, 0x00, 0x44, 0x7D, 0x40, 0x00,
|
||||
0x05, 0x20, 0x40, 0x44, 0x3D, 0x00,
|
||||
0x05, 0x7F, 0x10, 0x10, 0x28, 0x44,
|
||||
0x05, 0x00, 0x41, 0x7F, 0x40, 0x00,
|
||||
0x05, 0x7C, 0x04, 0x78, 0x04, 0x78,
|
||||
0x05, 0x7C, 0x08, 0x04, 0x04, 0x78,
|
||||
0x05, 0x38, 0x44, 0x44, 0x44, 0x38,
|
||||
0x05, 0x7C, 0x14, 0x14, 0x14, 0x08,
|
||||
0x05, 0x08, 0x14, 0x14, 0x0C, 0x7C,
|
||||
0x05, 0x7C, 0x08, 0x04, 0x04, 0x08,
|
||||
0x05, 0x48, 0x54, 0x54, 0x54, 0x24,
|
||||
0x05, 0x04, 0x3F, 0x44, 0x40, 0x20,
|
||||
0x05, 0x3C, 0x40, 0x40, 0x20, 0x7C,
|
||||
0x05, 0x1C, 0x20, 0x40, 0x20, 0x1C,
|
||||
0x05, 0x3C, 0x40, 0x38, 0x40, 0x3C,
|
||||
0x05, 0x44, 0x28, 0x10, 0x28, 0x44,
|
||||
0x05, 0x0C, 0x50, 0x50, 0x50, 0x3C,
|
||||
0x05, 0x44, 0x64, 0x54, 0x4C, 0x44,
|
||||
0x05, 0x00, 0x08, 0x36, 0x41, 0x00,
|
||||
0x05, 0x00, 0x00, 0x7F, 0x00, 0x00,
|
||||
0x05, 0x00, 0x41, 0x36, 0x08, 0x00,
|
||||
0x05, 0x02, 0x01, 0x02, 0x04, 0x02,
|
||||
0x05, 0x70, 0x48, 0x44, 0x48, 0x70,
|
||||
0x05, 0x00, 0x0E, 0x11, 0x0E, 0x00,
|
||||
0x05, 0x00, 0x12, 0x1F, 0x10, 0x00,
|
||||
0x05, 0x00, 0x12, 0x19, 0x16, 0x00,
|
||||
0x05, 0x00, 0x11, 0x15, 0x0B, 0x00,
|
||||
0x05, 0x00, 0x07, 0x04, 0x1F, 0x00,
|
||||
0x05, 0x00, 0x17, 0x15, 0x09, 0x00,
|
||||
0x05, 0x00, 0x0E, 0x15, 0x09, 0x00,
|
||||
0x05, 0x00, 0x01, 0x1D, 0x03, 0x00,
|
||||
0x05, 0x00, 0x0A, 0x15, 0x0A, 0x00,
|
||||
0x05, 0x00, 0x12, 0x15, 0x0E, 0x00,
|
||||
0x05, 0x00, 0x04, 0x04, 0x04, 0x00,
|
||||
0x05, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x05, 0x3E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x3E, 0x3E, 0x00, 0x00, 0x00,
|
||||
0x05, 0x3E, 0x3E, 0x00, 0x3E, 0x00,
|
||||
0x05, 0x3E, 0x3E, 0x00, 0x3E, 0x3E,
|
||||
0x05, 0x58, 0x64, 0x04, 0x64, 0x58,
|
||||
0x05, 0x7F, 0x3E, 0x1C, 0x08, 0x7F,
|
||||
0x05, 0x7F, 0x08, 0x1C, 0x3E, 0x7F,
|
||||
0x05, 0x7F, 0x7F, 0x00, 0x7F, 0x7F,
|
||||
0x05, 0x08, 0x3E, 0x22, 0x22, 0x22,
|
||||
0x05, 0x22, 0x22, 0x22, 0x3E, 0x08,
|
||||
0x05, 0x40, 0x00, 0x40, 0x00, 0x40,
|
||||
0x05, 0x60, 0x00, 0x40, 0x00, 0x40,
|
||||
0x05, 0x60, 0x00, 0x70, 0x00, 0x40,
|
||||
0x05, 0x60, 0x00, 0x70, 0x00, 0x78,
|
||||
0x05, 0x7C, 0x00, 0x40, 0x00, 0x40,
|
||||
0x05, 0x7C, 0x00, 0x7E, 0x00, 0x40,
|
||||
0x05, 0x7C, 0x00, 0x7E, 0x00, 0x7F,
|
||||
0x05, 0x1C, 0x77, 0x41, 0x41, 0x41,
|
||||
0x05, 0x41, 0x41, 0x41, 0x41, 0x41,
|
||||
0x05, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x05, 0x1C, 0x77, 0x41, 0x5D, 0x5D,
|
||||
0x05, 0x41, 0x41, 0x41, 0x5D, 0x5D,
|
||||
0x05, 0x5D, 0x5D, 0x41, 0x5D, 0x5D,
|
||||
0x05, 0x5D, 0x5D, 0x41, 0x7F, 0x00,
|
||||
0x05, 0x22, 0x1C, 0x14, 0x1C, 0x22,
|
||||
0x05, 0x00, 0x08, 0x1C, 0x08, 0x00,
|
||||
0x05, 0x00, 0x00, 0x77, 0x00, 0x00,
|
||||
0x05, 0x46, 0x5D, 0x55, 0x5D, 0x31,
|
||||
0x05, 0x7C, 0x55, 0x54, 0x55, 0x44,
|
||||
0x05, 0x08, 0x08, 0x2A, 0x08, 0x08,
|
||||
0x05, 0x00, 0x14, 0x08, 0x14, 0x00,
|
||||
0x05, 0x08, 0x14, 0x22, 0x08, 0x14,
|
||||
0x05, 0x7F, 0x41, 0x71, 0x31, 0x1F,
|
||||
0x05, 0x03, 0x05, 0x7F, 0x05, 0x03,
|
||||
0x05, 0x22, 0x14, 0x7F, 0x55, 0x22,
|
||||
0x05, 0x02, 0x55, 0x7D, 0x05, 0x02,
|
||||
0x05, 0x06, 0x09, 0x09, 0x06, 0x00,
|
||||
0x05, 0x44, 0x44, 0x5F, 0x44, 0x44,
|
||||
0x05, 0x1C, 0x14, 0x1C, 0x22, 0x7F,
|
||||
0x05, 0x20, 0x3E, 0x61, 0x3E, 0x20,
|
||||
0x05, 0x20, 0x50, 0x3F, 0x02, 0x0C,
|
||||
0x05, 0x80, 0x7C, 0x20, 0x3C, 0x40,
|
||||
0x05, 0x44, 0x3C, 0x04, 0x7C, 0x44,
|
||||
0x05, 0x00, 0x00, 0x08, 0x00, 0x00,
|
||||
0x05, 0x38, 0x55, 0x54, 0x55, 0x18,
|
||||
0x05, 0x7E, 0x08, 0x10, 0x7F, 0x01,
|
||||
0x05, 0x08, 0x10, 0x08, 0x04, 0x02,
|
||||
0x05, 0x14, 0x08, 0x22, 0x14, 0x08,
|
||||
0x05, 0x0E, 0x06, 0x0A, 0x10, 0x20,
|
||||
0x05, 0x20, 0x10, 0x0A, 0x06, 0x0E,
|
||||
0x05, 0x38, 0x30, 0x28, 0x04, 0x02,
|
||||
0x05, 0x02, 0x04, 0x28, 0x30, 0x38,
|
||||
0x05, 0x7E, 0x11, 0x11, 0x11, 0x7E,
|
||||
0x05, 0x7F, 0x49, 0x49, 0x49, 0x31,
|
||||
0x05, 0x7F, 0x49, 0x49, 0x49, 0x36,
|
||||
0x05, 0x7F, 0x01, 0x01, 0x01, 0x03,
|
||||
0x05, 0xC0, 0x7F, 0x41, 0x7F, 0xC0,
|
||||
0x05, 0x7F, 0x49, 0x49, 0x49, 0x41,
|
||||
0x05, 0x77, 0x08, 0x7F, 0x08, 0x77,
|
||||
0x05, 0x41, 0x49, 0x49, 0x49, 0x36,
|
||||
0x05, 0x7F, 0x10, 0x08, 0x04, 0x7F,
|
||||
0x05, 0x7C, 0x21, 0x12, 0x09, 0x7C,
|
||||
0x05, 0x7F, 0x08, 0x14, 0x22, 0x41,
|
||||
0x05, 0x40, 0x3E, 0x01, 0x01, 0x7F,
|
||||
0x05, 0x7F, 0x02, 0x0C, 0x02, 0x7F,
|
||||
0x05, 0x7F, 0x08, 0x08, 0x08, 0x7F,
|
||||
0x05, 0x3E, 0x41, 0x41, 0x41, 0x3E,
|
||||
0x05, 0x7F, 0x01, 0x01, 0x01, 0x7F,
|
||||
0x05, 0x7F, 0x09, 0x09, 0x09, 0x06,
|
||||
0x05, 0x3E, 0x41, 0x41, 0x41, 0x22,
|
||||
0x05, 0x01, 0x01, 0x7F, 0x01, 0x01,
|
||||
0x05, 0x07, 0x48, 0x48, 0x48, 0x3F,
|
||||
0x05, 0x0E, 0x11, 0x7F, 0x11, 0x0E,
|
||||
0x05, 0x63, 0x14, 0x08, 0x14, 0x63,
|
||||
0x05, 0x7F, 0x40, 0x40, 0x7F, 0xC0,
|
||||
0x05, 0x07, 0x08, 0x08, 0x08, 0x7F,
|
||||
0x05, 0x7F, 0x40, 0x7F, 0x40, 0x7F,
|
||||
0x05, 0x7F, 0x40, 0x7F, 0x40, 0xFF,
|
||||
0x05, 0x01, 0x7F, 0x48, 0x48, 0x30,
|
||||
0x05, 0x7F, 0x48, 0x48, 0x30, 0x7F,
|
||||
0x05, 0x7F, 0x48, 0x48, 0x48, 0x30,
|
||||
0x05, 0x22, 0x41, 0x49, 0x49, 0x3E,
|
||||
0x05, 0x7F, 0x08, 0x3E, 0x41, 0x3E,
|
||||
0x05, 0x46, 0x29, 0x19, 0x09, 0x7F,
|
||||
0x05, 0x20, 0x54, 0x54, 0x54, 0x78,
|
||||
0x05, 0x3C, 0x4A, 0x4A, 0x49, 0x31,
|
||||
0x05, 0x7C, 0x54, 0x54, 0x54, 0x28,
|
||||
0x05, 0x7C, 0x04, 0x04, 0x04, 0x0C,
|
||||
0x05, 0xC0, 0x78, 0x44, 0x7C, 0xC0,
|
||||
0x05, 0x38, 0x54, 0x54, 0x54, 0x18,
|
||||
0x05, 0x6C, 0x10, 0x7C, 0x10, 0x6C,
|
||||
0x05, 0x44, 0x54, 0x54, 0x54, 0x28,
|
||||
0x05, 0x7C, 0x20, 0x10, 0x08, 0x7C,
|
||||
0x05, 0x7C, 0x40, 0x26, 0x10, 0x7C,
|
||||
0x05, 0x7C, 0x10, 0x10, 0x28, 0x44,
|
||||
0x05, 0x40, 0x38, 0x04, 0x04, 0x7C,
|
||||
0x05, 0x7C, 0x08, 0x10, 0x08, 0x7C,
|
||||
0x05, 0x7C, 0x10, 0x10, 0x10, 0x7C,
|
||||
0x05, 0x38, 0x44, 0x44, 0x44, 0x38,
|
||||
0x05, 0x7C, 0x04, 0x04, 0x04, 0x7C,
|
||||
0x05, 0x7C, 0x14, 0x14, 0x14, 0x08,
|
||||
0x05, 0x38, 0x44, 0x44, 0x44, 0x48,
|
||||
0x05, 0x04, 0x04, 0x7C, 0x04, 0x04,
|
||||
0x05, 0x0C, 0x50, 0x50, 0x50, 0x3C,
|
||||
0x05, 0x18, 0x24, 0xFC, 0x24, 0x18,
|
||||
0x05, 0x44, 0x28, 0x10, 0x28, 0x44,
|
||||
0x05, 0x7C, 0x40, 0x40, 0x7C, 0xC0,
|
||||
0x05, 0x0C, 0x10, 0x10, 0x10, 0x7C,
|
||||
0x05, 0x7C, 0x40, 0x7C, 0x40, 0x7C,
|
||||
0x05, 0x7C, 0x40, 0x7C, 0x40, 0xFC,
|
||||
0x05, 0x04, 0x7C, 0x50, 0x50, 0x20,
|
||||
0x05, 0x7C, 0x50, 0x50, 0x20, 0x7C,
|
||||
0x05, 0x7C, 0x50, 0x50, 0x50, 0x20,
|
||||
0x05, 0x28, 0x44, 0x54, 0x54, 0x38,
|
||||
0x05, 0x7C, 0x10, 0x38, 0x44, 0x38,
|
||||
0x05, 0x48, 0x34, 0x14, 0x14, 0x7C
|
||||
};
|
||||
#endif // YOFONTFONT5X7_H
|
||||
#endif //DSP_ILI9225
|
||||
@@ -71,5 +71,8 @@ void checkConnection(){
|
||||
display.putRequest({NEWMODE, PLAYER});
|
||||
if (playing) player.request.station = config.store.lastStation;
|
||||
checkMillis = millis();
|
||||
#ifdef MQTT_HOST
|
||||
connectToMqtt();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user