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.

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