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.

919 lines
38 KiB

  1. PAGE ,132
  2. TITLE MS-DOS 5.0 Keyboard Definition File
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4. ;; MS-DOS 5.0 - NLS Support - Keyboard Definition File
  5. ;; (c) Copyright Microsoft Corp 1988-91, 93
  6. ;;
  7. ;;����������������������������������������������������������������������ͻ
  8. ;;� This file only for NT DOS 1.0! �
  9. ;;� 3/20/91 YST Microsoft IPG, Ireland �
  10. ;;� 2/25/93 YST Microsoft Corp. Redmond �
  11. ;;����������������������������������������������������������������������ͼ
  12. ;;
  13. ;; This the file header and table pointers ONLY.
  14. ;; The actual tables are contained in seperate source files.
  15. ;; These are:
  16. ;; KDFDV.ASM - English Dvorak
  17. ;; KDFSP.ASM - Spanish
  18. ;; KDFPO.ASM - Portuguese
  19. ;; KDFGE.ASM - German
  20. ;; KDFIT141.ASM - Italian
  21. ;; KDFFR189.ASM - French
  22. ;; KDFSG.ASM - Swiss German
  23. ;; KDFSF.ASM - Swiss French
  24. ;; KDFDK.ASM - Danish
  25. ;; KDFUK166.ASM - English
  26. ;; KDFBE.ASM - Belgium
  27. ;; KDFNL.ASM - Netherlands
  28. ;; KDFNO.ASM - Norway
  29. ;; KDFCF.ASM - French Canadian
  30. ;; KDFLA.ASM - Latin American
  31. ;; KDFSV.ASM - SWEDEN -----> This moddule is used for both Sweden
  32. ;; and Finland - exact same template
  33. ;; KDFSv(U).ASM - Finland -----> Same module as Sweden eliminated
  34. ;; KDFRU091.ASM - Russian [YST 1/21/91 : added Russia]
  35. ;;
  36. ;;
  37. ;; daytona begin
  38. ;;
  39. ;; KDFBR.ASM - Brazilian 274
  40. ;; KDFBG.ASM - Bulganian
  41. ;; KDFCZ.ASM - Czech
  42. ;; KDFGK.ASM - Greek
  43. ;; KDFHU.ASM - Hungarian
  44. ;; KDFIC.ASM - Iceland
  45. ;; KDFPL.ASM - Polish
  46. ;; KDFRO.ASM - Romanian
  47. ;; KDFSL.ASM - Slovak
  48. ;; KDFYU.ASM - Slovenian, Yugoslavian, Coratian
  49. ;; KDFTR440.ASM - Turkish F
  50. ;; KDFTR.ASM - Turkish Q
  51. ;; KDFIT142.ASM - Itlian 142
  52. ;; daytona end
  53. ;;
  54. ;; Dummy US - US
  55. ;;
  56. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  57. ;;
  58. ;;
  59. CODE SEGMENT PUBLIC 'CODE' ;;
  60. ASSUME CS:CODE,DS:CODE ;;
  61. ;;
  62. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  63. ;;***************************************
  64. ;; File Header
  65. ;;***************************************
  66. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  67. ;;
  68. DB 0FFh,'KEYB ' ;; signature
  69. DB 8 DUP(0) ;; reserved
  70. DW 0460H ;; maximum size of Common Xlat Sect (650)
  71. DW 01F0H ;; max size of Specific Xlat Sect (350)
  72. DW 0280H ;; max size of State Logic (400)
  73. DW 0 ;;AC000;reserved
  74. IFDEF PRC
  75. DW 18 + 12 + 1 ;;AC000 number of IDs, KCHANG added Estonian
  76. DW 19 + 11 + 1 ;;AC000 number of languages
  77. ELSE
  78. IFDEF TAIWAN
  79. DW 18 + 12 + 1 ;;AC000 number of IDs, KCHANG added Estonian
  80. DW 19 + 11 + 1 ;;AC000 number of languages
  81. ELSE
  82. DW 18 + 12 + 1 ;;AC000 number of IDs, KCHANG added Estonian
  83. DW 19 + 11 + 1 + 1 ;;AC000 number of languages, added Japanese
  84. ENDIF
  85. ENDIF
  86. DB 'GR' ;; LANGUAGE CODE TABLE
  87. DW OFFSET GE_LANG_ENT,0 ;;
  88. DB 'SP' ;;
  89. DW OFFSET SP_LANG_ENT,0 ;;
  90. DB 'FR' ;;
  91. DW OFFSET FR2_LANG_ENT,0 ;;
  92. DB 'DK' ;;
  93. DW OFFSET DK_LANG_ENT,0 ;;
  94. DB 'SG' ;;
  95. DW OFFSET SG_LANG_ENT,0 ;;
  96. DB 'IT' ;;
  97. DW OFFSET IT2_LANG_ENT,0 ;;
  98. DB 'UK' ;;
  99. DW OFFSET UK2_LANG_ENT,0 ;;
  100. DB 'BE' ;;
  101. DW OFFSET BE_LANG_ENT,0 ;;
  102. DB 'SF' ;;
  103. DW OFFSET SF_LANG_ENT,0 ;;
  104. DB 'NL' ;;
  105. DW OFFSET NL_LANG_ENT,0 ;;
  106. DB 'PO' ;;
  107. DW OFFSET PO_LANG_ENT,0 ;;
  108. DB 'NO' ;;
  109. DW OFFSET NO_LANG_ENT,0 ;;
  110. DB 'CF' ;;
  111. DW OFFSET CF_LANG_ENT,0 ;;
  112. DB 'SV' ;;
  113. DW OFFSET SV_LANG_ENT,0 ;;
  114. DB 'SU' ;;
  115. DW OFFSET SU_LANG_ENT,0 ;;
  116. DB 'LA' ;;
  117. DW OFFSET LA_LANG_ENT,0 ;;
  118. DB 'DV' ;;(YST);
  119. DW OFFSET DV_LANG_ENT,0 ;;(YST); Left single-handed
  120. DB 'RU' ;;(YST);
  121. DW OFFSET RU1_LANG_ENT,0 ;;(YST); Russia
  122. ;
  123. ; daytona begin
  124. ;
  125. DB 'BR'
  126. DW OFFSET BR_LANG_ENT, 0
  127. DB 'BG'
  128. DW OFFSET BG_LANG_ENT, 0
  129. DB 'CZ'
  130. DW OFFSET CZ_LANG_ENT, 0
  131. DB 'GK'
  132. DW OFFSET GK_LANG_ENT, 0
  133. DB 'HU'
  134. DW OFFSET HU_LANG_ENT, 0
  135. DB 'IS'
  136. DW OFFSET IC_LANG_ENT, 0
  137. DB 'PL'
  138. DW OFFSET PL_LANG_ENT, 0
  139. DB 'RO'
  140. DW OFFSET RO_LANG_ENT, 0
  141. DB 'SL'
  142. DW OFFSET SL_LANG_ENT, 0
  143. DB 'YU'
  144. DW OFFSET YU_LANG_ENT, 0
  145. DB 'TR'
  146. DW OFFSET TR2_LANG_ENT, 0
  147. DB 'ET'
  148. DW OFFSET ET_LANG_ENT, 0
  149. ;
  150. ; daytona end
  151. ;
  152. DB 'JP' ;;M000 ;JP9002
  153. DW OFFSET JP_LANG_ENT, 0 ;;M000 ;JP9002
  154. IFDEF PRC
  155. DB 'CH'
  156. DW OFFSET DUMMY_ENT,0 ;;
  157. ENDIF
  158. IFDEF TAIWAN
  159. DB 'CH'
  160. DW OFFSET DUMMY_ENT,0 ;;
  161. ENDIF
  162. DB 'US' ;;
  163. DW OFFSET DUMMY_ENT,0 ;;
  164. DW 172 ;;AN000;ID CODE TABLE ***************************
  165. DW OFFSET SP_LANG_ENT,0 ;;AN000;
  166. DW 189 ;;AN000;
  167. DW OFFSET FR2_LANG_ENT,0 ;;AN000;
  168. DW 159 ;;AN000;
  169. DW OFFSET DK_LANG_ENT,0 ;;AN000;
  170. DW 000 ;;AN000;
  171. DW OFFSET SG_LANG_ENT,0 ;;AN000;
  172. DW 129 ;;AN000;
  173. DW OFFSET GE_LANG_ENT,0 ;;AN000;
  174. DW 141 ;;AN000;
  175. DW OFFSET IT2_LANG_ENT,0 ;;AN000;
  176. ; daytona begin
  177. DW 142
  178. DW OFFSET IT1_LANG_ENT,0
  179. ; daytona end
  180. DW 166 ;;AN000;
  181. DW OFFSET UK2_LANG_ENT,0 ;;AN000;
  182. DW 120 ;;AN000;
  183. DW OFFSET BE_LANG_ENT,0 ;;AN000;
  184. DW 143 ;;AN000;
  185. DW OFFSET NL_LANG_ENT,0 ;;AN000;
  186. DW 150 ;;AN000;
  187. DW OFFSET SF_LANG_ENT,0 ;;AN000;
  188. DW 153 ;;AN000;
  189. DW OFFSET SV_LANG_ENT,0 ;;AN000;
  190. DW 155 ;;AN000;
  191. DW OFFSET NO_LANG_ENT,0 ;;AN000;
  192. DW 163 ;;AN000;
  193. DW OFFSET PO_LANG_ENT,0 ;;AN000;
  194. DW 058 ;;AN000;
  195. DW OFFSET CF_LANG_ENT,0 ;;AN000;
  196. DW 171 ;;AN000;
  197. DW OFFSET LA_LANG_ENT,0 ;;AN000;
  198. DW 091 ;;(YST)
  199. DW OFFSET RU1_LANG_ENT,0 ;;(YST)
  200. DW 985 ;;(YST)
  201. DW OFFSET DV_LANG_ENT,0 ;;(YST)
  202. ;
  203. ; daytona begin
  204. ;
  205. DW 274
  206. DW OFFSET BR_LANG_ENT, 0
  207. DW 442
  208. DW OFFSET BG_LANG_ENT, 0
  209. DW 243
  210. DW OFFSET CZ_LANG_ENT, 0
  211. DW 319
  212. DW OFFSET GK_LANG_ENT, 0
  213. DW 208
  214. DW OFFSET HU_LANG_ENT, 0
  215. DW 161
  216. DW OFFSET IC_LANG_ENT, 0
  217. DW 214
  218. DW OFFSET PL_LANG_ENT, 0
  219. ;;;DW 333
  220. ;;;DW OFFSET RO_LANG_ENT, 0
  221. DW 245
  222. DW OFFSET SL_LANG_ENT, 0
  223. DW 234
  224. DW OFFSET YU_LANG_ENT, 0
  225. DW 179
  226. DW OFFSET TR1_LANG_ENT, 0
  227. DW 440
  228. DW OFFSET TR2_LANG_ENT, 0
  229. DW 425
  230. DW OFFSET ET_LANG_ENT, 0 ;;KCHANG added Estonian
  231. ;
  232. ; daytona end
  233. ;
  234. DW 103 ;;AN000;
  235. DW OFFSET DUMMY_ENT,0 ;;AN000;
  236. ; ;;
  237. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  238. ;;***************************************
  239. ;; Language Entries
  240. ;;***************************************
  241. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  242. ;;
  243. EXTRN SP_LOGIC:NEAR ;;
  244. EXTRN SP_437_XLAT:NEAR ;;
  245. EXTRN SP_850_XLAT:NEAR ;;
  246. ;;
  247. SP_LANG_ENT: ;; language entry for SPANISH
  248. DB 'SP' ;;
  249. DW 172 ;; AN000;ID entry (ID CODE)
  250. DW OFFSET SP_LOGIC,0 ;; pointer to LANG kb table
  251. DB 1 ;; AN000;number of IDs
  252. DB 2 ;; number of code pages
  253. DW 850 ;; code page
  254. DW OFFSET SP_850_XLAT,0 ;; table pointer
  255. DW 437 ;; code page
  256. DW OFFSET SP_437_XLAT,0 ;; table pointer
  257. ;;
  258. ;*****************************************************************************
  259. EXTRN FR2_LOGIC:NEAR ;;AC000;
  260. EXTRN FR2_437_XLAT:NEAR ;;AC000;
  261. EXTRN FR2_850_XLAT:NEAR ;;AC000;
  262. ;;
  263. FR2_LANG_ENT: ;; language entry for FRANCE
  264. DB 'FR' ;; PRIMARY KEYBOARD ID VALUE
  265. DW 189 ;;AC000; ID entry
  266. DW OFFSET FR2_LOGIC,0 ;;AC000; pointer to LANG kb table
  267. DB 1 ;;AC000; number of ids
  268. DB 2 ;;AC000; number of code pages
  269. DW 437 ;;AC000; code page
  270. DW OFFSET FR2_437_XLAT,0 ;;AC000; table pointer
  271. DW 850 ;;AC000; code page
  272. DW OFFSET FR2_850_XLAT,0 ;;AC000; table pointer
  273. ;;
  274. ;****************************************************************************
  275. EXTRN PO_LOGIC:NEAR ;;AC000;
  276. EXTRN PO_850_XLAT:NEAR ;;AC000;
  277. EXTRN PO_860_XLAT:NEAR ;;AC000;
  278. ;;
  279. PO_LANG_ENT: ;; language entry for PORTUGAL
  280. DB 'PO' ;;
  281. DW 163 ;;AN000; ID entry
  282. DW OFFSET PO_LOGIC,0 ;; pointer to LANG kb table
  283. DB 1 ;;AC000; number of ids
  284. DB 2 ;;AC000; number of code pages
  285. DW 850 ;;AC000; code page
  286. DW OFFSET PO_850_XLAT,0 ;;AC000; table pointer
  287. DW 860 ;;AC000; code page
  288. DW OFFSET PO_860_XLAT,0 ;;AC000; table pointer
  289. ;;
  290. ;*****************************************************************************
  291. EXTRN DK_LOGIC:NEAR ;;
  292. EXTRN DK_850_XLAT:NEAR ;;AC000;
  293. EXTRN DK_865_XLAT:NEAR ;;AC000;
  294. ;;
  295. DK_LANG_ENT: ;; language entry for DENMARK
  296. DB 'DK' ;;
  297. DW 159 ;;AN000; ID entry
  298. DW OFFSET DK_LOGIC,0 ;; pointer to LANG kb table
  299. DB 1 ;;AN000;number of ids
  300. DB 2 ;;AC000; number of code pages
  301. DW 850 ;;AC000; code page
  302. DW OFFSET DK_850_XLAT,0 ;;AC000; table pointer
  303. DW 865 ;;AC000; code page
  304. DW OFFSET DK_865_XLAT,0 ;;AC000; table pointer
  305. ;;
  306. ;*****************************************************************************
  307. EXTRN SG_LOGIC:NEAR ;;
  308. EXTRN SG_850_XLAT:NEAR ;;
  309. EXTRN SG_437_XLAT:NEAR ;;
  310. ;;
  311. SG_LANG_ENT: ;; language entry for SWISS GERMAN
  312. DB 'SG' ;;
  313. DW 000 ;;AN001; ID entry
  314. DW OFFSET SG_LOGIC,0 ;; pointer to LANG kb table
  315. DB 1 ;;AN000; number of ids
  316. DB 2 ;;AC000; number of code pages
  317. DW 850 ;; code page ;;;dcl 850 now default March 8, 1988
  318. DW OFFSET SG_850_XLAT,0 ;; table pointer
  319. DW 437 ;; code page
  320. DW OFFSET SG_437_XLAT,0 ;; table pointer
  321. ;;
  322. ;*****************************************************************************
  323. EXTRN SF_LOGIC:NEAR ;;
  324. EXTRN SF_850_XLAT:NEAR ;;
  325. EXTRN SF_437_XLAT:NEAR ;;
  326. ;;
  327. SF_LANG_ENT: ;; language entry for SWISS FRENCH
  328. DB 'SF' ;;
  329. DW 150 ;;AN000; ID entry
  330. DW OFFSET SF_LOGIC,0 ;; pointer to LANG kb table
  331. DB 1 ;;AN000; number of ids
  332. DB 2 ;;AC000; number of code pages
  333. DW 850 ;; code page ;;;dcl 850 now default March 8, 1988
  334. DW OFFSET SF_850_XLAT,0 ;; table pointer
  335. DW 437 ;; code page
  336. DW OFFSET SF_437_XLAT,0 ;; table pointer
  337. ;;
  338. ;*****************************************************************************
  339. EXTRN GE_LOGIC:NEAR ;;
  340. EXTRN GE_437_XLAT:NEAR ;;
  341. EXTRN GE_850_XLAT:NEAR ;;
  342. ;;
  343. GE_LANG_ENT: ;; language entry for GERMANY
  344. DB 'GR' ;;
  345. DW 129 ;;AN000; ID entry
  346. DW OFFSET GE_LOGIC,0 ;; pointer to LANG kb table
  347. DB 1 ;;AN000; number of ids
  348. DB 2 ;;AC000; number of code pages
  349. DW 437 ;; code page
  350. DW OFFSET GE_437_XLAT,0 ;; table pointer
  351. DW 850 ;; code page
  352. DW OFFSET GE_850_XLAT,0 ;; table pointer
  353. ;;
  354. ;*****************************************************************************
  355. ;; Daytona beging
  356. EXTRN IT1_LOGIC:NEAR ;;
  357. EXTRN IT1_437_XLAT:NEAR ;;
  358. EXTRN IT1_850_XLAT:NEAR ;;
  359. ;;
  360. IT1_LANG_ENT: ;;AC000; language entry for ITALY
  361. DB 'IT' ;;AC000; PRIMARY KEYBOARD ID VALUE
  362. DW 142 ;;AN000; ID entry
  363. DW OFFSET IT1_LOGIC,0 ;;AN000; pointer to LANG kb table
  364. DB 2 ;;AC000; number of ids
  365. DB 2 ;;AC000; number of code pages
  366. DW 437 ;;AC000; code page
  367. DW OFFSET IT1_437_XLAT,0 ;;AC000; table pointer
  368. DW 850 ;;AC000; code page
  369. DW OFFSET IT1_850_XLAT,0 ;;AC000; table pointer
  370. ;; daytona end
  371. ;*****************************************************************************
  372. ;;
  373. EXTRN IT2_LOGIC:NEAR ;;
  374. EXTRN IT2_437_XLAT:NEAR ;;
  375. EXTRN IT2_850_XLAT:NEAR ;;
  376. ;;
  377. IT2_LANG_ENT: ;;AC000; language entry for ITALY
  378. DB 'IT' ;;AC000; PRIMARY KEYBOARD ID VALUE
  379. DW 141 ;;AN000; ID entry
  380. DW OFFSET IT2_LOGIC,0 ;;AN000; pointer to LANG kb table
  381. DB 1 ;;AC000; number of ids
  382. DB 2 ;;AC000; number of code pages
  383. DW 437 ;;AC000; code page
  384. DW OFFSET IT2_437_XLAT,0 ;;AC000; table pointer
  385. DW 850 ;;AC000; code page
  386. DW OFFSET IT2_850_XLAT,0 ;;AC000; table pointer
  387. ;;
  388. ;*****************************************************************************
  389. EXTRN UK2_LOGIC:FAR ;;AC000;
  390. EXTRN UK2_437_XLAT:FAR ;;AC000;
  391. EXTRN UK2_850_XLAT:FAR ;;AC000;
  392. ;;
  393. UK2_LANG_ENT: ;;AN000; language entry for UNITED KINGDOM
  394. DB 'UK' ;;AC000; PRIMARY KEYBOARD ID VALUE
  395. DW 166 ;;AC000; ID entry
  396. DW OFFSET UK2_LOGIC,0 ;;AC000; pointer to LANG kb table
  397. DB 1 ;; AN000;number of ids
  398. DB 2 ;;AN000; number of code pages
  399. DW 437 ;;AC000; code page
  400. DW OFFSET UK2_437_XLAT,0 ;;AC000; table pointer
  401. DW 850 ;;AC000; code page
  402. DW OFFSET UK2_850_XLAT,0 ;;AC000; table pointer
  403. ;;
  404. ;*****************************************************************************
  405. EXTRN BE_LOGIC:NEAR ;;
  406. EXTRN BE_437_XLAT:NEAR ;;
  407. EXTRN BE_850_XLAT:NEAR ;;
  408. ;;
  409. BE_LANG_ENT: ;; language entry for BELGIUM
  410. DB 'BE' ;;
  411. DW 120 ;;AN000; ID entry
  412. DW OFFSET BE_LOGIC,0 ;; pointer to LANG kb table
  413. DB 1 ;;AN000; number of ids
  414. DB 2 ;;AN000; number of code pages
  415. DW 850 ;; code page ;; default to 850 - same as country.sys
  416. DW OFFSET BE_850_XLAT,0 ;; table pointer
  417. DW 437 ;; code page
  418. DW OFFSET BE_437_XLAT,0 ;; table pointer
  419. ;;
  420. ;*****************************************************************************
  421. EXTRN NL_LOGIC:NEAR ;;
  422. EXTRN NL_437_XLAT:NEAR ;;
  423. EXTRN NL_850_XLAT:NEAR ;;
  424. ;;
  425. NL_LANG_ENT: ;; language entry for NETHERLANDS
  426. DB 'NL' ;;
  427. DW 143 ;;AN000; ID entry
  428. DW OFFSET NL_LOGIC,0 ;; pointer to LANG kb table
  429. DB 1 ;;AN000; number of ids
  430. DB 2 ;;AN000; number of code pages
  431. DW 437 ;; code page
  432. DW OFFSET NL_437_XLAT,0 ;; table pointer
  433. DW 850 ;; code page
  434. DW OFFSET NL_850_XLAT,0 ;; table pointer
  435. ;;
  436. ;*****************************************************************************
  437. EXTRN NO_LOGIC:NEAR ;;
  438. EXTRN NO_850_XLAT:NEAR ;;AC000;
  439. EXTRN NO_865_XLAT:NEAR ;;AC000;
  440. ;;
  441. NO_LANG_ENT: ;; language entry for NORWAY
  442. DB 'NO' ;;
  443. DW 155 ;;AN000; ID entry
  444. DW OFFSET NO_LOGIC,0 ;; pointer to LANG kb table
  445. DB 1 ;;AN000; number of ids
  446. DB 2 ;;AN000; number of code pages
  447. DW 850 ;;AC000; code page
  448. DW OFFSET NO_850_XLAT,0 ;;AC000; table pointer
  449. DW 865 ;;AC000; code page
  450. DW OFFSET NO_865_XLAT,0 ;;AC000; table pointer
  451. ;; ;;
  452. ;*****************************************************************************
  453. EXTRN SV_LOGIC:NEAR ;;
  454. EXTRN SV_437_XLAT:NEAR ;;
  455. EXTRN SV_850_XLAT:NEAR ;;
  456. ;;
  457. SV_LANG_ENT: ;; language entry for SWEDEN
  458. DB 'SV' ;;
  459. DW 153 ;;AN000; ID entry
  460. DW OFFSET SV_LOGIC,0 ;; pointer to LANG kb table
  461. DB 1 ;;AN000; number of ids
  462. DB 2 ;;AN000; number of code pages
  463. DW 437 ;; code page
  464. DW OFFSET SV_437_XLAT,0 ;; table pointer
  465. DW 850 ;; code page
  466. DW OFFSET SV_850_XLAT,0 ;; table pointer
  467. ;;
  468. ;*****************************************************************************
  469. ;; Already declared external above
  470. ;; EXTRN Sv_LOGIC:NEAR ;; Finland & Sweden have same layout,
  471. ;; EXTRN Sv_437_XLAT:NEAR ;; but different code page defaults,
  472. ;; EXTRN Sv_850_XLAT:NEAR ;; use Sweden data for Finland
  473. ;;
  474. SU_LANG_ENT: ;; language entry for FINLAND
  475. DB 'SU' ;;
  476. DW 153 ;; ID entry
  477. DW OFFSET Sv_LOGIC,0 ;; pointer to LANG kb table
  478. DB 1 ;; number of ids
  479. DB 2 ;; number of code pages
  480. DW 850 ;; code page ;;;dcl 850 now default, March 8, 1988
  481. DW OFFSET Sv_850_XLAT,0 ;; table pointer
  482. DW 437 ;; code page
  483. DW OFFSET Sv_437_XLAT,0 ;; table pointer
  484. ;;
  485. ;*****************************************************************************
  486. EXTRN CF_LOGIC:NEAR ;;
  487. EXTRN CF_863_XLAT:NEAR ;;
  488. EXTRN CF_850_XLAT:NEAR ;;
  489. ;;
  490. CF_LANG_ENT: ;; language entry for Canadian-French
  491. DB 'CF' ;;
  492. DW 058 ;; ID entry
  493. DW OFFSET CF_LOGIC,0 ;; pointer to LANG kb table
  494. DB 1 ;; number of ids
  495. DB 2 ;; number of code pages
  496. DW 863 ;; code page
  497. DW OFFSET CF_863_XLAT,0 ;; table pointer
  498. DW 850 ;; code page
  499. DW OFFSET CF_850_XLAT,0 ;; table pointer
  500. ;;
  501. ;*****************************************************************************
  502. ;;
  503. EXTRN RU1_LOGIC:NEAR ;;
  504. EXTRN RU1_866_XLAT:NEAR ;;
  505. EXTRN RU1_437_XLAT:NEAR ;;
  506. EXTRN RU1_850_XLAT:NEAR ;;
  507. EXTRN RU1_855_XLAT:NEAR ;;
  508. EXTRN RU1_1251_XLAT:NEAR ;;
  509. ;;
  510. RU1_LANG_ENT: ;; language entry for Russia
  511. DB 'RU' ;;
  512. DW 091 ;; ID entry
  513. DW OFFSET RU1_LOGIC,0 ;; pointer to LANG kb table
  514. DB 1 ;; number of ids
  515. DB 5 ;; number of code pages
  516. DW 866 ;; code page
  517. DW OFFSET RU1_866_XLAT,0 ;; table pointer
  518. DW 437 ;; code page ;
  519. DW OFFSET RU1_437_XLAT,0 ;; table pointer
  520. DW 850 ;; code page
  521. DW OFFSET RU1_850_XLAT,0 ;; table pointer
  522. DW 855 ;; code page
  523. DW OFFSET RU1_855_XLAT,0 ;; table pointer
  524. DW 1251 ;; code page ;
  525. DW OFFSET RU1_1251_XLAT,0 ;; table pointer
  526. ;;
  527. ;*****************************************************************************
  528. EXTRN LA_LOGIC:NEAR ;;
  529. EXTRN LA_850_XLAT:NEAR ;;
  530. EXTRN LA_437_XLAT:NEAR ;;
  531. ;;
  532. LA_LANG_ENT: ;; language entry for LATIN AMERICAN
  533. DB 'LA' ;;
  534. DW 171 ;;AN000; ID entry
  535. DW OFFSET LA_LOGIC,0 ;; pointer to LANG kb table
  536. DB 1 ;;AN000; number of ids
  537. DB 2 ;;AN000; number of code pages
  538. DW 850 ;; code page
  539. DW OFFSET LA_850_XLAT,0 ;; table pointer
  540. DW 437 ;; code page ; default to 437 -same as country.sys
  541. DW OFFSET LA_437_XLAT,0 ;; table pointer
  542. ;;
  543. ;*****************************************************************************
  544. ;;
  545. EXTRN DV_LOGIC:FAR ;;
  546. EXTRN DV_COMMON_XLAT:FAR ;;
  547. ;;
  548. DV_LANG_ENT: ;; language entry for Yugo (Cyrillic)
  549. DB 'DV' ;;
  550. DW 985 ;; ID entry
  551. DW OFFSET DV_LOGIC,0 ;; pointer to LANG kb table
  552. DB 1 ;; number of ids
  553. DB 2 ;; number of code pages
  554. DW 437 ;; code page ; default to 437 -same as country.sys
  555. DW OFFSET DV_COMMON_XLAT,0 ;; table pointer
  556. DW 850 ;; code page
  557. DW OFFSET DV_COMMON_XLAT,0 ;; table pointer
  558. ;;
  559. ;*****************************************************************************
  560. ;
  561. ; daytona begin
  562. ;
  563. ;***************************************************************************** ;;
  564. ; [Verav : added Brazil IBM layout - Feb 92]
  565. EXTRN BR_LOGIC:NEAR ;;AC000;
  566. EXTRN BR_850_XLAT:NEAR ;;AC000;
  567. EXTRN BR_437_XLAT:NEAR ;;AC000;
  568. ;;
  569. BR_LANG_ENT: ;; language entry for BRAZIL
  570. DB 'BR' ;;
  571. DW 274 ;;AN000; ID entry
  572. DW OFFSET BR_LOGIC,0 ;; pointer to LANG kb table
  573. DB 1 ;;AC000; number of ids
  574. DB 2 ;;AC000; number of code pages
  575. DW 850 ;;AC000; code page
  576. DW OFFSET BR_850_XLAT,0 ;;AC000; table pointer
  577. DW 437 ;;AC000; code page
  578. DW OFFSET BR_437_XLAT,0 ;;AC000; table pointer
  579. ;***************************************************************************** ;;
  580. ;; JH added Bulgarian 241 keyboard YST converted from Windows
  581. EXTRN BG_LOGIC:NEAR ;;AC000;
  582. EXTRN BG_866_XLAT:NEAR ;;AC000;
  583. EXTRN BG_850_XLAT:NEAR ;;AC000;
  584. EXTRN BG_855_XLAT:NEAR ;;AC000;
  585. ;;
  586. BG_LANG_ENT: ;; language entry for Bulgarian
  587. DB 'BG' ;;
  588. DW 442 ;;AN000; ID entry
  589. DW OFFSET BG_LOGIC,0 ;; pointer to LANG kb table
  590. DB 1 ;;AC000; number of ids
  591. DB 3 ;; number of code pages
  592. DW 866 ;; code page
  593. DW OFFSET BG_866_XLAT,0 ;; table pointer
  594. DW 850 ;; code page
  595. DW OFFSET BG_850_XLAT,0 ;; table pointer
  596. DW 855 ;; code page
  597. DW OFFSET BG_855_XLAT,0 ;; table pointer
  598. ;;;*****************************************************************************
  599. EXTRN CZ_LOGIC:NEAR ;;
  600. EXTRN CZ_850_XLAT:NEAR ;;
  601. EXTRN CZ_852_XLAT:NEAR ;;
  602. ;;
  603. CZ_LANG_ENT: ;; language entry for CZECH
  604. DB 'CZ' ;;
  605. DW 243 ;; Keyboard ID entry |
  606. DW OFFSET CZ_LOGIC,0 ;; pointer to LANG kb table
  607. DB 1 ;; number of ids |
  608. DB 2 ;; number of code pages
  609. DW 850 ;; code page
  610. DW OFFSET CZ_850_XLAT,0 ;; table pointer
  611. DW 852 ;; code page
  612. DW OFFSET CZ_852_XLAT,0 ;; table pointer
  613. ;;
  614. ;*****************************************************************************
  615. EXTRN GK_LOGIC:NEAR ;;
  616. EXTRN GK_869_XLAT:NEAR ;;
  617. EXTRN GK_737_XLAT:NEAR ;;
  618. ;;
  619. GK_LANG_ENT: ;;AC000; language entry for GREEK
  620. DB 'GK' ;;AC000; PRIMARY KEYBOARD ID VALUE
  621. DW 319 ;;AN000; ID entry
  622. DW OFFSET GK_LOGIC,0 ;;AN000; pointer to LANG kb table
  623. DB 1 ;;AC000; number of ids
  624. DB 2 ;;AC000; number of code pages
  625. DW 869 ;;AC000; code page
  626. DW OFFSET GK_869_XLAT,0 ;;AC000; table pointer
  627. DW 737 ;;AC000; cp needs new number from IBM
  628. DW OFFSET GK_737_XLAT,0 ;;AC000; table pointer
  629. ;;
  630. ;;
  631. ;*****************************************************************************
  632. EXTRN HU_LOGIC:NEAR ;;
  633. EXTRN HU_850_XLAT:NEAR ;;
  634. EXTRN HU_852_XLAT:NEAR ;;
  635. ;;
  636. HU_LANG_ENT: ;; language entry for HUNGARY
  637. DB 'HU' ;;
  638. DW 208 ;; Keyboard ID entry |
  639. DW OFFSET HU_LOGIC,0 ;; pointer to LANG kb table
  640. DB 1 ;; number of ids |
  641. DB 2 ;; number of code pages
  642. DW 850 ;; code page
  643. DW OFFSET HU_850_XLAT,0 ;; table pointer
  644. DW 852 ;; code page
  645. DW OFFSET HU_852_XLAT,0 ;; table pointer
  646. ;*****************************************************************************
  647. EXTRN IC_LOGIC:NEAR ;;
  648. EXTRN IC_861_XLAT:NEAR ;;
  649. EXTRN IC_850_XLAT:NEAR ;;
  650. ;;
  651. IC_LANG_ENT: ;; language entry for �sland
  652. DB 'IS' ;;
  653. DW 161 ;; ID entry
  654. DW OFFSET IC_LOGIC,0 ;; pointer to LANG kb table
  655. DB 1 ;; number of ids
  656. DB 2 ;; number of code pages
  657. DW 861 ;; code page
  658. DW OFFSET IC_861_XLAT,0 ;; table pointer
  659. DW 850 ;; code page
  660. DW OFFSET IC_850_XLAT,0 ;; table pointer
  661. ;;;*****************************************************************************
  662. EXTRN PL_LOGIC:NEAR ;;
  663. EXTRN PL_850_XLAT:NEAR ;;
  664. EXTRN PL_852_XLAT:NEAR ;;
  665. ;;
  666. PL_LANG_ENT: ;; language entry for POLAND
  667. DB 'PL' ;;
  668. DW 214 ;; Keyboard ID entry |
  669. DW OFFSET PL_LOGIC,0 ;; pointer to LANG kb table
  670. DB 1 ;; number of ids |
  671. DB 2 ;; number of code pages
  672. DW 850 ;; code page
  673. DW OFFSET PL_850_XLAT,0 ;; table pointer
  674. DW 852 ;; code page
  675. DW OFFSET PL_852_XLAT,0 ;; table pointer
  676. ;;;*****************************************************************************
  677. EXTRN RO_LOGIC:NEAR ;;
  678. EXTRN RO_850_XLAT:NEAR ;;
  679. EXTRN RO_852_XLAT:NEAR ;;
  680. ;;
  681. RO_LANG_ENT: ;; language entry for ROMANIA
  682. DB 'RO' ;;
  683. DW 333 ;; Keyboard ID entry |
  684. DW OFFSET RO_LOGIC,0 ;; pointer to LANG kb table
  685. DB 1 ;; number of ids |
  686. DB 2 ;; number of code pages
  687. DW 850 ;; code page
  688. DW OFFSET RO_850_XLAT,0 ;; table pointer
  689. DW 852 ;; code page
  690. DW OFFSET RO_852_XLAT,0 ;; table pointer
  691. ;;;*****************************************************************************
  692. EXTRN SL_LOGIC:NEAR ;;
  693. EXTRN SL_850_XLAT:NEAR ;;
  694. EXTRN SL_852_XLAT:NEAR ;;
  695. ;;
  696. SL_LANG_ENT: ;; language entry for SLOVAK
  697. DB 'SL' ;;
  698. DW 245 ;; Keyboard ID entry |
  699. DW OFFSET SL_LOGIC,0 ;; pointer to LANG kb table
  700. DB 1 ;; number of ids |
  701. DB 2 ;; number of code pages
  702. DW 850 ;; code page
  703. DW OFFSET SL_850_XLAT,0 ;; table pointer
  704. DW 852 ;; code page
  705. DW OFFSET SL_852_XLAT,0 ;; table pointer
  706. ;;;*****************************************************************************
  707. ;;
  708. EXTRN YU_LOGIC:NEAR ;;
  709. EXTRN YU_850_XLAT:NEAR ;;
  710. EXTRN YU_852_XLAT:NEAR ;;
  711. ;;
  712. YU_LANG_ENT: ;; language entry for YUGOSLAVIA
  713. DB 'YU' ;;
  714. DW 234 ;; Keyboard ID entry |
  715. DW OFFSET YU_LOGIC,0 ;; pointer to LANG kb table
  716. DB 1 ;; number of ids |
  717. DB 2 ;; number of code pages |
  718. DW 850 ;; code page
  719. DW OFFSET YU_850_XLAT,0 ;; table pointer
  720. DW 852 ;; code page
  721. DW OFFSET YU_852_XLAT,0 ;; table pointer
  722. ;;
  723. ;*****************************************************************************
  724. EXTRN TR_LOGIC:NEAR ;;AN000;
  725. EXTRN TR_850_XLAT:NEAR ;;AN000;
  726. EXTRN TR_857_XLAT:NEAR ;;AN000;
  727. ;;
  728. TR1_LANG_ENT: ;;AN000; language entry for Turkey 179
  729. DB 'TR' ;;AN000; SECONDARY KEYBOARD ID VALUE
  730. DW 179 ;;AN000; ID entry
  731. DW OFFSET TR_LOGIC,0 ;;AN000; pointer to LANG kb table
  732. DB 2 ;;AN000;number of ids
  733. DB 2 ;;AN000; number of code pages
  734. DW 850 ;;AN000; code page
  735. DW OFFSET TR_850_XLAT,0 ;;AN000; table pointer
  736. DW 857 ;;AN000; code page
  737. DW OFFSET TR_857_XLAT,0 ;;AN000; table pointer
  738. ;;
  739. ;*****************************************************************************
  740. EXTRN TR2_LOGIC:NEAR ;;
  741. EXTRN TR2_850_XLAT:NEAR ;;
  742. EXTRN TR2_857_XLAT:NEAR ;;
  743. ;;
  744. TR2_LANG_ENT: ;;AC000; language entry for ITALY
  745. DB 'TR' ;;AC000; PRIMARY KEYBOARD ID VALUE
  746. DW 440 ;;AN000; ID entry
  747. DW OFFSET TR2_LOGIC,0 ;;AN000; pointer to LANG kb table
  748. DB 1 ;;AC000; number of ids
  749. DB 2 ;;AC000; number of code pages
  750. DW 850 ;;AC000; code page
  751. DW OFFSET TR2_850_XLAT,0 ;;AC000; table pointer
  752. DW 857 ;;AC000; code page
  753. DW OFFSET TR2_857_XLAT,0 ;;AC000; table pointer
  754. ;
  755. ; daytona end
  756. ;
  757. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  758. EXTRN JP_LOGIC:NEAR ;; ;JP9002
  759. EXTRN JP_932_XLAT:NEAR ;; ;JP9002
  760. EXTRN JP_437_XLAT:NEAR ;; ;JP9002
  761. JP_LANG_ENT: ;; ;JP9002
  762. DB 'JP' ;; ;JP9002
  763. DW 194 ;; keyboard ID for Japan ;JP9009
  764. DW OFFSET JP_LOGIC, 0 ;; pointer to LANG kb table ;JP9002
  765. DB 1 ;; number of ids ;JP9002
  766. DB 2 ;; number of code pages ;JP9002
  767. DW 437 ;; code page ;JP9002
  768. DW OFFSET JP_437_XLAT, 0 ;; table pointer ;JP9002
  769. DW 932 ;; code page ;JP9002
  770. DW OFFSET JP_932_XLAT, 0 ;; table pointer ;JP9002
  771. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  772. ;*****************************************************************************
  773. EXTRN ET_LOGIC:NEAR ;;
  774. EXTRN ET_775_XLAT:NEAR ;;
  775. EXTRN ET_850_XLAT:NEAR ;;
  776. ;;
  777. ET_LANG_ENT: ;;AC000; language entry for ITALY
  778. DB 'ET' ;;AC000; PRIMARY KEYBOARD ID VALUE
  779. DW 425 ;;AN000; ID entry
  780. DW OFFSET ET_LOGIC,0 ;;AN000; pointer to LANG kb table
  781. DB 1 ;;AC000; number of ids
  782. DB 2 ;;AC000; number of code pages
  783. DW 775 ;;AC000; code page
  784. DW OFFSET ET_775_XLAT,0 ;;AC000; table pointer
  785. DW 850 ;;AC000; code page
  786. DW OFFSET ET_850_XLAT,0 ;;AC000; table pointer
  787. ;
  788. ; daytona end
  789. ;
  790. ;*****************************************************************************
  791. DUMMY_ENT: ;; language entry
  792. DB 'XX' ;;
  793. DW 103 ;;AC000; ID entry
  794. DW OFFSET DUMMY_LOGIC,0 ;; pointer to LANG kb table
  795. DB 1 ;;AC000; number of ids
  796. IFDEF PRC
  797. DB 9
  798. DW 936 ;; code page
  799. DW OFFSET DUMMY_XLAT_936,0 ;; table pointer
  800. ELSE
  801. IFDEF TAIWAN
  802. DB 9
  803. DW 950 ;; code page
  804. DW OFFSET DUMMY_XLAT_950,0 ;; table pointer
  805. ELSE
  806. DB 8 ;;AC000; number of code pages
  807. ENDIF
  808. ENDIF
  809. DW 437 ;; code page
  810. DW OFFSET DUMMY_XLAT_437,0 ;; table pointer
  811. DW 850 ;; code page
  812. DW OFFSET DUMMY_XLAT_850,0 ;; table pointer
  813. DW 852 ;; code page [Mihindu 11/30/90]
  814. DW OFFSET DUMMY_XLAT_852,0 ;; table pointer
  815. DW 860 ;; code page
  816. DW OFFSET DUMMY_XLAT_860,0 ;; table pointer
  817. DW 863 ;; code page
  818. DW OFFSET DUMMY_XLAT_863,0 ;; table pointer
  819. DW 865 ;; code page
  820. DW OFFSET DUMMY_XLAT_865,0 ;; table pointer
  821. DW 866 ;; code page [YST 3/19/91]
  822. DW OFFSET DUMMY_XLAT_866,0 ;; table pointer
  823. DW 855 ;; code page [YST 3/19/91]
  824. DW OFFSET DUMMY_XLAT_855,0 ;; table pointer
  825. ;;
  826. DUMMY_LOGIC: ;;
  827. DW LOGIC_END-$ ;; length
  828. DW 0 ;; special features
  829. DB 92H,0,0 ;; EXIT_STATE_LOGIC_COMMAND
  830. LOGIC_END: ;;
  831. ;;
  832. DUMMY_XLAT_437: ;;
  833. DW 6 ;; length of section
  834. DW 437 ;; code page
  835. DW 0 ;; LAST STATE
  836. ;;
  837. DUMMY_XLAT_850: ;;
  838. DW 6 ;; length of section
  839. DW 850 ;; code page
  840. DW 0 ;; LAST STATE
  841. ;;
  842. DUMMY_XLAT_852: ;; [Mihindu 11/30/90]
  843. DW 6 ;; length of section
  844. DW 852 ;; code page
  845. DW 0 ;; LAST STATE
  846. ;;
  847. DUMMY_XLAT_860: ;;
  848. DW 6 ;; length of section
  849. DW 860 ;; code page
  850. DW 0 ;; LAST STATE
  851. ;;
  852. DUMMY_XLAT_865: ;;
  853. DW 6 ;; length of section
  854. DW 865 ;; code page
  855. DW 0 ;; LAST STATE
  856. ;;
  857. DUMMY_XLAT_863: ;;
  858. DW 6 ;; length of section
  859. DW 863 ;; code page
  860. DW 0 ;; LAST STATE
  861. ;;
  862. DUMMY_XLAT_866: ;; (YST 3/19/91)
  863. DW 6 ;; length of section
  864. DW 866 ;; code page
  865. DW 0 ;; LAST STATE
  866. ;;
  867. DUMMY_XLAT_855: ;; (YST 3/19/91)
  868. DW 6 ;; length of section
  869. DW 855 ;; code page
  870. DW 0 ;; LAST STATE
  871. IFDEF PRC
  872. DUMMY_XLAT_936: ;; (YST 3/19/91)
  873. DW 6 ;; length of section
  874. DW 936 ;; code page
  875. DW 0 ;; LAST STATE
  876. ENDIF
  877. IFDEF TAIWAN
  878. DUMMY_XLAT_950: ;; (YST 3/19/91)
  879. DW 6 ;; length of section
  880. DW 950 ;; code page
  881. DW 0 ;; LAST STATE
  882. ENDIF
  883. ;;
  884. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  885. ;*****************************************************************************
  886. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  887. ;;
  888. CODE ENDS ;;
  889. END ;;