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.

1637 lines
56 KiB

  1. PAGE ,132
  2. ; * IBM CONFIDENTIAL * Jan 9 1990 *
  3. TITLE PC DOS 3.3 Keyboard Definition File
  4. ;; LATEST CHANGE P12 NUMERIC
  5. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  6. ;; PC DOS 3.3 - NLS Support - Keyboard Definition File
  7. ;; (c) Copyright IBM Corp 1986,1987
  8. ;;
  9. ;; This file contains the keyboard tables for Danish
  10. ;;
  11. ;; Linkage Instructions:
  12. ;; Refer to KDF.ASM.
  13. ;;
  14. ;;
  15. ;; Author: BILL DEVLIN - IBM Canada Laboratory - May 1986
  16. ;; Updated: MIKE SAUNDERS - WSD IBM Hursley Laboratory - August 1986
  17. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  18. ;;
  19. INCLUDE KEYBSHAR.INC ;;
  20. INCLUDE POSTEQU.INC ;;
  21. INCLUDE KEYBMAC.INC ;;
  22. ;;
  23. PUBLIC DK_LOGIC ;;
  24. PUBLIC DK_865_XLAT ;;
  25. PUBLIC DK_850_XLAT ;;
  26. ;;
  27. CODE SEGMENT PUBLIC 'CODE' ;;
  28. ASSUME CS:CODE,DS:CODE ;;
  29. ;;
  30. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  31. ;; Standard translate table options are a linear search table
  32. ;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
  33. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  34. ;;
  35. STANDARD_TABLE EQU TYPE_2_TAB+ASCII_ONLY
  36. ;;
  37. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  38. ;;***************************************
  39. ;; DK State Logic
  40. ;;***************************************
  41. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  42. ;;
  43. ;;
  44. DK_LOGIC:
  45. DW LOGIC_END-$ ;; length
  46. ;;
  47. DW 0 ;; special features
  48. ;;
  49. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
  50. ;;
  51. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  52. ;; OPTIONS: If we find a scan match in
  53. ;; an XLATT or SET_FLAG operation then
  54. ;; exit from INT 9.
  55. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  56. ;;
  57. OPTION EXIT_IF_FOUND ;;
  58. ;;
  59. ;;
  60. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  61. ;; Dead key definitions must come before
  62. ;; dead key translations to handle
  63. ;; dead key + dead key.
  64. ;; ***BD - THIS SECTION HAS BEEN UPDATED
  65. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  66. ;;
  67. IFF EITHER_CTL,NOT ;;
  68. IFF EITHER_ALT,NOT ;;
  69. IFF EITHER_SHIFT ;;
  70. SET_FLAG DEAD_UPPER ;;
  71. ELSEF ;;
  72. SET_FLAG DEAD_LOWER ;;
  73. ENDIFF ;;
  74. ELSEF ;;
  75. IFKBD G_KB+P12_KB ;; For ENHANCED keyboard some
  76. ANDF R_ALT_SHIFT ;; dead keys are on third shift
  77. ANDF EITHER_SHIFT,NOT ;; which is accessed via the altgr key
  78. SET_FLAG DEAD_THIRD ;;
  79. ENDIFF ;;
  80. ENDIFF ;;
  81. ENDIFF ;;
  82. ;;
  83. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  84. ;; ACUTE ACCENT TRANSLATIONS
  85. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  86. ;;
  87. ACUTE_PROC: ;;
  88. ;;
  89. IFF ACUTE,NOT ;;
  90. GOTO DIARESIS_PROC ;;
  91. ENDIFF ;;
  92. ;;
  93. RESET_NLS ;;
  94. IFF R_ALT_SHIFT,NOT ;;
  95. XLATT ACUTE_SPACE ;;
  96. ENDIFF ;;
  97. IFF EITHER_CTL,NOT ;;
  98. ANDF EITHER_ALT,NOT ;;
  99. IFF EITHER_SHIFT ;;
  100. IFF CAPS_STATE ;;
  101. XLATT ACUTE_LOWER ;;
  102. ELSEF ;;
  103. XLATT ACUTE_UPPER ;;
  104. ENDIFF ;;
  105. ELSEF ;;
  106. IFF CAPS_STATE ;;
  107. XLATT ACUTE_UPPER ;;
  108. ELSEF ;;
  109. XLATT ACUTE_LOWER ;;
  110. ENDIFF ;;
  111. ENDIFF ;;
  112. ENDIFF ;;
  113. ;;
  114. INVALID_ACUTE: ;;
  115. PUT_ERROR_CHAR ACUTE_LOWER ;; If we get here then either the XLATT
  116. BEEP ;; failed or we are ina bad shift state.
  117. GOTO NON_DEAD ;; Either is invalid so BEEP and fall
  118. ;; through to generate the second char.
  119. ;; Note that the dead key flag will be
  120. ;; reset before we get here.
  121. ;;
  122. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  123. ;; DIARESIS ACCENT TRANSLATIONS
  124. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  125. ;;
  126. DIARESIS_PROC: ;;
  127. ;;
  128. IFF DIARESIS,NOT ;;
  129. GOTO GRAVE_PROC ;;
  130. ENDIFF ;;
  131. ;;
  132. RESET_NLS ;;
  133. IFF R_ALT_SHIFT,NOT ;;
  134. XLATT DIARESIS_SPACE ;; exist for 437 so beep for
  135. ENDIFF ;;
  136. IFF EITHER_CTL,NOT ;;
  137. ANDF EITHER_ALT,NOT ;;
  138. IFF EITHER_SHIFT ;;
  139. IFF CAPS_STATE ;;
  140. XLATT DIARESIS_LOWER ;;
  141. ELSEF ;;
  142. XLATT DIARESIS_UPPER ;;
  143. ENDIFF ;;
  144. ELSEF ;;
  145. IFF CAPS_STATE ;;
  146. XLATT DIARESIS_UPPER ;;
  147. ELSEF ;;
  148. XLATT DIARESIS_LOWER ;;
  149. ENDIFF ;;
  150. ENDIFF ;;
  151. ENDIFF ;;
  152. ;;
  153. INVALID_DIARESIS: ;;
  154. PUT_ERROR_CHAR DIARESIS_LOWER ;; standalone accent
  155. BEEP ;; Invalid dead key combo.
  156. GOTO NON_DEAD ;;
  157. ;;
  158. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  159. ;; GRAVE ACCENT TRANSLATIONS
  160. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  161. ;;
  162. GRAVE_PROC: ;;
  163. ;;
  164. IFF GRAVE,NOT ;;
  165. GOTO TILDE_PROC ;;
  166. ENDIFF ;;
  167. ;;
  168. RESET_NLS ;;
  169. IFF R_ALT_SHIFT,NOT ;;
  170. XLATT GRAVE_SPACE ;;
  171. ENDIFF ;;
  172. IFF EITHER_CTL,NOT ;;
  173. ANDF EITHER_ALT,NOT ;;
  174. IFF EITHER_SHIFT ;;
  175. IFF CAPS_STATE ;;
  176. XLATT GRAVE_LOWER ;;
  177. ELSEF ;;
  178. XLATT GRAVE_UPPER ;;
  179. ENDIFF ;;
  180. ELSEF ;;
  181. IFF CAPS_STATE,NOT ;;
  182. XLATT GRAVE_LOWER ;;
  183. ELSEF ;;
  184. XLATT GRAVE_UPPER ;;
  185. ENDIFF ;;
  186. ENDIFF ;;
  187. ENDIFF ;;
  188. ;;
  189. INVALID_GRAVE: ;;
  190. PUT_ERROR_CHAR GRAVE_LOWER ;; standalone accent
  191. BEEP ;; Invalid dead key combo.
  192. GOTO NON_DEAD ;;
  193. ;;
  194. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  195. ;; TILDE ACCENT TRANSLATIONS
  196. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  197. TILDE_PROC: ;;
  198. ;;
  199. IFF TILDE,NOT ;;
  200. GOTO CIRCUMFLEX_PROC ;;
  201. ENDIFF ;;
  202. ;;
  203. RESET_NLS ;;
  204. IFF R_ALT_SHIFT,NOT ;;
  205. XLATT TILDE_SPACE ;;
  206. ENDIFF ;;
  207. IFF EITHER_CTL,NOT ;;
  208. ANDF EITHER_ALT,NOT ;;
  209. IFF EITHER_SHIFT ;;
  210. IFF CAPS_STATE ;;
  211. XLATT TILDE_LOWER ;;
  212. ELSEF ;;
  213. XLATT TILDE_UPPER ;;
  214. ENDIFF ;;
  215. ELSEF ;;
  216. IFF CAPS_STATE ;;
  217. XLATT TILDE_UPPER ;;
  218. ELSEF ;;
  219. XLATT TILDE_LOWER ;;
  220. ENDIFF ;;
  221. ENDIFF ;;
  222. ENDIFF ;;
  223. ;;
  224. INVALID_TILDE: ;;
  225. PUT_ERROR_CHAR TILDE_LOWER ;; standalone accent
  226. BEEP ;; Invalid dead key combo.
  227. GOTO NON_DEAD ;;
  228. ;;
  229. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  230. ;; CIRCUMFLEX ACCENT TRANSLATIONS
  231. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  232. ;;
  233. CIRCUMFLEX_PROC: ;;
  234. ;;
  235. IFF CIRCUMFLEX,NOT ;;
  236. GOTO NON_DEAD ;;
  237. ENDIFF ;;
  238. ;;
  239. RESET_NLS ;;
  240. IFF R_ALT_SHIFT,NOT ;;
  241. XLATT CIRCUMFLEX_SPACE ;;
  242. ENDIFF ;;
  243. IFF EITHER_CTL,NOT ;;
  244. ANDF EITHER_ALT,NOT ;;
  245. IFF EITHER_SHIFT ;;
  246. IFF CAPS_STATE ;;
  247. XLATT CIRCUMFLEX_LOWER ;;
  248. ELSEF ;;
  249. XLATT CIRCUMFLEX_UPPER ;;
  250. ENDIFF ;;
  251. ELSEF ;;
  252. IFF CAPS_STATE,NOT ;;
  253. XLATT CIRCUMFLEX_LOWER ;;
  254. ELSEF ;;
  255. XLATT CIRCUMFLEX_UPPER ;;
  256. ENDIFF ;;
  257. ENDIFF ;;
  258. ENDIFF ;;
  259. ;;
  260. INVALID_CIRCUMFLEX: ;;
  261. PUT_ERROR_CHAR CIRCUMFLEX_LOWER ;; standalone accent
  262. BEEP ;; Invalid dead key combo.
  263. GOTO NON_DEAD ;;
  264. ;;
  265. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  266. ;; Upper, lower and third shifts
  267. ;; ***BD - NON_DEAD THRU LOGIC_END IS UPDATED
  268. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  269. NON_DEAD: ;;
  270. ;;
  271. IFKBD G_KB+P12_KB ;; Avoid accidentally translating
  272. ANDF LC_E0 ;; the "/" on the numeric pad of the
  273. EXIT_STATE_LOGIC ;; G keyboard
  274. ENDIFF ;;
  275. ;;
  276. IFF EITHER_CTL,NOT ;; Lower and upper case. Alphabetic
  277. IFF EITHER_ALT,NOT ;; keys are affected by CAPS LOCK.
  278. IFF EITHER_SHIFT ;; Numeric keys are not.
  279. ;;***BD ADDED FOR NUMERIC PAD
  280. IFF NUM_STATE,NOT ;;
  281. XLATT NUMERIC_PAD ;;
  282. ENDIFF ;;
  283. ;;***BD END OF ADDITION
  284. XLATT NON_ALPHA_UPPER ;;
  285. IFF CAPS_STATE ;;
  286. XLATT ALPHA_LOWER ;;
  287. ELSEF ;;
  288. XLATT ALPHA_UPPER ;;
  289. ENDIFF ;;
  290. ELSEF ;;
  291. ;;***BD ADDED FOR NUMERIC PAD
  292. IFF NUM_STATE ;;
  293. XLATT NUMERIC_PAD ;;
  294. ENDIFF ;;
  295. ;;***BD END OF ADDITION
  296. XLATT NON_ALPHA_LOWER ;;
  297. IFF CAPS_STATE ;;
  298. XLATT ALPHA_UPPER ;;
  299. ELSEF ;;
  300. XLATT ALPHA_LOWER ;;
  301. ENDIFF ;;
  302. ENDIFF ;; Third and Fourth shifts
  303. ELSEF ;; ctl off, alt on at this point
  304. IFKBD XT_KB+AT_KB ;; XT, AT, keyboards. Nordics
  305. IFF EITHER_SHIFT ;; only.
  306. XLATT FOURTH_SHIFT ;; ALT + shift
  307. ELSEF ;;
  308. XLATT THIRD_SHIFT ;; ALT
  309. ENDIFF ;;
  310. ELSEF ;; ENHANCED keyboard
  311. IFF R_ALT_SHIFT ;; ALTGr
  312. ANDF EITHER_SHIFT,NOT ;;
  313. XLATT THIRD_SHIFT ;;
  314. ENDIFF ;;
  315. ENDIFF ;;
  316. ENDIFF ;;
  317. ENDIFF ;;
  318. ;**************************************;;
  319. IFF EITHER_SHIFT,NOT ;;
  320. IFKBD XT_KB+AT_KB ;;
  321. IFF EITHER_CTL ;;
  322. ANDF ALT_SHIFT ;;
  323. XLATT ALT_CASE ;;
  324. ENDIFF ;;
  325. ENDIFF ;;
  326. IFKBD G_KB+P12_KB ;;
  327. IFF EITHER_CTL ;;
  328. ANDF ALT_SHIFT ;;
  329. IFF R_ALT_SHIFT,NOT ;;
  330. XLATT ALT_CASE ;;
  331. ENDIFF ;;
  332. ENDIFF ;;
  333. ENDIFF ;;
  334. ENDIFF ;;
  335. ;**************************************;;
  336. IFKBD AT_KB+XT_KB ;;
  337. IFF EITHER_CTL,NOT ;;
  338. IFF ALT_SHIFT ;; ALT - case
  339. XLATT ALT_CASE ;;
  340. ENDIFF ;;
  341. ELSEF ;;
  342. IFF EITHER_ALT,NOT ;; CTRL - case
  343. XLATT CTRL_CASE ;;
  344. ENDIFF ;;
  345. ENDIFF ;;
  346. ENDIFF ;;
  347. ;;
  348. IFKBD G_KB+P12_KB ;;
  349. IFF EITHER_CTL,NOT ;;
  350. IFF ALT_SHIFT ;; ALT - case
  351. ANDF R_ALT_SHIFT,NOT ;;
  352. XLATT ALT_CASE ;;
  353. ENDIFF ;;
  354. ELSEF ;;
  355. IFF EITHER_ALT,NOT ;; CTRL - case
  356. XLATT CTRL_CASE ;;
  357. ENDIFF ;;
  358. ENDIFF ;;
  359. ENDIFF ;;
  360. ;;
  361. EXIT_STATE_LOGIC ;;
  362. ;;
  363. LOGIC_END: ;;
  364. ;;
  365. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  366. ;;**********************************************************************
  367. ;; DK Common Translate Section
  368. ;; This section contains translations for the lower 128 characters
  369. ;; only since these will never change from code page to code page.
  370. ;; Some common Characters are included from 128 - 165 where appropriate.
  371. ;; In addition the dead key "Set Flag" tables are here since the
  372. ;; dead keys are on the same keytops for all code pages.
  373. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  374. ;;
  375. PUBLIC DK_COMMON_XLAT ;;
  376. DK_COMMON_XLAT: ;;
  377. ;;
  378. DW COMMON_XLAT_END-$ ;; length of section
  379. DW -1 ;; code page
  380. ;;
  381. ;;
  382. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  383. ;; CODE PAGE: Common
  384. ;; STATE: Lower Shift Dead Key
  385. ;; KEYBOARD TYPES: All
  386. ;; TABLE TYPE: Flag Table
  387. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  388. ;;
  389. DW COM_DK_LO_END-$ ;; length of state section
  390. DB DEAD_LOWER ;; State ID
  391. DW ANY_KB ;; Keyboard Type
  392. DB -1,-1 ;; Buffer entry for error character
  393. ;; Set Flag Table
  394. DW 2 ;; number of entries
  395. DB 13 ;; scan code
  396. FLAG ACUTE ;; flag bit to set
  397. DB 27 ;;
  398. FLAG DIARESIS ;;
  399. ;;
  400. ;;
  401. COM_DK_LO_END: ;;
  402. ;;
  403. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  404. ;; CODE PAGE: Common
  405. ;; STATE: Upper Shift Dead Key
  406. ;; KEYBOARD TYPES: All
  407. ;; TABLE TYPE: Flag Table
  408. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  409. ;;
  410. DW COM_DK_UP_END-$ ;; length of state section
  411. DB DEAD_UPPER ;; State ID
  412. DW ANY_KB ;; Keyboard Type
  413. DB -1,-1 ;; Buffer entry for error character
  414. ;; Set Flag Table
  415. DW 2 ;; number of entries
  416. DB 13 ;; scan code
  417. FLAG GRAVE ;; flag bit to set
  418. DB 27 ;;
  419. FLAG CIRCUMFLEX ;;
  420. ;;
  421. COM_DK_UP_END: ;;
  422. ;;
  423. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  424. ;; CODE PAGE: Common
  425. ;; STATE: Third Shift Dead Key
  426. ;; KEYBOARD TYPES: G, P12
  427. ;; TABLE TYPE: Flag Table
  428. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  429. ;;
  430. DW COM_DK_TH_END-$ ;; length of state section
  431. DB DEAD_THIRD ;; State ID
  432. DW G_KB+P12_KB ;; Keyboard Type
  433. DB -1,-1 ;; Buffer entry for error character
  434. ;; Set Flag Table
  435. DW 1 ;; number of entries
  436. DB 27 ;; scan code
  437. FLAG TILDE ;; flag bit to set
  438. ;;
  439. COM_DK_TH_END: ;;
  440. ;;
  441. ;;
  442. ;;
  443. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  444. ;;******************************
  445. ;;***BD - ADDED FOR NUMERIC PAD (DECIMAL SEPERATOR)
  446. ;;******************************
  447. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  448. ;; CODE PAGE: Common ;;change **********CNS **************
  449. ;; STATE: Numeric Key Pad
  450. ;; KEYBOARD TYPES: All except the p12
  451. ;; TABLE TYPE: Translate
  452. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  453. ;;
  454. DW COM_PAD_K1_END-$ ;; length of state section
  455. DB NUMERIC_PAD ;; State ID
  456. DW G_KB+AT_KB+XT_KB ;; Keyboard Type
  457. DB -1,-1 ;; Buffer entry for error character
  458. ;;
  459. DW COM_PAD_K1_T1_END-$ ;; Size of xlat table
  460. DB STANDARD_TABLE ;; xlat options:
  461. DB 1 ;; number of entries
  462. DB 83,',' ;; decimal seperator = ,
  463. COM_PAD_K1_T1_END: ;;
  464. ;;
  465. DW 0 ;; Size of xlat table - null table
  466. ;;
  467. COM_PAD_K1_END: ;;
  468. ;;
  469. ;;******************************
  470. ;;***BD - ADDED FOR ALT CASE
  471. ;;******************************
  472. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  473. ;; CODE PAGE: Common
  474. ;; STATE: Alt Case
  475. ;; KEYBOARD TYPES: G, P12
  476. ;; TABLE TYPE: Translate
  477. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  478. ;;
  479. DW COM_ALT_K1_END-$ ;; length of state section
  480. DB ALT_CASE ;; State ID
  481. DW G_KB+P12_KB ;; Keyboard Type
  482. DB -1,-1 ;; Buffer entry for error character
  483. ;;
  484. DW COM_ALT_K1_T1_END-$ ;; Size of xlat table
  485. DB TYPE_2_TAB ;; xlat options:
  486. DB 0 ;; 2 number of entries
  487. ; DB 12,-1,-1 ;;
  488. ; DB 53,0,082H ;;
  489. COM_ALT_K1_T1_END: ;;
  490. ;;
  491. DW 0 ;; Size of xlat table - null table
  492. ;;
  493. COM_ALT_K1_END: ;;
  494. ;;
  495. ;;******************************
  496. ;;***BD - ADDED FOR CTRL CASE
  497. ;;******************************
  498. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  499. ;; CODE PAGE: Common
  500. ;; STATE: Ctrl Case
  501. ;; KEYBOARD TYPES: XT, , AT
  502. ;; TABLE TYPE: Translate
  503. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  504. ;;
  505. DW COM_CTRL_K1_END-$ ;; length of state section
  506. DB CTRL_CASE ;; State ID
  507. DW XT_KB+AT_KB ;; Keyboard Type
  508. DB -1,-1 ;; Buffer entry for error character
  509. ;;
  510. DW COM_CTRL_K1_T1_END-$ ;; Size of xlat table
  511. DB TYPE_2_TAB ;; xlat options:
  512. DB 2 ;; number of entries
  513. DB 12,-1,-1 ;;
  514. DB 53,01FH,35h ;;
  515. COM_CTRL_K1_T1_END: ;;
  516. ;;
  517. DW 0 ;; Size of xlat table - null table
  518. ;;
  519. COM_CTRL_K1_END: ;;
  520. ;;
  521. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  522. ;; CODE PAGE: Common
  523. ;; STATE: Ctrl Case
  524. ;; KEYBOARD TYPES: G, P12
  525. ;; TABLE TYPE: Translate
  526. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  527. ;;
  528. DW COM_CTRL_K2_END-$ ;; length of state section
  529. DB CTRL_CASE ;; State ID
  530. DW G_KB+P12_KB ;; Keyboard Type
  531. DB -1,-1 ;; Buffer entry for error character
  532. ;;
  533. DW COM_CTRL_K2_T1_END-$ ;; Size of xlat table
  534. DB TYPE_2_TAB ;; xlat options:
  535. DB 8 ;; number of entries
  536. DB 9,01BH,09H ;;
  537. DB 10,01DH,0AH ;;
  538. DB 12,-1,-1 ;;
  539. DB 26,-1,-1 ;;
  540. DB 27,-1,-1 ;;
  541. DB 43,-1,-1 ;;
  542. DB 53,01FH,35H ;;
  543. DB 86,01CH,56H ;;
  544. COM_CTRL_K2_T1_END: ;;
  545. ;;
  546. DW 0 ;; Size of xlat table - null table
  547. ;;
  548. COM_CTRL_K2_END: ;;
  549. ;;
  550. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  551. ;; CODE PAGE: Common
  552. ;; STATE: Alpha Lower Case
  553. ;; KEYBOARD TYPES: All
  554. ;; TABLE TYPE: Translate
  555. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  556. ;;
  557. DW COM_AL_LO_END-$ ;; length of state section
  558. DB ALPHA_LOWER ;; State ID
  559. DW ANY_KB ;; Keyboard Type
  560. DB -1,-1 ;; Buffer entry for error character
  561. ;;
  562. DW COM_AL_LO_T1_END-$ ;; Size of xlat table
  563. DB STANDARD_TABLE ;; xlat options:
  564. DB 3 ;; number of entries
  565. DB 26,086H ;; a-overcircle
  566. DB 39,091H ;; ae-dipthong
  567. DB 40,09BH ;; o-slash
  568. COM_AL_LO_T1_END: ;;
  569. ;;
  570. DW 0 ;; Size of xlat table - null table
  571. ;;
  572. COM_AL_LO_END: ;;
  573. ;;
  574. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  575. ;; CODE PAGE: Common
  576. ;; STATE: Alpha Upper Case
  577. ;; KEYBOARD TYPES: All
  578. ;; TABLE TYPE: Translate
  579. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  580. ;;
  581. DW COM_AL_UP_END-$ ;; length of state section
  582. DB ALPHA_UPPER ;; State ID
  583. DW ANY_KB ;; Keyboard Type
  584. DB -1,-1 ;; Buffer entry for error character
  585. ;;
  586. DW COM_AL_UP_T1_END-$ ;; Size of xlat table
  587. DB STANDARD_TABLE ;; xlat options:
  588. DB 3 ;; number of entries
  589. DB 26,08FH ;; A-OVERCIRCLE
  590. DB 39,092H ;; AE-DIPTHONG
  591. DB 40,09DH ;; O-SLASH
  592. COM_AL_UP_T1_END: ;;
  593. ;;
  594. DW 0 ;; Size of xlat table - null table
  595. ;;
  596. COM_AL_UP_END: ;;
  597. ;;
  598. ;;
  599. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  600. ;; CODE PAGE: Common
  601. ;; STATE: Non-Alpha Lower Case
  602. ;; KEYBOARD TYPES: G + P12
  603. ;; TABLE TYPE: Translate
  604. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  605. ;;
  606. DW COM_NA_LO_K1_END-$ ;; length of state section
  607. DB NON_ALPHA_LOWER ;; State ID
  608. DW G_KB+P12_KB ;; Keyboard Type
  609. DB -1,-1 ;; Buffer entry for error character
  610. ;;
  611. DW COM_NA_LO_K1_T1_END-$ ;; Size of xlat table
  612. DB STANDARD_TABLE ;; xlat options:
  613. DB 5 ;; number of entries
  614. DB 41,0ABH ;; �
  615. DB 12,"+" ;; + INCLUDED FOR SIMPLIC.
  616. DB 43,"'" ;; '
  617. DB 86,"<" ;; <
  618. DB 53,"-" ;; -
  619. COM_NA_LO_K1_T1_END: ;;
  620. ;;
  621. DW 0 ;; Size of xlat table - null table
  622. ;;
  623. COM_NA_LO_K1_END: ;;
  624. ;;
  625. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  626. ;; CODE PAGE: Common
  627. ;; STATE: Non-Alpha Lower Case
  628. ;; KEYBOARD TYPES: XT +
  629. ;; TABLE TYPE: Translate
  630. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  631. ;;
  632. DW COM_NA_LO_K2_END-$ ;; length of state section
  633. DB NON_ALPHA_LOWER ;; State ID
  634. DW XT_KB ;; Keyboard Type
  635. DB -1,-1 ;; Buffer entry for error character
  636. ;;
  637. DW COM_NA_LO_K2_T1_END-$ ;; Size of xlat table
  638. DB STANDARD_TABLE ;; xlat options:
  639. DB 4 ;; number of entries
  640. DB 41,"'" ;; '
  641. DB 12,"+" ;; +
  642. DB 43,"<" ;; <
  643. DB 53,"-" ;; -
  644. COM_NA_LO_K2_T1_END: ;;
  645. ;;
  646. DW 0 ;; Size of xlat table - null table
  647. ;;
  648. COM_NA_LO_K2_END: ;;
  649. ;;
  650. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  651. ;; CODE PAGE: Common
  652. ;; STATE: Non-Alpha Lower Case
  653. ;; KEYBOARD TYPES: AT
  654. ;; TABLE TYPE: Translate
  655. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  656. ;;
  657. DW COM_NA_LO_K3_END-$ ;; length of state section
  658. DB NON_ALPHA_LOWER ;; State ID
  659. DW AT_KB ;; Keyboard Type
  660. DB -1,-1 ;; Buffer entry for error character
  661. ;;
  662. DW COM_NA_LO_K3_T1_END-$ ;; Size of xlat table
  663. DB STANDARD_TABLE ;; xlat options:
  664. DB 4 ;; number of entries
  665. DB 12,"+" ;; +
  666. DB 41,"<" ;; <
  667. DB 43,"'" ;; '
  668. DB 53,"-" ;; -
  669. COM_NA_LO_K3_T1_END: ;;
  670. ;;
  671. DW 0 ;; Size of xlat table - null table
  672. ;;
  673. COM_NA_LO_K3_END: ;;
  674. ;;
  675. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  676. ;; CODE PAGE: Common
  677. ;; STATE: Non-Alpha Upper Case
  678. ;; KEYBOARD TYPES: G + P12
  679. ;; TABLE TYPE: Translate
  680. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  681. ;;
  682. DW COM_NA_UP_K1_END-$ ;; length of state section
  683. DB NON_ALPHA_UPPER ;; State ID
  684. DW G_KB+P12_KB ;; Keyboard Type
  685. DB -1,-1 ;; Buffer entry for error character
  686. ;;
  687. DW COM_NA_UP_K1_T1_END-$ ;; Size of xlat table
  688. DB STANDARD_TABLE ;; xlat options:
  689. DB 12 ;; number of entries
  690. DB 3,'"' ;;
  691. DB 7,'&' ;;
  692. DB 8,'/' ;;
  693. DB 9,'(' ;;
  694. DB 10,')' ;;
  695. DB 11,'=' ;;
  696. DB 12,'?' ;;
  697. DB 51,';' ;;
  698. DB 52,':' ;;
  699. DB 53,'_' ;;
  700. DB 43,'*' ;;
  701. DB 86,'>' ;;
  702. COM_NA_UP_K1_T1_END: ;;
  703. ;;
  704. DW 0 ;; Size of xlat table - null table
  705. ;;
  706. COM_NA_UP_K1_END: ;;
  707. ;;
  708. ;;
  709. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  710. ;; CODE PAGE: Common
  711. ;; STATE: Non-Alpha Upper Case
  712. ;; KEYBOARD TYPES: XT +
  713. ;; TABLE TYPE: Translate
  714. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  715. ;;
  716. DW COM_NA_UP_K2_END-$ ;; length of state section
  717. DB NON_ALPHA_UPPER ;; State ID
  718. DW XT_KB ;; Keyboard Type
  719. DB -1,-1 ;; Buffer entry for error character
  720. ;;
  721. DW COM_NA_UP_K2_T1_END-$ ;; Size of xlat table
  722. DB STANDARD_TABLE ;; xlat options:
  723. DB 12 ;; number of entries
  724. DB 3,'"' ;;
  725. DB 7,'&' ;;
  726. DB 8,'/' ;;
  727. DB 9,'(' ;;
  728. DB 10,')' ;;
  729. DB 11,'=' ;;
  730. DB 12,'?' ;;
  731. DB 51,';' ;;
  732. DB 52,':' ;;
  733. DB 53,'_' ;;
  734. DB 41,'*' ;;
  735. DB 43,'>' ;;
  736. COM_NA_UP_K2_T1_END: ;;
  737. ;;
  738. DW 0 ;; Size of xlat table - null table
  739. ;;
  740. COM_NA_UP_K2_END: ;;
  741. ;;
  742. ;;
  743. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  744. ;; CODE PAGE: Common
  745. ;; STATE: Non-Alpha Upper Case
  746. ;; KEYBOARD TYPES: AT
  747. ;; TABLE TYPE: Translate
  748. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  749. ;;
  750. DW COM_NA_UP_K3_END-$ ;; length of state section
  751. DB NON_ALPHA_UPPER ;; State ID
  752. DW AT_KB ;; Keyboard Type
  753. DB -1,-1 ;; Buffer entry for error character
  754. ;;
  755. DW COM_NA_UP_K3_T1_END-$ ;; Size of xlat table
  756. DB STANDARD_TABLE ;; xlat options:
  757. DB 12 ;; number of entries
  758. DB 3,'"' ;;
  759. DB 7,'&' ;;
  760. DB 8,'/' ;;
  761. DB 9,'(' ;;
  762. DB 10,')' ;;
  763. DB 11,'=' ;;
  764. DB 12,'?' ;;
  765. DB 51,';' ;;
  766. DB 52,':' ;;
  767. DB 53,'_' ;;
  768. DB 41,'>' ;;
  769. DB 43,'*' ;;
  770. COM_NA_UP_K3_T1_END: ;;
  771. ;;
  772. DW 0 ;; Size of xlat table - null table
  773. ;;
  774. COM_NA_UP_K3_END: ;;
  775. ;;
  776. ;;
  777. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  778. ;; CODE PAGE: Common
  779. ;; STATE: Third Shift
  780. ;; KEYBOARD TYPES: G, P12
  781. ;; TABLE TYPE: Translate
  782. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  783. ;;
  784. DW COM_THIRD_END-$ ;; length of state section
  785. DB THIRD_SHIFT ;; State ID
  786. DW G_KB+P12_KB ;; Keyboard Type FERRARI
  787. DB -1,-1 ;; Buffer entry for error character
  788. ;;
  789. DW COM_THIRD_T1_END-$ ;; Size of xlat table
  790. DB STANDARD_TABLE ;; xlat options:
  791. DB 9 ;; number of entries
  792. DB 3,'@' ;;
  793. DB 4,09CH ;; �
  794. DB 5,'$' ;;
  795. DB 8,'{' ;;
  796. DB 9,'[' ;;
  797. DB 10,']' ;;
  798. DB 11,'}' ;;
  799. DB 13,'|' ;; Broken Vertical Line
  800. DB 86,'\' ;;
  801. COM_THIRD_T1_END: ;;
  802. ;;
  803. DW 0 ;; Last xlat table
  804. COM_THIRD_END: ;;
  805. ;;
  806. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  807. ;; CODE PAGE: Common
  808. ;; STATE: Third Shift (ALTERNATE)
  809. ;; KEYBOARD TYPES: XT,
  810. ;; TABLE TYPE: Translate
  811. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  812. ;;
  813. DW COM_THIRD_K1_END-$ ;; length of state section
  814. DB THIRD_SHIFT ;; State ID
  815. DW XT_KB ;; Keyboard Type
  816. DB -1,-1 ;; Buffer entry for error character
  817. ;;
  818. DW COM_THIRD_K1_T1_END-$ ;; Size of xlat table
  819. DB TYPE_2_TAB ;; xlat options:
  820. DB 9 ;; number of entries
  821. DB 12,'-','-' ;;
  822. DB 13,'=','=' ;;
  823. DB 26,'[','[' ;;
  824. DB 27,']',']' ;;
  825. DB 39,';',';' ;;
  826. DB 40,027H,027H ;;
  827. DB 41,060H,060H ;;
  828. DB 43,'\','\' ;;
  829. DB 53,'/','/' ;;
  830. COM_THIRD_K1_T1_END: ;;
  831. ;;
  832. DW 0 ;; Last xlat table
  833. COM_THIRD_K1_END: ;;
  834. ;;
  835. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  836. ;; CODE PAGE: Common
  837. ;; STATE: Third Shift (ALTERNATE)
  838. ;; KEYBOARD TYPES: AT
  839. ;; TABLE TYPE: Translate
  840. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  841. ;;
  842. DW COM_THIRD_K2_END-$ ;; length of state section
  843. DB THIRD_SHIFT ;; State ID
  844. DW AT_KB ;; Keyboard Type
  845. DB -1,-1 ;; Buffer entry for error character
  846. ;;
  847. DW COM_THIRD_K2_T1_END-$ ;; Size of xlat table
  848. DB TYPE_2_TAB ;; xlat options:
  849. DB 9 ;; number of entries
  850. DB 12,'-','-' ;;
  851. DB 13,'=','=' ;;
  852. DB 26,'[','[' ;;
  853. DB 27,']',']' ;;
  854. DB 39,';',';' ;;
  855. DB 40,027H,027H ;;
  856. DB 41,'\','\' ;;
  857. DB 43,060H,060H ;;
  858. DB 53,'/','/' ;;
  859. COM_THIRD_K2_T1_END: ;;
  860. ;;
  861. DW 0 ;; Last xlat table
  862. COM_THIRD_K2_END: ;;
  863. ;;
  864. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  865. ;; CODE PAGE: Common
  866. ;; STATE: Fourth Shift (ALTERNATE+SHIFT)
  867. ;; KEYBOARD TYPES: XT,
  868. ;; TABLE TYPE: Translate
  869. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  870. ;;
  871. DW COM_FOURTH_END-$ ;; length of state section
  872. DB FOURTH_SHIFT ;; State ID
  873. DW XT_KB ;; Keyboard Type
  874. DB -1,-1 ;; Buffer entry for error character
  875. ;;
  876. DW COM_FOURTH_T1_END-$ ;; Size of xlat table
  877. DB TYPE_2_TAB ;; xlat options:
  878. DB 18 ;; number of entries
  879. DB 3,'@','@' ;;
  880. DB 5,'$','$' ;;
  881. DB 7,'^','^' ;;
  882. DB 8,'&','&' ;;
  883. DB 9,'*','*' ;;
  884. DB 10,'(','(' ;;
  885. DB 11,')',')' ;;
  886. DB 12,'_','_' ;;
  887. DB 13,'+','+' ;;
  888. DB 26,'{','{' ;;
  889. DB 27,'}','}' ;;
  890. DB 39,':',':' ;;
  891. DB 40,'"','"' ;;
  892. DB 41,'~','~' ;;
  893. DB 43,'|','|' ;;
  894. DB 51,'<','<' ;;
  895. DB 52,'>','>' ;;
  896. DB 53,'?','?' ;;
  897. COM_FOURTH_T1_END: ;;
  898. ;;
  899. DW 0 ;; Last xlat table
  900. COM_FOURTH_END: ;;
  901. ;;
  902. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  903. ;; CODE PAGE: Common
  904. ;; STATE: Fourth Shift (ALTERNATE+SHIFT)
  905. ;; KEYBOARD TYPES: AT
  906. ;; TABLE TYPE: Translate
  907. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  908. ;;
  909. DW COM_FOURTH_K1_END-$ ;; length of state section
  910. DB FOURTH_SHIFT ;; State ID
  911. DW AT_KB ;; Keyboard Type
  912. DB -1,-1 ;; Buffer entry for error character
  913. ;;
  914. DW COM_FOURTH_K1_T1_END-$ ;; Size of xlat table
  915. DB TYPE_2_TAB ;; xlat options:
  916. DB 18 ;; number of entries
  917. DB 3,'@','@' ;;
  918. DB 5,'$','$' ;;
  919. DB 7,'^','^' ;;
  920. DB 8,'&','&' ;;
  921. DB 9,'*','*' ;;
  922. DB 10,'(','(' ;;
  923. DB 11,')',')' ;;
  924. DB 12,'_','_' ;;
  925. DB 13,'+','+' ;;
  926. DB 26,'{','{' ;;
  927. DB 27,'}','}' ;;
  928. DB 39,':',':' ;;
  929. DB 40,'"','"' ;;
  930. DB 41,'|','|' ;;
  931. DB 43,'~','~' ;;
  932. DB 51,'<','<' ;;
  933. DB 52,'>','>' ;;
  934. DB 53,'?','?' ;;
  935. COM_FOURTH_K1_T1_END: ;;
  936. ;;
  937. DW 0 ;; Last xlat table
  938. COM_FOURTH_K1_END: ;;
  939. ;;
  940. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  941. ;; CODE PAGE: Common
  942. ;; STATE: Grave Lower
  943. ;; KEYBOARD TYPES: All
  944. ;; TABLE TYPE: Translate
  945. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  946. ;;
  947. DW COM_GR_LO_END-$ ;; length of state section
  948. DB GRAVE_LOWER ;; State ID
  949. DW ANY_KB ;; Keyboard Type
  950. DB 96,0 ;; error character = standalone accent
  951. ;;
  952. DW COM_GR_LO_T1_END-$ ;; Size of xlat table
  953. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  954. DB 5 ;; number of scans
  955. DB 18,'�' ;; scan code,ASCII - e
  956. DB 22,'�' ;; scan code,ASCII - u
  957. DB 23,'�' ;; scan code,ASCII - i
  958. DB 24,'�' ;; scan code,ASCII - o
  959. DB 30,'�' ;; scan code,ASCII - a
  960. COM_GR_LO_T1_END: ;;
  961. ;;
  962. DW 0 ;; Size of xlat table - null table
  963. ;;
  964. COM_GR_LO_END: ;; length of state section
  965. ;;
  966. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  967. ;; CODE PAGE: Common
  968. ;; STATE: Grave Space Bar
  969. ;; KEYBOARD TYPES: All
  970. ;; TABLE TYPE: Translate
  971. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  972. ;;
  973. DW COM_GR_SP_END-$ ;; length of state section
  974. DB GRAVE_SPACE ;; State ID
  975. DW ANY_KB ;; Keyboard Type
  976. DB 96,0 ;; error character = standalone accent
  977. ;;
  978. DW COM_GR_SP_T1_END-$ ;; Size of xlat table
  979. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  980. DB 1 ;; number of scans
  981. DB 57,96 ;; STANDALONE GRAVE
  982. COM_GR_SP_T1_END: ;;
  983. ;;
  984. DW 0 ;; Size of xlat table - null table
  985. ;;
  986. COM_GR_SP_END: ;; length of state section
  987. ;;
  988. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  989. ;; CODE PAGE: Common
  990. ;; STATE: Circumflex Lower
  991. ;; KEYBOARD TYPES: All
  992. ;; TABLE TYPE: Translate
  993. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  994. ;;
  995. DW COM_CI_LO_END-$ ;; length of state section
  996. DB CIRCUMFLEX_LOWER ;; State ID
  997. DW ANY_KB ;; Keyboard Type
  998. DB 94,0 ;; error character = standalone accent
  999. ;;
  1000. DW COM_CI_LO_T1_END-$ ;; Size of xlat table
  1001. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1002. DB 5 ;; number of scans
  1003. DB 18,'�' ;; scan code,ASCII - e
  1004. DB 22,'�' ;; scan code,ASCII - u
  1005. DB 23,'�' ;; scan code,ASCII - i
  1006. DB 24,'�' ;; scan code,ASCII - o
  1007. DB 30,'�' ;; scan code,ASCII - a
  1008. COM_CI_LO_T1_END: ;;
  1009. ;;
  1010. DW 0 ;;
  1011. ;;
  1012. COM_CI_LO_END: ;;
  1013. ;;
  1014. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1015. ;; CODE PAGE: Common
  1016. ;; STATE: Circumflex Space Bar
  1017. ;; KEYBOARD TYPES: All
  1018. ;; TABLE TYPE: Translate
  1019. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1020. ;;
  1021. DW COM_CI_SP_END-$ ;; length of state section
  1022. DB CIRCUMFLEX_SPACE ;; State ID
  1023. DW ANY_KB ;; Keyboard Type
  1024. DB 94,0 ;; error character = standalone accent
  1025. ;;
  1026. DW COM_CI_SP_T1_END-$ ;; Size of xlat table
  1027. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1028. DB 1 ;; number of scans
  1029. DB 57,94 ;; STANDALONE CIRCUMFLEX
  1030. COM_CI_SP_T1_END: ;;
  1031. ;;
  1032. DW 0 ;; Size of xlat table - null table
  1033. ;;
  1034. COM_CI_SP_END: ;; length of state section
  1035. ;;
  1036. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1037. ;; CODE PAGE: Common
  1038. ;; STATE: Tilde Lower
  1039. ;; KEYBOARD TYPES: All
  1040. ;; TABLE TYPE: Translate
  1041. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1042. ;;
  1043. DW COM_TI_LO_END-$ ;; length of state section
  1044. DB TILDE_LOWER ;; State ID
  1045. DW ANY_KB ;; Keyboard Type
  1046. DB 07EH,0 ;; error character = standalone accent
  1047. ;;
  1048. DW COM_TI_LO_T1_END-$ ;; Size of xlat table
  1049. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1050. DB 1 ;; number of scans
  1051. DB 49,0A4H ;; scan code,ASCII - �
  1052. COM_TI_LO_T1_END: ;;
  1053. ;;
  1054. DW 0 ;;
  1055. ;;
  1056. COM_TI_LO_END: ;;
  1057. ;;
  1058. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1059. ;;; CODE PAGE: Common
  1060. ;;; STATE: Tilde Upper Case
  1061. ;;; KEYBOARD TYPES: All
  1062. ;;; TABLE TYPE: Translate
  1063. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1064. ;;
  1065. DW COM_TI_UP_END-$ ;; length of state section
  1066. DB TILDE_UPPER ;; State ID
  1067. DW ANY_KB ;; Keyboard Type
  1068. DB 07EH,0 ;; error character = standalone accent
  1069. ;;
  1070. DW COM_TI_UP_T1_END-$ ;; Size of xlat table
  1071. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1072. DB 1 ;; number of scans
  1073. DB 49,0A5H ;; scan code,ASCII - �
  1074. COM_TI_UP_T1_END: ;;
  1075. ;;
  1076. DW 0 ;; Size of xlat table - null table
  1077. ;;
  1078. COM_TI_UP_END: ;; length of state section
  1079. ;;
  1080. ;;
  1081. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1082. ;; CODE PAGE: Common
  1083. ;; STATE: Tilde Space Bar
  1084. ;; KEYBOARD TYPES: All
  1085. ;; TABLE TYPE: Translate
  1086. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1087. ;;
  1088. DW COM_TI_SP_END-$ ;; length of state section
  1089. DB TILDE_SPACE ;; State ID
  1090. DW ANY_KB ;; Keyboard Type
  1091. DB 07EH,0 ;; error character = standalone accent
  1092. ;;
  1093. DW COM_TI_SP_T1_END-$ ;; Size of xlat table
  1094. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1095. DB 1 ;; number of scans
  1096. DB 57,07EH ;; STANDALONE TILDE
  1097. COM_TI_SP_T1_END: ;;
  1098. ;;
  1099. DW 0 ;; Size of xlat table - null table
  1100. ;;
  1101. COM_TI_SP_END: ;; length of state section
  1102. ;;
  1103. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1104. DW 0 ;; Last State
  1105. COMMON_XLAT_END: ;;
  1106. ;;
  1107. ;;
  1108. ;;
  1109. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1110. ;;***************************************
  1111. ;; DK Specific Translate Section for 865
  1112. ;;***************************************
  1113. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1114. ;;
  1115. PUBLIC DK_865_XLAT ;;
  1116. DK_865_XLAT: ;;
  1117. ;;
  1118. DW CP865_XLAT_END-$ ;; length of section
  1119. DW 865 ;;
  1120. ;;
  1121. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1122. ;; CODE PAGE: 865
  1123. ;; STATE: Non-Alpha Upper Case
  1124. ;; KEYBOARD TYPES: XT, , AT
  1125. ;; TABLE TYPE: Translate
  1126. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1127. ;;
  1128. DW CP865_NA_UP_END-$ ;; length of state section
  1129. DB NON_ALPHA_UPPER ;; State ID
  1130. DW XT_KB+AT_KB ;; Keyboard Type
  1131. DB -1,-1 ;; Buffer entry for error character
  1132. ;;
  1133. DW CP865_NA_UP_T1_END-$ ;; Size of xlat table
  1134. DB STANDARD_TABLE ;; xlat options:
  1135. DB 1 ;; number of entries
  1136. DB 5,0AFH ;; International Currency Symb
  1137. CP865_NA_UP_T1_END: ;;
  1138. ;;
  1139. DW 0 ;; Size of xlat table - null table
  1140. ;;
  1141. CP865_NA_UP_END: ;;
  1142. ;;
  1143. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1144. ;; CODE PAGE: 865
  1145. ;; STATE: Non-Alpha Upper Case
  1146. ;; KEYBOARD TYPES: G, P12
  1147. ;; TABLE TYPE: Translate
  1148. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1149. ;;
  1150. DW CP865_NA_UP_K1_END-$ ;; length of state section
  1151. DB NON_ALPHA_UPPER ;; State ID
  1152. DW G_KB+P12_KB ;; Keyboard Type
  1153. DB -1,-1 ;; Buffer entry for error character
  1154. ;;
  1155. DW CP865_NA_UP_K1_T1_END-$ ;; Size of xlat table
  1156. DB STANDARD_TABLE ;; xlat options:
  1157. DB 2 ;; number of entries
  1158. DB 5,0AFH ;; International Currency Symb
  1159. DB 41,015H ;; SECTION Symb
  1160. CP865_NA_UP_K1_T1_END: ;;
  1161. ;;
  1162. DW 0 ;; Size of xlat table - null table
  1163. ;;
  1164. CP865_NA_UP_K1_END: ;;
  1165. ;;
  1166. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1167. ;; CODE PAGE: 865
  1168. ;; STATE: Acute Lower Case
  1169. ;; KEYBOARD TYPES: All
  1170. ;; TABLE TYPE: Translate
  1171. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1172. ;;
  1173. DW CP865_AC_LO_END-$ ;; length of state section
  1174. DB ACUTE_LOWER ;; State ID
  1175. DW ANY_KB ;; Keyboard Type
  1176. DB 39,0 ;; error character = standalone accent
  1177. ;;
  1178. DW CP865_AC_LO_T1_END-$ ;; Size of xlat table
  1179. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1180. DB 5 ;; number of scans
  1181. DB 18,'�' ;; scan code,ASCII - e
  1182. DB 22,'�' ;; scan code,ASCII - u
  1183. DB 23,'�' ;; scan code,ASCII - i
  1184. DB 24,'�' ;; scan code,ASCII - o
  1185. DB 30,'�' ;; scan code,ASCII - a
  1186. CP865_AC_LO_T1_END: ;;
  1187. ;;
  1188. DW 0 ;; Size of xlat table - null table
  1189. ;;
  1190. CP865_AC_LO_END: ;;
  1191. ;;
  1192. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1193. ;; CODE PAGE: 865
  1194. ;; STATE: Acute Upper Case
  1195. ;; KEYBOARD TYPES: All
  1196. ;; TABLE TYPE: Translate
  1197. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1198. ;;
  1199. DW CP865_AC_UP_END-$ ;; length of state section
  1200. DB ACUTE_UPPER ;; State ID
  1201. DW ANY_KB ;; Keyboard Type
  1202. DB 39,0 ;; error character = standalone accent
  1203. ;;
  1204. DW CP865_AC_UP_T1_END-$ ;; Size of xlat table
  1205. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1206. DB 1 ;; number of entries
  1207. DB 18,'�' ;; scan code,ASCII - �
  1208. CP865_AC_UP_T1_END: ;;
  1209. ;;
  1210. DW 0 ;; Size of xlat table - null table
  1211. ;;
  1212. CP865_AC_UP_END: ;;
  1213. ;;
  1214. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1215. ;; CODE PAGE: 865
  1216. ;; STATE: Acute Space Bar
  1217. ;; KEYBOARD TYPES: All
  1218. ;; TABLE TYPE: Translate
  1219. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1220. ;;
  1221. DW CP865_AC_SP_END-$ ;; length of state section
  1222. DB ACUTE_SPACE ;; State ID
  1223. DW ANY_KB ;; Keyboard Type
  1224. DB 39,0 ;; error character = standalone accent
  1225. ;;
  1226. DW CP865_AC_SP_T1_END-$ ;; Size of xlat table
  1227. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1228. DB 1 ;; number of scans
  1229. DB 57,39 ;; scan code,ASCII - SPACE
  1230. CP865_AC_SP_T1_END: ;;
  1231. ;;
  1232. DW 0 ;; Size of xlat table - null table
  1233. ;;
  1234. CP865_AC_SP_END: ;;
  1235. ;;
  1236. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1237. ;; CODE PAGE: CP865
  1238. ;; STATE: Diaresis Lower Case
  1239. ;; KEYBOARD TYPES: All
  1240. ;; TABLE TYPE: Translate
  1241. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1242. ;;
  1243. DW CP865_DI_LO_END-$ ;; length of state section
  1244. DB DIARESIS_LOWER ;; State ID
  1245. DW ANY_KB ;; Keyboard Type
  1246. DB 254,0 ;; error character = standalone accent
  1247. ;;
  1248. DW CP865_DI_LO_T1_END-$ ;; Size of xlat table
  1249. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1250. DB 6 ;; number of scans
  1251. DB 18,'�' ;; scan code,ASCII - e
  1252. DB 21,'�' ;; scan code,ASCII - y
  1253. DB 22,'�' ;; scan code,ASCII - u
  1254. DB 23,'�' ;; scan code,ASCII - i
  1255. DB 24,'�' ;; scan code,ASCII - o
  1256. DB 30,'�' ;; scan code,ASCII - a
  1257. CP865_DI_LO_T1_END: ;;
  1258. ;;
  1259. DW 0 ;; Size of xlat table - null table
  1260. ;;
  1261. CP865_DI_LO_END: ;; length of state section
  1262. ;;
  1263. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1264. ;; CODE PAGE: CP865
  1265. ;; STATE: Diaresis Upper Case
  1266. ;; KEYBOARD TYPES: All
  1267. ;; TABLE TYPE: Translate
  1268. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1269. ;;
  1270. DW CP865_DI_UP_END-$ ;; length of state section
  1271. DB DIARESIS_UPPER ;; State ID
  1272. DW ANY_KB ;; Keyboard Type
  1273. DB 254,0 ;; error character = standalone accent
  1274. ;;
  1275. DW CP865_DI_UP_T1_END-$ ;; Size of xlat table
  1276. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1277. DB 3 ;; number of scans
  1278. DB 22,'�' ;; scan code,ASCII - U
  1279. DB 24,'�' ;; scan code,ASCII - O
  1280. DB 30,'�' ;; scan code,ASCII - A
  1281. CP865_DI_UP_T1_END: ;;
  1282. ;;
  1283. DW 0 ;; Size of xlat table - null table
  1284. ;;
  1285. CP865_DI_UP_END: ;; length of state section
  1286. ;;
  1287. ;;
  1288. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1289. ;; CODE PAGE: 865
  1290. ;; STATE: Diaresis Space Bar
  1291. ;; KEYBOARD TYPES: All
  1292. ;; TABLE TYPE: Translate
  1293. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1294. ; ;;
  1295. ; DW CP865_DI_SP_END-$ ;; length of state section
  1296. ; DB DIARESIS_SPACE ;; State ID
  1297. ; DW ANY_KB ;; Keyboard Type
  1298. ; DB 254,0 ;; error character = standalone accent
  1299. ; ;;
  1300. ; DW CP865_DI_SP_T1_END-$ ;; Size of xlat table
  1301. ; DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1302. ; DB 1 ;; number of scans
  1303. ; DB 57,254 ;; error character = standalone accent
  1304. ;CP865_DI_SP_T1_END: ;;
  1305. ; ;;
  1306. ; DW 0 ;; Size of xlat table - null table
  1307. ;CP865_DI_SP_END: ;; length of state section
  1308. ; ;;
  1309. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1310. ;;
  1311. DW 0 ;; LAST STATE
  1312. ;;
  1313. CP865_XLAT_END: ;;
  1314. ;;
  1315. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1316. ;;***************************************
  1317. ;; DK Specific Translate Section for 850
  1318. ;;***************************************
  1319. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1320. ;;
  1321. PUBLIC DK_850_XLAT ;;
  1322. DK_850_XLAT: ;;
  1323. ;;
  1324. DW CP850_XLAT_END-$ ;; length of section
  1325. DW 850 ;;
  1326. ;;
  1327. ;;
  1328. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1329. ;; CODE PAGE: 850
  1330. ;; STATE: Non-Alpha Upper Case
  1331. ;; KEYBOARD TYPES: XT, , AT
  1332. ;; TABLE TYPE: Translate
  1333. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1334. ;;
  1335. DW CP850_NA_UP_END-$ ;; length of state section
  1336. DB NON_ALPHA_UPPER ;; State ID
  1337. DW XT_KB+AT_KB ;; Keyboard Type
  1338. DB -1,-1 ;; Buffer entry for error character
  1339. ;;
  1340. DW CP850_NA_UP_T1_END-$ ;; Size of xlat table
  1341. DB STANDARD_TABLE ;; xlat options:
  1342. DB 1 ;; number of entries
  1343. DB 5,0CFH ;; International Currency Symb
  1344. CP850_NA_UP_T1_END: ;;
  1345. ;;
  1346. DW 0 ;; Size of xlat table - null table
  1347. ;;
  1348. CP850_NA_UP_END: ;;
  1349. ;;
  1350. ;;
  1351. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1352. ;; CODE PAGE: 850
  1353. ;; STATE: Non-Alpha Upper Case
  1354. ;; KEYBOARD TYPES: G, P12
  1355. ;; TABLE TYPE: Translate
  1356. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1357. ;;
  1358. DW CP850_NA_UP_K1_END-$ ;; length of state section
  1359. DB NON_ALPHA_UPPER ;; State ID
  1360. DW G_KB+P12_KB ;; Keyboard Type
  1361. DB -1,-1 ;; Buffer entry for error character
  1362. ;;
  1363. DW CP850_NA_UP_K1_T1_END-$ ;; Size of xlat table
  1364. DB STANDARD_TABLE ;; xlat options:
  1365. DB 2 ;; number of entries
  1366. DB 5,0CFH ;; International Currency Symb
  1367. DB 41,0F5H ;; SECTION Symb
  1368. CP850_NA_UP_K1_T1_END: ;;
  1369. ;;
  1370. DW 0 ;; Size of xlat table - null table
  1371. ;;
  1372. CP850_NA_UP_K1_END: ;;
  1373. ;;
  1374. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1375. ;; CODE PAGE: 850
  1376. ;; STATE: Acute Lower Case
  1377. ;; KEYBOARD TYPES: All
  1378. ;; TABLE TYPE: Translate
  1379. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1380. ;;
  1381. DW CP850_AC_LO_END-$ ;; length of state section
  1382. DB ACUTE_LOWER ;; State ID
  1383. DW ANY_KB ;; Keyboard Type
  1384. DB 239,0 ;; error character = standalone accent
  1385. ;;
  1386. DW CP850_AC_LO_T1_END-$ ;; Size of xlat table
  1387. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1388. DB 6 ;; number of scans
  1389. DB 18,'�' ;; scan code,ASCII - e
  1390. DB 21,0ECH ;; y acute
  1391. DB 22,'�' ;; scan code,ASCII - u
  1392. DB 23,'�' ;; scan code,ASCII - i
  1393. DB 24,'�' ;; scan code,ASCII - o
  1394. DB 30,'�' ;; scan code,ASCII - a
  1395. CP850_AC_LO_T1_END: ;;
  1396. ;;
  1397. DW 0 ;; Size of xlat table - null table
  1398. ;;
  1399. CP850_AC_LO_END: ;;
  1400. ;;
  1401. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1402. ;; CODE PAGE: 850
  1403. ;; STATE: Acute Upper Case
  1404. ;; KEYBOARD TYPES: All
  1405. ;; TABLE TYPE: Translate
  1406. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1407. ;;
  1408. DW CP850_AC_UP_END-$ ;; length of state section
  1409. DB ACUTE_UPPER ;; State ID
  1410. DW ANY_KB ;; Keyboard Type
  1411. DB 239,0 ;; error character = standalone accent
  1412. ;;
  1413. DW CP850_AC_UP_T1_END-$ ;; Size of xlat table
  1414. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1415. DB 6 ;; number of entries
  1416. DB 18,090H ;; E acute
  1417. DB 21,0EDH ;; Y acute
  1418. DB 22,0E9H ;; U acute
  1419. DB 23,0D6H ;; I acute
  1420. DB 24,0E0H ;; O acute
  1421. DB 30,0B5H ;; A acute
  1422. CP850_AC_UP_T1_END: ;;
  1423. ;;
  1424. DW 0 ;; Size of xlat table - null table
  1425. ;;
  1426. CP850_AC_UP_END: ;;
  1427. ;;
  1428. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1429. ;; CODE PAGE: 850
  1430. ;; STATE: Acute Space Bar
  1431. ;; KEYBOARD TYPES: All
  1432. ;; TABLE TYPE: Translate
  1433. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1434. ;;
  1435. DW CP850_AC_SP_END-$ ;; length of state section
  1436. DB ACUTE_SPACE ;; State ID
  1437. DW ANY_KB ;; Keyboard Type
  1438. DB 239,0 ;; error character = standalone accent
  1439. ;;
  1440. DW CP850_AC_SP_T1_END-$ ;; Size of xlat table
  1441. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1442. DB 1 ;; number of scans
  1443. DB 57,239 ;; scan code,ASCII - SPACE
  1444. CP850_AC_SP_T1_END: ;;
  1445. ;;
  1446. DW 0 ;; Size of xlat table - null table
  1447. ;;
  1448. CP850_AC_SP_END: ;;
  1449. ;;
  1450. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1451. ;; CODE PAGE: 850
  1452. ;; STATE: Diaresis Lower Case
  1453. ;; KEYBOARD TYPES: All
  1454. ;; TABLE TYPE: Translate
  1455. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1456. ;;
  1457. DW CP850_DI_LO_END-$ ;; length of state section
  1458. DB DIARESIS_LOWER ;; State ID
  1459. DW ANY_KB ;; Keyboard Type
  1460. DB 249,0 ;; error character = standalone accent
  1461. ;;
  1462. DW CP850_DI_LO_T1_END-$ ;; Size of xlat table
  1463. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1464. DB 6 ;; number of scans
  1465. DB 18,'�' ;; scan code,ASCII - e
  1466. DB 21,'�' ;; scan code,ASCII - y
  1467. DB 22,'�' ;; scan code,ASCII - u
  1468. DB 23,'�' ;; scan code,ASCII - i
  1469. DB 24,'�' ;; scan code,ASCII - o
  1470. DB 30,'�' ;; scan code,ASCII - a
  1471. CP850_DI_LO_T1_END: ;;
  1472. ;;
  1473. DW 0 ;; Size of xlat table - null table
  1474. ;;
  1475. CP850_DI_LO_END: ;; length of state section
  1476. ;;
  1477. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1478. ;; CODE PAGE: 850
  1479. ;; STATE: Diaresis Upper Case
  1480. ;; KEYBOARD TYPES: All
  1481. ;; TABLE TYPE: Translate
  1482. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1483. ;;
  1484. DW CP850_DI_UP_END-$ ;; length of state section
  1485. DB DIARESIS_UPPER ;; State ID
  1486. DW ANY_KB ;; Keyboard Type
  1487. DB 249,0 ;; error character = standalone accent
  1488. ;;
  1489. DW CP850_DI_UP_T1_END-$ ;; Size of xlat table
  1490. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1491. DB 5 ;; number of scans
  1492. DB 18,0D3H ;; E Diaeresis
  1493. DB 22,'�' ;; U Diaeresis
  1494. DB 23,0D8H ;; I Diaeresis
  1495. DB 24,'�' ;; O Diaeresis
  1496. DB 30,'�' ;; A Diaeresis
  1497. CP850_DI_UP_T1_END: ;;
  1498. ;;
  1499. DW 0 ;; Size of xlat table - null table
  1500. ;;
  1501. CP850_DI_UP_END: ;; length of state section
  1502. ;;
  1503. ;;
  1504. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1505. ;; CODE PAGE: 850
  1506. ;; STATE: Diaresis Space Bar
  1507. ;; KEYBOARD TYPES: All
  1508. ;; TABLE TYPE: Translate
  1509. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1510. ;;
  1511. DW CP850_DI_SP_END-$ ;; length of state section
  1512. DB DIARESIS_SPACE ;; State ID
  1513. DW ANY_KB ;; Keyboard Type
  1514. DB 249,0 ;; error character = standalone accent
  1515. ;;
  1516. DW CP850_DI_SP_T1_END-$ ;; Size of xlat table
  1517. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1518. DB 1 ;; number of scans
  1519. DB 57,249 ;; error character = standalone accent
  1520. CP850_DI_SP_T1_END: ;;
  1521. ;;
  1522. DW 0 ;; Size of xlat table - null table
  1523. CP850_DI_SP_END: ;; length of state section
  1524. ;;
  1525. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1526. ;; CODE PAGE: 850
  1527. ;; STATE: Grave Upper
  1528. ;; KEYBOARD TYPES: All
  1529. ;; TABLE TYPE: Translate
  1530. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1531. ;;
  1532. DW CP850_GR_UP_END-$ ;; length of state section
  1533. DB GRAVE_UPPER ;; State ID
  1534. DW ANY_KB ;; Keyboard Type
  1535. DB 96,0 ;; error character = standalone accent
  1536. ;;
  1537. DW CP850_GR_UP_T1_END-$ ;; Size of xlat table
  1538. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1539. DB 5 ;; number of scans
  1540. DB 18,0D4H ;; E grave
  1541. DB 22,0EBH ;; U grave
  1542. DB 23,0DEH ;; I grave
  1543. DB 24,0E3H ;; O grave
  1544. DB 30,0B7H ;; A grave
  1545. CP850_GR_UP_T1_END: ;;
  1546. ;;
  1547. DW 0 ;; Size of xlat table - null table
  1548. ;;
  1549. CP850_GR_UP_END: ;; length of state section
  1550. ;;
  1551. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1552. ;; CODE PAGE: 850
  1553. ;; STATE: Tilde Lower
  1554. ;; KEYBOARD TYPES: All
  1555. ;; TABLE TYPE: Translate
  1556. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1557. ;;
  1558. DW CP850_TI_LO_END-$ ;; length of state section
  1559. DB TILDE_LOWER ;; State ID
  1560. DW ANY_KB ;; Keyboard Type
  1561. DB 07EH,0 ;; error character = standalone accent
  1562. ;;
  1563. DW CP850_TI_LO_T1_END-$ ;; Size of xlat table
  1564. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1565. DB 2 ;; number of scans
  1566. DB 24,0E4H ;; scan code,ASCII - o tilde
  1567. DB 30,0C6H ;; scan code,ASCII - a tilde
  1568. CP850_TI_LO_T1_END: ;;
  1569. ;;
  1570. DW 0 ;;
  1571. ;;
  1572. CP850_TI_LO_END: ;;
  1573. ;;
  1574. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1575. ;;; CODE PAGE: 850
  1576. ;;; STATE: Tilde Upper Case
  1577. ;;; KEYBOARD TYPES: All
  1578. ;;; TABLE TYPE: Translate
  1579. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1580. ;;
  1581. DW CP850_TI_UP_END-$ ;; length of state section
  1582. DB TILDE_UPPER ;; State ID
  1583. DW ANY_KB ;; Keyboard Type
  1584. DB 07EH,0 ;; error character = standalone accent
  1585. ;;
  1586. DW CP850_TI_UP_T1_END-$ ;; Size of xlat table
  1587. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1588. DB 2 ;; number of scans
  1589. DB 24,0E5H ;; scan code,ASCII - O tilde
  1590. DB 30,0C7H ;; scan code,ASCII - A tilde
  1591. CP850_TI_UP_T1_END: ;;
  1592. ;;
  1593. DW 0 ;; Size of xlat table - null table
  1594. ;;
  1595. CP850_TI_UP_END: ;; length of state section
  1596. ;;
  1597. ;;
  1598. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1599. ;; CODE PAGE: 850
  1600. ;; STATE: Circumflex Upper
  1601. ;; KEYBOARD TYPES: All
  1602. ;; TABLE TYPE: Translate
  1603. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1604. ;;
  1605. DW CP850_CI_UP_END-$ ;; length of state section
  1606. DB CIRCUMFLEX_UPPER ;; State ID
  1607. DW ANY_KB ;; Keyboard Type
  1608. DB 94,0 ;; error character = standalone accent
  1609. ;;
  1610. DW CP850_CI_UP_T1_END-$ ;; Size of xlat table
  1611. DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
  1612. DB 5 ;; number of scans
  1613. DB 18,0D2H ;; E circumflex
  1614. DB 22,0EAH ;; U circumflex
  1615. DB 23,0D7H ;; I circumflex
  1616. DB 24,0E2H ;; O circumflex
  1617. DB 30,0B6H ;; A circumflex
  1618. CP850_CI_UP_T1_END: ;;
  1619. ;;
  1620. DW 0 ;; Size of xlat table - null table
  1621. ;;
  1622. CP850_CI_UP_END: ;; length of state section
  1623. ;;
  1624. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1625. ;;
  1626. DW 0 ;; LAST STATE
  1627. ;;
  1628. CP850_XLAT_END: ;;
  1629. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1630. ;;
  1631. CODE ENDS ;;
  1632. END ;;
  1633.