From b0c376bd37ca6ba976435b79f025454358ac7d2f Mon Sep 17 00:00:00 2001
From: Redo <a509dcfc@cock.li>
Date: Tue, 16 Apr 2019 19:34:03 -0500
Subject: [PATCH] added keyboard global function

---
 bricks/inputs/keyboard-global.lua | 111 ++++++++++++++++++++++++++++++
 1 file changed, 111 insertions(+)
 create mode 100644 bricks/inputs/keyboard-global.lua

diff --git a/bricks/inputs/keyboard-global.lua b/bricks/inputs/keyboard-global.lua
new file mode 100644
index 0000000..da58d81
--- /dev/null
+++ b/bricks/inputs/keyboard-global.lua
@@ -0,0 +1,111 @@
+
+
+keyboard_strToBool = {
+	["0"] = false,
+	["1"] = true,
+}
+
+--Key codes may use only 7 bits, so values must be in range 00-7F
+
+keyboard_keyToCode = {
+	["backspace"]     = 0x01,
+	["tab"]           = 0x02,
+	["return"]        = 0x03,
+	["space"]         = 0x04,
+	["end"]           = 0x05,
+	["home"]          = 0x06,
+	["left"]          = 0x07,
+	["up"]            = 0x08,
+	["right"]         = 0x09,
+	["down"]          = 0x0A,
+	["insert"]        = 0x0B,
+	["delete"]        = 0x0C,
+	
+	["0"]             = 0x10,
+	["1"]             = 0x11,
+	["2"]             = 0x12,
+	["3"]             = 0x13,
+	["4"]             = 0x14,
+	["5"]             = 0x15,
+	["6"]             = 0x16,
+	["7"]             = 0x17,
+	["8"]             = 0x18,
+	["9"]             = 0x19,
+	
+	["a"]             = 0x1A,
+	["b"]             = 0x1B,
+	["c"]             = 0x1C,
+	["d"]             = 0x1D,
+	["e"]             = 0x1E,
+	["f"]             = 0x1F,
+	["g"]             = 0x20,
+	["h"]             = 0x21,
+	["i"]             = 0x22,
+	["j"]             = 0x23,
+	["k"]             = 0x24,
+	["l"]             = 0x25,
+	["m"]             = 0x26,
+	["n"]             = 0x27,
+	["o"]             = 0x28,
+	["p"]             = 0x29,
+	["q"]             = 0x2A,
+	["r"]             = 0x2B,
+	["s"]             = 0x2C,
+	["t"]             = 0x2D,
+	["u"]             = 0x2E,
+	["v"]             = 0x2F,
+	["w"]             = 0x30,
+	["x"]             = 0x31,
+	["y"]             = 0x32,
+	["z"]             = 0x33,
+	
+	["numpad0"]       = 0x40,
+	["numpad1"]       = 0x41,
+	["numpad2"]       = 0x42,
+	["numpad3"]       = 0x43,
+	["numpad4"]       = 0x44,
+	["numpad5"]       = 0x45,
+	["numpad6"]       = 0x46,
+	["numpad7"]       = 0x47,
+	["numpad8"]       = 0x48,
+	["numpad9"]       = 0x49,
+	["*"]             = 0x4A,
+	["+"]             = 0x4B,
+	["numpadenter"]   = 0x4C,
+	["minus"]         = 0x4D,
+	["numpaddecimal"] = 0x4E,
+	["/"]             = 0x4F,
+	
+	["f1"]            = 0x51,
+	["f2"]            = 0x52,
+	["f3"]            = 0x53,
+	["f4"]            = 0x54,
+	["f5"]            = 0x55,
+	["f6"]            = 0x56,
+	["f7"]            = 0x57,
+	["f8"]            = 0x58,
+	["f9"]            = 0x59,
+	["f10"]           = 0x5A,
+	["f11"]           = 0x5B,
+	["f12"]           = 0x5C,
+	
+	["lshift"]        = 0x60,
+	["rshift"]        = 0x61,
+	["lcontrol"]      = 0x62,
+	["rcontrol"]      = 0x63,
+	["lalt"]          = 0x64,
+	["ralt"]          = 0x65,
+	
+	[";"]             = 0x70,
+	[","]             = 0x71,
+	["."]             = 0x72,
+	["/"]             = 0x73,
+	["`"]             = 0x74,
+	["["]             = 0x75,
+	["\\"]            = 0x76,
+	["]"]             = 0x77,
+	[" ="]            = 0x78,
+	["apostrophe"]    = 0x79,
+	
+	["invalid"]       = 0x7F,
+}