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.

1521 lines
51 KiB

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