532 lines
9.9 KiB
C
532 lines
9.9 KiB
C
|
/*************************************************************************
|
||
|
This file contains the character tables used by the sorters throughout the
|
||
|
compiler and runtime to ensure support for international characters in the
|
||
|
ASCII set and consistency between the runtime and compiler. -- MATTSMI
|
||
|
**************************************************************************/
|
||
|
|
||
|
/* note: this scheme does not handle ligatures properly
|
||
|
e.g. 'ae' is treated as if it were just an 'a'. */
|
||
|
|
||
|
unsigned char mpchordNorm[] =
|
||
|
{
|
||
|
0x00, /* 0x00 */
|
||
|
0x01, /* 0x01 */
|
||
|
0x02, /* 0x02 */
|
||
|
0x03, /* 0x03 */
|
||
|
0x04, /* 0x04 */
|
||
|
0x05, /* 0x05 */
|
||
|
0x06, /* 0x06 */
|
||
|
0x07, /* 0x07 */
|
||
|
0x08, /* 0x08 */
|
||
|
0x09, /* 0x09 */
|
||
|
0x0A, /* 0x0A */
|
||
|
0x0B, /* 0x0B */
|
||
|
0x0C, /* 0x0C */
|
||
|
0x0D, /* 0x0D */
|
||
|
0x0E, /* 0x0E */
|
||
|
0x0F, /* 0x0F */
|
||
|
0x10, /* 0x10 */
|
||
|
0x11, /* 0x11 */
|
||
|
0x12, /* 0x12 */
|
||
|
0x13, /* 0x13 */
|
||
|
0x14, /* 0x14 */
|
||
|
0x15, /* 0x15 */
|
||
|
0x16, /* 0x16 */
|
||
|
0x17, /* 0x17 */
|
||
|
0x18, /* 0x18 */
|
||
|
0x19, /* 0x19 */
|
||
|
0x1A, /* 0x1A */
|
||
|
0x1B, /* 0x1B */
|
||
|
0x1C, /* 0x1C */
|
||
|
0x1D, /* 0x1D */
|
||
|
0x1E, /* 0x1E */
|
||
|
0x1F, /* 0x1F */
|
||
|
0x20, /* ' ' */
|
||
|
0x21, /* '!' */
|
||
|
0x22, /* '"' */
|
||
|
0x23, /* '#' */
|
||
|
0x24, /* '$' */
|
||
|
0x25, /* '%' */
|
||
|
0x26, /* '&' */
|
||
|
0x27, /* ''' */
|
||
|
0x28, /* '(' */
|
||
|
0x29, /* ')' */
|
||
|
0x2A, /* '*' */
|
||
|
0x2B, /* '+' */
|
||
|
0x2C, /* ',' */
|
||
|
0x2D, /* '-' */
|
||
|
0x2E, /* '.' */
|
||
|
0x2F, /* '/' */
|
||
|
0x82, /* '0' */
|
||
|
0x83, /* '1' */
|
||
|
0x84, /* '2' */
|
||
|
0x85, /* '3' */
|
||
|
0x86, /* '4' */
|
||
|
0x87, /* '5' */
|
||
|
0x88, /* '6' */
|
||
|
0x89, /* '7' */
|
||
|
0x8A, /* '8' */
|
||
|
0x8B, /* '9' */
|
||
|
0x30, /* ':' */
|
||
|
0x31, /* ';' */
|
||
|
0x32, /* '<' */
|
||
|
0x33, /* '=' */
|
||
|
0x34, /* '>' */
|
||
|
0x35, /* '?' */
|
||
|
0x36, /* '@' */
|
||
|
0x8D, /* 'A' */
|
||
|
0x8F, /* 'B' */
|
||
|
0x91, /* 'C' */
|
||
|
0x93, /* 'D' */
|
||
|
0x95, /* 'E' */
|
||
|
0x97, /* 'F' */
|
||
|
0x99, /* 'G' */
|
||
|
0x9B, /* 'H' */
|
||
|
0x9D, /* 'I' */
|
||
|
0x9F, /* 'J' */
|
||
|
0xA1, /* 'K' */
|
||
|
0xA3, /* 'L' */
|
||
|
0xA5, /* 'M' */
|
||
|
0xA7, /* 'N' */
|
||
|
0xAB, /* 'O' */
|
||
|
0xAD, /* 'P' */
|
||
|
0xAF, /* 'Q' */
|
||
|
0xB1, /* 'R' */
|
||
|
0xB3, /* 'S' */
|
||
|
0xB6, /* 'T' */
|
||
|
0xB8, /* 'U' */
|
||
|
0xBA, /* 'V' */
|
||
|
0xBC, /* 'W' */
|
||
|
0xBE, /* 'X' */
|
||
|
0xC1, /* 'Y' */
|
||
|
0xC5, /* 'Z' */
|
||
|
0x37, /* '[' */
|
||
|
0x38, /* '\' */
|
||
|
0x39, /* ']' */
|
||
|
0x3A, /* '^' */
|
||
|
0x3B, /* '_' */
|
||
|
0x3C, /* '`' */
|
||
|
0x8D, /* 'a' */
|
||
|
0x8F, /* 'b' */
|
||
|
0x91, /* 'c' */
|
||
|
0x93, /* 'd' */
|
||
|
0x95, /* 'e' */
|
||
|
0x97, /* 'f' */
|
||
|
0x99, /* 'g' */
|
||
|
0x9B, /* 'h' */
|
||
|
0x9D, /* 'i' */
|
||
|
0x9F, /* 'j' */
|
||
|
0xA1, /* 'k' */
|
||
|
0xA3, /* 'l' */
|
||
|
0xA5, /* 'm' */
|
||
|
0xA7, /* 'n' */
|
||
|
0xAB, /* 'o' */
|
||
|
0xAD, /* 'p' */
|
||
|
0xAF, /* 'q' */
|
||
|
0xB1, /* 'r' */
|
||
|
0xB3, /* 's' */
|
||
|
0xB6, /* 't' */
|
||
|
0xB8, /* 'u' */
|
||
|
0xBA, /* 'v' */
|
||
|
0xBC, /* 'w' */
|
||
|
0xBE, /* 'x' */
|
||
|
0xC1, /* 'y' */
|
||
|
0xC5, /* 'z' */
|
||
|
0x3D, /* '{' */
|
||
|
0x3E, /* '|' */
|
||
|
0x3F, /* '}' */
|
||
|
0x40, /* '~' */
|
||
|
0x41, /* 0x7F */
|
||
|
0x42, /* 0x80 */
|
||
|
0x43, /* 0x81 */
|
||
|
0x44, /* 0x82 */
|
||
|
0x45, /* 0x83 */
|
||
|
0x46, /* 0x84 */
|
||
|
0x47, /* 0x85 */
|
||
|
0x48, /* 0x86 */
|
||
|
0x49, /* 0x87 */
|
||
|
0x4A, /* 0x88 */
|
||
|
0x4B, /* 0x89 */
|
||
|
0xB3, /* 0x8A */
|
||
|
0x4D, /* 0x8B */
|
||
|
0xAB, /* 0x8C */
|
||
|
0x4F, /* 0x8D */
|
||
|
0x50, /* 0x8E */
|
||
|
0x51, /* 0x8F */
|
||
|
0x52, /* 0x90 */
|
||
|
0x53, /* 0x91 */
|
||
|
0x54, /* 0x92 */
|
||
|
0x55, /* 0x93 */
|
||
|
0x56, /* 0x94 */
|
||
|
0x57, /* 0x95 */
|
||
|
0x58, /* 0x96 */
|
||
|
0x59, /* 0x97 */
|
||
|
0x5A, /* 0x98 */
|
||
|
0x5B, /* 0x99 */
|
||
|
0xB3, /* 0x9A */
|
||
|
0x5D, /* 0x9B */
|
||
|
0xAB, /* 0x9C */
|
||
|
0x5F, /* 0x9D */
|
||
|
0x60, /* 0x9E */
|
||
|
0xC1, /* 0x9F */
|
||
|
0x62, /* 0xA0 */
|
||
|
0x63, /* 0xA1 */
|
||
|
0x64, /* 0xA2 */
|
||
|
0x65, /* 0xA3 */
|
||
|
0x66, /* 0xA4 */
|
||
|
0x67, /* 0xA5 */
|
||
|
0x68, /* 0xA6 */
|
||
|
0x69, /* 0xA7 */
|
||
|
0x6A, /* 0xA8 */
|
||
|
0x6B, /* 0xA9 */
|
||
|
0x6C, /* 0xAA */
|
||
|
0x6D, /* 0xAB */
|
||
|
0x6E, /* 0xAC */
|
||
|
0x6F, /* 0xAD */
|
||
|
0x70, /* 0xAE */
|
||
|
0x71, /* 0xAF */
|
||
|
0x72, /* 0xB0 */
|
||
|
0x73, /* 0xB1 */
|
||
|
0x74, /* 0xB2 */
|
||
|
0x75, /* 0xB3 */
|
||
|
0x76, /* 0xB4 */
|
||
|
0x77, /* 0xB5 */
|
||
|
0x78, /* 0xB6 */
|
||
|
0x79, /* 0xB7 */
|
||
|
0x7A, /* 0xB8 */
|
||
|
0x7B, /* 0xB9 */
|
||
|
0x7C, /* 0xBA */
|
||
|
0x7D, /* 0xBB */
|
||
|
0x7E, /* 0xBC */
|
||
|
0x7F, /* 0xBD */
|
||
|
0x80, /* 0xBE */
|
||
|
0x81, /* 0xBF */
|
||
|
0x8D, /* 0xC0 */
|
||
|
0x8D, /* 0xC1 */
|
||
|
0x8D, /* 0xC2 */
|
||
|
0x8D, /* 0xC3 */
|
||
|
0x8D, /* 0xC4 */
|
||
|
0x8D, /* 0xC5 */
|
||
|
0x8D, /* 0xC6 */
|
||
|
0x91, /* 0xC7 */
|
||
|
0x95, /* 0xC8 */
|
||
|
0x95, /* 0xC9 */
|
||
|
0x95, /* 0xCA */
|
||
|
0x95, /* 0xCB */
|
||
|
0x9D, /* 0xCC */
|
||
|
0x9D, /* 0xCD */
|
||
|
0x9D, /* 0xCE */
|
||
|
0x9D, /* 0xCF */
|
||
|
0x93, /* 0xD0 */
|
||
|
0xA7, /* 0xD1 */
|
||
|
0xAB, /* 0xD2 */
|
||
|
0xAB, /* 0xD3 */
|
||
|
0xAB, /* 0xD4 */
|
||
|
0xAB, /* 0xD5 */
|
||
|
0xAB, /* 0xD6 */
|
||
|
0xAA, /* 0xD7 */
|
||
|
0xAB, /* 0xD8 */
|
||
|
0xB8, /* 0xD9 */
|
||
|
0xB8, /* 0xDA */
|
||
|
0xB8, /* 0xDB */
|
||
|
0xB8, /* 0xDC */
|
||
|
0xC1, /* 0xDD */
|
||
|
0xC6, /* 0xDE */
|
||
|
0xB4, /* 0xDF */
|
||
|
0x8D, /* 0xE0 */
|
||
|
0x8D, /* 0xE1 */
|
||
|
0x8D, /* 0xE2 */
|
||
|
0x8D, /* 0xE3 */
|
||
|
0x8D, /* 0xE4 */
|
||
|
0x8D, /* 0xE5 */
|
||
|
0x8D, /* 0xE6 */
|
||
|
0x91, /* 0xE7 */
|
||
|
0x95, /* 0xE8 */
|
||
|
0x95, /* 0xE9 */
|
||
|
0x95, /* 0xEA */
|
||
|
0x95, /* 0xEB */
|
||
|
0x9D, /* 0xEC */
|
||
|
0x9D, /* 0xED */
|
||
|
0x9D, /* 0xEE */
|
||
|
0x9D, /* 0xEF */
|
||
|
0x93, /* 0xF0 */
|
||
|
0xA7, /* 0xF1 */
|
||
|
0xAB, /* 0xF2 */
|
||
|
0xAB, /* 0xF3 */
|
||
|
0xAB, /* 0xF4 */
|
||
|
0xAB, /* 0xF5 */
|
||
|
0xAB, /* 0xF6 */
|
||
|
0xAB, /* 0xF7 */
|
||
|
0xAB, /* 0xF8 */
|
||
|
0xB8, /* 0xF9 */
|
||
|
0xB8, /* 0xFA */
|
||
|
0xB8, /* 0xFB */
|
||
|
0xB8, /* 0xFC */
|
||
|
0xC1, /* 0xFD */
|
||
|
0xC6, /* 0xFE */
|
||
|
0xC1, /* 0xFF */
|
||
|
};
|
||
|
|
||
|
|
||
|
unsigned char mpchordScan[] =
|
||
|
{
|
||
|
0x00, /* 0x00 */
|
||
|
0x01, /* 0x01 */
|
||
|
0x02, /* 0x02 */
|
||
|
0x03, /* 0x03 */
|
||
|
0x04, /* 0x04 */
|
||
|
0x05, /* 0x05 */
|
||
|
0x06, /* 0x06 */
|
||
|
0x07, /* 0x07 */
|
||
|
0x08, /* 0x08 */
|
||
|
0x09, /* 0x09 */
|
||
|
0x0A, /* 0x0A */
|
||
|
0x0B, /* 0x0B */
|
||
|
0x0C, /* 0x0C */
|
||
|
0x0D, /* 0x0D */
|
||
|
0x0E, /* 0x0E */
|
||
|
0x0F, /* 0x0F */
|
||
|
0x10, /* 0x10 */
|
||
|
0x11, /* 0x11 */
|
||
|
0x12, /* 0x12 */
|
||
|
0x13, /* 0x13 */
|
||
|
0x14, /* 0x14 */
|
||
|
0x15, /* 0x15 */
|
||
|
0x16, /* 0x16 */
|
||
|
0x17, /* 0x17 */
|
||
|
0x18, /* 0x18 */
|
||
|
0x19, /* 0x19 */
|
||
|
0x1A, /* 0x1A */
|
||
|
0x1B, /* 0x1B */
|
||
|
0x1C, /* 0x1C */
|
||
|
0x1D, /* 0x1D */
|
||
|
0x1E, /* 0x1E */
|
||
|
0x1F, /* 0x1F */
|
||
|
0x20, /* ' ' */
|
||
|
0x21, /* '!' */
|
||
|
0x22, /* '"' */
|
||
|
0x23, /* '#' */
|
||
|
0x24, /* '$' */
|
||
|
0x25, /* '%' */
|
||
|
0x26, /* '&' */
|
||
|
0x27, /* ''' */
|
||
|
0x28, /* '(' */
|
||
|
0x29, /* ')' */
|
||
|
0x2A, /* '*' */
|
||
|
0x2B, /* '+' */
|
||
|
0x2C, /* ',' */
|
||
|
0x2D, /* '-' */
|
||
|
0x2E, /* '.' */
|
||
|
0x2F, /* '/' */
|
||
|
0x82, /* '0' */
|
||
|
0x83, /* '1' */
|
||
|
0x84, /* '2' */
|
||
|
0x85, /* '3' */
|
||
|
0x86, /* '4' */
|
||
|
0x87, /* '5' */
|
||
|
0x88, /* '6' */
|
||
|
0x89, /* '7' */
|
||
|
0x8A, /* '8' */
|
||
|
0x8B, /* '9' */
|
||
|
0x30, /* ':' */
|
||
|
0x31, /* ';' */
|
||
|
0x32, /* '<' */
|
||
|
0x33, /* '=' */
|
||
|
0x34, /* '>' */
|
||
|
0x35, /* '?' */
|
||
|
0x36, /* '@' */
|
||
|
0x8D, /* 'A' */
|
||
|
0x8F, /* 'B' */
|
||
|
0x91, /* 'C' */
|
||
|
0x93, /* 'D' */
|
||
|
0x95, /* 'E' */
|
||
|
0x97, /* 'F' */
|
||
|
0x99, /* 'G' */
|
||
|
0x9B, /* 'H' */
|
||
|
0x9D, /* 'I' */
|
||
|
0x9F, /* 'J' */
|
||
|
0xA1, /* 'K' */
|
||
|
0xA3, /* 'L' */
|
||
|
0xA5, /* 'M' */
|
||
|
0xA7, /* 'N' */
|
||
|
0xAB, /* 'O' */
|
||
|
0xAD, /* 'P' */
|
||
|
0xAF, /* 'Q' */
|
||
|
0xB1, /* 'R' */
|
||
|
0xB3, /* 'S' */
|
||
|
0xB6, /* 'T' */
|
||
|
0xB8, /* 'U' */
|
||
|
0xBA, /* 'V' */
|
||
|
0xBC, /* 'W' */
|
||
|
0xBE, /* 'X' */
|
||
|
0xC1, /* 'Y' */
|
||
|
0xC5, /* 'Z' */
|
||
|
0x37, /* '[' */
|
||
|
0x38, /* '\' */
|
||
|
0x39, /* ']' */
|
||
|
0x3A, /* '^' */
|
||
|
0x3B, /* '_' */
|
||
|
0x3C, /* '`' */
|
||
|
0x8D, /* 'a' */
|
||
|
0x8F, /* 'b' */
|
||
|
0x91, /* 'c' */
|
||
|
0x93, /* 'd' */
|
||
|
0x95, /* 'e' */
|
||
|
0x97, /* 'f' */
|
||
|
0x99, /* 'g' */
|
||
|
0x9B, /* 'h' */
|
||
|
0x9D, /* 'i' */
|
||
|
0x9F, /* 'j' */
|
||
|
0xA1, /* 'k' */
|
||
|
0xA3, /* 'l' */
|
||
|
0xA5, /* 'm' */
|
||
|
0xA7, /* 'n' */
|
||
|
0xAB, /* 'o' */
|
||
|
0xAD, /* 'p' */
|
||
|
0xAF, /* 'q' */
|
||
|
0xB1, /* 'r' */
|
||
|
0xB3, /* 's' */
|
||
|
0xB6, /* 't' */
|
||
|
0xB8, /* 'u' */
|
||
|
0xBA, /* 'v' */
|
||
|
0xBC, /* 'w' */
|
||
|
0xBE, /* 'x' */
|
||
|
0xC1, /* 'y' */
|
||
|
0xC5, /* 'z' */
|
||
|
0x3D, /* '{' */
|
||
|
0x3E, /* '|' */
|
||
|
0x3F, /* '}' */
|
||
|
0x40, /* '~' */
|
||
|
0x41, /* 0x7F */
|
||
|
0x42, /* 0x80 */
|
||
|
0x43, /* 0x81 */
|
||
|
0x44, /* 0x82 */
|
||
|
0x45, /* 0x83 */
|
||
|
0x46, /* 0x84 */
|
||
|
0x47, /* 0x85 */
|
||
|
0x48, /* 0x86 */
|
||
|
0x49, /* 0x87 */
|
||
|
0x4A, /* 0x88 */
|
||
|
0x4B, /* 0x89 */
|
||
|
0x4B, /* 0x8A */
|
||
|
0x4D, /* 0x8B */
|
||
|
0x4E, /* 0x8C */
|
||
|
0x4F, /* 0x8D */
|
||
|
0x50, /* 0x8E */
|
||
|
0x51, /* 0x8F */
|
||
|
0x52, /* 0x90 */
|
||
|
0x53, /* 0x91 */
|
||
|
0x54, /* 0x92 */
|
||
|
0x55, /* 0x93 */
|
||
|
0x56, /* 0x94 */
|
||
|
0x57, /* 0x95 */
|
||
|
0x58, /* 0x96 */
|
||
|
0x59, /* 0x97 */
|
||
|
0x5A, /* 0x98 */
|
||
|
0x5B, /* 0x99 */
|
||
|
0x5C, /* 0x9A */
|
||
|
0x5D, /* 0x9B */
|
||
|
0x5E, /* 0x9C */
|
||
|
0x5F, /* 0x9D */
|
||
|
0x60, /* 0x9E */
|
||
|
0x61, /* 0x9F */
|
||
|
0x62, /* 0xA0 */
|
||
|
0x63, /* 0xA1 */
|
||
|
0x64, /* 0xA2 */
|
||
|
0x65, /* 0xA3 */
|
||
|
0x66, /* 0xA4 */
|
||
|
0x67, /* 0xA5 */
|
||
|
0x68, /* 0xA6 */
|
||
|
0x69, /* 0xA7 */
|
||
|
0x6A, /* 0xA8 */
|
||
|
0x6B, /* 0xA9 */
|
||
|
0x6C, /* 0xAA */
|
||
|
0x6D, /* 0xAB */
|
||
|
0x6E, /* 0xAC */
|
||
|
0x6F, /* 0xAD */
|
||
|
0x70, /* 0xAE */
|
||
|
0x71, /* 0xAF */
|
||
|
0x72, /* 0xB0 */
|
||
|
0x73, /* 0xB1 */
|
||
|
0x74, /* 0xB2 */
|
||
|
0x75, /* 0xB3 */
|
||
|
0x76, /* 0xB4 */
|
||
|
0x77, /* 0xB5 */
|
||
|
0x78, /* 0xB6 */
|
||
|
0x79, /* 0xB7 */
|
||
|
0x7A, /* 0xB8 */
|
||
|
0x7B, /* 0xB9 */
|
||
|
0x7C, /* 0xBA */
|
||
|
0x7D, /* 0xBB */
|
||
|
0x7E, /* 0xBC */
|
||
|
0x7F, /* 0xBD */
|
||
|
0x80, /* 0xBE */
|
||
|
0x81, /* 0xBF */
|
||
|
0x8D, /* 0xC0 */
|
||
|
0x8D, /* 0xC1 */
|
||
|
0x8D, /* 0xC2 */
|
||
|
0x8D, /* 0xC3 */
|
||
|
0xCF, /* 0xC4 */
|
||
|
0xCD, /* 0xC5 */
|
||
|
0xC9, /* 0xC6 */
|
||
|
0x91, /* 0xC7 */
|
||
|
0x95, /* 0xC8 */
|
||
|
0x95, /* 0xC9 */
|
||
|
0x95, /* 0xCA */
|
||
|
0x95, /* 0xCB */
|
||
|
0x9D, /* 0xCC */
|
||
|
0x9D, /* 0xCD */
|
||
|
0x9D, /* 0xCE */
|
||
|
0x9D, /* 0xCF */
|
||
|
0x93, /* 0xD0 */
|
||
|
0xA9, /* 0xD1 */
|
||
|
0xAB, /* 0xD2 */
|
||
|
0xAB, /* 0xD3 */
|
||
|
0xAB, /* 0xD4 */
|
||
|
0xAB, /* 0xD5 */
|
||
|
0xD1, /* 0xD6 */
|
||
|
0xAA, /* 0xD7 */
|
||
|
0xCB, /* 0xD8 */
|
||
|
0xB8, /* 0xD9 */
|
||
|
0xB8, /* 0xDA */
|
||
|
0xB8, /* 0xDB */
|
||
|
0xB8, /* 0xDC */
|
||
|
0xC2, /* 0xDD */
|
||
|
0xC7, /* 0xDE */
|
||
|
0xB4, /* 0xDF */
|
||
|
0x8D, /* 0xE0 */
|
||
|
0x8D, /* 0xE1 */
|
||
|
0x8D, /* 0xE2 */
|
||
|
0x8D, /* 0xE3 */
|
||
|
0xCF, /* 0xE4 */
|
||
|
0xCD, /* 0xE5 */
|
||
|
0xC9, /* 0xE6 */
|
||
|
0x91, /* 0xE7 */
|
||
|
0x95, /* 0xE8 */
|
||
|
0x95, /* 0xE9 */
|
||
|
0x95, /* 0xEA */
|
||
|
0x95, /* 0xEB */
|
||
|
0x9D, /* 0xEC */
|
||
|
0x9D, /* 0xED */
|
||
|
0x9D, /* 0xEE */
|
||
|
0x9D, /* 0xEF */
|
||
|
0x93, /* 0xF0 */
|
||
|
0xA9, /* 0xF1 */
|
||
|
0xAB, /* 0xF2 */
|
||
|
0xAB, /* 0xF3 */
|
||
|
0xAB, /* 0xF4 */
|
||
|
0xAB, /* 0xF5 */
|
||
|
0xD1, /* 0xF6 */
|
||
|
0xAB, /* 0xF7 */
|
||
|
0xCB, /* 0xF8 */
|
||
|
0xB8, /* 0xF9 */
|
||
|
0xB8, /* 0xFA */
|
||
|
0xB8, /* 0xFB */
|
||
|
0xB8, /* 0xFC */
|
||
|
0xC2, /* 0xFD */
|
||
|
0xC7, /* 0xFE */
|
||
|
0xC3, /* 0xFF */
|
||
|
};
|
||
|
|
||
|
|