aboutsummaryrefslogtreecommitdiffstats
path: root/src/hci
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2022-02-06 19:33:20 +0000
committerMichael Brown <mcb30@ipxe.org>2022-02-10 13:59:32 +0000
commit3f05a82fec6223a49df300a9cbf80c6245c3f99e (patch)
tree992afdde95a7f1686908376ac49b4cfedb19fd52 /src/hci
parent0979b3a11ddd642b047c7e9240cefc0144c595c7 (diff)
downloadipxe-3f05a82fec6223a49df300a9cbf80c6245c3f99e.tar.gz
[console] Update genkeymap to work with current databases
Rewrite genkeymap.pl in Python with added sanity checks, and update the list of keyboard mappings to remove those no longer supported by the underlying "loadkeys" tool. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/hci')
-rw-r--r--src/hci/keymap/keymap_al.c1
-rw-r--r--src/hci/keymap/keymap_az.c2
-rw-r--r--src/hci/keymap/keymap_cz.c33
-rw-r--r--src/hci/keymap/keymap_de.c13
-rw-r--r--src/hci/keymap/keymap_dk.c4
-rw-r--r--src/hci/keymap/keymap_es.c2
-rw-r--r--src/hci/keymap/keymap_et.c1
-rw-r--r--src/hci/keymap/keymap_fi.c9
-rw-r--r--src/hci/keymap/keymap_fr.c16
-rw-r--r--src/hci/keymap/keymap_hu.c1
-rw-r--r--src/hci/keymap/keymap_il.c12
-rw-r--r--src/hci/keymap/keymap_it.c1
-rw-r--r--src/hci/keymap/keymap_mt.c2
-rw-r--r--src/hci/keymap/keymap_nl.c4
-rw-r--r--src/hci/keymap/keymap_no-latin1.c1
-rw-r--r--src/hci/keymap/keymap_no.c88
-rw-r--r--src/hci/keymap/keymap_pt.c31
-rw-r--r--src/hci/keymap/keymap_ru.c1
-rw-r--r--src/hci/keymap/keymap_sr-latin.c (renamed from src/hci/keymap/keymap_bg.c)6
-rw-r--r--src/hci/keymap/keymap_sr.c35
-rw-r--r--src/hci/keymap/keymap_th.c15
-rw-r--r--src/hci/keymap/keymap_wo.c55
22 files changed, 87 insertions, 246 deletions
diff --git a/src/hci/keymap/keymap_al.c b/src/hci/keymap/keymap_al.c
index caf295e8e..e4418361b 100644
--- a/src/hci/keymap/keymap_al.c
+++ b/src/hci/keymap/keymap_al.c
@@ -14,6 +14,7 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
struct key_mapping al_mapping[] __keymap = {
{ 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
{ 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
+ { 0x1c, 0x1d }, /* 0x1c => 0x1d */
{ 0x22, 0x7b }, /* '"' => '{' */
{ 0x27, 0x5b }, /* '\'' => '[' */
{ 0x3c, 0x3b }, /* '<' => ';' */
diff --git a/src/hci/keymap/keymap_az.c b/src/hci/keymap/keymap_az.c
index 27ce91e7d..525ab2336 100644
--- a/src/hci/keymap/keymap_az.c
+++ b/src/hci/keymap/keymap_az.c
@@ -12,7 +12,7 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "az" keyboard mapping */
struct key_mapping az_mapping[] __keymap = {
- { 0x23, 0x27 }, /* '#' => '\'' */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x24, 0x3b }, /* '$' => ';' */
{ 0x26, 0x3f }, /* '&' => '?' */
{ 0x2f, 0x2e }, /* '/' => '.' */
diff --git a/src/hci/keymap/keymap_cz.c b/src/hci/keymap/keymap_cz.c
index 9280f84fd..2b4a21592 100644
--- a/src/hci/keymap/keymap_cz.c
+++ b/src/hci/keymap/keymap_cz.c
@@ -12,16 +12,35 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "cz" keyboard mapping */
struct key_mapping cz_mapping[] __keymap = {
- { 0x21, 0x2b }, /* '!' => '+' */
+ { 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
+ { 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
+ { 0x1f, 0x1c }, /* 0x1f => 0x1c */
+ { 0x21, 0x31 }, /* '!' => '1' */
+ { 0x22, 0x21 }, /* '"' => '!' */
+ { 0x23, 0x33 }, /* '#' => '3' */
+ { 0x24, 0x34 }, /* '$' => '4' */
+ { 0x25, 0x35 }, /* '%' => '5' */
+ { 0x26, 0x37 }, /* '&' => '7' */
+ { 0x28, 0x39 }, /* '(' => '9' */
+ { 0x29, 0x30 }, /* ')' => '0' */
+ { 0x2a, 0x38 }, /* '*' => '8' */
{ 0x2d, 0x3d }, /* '-' => '=' */
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x31, 0x2b }, /* '1' => '+' */
- { 0x3c, 0x2c }, /* '<' => ',' */
- { 0x3e, 0x2e }, /* '>' => '.' */
- { 0x3f, 0x2d }, /* '?' => '-' */
+ { 0x3a, 0x22 }, /* ':' => '"' */
+ { 0x3c, 0x3f }, /* '<' => '?' */
+ { 0x3e, 0x3a }, /* '>' => ':' */
+ { 0x3f, 0x5f }, /* '?' => '_' */
+ { 0x40, 0x32 }, /* '@' => '2' */
+ { 0x59, 0x5a }, /* 'Y' => 'Z' */
+ { 0x5a, 0x59 }, /* 'Z' => 'Y' */
{ 0x5d, 0x29 }, /* ']' => ')' */
- { 0x5f, 0x3d }, /* '_' => '=' */
+ { 0x5e, 0x36 }, /* '^' => '6' */
+ { 0x5f, 0x25 }, /* '_' => '%' */
{ 0x60, 0x3b }, /* '`' => ';' */
- { 0x7d, 0x29 }, /* '}' => ')' */
- { 0x7e, 0x3b }, /* '~' => ';' */
+ { 0x79, 0x7a }, /* 'y' => 'z' */
+ { 0x7a, 0x79 }, /* 'z' => 'y' */
+ { 0x7b, 0x2f }, /* '{' => '/' */
+ { 0x7c, 0x27 }, /* '|' => '\'' */
+ { 0x7d, 0x28 }, /* '}' => '(' */
};
diff --git a/src/hci/keymap/keymap_de.c b/src/hci/keymap/keymap_de.c
index ffcf912f1..2559e1538 100644
--- a/src/hci/keymap/keymap_de.c
+++ b/src/hci/keymap/keymap_de.c
@@ -14,33 +14,26 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
struct key_mapping de_mapping[] __keymap = {
{ 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
{ 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
- { 0x22, 0x7d }, /* '"' => '}' */
+ { 0x1c, 0x23 }, /* 0x1c => '#' */
+ { 0x1d, 0x1e }, /* 0x1d => 0x1e */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x2f }, /* '&' => '/' */
- { 0x27, 0x5d }, /* '\'' => ']' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
{ 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x60 }, /* '+' => '`' */
- { 0x2d, 0x5c }, /* '-' => '\\' */
{ 0x2f, 0x2d }, /* '/' => '-' */
- { 0x3a, 0x7b }, /* ':' => '{' */
- { 0x3b, 0x5b }, /* ';' => '[' */
{ 0x3c, 0x3b }, /* '<' => ';' */
- { 0x3d, 0x27 }, /* '=' => '\'' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
{ 0x59, 0x5a }, /* 'Y' => 'Z' */
{ 0x5a, 0x59 }, /* 'Z' => 'Y' */
- { 0x5b, 0x40 }, /* '[' => '@' */
{ 0x5c, 0x23 }, /* '\\' => '#' */
{ 0x5d, 0x2b }, /* ']' => '+' */
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
- { 0x60, 0x5e }, /* '`' => '^' */
{ 0x79, 0x7a }, /* 'y' => 'z' */
{ 0x7a, 0x79 }, /* 'z' => 'y' */
- { 0x7b, 0x5c }, /* '{' => '\\' */
{ 0x7c, 0x27 }, /* '|' => '\'' */
{ 0x7d, 0x2a }, /* '}' => '*' */
};
diff --git a/src/hci/keymap/keymap_dk.c b/src/hci/keymap/keymap_dk.c
index e409018c8..05110dc89 100644
--- a/src/hci/keymap/keymap_dk.c
+++ b/src/hci/keymap/keymap_dk.c
@@ -12,11 +12,12 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "dk" keyboard mapping */
struct key_mapping dk_mapping[] __keymap = {
+ { 0x1c, 0x27 }, /* 0x1c => '\'' */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x2f }, /* '&' => '/' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
{ 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x60 }, /* '+' => '`' */
{ 0x2d, 0x2b }, /* '-' => '+' */
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x3c, 0x3b }, /* '<' => ';' */
@@ -27,5 +28,4 @@ struct key_mapping dk_mapping[] __keymap = {
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
{ 0x7c, 0x2a }, /* '|' => '*' */
- { 0x7d, 0x5e }, /* '}' => '^' */
};
diff --git a/src/hci/keymap/keymap_es.c b/src/hci/keymap/keymap_es.c
index c1fe013a9..51dedfff7 100644
--- a/src/hci/keymap/keymap_es.c
+++ b/src/hci/keymap/keymap_es.c
@@ -12,6 +12,8 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "es" keyboard mapping */
struct key_mapping es_mapping[] __keymap = {
+ { 0x1c, 0x1d }, /* 0x1c => 0x1d */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x2f }, /* '&' => '/' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
diff --git a/src/hci/keymap/keymap_et.c b/src/hci/keymap/keymap_et.c
index ad88cecc1..dd0f879b1 100644
--- a/src/hci/keymap/keymap_et.c
+++ b/src/hci/keymap/keymap_et.c
@@ -26,5 +26,4 @@ struct key_mapping et_mapping[] __keymap = {
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
{ 0x7c, 0x2a }, /* '|' => '*' */
- { 0x7f, 0x1b }, /* 0x7f => 0x1b */
};
diff --git a/src/hci/keymap/keymap_fi.c b/src/hci/keymap/keymap_fi.c
index c8f6c3a06..c489bf0e5 100644
--- a/src/hci/keymap/keymap_fi.c
+++ b/src/hci/keymap/keymap_fi.c
@@ -12,27 +12,18 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "fi" keyboard mapping */
struct key_mapping fi_mapping[] __keymap = {
- { 0x22, 0x5b }, /* '"' => '[' */
{ 0x26, 0x2f }, /* '&' => '/' */
- { 0x27, 0x7b }, /* '\'' => '{' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
{ 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x60 }, /* '+' => '`' */
{ 0x2d, 0x2b }, /* '-' => '+' */
{ 0x2f, 0x2d }, /* '/' => '-' */
- { 0x3a, 0x5c }, /* ':' => '\\' */
- { 0x3b, 0x7c }, /* ';' => '|' */
{ 0x3c, 0x3b }, /* '<' => ';' */
- { 0x3d, 0x27 }, /* '=' => '\'' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
- { 0x5b, 0x7d }, /* '[' => '}' */
{ 0x5c, 0x27 }, /* '\\' => '\'' */
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
- { 0x7b, 0x5d }, /* '{' => ']' */
{ 0x7c, 0x2a }, /* '|' => '*' */
- { 0x7d, 0x5e }, /* '}' => '^' */
};
diff --git a/src/hci/keymap/keymap_fr.c b/src/hci/keymap/keymap_fr.c
index fd615a456..8f3b4999d 100644
--- a/src/hci/keymap/keymap_fr.c
+++ b/src/hci/keymap/keymap_fr.c
@@ -16,13 +16,16 @@ struct key_mapping fr_mapping[] __keymap = {
{ 0x11, 0x01 }, /* Ctrl-Q => Ctrl-A */
{ 0x17, 0x1a }, /* Ctrl-W => Ctrl-Z */
{ 0x1a, 0x17 }, /* Ctrl-Z => Ctrl-W */
+ { 0x1c, 0x2a }, /* 0x1c => '*' */
+ { 0x1d, 0x24 }, /* 0x1d => '$' */
+ { 0x1e, 0x1c }, /* 0x1e => 0x1c */
+ { 0x1f, 0x1d }, /* 0x1f => 0x1d */
{ 0x21, 0x31 }, /* '!' => '1' */
{ 0x22, 0x25 }, /* '"' => '%' */
{ 0x23, 0x33 }, /* '#' => '3' */
{ 0x24, 0x34 }, /* '$' => '4' */
{ 0x25, 0x35 }, /* '%' => '5' */
{ 0x26, 0x37 }, /* '&' => '7' */
- { 0x27, 0x7c }, /* '\'' => '|' */
{ 0x28, 0x39 }, /* '(' => '9' */
{ 0x29, 0x30 }, /* ')' => '0' */
{ 0x2a, 0x38 }, /* '*' => '8' */
@@ -30,39 +33,28 @@ struct key_mapping fr_mapping[] __keymap = {
{ 0x2d, 0x29 }, /* '-' => ')' */
{ 0x2e, 0x3a }, /* '.' => ':' */
{ 0x2f, 0x21 }, /* '/' => '!' */
- { 0x30, 0x40 }, /* '0' => '@' */
{ 0x31, 0x26 }, /* '1' => '&' */
- { 0x32, 0x7b }, /* '2' => '{' */
{ 0x33, 0x22 }, /* '3' => '"' */
{ 0x34, 0x27 }, /* '4' => '\'' */
{ 0x35, 0x28 }, /* '5' => '(' */
{ 0x36, 0x2d }, /* '6' => '-' */
- { 0x37, 0x7d }, /* '7' => '}' */
{ 0x38, 0x5f }, /* '8' => '_' */
- { 0x39, 0x2f }, /* '9' => '/' */
{ 0x3a, 0x4d }, /* ':' => 'M' */
{ 0x3b, 0x6d }, /* ';' => 'm' */
{ 0x3c, 0x2e }, /* '<' => '.' */
{ 0x3e, 0x2f }, /* '>' => '/' */
- { 0x3f, 0x5c }, /* '?' => '\\' */
{ 0x40, 0x32 }, /* '@' => '2' */
{ 0x41, 0x51 }, /* 'A' => 'Q' */
{ 0x4d, 0x3f }, /* 'M' => '?' */
{ 0x51, 0x41 }, /* 'Q' => 'A' */
{ 0x57, 0x5a }, /* 'W' => 'Z' */
{ 0x5a, 0x57 }, /* 'Z' => 'W' */
- { 0x5b, 0x5e }, /* '[' => '^' */
{ 0x5c, 0x2a }, /* '\\' => '*' */
{ 0x5d, 0x24 }, /* ']' => '$' */
{ 0x5e, 0x36 }, /* '^' => '6' */
- { 0x5f, 0x5d }, /* '_' => ']' */
- { 0x60, 0x2a }, /* '`' => '*' */
{ 0x61, 0x71 }, /* 'a' => 'q' */
{ 0x6d, 0x2c }, /* 'm' => ',' */
{ 0x71, 0x61 }, /* 'q' => 'a' */
{ 0x77, 0x7a }, /* 'w' => 'z' */
{ 0x7a, 0x77 }, /* 'z' => 'w' */
- { 0x7b, 0x3c }, /* '{' => '<' */
- { 0x7c, 0x23 }, /* '|' => '#' */
- { 0x7d, 0x3e }, /* '}' => '>' */
};
diff --git a/src/hci/keymap/keymap_hu.c b/src/hci/keymap/keymap_hu.c
index 68eff2f4c..a2eadbc62 100644
--- a/src/hci/keymap/keymap_hu.c
+++ b/src/hci/keymap/keymap_hu.c
@@ -14,6 +14,7 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
struct key_mapping hu_mapping[] __keymap = {
{ 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
{ 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x21, 0x27 }, /* '!' => '\'' */
{ 0x23, 0x2b }, /* '#' => '+' */
{ 0x24, 0x21 }, /* '$' => '!' */
diff --git a/src/hci/keymap/keymap_il.c b/src/hci/keymap/keymap_il.c
index 478330c0c..f631f7ac9 100644
--- a/src/hci/keymap/keymap_il.c
+++ b/src/hci/keymap/keymap_il.c
@@ -12,4 +12,16 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "il" keyboard mapping */
struct key_mapping il_mapping[] __keymap = {
+ { 0x1d, 0x1b }, /* 0x1d => 0x1b */
+ { 0x27, 0x2c }, /* '\'' => ',' */
+ { 0x28, 0x29 }, /* '(' => ')' */
+ { 0x29, 0x28 }, /* ')' => '(' */
+ { 0x2f, 0x2e }, /* '/' => '.' */
+ { 0x3c, 0x3e }, /* '<' => '>' */
+ { 0x3e, 0x3c }, /* '>' => '<' */
+ { 0x5b, 0x5d }, /* '[' => ']' */
+ { 0x5d, 0x5b }, /* ']' => '[' */
+ { 0x60, 0x3b }, /* '`' => ';' */
+ { 0x7b, 0x7d }, /* '{' => '}' */
+ { 0x7d, 0x7b }, /* '}' => '{' */
};
diff --git a/src/hci/keymap/keymap_it.c b/src/hci/keymap/keymap_it.c
index 5bb05471c..d96102c9e 100644
--- a/src/hci/keymap/keymap_it.c
+++ b/src/hci/keymap/keymap_it.c
@@ -12,6 +12,7 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "it" keyboard mapping */
struct key_mapping it_mapping[] __keymap = {
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x2f }, /* '&' => '/' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
diff --git a/src/hci/keymap/keymap_mt.c b/src/hci/keymap/keymap_mt.c
index 094a6fc60..dfca2ff66 100644
--- a/src/hci/keymap/keymap_mt.c
+++ b/src/hci/keymap/keymap_mt.c
@@ -12,8 +12,8 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "mt" keyboard mapping */
struct key_mapping mt_mapping[] __keymap = {
+ { 0x1c, 0x1e }, /* 0x1c => 0x1e */
{ 0x22, 0x40 }, /* '"' => '@' */
- { 0x23, 0x04 }, /* '#' => Ctrl-D */
{ 0x40, 0x22 }, /* '@' => '"' */
{ 0x5c, 0x23 }, /* '\\' => '#' */
{ 0x7c, 0x7e }, /* '|' => '~' */
diff --git a/src/hci/keymap/keymap_nl.c b/src/hci/keymap/keymap_nl.c
index ba051705e..2a0fbbcbd 100644
--- a/src/hci/keymap/keymap_nl.c
+++ b/src/hci/keymap/keymap_nl.c
@@ -12,11 +12,13 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "nl" keyboard mapping */
struct key_mapping nl_mapping[] __keymap = {
+ { 0x1c, 0x3c }, /* 0x1c => '<' */
+ { 0x1d, 0x1c }, /* 0x1d => 0x1c */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x5f }, /* '&' => '_' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x27 }, /* ')' => '\'' */
{ 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x7e }, /* '+' => '~' */
{ 0x2d, 0x2f }, /* '-' => '/' */
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x3b, 0x2b }, /* ';' => '+' */
diff --git a/src/hci/keymap/keymap_no-latin1.c b/src/hci/keymap/keymap_no-latin1.c
index 8c3e81b31..655e4cef7 100644
--- a/src/hci/keymap/keymap_no-latin1.c
+++ b/src/hci/keymap/keymap_no-latin1.c
@@ -12,6 +12,7 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "no-latin1" keyboard mapping */
struct key_mapping no_latin1_mapping[] __keymap = {
+ { 0x1d, 0x1e }, /* 0x1d => 0x1e */
{ 0x26, 0x2f }, /* '&' => '/' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
diff --git a/src/hci/keymap/keymap_no.c b/src/hci/keymap/keymap_no.c
index 45cf9e847..7a2df7c5a 100644
--- a/src/hci/keymap/keymap_no.c
+++ b/src/hci/keymap/keymap_no.c
@@ -12,94 +12,22 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "no" keyboard mapping */
struct key_mapping no_mapping[] __keymap = {
- { 0x02, 0x18 }, /* Ctrl-B => Ctrl-X */
- { 0x03, 0x0a }, /* Ctrl-C => Ctrl-J */
- { 0x04, 0x05 }, /* Ctrl-D => Ctrl-E */
- { 0x06, 0x15 }, /* Ctrl-F => Ctrl-U */
- { 0x07, 0x09 }, /* Ctrl-G => Ctrl-I */
- { 0x08, 0x04 }, /* Ctrl-H => Ctrl-D */
- { 0x0a, 0x08 }, /* Ctrl-J => Ctrl-H */
- { 0x0b, 0x14 }, /* Ctrl-K => Ctrl-T */
- { 0x0c, 0x0e }, /* Ctrl-L => Ctrl-N */
- { 0x0e, 0x02 }, /* Ctrl-N => Ctrl-B */
- { 0x0f, 0x12 }, /* Ctrl-O => Ctrl-R */
- { 0x10, 0x0c }, /* Ctrl-P => Ctrl-L */
- { 0x12, 0x10 }, /* Ctrl-R => Ctrl-P */
- { 0x13, 0x0f }, /* Ctrl-S => Ctrl-O */
- { 0x14, 0x19 }, /* Ctrl-T => Ctrl-Y */
- { 0x15, 0x07 }, /* Ctrl-U => Ctrl-G */
- { 0x16, 0x0b }, /* Ctrl-V => Ctrl-K */
- { 0x18, 0x11 }, /* Ctrl-X => Ctrl-Q */
- { 0x19, 0x06 }, /* Ctrl-Y => Ctrl-F */
- { 0x22, 0x5f }, /* '"' => '_' */
+ { 0x1c, 0x27 }, /* 0x1c => '\'' */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
{ 0x26, 0x2f }, /* '&' => '/' */
- { 0x27, 0x2d }, /* '\'' => '-' */
{ 0x28, 0x29 }, /* '(' => ')' */
{ 0x29, 0x3d }, /* ')' => '=' */
{ 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x60 }, /* '+' => '`' */
- { 0x2c, 0x77 }, /* ',' => 'w' */
{ 0x2d, 0x2b }, /* '-' => '+' */
- { 0x2e, 0x76 }, /* '.' => 'v' */
- { 0x2f, 0x7a }, /* '/' => 'z' */
- { 0x3a, 0x53 }, /* ':' => 'S' */
- { 0x3b, 0x73 }, /* ';' => 's' */
- { 0x3c, 0x57 }, /* '<' => 'W' */
+ { 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3d, 0x5c }, /* '=' => '\\' */
- { 0x3e, 0x56 }, /* '>' => 'V' */
- { 0x3f, 0x5a }, /* '?' => 'Z' */
+ { 0x3e, 0x3a }, /* '>' => ':' */
+ { 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
- { 0x42, 0x58 }, /* 'B' => 'X' */
- { 0x43, 0x4a }, /* 'C' => 'J' */
- { 0x44, 0x45 }, /* 'D' => 'E' */
- { 0x45, 0x3a }, /* 'E' => ':' */
- { 0x46, 0x55 }, /* 'F' => 'U' */
- { 0x47, 0x49 }, /* 'G' => 'I' */
- { 0x48, 0x44 }, /* 'H' => 'D' */
- { 0x49, 0x43 }, /* 'I' => 'C' */
- { 0x4a, 0x48 }, /* 'J' => 'H' */
- { 0x4b, 0x54 }, /* 'K' => 'T' */
- { 0x4c, 0x4e }, /* 'L' => 'N' */
- { 0x4e, 0x42 }, /* 'N' => 'B' */
- { 0x4f, 0x52 }, /* 'O' => 'R' */
- { 0x50, 0x4c }, /* 'P' => 'L' */
- { 0x52, 0x50 }, /* 'R' => 'P' */
- { 0x53, 0x4f }, /* 'S' => 'O' */
- { 0x54, 0x59 }, /* 'T' => 'Y' */
- { 0x55, 0x47 }, /* 'U' => 'G' */
- { 0x56, 0x4b }, /* 'V' => 'K' */
- { 0x57, 0x3b }, /* 'W' => ';' */
- { 0x58, 0x51 }, /* 'X' => 'Q' */
- { 0x59, 0x46 }, /* 'Y' => 'F' */
- { 0x5b, 0x27 }, /* '[' => '\'' */
- { 0x5c, 0x3c }, /* '\\' => '<' */
- { 0x5d, 0x7e }, /* ']' => '~' */
+ { 0x5c, 0x27 }, /* '\\' => '\'' */
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
{ 0x60, 0x7c }, /* '`' => '|' */
- { 0x62, 0x78 }, /* 'b' => 'x' */
- { 0x63, 0x6a }, /* 'c' => 'j' */
- { 0x64, 0x65 }, /* 'd' => 'e' */
- { 0x65, 0x2e }, /* 'e' => '.' */
- { 0x66, 0x75 }, /* 'f' => 'u' */
- { 0x67, 0x69 }, /* 'g' => 'i' */
- { 0x68, 0x64 }, /* 'h' => 'd' */
- { 0x69, 0x63 }, /* 'i' => 'c' */
- { 0x6a, 0x68 }, /* 'j' => 'h' */
- { 0x6b, 0x74 }, /* 'k' => 't' */
- { 0x6c, 0x6e }, /* 'l' => 'n' */
- { 0x6e, 0x62 }, /* 'n' => 'b' */
- { 0x6f, 0x72 }, /* 'o' => 'r' */
- { 0x70, 0x6c }, /* 'p' => 'l' */
- { 0x72, 0x70 }, /* 'r' => 'p' */
- { 0x73, 0x6f }, /* 's' => 'o' */
- { 0x74, 0x79 }, /* 't' => 'y' */
- { 0x75, 0x67 }, /* 'u' => 'g' */
- { 0x76, 0x6b }, /* 'v' => 'k' */
- { 0x77, 0x2c }, /* 'w' => ',' */
- { 0x78, 0x71 }, /* 'x' => 'q' */
- { 0x79, 0x66 }, /* 'y' => 'f' */
- { 0x7b, 0x2a }, /* '{' => '*' */
- { 0x7c, 0x3e }, /* '|' => '>' */
- { 0x7d, 0x5e }, /* '}' => '^' */
+ { 0x7c, 0x2a }, /* '|' => '*' */
};
diff --git a/src/hci/keymap/keymap_pt.c b/src/hci/keymap/keymap_pt.c
index a8e44b6a3..b993902af 100644
--- a/src/hci/keymap/keymap_pt.c
+++ b/src/hci/keymap/keymap_pt.c
@@ -12,18 +12,21 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "pt" keyboard mapping */
struct key_mapping pt_mapping[] __keymap = {
- { 0x1c, 0x1d }, /* 0x1c => 0x1d */
- { 0x1d, 0x1b }, /* 0x1d => 0x1b */
- { 0x22, 0x5e }, /* '"' => '^' */
- { 0x27, 0x7e }, /* '\'' => '~' */
- { 0x2f, 0x3b }, /* '/' => ';' */
- { 0x3f, 0x3a }, /* '?' => ':' */
- { 0x5b, 0x27 }, /* '[' => '\'' */
- { 0x5c, 0x5d }, /* '\\' => ']' */
- { 0x5d, 0x5b }, /* ']' => '[' */
- { 0x60, 0x27 }, /* '`' => '\'' */
- { 0x7b, 0x60 }, /* '{' => '`' */
- { 0x7c, 0x7d }, /* '|' => '}' */
- { 0x7d, 0x7b }, /* '}' => '{' */
- { 0x7e, 0x22 }, /* '~' => '"' */
+ { 0x1e, 0x36 }, /* 0x1e => '6' */
+ { 0x26, 0x2f }, /* '&' => '/' */
+ { 0x28, 0x29 }, /* '(' => ')' */
+ { 0x29, 0x3d }, /* ')' => '=' */
+ { 0x2a, 0x28 }, /* '*' => '(' */
+ { 0x2d, 0x27 }, /* '-' => '\'' */
+ { 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
+ { 0x3e, 0x3a }, /* '>' => ':' */
+ { 0x3f, 0x5f }, /* '?' => '_' */
+ { 0x40, 0x22 }, /* '@' => '"' */
+ { 0x5b, 0x2b }, /* '[' => '+' */
+ { 0x5e, 0x26 }, /* '^' => '&' */
+ { 0x5f, 0x3f }, /* '_' => '?' */
+ { 0x60, 0x5c }, /* '`' => '\\' */
+ { 0x7b, 0x2a }, /* '{' => '*' */
+ { 0x7e, 0x7c }, /* '~' => '|' */
};
diff --git a/src/hci/keymap/keymap_ru.c b/src/hci/keymap/keymap_ru.c
index 422b6c69f..c120ffd82 100644
--- a/src/hci/keymap/keymap_ru.c
+++ b/src/hci/keymap/keymap_ru.c
@@ -12,4 +12,5 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "ru" keyboard mapping */
struct key_mapping ru_mapping[] __keymap = {
+ { 0x0d, 0x0a }, /* Ctrl-M => Ctrl-J */
};
diff --git a/src/hci/keymap/keymap_bg.c b/src/hci/keymap/keymap_sr-latin.c
index 62b6baeac..9d76e8a6c 100644
--- a/src/hci/keymap/keymap_bg.c
+++ b/src/hci/keymap/keymap_sr-latin.c
@@ -1,6 +1,6 @@
/** @file
*
- * "bg" keyboard mapping
+ * "sr-latin" keyboard mapping
*
* This file is automatically generated; do not edit
*
@@ -10,6 +10,6 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
#include <ipxe/keymap.h>
-/** "bg" keyboard mapping */
-struct key_mapping bg_mapping[] __keymap = {
+/** "sr-latin" keyboard mapping */
+struct key_mapping sr_latin_mapping[] __keymap = {
};
diff --git a/src/hci/keymap/keymap_sr.c b/src/hci/keymap/keymap_sr.c
deleted file mode 100644
index 0552f4d90..000000000
--- a/src/hci/keymap/keymap_sr.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/** @file
- *
- * "sr" keyboard mapping
- *
- * This file is automatically generated; do not edit
- *
- */
-
-FILE_LICENCE ( PUBLIC_DOMAIN );
-
-#include <ipxe/keymap.h>
-
-/** "sr" keyboard mapping */
-struct key_mapping sr_mapping[] __keymap = {
- { 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
- { 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
- { 0x26, 0x2f }, /* '&' => '/' */
- { 0x28, 0x29 }, /* '(' => ')' */
- { 0x29, 0x3d }, /* ')' => '=' */
- { 0x2a, 0x28 }, /* '*' => '(' */
- { 0x2b, 0x2a }, /* '+' => '*' */
- { 0x2d, 0x27 }, /* '-' => '\'' */
- { 0x2f, 0x2d }, /* '/' => '-' */
- { 0x3c, 0x3b }, /* '<' => ';' */
- { 0x3d, 0x2b }, /* '=' => '+' */
- { 0x3e, 0x3a }, /* '>' => ':' */
- { 0x3f, 0x5f }, /* '?' => '_' */
- { 0x40, 0x22 }, /* '@' => '"' */
- { 0x59, 0x5a }, /* 'Y' => 'Z' */
- { 0x5a, 0x59 }, /* 'Z' => 'Y' */
- { 0x5e, 0x26 }, /* '^' => '&' */
- { 0x5f, 0x3f }, /* '_' => '?' */
- { 0x79, 0x7a }, /* 'y' => 'z' */
- { 0x7a, 0x79 }, /* 'z' => 'y' */
-};
diff --git a/src/hci/keymap/keymap_th.c b/src/hci/keymap/keymap_th.c
deleted file mode 100644
index e8b44d1ed..000000000
--- a/src/hci/keymap/keymap_th.c
+++ /dev/null
@@ -1,15 +0,0 @@
-/** @file
- *
- * "th" keyboard mapping
- *
- * This file is automatically generated; do not edit
- *
- */
-
-FILE_LICENCE ( PUBLIC_DOMAIN );
-
-#include <ipxe/keymap.h>
-
-/** "th" keyboard mapping */
-struct key_mapping th_mapping[] __keymap = {
-};
diff --git a/src/hci/keymap/keymap_wo.c b/src/hci/keymap/keymap_wo.c
deleted file mode 100644
index b45357612..000000000
--- a/src/hci/keymap/keymap_wo.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/** @file
- *
- * "wo" keyboard mapping
- *
- * This file is automatically generated; do not edit
- *
- */
-
-FILE_LICENCE ( PUBLIC_DOMAIN );
-
-#include <ipxe/keymap.h>
-
-/** "wo" keyboard mapping */
-struct key_mapping wo_mapping[] __keymap = {
- { 0x01, 0x11 }, /* Ctrl-A => Ctrl-Q */
- { 0x11, 0x01 }, /* Ctrl-Q => Ctrl-A */
- { 0x17, 0x1a }, /* Ctrl-W => Ctrl-Z */
- { 0x1a, 0x17 }, /* Ctrl-Z => Ctrl-W */
- { 0x21, 0x31 }, /* '!' => '1' */
- { 0x23, 0x33 }, /* '#' => '3' */
- { 0x24, 0x34 }, /* '$' => '4' */
- { 0x25, 0x35 }, /* '%' => '5' */
- { 0x26, 0x37 }, /* '&' => '7' */
- { 0x28, 0x39 }, /* '(' => '9' */
- { 0x29, 0x30 }, /* ')' => '0' */
- { 0x2a, 0x38 }, /* '*' => '8' */
- { 0x2c, 0x3b }, /* ',' => ';' */
- { 0x2d, 0x29 }, /* '-' => ')' */
- { 0x2e, 0x3a }, /* '.' => ':' */
- { 0x2f, 0x21 }, /* '/' => '!' */
- { 0x31, 0x26 }, /* '1' => '&' */
- { 0x33, 0x22 }, /* '3' => '"' */
- { 0x34, 0x27 }, /* '4' => '\'' */
- { 0x35, 0x28 }, /* '5' => '(' */
- { 0x36, 0x2d }, /* '6' => '-' */
- { 0x38, 0x5f }, /* '8' => '_' */
- { 0x3a, 0x4d }, /* ':' => 'M' */
- { 0x3b, 0x6d }, /* ';' => 'm' */
- { 0x3c, 0x2e }, /* '<' => '.' */
- { 0x3e, 0x2f }, /* '>' => '/' */
- { 0x40, 0x32 }, /* '@' => '2' */
- { 0x41, 0x51 }, /* 'A' => 'Q' */
- { 0x4d, 0x3f }, /* 'M' => '?' */
- { 0x51, 0x41 }, /* 'Q' => 'A' */
- { 0x57, 0x5a }, /* 'W' => 'Z' */
- { 0x5a, 0x57 }, /* 'Z' => 'W' */
- { 0x5d, 0x24 }, /* ']' => '$' */
- { 0x5e, 0x36 }, /* '^' => '6' */
- { 0x61, 0x71 }, /* 'a' => 'q' */
- { 0x6d, 0x2c }, /* 'm' => ',' */
- { 0x71, 0x61 }, /* 'q' => 'a' */
- { 0x77, 0x7a }, /* 'w' => 'z' */
- { 0x7a, 0x77 }, /* 'z' => 'w' */
- { 0x7e, 0x25 }, /* '~' => '%' */
-};