make charset characters be C null-terminated strings

This commit is contained in:
Greg Shuflin 2023-07-25 23:03:13 -07:00
parent fcf2df1c51
commit 6bc7d0b94e

View File

@ -4,222 +4,222 @@
// Character table representing the character set know as CP437 used by
// the original IBM PC - https://en.wikipedia.org/wiki/Code_page_437
pub(crate) const CHAR_TABLE: [&[u8]; 218] = [
b"!",
b"\"",
b"#",
b"$",
b"%",
b"&",
b"'",
b"(",
b")",
b"*",
b"+",
b",",
b"-",
b"~",
b".",
b"/",
b":",
b";",
b"<",
b"=",
b">",
b"?",
b"[",
b"\\",
b"]",
b"_",
b"{",
b"}",
b"A",
b"B",
b"C",
b"D",
b"E",
b"F",
b"G",
b"H",
b"I",
b"J",
b"K",
b"L",
b"M",
b"N",
b"O",
b"P",
b"Q",
b"R",
b"S",
b"T",
b"U",
b"V",
b"W",
b"X",
b"Y",
b"Z",
b"a",
b"b",
b"c",
b"d",
b"e",
b"f",
b"g",
b"h",
b"i",
b"j",
b"k",
b"l",
b"m",
b"n",
b"o",
b"p",
b"q",
b"r",
b"s",
b"t",
b"u",
b"v",
b"w",
b"x",
b"y",
b"z",
b"0",
b"1",
b"2",
b"3",
b"4",
b"5",
b"6",
b"7",
b"8",
b"9",
b"\xc3\x87",
b"\xc3\xbc",
b"\xc3\xa9",
b"\xc3\xa2",
b"\xc3\xa4",
b"\xc3\xa0",
b"\xc3\xa5",
b"\xc3\xa7",
b"\xc3\xaa",
b"\xc3\xab",
b"\xc3\xa8",
b"\xc3\xaf",
b"\xc3\xae",
b"\xc3\xac",
b"\xc3\x84",
b"\xc3\x85",
b"\xc3\x89",
b"\xc3\xa6",
b"\xc3\x86",
b"\xc3\xb4",
b"\xc3\xb6",
b"\xc3\xb2",
b"\xc3\xbb",
b"\xc3\xb9",
b"\xc3\xbf",
b"\xc3\x96",
b"\xc3\x9c",
b"\xc2\xa2",
b"\xc2\xa3",
b"\xc2\xa5",
b"\xc6\x92",
b"\xc3\xa1",
b"\xc3\xad",
b"\xc3\xb3",
b"\xc3\xba",
b"\xc3\xb1",
b"\xc3\x91",
b"\xc2\xaa",
b"\xc2\xba",
b"\xc2\xbf",
b"\xc2\xac",
b"\xc2\xbd",
b"\xc2\xbc",
b"\xc2\xa1",
b"\xc2\xab",
b"\xc2\xbb",
b"\xce\xb1",
b"\xc3\x9f",
b"\xce\x93",
b"\xcf\x80",
b"\xce\xa3",
b"\xcf\x83",
b"\xc2\xb5",
b"\xcf\x84",
b"\xce\xa6",
b"\xce\x98",
b"\xce\xa9",
b"\xce\xb4",
b"\xcf\x86",
b"\xce\xb5",
b"\xc2\xb1",
b"\xc3\xb7",
b"\xc2\xb0",
b"\xc2\xb7",
b"\xc2\xb2",
b"\xc2\xb6",
b"\xe2\x8c\x90",
b"\xe2\x82\xa7",
b"\xe2\x96\x91",
b"\xe2\x96\x92",
b"\xe2\x96\x93",
b"\xe2\x94\x82",
b"\xe2\x94\xa4",
b"\xe2\x95\xa1",
b"\xe2\x95\xa2",
b"\xe2\x95\x96",
b"\xe2\x95\x95",
b"\xe2\x95\xa3",
b"\xe2\x95\x91",
b"\xe2\x95\x97",
b"\xe2\x95\x9d",
b"\xe2\x95\x9c",
b"\xe2\x95\x9b",
b"\xe2\x94\x90",
b"\xe2\x94\x94",
b"\xe2\x94\xb4",
b"\xe2\x94\xac",
b"\xe2\x94\x9c",
b"\xe2\x94\x80",
b"\xe2\x94\xbc",
b"\xe2\x95\x9e",
b"\xe2\x95\x9f",
b"\xe2\x95\x9a",
b"\xe2\x95\x94",
b"\xe2\x95\xa9",
b"\xe2\x95\xa6",
b"\xe2\x95\xa0",
b"\xe2\x95\x90",
b"\xe2\x95\xac",
b"\xe2\x95\xa7",
b"\xe2\x95\xa8",
b"\xe2\x95\xa4",
b"\xe2\x95\xa7",
b"\xe2\x95\x99",
b"\xe2\x95\x98",
b"\xe2\x95\x92",
b"\xe2\x95\x93",
b"\xe2\x95\xab",
b"\xe2\x95\xaa",
b"\xe2\x94\x98",
b"\xe2\x94\x8c",
b"\xe2\x96\x88",
b"\xe2\x96\x84",
b"\xe2\x96\x8c",
b"\xe2\x96\x90",
b"\xe2\x96\x80",
b"\xe2\x88\x9e",
b"\xe2\x88\xa9",
b"\xe2\x89\xa1",
b"\xe2\x89\xa5",
b"\xe2\x89\xa4",
b"\xe2\x8c\xa0",
b"\xe2\x8c\xa1",
b"\xe2\x89\x88",
b"\xe2\x88\x99",
b"\xe2\x88\x9a",
b"\xe2\x81\xbf",
b"\xe2\x96\xa0",
b"!\0",
b"\"\0",
b"#\0",
b"$\0",
b"%\0",
b"&\0",
b"'\0",
b"(\0",
b")\0",
b"*\0",
b"+\0",
b",\0",
b"-\0",
b"~\0",
b".\0",
b"/\0",
b":\0",
b";\0",
b"<\0",
b"=\0",
b">\0",
b"?\0",
b"[\0",
b"\\\0",
b"]\0",
b"_\0",
b"{\0",
b"}\0",
b"A\0",
b"B\0",
b"C\0",
b"D\0",
b"E\0",
b"F\0",
b"G\0",
b"H\0",
b"I\0",
b"J\0",
b"K\0",
b"L\0",
b"M\0",
b"N\0",
b"O\0",
b"P\0",
b"Q\0",
b"R\0",
b"S\0",
b"T\0",
b"U\0",
b"V\0",
b"W\0",
b"X\0",
b"Y\0",
b"Z\0",
b"a\0",
b"b\0",
b"c\0",
b"d\0",
b"e\0",
b"f\0",
b"g\0",
b"h\0",
b"i\0",
b"j\0",
b"k\0",
b"l\0",
b"m\0",
b"n\0",
b"o\0",
b"p\0",
b"q\0",
b"r\0",
b"s\0",
b"t\0",
b"u\0",
b"v\0",
b"w\0",
b"x\0",
b"y\0",
b"z\0",
b"0\0",
b"1\0",
b"2\0",
b"3\0",
b"4\0",
b"5\0",
b"6\0",
b"7\0",
b"8\0",
b"9\0",
b"\xc3\x87\0",
b"\xc3\xbc\0",
b"\xc3\xa9\0",
b"\xc3\xa2\0",
b"\xc3\xa4\0",
b"\xc3\xa0\0",
b"\xc3\xa5\0",
b"\xc3\xa7\0",
b"\xc3\xaa\0",
b"\xc3\xab\0",
b"\xc3\xa8\0",
b"\xc3\xaf\0",
b"\xc3\xae\0",
b"\xc3\xac\0",
b"\xc3\x84\0",
b"\xc3\x85\0",
b"\xc3\x89\0",
b"\xc3\xa6\0",
b"\xc3\x86\0",
b"\xc3\xb4\0",
b"\xc3\xb6\0",
b"\xc3\xb2\0",
b"\xc3\xbb\0",
b"\xc3\xb9\0",
b"\xc3\xbf\0",
b"\xc3\x96\0",
b"\xc3\x9c\0",
b"\xc2\xa2\0",
b"\xc2\xa3\0",
b"\xc2\xa5\0",
b"\xc6\x92\0",
b"\xc3\xa1\0",
b"\xc3\xad\0",
b"\xc3\xb3\0",
b"\xc3\xba\0",
b"\xc3\xb1\0",
b"\xc3\x91\0",
b"\xc2\xaa\0",
b"\xc2\xba\0",
b"\xc2\xbf\0",
b"\xc2\xac\0",
b"\xc2\xbd\0",
b"\xc2\xbc\0",
b"\xc2\xa1\0",
b"\xc2\xab\0",
b"\xc2\xbb\0",
b"\xce\xb1\0",
b"\xc3\x9f\0",
b"\xce\x93\0",
b"\xcf\x80\0",
b"\xce\xa3\0",
b"\xcf\x83\0",
b"\xc2\xb5\0",
b"\xcf\x84\0",
b"\xce\xa6\0",
b"\xce\x98\0",
b"\xce\xa9\0",
b"\xce\xb4\0",
b"\xcf\x86\0",
b"\xce\xb5\0",
b"\xc2\xb1\0",
b"\xc3\xb7\0",
b"\xc2\xb0\0",
b"\xc2\xb7\0",
b"\xc2\xb2\0",
b"\xc2\xb6\0",
b"\xe2\x8c\x90\0",
b"\xe2\x82\xa7\0",
b"\xe2\x96\x91\0",
b"\xe2\x96\x92\0",
b"\xe2\x96\x93\0",
b"\xe2\x94\x82\0",
b"\xe2\x94\xa4\0",
b"\xe2\x95\xa1\0",
b"\xe2\x95\xa2\0",
b"\xe2\x95\x96\0",
b"\xe2\x95\x95\0",
b"\xe2\x95\xa3\0",
b"\xe2\x95\x91\0",
b"\xe2\x95\x97\0",
b"\xe2\x95\x9d\0",
b"\xe2\x95\x9c\0",
b"\xe2\x95\x9b\0",
b"\xe2\x94\x90\0",
b"\xe2\x94\x94\0",
b"\xe2\x94\xb4\0",
b"\xe2\x94\xac\0",
b"\xe2\x94\x9c\0",
b"\xe2\x94\x80\0",
b"\xe2\x94\xbc\0",
b"\xe2\x95\x9e\0",
b"\xe2\x95\x9f\0",
b"\xe2\x95\x9a\0",
b"\xe2\x95\x94\0",
b"\xe2\x95\xa9\0",
b"\xe2\x95\xa6\0",
b"\xe2\x95\xa0\0",
b"\xe2\x95\x90\0",
b"\xe2\x95\xac\0",
b"\xe2\x95\xa7\0",
b"\xe2\x95\xa8\0",
b"\xe2\x95\xa4\0",
b"\xe2\x95\xa7\0",
b"\xe2\x95\x99\0",
b"\xe2\x95\x98\0",
b"\xe2\x95\x92\0",
b"\xe2\x95\x93\0",
b"\xe2\x95\xab\0",
b"\xe2\x95\xaa\0",
b"\xe2\x94\x98\0",
b"\xe2\x94\x8c\0",
b"\xe2\x96\x88\0",
b"\xe2\x96\x84\0",
b"\xe2\x96\x8c\0",
b"\xe2\x96\x90\0",
b"\xe2\x96\x80\0",
b"\xe2\x88\x9e\0",
b"\xe2\x88\xa9\0",
b"\xe2\x89\xa1\0",
b"\xe2\x89\xa5\0",
b"\xe2\x89\xa4\0",
b"\xe2\x8c\xa0\0",
b"\xe2\x8c\xa1\0",
b"\xe2\x89\x88\0",
b"\xe2\x88\x99\0",
b"\xe2\x88\x9a\0",
b"\xe2\x81\xbf\0",
b"\xe2\x96\xa0\0",
];