Leaked source code of windows server 2003
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.

156 lines
9.8 KiB

  1. /*++
  2. Copyright (c) 1990-1998 Microsoft Corporation, All Rights Reserved
  3. Module Name:
  4. PROCESS.C
  5. ++*/
  6. /**********************************************************************/
  7. /* These tables are for ImeProcessKey(). And IMEProcessKey function */
  8. /* refer this table and deside the VKey is needed for FAKEIME or not. */
  9. /* */
  10. /**********************************************************************/
  11. #include "windows.h"
  12. BYTE bNoComp[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  13. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 10-1F
  14. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 20-2F
  15. 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0, // 30-3F
  16. 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 40-4F
  17. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 50-5F
  18. 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 60-6F
  19. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 70-7F
  20. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-8F
  21. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-9F
  22. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-AF
  23. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-BF
  24. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-CF
  25. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-DF
  26. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-EF
  27. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-FF
  28. BYTE bNoCompCtl[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  29. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 10-0F
  30. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 20-0F
  31. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 30-0F
  32. 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, // 40-0F
  33. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 50-0F
  34. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 60-0F
  35. 0,0,1,0,0,1,1,1,1,0,0,0,0,0,0,0, // 70-0F
  36. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  37. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  38. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  39. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  40. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  41. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  42. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  43. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  44. BYTE bNoCompSht[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  45. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 10-0F
  46. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 20-0F
  47. 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0, // 30-0F
  48. 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 40-0F
  49. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 50-0F
  50. 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 60-0F
  51. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 70-0F
  52. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  53. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  54. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  55. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  56. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  57. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  58. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  59. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  60. BYTE bNoCompAlt[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  61. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 10-0F
  62. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 20-0F
  63. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 30-0F
  64. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 40-0F
  65. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 50-0F
  66. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 60-0F
  67. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 70-0F
  68. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  69. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  70. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  71. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  72. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  73. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  74. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  75. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  76. BYTE bComp[] = { 0,0,0,1,0,0,0,0,1,1,0,0,0,1,0,0, // 00-0F
  77. 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0, // 10-0F
  78. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 20-0F
  79. 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0, // 30-0F
  80. 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 40-0F
  81. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 50-0F
  82. 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 60-0F
  83. 0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0, // 70-0F
  84. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  85. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  86. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  87. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  88. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  89. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  90. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  91. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  92. BYTE bCompCtl[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  93. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 10-0F
  94. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 20-0F
  95. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 30-0F
  96. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 40-0F
  97. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 50-0F
  98. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 60-0F
  99. 0,0,1,0,0,1,1,1,1,0,0,0,0,0,0,0, // 70-0F
  100. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  101. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  102. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  103. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  104. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  105. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  106. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  107. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  108. BYTE bCompSht[] = { 0,0,0,1,0,0,0,0,1,1,0,0,0,1,0,0, // 00-0F
  109. 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0, // 10-0F
  110. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 20-0F
  111. 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0, // 30-0F
  112. 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 40-0F
  113. 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0, // 50-0F
  114. 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 60-0F
  115. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 70-0F
  116. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 80-0F
  117. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 90-0F
  118. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // A0-0F
  119. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // B0-0F
  120. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // C0-0F
  121. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // D0-0F
  122. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // E0-0F
  123. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // F0-0F
  124. BYTE bCompAlt[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  125. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  126. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  127. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  128. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  129. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  130. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  131. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  132. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  133. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  134. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  135. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  136. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  137. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  138. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 00-0F
  139. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // 00-0F