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.

559 lines
10 KiB

  1. // ***********************************************************************
  2. // Microsoft Jet
  3. //
  4. // Microsoft Confidential. Copyright 1989-1991 Microsoft Corporation.
  5. //
  6. // Component: ISAM
  7. //
  8. // File:
  9. //
  10. // File Comments:
  11. // <comments>
  12. //
  13. // Revision History:
  14. //
  15. // [0] 19-Sep-90 RichardS Created from BC 7.x ISAM
  16. //
  17. // ***********************************************************************
  18. //.xlist
  19. //include config.inc
  20. //include cmacros.inc
  21. //.list
  22. // USHORT cchDouble = ; define this appropriately if DBCS is defined
  23. BYTE rgchDouble[] = { 0 }; // Never accessed
  24. BYTE rgchSingle[] = { 186, 186, 142, 154 }; // 2 sets of single to dbl
  25. #define BFirstByteOfDouble(ib) (*(rgchDouble + (ib)*3))
  26. #define BSecondByteOfDouble(ib) (*(rgchDouble + (ib)*3 + 1))
  27. #define BThirdByteOfDouble(ib) (*(rgchDouble + (ib)*3 + 2))
  28. #define BFirstByteForSingle(ib) rgchSingle[(255 - (ib)) *2]
  29. #define BSecondByteForSingle(ib) rgchSingle[(255 - (ib)) *2 + 1]
  30. #define BGetTranslation(ib) (rgbTranslation[ib])
  31. #define BGetAccent(ib) (rgbAccentMap[ib])
  32. BYTE rgbTranslation[] =
  33. {
  34. 0, // 0
  35. 1, // 1
  36. 2, // 2
  37. 3, // 3
  38. 4, // 4
  39. 5, // 5
  40. 6, // 6
  41. 7, // 7
  42. 8, // 8
  43. 9, // 9
  44. 10, // 10
  45. 11, // 11
  46. 12, // 12
  47. 13, // 13
  48. 14, // 14
  49. 15, // 15
  50. 16, // 16
  51. 17, // 17
  52. 18, // 18
  53. 19, // 19
  54. 20, // 20
  55. 21, // 21
  56. 22, // 22
  57. 23, // 23
  58. 24, // 24
  59. 25, // 25
  60. 26, // 26
  61. 27, // 27
  62. 28, // 28
  63. 29, // 29
  64. 30, // 30
  65. 31, // 31
  66. 32, // 32
  67. 33, // 33
  68. 34, // 34
  69. 35, // 35
  70. 36, // 36
  71. 37, // 37
  72. 38, // 38
  73. 39, // 39
  74. 40, // 40
  75. 41, // 41
  76. 42, // 42
  77. 43, // 43
  78. 44, // 44
  79. 45, // 45
  80. 46, // 46
  81. 47, // 47
  82. 48, // 48
  83. 49, // 49
  84. 50, // 50
  85. 51, // 51
  86. 52, // 52
  87. 53, // 53
  88. 54, // 54
  89. 55, // 55
  90. 56, // 56
  91. 57, // 57
  92. 58, // 58
  93. 59, // 59
  94. 60, // 60
  95. 61, // 61
  96. 62, // 62
  97. 63, // 63
  98. 64, // 64
  99. 142, // 65
  100. 144, // 66
  101. 146, // 67
  102. 150, // 68
  103. 154, // 69
  104. 156, // 70
  105. 158, // 71
  106. 160, // 72
  107. 162, // 73
  108. 164, // 74
  109. 166, // 75
  110. 168, // 76
  111. 172, // 77
  112. 174, // 78
  113. 178, // 79
  114. 180, // 80
  115. 182, // 81
  116. 184, // 82
  117. 186, // 83
  118. 188, // 84
  119. 190, // 85
  120. 194, // 86
  121. 196, // 87
  122. 198, // 88
  123. 200, // 89
  124. 202, // 90
  125. 65, // 91
  126. 66, // 92
  127. 67, // 93
  128. 68, // 94
  129. 69, // 95
  130. 70, // 96
  131. 142, // 97
  132. 144, // 98
  133. 146, // 99
  134. 150, // 100
  135. 154, // 101
  136. 156, // 102
  137. 158, // 103
  138. 160, // 104
  139. 162, // 105
  140. 164, // 106
  141. 166, // 107
  142. 168, // 108
  143. 172, // 109
  144. 174, // 110
  145. 178, // 111
  146. 180, // 112
  147. 182, // 113
  148. 184, // 114
  149. 186, // 115
  150. 188, // 116
  151. 190, // 117
  152. 194, // 118
  153. 196, // 119
  154. 198, // 120
  155. 200, // 121
  156. 202, // 122
  157. 71, // 123
  158. 72, // 124
  159. 73, // 125
  160. 74, // 126
  161. 75, // 127
  162. 76, // 128
  163. 77, // 129
  164. 78, // 130
  165. 79, // 131
  166. 80, // 132
  167. 81, // 133
  168. 82, // 134
  169. 83, // 135
  170. 84, // 136
  171. 85, // 137
  172. 86, // 138
  173. 87, // 139
  174. 88, // 140
  175. 89, // 141
  176. 90, // 142
  177. 91, // 143
  178. 92, // 144
  179. 93, // 145
  180. 94, // 146
  181. 95, // 147
  182. 96, // 148
  183. 97, // 149
  184. 98, // 150
  185. 99, // 151
  186. 100, // 152
  187. 101, // 153
  188. 102, // 154
  189. 103, // 155
  190. 104, // 156
  191. 105, // 157
  192. 106, // 158
  193. 107, // 159
  194. 108, // 160
  195. 109, // 161
  196. 110, // 162
  197. 111, // 163
  198. 112, // 164
  199. 113, // 165
  200. 114, // 166
  201. 115, // 167
  202. 116, // 168
  203. 117, // 169
  204. 118, // 170
  205. 119, // 171
  206. 120, // 172
  207. 121, // 173
  208. 122, // 174
  209. 123, // 175
  210. 124, // 176
  211. 125, // 177
  212. 126, // 178
  213. 127, // 179
  214. 128, // 180
  215. 129, // 181
  216. 130, // 182
  217. 131, // 183
  218. 132, // 184
  219. 133, // 185
  220. 134, // 186
  221. 135, // 187
  222. 136, // 188
  223. 137, // 189
  224. 138, // 190
  225. 139, // 191
  226. 142, // 192
  227. 142, // 193
  228. 142, // 194
  229. 142, // 195
  230. 142, // 196
  231. 142, // 197
  232. 254, // 198
  233. 146, // 199
  234. 154, // 200
  235. 154, // 201
  236. 154, // 202
  237. 154, // 203
  238. 162, // 204
  239. 162, // 205
  240. 162, // 206
  241. 162, // 207
  242. 152, // 208
  243. 174, // 209
  244. 178, // 210
  245. 178, // 211
  246. 178, // 212
  247. 178, // 213
  248. 178, // 214
  249. 140, // 215
  250. 208, // 216
  251. 190, // 217
  252. 190, // 218
  253. 190, // 219
  254. 190, // 220
  255. 200, // 221
  256. 204, // 222
  257. 255, // 223
  258. 142, // 224
  259. 142, // 225
  260. 142, // 226
  261. 142, // 227
  262. 142, // 228
  263. 142, // 229
  264. 254, // 230
  265. 146, // 231
  266. 154, // 232
  267. 154, // 233
  268. 154, // 234
  269. 154, // 235
  270. 162, // 236
  271. 162, // 237
  272. 162, // 238
  273. 162, // 239
  274. 152, // 240
  275. 174, // 241
  276. 178, // 242
  277. 178, // 243
  278. 178, // 244
  279. 178, // 245
  280. 178, // 246
  281. 141, // 247
  282. 208, // 248
  283. 190, // 249
  284. 190, // 250
  285. 190, // 251
  286. 190, // 252
  287. 200, // 253
  288. 204, // 254
  289. 200 // 255
  290. };
  291. BYTE rgbAccentMap[] =
  292. {
  293. 1, // 0
  294. 1, // 1
  295. 1, // 2
  296. 1, // 3
  297. 1, // 4
  298. 1, // 5
  299. 1, // 6
  300. 1, // 7
  301. 1, // 8
  302. 1, // 9
  303. 1, // 10
  304. 1, // 11
  305. 1, // 12
  306. 1, // 13
  307. 1, // 14
  308. 1, // 15
  309. 1, // 16
  310. 1, // 17
  311. 1, // 18
  312. 1, // 19
  313. 1, // 20
  314. 1, // 21
  315. 1, // 22
  316. 1, // 23
  317. 1, // 24
  318. 1, // 25
  319. 1, // 26
  320. 1, // 27
  321. 1, // 28
  322. 1, // 29
  323. 1, // 30
  324. 1, // 31
  325. 1, // 32
  326. 1, // 33
  327. 1, // 34
  328. 1, // 35
  329. 1, // 36
  330. 1, // 37
  331. 1, // 38
  332. 1, // 39
  333. 1, // 40
  334. 1, // 41
  335. 1, // 42
  336. 1, // 43
  337. 1, // 44
  338. 1, // 45
  339. 1, // 46
  340. 1, // 47
  341. 1, // 48
  342. 1, // 49
  343. 1, // 50
  344. 1, // 51
  345. 1, // 52
  346. 1, // 53
  347. 1, // 54
  348. 1, // 55
  349. 1, // 56
  350. 1, // 57
  351. 1, // 58
  352. 1, // 59
  353. 1, // 60
  354. 1, // 61
  355. 1, // 62
  356. 1, // 63
  357. 1, // 64
  358. 1, // 65
  359. 1, // 66
  360. 1, // 67
  361. 1, // 68
  362. 1, // 69
  363. 1, // 70
  364. 1, // 71
  365. 1, // 72
  366. 1, // 73
  367. 1, // 74
  368. 1, // 75
  369. 1, // 76
  370. 1, // 77
  371. 1, // 78
  372. 1, // 79
  373. 1, // 80
  374. 1, // 81
  375. 1, // 82
  376. 1, // 83
  377. 1, // 84
  378. 1, // 85
  379. 1, // 86
  380. 1, // 87
  381. 1, // 88
  382. 1, // 89
  383. 1, // 90
  384. 1, // 91
  385. 1, // 92
  386. 1, // 93
  387. 1, // 94
  388. 1, // 95
  389. 1, // 96
  390. 1, // 97
  391. 1, // 98
  392. 1, // 99
  393. 1, // 100
  394. 1, // 101
  395. 1, // 102
  396. 1, // 103
  397. 1, // 104
  398. 1, // 105
  399. 1, // 106
  400. 1, // 107
  401. 1, // 108
  402. 1, // 109
  403. 1, // 110
  404. 1, // 111
  405. 1, // 112
  406. 1, // 113
  407. 1, // 114
  408. 1, // 115
  409. 1, // 116
  410. 1, // 117
  411. 1, // 118
  412. 1, // 119
  413. 1, // 120
  414. 1, // 121
  415. 1, // 122
  416. 1, // 123
  417. 1, // 124
  418. 1, // 125
  419. 1, // 126
  420. 1, // 127
  421. 1, // 128
  422. 1, // 129
  423. 1, // 130
  424. 1, // 131
  425. 1, // 132
  426. 1, // 133
  427. 1, // 134
  428. 1, // 135
  429. 1, // 136
  430. 1, // 137
  431. 1, // 138
  432. 1, // 139
  433. 1, // 140
  434. 1, // 141
  435. 1, // 142
  436. 1, // 143
  437. 1, // 144
  438. 1, // 145
  439. 1, // 146
  440. 1, // 147
  441. 1, // 148
  442. 1, // 149
  443. 1, // 150
  444. 1, // 151
  445. 1, // 152
  446. 1, // 153
  447. 1, // 154
  448. 1, // 155
  449. 1, // 156
  450. 1, // 157
  451. 1, // 158
  452. 1, // 159
  453. 1, // 160
  454. 1, // 161
  455. 1, // 162
  456. 1, // 163
  457. 1, // 164
  458. 1, // 165
  459. 1, // 166
  460. 1, // 167
  461. 1, // 168
  462. 1, // 169
  463. 1, // 170
  464. 1, // 171
  465. 1, // 172
  466. 1, // 173
  467. 1, // 174
  468. 1, // 175
  469. 1, // 176
  470. 1, // 177
  471. 1, // 178
  472. 1, // 179
  473. 1, // 180
  474. 1, // 181
  475. 1, // 182
  476. 1, // 183
  477. 1, // 184
  478. 1, // 185
  479. 1, // 186
  480. 1, // 187
  481. 1, // 188
  482. 1, // 189
  483. 1, // 190
  484. 1, // 191
  485. 3, // 192
  486. 2, // 193
  487. 4, // 194
  488. 6, // 195
  489. 5, // 196
  490. 7, // 197
  491. 1, // 198
  492. 8, // 199
  493. 3, // 200
  494. 2, // 201
  495. 4, // 202
  496. 5, // 203
  497. 3, // 204
  498. 2, // 205
  499. 4, // 206
  500. 5, // 207
  501. 1, // 208
  502. 6, // 209
  503. 3, // 210
  504. 2, // 211
  505. 4, // 212
  506. 6, // 213
  507. 5, // 214
  508. 1, // 215
  509. 1, // 216
  510. 3, // 217
  511. 2, // 218
  512. 4, // 219
  513. 5, // 220
  514. 2, // 221
  515. 1, // 222
  516. 1, // 223
  517. 3, // 224
  518. 2, // 225
  519. 4, // 226
  520. 6, // 227
  521. 5, // 228
  522. 7, // 229
  523. 1, // 230
  524. 8, // 231
  525. 3, // 232
  526. 2, // 233
  527. 4, // 234
  528. 5, // 235
  529. 3, // 236
  530. 2, // 237
  531. 4, // 238
  532. 5, // 239
  533. 1, // 240
  534. 6, // 241
  535. 3, // 242
  536. 2, // 243
  537. 4, // 244
  538. 6, // 245
  539. 5, // 246
  540. 1, // 247
  541. 1, // 248
  542. 3, // 249
  543. 2, // 250
  544. 4, // 251
  545. 5, // 252
  546. 2, // 253
  547. 1, // 254
  548. 5 // 255
  549. };
  550.