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.

277 lines
12 KiB

  1. /**************************************************************************\
  2. $Header:$
  3. $Log:$
  4. \**************************************************************************/
  5. #include "switches.h"
  6. #ifdef WINDOWS_NT
  7. // Not to be paged out
  8. //#if defined(ALLOC_PRAGMA)
  9. // #pragma data_seg("PAGE")
  10. //#endif
  11. #endif /* #ifdef WINDOWS_NT */
  12. typedef struct {unsigned short r, g, b;} DacReg;
  13. DacReg vgaDac[] = { /* {r, g, b} */
  14. {0x00, 0x00, 0x00}, /* index 00 */
  15. {0x00, 0x00, 0x2a}, /* index 01 */
  16. {0x00, 0x2a, 0x00}, /* index 02 */
  17. {0x00, 0x2a, 0x2a}, /* index 03 */
  18. {0x2a, 0x00, 0x00}, /* index 04 */
  19. {0x2a, 0x00, 0x2a}, /* index 05 */
  20. {0x2a, 0x2a, 0x00}, /* index 06 */
  21. {0x2a, 0x2a, 0x2a}, /* index 07 */
  22. {0x00, 0x00, 0x15}, /* index 08 */
  23. {0x00, 0x00, 0x3f}, /* index 09 */
  24. {0x00, 0x2a, 0x15}, /* index 0a */
  25. {0x00, 0x2a, 0x3f}, /* index 0b */
  26. {0x2a, 0x00, 0x15}, /* index 0c */
  27. {0x2a, 0x00, 0x3f}, /* index 0d */
  28. {0x2a, 0x2a, 0x15}, /* index 0e */
  29. {0x2a, 0x2a, 0x3f}, /* index 0f */
  30. {0x00, 0x15, 0x00}, /* index 10 */
  31. {0x00, 0x15, 0x2a}, /* index 11 */
  32. {0x00, 0x3f, 0x00}, /* index 12 */
  33. {0x00, 0x3f, 0x2a}, /* index 13 */
  34. {0x2a, 0x15, 0x00}, /* index 14 */
  35. {0x2a, 0x15, 0x2a}, /* index 15 */
  36. {0x2a, 0x3f, 0x00}, /* index 16 */
  37. {0x2a, 0x3f, 0x2a}, /* index 17 */
  38. {0x00, 0x15, 0x15}, /* index 18 */
  39. {0x00, 0x15, 0x3f}, /* index 19 */
  40. {0x00, 0x3f, 0x15}, /* index 1a */
  41. {0x00, 0x3f, 0x3f}, /* index 1b */
  42. {0x2a, 0x15, 0x15}, /* index 1c */
  43. {0x2a, 0x15, 0x3f}, /* index 1d */
  44. {0x2a, 0x3f, 0x15}, /* index 1e */
  45. {0x2a, 0x3f, 0x3f}, /* index 1f */
  46. {0x15, 0x00, 0x00}, /* index 20 */
  47. {0x15, 0x00, 0x2a}, /* index 21 */
  48. {0x15, 0x2a, 0x00}, /* index 22 */
  49. {0x15, 0x2a, 0x2a}, /* index 23 */
  50. {0x3f, 0x00, 0x00}, /* index 24 */
  51. {0x3f, 0x00, 0x2a}, /* index 25 */
  52. {0x3f, 0x2a, 0x00}, /* index 26 */
  53. {0x3f, 0x2a, 0x2a}, /* index 27 */
  54. {0x15, 0x00, 0x15}, /* index 28 */
  55. {0x15, 0x00, 0x3f}, /* index 29 */
  56. {0x15, 0x2a, 0x15}, /* index 2a */
  57. {0x15, 0x2a, 0x3f}, /* index 2b */
  58. {0x3f, 0x00, 0x15}, /* index 2c */
  59. {0x3f, 0x00, 0x3f}, /* index 2d */
  60. {0x3f, 0x2a, 0x15}, /* index 2e */
  61. {0x3f, 0x2a, 0x3f}, /* index 2f */
  62. {0x15, 0x15, 0x00}, /* index 30 */
  63. {0x15, 0x15, 0x2a}, /* index 31 */
  64. {0x15, 0x3f, 0x00}, /* index 32 */
  65. {0x15, 0x3f, 0x2a}, /* index 33 */
  66. {0x3f, 0x15, 0x00}, /* index 34 */
  67. {0x3f, 0x15, 0x2a}, /* index 35 */
  68. {0x3f, 0x3f, 0x00}, /* index 36 */
  69. {0x3f, 0x3f, 0x2a}, /* index 37 */
  70. {0x15, 0x15, 0x15}, /* index 38 */
  71. {0x15, 0x15, 0x3f}, /* index 39 */
  72. {0x15, 0x3f, 0x15}, /* index 3a */
  73. {0x15, 0x3f, 0x3f}, /* index 3b */
  74. {0x3f, 0x15, 0x15}, /* index 3c */
  75. {0x3f, 0x15, 0x3f}, /* index 3d */
  76. {0x3f, 0x3f, 0x15}, /* index 3e */
  77. {0x3f, 0x3f, 0x3f}, /* index 3f */
  78. {0x00, 0x00, 0x00}, /* index 40 */
  79. {0x00, 0x00, 0x00}, /* index 41 */
  80. {0x00, 0x00, 0x00}, /* index 42 */
  81. {0x00, 0x00, 0x00}, /* index 43 */
  82. {0x00, 0x00, 0x00}, /* index 44 */
  83. {0x00, 0x00, 0x00}, /* index 45 */
  84. {0x00, 0x00, 0x00}, /* index 46 */
  85. {0x00, 0x00, 0x00}, /* index 47 */
  86. {0x00, 0x00, 0x00}, /* index 48 */
  87. {0x00, 0x00, 0x00}, /* index 49 */
  88. {0x00, 0x00, 0x00}, /* index 4a */
  89. {0x00, 0x00, 0x00}, /* index 4b */
  90. {0x00, 0x00, 0x00}, /* index 4c */
  91. {0x00, 0x00, 0x00}, /* index 4d */
  92. {0x00, 0x00, 0x00}, /* index 4e */
  93. {0x00, 0x00, 0x00}, /* index 4f */
  94. {0x00, 0x00, 0x00}, /* index 50 */
  95. {0x00, 0x00, 0x00}, /* index 51 */
  96. {0x00, 0x00, 0x00}, /* index 52 */
  97. {0x00, 0x00, 0x00}, /* index 53 */
  98. {0x00, 0x00, 0x00}, /* index 54 */
  99. {0x00, 0x00, 0x00}, /* index 55 */
  100. {0x00, 0x00, 0x00}, /* index 56 */
  101. {0x00, 0x00, 0x00}, /* index 57 */
  102. {0x00, 0x00, 0x00}, /* index 58 */
  103. {0x00, 0x00, 0x00}, /* index 59 */
  104. {0x00, 0x00, 0x00}, /* index 5a */
  105. {0x00, 0x00, 0x00}, /* index 5b */
  106. {0x00, 0x00, 0x00}, /* index 5c */
  107. {0x00, 0x00, 0x00}, /* index 5d */
  108. {0x00, 0x00, 0x00}, /* index 5e */
  109. {0x00, 0x00, 0x00}, /* index 5f */
  110. {0x00, 0x00, 0x00}, /* index 60 */
  111. {0x00, 0x00, 0x00}, /* index 61 */
  112. {0x00, 0x00, 0x00}, /* index 62 */
  113. {0x00, 0x00, 0x00}, /* index 63 */
  114. {0x00, 0x00, 0x00}, /* index 64 */
  115. {0x00, 0x00, 0x00}, /* index 65 */
  116. {0x00, 0x00, 0x00}, /* index 66 */
  117. {0x00, 0x00, 0x00}, /* index 67 */
  118. {0x00, 0x00, 0x00}, /* index 68 */
  119. {0x00, 0x00, 0x00}, /* index 69 */
  120. {0x00, 0x00, 0x00}, /* index 6a */
  121. {0x00, 0x00, 0x00}, /* index 6b */
  122. {0x00, 0x00, 0x00}, /* index 6c */
  123. {0x00, 0x00, 0x00}, /* index 6d */
  124. {0x00, 0x00, 0x00}, /* index 6e */
  125. {0x00, 0x00, 0x00}, /* index 6f */
  126. {0x00, 0x00, 0x00}, /* index 70 */
  127. {0x00, 0x00, 0x00}, /* index 71 */
  128. {0x00, 0x00, 0x00}, /* index 72 */
  129. {0x00, 0x00, 0x00}, /* index 73 */
  130. {0x00, 0x00, 0x00}, /* index 74 */
  131. {0x00, 0x00, 0x00}, /* index 75 */
  132. {0x00, 0x00, 0x00}, /* index 76 */
  133. {0x00, 0x00, 0x00}, /* index 77 */
  134. {0x00, 0x00, 0x00}, /* index 78 */
  135. {0x00, 0x00, 0x00}, /* index 79 */
  136. {0x00, 0x00, 0x00}, /* index 7a */
  137. {0x00, 0x00, 0x00}, /* index 7b */
  138. {0x00, 0x00, 0x00}, /* index 7c */
  139. {0x00, 0x00, 0x00}, /* index 7d */
  140. {0x00, 0x00, 0x00}, /* index 7e */
  141. {0x00, 0x00, 0x00}, /* index 7f */
  142. {0x00, 0x00, 0x00}, /* index 80 */
  143. {0x00, 0x00, 0x00}, /* index 81 */
  144. {0x00, 0x00, 0x00}, /* index 82 */
  145. {0x00, 0x00, 0x00}, /* index 83 */
  146. {0x00, 0x00, 0x00}, /* index 84 */
  147. {0x00, 0x00, 0x00}, /* index 85 */
  148. {0x00, 0x00, 0x00}, /* index 86 */
  149. {0x00, 0x00, 0x00}, /* index 87 */
  150. {0x00, 0x00, 0x00}, /* index 88 */
  151. {0x00, 0x00, 0x00}, /* index 89 */
  152. {0x00, 0x00, 0x00}, /* index 8a */
  153. {0x00, 0x00, 0x00}, /* index 8b */
  154. {0x00, 0x00, 0x00}, /* index 8c */
  155. {0x00, 0x00, 0x00}, /* index 8d */
  156. {0x00, 0x00, 0x00}, /* index 8e */
  157. {0x00, 0x00, 0x00}, /* index 8f */
  158. {0x00, 0x00, 0x00}, /* index 90 */
  159. {0x00, 0x00, 0x00}, /* index 91 */
  160. {0x00, 0x00, 0x00}, /* index 92 */
  161. {0x00, 0x00, 0x00}, /* index 93 */
  162. {0x00, 0x00, 0x00}, /* index 94 */
  163. {0x00, 0x00, 0x00}, /* index 95 */
  164. {0x00, 0x00, 0x00}, /* index 96 */
  165. {0x00, 0x00, 0x00}, /* index 97 */
  166. {0x00, 0x00, 0x00}, /* index 98 */
  167. {0x00, 0x00, 0x00}, /* index 99 */
  168. {0x00, 0x00, 0x00}, /* index 9a */
  169. {0x00, 0x00, 0x00}, /* index 9b */
  170. {0x00, 0x00, 0x00}, /* index 9c */
  171. {0x00, 0x00, 0x00}, /* index 9d */
  172. {0x00, 0x00, 0x00}, /* index 9e */
  173. {0x00, 0x00, 0x00}, /* index 9f */
  174. {0x00, 0x00, 0x00}, /* index a0 */
  175. {0x00, 0x00, 0x00}, /* index a1 */
  176. {0x00, 0x00, 0x00}, /* index a2 */
  177. {0x00, 0x00, 0x00}, /* index a3 */
  178. {0x00, 0x00, 0x00}, /* index a4 */
  179. {0x00, 0x00, 0x00}, /* index a5 */
  180. {0x00, 0x00, 0x00}, /* index a6 */
  181. {0x00, 0x00, 0x00}, /* index a7 */
  182. {0x00, 0x00, 0x00}, /* index a8 */
  183. {0x00, 0x00, 0x00}, /* index a9 */
  184. {0x00, 0x00, 0x00}, /* index aa */
  185. {0x00, 0x00, 0x00}, /* index ab */
  186. {0x00, 0x00, 0x00}, /* index ac */
  187. {0x00, 0x00, 0x00}, /* index ad */
  188. {0x00, 0x00, 0x00}, /* index ae */
  189. {0x00, 0x00, 0x00}, /* index af */
  190. {0x00, 0x00, 0x00}, /* index b0 */
  191. {0x00, 0x00, 0x00}, /* index b1 */
  192. {0x00, 0x00, 0x00}, /* index b2 */
  193. {0x00, 0x00, 0x00}, /* index b3 */
  194. {0x00, 0x00, 0x00}, /* index b4 */
  195. {0x00, 0x00, 0x00}, /* index b5 */
  196. {0x00, 0x00, 0x00}, /* index b6 */
  197. {0x00, 0x00, 0x00}, /* index b7 */
  198. {0x00, 0x00, 0x00}, /* index b8 */
  199. {0x00, 0x00, 0x00}, /* index b9 */
  200. {0x00, 0x00, 0x00}, /* index ba */
  201. {0x00, 0x00, 0x00}, /* index bb */
  202. {0x00, 0x00, 0x00}, /* index bc */
  203. {0x00, 0x00, 0x00}, /* index bd */
  204. {0x00, 0x00, 0x00}, /* index be */
  205. {0x00, 0x00, 0x00}, /* index bf */
  206. {0x00, 0x00, 0x00}, /* index c0 */
  207. {0x00, 0x00, 0x00}, /* index c1 */
  208. {0x00, 0x00, 0x00}, /* index c2 */
  209. {0x00, 0x00, 0x00}, /* index c3 */
  210. {0x00, 0x00, 0x00}, /* index c4 */
  211. {0x00, 0x00, 0x00}, /* index c5 */
  212. {0x00, 0x00, 0x00}, /* index c6 */
  213. {0x00, 0x00, 0x00}, /* index c7 */
  214. {0x00, 0x00, 0x00}, /* index c8 */
  215. {0x00, 0x00, 0x00}, /* index c9 */
  216. {0x00, 0x00, 0x00}, /* index ca */
  217. {0x00, 0x00, 0x00}, /* index cb */
  218. {0x00, 0x00, 0x00}, /* index cc */
  219. {0x00, 0x00, 0x00}, /* index cd */
  220. {0x00, 0x00, 0x00}, /* index ce */
  221. {0x00, 0x00, 0x00}, /* index cf */
  222. {0x00, 0x00, 0x00}, /* index d0 */
  223. {0x00, 0x00, 0x00}, /* index d1 */
  224. {0x00, 0x00, 0x00}, /* index d2 */
  225. {0x00, 0x00, 0x00}, /* index d3 */
  226. {0x00, 0x00, 0x00}, /* index d4 */
  227. {0x00, 0x00, 0x00}, /* index d5 */
  228. {0x00, 0x00, 0x00}, /* index d6 */
  229. {0x00, 0x00, 0x00}, /* index d7 */
  230. {0x00, 0x00, 0x00}, /* index d8 */
  231. {0x00, 0x00, 0x00}, /* index d9 */
  232. {0x00, 0x00, 0x00}, /* index da */
  233. {0x00, 0x00, 0x00}, /* index db */
  234. {0x00, 0x00, 0x00}, /* index dc */
  235. {0x00, 0x00, 0x00}, /* index dd */
  236. {0x00, 0x00, 0x00}, /* index de */
  237. {0x00, 0x00, 0x00}, /* index df */
  238. {0x00, 0x00, 0x00}, /* index e0 */
  239. {0x00, 0x00, 0x00}, /* index e1 */
  240. {0x00, 0x00, 0x00}, /* index e2 */
  241. {0x00, 0x00, 0x00}, /* index e3 */
  242. {0x00, 0x00, 0x00}, /* index e4 */
  243. {0x00, 0x00, 0x00}, /* index e5 */
  244. {0x00, 0x00, 0x00}, /* index e6 */
  245. {0x00, 0x00, 0x00}, /* index e7 */
  246. {0x00, 0x00, 0x00}, /* index e8 */
  247. {0x00, 0x00, 0x00}, /* index e9 */
  248. {0x00, 0x00, 0x00}, /* index ea */
  249. {0x00, 0x00, 0x00}, /* index eb */
  250. {0x00, 0x00, 0x00}, /* index ec */
  251. {0x00, 0x00, 0x00}, /* index ed */
  252. {0x00, 0x00, 0x00}, /* index ee */
  253. {0x00, 0x00, 0x00}, /* index ef */
  254. {0x00, 0x00, 0x00}, /* index f0 */
  255. {0x00, 0x00, 0x00}, /* index f1 */
  256. {0x00, 0x00, 0x00}, /* index f2 */
  257. {0x00, 0x00, 0x00}, /* index f3 */
  258. {0x00, 0x00, 0x00}, /* index f4 */
  259. {0x00, 0x00, 0x00}, /* index f5 */
  260. {0x00, 0x00, 0x00}, /* index f6 */
  261. {0x00, 0x00, 0x00}, /* index f7 */
  262. {0x00, 0x00, 0x00}, /* index f8 */
  263. {0x00, 0x00, 0x00}, /* index f9 */
  264. {0x00, 0x00, 0x00}, /* index fa */
  265. {0x00, 0x00, 0x00}, /* index fb */
  266. {0x00, 0x00, 0x00}, /* index fc */
  267. {0x00, 0x00, 0x00}, /* index fd */
  268. {0x00, 0x00, 0x00}, /* index fe */
  269. {0x00, 0x00, 0x00} /* index ff */
  270. };