105 lines
2 KiB
C
105 lines
2 KiB
C
|
#include "chocopad.h"
|
||
|
|
||
|
#define _BASE 0
|
||
|
#define _FN1 1
|
||
|
#define _FN2 2
|
||
|
|
||
|
// Fillers to make layering more clear
|
||
|
#define KC_ KC_TRNS
|
||
|
#define KC_XX KC_NO
|
||
|
|
||
|
#define KC_L1 LT(1, KC_P0)
|
||
|
#define KC_L2 LT(2, KC_SPC)
|
||
|
#define KC_RST RESET
|
||
|
#define KC_BSTP BL_STEP
|
||
|
#define KC_RTOG RGB_TOG
|
||
|
#define KC_RMOD RGB_MOD
|
||
|
#define KC_RHUI RGB_HUI
|
||
|
#define KC_RHUD RGB_HUD
|
||
|
#define KC_RSAI RGB_SAI
|
||
|
#define KC_RSAD RGB_SAD
|
||
|
#define KC_RVAI RGB_VAI
|
||
|
#define KC_RVAD RGB_VAD
|
||
|
#define KC_MAC1 ADMIN
|
||
|
#define KC_MAC2 SMSPC
|
||
|
#define KC_M192 M192
|
||
|
#define KC_M255 M255
|
||
|
|
||
|
enum custom_keycodes {
|
||
|
NUMPAD = SAFE_RANGE,
|
||
|
ADMIN,
|
||
|
SMSPC,
|
||
|
M192,
|
||
|
M255
|
||
|
};
|
||
|
|
||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||
|
|
||
|
[_BASE] = KC_KEYMAP(
|
||
|
//,----+----+----+----.
|
||
|
P7 , P8 , P9 ,BSPC,
|
||
|
//|----+----+----+----|
|
||
|
P4 , P5 , P6 ,TAB ,
|
||
|
//|----+----+----+----|
|
||
|
P1 , P2 , P3 ,PENT,
|
||
|
//|----+----+----+----|
|
||
|
L1 , L2 ,PDOT,PSLS
|
||
|
//`----+----+----+----'
|
||
|
),
|
||
|
|
||
|
[_FN1] = KC_KEYMAP(
|
||
|
//,----+----+----+----.
|
||
|
ESC ,MAC1,MAC2,DEL ,
|
||
|
//|----+----+----+----|
|
||
|
LEFT,DOWN, UP ,RGHT,
|
||
|
//|----+----+----+----|
|
||
|
M192,M255, XX , XX ,
|
||
|
//|----+----+----+----|
|
||
|
, XX , , XX
|
||
|
//`----+----+----+----'
|
||
|
),
|
||
|
|
||
|
[_FN2] = KC_KEYMAP(
|
||
|
//,----+----+----+----.
|
||
|
RST , XX , XX , XX ,
|
||
|
//|----+----+----+----|
|
||
|
RTOG,RHUI,RSAI,RVAI,
|
||
|
//|----+----+----+----|
|
||
|
RMOD,RHUD,RSAD,RVAD,
|
||
|
//|----+----+----+----|
|
||
|
BSTP, , XX , XX
|
||
|
//`----+----+----+----'
|
||
|
)
|
||
|
|
||
|
};
|
||
|
|
||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||
|
switch (keycode) {
|
||
|
case ADMIN:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING("Administrator");
|
||
|
}
|
||
|
return false;
|
||
|
break;
|
||
|
case SMSPC:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING("Simspace1!");
|
||
|
}
|
||
|
return false;
|
||
|
break;
|
||
|
case M192:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING("192.168.");
|
||
|
}
|
||
|
return false;
|
||
|
break;
|
||
|
case M255:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING("255");
|
||
|
}
|
||
|
return false;
|
||
|
break;
|
||
|
}
|
||
|
return true;
|
||
|
};
|