From 38ece51b254cf2b496c6fecc704d53dc74653553 Mon Sep 17 00:00:00 2001 From: Ben Gras Date: Wed, 19 May 2010 11:34:47 +0000 Subject: [PATCH] charset cp1251 contributed by Roman Ignatov. --- drivers/tty/keymaps/Makefile | 2 +- drivers/tty/keymaps/russian-cp1251.src | 137 +++++++++++++++++++++++++ etc/fonts/cp1251.fnt | Bin 0 -> 4096 bytes 3 files changed, 138 insertions(+), 1 deletion(-) create mode 100755 drivers/tty/keymaps/russian-cp1251.src create mode 100755 etc/fonts/cp1251.fnt diff --git a/drivers/tty/keymaps/Makefile b/drivers/tty/keymaps/Makefile index 7cffe9162..533c6efac 100644 --- a/drivers/tty/keymaps/Makefile +++ b/drivers/tty/keymaps/Makefile @@ -5,7 +5,7 @@ FILES= dvorak.map french.map german.map italian.map japanese.map \ latin-america.map olivetti.map polish.map russian-cp866.map \ russian.map scandinavian.map spanish.map uk.map \ - us-std-esc.map us-std.map us-swap.map + us-std-esc.map us-std.map us-swap.map russian-cp1251.map .include "Makefile.inc" diff --git a/drivers/tty/keymaps/russian-cp1251.src b/drivers/tty/keymaps/russian-cp1251.src new file mode 100755 index 000000000..d96c737c8 --- /dev/null +++ b/drivers/tty/keymaps/russian-cp1251.src @@ -0,0 +1,137 @@ +/* + * Keymap for russian keyboard. + * Modified by Roman V. Ignatov + * Charset: cp1251 + */ + + +/* scan-code !Shift Shift Alt1 Alt2 Alt+Sh Ctrl */ +/* ==================================================================== */ +/* 00 - none */ 0, 0, 0, 0, 0, 0, +/* 01 - ESC */ C('['), C('['), CA('['),CA('['),CA('['),C('['), +/* 02 - '1' */ '1', '!', A('1'), A('1'), A('!'), C('A'), +/* 03 - '2' */ '2', '@', A('2'), A('2'), A('@'), C('@'), +/* 04 - '3' */ '3', '#', A('3'), A('3'), A('#'), C('C'), +/* 05 - '4' */ '4', '$', A('4'), A('4'), A('$'), C('D'), +/* 06 - '5' */ '5', '%', A('5'), A('5'), A('%'), C('E'), +/* 07 - '6' */ '6', '^', A('6'), A('6'), A('^'), C('^'), +/* 08 - '7' */ '7', '&', A('7'), A('7'), A('&'), C('G'), +/* 09 - '8' */ '8', '*', A('8'), A('8'), A('*'), C('H'), +/* 10 - '9' */ '9', '(', A('9'), A('9'), A('('), C('I'), +/* 11 - '0' */ '0', ')', A('0'), A('0'), A(')'), C('@'), +/* 12 - '-' */ '-', '_', A('-'), A('-'), A('_'), C('_'), +/* 13 - '=' */ '=', '+', A('='), A('='), A('+'), C('@'), +/* 14 - BS */ C('H'), C('H'), CA('H'),CA('H'),CA('H'),0177, +/* 15 - TAB */ C('I'), C('I'), CA('I'),CA('I'),CA('I'),C('I'), +/* 16 - 'q' */ L('q'), 'Q', A(233), A('q'), A(201), C('Q'), +/* 17 - 'w' */ L('w'), 'W', A(246), A('w'), A(214), C('W'), +/* 18 - 'e' */ L('e'), 'E', A(243), A('e'), A(211), C('E'), +/* 19 - 'r' */ L('r'), 'R', A(234), A('r'), A(202), C('R'), +/* 20 - 't' */ L('t'), 'T', A(229), A('t'), A(197), C('T'), +/* 21 - 'y' */ L('y'), 'Y', A(237), A('y'), A(205), C('Y'), +/* 22 - 'u' */ L('u'), 'U', A(227), A('u'), A(195), C('U'), +/* 23 - 'i' */ L('i'), 'I', A(248), A('i'), A(216), C('I'), +/* 24 - 'o' */ L('o'), 'O', A(249), A('o'), A(217), C('O'), +/* 25 - 'p' */ L('p'), 'P', A(231), A('p'), A(199), C('P'), +/* 26 - '[' */ '[', '{', A(245), A('['), A(213), C('['), +/* 27 - ']' */ ']', '}', A(250), A(']'), A(218), C(']'), +/* 28 - CR/LF */ C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J'), +/* 29 - Ctrl */ CTRL, CTRL, CTRL, CTRL, CTRL, CTRL, +/* 30 - 'a' */ L('a'), 'A', A(244), A('a'), A(212), C('A'), +/* 31 - 's' */ L('s'), 'S', A(251), A('s'), A(219), C('S'), +/* 32 - 'd' */ L('d'), 'D', A(226), A('d'), A(194), C('D'), +/* 33 - 'f' */ L('f'), 'F', A(224), A('f'), A(192), C('F'), +/* 34 - 'g' */ L('g'), 'G', A(239), A('g'), A(207), C('G'), +/* 35 - 'h' */ L('h'), 'H', A(240), A('h'), A(208), C('H'), +/* 36 - 'j' */ L('j'), 'J', A(238), A('j'), A(206), C('J'), +/* 37 - 'k' */ L('k'), 'K', A(235), A('k'), A(203), C('K'), +/* 38 - 'l' */ L('l'), 'L', A(228), A('l'), A(196), C('L'), +/* 39 - ';' */ ';', ':', A(230), A(';'), A(198), C('@'), +/* 40 - '\'' */ '\'', '"', A(253),A('\''),A(221), C('@'), +/* 41 - '`' */ '`', '~', A('`'), A('`'), A('~'), C('@'), +/* 42 - l. SHIFT*/ SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, +/* 43 - '\\' */ '\\', '|', A('\\'),A('\\'),A('|'), C('\\'), +/* 44 - 'z' */ L('z'), 'Z', A(255), A('z'), A(223), C('Z'), +/* 45 - 'x' */ L('x'), 'X', A(247), A('x'), A(215), C('X'), +/* 46 - 'c' */ L('c'), 'C', A(241), A('c'), A(209), C('C'), +/* 47 - 'v' */ L('v'), 'V', A(236), A('v'), A(204), C('V'), +/* 48 - 'b' */ L('b'), 'B', A(232), A('b'), A(200), C('B'), +/* 49 - 'n' */ L('n'), 'N', A(242), A('n'), A(210), C('N'), +/* 50 - 'm' */ L('m'), 'M', A(252), A('m'), A(220), C('M'), +/* 51 - ',' */ ',', '<', A(225), A(','), A(193), C('@'), +/* 52 - '.' */ '.', '>', A(254), A('.'), A(222), C('@'), +/* 53 - '/' */ '/', '?', A(46), A('/'), A(44), C('@'), +/* 54 - r. SHIFT*/ SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, +/* 55 - '*' */ '*', '*', A('*'), A('*'), A('*'), C('@'), +/* 56 - ALT */ ALT, ALT, ALT, ALT, ALT, ALT, +/* 57 - ' ' */ ' ', ' ', A(' '), A(' '), A(' '), C('@'), +/* 58 - CapsLck */ CALOCK, CALOCK, CALOCK, CALOCK, CALOCK, CALOCK, +/* 59 - F1 */ F1, SF1, AF1, AF1, ASF1, CF1, +/* 60 - F2 */ F2, SF2, AF2, AF2, ASF2, CF2, +/* 61 - F3 */ F3, SF3, AF3, AF3, ASF3, CF3, +/* 62 - F4 */ F4, SF4, AF4, AF4, ASF4, CF4, +/* 63 - F5 */ F5, SF5, AF5, AF5, ASF5, CF5, +/* 64 - F6 */ F6, SF6, AF6, AF6, ASF6, CF6, +/* 65 - F7 */ F7, SF7, AF7, AF7, ASF7, CF7, +/* 66 - F8 */ F8, SF8, AF8, AF8, ASF8, CF8, +/* 67 - F9 */ F9, SF9, AF9, AF9, ASF9, CF9, +/* 68 - F10 */ F10, SF10, AF10, AF10, ASF10, CF10, +/* 69 - NumLock */ NLOCK, NLOCK, NLOCK, NLOCK, NLOCK, NLOCK, +/* 70 - ScrLock */ SLOCK, SLOCK, SLOCK, SLOCK, SLOCK, SLOCK, +/* 71 - Home */ HOME, '7', AHOME, AHOME, A('7'), CHOME, +/* 72 - CurUp */ UP, '8', AUP, AUP, A('8'), CUP, +/* 73 - PgUp */ PGUP, '9', APGUP, APGUP, A('9'), CPGUP, +/* 74 - '-' */ NMIN, '-', ANMIN, ANMIN, A('-'), CNMIN, +/* 75 - Left */ LEFT, '4', ALEFT, ALEFT, A('4'), CLEFT, +/* 76 - MID */ MID, '5', AMID, AMID, A('5'), CMID, +/* 77 - Right */ RIGHT, '6', ARIGHT, ARIGHT, A('6'), CRIGHT, +/* 78 - '+' */ PLUS, '+', APLUS, APLUS, A('+'), CPLUS, +/* 79 - End */ END, '1', AEND, AEND, A('1'), CEND, +/* 80 - Down */ DOWN, '2', ADOWN, ADOWN, A('2'), CDOWN, +/* 81 - PgDown */ PGDN, '3', APGDN, APGDN, A('3'), CPGDN, +/* 82 - Insert */ INSRT, '0', AINSRT, AINSRT, A('0'), CINSRT, +/* 83 - Delete */ 0177, '.', A(0177),A(0177),A('.'), 0177, +/* 84 - Enter */ C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J'), +/* 85 - ??? */ 0, 0, 0, 0, 0, 0, +/* 86 - ??? */ '<', '>', A('<'), A('|'), A('>'), C('@'), +/* 87 - F11 */ F11, SF11, AF11, AF11, ASF11, CF11, +/* 88 - F12 */ F12, SF12, AF12, AF12, ASF12, CF12, +/* 89 - ??? */ 0, 0, 0, 0, 0, 0, +/* 90 - ??? */ 0, 0, 0, 0, 0, 0, +/* 91 - ??? */ 0, 0, 0, 0, 0, 0, +/* 92 - ??? */ 0, 0, 0, 0, 0, 0, +/* 93 - ??? */ 0, 0, 0, 0, 0, 0, +/* 94 - ??? */ 0, 0, 0, 0, 0, 0, +/* 95 - ??? */ 0, 0, 0, 0, 0, 0, +/* 96 - EXT_KEY */ EXTKEY, EXTKEY, EXTKEY, EXTKEY, EXTKEY, EXTKEY, +/* 97 - ??? */ 0, 0, 0, 0, 0, 0, +/* 98 - ??? */ 0, 0, 0, 0, 0, 0, +/* 99 - ??? */ 0, 0, 0, 0, 0, 0, +/*100 - ??? */ 0, 0, 0, 0, 0, 0, +/*101 - ??? */ 0, 0, 0, 0, 0, 0, +/*102 - ??? */ 0, 0, 0, 0, 0, 0, +/*103 - ??? */ 0, 0, 0, 0, 0, 0, +/*104 - ??? */ 0, 0, 0, 0, 0, 0, +/*105 - ??? */ 0, 0, 0, 0, 0, 0, +/*106 - ??? */ 0, 0, 0, 0, 0, 0, +/*107 - ??? */ 0, 0, 0, 0, 0, 0, +/*108 - ??? */ 0, 0, 0, 0, 0, 0, +/*109 - ??? */ 0, 0, 0, 0, 0, 0, +/*110 - ??? */ 0, 0, 0, 0, 0, 0, +/*111 - ??? */ 0, 0, 0, 0, 0, 0, +/*112 - ??? */ 0, 0, 0, 0, 0, 0, +/*113 - ??? */ 0, 0, 0, 0, 0, 0, +/*114 - ??? */ 0, 0, 0, 0, 0, 0, +/*115 - ??? */ 0, 0, 0, 0, 0, 0, +/*116 - ??? */ 0, 0, 0, 0, 0, 0, +/*117 - ??? */ 0, 0, 0, 0, 0, 0, +/*118 - ??? */ 0, 0, 0, 0, 0, 0, +/*119 - ??? */ 0, 0, 0, 0, 0, 0, +/*120 - ??? */ 0, 0, 0, 0, 0, 0, +/*121 - ??? */ 0, 0, 0, 0, 0, 0, +/*122 - ??? */ 0, 0, 0, 0, 0, 0, +/*123 - ??? */ 0, 0, 0, 0, 0, 0, +/*124 - ??? */ 0, 0, 0, 0, 0, 0, +/*125 - ??? */ 0, 0, 0, 0, 0, 0, +/*126 - ??? */ 0, 0, 0, 0, 0, 0, +/*127 - ??? */ 0, 0, 0, 0, 0, 0 diff --git a/etc/fonts/cp1251.fnt b/etc/fonts/cp1251.fnt new file mode 100755 index 0000000000000000000000000000000000000000..f07994e9901138e62d3e0d4bbc09179363122010 GIT binary patch literal 4096 zcmZu!y^9-16d#VT)gmk15+8Dt!sSBXyoBWrO#XzVNwwHv<6?`eE`ltw&xQYogR2hQ z+#is_U|8;8Ng-Sc5naSpQezHPvI?=v?|sb7uAC=(ci-o{uX!_P%s!0H-=Ckqzc@c1 z31_sM?RK-}Zl}00MFS|4zSZm}WgCssbh%tcQL6kX9YNXSAVVY)?v7!3dy54Kn40F# zpXZ{^#M_IHA1`i|KL~o?4ab0?SV(g~8esv!PkuOw0jH~b!C$|8{Sxr|a#0B(ie~9D zovHkr>VCCpHmm#U4YLn|-r%@79`u3(6;EM08d--8EeF6`_^)TP*`JRI7%%HADeAgN z!nzazep1Q=MLNWu=2LKx)PMQ{_yv)!unCpRHsY+w;+An!Rh3$2>eHero_c;iNy^eL z4>F2ZCcb=LkiSry6zd!H2cdr7l_+4H{}VZi%KD}%gWz3V+6ZpyFp9JKov0;6k(}M3 zUT2J>G?_5;30a0H6ha(@43Up8Pj{(in`Mw4yOuKrm%V~%XG2B2#z8>-X}t|qYcipV ziC~lrVGE%3DQgk0)h6&D4T8XyH#|&>aRZkJqTiqx+ZI2`fY$(RhX(o*v&fgkYVqlN z1pRQRj!PxH`xdw1vU|u{VC4-wSLcb85sxAkKJ15x&eqo$5a#pwU8Vl@DIpCxB=TEy zKuI0H6+F#v5Mgzr8`NwHV&-|V5q^`ucr|>Ly~s6Rif7rXr9ZFh{71oQC0?@M3H49;lX)5T$O7{z zMqLm5EC~arKN|ho@s~_9sC~r>yWt3*OeW1kq5jncc4LX83r@M@9BBMa{f>%vWBV_a z?GnezH<)0j$)TH9scfGxWIk0>?EcRa(>9LVgGFVAVd?g(xz94nHk!a$C~Gu;&EFwb zDj=@=n}o_5o51pu;0vtnkQXRJUK&8< zMHm`3AI5xckl=}r`;N@pdCmS&5qvztFI@{*|Lm5&JIj54us%A#>i6S#OC>ov1V@0w zYvqGicL#_u(g0e2s9^Ra?K+WnGz3DsrN%T*bwBkG>M13NyOSm`Z)SQj5RYV{Q^C*f zu_X%ejkhQfz~2J+U;!Hx}3T6Qx^yb==u=`YP}ARd2UvZ{Hus=SzTI6YQFJ zEBWi!Y7ZXm!M8tkf4^LJfB*i`{Tb7H{J7;T`A`b9-0{QJJmT&6xhPWKA1FzyDzv*X zqTR^WaqaN7U7O!%I-N>=>3D5RoKEBHZ4!()@>)mwtO|Z5&rxxp}J4Wdz9sF7BaF&Pt4*%##_lgnyb>MJo zpWk?>edjOZ&%FQEzLm!mX)yg(RV5op_1F5A*V@O!ej&eBU;W%!dF6kxILm!qk8XXw z_8#+h33yzeBIJ#3#ae}grDLv z$k5bpiK6Mz{1}5t{Bue3cp~z2e>%kV$<9wQ{b{~l==m4^)5T3ao~~BYF{q+HILh%& zAb4Fr(20*D-{Rf-#7Kl)JaX6Y`WzejxvE4T%}wDs|J?Z=dHXb+t^X3+r0ge_k7klf-(?8G0l^@`6X#uT2sIb?W4+x2}dYaDa9T;C^fC3#)p= zYukssYk|JBfa?H0&)t0vTG9edpnu_T3DE)0o|N3pDB3ar?H5Sha|4u4zOJbO77mvN X@bMwPgLZz=0_cECCy#tk0}%cnb%s8B literal 0 HcmV?d00001 -- 2.44.0