Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
004826e1b8 | ||
|
|
f445a7f971 | ||
|
|
13e1388f2d | ||
|
|
fe56fffe7d | ||
|
|
d069a42c07 | ||
|
|
029234f1f1 | ||
|
|
ddf49e8b21 | ||
|
|
371922ad61 | ||
|
|
f868a3bb86 | ||
|
|
5329a80f6c |
No files matched your search
@@ -4,6 +4,7 @@
|
|||||||
*.eep
|
*.eep
|
||||||
*.elf
|
*.elf
|
||||||
*.hex
|
*.hex
|
||||||
|
*.qmk
|
||||||
!util/bootloader.hex
|
!util/bootloader.hex
|
||||||
!quantum/tools/eeprom_reset.hex
|
!quantum/tools/eeprom_reset.hex
|
||||||
*.log
|
*.log
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ To https://github.com/whoeveryouare/qmk_firmware.git
|
|||||||
+ 20043e64...7da94ac5 master -> master
|
+ 20043e64...7da94ac5 master -> master
|
||||||
```
|
```
|
||||||
|
|
||||||
Your changes now exist on your fork on Github - if you go back there (https://github.com/<whoeveryouare>/qmk_firmware), you can create a "New Pull Request" by clicking this button:
|
Your changes now exist on your fork on Github - if you go back there (`https://github.com/<whoeveryouare>/qmk_firmware`), you can create a "New Pull Request" by clicking this button:
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -60,4 +60,4 @@ Here you'll be able to see exactly what you've committed - if it all looks good,
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
After submitting, we may talk to you about your changes, ask that you make changes, and eventually accept it! Thanks for contributing to QMK :)
|
After submitting, we may talk to you about your changes, ask that you make changes, and eventually accept it! Thanks for contributing to QMK :)
|
||||||
@@ -4,5 +4,5 @@
|
|||||||
"bootloader": "atmel-dfu",
|
"bootloader": "atmel-dfu",
|
||||||
"width": 16.5,
|
"width": 16.5,
|
||||||
"height": 5,
|
"height": 5,
|
||||||
"layouts": {"KEYMAP": [{"x": 0, "y": 0, "w": 1}, {"x": 1, "y": 0, "w": 1}, {"x": 2, "y": 0, "w": 1}, {"x": 3, "y": 0, "w": 1}, {"x": 4, "y": 0, "w": 1}, {"x": 5, "y": 0, "w": 1}, {"x": 6, "y": 0, "w": 1}, {"x": 7, "y": 0, "w": 1}, {"x": 8, "y": 0, "w": 1}, {"x": 9, "y": 0, "w": 1}, {"x": 10, "y": 0, "w": 1}, {"x": 11, "y": 0, "w": 1}, {"x": 12, "y": 0, "w": 1}, {"x": 13, "y": 0, "w": 1}, {"x": 15.5, "y": 0, "w": 1}, {"x": 15, "y": 0, "w": 1}, {"x": 0, "y": 1, "w": 1.5}, {"x": 1.5, "y": 1, "w": 1}, {"x": 2.5, "y": 1, "w": 1}, {"x": 3.5, "y": 1, "w": 1}, {"x": 4.5, "y": 1, "w": 1}, {"x": 5.5, "y": 1, "w": 1}, {"x": 6.5, "y": 1, "w": 1}, {"x": 7.5, "y": 1, "w": 1}, {"x": 8.5, "y": 1, "w": 1}, {"x": 9.5, "y": 1, "w": 1}, {"x": 10.5, "y": 1, "w": 1}, {"x": 11.5, "y": 1, "w": 1}, {"x": 12.5, "y": 1, "w": 1}, {"x": 13.5, "y": 1, "w": 1.5}, {"x": 15.5, "y": 1, "w": 1}, {"x": 0, "y": 2, "w": 1.75}, {"x": 1.75, "y": 2, "w": 1}, {"x": 2.75, "y": 2, "w": 1}, {"x": 3.75, "y": 2, "w": 1}, {"x": 4.75, "y": 2, "w": 1}, {"x": 5.75, "y": 2, "w": 1}, {"x": 6.75, "y": 2, "w": 1}, {"x": 7.75, "y": 2, "w": 1}, {"x": 8.75, "y": 2, "w": 1}, {"x": 9.75, "y": 2, "w": 1}, {"x": 10.75, "y": 2, "w": 1}, {"x": 11.75, "y": 2, "w": 1}, {"x": 12.75, "y": 2, "w": 1}, {"x": 13.75, "y": 2, "w": 1.25}, {"x": 0, "y": 3, "w": 1.25}, {"x": 1.25, "y": 3, "w": 1}, {"x": 2.25, "y": 3, "w": 1}, {"x": 3.25, "y": 3, "w": 1}, {"x": 4.25, "y": 3, "w": 1}, {"x": 5.25, "y": 3, "w": 1}, {"x": 6.25, "y": 3, "w": 1}, {"x": 7.25, "y": 3, "w": 1}, {"x": 8.25, "y": 3, "w": 1}, {"x": 9.25, "y": 3, "w": 1}, {"x": 10.25, "y": 3, "w": 1}, {"x": 11.25, "y": 3, "w": 1}, {"x": 12.25, "y": 3, "w": 1}, {"x": 13.25, "y": 3, "w": 1.25}, {"x": 14.5, "y": 3, "w": 1}, {"x": 0, "y": 4, "w": 1.25}, {"x": 1.25, "y": 4, "w": 1}, {"x": 2.25, "y": 4, "w": 1.25}, {"x": 3.5, "y": 4, "w": 1.25}, {"x": 4.75, "y": 4, "w": 2}, {"x": 6.75, "y": 4, "w": 2}, {"x": 8.75, "y": 4, "w": 1.25}, {"x": 10, "y": 4, "w": 1.25}, {"x": 11.25, "y": 4, "w": 1}, {"x": 12.25, "y": 4, "w": 1.25}, {"x": 13.5, "y": 4, "w": 1}, {"x": 14.5, "y": 4, "w": 1}, {"x": 15.5, "y": 4, "w": 1}]}
|
"layouts": {"KEYMAP": [{"x": 0, "y": 0, "w": 1}, {"x": 1, "y": 0, "w": 1}, {"x": 2, "y": 0, "w": 1}, {"x": 3, "y": 0, "w": 1}, {"x": 4, "y": 0, "w": 1}, {"x": 5, "y": 0, "w": 1}, {"x": 6, "y": 0, "w": 1}, {"x": 7, "y": 0, "w": 1}, {"x": 8, "y": 0, "w": 1}, {"x": 9, "y": 0, "w": 1}, {"x": 10, "y": 0, "w": 1}, {"x": 11, "y": 0, "w": 1}, {"x": 12, "y": 0, "w": 1}, {"x": 13, "y": 0, "w": 1}, {"x": 14, "y": 0, "w": 1}, {"x": 15.5, "y": 0, "w": 1}, {"x": 0, "y": 1, "w": 1.5}, {"x": 1.5, "y": 1, "w": 1}, {"x": 2.5, "y": 1, "w": 1}, {"x": 3.5, "y": 1, "w": 1}, {"x": 4.5, "y": 1, "w": 1}, {"x": 5.5, "y": 1, "w": 1}, {"x": 6.5, "y": 1, "w": 1}, {"x": 7.5, "y": 1, "w": 1}, {"x": 8.5, "y": 1, "w": 1}, {"x": 9.5, "y": 1, "w": 1}, {"x": 10.5, "y": 1, "w": 1}, {"x": 11.5, "y": 1, "w": 1}, {"x": 12.5, "y": 1, "w": 1}, {"x": 13.5, "y": 1, "w": 1.5}, {"x": 15.5, "y": 1, "w": 1}, {"x": 0, "y": 2, "w": 1.75}, {"x": 1.75, "y": 2, "w": 1}, {"x": 2.75, "y": 2, "w": 1}, {"x": 3.75, "y": 2, "w": 1}, {"x": 4.75, "y": 2, "w": 1}, {"x": 5.75, "y": 2, "w": 1}, {"x": 6.75, "y": 2, "w": 1}, {"x": 7.75, "y": 2, "w": 1}, {"x": 8.75, "y": 2, "w": 1}, {"x": 9.75, "y": 2, "w": 1}, {"x": 10.75, "y": 2, "w": 1}, {"x": 11.75, "y": 2, "w": 1}, {"x": 12.75, "y": 2, "w": 1}, {"x": 13.75, "y": 2, "w": 1.25}, {"x": 0, "y": 3, "w": 1.25}, {"x": 1.25, "y": 3, "w": 1}, {"x": 2.25, "y": 3, "w": 1}, {"x": 3.25, "y": 3, "w": 1}, {"x": 4.25, "y": 3, "w": 1}, {"x": 5.25, "y": 3, "w": 1}, {"x": 6.25, "y": 3, "w": 1}, {"x": 7.25, "y": 3, "w": 1}, {"x": 8.25, "y": 3, "w": 1}, {"x": 9.25, "y": 3, "w": 1}, {"x": 10.25, "y": 3, "w": 1}, {"x": 11.25, "y": 3, "w": 1}, {"x": 12.25, "y": 3, "w": 1}, {"x": 13.25, "y": 3, "w": 1.25}, {"x": 14.5, "y": 3, "w": 1}, {"x": 0, "y": 4, "w": 1.25}, {"x": 1.25, "y": 4, "w": 1}, {"x": 2.25, "y": 4, "w": 1.25}, {"x": 3.5, "y": 4, "w": 1.25}, {"x": 4.75, "y": 4, "w": 2}, {"x": 6.75, "y": 4, "w": 2}, {"x": 8.75, "y": 4, "w": 1.25}, {"x": 10, "y": 4, "w": 1.25}, {"x": 11.25, "y": 4, "w": 1}, {"x": 12.25, "y": 4, "w": 1.25}, {"x": 13.5, "y": 4, "w": 1}, {"x": 14.5, "y": 4, "w": 1}, {"x": 15.5, "y": 4, "w": 1}]}
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"manufacturer": "Clueboard",
|
"manufacturer": "Clueboard",
|
||||||
"maintainer": "skullydazed",
|
"maintainer": "skullydazed"
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2012 Jun Wako <[email protected]>
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef CONFIG_H
|
||||||
|
#define CONFIG_H
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0xCEEB
|
||||||
|
#define PRODUCT_ID 0x0007
|
||||||
|
#define DEVICE_VER 0x0001
|
||||||
|
#define MANUFACTURER di0ib
|
||||||
|
#define PRODUCT Nano
|
||||||
|
#define DESCRIPTION 8 key microswitch board
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 2
|
||||||
|
#define MATRIX_COLS 4
|
||||||
|
|
||||||
|
/* ws2812 RGB LED */
|
||||||
|
#define RGB_DI_PIN B1
|
||||||
|
#define RGBLIGHT_TIMER
|
||||||
|
#define RGBLIGHT_ANIMATIONS
|
||||||
|
#define RGBLED_NUM 6 // Number of LEDs
|
||||||
|
#define ws2812_PORTREG PORTD
|
||||||
|
#define ws2812_DDRREG DDRD
|
||||||
|
|
||||||
|
/* COL2ROW or ROW2COL */
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
#define TAPPING_TERM 200
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
#include "nano.h"
|
||||||
|
|
||||||
|
#define _MAIN 0
|
||||||
|
#define _FN 1
|
||||||
|
|
||||||
|
#define KC_ KC_TRNS
|
||||||
|
#define KC_X0 LT(_FN, KC_ESC)
|
||||||
|
#define KC_RTOG RGB_TOG
|
||||||
|
#define KC_RMOD RGB_MOD
|
||||||
|
#define KC_RHUI RGB_HUI
|
||||||
|
#define KC_RHUD RGB_HUD
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[_MAIN] = KC_KEYMAP(
|
||||||
|
VOLU,MPLY,MPRV,PGUP,
|
||||||
|
VOLD,MUTE,MNXT,PGDN
|
||||||
|
),
|
||||||
|
|
||||||
|
[_FN] = KC_KEYMAP(
|
||||||
|
F , ,RHUI, ,
|
||||||
|
RTOG,RMOD,RHUD,
|
||||||
|
)
|
||||||
|
};
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
ifndef QUANTUM_DIR
|
||||||
|
include ../../../../Makefile
|
||||||
|
endif
|
||||||
@@ -0,0 +1,159 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
|
Note for ErgoDox EZ customizers: Here be dragons!
|
||||||
|
This is not a file you want to be messing with.
|
||||||
|
All of the interesting stuff for you is under keymaps/ :)
|
||||||
|
Love, Erez
|
||||||
|
|
||||||
|
Copyright 2013 Oleg Kostyuk <[email protected]>
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* scan matrix
|
||||||
|
*/
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <avr/io.h>
|
||||||
|
#include <util/delay.h>
|
||||||
|
#include "action_layer.h"
|
||||||
|
#include "print.h"
|
||||||
|
#include "debug.h"
|
||||||
|
#include "util.h"
|
||||||
|
#include "matrix.h"
|
||||||
|
#include "nano.h"
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
/* matrix state(1:on, 0:off) */
|
||||||
|
static matrix_row_t matrix[MATRIX_ROWS];
|
||||||
|
static matrix_row_t matrix_stage[MATRIX_ROWS];
|
||||||
|
static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
||||||
|
|
||||||
|
static uint16_t debouncing_time;
|
||||||
|
static bool debouncing = false;
|
||||||
|
|
||||||
|
__attribute__ ((weak))
|
||||||
|
void matrix_init_kb(void) {
|
||||||
|
matrix_init_user();
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__ ((weak))
|
||||||
|
void matrix_scan_kb(void) {
|
||||||
|
matrix_scan_user();
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__ ((weak))
|
||||||
|
void matrix_init_user(void) {
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__ ((weak))
|
||||||
|
void matrix_scan_user(void) {
|
||||||
|
}
|
||||||
|
|
||||||
|
inline
|
||||||
|
uint8_t matrix_rows(void)
|
||||||
|
{
|
||||||
|
return MATRIX_ROWS;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline
|
||||||
|
uint8_t matrix_cols(void)
|
||||||
|
{
|
||||||
|
return MATRIX_COLS;
|
||||||
|
}
|
||||||
|
|
||||||
|
void matrix_init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
DDRF &= ~(1<<4 | 1<<5 | 1<<6 | 1<<7);
|
||||||
|
PORTF |= (1<<4 | 1<<5 | 1<<6 | 1<<7);
|
||||||
|
DDRC &= ~(1<<6);
|
||||||
|
PORTC |= (1<<6);
|
||||||
|
DDRD &= ~(1<<0 | 1<<1 | 1<<4);
|
||||||
|
PORTD |= (1<<0 | 1<<1 | 1<<4);
|
||||||
|
|
||||||
|
for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
|
||||||
|
matrix[i] = 0;
|
||||||
|
matrix_debouncing[i] = 0;
|
||||||
|
matrix_stage[i] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
matrix_init_quantum();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
uint8_t matrix_scan(void)
|
||||||
|
{
|
||||||
|
matrix_stage[0] =
|
||||||
|
(PINF&(1<<4) ? 0 : (1<<0)) |
|
||||||
|
(PINF&(1<<5) ? 0 : (1<<1)) |
|
||||||
|
(PINF&(1<<6) ? 0 : (1<<2)) |
|
||||||
|
(PINF&(1<<7) ? 0 : (1<<3));
|
||||||
|
matrix_stage[1] =
|
||||||
|
(PIND&(1<<1) ? 0 : (1<<0)) |
|
||||||
|
(PIND&(1<<0) ? 0 : (1<<1)) |
|
||||||
|
(PIND&(1<<4) ? 0 : (1<<2)) |
|
||||||
|
(PINC&(1<<6) ? 0 : (1<<3));
|
||||||
|
|
||||||
|
if (memcmp(matrix_debouncing, matrix_stage, sizeof(matrix)) != 0) {
|
||||||
|
debouncing = true;
|
||||||
|
debouncing_time = timer_read();
|
||||||
|
}
|
||||||
|
|
||||||
|
matrix_debouncing[0] = matrix_stage[0];
|
||||||
|
matrix_debouncing[1] = matrix_stage[1];
|
||||||
|
|
||||||
|
if (debouncing && (timer_elapsed(debouncing_time) > 20)) {
|
||||||
|
for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
|
||||||
|
matrix[i] = matrix_debouncing[i];
|
||||||
|
}
|
||||||
|
debouncing = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
matrix_scan_quantum();
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool matrix_is_modified(void)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline
|
||||||
|
bool matrix_is_on(uint8_t row, uint8_t col)
|
||||||
|
{
|
||||||
|
return (matrix[row] & ((matrix_row_t)1<<col));
|
||||||
|
}
|
||||||
|
|
||||||
|
inline
|
||||||
|
matrix_row_t matrix_get_row(uint8_t row)
|
||||||
|
{
|
||||||
|
return matrix[row];
|
||||||
|
}
|
||||||
|
|
||||||
|
void matrix_print(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
uint8_t matrix_key_count(void)
|
||||||
|
{
|
||||||
|
uint8_t count = 0;
|
||||||
|
for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
|
||||||
|
count += bitpop16(matrix[i]);
|
||||||
|
}
|
||||||
|
return count;
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
#include "nano.h"
|
||||||
|
|
||||||
|
void matrix_init_kb(void) {
|
||||||
|
matrix_init_user();
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
#ifndef NANO_H
|
||||||
|
#define NANO_H
|
||||||
|
|
||||||
|
#include "quantum.h"
|
||||||
|
|
||||||
|
#define KC_KEYMAP(k01, k02, k03, k04, k05, k06, k07, k08) \
|
||||||
|
{ \
|
||||||
|
{KC_##k01, KC_##k02, KC_##k03, KC_##k04}, \
|
||||||
|
{KC_##k05, KC_##k06, KC_##k07, KC_##k08} \
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
Nano
|
||||||
|
====
|
||||||
|
|
||||||
|
A 2x4 mini switch pad built using 6mm x 6mm tactile switches and a Pro Micro. [More info here.](http://www.40percent.club/2016/12/nano-tmk.html)
|
||||||
|
|
||||||
|
Keyboard Maintainer: [di0ib](https://github.com/di0ib)
|
||||||
|
Hardware Supported: Pro Micro ATmega32U4
|
||||||
|
Hardware Availability: [PCB Files](https://github.com/di0ib/tmk_keyboard/tree/master/keyboard/nano/pcb)
|
||||||
|
|
||||||
|
Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
|
make nano:default
|
||||||
|
|
||||||
|
See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information.
|
||||||
@@ -0,0 +1,70 @@
|
|||||||
|
SRC = matrix.c
|
||||||
|
|
||||||
|
# MCU name
|
||||||
|
#MCU = at90usb1287
|
||||||
|
MCU = atmega32u4
|
||||||
|
|
||||||
|
# Processor frequency.
|
||||||
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||||
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||||
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||||
|
# automatically to create a 32-bit value in your source code.
|
||||||
|
#
|
||||||
|
# This will be an integer division of F_USB below, as it is sourced by
|
||||||
|
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||||
|
# does not *change* the processor frequency - it should merely be updated to
|
||||||
|
# reflect the processor speed set externally so that the code can use accurate
|
||||||
|
# software delays.
|
||||||
|
F_CPU = 16000000
|
||||||
|
|
||||||
|
#
|
||||||
|
# LUFA specific
|
||||||
|
#
|
||||||
|
# Target architecture (see library "Board Types" documentation).
|
||||||
|
ARCH = AVR8
|
||||||
|
|
||||||
|
# Input clock frequency.
|
||||||
|
# This will define a symbol, F_USB, in all source code files equal to the
|
||||||
|
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||||
|
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||||
|
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||||
|
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||||
|
# at the end, this will be done automatically to create a 32-bit value in your
|
||||||
|
# source code.
|
||||||
|
#
|
||||||
|
# If no clock division is performed on the input clock inside the AVR (via the
|
||||||
|
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||||
|
F_USB = $(F_CPU)
|
||||||
|
|
||||||
|
# Interrupt driven control endpoint task(+60)
|
||||||
|
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||||
|
|
||||||
|
|
||||||
|
# Boot Section Size in *bytes*
|
||||||
|
# Teensy halfKay 512
|
||||||
|
# Teensy++ halfKay 1024
|
||||||
|
# Atmel DFU loader 4096
|
||||||
|
# LUFA bootloader 4096
|
||||||
|
# USBaspLoader 2048
|
||||||
|
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||||
|
|
||||||
|
# Build Options
|
||||||
|
# change to "no" to disable the options, or define them in the Makefile in
|
||||||
|
# the appropriate keymap folder that will get included automatically
|
||||||
|
#
|
||||||
|
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||||
|
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||||
|
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||||
|
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||||
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
|
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
MIDI_ENABLE = no # MIDI controls
|
||||||
|
AUDIO_ENABLE = no # Audio output on port C6
|
||||||
|
UNICODE_ENABLE = yes # Unicode
|
||||||
|
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||||
|
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
|
||||||
|
|
||||||
|
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||||
|
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||||
|
CUSTOM_MATRIX = yes
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
"width": 12,
|
"width": 12,
|
||||||
"height": 4,
|
"height": 4,
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"PLANCK_MIT": {
|
"LAYOUT_planck_mit": {
|
||||||
"key_count": 47,
|
"key_count": 47,
|
||||||
"layout": [
|
"layout": [
|
||||||
{ "w": 1, "x": 0, "y": 0 },
|
{ "w": 1, "x": 0, "y": 0 },
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
{ "w": 1, "x": 10, "y": 3 },
|
{ "w": 1, "x": 10, "y": 3 },
|
||||||
{ "w": 1, "x": 11, "y": 3 } ]
|
{ "w": 1, "x": 11, "y": 3 } ]
|
||||||
},
|
},
|
||||||
"PLANCK_GRID": {
|
"LAYOUT_planck_grid": {
|
||||||
"key_count": 48,
|
"key_count": 48,
|
||||||
"layout": [
|
"layout": [
|
||||||
{ "w": 1, "x": 0, "y": 0 },
|
{ "w": 1, "x": 0, "y": 0 },
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
#include "quantum.h"
|
#include "quantum.h"
|
||||||
|
|
||||||
#define PLANCK_MIT( \
|
#define LAYOUT_planck_mit( \
|
||||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
||||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
||||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
{ k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \
|
{ k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define PLANCK_GRID( \
|
#define LAYOUT_planck_grid( \
|
||||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
||||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
||||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
||||||
@@ -29,8 +29,8 @@
|
|||||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define KEYMAP PLANCK_GRID
|
#define KEYMAP LAYOUT_planck_grid
|
||||||
#define LAYOUT_ortho_4x12 PLANCK_GRID
|
#define LAYOUT_ortho_4x12 LAYOUT_planck_grid
|
||||||
|
|
||||||
#ifdef KEYBOARD_planck_rev3
|
#ifdef KEYBOARD_planck_rev3
|
||||||
#include "rev3.h"
|
#include "rev3.h"
|
||||||
|
|||||||
@@ -67,6 +67,6 @@ API_SYSEX_ENABLE = no
|
|||||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||||
|
|
||||||
LAYOUTS = ortho_4x12
|
LAYOUTS = ortho_4x12 planck_mit planck_grid
|
||||||
|
|
||||||
DEFAULT_FOLDER = planck/rev4
|
DEFAULT_FOLDER = planck/rev4
|
||||||
@@ -96,6 +96,30 @@ ifndef TEENSY_LOADER_CLI
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Generate a .qmk for the QMK-FF
|
||||||
|
qmk: $(BUILD_DIR)/$(TARGET).hex
|
||||||
|
zip $(TARGET).qmk -FSrj $(KEYMAP_PATH)/*
|
||||||
|
zip $(TARGET).qmk -u $<
|
||||||
|
printf "@ $<\n@=firmware.hex\n" | zipnote -w $(TARGET).qmk
|
||||||
|
printf "{\n \"generated\": \"%s\"\n}" "$$(date)" > $(BUILD_DIR)/$(TARGET).json
|
||||||
|
if [ -f $(KEYBOARD_PATH_5)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_5)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_4)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_4)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_3)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_3)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_2)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_2)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_1)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_1)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
zip $(TARGET).qmk -urj $(BUILD_DIR)/$(TARGET).json
|
||||||
|
printf "@ $(TARGET).json\n@=info.json\n" | zipnote -w $(TARGET).qmk
|
||||||
|
|
||||||
# Program the device.
|
# Program the device.
|
||||||
program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep
|
program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep
|
||||||
$(PROGRAM_CMD)
|
$(PROGRAM_CMD)
|
||||||
|
|||||||
@@ -180,6 +180,30 @@ EXTRALIBDIRS = $(RULESPATH)/ld
|
|||||||
|
|
||||||
DFU_UTIL ?= dfu-util
|
DFU_UTIL ?= dfu-util
|
||||||
|
|
||||||
|
# Generate a .qmk for the QMK-FF
|
||||||
|
qmk: $(BUILD_DIR)/$(TARGET).bin
|
||||||
|
zip $(TARGET).qmk -FSrj $(KEYMAP_PATH)/*
|
||||||
|
zip $(TARGET).qmk -u $<
|
||||||
|
printf "@ $<\n@=firmware.bin\n" | zipnote -w $(TARGET).qmk
|
||||||
|
printf "{\n \"generated\": \"%s\"\n}" "$$(date)" > $(BUILD_DIR)/$(TARGET).json
|
||||||
|
if [ -f $(KEYBOARD_PATH_5)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_5)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_4)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_4)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_3)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_3)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_2)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_2)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
if [ -f $(KEYBOARD_PATH_1)/info.json ]; then \
|
||||||
|
jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_1)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \
|
||||||
|
fi
|
||||||
|
zip $(TARGET).qmk -urj $(BUILD_DIR)/$(TARGET).json
|
||||||
|
printf "@ $(TARGET).json\n@=info.json\n" | zipnote -w $(TARGET).qmk
|
||||||
|
|
||||||
dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter
|
dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter
|
||||||
$(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin
|
$(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,360 @@
|
|||||||
|
:10000000BDC00000E3C00000E1C00000DFC0000090
|
||||||
|
:10001000DDC00000DBC00000D9C00000D7C0000078
|
||||||
|
:10002000D5C00000D3C000002AC70000A1C700004F
|
||||||
|
:10003000CDC00000CBC00000C9C00000C7C0000098
|
||||||
|
:10004000C5C00000C3C00000C1C00000BFC00000A8
|
||||||
|
:10005000BDC00000BBC00000B9C000006FC60000FA
|
||||||
|
:10006000B5C00000B3C00000B1C00000AFC00000C8
|
||||||
|
:10007000ADC00000ABC00000A9C00000A7C00000D8
|
||||||
|
:10008000A5C00000A3C00000A1C000009FC00000E8
|
||||||
|
:100090009DC000009BC0000099C0000097C00000F8
|
||||||
|
:1000A00095C0000093C0000091C000000001000056
|
||||||
|
:1000B0005D0112000200001A014300030000160156
|
||||||
|
:1000C0000401030904FC001802030904E4001603F8
|
||||||
|
:1000D000030904D6000C0C03310032003300340055
|
||||||
|
:1000E0003500000016035500530042002000530065
|
||||||
|
:1000F00065007200690061006C0000001803540084
|
||||||
|
:10010000650065006E007300790064007500690089
|
||||||
|
:100110006E006F000000040309040902430002019D
|
||||||
|
:1001200000C0320904000001020201000524001091
|
||||||
|
:10013000010524010001042402060524060001072C
|
||||||
|
:1001400005820308004009040100020A00000007BC
|
||||||
|
:100150000503024000000705840240000012010070
|
||||||
|
:100160000202000020C01683040001010203010006
|
||||||
|
:1001700001C10201803601813600010B11241FBE2E
|
||||||
|
:10018000CFEFDAE0DEBFCDBF11E0A0E0B1E0EAE3FF
|
||||||
|
:10019000F6E102C005900D92A232B107D9F722E034
|
||||||
|
:1001A000A2E2B1E001C01D92A935B207E1F710E06B
|
||||||
|
:1001B000CEEBD0E004C02197FE010E94150BCD3B91
|
||||||
|
:1001C000D107C9F70E941D090C941B0B19CFDC0144
|
||||||
|
:1001D000ED91FC910190F081E02D09948EBD00001D
|
||||||
|
:1001E0000DB407FEFDCF8EB508950F931F930FB684
|
||||||
|
:1001F000F8948091440290914502A0914602B091FA
|
||||||
|
:1002000047020FBE409122015091230160912401C9
|
||||||
|
:10021000709125018C019D01041B150B260B370BDA
|
||||||
|
:100220000832110521053105F0F0809322019093E9
|
||||||
|
:100230002301A0932401B09325012091010180EEB8
|
||||||
|
:10024000820F813A28F090910001919590930001DE
|
||||||
|
:1002500080910001820F80930101569A803810F43A
|
||||||
|
:100260005E9801C05E9A1F910F91089590912601AA
|
||||||
|
:10027000882319F0911103C004C0911102C0289A7B
|
||||||
|
:100280000895289808950F931F93CF93DF938B01C0
|
||||||
|
:10029000EC01DD27FE0193D46EE170E080E090E098
|
||||||
|
:1002A0008DD5FE0192D46EE170E080E090E086D5BD
|
||||||
|
:1002B0000150110978F7DF91CF911F910F910895A7
|
||||||
|
:1002C00040E05BE460E070E08FE492E00E949A0A14
|
||||||
|
:1002D000529A62E070E087E090E0D5DF539A62E0E6
|
||||||
|
:1002E00070E088E090E0CFDF569A62E070E08BE04B
|
||||||
|
:1002F00090E0C9CF882311F05A9A08955A9808952A
|
||||||
|
:10030000CF93DF9300D01F92CDB7DEB72B834A8304
|
||||||
|
:10031000698364DF6981862F61DF4A81842F5EDF14
|
||||||
|
:100320002B81822F0F900F900F90DF91CF9156CF9E
|
||||||
|
:1003300020913A012093270180913B01809328016D
|
||||||
|
:1003400080913C018093290180913D0180932A0195
|
||||||
|
:1003500080913E0180932B0180913F0180932C017D
|
||||||
|
:100360008091400180932D018091410180932E0165
|
||||||
|
:100370008091420180932F018091440190E0982F59
|
||||||
|
:10038000882730914501830F911D9093310180930F
|
||||||
|
:1003900030018091460190E0982F882730914701E5
|
||||||
|
:1003A000830F911D90933301809332018091480116
|
||||||
|
:1003B00090E0982F882730914901830F911D9093E9
|
||||||
|
:1003C00035018093340180914A0190E0A0E0B0E0D3
|
||||||
|
:1003D000BA2FA92F982F882730914B01830F911D99
|
||||||
|
:1003E000A11DB11DDC019927882740914C0150E0E7
|
||||||
|
:1003F000542F4427052E000C660B770B840F951F96
|
||||||
|
:10040000A61FB71F30914D01830F911DA11DB11D76
|
||||||
|
:100410008093360190933701A0933801B09339014E
|
||||||
|
:1004200081E0203E08F480E080932601089581E079
|
||||||
|
:100430001DDF209A65D380914202882381F08130AC
|
||||||
|
:1004400051F48DB3809340029DB380914102809519
|
||||||
|
:1004500089238DBB04C08FB7F8948093400283E555
|
||||||
|
:100460008CBD1DBC299864E170E080E090E0A6D4CA
|
||||||
|
:1004700080E0FCDE80E991E00197F1F781E0F6DEB3
|
||||||
|
:1004800062E370E080E090E099D420E040E063E532
|
||||||
|
:100490008CEA36DF81E090E090933D0280933C024D
|
||||||
|
:1004A000089539D322982A982198299880E0DEDE91
|
||||||
|
:1004B0002098289810923D0210923C020895242F13
|
||||||
|
:1004C000880F880F880F462F672F805C19CFCF9336
|
||||||
|
:1004D000DF9300D0CDB7DEB7482F692F80E090E0E2
|
||||||
|
:1004E00049836A8307DF20E049816A818CE408DF61
|
||||||
|
:1004F0006EE170E080E090E061D481E090E00F90E8
|
||||||
|
:100500000F90DF91CF91F6CE2091320130913301DF
|
||||||
|
:1005100080913A0290913B022032310511F4807FA4
|
||||||
|
:1005200008952034310511F4807E08952038310576
|
||||||
|
:1005300011F4807C08952115314009F480780895E4
|
||||||
|
:10054000CF92DF92EF92FF920F931F93CF93DF939F
|
||||||
|
:100550006C01DADF8C01C0E0D0E0CC15DD0554F58C
|
||||||
|
:10056000D3DF7C010817190721F0C801B0DFCCDF09
|
||||||
|
:100570007C01FE01E65CFE4F60913A0270913B0205
|
||||||
|
:10058000408180E09CDF2296FE01E75CFE4F609197
|
||||||
|
:100590003A0270913B02408181E091DF20913A0262
|
||||||
|
:1005A00030913B022F5F3F4F30933B0220933A0242
|
||||||
|
:1005B0008701D3CFC8018BDF80E1DF91CF911F91FD
|
||||||
|
:1005C0000F91FF90EF90DF90CF900895462F880F06
|
||||||
|
:1005D000880F880F20E0672F805E92CE0F931F93C5
|
||||||
|
:1005E000CF93DF938C01C0E0D0E0C017D10704F5B2
|
||||||
|
:1005F00060913A0270913B0280E0E8DF682F8FE45F
|
||||||
|
:1006000092E0E5DD60913A0270913B0281E0DEDF2D
|
||||||
|
:10061000682F8FE492E0DBDD20913A0230913B02BB
|
||||||
|
:100620002F5F3F4F30933B0220933A022296DDCF5B
|
||||||
|
:1006300080E1DF91CF911F910F910895EF92FF928A
|
||||||
|
:100640000F931F93CF93DF937C0100913A02109197
|
||||||
|
:100650003B02000F111FE801CE01801B910B8E158C
|
||||||
|
:100660009F055CF42FEF4C2F6D2F80EA49DE682F39
|
||||||
|
:100670008FE492E0ACDD2196EFCF80E1DF91CF9166
|
||||||
|
:100680001F910F91FF90EF9008958FE492E0EFD5C6
|
||||||
|
:10069000892BD9F38FE492E023C608950F931F931B
|
||||||
|
:1006A000CF93DF938C01CAE3D1E0CE018A5391400E
|
||||||
|
:1006B000801791071CF4E9DF8993F7CFDF91CF9181
|
||||||
|
:1006C0001F910F910895EF92FF920F931F93CF9375
|
||||||
|
:1006D000DF93EC018B01CB01E1DF80E090E00ADEEB
|
||||||
|
:1006E0008AE3E82E81E0F82E0C0F1D1FC017D107FA
|
||||||
|
:1006F00071F0F70121917F014C2F6D2F80EC00DE0E
|
||||||
|
:100700006DE270E080E090E059D32196EFCF81E078
|
||||||
|
:1007100090E0F0DD80E1DF91CF911F910F91FF908C
|
||||||
|
:10072000EF9008950F931F93CF93DF938C01C091A7
|
||||||
|
:100730003A02D0913B0280913401909135018017AB
|
||||||
|
:10074000910718F0CC0FDD1F0BC080913E029091F5
|
||||||
|
:100750003F02019690933F0280933E0281E10FC0D9
|
||||||
|
:100760000132110540F060E270E0CE01ACDFA096EE
|
||||||
|
:1007700000521109F5CFB801CE01A5DF80E1DF916C
|
||||||
|
:10078000CF911F910F91089580DF803231F464E1A1
|
||||||
|
:100790008FE492E01CDD60E10AC080913E029091FE
|
||||||
|
:1007A0003F02019690933F0280933E0265E18FE401
|
||||||
|
:1007B00092E00DCDCF93C82F68DF803251F464E111
|
||||||
|
:1007C0008FE492E004DD6C2F8FE492E000DD60E1C5
|
||||||
|
:1007D0000AC080913E0290913F02019690933F02A1
|
||||||
|
:1007E00080933E0265E18FE492E0CF91F0CC8138B6
|
||||||
|
:1007F00059F020F4803861F482E00BC0823831F087
|
||||||
|
:10080000833931F483E505C081E003C082E101C092
|
||||||
|
:1008100080E0D0CF84E090E041DFEAE3F1E02381A3
|
||||||
|
:100820004281618180816CDDC5CFCF93DF93EC0184
|
||||||
|
:1008300035DF2BDF803241F464E18FE492E0C7DCE6
|
||||||
|
:10084000CE017EDE682F0AC080913E0290913F0269
|
||||||
|
:10085000019690933F0280933E0265E18FE492E01F
|
||||||
|
:10086000DF91CF91B4CCCF93DF930FDFC82FD0E0CF
|
||||||
|
:10087000DC2FCC270ADFC80FD11D07DF863421F417
|
||||||
|
:10088000CE01DF91CF91D1CF8534B9F4CE014ADFCB
|
||||||
|
:10089000C82FFBDE803231F464E18FE492E097DC14
|
||||||
|
:1008A0006C2F0CC080913E0290913F020196909374
|
||||||
|
:1008B0003F0280933E0265E101C061E18FE492E076
|
||||||
|
:1008C000DF91CF9184CC0F931F93CF93DF93DDDE25
|
||||||
|
:1008D000C82FDBDE082FD9DE182FD7DE803259F083
|
||||||
|
:1008E00080913E0290913F02019690933F02809347
|
||||||
|
:1008F0003E0265E115C0D0E0DC2FCC27C00FD11D32
|
||||||
|
:1009000064E18FE492E063DC163419F4CE0166DE14
|
||||||
|
:1009100006C0153419F4CE0191DE01C081E1682FC3
|
||||||
|
:100920008FE492E0DF91CF911F910F9150CCADDE1B
|
||||||
|
:10093000803259F080913E0290913F02019690934F
|
||||||
|
:100940003F0280933E0265E120C064E18FE492E0C3
|
||||||
|
:100950003EDC20E040E060E080E3D2DC682F8FE402
|
||||||
|
:1009600092E035DC20E041E060E080E3C9DC682F04
|
||||||
|
:100970008FE492E02CDC20E042E060E080E3C0DC29
|
||||||
|
:10098000682F8FE492E023DC60E18FE492E01FCCDB
|
||||||
|
:100990007CDE813509F477C0E0F4813409F460C06D
|
||||||
|
:1009A00050F4803309F440C0813309F442C08032EE
|
||||||
|
:1009B00009F07AC06FC0853409F454C0803509F459
|
||||||
|
:1009C00055C0823409F070C084E190E067DEB0DC8D
|
||||||
|
:1009D0004CC0813609F453C0F0F4863509F452C096
|
||||||
|
:1009E000803609F44BC0853509F05EC04EDE90E0DC
|
||||||
|
:1009F00090933B0280933A0248DE90E0982F88273C
|
||||||
|
:100A000020913A0230913B02820F931F90933B0258
|
||||||
|
:100A100080933A022AC08437A1F1853709F439C09E
|
||||||
|
:100A2000843609F041C01FCF10923F0210923E025F
|
||||||
|
:100A30001CC02BDE803271F564E18FE492E0C7DBED
|
||||||
|
:100A4000E0914F02F09150020280F381E02D47E0E7
|
||||||
|
:100A500050E069E071E08FE492E0099560E133C015
|
||||||
|
:100A600014DEC5CE85E090E019DE8ECE80913C028A
|
||||||
|
:100A700090913D02892BC9F7DADCF7CF06DE05DE5F
|
||||||
|
:100A8000F4CF21CFC7CE10923F0210923E0209DD73
|
||||||
|
:100A9000ECCF4DCF80913E0290913F020196909312
|
||||||
|
:100AA0003F0280933E020EC080913E0290913F0231
|
||||||
|
:100AB000019690933F0280933E02E7DD803211F46D
|
||||||
|
:100AC00062E101C065E18FE492E081CB80913C025C
|
||||||
|
:100AD00090913D02892B11F05A9A01C05A98809149
|
||||||
|
:100AE0003E0290913F02892B11F05B9A01C05B9806
|
||||||
|
:100AF0007CDB8FE492E0BBD3892B09F049CF0895CA
|
||||||
|
:100B0000289A209A8CB580618CBD8CB580648CBD90
|
||||||
|
:100B1000219A229A08958CB58F7B8CBD08951DBAB9
|
||||||
|
:100B2000109268001CBC10BE1FBA10927A0010927E
|
||||||
|
:100B30006E0010926F00109271001092720010926D
|
||||||
|
:100B4000C900ECEBF0E0108214B817B81AB81DB861
|
||||||
|
:100B500010BA108215B818B81BB81EB811BA08958B
|
||||||
|
:100B6000F894E1E6F0E020E82083108283E084BD81
|
||||||
|
:100B700085BDEEE6F0E080818160808381E0809336
|
||||||
|
:100B8000800092E090938100809390009093910078
|
||||||
|
:100B90009093C00094E09093C1008093C200809332
|
||||||
|
:100BA000C3001092C40086E880937A0020937B00F3
|
||||||
|
:100BB00010927E0010927D0040D178940895E93122
|
||||||
|
:100BC00050F4EE0FE451FA4F0994E93120F4EE0F9E
|
||||||
|
:100BD000E25EF94F09940895289A0895299A089594
|
||||||
|
:100BE0002A9A08952B9A08952F9A6AC0589A58C045
|
||||||
|
:100BF000599A08955A9A08955B9A0895469A66C03C
|
||||||
|
:100C0000479A6AC05E9A08955F9A6CC02C9A0895BC
|
||||||
|
:100C10002D9A4AC02E9A4EC08F9A08958E9A0895A2
|
||||||
|
:100C20008D9A08958C9A0895899A0895889A0895BE
|
||||||
|
:100C30005C9A08955D9A0895769A08952898089583
|
||||||
|
:100C4000299808952A9808952B9808952F9838C0C8
|
||||||
|
:100C5000589826C0599808955A9808955B98089511
|
||||||
|
:100C6000469834C0479838C05E9808955F983AC057
|
||||||
|
:100C70002C9808952D9818C02E981CC08F98089510
|
||||||
|
:100C80008E9808958D9808958C9808958998089560
|
||||||
|
:100C9000889808955C9808955D98089576980895C9
|
||||||
|
:100CA000E4B5EF7DE4BD0895E0918000EF77E09337
|
||||||
|
:100CB00080000895E0918000EF7DE093800008952A
|
||||||
|
:100CC000E0918000E77FE09380000895E09190003C
|
||||||
|
:100CD000EF77E09390000895E091C000EF77E09304
|
||||||
|
:100CE000C0000895E091C200E77FE093C20008953C
|
||||||
|
:100CF000F89484B7877F84BF80916000806180937F
|
||||||
|
:100D000060001092600080E29EE40197F1F781E0BC
|
||||||
|
:100D10008093E00080E28093D80080E69AEE01970D
|
||||||
|
:100D2000F1F7FDDE0C94003FFFCFF894F8DE80E68B
|
||||||
|
:100D30009AEE0197F1F70C940000FFCF8F938FB7D5
|
||||||
|
:100D40008F93809143028D5F8D37D0F4809343025F
|
||||||
|
:100D5000809144028F5F80934402D8F080914502D5
|
||||||
|
:100D60008F4F80934502A8F0809146028F4F809369
|
||||||
|
:100D7000460278F0809147028F4F8093470209C066
|
||||||
|
:100D80008D5780934302809144028E5F809344028A
|
||||||
|
:100D900028F7809148028C5F8093480258F0809138
|
||||||
|
:100DA00049028F4F8093490228F080914A028F4F69
|
||||||
|
:100DB00080934A028F918FBF8F911895CF92DF92C7
|
||||||
|
:100DC000EF92FF926B017C0119D09B01C114D104F9
|
||||||
|
:100DD000E104F10471F012D0621B730B683E7340A2
|
||||||
|
:100DE000A8F381E0C81AD108E108F10828513C4F66
|
||||||
|
:100DF000EDCFFF90EF90DF90CF9008950FB6F8946D
|
||||||
|
:100E000066B515B2709148028091490290914A02EC
|
||||||
|
:100E10000FBE10FE05C06F3F19F07C5F8F4F9F4FD4
|
||||||
|
:100E200011240024660F001C660F001C7029089511
|
||||||
|
:100E30008091E80080FFFCCF08958091D80087FF63
|
||||||
|
:100E400002C085FF1BC081E08093D70080EA8093B9
|
||||||
|
:100E5000D80082E189BD09B400FEFDCF80E980930E
|
||||||
|
:100E6000D8001092E00010925B0210925A02109289
|
||||||
|
:100E700059021092E1008DE08093E20008951F92E4
|
||||||
|
:100E80000F920FB60F9211242F933F934F935F93BE
|
||||||
|
:100E90006F937F938F939F93AF93BF93EF93FF9342
|
||||||
|
:100EA0009091E1001092E10093FF11C01092E900CF
|
||||||
|
:100EB00081E08093EB001092EC0082E28093ED00E1
|
||||||
|
:100EC00088E08093F00010925B021092590292FF2A
|
||||||
|
:100ED0001DC080915B028823C9F080914E02882357
|
||||||
|
:100EE00059F0815080934E02811106C084E08093B6
|
||||||
|
:100EF000E9008AE38093E80080914D02882331F075
|
||||||
|
:100F0000815080934D02811101C0F2DE90FF0CC030
|
||||||
|
:100F100080E18093E20010925B0281E080935A02AC
|
||||||
|
:100F200080EA8093D80019BC80915A02882379F016
|
||||||
|
:100F300094FF0DC082E189BD09B400FEFDCF80E9B8
|
||||||
|
:100F40008093D8008DE08093E20010925A02FF91C6
|
||||||
|
:100F5000EF91BF91AF919F918F917F916F915F9131
|
||||||
|
:100F60004F913F912F910F900FBE0F901F901895AA
|
||||||
|
:100F70001F920F920FB60F921124EF92FF920F93D0
|
||||||
|
:100F80001F932F933F934F935F936F937F938F9311
|
||||||
|
:100F90009F93AF93BF93CF93EF93FF931092E9008A
|
||||||
|
:100FA0008091E80083FF30C1C091F1008091F10091
|
||||||
|
:100FB000E090F100F090F1000091F1001091F1004B
|
||||||
|
:100FC0002091F1003091F10092EF9093E80086308B
|
||||||
|
:100FD00009F03FC086E0ECEAF0E0459155914E15EE
|
||||||
|
:100FE0005F0511F0359615C0459155914017510791
|
||||||
|
:100FF00011F033960EC04591559184912F3F3105E4
|
||||||
|
:1010000019F010F02FEF30E0281708F4822F3EEF90
|
||||||
|
:1010100008C0815011F7F8C0891B3093E80088237D
|
||||||
|
:10102000A9F09091E800292F2570D9F392FDEFC027
|
||||||
|
:10103000982F813208F090E2292F222369F3FA01D8
|
||||||
|
:1010400045914093F100AF012150F7CF903249F321
|
||||||
|
:10105000DEC0853049F48EEF8093E800E9DE8E2D06
|
||||||
|
:1010600080688093E300D3C0893001F5C111CCC002
|
||||||
|
:10107000E0925B021092590210924E028EEF809322
|
||||||
|
:10108000E80081E0EFE6F1E08093E900959190932C
|
||||||
|
:10109000EB00992331F095919093EC00959190930A
|
||||||
|
:1010A000ED008F5F853081F78EE1A9C0883049F46B
|
||||||
|
:1010B000C03809F0A9C0BCDE80915B028093F100CA
|
||||||
|
:1010C0007DC0813279F4C13A09F09EC0B1DEE2E020
|
||||||
|
:1010D000F1E087E08E0F90819093F10031968E13AE
|
||||||
|
:1010E000FACF6CC0803209F047C0C13209F08CC021
|
||||||
|
:1010F0008091E80082FFFCCFE2E0F1E087E08E0F14
|
||||||
|
:101100009091F100908331968E13FACF8BEF8093FC
|
||||||
|
:10111000E8008EEF8093E8003091020140910301D6
|
||||||
|
:10112000809104012091050190E0A0E0B0E0DC0195
|
||||||
|
:1011300099278827942B832BB22B86389105A105FC
|
||||||
|
:10114000B10521F48FE080934D0261C0863991058D
|
||||||
|
:10115000A105B10509F05BC084E08093E9009FEF31
|
||||||
|
:101160008091EE00837039F09093E8008091E80060
|
||||||
|
:1011700082FDFCCFF5CFD9DD823231F4C13209F0E6
|
||||||
|
:1011800043C0E092590204C0833221F4C132E1F538
|
||||||
|
:101190004FDE14C0811116C04BDEC23851F40093EB
|
||||||
|
:1011A000E9008091EB0085FB882780F91092E90027
|
||||||
|
:1011B00001C080E08093F1001092F1008EEF8093E7
|
||||||
|
:1011C000E80025C0982F9D7F9130F1F4C230E1F402
|
||||||
|
:1011D000EF28D1F40F779FEF900F9630A8F49EEF91
|
||||||
|
:1011E0009093E8000093E900833071F089E18093E7
|
||||||
|
:1011F000EB0081E090E001C0880F0A95EAF7809348
|
||||||
|
:10120000EA001092EA0003C081E28093EB00FF91B4
|
||||||
|
:10121000EF91CF91BF91AF919F918F917F916F91FE
|
||||||
|
:101220005F914F913F912F911F910F91FF90EF9000
|
||||||
|
:101230000F900FBE0F901F90189592DC41D846DC9E
|
||||||
|
:10124000FECFCF93DF931F92CDB7DEB76983DC016A
|
||||||
|
:10125000ED91FC910280F381E02D41E050E0BE0170
|
||||||
|
:101260006F5F7F4F09950F90DF91CF910895FC013B
|
||||||
|
:101270008FB7F89490915B02911102C090E010C07A
|
||||||
|
:1012800093E09093E9009091F200911109C02091B0
|
||||||
|
:10129000E80022FFF3CF25FDF1CF2BE62093E800F5
|
||||||
|
:1012A0008FBF2085318537FD03C09F3F09F09F5FC9
|
||||||
|
:1012B000892F90E00895CF93DF93EC01888599857D
|
||||||
|
:1012C00097FF09C0E881F9810680F781E02DCE0102
|
||||||
|
:1012D00009959987888788859985DF91CF910895A9
|
||||||
|
:1012E000FC012085318537FD07C04FEF5FEF518747
|
||||||
|
:1012F0004087C901992708959FB7F89480915B02B0
|
||||||
|
:10130000882369F083E08093E9002BE68091E80070
|
||||||
|
:1013100085FD09C082FF03C02093E800F7CF9FBF7F
|
||||||
|
:101320008FEF9FEF08958091F1002091E80025FD57
|
||||||
|
:1013300003C02BE62093E8009FBF90E00895DF9262
|
||||||
|
:10134000EF92FF920F931F93CF93DF938C01EB01EA
|
||||||
|
:1013500080915B02882371F07FB7F89484E08093DA
|
||||||
|
:10136000E90080914C02882369F08091E80085FDB6
|
||||||
|
:1013700007C07FBF81E0F801828320E030E0D1C068
|
||||||
|
:1013800010924C0220E030E064E080E4F82EA1EFFF
|
||||||
|
:10139000B0E09AE3E92EE3E0DE2E4115510509F4B1
|
||||||
|
:1013A000BFC08091E400815F9091E80095FD16C078
|
||||||
|
:1013B0007FBF9091E400981304C081E080934C02B9
|
||||||
|
:1013C00005C090915B02911104C081E0F801828315
|
||||||
|
:1013D000A8C07FB7F8946093E900E6CF8091F2004F
|
||||||
|
:1013E0009F2D981BE92FF0E04E175F0708F4942F0C
|
||||||
|
:1013F000E92FF0E04E1B5F0B2E0F3F1FE0E4E91BCF
|
||||||
|
:10140000E03428F4EE0FFF27E85FF54F099480C021
|
||||||
|
:1014100099919C9399919C9399919C9399919C9368
|
||||||
|
:1014200099919C9399919C9399919C9399919C9358
|
||||||
|
:1014300099919C9399919C9399919C9399919C9348
|
||||||
|
:1014400099919C9399919C9399919C9399919C9338
|
||||||
|
:1014500099919C9399919C9399919C9399919C9328
|
||||||
|
:1014600099919C9399919C9399919C9399919C9318
|
||||||
|
:1014700099919C9399919C9399919C9399919C9308
|
||||||
|
:1014800099919C9399919C9399919C9399919C93F8
|
||||||
|
:1014900099919C9399919C9399919C9399919C93E8
|
||||||
|
:1014A00099919C9399919C9399919C9399919C93D8
|
||||||
|
:1014B00099919C9399919C9399919C9399919C93C8
|
||||||
|
:1014C00099919C9399919C9399919C9399919C93B8
|
||||||
|
:1014D00099919C9399919C9399919C9399919C93A8
|
||||||
|
:1014E00099919C9399919C9399919C9399919C9398
|
||||||
|
:1014F00099919C9399919C9399919C9399919C9388
|
||||||
|
:1015000099919C9399919C9399919C9399919C9377
|
||||||
|
:101510008091E80085FFE092E800D0924E023DCF36
|
||||||
|
:101520007FBFC901DF91CF911F910F91FF90EF9085
|
||||||
|
:10153000DF9008952FEF3FEFFC01318720877DDC9E
|
||||||
|
:101540000FB6F8948091440290914502A091460212
|
||||||
|
:10155000B09147020FBE9C0180915B02882329F065
|
||||||
|
:1015600068EC70E080E090E029CC80915A028823FA
|
||||||
|
:1015700001F10FB6F8948091440290914502A09138
|
||||||
|
:101580004602B09147020FBE40915A02442389F0AF
|
||||||
|
:101590000FB6F89440914402509145026091460282
|
||||||
|
:1015A000709147020FBE481B590B4B3F510560F32A
|
||||||
|
:1015B00011C00FB6F8948091440290914502A09119
|
||||||
|
:1015C0004602B09147020FBE821B930B853C9940A7
|
||||||
|
:1015D00008F4C2CF08959FB7F89480915B028823E6
|
||||||
|
:1015E00021F080914E02811102C09FBF089584E0D6
|
||||||
|
:1015F0008093E9008AE38093E80010924E02F5CFD1
|
||||||
|
:10160000EACFEFE4F2E08AE0DF011D928A95E9F784
|
||||||
|
:1016100088EE93E0A0E0B0E083839483A583B68353
|
||||||
|
:1016200085E191E0918380830895EE0FFF1F05907F
|
||||||
|
:0A163000F491E02D0994F894FFCF27
|
||||||
|
:10163A00088000E10000000008415652204953503A
|
||||||
|
:10164A00000000000021099F09370970095B0900A1
|
||||||
|
:02165A000B0083
|
||||||
|
:00000001FF
|
||||||
Reference in new issue
Block a user