diff uptools/libcoding/gsm7_decode_tables.c @ 328:978571e23318

uptools started with libcoding
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 03 Feb 2018 20:07:05 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uptools/libcoding/gsm7_decode_tables.c	Sat Feb 03 20:07:05 2018 +0000
@@ -0,0 +1,36 @@
+/*
+ * This library module contains the tables for decoding the GSM 7-bit
+ * default alphabet (03.38 or 23.038) into Unicode.
+ */
+
+#include <sys/types.h>
+
+u_short gsm7_decode_table[128] = {
+	'@',  0xA3, '$',  0xA5, 0xE8, 0xE9, 0xF9, 0xEC,
+	0xF2, 0xC7, '\n', 0xD8, 0xF8, '\r', 0xC5, 0xE5,
+	0x394,'_',  0x3A6,0x393,0x39B,0x3A9,0x3A0,0x3A8,
+	0x3A3,0x398,0x39E, 0,   0xC6, 0xE6, 0xDF, 0xC9,
+	' ',  '!',  '"',  '#',  0xA4, '%',  '&',  0x27,
+	'(',  ')',  '*',  '+',  ',',  '-',  '.',  '/',
+	'0',  '1',  '2',  '3',  '4',  '5',  '6',  '7',
+	'8',  '9',  ':',  ';',  '<',  '=',  '>',  '?',
+	0xA1, 'A',  'B',  'C',  'D',  'E',  'F',  'G',
+	'H',  'I',  'J',  'K',  'L',  'M',  'N',  'O',
+	'P',  'Q',  'R',  'S',  'T',  'U',  'V',  'W',
+	'X',  'Y',  'Z',  0xC4, 0xD6, 0xD1, 0xDC, 0xA7,
+	0xBF, 'a',  'b',  'c',  'd',  'e',  'f',  'g',
+	'h',  'i',  'j',  'k',  'l',  'm',  'n',  'o',
+	'p',  'q',  'r',  's',  't',  'u',  'v',  'w',
+	'x',  'y',  'z',  0xE4, 0xF6, 0xF1, 0xFC, 0xE0
+};
+
+u_short gsm7ext_decode_table[128] = {
+	0,   0, 0, 0, 0,   0,   0, 0, 0,   0,   '\n', 0, 0,   '\r', 0,   0,
+	0,   0, 0, 0, '^', 0,   0, 0, 0,   0,   0,    0, 0,   0,    0,   0,
+	0,   0, 0, 0, 0,   0,   0, 0, '{', '}', 0,    0, 0,   0,    0,   '\\',
+	0,   0, 0, 0, 0,   0,   0, 0, 0,   0,   0,    0, '[', '~',  ']', 0,
+	'|', 0, 0, 0, 0,   0,   0, 0, 0,   0,   0,    0, 0,   0,    0,   0,
+	0,   0, 0, 0, 0,   0,   0, 0, 0,   0,   0,    0, 0,   0,    0,   0,
+	0,   0, 0, 0, 0,0x20AC, 0, 0, 0,   0,   0,    0, 0,   0,    0,   0,
+	0,   0, 0, 0, 0,   0,   0, 0, 0,   0,   0,    0, 0,   0,    0,   0
+};