Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Filco 91 JIS + Pegasus Hoof #28

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion firmware/src/USB.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@

/* Must be 6 for boot-compliant keyboard,
Must be 16 for NKRO */
#define KEYBOARD_ARRAY_LENGTH (16)
#define KEYBOARD_ARRAY_LENGTH (18)
#define MAX_NKRO_CODE (0x7F)

#define USB_KEYBOARD_UPDATE_RATE_MS (1)
Expand Down
14 changes: 12 additions & 2 deletions firmware/src/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ uint8_t g_locked_layer;
uint8_t g_layer_select;
uint8_t g_modifier_state;
uint8_t g_report_buffer[HID_ROLLOVER_SIZE+1];
uint8_t g_nkro_field[REAL_NKRO_SIZE];
uint8_t g_nkro_field[KEYBOARD_ARRAY_LENGTH];
#ifdef KEYMAP_MEMORY_SAVE
uint8_t g_matrixlayer[NUMBER_OF_ROWS][NUMBER_OF_COLS];
#else
Expand Down Expand Up @@ -709,6 +709,11 @@ void handle_code_actuate(const uint8_t code, const uint8_t action, const uint8_t
case HID_KEYBOARD_SC_F22:
case HID_KEYBOARD_SC_F23:
case HID_KEYBOARD_SC_F24:
case HID_KEYBOARD_SC_INTERNATIONAL1:
case HID_KEYBOARD_SC_INTERNATIONAL2:
case HID_KEYBOARD_SC_INTERNATIONAL3:
case HID_KEYBOARD_SC_INTERNATIONAL4:
case HID_KEYBOARD_SC_INTERNATIONAL5:
#ifdef MACRO_RAM_SIZE
if (g_recording_macro)
record_stroke(code);
Expand Down Expand Up @@ -1002,6 +1007,11 @@ void handle_code_deactuate(const uint8_t code, const uint8_t action, const uint8
case HID_KEYBOARD_SC_F22:
case HID_KEYBOARD_SC_F23:
case HID_KEYBOARD_SC_F24:
case HID_KEYBOARD_SC_INTERNATIONAL1:
case HID_KEYBOARD_SC_INTERNATIONAL2:
case HID_KEYBOARD_SC_INTERNATIONAL3:
case HID_KEYBOARD_SC_INTERNATIONAL4:
case HID_KEYBOARD_SC_INTERNATIONAL5:
#ifdef MACRO_RAM_SIZE
if (g_recording_macro && g_keylock_flag)
check_finish_password_record(code);
Expand Down Expand Up @@ -1278,7 +1288,7 @@ void get_nkro_report(uint8_t * const buffer)
if (g_keylock_flag)
return;

for (i=0; i<REAL_NKRO_SIZE; i++)
for (i=0; i<KEYBOARD_ARRAY_LENGTH; i++)
{
buffer[i] = g_nkro_field[i];
}
Expand Down
1 change: 0 additions & 1 deletion firmware/src/keymap.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
#include "config_keymap.h"

#define HID_ROLLOVER_SIZE (6)
#define REAL_NKRO_SIZE (13)

#if defined (BOARD_SIZE_COSTAR) && defined (__AVR_ATmega32U2__)
#define KEYMAP_MEMORY_SAVE
Expand Down
15 changes: 10 additions & 5 deletions keymapper/easykeymap/boards/filco87v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@
((4, 4), (7, 17), 'HID_KEYBOARD_SC_0_AND_CLOSING_PARENTHESIS'),
((4, 4), (4, 17), 'HID_KEYBOARD_SC_MINUS_AND_UNDERSCORE'),
((4, 4), (4, 4), 'HID_KEYBOARD_SC_EQUAL_AND_PLUS'),
((8, 4), (2, 1), 'HID_KEYBOARD_SC_BACKSPACE'),
((4, 4), (5, 1), 'HID_KEYBOARD_SC_INTERNATIONAL3'), # JIS yen
((4, 4), (2, 1), 'HID_KEYBOARD_SC_BACKSPACE'),
(1, None, '0'),
((4, 4), (4, 11), 'HID_KEYBOARD_SC_INSERT'),
((4, 4), (4, 14), 'HID_KEYBOARD_SC_HOME'),
Expand Down Expand Up @@ -190,18 +191,22 @@
((4, 4), (1, 4), 'HID_KEYBOARD_SC_COMMA_AND_LESS_THAN_SIGN'),
((4, 4), (1, 3), 'HID_KEYBOARD_SC_DOT_AND_GREATER_THAN_SIGN'),
((4, 4), (0, 17), 'HID_KEYBOARD_SC_SLASH_AND_QUESTION_MARK'),
((11, 4), (3, 13), 'HID_KEYBOARD_SC_RIGHT_SHIFT'),
((4, 4), (0, 4), 'HID_KEYBOARD_SC_INTERNATIONAL1'), # JIS blacklash underscore
((7, 4), (3, 13), 'HID_KEYBOARD_SC_RIGHT_SHIFT'),
(5, None, '0'),
((4, 4), (6, 14), 'HID_KEYBOARD_SC_UP_ARROW'),
(4, None, '0')],

[((5, 4), (4, 0), 'HID_KEYBOARD_SC_LEFT_CONTROL'),
((5, 4), (2, 15), 'HID_KEYBOARD_SC_LEFT_GUI'),
((4, 4), (2, 15), 'HID_KEYBOARD_SC_LEFT_GUI'),
((5, 4), (6, 2), 'HID_KEYBOARD_SC_LEFT_ALT'),
((25, 4), (6, 10), 'HID_KEYBOARD_SC_SPACE'),
((4, 4), (0, 9), 'HID_KEYBOARD_SC_INTERNATIONAL5'), # JIS muhen
((13, 4), (6, 10), 'HID_KEYBOARD_SC_SPACE'),
((5, 4), (0, 8), 'HID_KEYBOARD_SC_INTERNATIONAL4'), # JIS henkan
((5, 4), (0, 7), 'HID_KEYBOARD_SC_INTERNATIONAL2'), # JIS kana
((5, 4), (0, 2), 'HID_KEYBOARD_SC_RIGHT_ALT'),
((5, 4), (3, 12), 'HID_KEYBOARD_SC_RIGHT_GUI'),
((5, 4), (0, 3), 'HID_KEYBOARD_SC_APPLICATION'),
((4, 4), (0, 3), 'HID_KEYBOARD_SC_APPLICATION'),
((5, 4), (1, 0), 'HID_KEYBOARD_SC_RIGHT_CONTROL'),
(1, None, '0'),
((4, 4), (0, 14), 'HID_KEYBOARD_SC_LEFT_ARROW'),
Expand Down
Loading