Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
3.2 KiB

  1. typedef struct _CodedMapBlock
  2. {
  3. UINT iwcFirst : 16;
  4. UINT cwcSpan : 8;
  5. UINT iDelta : 6;
  6. UINT fUnused : 1;
  7. UINT fGapIs2 : 1;
  8. } CodeMapBlock, *PCodedMapBlock;
  9. typedef union
  10. {
  11. UINT uCode;
  12. CodeMapBlock cmb;
  13. } UCodeMapBlock;
  14. const UCodeMapBlock UCMB_NULL = { 0 }; // Special block with zero entries
  15. // with base == 0.
  16. // Upper case maps:
  17. const SHORT aiDeltaValues_Upper[34] =
  18. { -219, -218, -217, -214, -213, -211, -210, -209, -207, -206, -205,
  19. -203, -202, -80, -79, -64, -63, -48, -38, -37, -32, -26, -16, -2,
  20. -1, 7, 8, 74, 86, 100, 112, 121, 126, 128
  21. };
  22. const UCodeMapBlock UCMB_Upper[88] =
  23. { 0x141a0061, 0x141700e0, 0x140700f8, 0x1f0100ff, 0x982f0101, 0x98050133,
  24. 0x980f013a, 0x982d014b, 0x9805017a, 0x98030183, 0x18010188, 0x1801018c,
  25. 0x18010192, 0x18010199, 0x980501a1, 0x180101a8, 0x180101ad, 0x180101b0,
  26. 0x980301b4, 0x180101b9, 0x180101bd, 0x170101c6, 0x170101c9, 0x170101cc,
  27. 0x980f01ce, 0x0e0101dd, 0x981101df, 0x170101f3, 0x180101f5, 0x981d01fb,
  28. 0x06010253, 0x09010254, 0x0a020256, 0x0c010259, 0x0b01025b, 0x0a010260,
  29. 0x08010263, 0x07010268, 0x05010269, 0x0501026f, 0x04010272, 0x03010275,
  30. 0x01010283, 0x01010288, 0x0202028a, 0x00010292, 0x120103ac, 0x130303ad,
  31. 0x141103b1, 0x140903c3, 0x0f0103cc, 0x100203cd, 0x980d03e3, 0x14200430,
  32. 0x0d0c0451, 0x0d02045e, 0x98210461, 0x982f0491, 0x980304c2, 0x180104c8,
  33. 0x180104cc, 0x981b04d1, 0x980704ef, 0x180104f9, 0x11260561, 0x112610d0,
  34. 0x98951e01, 0x98591ea1, 0x1a081f00, 0x1a061f10, 0x1a081f20, 0x1a081f30,
  35. 0x1a061f40, 0x9a071f51, 0x1a081f60, 0x1b021f70, 0x1c041f72, 0x1d021f76,
  36. 0x21021f78, 0x1e021f7a, 0x20021f7c, 0x1a021fb0, 0x1a021fd0, 0x1a021fe0,
  37. 0x19011fe5, 0x16102170, 0x151a24d0, 0x141aff41
  38. };
  39. // Lower case maps:
  40. const SHORT aiDeltaValues_Lower[34] =
  41. { -128, -126, -121, -112, -100, -86, -74, -8, -7, 1, 2, 16, 26, 32,
  42. 37, 38, 48, 63, 64, 79, 80, 202, 203, 205, 206, 207, 209, 210, 211,
  43. 213, 214, 217, 218, 219
  44. };
  45. const UCodeMapBlock UCMB_Lower[88] =
  46. { 0x0d1a0041, 0x0d1700c0, 0x0d0700d8, 0x892f0100, 0x89050132, 0x890f0139,
  47. 0x892d014a, 0x02010178, 0x89050179, 0x1b010181, 0x89030182, 0x18010186,
  48. 0x09010187, 0x17020189, 0x0901018b, 0x1301018e, 0x1501018f, 0x16010190,
  49. 0x09010191, 0x17010193, 0x19010194, 0x1c010196, 0x1a010197, 0x09010198,
  50. 0x1c01019c, 0x1d01019d, 0x1e01019f, 0x890501a0, 0x090101a7, 0x200101a9,
  51. 0x090101ac, 0x200101ae, 0x090101af, 0x1f0201b1, 0x890301b3, 0x210101b7,
  52. 0x090101b8, 0x090101bc, 0x0a0101c4, 0x0a0101c7, 0x0a0101ca, 0x890f01cd,
  53. 0x891101de, 0x0a0101f1, 0x090101f4, 0x891d01fa, 0x0f010386, 0x0e030388,
  54. 0x1201038c, 0x1102038e, 0x0d110391, 0x0d0903a3, 0x890d03e2, 0x140c0401,
  55. 0x1402040e, 0x0d200410, 0x89210460, 0x892f0490, 0x890304c1, 0x090104c7,
  56. 0x090104cb, 0x891b04d0, 0x890704ee, 0x090104f8, 0x10260531, 0x102610a0,
  57. 0x89951e00, 0x89591ea0, 0x07081f08, 0x07061f18, 0x07081f28, 0x07081f38,
  58. 0x07061f48, 0x87071f59, 0x07081f68, 0x07021fb8, 0x06021fba, 0x05041fc8,
  59. 0x07021fd8, 0x04021fda, 0x07021fe8, 0x03021fea, 0x08011fec, 0x00021ff8,
  60. 0x01021ffa, 0x0b102160, 0x0c1a24b6, 0x0d1aff21
  61. };