forked from mirrors/qmk_userspace
		
	Add Reverb keyboard. (#22387)
Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
		
					parent
					
						
							
								0059393868
							
						
					
				
			
			
				commit
				
					
						4b3f9b8b3a
					
				
			
		
					 17 changed files with 3185 additions and 0 deletions
				
			
		
							
								
								
									
										17
									
								
								keyboards/dasky/reverb/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/dasky/reverb/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#define DEBUG_MATRIX_SCAN_RATE // only want api
 | 
			
		||||
 | 
			
		||||
#define SPI_DRIVER SPID0
 | 
			
		||||
#define SPI_SCK_PIN GP18
 | 
			
		||||
#define SPI_MOSI_PIN GP19
 | 
			
		||||
#define SPI_MISO_PIN GP16
 | 
			
		||||
 | 
			
		||||
#define DISPLAY_RST GP15
 | 
			
		||||
#define DISPLAY_CS GP21
 | 
			
		||||
#define DISPLAY_DC GP20
 | 
			
		||||
 | 
			
		||||
#define QUANTUM_PAINTER_SUPPORTS_256_PALETTE true
 | 
			
		||||
							
								
								
									
										139
									
								
								keyboards/dasky/reverb/graphics/display.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										139
									
								
								keyboards/dasky/reverb/graphics/display.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,139 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#include "display.h"
 | 
			
		||||
#include "graphics/splash.qgf.h"
 | 
			
		||||
#include "graphics/reverb.qgf.h"
 | 
			
		||||
#include "graphics/robotomono20.qff.h"
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
#include <math.h>
 | 
			
		||||
 | 
			
		||||
static painter_image_handle_t reverb_logo;
 | 
			
		||||
static deferred_token         display_task_token;
 | 
			
		||||
static uint32_t               key_pressed_count = 0;
 | 
			
		||||
 | 
			
		||||
static uint8_t reverb_surface_fb[SURFACE_REQUIRED_BUFFER_BYTE_SIZE(240, 240, 16)];
 | 
			
		||||
 | 
			
		||||
painter_device_t      reverb_surface;
 | 
			
		||||
painter_device_t      reverb_display;
 | 
			
		||||
painter_font_handle_t roboto_font;
 | 
			
		||||
 | 
			
		||||
uint32_t display_task_callback(uint32_t trigger_time, void *cb_arg) {
 | 
			
		||||
    display_task_kb();
 | 
			
		||||
    return 100;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void display_init_kb(void) {
 | 
			
		||||
    reverb_display = qp_gc9a01_make_spi_device(240, 240, DISPLAY_CS, DISPLAY_DC, DISPLAY_RST, 2, 0); // always init display
 | 
			
		||||
    qp_init(reverb_display, QP_ROTATION_0);
 | 
			
		||||
    roboto_font    = qp_load_font_mem(font_robotomono20);
 | 
			
		||||
    reverb_surface = qp_make_rgb565_surface(240, 240, reverb_surface_fb);
 | 
			
		||||
    qp_init(reverb_surface, QP_ROTATION_0);
 | 
			
		||||
    if (!display_init_user()) {
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
    painter_image_handle_t splash_image;
 | 
			
		||||
    splash_image = qp_load_image_mem(gfx_splash);
 | 
			
		||||
    reverb_logo  = qp_load_image_mem(gfx_reverb);
 | 
			
		||||
    qp_drawimage(reverb_display, 0, 0, splash_image);
 | 
			
		||||
    qp_flush(reverb_display);
 | 
			
		||||
    qp_close_image(splash_image);
 | 
			
		||||
    display_task_token = defer_exec(2000, display_task_callback, NULL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
__attribute__((weak)) bool display_init_user(void) {
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void display_task_kb(void) {
 | 
			
		||||
    if (!display_task_user()) {
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
    static bool     first_draw             = true;
 | 
			
		||||
    static uint32_t last_timer             = 0;
 | 
			
		||||
    static uint32_t last_wpm               = UINT32_MAX;
 | 
			
		||||
    static uint32_t last_scan_rate         = 0;
 | 
			
		||||
    static uint32_t last_key_pressed_count = UINT32_MAX;
 | 
			
		||||
    static uint8_t  last_hue               = 0;
 | 
			
		||||
    static uint8_t  last_sat               = 0;
 | 
			
		||||
    static uint8_t  last_val               = 0;
 | 
			
		||||
    bool            rgb_redraw             = false;
 | 
			
		||||
 | 
			
		||||
    if (first_draw) {
 | 
			
		||||
        qp_rect(reverb_display, 0, 0, 239, 239, 0, 0, 0, true);
 | 
			
		||||
        first_draw = false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    char buffer[64] = {0};
 | 
			
		||||
 | 
			
		||||
    if (last_hue != rgb_matrix_get_hue() || last_sat != rgb_matrix_get_sat() || last_val != rgb_matrix_get_val()) {
 | 
			
		||||
        last_hue = rgb_matrix_get_hue();
 | 
			
		||||
        last_sat = rgb_matrix_get_sat();
 | 
			
		||||
        last_val = rgb_matrix_get_val();
 | 
			
		||||
        qp_drawimage_recolor(reverb_surface, 60, 40, reverb_logo, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), 0, 0, 0);
 | 
			
		||||
        rgb_redraw = true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (rgb_redraw || last_scan_rate != get_matrix_scan_rate()) {
 | 
			
		||||
        snprintf(buffer, sizeof(buffer), "Scan Rate %ld", get_matrix_scan_rate());
 | 
			
		||||
        int16_t width = qp_textwidth(roboto_font, buffer);
 | 
			
		||||
        qp_line(reverb_surface, 17, 101, 220, 101, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128));
 | 
			
		||||
        qp_rect(reverb_surface, 16, 125 - roboto_font->line_height, 221, 125, 0, 0, 0, true);
 | 
			
		||||
        qp_drawtext_recolor(reverb_surface, (120 - (width / 2)), (125 - roboto_font->line_height), roboto_font, buffer, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), 0, 0, 0);
 | 
			
		||||
        qp_line(reverb_surface, 16, 126, 221, 126, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128));
 | 
			
		||||
        last_scan_rate = get_matrix_scan_rate();
 | 
			
		||||
    }
 | 
			
		||||
    if (rgb_redraw || last_key_pressed_count != key_pressed_count) {
 | 
			
		||||
        snprintf(buffer, sizeof(buffer), "Keys Pressed");
 | 
			
		||||
        int16_t width = qp_textwidth(roboto_font, buffer);
 | 
			
		||||
        qp_rect(reverb_surface, 30, 150 - roboto_font->line_height, 209, 150, 0, 0, 0, true);
 | 
			
		||||
        qp_drawtext_recolor(reverb_surface, (120 - (width / 2)), (150 - roboto_font->line_height), roboto_font, buffer, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), 0, 0, 0);
 | 
			
		||||
        snprintf(buffer, sizeof(buffer), "%ld", key_pressed_count);
 | 
			
		||||
        width = qp_textwidth(roboto_font, buffer);
 | 
			
		||||
        qp_rect(reverb_surface, 30, 172 - roboto_font->line_height, 173, 172, 0, 0, 0, true);
 | 
			
		||||
        qp_drawtext_recolor(reverb_surface, (120 - (width / 2)), (172 - roboto_font->line_height), roboto_font, buffer, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), 0, 0, 0);
 | 
			
		||||
        qp_line(reverb_surface, 30, 173, 209, 173, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128));
 | 
			
		||||
        last_key_pressed_count = key_pressed_count;
 | 
			
		||||
    }
 | 
			
		||||
    if (rgb_redraw || last_wpm != get_current_wpm()) {
 | 
			
		||||
        snprintf(buffer, sizeof(buffer), "WPM %d", get_current_wpm());
 | 
			
		||||
        int16_t width = qp_textwidth(roboto_font, buffer);
 | 
			
		||||
        qp_rect(reverb_surface, 56, 200 - roboto_font->line_height, 184, 200, 0, 0, 0, true);
 | 
			
		||||
        qp_drawtext_recolor(reverb_surface, (120 - (width / 2)), (200 - roboto_font->line_height), roboto_font, buffer, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), 0, 0, 0);
 | 
			
		||||
        qp_line(reverb_surface, 56, 201, 184, 201, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128));
 | 
			
		||||
        last_wpm = get_current_wpm();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (rgb_redraw || timer_elapsed(last_timer) >= 1000) {
 | 
			
		||||
        static uint8_t seconds = 0;
 | 
			
		||||
        static uint8_t x       = 0;
 | 
			
		||||
        static uint8_t y       = 0;
 | 
			
		||||
        if (x && y) {
 | 
			
		||||
            qp_circle(reverb_surface, x, y, 4, 0, 0, 0, true);
 | 
			
		||||
        }
 | 
			
		||||
        double radians = 0.10471975511966 * seconds;
 | 
			
		||||
        x              = (110 * cos(radians)) + 119;
 | 
			
		||||
        y              = (110 * sin(radians)) + 119;
 | 
			
		||||
        qp_circle(reverb_surface, x, y, 4, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), true);
 | 
			
		||||
        qp_circle(reverb_surface, 119, 119, 105, rgb_matrix_get_hue(), rgb_matrix_get_sat(), MAX(rgb_matrix_get_val(), 128), false);
 | 
			
		||||
        if (seconds == 59) {
 | 
			
		||||
            seconds = 0;
 | 
			
		||||
        } else if (timer_elapsed(last_timer) >= 1000) {
 | 
			
		||||
            last_timer = timer_read32();
 | 
			
		||||
            seconds++;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    qp_surface_draw(reverb_surface, reverb_display, 0, 0, rgb_redraw);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
__attribute__((weak)) bool display_task_user(void) {
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void display_key_counter(void) {
 | 
			
		||||
    if (key_pressed_count == UINT32_MAX) {
 | 
			
		||||
        key_pressed_count = 0;
 | 
			
		||||
    }
 | 
			
		||||
    key_pressed_count++;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								keyboards/dasky/reverb/graphics/display.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/dasky/reverb/graphics/display.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include "qp.h"
 | 
			
		||||
#include "qp_surface.h"
 | 
			
		||||
 | 
			
		||||
extern painter_device_t      reverb_surface;
 | 
			
		||||
extern painter_device_t      reverb_display;
 | 
			
		||||
extern painter_font_handle_t roboto_font;
 | 
			
		||||
 | 
			
		||||
void display_key_counter(void);
 | 
			
		||||
void display_init_kb(void);
 | 
			
		||||
bool display_init_user(void);
 | 
			
		||||
void display_task_kb(void);
 | 
			
		||||
bool display_task_user(void);
 | 
			
		||||
							
								
								
									
										59
									
								
								keyboards/dasky/reverb/graphics/reverb.qgf.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								keyboards/dasky/reverb/graphics/reverb.qgf.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,59 @@
 | 
			
		|||
// Copyright 2023 QMK -- generated source code only, image retains original copyright
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
// This file was auto-generated by `qmk painter-convert-graphics -i reverb.png -f mono2`
 | 
			
		||||
 | 
			
		||||
#include <qp.h>
 | 
			
		||||
 | 
			
		||||
const uint32_t gfx_reverb_length = 736;
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
const uint8_t gfx_reverb[736] = {
 | 
			
		||||
    0x00, 0xFF, 0x12, 0x00, 0x00, 0x51, 0x47, 0x46, 0x01, 0xE0, 0x02, 0x00, 0x00, 0x1F, 0xFD, 0xFF,
 | 
			
		||||
    0xFF, 0x78, 0x00, 0x32, 0x00, 0x01, 0x00, 0x01, 0xFE, 0x04, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
 | 
			
		||||
    0x02, 0xFD, 0x06, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xE8, 0x03, 0x05, 0xFA, 0xB0, 0x02, 0x00,
 | 
			
		||||
    0x3C, 0x00, 0x8F, 0xF8, 0xFF, 0xC7, 0xFF, 0x3F, 0x30, 0x80, 0x83, 0xFF, 0x0F, 0xFF, 0xCF, 0xFF,
 | 
			
		||||
    0x1F, 0x00, 0xF8, 0x03, 0xFF, 0x85, 0x7F, 0x70, 0x80, 0x83, 0xFF, 0x0F, 0x03, 0xFF, 0x8D, 0x7F,
 | 
			
		||||
    0x00, 0xF8, 0xFF, 0xBF, 0xFF, 0x7F, 0x70, 0x80, 0x83, 0xFF, 0x0F, 0xFF, 0xBF, 0x02, 0xFF, 0x8C,
 | 
			
		||||
    0x00, 0xF8, 0xFF, 0x3F, 0xFF, 0x7F, 0x70, 0x80, 0x83, 0xFF, 0x0F, 0xFF, 0x3F, 0x02, 0xFF, 0xB8,
 | 
			
		||||
    0x01, 0xF8, 0xFF, 0x3F, 0xFF, 0x7F, 0x70, 0x80, 0x83, 0xFF, 0x0F, 0xFF, 0x3F, 0xFE, 0xFF, 0x03,
 | 
			
		||||
    0xF8, 0xFF, 0x3F, 0xFE, 0x7F, 0x70, 0x80, 0x83, 0xFF, 0x0F, 0xFF, 0x3F, 0xFE, 0xFF, 0x07, 0xF8,
 | 
			
		||||
    0x0F, 0x3F, 0x3E, 0x00, 0x7F, 0x80, 0xC3, 0x07, 0xF0, 0x0F, 0x3F, 0x3C, 0xFE, 0x07, 0xF8, 0x07,
 | 
			
		||||
    0x3E, 0x3C, 0x00, 0x7F, 0xC0, 0xC3, 0x03, 0xF0, 0x0F, 0x02, 0x3C, 0x83, 0xF8, 0x07, 0xF8, 0x07,
 | 
			
		||||
    0x02, 0x3C, 0x86, 0x00, 0xFF, 0xC0, 0xC3, 0x03, 0xF0, 0x0F, 0x02, 0x3C, 0x83, 0xF8, 0x0F, 0xF8,
 | 
			
		||||
    0x07, 0x02, 0x3C, 0x8C, 0x00, 0xFF, 0xC0, 0xC3, 0x03, 0xF0, 0x0F, 0x3C, 0x38, 0xF0, 0x0F, 0xF8,
 | 
			
		||||
    0x07, 0x02, 0x3C, 0x86, 0x00, 0xFF, 0xC0, 0xC3, 0x03, 0xF0, 0x0F, 0x02, 0x38, 0x83, 0xF0, 0x0F,
 | 
			
		||||
    0xF8, 0x07, 0x02, 0x3C, 0x86, 0x00, 0xFF, 0xC0, 0xE3, 0x03, 0xF0, 0x0F, 0x02, 0x38, 0x83, 0xF0,
 | 
			
		||||
    0x0F, 0xF8, 0x07, 0x02, 0x3C, 0x86, 0x00, 0xFE, 0xC0, 0xE3, 0x03, 0xF0, 0x0F, 0x02, 0x38, 0x83,
 | 
			
		||||
    0xF0, 0x0F, 0xF8, 0x07, 0x02, 0x38, 0x86, 0x00, 0xFE, 0xC0, 0xE3, 0x03, 0xF0, 0x0F, 0x02, 0x38,
 | 
			
		||||
    0x83, 0xF0, 0x0F, 0xF8, 0x07, 0x02, 0x3C, 0x86, 0x00, 0xFE, 0xE0, 0xE3, 0x03, 0xF0, 0x0F, 0x02,
 | 
			
		||||
    0x38, 0x83, 0xF0, 0x0F, 0xF8, 0x07, 0x02, 0x3C, 0x86, 0x00, 0xFE, 0xE1, 0xE3, 0x03, 0xF0, 0x0F,
 | 
			
		||||
    0x02, 0x38, 0x83, 0xF8, 0x07, 0xF8, 0x07, 0x02, 0x3C, 0x86, 0x00, 0xFE, 0xE1, 0xF3, 0x03, 0xF0,
 | 
			
		||||
    0x0F, 0x02, 0x38, 0xCF, 0xFC, 0x07, 0xF8, 0x07, 0x3C, 0xFC, 0xFF, 0xFD, 0xE1, 0xF3, 0xFF, 0xEF,
 | 
			
		||||
    0x0F, 0x3C, 0xF8, 0xFF, 0x07, 0xF8, 0x07, 0x3E, 0xFC, 0xFF, 0xFD, 0xE1, 0xF3, 0xFF, 0xEF, 0x0F,
 | 
			
		||||
    0x3C, 0xFC, 0xFF, 0x03, 0xF8, 0x07, 0x3F, 0xFC, 0xFF, 0xFD, 0xE1, 0xF3, 0xFF, 0xEF, 0x0F, 0x3E,
 | 
			
		||||
    0xFC, 0xFF, 0x01, 0xF8, 0xFF, 0x3F, 0xFE, 0xFF, 0xFD, 0xE1, 0xF3, 0xFF, 0xEF, 0xFF, 0x3F, 0xFC,
 | 
			
		||||
    0xFF, 0x00, 0xF8, 0xFF, 0x3F, 0xFE, 0xFF, 0xFD, 0xE1, 0xF3, 0xFF, 0xEF, 0xFF, 0x3F, 0xFE, 0xFF,
 | 
			
		||||
    0x03, 0xF8, 0xFF, 0x3F, 0x02, 0xFF, 0x86, 0xF9, 0xF1, 0xFB, 0xFF, 0xEF, 0xFF, 0x3F, 0x02, 0xFF,
 | 
			
		||||
    0x83, 0x07, 0xF8, 0xFF, 0xBF, 0x02, 0xFF, 0x86, 0xF9, 0xF3, 0xFB, 0xFF, 0xEF, 0xFF, 0x3F, 0x02,
 | 
			
		||||
    0xFF, 0x81, 0x0F, 0xF8, 0x02, 0xFF, 0x86, 0x3F, 0x00, 0xF8, 0xF3, 0xFB, 0x03, 0xF0, 0x02, 0xFF,
 | 
			
		||||
    0xD3, 0x3F, 0xF8, 0x0F, 0xF8, 0xFF, 0xCF, 0x3F, 0x00, 0xF8, 0xF3, 0xFF, 0x03, 0xF0, 0xFF, 0xDF,
 | 
			
		||||
    0x3F, 0xF0, 0x1F, 0xF8, 0xFF, 0xCF, 0x3F, 0x00, 0xF8, 0xF3, 0xFF, 0x03, 0xF0, 0xFF, 0xDF, 0x3F,
 | 
			
		||||
    0xE0, 0x1F, 0xF8, 0xF7, 0xDF, 0x3F, 0x00, 0xF8, 0xF3, 0xFF, 0x03, 0xF0, 0xEF, 0xDF, 0x3F, 0xE0,
 | 
			
		||||
    0x1F, 0xF8, 0xE7, 0xDF, 0x3F, 0x00, 0xF0, 0xF3, 0xFF, 0x03, 0xF0, 0xEF, 0xFF, 0x3F, 0xE0, 0x1F,
 | 
			
		||||
    0xF8, 0xE7, 0xFF, 0x3F, 0x00, 0xF0, 0xFB, 0xFF, 0x03, 0xF0, 0xCF, 0xFF, 0x3F, 0xE0, 0x3F, 0xF8,
 | 
			
		||||
    0xC7, 0xFF, 0x3F, 0x00, 0xF0, 0x02, 0xFF, 0x8C, 0x03, 0xF0, 0xCF, 0xFF, 0x3F, 0xE0, 0x3F, 0xF8,
 | 
			
		||||
    0xC7, 0xFF, 0x3F, 0x00, 0xF0, 0x02, 0xFF, 0x8C, 0x03, 0xF0, 0x8F, 0xBF, 0x3F, 0xE0, 0x1F, 0xF8,
 | 
			
		||||
    0x87, 0xBF, 0x3F, 0x00, 0xF0, 0x02, 0xFF, 0x91, 0x03, 0xF0, 0x8F, 0xBF, 0x3F, 0xE0, 0x1F, 0xF8,
 | 
			
		||||
    0x87, 0xBF, 0x3F, 0x00, 0xE0, 0xFF, 0xFD, 0x03, 0xF0, 0x0F, 0x02, 0x3F, 0x83, 0xE0, 0x1F, 0xF8,
 | 
			
		||||
    0x07, 0x02, 0x3F, 0x86, 0x00, 0xE0, 0xFF, 0xFD, 0x03, 0xF0, 0x0F, 0x02, 0x3F, 0x83, 0xF0, 0x1F,
 | 
			
		||||
    0xF8, 0x07, 0x02, 0x3F, 0x93, 0x00, 0xE0, 0xFF, 0xFD, 0x03, 0xF0, 0x0F, 0x3F, 0x3E, 0xF8, 0x1F,
 | 
			
		||||
    0xF8, 0x07, 0x3E, 0xFE, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0x02, 0x0F, 0x8C, 0x3E, 0xFE, 0xFF, 0x0F,
 | 
			
		||||
    0xF8, 0x07, 0x3E, 0xFE, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0x02, 0x0F, 0x8C, 0x3E, 0xFC, 0xFF, 0x0F,
 | 
			
		||||
    0xF8, 0x07, 0x3E, 0xFC, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0x02, 0x0F, 0x8C, 0x3C, 0xFC, 0xFF, 0x07,
 | 
			
		||||
    0xF8, 0x07, 0x3C, 0xFC, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0x02, 0x0F, 0x8C, 0x3C, 0xF8, 0xFF, 0x03,
 | 
			
		||||
    0xF8, 0x07, 0x3C, 0xF8, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0x02, 0x0F, 0x8C, 0x38, 0xF8, 0xFF, 0x01,
 | 
			
		||||
    0xF8, 0x07, 0x38, 0xF8, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, 0x02, 0x0F, 0x91, 0x38, 0xF8, 0x7F, 0x00,
 | 
			
		||||
    0xF0, 0x07, 0x38, 0xF0, 0xFF, 0xCF, 0x7F, 0xFC, 0xFF, 0x0F, 0x0E, 0x30, 0xF0, 0x0F, 0x2E, 0x00,
 | 
			
		||||
};
 | 
			
		||||
// clang-format on
 | 
			
		||||
							
								
								
									
										11
									
								
								keyboards/dasky/reverb/graphics/reverb.qgf.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								keyboards/dasky/reverb/graphics/reverb.qgf.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
// Copyright 2023 QMK -- generated source code only, image retains original copyright
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
// This file was auto-generated by `qmk painter-convert-graphics -i reverb.png -f mono2`
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <qp.h>
 | 
			
		||||
 | 
			
		||||
extern const uint32_t gfx_reverb_length;
 | 
			
		||||
extern const uint8_t  gfx_reverb[736];
 | 
			
		||||
							
								
								
									
										320
									
								
								keyboards/dasky/reverb/graphics/robotomono20.qff.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										320
									
								
								keyboards/dasky/reverb/graphics/robotomono20.qff.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,320 @@
 | 
			
		|||
// Copyright 2023 QMK -- generated source code only, font retains original copyright
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono4`
 | 
			
		||||
 | 
			
		||||
#include <qp.h>
 | 
			
		||||
 | 
			
		||||
const uint32_t font_robotomono20_length = 4904;
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
const uint8_t font_robotomono20[4904] = {
 | 
			
		||||
    0x00, 0xFF, 0x14, 0x00, 0x00, 0x51, 0x46, 0x46, 0x01, 0x28, 0x13, 0x00, 0x00, 0xD7, 0xEC, 0xFF,
 | 
			
		||||
    0xFF, 0x16, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0xFF, 0x01, 0xFE, 0x1D, 0x01, 0x00, 0x0C, 0x00,
 | 
			
		||||
    0x00, 0x8C, 0x00, 0x00, 0x0C, 0x0E, 0x00, 0xCC, 0x12, 0x00, 0xCC, 0x1F, 0x00, 0x8C, 0x2F, 0x00,
 | 
			
		||||
    0x0C, 0x3D, 0x00, 0xCC, 0x49, 0x00, 0x4C, 0x4F, 0x00, 0x4C, 0x62, 0x00, 0x0C, 0x76, 0x00, 0x4C,
 | 
			
		||||
    0x7F, 0x00, 0xCC, 0x89, 0x00, 0x0C, 0x8F, 0x00, 0xCC, 0x91, 0x00, 0x4C, 0x95, 0x00, 0x0C, 0xA4,
 | 
			
		||||
    0x00, 0xCC, 0xB0, 0x00, 0x8C, 0xBE, 0x00, 0x4C, 0xCB, 0x00, 0x4C, 0xD8, 0x00, 0x8C, 0xE4, 0x00,
 | 
			
		||||
    0x4C, 0xF2, 0x00, 0x8C, 0xFF, 0x00, 0x0C, 0x0D, 0x01, 0xCC, 0x19, 0x01, 0x0C, 0x26, 0x01, 0x8C,
 | 
			
		||||
    0x2C, 0x01, 0x0C, 0x35, 0x01, 0xCC, 0x3C, 0x01, 0x8C, 0x42, 0x01, 0x8C, 0x4A, 0x01, 0x8C, 0x56,
 | 
			
		||||
    0x01, 0x4C, 0x63, 0x01, 0xCC, 0x70, 0x01, 0x4C, 0x7D, 0x01, 0x4C, 0x8B, 0x01, 0x8C, 0x97, 0x01,
 | 
			
		||||
    0x0C, 0xA6, 0x01, 0x4C, 0xB4, 0x01, 0xCC, 0xC1, 0x01, 0x4C, 0xCE, 0x01, 0x0C, 0xDD, 0x01, 0x0C,
 | 
			
		||||
    0xEC, 0x01, 0x8C, 0xF8, 0x01, 0x4C, 0x08, 0x02, 0xCC, 0x14, 0x02, 0x8C, 0x21, 0x02, 0x8C, 0x2E,
 | 
			
		||||
    0x02, 0x8C, 0x3B, 0x02, 0x8C, 0x49, 0x02, 0x0C, 0x56, 0x02, 0x4C, 0x63, 0x02, 0x4C, 0x72, 0x02,
 | 
			
		||||
    0x4C, 0x7F, 0x02, 0x4C, 0x8C, 0x02, 0x8C, 0x99, 0x02, 0xCC, 0xA6, 0x02, 0xCC, 0xB4, 0x02, 0x0C,
 | 
			
		||||
    0xC2, 0x02, 0x4C, 0xD6, 0x02, 0x0C, 0xE7, 0x02, 0x4C, 0xFB, 0x02, 0x0C, 0x03, 0x03, 0xCC, 0x05,
 | 
			
		||||
    0x03, 0x4C, 0x09, 0x03, 0x4C, 0x13, 0x03, 0x4C, 0x21, 0x03, 0xCC, 0x2B, 0x03, 0x0C, 0x39, 0x03,
 | 
			
		||||
    0x0C, 0x43, 0x03, 0x0C, 0x52, 0x03, 0x8C, 0x5E, 0x03, 0x0C, 0x6C, 0x03, 0x4C, 0x7A, 0x03, 0xCC,
 | 
			
		||||
    0x89, 0x03, 0x4C, 0x97, 0x03, 0x8C, 0xA6, 0x03, 0x0C, 0xB0, 0x03, 0x8C, 0xB9, 0x03, 0x4C, 0xC3,
 | 
			
		||||
    0x03, 0xCC, 0xCF, 0x03, 0x0C, 0xDD, 0x03, 0x4C, 0xE6, 0x03, 0x0C, 0xF0, 0x03, 0x4C, 0xFD, 0x03,
 | 
			
		||||
    0x4C, 0x07, 0x04, 0x4C, 0x11, 0x04, 0xCC, 0x1A, 0x04, 0xCC, 0x24, 0x04, 0x8C, 0x32, 0x04, 0x8C,
 | 
			
		||||
    0x3C, 0x04, 0xCC, 0x4F, 0x04, 0x4C, 0x62, 0x04, 0xCC, 0x75, 0x04, 0x04, 0xFB, 0xE8, 0x11, 0x00,
 | 
			
		||||
    0x42, 0x00, 0x07, 0x00, 0x80, 0x04, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x14, 0x08, 0x00,
 | 
			
		||||
    0x80, 0x2C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x06, 0x00, 0x8D, 0x80, 0xC3, 0x01, 0x80, 0xC3,
 | 
			
		||||
    0x01, 0x80, 0xC3, 0x01, 0x80, 0xC2, 0x01, 0x40, 0x82, 0x2E, 0x00, 0x07, 0x00, 0x02, 0x04, 0x80,
 | 
			
		||||
    0x00, 0x02, 0x0D, 0x80, 0x00, 0x02, 0x0D, 0x80, 0x00, 0x02, 0x0A, 0x97, 0x00, 0x0A, 0x0B, 0xF8,
 | 
			
		||||
    0xFF, 0xBF, 0x50, 0x57, 0x17, 0x40, 0x43, 0x03, 0x80, 0x82, 0x02, 0xD4, 0xD6, 0x16, 0xFD, 0xFF,
 | 
			
		||||
    0x2F, 0xC0, 0xD1, 0x01, 0x02, 0xD0, 0x83, 0x00, 0xE0, 0xA0, 0x00, 0x02, 0xA0, 0x10, 0x00, 0x81,
 | 
			
		||||
    0x00, 0x24, 0x02, 0x00, 0x80, 0x34, 0x02, 0x00, 0x95, 0x78, 0x00, 0x80, 0xFF, 0x07, 0xD0, 0x56,
 | 
			
		||||
    0x0F, 0xE0, 0x00, 0x1E, 0xF0, 0x00, 0x2D, 0xE0, 0x01, 0x00, 0xD0, 0x07, 0x00, 0x40, 0xBF, 0x02,
 | 
			
		||||
    0x00, 0x95, 0xF4, 0x07, 0x00, 0x40, 0x1F, 0x10, 0x00, 0x2D, 0x74, 0x00, 0x2D, 0xB0, 0x00, 0x2D,
 | 
			
		||||
    0xE0, 0x96, 0x0F, 0x80, 0xFF, 0x06, 0x00, 0x38, 0x02, 0x00, 0x80, 0x38, 0x0A, 0x00, 0x06, 0x00,
 | 
			
		||||
    0x80, 0x50, 0x02, 0x00, 0x90, 0xFC, 0x03, 0x00, 0x0D, 0x0B, 0x01, 0x0A, 0x4A, 0x07, 0x0E, 0x8A,
 | 
			
		||||
    0x02, 0x6D, 0xD7, 0x00, 0xA4, 0xB1, 0x02, 0x00, 0x80, 0x34, 0x02, 0x00, 0x80, 0x1C, 0x02, 0x00,
 | 
			
		||||
    0x90, 0x8E, 0x2F, 0x00, 0xD7, 0x75, 0x80, 0xA2, 0xB0, 0xC0, 0xA1, 0xA0, 0x00, 0xE0, 0x70, 0x00,
 | 
			
		||||
    0x80, 0x2F, 0x0F, 0x00, 0x07, 0x00, 0xAD, 0x15, 0x00, 0x80, 0xFF, 0x00, 0xD0, 0xD2, 0x02, 0xE0,
 | 
			
		||||
    0xC1, 0x02, 0xE0, 0xC1, 0x02, 0xD0, 0xE2, 0x01, 0xC0, 0x7F, 0x00, 0x80, 0x0F, 0x00, 0xE0, 0x2E,
 | 
			
		||||
    0x24, 0xB4, 0x78, 0x74, 0x3C, 0xF0, 0x39, 0x3C, 0xD0, 0x2F, 0x38, 0x40, 0x0F, 0xF4, 0xE5, 0x2F,
 | 
			
		||||
    0xD0, 0xBF, 0x7D, 0x00, 0x04, 0x0D, 0x00, 0x07, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x1D, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x08, 0x2E, 0x00, 0x04, 0x00, 0x86,
 | 
			
		||||
    0x40, 0x01, 0x00, 0xE0, 0x01, 0x00, 0x74, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x0E, 0x02, 0x00, 0x95, 0x0B, 0x00, 0x40, 0x0B, 0x00, 0x40, 0x07, 0x00, 0x40, 0x07,
 | 
			
		||||
    0x00, 0x80, 0x07, 0x00, 0x40, 0x07, 0x00, 0x40, 0x07, 0x00, 0x40, 0x0B, 0x02, 0x00, 0x80, 0x0B,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0xB0,
 | 
			
		||||
    0x02, 0x00, 0x81, 0xD0, 0x01, 0x02, 0x00, 0x80, 0x01, 0x03, 0x00, 0x84, 0x80, 0x01, 0x00, 0x40,
 | 
			
		||||
    0x07, 0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xB4, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x8C, 0xE0, 0x01, 0x00, 0xE0,
 | 
			
		||||
    0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xB0, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x85,
 | 
			
		||||
    0x0B, 0x00, 0x80, 0x02, 0x00, 0x40, 0x02, 0x00, 0x07, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0x38,
 | 
			
		||||
    0x02, 0x00, 0x8C, 0x34, 0x00, 0x10, 0x34, 0x10, 0xF4, 0x7A, 0x2E, 0x90, 0xFF, 0x1A, 0x00, 0xBC,
 | 
			
		||||
    0x02, 0x00, 0x87, 0xDB, 0x01, 0x80, 0x87, 0x03, 0x80, 0x42, 0x07, 0x1E, 0x00, 0x10, 0x00, 0x80,
 | 
			
		||||
    0x28, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x8C, 0x3C, 0x00, 0xA8, 0xBE,
 | 
			
		||||
    0x2A, 0xFC, 0xFF, 0x3F, 0x50, 0x7D, 0x05, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x3C, 0x02, 0x00, 0x80, 0x28, 0x13, 0x00, 0x2E, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x1E, 0x02, 0x00, 0x83, 0x0F, 0x00, 0x40, 0x07, 0x07, 0x00, 0x1E, 0x00, 0x85, 0xF0,
 | 
			
		||||
    0xFF, 0x0B, 0x90, 0xAA, 0x06, 0x1E, 0x00, 0x2B, 0x00, 0x80, 0x24, 0x02, 0x00, 0x80, 0xBC, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x7C, 0x10, 0x00, 0x08, 0x00, 0x80, 0x04, 0x02, 0x00, 0x8E, 0x0B, 0x00, 0x40, 0x07,
 | 
			
		||||
    0x00, 0x80, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xA0, 0x02, 0x00, 0x80, 0x74, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x0E, 0x02,
 | 
			
		||||
    0x00, 0x8B, 0x0B, 0x00, 0x40, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0x40, 0x0B, 0x00,
 | 
			
		||||
    0x07, 0x00, 0xAD, 0x55, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x42, 0x0B, 0xB0, 0x00, 0x1E, 0x74, 0x00,
 | 
			
		||||
    0x1D, 0x78, 0x00, 0x2E, 0x78, 0xD0, 0x2F, 0x78, 0xB8, 0x2D, 0x78, 0x1E, 0x2D, 0xF8, 0x07, 0x2D,
 | 
			
		||||
    0xB8, 0x00, 0x2D, 0x74, 0x00, 0x1D, 0xB0, 0x00, 0x0E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00,
 | 
			
		||||
    0x14, 0x0D, 0x00, 0x0A, 0x00, 0x89, 0xB4, 0x00, 0x90, 0xBF, 0x00, 0xF0, 0xB6, 0x00, 0x10, 0xB4,
 | 
			
		||||
    0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4,
 | 
			
		||||
    0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4,
 | 
			
		||||
    0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x10, 0x00, 0x07, 0x00, 0x98, 0x15, 0x00, 0xD0,
 | 
			
		||||
    0xFF, 0x01, 0xB4, 0xD1, 0x07, 0x3C, 0x40, 0x0B, 0x2C, 0x00, 0x0B, 0x00, 0x40, 0x0B, 0x00, 0x80,
 | 
			
		||||
    0x07, 0x00, 0xD0, 0x02, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3D, 0x02, 0x00, 0x8D, 0x0F, 0x00, 0xC0,
 | 
			
		||||
    0x07, 0x00, 0xE0, 0x01, 0x00, 0xB8, 0x55, 0x15, 0xFC, 0xFF, 0x1F, 0x0F, 0x00, 0x07, 0x00, 0x9C,
 | 
			
		||||
    0x15, 0x00, 0xD0, 0xFF, 0x01, 0xB4, 0xD1, 0x07, 0x38, 0x40, 0x0B, 0x14, 0x00, 0x0B, 0x00, 0x40,
 | 
			
		||||
    0x0B, 0x00, 0xD0, 0x03, 0x40, 0xFF, 0x01, 0x00, 0xE9, 0x02, 0x00, 0x40, 0x0B, 0x02, 0x00, 0x8E,
 | 
			
		||||
    0x0F, 0x28, 0x00, 0x0F, 0x3C, 0x40, 0x0B, 0xF4, 0xD5, 0x07, 0xD0, 0xBF, 0x01, 0x00, 0x04, 0x0D,
 | 
			
		||||
    0x00, 0x07, 0x00, 0xAB, 0x40, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xF8, 0x03, 0x00,
 | 
			
		||||
    0x9D, 0x03, 0x00, 0x8B, 0x03, 0x80, 0x83, 0x03, 0xD0, 0x81, 0x03, 0xB0, 0x80, 0x03, 0x78, 0x80,
 | 
			
		||||
    0x03, 0xBC, 0xEA, 0x2B, 0xA9, 0xEA, 0x2B, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03,
 | 
			
		||||
    0x0F, 0x00, 0x06, 0x00, 0x97, 0x40, 0x55, 0x05, 0xC0, 0xFF, 0x1F, 0xC0, 0xAA, 0x1A, 0xD0, 0x01,
 | 
			
		||||
    0x00, 0xD0, 0x01, 0x00, 0xD0, 0x51, 0x00, 0xE0, 0xFF, 0x07, 0xE0, 0x96, 0x0F, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x1E, 0x02, 0x00, 0x80, 0x2D, 0x02, 0x00, 0x8E, 0x2C, 0x60, 0x00, 0x2C, 0xF0, 0x00, 0x1E, 0xD0,
 | 
			
		||||
    0x97, 0x0F, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x07, 0x00, 0x80, 0x40, 0x02, 0x00, 0x88,
 | 
			
		||||
    0xF9, 0x01, 0x80, 0x6F, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0x9F, 0xB4, 0x14, 0x00, 0xB4,
 | 
			
		||||
    0xFF, 0x02, 0xF8, 0x96, 0x0B, 0xB8, 0x00, 0x0F, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1D, 0x74, 0x00,
 | 
			
		||||
    0x1E, 0xF0, 0x00, 0x0F, 0xD0, 0x96, 0x07, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00,
 | 
			
		||||
    0x88, 0x54, 0x55, 0x05, 0xFC, 0xFF, 0x2F, 0x54, 0x55, 0x1E, 0x02, 0x00, 0x8E, 0x0E, 0x00, 0x40,
 | 
			
		||||
    0x07, 0x00, 0x80, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xE0, 0x01, 0x00, 0xB0, 0x02, 0x00, 0x80, 0x78,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x86, 0x0F, 0x00, 0x40, 0x07, 0x00,
 | 
			
		||||
    0xC0, 0x03, 0x10, 0x00, 0x07, 0x00, 0xAD, 0x54, 0x00, 0x80, 0xFF, 0x07, 0xD0, 0x46, 0x0F, 0xE0,
 | 
			
		||||
    0x00, 0x1E, 0xF0, 0x00, 0x1D, 0xE0, 0x00, 0x1E, 0xD0, 0x46, 0x0B, 0x40, 0xFF, 0x02, 0xD0, 0x9B,
 | 
			
		||||
    0x0B, 0xF0, 0x00, 0x1E, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x2C, 0xF0, 0x00, 0x2D, 0xE0, 0x96, 0x0F,
 | 
			
		||||
    0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x07, 0x00, 0x9F, 0x15, 0x00, 0x80, 0xFF, 0x02, 0xE0,
 | 
			
		||||
    0x92, 0x07, 0xB4, 0x00, 0x0F, 0x74, 0x00, 0x1E, 0x78, 0x00, 0x1D, 0x74, 0x00, 0x1D, 0xB4, 0x00,
 | 
			
		||||
    0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E, 0x00, 0x04, 0x0E, 0x02, 0x00, 0x88, 0x0B, 0x00, 0xD0,
 | 
			
		||||
    0x03, 0x40, 0xFA, 0x01, 0x80, 0x2F, 0x10, 0x00, 0x10, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8,
 | 
			
		||||
    0x02, 0x00, 0x80, 0xF4, 0x14, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8, 0x02, 0x00, 0x80, 0xF4,
 | 
			
		||||
    0x10, 0x00, 0x10, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8, 0x02, 0x00, 0x80, 0xF8, 0x17, 0x00,
 | 
			
		||||
    0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x2C, 0x07, 0x00, 0x14, 0x00, 0x95, 0x04, 0x00, 0x90, 0x0F, 0x00, 0xF9, 0x06, 0xD0, 0x2F,
 | 
			
		||||
    0x00, 0xF4, 0x01, 0x00, 0xE0, 0x0B, 0x00, 0x40, 0xBE, 0x01, 0x00, 0xE0, 0x0F, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x09, 0x15, 0x00, 0x15, 0x00, 0x88, 0x50, 0x55, 0x05, 0xF4, 0xFF, 0x1F, 0x50, 0x55, 0x05, 0x06,
 | 
			
		||||
    0x00, 0x85, 0xF4, 0xFF, 0x1F, 0x50, 0x55, 0x15, 0x18, 0x00, 0x12, 0x00, 0x80, 0x14, 0x02, 0x00,
 | 
			
		||||
    0x84, 0xF4, 0x02, 0x00, 0x90, 0x6F, 0x02, 0x00, 0x8E, 0xF8, 0x07, 0x00, 0x40, 0x1F, 0x00, 0xE4,
 | 
			
		||||
    0x0B, 0x40, 0xBF, 0x01, 0xF4, 0x07, 0x00, 0x64, 0x17, 0x00, 0x07, 0x00, 0x8A, 0x55, 0x00, 0x80,
 | 
			
		||||
    0xFF, 0x07, 0xE0, 0x96, 0x0F, 0xB0, 0x00, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x88, 0x0F,
 | 
			
		||||
    0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x2C,
 | 
			
		||||
    0x08, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x07, 0x00, 0x89, 0x10, 0x00, 0x40,
 | 
			
		||||
    0xFE, 0x06, 0xD0, 0x02, 0x0E, 0x70, 0x10, 0x02, 0x28, 0x97, 0xFD, 0x31, 0x1C, 0x8B, 0x71, 0x4C,
 | 
			
		||||
    0x83, 0x61, 0x4D, 0xC2, 0x61, 0x8D, 0xC2, 0x70, 0x8D, 0xC2, 0x30, 0x4D, 0xFB, 0x29, 0x1C, 0x5A,
 | 
			
		||||
    0x0B, 0x38, 0x02, 0x00, 0x85, 0xE0, 0x55, 0x01, 0x80, 0xFF, 0x01, 0x0F, 0x00, 0x07, 0x00, 0x80,
 | 
			
		||||
    0x10, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xEE, 0x02, 0x00, 0x9C, 0xDB, 0x01, 0x40, 0xC7, 0x02, 0x80, 0x83, 0x03, 0xC0, 0x42, 0x07, 0xD0,
 | 
			
		||||
    0x56, 0x0B, 0xE0, 0xFF, 0x0F, 0xB0, 0x55, 0x1E, 0x74, 0x00, 0x2C, 0x38, 0x00, 0x3C, 0x2C, 0x00,
 | 
			
		||||
    0x78, 0x0F, 0x00, 0x06, 0x00, 0xAC, 0x50, 0x15, 0x00, 0xF4, 0xFF, 0x02, 0xB4, 0x95, 0x0F, 0xB4,
 | 
			
		||||
    0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1E, 0xB4, 0x90, 0x0B, 0xF4, 0xFF, 0x02, 0xB4, 0x95,
 | 
			
		||||
    0x0F, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x3C, 0xB4, 0x00, 0x3C, 0xB4, 0x00, 0x2E, 0xB4, 0xAA, 0x0F,
 | 
			
		||||
    0xF4, 0xFF, 0x01, 0x0F, 0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x07, 0xE0, 0x42, 0x0F,
 | 
			
		||||
    0xB4, 0x00, 0x2D, 0x78, 0x00, 0x2C, 0x38, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x90, 0x38, 0x00, 0x14, 0x78, 0x00, 0x2C,
 | 
			
		||||
    0xB0, 0x00, 0x1E, 0xD0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0xAB,
 | 
			
		||||
    0x50, 0x05, 0x00, 0xF4, 0xBF, 0x01, 0xB4, 0xE5, 0x07, 0x74, 0x00, 0x0F, 0x74, 0x00, 0x2D, 0x74,
 | 
			
		||||
    0x00, 0x3C, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00,
 | 
			
		||||
    0x2C, 0x74, 0x00, 0x1D, 0x74, 0x40, 0x0F, 0xB4, 0xE9, 0x03, 0xF4, 0x6F, 0x10, 0x00, 0x06, 0x00,
 | 
			
		||||
    0x89, 0x50, 0x55, 0x05, 0xF4, 0xFF, 0x1F, 0xB4, 0x55, 0x05, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x86, 0xF4, 0xFF, 0x0B, 0xB4, 0x55, 0x05,
 | 
			
		||||
    0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x85,
 | 
			
		||||
    0xB4, 0xAA, 0x1A, 0xF4, 0xFF, 0x2F, 0x0F, 0x00, 0x06, 0x00, 0x89, 0x50, 0x55, 0x05, 0xF0, 0xFF,
 | 
			
		||||
    0x2F, 0xB0, 0x55, 0x15, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xB0, 0x02, 0x00, 0x86, 0xF0, 0xAA, 0x06, 0xF0, 0xAA, 0x06, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x11,
 | 
			
		||||
    0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x06, 0xE0, 0x46, 0x0F, 0xB4, 0x00, 0x2D, 0x78,
 | 
			
		||||
    0x00, 0x2C, 0x3C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x96, 0x2C, 0xE0,
 | 
			
		||||
    0x3F, 0x3C, 0x50, 0x3D, 0x38, 0x00, 0x3C, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0xD0, 0x57, 0x2E,
 | 
			
		||||
    0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0xAC, 0x10, 0x00, 0x04, 0x38, 0x00, 0x2C,
 | 
			
		||||
    0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D, 0xF8,
 | 
			
		||||
    0xFF, 0x2F, 0x78, 0x55, 0x2D, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00,
 | 
			
		||||
    0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x0F, 0x00, 0x06, 0x00, 0x8A, 0x50, 0x55, 0x05, 0xF4,
 | 
			
		||||
    0xFF, 0x1F, 0x50, 0x7D, 0x05, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x87, 0x3C, 0x00, 0xA4, 0xBE, 0x1A, 0xF4,
 | 
			
		||||
    0xFF, 0x1F, 0x0F, 0x00, 0x08, 0x00, 0x80, 0x04, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x8E, 0x1E,
 | 
			
		||||
    0x3C, 0x00, 0x0E, 0x78, 0x40, 0x0B, 0xF0, 0xE6, 0x07, 0x90, 0xBF, 0x01, 0x00, 0x04, 0x0D, 0x00,
 | 
			
		||||
    0x06, 0x00, 0xAC, 0x10, 0x00, 0x14, 0xB4, 0x00, 0x2D, 0xB4, 0x40, 0x0F, 0xB4, 0xC0, 0x03, 0xB4,
 | 
			
		||||
    0xF0, 0x01, 0xB4, 0x78, 0x00, 0xB4, 0x2D, 0x00, 0xB4, 0x2F, 0x00, 0xF4, 0x7B, 0x00, 0xF4, 0xF5,
 | 
			
		||||
    0x00, 0xB4, 0xE0, 0x02, 0xB4, 0xC0, 0x07, 0xB4, 0x40, 0x0F, 0xB4, 0x00, 0x2E, 0xB4, 0x00, 0x7C,
 | 
			
		||||
    0x0F, 0x00, 0x06, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00,
 | 
			
		||||
    0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00,
 | 
			
		||||
    0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00,
 | 
			
		||||
    0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x85, 0xF0, 0xAA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F,
 | 
			
		||||
    0x00, 0x06, 0x00, 0xAC, 0x10, 0x00, 0x04, 0xF8, 0x00, 0x2E, 0xF8, 0x01, 0x2F, 0xF8, 0x42, 0x2F,
 | 
			
		||||
    0xB8, 0x83, 0x2E, 0x78, 0xC7, 0x2D, 0x78, 0xEB, 0x2C, 0x38, 0xBE, 0x2C, 0x78, 0x7D, 0x2C, 0x78,
 | 
			
		||||
    0x3C, 0x2C, 0x78, 0x28, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00,
 | 
			
		||||
    0x2C, 0x0F, 0x00, 0x06, 0x00, 0x97, 0x10, 0x00, 0x04, 0xB8, 0x00, 0x2D, 0xF8, 0x00, 0x2D, 0xF8,
 | 
			
		||||
    0x02, 0x2D, 0xF8, 0x07, 0x2D, 0x78, 0x0B, 0x2D, 0x78, 0x1E, 0x2D, 0x78, 0x2C, 0x2D, 0x02, 0x78,
 | 
			
		||||
    0x92, 0x2D, 0x78, 0xB0, 0x2D, 0x78, 0xE0, 0x2E, 0x78, 0xC0, 0x2F, 0x78, 0x80, 0x2F, 0x78, 0x00,
 | 
			
		||||
    0x2F, 0x78, 0x00, 0x2D, 0x0F, 0x00, 0x07, 0x00, 0x98, 0x15, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x96,
 | 
			
		||||
    0x0B, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x2D, 0x38, 0x00, 0x2C, 0x3C, 0x00, 0x3C, 0x2C, 0x00, 0x3C,
 | 
			
		||||
    0x2C, 0x00, 0x02, 0x3C, 0x92, 0x00, 0x3C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D, 0xB0, 0x00, 0x0E,
 | 
			
		||||
    0xD0, 0xD7, 0x07, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00, 0x9E, 0x50, 0x15, 0x00,
 | 
			
		||||
    0xF0, 0xFF, 0x07, 0xB0, 0x55, 0x1F, 0xB0, 0x00, 0x3C, 0xB0, 0x00, 0x38, 0xB0, 0x00, 0x38, 0xB0,
 | 
			
		||||
    0x00, 0x3C, 0xB0, 0x55, 0x1F, 0xF0, 0xFF, 0x07, 0xB0, 0x55, 0x00, 0xB0, 0x02, 0x00, 0x80, 0xB0,
 | 
			
		||||
    0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x11, 0x00, 0x07, 0x00,
 | 
			
		||||
    0xAE, 0x55, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x96, 0x0B, 0xB4, 0x00, 0x1E, 0x38, 0x00, 0x2C, 0x3C,
 | 
			
		||||
    0x00, 0x3C, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x3C, 0x00,
 | 
			
		||||
    0x3C, 0x78, 0x00, 0x2D, 0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x07, 0x00, 0x44, 0x2F,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x38, 0x09, 0x00, 0x06, 0x00, 0xAC, 0x50, 0x15, 0x00, 0xF4, 0xFF, 0x02, 0xB4,
 | 
			
		||||
    0x95, 0x0F, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x1E, 0xB4, 0x95,
 | 
			
		||||
    0x0B, 0xF4, 0xFF, 0x02, 0xB4, 0xE5, 0x01, 0xB4, 0xC0, 0x03, 0xB4, 0x40, 0x07, 0xB4, 0x00, 0x0F,
 | 
			
		||||
    0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x3C, 0x0F, 0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x07,
 | 
			
		||||
    0xE0, 0x46, 0x1F, 0xB4, 0x00, 0x2D, 0x74, 0x00, 0x2C, 0xB4, 0x02, 0x00, 0x8B, 0xE0, 0x07, 0x00,
 | 
			
		||||
    0x80, 0xBF, 0x01, 0x00, 0xF4, 0x0B, 0x00, 0x40, 0x1F, 0x02, 0x00, 0x8E, 0x3C, 0x38, 0x00, 0x3C,
 | 
			
		||||
    0xB4, 0x00, 0x3D, 0xE0, 0x96, 0x1F, 0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0x8A,
 | 
			
		||||
    0x54, 0x55, 0x15, 0xFD, 0xFF, 0x7F, 0x54, 0x7D, 0x15, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x06, 0x00, 0xAE, 0x10, 0x00, 0x04, 0x38,
 | 
			
		||||
    0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00,
 | 
			
		||||
    0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2D, 0x78, 0x00, 0x2D,
 | 
			
		||||
    0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00, 0xA2,
 | 
			
		||||
    0x04, 0x00, 0x10, 0x3C, 0x00, 0x3C, 0x38, 0x00, 0x2D, 0x74, 0x00, 0x1D, 0xB0, 0x00, 0x0E, 0xE0,
 | 
			
		||||
    0x00, 0x0B, 0xE0, 0x41, 0x07, 0xD0, 0x82, 0x03, 0xC0, 0xC3, 0x02, 0x80, 0xD7, 0x01, 0x40, 0xE7,
 | 
			
		||||
    0x01, 0x00, 0xFB, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0x3C, 0x10,
 | 
			
		||||
    0x00, 0x06, 0x00, 0x80, 0x04, 0x02, 0x10, 0x8A, 0x2D, 0x38, 0x74, 0x2C, 0x7C, 0x74, 0x2C, 0x7C,
 | 
			
		||||
    0x74, 0x28, 0xBD, 0x02, 0x38, 0x80, 0xAD, 0x02, 0x38, 0x99, 0xDA, 0x38, 0x34, 0xDB, 0x2C, 0x74,
 | 
			
		||||
    0xC7, 0x2D, 0xB4, 0xC7, 0x1E, 0xB0, 0x83, 0x1E, 0xF0, 0x83, 0x1F, 0xF0, 0x42, 0x0F, 0xE0, 0x42,
 | 
			
		||||
    0x0F, 0xE0, 0x01, 0x0F, 0x0F, 0x00, 0x06, 0x00, 0x93, 0x14, 0x00, 0x14, 0x78, 0x00, 0x3D, 0xF0,
 | 
			
		||||
    0x00, 0x1E, 0xD0, 0x42, 0x0B, 0xC0, 0xC3, 0x03, 0x40, 0xDB, 0x02, 0x00, 0xFE, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x7C, 0x02, 0x00, 0x80, 0xBD, 0x02, 0x00, 0x90, 0xEF, 0x01, 0x40, 0xD7, 0x02, 0xC0, 0x83, 0x07,
 | 
			
		||||
    0xE0, 0x01, 0x0F, 0xB4, 0x00, 0x2E, 0x7C, 0x00, 0x3C, 0x0F, 0x00, 0x06, 0x00, 0x96, 0x04, 0x00,
 | 
			
		||||
    0x14, 0x3C, 0x00, 0x2D, 0x78, 0x00, 0x1E, 0xF0, 0x00, 0x0F, 0xE0, 0x81, 0x07, 0xC0, 0xC2, 0x03,
 | 
			
		||||
    0x80, 0xD7, 0x01, 0x00, 0xFB, 0x02, 0x00, 0x80, 0x7E, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x2C, 0x10, 0x00, 0x06, 0x00, 0x93, 0x54, 0x55, 0x05, 0xF8, 0xFF, 0x1F, 0x54, 0x55, 0x0F, 0x00,
 | 
			
		||||
    0x80, 0x07, 0x00, 0xD0, 0x02, 0x00, 0xE0, 0x01, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00,
 | 
			
		||||
    0x8B, 0x1E, 0x00, 0x40, 0x0B, 0x00, 0xC0, 0x03, 0x00, 0xE0, 0x01, 0x00, 0xB4, 0x02, 0x00, 0x85,
 | 
			
		||||
    0xB8, 0xAA, 0x1A, 0xFC, 0xFF, 0x2F, 0x0F, 0x00, 0x81, 0x00, 0x55, 0x02, 0x00, 0x80, 0xFF, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x5F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x5F, 0x02, 0x00, 0x80, 0xFF, 0x07, 0x00, 0x06, 0x00, 0x80, 0x40, 0x02, 0x00, 0x8A,
 | 
			
		||||
    0xD0, 0x01, 0x00, 0xC0, 0x02, 0x00, 0x80, 0x03, 0x00, 0x40, 0x07, 0x02, 0x00, 0x80, 0x0B, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x74, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x87, 0xD0, 0x01, 0x00, 0xC0, 0x02, 0x00,
 | 
			
		||||
    0x40, 0x07, 0x02, 0x00, 0x80, 0x0B, 0x02, 0x00, 0x80, 0x05, 0x09, 0x00, 0x81, 0x00, 0x55, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xBF, 0x02, 0x00, 0x80, 0xB5, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB5, 0x02, 0x00, 0x80, 0xBF, 0x07, 0x00, 0x0A, 0x00, 0x80,
 | 
			
		||||
    0x3C, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x8D, 0xEB, 0x00, 0x80, 0xC3,
 | 
			
		||||
    0x02, 0xC0, 0x82, 0x03, 0xD0, 0x41, 0x07, 0x50, 0x00, 0x05, 0x21, 0x00, 0x33, 0x00, 0x85, 0xF4,
 | 
			
		||||
    0xFF, 0x1F, 0x54, 0x55, 0x15, 0x09, 0x00, 0x07, 0x00, 0x80, 0x15, 0x02, 0x00, 0x80, 0x3C, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB4, 0x34, 0x00, 0x12, 0x00, 0xA2, 0x40, 0xAA, 0x01, 0xD0, 0xEB, 0x07, 0xF0, 0x40,
 | 
			
		||||
    0x0F, 0x50, 0x00, 0x0E, 0x00, 0x55, 0x0E, 0xD0, 0xFF, 0x0F, 0xF0, 0x01, 0x0E, 0x74, 0x00, 0x0E,
 | 
			
		||||
    0x74, 0x00, 0x0F, 0xF0, 0xE6, 0x1F, 0xD0, 0xBF, 0x1E, 0x00, 0x04, 0x0D, 0x00, 0x06, 0x00, 0x80,
 | 
			
		||||
    0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA2,
 | 
			
		||||
    0xB4, 0xA9, 0x01, 0xF4, 0xEF, 0x07, 0xF4, 0x41, 0x0F, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4,
 | 
			
		||||
    0x00, 0x2D, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1E, 0xF4, 0x96, 0x0B, 0x74, 0xFE,
 | 
			
		||||
    0x02, 0x00, 0x10, 0x0D, 0x00, 0x13, 0x00, 0x8B, 0xA9, 0x01, 0xD0, 0xEB, 0x07, 0xF0, 0x01, 0x0F,
 | 
			
		||||
    0xB4, 0x00, 0x1D, 0x78, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x8D, 0x74,
 | 
			
		||||
    0x00, 0x04, 0xF0, 0x00, 0x1D, 0xD0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x08,
 | 
			
		||||
    0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0xA3, 0x1E, 0x40,
 | 
			
		||||
    0x6A, 0x1E, 0xD0, 0xEF, 0x1F, 0xF0, 0x41, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00,
 | 
			
		||||
    0x1E, 0x78, 0x00, 0x1E, 0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E,
 | 
			
		||||
    0x00, 0x04, 0x0D, 0x00, 0x13, 0x00, 0x94, 0xA9, 0x01, 0xC0, 0xEB, 0x07, 0xE0, 0x01, 0x0F, 0xB4,
 | 
			
		||||
    0x00, 0x1D, 0x78, 0x55, 0x2D, 0xF8, 0xFF, 0x2F, 0x78, 0x55, 0x05, 0x78, 0x02, 0x00, 0x8A, 0xF0,
 | 
			
		||||
    0x00, 0x04, 0xD0, 0x57, 0x1F, 0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x04, 0x00, 0x89, 0x40,
 | 
			
		||||
    0x15, 0x00, 0xF4, 0x3F, 0x00, 0x7C, 0x10, 0x00, 0x1D, 0x02, 0x00, 0x89, 0x1E, 0x00, 0xA4, 0xAE,
 | 
			
		||||
    0x0A, 0xA4, 0xBF, 0x1A, 0x00, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x10, 0x00, 0x12, 0x00, 0xAC, 0x40, 0x6A, 0x09, 0xD0, 0xEF,
 | 
			
		||||
    0x1E, 0xF0, 0x41, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E,
 | 
			
		||||
    0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E, 0x00, 0x04, 0x1E, 0x10,
 | 
			
		||||
    0x00, 0x0F, 0xF0, 0xD6, 0x07, 0x80, 0xFF, 0x01, 0x03, 0x00, 0x06, 0x00, 0x80, 0xB4, 0x02, 0x00,
 | 
			
		||||
    0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA0, 0xB4, 0xA8, 0x01,
 | 
			
		||||
    0xB4, 0xEF, 0x0B, 0xF4, 0x01, 0x0F, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4,
 | 
			
		||||
    0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0x0F, 0x00,
 | 
			
		||||
    0x07, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, 0x64, 0x04, 0x00, 0x84, 0xA0,
 | 
			
		||||
    0x6A, 0x00, 0xF0, 0x7F, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x87, 0x74,
 | 
			
		||||
    0x00, 0xA0, 0xBA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F, 0x00, 0x07, 0x00, 0x80, 0x40, 0x02, 0x00, 0x83,
 | 
			
		||||
    0xE0, 0x01, 0x00, 0x90, 0x04, 0x00, 0xAF, 0x80, 0xAA, 0x00, 0xC0, 0xFF, 0x01, 0x00, 0xE0, 0x01,
 | 
			
		||||
    0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00,
 | 
			
		||||
    0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x00, 0x50, 0xB9,
 | 
			
		||||
    0x00, 0xF0, 0x2F, 0x00, 0x40, 0x01, 0x00, 0x06, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA0, 0xB4, 0x00, 0x0A, 0xB4, 0x80, 0x07,
 | 
			
		||||
    0xB4, 0xE0, 0x01, 0xB4, 0x78, 0x00, 0xB4, 0x1E, 0x00, 0xF4, 0x2F, 0x00, 0xF4, 0x79, 0x00, 0xB4,
 | 
			
		||||
    0xF0, 0x01, 0xB4, 0xD0, 0x03, 0xB4, 0x40, 0x0B, 0xB4, 0x00, 0x2E, 0x0F, 0x00, 0x06, 0x00, 0x84,
 | 
			
		||||
    0xF0, 0x7F, 0x00, 0xA0, 0x7A, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x87,
 | 
			
		||||
    0x74, 0x00, 0xA0, 0xBA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F, 0x00, 0x12, 0x00, 0xA0, 0x58, 0x4A, 0x0A,
 | 
			
		||||
    0xFC, 0xFF, 0x2E, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C,
 | 
			
		||||
    0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x0F, 0x00,
 | 
			
		||||
    0x12, 0x00, 0xA0, 0x64, 0xA8, 0x01, 0xB4, 0xEF, 0x0B, 0xF4, 0x01, 0x0F, 0xB4, 0x00, 0x1D, 0xB4,
 | 
			
		||||
    0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00,
 | 
			
		||||
    0x1D, 0xB4, 0x00, 0x1D, 0x0F, 0x00, 0x13, 0x00, 0xA1, 0xAA, 0x00, 0xD0, 0xEB, 0x07, 0xF0, 0x41,
 | 
			
		||||
    0x0F, 0x74, 0x00, 0x1D, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D,
 | 
			
		||||
    0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x80, 0xFF, 0x02, 0x00, 0x14, 0x0D, 0x00, 0x12, 0x00, 0xA4,
 | 
			
		||||
    0x64, 0xA9, 0x01, 0xB4, 0xFB, 0x07, 0xF4, 0x41, 0x0F, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4,
 | 
			
		||||
    0x00, 0x2D, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x0F, 0xF4, 0x96, 0x0B, 0xB4, 0xFE,
 | 
			
		||||
    0x02, 0xB4, 0x10, 0x00, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x05, 0x00, 0x12,
 | 
			
		||||
    0x00, 0xA3, 0x40, 0x6A, 0x09, 0xD0, 0xEB, 0x1F, 0xF0, 0x01, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00,
 | 
			
		||||
    0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F,
 | 
			
		||||
    0x80, 0xBF, 0x1E, 0x00, 0x04, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00,
 | 
			
		||||
    0x80, 0x1E, 0x03, 0x00, 0x12, 0x00, 0x9F, 0x40, 0x92, 0x1A, 0x80, 0xF7, 0x1F, 0x80, 0x1F, 0x00,
 | 
			
		||||
    0x80, 0x07, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80,
 | 
			
		||||
    0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x10, 0x00, 0x13, 0x00, 0xA1, 0xA9, 0x01, 0xD0, 0xEB,
 | 
			
		||||
    0x0B, 0xE0, 0x01, 0x1E, 0xF0, 0x00, 0x19, 0xE0, 0x06, 0x00, 0x80, 0xBF, 0x01, 0x00, 0xA4, 0x0F,
 | 
			
		||||
    0x10, 0x00, 0x1E, 0xB4, 0x00, 0x1D, 0xE0, 0x56, 0x0F, 0x80, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00,
 | 
			
		||||
    0x0D, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x89, 0x0F, 0x00, 0xA4, 0xAF, 0x0A, 0xA8, 0xAF, 0x0A, 0x00,
 | 
			
		||||
    0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x86, 0x6D, 0x09, 0x00, 0xF8,
 | 
			
		||||
    0x1F, 0x00, 0x40, 0x0D, 0x00, 0x12, 0x00, 0xA2, 0x60, 0x00, 0x19, 0xB4, 0x00, 0x1E, 0xB4, 0x00,
 | 
			
		||||
    0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E,
 | 
			
		||||
    0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1D, 0x00, 0x04, 0x0D, 0x00, 0x12, 0x00, 0x96,
 | 
			
		||||
    0x28, 0x00, 0x18, 0x78, 0x00, 0x2D, 0xB4, 0x00, 0x0E, 0xE0, 0x00, 0x0B, 0xD0, 0x41, 0x07, 0xC0,
 | 
			
		||||
    0x82, 0x03, 0x80, 0xC3, 0x02, 0x00, 0xDB, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80, 0x7D, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x3C, 0x10, 0x00, 0x12, 0x00, 0xA0, 0x09, 0x14, 0x60, 0x1D, 0x38, 0x70, 0x1C, 0x3C,
 | 
			
		||||
    0x74, 0x2C, 0x7D, 0x38, 0x28, 0xAA, 0x28, 0x34, 0xDA, 0x2C, 0x74, 0xD7, 0x1D, 0xB0, 0xC3, 0x0E,
 | 
			
		||||
    0xE0, 0x82, 0x0F, 0xE0, 0x42, 0x0B, 0xD0, 0x41, 0x07, 0x0F, 0x00, 0x12, 0x00, 0x8D, 0x64, 0x00,
 | 
			
		||||
    0x19, 0xF0, 0x00, 0x1F, 0xD0, 0x82, 0x07, 0x80, 0xD7, 0x02, 0x00, 0xFE, 0x02, 0x00, 0x80, 0x7C,
 | 
			
		||||
    0x02, 0x00, 0x8D, 0xBE, 0x00, 0x40, 0xEB, 0x01, 0xC0, 0x83, 0x07, 0xE0, 0x01, 0x0F, 0xB8, 0x00,
 | 
			
		||||
    0x2D, 0x0F, 0x00, 0x12, 0x00, 0x99, 0x18, 0x00, 0x24, 0x3C, 0x00, 0x2C, 0xB4, 0x00, 0x1E, 0xF0,
 | 
			
		||||
    0x00, 0x0F, 0xD0, 0x41, 0x0B, 0xC0, 0x83, 0x03, 0x80, 0xC7, 0x02, 0x00, 0xEB, 0x01, 0x00, 0xBE,
 | 
			
		||||
    0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x88, 0x0F,
 | 
			
		||||
    0x00, 0x90, 0x07, 0x00, 0xF4, 0x02, 0x00, 0x10, 0x02, 0x00, 0x12, 0x00, 0x8D, 0xA4, 0xAA, 0x0A,
 | 
			
		||||
    0xF4, 0xFF, 0x1F, 0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xF4, 0x02, 0x00, 0x80, 0x7C, 0x02,
 | 
			
		||||
    0x00, 0x8D, 0x1E, 0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xF4, 0x56, 0x15, 0xF4, 0xFF, 0x2F,
 | 
			
		||||
    0x0F, 0x00, 0x05, 0x00, 0x85, 0x05, 0x00, 0xC0, 0x07, 0x00, 0xE0, 0x02, 0x00, 0x80, 0xB0, 0x02,
 | 
			
		||||
    0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB4, 0x02,
 | 
			
		||||
    0x00, 0x86, 0x78, 0x00, 0x80, 0x1F, 0x00, 0x80, 0x1F, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xB4, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80,
 | 
			
		||||
    0xF0, 0x02, 0x00, 0x84, 0xE0, 0x01, 0x00, 0x80, 0x07, 0x02, 0x00, 0x80, 0x05, 0x03, 0x00, 0x0A,
 | 
			
		||||
    0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x04, 0x00, 0x03, 0x00, 0x84, 0x40, 0x01, 0x00, 0x40,
 | 
			
		||||
    0x0B, 0x02, 0x00, 0x80, 0x2D, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80,
 | 
			
		||||
    0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x86,
 | 
			
		||||
    0xD0, 0x0B, 0x00, 0xD0, 0x0B, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02,
 | 
			
		||||
    0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x86, 0x1D, 0x00,
 | 
			
		||||
    0x40, 0x0B, 0x00, 0x40, 0x01, 0x04, 0x00, 0x1B, 0x00, 0x8B, 0xA0, 0x06, 0x10, 0xBC, 0x1F, 0x70,
 | 
			
		||||
    0x0D, 0xB8, 0x3E, 0x05, 0xD0, 0x1F, 0x1B, 0x00,
 | 
			
		||||
};
 | 
			
		||||
// clang-format on
 | 
			
		||||
							
								
								
									
										11
									
								
								keyboards/dasky/reverb/graphics/robotomono20.qff.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								keyboards/dasky/reverb/graphics/robotomono20.qff.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
// Copyright 2023 QMK -- generated source code only, font retains original copyright
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono4`
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <qp.h>
 | 
			
		||||
 | 
			
		||||
extern const uint32_t font_robotomono20_length;
 | 
			
		||||
extern const uint8_t  font_robotomono20[4904];
 | 
			
		||||
							
								
								
									
										2265
									
								
								keyboards/dasky/reverb/graphics/splash.qgf.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2265
									
								
								keyboards/dasky/reverb/graphics/splash.qgf.c
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										11
									
								
								keyboards/dasky/reverb/graphics/splash.qgf.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								keyboards/dasky/reverb/graphics/splash.qgf.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
// Copyright 2023 QMK -- generated source code only, image retains original copyright
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
// This file was auto-generated by `qmk painter-convert-graphics -i splash.png -f pal256`
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <qp.h>
 | 
			
		||||
 | 
			
		||||
extern const uint32_t gfx_splash_length;
 | 
			
		||||
extern const uint8_t  gfx_splash[36030];
 | 
			
		||||
							
								
								
									
										8
									
								
								keyboards/dasky/reverb/halconf.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								keyboards/dasky/reverb/halconf.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,8 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#define HAL_USE_SPI TRUE
 | 
			
		||||
 | 
			
		||||
#include_next <halconf.h>
 | 
			
		||||
							
								
								
									
										198
									
								
								keyboards/dasky/reverb/info.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										198
									
								
								keyboards/dasky/reverb/info.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,198 @@
 | 
			
		|||
{
 | 
			
		||||
    "manufacturer": "Dasky",
 | 
			
		||||
    "keyboard_name": "Reverb",
 | 
			
		||||
    "maintainer": "daskygit",
 | 
			
		||||
    "bootloader": "rp2040",
 | 
			
		||||
    "build": {
 | 
			
		||||
        "lto": true
 | 
			
		||||
    },
 | 
			
		||||
    "diode_direction": "COL2ROW",
 | 
			
		||||
    "features": {
 | 
			
		||||
        "bootmagic": true,
 | 
			
		||||
        "extrakey": true,
 | 
			
		||||
        "mousekey": true,
 | 
			
		||||
        "wpm": true,
 | 
			
		||||
        "quantum_painter": true,
 | 
			
		||||
        "rgb_matrix": true
 | 
			
		||||
    },
 | 
			
		||||
    "matrix_pins": {
 | 
			
		||||
        "cols": ["GP12", "GP1", "GP4", "GP13", "GP6", "GP8", "GP27", "GP22"],
 | 
			
		||||
        "rows": ["GP11", "GP7", "GP9", "GP28", "GP26", "GP10", "GP14"]
 | 
			
		||||
    },
 | 
			
		||||
    "processor": "RP2040",
 | 
			
		||||
    "rgb_matrix": {
 | 
			
		||||
        "driver": "ws2812",
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "solid_color": true,
 | 
			
		||||
            "alphas_mods": true,
 | 
			
		||||
            "gradient_up_down": true,
 | 
			
		||||
            "gradient_left_right": true,
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "band_sat": true,
 | 
			
		||||
            "band_val": true,
 | 
			
		||||
            "band_pinwheel_sat": true,
 | 
			
		||||
            "band_pinwheel_val": true,
 | 
			
		||||
            "band_spiral_sat": true,
 | 
			
		||||
            "band_spiral_val": true,
 | 
			
		||||
            "cycle_all": true,
 | 
			
		||||
            "cycle_left_right": true,
 | 
			
		||||
            "cycle_up_down": true,
 | 
			
		||||
            "cycle_out_in": true,
 | 
			
		||||
            "cycle_out_in_dual": true,
 | 
			
		||||
            "rainbow_moving_chevron": true,
 | 
			
		||||
            "cycle_pinwheel": true,
 | 
			
		||||
            "cycle_spiral": true,
 | 
			
		||||
            "dual_beacon": true,
 | 
			
		||||
            "rainbow_beacon": true,
 | 
			
		||||
            "rainbow_pinwheels": true,
 | 
			
		||||
            "raindrops": true,
 | 
			
		||||
            "jellybean_raindrops": true,
 | 
			
		||||
            "hue_breathing": true,
 | 
			
		||||
            "hue_pendulum": true,
 | 
			
		||||
            "hue_wave": true,
 | 
			
		||||
            "pixel_fractal": true,
 | 
			
		||||
            "pixel_flow": true,
 | 
			
		||||
            "pixel_rain": true,
 | 
			
		||||
            "typing_heatmap": true,
 | 
			
		||||
            "digital_rain": true,
 | 
			
		||||
            "solid_reactive_simple": true,
 | 
			
		||||
            "solid_reactive": true,
 | 
			
		||||
            "solid_reactive_wide": true,
 | 
			
		||||
            "solid_reactive_multiwide": true,
 | 
			
		||||
            "solid_reactive_cross": true,
 | 
			
		||||
            "solid_reactive_multicross": true,
 | 
			
		||||
            "solid_reactive_nexus": true,
 | 
			
		||||
            "solid_reactive_multinexus": true,
 | 
			
		||||
            "splash": true,
 | 
			
		||||
            "multisplash": true,
 | 
			
		||||
            "solid_splash": true,
 | 
			
		||||
            "solid_multisplash": true
 | 
			
		||||
        },
 | 
			
		||||
        "layout": [
 | 
			
		||||
            {"matrix": [2, 1], "x": 95, "y": 13, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 0], "x": 80, "y": 9, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 1], "x": 65, "y": 2, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 0], "x": 46, "y": 3, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 1], "x": 29, "y": 3, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 0], "x": 12, "y": 0, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 2], "x": 8, "y": 10, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 3], "x": 25, "y": 14, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 2], "x": 42, "y": 14, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 3], "x": 60, "y": 13, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 2], "x": 75, "y": 19, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 3], "x": 91, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 5], "x": 87, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 4], "x": 71, "y": 30, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 5], "x": 56, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 4], "x": 38, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 5], "x": 20, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 4], "x": 5, "y": 22, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 6], "x": 0, "y": 32, "flags": 4},
 | 
			
		||||
            {"matrix": [0, 7], "x": 16, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 6], "x": 34, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [1, 7], "x": 52, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 6], "x": 68, "y": 42, "flags": 4},
 | 
			
		||||
            {"matrix": [2, 7], "x": 83, "y": 46, "flags": 4},
 | 
			
		||||
            {"matrix": [6, 0], "x": 60, "y": 54, "flags": 5},
 | 
			
		||||
            {"matrix": [6, 1], "x": 76, "y": 58, "flags": 5},
 | 
			
		||||
            {"matrix": [6, 2], "x": 96, "y": 64, "flags": 5},
 | 
			
		||||
            {"matrix": [6, 3], "x": 128, "y": 64, "flags": 5},
 | 
			
		||||
            {"matrix": [6, 4], "x": 148, "y": 58, "flags": 5},
 | 
			
		||||
            {"matrix": [6, 5], "x": 164, "y": 54, "flags": 5},
 | 
			
		||||
            {"matrix": [3, 6], "x": 141, "y": 46, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 7], "x": 156, "y": 42, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 6], "x": 172, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 7], "x": 190, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 6], "x": 208, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 7], "x": 224, "y": 32, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 5], "x": 219, "y": 22, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 4], "x": 204, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 5], "x": 186, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 4], "x": 168, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 5], "x": 153, "y": 30, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 4], "x": 137, "y": 35, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 2], "x": 133, "y": 24, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 3], "x": 149, "y": 19, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 2], "x": 164, "y": 13, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 3], "x": 182, "y": 14, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 2], "x": 199, "y": 14, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 3], "x": 216, "y": 10, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 1], "x": 212, "y": 0, "flags": 4},
 | 
			
		||||
            {"matrix": [5, 0], "x": 195, "y": 3, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 1], "x": 178, "y": 3, "flags": 4},
 | 
			
		||||
            {"matrix": [4, 0], "x": 159, "y": 2, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 1], "x": 144, "y": 9, "flags": 4},
 | 
			
		||||
            {"matrix": [3, 0], "x": 129, "y": 13, "flags": 4}
 | 
			
		||||
        ]
 | 
			
		||||
    },
 | 
			
		||||
    "url": "",
 | 
			
		||||
    "usb": {
 | 
			
		||||
        "device_version": "1.0.0",
 | 
			
		||||
        "pid": "0x0001",
 | 
			
		||||
        "vid": "0x8181"
 | 
			
		||||
    },
 | 
			
		||||
    "ws2812": {
 | 
			
		||||
        "driver": "vendor",
 | 
			
		||||
        "pin": "GP0"
 | 
			
		||||
    },
 | 
			
		||||
    "layouts": {
 | 
			
		||||
        "LAYOUT": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [1, 0], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [1, 1], "x": 3, "y": 0},
 | 
			
		||||
                {"matrix": [2, 0], "x": 4, "y": 0},
 | 
			
		||||
                {"matrix": [2, 1], "x": 5, "y": 0},
 | 
			
		||||
                {"matrix": [3, 0], "x": 8, "y": 0},
 | 
			
		||||
                {"matrix": [3, 1], "x": 9, "y": 0},
 | 
			
		||||
                {"matrix": [4, 0], "x": 10, "y": 0},
 | 
			
		||||
                {"matrix": [4, 1], "x": 11, "y": 0},
 | 
			
		||||
                {"matrix": [5, 0], "x": 12, "y": 0},
 | 
			
		||||
                {"matrix": [5, 1], "x": 13, "y": 0},
 | 
			
		||||
                {"matrix": [0, 2], "x": 0, "y": 1},
 | 
			
		||||
                {"matrix": [0, 3], "x": 1, "y": 1},
 | 
			
		||||
                {"matrix": [1, 2], "x": 2, "y": 1},
 | 
			
		||||
                {"matrix": [1, 3], "x": 3, "y": 1},
 | 
			
		||||
                {"matrix": [2, 2], "x": 4, "y": 1},
 | 
			
		||||
                {"matrix": [2, 3], "x": 5, "y": 1},
 | 
			
		||||
                {"matrix": [3, 2], "x": 8, "y": 1},
 | 
			
		||||
                {"matrix": [3, 3], "x": 9, "y": 1},
 | 
			
		||||
                {"matrix": [4, 2], "x": 10, "y": 1},
 | 
			
		||||
                {"matrix": [4, 3], "x": 11, "y": 1},
 | 
			
		||||
                {"matrix": [5, 2], "x": 12, "y": 1},
 | 
			
		||||
                {"matrix": [5, 3], "x": 13, "y": 1},
 | 
			
		||||
                {"matrix": [0, 4], "x": 0, "y": 2},
 | 
			
		||||
                {"matrix": [0, 5], "x": 1, "y": 2},
 | 
			
		||||
                {"matrix": [1, 4], "x": 2, "y": 2},
 | 
			
		||||
                {"matrix": [1, 5], "x": 3, "y": 2},
 | 
			
		||||
                {"matrix": [2, 4], "x": 4, "y": 2},
 | 
			
		||||
                {"matrix": [2, 5], "x": 5, "y": 2},
 | 
			
		||||
                {"matrix": [3, 4], "x": 8, "y": 2},
 | 
			
		||||
                {"matrix": [3, 5], "x": 9, "y": 2},
 | 
			
		||||
                {"matrix": [4, 4], "x": 10, "y": 2},
 | 
			
		||||
                {"matrix": [4, 5], "x": 11, "y": 2},
 | 
			
		||||
                {"matrix": [5, 4], "x": 12, "y": 2},
 | 
			
		||||
                {"matrix": [5, 5], "x": 13, "y": 2},
 | 
			
		||||
                {"matrix": [0, 6], "x": 0, "y": 3},
 | 
			
		||||
                {"matrix": [0, 7], "x": 1, "y": 3},
 | 
			
		||||
                {"matrix": [1, 6], "x": 2, "y": 3},
 | 
			
		||||
                {"matrix": [1, 7], "x": 3, "y": 3},
 | 
			
		||||
                {"matrix": [2, 6], "x": 4, "y": 3},
 | 
			
		||||
                {"matrix": [2, 7], "x": 5, "y": 3},
 | 
			
		||||
                {"matrix": [3, 6], "x": 8, "y": 3},
 | 
			
		||||
                {"matrix": [3, 7], "x": 9, "y": 3},
 | 
			
		||||
                {"matrix": [4, 6], "x": 10, "y": 3},
 | 
			
		||||
                {"matrix": [4, 7], "x": 11, "y": 3},
 | 
			
		||||
                {"matrix": [5, 6], "x": 12, "y": 3},
 | 
			
		||||
                {"matrix": [5, 7], "x": 13, "y": 3},
 | 
			
		||||
                {"matrix": [6, 0], "x": 4, "y": 4},
 | 
			
		||||
                {"matrix": [6, 1], "x": 5, "y": 4},
 | 
			
		||||
                {"matrix": [6, 2], "x": 6, "y": 4},
 | 
			
		||||
                {"matrix": [6, 3], "x": 7, "y": 4},
 | 
			
		||||
                {"matrix": [6, 4], "x": 8, "y": 4},
 | 
			
		||||
                {"matrix": [6, 5], "x": 9, "y": 4}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										32
									
								
								keyboards/dasky/reverb/keymaps/default/keymap.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								keyboards/dasky/reverb/keymaps/default/keymap.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,32 @@
 | 
			
		|||
{
 | 
			
		||||
    "keyboard": "dasky/reverb",
 | 
			
		||||
    "keymap": "default",
 | 
			
		||||
    "layout": "LAYOUT",
 | 
			
		||||
    "layers": [
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",   "KC_4",    "KC_5",                         "KC_6",    "KC_7",    "KC_8",    "KC_9",   "KC_0",    "KC_PSCR",
 | 
			
		||||
         "KC_TAB",  "KC_Q",    "KC_W",    "KC_E",   "KC_R",    "KC_T",                         "KC_Y",    "KC_U",    "KC_I",    "KC_O",   "KC_P",    "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "KC_A",    "KC_S",    "KC_D",   "KC_F",    "KC_G",                         "KC_H",    "KC_J",    "KC_K",    "KC_L",   "KC_SCLN", "KC_QUOT",
 | 
			
		||||
         "KC_LSFT", "KC_Z",    "KC_X",    "KC_C",   "KC_V",    "KC_B",                         "KC_N",    "KC_M",    "KC_COMM", "KC_DOT", "KC_SLSH", "KC_ESC",
 | 
			
		||||
                                                    "KC_LGUI", "MO(1)",   "KC_SPC",  "KC_ENT", "MO(2)",   "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
        ["KC_F1",   "KC_F2",   "KC_F3",   "KC_F4",   "KC_F5",   "KC_F6",                       "KC_F7",   "KC_F8",   "KC_F9",   "KC_F10",  "KC_F12",  "KC_F12",
 | 
			
		||||
         "KC_TAB",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "_______", "_______", "_______", "_______", "_______",                     "KC_LEFT", "KC_DOWN", "KC_UP",   "KC_RIGHT","_______", "_______",
 | 
			
		||||
         "KC_LSFT", "_______", "_______", "_______", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
                                                     "KC_LGUI", "KC_TRNS", "KC_SPC", "KC_ENT", "MO(3)", "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_PSCR",
 | 
			
		||||
         "KC_TAB",  "KC_EXLM", "KC_AT",   "KC_HASH", "KC_DLR",  "KC_PERC",                     "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "_______", "_______", "_______", "_______", "_______",                     "KC_MINS", "KC_EQL",  "KC_LBRC", "KC_RBRC", "KC_BSLS", "KC_GRV",
 | 
			
		||||
         "KC_LSFT", "_______", "_______", "_______", "_______", "_______",                     "KC_UNDS", "KC_PLUS", "KC_LCBR", "KC_RCBR", "KC_PIPE", "KC_TILD",
 | 
			
		||||
                                                     "KC_LGUI", "MO(3)",   "KC_SPC",  "KC_ENT",  "KC_TRNS", "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_PSCR",
 | 
			
		||||
         "QK_BOOT", "_______", "_______", "_______", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
         "RGB_TOG", "RGB_HUI", "RGB_SAI", "RGB_VAI", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
         "RGB_MOD", "RGB_HUD", "RGB_SAD", "RGB_VAD", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
                                                     "KC_LGUI", "KC_TRNS", "KC_SPC", "KC_ENT", "KC_TRNS", "KC_RALT"]
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										37
									
								
								keyboards/dasky/reverb/keymaps/via/keymap.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								keyboards/dasky/reverb/keymaps/via/keymap.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,37 @@
 | 
			
		|||
{
 | 
			
		||||
    "keyboard": "dasky/reverb",
 | 
			
		||||
    "keymap": "via",
 | 
			
		||||
    "layout": "LAYOUT",
 | 
			
		||||
    "config": {
 | 
			
		||||
        "features": {
 | 
			
		||||
            "via": true
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    "layers": [
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",   "KC_4",    "KC_5",                         "KC_6",    "KC_7",    "KC_8",    "KC_9",   "KC_0",    "KC_PSCR",
 | 
			
		||||
         "KC_TAB",  "KC_Q",    "KC_W",    "KC_E",   "KC_R",    "KC_T",                         "KC_Y",    "KC_U",    "KC_I",    "KC_O",   "KC_P",    "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "KC_A",    "KC_S",    "KC_D",   "KC_F",    "KC_G",                         "KC_H",    "KC_J",    "KC_K",    "KC_L",   "KC_SCLN", "KC_QUOT",
 | 
			
		||||
         "KC_LSFT", "KC_Z",    "KC_X",    "KC_C",   "KC_V",    "KC_B",                         "KC_N",    "KC_M",    "KC_COMM", "KC_DOT", "KC_SLSH", "KC_ESC",
 | 
			
		||||
                                                    "KC_LGUI", "MO(1)",   "KC_SPC",  "KC_ENT", "MO(2)",   "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
        ["KC_F1",   "KC_F2",   "KC_F3",   "KC_F4",   "KC_F5",   "KC_F6",                       "KC_F7",   "KC_F8",   "KC_F9",   "KC_F10",  "KC_F12",  "KC_F12",
 | 
			
		||||
         "KC_TAB",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "_______", "_______", "_______", "_______", "_______",                     "KC_LEFT", "KC_DOWN", "KC_UP",   "KC_RIGHT","_______", "_______",
 | 
			
		||||
         "KC_LSFT", "_______", "_______", "_______", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
                                                     "KC_LGUI", "KC_TRNS", "KC_SPC", "KC_ENT", "MO(3)", "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_PSCR",
 | 
			
		||||
         "KC_TAB",  "KC_EXLM", "KC_AT",   "KC_HASH", "KC_DLR",  "KC_PERC",                     "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "KC_BSPC",
 | 
			
		||||
         "KC_LCTL", "_______", "_______", "_______", "_______", "_______",                     "KC_MINS", "KC_EQL",  "KC_LBRC", "KC_RBRC", "KC_BSLS", "KC_GRV",
 | 
			
		||||
         "KC_LSFT", "_______", "_______", "_______", "_______", "_______",                     "KC_UNDS", "KC_PLUS", "KC_LCBR", "KC_RCBR", "KC_PIPE", "KC_TILD",
 | 
			
		||||
                                                     "KC_LGUI", "MO(3)",   "KC_SPC",  "KC_ENT",  "KC_TRNS", "KC_RALT"],
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        ["KC_GRV",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",                        "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_PSCR",
 | 
			
		||||
         "QK_BOOT", "_______", "_______", "_______", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
         "RGB_TOG", "RGB_HUI", "RGB_SAI", "RGB_VAI", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
         "RGB_MOD", "RGB_HUD", "RGB_SAD", "RGB_VAD", "_______", "_______",                     "_______", "_______", "_______", "_______", "_______", "_______",
 | 
			
		||||
                                                     "KC_LGUI", "KC_TRNS", "KC_SPC", "KC_ENT", "KC_TRNS", "KC_RALT"]
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										9
									
								
								keyboards/dasky/reverb/mcuconf.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								keyboards/dasky/reverb/mcuconf.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include_next <mcuconf.h>
 | 
			
		||||
 | 
			
		||||
#undef RP_SPI_USE_SPI0
 | 
			
		||||
#define RP_SPI_USE_SPI0 TRUE
 | 
			
		||||
							
								
								
									
										27
									
								
								keyboards/dasky/reverb/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								keyboards/dasky/reverb/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,27 @@
 | 
			
		|||
# Reverb
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
A unibody split with SK6803 mini-e per key RGB, GC9A01 display and Raspberry Pi Pico.
 | 
			
		||||
 | 
			
		||||
* Keyboard Maintainer: [Dasky](https://github.com/daskygit)
 | 
			
		||||
* Hardware Supported: Raspberry Pi Pico, GC9A01
 | 
			
		||||
* Hardware Availability: https://mechboards.co.uk/products/reverb-kit
 | 
			
		||||
 | 
			
		||||
Make example for this keyboard (after setting up your build environment):
 | 
			
		||||
 | 
			
		||||
    make dasky/reverb:default
 | 
			
		||||
 | 
			
		||||
Flashing example for this keyboard:
 | 
			
		||||
 | 
			
		||||
    make dasky/reverb:default:flash
 | 
			
		||||
 | 
			
		||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
			
		||||
 | 
			
		||||
## Bootloader
 | 
			
		||||
 | 
			
		||||
Enter the bootloader in 3 ways:
 | 
			
		||||
 | 
			
		||||
* **Bootmagic reset**: Hold down the top left key and plug in the keyboard
 | 
			
		||||
* **Physical boot button**: Hold down the BOOTSEL button on the Raspberry Pi Pico and plug in the keyboard
 | 
			
		||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
 | 
			
		||||
							
								
								
									
										17
									
								
								keyboards/dasky/reverb/reverb.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/dasky/reverb/reverb.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
// Copyright 2023 Dasky (@daskygit)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
#include "graphics/display.h"
 | 
			
		||||
 | 
			
		||||
void keyboard_post_init_kb(void) {
 | 
			
		||||
    display_init_kb();
 | 
			
		||||
    keyboard_post_init_user();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
 | 
			
		||||
    if (record->event.pressed) {
 | 
			
		||||
        display_key_counter();
 | 
			
		||||
    }
 | 
			
		||||
    return process_record_user(keycode, record);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								keyboards/dasky/reverb/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								keyboards/dasky/reverb/rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
QUANTUM_PAINTER_DRIVERS += gc9a01_spi
 | 
			
		||||
QUANTUM_PAINTER_DRIVERS += surface
 | 
			
		||||
 | 
			
		||||
SRC += graphics/splash.qgf.c
 | 
			
		||||
SRC += graphics/reverb.qgf.c
 | 
			
		||||
SRC += graphics/display.c
 | 
			
		||||
SRC += graphics/robotomono20.qff.c
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue