This repository has been archived on 2025-01-28. You can view files and clone it, but cannot push or open issues or pull requests.
Files
.github
.vscode
docs
drivers
keyboards
1upkeyboards
30wer
40percentclub
6ball
9key
acr60
aeboards
ai03
al1
alf
alice
alpha
alps64
alu84
amj40
amj60
amj96
amjpad
at101_blackheart
atom47
atomic
atreus
atreus62
baguette
bantam44
bfake
bigseries
bigswitch
blockey
bm16a
boardwalk
bpiphany
bthlabs
candybar
cannonkeys
canoe
catch22
chibios_test
chimera_ergo
chimera_ls
chimera_ortho
christmas_tree
ckeys
clueboard
comet46
contra
converter
cospad
crawlpad
crkbd
cu24
cu75
daisy
dc01
deltasplit75
dichotomy
diverge3
divergetm2
dk60
do60
doro67
dozen0
duck
dz60
dztech
eco
ep
ergo42
ergodash
ergodone
ergodox_ez
ergodox_infinity
ergoinu
ergotravel
espectro
evil80
exclusive
facew
fc660c
fc980c
felix
fleuron
fortitude60
four_banger
fractal
gergo
gh60
keymaps
config.h
gh60.c
gh60.h
info.json
pinout.txt
readme.md
rules.mk
gh80_3000
gonnerd
gray_studio
gskt00
h87a
hadron
handwired
hecomi
helix
hhkb
hid_liber
hifumi
honeycomb
hotdox
hs60
idobo
infinity60
jc65
jd40
jd45
jj40
jj4x4
jj50
jm60
k_type
katana60
kbdfans
kc60
kc60se
keebio
kinesis
kira75
kmac
kmini
knops
kona_classic
laptreus
launchpad
lazydesigners
lets_split
lets_split_eh
lfkeyboards
lily58
m0lly
m10a
massdrop
maxipad
mechkeys
mechmini
mehkee96
meira
meishi
melody96
meme
miniaxe
minidox
mint60
mitosis
miuni32
model01
mt40
mt980
mxss
namecard2x4
newgame40
niu_mini
novelpad
noxary
ok60
omnikey_blackheart
orange75
org60
orthodox
paladin64
panc60
pearl
phantom
pinky
plaid
plain60
planck
playkbtw
preonic
primekb
proton_c
ps2avrGB
puck
qwertyydox
rama
redox
redox_w
s7_elephant
satan
scarletbandana
scrabblepad
sentraq
singa
sirius
sixkeyboard
skog
snagpad
sol
southpole
speedo
standaside
staryu
subatomic
sx60
tada68
tanuki
telophase
tetris
the_ruler
thevankeyboards
tkc1800
tmo50
toad
tokyo60
touchpad
treasure
uk78
v60_type_r
vinta
vision_division
vitamins_included
westfoxtrot
whitefox
wilba_tech
winkeyless
xd60
xd75
xd84
xd87
xmmx
yd68
ymd75
ymd96
ymdk_np21
z150_blackheart
zeal60
zeal65
zen
zinc
zlant
readme.md
layouts
lib
quantum
tests
tmk_core
users
util
.clang-format
.clang_complete
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
CODE_OF_CONDUCT.md
Dockerfile
Doxyfile
LICENSE
Makefile
Vagrantfile
autocomplete.sh
book.json
bootloader.mk
build_full_test.mk
build_keyboard.mk
build_layout.mk
build_test.mk
common.mk
common_features.mk
doxygen-todo
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
message.mk
readme.md
secrets.tar.enc
shell.nix
show_options.mk
testlist.mk
qmk_firmware/keyboards/gh60/config.h
Drashna Jaelre b05c0e46c6 Adds a default value for IS_COMMAND for COMMAND feature ()
* Add default value for IS_COMMAND for COMMAND feature

* Cleanup and consistency

* Update Templates to reflect change

* Fix IS_COMMAND in template

* Fix IS_COMMAND define

* Use consistent IS_COMMAND block in templates

* Remove unnecessary `#undef IS_COMMAND` directives

* Fix compile issue on orthodox

* Reomve IS_COMMAND option for newer boards

* Remove all existing definitions of IS_COMMAND if they use default LSHIFT and RSHIFT setting

* Remove a couple of additional IS_COMMAND defines

* Remove remaining redundant IS_COMMAND definitions

* Remove #undef IS_COMMAND from orthodox:drashna and whitefox:konstantin

* Remove multiple empty lines in modified config.h files

* Update additional boards

* Reomve IS_COMMAND from newer boards

* Update Alice keyboard

* Remove IS_COMMAND from additional boards

Jan 24th edition
2019-01-26 15:49:45 -08:00

157 lines
4.8 KiB
C

/*
Copyright 2012 Jun Wako <wakojun@gmail.com>
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 0xFEED
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER geekhack
#define PRODUCT GH60
#define DESCRIPTION t.m.k. keyboard firmware for GH60
/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 14
/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }
// Rev A
// #define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B6, D4, B1, B0, B5, B4, D7, D6, B3 }
// Rev B/C
#define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B6, D4, B1, B7, B5, B4, D7, D6, B3 }
#define UNUSED_PINS
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCING_DELAY 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
#define BACKLIGHT_LEVELS 3
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*
*/
//#define FORCE_NKRO
/*
* Magic Key Options
*
* Magic keys are hotkey commands that allow control over firmware functions of
* the keyboard. They are best used in combination with the HID Listen program,
* found here: https://www.pjrc.com/teensy/hid_listen.html
*
* The options below allow the magic key functionality to be changed. This is
* useful if your keyboard/keypad is missing keys and you want magic key support.
*
*/
/* control how magic key switches layers */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
/* override magic key keymap */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
//#define MAGIC_KEY_HELP1 H
//#define MAGIC_KEY_HELP2 SLASH
//#define MAGIC_KEY_DEBUG D
//#define MAGIC_KEY_DEBUG_MATRIX X
//#define MAGIC_KEY_DEBUG_KBD K
//#define MAGIC_KEY_DEBUG_MOUSE M
//#define MAGIC_KEY_VERSION V
//#define MAGIC_KEY_STATUS S
//#define MAGIC_KEY_CONSOLE C
//#define MAGIC_KEY_LAYER0_ALT1 ESC
//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
//#define MAGIC_KEY_LAYER0 0
//#define MAGIC_KEY_LAYER1 1
//#define MAGIC_KEY_LAYER2 2
//#define MAGIC_KEY_LAYER3 3
//#define MAGIC_KEY_LAYER4 4
//#define MAGIC_KEY_LAYER5 5
//#define MAGIC_KEY_LAYER6 6
//#define MAGIC_KEY_LAYER7 7
//#define MAGIC_KEY_LAYER8 8
//#define MAGIC_KEY_LAYER9 9
//#define MAGIC_KEY_BOOTLOADER PAUSE
//#define MAGIC_KEY_LOCK CAPS
//#define MAGIC_KEY_EEPROM E
//#define MAGIC_KEY_NKRO N
//#define MAGIC_KEY_SLEEP_LED Z
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
#endif