diff options
author | nuess0r <nussgipfel@brain4free.org> | 2023-05-27 15:12:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-27 23:12:36 +1000 |
commit | f98f8eedf0dc6fe939162210ad44d5af8a0dfa08 (patch) | |
tree | 171b1de71a2fec4e7c4f30b6c7e0275061a8d3f3 /keyboards/converter | |
parent | e759230706373e9db8a0d6758f8c210288870d9f (diff) |
Consolidate modelm v2 (#14996)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'keyboards/converter')
25 files changed, 0 insertions, 1117 deletions
diff --git a/keyboards/converter/modelm101/config.h b/keyboards/converter/modelm101/config.h deleted file mode 100644 index 764fb56f64..0000000000 --- a/keyboards/converter/modelm101/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -Copyright 2019 iw0rm3r - -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/>. -*/ - -#pragma once - -/* The Model M has no diodes */ -#define MATRIX_HAS_GHOST - -/* - * 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 diff --git a/keyboards/converter/modelm101/info.json b/keyboards/converter/modelm101/info.json deleted file mode 100644 index c59df57e81..0000000000 --- a/keyboards/converter/modelm101/info.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "keyboard_name": "IBM Model M 101/102", - "manufacturer": "iw0rm3r", - "url": "https://github.com/iw0rm3r/qmk_firmware/tree/modelm101/keyboards/converter/modelm101", - "maintainer": "iw0rm3r", - "usb": { - "vid": "0xFEED", - "pid": "0x0000", - "device_version": "0.0.1" - }, - "matrix_pins": { - "cols": ["C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "E1", "E0", "D7", "D6", "D5", "D4", "D3", "D2"], - "rows": ["F7", "F6", "F5", "F4", "F3", "F2", "F1", "F0"] - }, - "diode_direction": "ROW2COL", - "processor": "at90usb1286", - "bootloader": "halfkay", - "layouts": { - "LAYOUT": { - "layout": [ - {"matrix": [0, 2], "x": 0, "y": 0}, - - {"matrix": [2, 3], "x": 2, "y": 0}, - {"matrix": [2, 4], "x": 3, "y": 0}, - {"matrix": [1, 4], "x": 4, "y": 0}, - {"matrix": [0, 4], "x": 5, "y": 0}, - - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 8], "x": 7.5, "y": 0}, - {"matrix": [1, 9], "x": 8.5, "y": 0}, - {"matrix": [2, 9], "x": 9.5, "y": 0}, - - {"matrix": [2, 6], "x": 11, "y": 0}, - {"matrix": [3, 6], "x": 12, "y": 0}, - {"matrix": [3, 11], "x": 13, "y": 0}, - {"matrix": [3, 12], "x": 14, "y": 0}, - - {"matrix": [3, 15], "x": 15.25, "y": 0}, - {"matrix": [4, 15], "x": 16.25, "y": 0}, - {"matrix": [6, 14], "x": 17.25, "y": 0}, - - {"matrix": [2, 2], "x": 0, "y": 1.5}, - {"matrix": [3, 2], "x": 1, "y": 1.5}, - {"matrix": [3, 3], "x": 2, "y": 1.5}, - {"matrix": [3, 4], "x": 3, "y": 1.5}, - {"matrix": [3, 5], "x": 4, "y": 1.5}, - {"matrix": [2, 5], "x": 5, "y": 1.5}, - {"matrix": [2, 7], "x": 6, "y": 1.5}, - {"matrix": [3, 7], "x": 7, "y": 1.5}, - {"matrix": [3, 8], "x": 8, "y": 1.5}, - {"matrix": [3, 9], "x": 9, "y": 1.5}, - {"matrix": [3, 10], "x": 10, "y": 1.5}, - {"matrix": [2, 10], "x": 11, "y": 1.5}, - {"matrix": [2, 8], "x": 12, "y": 1.5}, - {"matrix": [1, 6], "x": 13, "y": 1.5, "w": 2}, - - {"matrix": [2, 12], "x": 15.25, "y": 1.5}, - {"matrix": [2, 14], "x": 16.25, "y": 1.5}, - {"matrix": [2, 13], "x": 17.25, "y": 1.5}, - - {"matrix": [6, 11], "x": 18.5, "y": 1.5}, - {"matrix": [6, 12], "x": 19.5, "y": 1.5}, - {"matrix": [6, 13], "x": 20.5, "y": 1.5}, - {"matrix": [7, 13], "x": 21.5, "y": 1.5}, - - {"matrix": [1, 2], "x": 0, "y": 2.5, "w": 1.5}, - {"matrix": [4, 2], "x": 1.5, "y": 2.5}, - {"matrix": [4, 3], "x": 2.5, "y": 2.5}, - {"matrix": [4, 4], "x": 3.5, "y": 2.5}, - {"matrix": [4, 5], "x": 4.5, "y": 2.5}, - {"matrix": [1, 5], "x": 5.5, "y": 2.5}, - {"matrix": [1, 7], "x": 6.5, "y": 2.5}, - {"matrix": [4, 7], "x": 7.5, "y": 2.5}, - {"matrix": [4, 8], "x": 8.5, "y": 2.5}, - {"matrix": [4, 9], "x": 9.5, "y": 2.5}, - {"matrix": [4, 10], "x": 10.5, "y": 2.5}, - {"matrix": [1, 10], "x": 11.5, "y": 2.5}, - {"matrix": [1, 8], "x": 12.5, "y": 2.5}, - {"matrix": [5, 6], "x": 13.5, "y": 2.5, "w": 1.5}, - - {"matrix": [2, 11], "x": 15.25, "y": 2.5}, - {"matrix": [3, 14], "x": 16.25, "y": 2.5}, - {"matrix": [3, 13], "x": 17.25, "y": 2.5}, - - {"matrix": [4, 11], "x": 18.5, "y": 2.5}, - {"matrix": [4, 12], "x": 19.5, "y": 2.5}, - {"matrix": [4, 13], "x": 20.5, "y": 2.5}, - {"matrix": [4, 14], "x": 21.5, "y": 2.5, "h": 2}, - - {"matrix": [1, 3], "x": 0, "y": 3.5, "w": 1.5}, - {"matrix": [5, 2], "x": 1.75, "y": 3.5}, - {"matrix": [5, 3], "x": 2.75, "y": 3.5}, - {"matrix": [5, 4], "x": 3.75, "y": 3.5}, - {"matrix": [5, 5], "x": 4.75, "y": 3.5}, - {"matrix": [0, 5], "x": 5.75, "y": 3.5}, - {"matrix": [0, 7], "x": 6.75, "y": 3.5}, - {"matrix": [5, 7], "x": 7.75, "y": 3.5}, - {"matrix": [5, 8], "x": 8.75, "y": 3.5}, - {"matrix": [5, 9], "x": 9.75, "y": 3.5}, - {"matrix": [5, 10], "x": 10.75, "y": 3.5}, - {"matrix": [0, 10], "x": 11.75, "y": 3.5}, - {"matrix": [6, 10], "x": 12.75, "y": 3.5}, - {"matrix": [6, 6], "x": 13.75, "y": 3.5, "w": 1.25}, - - {"matrix": [1, 11], "x": 18.5, "y": 3.5}, - {"matrix": [1, 12], "x": 19.5, "y": 3.5}, - {"matrix": [1, 13], "x": 20.5, "y": 3.5}, - - {"matrix": [1, 1], "x": 0, "y": 4.5, "w": 1.25}, - {"matrix": [0, 3], "x": 1.25, "y": 4.5}, - {"matrix": [6, 2], "x": 2.25, "y": 4.5}, - {"matrix": [6, 3], "x": 3.25, "y": 4.5}, - {"matrix": [6, 4], "x": 4.25, "y": 4.5}, - {"matrix": [6, 5], "x": 5.25, "y": 4.5}, - {"matrix": [7, 5], "x": 6.25, "y": 4.5}, - {"matrix": [7, 7], "x": 7.25, "y": 4.5}, - {"matrix": [6, 7], "x": 8.25, "y": 4.5}, - {"matrix": [6, 8], "x": 9.25, "y": 4.5}, - {"matrix": [6, 9], "x": 10.25, "y": 4.5}, - {"matrix": [7, 10], "x": 11.25, "y": 4.5}, - {"matrix": [6, 1], "x": 12.25, "y": 4.5, "w": 2.75}, - - {"matrix": [0, 14], "x": 16.25, "y": 4.5}, - - {"matrix": [5, 11], "x": 18.5, "y": 4.5}, - {"matrix": [5, 12], "x": 19.5, "y": 4.5}, - {"matrix": [5, 13], "x": 20.5, "y": 4.5}, - {"matrix": [5, 14], "x": 21.5, "y": 4.5, "h": 2}, - - {"matrix": [2, 0], "x": 0, "y": 5.5, "w": 1.5}, - {"matrix": [0, 15], "x": 2.5, "y": 5.5, "w": 1.5}, - {"matrix": [7, 6], "x": 4, "y": 5.5, "w": 7}, - {"matrix": [7, 15], "x": 11, "y": 5.5, "w": 1.5}, - {"matrix": [6, 0], "x": 13.5, "y": 5.5, "w": 1.5}, - - {"matrix": [7, 14], "x": 15.25, "y": 5.5}, - {"matrix": [7, 11], "x": 16.25, "y": 5.5}, - {"matrix": [7, 12], "x": 17.25, "y": 5.5}, - - {"matrix": [0, 12], "x": 18.5, "y": 5.5, "w": 2}, - {"matrix": [0, 13], "x": 20.5, "y": 5.5} - ] - } - } -} diff --git a/keyboards/converter/modelm101/keymaps/default/keymap.c b/keyboards/converter/modelm101/keymaps/default/keymap.c deleted file mode 100644 index fa8621e2e1..0000000000 --- a/keyboards/converter/modelm101/keymaps/default/keymap.c +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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/>. - */ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( /* Base layer */ - KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT - ), -}; diff --git a/keyboards/converter/modelm101/keymaps/default/readme.md b/keyboards/converter/modelm101/keymaps/default/readme.md deleted file mode 100644 index fb91a8ebe5..0000000000 --- a/keyboards/converter/modelm101/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for modelm101
\ No newline at end of file diff --git a/keyboards/converter/modelm101/keymaps/iw0rm3r/config.h b/keyboards/converter/modelm101/keymaps/iw0rm3r/config.h deleted file mode 100644 index 779e5a858f..0000000000 --- a/keyboards/converter/modelm101/keymaps/iw0rm3r/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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/>. - */ - -#pragma once - -// place overrides here diff --git a/keyboards/converter/modelm101/keymaps/iw0rm3r/keymap.c b/keyboards/converter/modelm101/keymaps/iw0rm3r/keymap.c deleted file mode 100644 index f4a1acb0ce..0000000000 --- a/keyboards/converter/modelm101/keymaps/iw0rm3r/keymap.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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/>. - */ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( /* Base layer */ - KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_CAPS, - KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_APP, KC_PDOT - ), -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -void led_set_user(uint8_t usb_led) { - -} diff --git a/keyboards/converter/modelm101/keymaps/iw0rm3r/readme.md b/keyboards/converter/modelm101/keymaps/iw0rm3r/readme.md deleted file mode 100644 index 17b0f40da2..0000000000 --- a/keyboards/converter/modelm101/keymaps/iw0rm3r/readme.md +++ /dev/null @@ -1,5 +0,0 @@ -# This is my personal keymap for modelm101 - -Caps Lock is mapped as LGUI (Windows key). -Num Enter is mapped as Caps Lock. -Num0 is mapped as App key (context menu).
\ No newline at end of file diff --git a/keyboards/converter/modelm101/modelm101.c b/keyboards/converter/modelm101/modelm101.c deleted file mode 100644 index fa8669dc81..0000000000 --- a/keyboards/converter/modelm101/modelm101.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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/>. - */ -#include "quantum.h" - -void led_init_ports(void) { - /* Setting status LEDs pins to output and +5V (off) */ - setPinOutput(B4); - setPinOutput(B5); - setPinOutput(B6); - writePinHigh(B4); - writePinHigh(B5); - writePinHigh(B6); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - writePin(B4, !led_state.num_lock); - writePin(B6, !led_state.caps_lock); - writePin(B5, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/converter/modelm101/readme.md b/keyboards/converter/modelm101/readme.md deleted file mode 100644 index 5355c80071..0000000000 --- a/keyboards/converter/modelm101/readme.md +++ /dev/null @@ -1,42 +0,0 @@ -# modelm101 - -![IBM Model M 101 ANSI/102 ISO](https://i.imgur.com/DAE3W7g.jpg) - -This is a configuration for the QMK firmware for reversible conversion of IBM's Model M keyboards (common 101-key ANSI and 102-key ISO models) from stock, power-hungry controller, to a modern one, running the USB bus. -Configuration is build for the Atmel AT90USB1286 controller, which you can easily use on the Teensy 2.0++ board (produced by PJRC). -Project is heavely based on 2 other projects: -1. Teensy 2.0++-based custom Model M controller running TMK firmware ('modelm" by [lmorchard](https://blog.lmorchard.com/2016/02/21/modelm-controller/)); - had a few issues. -2. Teensy 2.0++-based custom Model M 122-key controller running QMK firmware ("ibm122m" by [lukexorz](https://github.com/lukexorz)); - had wrong layout for 101/102-key boards and no status LED support. - -For this conversion you will need: -1. Teensy 2.0++ dev board itself (can be used a different dev board, but it will require some changes in configuration); -2. Ribbon connectors to connect the membrane to a dev board. Depending on your Model M variation, you will need 1 Trio-mate 16pin connector (6-520315-6 or 6-520415-6) and 1 Trio-mate 8pin connector (5-120628-8 or 5-520314-8), or 2 Trio-mate 16pin connectors; -3. Full-sized breadboard (without power rails; half-size should do, but full-sized one looks more native) or a PCB to wire everything up; -4. A bunch of jumper wires; -5. mini-USB male cable with any USB socket you want to use to connect Teensy inside the keyboard to your PC (I use short mini-USB male to mini-USB female cable); -6. (optional) Resistors for connecting status LEDs if your LED PCB doesn't have any; -7. (optional) Double-sided tape to fix USB socket on or inside the keyboard case. - -Pins of the Teensy board you should use by default: -``` -Columns: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 -Pins: C7 C6 C5 C4 C3 C2 C1 C0 E1 E0 D7 D6 D5 D4 D3 D2 --------------------------------------------------------- -Rows: 1 2 3 4 5 6 7 8 -Pins: F7 F6 F5 F4 F3 F2 F1 F0 --------------------------------------------------------- -Status LEDs: CapsLock +5V ScrollLock NumLock -Pins: B6 5V B5 B4 -``` - -Please note that some versions of Model M have LED connected with a ribbon cable, and not with separate wires. - -Keyboard Maintainer: [iw0rm3r](https://github.com/iw0rm3r) -Hardware Supported: Teensy 2.0++ board by PJRC -Hardware Availability: https://www.pjrc.com/store/teensypp.html - -Make example for this keyboard (after setting up your build environment): - - make converter/modelm101:default:teensy - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/converter/modelm101/rules.mk b/keyboards/converter/modelm101/rules.mk deleted file mode 100644 index 1eeda920b4..0000000000 --- a/keyboards/converter/modelm101/rules.mk +++ /dev/null @@ -1,12 +0,0 @@ -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = no # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output diff --git a/keyboards/converter/modelm101_teensy2/config.h b/keyboards/converter/modelm101_teensy2/config.h deleted file mode 100644 index 764fb56f64..0000000000 --- a/keyboards/converter/modelm101_teensy2/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -Copyright 2019 iw0rm3r - -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/>. -*/ - -#pragma once - -/* The Model M has no diodes */ -#define MATRIX_HAS_GHOST - -/* - * 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 diff --git a/keyboards/converter/modelm101_teensy2/info.json b/keyboards/converter/modelm101_teensy2/info.json deleted file mode 100644 index 86dc44de0e..0000000000 --- a/keyboards/converter/modelm101_teensy2/info.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "keyboard_name": "IBM Model M 101/102", - "manufacturer": "wangfuco", - "url": "https://github.com/wangfuco/qmk_firmware/tree/modelm101_teensy2/keyboards/converter/modelm101_teensy2", - "maintainer": "wangfuco", - "usb": { - "vid": "0xFEED", - "pid": "0x0000", - "device_version": "0.0.1" - }, - "matrix_pins": { - "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "B4", "D7", "D6", "B0", "B1", "B2", "B3", "B7"], - "rows": ["D0", "D1", "D2", "D3", "C6", "C7", "D5", "D4"] - }, - "diode_direction": "ROW2COL", - "indicators": { - "caps_lock": "E6", - "on_state": 0 - }, - "processor": "atmega32u4", - "bootloader": "halfkay", - "layouts": { - "LAYOUT": { - "layout": [ - {"matrix": [0, 2], "x": 0, "y": 0}, - - {"matrix": [2, 3], "x": 2, "y": 0}, - {"matrix": [2, 4], "x": 3, "y": 0}, - {"matrix": [1, 4], "x": 4, "y": 0}, - {"matrix": [0, 4], "x": 5, "y": 0}, - - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 8], "x": 7.5, "y": 0}, - {"matrix": [1, 9], "x": 8.5, "y": 0}, - {"matrix": [2, 9], "x": 9.5, "y": 0}, - - {"matrix": [2, 6], "x": 11, "y": 0}, - {"matrix": [3, 6], "x": 12, "y": 0}, - {"matrix": [3, 11], "x": 13, "y": 0}, - {"matrix": [3, 12], "x": 14, "y": 0}, - - {"matrix": [3, 15], "x": 15.25, "y": 0}, - {"matrix": [4, 15], "x": 16.25, "y": 0}, - {"matrix": [6, 14], "x": 17.25, "y": 0}, - - {"matrix": [2, 2], "x": 0, "y": 1.5}, - {"matrix": [3, 2], "x": 1, "y": 1.5}, - {"matrix": [3, 3], "x": 2, "y": 1.5}, - {"matrix": [3, 4], "x": 3, "y": 1.5}, - {"matrix": [3, 5], "x": 4, "y": 1.5}, - {"matrix": [2, 5], "x": 5, "y": 1.5}, - {"matrix": [2, 7], "x": 6, "y": 1.5}, - {"matrix": [3, 7], "x": 7, "y": 1.5}, - {"matrix": [3, 8], "x": 8, "y": 1.5}, - {"matrix": [3, 9], "x": 9, "y": 1.5}, - {"matrix": [3, 10], "x": 10, "y": 1.5}, - {"matrix": [2, 10], "x": 11, "y": 1.5}, - {"matrix": [2, 8], "x": 12, "y": 1.5}, - {"matrix": [1, 6], "x": 13, "y": 1.5, "w": 2}, - - {"matrix": [2, 12], "x": 15.25, "y": 1.5}, - {"matrix": [2, 14], "x": 16.25, "y": 1.5}, - {"matrix": [2, 13], "x": 17.25, "y": 1.5}, - - {"matrix": [6, 11], "x": 18.5, "y": 1.5}, - {"matrix": [6, 12], "x": 19.5, "y": 1.5}, - {"matrix": [6, 13], "x": 20.5, "y": 1.5}, - {"matrix": [7, 13], "x": 21.5, "y": 1.5}, - - {"matrix": [1, 2], "x": 0, "y": 2.5, "w": 1.5}, - {"matrix": [4, 2], "x": 1.5, "y": 2.5}, - {"matrix": [4, 3], "x": 2.5, "y": 2.5}, - {"matrix": [4, 4], "x": 3.5, "y": 2.5}, - {"matrix": [4, 5], "x": 4.5, "y": 2.5}, - {"matrix": [1, 5], "x": 5.5, "y": 2.5}, - {"matrix": [1, 7], "x": 6.5, "y": 2.5}, - {"matrix": [4, 7], "x": 7.5, "y": 2.5}, - {"matrix": [4, 8], "x": 8.5, "y": 2.5}, - {"matrix": [4, 9], "x": 9.5, "y": 2.5}, - {"matrix": [4, 10], "x": 10.5, "y": 2.5}, - {"matrix": [1, 10], "x": 11.5, "y": 2.5}, - {"matrix": [1, 8], "x": 12.5, "y": 2.5}, - {"matrix": [5, 6], "x": 13.5, "y": 2.5, "w": 1.5}, - - {"matrix": [2, 11], "x": 15.25, "y": 2.5}, - {"matrix": [3, 14], "x": 16.25, "y": 2.5}, - {"matrix": [3, 13], "x": 17.25, "y": 2.5}, - - {"matrix": [4, 11], "x": 18.5, "y": 2.5}, - {"matrix": [4, 12], "x": 19.5, "y": 2.5}, - {"matrix": [4, 13], "x": 20.5, "y": 2.5}, - {"matrix": [4, 14], "x": 21.5, "y": 2.5, "h": 2}, - - {"matrix": [1, 3], "x": 0, "y": 3.5, "w": 1.5}, - {"matrix": [5, 2], "x": 1.75, "y": 3.5}, - {"matrix": [5, 3], "x": 2.75, "y": 3.5}, - {"matrix": [5, 4], "x": 3.75, "y": 3.5}, - {"matrix": [5, 5], "x": 4.75, "y": 3.5}, - {"matrix": [0, 5], "x": 5.75, "y": 3.5}, - {"matrix": [0, 7], "x": 6.75, "y": 3.5}, - {"matrix": [5, 7], "x": 7.75, "y": 3.5}, - {"matrix": [5, 8], "x": 8.75, "y": 3.5}, - {"matrix": [5, 9], "x": 9.75, "y": 3.5}, - {"matrix": [5, 10], "x": 10.75, "y": 3.5}, - {"matrix": [0, 10], "x": 11.75, "y": 3.5}, - {"matrix": [6, 10], "x": 12.75, "y": 3.5}, - {"matrix": [6, 6], "x": 13.75, "y": 3.5, "w": 1.25}, - - {"matrix": [1, 11], "x": 18.5, "y": 3.5}, - {"matrix": [1, 12], "x": 19.5, "y": 3.5}, - {"matrix": [1, 13], "x": 20.5, "y": 3.5}, - - {"matrix": [1, 1], "x": 0, "y": 4.5, "w": 1.25}, - {"matrix": [0, 3], "x": 1.25, "y": 4.5}, - {"matrix": [6, 2], "x": 2.25, "y": 4.5}, - {"matrix": [6, 3], "x": 3.25, "y": 4.5}, - {"matrix": [6, 4], "x": 4.25, "y": 4.5}, - {"matrix": [6, 5], "x": 5.25, "y": 4.5}, - {"matrix": [7, 5], "x": 6.25, "y": 4.5}, - {"matrix": [7, 7], "x": 7.25, "y": 4.5}, - {"matrix": [6, 7], "x": 8.25, "y": 4.5}, - {"matrix": [6, 8], "x": 9.25, "y": 4.5}, - {"matrix": [6, 9], "x": 10.25, "y": 4.5}, - {"matrix": [7, 10], "x": 11.25, "y": 4.5}, - {"matrix": [6, 1], "x": 12.25, "y": 4.5, "w": 2.75}, - - {"matrix": [0, 14], "x": 16.25, "y": 4.5}, - - {"matrix": [5, 11], "x": 18.5, "y": 4.5}, - {"matrix": [5, 12], "x": 19.5, "y": 4.5}, - {"matrix": [5, 13], "x": 20.5, "y": 4.5}, - {"matrix": [5, 14], "x": 21.5, "y": 4.5, "h": 2}, - - {"matrix": [2, 0], "x": 0, "y": 5.5, "w": 1.5}, - {"matrix": [0, 15], "x": 2.5, "y": 5.5, "w": 1.5}, - {"matrix": [7, 6], "x": 4, "y": 5.5, "w": 7}, - {"matrix": [7, 15], "x": 11, "y": 5.5, "w": 1.5}, - {"matrix": [6, 0], "x": 13.5, "y": 5.5, "w": 1.5}, - - {"matrix": [7, 14], "x": 15.25, "y": 5.5}, - {"matrix": [7, 11], "x": 16.25, "y": 5.5}, - {"matrix": [7, 12], "x": 17.25, "y": 5.5}, - - {"matrix": [0, 12], "x": 18.5, "y": 5.5, "w": 2}, - {"matrix": [0, 13], "x": 20.5, "y": 5.5} - ] - } - } -} diff --git a/keyboards/converter/modelm101_teensy2/keymaps/default/keymap.c b/keyboards/converter/modelm101_teensy2/keymaps/default/keymap.c deleted file mode 100644 index fa8621e2e1..0000000000 --- a/keyboards/converter/modelm101_teensy2/keymaps/default/keymap.c +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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/>. - */ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( /* Base layer */ - KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT - ), -}; diff --git a/keyboards/converter/modelm101_teensy2/keymaps/default/readme.md b/keyboards/converter/modelm101_teensy2/keymaps/default/readme.md deleted file mode 100644 index fb91a8ebe5..0000000000 --- a/keyboards/converter/modelm101_teensy2/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for modelm101
\ No newline at end of file diff --git a/keyboards/converter/modelm101_teensy2/readme.md b/keyboards/converter/modelm101_teensy2/readme.md deleted file mode 100644 index d65df72580..0000000000 --- a/keyboards/converter/modelm101_teensy2/readme.md +++ /dev/null @@ -1,29 +0,0 @@ -# modelm101_teensy2 - -![IBM Model M 101 ANSI/102 ISO](https://user-images.githubusercontent.com/46733695/161862805-c891735b-e2e8-418a-ad82-d71c00570eab.jpg) - -This is based on the modelm101 keyboard by iw0rm3r. The difference is that Teensy 2.0 board (produced by PJRC) is used instead of the Teensy 2.0++ due to the availability issues. Only CapsLock LED is supported since Teensy 2.0 only has 25 digital I/0 pins. - -Configuration is build for the Atmel ATmega32U4 controller, which you can easily use on the Teensy 2.0 board (produced by PJRC). - -Pins of the Teensy board you should use by default: -``` -Columns: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 -Pins: F0 F1 F4 F5 F6 F7 B6 B5 B4 D7 D6 B0 B1 B2 B3 B7 --------------------------------------------------------- -Rows: 1 2 3 4 5 6 7 8 -Pins: D0 D1 D2 D3 C6 C7 D5 D4 --------------------------------------------------------- -Status LEDs: CapsLock +5V ScrollLock NumLock -Pins: E6 5V - - -``` - -Keyboard Maintainer: [wangfuco](https://github.com/wangfuco) -Hardware Supported: Teensy 2.0 board by PJRC -Hardware Availability: https://www.pjrc.com/store/teensy.html - -Make example for this keyboard (after setting up your build environment): - - make converter/modelm101_teensy2:default:teensy - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/converter/modelm101_teensy2/rules.mk b/keyboards/converter/modelm101_teensy2/rules.mk deleted file mode 100644 index 6fe874e748..0000000000 --- a/keyboards/converter/modelm101_teensy2/rules.mk +++ /dev/null @@ -1,12 +0,0 @@ -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output diff --git a/keyboards/converter/modelm_ssk/config.h b/keyboards/converter/modelm_ssk/config.h deleted file mode 100644 index 3b6e758833..0000000000 --- a/keyboards/converter/modelm_ssk/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -Copyright 2019-2021 iw0rm3r, tiltowait - -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/>. -*/ - -#pragma once - -/* The Model M does not have NKRO */ -#define MATRIX_HAS_GHOST - -/* - * 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 diff --git a/keyboards/converter/modelm_ssk/info.json b/keyboards/converter/modelm_ssk/info.json deleted file mode 100644 index ff2c6cc217..0000000000 --- a/keyboards/converter/modelm_ssk/info.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "keyboard_name": "IBM Model M Space-Saving Keyboard", - "manufacturer": "tiltowait", - "url": "https://github.com/tiltowait/qmk_firmware/tree/modelm_ssk/keyboards/converter/modelm_ssk", - "maintainer": "tiltowait", - "usb": { - "vid": "0xFEED", - "pid": "0x0000", - "device_version": "0.0.1" - }, - "matrix_pins": { - "cols": ["C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "E1", "E0", "D7", "D5", "D4", "D3", "D2", "D1"], - "rows": ["F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7"] - }, - "diode_direction": "ROW2COL", - "indicators": { - "caps_lock": "B6", - "num_lock": "B4", - "scroll_lock": "B5" - }, - "processor": "at90usb1286", - "bootloader": "halfkay", - "layouts": { - "LAYOUT": { - "layout": [ - {"matrix": [7, 2], "x": 0, "y": 0}, - - {"matrix": [5, 3], "x": 2, "y": 0}, - {"matrix": [5, 4], "x": 3, "y": 0}, - {"matrix": [6, 4], "x": 4, "y": 0}, - {"matrix": [7, 4], "x": 5, "y": 0}, - - {"matrix": [7, 6], "x": 6.5, "y": 0}, - {"matrix": [7, 8], "x": 7.5, "y": 0}, - {"matrix": [6, 9], "x": 8.5, "y": 0}, - {"matrix": [5, 9], "x": 9.5, "y": 0}, - - {"matrix": [5, 6], "x": 11, "y": 0}, - {"matrix": [4, 6], "x": 12, "y": 0}, - {"matrix": [4, 11], "x": 13, "y": 0}, - {"matrix": [4, 12], "x": 14, "y": 0}, - - {"matrix": [4, 15], "x": 15.25, "y": 0}, - {"matrix": [3, 15], "x": 16.25, "y": 0}, - {"matrix": [1, 14], "x": 17.25, "y": 0}, - - {"matrix": [5, 2], "x": 0, "y": 1.5}, - {"matrix": [4, 2], "x": 1, "y": 1.5}, - {"matrix": [4, 3], "x": 2, "y": 1.5}, - {"matrix": [4, 4], "x": 3, "y": 1.5}, - {"matrix": [4, 5], "x": 4, "y": 1.5}, - {"matrix": [5, 5], "x": 5, "y": 1.5}, - {"matrix": [5, 7], "x": 6, "y": 1.5}, - {"matrix": [4, 7], "x": 7, "y": 1.5}, - {"matrix": [4, 8], "x": 8, "y": 1.5}, - {"matrix": [4, 9], "x": 9, "y": 1.5}, - {"matrix": [4, 10], "x": 10, "y": 1.5}, - {"matrix": [5, 10], "x": 11, "y": 1.5}, - {"matrix": [5, 8], "x": 12, "y": 1.5}, - {"matrix": [6, 6], "x": 13, "y": 1.5, "w": 2}, - - {"matrix": [5, 12], "x": 15.25, "y": 1.5}, - {"matrix": [5, 14], "x": 16.25, "y": 1.5}, - {"matrix": [5, 13], "x": 17.25, "y": 1.5}, - - {"matrix": [6, 2], "x": 0, "y": 2.5, "w": 1.5}, - {"matrix": [3, 2], "x": 1.5, "y": 2.5}, - {"matrix": [3, 3], "x": 2.5, "y": 2.5}, - {"matrix": [3, 4], "x": 3.5, "y": 2.5}, - {"matrix": [3, 5], "x": 4.5, "y": 2.5}, - {"matrix": [6, 5], "x": 5.5, "y": 2.5}, - {"matrix": [6, 7], "x": 6.5, "y": 2.5}, - {"matrix": [3, 7], "x": 7.5, "y": 2.5}, - {"matrix": [3, 8], "x": 8.5, "y": 2.5}, - {"matrix": [3, 9], "x": 9.5, "y": 2.5}, - {"matrix": [3, 10], "x": 10.5, "y": 2.5}, - {"matrix": [6, 10], "x": 11.5, "y": 2.5}, - {"matrix": [6, 8], "x": 12.5, "y": 2.5}, - {"matrix": [2, 6], "x": 13.5, "y": 2.5, "w": 1.5}, - - {"matrix": [5, 11], "x": 15.25, "y": 2.5}, - {"matrix": [4, 14], "x": 16.25, "y": 2.5}, - {"matrix": [4, 13], "x": 17.25, "y": 2.5}, - - {"matrix": [6, 3], "x": 0, "y": 3.5, "w": 1.5}, - {"matrix": [2, 2], "x": 1.75, "y": 3.5}, - {"matrix": [2, 3], "x": 2.75, "y": 3.5}, - {"matrix": [2, 4], "x": 3.75, "y": 3.5}, - {"matrix": [2, 5], "x": 4.75, "y": 3.5}, - {"matrix": [7, 5], "x": 5.75, "y": 3.5}, - {"matrix": [7, 7], "x": 6.75, "y": 3.5}, - {"matrix": [2, 7], "x": 7.75, "y": 3.5}, - {"matrix": [2, 8], "x": 8.75, "y": 3.5}, - {"matrix": [2, 9], "x": 9.75, "y": 3.5}, - {"matrix": [2, 10], "x": 10.75, "y": 3.5}, - {"matrix": [7, 10], "x": 11.75, "y": 3.5}, - {"matrix": [1, 10], "x": 12.75, "y": 3.5}, - {"matrix": [1, 6], "x": 13.75, "y": 3.5, "w": 1.25}, - - {"matrix": [6, 1], "x": 0, "y": 4.5, "w": 1.25}, - {"matrix": [7, 3], "x": 1.25, "y": 4.5}, - {"matrix": [1, 2], "x": 2.25, "y": 4.5}, - {"matrix": [1, 3], "x": 3.25, "y": 4.5}, - {"matrix": [1, 4], "x": 4.25, "y": 4.5}, - {"matrix": [1, 5], "x": 5.25, "y": 4.5}, - {"matrix": [0, 5], "x": 6.25, "y": 4.5}, - {"matrix": [0, 7], "x": 7.25, "y": 4.5}, - {"matrix": [1, 7], "x": 8.25, "y": 4.5}, - {"matrix": [1, 8], "x": 9.25, "y": 4.5}, - {"matrix": [1, 9], "x": 10.25, "y": 4.5}, - {"matrix": [0, 10], "x": 11.25, "y": 4.5}, - {"matrix": [1, 1], "x": 12.25, "y": 4.5, "w": 2.75}, - - {"matrix": [7, 14], "x": 16.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.5}, - {"matrix": [7, 15], "x": 2.5, "y": 5.5, "w": 1.5}, - {"matrix": [0, 6], "x": 4, "y": 5.5, "w": 7}, - {"matrix": [0, 15], "x": 11, "y": 5.5, "w": 1.5}, - {"matrix": [1, 0], "x": 13.5, "y": 5.5, "w": 1.5}, - - {"matrix": [0, 14], "x": 15.25, "y": 5.5}, - {"matrix": [0, 11], "x": 16.25, "y": 5.5}, - {"matrix": [0, 12], "x": 17.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/converter/modelm_ssk/keymaps/default/keymap.c b/keyboards/converter/modelm_ssk/keymaps/default/keymap.c deleted file mode 100644 index 928d745f0d..0000000000 --- a/keyboards/converter/modelm_ssk/keymaps/default/keymap.c +++ /dev/null @@ -1,114 +0,0 @@ -/* Copyright 2019-2021 iw0rm3r, tiltowait - * - * 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/>. - */ -#include QMK_KEYBOARD_H - -enum custom_layers { - _BASE, - _NUMPAD, -}; - -enum custom_keycodes { - NUM_SCRL = SAFE_RANGE -}; - -void toggle_numpad_layer(int set_state); - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( /* Base layer */ - KC_ESC, 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_PSCR, NUM_SCRL, KC_PAUS, - 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_INS, KC_HOME, KC_PGUP, - 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_BSLS, KC_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [_NUMPAD] = LAYOUT( /* Numpad Layer */ - 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_KP_7, KC_KP_8, KC_KP_9, KC_TRNS, KC_KP_MINUS, KC_KP_PLUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_KP_4, KC_KP_5, KC_KP_6, 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_KP_1, KC_KP_2, KC_KP_3, KC_KP_ASTERISK, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_KP_0, KC_TRNS, KC_KP_DOT, KC_KP_SLASH, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - static uint16_t last_num_scroll = 0; /* For unregistering the proper key */ - - switch (keycode) { - case NUM_SCRL: /* Numlock / Scroll Lock */ - if (record->event.pressed) { - if (get_mods() & MOD_MASK_SHIFT) { - /* Remove the shift modifiers */ - uint8_t shift_mods = get_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)); - del_mods(MOD_MASK_SHIFT); - - last_num_scroll = KC_NUM_LOCK; - register_code(last_num_scroll); - toggle_numpad_layer(-1); - - /* Reset the shift modifiers */ - set_mods(shift_mods); - } else { - last_num_scroll = KC_SCROLL_LOCK; - register_code(last_num_scroll); - } - } else { - unregister_code(last_num_scroll); - } - break; - } - return true; -} - -void toggle_numpad_layer(int set_state) { - static uint8_t numlock_enabled = 0; - - /* set_state allows us to explicitly change the numlock state - rather than merely toggling it. */ - if (set_state == -1) { - numlock_enabled = !numlock_enabled; - } else { - numlock_enabled = set_state; - } - - if (numlock_enabled) { - layer_on(_NUMPAD); - } - else { - layer_off(_NUMPAD); - } -} - -bool led_update_user(led_t led_state) { - /* In rare and unlikely conditions, it's possible for numlock - state to change externally from the keyboard. If this happens, - we want to match the new state. - - On Windows and Linux, this means that the keyboard will technically - toggle the numpad layer twice. - */ - - static int8_t numlock_state = -1; /* Unknown state at default */ - - if (led_state.num_lock != numlock_state) { - numlock_state = led_state.num_lock; - toggle_numpad_layer(led_state.num_lock); - } - return true; -} - diff --git a/keyboards/converter/modelm_ssk/keymaps/default/readme.md b/keyboards/converter/modelm_ssk/keymaps/default/readme.md deleted file mode 100644 index bc829be266..0000000000 --- a/keyboards/converter/modelm_ssk/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for modelm_ssk diff --git a/keyboards/converter/modelm_ssk/keymaps/tiltowait/config.h b/keyboards/converter/modelm_ssk/keymaps/tiltowait/config.h deleted file mode 100644 index 151118fdf6..0000000000 --- a/keyboards/converter/modelm_ssk/keymaps/tiltowait/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 tiltowait - * - * 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/>. - */ - -#pragma once - -// place overrides here - -#define PERMISSIVE_HOLD diff --git a/keyboards/converter/modelm_ssk/keymaps/tiltowait/keymap.c b/keyboards/converter/modelm_ssk/keymaps/tiltowait/keymap.c deleted file mode 100644 index 4836ad329e..0000000000 --- a/keyboards/converter/modelm_ssk/keymaps/tiltowait/keymap.c +++ /dev/null @@ -1,116 +0,0 @@ -/* Copyright 2021 tiltowait - * - * 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/>. - */ -#include QMK_KEYBOARD_H - -enum custom_layers { - _BASE, - _SECOND, - _NUMPAD, -}; - -enum custom_keycodes { - NUM_SCRL = SAFE_RANGE /* Dual-purpose Scroll Lock / Numlock button as on original hardware */ -}; - -void toggle_numlock_layer(int set_state); - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( /* Base layer */ - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_MUTE, KC_F10, KC_VOLD, KC_VOLU, S(G(KC_4)), NUM_SCRL, KC_PAUS, - - 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_BSLS, KC_INS, KC_HOME, KC_PGUP, - LT(_SECOND,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_BSPC, KC_DEL, KC_END, KC_PGDN, - KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LALT, LGUI_T(KC_ENT), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [_SECOND] = LAYOUT( /* Layer 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, S(A(KC_MINS)), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, C(KC_LEFT), C(KC_RGHT), 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_LEFT, KC_DOWN, KC_UP, KC_RGHT, S(A(KC_M)), KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, C(KC_SPC), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - [_NUMPAD] = LAYOUT( /* Numpad Layer */ - 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_KP_7, KC_KP_8, KC_KP_9, KC_TRNS, KC_KP_MINUS, KC_KP_PLUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_KP_4, KC_KP_5, KC_KP_6, 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_KP_1, KC_KP_2, KC_KP_3, KC_KP_ASTERISK, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_KP_0, KC_TRNS, KC_KP_DOT, KC_KP_SLASH, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - static uint16_t last_num_scroll = 0; /* For unregistering the proper key */ - - switch (keycode) { - case NUM_SCRL: - if (record->event.pressed) { - if (get_mods() & MOD_MASK_SHIFT) { - /* Remove the shift modifiers */ - uint8_t shift_mods = get_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)); - set_mods(get_mods() & ~(MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) ); - - last_num_scroll = KC_NUM_LOCK; - register_code(last_num_scroll); - toggle_numlock_layer(-1); - - /* Reset the shift modifiers */ - set_mods(shift_mods); - } else { - last_num_scroll = KC_SCROLL_LOCK; - register_code(last_num_scroll); - } - } else { - unregister_code(last_num_scroll); - } - break; - } - return true; -} - -void toggle_numlock_layer(int set_state) { - static uint8_t numlock_enabled = 0; - - /* set_state allows us to explicitly change the numlock state - rather than merely toggling it. */ - if (set_state == -1) { - numlock_enabled = !numlock_enabled; - } else { - numlock_enabled = set_state; - } - - if (numlock_enabled) { - layer_on(_NUMPAD); - } - else { - layer_off(_NUMPAD); - } -} - -bool led_update_kb(led_t led_state) { - static int8_t numlock_state = -1; - - if (led_state.num_lock != numlock_state) { - numlock_state = led_state.num_lock; - toggle_numlock_layer(led_state.num_lock); - } - return true; -} diff --git a/keyboards/converter/modelm_ssk/keymaps/tiltowait/readme.md b/keyboards/converter/modelm_ssk/keymaps/tiltowait/readme.md deleted file mode 100644 index aecdd89b82..0000000000 --- a/keyboards/converter/modelm_ssk/keymaps/tiltowait/readme.md +++ /dev/null @@ -1,11 +0,0 @@ -# The maintainer's personal keymap for modelm_ssk - -This is a keymap suitable for macOS use. - -* Backspace and backslash have been swapped (HHKB style) -* Capslock is LCTRL -* LCTRL is LALT -* LALT is LGUI -* Tab shifts to layer 1 on hold -* Layer 1 has a couple of Mac shortcuts, plus Vim-style arrow keys -* Shift+Numlock enables numlock diff --git a/keyboards/converter/modelm_ssk/readme.md b/keyboards/converter/modelm_ssk/readme.md deleted file mode 100644 index 8105a0c2df..0000000000 --- a/keyboards/converter/modelm_ssk/readme.md +++ /dev/null @@ -1,55 +0,0 @@ -# modelm_ssk - -![IBM Model M Space-Saving Keyboard](https://i.imgur.com/CSXrQI5.jpg) - -This is a QMK firmware configuration for the IBM Model M Space-Saving Keyboard (SSK). Based on [this project](https://github.com/qmk/qmk_firmware/tree/master/keyboards/converter/modelm101), it features a few slight improvements and, most importantly, a full remapping to match the SSK's matrix, which differs from its full-sized cousins. The modification is easily reversible, as no part of the keyboard is permanently changed. Just take out the replacement controller and reinstall the original, should you desire. - -The numpad layer (accessed with Shift + Scroll Lock as with the original controller) is mapped to layer 7 by default. All non-numpad keys are transparent. - -**Note:** As of this writing, this configuration has only been tested on the 1392464 SSK. It's possible other models differ in their internal matrices. Should the provided matrix not work for you (and you are certain of your connections), you can enable debugging with `CONSOLE_ENABLE = yes` in `rules.mk` and by following the directions in `default/keymap.c`. Once done, [QMK Toolbox](https://github.com/qmk/qmk_toolbox) will display row/col information to help you remap `modelm_ssk.h`. - -## Requirements - -* [Teensy++ 2.0](https://www.pjrc.com/store/teensypp.html) - I recommend buying one with pins already attached -* A Trio-Mate 16-pin ribbon connector (6-520315-6 or 6-520415-6) -* A Trio-Mate 8-pin ribbon connector (5-120628-8 or 5-520314-8). Alternatively, two 16-pin connectors can be used if the 8-pin is out of stock. Just be sure to line up your pins correctly -* Breadboard or perfboard. A perfboard is recommended due to its reduced height and low clearance inside the chassis -* Mini-B to USB-A cable -* Jumper wires and wire strippers/cutters -* Soldering iron if not using a breadboard - -## Setup - -![Finished controller](https://i.imgur.com/m1yuo4F.jpg) - -The controller uses the following mapping (in zero-indexed hex): - -``` -Column: 0 1 2 3 4 5 6 7 8 9 A B C D E F -Pin: C7 C6 C5 C4 C3 C2 C1 C0 E1 E0 D7 D5 D4 D3 D2 D1 --------------------------------------------------------- -Row: 0 1 2 3 4 5 6 7 -Pin: F0 F1 F2 F3 F4 F5 F6 F7 -``` - -**IMPORTANT:** It is necessary to skip pin D6 on the Teensy. There is an LED attached to this pin, which can cause interference with registering keys. Alternatively, you can remove the LED from the board, which is likely to be a permanent modification of the Teensy. The choice is yours. I am not responsible for any damage to your Teensy or keyboard. - -## A note on the Unicomp Mini M - -This configuration will not work out of the box with the [Unicomp Mini M](https://www.pckeyboard.com/page/product/MINI_M). That keyboard uses a 16x12 matrix rather than the SSK's 16x8 in order to reduce occurrences of 2KRO lockup. It also features lock lights, which the SSK lacks. However, it should be possible to map out the Mini M's matrix to get it working. - -## Maintainer - -* Keyboard Maintainer: [tiltowait](https://github.com/tiltowait), original work by [iw0rm3r](https://github.com/iw0rm3r) -* Hardware Supported: Teensy 2.0++ board by PJRC -* Hardware Availability: https://www.pjrc.com/store/teensypp.html - -## Building - -Make example for this keyboard (after setting up your build environment): - - make converter/modelm_ssk:default - -You must press the button on the Teensy to enter the bootloader the first time. Afterward, so long as you keep `COMMAND_ENABLE = yes` in `rules.mk` (enabled by default), you can use `Left Shift + Right Shift + B` to enter the bootloader. With this method, you can omit `:teensy` from the end of the `make` command. - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/converter/modelm_ssk/rules.mk b/keyboards/converter/modelm_ssk/rules.mk deleted file mode 100644 index 2904475d7d..0000000000 --- a/keyboards/converter/modelm_ssk/rules.mk +++ /dev/null @@ -1,12 +0,0 @@ -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = yes # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output |