^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) # Default keymap for 3270 (ebcdic codepage 037).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) keymaps 0-1,4-5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) keycode 0 = nul Oslash
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) keycode 1 = nul a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) keycode 2 = nul b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) keycode 3 = nul c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) keycode 4 = nul d
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) keycode 5 = nul e
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) keycode 6 = nul f
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) keycode 7 = nul g
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) keycode 8 = nul h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) keycode 9 = nul i
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) keycode 10 = nul guillemotleft
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) keycode 11 = nul guillemotright
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) keycode 12 = nul eth
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) keycode 13 = nul yacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) keycode 14 = nul thorn
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) keycode 15 = nul plusminus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) keycode 16 = nul degree
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) keycode 17 = nul j
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) keycode 18 = nul k
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) keycode 19 = nul l
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) keycode 20 = nul m
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) keycode 21 = nul n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) keycode 22 = nul o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) keycode 23 = nul p
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) keycode 24 = nul q
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) keycode 25 = nul r
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) keycode 26 = nul nul
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) keycode 27 = nul nul
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) keycode 28 = nul ae
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) keycode 29 = nul cedilla
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) keycode 30 = nul AE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) keycode 31 = nul currency
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) keycode 32 = nul mu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) keycode 33 = nul tilde
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) keycode 34 = nul s
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) keycode 35 = nul t
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) keycode 36 = nul u
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) keycode 37 = nul v
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) keycode 38 = nul w
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) keycode 39 = nul x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) keycode 40 = nul y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) keycode 41 = nul z
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) keycode 42 = nul exclamdown
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) keycode 43 = nul questiondown
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) keycode 44 = nul ETH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) keycode 45 = nul Yacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) keycode 46 = nul THORN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) keycode 47 = nul registered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) keycode 48 = nul dead_circumflex
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) keycode 49 = nul sterling
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) keycode 50 = nul yen
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) keycode 51 = nul periodcentered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) keycode 52 = nul copyright
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) keycode 53 = nul section
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) keycode 54 = nul paragraph
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) keycode 55 = nul onequarter
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) keycode 56 = nul onehalf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) keycode 57 = nul threequarters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) keycode 58 = nul bracketleft
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) keycode 59 = nul bracketright
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) keycode 60 = nul nul
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) keycode 61 = nul diaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) keycode 62 = nul acute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) keycode 63 = nul multiply
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) keycode 64 = space braceleft
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) keycode 65 = nul A
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) keycode 66 = acircumflex B
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) keycode 67 = adiaeresis C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) keycode 68 = agrave D
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) keycode 69 = aacute E
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) keycode 70 = atilde F
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) keycode 71 = aring G
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) keycode 72 = ccedilla H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) keycode 73 = ntilde I
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) keycode 74 = cent nul
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) keycode 75 = period ocircumflex
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) keycode 76 = less odiaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) keycode 77 = parenleft ograve
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) keycode 78 = plus oacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) keycode 79 = bar otilde
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) keycode 80 = ampersand braceright
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) keycode 81 = eacute J
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) keycode 82 = acircumflex K
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) keycode 83 = ediaeresis L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) keycode 84 = egrave M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) keycode 85 = iacute N
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) keycode 86 = icircumflex O
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) keycode 87 = idiaeresis P
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) keycode 88 = igrave Q
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) keycode 89 = ssharp R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) keycode 90 = exclam onesuperior
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) keycode 91 = dollar ucircumflex
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) keycode 92 = asterisk udiaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) keycode 93 = parenright ugrave
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) keycode 94 = semicolon uacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) keycode 95 = notsign ydiaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) keycode 96 = minus backslash
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) keycode 97 = slash division
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) keycode 98 = Acircumflex S
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) keycode 99 = Adiaeresis T
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) keycode 100 = Agrave U
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) keycode 101 = Aacute V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) keycode 102 = Atilde W
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) keycode 103 = Aring X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) keycode 104 = Ccedilla Y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) keycode 105 = Ntilde Z
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) keycode 106 = brokenbar twosuperior
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) keycode 107 = comma Ocircumflex
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) keycode 108 = percent Odiaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) keycode 109 = underscore Ograve
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) keycode 110 = greater Oacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) keycode 111 = question Otilde
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) keycode 112 = oslash zero
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) keycode 113 = Eacute one
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) keycode 114 = Ecircumflex two
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) keycode 115 = Ediaeresis three
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) keycode 116 = Egrave four
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) keycode 117 = Iacute five
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) keycode 118 = Icircumflex six
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) keycode 119 = Idiaeresis seven
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) keycode 120 = Igrave eight
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) keycode 121 = grave nine
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) keycode 122 = colon threesuperior
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) keycode 123 = numbersign Ucircumflex
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) keycode 124 = at Udiaeresis
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) keycode 125 = apostrophe Ugrave
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) keycode 126 = equal Uacute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) keycode 127 = quotedbl nul
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) # AID keys
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) control keycode 74 = F22
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) control keycode 75 = F23
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) control keycode 76 = F24
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) control keycode 107 = Control_z # PA3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) control keycode 108 = Control_c # PA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) control keycode 109 = KeyboardSignal # Clear
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) control keycode 110 = Control_d # PA2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) control keycode 122 = F10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) control keycode 123 = F11 # F11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) control keycode 124 = Last_Console # F12
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) control keycode 125 = Linefeed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) shift control keycode 65 = F13
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) shift control keycode 66 = F14
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) shift control keycode 67 = F15
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) shift control keycode 68 = F16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) shift control keycode 69 = F17
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) shift control keycode 70 = F18
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) shift control keycode 71 = F19
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) shift control keycode 72 = F20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) shift control keycode 73 = F21
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) shift control keycode 113 = F1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) shift control keycode 114 = F2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) shift control keycode 115 = Incr_Console
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) shift control keycode 116 = F4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) shift control keycode 117 = F5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) shift control keycode 118 = F6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) shift control keycode 119 = Scroll_Backward
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) shift control keycode 120 = Scroll_Forward
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) shift control keycode 121 = F9
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) string F1 = "\033[[A"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) string F2 = "\033[[B"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) string F3 = "\033[[C"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) string F4 = "\033[[D"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) string F5 = "\033[[E"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) string F6 = "\033[17~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) string F7 = "\033[18~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) string F8 = "\033[19~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) string F9 = "\033[20~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) string F10 = "\033[21~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) string F11 = "\033[23~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) string F12 = "\033[24~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) string F13 = "\033[25~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) string F14 = "\033[26~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) string F15 = "\033[28~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) string F16 = "\033[29~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) string F17 = "\033[31~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) string F18 = "\033[32~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) string F19 = "\033[33~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) string F20 = "\033[34~"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) # string F21 ??
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) # string F22 ??
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) # string F23 ??
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) # string F24 ??
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) compose '^' 'c' to Control_c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) compose '^' 'd' to Control_d
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) compose '^' 'z' to Control_z
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) compose '^' '\012' to nul