diff options
author | Ryan <fauxpark@gmail.com> | 2021-07-25 11:02:36 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-25 11:02:36 +1000 |
commit | 8cc568bc29b2b488dd90c686350b78a7605c58de (patch) | |
tree | 0b73ea1818850d648de47544088de2d4058c01f1 /keyboards | |
parent | 95730d4f9605f6c7185ceec168d83508e0b9046b (diff) |
Fix & clean up tronguylabs/m122_3270 (#13684)
Diffstat (limited to 'keyboards')
-rw-r--r-- | keyboards/tronguylabs/m122_3270/blackpill/config.h | 4 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/blackpill/readme.md | 1 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/blackpill/rules.mk | 19 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/config.h | 42 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/info.json | 285 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c | 227 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/keymaps/default/readme.md | 1 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/m122_3270.c | 1 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/m122_3270.h | 32 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/readme.md | 13 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/rules.mk | 16 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/teensy/config.h | 4 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/teensy/readme.md | 1 | ||||
-rw-r--r-- | keyboards/tronguylabs/m122_3270/teensy/rules.mk | 19 |
14 files changed, 318 insertions, 347 deletions
diff --git a/keyboards/tronguylabs/m122_3270/blackpill/config.h b/keyboards/tronguylabs/m122_3270/blackpill/config.h index 95c94ef318..53c3ad73e4 100644 --- a/keyboards/tronguylabs/m122_3270/blackpill/config.h +++ b/keyboards/tronguylabs/m122_3270/blackpill/config.h @@ -16,8 +16,6 @@ #pragma once -// place overrides below - // Blackpill pin assignments: reversed the rows from the Teensy version for easier PCB layout // DO NOT USE the following pins: A9 (has pulldown on it), A11/A12 (USB lines), B2 (external pulldown) // C13 has an LED, and C13/C14/C15 are best used as inputs (with DIODE_DIRECTION set to ROW2COL, the @@ -26,4 +24,4 @@ #define MATRIX_ROW_PINS { C13, C14, C15, A0, A1, A2, A3, A4 } // The BlackPill version is version 2 -#define DEVICE_VER 0x0002 +#define DEVICE_VER 0x0002 diff --git a/keyboards/tronguylabs/m122_3270/blackpill/readme.md b/keyboards/tronguylabs/m122_3270/blackpill/readme.md index 08df795b13..1e47a447a3 100644 --- a/keyboards/tronguylabs/m122_3270/blackpill/readme.md +++ b/keyboards/tronguylabs/m122_3270/blackpill/readme.md @@ -1,2 +1,3 @@ # BlackPill controller for m122-3270 + This directory contains the BlackPill-specific definitions for the M122-3270 keyboard. diff --git a/keyboards/tronguylabs/m122_3270/blackpill/rules.mk b/keyboards/tronguylabs/m122_3270/blackpill/rules.mk index d3daefaebe..47e9c06f4f 100644 --- a/keyboards/tronguylabs/m122_3270/blackpill/rules.mk +++ b/keyboards/tronguylabs/m122_3270/blackpill/rules.mk @@ -1,7 +1,22 @@ -# Overrides for the Blackpill version - # MCU name MCU = STM32F411 # Bootloader selection BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = yes # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +BLUETOOTH_ENABLE = no # Enable Bluetooth +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/tronguylabs/m122_3270/config.h b/keyboards/tronguylabs/m122_3270/config.h index 0dd0187a1a..98359e6cc4 100644 --- a/keyboards/tronguylabs/m122_3270/config.h +++ b/keyboards/tronguylabs/m122_3270/config.h @@ -18,11 +18,10 @@ #include "config_common.h" -#define VENDOR_ID 0x1209 -#define PRODUCT_ID 0x3270 -// DEVICE_VER is defined in each variant's config.h file -#define MANUFACTURER IBM -#define PRODUCT Model M PC/3270 122 key +#define VENDOR_ID 0x1209 +#define PRODUCT_ID 0x3270 +#define MANUFACTURER IBM +#define PRODUCT Model M PC/3270 122 key // Both controllers draw 100 mA or less #define USB_MAX_POWER_CONSUMPTION 100 @@ -31,41 +30,8 @@ #define MATRIX_ROWS 8 #define MATRIX_COLS 20 -/* - * Keyboard Matrix Assignments - * - * Change this to how you wired your keyboard - * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) - * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) - * -*/ -#define UNUSED_PINS - /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION ROW2COL /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 15 - -/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. - * This is userful for the Windows task manager shortcut (ctrl+shift+esc). - */ -// #define GRAVE_ESC_CTRL_OVERRIDE - -/* - * 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 diff --git a/keyboards/tronguylabs/m122_3270/info.json b/keyboards/tronguylabs/m122_3270/info.json index fd158eb46b..7bf6cb9e29 100644 --- a/keyboards/tronguylabs/m122_3270/info.json +++ b/keyboards/tronguylabs/m122_3270/info.json @@ -1,134 +1,157 @@ { - "keyboard_name": "IBM Model M PC/3270 122 key", - "maintainer": "jmaynard", - "width": 24.75, - "height": 8, - "layouts": { - "LAYOUT": { - "layout": [ - {"label":"F13", "x":3.25, "y":0}, - {"label":"F14", "x":4.25, "y":0}, - {"label":"F15", "x":5.25, "y":0}, - {"label":"F16", "x":6.25, "y":0}, - {"label":"F17", "x":7.25, "y":0}, - {"label":"F18", "x":8.25, "y":0}, - {"label":"F19", "x":9.25, "y":0}, - {"label":"F20", "x":10.25, "y":0}, - {"label":"F21", "x":11.25, "y":0}, - {"label":"F22", "x":12.25, "y":0}, - {"label":"F23", "x":13.25, "y":0}, - {"label":"F24", "x":14.25, "y":0}, - {"label":"F1", "x":3.25, "y":1}, - {"label":"F2", "x":4.25, "y":1}, - {"label":"F3", "x":5.25, "y":1}, - {"label":"F4", "x":6.25, "y":1}, - {"label":"F5", "x":7.25, "y":1}, - {"label":"F6", "x":8.25, "y":1}, - {"label":"F7", "x":9.25, "y":1}, - {"label":"F8", "x":10.25, "y":1}, - {"label":"F9", "x":11.25, "y":1}, - {"label":"F10", "x":12.25, "y":1}, - {"label":"F11", "x":13.25, "y":1}, - {"label":"F12", "x":14.25, "y":1}, - {"label":"Esc", "x":0, "y":3}, - {"x":1, "y":3}, - {"label":"`", "x":2.25, "y":3}, - {"label":"1", "x":3.25, "y":3}, - {"label":"2", "x":4.25, "y":3}, - {"label":"3", "x":5.25, "y":3}, - {"label":"4", "x":6.25, "y":3}, - {"label":"5", "x":7.25, "y":3}, - {"label":"6", "x":8.25, "y":3}, - {"label":"7", "x":9.25, "y":3}, - {"label":"8", "x":10.25, "y":3}, - {"label":"9", "x":11.25, "y":3}, - {"label":"0", "x":12.25, "y":3}, - {"label":"-", "x":13.25, "y":3}, - {"label":"=", "x":14.25, "y":3}, - {"label":"Backspace", "x":15.25, "y":3, "w":2}, - {"label":"Insert", "x":17.5, "y":3}, - {"label":"Home", "x":18.5, "y":3}, - {"label":"Page Up", "x":19.5, "y":3}, - {"label":"Num Lock", "x":20.75, "y":3}, - {"label":"/", "x":21.75, "y":3}, - {"label":"*", "x":22.75, "y":3}, - {"label":"-", "x":23.75, "y":3}, - {"x":0, "y":4}, - {"x":1, "y":4}, - {"label":"Tab", "x":2.25, "y":4, "w":1.5}, - {"label":"Q", "x":3.75, "y":4}, - {"label":"W", "x":4.75, "y":4}, - {"label":"E", "x":5.75, "y":4}, - {"label":"R", "x":6.75, "y":4}, - {"label":"T", "x":7.75, "y":4}, - {"label":"Y", "x":8.75, "y":4}, - {"label":"U", "x":9.75, "y":4}, - {"label":"I", "x":10.75, "y":4}, - {"label":"O", "x":11.75, "y":4}, - {"label":"P", "x":12.75, "y":4}, - {"label":"[", "x":13.75, "y":4}, - {"label":"]", "x":14.75, "y":4}, - {"label":"Enter", "x":16, "y":4, "w":1.25, "h":2}, - {"label":"Delete", "x":17.5, "y":4}, - {"label":"End", "x":18.5, "y":4}, - {"label":"Page Down", "x":19.5, "y":4}, - {"label":"7", "x":20.75, "y":4}, - {"label":"8", "x":21.75, "y":4}, - {"label":"9", "x":22.75, "y":4}, - {"label":"+", "x":23.75, "y":4}, - {"x":0, "y":5}, - {"x":1, "y":5}, - {"label":"Caps Lock", "x":2.25, "y":5, "w":1.75}, - {"label":"A", "x":4, "y":5}, - {"label":"S", "x":5, "y":5}, - {"label":"D", "x":6, "y":5}, - {"label":"F", "x":7, "y":5}, - {"label":"G", "x":8, "y":5}, - {"label":"H", "x":9, "y":5}, - {"label":"J", "x":10, "y":5}, - {"label":"K", "x":11, "y":5}, - {"label":"L", "x":12, "y":5}, - {"label":";", "x":13, "y":5}, - {"label":"'", "x":14, "y":5}, - {"label":"#", "x":15, "y":5}, - {"label":"Up", "x":18.5, "y":5}, - {"label":"4", "x":20.75, "y":5}, - {"label":"5", "x":21.75, "y":5}, - {"label":"6", "x":22.75, "y":5}, - {"x":23.75, "y":5}, - {"x":0, "y":6}, - {"x":1, "y":6}, - {"label":"Shift", "x":2.25, "y":6, "w":1.25}, - {"label":"\\", "x":3.5, "y":6}, - {"label":"Z", "x":4.5, "y":6}, - {"label":"X", "x":5.5, "y":6}, - {"label":"C", "x":6.5, "y":6}, - {"label":"V", "x":7.5, "y":6}, - {"label":"B", "x":8.5, "y":6}, - {"label":"N", "x":9.5, "y":6}, - {"label":"M", "x":10.5, "y":6}, - {"label":",", "x":11.5, "y":6}, - {"label":".", "x":12.5, "y":6}, - {"label":"/", "x":13.5, "y":6}, - {"label":"Shift", "x":14.5, "y":6, "w":2.75}, - {"label":"Left", "x":17.5, "y":6}, - {"x":18.5, "y":6}, - {"label":"Right", "x":19.5, "y":6}, - {"label":"1", "x":20.75, "y":6}, - {"label":"2", "x":21.75, "y":6}, - {"label":"3", "x":22.75, "y":6}, - {"label":"Enter", "x":23.75, "y":6, "h":2}, - {"x":0, "y":7}, - {"x":1, "y":7}, - {"label":"Ctrl", "x":2.25, "y":7, "w":1.5}, - {"label":"Alt", "x":4.75, "y":7, "w":1.5}, - {"x":6.25, "y":7, "w":7}, - {"label":"AltGr", "x":13.25, "y":7, "w":1.5}, - {"label":"Ctrl", "x":15.75, "y":7, "w":1.5}, - {"label":"Down", "x":18.5, "y":7}, - {"label":"0", "x":20.75, "y":7, "w":2}, - {"label":".", "x":22.75, "y":7} - ] + "keyboard_name": "IBM Model M PC/3270 122 key", + "maintainer": "jmaynard", + "width": 24.75, + "height": 8, + "layouts": { + "LAYOUT": { + "layout": [ + {"x": 3.25, "y": 0}, + {"x": 4.25, "y": 0}, + {"x": 5.25, "y": 0}, + {"x": 6.25, "y": 0}, + {"x": 7.25, "y": 0}, + {"x": 8.25, "y": 0}, + {"x": 9.25, "y": 0}, + {"x": 10.25, "y": 0}, + {"x": 11.25, "y": 0}, + {"x": 12.25, "y": 0}, + {"x": 13.25, "y": 0}, + {"x": 14.25, "y": 0}, + + {"x": 3.25, "y": 1}, + {"x": 4.25, "y": 1}, + {"x": 5.25, "y": 1}, + {"x": 6.25, "y": 1}, + {"x": 7.25, "y": 1}, + {"x": 8.25, "y": 1}, + {"x": 9.25, "y": 1}, + {"x": 10.25, "y": 1}, + {"x": 11.25, "y": 1}, + {"x": 12.25, "y": 1}, + {"x": 13.25, "y": 1}, + {"x": 14.25, "y": 1}, + + {"x": 0, "y": 3}, + {"x": 1, "y": 3}, + + {"x": 2.25, "y": 3}, + {"x": 3.25, "y": 3}, + {"x": 4.25, "y": 3}, + {"x": 5.25, "y": 3}, + {"x": 6.25, "y": 3}, + {"x": 7.25, "y": 3}, + {"x": 8.25, "y": 3}, + {"x": 9.25, "y": 3}, + {"x": 10.25, "y": 3}, + {"x": 11.25, "y": 3}, + {"x": 12.25, "y": 3}, + {"x": 13.25, "y": 3}, + {"x": 14.25, "y": 3}, + {"x": 15.25, "y": 3, "w": 2}, + + {"x": 17.5, "y": 3}, + {"x": 18.5, "y": 3}, + {"x": 19.5, "y": 3}, + + {"x": 20.75, "y": 3}, + {"x": 21.75, "y": 3}, + {"x": 22.75, "y": 3}, + {"x": 23.75, "y": 3}, + + {"x": 0, "y": 4}, + {"x": 1, "y": 4}, + + {"x": 2.25, "y": 4, "w": 1.5}, + {"x": 3.75, "y": 4}, + {"x": 4.75, "y": 4}, + {"x": 5.75, "y": 4}, + {"x": 6.75, "y": 4}, + {"x": 7.75, "y": 4}, + {"x": 8.75, "y": 4}, + {"x": 9.75, "y": 4}, + {"x": 10.75, "y": 4}, + {"x": 11.75, "y": 4}, + {"x": 12.75, "y": 4}, + {"x": 13.75, "y": 4}, + {"x": 14.75, "y": 4}, + {"x": 16, "y": 4, "w": 1.25, "h": 2}, + + {"x": 17.5, "y": 4}, + {"x": 18.5, "y": 4}, + {"x": 19.5, "y": 4}, + + {"x": 20.75, "y": 4}, + {"x": 21.75, "y": 4}, + {"x": 22.75, "y": 4}, + {"x": 23.75, "y": 4}, + + {"x": 0, "y": 5}, + {"x": 1, "y": 5}, + + {"x": 2.25, "y": 5, "w": 1.75}, + {"x": 4, "y": 5}, + {"x": 5, "y": 5}, + {"x": 6, "y": 5}, + {"x": 7, "y": 5}, + {"x": 8, "y": 5}, + {"x": 9, "y": 5}, + {"x": 10, "y": 5}, + {"x": 11, "y": 5}, + {"x": 12, "y": 5}, + {"x": 13, "y": 5}, + {"x": 14, "y": 5}, + {"x": 15, "y": 5}, + + {"x": 18.5, "y": 5}, + + {"x": 20.75, "y": 5}, + {"x": 21.75, "y": 5}, + {"x": 22.75, "y": 5}, + {"x": 23.75, "y": 5}, + + {"x": 0, "y": 6}, + {"x": 1, "y": 6}, + + {"x": 2.25, "y": 6, "w": 1.25}, + {"x": 3.5, "y": 6}, + {"x": 4.5, "y": 6}, + {"x": 5.5, "y": 6}, + {"x": 6.5, "y": 6}, + {"x": 7.5, "y": 6}, + {"x": 8.5, "y": 6}, + {"x": 9.5, "y": 6}, + {"x": 10.5, "y": 6}, + {"x": 11.5, "y": 6}, + {"x": 12.5, "y": 6}, + {"x": 13.5, "y": 6}, + {"x": 14.5, "y": 6, "w": 2.75}, + + {"x": 17.5, "y": 6}, + {"x": 18.5, "y": 6}, + {"x": 19.5, "y": 6}, + + {"x": 20.75, "y": 6}, + {"x": 21.75, "y": 6}, + {"x": 22.75, "y": 6}, + {"x": 23.75, "y": 6, "h": 2}, + + {"x": 0, "y": 7}, + {"x": 1, "y": 7}, + + {"x": 2.25, "y": 7, "w": 1.5}, + + {"x": 4.75, "y": 7, "w": 1.5}, + {"x": 6.25, "y": 7, "w": 7}, + {"x": 13.25, "y": 7, "w": 1.5}, + + {"x": 15.75, "y": 7, "w": 1.5}, + + {"x": 18.5, "y": 7}, + + {"x": 20.75, "y": 7, "w": 2}, + {"x": 22.75, "y": 7} + ] + } } - } } diff --git a/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c b/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c index a79d3c6372..fb4813f671 100644 --- a/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c +++ b/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c @@ -17,58 +17,62 @@ enum custom_keycodes { JM_DOT = SAFE_RANGE, // . both shifted and unshifted - JM_COMM, // , both shifted and unshifted - JM_GRLS, // < and > on one key - JM_CBRC, // { and } on one key - JM_CENT, // cent sign and ! on one key - JM_JUMP, // JUMP/PA3, - JM_DEL // Delete + JM_COMM, // , both shifted and unshifted + JM_GRLS, // < and > on one key + JM_CBRC, // { and } on one key + JM_CENT, // cent sign and ! on one key + JM_JUMP, // JUMP/PA3, + JM_DEL // Delete }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // PC/3270 layout: PC legends (blue) + // PC/3270 layout: PC legends (blue) [0] = LAYOUT( - KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_NO, KC_NO, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_ESC, KC_PGUP, KC_PGDN, KC_NLCK, KC_SLCK, KC_PAST, KC_PSLS, - KC_NO, KC_PAUS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_END, KC_INS, KC_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_NO, KC_NO, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_UP, KC_P4, KC_P5, KC_P6, KC_PMNS, - KC_PSCR, KC_NO, KC_LSFT, JM_GRLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LEFT, KC_HOME, KC_RIGHT, KC_P1, KC_P2, KC_P3, KC_PENT, - MO(10), KC_LGUI, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_DOWN, KC_P0, KC_PDOT + KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + + KC_NO, KC_NO, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_ESC, KC_PGUP, KC_PGDN, KC_NLCK, KC_SLCK, KC_PAST, KC_PSLS, + KC_NO, KC_PAUS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_END, KC_INS, KC_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_NO, KC_NO, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_UP, KC_P4, KC_P5, KC_P6, KC_PMNS, + KC_PSCR, KC_NO, KC_LSFT, JM_GRLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LEFT, KC_HOME, KC_RIGHT, KC_P1, KC_P2, KC_P3, KC_PENT, + MO(2), KC_LGUI, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_DOWN, KC_P0, KC_PDOT ), - // PC/3270 layout: 3270 legends (black), with x3270 keycodes + // PC/3270 layout: 3270 legends (black), with x3270 keycodes [1] = LAYOUT( - A(KC_F1), A(KC_F2), A(KC_F3), A(KC_F4), A(KC_F5), A(KC_F6), A(KC_F7), A(KC_F8), A(KC_F9), A(KC_F10), A(KC_F11), A(KC_F12), - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - A(KC_A), A(KC_C), KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, A(KC_1), A(KC_2), JM_JUMP, KC_NO, KC_NO, KC_PCMM, KC_SPC, - KC_CRSEL, KC_PAUS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, JM_CENT, KC_BSLS, S(KC_ENT), S(KC_TAB), KC_INS, JM_DEL, KC_P7, KC_P8, KC_P9, KC_TAB, - KC_EXSEL, A(KC_E), KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, JM_CBRC, KC_UP, KC_P4, KC_P5, KC_P6, KC_PMNS, - A(KC_B), C(KC_C), KC_LSFT, JM_GRLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, JM_COMM, JM_DOT, KC_SLSH, KC_RSFT, KC_LEFT, A(KC_H), KC_RIGHT, KC_P1, KC_P2, KC_P3, KC_PENT, - MO(10), KC_LGUI, A(KC_R), KC_LALT, KC_SPC, KC_RALT, KC_ENT, KC_DOWN, KC_P0, KC_PDOT + A(KC_F1), A(KC_F2), A(KC_F3), A(KC_F4), A(KC_F5), A(KC_F6), A(KC_F7), A(KC_F8), A(KC_F9), A(KC_F10), A(KC_F11), A(KC_F12), + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + + A(KC_A), A(KC_C), KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, A(KC_1), A(KC_2), JM_JUMP, KC_NO, KC_NO, KC_PCMM, KC_SPC, + KC_CRSEL, KC_PAUS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, JM_CENT, KC_BSLS, S(KC_ENT), S(KC_TAB), KC_INS, JM_DEL, KC_P7, KC_P8, KC_P9, KC_TAB, + KC_EXSEL, A(KC_E), KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, JM_CBRC, KC_UP, KC_P4, KC_P5, KC_P6, KC_PMNS, + A(KC_B), C(KC_C), KC_LSFT, JM_GRLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, JM_COMM, JM_DOT, KC_SLSH, KC_RSFT, KC_LEFT, A(KC_H), KC_RIGHT, KC_P1, KC_P2, KC_P3, KC_PENT, + MO(2), KC_LGUI, A(KC_R), KC_LALT, KC_SPC, KC_RALT, KC_ENT, KC_DOWN, KC_P0, KC_PDOT ), -// Function layer, accessed by the Zoom key - [10] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - DF(0), DF(1), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(11), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + // Function layer, accessed by the Zoom key + [2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + DF(0), DF(1), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, MO(3), _______, _______, _______, _______, _______ ), // Firmware layer, accessed by the Zoom/Space key pair (hold both down) - [11] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DEBUG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), + [3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) }; bool left_shift_down = false; @@ -79,115 +83,84 @@ bool right_alt_down = false; bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case KC_LSHIFT: - if (record->event.pressed) { - left_shift_down = true; - return true; - } else { - left_shift_down = false; - return true; - } - break; + left_shift_down = record->event.pressed; + break; case KC_RSHIFT: - if (record->event.pressed) { - right_shift_down = true; - return true; - } else { - right_shift_down = false; - return true; - } - break; + right_shift_down = record->event.pressed; + break; case KC_LALT: - if (record->event.pressed) { - left_alt_down = true; - return true; - } else { - left_alt_down = false; - return true; - } - break; + left_alt_down = record->event.pressed; + break; case KC_RALT: - if (record->event.pressed) { - right_alt_down = true; - return true; - } else { - right_alt_down = false; - return true; - } - break; + right_alt_down = record->event.pressed; + break; case JM_GRLS: - if (left_shift_down || right_shift_down) { - if(record->event.pressed) { - SEND_STRING(">"); - } - return false; - } else { - if(record->event.pressed) { - SEND_STRING("<"); + if (left_shift_down || right_shift_down) { + if (record->event.pressed) { + SEND_STRING(">"); + } + } else { + if (record->event.pressed) { + SEND_STRING("<"); + } } return false; - } - break; case JM_CBRC: - if (left_shift_down || right_shift_down) { - if (record->event.pressed) { - SEND_STRING("}"); + if (left_shift_down || right_shift_down) { + if (record->event.pressed) { + SEND_STRING("}"); + } + } else { + if (record->event.pressed) { + SEND_STRING("{"); + } } return false; - } else { - if(record->event.pressed) { - SEND_STRING("{"); + case JM_CENT: + if (left_shift_down || right_shift_down) { + if (record->event.pressed) { + SEND_STRING("!"); + } + } else { + if (record->event.pressed) { + SEND_STRING("<"); // TODO: what does tn3270 want for a cent sign? + } } return false; - } - break; - case JM_CENT: - if (left_shift_down || right_shift_down) { + case JM_COMM: if (record->event.pressed) { - SEND_STRING("!"); + SEND_STRING(","); } return false; - } else { + case JM_DOT: if (record->event.pressed) { - SEND_STRING("<"); // TODO: what does tn3270 want for a cent sign? + SEND_STRING("."); } return false; - } - break; - case JM_COMM: - if (record->event.pressed){ - SEND_STRING(","); - } - return false; - case JM_DOT: - if (record->event.pressed) { - SEND_STRING("."); - } - return false; case JM_JUMP: - if (record->event.pressed) { - if (left_alt_down || right_alt_down) { - SEND_STRING("3"); + if (record->event.pressed) { + if (left_alt_down || right_alt_down) { + SEND_STRING("3"); + } } - } - return false; + return false; case JM_DEL: - if (record->event.pressed) { - if (left_alt_down || right_alt_down) { - unregister_code(KC_LALT); - unregister_code(KC_RALT); - tap_code16(C(KC_W)); - if (left_alt_down) { - register_code(KC_LALT); - } - if (right_alt_down) { - register_code(KC_RALT); + if (record->event.pressed) { + if (left_alt_down || right_alt_down) { + unregister_code(KC_LALT); + unregister_code(KC_RALT); + tap_code16(C(KC_W)); + if (left_alt_down) { + register_code(KC_LALT); + } + if (right_alt_down) { + register_code(KC_RALT); + } + } else { + tap_code16(KC_DEL); } - } else { - tap_code16(KC_DEL); } - } - return false; + return false; } - return true; } diff --git a/keyboards/tronguylabs/m122_3270/keymaps/default/readme.md b/keyboards/tronguylabs/m122_3270/keymaps/default/readme.md index befa267fa1..3b59718ed8 100644 --- a/keyboards/tronguylabs/m122_3270/keymaps/default/readme.md +++ b/keyboards/tronguylabs/m122_3270/keymaps/default/readme.md @@ -1,4 +1,5 @@ # Default keymap for m122-3270 + This keymap is intended to make the PC/3270 122-key IBM keyboard work as closely as possible to the standard PC/3270 keyboard's original mapping. Two layers are defined: layer 0 is the PC layout, using the blue legends on the PC/3270 keys (as shipped by Unicomp; I don't have the original keycaps, and I know there are a few diff --git a/keyboards/tronguylabs/m122_3270/m122_3270.c b/keyboards/tronguylabs/m122_3270/m122_3270.c index b206d66ae0..397d495c23 100644 --- a/keyboards/tronguylabs/m122_3270/m122_3270.c +++ b/keyboards/tronguylabs/m122_3270/m122_3270.c @@ -13,4 +13,5 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ + #include "m122_3270.h" diff --git a/keyboards/tronguylabs/m122_3270/m122_3270.h b/keyboards/tronguylabs/m122_3270/m122_3270.h index 71ccf7b66b..c18020ebcd 100644 --- a/keyboards/tronguylabs/m122_3270/m122_3270.h +++ b/keyboards/tronguylabs/m122_3270/m122_3270.h @@ -13,28 +13,28 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ + #pragma once + #include "quantum.h" -// This a shortcut to help you visually see your layout. -// The first section contains all of the arguments -// The second converts the arguments into a two-dimensional array +#define XXX KC_NO + #define LAYOUT( \ - k09, k19, k1A, k29, k39, k3A, k49, k59, k5A, k69, k79, k7A, \ - k0A, k0B, k1B, k2A, k2B, k3B, k4A, k4B, k5B, k6A, k6B, k7B, \ + k09, k19, k1A, k29, k39, k3A, k49, k59, k5A, k69, k79, k7A, \ + k0A, k0B, k1B, k2 |