Skip to content

Commit

Permalink
Revert "[Keyboard] Remove broken, unmaintained converter/ibm_5291 (qm…
Browse files Browse the repository at this point in the history
…k#13658)"

This reverts commit 6747890.
  • Loading branch information
MMcM committed Oct 22, 2022
1 parent 89b023e commit 7c8a9b3
Show file tree
Hide file tree
Showing 11 changed files with 929 additions and 0 deletions.
Empty file.
39 changes: 39 additions & 0 deletions keyboards/converter/ibm_5291/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
Copyright 2018 listofoptions <listofoptions@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/>.
*/

#pragma once

#include "config_common.h"

#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER QMK
#define PRODUCT 5291 keyboard converter

#define MATRIX_ROWS 5
#define MATRIX_COLS 4

#define MATRIX_ROW_PINS {B2, B3, B4, B5, B6}
#define MATRIX_COL_PINS {B0, B1}
#define MATRIX_DATA_PIN D0
#define MATRIX_STROBE_PIN D1
#define LED_PIN D6


/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 0
3 changes: 3 additions & 0 deletions keyboards/converter/ibm_5291/ibm_5291.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#include "ibm_5291.h"
#include <avr/io.h>
#include "quantum.h"
69 changes: 69 additions & 0 deletions keyboards/converter/ibm_5291/ibm_5291.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/*
Copyright 2018 listofoptions <listofoptions@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/>.
*/

#pragma once

#include "quantum.h"

/*
* ,-------. ,--------------------------------------------------------------------------.
* | F1| F2| |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| BS |NumLck |ScrLck |
* |-------| |--------------------------------------------------------------------------|
* | F3| F4| | Tab | Q| W| E| R| T| Y| U| I| O| P| [| ] | | 7| 8| 9| -|
* |-------| |------------------------------------------------------|Ent|---------------|
* | F5| F6| | Ctrl | A| S| D| F| G| H| J| K| L| ;| '| `| | 4| 5| 6| |
* |-------| |----------------------------------------------------------------------| |
* | F7| F8| |Shif| \| Z| X| C| V| B| N| M| ,| .| /|Shift|PrS| 1| 2| 3| +|
* |-------| |----------------------------------------------------------------------| |
* | F9|F10| | Alt | Space |CapsLck| 0 | . | |
* `-------' `--------------------------------------------------------------------------'
*/

#define LAYOUT_5291( \
KEY_F1,KEY_F2, KEY_ESC, KEY_1, KEY_2,KEY_3,KEY_4,KEY_5,KEY_6,KEY_7,KEY_8,KEY_9, KEY_0, KEY_MIN, KEY_EQU, KEY_BACK, KEY_NLOCK, KEY_SLOCK, \
KEY_F3,KEY_F4, KEY_TAB, KEY_Q, KEY_W,KEY_E,KEY_R,KEY_T,KEY_Y,KEY_U,KEY_I,KEY_O, KEY_P, KEY_LBRC,KEY_RBRC, KEY_PAD7,KEY_PAD8, KEY_PAD9,KEY_PMIN, \
KEY_F5,KEY_F6, KEY_LCTR,KEY_A, KEY_S,KEY_D,KEY_F,KEY_G,KEY_H,KEY_J,KEY_K,KEY_L, KEY_SEMI,KEY_QUOT,KEY_TICK, KEY_ENTR,KEY_PAD4,KEY_PAD5, KEY_PAD6, \
KEY_F7,KEY_F8, KEY_LSFS,KEY_BSLS,KEY_Z,KEY_X,KEY_C,KEY_V,KEY_B,KEY_N,KEY_M,KEY_COMM,KEY_DOT, KEY_SLS,KEY_RSFS, KEY_PAST,KEY_PAD1,KEY_PAD2, KEY_PAD3,KEY_PPLS, \
KEY_F9,KEY_F10, KEY_LALT, KEY_SPACE, KEY_CLOCK, KEY_PAD0, KEY_PDOT \
) \
{ {KEY_Z, KEY_S, KEY_W, KEY_3 }\
, {KEY_X, KEY_D, KEY_E, KEY_4 }\
, {KEY_C, KEY_F, KEY_R, KEY_5 }\
, {KEY_V, KEY_G, KEY_T, KEY_6 }\
, {KEY_B, KEY_H, KEY_Y, KEY_7 }\
, {KEY_N, KEY_J, KEY_U, KEY_8 }\
, {KEY_PAD2, KEY_PAD5,KEY_PAD8,KEY_NLOCK }\
, {KEY_M, KEY_K, KEY_I, KEY_9 }\
, {KEY_COMM, KEY_L, KEY_O, KEY_0 }\
, {KEY_DOT, KEY_SEMI,KEY_P, KEY_MIN }\
, {KEY_SLS, KEY_QUOT,KEY_LBRC,KEY_EQU }\
, {KEY_SPACE, KEY_RSFS,KEY_TICK,KEY_RBRC }\
, {KEY_CLOCK, KEY_PAST,KEY_ENTR,KEY_BACK }\
, {KEY_PAD0, KEY_PAD1,KEY_PAD4,KEY_PAD7 }\
, {KEY_PPLS, KC_NO, KEY_PMIN,KEY_SLOCK }\
, {KEY_PDOT, KEY_PAD3,KEY_PAD6,KEY_PAD9 }\
, {KEY_BSLS, KEY_A, KEY_Q, KEY_2 }\
, {KEY_LALT, KC_NO, KC_NO, KEY_1 }\
, {KEY_F7, KEY_F5, KEY_F3, KEY_F1 }\
, {KEY_F8, KEY_F6, KEY_F4, KEY_F2 }\
, {KC_F10, KC_NO, KC_NO, KC_NO }\
, {KC_F9, KC_NO, KC_NO, KC_NO }\
, {KEY_LSFS, KEY_LCTR,KEY_TAB, KEY_ESC }\
, {KC_NO, KC_NO, KC_NO, KC_NO }\
}

#define LAYOUT LAYOUT_5291
96 changes: 96 additions & 0 deletions keyboards/converter/ibm_5291/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
{
"keyboard_name": "IBM 5291",
"url": "https://deskthority.net/wiki/IBM_Model_F#IBM_5291_Keyboard",
"maintainer": "listofoptions",
"width": 21,
"height": 5,
"layouts": {
"LAYOUT_5291": {
"layout": [
{"label":"Sys Req", "x":0, "y":0},
{"label":"Cmd", "x":1, "y":0},
{"label":"`", "x":2.25, "y":0},
{"label":"1", "x":3.25, "y":0},
{"label":"2", "x":4.25, "y":0},
{"label":"3", "x":5.25, "y":0},
{"label":"4", "x":6.25, "y":0},
{"label":"5", "x":7.25, "y":0},
{"label":"6", "x":8.25, "y":0},
{"label":"7", "x":9.25, "y":0},
{"label":"8", "x":10.25, "y":0},
{"label":"9", "x":11.25, "y":0},
{"label":"0", "x":12.25, "y":0},
{"label":"-", "x":13.25, "y":0},
{"label":"=", "x":14.25, "y":0},
{"label":"Backspace", "x":15.25, "y":0, "w":1.75},
{"label":"Reverse Tab", "x":17, "y":0, "w":2},
{"label":"Dup", "x":19, "y":0, "w":2},
{"label":"Del", "x":0, "y":1},
{"label":"Erase Input", "x":1, "y":1},
{"label":"Tab", "x":2.25, "y":1, "w":1.5},
{"label":"Q", "x":3.75, "y":1},
{"label":"W", "x":4.75, "y":1},
{"label":"E", "x":5.75, "y":1},
{"label":"R", "x":6.75, "y":1},
{"label":"T", "x":7.75, "y":1},
{"label":"Y", "x":8.75, "y":1},
{"label":"U", "x":9.75, "y":1},
{"label":"I", "x":10.75, "y":1},
{"label":"O", "x":11.75, "y":1},
{"label":"P", "x":12.75, "y":1},
{"label":"&cent;", "x":13.75, "y":1},
{"label":"\\", "x":14.75, "y":1, "w":1.25},
{"label":"7", "x":17, "y":1},
{"label":"8", "x":18, "y":1},
{"label":"9", "x":19, "y":1},
{"label":"Field -", "x":20, "y":1},
{"label":"Print", "x":0, "y":2},
{"label":"Help", "x":1, "y":2},
{"label":"Caps Lock", "x":2.25, "y":2, "w":1.75},
{"label":"A", "x":4, "y":2},
{"label":"S", "x":5, "y":2},
{"label":"D", "x":6, "y":2},
{"label":"F", "x":7, "y":2},
{"label":"G", "x":8, "y":2},
{"label":"H", "x":9, "y":2},
{"label":"J", "x":10, "y":2},
{"label":"K", "x":11, "y":2},
{"label":"L", "x":12, "y":2},
{"label":";", "x":13, "y":2},
{"label":"'", "x":14, "y":2},
{"label":"{", "x":15, "y":2},
{"label":"Field Exit", "x":16, "y":1, "h":2},
{"label":"4", "x":17, "y":2},
{"label":"5", "x":18, "y":2},
{"label":"6", "x":19, "y":2},
{"label":"Roll Up", "x":0, "y":3},
{"label":"Roll Down", "x":1, "y":3},
{"label":"Shift", "x":2.25, "y":3, "w":1.25},
{"label":"<", "x":3.5, "y":3},
{"label":"Z", "x":4.5, "y":3},
{"label":"X", "x":5.5, "y":3},
{"label":"C", "x":6.5, "y":3},
{"label":"V", "x":7.5, "y":3},
{"label":"B", "x":8.5, "y":3},
{"label":"N", "x":9.5, "y":3},
{"label":"M", "x":10.5, "y":3},
{"label":",", "x":11.5, "y":3},
{"label":".", "x":12.5, "y":3},
{"label":"/", "x":13.5, "y":3},
{"label":"Shift", "x":14.5, "y":3, "w":1.5},
{"label":"Return", "x":16, "y":3},
{"label":"1", "x":17, "y":3},
{"label":"2", "x":18, "y":3},
{"label":"3", "x":19, "y":3},
{"label":"Field +", "x":20, "y":2, "h":3},
{"label":"Left", "x":0, "y":4},
{"label":"Right", "x":1, "y":4},
{"label":"Error Reset", "x":2.25, "y":4, "w":2},
{"label":"Space", "x":4.25, "y":4, "w":9.75},
{"label":"Enter Rec Adv", "x":14, "y":4, "w":2},
{"label":"0", "x":16, "y":4, "w":2},
{"label":".", "x":18, "y":4, "w":2}
]
}
}
}
Loading

0 comments on commit 7c8a9b3

Please sign in to comment.