Merge 67e3735bae
into 58e909afed
|
@ -16,7 +16,7 @@ jobs:
|
|||
with:
|
||||
arduino-board-fqbn: esp32:esp32:watchy:Revision=v20,PartitionScheme=min_spiffs,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
|
||||
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
|
||||
arduino-platform: esp32:esp32@2.0.17
|
||||
arduino-platform: esp32:esp32@3.0.3
|
||||
required-libraries: Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
|
||||
set-build-path: true
|
||||
- uses: actions/upload-artifact@v3
|
||||
|
|
|
@ -14,9 +14,9 @@ jobs:
|
|||
- uses: actions/checkout@master
|
||||
- uses: ArminJo/arduino-test-compile@v3
|
||||
with:
|
||||
arduino-board-fqbn: esp32:esp32:watchy:Revision=${{ matrix.board-revisions }},PartitionScheme=min_spiffs,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
|
||||
arduino-board-fqbn: esp32:esp32:watchy:Revision=${{ matrix.board-revisions }},PartitionScheme=huge_app,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
|
||||
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
|
||||
arduino-platform: esp32:esp32@2.0.17
|
||||
arduino-platform: esp32:esp32@3.0.3
|
||||
required-libraries: Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
|
||||
set-build-path: true
|
||||
- name: Rename binaries with board revision
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
name: ReleaseV3
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v[0-9]+.[0-9]+.[0-9]+"
|
||||
jobs:
|
||||
release:
|
||||
name: Build and Release
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
board-revisions: [v30]
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- uses: ArminJo/arduino-test-compile@v3
|
||||
with:
|
||||
arduino-board-fqbn: esp32:esp32:esp32s3:FlashSize=8M,PartitionScheme=default_8MB,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
|
||||
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
|
||||
arduino-platform: esp32:esp32@3.0.3
|
||||
required-libraries: Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
|
||||
set-build-path: true
|
||||
- name: Rename binaries with board revision
|
||||
run: |
|
||||
parent_dir="${{ github.workspace }}/examples/WatchFaces"
|
||||
for dir in "$parent_dir"/*; do
|
||||
if [ -d "$dir" ]; then
|
||||
cd "$dir/build"
|
||||
for file in *; do
|
||||
name="${file%%.*}"
|
||||
ext="${file#$name.}"
|
||||
mv "$file" "$name-${{ matrix.board-revisions }}.$ext"
|
||||
done
|
||||
cd -
|
||||
fi
|
||||
done
|
||||
- uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
name: "Watchy Arduino Library ${{ github.ref_name }}"
|
||||
files: ${{ github.workspace }}/examples/WatchFaces/**/build/*.bin
|
|
@ -1,3 +1,5 @@
|
|||
.pio/
|
||||
.vscode/
|
||||
app/bin/
|
||||
app/pde.jar
|
||||
build/macosx/work/
|
||||
|
|
20
README.md
|
@ -2,29 +2,15 @@
|
|||
|
||||
![Watchy](https://watchy.sqfmi.com/img/watchy_render.png)
|
||||
|
||||
**Buy Watchy from [The Pi Hut](https://thepihut.com/collections/sqfmi), [Crowd Supply](https://www.crowdsupply.com/sqfmi/watchy), and [Mouser](https://www.mouser.com/ProductDetail/SQFMI/SQFMI-WATCHY-10?qs=DRkmTr78QARN9VSJRzqRxw%3D%3D)!**
|
||||
**Buy Watchy from [Mouser](https://www.mouser.com/ProductDetail/SQFMI/SQFMI-WATCHY-10?qs=DRkmTr78QARN9VSJRzqRxw%3D%3D), [The Pi Hut](https://thepihut.com/collections/sqfmi), and [Crowd Supply](https://www.crowdsupply.com/sqfmi/watchy)**
|
||||
|
||||
[**Watchy Case & Accessories**](https://shop.sqfmi.com)
|
||||
|
||||
Visit [**https://watchy.sqfmi.com**](https://watchy.sqfmi.com) for documentation, hardware design files, and more!
|
||||
|
||||
## Setup
|
||||
1. In the Arduino IDE Boards Manager, [install support for the ESP32](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html).
|
||||
* Arduino > Preferences > Additional Board Manager URLs
|
||||
* ```https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json```
|
||||
2. Install this library (search for **Watchy** in the library manager), and any other dependencies when prompted
|
||||
3. Check out the examples under ```Examples``` -> ```Watchy```
|
||||
4. Compile & Upload with these board settings:
|
||||
* Board: "Watchy"
|
||||
* Partition Scheme: "Huge App"
|
||||
* Board Revision: Choose your Watchy version
|
||||
* All Other Settings: leave to default
|
||||
|
||||
You may also have to install the [CP2104 USB to Serial drivers](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) if the port is not automatically detected.
|
||||
## Getting Started Guide
|
||||
Follow the instructions here https://watchy.sqfmi.com/docs/getting-started
|
||||
|
||||
### Have Fun! :)
|
||||
|
||||
|
||||
### Got Questions?
|
||||
|
||||
Join our [Discord](https://discord.gg/ZXDegGV8E7)
|
||||
|
|
|
@ -16,10 +16,15 @@ void Watchy7SEG::drawWatchFace(){
|
|||
drawSteps();
|
||||
drawWeather();
|
||||
drawBattery();
|
||||
display.drawBitmap(120, 77, WIFI_CONFIGURED ? wifi : wifioff, 26, 18, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.drawBitmap(116, 75, WIFI_CONFIGURED ? wifi : wifioff, 26, 18, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
if(BLE_CONFIGURED){
|
||||
display.drawBitmap(100, 75, bluetooth, 13, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.drawBitmap(100, 73, bluetooth, 13, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
if(USB_PLUGGED_IN){
|
||||
display.drawBitmap(140, 75, charge, 16, 18, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void Watchy7SEG::drawTime(){
|
||||
|
@ -81,25 +86,25 @@ void Watchy7SEG::drawSteps(){
|
|||
display.println(stepCount);
|
||||
}
|
||||
void Watchy7SEG::drawBattery(){
|
||||
display.drawBitmap(154, 73, battery, 37, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.fillRect(159, 78, 27, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);//clear battery segments
|
||||
display.drawBitmap(158, 73, battery, 37, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.fillRect(163, 78, 27, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);//clear battery segments
|
||||
int8_t batteryLevel = 0;
|
||||
float VBAT = getBatteryVoltage();
|
||||
if(VBAT > 4.1){
|
||||
if(VBAT > 4.0){
|
||||
batteryLevel = 3;
|
||||
}
|
||||
else if(VBAT > 3.95 && VBAT <= 4.1){
|
||||
else if(VBAT > 3.6 && VBAT <= 4.0){
|
||||
batteryLevel = 2;
|
||||
}
|
||||
else if(VBAT > 3.80 && VBAT <= 3.95){
|
||||
else if(VBAT > 3.20 && VBAT <= 3.6){
|
||||
batteryLevel = 1;
|
||||
}
|
||||
else if(VBAT <= 3.80){
|
||||
else if(VBAT <= 3.20){
|
||||
batteryLevel = 0;
|
||||
}
|
||||
|
||||
for(int8_t batterySegments = 0; batterySegments < batteryLevel; batterySegments++){
|
||||
display.fillRect(159 + (batterySegments * BATTERY_SEGMENT_SPACING), 78, BATTERY_SEGMENT_WIDTH, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.fillRect(163 + (batterySegments * BATTERY_SEGMENT_SPACING), 78, BATTERY_SEGMENT_WIDTH, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -189,6 +189,14 @@ const unsigned char wifioff [] PROGMEM = {
|
|||
0x01, 0xff, 0xc0, 0x00, 0x07, 0xe1, 0xc0, 0x00, 0x0f, 0xc0, 0x80, 0x00, 0x1f, 0x0c, 0x00, 0x00,
|
||||
0x3c, 0x1e, 0x00, 0x00, 0xf8, 0x0c, 0x00, 0x00
|
||||
};
|
||||
|
||||
// 'charge', 16x18px
|
||||
const unsigned char charge [] PROGMEM = {
|
||||
0x00, 0x10, 0x00, 0x70, 0x00, 0xe0, 0x01, 0xe0, 0x03, 0xe0, 0x07, 0xc0, 0x0f, 0xc0, 0x1f, 0xff,
|
||||
0x3f, 0xfe, 0x7f, 0xfc, 0x7f, 0xf8, 0x03, 0xf0, 0x03, 0xe0, 0x07, 0xc0, 0x07, 0x80, 0x07, 0x00,
|
||||
0x0e, 0x00, 0x0c, 0x00
|
||||
};
|
||||
|
||||
// 'chip', 48x32px
|
||||
const unsigned char chip [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
|
|
@ -0,0 +1,192 @@
|
|||
#include "WatchyPipBoy.h"
|
||||
|
||||
#define DARKMODE true
|
||||
#define STEPSGOAL 5000
|
||||
|
||||
const uint8_t WEATHER_ICON_WIDTH = 48;
|
||||
const uint8_t WEATHER_ICON_HEIGHT = 32;
|
||||
|
||||
RTC_DATA_ATTR uint8_t vaultBoyNum;
|
||||
|
||||
void WatchyPipBoy::drawWatchFace(){
|
||||
//top menu bar
|
||||
display.fillScreen(DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);
|
||||
display.setFont(&monofonto8pt7b);
|
||||
display.setTextColor(DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.setCursor(22, 14);
|
||||
display.print("STAT INV DATA MAP");
|
||||
display.drawBitmap(0, 10, menubar, 200, 9, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
|
||||
//bottom text
|
||||
display.setFont(&monofonto8pt7b);
|
||||
display.setCursor(10, 195);
|
||||
display.println("PIP-BOY 3000 ROBCO IND.");
|
||||
|
||||
drawTime();
|
||||
drawDate();
|
||||
drawSteps();
|
||||
drawWeather();
|
||||
drawBattery();
|
||||
// display.drawBitmap(120, 77, WIFI_CONFIGURED ? wifi : wifioff, 26, 18, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
// if(BLE_CONFIGURED){
|
||||
// display.drawBitmap(100, 75, bluetooth, 13, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
// }
|
||||
}
|
||||
|
||||
void WatchyPipBoy::drawTime(){
|
||||
|
||||
//draw random vault boy every 15mins
|
||||
if(currentTime.Minute % 15 == 0){
|
||||
vaultBoyNum = random(0, 3);
|
||||
}
|
||||
|
||||
switch(vaultBoyNum){
|
||||
case 0:
|
||||
display.drawBitmap(70, 50, vaultboy, 57, 100, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
break;
|
||||
case 1:
|
||||
display.drawBitmap(70, 50, vaultboypoint, 57, 100, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
break;
|
||||
case 2:
|
||||
display.drawBitmap(60, 50, vaultboysmile, 67, 100, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
break;
|
||||
}
|
||||
|
||||
//time border
|
||||
display.drawLine(137, 28, 200, 28, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.drawLine(137, 28, 137, 132, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.drawLine(137, 132, 157, 132, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.drawLine(180, 132, 200, 132, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
|
||||
//draw time
|
||||
display.setFont(&monofonto28pt7b);
|
||||
display.setCursor(141, 75);
|
||||
|
||||
int displayHour;
|
||||
if(HOUR_12_24==12){
|
||||
displayHour = ((currentTime.Hour+11)%12)+1;
|
||||
} else {
|
||||
displayHour = currentTime.Hour;
|
||||
}
|
||||
if(displayHour < 10){
|
||||
display.print("0");
|
||||
}
|
||||
display.print(displayHour);
|
||||
|
||||
display.setCursor(141, 125);
|
||||
if(currentTime.Minute < 10){
|
||||
display.print("0");
|
||||
}
|
||||
display.print(currentTime.Minute);
|
||||
|
||||
//AMPM
|
||||
display.setFont(&monofonto8pt7b);
|
||||
display.setCursor(160, 140);
|
||||
display.print(currentTime.Hour < 11 ? "AM" : "PM");
|
||||
}
|
||||
|
||||
void WatchyPipBoy::drawDate(){
|
||||
|
||||
display.setFont(&monofonto10pt7b);
|
||||
int16_t x1, y1;
|
||||
uint16_t w, h;
|
||||
String dayOfWeek = dayStr(currentTime.Wday);
|
||||
dayOfWeek.toUpperCase();
|
||||
display.setTextColor(DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);
|
||||
display.getTextBounds(dayOfWeek, 7, 42, &x1, &y1, &w, &h);
|
||||
display.setCursor(7, 42);
|
||||
display.fillRect(x1-2, y1-2, w+4, h+4, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.print(dayOfWeek);
|
||||
|
||||
display.setFont(&monofonto10pt7b);
|
||||
display.setTextColor(DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.setCursor(7, 62);
|
||||
display.print(monthShortStr(currentTime.Month));
|
||||
display.print(" ");
|
||||
display.print(currentTime.Day);
|
||||
display.setCursor(7, 78);
|
||||
display.print(tmYearToCalendar(currentTime.Year));
|
||||
}
|
||||
|
||||
void WatchyPipBoy::drawSteps(){
|
||||
// reset step counter at midnight
|
||||
if (currentTime.Hour == 0 && currentTime.Minute == 0){
|
||||
sensor.resetStepCounter();
|
||||
}
|
||||
|
||||
//draw progress bar
|
||||
uint32_t stepCount = sensor.getCounter();
|
||||
uint8_t progress = (uint8_t)(stepCount * 100.0 / STEPSGOAL);
|
||||
progress = progress > 100 ? 100 : progress;
|
||||
display.drawBitmap(60, 155, gauge, 73, 10, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.fillRect(60+13, 155+5, (progress/2)+5, 4, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
|
||||
//show step count
|
||||
display.setFont(&monofonto8pt7b);
|
||||
display.setTextColor(DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.setCursor(150, 160);
|
||||
display.print("STEPS");
|
||||
display.setCursor(150, 175);
|
||||
display.print(stepCount);
|
||||
}
|
||||
|
||||
void WatchyPipBoy::drawBattery(){
|
||||
display.drawBitmap(10, 150, battery, 37, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.fillRect(15, 155, 27, 11, DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);//clear battery segments
|
||||
int8_t batteryLevel = 0;
|
||||
float VBAT = getBatteryVoltage();
|
||||
if(VBAT > 4.1){
|
||||
batteryLevel = 3;
|
||||
}
|
||||
else if(VBAT > 3.95 && VBAT <= 4.1){
|
||||
batteryLevel = 2;
|
||||
}
|
||||
else if(VBAT > 3.80 && VBAT <= 3.95){
|
||||
batteryLevel = 1;
|
||||
}
|
||||
else if(VBAT <= 3.80){
|
||||
batteryLevel = 0;
|
||||
}
|
||||
|
||||
for(int8_t batterySegments = 0; batterySegments < batteryLevel; batterySegments++){
|
||||
display.fillRect(15 + (batterySegments * 9), 155, 7, 11, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
}
|
||||
|
||||
void WatchyPipBoy::drawWeather(){
|
||||
|
||||
weatherData currentWeather = getWeatherData();
|
||||
|
||||
int8_t temperature = currentWeather.temperature;
|
||||
int16_t weatherConditionCode = currentWeather.weatherConditionCode;
|
||||
|
||||
display.setFont(&monofonto10pt7b);
|
||||
display.setTextColor(DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
display.setCursor(12, 133);
|
||||
|
||||
|
||||
display.print(temperature);
|
||||
display.print(currentWeather.isMetric ? "C" : "F");
|
||||
const unsigned char* weatherIcon;
|
||||
|
||||
//https://openweathermap.org/weather-conditions
|
||||
if(weatherConditionCode > 801){//Cloudy
|
||||
weatherIcon = cloudy;
|
||||
}else if(weatherConditionCode == 801){//Few Clouds
|
||||
weatherIcon = cloudsun;
|
||||
}else if(weatherConditionCode == 800){//Clear
|
||||
weatherIcon = sunny;
|
||||
}else if(weatherConditionCode >=700){//Atmosphere
|
||||
weatherIcon = atmosphere;
|
||||
}else if(weatherConditionCode >=600){//Snow
|
||||
weatherIcon = snow;
|
||||
}else if(weatherConditionCode >=500){//Rain
|
||||
weatherIcon = rain;
|
||||
}else if(weatherConditionCode >=300){//Drizzle
|
||||
weatherIcon = drizzle;
|
||||
}else if(weatherConditionCode >=200){//Thunderstorm
|
||||
weatherIcon = thunderstorm;
|
||||
}else
|
||||
return;
|
||||
display.drawBitmap(5, 85, weatherIcon, WEATHER_ICON_WIDTH, WEATHER_ICON_HEIGHT, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
#ifndef WATCHY_PIP_BOY_H
|
||||
#define WATCHY_PIP_BOY_H
|
||||
|
||||
#include <Watchy.h>
|
||||
#include "monofonto28pt7b.h"
|
||||
#include "monofonto10pt7b.h"
|
||||
#include "monofonto8pt7b.h"
|
||||
#include "monofonto6pt7b.h"
|
||||
#include "img.h"
|
||||
#include "icons.h"
|
||||
|
||||
class WatchyPipBoy : public Watchy{
|
||||
using Watchy::Watchy;
|
||||
public:
|
||||
void drawWatchFace();
|
||||
void drawTime();
|
||||
void drawDate();
|
||||
void drawSteps();
|
||||
void drawWeather();
|
||||
void drawBattery();
|
||||
};
|
||||
|
||||
#endif
|
|
@ -0,0 +1,176 @@
|
|||
// 'battery', 37x21px
|
||||
const unsigned char battery [] PROGMEM = {
|
||||
0x3f, 0xff, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xe0,
|
||||
0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xf8, 0xe0, 0x00,
|
||||
0x00, 0x00, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00,
|
||||
0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0xf8,
|
||||
0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f,
|
||||
0xff, 0xff, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0x80
|
||||
};
|
||||
// 'bluetooth', 13x21px
|
||||
const unsigned char bluetooth [] PROGMEM = {
|
||||
0x1f, 0xc0, 0x3f, 0xe0, 0x7f, 0xf0, 0xfd, 0xf8, 0xfc, 0xf8, 0xfc, 0x78, 0xdd, 0x38, 0xcd, 0x98,
|
||||
0xe5, 0x38, 0xf0, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0x78, 0xe5, 0x38, 0xcd, 0x98, 0xfd, 0x38,
|
||||
0xfc, 0x78, 0xfc, 0xf8, 0x7d, 0xf0, 0x3f, 0xe0, 0x1f, 0xc0
|
||||
};
|
||||
// 'celsius', 26x20px
|
||||
const unsigned char celsius [] PROGMEM = {
|
||||
0x3f, 0x80, 0x1f, 0xc0, 0x7f, 0xc0, 0x3f, 0xc0, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
|
||||
0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
|
||||
0xc0, 0x60, 0x60, 0x00, 0xff, 0xc0, 0x40, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00,
|
||||
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00,
|
||||
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x3f, 0xc0
|
||||
};
|
||||
// 'fahrenheit', 26x20px
|
||||
const unsigned char fahrenheit [] PROGMEM = {
|
||||
0x3f, 0x80, 0x1f, 0xc0, 0x7f, 0xc0, 0x3f, 0xc0, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
|
||||
0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
|
||||
0xc0, 0x60, 0x60, 0x00, 0xff, 0xc0, 0x7f, 0xc0, 0x7f, 0x80, 0x3f, 0xc0, 0x00, 0x00, 0x60, 0x00,
|
||||
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00,
|
||||
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
// 'cloudsun', 48x32px
|
||||
const unsigned char cloudsun [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x84, 0x40, 0x00, 0x00, 0x00, 0x10, 0x44, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00,
|
||||
0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
|
||||
0x00, 0x00, 0x00, 0x31, 0x80, 0x61, 0x00, 0x07, 0xe0, 0x19, 0x00, 0x32, 0x00, 0x38, 0x38, 0x02,
|
||||
0x00, 0x10, 0x00, 0x60, 0x04, 0x02, 0x00, 0x10, 0x00, 0x80, 0x03, 0xf2, 0x00, 0x10, 0x01, 0x00,
|
||||
0x01, 0x9e, 0x00, 0x10, 0x03, 0x00, 0x00, 0x03, 0x00, 0x10, 0x02, 0x00, 0x00, 0x01, 0x80, 0x10,
|
||||
0x02, 0x00, 0x00, 0x00, 0x80, 0x32, 0x04, 0x00, 0x00, 0x00, 0x40, 0x61, 0x04, 0x00, 0x00, 0x00,
|
||||
0x70, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x30, 0x00, 0x00, 0x00, 0x02, 0x08, 0x60, 0x00,
|
||||
0x00, 0x00, 0x01, 0x04, 0x40, 0x00, 0x00, 0x00, 0x01, 0xc2, 0x40, 0x00, 0x00, 0x00, 0x00, 0xc0,
|
||||
0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, 0x00,
|
||||
0x00, 0x00, 0x03, 0x00, 0x10, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xfc, 0x00
|
||||
};
|
||||
// 'cloudy', 48x32px
|
||||
const unsigned char cloudy [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x18, 0x03, 0x00, 0x00, 0x00,
|
||||
0x00, 0x60, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x40, 0x00, 0x00, 0x01, 0x80, 0x00, 0x3f,
|
||||
0xc0, 0x00, 0x01, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x00, 0x02, 0x00,
|
||||
0x00, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0x00, 0x00,
|
||||
0x00, 0x10, 0x60, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, 0x80, 0x00,
|
||||
0x00, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x02,
|
||||
0x80, 0x00, 0x00, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x04, 0x40, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x20, 0x00,
|
||||
0x00, 0x00, 0x00, 0x08, 0x18, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xe0
|
||||
};
|
||||
// 'rain', 48x32px
|
||||
const unsigned char rain [] PROGMEM = {
|
||||
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
|
||||
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
|
||||
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
|
||||
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
|
||||
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
|
||||
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
|
||||
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
|
||||
0x00, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x21, 0x08, 0x42, 0x10, 0x00, 0x00, 0x42, 0x10, 0x84, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x10, 0x84, 0x21, 0x00, 0x00, 0x04, 0x21,
|
||||
0x08, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x84, 0x21, 0x08, 0x00, 0x00
|
||||
};
|
||||
// 'snow', 48x32px
|
||||
const unsigned char snow [] PROGMEM = {
|
||||
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x20,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x81, 0x02, 0x40, 0x00, 0x00, 0x02, 0x81, 0x02, 0x80, 0x00,
|
||||
0x00, 0x01, 0x81, 0x03, 0x00, 0x00, 0x00, 0x07, 0x81, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x41, 0x04,
|
||||
0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x11, 0x10, 0x00, 0x00, 0x00, 0x80,
|
||||
0x09, 0x20, 0x04, 0x00, 0x00, 0x40, 0x05, 0x40, 0x08, 0x00, 0x00, 0x20, 0x03, 0x80, 0x10, 0x00,
|
||||
0x03, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x20, 0x03, 0x80, 0x10, 0x00, 0x00, 0x40, 0x05, 0x40,
|
||||
0x08, 0x00, 0x00, 0x80, 0x09, 0x20, 0x04, 0x00, 0x00, 0x00, 0x11, 0x10, 0x00, 0x00, 0x00, 0x00,
|
||||
0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x41, 0x04, 0x00, 0x00, 0x00, 0x03, 0x81, 0x03, 0x80, 0x00,
|
||||
0x00, 0x01, 0x81, 0x03, 0x00, 0x00, 0x00, 0x02, 0x81, 0x02, 0x80, 0x00, 0x00, 0x04, 0x01, 0x00,
|
||||
0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x09, 0x20, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
};
|
||||
// 'sunny', 48x32px
|
||||
const unsigned char sunny [] PROGMEM = {
|
||||
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x18,
|
||||
0x20, 0x10, 0x60, 0x00, 0x00, 0x0c, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00,
|
||||
0x00, 0x02, 0x0f, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0c,
|
||||
0x00, 0x00, 0x00, 0x30, 0x80, 0x04, 0x30, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,
|
||||
0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
|
||||
0x03, 0xf2, 0x00, 0x01, 0x1f, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01,
|
||||
0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x30,
|
||||
0x80, 0x04, 0x30, 0x00, 0x00, 0x00, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00,
|
||||
0x00, 0x02, 0x0f, 0xc1, 0x00, 0x00, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00,
|
||||
0xc0, 0x00, 0x00, 0x18, 0x20, 0x10, 0x60, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00,
|
||||
0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
};
|
||||
// 'atmosphere', 48x32px
|
||||
const unsigned char atmosphere[] PROGMEM = {
|
||||
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
|
||||
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
|
||||
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
|
||||
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
|
||||
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
|
||||
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
|
||||
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x04, 0x07, 0xff, 0xf8, 0xf0, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
|
||||
0x00, 0x00, 0x00, 0x60, 0x00, 0x9f, 0x1f, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0xff, 0xfc, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
// 'drizzle', 48x32px
|
||||
const unsigned char drizzle[] PROGMEM = {
|
||||
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
|
||||
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
|
||||
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
|
||||
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
|
||||
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
|
||||
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
|
||||
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
|
||||
0x00, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x08, 0x00, 0x00
|
||||
};
|
||||
// 'thunderstorm', 48x32px
|
||||
const unsigned char thunderstorm[] PROGMEM = {
|
||||
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
|
||||
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
|
||||
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
|
||||
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x0f, 0x80,
|
||||
0x00, 0xc0, 0x03, 0x00, 0x0f, 0x80, 0x00, 0x20, 0x02, 0x00, 0x1f, 0x00, 0x00, 0x10, 0x04, 0x00,
|
||||
0x1e, 0x00, 0x00, 0x18, 0x04, 0x00, 0x3e, 0x00, 0x00, 0x08, 0x08, 0x00, 0x3c, 0x00, 0x00, 0x08,
|
||||
0x08, 0x00, 0x7c, 0x00, 0x00, 0x08, 0x04, 0x00, 0x78, 0x00, 0x00, 0x08, 0x04, 0x00, 0xf8, 0x00,
|
||||
0x00, 0x08, 0x04, 0x00, 0xff, 0x00, 0x00, 0x10, 0x02, 0x00, 0x1f, 0x00, 0x00, 0x30, 0x01, 0x80,
|
||||
0x1e, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||||
0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
// 'steps', 19x23px
|
||||
const unsigned char steps [] PROGMEM = {
|
||||
0x00, 0x03, 0xc0, 0x00, 0x07, 0xe0, 0x00, 0x07, 0xe0, 0x00, 0x0f, 0xe0, 0x78, 0x0f, 0xe0, 0xfc,
|
||||
0x0f, 0xe0, 0xfc, 0x0f, 0xe0, 0xfc, 0x0f, 0xe0, 0xfe, 0x0f, 0xe0, 0xfe, 0x07, 0xc0, 0xfe, 0x07,
|
||||
0xc0, 0xfe, 0x07, 0x80, 0xfe, 0x00, 0x00, 0x7c, 0x0e, 0x00, 0x7c, 0x0f, 0x80, 0x7c, 0x1f, 0x80,
|
||||
0x20, 0x1f, 0x00, 0x06, 0x0f, 0x00, 0x3e, 0x0e, 0x00, 0x3e, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x1e,
|
||||
0x00, 0x00, 0x1e, 0x00, 0x00
|
||||
};
|
||||
// 'wifi', 26x18px
|
||||
const unsigned char wifi [] PROGMEM = {
|
||||
0x00, 0x7f, 0x80, 0x00, 0x03, 0xff, 0xf0, 0x00, 0x0f, 0xff, 0xfc, 0x00, 0x1f, 0xc0, 0xfe, 0x00,
|
||||
0x7e, 0x00, 0x1f, 0x80, 0xf8, 0x3f, 0x07, 0xc0, 0x71, 0xff, 0xe3, 0x80, 0x23, 0xff, 0xf1, 0x00,
|
||||
0x07, 0xc0, 0xf8, 0x00, 0x0f, 0x00, 0x3c, 0x00, 0x06, 0x3f, 0x18, 0x00, 0x02, 0x7f, 0x90, 0x00,
|
||||
0x00, 0xff, 0xc0, 0x00, 0x00, 0xe1, 0xc0, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00,
|
||||
0x00, 0x1e, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00
|
||||
};
|
||||
// 'wifioff', 26x18px
|
||||
const unsigned char wifioff [] PROGMEM = {
|
||||
0x00, 0x7f, 0x87, 0xc0, 0x03, 0xff, 0xff, 0x80, 0x0f, 0xff, 0xff, 0x00, 0x1f, 0xc0, 0xfe, 0x00,
|
||||
0x7e, 0x00, 0x7f, 0x80, 0xf8, 0x3f, 0xf7, 0xc0, 0x71, 0xff, 0xe3, 0x80, 0x23, 0xff, 0xf1, 0x00,
|
||||
0x07, 0xcf, 0xf8, 0x00, 0x0f, 0x3e, 0x3c, 0x00, 0x06, 0x7f, 0x18, 0x00, 0x02, 0xff, 0x90, 0x00,
|
||||
0x01, 0xff, 0xc0, 0x00, 0x07, 0xe1, 0xc0, 0x00, 0x0f, 0xc0, 0x80, 0x00, 0x1f, 0x0c, 0x00, 0x00,
|
||||
0x3c, 0x1e, 0x00, 0x00, 0xf8, 0x0c, 0x00, 0x00
|
||||
};
|
|
@ -0,0 +1,198 @@
|
|||
// 'vaultboy', 57x100px
|
||||
const unsigned char vaultboy [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xff, 0xf0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x87, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x6b, 0xf8, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xfb, 0x1c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf7, 0xff, 0xe6, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x0f, 0xff, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0xf7, 0xe7, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x27, 0xf3, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xff, 0xef, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xf7, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0xe3, 0xe1, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x46, 0xe7, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0xff, 0xd4, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x79, 0xff, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0xff, 0xec, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7d, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7d, 0xf7, 0xfe, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x4f, 0xe3, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x7b, 0xfc, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x4f, 0xe3, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x1f, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0xff, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x0f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x19, 0xf3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x0f, 0x38, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xcf, 0xf8, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0x07, 0xff, 0x00, 0x00, 0x00,
|
||||
0x00, 0x03, 0xde, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x07, 0x9c, 0xff, 0xff, 0xe0, 0x00, 0x00,
|
||||
0x00, 0x0f, 0xbc, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1d, 0xbc, 0xff, 0xff, 0xf8, 0x00, 0x00,
|
||||
0x00, 0x19, 0xbd, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x39, 0x3d, 0xff, 0xff, 0xfe, 0x00, 0x00,
|
||||
0x00, 0x3b, 0x7d, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7b, 0x7d, 0xff, 0xff, 0xff, 0x00, 0x00,
|
||||
0x00, 0x7b, 0x7d, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0xfb, 0x7d, 0xff, 0xff, 0xff, 0xc0, 0x00,
|
||||
0x01, 0xfb, 0x7d, 0xff, 0xc7, 0xff, 0xc0, 0x00, 0x01, 0xfb, 0x7d, 0xff, 0xe1, 0xff, 0xe0, 0x00,
|
||||
0x03, 0xfb, 0x7d, 0xff, 0xf8, 0xff, 0xf0, 0x00, 0x03, 0xfb, 0x7d, 0xff, 0xfc, 0x7f, 0xf8, 0x00,
|
||||
0x07, 0xfb, 0x7d, 0xff, 0xfe, 0x3f, 0xf8, 0x00, 0x07, 0xf9, 0x7d, 0xff, 0xfe, 0x1f, 0xf8, 0x00,
|
||||
0x07, 0xf9, 0x7d, 0xff, 0xfe, 0x1f, 0xfc, 0x00, 0x0f, 0xf9, 0x7d, 0xff, 0xf8, 0x0f, 0xfc, 0x00,
|
||||
0x0f, 0xf8, 0x3c, 0xff, 0xc2, 0x0f, 0xfc, 0x00, 0x0f, 0xf8, 0xfc, 0xf8, 0x1e, 0x07, 0xfe, 0x00,
|
||||
0x1f, 0xf0, 0xfe, 0x03, 0xfe, 0x03, 0xfe, 0x00, 0x1f, 0xe0, 0xff, 0xff, 0xfe, 0x03, 0xfe, 0x00,
|
||||
0x3f, 0xc0, 0xff, 0xff, 0xfe, 0x03, 0xfe, 0x00, 0x20, 0x00, 0xff, 0xff, 0xf8, 0x01, 0xfe, 0x00,
|
||||
0x0f, 0x00, 0x7f, 0xff, 0xc2, 0x01, 0xfc, 0x00, 0x1f, 0x80, 0x3f, 0xfe, 0x1e, 0x01, 0xf8, 0x00,
|
||||
0x3f, 0x80, 0x07, 0xc0, 0xfe, 0x00, 0x03, 0x00, 0x3f, 0x80, 0x70, 0x1f, 0xfe, 0x02, 0x1f, 0x00,
|
||||
0x7b, 0x80, 0x7f, 0xff, 0xfe, 0x07, 0xff, 0x00, 0x7b, 0x80, 0x27, 0xff, 0xfe, 0x07, 0xfe, 0x00,
|
||||
0x7b, 0x80, 0x27, 0xff, 0xfc, 0x07, 0xfe, 0x00, 0x7b, 0x00, 0x07, 0xff, 0xfc, 0x03, 0xfc, 0x00,
|
||||
0x3b, 0x00, 0x07, 0xff, 0xfc, 0x03, 0xd8, 0x00, 0x3c, 0x00, 0x0f, 0xff, 0xf8, 0x01, 0x90, 0x00,
|
||||
0x14, 0x00, 0x0f, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x17, 0x00, 0x0f, 0xff, 0xf8, 0x00, 0x00, 0x00,
|
||||
0x0b, 0x00, 0x1f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x09, 0x00, 0x1f, 0xff, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xff, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xce, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xff, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0x1f, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xff, 0xfe, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfc, 0x7f, 0x80, 0x00, 0x00,
|
||||
0x00, 0x01, 0xff, 0xf8, 0xff, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xf1, 0xff, 0x80, 0x00, 0x00,
|
||||
0x00, 0x03, 0xff, 0xf1, 0xff, 0x80, 0x00, 0x00, 0x00, 0x07, 0xff, 0xc0, 0xff, 0xc0, 0x00, 0x00,
|
||||
0x00, 0x07, 0xff, 0x80, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x00, 0x7f, 0xc0, 0x00, 0x00,
|
||||
0x0c, 0x0f, 0xfe, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x06, 0xc7, 0xfc, 0x00, 0x1f, 0xe0, 0x00, 0x00,
|
||||
0x07, 0x43, 0xfc, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x07, 0xa9, 0xf0, 0x00, 0x0f, 0xc0, 0x00, 0x00,
|
||||
0x03, 0x84, 0xe0, 0x00, 0x0e, 0x20, 0x00, 0x00, 0x03, 0xd6, 0x60, 0x00, 0x00, 0xe0, 0x00, 0x00,
|
||||
0x01, 0xcf, 0x00, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x6f, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00,
|
||||
0x00, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
// 'vaultboypoint', 57x100px
|
||||
const unsigned char vaultboypoint [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0xe7, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x26, 0x43, 0xf8, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3c, 0x1c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x39, 0xf1, 0xec, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0xf1, 0xec, 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0xef, 0xcc, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x2f, 0xff, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0xf7, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x1d, 0xf3, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x13, 0x73, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x38, 0x1e, 0x77, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x1e, 0xff, 0xe8, 0x00, 0x00, 0x00,
|
||||
0x00, 0xfe, 0x1e, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x1f, 0x71, 0xfc, 0x00, 0x00, 0x00,
|
||||
0x00, 0x3f, 0x9f, 0xe5, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x93, 0x1b, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0xc3, 0xe7, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x03, 0xec, 0x0f, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0xe7, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0xff, 0x04, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x61, 0xff, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x10, 0x60, 0x7f, 0x2f, 0x80, 0x00, 0x00,
|
||||
0x00, 0x3c, 0xc1, 0x1e, 0x6f, 0xe0, 0x00, 0x00, 0x00, 0x1c, 0x00, 0xc0, 0xef, 0xf8, 0x00, 0x00,
|
||||
0x00, 0x1c, 0x24, 0x01, 0xdf, 0xfc, 0x00, 0x00, 0x00, 0x1c, 0xe6, 0x00, 0x1f, 0xff, 0x00, 0x00,
|
||||
0x00, 0x08, 0x30, 0x87, 0x8f, 0xff, 0xc0, 0x00, 0x00, 0x09, 0x8c, 0x8c, 0xc7, 0xbf, 0xe0, 0x00,
|
||||
0x00, 0x02, 0x66, 0x8f, 0xa7, 0x07, 0x80, 0x00, 0x00, 0x1e, 0x76, 0x2f, 0xf2, 0x71, 0x00, 0x00,
|
||||
0x00, 0x3e, 0xf4, 0x4f, 0x78, 0xf8, 0x00, 0x00, 0x00, 0x3f, 0xf4, 0x40, 0x79, 0xfc, 0x00, 0x00,
|
||||
0x00, 0x3d, 0xe5, 0x19, 0xf8, 0xfc, 0x00, 0x00, 0x00, 0x1c, 0x4d, 0xdf, 0xf8, 0x7c, 0x00, 0x00,
|
||||
0x00, 0x3f, 0x05, 0xcf, 0xf8, 0x3c, 0x00, 0x00, 0x00, 0x3f, 0xcd, 0xc7, 0xf9, 0x3c, 0x00, 0x00,
|
||||
0x00, 0x7f, 0x8d, 0xdf, 0xf9, 0x3c, 0x00, 0x00, 0x00, 0x78, 0x1d, 0xce, 0xfb, 0x3c, 0x00, 0x00,
|
||||
0x01, 0x7c, 0xdd, 0xe0, 0xf3, 0xbc, 0x00, 0x00, 0x01, 0x6f, 0x1d, 0xee, 0x07, 0xbc, 0x00, 0x00,
|
||||
0x03, 0x30, 0x1d, 0xee, 0x0f, 0xb8, 0x00, 0x00, 0x03, 0x91, 0x1d, 0xde, 0xff, 0xf8, 0x00, 0x00,
|
||||
0x03, 0xc0, 0x1d, 0x9c, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xe3, 0x9d, 0xb8, 0xff, 0xf0, 0x00, 0x00,
|
||||
0x03, 0xff, 0x9d, 0x72, 0x7f, 0xf0, 0x00, 0x00, 0x03, 0xff, 0x1c, 0xf6, 0x7f, 0xe0, 0x00, 0x00,
|
||||
0x01, 0xff, 0x1d, 0xe6, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0xfe, 0x1b, 0xc7, 0x1f, 0x00, 0x00, 0x00,
|
||||
0x00, 0x38, 0x03, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x31, 0xc0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3e, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xff, 0xe6, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7e, 0x20, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0x0f, 0xe0, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xfe, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7c, 0xff, 0xf0, 0x10, 0x00, 0x00, 0x00, 0x00, 0x70, 0x0f, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0xc0, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x07, 0x80, 0x00, 0x00,
|
||||
0x00, 0x00, 0x1f, 0xf0, 0x1f, 0xc2, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xc0, 0x7f, 0xc0, 0x00, 0x00,
|
||||
0x00, 0x00, 0x1f, 0x01, 0xff, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x10, 0x07, 0xff, 0xe0, 0x00, 0x00,
|
||||
0x00, 0x00, 0x40, 0x3f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xfb, 0xff, 0xf0, 0x40, 0x00,
|
||||
0x00, 0x00, 0x5f, 0xfd, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x5f, 0xfd, 0xff, 0xf8, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xf8, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x7f, 0xf8, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xf8, 0x7f, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x3f, 0xfc, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xf0, 0x1f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x1f, 0xfe, 0x00, 0x00,
|
||||
0x00, 0x00, 0x1f, 0xe0, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x07, 0xff, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xe0, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x03, 0xff, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xe0, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x01, 0xff, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xc0, 0x01, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0xff, 0x80, 0x00,
|
||||
0x00, 0x00, 0x7f, 0xc0, 0x00, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0x7f, 0x80, 0x00,
|
||||
0x00, 0x00, 0x1f, 0x80, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0xff, 0x80, 0x00, 0x07, 0x80, 0x00, 0x00, 0x07, 0xe0, 0x00, 0x00, 0x0f, 0x80, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
// 'vaultboysmile', 67x100px
|
||||
const unsigned char vaultboysmile [] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
|
||||
0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x02, 0x7f, 0x1f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x0f, 0xe0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0xcc, 0x64, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x9f, 0xf0, 0x18, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3f, 0x9f,
|
||||
0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xef, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||||
0xff, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x7f, 0xff, 0x98, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x03, 0x3f, 0x1f, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x37, 0x8f, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x07, 0xe7, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xcf, 0xff, 0x80,
|
||||
0x00, 0x00, 0x03, 0x80, 0x00, 0x07, 0xcf, 0xff, 0x60, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xcf,
|
||||
0xff, 0xc0, 0x00, 0x00, 0x07, 0x00, 0x00, 0x07, 0xff, 0x3f, 0xe0, 0x00, 0x00, 0x0f, 0x00, 0x00,
|
||||
0x06, 0xfe, 0x1f, 0xe0, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x31, 0x9f, 0xe0, 0x00, 0x00, 0x07,
|
||||
0x00, 0x00, 0x02, 0x7e, 0x1f, 0x80, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0x80, 0xff, 0x00, 0x00,
|
||||
0x00, 0x03, 0x80, 0x00, 0x01, 0xe7, 0xfe, 0x00, 0x00, 0x00, 0x38, 0x60, 0x00, 0x01, 0xe7, 0xfc,
|
||||
0x00, 0x00, 0x00, 0x7f, 0x30, 0x00, 0x00, 0xff, 0xf8, 0x00, 0x00, 0x00, 0xff, 0xb0, 0x00, 0x00,
|
||||
0x7f, 0xf3, 0x00, 0x00, 0x00, 0x6f, 0xb8, 0x00, 0x00, 0x3f, 0xeb, 0x80, 0x00, 0x00, 0x00, 0xb9,
|
||||
0x80, 0x01, 0x0f, 0xf3, 0xb0, 0x00, 0x00, 0x7e, 0x39, 0xff, 0xff, 0x60, 0x67, 0x3c, 0x00, 0x00,
|
||||
0x7f, 0xb0, 0xff, 0xff, 0x70, 0x0f, 0x3e, 0x00, 0x00, 0x7f, 0x84, 0xff, 0xff, 0x3e, 0x3e, 0x7f,
|
||||
0x80, 0x00, 0x00, 0x15, 0xff, 0xff, 0x9f, 0xf8, 0xff, 0xc0, 0x00, 0x3f, 0x25, 0xff, 0xff, 0xdf,
|
||||
0xf3, 0xff, 0xe0, 0x00, 0x3f, 0xa9, 0xff, 0xef, 0xdf, 0x87, 0xff, 0xf0, 0x00, 0x1f, 0xab, 0xff,
|
||||
0xcf, 0xdf, 0x1f, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xfe, 0x0f, 0xdf, 0x7f, 0xff, 0xfc, 0x00, 0x00,
|
||||
0x27, 0xf0, 0x0f, 0x9f, 0x7f, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x9e, 0x7f, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x1f, 0x9e, 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xbe, 0x7f,
|
||||
0x9f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x0f, 0xbe, 0x7f, 0xcf, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x0f,
|
||||
0xbe, 0x7f, 0xe0, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0xbe, 0x7f, 0xf2, 0x1f, 0xc0, 0x00, 0x00,
|
||||
0x00, 0x0f, 0x3e, 0x7f, 0xf3, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x0f, 0x3e, 0xff, 0xf6, 0xff, 0x80,
|
||||
0x00, 0x00, 0x00, 0x0f, 0x3e, 0xff, 0xe4, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x3e, 0xff, 0xe5,
|
||||
0xff, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x3e, 0xff, 0xe1, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x3e,
|
||||
0xff, 0xeb, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3e, 0xff, 0xeb, 0xfe, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x3e, 0xff, 0x0b, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x7e, 0x70, 0x03, 0xfc, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0xff, 0x00, 0xe1, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xe4, 0xf0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff,
|
||||
0xef, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xef, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07,
|
||||
0xff, 0xff, 0xef, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe7, 0x90, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x3f, 0xff, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x10, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x03, 0xfc, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xf8,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff,
|
||||
0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0xff, 0x7f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0x3f, 0xff, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0x3f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0x1f,
|
||||
0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0x1f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07,
|
||||
0xfe, 0x0f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x0f, 0xff, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0xfe, 0x07, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x03, 0xff, 0xc0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x0f, 0xfe, 0x03, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x01, 0xff,
|
||||
0xe0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x01, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc,
|
||||
0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0f, 0xfc, 0x00, 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x00, 0x7f, 0xf0, 0x00, 0x00,
|
||||
0x00, 0x00, 0x0f, 0xf8, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf8, 0x00, 0x3f, 0xf0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0xf8, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf8, 0x00,
|
||||
0x1f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf8, 0x00, 0x1f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x0f,
|
||||
0xf8, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xe0, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x30, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x00, 0x00, 0x18, 0x00,
|
||||
0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||||
0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
// 'menu bar', 200x9px
|
||||
const unsigned char menubar [] PROGMEM = {
|
||||
0x00, 0x03, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff
|
||||
};
|
||||
|
||||
// 'gauge', 73x10px
|
||||
const unsigned char gauge [] PROGMEM = {
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0x80, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x1f, 0xc0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x0f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xf9, 0x80, 0x07, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x80, 0x03, 0xc8, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x09, 0x80, 0x01, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x80,
|
||||
0x00, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x80, 0x00, 0x4f, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xf9, 0x80
|
||||
};
|
After Width: | Height: | Size: 182 B |
After Width: | Height: | Size: 314 B |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 103 KiB |
After Width: | Height: | Size: 8.5 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 20 KiB |
|
@ -0,0 +1,201 @@
|
|||
const uint8_t monofonto10pt7bBitmaps[] PROGMEM = {
|
||||
0x00, 0xFF, 0xFF, 0xC3, 0xF0, 0x99, 0x99, 0x90, 0x0D, 0x82, 0x60, 0x98,
|
||||
0x64, 0x3F, 0xDF, 0xE1, 0x30, 0xC8, 0x7F, 0xBF, 0xC2, 0x60, 0x98, 0x64,
|
||||
0x1B, 0x00, 0x18, 0x18, 0x3E, 0x7F, 0xE7, 0xC3, 0xE0, 0xF0, 0x7C, 0x3F,
|
||||
0x0F, 0x03, 0x03, 0xE3, 0xFF, 0x7E, 0x18, 0x18, 0xF0, 0xE4, 0x29, 0x12,
|
||||
0x4C, 0x92, 0x25, 0x8F, 0x7C, 0x29, 0x1A, 0x44, 0x93, 0x24, 0x89, 0x42,
|
||||
0x70, 0xF0, 0x1C, 0x0F, 0x83, 0x60, 0xD8, 0x36, 0x0F, 0x03, 0x81, 0xF2,
|
||||
0x6F, 0xF1, 0xEC, 0x73, 0x9C, 0x7F, 0x8F, 0x70, 0xFF, 0xC0, 0x19, 0x8C,
|
||||
0xC6, 0x31, 0x98, 0xC6, 0x31, 0x84, 0x31, 0x8C, 0x61, 0x8E, 0x20, 0x8C,
|
||||
0xC6, 0x66, 0x63, 0x33, 0x33, 0x26, 0x66, 0x6C, 0xC8, 0x0C, 0x03, 0x08,
|
||||
0xC7, 0xB7, 0x7F, 0x83, 0x01, 0xA0, 0xCE, 0x71, 0x00, 0x18, 0x18, 0x18,
|
||||
0x18, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0x6D, 0xB5, 0x80, 0xFF, 0xF0, 0xFC,
|
||||
0x00, 0xC0, 0x60, 0x18, 0x04, 0x03, 0x00, 0xC0, 0x60, 0x18, 0x04, 0x03,
|
||||
0x00, 0x80, 0x60, 0x18, 0x0C, 0x03, 0x00, 0x80, 0x60, 0x18, 0x0C, 0x00,
|
||||
0x3C, 0x7E, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7,
|
||||
0x7E, 0x3C, 0x1B, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0x3C,
|
||||
0x7E, 0xE7, 0xE3, 0x07, 0x07, 0x0E, 0x0E, 0x1C, 0x1C, 0x38, 0x30, 0x7F,
|
||||
0xFF, 0x3C, 0x7E, 0xE7, 0xC3, 0x03, 0x07, 0x0E, 0x0E, 0x03, 0x03, 0xC3,
|
||||
0xE7, 0x7E, 0x3C, 0x1E, 0x1E, 0x16, 0x36, 0x26, 0x66, 0x46, 0xC6, 0x86,
|
||||
0xFF, 0xFF, 0x06, 0x06, 0x06, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xFE, 0xFF,
|
||||
0xE7, 0x03, 0x03, 0x43, 0xE7, 0xFE, 0x3C, 0x0E, 0x1C, 0x18, 0x38, 0x30,
|
||||
0x7C, 0x7E, 0xE7, 0xC3, 0xC3, 0xC3, 0xE7, 0x7E, 0x3C, 0xFF, 0xFF, 0x07,
|
||||
0x06, 0x0E, 0x0E, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x70, 0x70, 0xF0, 0x3C,
|
||||
0x7E, 0xE7, 0xC3, 0xE7, 0x7E, 0x7E, 0xE7, 0xC3, 0xC3, 0xC3, 0xE7, 0x7E,
|
||||
0x3C, 0x3C, 0x7E, 0xE7, 0xC3, 0xC3, 0xE7, 0xFF, 0x7E, 0x0E, 0x0C, 0x1C,
|
||||
0x38, 0x38, 0x70, 0xFC, 0x03, 0xF0, 0x6D, 0x80, 0x03, 0x6F, 0x64, 0x01,
|
||||
0x07, 0x1C, 0x70, 0xC0, 0xC0, 0x70, 0x1E, 0x07, 0x01, 0xFF, 0xFF, 0x00,
|
||||
0x00, 0xFF, 0xFF, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x03, 0x0E, 0x78, 0xE0,
|
||||
0x80, 0x3C, 0x7E, 0x66, 0xE7, 0x07, 0x0E, 0x1C, 0x18, 0x38, 0x00, 0x00,
|
||||
0x18, 0x38, 0x18, 0x1F, 0x0C, 0x66, 0x09, 0x01, 0x40, 0x73, 0x9D, 0x27,
|
||||
0x49, 0xDA, 0xF3, 0x64, 0x01, 0x80, 0x30, 0x06, 0x01, 0x00, 0x18, 0x3C,
|
||||
0x3C, 0x3C, 0x3C, 0x7C, 0x7E, 0x7E, 0x6E, 0x66, 0xFF, 0xFF, 0xE7, 0xC7,
|
||||
0xFC, 0xFE, 0xC7, 0xC7, 0xC7, 0xC6, 0xFC, 0xFE, 0xC7, 0xC7, 0xC7, 0xC7,
|
||||
0xFE, 0xFC, 0x3C, 0x7E, 0xE7, 0xC7, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0,
|
||||
0xE7, 0xE7, 0x7E, 0x3C, 0xFC, 0xFE, 0xC7, 0xC7, 0xC3, 0xC3, 0xC3, 0xC3,
|
||||
0xC3, 0xC3, 0xC3, 0xC7, 0xFE, 0xFC, 0xFF, 0xFF, 0xE0, 0xE0, 0xE0, 0xE0,
|
||||
0xFE, 0xFE, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xE0,
|
||||
0xE0, 0xE0, 0xFE, 0xFE, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x3C, 0x7E,
|
||||
0xE7, 0xE7, 0xC0, 0xC0, 0xCF, 0xCF, 0xC3, 0xC3, 0xC3, 0xE7, 0x7F, 0x3B,
|
||||
0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xE7, 0xE7,
|
||||
0xE7, 0xE7, 0xFF, 0xF3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0xFF,
|
||||
0xF0, 0x0F, 0x0F, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07,
|
||||
0x0E, 0xFE, 0xFC, 0xE7, 0xE6, 0xE6, 0xEC, 0xEC, 0xF8, 0xF8, 0xF8, 0xFC,
|
||||
0xEC, 0xEE, 0xE6, 0xE7, 0xE7, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0,
|
||||
0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xE3, 0xE7, 0xE7, 0xE7, 0xFF,
|
||||
0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xC3, 0xC3, 0xE3, 0xE3, 0xF3,
|
||||
0xF3, 0xF3, 0xFB, 0xDB, 0xDF, 0xDF, 0xCF, 0xCF, 0xC7, 0xC7, 0xC7, 0x3C,
|
||||
0x7E, 0xE7, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xE7, 0x7E,
|
||||
0x3C, 0xFC, 0xFF, 0xE7, 0xE3, 0xE3, 0xE3, 0xE7, 0xFF, 0xFC, 0xE0, 0xE0,
|
||||
0xE0, 0xE0, 0xE0, 0x3C, 0x7E, 0xE7, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3,
|
||||
0xC3, 0xC3, 0xE7, 0x7E, 0x3C, 0x0E, 0x06, 0x06, 0xFC, 0x7F, 0x39, 0xDC,
|
||||
0xEE, 0x37, 0x3B, 0x9D, 0xFC, 0xFC, 0x7E, 0x3B, 0x9D, 0xCE, 0x77, 0x3C,
|
||||
0x3C, 0x7E, 0xE7, 0xC3, 0xE0, 0xF0, 0x7C, 0x1F, 0x07, 0x03, 0xC3, 0xF7,
|
||||
0x7F, 0x3C, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18,
|
||||
0x18, 0x18, 0x18, 0x18, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3,
|
||||
0xC3, 0xC3, 0xC3, 0xE7, 0xFF, 0x3C, 0xE1, 0xD8, 0x67, 0x19, 0xCE, 0x73,
|
||||
0x8C, 0xC3, 0x30, 0xFC, 0x3F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x03, 0x00,
|
||||
0xE1, 0xF8, 0x76, 0x19, 0x96, 0x6D, 0x9B, 0x66, 0xD9, 0xB6, 0x7F, 0x9F,
|
||||
0xE3, 0xF0, 0xCC, 0x33, 0x0C, 0xC0, 0xE7, 0xE7, 0x66, 0x7E, 0x7E, 0x3C,
|
||||
0x3C, 0x3C, 0x3C, 0x7E, 0x7E, 0x66, 0xE7, 0xE7, 0xE1, 0xDC, 0xE7, 0x38,
|
||||
0xCC, 0x3F, 0x0F, 0xC1, 0xE0, 0x78, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C,
|
||||
0x03, 0x00, 0x7F, 0xBF, 0xC0, 0xC0, 0xE0, 0x60, 0x70, 0x38, 0x38, 0x1C,
|
||||
0x1C, 0x0E, 0x06, 0x07, 0xFF, 0xFC, 0xFF, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC,
|
||||
0xCC, 0xCC, 0xCC, 0xFF, 0xC0, 0x18, 0x06, 0x00, 0x80, 0x30, 0x0C, 0x01,
|
||||
0x80, 0x60, 0x08, 0x03, 0x00, 0x40, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x04,
|
||||
0x01, 0x80, 0x60, 0x0C, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33,
|
||||
0x33, 0xFF, 0x18, 0x3C, 0x3C, 0x66, 0x66, 0xC3, 0xC3, 0xFF, 0xFF, 0xF0,
|
||||
0xE6, 0x33, 0x3E, 0x7F, 0xE7, 0x03, 0x7F, 0xFF, 0xE3, 0xE7, 0xFF, 0x7B,
|
||||
0xC0, 0xC0, 0xC0, 0xC0, 0xCE, 0xDF, 0xE7, 0xE3, 0xC3, 0xC3, 0xE3, 0xE7,
|
||||
0xDF, 0xCE, 0x1E, 0x7F, 0xF2, 0xC0, 0xC0, 0xC0, 0xC0, 0xF2, 0x7F, 0x3E,
|
||||
0x03, 0x03, 0x03, 0x03, 0x73, 0xFB, 0xE7, 0xC7, 0xC3, 0xC3, 0xC7, 0xE7,
|
||||
0xFB, 0x73, 0x3C, 0x7E, 0xE7, 0xC3, 0xFF, 0xC0, 0xC0, 0xE7, 0x7E, 0x3C,
|
||||
0x1F, 0x3F, 0x38, 0x30, 0xFE, 0xFE, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
||||
0x30, 0x30, 0x3B, 0x7B, 0xE7, 0xC7, 0xC3, 0xC3, 0xC7, 0xE7, 0x7B, 0x3B,
|
||||
0x03, 0xC7, 0xFE, 0x7C, 0xC0, 0xC0, 0xC0, 0xC0, 0xCE, 0xDF, 0xE7, 0xE3,
|
||||
0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x30, 0xC3, 0x00, 0xF3, 0xC3, 0x0C,
|
||||
0x30, 0xC3, 0x0C, 0xFF, 0xF0, 0x18, 0x71, 0x80, 0xFF, 0xF1, 0xC7, 0x1C,
|
||||
0x71, 0xC7, 0x1C, 0x71, 0xC6, 0xFB, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC7,
|
||||
0xCE, 0xCC, 0xD8, 0xF8, 0xD8, 0xDC, 0xCE, 0xCE, 0xC7, 0xFF, 0xCE, 0x73,
|
||||
0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xF7, 0xFF, 0xDB, 0xDB, 0xDB, 0xDB,
|
||||
0xDB, 0xDB, 0xDB, 0xDB, 0xCE, 0xDF, 0xE7, 0xE3, 0xC3, 0xC3, 0xC3, 0xC3,
|
||||
0xC3, 0xC3, 0x3C, 0x7E, 0xE7, 0xC3, 0xC3, 0xC3, 0xC3, 0xE7, 0x7E, 0x3C,
|
||||
0xDE, 0xFE, 0xE7, 0xC7, 0xC3, 0xC3, 0xC7, 0xE7, 0xFE, 0xDE, 0xC0, 0xC0,
|
||||
0xC0, 0xC0, 0x73, 0xFB, 0xE7, 0xC7, 0xC3, 0xC3, 0xC7, 0xE7, 0xFB, 0x73,
|
||||
0x03, 0x03, 0x03, 0x03, 0xCE, 0xDF, 0xE6, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0,
|
||||
0xE0, 0xE0, 0x3C, 0x7E, 0xE6, 0xE0, 0x78, 0x1E, 0x07, 0xE7, 0x7E, 0x3C,
|
||||
0x30, 0x30, 0x30, 0xFE, 0xFE, 0x30, 0x30, 0x30, 0x30, 0x30, 0x38, 0x3F,
|
||||
0x1F, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xE7, 0x7E, 0x3C, 0xE1,
|
||||
0xDC, 0x67, 0x38, 0xCC, 0x33, 0x0F, 0xC1, 0xE0, 0x78, 0x1E, 0x07, 0x80,
|
||||
0xE5, 0xD9, 0x66, 0x59, 0xB6, 0x7F, 0x9F, 0xE3, 0xF0, 0xFC, 0x33, 0x0C,
|
||||
0xC0, 0xE7, 0x66, 0x7E, 0x3C, 0x3C, 0x3C, 0x3C, 0x7E, 0x66, 0xE7, 0xE1,
|
||||
0xDC, 0x67, 0x38, 0xCC, 0x33, 0x0E, 0xC1, 0xF0, 0x78, 0x1E, 0x07, 0x80,
|
||||
0xC0, 0x30, 0x1C, 0x06, 0x00, 0xFF, 0xFE, 0x0E, 0x0C, 0x1C, 0x38, 0x30,
|
||||
0x70, 0x7F, 0xFF, 0x3B, 0xDC, 0xC2, 0x10, 0x8C, 0x66, 0x38, 0xC2, 0x10,
|
||||
0x8C, 0x63, 0x8E, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE7, 0x9C, 0x62,
|
||||
0x10, 0x86, 0x30, 0xCE, 0x62, 0x10, 0x86, 0x33, 0xB9, 0xC0, 0x78, 0x7F,
|
||||
0xF8, 0x78 };
|
||||
|
||||
const GFXglyph monofonto10pt7bGlyphs[] PROGMEM = {
|
||||
{ 0, 1, 1, 10, 0, 0 }, // 0x20 ' '
|
||||
{ 1, 2, 14, 10, 4, -13 }, // 0x21 '!'
|
||||
{ 5, 4, 5, 10, 3, -13 }, // 0x22 '"'
|
||||
{ 8, 10, 14, 10, 0, -13 }, // 0x23 '#'
|
||||
{ 26, 8, 18, 10, 1, -15 }, // 0x24 '$'
|
||||
{ 44, 10, 14, 10, 0, -13 }, // 0x25 '%'
|
||||
{ 62, 10, 14, 10, 0, -13 }, // 0x26 '&'
|
||||
{ 80, 2, 5, 10, 4, -13 }, // 0x27 '''
|
||||
{ 82, 5, 20, 10, 4, -15 }, // 0x28 '('
|
||||
{ 95, 4, 20, 10, 2, -15 }, // 0x29 ')'
|
||||
{ 105, 10, 9, 10, 0, -13 }, // 0x2A '*'
|
||||
{ 117, 8, 9, 10, 1, -11 }, // 0x2B '+'
|
||||
{ 126, 3, 6, 10, 3, -2 }, // 0x2C ','
|
||||
{ 129, 6, 2, 10, 2, -7 }, // 0x2D '-'
|
||||
{ 131, 2, 3, 10, 4, -2 }, // 0x2E '.'
|
||||
{ 132, 10, 19, 10, 0, -15 }, // 0x2F '/'
|
||||
{ 156, 8, 14, 10, 1, -13 }, // 0x30 '0'
|
||||
{ 170, 5, 14, 10, 2, -13 }, // 0x31 '1'
|
||||
{ 179, 8, 14, 10, 1, -13 }, // 0x32 '2'
|
||||
{ 193, 8, 14, 10, 1, -13 }, // 0x33 '3'
|
||||
{ 207, 8, 14, 10, 1, -13 }, // 0x34 '4'
|
||||
{ 221, 8, 14, 10, 1, -13 }, // 0x35 '5'
|
||||
{ 235, 8, 14, 10, 1, -13 }, // 0x36 '6'
|
||||
{ 249, 8, 14, 10, 1, -13 }, // 0x37 '7'
|
||||
{ 263, 8, 14, 10, 1, -13 }, // 0x38 '8'
|
||||
{ 277, 8, 14, 10, 1, -13 }, // 0x39 '9'
|
||||
{ 291, 2, 10, 10, 4, -9 }, // 0x3A ':'
|
||||
{ 294, 3, 13, 10, 3, -9 }, // 0x3B ';'
|
||||
{ 299, 8, 10, 10, 1, -11 }, // 0x3C '<'
|
||||
{ 309, 8, 6, 10, 1, -9 }, // 0x3D '='
|
||||
{ 315, 8, 10, 10, 1, -11 }, // 0x3E '>'
|
||||
{ 325, 8, 14, 10, 1, -13 }, // 0x3F '?'
|
||||
{ 339, 10, 15, 10, 0, -11 }, // 0x40 '@'
|
||||
{ 358, 8, 14, 10, 1, -13 }, // 0x41 'A'
|
||||
{ 372, 8, 14, 10, 1, -13 }, // 0x42 'B'
|
||||
{ 386, 8, 14, 10, 1, -13 }, // 0x43 'C'
|
||||
{ 400, 8, 14, 10, 1, -13 }, // 0x44 'D'
|
||||
{ 414, 8, 14, 10, 1, -13 }, // 0x45 'E'
|
||||
{ 428, 8, 14, 10, 1, -13 }, // 0x46 'F'
|
||||
{ 442, 8, 14, 10, 1, -13 }, // 0x47 'G'
|
||||
{ 456, 8, 14, 10, 1, -13 }, // 0x48 'H'
|
||||
{ 470, 6, 14, 10, 2, -13 }, // 0x49 'I'
|
||||
{ 481, 8, 14, 10, 1, -13 }, // 0x4A 'J'
|
||||
{ 495, 8, 14, 10, 1, -13 }, // 0x4B 'K'
|
||||
{ 509, 8, 14, 10, 1, -13 }, // 0x4C 'L'
|
||||
{ 523, 8, 14, 10, 1, -13 }, // 0x4D 'M'
|
||||
{ 537, 8, 14, 10, 1, -13 }, // 0x4E 'N'
|
||||
{ 551, 8, 14, 10, 1, -13 }, // 0x4F 'O'
|
||||
{ 565, 8, 14, 10, 1, -13 }, // 0x50 'P'
|
||||
{ 579, 8, 17, 10, 1, -13 }, // 0x51 'Q'
|
||||
{ 596, 9, 14, 10, 1, -13 }, // 0x52 'R'
|
||||
{ 612, 8, 14, 10, 1, -13 }, // 0x53 'S'
|
||||
{ 626, 8, 14, 10, 1, -13 }, // 0x54 'T'
|
||||
{ 640, 8, 14, 10, 1, -13 }, // 0x55 'U'
|
||||
{ 654, 10, 14, 10, 0, -13 }, // 0x56 'V'
|
||||
{ 672, 10, 14, 10, 0, -13 }, // 0x57 'W'
|
||||
{ 690, 8, 14, 10, 1, -13 }, // 0x58 'X'
|
||||
{ 704, 10, 14, 10, 0, -13 }, // 0x59 'Y'
|
||||
{ 722, 9, 14, 10, 0, -13 }, // 0x5A 'Z'
|
||||
{ 738, 4, 20, 10, 5, -15 }, // 0x5B '['
|
||||
{ 748, 10, 19, 10, 0, -15 }, // 0x5C '\'
|
||||
{ 772, 4, 20, 10, 1, -15 }, // 0x5D ']'
|
||||
{ 782, 8, 7, 10, 1, -13 }, // 0x5E '^'
|
||||
{ 789, 10, 2, 10, 0, 3 }, // 0x5F '_'
|
||||
{ 792, 4, 4, 10, 3, -13 }, // 0x60 '`'
|
||||
{ 794, 8, 10, 10, 1, -9 }, // 0x61 'a'
|
||||
{ 804, 8, 14, 10, 1, -13 }, // 0x62 'b'
|
||||
{ 818, 8, 10, 10, 1, -9 }, // 0x63 'c'
|
||||
{ 828, 8, 14, 10, 1, -13 }, // 0x64 'd'
|
||||
{ 842, 8, 10, 10, 1, -9 }, // 0x65 'e'
|
||||
{ 852, 8, 14, 10, 1, -13 }, // 0x66 'f'
|
||||
{ 866, 8, 14, 10, 1, -9 }, // 0x67 'g'
|
||||
{ 880, 8, 14, 10, 1, -13 }, // 0x68 'h'
|
||||
{ 894, 6, 14, 10, 2, -13 }, // 0x69 'i'
|
||||
{ 905, 6, 18, 10, 2, -13 }, // 0x6A 'j'
|
||||
{ 919, 8, 14, 10, 1, -13 }, // 0x6B 'k'
|
||||
{ 933, 5, 14, 10, 2, -13 }, // 0x6C 'l'
|
||||
{ 942, 8, 10, 10, 1, -9 }, // 0x6D 'm'
|
||||
{ 952, 8, 10, 10, 1, -9 }, // 0x6E 'n'
|
||||
{ 962, 8, 10, 10, 1, -9 }, // 0x6F 'o'
|
||||
{ 972, 8, 14, 10, 1, -9 }, // 0x70 'p'
|
||||
{ 986, 8, 14, 10, 1, -9 }, // 0x71 'q'
|
||||
{ 1000, 8, 10, 10, 1, -9 }, // 0x72 'r'
|
||||
{ 1010, 8, 10, 10, 1, -9 }, // 0x73 's'
|
||||
{ 1020, 8, 13, 10, 1, -12 }, // 0x74 't'
|
||||
{ 1033, 8, 10, 10, 1, -9 }, // 0x75 'u'
|
||||
{ 1043, 10, 10, 10, 0, -9 }, // 0x76 'v'
|
||||
{ 1056, 10, 10, 10, 0, -9 }, // 0x77 'w'
|
||||
{ 1069, 8, 10, 10, 1, -9 }, // 0x78 'x'
|
||||
{ 1079, 10, 14, 10, 0, -9 }, // 0x79 'y'
|
||||
{ 1097, 8, 10, 10, 1, -9 }, // 0x7A 'z'
|
||||
{ 1107, 5, 20, 10, 4, -15 }, // 0x7B '{'
|
||||
{ 1120, 2, 19, 10, 4, -15 }, // 0x7C '|'
|
||||
{ 1125, 5, 20, 10, 1, -15 }, // 0x7D '}'
|
||||
{ 1138, 10, 3, 10, 0, -8 } }; // 0x7E '~'
|
||||
|
||||
const GFXfont monofonto10pt7b PROGMEM = {
|
||||
(uint8_t *)monofonto10pt7bBitmaps,
|
||||
(GFXglyph *)monofonto10pt7bGlyphs,
|
||||
0x20, 0x7E, 24 };
|
||||
|
||||
// Approx. 1814 bytes
|
|
@ -0,0 +1,853 @@
|
|||
const uint8_t monofonto28pt7bBitmaps[] PROGMEM = {
|
||||
0x00, 0x7E, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7E, 0xFD, 0xFB, 0xF7,
|
||||
0xEF, 0xDF, 0xBF, 0x7E, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7E, 0xFC,
|
||||
0x00, 0x00, 0x00, 0x00, 0x08, 0x7C, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xBE,
|
||||
0x10, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87,
|
||||
0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0E, 0x00, 0x3C, 0x0F, 0x00, 0x0F,
|
||||
0x07, 0xC0, 0x03, 0xC1, 0xE0, 0x01, 0xF0, 0x78, 0x00, 0x7C, 0x1E, 0x00,
|
||||
0x1E, 0x0F, 0x80, 0x07, 0x83, 0xC0, 0x01, 0xE0, 0xF0, 0x00, 0xF8, 0x3C,
|
||||
0x00, 0x3E, 0x0F, 0x00, 0x0F, 0x07, 0xC0, 0x3F, 0xFF, 0xFF, 0x1F, 0xFF,
|
||||
0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFE, 0x01,
|
||||
0xE0, 0xF0, 0x00, 0x78, 0x3C, 0x00, 0x3E, 0x0F, 0x00, 0x0F, 0x03, 0xC0,
|
||||
0x03, 0xC1, 0xF0, 0x00, 0xF0, 0x78, 0x00, 0x7C, 0x1E, 0x00, 0x1E, 0x07,
|
||||
0x80, 0x7F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xC3, 0xFF,
|
||||
0xFF, 0xF0, 0xFF, 0xFF, 0xFC, 0x03, 0xC1, 0xF0, 0x00, 0xF0, 0x78, 0x00,
|
||||
0x3C, 0x1E, 0x00, 0x1F, 0x07, 0x80, 0x07, 0x81, 0xE0, 0x01, 0xE0, 0xF8,
|
||||
0x00, 0x78, 0x3C, 0x00, 0x3E, 0x0F, 0x00, 0x0F, 0x83, 0xC0, 0x03, 0xC1,
|
||||
0xF0, 0x00, 0xF0, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01,
|
||||
0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x3F, 0xC0, 0x01, 0xFF,
|
||||
0xF0, 0x0F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF,
|
||||
0xE3, 0xF8, 0x3F, 0xCF, 0xE0, 0x1F, 0xDF, 0xC0, 0x3F, 0xBF, 0x00, 0x7F,
|
||||
0x7E, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x07,
|
||||
0xFC, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x0F, 0xFF, 0x80, 0x1F,
|
||||
0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x0F, 0xFF, 0xC0, 0x0F, 0xFF, 0xC0, 0x07,
|
||||
0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00,
|
||||
0xFE, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFF, 0xE0, 0x07,
|
||||
0xFF, 0xE0, 0x0F, 0xDF, 0xC0, 0x3F, 0xBF, 0xE0, 0xFF, 0x3F, 0xFF, 0xFE,
|
||||
0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0x00,
|
||||
0x7F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00,
|
||||
0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x04, 0x00, 0x00, 0x03,
|
||||
0xFC, 0x00, 0x1F, 0x7F, 0xE0, 0x03, 0xEF, 0xFE, 0x00, 0x3C, 0xFF, 0xE0,
|
||||
0x07, 0x8F, 0x1F, 0x00, 0x78, 0xF1, 0xF0, 0x0F, 0x0F, 0x1F, 0x01, 0xF0,
|
||||
0xF1, 0xF0, 0x1E, 0x0F, 0x1F, 0x03, 0xE0, 0xF1, 0xF0, 0x3C, 0x0F, 0x1F,
|
||||
0x07, 0x80, 0xF1, 0xF0, 0x78, 0x0F, 0x1F, 0x0F, 0x00, 0xF1, 0xF1, 0xF0,
|
||||
0x0F, 0x1F, 0x1E, 0x00, 0xF1, 0xF3, 0xE0, 0x0F, 0x1F, 0x3C, 0x00, 0xF1,
|
||||
0xF7, 0x80, 0x0F, 0xFE, 0xF9, 0xF8, 0xFF, 0xEF, 0x7F, 0xE7, 0xFD, 0xF7,
|
||||
0xFE, 0x3F, 0x9E, 0xFF, 0xF0, 0x03, 0xCF, 0x9F, 0x00, 0x3C, 0xF0, 0xF0,
|
||||
0x07, 0x8F, 0x0F, 0x00, 0xF8, 0xF0, 0xF0, 0x0F, 0x0F, 0x0F, 0x01, 0xF0,
|
||||
0xF0, 0xF0, 0x1E, 0x0F, 0x0F, 0x03, 0xC0, 0xF0, 0xF0, 0x3C, 0x0F, 0x0F,
|
||||
0x07, 0x80, 0xF0, 0xF0, 0xF8, 0x0F, 0x0F, 0x0F, 0x00, 0xF0, 0xF1, 0xF0,
|
||||
0x0F, 0x0F, 0x1E, 0x00, 0xF0, 0xF3, 0xC0, 0x0F, 0xFF, 0x7C, 0x00, 0xFF,
|
||||
0xF7, 0x80, 0x07, 0xFE, 0xF8, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x40, 0x00,
|
||||
0x10, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xF8, 0x00, 0x1F, 0xFF, 0x00,
|
||||
0x0F, 0xFF, 0xC0, 0x03, 0xE1, 0xF0, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F,
|
||||
0x80, 0x0F, 0x83, 0xE0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E,
|
||||
0x1F, 0x00, 0x0F, 0xCF, 0xC0, 0x03, 0xF3, 0xF0, 0x00, 0x7F, 0xF8, 0x00,
|
||||
0x1F, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xC0,
|
||||
0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x83, 0xFF,
|
||||
0xF0, 0x30, 0xFE, 0xFC, 0x1C, 0x7F, 0x3F, 0x8F, 0x9F, 0x87, 0xE7, 0xFF,
|
||||
0xC1, 0xFD, 0xFF, 0xF0, 0x3F, 0xFE, 0xFC, 0x0F, 0xFF, 0x3F, 0x01, 0xFF,
|
||||
0x8F, 0xC0, 0x7F, 0xE3, 0xF0, 0x0F, 0xF0, 0xFC, 0x03, 0xF8, 0x3F, 0x01,
|
||||
0xFF, 0x0F, 0xE0, 0xFF, 0xC1, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0x0F,
|
||||
0xFF, 0xEF, 0xC3, 0xFF, 0xF3, 0xF8, 0x7F, 0xF8, 0x7E, 0x07, 0xF8, 0x1F,
|
||||
0xC0, 0x20, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01,
|
||||
0x00, 0x70, 0x0F, 0x83, 0xF0, 0x7E, 0x0F, 0x83, 0xF0, 0x7C, 0x1F, 0x83,
|
||||
0xF0, 0x7C, 0x1F, 0x83, 0xF0, 0x7C, 0x0F, 0x83, 0xF0, 0x7E, 0x0F, 0x81,
|
||||
0xF0, 0x3E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x03, 0xE0,
|
||||
0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E,
|
||||
0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xF8, 0x1F, 0x83,
|
||||
0xF0, 0x3E, 0x07, 0xE0, 0xFC, 0x0F, 0x81, 0xF8, 0x1F, 0x03, 0xF0, 0x7E,
|
||||
0x07, 0xC0, 0xE0, 0x08, 0x08, 0x03, 0x80, 0xFC, 0x07, 0xC0, 0x7E, 0x07,
|
||||
0xE0, 0x3E, 0x03, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x80, 0xF8, 0x0F, 0x80,
|
||||
0xFC, 0x0F, 0xC0, 0x7C, 0x07, 0xC0, 0x7E, 0x07, 0xE0, 0x7E, 0x03, 0xE0,
|
||||
0x3E, 0x03, 0xE0, 0x3E, 0x03, 0xE0, 0x3E, 0x03, 0xF0, 0x3F, 0x03, 0xF0,
|
||||
0x3F, 0x03, 0xF0, 0x3E, 0x03, 0xE0, 0x3E, 0x03, 0xE0, 0x3E, 0x07, 0xE0,
|
||||
0x7E, 0x07, 0xE0, 0x7C, 0x07, 0xC0, 0xFC, 0x0F, 0xC0, 0xF8, 0x0F, 0x81,
|
||||
0xF8, 0x1F, 0x01, 0xF0, 0x3F, 0x03, 0xE0, 0x7E, 0x07, 0xE0, 0x7C, 0x0F,
|
||||
0xC0, 0x38, 0x00, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00,
|
||||
0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0,
|
||||
0x00, 0x00, 0x0F, 0x00, 0x43, 0x00, 0xF0, 0x1C, 0x7C, 0x0F, 0x07, 0xC7,
|
||||
0xF0, 0xF1, 0xFE, 0x7F, 0xCE, 0x7F, 0xEF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF,
|
||||
0xFF, 0x90, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xFC, 0x00,
|
||||
0x00, 0x7F, 0xE0, 0x00, 0x0F, 0x9F, 0x00, 0x01, 0xF9, 0xF8, 0x00, 0x1F,
|
||||
0x0F, 0xC0, 0x03, 0xF0, 0xFE, 0x00, 0x7E, 0x07, 0xF0, 0x0F, 0xE0, 0x3F,
|
||||
0x00, 0x7C, 0x03, 0xE0, 0x03, 0xC0, 0x18, 0x00, 0x08, 0x01, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x00,
|
||||
0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00,
|
||||
0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x1F, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x3C,
|
||||
0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03,
|
||||
0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00,
|
||||
0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x3F, 0x3F, 0x3F, 0x3E, 0x3E,
|
||||
0x3E, 0x7E, 0x7E, 0x7C, 0x7C, 0x7C, 0x7C, 0x7C, 0xF8, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x10, 0xF9,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x7C, 0x20, 0x00, 0x00, 0x03, 0xE0, 0x00,
|
||||
0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8,
|
||||
0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00,
|
||||
0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00,
|
||||
0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07,
|
||||
0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00,
|
||||
0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0,
|
||||
0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00,
|
||||
0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F,
|
||||
0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00,
|
||||
0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0,
|
||||
0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E,
|
||||
0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x20, 0x00, 0x3F, 0xF8, 0x03,
|
||||
0xFF, 0xF0, 0x7F, 0xFF, 0xC3, 0xFF, 0xFF, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF,
|
||||
0xFF, 0xE0, 0xFF, 0xFE, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, 0x80, 0x7F, 0xFC,
|
||||
0x03, 0xFF, 0xE0, 0x1F, 0xFF, 0x00, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x3F,
|
||||
0xFE, 0x01, 0xFF, 0xF0, 0x0F, 0xFF, 0x80, 0x7F, 0xFC, 0x03, 0xFF, 0xE0,
|
||||
0x1F, 0xFF, 0x00, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x3F, 0xFE, 0x01, 0xFF,
|
||||
0xF0, 0x0F, 0xFF, 0x80, 0x7F, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, 0x00,
|
||||
0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x3F, 0xFE, 0x03, 0xFF, 0xF0, 0x1F, 0xFF,
|
||||
0xC1, 0xFE, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0x1F, 0xFF, 0xF8, 0xFF, 0xFF,
|
||||
0x83, 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x01, 0x80, 0x00, 0x00, 0x08, 0x01,
|
||||
0xC0, 0x3E, 0x07, 0xF0, 0xFF, 0x8F, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0x7F, 0xF3, 0xFE, 0x1F, 0xC0, 0xFC, 0x07, 0xE0, 0x3F, 0x01,
|
||||
0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x3F,
|
||||
0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xE0,
|
||||
0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07,
|
||||
0xE0, 0x3F, 0x00, 0x20, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xF8, 0x07, 0xFF,
|
||||
0xF0, 0x3F, 0xFF, 0xE0, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xC1, 0xFE,
|
||||
0x7F, 0x03, 0xFB, 0xF8, 0x07, 0xEF, 0xE0, 0x1F, 0xBF, 0x80, 0x7F, 0xFC,
|
||||
0x01, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x07,
|
||||
0xF8, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x1F, 0xE0,
|
||||
0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x80, 0x01,
|
||||
0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xF0,
|
||||
0x00, 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x00,
|
||||
0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE3, 0xFF,
|
||||
0xFF, 0x9F, 0xFF, 0xFE, 0xFF, 0xFF, 0xF8, 0x00, 0x08, 0x00, 0x03, 0xFF,
|
||||
0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0x01, 0xFF, 0xFF, 0x03, 0xFF, 0xFF,
|
||||
0x0F, 0xFF, 0xFE, 0x1F, 0xC1, 0xFE, 0x3F, 0x01, 0xFC, 0xFC, 0x01, 0xF9,
|
||||
0xF8, 0x03, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80,
|
||||
0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00,
|
||||
0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x03,
|
||||
0xFE, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, 0x00, 0x03,
|
||||
0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x1F,
|
||||
0xFF, 0x00, 0x3F, 0xFE, 0x00, 0xFE, 0xFE, 0x03, 0xFD, 0xFE, 0x0F, 0xF3,
|
||||
0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x03,
|
||||
0xFF, 0xF0, 0x01, 0xFF, 0x80, 0x00, 0x30, 0x00, 0x00, 0x1F, 0xF0, 0x00,
|
||||
0x3F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xF0, 0x00, 0x7F, 0xF0, 0x00,
|
||||
0xFF, 0xF0, 0x00, 0xFB, 0xF0, 0x00, 0xFB, 0xF0, 0x01, 0xF3, 0xF0, 0x01,
|
||||
0xF3, 0xF0, 0x03, 0xE3, 0xF0, 0x03, 0xE3, 0xF0, 0x07, 0xC3, 0xF0, 0x07,
|
||||
0xC3, 0xF0, 0x0F, 0x83, 0xF0, 0x0F, 0x83, 0xF0, 0x1F, 0x03, 0xF0, 0x1F,
|
||||
0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3E, 0x03, 0xF0, 0x3E, 0x03, 0xF0, 0x7C,
|
||||
0x03, 0xF0, 0x7C, 0x03, 0xF0, 0xF8, 0x03, 0xF0, 0xF8, 0x03, 0xF0, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00,
|
||||
0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00,
|
||||
0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x3F, 0xFF, 0xF8, 0x7F,
|
||||
0xFF, 0xF0, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x87, 0xFF,
|
||||
0xFF, 0x0F, 0xFF, 0xFE, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00,
|
||||
0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00,
|
||||
0x0F, 0x80, 0x00, 0x1F, 0x3F, 0xC0, 0x3F, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0,
|
||||
0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC7, 0xF0, 0x7F, 0x8F,
|
||||
0xC0, 0x7F, 0x9F, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00,
|
||||
0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xE0, 0x40, 0x1F, 0xC3, 0x80,
|
||||
0x3F, 0x9F, 0x00, 0xFF, 0xFF, 0x03, 0xFC, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF,
|
||||
0xE1, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x03, 0xFF, 0xF0,
|
||||
0x01, 0xFF, 0x80, 0x00, 0x20, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xC0,
|
||||
0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xF0, 0x00,
|
||||
0x1F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xFC,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF,
|
||||
0xC1, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x9F, 0xF0, 0xFF,
|
||||
0x3F, 0x80, 0xFF, 0x7F, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x01, 0xFF,
|
||||
0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x1F, 0xDF, 0x80, 0x3F, 0xBF,
|
||||
0x80, 0x7F, 0x7F, 0x01, 0xFE, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF,
|
||||
0xFF, 0xC1, 0xFF, 0xFF, 0x01, 0xFF, 0xFC, 0x01, 0xFF, 0xF0, 0x00, 0xFF,
|
||||
0xC0, 0x00, 0x10, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF,
|
||||
0xFC, 0x00, 0x03, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x0F,
|
||||
0xE0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x3F,
|
||||
0xC0, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x80, 0x00, 0x7F,
|
||||
0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFE,
|
||||
0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x03, 0xFC,
|
||||
0x00, 0x07, 0xF8, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0,
|
||||
0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xE0,
|
||||
0x00, 0x3F, 0xE0, 0x00, 0x00, 0x10, 0x00, 0x03, 0xFE, 0x00, 0x1F, 0xFF,
|
||||
0x00, 0x7F, 0xFF, 0x01, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE,
|
||||
0x1F, 0xC1, 0xFC, 0x3F, 0x01, 0xFC, 0x7E, 0x01, 0xF8, 0xF8, 0x03, 0xF1,
|
||||
0xF0, 0x07, 0xE3, 0xE0, 0x0F, 0xC7, 0xC0, 0x1F, 0x8F, 0x80, 0x3F, 0x1F,
|
||||
0x80, 0x7E, 0x3F, 0x81, 0xF8, 0x3F, 0x87, 0xF0, 0x3F, 0xFF, 0xC0, 0x3F,
|
||||
0xFF, 0x00, 0x7F, 0xFC, 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x1F, 0xC1,
|
||||
0xFE, 0x7F, 0x00, 0xFC, 0xFC, 0x01, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03,
|
||||
0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F,
|
||||
0xFE, 0x00, 0xFF, 0xFE, 0x01, 0xFD, 0xFE, 0x0F, 0xFB, 0xFF, 0xFF, 0xE3,
|
||||
0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, 0x03,
|
||||
0xFF, 0x80, 0x00, 0x30, 0x00, 0x00, 0x10, 0x00, 0x03, 0xFE, 0x00, 0x1F,
|
||||
0xFF, 0x00, 0x7F, 0xFF, 0x01, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x0F, 0xFF,
|
||||
0xFF, 0x3F, 0xE1, 0xFE, 0x7F, 0x01, 0xFC, 0xFE, 0x01, 0xFD, 0xF8, 0x03,
|
||||
0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x3F,
|
||||
0xFF, 0x00, 0x7F, 0x7F, 0x00, 0xFE, 0xFE, 0x03, 0xFD, 0xFF, 0x0F, 0xFB,
|
||||
0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x07,
|
||||
0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00,
|
||||
0xFF, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x3F,
|
||||
0x80, 0x00, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xE0,
|
||||
0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0x10, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x7C, 0x20,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0xCF, 0xFF, 0xFF,
|
||||
0xFF, 0xFD, 0xFB, 0xE1, 0x00, 0x04, 0x0F, 0x0F, 0xC7, 0xF7, 0xF9, 0xFC,
|
||||
0xFE, 0x7E, 0x1F, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x03, 0x03, 0xF9, 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x0F,
|
||||
0x87, 0xC7, 0xE3, 0xF1, 0xF0, 0xF8, 0x7C, 0x3E, 0x06, 0x00, 0x00, 0x00,
|
||||
0x00, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xF0, 0x00,
|
||||
0x07, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00,
|
||||
0x7F, 0xE0, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x07,
|
||||
0xFC, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00,
|
||||
0xFF, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x01, 0xFF, 0x80,
|
||||
0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F,
|
||||
0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0x01, 0xF0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x04, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00,
|
||||
0x00, 0x70, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xF8,
|
||||
0x00, 0x03, 0xFF, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x01,
|
||||
0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0,
|
||||
0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F,
|
||||
0x00, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x01, 0xFF,
|
||||
0x00, 0x03, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0x3F, 0xF0,
|
||||
0x00, 0x7F, 0xE0, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0x00,
|
||||
0x00, 0x0E, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x7F,
|
||||
0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x3F, 0xFF, 0xC7, 0xFF, 0xFE, 0x7F,
|
||||
0xFF, 0xEF, 0xF0, 0xFE, 0xFE, 0x0F, 0xEF, 0xC0, 0x7F, 0xFC, 0x07, 0xF0,
|
||||
0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFE,
|
||||
0x00, 0x3F, 0xC0, 0x07, 0xFC, 0x00, 0xFF, 0x80, 0x1F, 0xF0, 0x01, 0xFE,
|
||||
0x00, 0x3F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x3F,
|
||||
0x00, 0x03, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00,
|
||||
0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x00,
|
||||
0x03, 0xE0, 0x00, 0x08, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0xFC, 0x00,
|
||||
0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF8, 0x0F, 0xE0, 0x7F, 0x07, 0xE0, 0x07,
|
||||
0xC3, 0xF0, 0x00, 0xF8, 0xF8, 0x00, 0x1E, 0x3C, 0x00, 0x03, 0x9F, 0x00,
|
||||
0x00, 0xF7, 0x80, 0x00, 0x3D, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, 0xFC,
|
||||
0x00, 0x00, 0x7F, 0x01, 0xEC, 0x1F, 0xC1, 0xFF, 0x07, 0xF0, 0x7F, 0xC1,
|
||||
0xFC, 0x3C, 0x70, 0x7F, 0x0E, 0x0C, 0x1F, 0xC3, 0x83, 0x07, 0xF0, 0xE0,
|
||||
0xC1, 0xFC, 0x38, 0x30, 0x7F, 0x0E, 0x0C, 0x1B, 0xC3, 0xC7, 0x0E, 0xF0,
|
||||
0x7F, 0xC3, 0xBC, 0x0F, 0xF9, 0xCF, 0x81, 0xF7, 0xF1, 0xE0, 0x00, 0xF0,
|
||||
0x78, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3F,
|
||||
0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1E, 0x00, 0x00,
|
||||
0x03, 0x80, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFF,
|
||||
0x00, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF,
|
||||
0x00, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x03, 0xFF, 0x80, 0x03, 0xFF,
|
||||
0x80, 0x03, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x07, 0xFF,
|
||||
0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xEF, 0xE0, 0x07, 0xEF, 0xE0, 0x0F, 0xEF,
|
||||
0xE0, 0x0F, 0xEF, 0xE0, 0x0F, 0xEF, 0xE0, 0x0F, 0xE7, 0xF0, 0x0F, 0xC7,
|
||||
0xF0, 0x1F, 0xC7, 0xF0, 0x1F, 0xC7, 0xF0, 0x1F, 0xC7, 0xF0, 0x1F, 0xC7,
|
||||
0xF8, 0x1F, 0x83, 0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF,
|
||||
0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, 0x01,
|
||||
0xFC, 0x7F, 0x01, 0xFE, 0x7F, 0x01, 0xFE, 0xFF, 0x01, 0xFE, 0xFE, 0x00,
|
||||
0xFE, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFE,
|
||||
0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xCF,
|
||||
0xC0, 0xFF, 0x3F, 0x01, 0xFE, 0xFC, 0x03, 0xFB, 0xF0, 0x0F, 0xEF, 0xC0,
|
||||
0x3F, 0xBF, 0x00, 0xFE, 0xFC, 0x03, 0xFB, 0xF0, 0x0F, 0xEF, 0xC0, 0x3F,
|
||||
0x3F, 0x01, 0xFC, 0xFC, 0x07, 0xF3, 0xF0, 0x7F, 0x8F, 0xFF, 0xFC, 0x3F,
|
||||
0xFF, 0xE0, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x0F, 0xC0, 0xFE, 0x3F, 0x01,
|
||||
0xFC, 0xFC, 0x03, 0xFB, 0xF0, 0x0F, 0xEF, 0xC0, 0x1F, 0xBF, 0x00, 0x7F,
|
||||
0xFC, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x00, 0xFE, 0xFC,
|
||||
0x07, 0xFB, 0xF0, 0x7F, 0xEF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFC, 0xFF, 0xFF,
|
||||
0xF3, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x3F, 0xFF, 0x80, 0x00, 0x20, 0x00,
|
||||
0x1F, 0xFC, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF1, 0xFF,
|
||||
0xFF, 0xC7, 0xFF, 0xFF, 0xBF, 0xC1, 0xFE, 0xFE, 0x03, 0xFB, 0xF8, 0x07,
|
||||
0xFF, 0xE0, 0x1F, 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F,
|
||||
0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0,
|
||||
0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00,
|
||||
0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F,
|
||||
0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80,
|
||||
0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x0F, 0xEF, 0xF0, 0x7F, 0x9F, 0xFF, 0xFE,
|
||||
0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xFF, 0xFE, 0x03, 0xFF, 0xF0, 0x07,
|
||||
0xFF, 0x00, 0x00, 0x80, 0x00, 0xFF, 0xFE, 0x03, 0xFF, 0xFE, 0x0F, 0xFF,
|
||||
0xFE, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xEF, 0xC0, 0xFF,
|
||||
0xBF, 0x00, 0xFE, 0xFC, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF,
|
||||
0x00, 0x7F, 0xFC, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x00,
|
||||
0x7F, 0xFC, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x7F,
|
||||
0xFC, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x7F, 0xFC,
|
||||
0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x7F, 0xFC, 0x01,
|
||||
0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x7F, 0xFC, 0x03, 0xFB,
|
||||
0xF0, 0x3F, 0xEF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFC, 0xFF, 0xFF, 0xF3, 0xFF,
|
||||
0xFF, 0x8F, 0xFF, 0xF8, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0,
|
||||
0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE,
|
||||
0x00, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0xFF, 0xFF, 0x8F,
|
||||
0xFF, 0xF8, 0xFF, 0xFF, 0x8F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0xFF, 0xFF, 0xCF, 0xFF,
|
||||
0xFC, 0xFF, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0xFF, 0xCF, 0xE0, 0x00, 0xFE,
|
||||
0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F,
|
||||
0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0x00, 0x20, 0x00, 0x1F, 0xFC, 0x00, 0xFF, 0xFC, 0x07,
|
||||
0xFF, 0xF8, 0x3F, 0xFF, 0xF1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xBF, 0xE1,
|
||||
0xFE, 0xFF, 0x03, 0xFB, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x00,
|
||||
0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0xFF, 0xBF, 0x83, 0xFE, 0xFE, 0x0F,
|
||||
0xFB, 0xF8, 0x3F, 0xEF, 0xE0, 0xFF, 0xBF, 0x83, 0xFE, 0xFE, 0x01, 0xFB,
|
||||
0xF8, 0x07, 0xEF, 0xE0, 0x1F, 0xBF, 0x80, 0x7E, 0xFE, 0x01, 0xFB, 0xF8,
|
||||
0x07, 0xEF, 0xE0, 0x1F, 0xBF, 0x80, 0x7E, 0xFE, 0x01, 0xFB, 0xF8, 0x0F,
|
||||
0xEF, 0xF0, 0x7F, 0x9F, 0xFF, 0xFE, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE3,
|
||||
0xFF, 0xFF, 0x87, 0xFF, 0xBE, 0x07, 0xFC, 0xF8, 0x02, 0x00, 0x00, 0xFE,
|
||||
0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01,
|
||||
0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF,
|
||||
0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8,
|
||||
0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0,
|
||||
0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F,
|
||||
0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF,
|
||||
0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80,
|
||||
0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xC0, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7F,
|
||||
0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xF0, 0x00, 0xFE,
|
||||
0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, 0x01, 0xFC,
|
||||
0x00, 0x3F, 0x80, 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8,
|
||||
0x00, 0x7F, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xF0,
|
||||
0x00, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7F, 0x03, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x00, 0x7F, 0xF0, 0x07, 0xFF, 0x00, 0x7F, 0xF0, 0x07, 0xFF, 0x00, 0x7F,
|
||||
0xF0, 0x07, 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00,
|
||||
0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00,
|
||||
0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0,
|
||||
0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x7F, 0x00, 0x0F, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xE0, 0x0F,
|
||||
0xFE, 0xFF, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF,
|
||||
0xFE, 0x0F, 0xFF, 0x00, 0xFE, 0x01, 0xFD, 0xFC, 0x03, 0xFB, 0xF8, 0x0F,
|
||||
0xE7, 0xF0, 0x1F, 0xCF, 0xE0, 0x7F, 0x1F, 0xC0, 0xFE, 0x3F, 0x83, 0xF8,
|
||||
0x7F, 0x07, 0xF0, 0xFE, 0x0F, 0xC1, 0xFC, 0x3F, 0x83, 0xF8, 0x7E, 0x07,
|
||||
0xF1, 0xFC, 0x0F, 0xE3, 0xF0, 0x1F, 0xCF, 0xE0, 0x3F, 0x9F, 0x80, 0x7F,
|
||||
0x3F, 0x00, 0xFE, 0xFC, 0x01, 0xFD, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF,
|
||||
0xE0, 0x0F, 0xFF, 0xE0, 0x1F, 0xDF, 0xC0, 0x3F, 0xBF, 0x80, 0x7F, 0x7F,
|
||||
0x80, 0xFE, 0x7F, 0x01, 0xFC, 0xFF, 0x03, 0xF8, 0xFE, 0x07, 0xF1, 0xFE,
|
||||
0x0F, 0xE3, 0xFC, 0x1F, 0xC3, 0xF8, 0x3F, 0x87, 0xF8, 0x7F, 0x07, 0xF0,
|
||||
0xFE, 0x0F, 0xF1, 0xFC, 0x0F, 0xE3, 0xF8, 0x1F, 0xE7, 0xF0, 0x3F, 0xCF,
|
||||
0xE0, 0x3F, 0x9F, 0xC0, 0x7F, 0xBF, 0x80, 0x7F, 0x7F, 0x00, 0xFF, 0xFE,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0,
|
||||
0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03,
|
||||
0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80,
|
||||
0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F,
|
||||
0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFE,
|
||||
0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0,
|
||||
0x3F, 0xFF, 0xE0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x87,
|
||||
0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFE, 0x7F, 0xFF, 0xFD, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFB, 0xFF, 0x7F,
|
||||
0xF7, 0xFE, 0xFF, 0xEF, 0xF9, 0xFF, 0xCF, 0xF3, 0xFF, 0x9F, 0xE7, 0xFF,
|
||||
0x3F, 0x8F, 0xFE, 0x3F, 0x1F, 0xFC, 0x7E, 0x3F, 0xF8, 0xF8, 0x7F, 0xF0,
|
||||
0xF0, 0xFF, 0xE1, 0xE1, 0xFF, 0xC3, 0x83, 0xFF, 0x83, 0x07, 0xFF, 0x06,
|
||||
0x0F, 0xFE, 0x08, 0x1F, 0xFC, 0x10, 0x3F, 0xF8, 0x00, 0x7F, 0xF0, 0x00,
|
||||
0xFF, 0xE0, 0x01, 0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x07, 0xFF, 0x00, 0x0F,
|
||||
0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x7F, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xFF,
|
||||
0xFE, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF,
|
||||
0xF0, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF,
|
||||
0xC3, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFE,
|
||||
0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0xFF, 0xFB, 0xF9, 0xFF, 0xF7, 0xF3,
|
||||
0xFF, 0xEF, 0xF7, 0xFF, 0xCF, 0xEF, 0xFF, 0x9F, 0xDF, 0xFF, 0x1F, 0xFF,
|
||||
0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF,
|
||||
0xE0, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x03, 0xFF, 0xFE,
|
||||
0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0,
|
||||
0x1F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x7F, 0xFF, 0x00, 0x7F, 0x00, 0x10,
|
||||
0x00, 0x07, 0xFF, 0x00, 0x1F, 0xFF, 0x80, 0x7F, 0xFF, 0x81, 0xFF, 0xFF,
|
||||
0x87, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x3F, 0xC1, 0xFE, 0x7F, 0x01, 0xFE,
|
||||
0xFE, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x07, 0xFF,
|
||||
0xC0, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFC,
|
||||
0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0,
|
||||
0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFC, 0x00,
|
||||
0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x0F,
|
||||
0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0x7E, 0x00, 0xFE, 0xFE, 0x03, 0xFD,
|
||||
0xFE, 0x0F, 0xF1, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x03,
|
||||
0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x03, 0xFF, 0x80, 0x00, 0x30, 0x00, 0xFF,
|
||||
0xFE, 0x01, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x8F, 0xFF,
|
||||
0xFF, 0x1F, 0xFF, 0xFF, 0x3F, 0x87, 0xFF, 0x7F, 0x01, 0xFE, 0xFE, 0x01,
|
||||
0xFD, 0xFC, 0x03, 0xFB, 0xF8, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, 0x0F,
|
||||
0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xFF,
|
||||
0xFC, 0x03, 0xFB, 0xF8, 0x0F, 0xF7, 0xF0, 0x3F, 0xEF, 0xFF, 0xFF, 0x9F,
|
||||
0xFF, 0xFF, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC1, 0xFF,
|
||||
0xFE, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0,
|
||||
0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00,
|
||||
0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00,
|
||||
0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x10, 0x00, 0x07, 0xFF, 0x00,
|
||||
0x1F, 0xFF, 0x80, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x0F,
|
||||
0xFF, 0xFF, 0x3F, 0xC1, 0xFE, 0x7F, 0x01, 0xFE, 0xFE, 0x01, 0xFF, 0xF8,
|
||||
0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80,
|
||||
0x1F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01,
|
||||
0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F,
|
||||
0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01, 0xFF,
|
||||
0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF,
|
||||
0x00, 0x7F, 0x7F, 0x00, 0xFE, 0xFF, 0x03, 0xFD, 0xFF, 0x9F, 0xF1, 0xFF,
|
||||
0xFF, 0xE3, 0xFF, 0xFF, 0x83, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF,
|
||||
0xE0, 0x00, 0xFF, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x1F,
|
||||
0x00, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC,
|
||||
0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x8F,
|
||||
0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x3F, 0x8F, 0xFE, 0x7F, 0x03, 0xFE, 0xFE,
|
||||
0x03, 0xFD, 0xFC, 0x03, 0xFB, 0xF8, 0x07, 0xF7, 0xF0, 0x0F, 0xEF, 0xE0,
|
||||
0x1F, 0xDF, 0xC0, 0x3F, 0xBF, 0x80, 0x7F, 0x7F, 0x00, 0xFE, 0xFE, 0x03,
|
||||
0xFD, 0xFC, 0x07, 0xF3, 0xF8, 0x1F, 0xE7, 0xF0, 0xFF, 0x8F, 0xFF, 0xFE,
|
||||
0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xC0, 0x7F, 0xFF, 0x00, 0xFF, 0xFE, 0x01,
|
||||
0xFF, 0xFE, 0x03, 0xFB, 0xFC, 0x07, 0xF7, 0xFC, 0x0F, 0xE7, 0xF8, 0x1F,
|
||||
0xCF, 0xF8, 0x3F, 0x8F, 0xF0, 0x7F, 0x1F, 0xF0, 0xFE, 0x1F, 0xE1, 0xFC,
|
||||
0x3F, 0xE3, 0xF8, 0x3F, 0xC7, 0xF0, 0x7F, 0xCF, 0xE0, 0x7F, 0x9F, 0xC0,
|
||||
0xFF, 0xBF, 0x80, 0xFF, 0x7F, 0x01, 0xFF, 0x00, 0x10, 0x00, 0x07, 0xFF,
|
||||
0x00, 0x3F, 0xFF, 0x00, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x07, 0xFF, 0xFF,
|
||||
0x1F, 0xFF, 0xFE, 0x3F, 0x81, 0xFC, 0xFE, 0x01, 0xFD, 0xFC, 0x03, 0xFB,
|
||||
0xF0, 0x07, 0xF7, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F,
|
||||
0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0xFF,
|
||||
0xFC, 0x01, 0xFF, 0xFC, 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0xFF,
|
||||
0xFE, 0x00, 0x7F, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x1F,
|
||||
0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F,
|
||||
0xFE, 0x00, 0x7E, 0xFE, 0x00, 0xFD, 0xFC, 0x03, 0xFB, 0xFC, 0x0F, 0xF3,
|
||||
0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x07,
|
||||
0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x60, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFC, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00,
|
||||
0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F,
|
||||
0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00,
|
||||
0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE,
|
||||
0x00, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03,
|
||||
0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F,
|
||||
0xFE, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF,
|
||||
0xE0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE,
|
||||
0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xE0,
|
||||
0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE, 0x00,
|
||||
0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07,
|
||||
0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x7F, 0xFF, 0x01, 0xFE,
|
||||
0xFF, 0x07, 0xFD, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x83,
|
||||
0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x01, 0xFF, 0xC0, 0x00, 0x10, 0x00, 0xFE,
|
||||
0x00, 0x1F, 0xFF, 0x80, 0x1F, 0xDF, 0xC0, 0x0F, 0xEF, 0xE0, 0x07, 0xF7,
|
||||
0xF0, 0x03, 0xF3, 0xFC, 0x03, 0xF8, 0xFE, 0x01, 0xFC, 0x7F, 0x00, 0xFE,
|
||||
0x3F, 0x80, 0x7F, 0x1F, 0xC0, 0x3F, 0x0F, 0xF0, 0x3F, 0x83, 0xF8, 0x1F,
|
||||
0xC1, 0xFC, 0x0F, 0xE0, 0xFE, 0x07, 0xE0, 0x7F, 0x03, 0xF0, 0x1F, 0xC3,
|
||||
0xF8, 0x0F, 0xE1, 0xFC, 0x07, 0xF0, 0xFC, 0x03, 0xF8, 0x7E, 0x00, 0xFE,
|
||||
0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0xC0, 0x1F, 0xCF, 0xC0, 0x0F,
|
||||
0xE7, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xF8, 0x00,
|
||||
0x7F, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x07, 0xFF, 0x80,
|
||||
0x03, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0,
|
||||
0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE,
|
||||
0x00, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0,
|
||||
0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xBF, 0x80, 0x0F, 0xEF,
|
||||
0xE0, 0x03, 0xFB, 0xF8, 0x20, 0xFE, 0x7F, 0x08, 0x3F, 0x9F, 0xC3, 0x0F,
|
||||
0xE7, 0xF0, 0xC3, 0xF9, 0xFC, 0x30, 0xFE, 0x7F, 0x1C, 0x3F, 0x1F, 0xC7,
|
||||
0x8F, 0xC7, 0xF1, 0xE3, 0xF1, 0xFC, 0xF9, 0xFC, 0x3F, 0x3E, 0x7F, 0x0F,
|
||||
0xCF, 0xDF, 0xC3, 0xF3, 0xF7, 0xF0, 0xFD, 0xFD, 0xFC, 0x3F, 0xFF, 0xFE,
|
||||
0x0F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF,
|
||||
0xFE, 0x07, 0xFD, 0xFF, 0x81, 0xFF, 0x7F, 0xE0, 0x7F, 0xCF, 0xF8, 0x1F,
|
||||
0xF3, 0xFC, 0x07, 0xFC, 0xFF, 0x01, 0xFE, 0x3F, 0xC0, 0x7F, 0x8F, 0xF0,
|
||||
0x0F, 0xE1, 0xFC, 0x03, 0xF8, 0x7F, 0x00, 0xFE, 0x1F, 0xC0, 0x3F, 0x07,
|
||||
0xE0, 0x0F, 0xC1, 0xF8, 0x03, 0xF0, 0x3E, 0x00, 0xFC, 0x0F, 0x80, 0x3F,
|
||||
0x03, 0xE0, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFE, 0x7F, 0x81, 0xFE, 0x7F,
|
||||
0x81, 0xFE, 0x7F, 0x81, 0xFC, 0x3F, 0xC3, 0xFC, 0x3F, 0xC3, 0xF8, 0x1F,
|
||||
0xC3, 0xF8, 0x1F, 0xE7, 0xF0, 0x1F, 0xE7, 0xF0, 0x0F, 0xE7, 0xF0, 0x0F,
|
||||
0xFF, 0xE0, 0x07, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x03,
|
||||
0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x01,
|
||||
0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x03,
|
||||
0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x07,
|
||||
0xFF, 0xE0, 0x0F, 0xEF, 0xE0, 0x0F, 0xEF, 0xF0, 0x1F, 0xE7, 0xF0, 0x1F,
|
||||
0xC7, 0xF0, 0x1F, 0xC7, 0xF8, 0x3F, 0xC7, 0xF8, 0x3F, 0x83, 0xFC, 0x7F,
|
||||
0x83, 0xFC, 0x7F, 0x83, 0xFC, 0x7F, 0x01, 0xFE, 0xFF, 0x01, 0xFE, 0xFF,
|
||||
0x01, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xE0, 0x1F, 0xE7, 0xF8, 0x07, 0xF9,
|
||||
0xFE, 0x01, 0xFE, 0x7F, 0xC0, 0xFF, 0x0F, 0xF0, 0x3F, 0xC3, 0xFC, 0x0F,
|
||||
0xE0, 0x7F, 0x87, 0xF8, 0x1F, 0xE1, 0xFE, 0x07, 0xF8, 0x7F, 0x00, 0xFF,
|
||||
0x3F, 0xC0, 0x3F, 0xCF, 0xE0, 0x07, 0xF3, 0xF8, 0x01, 0xFF, 0xFE, 0x00,
|
||||
0x7F, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x00, 0x7F, 0xF8,
|
||||
0x00, 0x1F, 0xFE, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3F,
|
||||
0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00,
|
||||
0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00,
|
||||
0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F,
|
||||
0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00,
|
||||
0x7F, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF,
|
||||
0xC7, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07,
|
||||
0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01,
|
||||
0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, 0x00,
|
||||
0x3F, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xE0, 0x00,
|
||||
0x0F, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00,
|
||||
0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00,
|
||||
0x00, 0x7F, 0x80, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x3F, 0xC0,
|
||||
0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xFF,
|
||||
0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF9, 0xFF,
|
||||
0xFF, 0xFD, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81,
|
||||
0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0,
|
||||
0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E,
|
||||
0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07,
|
||||
0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0,
|
||||
0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8,
|
||||
0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x00,
|
||||
0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03,
|
||||
0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03,
|
||||
0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03,
|
||||
0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03,
|
||||
0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03,
|
||||
0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03,
|
||||
0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07,
|
||||
0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00,
|
||||
0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3E, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F,
|
||||
0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1,
|
||||
0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C,
|
||||
0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07,
|
||||
0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0,
|
||||
0x7C, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x7E, 0x00, 0x01, 0xFC,
|
||||
0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x7D, 0xF0,
|
||||
0x00, 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC3, 0xE0, 0x1F, 0x07, 0xC0,
|
||||
0x3E, 0x07, 0xC0, 0xF8, 0x0F, 0x81, 0xF0, 0x0F, 0x87, 0xC0, 0x1F, 0x0F,
|
||||
0x80, 0x1F, 0x3E, 0x00, 0x3E, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x7C, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0x03, 0xFC, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x07, 0xF0, 0x1F,
|
||||
0xC0, 0x7E, 0x01, 0xF8, 0x07, 0xC0, 0x00, 0x20, 0x00, 0x0F, 0xFE, 0x00,
|
||||
0xFF, 0xFE, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xE7, 0xFF,
|
||||
0xFF, 0x9F, 0xC0, 0xFF, 0x06, 0x01, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F,
|
||||
0xC1, 0xFE, 0x3F, 0x1F, 0xFE, 0xFD, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x00,
|
||||
0x3F, 0xFC, 0x01, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF,
|
||||
0x7F, 0xFF, 0xFD, 0xFF, 0xFB, 0xF3, 0xFF, 0xCF, 0xC3, 0xFE, 0x3F, 0x00,
|
||||
0x80, 0x00, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xE0,
|
||||
0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00,
|
||||
0x00, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xE0, 0x00,
|
||||
0x0F, 0xC0, 0x40, 0x1F, 0x87, 0xF8, 0x3F, 0x1F, 0xF8, 0x7E, 0x7F, 0xF8,
|
||||
0xFD, 0xFF, 0xF9, 0xFB, 0xFF, 0xF3, 0xFF, 0xFF, 0xF7, 0xFC, 0x1F, 0xEF,
|
||||
0xF0, 0x1F, 0xDF, 0xC0, 0x3F, 0xBF, 0x80, 0x3F, 0x7E, 0x00, 0x7F, 0xFC,
|
||||
0x00, 0xFF, 0xF8, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xC0,
|
||||
0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x80, 0x7F, 0x7F, 0x00, 0xFE, 0xFF, 0x01,
|
||||
0xFD, 0xFF, 0x07, 0xFB, 0xFF, 0xFF, 0xF7, 0xEF, 0xFF, 0xCF, 0xDF, 0xFF,
|
||||
0x9F, 0x9F, 0xFE, 0x3F, 0x1F, 0xF8, 0x7E, 0x1F, 0xE0, 0x00, 0x04, 0x00,
|
||||
0x00, 0x02, 0x00, 0x00, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0,
|
||||
0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x1F, 0xF0, 0x38, 0x7F,
|
||||
0x80, 0x20, 0xFE, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0,
|
||||
0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00,
|
||||
0x01, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x87, 0xF8, 0x03,
|
||||
0x07, 0xFC, 0x0F, 0x0F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE,
|
||||
0x0F, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x40, 0x00,
|
||||
0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0,
|
||||
0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00,
|
||||
0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x08,
|
||||
0x0F, 0xE0, 0xFE, 0x1F, 0xC7, 0xFF, 0x3F, 0x9F, 0xFF, 0x7F, 0x3F, 0xFE,
|
||||
0xFE, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFB, 0xFC, 0x1F, 0xFF, 0xF0, 0x1F,
|
||||
0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF,
|
||||
0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF,
|
||||
0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0xFF, 0xFF, 0x01, 0xFE, 0xFF,
|
||||
0x07, 0xFD, 0xFF, 0xFD, 0xFB, 0xFF, 0xFB, 0xF3, 0xFF, 0xE7, 0xE3, 0xFF,
|
||||
0xCF, 0xC7, 0xFF, 0x1F, 0x83, 0xF8, 0x3F, 0x00, 0x80, 0x00, 0x00, 0x10,
|
||||
0x00, 0x01, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF,
|
||||
0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0x81, 0xFC, 0x7F, 0x00,
|
||||
0xFE, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFC, 0x00,
|
||||
0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00,
|
||||
0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00,
|
||||
0xF8, 0x7F, 0x81, 0xFE, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF,
|
||||
0xF8, 0x0F, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0x80, 0x00, 0x18,
|
||||
0x00, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0x01, 0xFF,
|
||||
0xFF, 0x01, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x01, 0xFE, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF,
|
||||
0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x00, 0x40, 0x00, 0x07, 0xF0, 0xFC, 0x3F, 0xF1, 0xF8, 0xFF, 0xF3,
|
||||
0xF3, 0xFF, 0xF7, 0xE7, 0xFF, 0xEF, 0xDF, 0xFF, 0xFF, 0xBF, 0xC1, 0xFF,
|
||||
0x7F, 0x01, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF,
|
||||
0xE0, 0x0F, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE,
|
||||
0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, 0x0F, 0xF7, 0xF0,
|
||||
0x1F, 0xEF, 0xF0, 0x7F, 0xDF, 0xFF, 0xDF, 0x9F, 0xFF, 0xBF, 0x3F, 0xFE,
|
||||
0x7E, 0x3F, 0xFC, 0xFC, 0x3F, 0xF1, 0xF8, 0x1F, 0xC3, 0xF0, 0x04, 0x07,
|
||||
0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x90, 0x00, 0x7E, 0x30, 0x01, 0xFC,
|
||||
0xF8, 0x07, 0xFB, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x07,
|
||||
0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x00, 0x30, 0x00, 0xFE, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00,
|
||||
0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F,
|
||||
0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x01, 0x03, 0xF8, 0x7F, 0x8F, 0xE3,
|
||||
0xFF, 0x3F, 0x9F, 0xFE, 0xFE, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xE0, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF,
|
||||
0x80, 0x3F, 0xFE, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80,
|
||||
0x3F, 0xFE, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F,
|
||||
0xFE, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xFE,
|
||||
0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0x00, 0x40,
|
||||
0x00, 0x78, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xFE, 0x00,
|
||||
0x3F, 0x00, 0x0F, 0xC0, 0x01, 0xE0, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x03, 0xFF, 0xC0, 0xFF, 0xF0,
|
||||
0x3F, 0xFC, 0x0F, 0xFF, 0x03, 0xFF, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00,
|
||||
0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F,
|
||||
0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0,
|
||||
0x00, 0xFC, 0x00, 0x3F, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x04, 0x00, 0x0F, 0x80,
|
||||
0x07, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x3F,
|
||||
0x00, 0x1F, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x7F, 0xFE, 0x3F, 0xFF, 0x1F, 0xFF, 0x8F, 0xFF, 0xC7, 0xFF, 0xE3,
|
||||
0xFF, 0xF0, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F,
|
||||
0x80, 0x1F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x01, 0xFC, 0x00,
|
||||
0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0,
|
||||
0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F,
|
||||
0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x03, 0xFB, 0xFF, 0xFD, 0xFF,
|
||||
0xFE, 0xFF, 0xFE, 0x7F, 0xFF, 0x3F, 0xFF, 0x1F, 0xFE, 0x00, 0xFC, 0x00,
|
||||
0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03,
|
||||
0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0,
|
||||
0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x0F,
|
||||
0xEF, 0xC0, 0x7F, 0x3F, 0x03, 0xF8, 0xFC, 0x0F, 0xE3, 0xF0, 0x7F, 0x0F,
|
||||
0xC3, 0xF8, 0x3F, 0x0F, 0xC0, 0xFC, 0x7F, 0x03, 0xF3, 0xF8, 0x0F, 0xCF,
|
||||
0xC0, 0x3F, 0x7F, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0,
|
||||
0x3F, 0x7F, 0x00, 0xFD, 0xFE, 0x03, 0xF3, 0xFC, 0x0F, 0xCF, 0xF0, 0x3F,
|
||||
0x1F, 0xE0, 0xFC, 0x3F, 0x83, 0xF0, 0xFF, 0x0F, 0xC1, 0xFE, 0x3F, 0x07,
|
||||
0xF8, 0xFC, 0x0F, 0xF3, 0xF0, 0x1F, 0xEF, 0xC0, 0x7F, 0xBF, 0x00, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xF0, 0x3F,
|
||||
0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F,
|
||||
0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F,
|
||||
0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F,
|
||||
0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x3F,
|
||||
0x00, 0x20, 0x08, 0x7F, 0x3C, 0x3F, 0x3F, 0xBF, 0x3F, 0xDF, 0xFF, 0x9F,
|
||||
0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7C,
|
||||
0x7F, 0xFE, 0x1E, 0x1F, 0xFF, 0x0F, 0x0F, 0xFF, 0x87, 0x87, 0xFF, 0xC3,
|
||||
0xC3, 0xFF, 0xE1, 0xE1, 0xFF, 0xF0, 0xF0, 0xFF, 0xF8, 0x78, 0x7F, 0xFC,
|
||||
0x3C, 0x3F, 0xFE, 0x1E, 0x1F, 0xFF, 0x0F, 0x0F, 0xFF, 0x87, 0x87, 0xFF,
|
||||
0xC3, 0xC3, 0xFF, 0xE1, 0xE1, 0xFF, 0xF0, 0xF0, 0xFF, 0xF8, 0x78, 0x7F,
|
||||
0xFC, 0x3C, 0x3F, 0xFE, 0x1E, 0x1F, 0xFF, 0x0F, 0x0F, 0xFF, 0x87, 0x87,
|
||||
0xFF, 0xC3, 0xC3, 0xF0, 0x00, 0x01, 0x03, 0xF8, 0x7F, 0x8F, 0xE3, 0xFF,
|
||||
0x3F, 0x9F, 0xFE, 0xFE, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xE0, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80,
|
||||
0x3F, 0xFE, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F,
|
||||
0xFE, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xFE,
|
||||
0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xFE, 0x00,
|
||||
0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0x00, 0x10, 0x00,
|
||||
0x01, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0,
|
||||
0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xC3, 0xFC, 0x7F, 0x01, 0xFC,
|
||||
0x7F, 0x00, 0xFE, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E,
|
||||
0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E,
|
||||
0xFE, 0x00, 0x7E, 0xFE, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x81, 0xFE,
|
||||
0x7F, 0xC3, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0,
|
||||
0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0xC0, 0x01, 0xFF, 0x00, 0x00, 0x10, 0x00,
|
||||
0x00, 0x04, 0x01, 0xF8, 0x3F, 0x83, 0xF1, 0xFF, 0x87, 0xE7, 0xFF, 0x8F,
|
||||
0xCF, 0xFF, 0x9F, 0xBF, 0xFF, 0x3F, 0x7F, 0xFF, 0x7F, 0xC1, 0xFE, 0xFF,
|
||||
0x01, 0xFD, 0xFC, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0,
|
||||
0x0F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFE, 0x00,
|
||||
0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x1F,
|
||||
0xFF, 0xF0, 0x7F, 0xBF, 0x7F, 0xFF, 0x7E, 0xFF, 0xFE, 0xFC, 0xFF, 0xF9,
|
||||
0xF9, 0xFF, 0xE3, 0xF1, 0xFF, 0xC7, 0xE1, 0xFE, 0x0F, 0xC0, 0x60, 0x1F,
|
||||
0x80, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8,
|
||||
0x00, 0x03, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80,
|
||||
0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x0F, 0xE0, 0xFC, 0x7F,
|
||||
0xF1, 0xF8, 0xFF, 0xF3, 0xF3, 0xFF, 0xE7, 0xEF, 0xFF, 0xEF, 0xDF, 0xFF,
|
||||
0xDF, 0xBF, 0xC1, 0xFF, 0xFF, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xF8, 0x03,
|
||||
0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F,
|
||||
0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF,
|
||||
0xF0, 0x0F, 0xFF, 0xF0, 0x1F, 0xEF, 0xF0, 0x7F, 0xDF, 0xFF, 0xFF, 0xBF,
|
||||
0xFF, 0xFF, 0x3F, 0xFE, 0xFE, 0x7F, 0xFD, 0xFC, 0x7F, 0xF3, 0xF8, 0x3F,
|
||||
0x87, 0xF0, 0x08, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00,
|
||||
0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x02,
|
||||
0x07, 0xE0, 0xFE, 0x3F, 0x1F, 0xF9, 0xF9, 0xFF, 0xEF, 0xCF, 0xFF, 0xFE,
|
||||
0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xF0, 0xFE, 0xFF, 0x03, 0xC7, 0xF0, 0x08,
|
||||
0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01,
|
||||
0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0,
|
||||
0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x00,
|
||||
0x00, 0x40, 0x00, 0xFF, 0xE0, 0x3F, 0xFF, 0x87, 0xFF, 0xFC, 0x7F, 0xFF,
|
||||
0xCF, 0xE0, 0xFE, 0xFC, 0x07, 0xEF, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xE0,
|
||||
0x00, 0xFF, 0x80, 0x07, 0xFF, 0x00, 0x7F, 0xFC, 0x03, 0xFF, 0xF0, 0x0F,
|
||||
0xFF, 0xC0, 0x7F, 0xFE, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0x00, 0x0F, 0xF0,
|
||||
0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xE0, 0x7F, 0xFE, 0x07, 0xFF, 0xFF, 0xFE,
|
||||
0x7F, 0xFF, 0xE7, 0xFF, 0xFC, 0x3F, 0xFF, 0x80, 0xFF, 0xE0, 0x00, 0x40,
|
||||
0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00,
|
||||
0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0xFF, 0xFF,
|
||||
0xC7, 0xFF, 0xFE, 0x3F, 0xFF, 0xF1, 0xFF, 0xFF, 0x8F, 0xFF, 0xFC, 0x7F,
|
||||
0xFF, 0xE0, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80,
|
||||
0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F,
|
||||
0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00,
|
||||
0x07, 0xE0, 0x00, 0x3F, 0x80, 0x01, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F,
|
||||
0xFF, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x1F, 0xFE, 0xFC, 0x00, 0xFF,
|
||||
0xF0, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0,
|
||||
0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, 0x03,
|
||||
0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, 0x03, 0xFF,
|
||||
0xC0, 0x0F, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, 0x07, 0xFF, 0xC0,
|
||||
0x1F, 0xFF, 0x80, 0x7F, 0xFF, 0x07, 0xFB, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF,
|
||||
0x8F, 0xFF, 0xFC, 0x3F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x7F, 0xF0, 0x00,
|
||||
0x08, 0x00, 0xFF, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xDF, 0xC0, 0x0F, 0xCF,
|
||||
0xF0, 0x0F, 0xE3, 0xF8, 0x07, 0xF1, 0xFC, 0x03, 0xF0, 0xFF, 0x01, 0xF8,
|
||||
0x3F, 0x81, 0xFC, 0x1F, 0xC0, 0xFC, 0x0F, 0xE0, 0x7E, 0x03, 0xF8, 0x7F,
|
||||
0x01, 0xFC, 0x3F, 0x80, 0xFE, 0x1F, 0x80, 0x3F, 0x9F, 0xC0, 0x1F, 0xCF,
|
||||
0xE0, 0x0F, 0xE7, 0xE0, 0x03, 0xFB, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF,
|
||||
0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x03,
|
||||
0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xC0, 0x00,
|
||||
0x1F, 0xE0, 0x00, 0xFE, 0x08, 0x1F, 0xFF, 0x82, 0x07, 0xFF, 0xE0, 0xC1,
|
||||
0xFB, 0xF8, 0x30, 0xFE, 0x7F, 0x0C, 0x3F, 0x9F, 0xC3, 0x0F, 0xE7, 0xF1,
|
||||
0xC3, 0xF1, 0xFC, 0x78, 0xFC, 0x7F, 0x1E, 0x3F, 0x0F, 0xE7, 0x9F, 0xC3,
|
||||
0xFB, 0xE7, 0xF0, 0xFE, 0xFD, 0xF8, 0x3F, 0xBF, 0x7E, 0x0F, 0xEF, 0xDF,
|
||||
0x81, 0xFB, 0xFF, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFC, 0x07, 0xFF,
|
||||
0xFF, 0x01, 0xFF, 0x7F, 0xC0, 0x3F, 0xDF, 0xF0, 0x0F, 0xF3, 0xFC, 0x03,
|
||||
0xFC, 0xFE, 0x00, 0xFE, 0x3F, 0x80, 0x3F, 0x8F, 0xE0, 0x07, 0xE1, 0xF8,
|
||||
0x01, 0xF8, 0x7E, 0x00, 0x7C, 0x1F, 0x00, 0x7F, 0x00, 0xFE, 0xFE, 0x03,
|
||||
0xF8, 0xFE, 0x07, 0xF1, 0xFC, 0x1F, 0xC1, 0xFC, 0x3F, 0x81, 0xF8, 0xFE,
|
||||
0x03, 0xF9, 0xF8, 0x03, 0xF7, 0xF0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0x80,
|
||||
0x0F, 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xE0, 0x00,
|
||||
0x7F, 0xC0, 0x00, 0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x1F,
|
||||
0xBF, 0x80, 0x7F, 0x3F, 0x00, 0xFC, 0x7F, 0x03, 0xF8, 0x7E, 0x07, 0xE0,
|
||||
0xFE, 0x1F, 0xC0, 0xFC, 0x3F, 0x81, 0xFC, 0xFE, 0x01, 0xFB, 0xFC, 0x03,
|
||||
0xF8, 0xFF, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xDF, 0xC0, 0x0F, 0xCF, 0xF0,
|
||||
0x07, 0xE3, 0xF8, 0x07, 0xF1, 0xFC, 0x03, 0xF0, 0xFE, 0x01, 0xF8, 0x3F,
|
||||
0x81, 0xFC, 0x1F, 0xC0, 0xFE, 0x0F, 0xE0, 0x7E, 0x03, 0xF8, 0x3F, 0x01,
|
||||
0xFC, 0x3F, 0x80, 0xFE, 0x1F, 0x80, 0x3F, 0x0F, 0xC0, 0x1F, 0xCF, 0xE0,
|
||||
0x0F, 0xE7, 0xE0, 0x03, 0xF3, 0xF0, 0x01, 0xFD, 0xF8, 0x00, 0xFF, 0xFC,
|
||||
0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xFF,
|
||||
0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0x1F,
|
||||
0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01,
|
||||
0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00,
|
||||
0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00,
|
||||
0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC7,
|
||||
0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00,
|
||||
0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x07,
|
||||
0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xF8,
|
||||
0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00,
|
||||
0x03, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x1F, 0xFF, 0xFE, 0x3F, 0xFF, 0xFC,
|
||||
0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xF0, 0x00, 0x7E, 0x03, 0xFC, 0x0F, 0xF8,
|
||||
0x1F, 0xF0, 0x7F, 0xE0, 0xFE, 0x01, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x0F,
|
||||
0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0,
|
||||
0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x01,
|
||||
0xF0, 0x03, 0xE0, 0x0F, 0xC0, 0x3F, 0x03, 0xFC, 0x07, 0xF0, 0x0F, 0x80,
|
||||
0x1F, 0xC0, 0x3F, 0xC0, 0x0F, 0xC0, 0x0F, 0xC0, 0x0F, 0x80, 0x1F, 0x00,
|
||||
0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F,
|
||||
0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0,
|
||||
0x07, 0xC0, 0x0F, 0xC0, 0x1F, 0xC0, 0x3F, 0xF0, 0x7F, 0xE0, 0x7F, 0xC0,
|
||||
0x7F, 0x80, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF8, 0x01, 0xFC, 0x03, 0xFC, 0x07,
|
||||
0xFC, 0x0F, 0xF8, 0x03, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x07, 0xC0, 0x0F,
|
||||
0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0xC0,
|
||||
0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03,
|
||||
0xE0, 0x07, 0xE0, 0x07, 0xC0, 0x0F, 0xE0, 0x0F, 0xF8, 0x0F, 0xF0, 0x03,
|
||||
0xE0, 0x3F, 0xC0, 0xFF, 0x83, 0xF8, 0x07, 0xC0, 0x1F, 0x80, 0x3E, 0x00,
|
||||
0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x1F,
|
||||
0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0,
|
||||
0x0F, 0xC0, 0x1F, 0x80, 0x7F, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xE0, 0x3F,
|
||||
0x80, 0x7E, 0x00, 0x0F, 0x80, 0x00, 0x9F, 0xF0, 0x00, 0x5F, 0xFF, 0x00,
|
||||
0x7F, 0xFF, 0xF0, 0x7F, 0x07, 0xFF, 0xFE, 0x00, 0xFF, 0xFA, 0x00, 0x0F,
|
||||
0xF9, 0x00, 0x00, 0xF8 };
|
||||
|
||||
const GFXglyph monofonto28pt7bGlyphs[] PROGMEM = {
|
||||
{ 0, 1, 1, 28, 0, 0 }, // 0x20 ' '
|
||||
{ 1, 7, 41, 28, 10, -39 }, // 0x21 '!'
|
||||
{ 37, 11, 13, 28, 8, -39 }, // 0x22 '"'
|
||||
{ 55, 26, 40, 28, 1, -39 }, // 0x23 '#'
|
||||
{ 185, 23, 51, 28, 3, -44 }, // 0x24 '$'
|
||||
{ 332, 28, 42, 28, 0, -40 }, // 0x25 '%'
|
||||
{ 479, 26, 42, 28, 1, -40 }, // 0x26 '&'
|
||||
{ 616, 4, 13, 28, 12, -39 }, // 0x27 '''
|
||||
{ 623, 11, 56, 28, 12, -44 }, // 0x28 '('
|
||||
{ 700, 12, 56, 28, 4, -44 }, // 0x29 ')'
|
||||
{ 784, 28, 26, 28, 0, -39 }, // 0x2A '*'
|
||||
{ 875, 25, 25, 28, 1, -31 }, // 0x2B '+'
|
||||
{ 954, 8, 15, 28, 9, -7 }, // 0x2C ','
|
||||
{ 969, 17, 6, 28, 5, -22 }, // 0x2D '-'
|
||||
{ 982, 7, 10, 28, 10, -8 }, // 0x2E '.'
|
||||
{ 991, 27, 53, 28, 0, -43 }, // 0x2F '/'
|
||||
{ 1170, 21, 42, 28, 3, -40 }, // 0x30 '0'
|
||||
{ 1281, 13, 40, 28, 5, -39 }, // 0x31 '1'
|
||||
{ 1346, 22, 41, 28, 3, -40 }, // 0x32 '2'
|
||||
{ 1459, 23, 42, 28, 2, -40 }, // 0x33 '3'
|
||||
{ 1580, 24, 40, 28, 2, -39 }, // 0x34 '4'
|
||||
{ 1700, 23, 41, 28, 2, -39 }, // 0x35 '5'
|
||||
{ 1818, 23, 41, 28, 2, -39 }, // 0x36 '6'
|
||||
{ 1936, 24, 40, 28, 2, -39 }, // 0x37 '7'
|
||||
{ 2056, 23, 42, 28, 2, -40 }, // 0x38 '8'
|
||||
{ 2177, 23, 41, 28, 2, -40 }, // 0x39 '9'
|
||||
{ 2295, 7, 29, 28, 10, -27 }, // 0x3A ':'
|
||||
{ 2321, 9, 36, 28, 9, -27 }, // 0x3B ';'
|
||||
{ 2362, 25, 30, 28, 1, -34 }, // 0x3C '<'
|
||||
{ 2456, 25, 16, 28, 1, -27 }, // 0x3D '='
|
||||
{ 2506, 25, 30, 28, 1, -34 }, // 0x3E '>'
|
||||
{ 2600, 20, 42, 28, 4, -40 }, // 0x3F '?'
|
||||
{ 2705, 26, 41, 28, 1, -32 }, // 0x40 '@'
|
||||
{ 2839, 24, 40, 28, 2, -39 }, // 0x41 'A'
|
||||
{ 2959, 22, 40, 28, 3, -39 }, // 0x42 'B'
|
||||
{ 3069, 22, 42, 28, 3, -40 }, // 0x43 'C'
|
||||
{ 3185, 22, 40, 28, 3, -39 }, // 0x44 'D'
|
||||
{ 3295, 20, 40, 28, 4, -39 }, // 0x45 'E'
|
||||
{ 3395, 20, 40, 28, 4, -39 }, // 0x46 'F'
|
||||
{ 3495, 22, 42, 28, 3, -40 }, // 0x47 'G'
|
||||
{ 3611, 22, 40, 28, 3, -39 }, // 0x48 'H'
|
||||
{ 3721, 19, 40, 28, 4, -39 }, // 0x49 'I'
|
||||
{ 3816, 20, 40, 28, 4, -39 }, // 0x4A 'J'
|
||||
{ 3916, 23, 40, 28, 3, -39 }, // 0x4B 'K'
|
||||
{ 4031, 21, 40, 28, 4, -39 }, // 0x4C 'L'
|
||||
{ 4136, 23, 40, 28, 2, -39 }, // 0x4D 'M'
|
||||
{ 4251, 23, 40, 28, 2, -39 }, // 0x4E 'N'
|
||||
{ 4366, 23, 42, 28, 2, -40 }, // 0x4F 'O'
|
||||
{ 4487, 23, 40, 28, 3, -39 }, // 0x50 'P'
|
||||
{ 4602, 23, 48, 28, 2, -40 }, // 0x51 'Q'
|
||||
{ 4740, 23, 40, 28, 3, -39 }, // 0x52 'R'
|
||||
{ 4855, 23, 42, 28, 3, -40 }, // 0x53 'S'
|
||||
{ 4976, 25, 40, 28, 1, -39 }, // 0x54 'T'
|
||||
{ 5101, 23, 41, 28, 2, -39 }, // 0x55 'U'
|
||||
{ 5219, 25, 40, 28, 1, -39 }, // 0x56 'V'
|
||||
{ 5344, 26, 40, 28, 1, -39 }, // 0x57 'W'
|
||||
{ 5474, 24, 40, 28, 2, -39 }, // 0x58 'X'
|
||||
{ 5594, 26, 40, 28, 1, -39 }, // 0x59 'Y'
|
||||
{ 5724, 25, 40, 28, 1, -39 }, // 0x5A 'Z'
|
||||
{ 5849, 11, 56, 28, 14, -44 }, // 0x5B '['
|
||||
{ 5926, 27, 53, 28, 0, -43 }, // 0x5C '\'
|
||||
{ 6105, 10, 56, 28, 3, -44 }, // 0x5D ']'
|
||||
{ 6175, 23, 18, 28, 2, -39 }, // 0x5E '^'
|
||||
{ 6227, 28, 4, 28, 0, 8 }, // 0x5F '_'
|
||||
{ 6241, 13, 10, 28, 7, -39 }, // 0x60 '`'
|
||||
{ 6258, 22, 29, 28, 3, -27 }, // 0x61 'a'
|
||||
{ 6338, 23, 41, 28, 3, -39 }, // 0x62 'b'
|
||||
{ 6456, 23, 29, 28, 2, -27 }, // 0x63 'c'
|
||||
{ 6540, 23, 41, 28, 2, -39 }, // 0x64 'd'
|
||||
{ 6658, 24, 29, 28, 2, -27 }, // 0x65 'e'
|
||||
{ 6745, 24, 40, 28, 2, -39 }, // 0x66 'f'
|
||||
{ 6865, 23, 40, 28, 2, -27 }, // 0x67 'g'
|
||||
{ 6980, 22, 40, 28, 3, -39 }, // 0x68 'h'
|
||||
{ 7090, 18, 41, 28, 5, -40 }, // 0x69 'i'
|
||||
{ 7183, 17, 52, 28, 4, -40 }, // 0x6A 'j'
|
||||
{ 7294, 22, 40, 28, 3, -39 }, // 0x6B 'k'
|
||||
{ 7404, 12, 40, 28, 6, -39 }, // 0x6C 'l'
|
||||
{ 7464, 25, 28, 28, 1, -27 }, // 0x6D 'm'
|
||||
{ 7552, 22, 28, 28, 3, -27 }, // 0x6E 'n'
|
||||
{ 7629, 24, 29, 28, 2, -27 }, // 0x6F 'o'
|
||||
{ 7716, 23, 39, 28, 2, -27 }, // 0x70 'p'
|
||||
{ 7829, 23, 39, 28, 2, -27 }, // 0x71 'q'
|
||||
{ 7942, 21, 28, 28, 3, -27 }, // 0x72 'r'
|
||||
{ 8016, 20, 29, 28, 4, -27 }, // 0x73 's'
|
||||
{ 8089, 21, 35, 28, 3, -34 }, // 0x74 't'
|
||||
{ 8181, 22, 28, 28, 3, -26 }, // 0x75 'u'
|
||||
{ 8258, 25, 27, 28, 1, -26 }, // 0x76 'v'
|
||||
{ 8343, 26, 27, 28, 1, -26 }, // 0x77 'w'
|
||||
{ 8431, 23, 27, 28, 2, -26 }, // 0x78 'x'
|
||||
{ 8509, 25, 38, 28, 1, -26 }, // 0x79 'y'
|
||||
{ 8628, 23, 27, 28, 2, -26 }, // 0x7A 'z'
|
||||
{ 8706, 15, 56, 28, 10, -44 }, // 0x7B '{'
|
||||
{ 8811, 4, 53, 28, 12, -43 }, // 0x7C '|'
|
||||
{ 8838, 15, 56, 28, 3, -44 }, // 0x7D '}'
|
||||
{ 8943, 25, 8, 28, 1, -23 } }; // 0x7E '~'
|
||||
|
||||
const GFXfont monofonto28pt7b PROGMEM = {
|
||||
(uint8_t *)monofonto28pt7bBitmaps,
|
||||
(GFXglyph *)monofonto28pt7bGlyphs,
|
||||
0x20, 0x7E, 66 };
|
||||
|
||||
// Approx. 9640 bytes
|
|
@ -0,0 +1,144 @@
|
|||
const uint8_t monofonto6pt7bBitmaps[] PROGMEM = {
|
||||
0x00, 0xFF, 0xF0, 0xC0, 0xFC, 0x28, 0xA2, 0x9F, 0x29, 0x4F, 0x94, 0x50,
|
||||
0x47, 0xA5, 0x0E, 0x38, 0x73, 0xF3, 0x10, 0xC6, 0xAA, 0xAC, 0xEC, 0xD5,
|
||||
0x55, 0x8C, 0x71, 0x45, 0x1C, 0x63, 0xD9, 0xB6, 0x7C, 0xE0, 0x5A, 0xAA,
|
||||
0xAD, 0xA5, 0x55, 0x5E, 0x32, 0x9F, 0xCC, 0x49, 0x20, 0x20, 0x8F, 0xC8,
|
||||
0x20, 0xFA, 0xF0, 0xC0, 0x04, 0x20, 0x82, 0x10, 0x42, 0x08, 0x21, 0x04,
|
||||
0x20, 0xF9, 0x99, 0x99, 0x99, 0xF0, 0x2F, 0x92, 0x49, 0x20, 0xE9, 0x91,
|
||||
0x32, 0x64, 0xF0, 0x31, 0x20, 0x82, 0x18, 0x2C, 0xD2, 0x78, 0x18, 0xE3,
|
||||
0x96, 0x59, 0x6F, 0xC6, 0x18, 0xF4, 0x21, 0x0F, 0x48, 0x76, 0xE0, 0x18,
|
||||
0xC3, 0x18, 0x79, 0x2C, 0xD2, 0x38, 0xFC, 0x21, 0x86, 0x10, 0xC3, 0x18,
|
||||
0x60, 0x31, 0xA4, 0x92, 0x31, 0x2C, 0xD2, 0x78, 0x71, 0xAC, 0xD2, 0x78,
|
||||
0x61, 0x0C, 0x60, 0xC0, 0x30, 0xC0, 0xE8, 0x0C, 0xCC, 0x18, 0x18, 0x10,
|
||||
0xFC, 0x00, 0x3F, 0xC0, 0xC0, 0xC6, 0x62, 0x00, 0x6F, 0x13, 0x66, 0x00,
|
||||
0x60, 0x79, 0x38, 0x6D, 0xB6, 0xF8, 0x10, 0x20, 0x30, 0xC3, 0x0C, 0x79,
|
||||
0xE7, 0x92, 0xCC, 0xFB, 0x99, 0xEB, 0x9B, 0xF0, 0xF9, 0x88, 0x88, 0x8F,
|
||||
0xF0, 0xFB, 0x99, 0x99, 0x99, 0xF0, 0xF8, 0x88, 0xF8, 0x88, 0xF0, 0xF8,
|
||||
0x88, 0xF8, 0x88, 0x80, 0xFD, 0x88, 0xB9, 0x99, 0xF0, 0x99, 0x99, 0xF9,
|
||||
0x99, 0x90, 0xF6, 0x66, 0x66, 0x66, 0xF0, 0x31, 0x11, 0x11, 0x13, 0xE0,
|
||||
0x9D, 0xA9, 0x4E, 0x52, 0xD6, 0x98, 0x88, 0x88, 0x88, 0x88, 0xF0, 0xCF,
|
||||
0x3F, 0xFF, 0xFF, 0xFD, 0xF3, 0xCC, 0x9D, 0xDD, 0xFB, 0xBB, 0x90, 0x79,
|
||||
0x2C, 0xF3, 0xCF, 0x3C, 0xD2, 0x78, 0xF5, 0xA7, 0x39, 0x7A, 0x10, 0x80,
|
||||
0x79, 0x2C, 0xF3, 0xCF, 0x3C, 0xD2, 0x78, 0x60, 0x80, 0xF5, 0xA7, 0x2F,
|
||||
0x72, 0x96, 0x98, 0xF4, 0xA1, 0x87, 0x18, 0x7E, 0xF0, 0xFC, 0xC3, 0x0C,
|
||||
0x30, 0xC3, 0x0C, 0x30, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xD2, 0x78, 0xCD,
|
||||
0x24, 0x9A, 0x79, 0xE3, 0x0C, 0x30, 0xCF, 0x3D, 0xDE, 0x79, 0xE7, 0x9E,
|
||||
0x48, 0xCD, 0xE7, 0x8C, 0x30, 0xC7, 0x9E, 0xCC, 0xCD, 0x27, 0x9E, 0x30,
|
||||
0xC3, 0x0C, 0x30, 0xFC, 0x61, 0x84, 0x30, 0x86, 0x18, 0xFC, 0xEA, 0xAA,
|
||||
0xAB, 0x81, 0x04, 0x10, 0x20, 0x81, 0x04, 0x10, 0x20, 0x81, 0xD5, 0x55,
|
||||
0x57, 0x30, 0xC4, 0xB3, 0xFC, 0xD0, 0xF9, 0xF9, 0xBF, 0x84, 0x21, 0x6D,
|
||||
0x4E, 0x7A, 0xB0, 0x3B, 0x71, 0x86, 0x9C, 0x08, 0x42, 0xD5, 0xE7, 0x2B,
|
||||
0x68, 0x79, 0x2F, 0xF0, 0x49, 0xE0, 0x7A, 0x11, 0xE4, 0x21, 0x08, 0x40,
|
||||
0x7A, 0xF3, 0x95, 0xBF, 0x6F, 0x88, 0x8B, 0xD9, 0x99, 0x90, 0x60, 0x0E,
|
||||
0x66, 0x66, 0xF0, 0x30, 0x0F, 0x33, 0x33, 0x32, 0xE0, 0x88, 0x8B, 0xAE,
|
||||
0xEB, 0xB0, 0xE4, 0x92, 0x49, 0x20, 0xEB, 0xFE, 0xFB, 0xEF, 0xB0, 0xBD,
|
||||
0x99, 0x99, 0x31, 0xEC, 0xF3, 0x68, 0xC0, 0xFE, 0xF3, 0x9D, 0xFF, 0x18,
|
||||
0x6A, 0xF3, 0x95, 0xB4, 0x21, 0xBD, 0x88, 0x88, 0xEB, 0xC3, 0x9F, 0x44,
|
||||
0xF4, 0x44, 0x47, 0x99, 0x99, 0x9F, 0xCD, 0x26, 0x9E, 0x30, 0xC0, 0xDF,
|
||||
0x77, 0x9E, 0x79, 0xE0, 0x49, 0xE3, 0x0C, 0x7B, 0x30, 0xCD, 0x26, 0x9E,
|
||||
0x30, 0xC3, 0x08, 0x78, 0xCC, 0x46, 0x7C, 0x6D, 0x25, 0x92, 0x49, 0x90,
|
||||
0xFF, 0xE0, 0xD9, 0x24, 0xD2, 0x4B, 0x40, 0xE6, 0xF0 };
|
||||
|
||||
const GFXglyph monofonto6pt7bGlyphs[] PROGMEM = {
|
||||
{ 0, 1, 1, 6, 0, 0 }, // 0x20 ' '
|
||||
{ 1, 2, 9, 6, 2, -8 }, // 0x21 '!'
|
||||
{ 4, 2, 3, 6, 2, -8 }, // 0x22 '"'
|
||||
{ 5, 6, 9, 6, 0, -8 }, // 0x23 '#'
|
||||
{ 12, 5, 11, 6, 1, -9 }, // 0x24 '$'
|
||||
{ 19, 6, 9, 6, 0, -8 }, // 0x25 '%'
|
||||
{ 26, 6, 9, 6, 0, -8 }, // 0x26 '&'
|
||||
{ 33, 1, 3, 6, 3, -8 }, // 0x27 '''
|
||||
{ 34, 2, 12, 6, 3, -9 }, // 0x28 '('
|
||||
{ 37, 2, 12, 6, 1, -9 }, // 0x29 ')'
|
||||
{ 40, 6, 6, 6, 0, -8 }, // 0x2A '*'
|
||||
{ 45, 6, 5, 6, 0, -6 }, // 0x2B '+'
|
||||
{ 49, 2, 4, 6, 2, -1 }, // 0x2C ','
|
||||
{ 50, 4, 1, 6, 1, -4 }, // 0x2D '-'
|
||||
{ 51, 2, 1, 6, 2, 0 }, // 0x2E '.'
|
||||
{ 52, 6, 12, 6, 0, -9 }, // 0x2F '/'
|
||||
{ 61, 4, 9, 6, 1, -8 }, // 0x30 '0'
|
||||
{ 66, 3, 9, 6, 1, -8 }, // 0x31 '1'
|
||||
{ 70, 4, 9, 6, 1, -8 }, // 0x32 '2'
|
||||
{ 75, 6, 9, 6, 0, -8 }, // 0x33 '3'
|
||||
{ 82, 6, 9, 6, 0, -8 }, // 0x34 '4'
|
||||
{ 89, 5, 9, 6, 1, -8 }, // 0x35 '5'
|
||||
{ 95, 6, 9, 6, 0, -8 }, // 0x36 '6'
|
||||
{ 102, 6, 9, 6, 0, -8 }, // 0x37 '7'
|
||||
{ 109, 6, 9, 6, 0, -8 }, // 0x38 '8'
|
||||
{ 116, 6, 9, 6, 0, -8 }, // 0x39 '9'
|
||||
{ 123, 2, 6, 6, 2, -5 }, // 0x3A ':'
|
||||
{ 125, 2, 7, 6, 2, -5 }, // 0x3B ';'
|
||||
{ 127, 6, 6, 6, 0, -6 }, // 0x3C '<'
|
||||
{ 132, 6, 4, 6, 0, -5 }, // 0x3D '='
|
||||
{ 135, 6, 6, 6, 0, -6 }, // 0x3E '>'
|
||||
{ 140, 4, 9, 6, 1, -8 }, // 0x3F '?'
|
||||
{ 145, 6, 9, 6, 0, -6 }, // 0x40 '@'
|
||||
{ 152, 6, 9, 6, 0, -8 }, // 0x41 'A'
|
||||
{ 159, 4, 9, 6, 1, -8 }, // 0x42 'B'
|
||||
{ 164, 4, 9, 6, 1, -8 }, // 0x43 'C'
|
||||
{ 169, 4, 9, 6, 1, -8 }, // 0x44 'D'
|
||||
{ 174, 4, 9, 6, 1, -8 }, // 0x45 'E'
|
||||
{ 179, 4, 9, 6, 1, -8 }, // 0x46 'F'
|
||||
{ 184, 4, 9, 6, 1, -8 }, // 0x47 'G'
|
||||
{ 189, 4, 9, 6, 1, -8 }, // 0x48 'H'
|
||||
{ 194, 4, 9, 6, 1, -8 }, // 0x49 'I'
|
||||
{ 199, 4, 9, 6, 1, -8 }, // 0x4A 'J'
|
||||
{ 204, 5, 9, 6, 1, -8 }, // 0x4B 'K'
|
||||
{ 210, 4, 9, 6, 1, -8 }, // 0x4C 'L'
|
||||
{ 215, 6, 9, 6, 0, -8 }, // 0x4D 'M'
|
||||
{ 222, 4, 9, 6, 1, -8 }, // 0x4E 'N'
|
||||
{ 227, 6, 9, 6, 0, -8 }, // 0x4F 'O'
|
||||
{ 234, 5, 9, 6, 1, -8 }, // 0x50 'P'
|
||||
{ 240, 6, 11, 6, 0, -8 }, // 0x51 'Q'
|
||||
{ 249, 5, 9, 6, 1, -8 }, // 0x52 'R'
|
||||
{ 255, 5, 9, 6, 1, -8 }, // 0x53 'S'
|
||||
{ 261, 6, 9, 6, 0, -8 }, // 0x54 'T'
|
||||
{ 268, 6, 9, 6, 0, -8 }, // 0x55 'U'
|
||||
{ 275, 6, 9, 6, 0, -8 }, // 0x56 'V'
|
||||
{ 282, 6, 9, 6, 0, -8 }, // 0x57 'W'
|
||||
{ 289, 6, 9, 6, 0, -8 }, // 0x58 'X'
|
||||
{ 296, 6, 9, 6, 0, -8 }, // 0x59 'Y'
|
||||
{ 303, 6, 9, 6, 0, -8 }, // 0x5A 'Z'
|
||||
{ 310, 2, 12, 6, 3, -9 }, // 0x5B '['
|
||||
{ 313, 6, 12, 6, 0, -9 }, // 0x5C '\'
|
||||
{ 322, 2, 12, 6, 1, -9 }, // 0x5D ']'
|
||||
{ 325, 6, 4, 6, 0, -8 }, // 0x5E '^'
|
||||
{ 328, 6, 1, 6, 0, 2 }, // 0x5F '_'
|
||||
{ 329, 2, 2, 6, 2, -8 }, // 0x60 '`'
|
||||
{ 330, 4, 6, 6, 1, -5 }, // 0x61 'a'
|
||||
{ 333, 5, 9, 6, 1, -8 }, // 0x62 'b'
|
||||
{ 339, 5, 6, 6, 0, -5 }, // 0x63 'c'
|
||||
{ 343, 5, 9, 6, 0, -8 }, // 0x64 'd'
|
||||
{ 349, 6, 6, 6, 0, -5 }, // 0x65 'e'
|
||||
{ 354, 5, 9, 6, 1, -8 }, // 0x66 'f'
|
||||
{ 360, 5, 8, 6, 0, -5 }, // 0x67 'g'
|
||||
{ 365, 4, 9, 6, 1, -8 }, // 0x68 'h'
|
||||
{ 370, 4, 9, 6, 1, -8 }, // 0x69 'i'
|
||||
{ 375, 4, 11, 6, 1, -8 }, // 0x6A 'j'
|
||||
{ 381, 4, 9, 6, 1, -8 }, // 0x6B 'k'
|
||||
{ 386, 3, 9, 6, 1, -8 }, // 0x6C 'l'
|
||||
{ 390, 6, 6, 6, 0, -5 }, // 0x6D 'm'
|
||||
{ 395, 4, 6, 6, 1, -5 }, // 0x6E 'n'
|
||||
{ 398, 6, 6, 6, 0, -5 }, // 0x6F 'o'
|
||||
{ 403, 5, 8, 6, 0, -5 }, // 0x70 'p'
|
||||
{ 408, 5, 8, 6, 0, -5 }, // 0x71 'q'
|
||||
{ 413, 4, 6, 6, 1, -5 }, // 0x72 'r'
|
||||
{ 416, 4, 6, 6, 1, -5 }, // 0x73 's'
|
||||
{ 419, 4, 8, 6, 1, -7 }, // 0x74 't'
|
||||
{ 423, 4, 6, 6, 1, -5 }, // 0x75 'u'
|
||||
{ 426, 6, 6, 6, 0, -5 }, // 0x76 'v'
|
||||
{ 431, 6, 6, 6, 0, -5 }, // 0x77 'w'
|
||||
{ 436, 6, 6, 6, 0, -5 }, // 0x78 'x'
|
||||
{ 441, 6, 8, 6, 0, -5 }, // 0x79 'y'
|
||||
{ 447, 5, 6, 6, 0, -5 }, // 0x7A 'z'
|
||||
{ 451, 3, 12, 6, 2, -9 }, // 0x7B '{'
|
||||
{ 456, 1, 11, 6, 3, -8 }, // 0x7C '|'
|
||||
{ 458, 3, 12, 6, 1, -9 }, // 0x7D '}'
|
||||
{ 463, 6, 2, 6, 0, -5 } }; // 0x7E '~'
|
||||
|
||||
const GFXfont monofonto6pt7b PROGMEM = {
|
||||
(uint8_t *)monofonto6pt7bBitmaps,
|
||||
(GFXglyph *)monofonto6pt7bGlyphs,
|
||||
0x20, 0x7E, 14 };
|
||||
|
||||
// Approx. 1137 bytes
|
|
@ -0,0 +1,168 @@
|
|||
const uint8_t monofonto8pt7bBitmaps[] PROGMEM = {
|
||||
0x00, 0xFF, 0xFC, 0xFC, 0x99, 0x99, 0x1A, 0x12, 0x16, 0x7F, 0x24, 0x24,
|
||||
0x7E, 0xFE, 0x68, 0x48, 0x48, 0x30, 0xC7, 0xF3, 0xC3, 0x0F, 0x1F, 0x3C,
|
||||
0x30, 0xF3, 0xFC, 0xE3, 0x00, 0xE3, 0xA2, 0xA4, 0xA4, 0xEF, 0x1D, 0x15,
|
||||
0x25, 0x25, 0x45, 0xC7, 0x38, 0x7C, 0x6C, 0x6C, 0x38, 0x30, 0x7B, 0xCE,
|
||||
0xCC, 0x7E, 0x7B, 0xFF, 0x23, 0x26, 0x64, 0x4C, 0xC4, 0x44, 0x66, 0x23,
|
||||
0x4C, 0x66, 0x62, 0x23, 0x32, 0x22, 0x66, 0x4C, 0x18, 0x18, 0xDB, 0xFF,
|
||||
0x18, 0x34, 0x66, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0xFA, 0xFF,
|
||||
0xFC, 0x03, 0x02, 0x06, 0x04, 0x04, 0x0C, 0x08, 0x18, 0x10, 0x30, 0x20,
|
||||
0x20, 0x60, 0x40, 0xC0, 0x7B, 0xFC, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xF7,
|
||||
0x80, 0x2F, 0xFE, 0xDB, 0x6D, 0xB0, 0x7B, 0xFC, 0xC3, 0x0C, 0x61, 0x8C,
|
||||
0x71, 0xFF, 0xC0, 0x7B, 0xFC, 0xC3, 0x0C, 0x60, 0xC3, 0xCF, 0xF7, 0x80,
|
||||
0x18, 0x70, 0xA3, 0x44, 0x99, 0x22, 0x7F, 0xFE, 0x30, 0x60, 0xFF, 0xFC,
|
||||
0x30, 0xFB, 0xFC, 0xC3, 0x4F, 0xF7, 0x80, 0x18, 0xC3, 0x18, 0x7B, 0xFC,
|
||||
0xF3, 0xCF, 0xF7, 0x80, 0xFF, 0xF8, 0x30, 0xC1, 0x87, 0x0C, 0x18, 0x60,
|
||||
0xC3, 0x80, 0x7B, 0xFC, 0xF3, 0x7B, 0xFC, 0xE1, 0xCF, 0xF7, 0x80, 0x7B,
|
||||
0xFC, 0xF3, 0xCF, 0xF7, 0x86, 0x30, 0xC6, 0x00, 0xFC, 0x3F, 0xFC, 0x0F,
|
||||
0xA0, 0x01, 0x07, 0x1C, 0x60, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xFF, 0xFF,
|
||||
0x00, 0x00, 0xFF, 0xFF, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x0E, 0x38, 0xE0,
|
||||
0x80, 0x7B, 0xFC, 0xC3, 0x18, 0xC3, 0x00, 0x20, 0xC3, 0x00, 0x3C, 0x62,
|
||||
0x41, 0xC1, 0x9D, 0x95, 0x95, 0xDE, 0x40, 0x60, 0x30, 0x10, 0x30, 0xC7,
|
||||
0x9E, 0x79, 0xE5, 0xBF, 0xFF, 0x3C, 0xC0, 0xFB, 0xFC, 0xF3, 0xCF, 0xCC,
|
||||
0xF3, 0xCF, 0xFF, 0x80, 0x7B, 0xFC, 0xF0, 0xC3, 0x0C, 0x30, 0xCF, 0xF7,
|
||||
0x80, 0xFB, 0xFC, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xFF, 0x80, 0xFF, 0xFC,
|
||||
0x30, 0xFB, 0xEC, 0x30, 0xC3, 0xFF, 0xC0, 0xFF, 0xFC, 0x30, 0xFB, 0xEC,
|
||||
0x30, 0xC3, 0x0C, 0x00, 0x7B, 0xFC, 0xF0, 0xDF, 0x7C, 0xF3, 0xCF, 0xF7,
|
||||
0x40, 0xCF, 0x3C, 0xF3, 0xFF, 0xFC, 0xF3, 0xCF, 0x3C, 0xC0, 0xFF, 0xF3,
|
||||
0x0C, 0x30, 0xC3, 0x0C, 0x33, 0xFF, 0xC0, 0x1C, 0x70, 0xC3, 0x0C, 0x30,
|
||||
0xC3, 0x0F, 0xEF, 0x80, 0xCD, 0x9B, 0x66, 0xCF, 0x1E, 0x3C, 0x6C, 0xD9,
|
||||
0x9B, 0x38, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0xFF, 0xC0, 0xCF,
|
||||
0x3C, 0xFF, 0xFE, 0xDB, 0x6D, 0x96, 0x18, 0x40, 0xCF, 0xBE, 0xFB, 0xFF,
|
||||
0xFF, 0xF7, 0xDF, 0x3C, 0xC0, 0x7B, 0xFC, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF,
|
||||
0xF7, 0x80, 0xF9, 0xFB, 0x36, 0x7C, 0xDF, 0xBE, 0x60, 0xC1, 0x83, 0x00,
|
||||
0x7B, 0xFC, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xF7, 0x86, 0x0C, 0xF9, 0xFB,
|
||||
0x36, 0x6C, 0xDF, 0xBC, 0x7C, 0xD9, 0xBB, 0x38, 0x7B, 0xFC, 0xF0, 0xF1,
|
||||
0xE1, 0xC3, 0xCF, 0xF7, 0x80, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18,
|
||||
0x18, 0x18, 0x18, 0x18, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xF7,
|
||||
0x80, 0xE3, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x3C, 0x3C, 0x3C, 0x18, 0x18,
|
||||
0xC3, 0xC3, 0xCB, 0x6E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x66, 0x24, 0xE7,
|
||||
0x66, 0x3C, 0x3C, 0x3C, 0x18, 0x3C, 0x3C, 0x3C, 0x66, 0xE7, 0xE7, 0x66,
|
||||
0x66, 0x3C, 0x3C, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7F, 0x7E, 0x0C,
|
||||
0x0C, 0x1C, 0x18, 0x38, 0x30, 0x70, 0x7E, 0xFE, 0xFF, 0x6D, 0xB6, 0xDB,
|
||||
0x6D, 0xBF, 0xC0, 0x40, 0x60, 0x20, 0x20, 0x30, 0x10, 0x18, 0x08, 0x0C,
|
||||
0x04, 0x04, 0x06, 0x02, 0x03, 0xFD, 0xB6, 0xDB, 0x6D, 0xB6, 0xFF, 0x31,
|
||||
0xE4, 0xB3, 0x84, 0xFF, 0xFF, 0xE6, 0x30, 0x7B, 0xF0, 0xDF, 0xFF, 0x3F,
|
||||
0x5D, 0xC3, 0x0C, 0x36, 0xFF, 0x3C, 0x71, 0xCF, 0xFD, 0x80, 0x3F, 0xFC,
|
||||
0x30, 0xC3, 0x1F, 0xDF, 0x0C, 0x30, 0xDB, 0xFF, 0x3C, 0xF3, 0xCF, 0xF6,
|
||||
0xC0, 0x3C, 0x7E, 0x66, 0x7F, 0xE0, 0x64, 0x7E, 0x3C, 0x3D, 0xF6, 0x3E,
|
||||
0xF9, 0x86, 0x18, 0x61, 0x86, 0x00, 0x7F, 0xFC, 0xF3, 0xCF, 0x3F, 0xDF,
|
||||
0x8F, 0xF7, 0x80, 0xC3, 0x0C, 0x37, 0xFF, 0x3C, 0xF3, 0xCF, 0x3C, 0xC0,
|
||||
0x30, 0xC0, 0x3C, 0xF0, 0xC3, 0x0C, 0x33, 0xFF, 0xC0, 0x18, 0xC0, 0xF7,
|
||||
0x8C, 0x63, 0x18, 0xC6, 0x3F, 0xF8, 0xC3, 0x0C, 0x33, 0xDB, 0xCF, 0x3C,
|
||||
0xDB, 0x6C, 0xC0, 0xFD, 0xB6, 0xDB, 0x6D, 0x80, 0xD6, 0xFF, 0xDB, 0xDB,
|
||||
0xDB, 0xDB, 0xDB, 0xDB, 0xDF, 0xFC, 0xF3, 0xCF, 0x3C, 0xF3, 0x7B, 0xFC,
|
||||
0xF3, 0xCF, 0x3F, 0xDE, 0xBA, 0xFC, 0xE3, 0x8F, 0x3B, 0xEE, 0x82, 0x08,
|
||||
0x00, 0x6F, 0xFC, 0xF3, 0xCF, 0x3F, 0xDB, 0x0C, 0x30, 0xC0, 0xDB, 0xFC,
|
||||
0xB0, 0xC3, 0x0C, 0x30, 0x7B, 0x3C, 0x1E, 0x3C, 0x3C, 0xDE, 0x20, 0x8F,
|
||||
0xBE, 0x20, 0x82, 0x08, 0x3C, 0xF0, 0xCF, 0x3C, 0xF3, 0xCF, 0x3F, 0xDE,
|
||||
0xE3, 0x66, 0x66, 0x36, 0x3C, 0x3C, 0x3C, 0x18, 0xCB, 0x6A, 0x7E, 0x7E,
|
||||
0x7E, 0x7E, 0x3E, 0x24, 0xCD, 0x27, 0x8C, 0x31, 0xEC, 0xF3, 0xE3, 0x66,
|
||||
0x66, 0x36, 0x3C, 0x3C, 0x3C, 0x18, 0x18, 0x18, 0x30, 0xFF, 0xE1, 0x8C,
|
||||
0x31, 0x8F, 0xFF, 0x37, 0x66, 0x66, 0x6C, 0xC6, 0x66, 0x66, 0x73, 0xFF,
|
||||
0xFF, 0xFF, 0xFC, 0xCE, 0x66, 0x66, 0x63, 0x36, 0x66, 0x66, 0xEC, 0x61,
|
||||
0xFF, 0x8E };
|
||||
|
||||
const GFXglyph monofonto8pt7bGlyphs[] PROGMEM = {
|
||||
{ 0, 1, 1, 8, 0, 0 }, // 0x20 ' '
|
||||
{ 1, 2, 11, 8, 3, -10 }, // 0x21 '!'
|
||||
{ 4, 4, 4, 8, 2, -10 }, // 0x22 '"'
|
||||
{ 6, 8, 11, 8, 0, -10 }, // 0x23 '#'
|
||||
{ 17, 6, 15, 8, 1, -12 }, // 0x24 '$'
|
||||
{ 29, 8, 11, 8, 0, -10 }, // 0x25 '%'
|
||||
{ 40, 8, 11, 8, 0, -10 }, // 0x26 '&'
|
||||
{ 51, 2, 4, 8, 3, -10 }, // 0x27 '''
|
||||
{ 52, 4, 16, 8, 3, -12 }, // 0x28 '('
|
||||
{ 60, 4, 16, 8, 1, -12 }, // 0x29 ')'
|
||||
{ 68, 8, 7, 8, 0, -10 }, // 0x2A '*'
|
||||
{ 75, 8, 7, 8, 0, -8 }, // 0x2B '+'
|
||||
{ 82, 2, 4, 8, 3, -1 }, // 0x2C ','
|
||||
{ 83, 4, 2, 8, 2, -6 }, // 0x2D '-'
|
||||
{ 84, 2, 3, 8, 3, -2 }, // 0x2E '.'
|
||||
{ 85, 8, 15, 8, 0, -11 }, // 0x2F '/'
|
||||
{ 100, 6, 11, 8, 1, -10 }, // 0x30 '0'
|
||||
{ 109, 3, 12, 8, 2, -11 }, // 0x31 '1'
|
||||
{ 114, 6, 11, 8, 1, -10 }, // 0x32 '2'
|
||||
{ 123, 6, 11, 8, 1, -10 }, // 0x33 '3'
|
||||
{ 132, 7, 11, 8, 1, -10 }, // 0x34 '4'
|
||||
{ 142, 6, 11, 8, 1, -10 }, // 0x35 '5'
|
||||
{ 151, 6, 11, 8, 1, -10 }, // 0x36 '6'
|
||||
{ 160, 7, 11, 8, 1, -10 }, // 0x37 '7'
|
||||
{ 170, 6, 11, 8, 1, -10 }, // 0x38 '8'
|
||||
{ 179, 6, 11, 8, 1, -10 }, // 0x39 '9'
|
||||
{ 188, 2, 8, 8, 3, -7 }, // 0x3A ':'
|
||||
{ 190, 2, 10, 8, 3, -7 }, // 0x3B ';'
|
||||
{ 193, 8, 9, 8, 0, -9 }, // 0x3C '<'
|
||||
{ 202, 8, 6, 8, 0, -7 }, // 0x3D '='
|
||||
{ 208, 8, 9, 8, 0, -9 }, // 0x3E '>'
|
||||
{ 217, 6, 11, 8, 1, -10 }, // 0x3F '?'
|
||||
{ 226, 8, 12, 8, 0, -8 }, // 0x40 '@'
|
||||
{ 238, 6, 11, 8, 1, -10 }, // 0x41 'A'
|
||||
{ 247, 6, 11, 8, 1, -10 }, // 0x42 'B'
|
||||
{ 256, 6, 11, 8, 1, -10 }, // 0x43 'C'
|
||||
{ 265, 6, 11, 8, 1, -10 }, // 0x44 'D'
|
||||
{ 274, 6, 11, 8, 1, -10 }, // 0x45 'E'
|
||||
{ 283, 6, 11, 8, 1, -10 }, // 0x46 'F'
|
||||
{ 292, 6, 11, 8, 1, -10 }, // 0x47 'G'
|
||||
{ 301, 6, 11, 8, 1, -10 }, // 0x48 'H'
|
||||
{ 310, 6, 11, 8, 1, -10 }, // 0x49 'I'
|
||||
{ 319, 6, 11, 8, 1, -10 }, // 0x4A 'J'
|
||||
{ 328, 7, 11, 8, 1, -10 }, // 0x4B 'K'
|
||||
{ 338, 6, 11, 8, 1, -10 }, // 0x4C 'L'
|
||||
{ 347, 6, 11, 8, 1, -10 }, // 0x4D 'M'
|
||||
{ 356, 6, 11, 8, 1, -10 }, // 0x4E 'N'
|
||||
{ 365, 6, 11, 8, 1, -10 }, // 0x4F 'O'
|
||||
{ 374, 7, 11, 8, 1, -10 }, // 0x50 'P'
|
||||
{ 384, 6, 13, 8, 1, -10 }, // 0x51 'Q'
|
||||
{ 394, 7, 11, 8, 1, -10 }, // 0x52 'R'
|
||||
{ 404, 6, 11, 8, 1, -10 }, // 0x53 'S'
|
||||
{ 413, 8, 11, 8, 0, -10 }, // 0x54 'T'
|
||||
{ 424, 6, 11, 8, 1, -10 }, // 0x55 'U'
|
||||
{ 433, 8, 11, 8, 0, -10 }, // 0x56 'V'
|
||||
{ 444, 8, 11, 8, 0, -10 }, // 0x57 'W'
|
||||
{ 455, 8, 11, 8, 0, -10 }, // 0x58 'X'
|
||||
{ 466, 8, 11, 8, 0, -10 }, // 0x59 'Y'
|
||||
{ 477, 8, 11, 8, 0, -10 }, // 0x5A 'Z'
|
||||
{ 488, 3, 16, 8, 4, -12 }, // 0x5B '['
|
||||
{ 494, 8, 15, 8, 0, -11 }, // 0x5C '\'
|
||||
{ 509, 3, 16, 8, 1, -12 }, // 0x5D ']'
|
||||
{ 515, 6, 5, 8, 1, -10 }, // 0x5E '^'
|
||||
{ 519, 8, 2, 8, 0, 2 }, // 0x5F '_'
|
||||
{ 521, 4, 3, 8, 2, -10 }, // 0x60 '`'
|
||||
{ 523, 6, 8, 8, 1, -7 }, // 0x61 'a'
|
||||
{ 529, 6, 11, 8, 1, -10 }, // 0x62 'b'
|
||||
{ 538, 6, 8, 8, 1, -7 }, // 0x63 'c'
|
||||
{ 544, 6, 11, 8, 1, -10 }, // 0x64 'd'
|
||||
{ 553, 8, 8, 8, 0, -7 }, // 0x65 'e'
|
||||
{ 561, 6, 11, 8, 1, -10 }, // 0x66 'f'
|
||||
{ 570, 6, 11, 8, 1, -7 }, // 0x67 'g'
|
||||
{ 579, 6, 11, 8, 1, -10 }, // 0x68 'h'
|
||||
{ 588, 6, 11, 8, 1, -10 }, // 0x69 'i'
|
||||
{ 597, 5, 14, 8, 1, -10 }, // 0x6A 'j'
|
||||
{ 606, 6, 11, 8, 1, -10 }, // 0x6B 'k'
|
||||
{ 615, 3, 11, 8, 2, -10 }, // 0x6C 'l'
|
||||
{ 620, 8, 8, 8, 0, -7 }, // 0x6D 'm'
|
||||
{ 628, 6, 8, 8, 1, -7 }, // 0x6E 'n'
|
||||
{ 634, 6, 8, 8, 1, -7 }, // 0x6F 'o'
|
||||
{ 640, 6, 11, 8, 1, -7 }, // 0x70 'p'
|
||||
{ 649, 6, 11, 8, 1, -7 }, // 0x71 'q'
|
||||
{ 658, 6, 8, 8, 1, -7 }, // 0x72 'r'
|
||||
{ 664, 6, 8, 8, 1, -7 }, // 0x73 's'
|
||||
{ 670, 6, 10, 8, 1, -9 }, // 0x74 't'
|
||||
{ 678, 6, 8, 8, 1, -7 }, // 0x75 'u'
|
||||
{ 684, 8, 8, 8, 0, -7 }, // 0x76 'v'
|
||||
{ 692, 8, 8, 8, 0, -7 }, // 0x77 'w'
|
||||
{ 700, 6, 8, 8, 1, -7 }, // 0x78 'x'
|
||||
{ 706, 8, 11, 8, 0, -7 }, // 0x79 'y'
|
||||
{ 717, 6, 8, 8, 1, -7 }, // 0x7A 'z'
|
||||
{ 723, 4, 16, 8, 3, -12 }, // 0x7B '{'
|
||||
{ 731, 2, 15, 8, 3, -11 }, // 0x7C '|'
|
||||
{ 735, 4, 16, 8, 1, -12 }, // 0x7D '}'
|
||||
{ 743, 8, 3, 8, 0, -7 } }; // 0x7E '~'
|
||||
|
||||
const GFXfont monofonto8pt7b PROGMEM = {
|
||||
(uint8_t *)monofonto8pt7bBitmaps,
|
||||
(GFXglyph *)monofonto8pt7bGlyphs,
|
||||
0x20, 0x7E, 19 };
|
||||
|
||||
// Approx. 1418 bytes
|
|
@ -0,0 +1,10 @@
|
|||
#include "WatchyPipBoy.h"
|
||||
#include "settings.h"
|
||||
|
||||
WatchyPipBoy watchy(settings);
|
||||
|
||||
void setup(){
|
||||
watchy.init();
|
||||
}
|
||||
|
||||
void loop(){}
|
|
@ -0,0 +1,27 @@
|
|||
#ifndef SETTINGS_H
|
||||
#define SETTINGS_H
|
||||
|
||||
//Weather Settings
|
||||
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
|
||||
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
|
||||
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id=" //open weather api
|
||||
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
|
||||
#define TEMP_LANG "en"
|
||||
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
|
||||
//NTP Settings
|
||||
#define NTP_SERVER "pool.ntp.org"
|
||||
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
|
||||
|
||||
watchySettings settings{
|
||||
.cityID = CITY_ID,
|
||||
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
|
||||
.weatherURL = OPENWEATHERMAP_URL,
|
||||
.weatherUnit = TEMP_UNIT,
|
||||
.weatherLang = TEMP_LANG,
|
||||
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
|
||||
.ntpServer = NTP_SERVER,
|
||||
.gmtOffset = GMT_OFFSET_SEC,
|
||||
.vibrateOClock = true,
|
||||
};
|
||||
|
||||
#endif
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "Watchy",
|
||||
"version": "1.4.13",
|
||||
"version": "1.4.14",
|
||||
"description": "Watchy - An Open Source E-Paper Watch by SQFMI",
|
||||
"authors": [
|
||||
{
|
||||
|
@ -30,7 +30,7 @@
|
|||
},
|
||||
{
|
||||
"name": "WiFiManager",
|
||||
"version": "https://github.com/tzapu/WiFiManager.git#2.0.3-alpha"
|
||||
"version": "https://github.com/tzapu/WiFiManager.git#master"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
name=Watchy
|
||||
version=1.4.13
|
||||
version=1.4.14
|
||||
author=SQFMI
|
||||
maintainer=SQFMI
|
||||
sentence=Watchy - An Open Source E-Paper Watch by SQFMI
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
; PlatformIO Project Configuration File
|
||||
;
|
||||
; Build options: build flags, source filter
|
||||
; Upload options: custom upload port, speed and extra flags
|
||||
; Library options: dependencies, extra library storages
|
||||
; Advanced options: extra scripting
|
||||
;
|
||||
; Please visit documentation for the other options and examples
|
||||
; https://docs.platformio.org/page/projectconf.html
|
||||
|
||||
|
||||
[env:base]
|
||||
platform = espressif32@6.7.0
|
||||
framework = arduino
|
||||
;CDC enabled on boot:
|
||||
build_flags = -DCDC_ENABLED
|
||||
;erase flash before upload:
|
||||
;upload_flags = --erase-all
|
||||
;upload speed:
|
||||
upload_speed = 115200
|
||||
;upload port (put yours here):
|
||||
upload_port = COM7
|
||||
;upload_port = /dev/ttyACM0 for linux
|
||||
board_build.partitions = default_8MB.csv
|
||||
monitor_speed = 115200
|
||||
lib_deps =
|
||||
Adafruit GFX Library
|
||||
Arduino_JSON
|
||||
DS3232RTC
|
||||
NTPClient
|
||||
https://github.com/orbitalair/Rtc_Pcf8563.git#master
|
||||
https://github.com/ZinggJM/GxEPD2.git#master
|
||||
https://github.com/tzapu/WiFiManager.git#master
|
||||
|
||||
|
||||
[env:esp32-s3-devkitc-1]
|
||||
; This is for v3
|
||||
extends = env:base
|
||||
board = esp32-s3-devkitc-1
|
||||
board_build.mcu = esp32s3
|
||||
framework = arduino
|
||||
|
||||
[env:esp32-pico-devkitm-2]
|
||||
; This is for v1, v1.5, v2
|
||||
extends = env:base
|
||||
board = esp32-pico-devkitm-2
|
||||
framework = arduino
|
|
@ -19,11 +19,9 @@
|
|||
RTC_DATA_ATTR bool displayFullInit = true;
|
||||
|
||||
void WatchyDisplay::busyCallback(const void *) {
|
||||
#ifndef ARDUINO_ESP32S3_DEV
|
||||
gpio_wakeup_enable((gpio_num_t)DISPLAY_BUSY, GPIO_INTR_LOW_LEVEL);
|
||||
esp_sleep_enable_gpio_wakeup();
|
||||
esp_light_sleep_start();
|
||||
#endif
|
||||
}
|
||||
|
||||
WatchyDisplay::WatchyDisplay() :
|
||||
|
@ -50,15 +48,35 @@ void WatchyDisplay::asyncPowerOn() {
|
|||
}
|
||||
}
|
||||
|
||||
void WatchyDisplay::setDarkBorder(bool dark) {
|
||||
void WatchyDisplay::drawDarkBorder(bool dark) {
|
||||
if (_hibernating) return;
|
||||
darkBorder = dark;
|
||||
//This line overrides the intended behaviour that I want for the
|
||||
//darkBorder variable. I want to set the darkBorder variable to dark
|
||||
//and then paint the border always dark, not always putting the opposite
|
||||
//colour of the background, like it is done here.
|
||||
//darkBorder = dark;
|
||||
_startTransfer();
|
||||
_transferCommand(0x3C); // BorderWavefrom
|
||||
_transfer(dark ? 0x02 : 0x05);
|
||||
_endTransfer();
|
||||
}
|
||||
|
||||
/*
|
||||
This is a setter for the darkBorder variable. It sets the darkBorder.
|
||||
*/
|
||||
void WatchyDisplay::setDarkBorder(bool dark) {
|
||||
if (_hibernating) return;
|
||||
darkBorder = dark;
|
||||
drawDarkBorder(dark);
|
||||
}
|
||||
|
||||
/*
|
||||
This is a getter for the darkBorder variable. It returns the darkBorder.
|
||||
*/
|
||||
bool WatchyDisplay::isDarkBorder() {
|
||||
return darkBorder;
|
||||
}
|
||||
|
||||
void WatchyDisplay::clearScreen(uint8_t value)
|
||||
{
|
||||
writeScreenBuffer(value);
|
||||
|
|
|
@ -38,7 +38,9 @@ class WatchyDisplay : public GxEPD2_EPD
|
|||
// constructor
|
||||
WatchyDisplay();
|
||||
void initWatchy();
|
||||
void drawDarkBorder(bool darkBorder);
|
||||
void setDarkBorder(bool darkBorder);
|
||||
bool isDarkBorder();
|
||||
void asyncPowerOn();
|
||||
void _PowerOnAsync();
|
||||
bool waitingPowerOn = false;
|
||||
|
@ -76,7 +78,7 @@ class WatchyDisplay : public GxEPD2_EPD
|
|||
void powerOff(); // turns off generation of panel driving voltages, avoids screen fading over time
|
||||
void hibernate(); // turns powerOff() and sets controller to deep sleep for minimum power use, ONLY if wakeable by RST (rst >= 0)
|
||||
|
||||
bool darkBorder = false; // adds a dark border outside the normal screen area
|
||||
bool darkBorder = true; // adds a dark border outside the normal screen area
|
||||
|
||||
static constexpr bool reduceBoosterTime = true; // Saves ~200ms
|
||||
private:
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
// Calculate the phase and position of the moon for a given date.
|
||||
// The algorithm is simple and adequate for many purposes.
|
||||
//
|
||||
// This software was originally adapted to javascript by Stephen R. Schmitt
|
||||
// from a BASIC program from the 'Astronomical Computing' column of Sky & Telescope,
|
||||
// April 1994, page 86, written by Bradley E. Schaefer.
|
||||
//
|
||||
// Subsequently adapted from Stephen R. Schmitt's javascript to c++ for the Arduino
|
||||
// by Cyrus Rahman, this work is subject to Stephen Schmitt's copyright:
|
||||
//
|
||||
// Copyright 2004 Stephen R. Schmitt
|
||||
// You may use or modify this source code in any way you find useful, provided
|
||||
// that you agree that the author(s) have no warranty, obligations or liability. You
|
||||
// must determine the suitability of this source code for your use.
|
||||
|
||||
#include <math.h>
|
||||
#include "MoonPhase.h"
|
||||
|
||||
// Names of lunar phases
|
||||
static const char *phaseNames[] = {"New", "Evening Crescent", "First Quarter",
|
||||
"Waxing Gibbous", "Full", "Waning Gibbous",
|
||||
"Last Quarter", "Morning Crescent"};
|
||||
// Names of Zodiac constellations
|
||||
static const char *zodiacNames[] = {"Pisces", "Aries", "Taurus", "Gemini", "Cancer",
|
||||
"Leo", "Virgo", "Libra", "Scorpio", "Sagittarius",
|
||||
"Capricorn", "Aquarius"};
|
||||
// Ecliptic angles of Zodiac constellations
|
||||
static const float zodiacAngles[] = {33.18, 51.16, 93.44, 119.48, 135.30, 173.34,
|
||||
224.17, 242.57, 271.26, 302.49, 311.72, 348.58};
|
||||
|
||||
// Constructor initialization.
|
||||
MoonPhase::MoonPhase() {
|
||||
jDate = 0;
|
||||
phase = 0;
|
||||
age = 0;
|
||||
fraction = 0;
|
||||
distance = 0;
|
||||
latitude = 0;
|
||||
longitude = 0;
|
||||
phaseName = zodiacName = "";
|
||||
}
|
||||
|
||||
// Determine the Moon Phase and orbital positions for the specified time.
|
||||
void
|
||||
MoonPhase::calculate(time_t t) {
|
||||
jDate = julianDate(t);
|
||||
|
||||
// Calculate illumination (synodic) phase.
|
||||
// From number of days since new moon on Julian date MOON_SYNODIC_OFFSET
|
||||
// (1815UTC January 6, 2000), determine remainder of incomplete cycle.
|
||||
phase = (jDate - MOON_SYNODIC_OFFSET) / MOON_SYNODIC_PERIOD;
|
||||
phase -= floor(phase);
|
||||
|
||||
// Calculate age and illumination fraction.
|
||||
age = phase * MOON_SYNODIC_PERIOD;
|
||||
fraction = (1.0 - cos(2 * M_PI * phase)) * 0.5;
|
||||
phaseName = phaseNames[(int)(phase * 8 + 0.5) % 8];
|
||||
|
||||
// Calculate distance from anomalistic phase.
|
||||
double distancePhase = (jDate - MOON_DISTANCE_OFFSET) / MOON_DISTANCE_PERIOD;
|
||||
distancePhase -= floor(distancePhase);
|
||||
distance = 60.4 - 3.3 * cos(2 * M_PI * distancePhase)
|
||||
- 0.6 * cos(2 * 2 * M_PI * phase - 2 * M_PI * distancePhase)
|
||||
- 0.5 * cos(2 * 2 * M_PI * phase);
|
||||
|
||||
// Calculate ecliptic latitude from nodal (draconic) phase.
|
||||
double latPhase = (jDate - MOON_LATITUDE_OFFSET) / MOON_LATITUDE_PERIOD;
|
||||
latPhase -= floor(latPhase);
|
||||
latitude = 5.1 * sin(2 * M_PI * latPhase);
|
||||
|
||||
// Calculate ecliptic longitude from sidereal motion.
|
||||
double longPhase = (jDate - MOON_LONGITUDE_OFFSET) / MOON_LONGITUDE_PERIOD;
|
||||
longPhase -= floor(longPhase);
|
||||
longitude = 360 * longPhase
|
||||
+ 6.3 * sin(2 * M_PI * distancePhase)
|
||||
+ 1.3 * sin(2 * 2 * M_PI * phase - 2 * M_PI * distancePhase)
|
||||
+ 0.7 * sin(2 * 2 * M_PI * phase);
|
||||
if (longitude > 360)
|
||||
longitude -= 360;
|
||||
|
||||
// Select the Zodiac name.
|
||||
zodiacName = zodiacNames[0];
|
||||
for (int i = 0; i < sizeof(zodiacAngles) / sizeof(float); i++) {
|
||||
if (longitude < zodiacAngles[i]) {
|
||||
zodiacName = zodiacNames[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Determine Julian date from Unix time.
|
||||
// Provides marginally accurate results with older Arduino 4-byte double.
|
||||
double
|
||||
MoonPhase::julianDate(time_t t) {
|
||||
return (t / 86400.0L + 2440587.5);
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
#ifndef MoonPhase_h
|
||||
#define MoonPhase_h
|
||||
|
||||
#include <time.h>
|
||||
|
||||
#define MOON_SYNODIC_PERIOD 29.530588853 // Period of moon cycle in days.
|
||||
#define MOON_SYNODIC_OFFSET 2451550.26 // Reference cycle offset in days.
|
||||
#define MOON_DISTANCE_PERIOD 27.55454988 // Period of distance oscillation
|
||||
#define MOON_DISTANCE_OFFSET 2451562.2
|
||||
#define MOON_LATITUDE_PERIOD 27.212220817 // Latitude oscillation
|
||||
#define MOON_LATITUDE_OFFSET 2451565.2
|
||||
#define MOON_LONGITUDE_PERIOD 27.321582241 // Longitude oscillation
|
||||
#define MOON_LONGITUDE_OFFSET 2451555.8
|
||||
|
||||
class MoonPhase {
|
||||
public:
|
||||
double jDate;
|
||||
double phase; // 0 - 1, 0.5 = full
|
||||
double age; // Age in days of current cycle
|
||||
double fraction; // Fraction of illuminated disk
|
||||
double distance; // Moon distance in earth radii
|
||||
double latitude; // Moon ecliptic latitude
|
||||
double longitude; // Moon ecliptic longitude
|
||||
const char *phaseName; // New, Full, etc.
|
||||
const char *zodiacName; // Constellation
|
||||
|
||||
MoonPhase();
|
||||
void calculate(time_t);
|
||||
|
||||
private:
|
||||
double julianDate(time_t);
|
||||
};
|
||||
#endif
|
|
@ -0,0 +1,72 @@
|
|||
#ifndef TIMEZONES_GMT_H
|
||||
#define TIMEZONES_GMT_H
|
||||
|
||||
// This file is used to set up GMT based timezones.
|
||||
|
||||
// You don't need to change anything here to be able to set up GMT based time.
|
||||
// If you set TIMEZONES_NON_GMT_OVERRIDE to 1 (as for get summer time and leaps),
|
||||
// you must provide one location based timezone.
|
||||
// 0: GMT, 1: Location timezone.
|
||||
|
||||
// Visit the link below.
|
||||
|
||||
#ifndef TIMEZONES_NON_GMT_OVERRIDE
|
||||
#define TIMEZONES_NON_GMT_OVERRIDE 0 // 0: GMT, 1: Location timezone.
|
||||
#endif
|
||||
|
||||
#ifndef TIMEZONES_SELECTED
|
||||
#define TIMEZONES_SELECTED 0 // If above is 0, value is index of array below.
|
||||
#endif // Etc/GMT0
|
||||
|
||||
#define TIMEZONES_LENGTH 28
|
||||
|
||||
typedef struct TZ {
|
||||
const char* location;
|
||||
const char* timezone;
|
||||
} TZ;
|
||||
|
||||
|
||||
// https://raw.githubusercontent.com/nayarsystems/posix_tz_db/master/zones.csv
|
||||
static TZ tz_override = {
|
||||
"Europe/Madrid",
|
||||
"CET-1CEST,M3.5.0,M10.5.0/3"
|
||||
};
|
||||
|
||||
|
||||
static TZ timeZones[] = {
|
||||
{"Etc/GMT+0","GMT0"}, // 0
|
||||
{"Etc/GMT+1","<-01>1"}, // 1
|
||||
{"Etc/GMT+2","<-02>2"}, // 2
|
||||
{"Etc/GMT+3","<-03>3"}, // 3
|
||||
{"Etc/GMT+4","<-04>4"}, // 4
|
||||
{"Etc/GMT+5","<-05>5"}, // 5
|
||||
{"Etc/GMT+6","<-06>6"}, // 6
|
||||
{"Etc/GMT+7","<-07>7"}, // 7
|
||||
{"Etc/GMT+8","<-08>8"}, // 8
|
||||
{"Etc/GMT+9","<-09>9"}, // 9
|
||||
{"Etc/GMT+10","<-10>10"}, // 10
|
||||
{"Etc/GMT+11","<-11>11"}, // 11
|
||||
{"Etc/GMT+12","<-12>12"}, // 12
|
||||
{"Etc/GMT-0","GMT0"}, // 13
|
||||
{"Etc/GMT-1","<+01>-1"}, // 14
|
||||
{"Etc/GMT-2","<+02>-2"}, // 15
|
||||
{"Etc/GMT-3","<+03>-3"}, // 16
|
||||
{"Etc/GMT-4","<+04>-4"}, // 17
|
||||
{"Etc/GMT-5","<+05>-5"}, // 18
|
||||
{"Etc/GMT-6","<+06>-6"}, // 19
|
||||
{"Etc/GMT-7","<+07>-7"}, // 20
|
||||
{"Etc/GMT-8","<+08>-8"}, // 21
|
||||
{"Etc/GMT-9","<+09>-9"}, // 22
|
||||
{"Etc/GMT-10","<+10>-10"}, // 23
|
||||
{"Etc/GMT-11","<+11>-11"}, // 24
|
||||
{"Etc/GMT-12","<+12>-12"}, // 25
|
||||
{"Etc/GMT-13","<+13>-13"}, // 26
|
||||
{"Etc/GMT-14","<+14>-14"}, // 27
|
||||
};
|
||||
|
||||
static long OFFSETS_SEC[] = {
|
||||
0, 3600, 7200, 10800, 14400, 18000, 21600, 25200, 28800, 32400, 36000, 39600, 43200, 0, -3600, -7200, -10800, -14400, -18000, -21600, -25200, -28800, -32400, -36000, -39600, -43200, -46800, -50400
|
||||
};
|
||||
|
||||
static int8_t tzIndex = TIMEZONES_SELECTED;
|
||||
#endif //TIMEZONES_GMT_H
|
198
src/Watchy.cpp
|
@ -17,11 +17,17 @@ RTC_DATA_ATTR bool WIFI_CONFIGURED;
|
|||
RTC_DATA_ATTR bool BLE_CONFIGURED;
|
||||
RTC_DATA_ATTR weatherData currentWeather;
|
||||
RTC_DATA_ATTR int weatherIntervalCounter = -1;
|
||||
#ifdef GMT_OFFSET_SEC
|
||||
RTC_DATA_ATTR long gmtOffset = GMT_OFFSET_SEC;
|
||||
#else
|
||||
RTC_DATA_ATTR long gmtOffset = 0;
|
||||
#endif
|
||||
RTC_DATA_ATTR bool alreadyInMenu = true;
|
||||
RTC_DATA_ATTR bool USB_PLUGGED_IN = false;
|
||||
RTC_DATA_ATTR tmElements_t bootTime;
|
||||
RTC_DATA_ATTR uint32_t lastIPAddress;
|
||||
RTC_DATA_ATTR char lastSSID[30];
|
||||
RTC_DATA_ATTR MoonPhase mp;
|
||||
|
||||
void Watchy::init(String datetime) {
|
||||
esp_sleep_wakeup_cause_t wakeup_reason;
|
||||
|
@ -31,11 +37,11 @@ void Watchy::init(String datetime) {
|
|||
#else
|
||||
Wire.begin(SDA, SCL); // init i2c
|
||||
#endif
|
||||
RTC.init();
|
||||
|
||||
RTC.init();
|
||||
// Init the display since is almost sure we will use it
|
||||
display.epd2.initWatchy();
|
||||
|
||||
mp = MoonPhase();
|
||||
switch (wakeup_reason) {
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
case ESP_SLEEP_WAKEUP_TIMER: // RTC Alarm
|
||||
|
@ -57,7 +63,7 @@ void Watchy::init(String datetime) {
|
|||
// Return to watchface if in menu for more than one tick
|
||||
if (alreadyInMenu) {
|
||||
guiState = WATCHFACE_STATE;
|
||||
showWatchFace(false);
|
||||
showWatchFace(true);
|
||||
} else {
|
||||
alreadyInMenu = true;
|
||||
}
|
||||
|
@ -67,9 +73,23 @@ void Watchy::init(String datetime) {
|
|||
case ESP_SLEEP_WAKEUP_EXT1: // button Press
|
||||
handleButtonPress();
|
||||
break;
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
case ESP_SLEEP_WAKEUP_EXT0: // USB plug in
|
||||
pinMode(USB_DET_PIN, INPUT);
|
||||
USB_PLUGGED_IN = (digitalRead(USB_DET_PIN) == 1);
|
||||
if(guiState == WATCHFACE_STATE){
|
||||
RTC.read(currentTime);
|
||||
showWatchFace(true);
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
default: // reset
|
||||
RTC.config(datetime);
|
||||
_bmaConfig();
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
pinMode(USB_DET_PIN, INPUT);
|
||||
USB_PLUGGED_IN = (digitalRead(USB_DET_PIN) == 1);
|
||||
#endif
|
||||
gmtOffset = settings.gmtOffset;
|
||||
RTC.read(currentTime);
|
||||
RTC.read(bootTime);
|
||||
|
@ -79,15 +99,25 @@ void Watchy::init(String datetime) {
|
|||
esp_sleep_disable_wakeup_source(ESP_SLEEP_WAKEUP_ALL);
|
||||
break;
|
||||
}
|
||||
|
||||
time_t epoch = makeTime(currentTime);
|
||||
mp.calculate(epoch);
|
||||
deepSleep();
|
||||
}
|
||||
void Watchy::deepSleep() {
|
||||
display.hibernate();
|
||||
RTC.clearAlarm(); // resets the alarm flag in the RTC
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
esp_sleep_enable_ext0_wakeup((gpio_num_t)USB_DET_PIN, USB_PLUGGED_IN ? LOW : HIGH); //// enable deep sleep wake on USB plug in/out
|
||||
rtc_gpio_set_direction((gpio_num_t)USB_DET_PIN, RTC_GPIO_MODE_INPUT_ONLY);
|
||||
rtc_gpio_pullup_en((gpio_num_t)USB_DET_PIN);
|
||||
|
||||
esp_sleep_enable_ext1_wakeup(
|
||||
BTN_PIN_MASK,
|
||||
ESP_EXT1_WAKEUP_ANY_LOW); // enable deep sleep wake on button press
|
||||
rtc_gpio_set_direction((gpio_num_t)UP_BTN_PIN, RTC_GPIO_MODE_INPUT_ONLY);
|
||||
rtc_gpio_pullup_en((gpio_num_t)UP_BTN_PIN);
|
||||
|
||||
rtc_clk_32k_enable(true);
|
||||
//rtc_clk_slow_freq_set(RTC_SLOW_FREQ_32K_XTAL);
|
||||
struct tm timeinfo;
|
||||
|
@ -108,7 +138,6 @@ void Watchy::deepSleep() {
|
|||
BTN_PIN_MASK,
|
||||
ESP_EXT1_WAKEUP_ANY_HIGH); // enable deep sleep wake on button press
|
||||
#endif
|
||||
gpio_deep_sleep_hold_dis();
|
||||
esp_deep_sleep_start();
|
||||
}
|
||||
|
||||
|
@ -118,7 +147,7 @@ void Watchy::handleButtonPress() {
|
|||
if (wakeupBit & MENU_BTN_MASK) {
|
||||
if (guiState ==
|
||||
WATCHFACE_STATE) { // enter menu state if coming from watch face
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
} else if (guiState ==
|
||||
MAIN_MENU_STATE) { // if already in menu, then select menu item
|
||||
switch (menuIndex) {
|
||||
|
@ -143,6 +172,8 @@ void Watchy::handleButtonPress() {
|
|||
case 6:
|
||||
showSyncNTP();
|
||||
break;
|
||||
case 7:
|
||||
showMoonPhase();
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -154,11 +185,11 @@ void Watchy::handleButtonPress() {
|
|||
else if (wakeupBit & BACK_BTN_MASK) {
|
||||
if (guiState == MAIN_MENU_STATE) { // exit to watch face if already in menu
|
||||
RTC.read(currentTime);
|
||||
showWatchFace(false);
|
||||
showWatchFace(true);
|
||||
} else if (guiState == APP_STATE) {
|
||||
showMenu(menuIndex, false); // exit to menu if already in app
|
||||
showMenu(menuIndex, true); // exit to menu if already in app
|
||||
} else if (guiState == FW_UPDATE_STATE) {
|
||||
showMenu(menuIndex, false); // exit to menu if already in app
|
||||
showMenu(menuIndex, true); // exit to menu if already in app
|
||||
} else if (guiState == WATCHFACE_STATE) {
|
||||
return;
|
||||
}
|
||||
|
@ -225,6 +256,8 @@ void Watchy::handleButtonPress() {
|
|||
case 6:
|
||||
showSyncNTP();
|
||||
break;
|
||||
case 7:
|
||||
showMoonPhase();
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -236,12 +269,12 @@ void Watchy::handleButtonPress() {
|
|||
if (guiState ==
|
||||
MAIN_MENU_STATE) { // exit to watch face if already in menu
|
||||
RTC.read(currentTime);
|
||||
showWatchFace(false);
|
||||
showWatchFace(true);
|
||||
break; // leave loop
|
||||
} else if (guiState == APP_STATE) {
|
||||
showMenu(menuIndex, false); // exit to menu if already in app
|
||||
showMenu(menuIndex, true); // exit to menu if already in app
|
||||
} else if (guiState == FW_UPDATE_STATE) {
|
||||
showMenu(menuIndex, false); // exit to menu if already in app
|
||||
showMenu(menuIndex, true); // exit to menu if already in app
|
||||
}
|
||||
} else if (digitalRead(UP_BTN_PIN) == ACTIVE_LOW) {
|
||||
lastTimeout = millis();
|
||||
|
@ -278,9 +311,9 @@ void Watchy::showMenu(byte menuIndex, bool partialRefresh) {
|
|||
const char *menuItems[] = {
|
||||
"About Watchy", "Vibrate Motor", "Show Accelerometer",
|
||||
"Set Time", "Setup WiFi", "Update Firmware",
|
||||
"Sync NTP"};
|
||||
"Sync NTP", "Moon Phase"};
|
||||
for (int i = 0; i < MENU_LENGTH; i++) {
|
||||
yPos = MENU_HEIGHT + (MENU_HEIGHT * i);
|
||||
yPos = MENU_HEIGHT/2 + (MENU_HEIGHT * i);
|
||||
display.setCursor(0, yPos);
|
||||
if (i == menuIndex) {
|
||||
display.getTextBounds(menuItems[i], 0, yPos, &x1, &y1, &w, &h);
|
||||
|
@ -311,9 +344,9 @@ void Watchy::showFastMenu(byte menuIndex) {
|
|||
const char *menuItems[] = {
|
||||
"About Watchy", "Vibrate Motor", "Show Accelerometer",
|
||||
"Set Time", "Setup WiFi", "Update Firmware",
|
||||
"Sync NTP"};
|
||||
"Sync NTP", "Moon Phase"};
|
||||
for (int i = 0; i < MENU_LENGTH; i++) {
|
||||
yPos = MENU_HEIGHT + (MENU_HEIGHT * i);
|
||||
yPos = MENU_HEIGHT/2 + (MENU_HEIGHT * i);
|
||||
display.setCursor(0, yPos);
|
||||
if (i == menuIndex) {
|
||||
display.getTextBounds(menuItems[i], 0, yPos, &x1, &y1, &w, &h);
|
||||
|
@ -375,7 +408,58 @@ void Watchy::showAbout() {
|
|||
}else{
|
||||
display.println("WiFi Not Connected");
|
||||
}
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
|
||||
guiState = APP_STATE;
|
||||
}
|
||||
|
||||
void Watchy::showMoonPhase() {
|
||||
|
||||
RTC.read(currentTime);
|
||||
time_t epoch = makeTime(currentTime);
|
||||
mp.calculate(epoch);
|
||||
|
||||
display.setFullWindow();
|
||||
display.fillScreen(GxEPD_BLACK);
|
||||
display.setFont(&FreeMonoBold9pt7b);
|
||||
display.setTextColor(GxEPD_WHITE);
|
||||
display.setCursor(0, 10);
|
||||
|
||||
display.setCursor(0, MENU_HEIGHT);
|
||||
|
||||
display.print("Date: ");
|
||||
display.println(mp.jDate);
|
||||
|
||||
display.print("Phase: ");
|
||||
display.println(mp.phase);
|
||||
|
||||
display.print("Age: ");
|
||||
display.print(mp.age);
|
||||
display.println(" days");
|
||||
|
||||
display.print("Visibility: ");
|
||||
display.print(mp.fraction);
|
||||
display.println("%");
|
||||
|
||||
display.print("Distance: ");
|
||||
display.print(mp.distance);
|
||||
display.println(" er");
|
||||
|
||||
display.print("Latitude: ");
|
||||
display.print(mp.latitude);
|
||||
display.println("°");
|
||||
|
||||
display.print("Longitude: ");
|
||||
display.print(mp.longitude);
|
||||
display.println("°");
|
||||
|
||||
display.print("Ph.: ");
|
||||
display.println(mp.phaseName);
|
||||
|
||||
display.print("Zodiac: ");
|
||||
display.println(mp.zodiacName);
|
||||
|
||||
display.display(true); // full refresh
|
||||
|
||||
guiState = APP_STATE;
|
||||
}
|
||||
|
@ -387,9 +471,9 @@ void Watchy::showBuzz() {
|
|||
display.setTextColor(GxEPD_WHITE);
|
||||
display.setCursor(70, 80);
|
||||
display.println("Buzz!");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
vibMotor();
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
}
|
||||
|
||||
void Watchy::vibMotor(uint8_t intervalMs, uint8_t length) {
|
||||
|
@ -421,6 +505,10 @@ void Watchy::setTime() {
|
|||
int8_t month = currentTime.Month;
|
||||
int8_t year = tmYearToY2k(currentTime.Year);
|
||||
#endif
|
||||
// gmt variable defaults to TIMEZONES_SELECTED if defined
|
||||
int8_t gmt = OFFSETS_SEC[tzIndex] / 3600;
|
||||
|
||||
|
||||
|
||||
int8_t setIndex = SET_HOUR;
|
||||
|
||||
|
@ -467,6 +555,9 @@ void Watchy::setTime() {
|
|||
case SET_DAY:
|
||||
day == 31 ? (day = 1) : day++;
|
||||
break;
|
||||
case SET_TZ:
|
||||
tzIndex == TIMEZONES_LENGTH - 1 ? (tzIndex = 0) : tzIndex++;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -490,11 +581,18 @@ void Watchy::setTime() {
|
|||
case SET_DAY:
|
||||
day == 1 ? (day = 31) : day--;
|
||||
break;
|
||||
case SET_TZ:
|
||||
tzIndex == 0 ? (tzIndex = TIMEZONES_LENGTH - 1) : tzIndex--;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
gmt = OFFSETS_SEC[tzIndex] / 3600;
|
||||
gmtOffset = gmt * 3600;
|
||||
|
||||
display.fillScreen(GxEPD_BLACK);
|
||||
display.setTextColor(GxEPD_WHITE);
|
||||
display.setFont(&DSEG7_Classic_Bold_53);
|
||||
|
@ -520,14 +618,25 @@ void Watchy::setTime() {
|
|||
}
|
||||
display.print(minute);
|
||||
|
||||
display.setFont(&FreeMonoBold9pt7b);
|
||||
display.setTextColor(GxEPD_WHITE);
|
||||
|
||||
display.setCursor(82, 140);
|
||||
if (setIndex == SET_TZ) { // blink minute digits
|
||||
display.setTextColor(blink ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
|
||||
display.print("GMT");
|
||||
display.print(gmt);
|
||||
|
||||
display.setTextColor(GxEPD_WHITE);
|
||||
|
||||
display.setFont(&FreeMonoBold9pt7b);
|
||||
display.setCursor(45, 150);
|
||||
display.setCursor(60, 165);
|
||||
if (setIndex == SET_YEAR) { // blink minute digits
|
||||
display.setTextColor(blink ? GxEPD_WHITE : GxEPD_BLACK);
|
||||
}
|
||||
display.print(2000 + year);
|
||||
display.print(1970 + year);
|
||||
|
||||
display.setTextColor(GxEPD_WHITE);
|
||||
display.print("/");
|
||||
|
@ -550,6 +659,7 @@ void Watchy::setTime() {
|
|||
display.print("0");
|
||||
}
|
||||
display.print(day);
|
||||
|
||||
display.display(true); // partial refresh
|
||||
}
|
||||
|
||||
|
@ -565,9 +675,21 @@ void Watchy::setTime() {
|
|||
tm.Minute = minute;
|
||||
tm.Second = 0;
|
||||
|
||||
if(TIMEZONES_NON_GMT_OVERRIDE == 0){
|
||||
setenv("TZ", timeZones[tzIndex].timezone, 1);
|
||||
} else{
|
||||
#if TIMEZONES_NON_GMT_OVERRIDE == 1
|
||||
setenv("TZ", tz_override.timezone, 1);
|
||||
#else
|
||||
setenv("TZ", timeZones[TIMEZONES_SELECTED].timezone, 1);
|
||||
#endif
|
||||
}
|
||||
|
||||
tzset();
|
||||
|
||||
RTC.set(tm);
|
||||
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
}
|
||||
|
||||
void Watchy::showAccelerometer() {
|
||||
|
@ -639,7 +761,7 @@ void Watchy::showAccelerometer() {
|
|||
}
|
||||
}
|
||||
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
}
|
||||
|
||||
void Watchy::showWatchFace(bool partialRefresh) {
|
||||
|
@ -909,8 +1031,9 @@ void Watchy::setupWifi() {
|
|||
weatherIntervalCounter = -1; // Reset to force weather to be read again
|
||||
lastIPAddress = WiFi.localIP();
|
||||
WiFi.SSID().toCharArray(lastSSID, 30);
|
||||
getWeatherData(); // force weather update
|
||||
}
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
// turn off radios
|
||||
WiFi.mode(WIFI_OFF);
|
||||
btStop();
|
||||
|
@ -932,7 +1055,7 @@ void Watchy::_configModeCallback(WiFiManager *myWiFiManager) {
|
|||
display.println(WiFi.softAPIP());
|
||||
display.println("MAC address:");
|
||||
display.println(WiFi.softAPmacAddress().c_str());
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
}
|
||||
|
||||
bool Watchy::connectWiFi() {
|
||||
|
@ -971,7 +1094,7 @@ void Watchy::showUpdateFW() {
|
|||
display.println("again when ready");
|
||||
display.println(" ");
|
||||
display.println("Keep USB powered");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
|
||||
guiState = FW_UPDATE_STATE;
|
||||
}
|
||||
|
@ -988,7 +1111,7 @@ void Watchy::updateFWBegin() {
|
|||
display.println(" ");
|
||||
display.println("Waiting for");
|
||||
display.println("connection...");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
|
||||
BLE BT;
|
||||
BT.begin("Watchy BLE OTA");
|
||||
|
@ -1008,7 +1131,7 @@ void Watchy::updateFWBegin() {
|
|||
display.println(" ");
|
||||
display.println("Waiting for");
|
||||
display.println("upload...");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
}
|
||||
if (currentStatus == 1) {
|
||||
display.setFullWindow();
|
||||
|
@ -1033,7 +1156,7 @@ void Watchy::updateFWBegin() {
|
|||
display.println("completed!");
|
||||
display.println(" ");
|
||||
display.println("Rebooting...");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
|
||||
delay(2000);
|
||||
esp_restart();
|
||||
|
@ -1047,19 +1170,23 @@ void Watchy::updateFWBegin() {
|
|||
display.println("BLE Disconnected!");
|
||||
display.println(" ");
|
||||
display.println("exiting...");
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
delay(1000);
|
||||
break;
|
||||
}
|
||||
|
||||
prevStatus = currentStatus;
|
||||
}
|
||||
|
||||
if(digitalRead(BACK_BTN_PIN) == ACTIVE_LOW) break;
|
||||
|
||||
delay(100);
|
||||
}
|
||||
|
||||
// turn off radios
|
||||
WiFi.mode(WIFI_OFF);
|
||||
btStop();
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
}
|
||||
|
||||
void Watchy::showSyncNTP() {
|
||||
|
@ -1071,9 +1198,9 @@ void Watchy::showSyncNTP() {
|
|||
display.println("Syncing NTP... ");
|
||||
display.print("GMT offset: ");
|
||||
display.println(gmtOffset);
|
||||
display.display(false); // full refresh
|
||||
display.display(true); // full refresh
|
||||
if (connectWiFi()) {
|
||||
if (syncNTP()) {
|
||||
if (syncNTP(gmtOffset)) {
|
||||
display.println("NTP Sync Success\n");
|
||||
display.println("Current Time Is:");
|
||||
|
||||
|
@ -1103,7 +1230,7 @@ void Watchy::showSyncNTP() {
|
|||
}
|
||||
display.display(true); // full refresh
|
||||
delay(3000);
|
||||
showMenu(menuIndex, false);
|
||||
showMenu(menuIndex, true);
|
||||
}
|
||||
|
||||
bool Watchy::syncNTP() { // NTP sync - call after connecting to WiFi and
|
||||
|
@ -1121,6 +1248,7 @@ bool Watchy::syncNTP(long gmt, String ntpServer) {
|
|||
// WiFi and remember to turn it back off
|
||||
WiFiUDP ntpUDP;
|
||||
NTPClient timeClient(ntpUDP, ntpServer.c_str(), gmt);
|
||||
timeClient.setTimeOffset(gmt);
|
||||
timeClient.begin();
|
||||
if (!timeClient.forceUpdate()) {
|
||||
return false; // NTP sync failed
|
||||
|
@ -1128,5 +1256,9 @@ bool Watchy::syncNTP(long gmt, String ntpServer) {
|
|||
tmElements_t tm;
|
||||
breakTime((time_t)timeClient.getEpochTime(), tm);
|
||||
RTC.set(tm);
|
||||
//Update also moon calendar.
|
||||
RTC.read(currentTime);
|
||||
time_t epoch = makeTime(currentTime);
|
||||
mp.calculate(epoch);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -16,6 +16,8 @@
|
|||
#include "bma.h"
|
||||
#include "config.h"
|
||||
#include "esp_chip_info.h"
|
||||
#include "TimezonesGMT.h"
|
||||
#include "MoonPhase.h"
|
||||
#ifdef ARDUINO_ESP32S3_DEV
|
||||
#include "Watchy32KRTC.h"
|
||||
#include "soc/rtc.h"
|
||||
|
@ -27,6 +29,8 @@
|
|||
#include "soc/rtc_cntl_reg.h"
|
||||
#include "time.h"
|
||||
#include "esp_sntp.h"
|
||||
#include "hal/rtc_io_types.h"
|
||||
#include "driver/rtc_io.h"
|
||||
#define uS_TO_S_FACTOR 1000000ULL //Conversion factor for micro seconds to seconds
|
||||
#define ADC_VOLTAGE_DIVIDER ((360.0f+100.0f)/360.0f) //Voltage divider at battery ADC
|
||||
#else
|
||||
|
@ -55,7 +59,7 @@ typedef struct watchySettings {
|
|||
int8_t weatherUpdateInterval;
|
||||
// NTP Settings
|
||||
String ntpServer;
|
||||
int gmtOffset;
|
||||
long gmtOffset;
|
||||
//
|
||||
bool vibrateOClock;
|
||||
} watchySettings;
|
||||
|
@ -83,6 +87,7 @@ public:
|
|||
void showMenu(byte menuIndex, bool partialRefresh);
|
||||
void showFastMenu(byte menuIndex);
|
||||
void showAbout();
|
||||
void showMoonPhase();
|
||||
void showBuzz();
|
||||
void showAccelerometer();
|
||||
void showUpdateFW();
|
||||
|
@ -116,5 +121,6 @@ extern RTC_DATA_ATTR int menuIndex;
|
|||
extern RTC_DATA_ATTR BMA423 sensor;
|
||||
extern RTC_DATA_ATTR bool WIFI_CONFIGURED;
|
||||
extern RTC_DATA_ATTR bool BLE_CONFIGURED;
|
||||
extern RTC_DATA_ATTR bool USB_PLUGGED_IN;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
#include "Watchy32KRTC.h"
|
||||
#include "TimezonesGMT.h"
|
||||
|
||||
Watchy32KRTC::Watchy32KRTC(){}
|
||||
|
||||
void Watchy32KRTC::init() {
|
||||
if(TIMEZONES_NON_GMT_OVERRIDE == 0){
|
||||
setenv("TZ", timeZones[TIMEZONES_SELECTED].timezone, 1);
|
||||
} else if (TIMEZONES_NON_GMT_OVERRIDE == 1) {
|
||||
setenv("TZ", tz_override.timezone, 1);
|
||||
} else {
|
||||
setenv("TZ", "GMT0", 1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
setenv("TZ", "", 1);
|
||||
tzset();
|
||||
|
||||
*/
|
||||
}
|
||||
|
||||
void Watchy32KRTC::config(String datetime) { // String datetime format is YYYY:MM:DD:HH:MM:SS
|
||||
struct tm timeInfo;
|
||||
|
@ -62,7 +64,6 @@ void Watchy32KRTC::set(tmElements_t tm) {
|
|||
timeInfo.tm_hour = tm.Hour;
|
||||
timeInfo.tm_min = tm.Minute;
|
||||
timeInfo.tm_sec = tm.Second;
|
||||
|
||||
// Convert tm to timeval
|
||||
struct timeval tv;
|
||||
tv.tv_sec = mktime(&timeInfo);
|
||||
|
|
14
src/config.h
|
@ -2,7 +2,7 @@
|
|||
#define CONFIG_H
|
||||
|
||||
// Versioning
|
||||
#define WATCHY_LIB_VER "1.4.13"
|
||||
#define WATCHY_LIB_VER "1.4.14"
|
||||
|
||||
//pins
|
||||
|
||||
|
@ -99,14 +99,16 @@
|
|||
#define MAIN_MENU_STATE 0
|
||||
#define APP_STATE 1
|
||||
#define FW_UPDATE_STATE 2
|
||||
#define MENU_HEIGHT 25
|
||||
#define MENU_LENGTH 7
|
||||
#define MENU_HEIGHT 24
|
||||
#define MENU_LENGTH 8
|
||||
// set time
|
||||
#define SET_HOUR 0
|
||||
#define SET_MINUTE 1
|
||||
#define SET_YEAR 2
|
||||
#define SET_MONTH 3
|
||||
#define SET_DAY 4
|
||||
#define SET_TZ 2
|
||||
#define SET_YEAR 3
|
||||
#define SET_MONTH 4
|
||||
#define SET_DAY 5
|
||||
|
||||
#define HOUR_12_24 24
|
||||
// BLE OTA
|
||||
#define BLE_DEVICE_NAME "Watchy BLE OTA"
|
||||
|
|