3 ; ****** CNS 01/21 NUM PAD
5 TITLE DOS
- Keyboard Definition
File
7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8 ;; DOS - - NLS Support - Keyboard Defintion File
9 ;; (c) Copyright 1988 Microsoft
11 ;; This file contains the keyboard tables for Belgium.
13 ;; Linkage Instructions:
17 ;; Modded from French - DTF 11-Sep-86
18 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
20 INCLUDE KEYBSHAR
.INC ;;
21 INCLUDE POSTEQU
.INC ;;
22 INCLUDE KEYBMAC
.INC ;;
28 CODE SEGMENT PUBLIC 'CODE' ;;
29 ASSUME
CS:CODE,DS:CODE ;;
31 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
32 ;; Standard translate table options are a liner search table
33 ;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
34 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
36 STANDARD_TABLE EQU TYPE_2_TAB
+ASCII_ONLY
38 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
39 ;;***************************************
41 ;;***************************************
42 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
47 DW LOGIC_END
-$ ;; length
49 DW TYPEWRITER_CAPS_LK
;; special features
51 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
53 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54 ;; OPTIONS: If we find a scan match in
55 ;; an XLATT or SET_FLAG operation then
57 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
59 OPTION EXIT_IF_FOUND
;;
62 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
63 ;; Dead key definitions must come before
64 ;; dead key translations to handle
65 ;; dead key + dead key.
66 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
69 ANDF EITHER_CTL
,NOT ;;
74 SET_FLAG DEAD_UPPER
;;
76 SET_FLAG DEAD_LOWER
;;
80 IFF EITHER_SHIFT
,NOT ;;
84 SET_FLAG DEAD_THIRD
;;
88 ANDF EITHER_CTL
,NOT ;;
90 SET_FLAG DEAD_THIRD
;;
96 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
97 ;; ACUTE ACCENT TRANSLATIONS
98 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
107 IFF R_ALT_SHIFT
,NOT ;;
110 IFF EITHER_CTL
,NOT ;;
111 ANDF EITHER_ALT
,NOT ;;
128 PUT_ERROR_CHAR ACUTE_LOWER
;; If we get here then either the XLATT
129 BEEP
;; failed or we are ina bad shift state.
130 GOTO NON_DEAD
;; Either is invalid so BEEP and fall
131 ;; through to generate the second char.
132 ;; Note that the dead key flag will be
133 ;; reset before we get here.
136 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
137 ;; TILDE ACCENT TRANSLATIONS
138 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
143 GOTO DIARESIS_PROC
;;
146 IFF R_ALT_SHIFT
,NOT ;;
149 IFF EITHER_CTL
,NOT ;;
150 ANDF EITHER_ALT
,NOT ;;
158 IFF CAPS_STATE
,NOT ;;
167 PUT_ERROR_CHAR TILDE_LOWER
;; standalone accent
168 BEEP
;; Invalid dead key combo.
171 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
172 ;; DIARESIS ACCENT TRANSLATIONS
173 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
182 IFF R_ALT_SHIFT
,NOT ;;
183 XLATT DIARESIS_SPACE
;; exist for 437 so beep for
185 IFF EITHER_CTL
,NOT ;;
186 ANDF EITHER_ALT
,NOT ;;
189 XLATT DIARESIS_LOWER
;;
191 XLATT DIARESIS_UPPER
;;
195 XLATT DIARESIS_UPPER
;;
197 XLATT DIARESIS_LOWER
;;
203 PUT_ERROR_CHAR DIARESIS_LOWER
;; standalone accent
204 BEEP
;; Invalid dead key combo.
207 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
208 ;; GRAVE ACCENT TRANSLATIONS
209 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
214 GOTO CIRCUMFLEX_PROC
;;
218 IFF R_ALT_SHIFT
,NOT ;;
221 IFF EITHER_CTL
,NOT ;;
222 ANDF EITHER_ALT
,NOT ;;
230 IFF CAPS_STATE
,NOT ;;
239 PUT_ERROR_CHAR GRAVE_LOWER
;; standalone accent
240 BEEP
;; Invalid dead key combo.
243 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
244 ;; CIRCUMFLEX ACCENT TRANSLATIONS
245 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
249 IFF CIRCUMFLEX
,NOT ;;
254 IFF R_ALT_SHIFT
,NOT ;;
255 XLATT CIRCUMFLEX_SPACE
;;
257 IFF EITHER_CTL
,NOT ;;
258 ANDF EITHER_ALT
,NOT ;;
261 XLATT CIRCUMFLEX_LOWER
;;
263 XLATT CIRCUMFLEX_UPPER
;;
266 IFF CAPS_STATE
,NOT ;;
267 XLATT CIRCUMFLEX_LOWER
;;
269 XLATT CIRCUMFLEX_UPPER
;;
274 INVALID_CIRCUMFLEX: ;;
275 PUT_ERROR_CHAR CIRCUMFLEX_LOWER
;; standalone accent
276 BEEP
;; Invalid dead key combo.
279 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
280 ;; Upper, lower and third shifts
281 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
283 ;***************************
285 ;ADDED FOR DIVIDE SIGN ;;
286 IFKBD G_KB
+P12_KB
;; Avoid accidentally translating
287 ANDF LC_E0
;; the "/" on the numeric pad of the
295 ;****************************
298 ; IFKBD G_KB+P12_KB ;; Avoid accidentally translating
299 ; ANDF LC_E0 ;; the "/" on the numeric pad of the
300 ; EXIT_STATE_LOGIC ;; G keyboard
303 IFF EITHER_ALT
,NOT ;;
304 ANDF EITHER_CTL
,NOT ;;
306 ;******************************************
307 ;;***BD ADDED FOR NUMERIC PAD
311 ;;***BD END OF ADDITION
312 ;*******************************************
315 XLATT NON_ALPHA_LOWER
;;
318 XLATT NON_ALPHA_UPPER
;;
321 ;******************************************
322 ;;***BD ADDED FOR NUMERIC PAD
326 ;;***BD END OF ADDITION
327 ;******************************************
330 XLATT NON_ALPHA_UPPER
;;
333 XLATT NON_ALPHA_LOWER
;;
337 IFF EITHER_SHIFT
,NOT ;;
344 IFF EITHER_CTL
,NOT ;;
358 IFF R_ALT_SHIFT
,NOT ;;
365 ;IFF EITHER_SHIFT,NOT ;;
367 IFF EITHER_CTL
,NOT ;;
368 IFF ALT_SHIFT
;; ALT - case
377 IFF EITHER_CTL
,NOT ;;
378 IFF ALT_SHIFT
;; ALT - case
379 ANDF R_ALT_SHIFT
,NOT ;;
383 IFF EITHER_ALT
,NOT ;;
389 ANDF R_ALT_SHIFT
,NOT ;;
398 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
399 ;;***************************************
400 ;; BE 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 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
408 PUBLIC BE_COMMON_XLAT
;;
411 DW COMMON_XLAT_END
-$ ;; length of section
414 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
417 ;; KEYBOARD TYPES: G + P12
418 ;; TABLE TYPE: Translate
419 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
421 DW COM_ALT_K1_END
-$ ;; length of state section
422 DB ALT_CASE
;; State ID
423 DW G_KB
+P12_KB
;; Keyboard Type
424 DB -1,-1 ;; Buffer entry for error character
426 DW COM_ALT_K1_T1_END
-$ ;; Size of xlat table
428 DB 8 ;; Number of entries
436 DB 50,-1,-1 ;; U.S. 'M'
437 COM_ALT_K1_T1_END: ;;
443 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
446 ;; KEYBOARD TYPES: G + P12
447 ;; TABLE TYPE: Translate
448 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
450 DW COM_CTRL_K1_END
-$ ;; length of state section
451 DB CTRL_CASE
;; State ID
452 DW G_KB
+P12_KB
;; Keyboard Type
453 DB -1,-1 ;; Buffer entry for error character
455 DW COM_CTRL_K1_T1_END
-$ ;; Size of xlat table
457 DB 10 ;; Number of entries
466 DB 50,-1,-1 ;; U.S. 'M'
468 COM_CTRL_K1_T1_END: ;;
475 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
476 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
479 ;; KEYBOARD TYPES: AT + XT
480 ;; TABLE TYPE: Translate
481 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
483 DW COM_ALT_K2_END
-$ ;; length of state section
484 DB ALT_CASE
;; State ID
485 DW AT_KB
+XT_KB
;; Keyboard Type
486 DB -1,-1 ;; Buffer entry for error character
488 DW COM_ALT_K2_T2_END
-$ ;; Size of xlat table
490 DB 6 ;; Number of entries
491 ; DB 12,-1,-1 ;; invalid key U.S. alt -
492 ; DB 13,0,82H ;; alt - (minus sign)
493 ; DB 53,0,83H ;; alt = (equal sign)
499 DB 50,-1,-1 ;; U.S. 'M'
500 COM_ALT_K2_T2_END: ;;
506 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
509 ;; KEYBOARD TYPES: AT
510 ;; TABLE TYPE: Translate
511 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
513 DW COM_CTRL_K2_END
-$ ;; length of state section
514 DB CTRL_CASE
;; State ID
515 DW AT_KB
;; Keyboard Type
516 DB -1,-1 ;; Buffer entry for error character
518 DW COM_CTRL_K2_T2_END
-$ ;; Size of xlat table
520 DB 11 ;; Number of entries
521 DB 12,-1,-1 ;; invalid U.S. -
522 DB 43,-1,-1 ;; invalid U.S. \
523 DB 41,28,41 ;; valid ctl + \
524 DB 07,30,07 ;; ctl + number six key
525 DB 13,31,13 ;; ctl - or _
531 DB 50,-1,-1 ;; U.S. 'M'
532 COM_CTRL_K2_T2_END: ;;
539 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
540 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
543 ;; KEYBOARD TYPES: XT
544 ;; TABLE TYPE: Translate
545 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
547 DW COM_CTRL_K3_END
-$ ;; length of state section
548 DB CTRL_CASE
;; State ID
549 DW AT_KB
+XT_KB
;; Keyboard Type
550 DB -1,-1 ;; Buffer entry for error character
552 DW COM_CTRL_K3_T3_END
-$ ;; Size of xlat table
554 DB 11 ;; Number of entries
557 DB 43,28,43 ;; valid ctl + \
558 DB 07,30,07 ;; ctl + number six key
559 DB 13,31,13 ;; ctl - or _
565 DB 50,-1,-1 ;; U.S. 'M'
566 COM_CTRL_K3_T3_END: ;;
573 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
575 ;; STATE: Lower Shift Dead Key
576 ;; KEYBOARD TYPES: All
577 ;; TABLE TYPE: Flag Table
578 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
580 DW COM_DK_LO_END
-$ ;; length of state section
581 DB DEAD_LOWER
;; State ID
582 DW ANY_KB
;; Keyboard Type
583 DB -1,-1 ;; Buffer entry for error character
585 DW 1 ;; number of entries
587 FLAG CIRCUMFLEX
;; flag bit to set
592 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
594 ;; STATE: Upper Shift Dead Key
595 ;; KEYBOARD TYPES: All
596 ;; TABLE TYPE: Flag Table
597 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
599 DW COM_DK_UP_END
-$ ;; length of state section
600 DB DEAD_UPPER
;; State ID
601 DW ANY_KB
;; Keyboard Type
602 DB -1,-1 ;; Buffer entry for error character
604 DW 1 ;; number of entries
606 FLAG DIARESIS
;; flag bit to set
610 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
612 ;; STATE: Third Shift Dead Key
613 ;; KEYBOARD TYPES: G, P12,AT
614 ;; TABLE TYPE: Flag Table
615 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
617 DW COM_DK_TH_END
-$ ;; length of state section
618 DB DEAD_THIRD
;; State ID
619 DW G_KB
+P12_KB
+AT_KB
;; Keyboard Type
620 DB -1,-1 ;; Buffer entry for error character
622 DW 3 ;; number of entries
632 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
634 ;; STATE: Third Shift Dead Key
635 ;; KEYBOARD TYPES: XT +
636 ;; TABLE TYPE: Flag Table
637 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
639 DW COM_DK_TH_K1_END
-$ ;; length of state section
640 DB DEAD_THIRD
;; State ID
641 DW XT_KB
;; Keyboard Type
642 DB -1,-1 ;; Buffer entry for error character
644 DW 3 ;; number of entries
653 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
654 ;**************************************************** CODE eliminated**********
655 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NUM PAD altered ********
656 ;; CODE PAGE: 850 CNS engraved "," out
657 ;; STATE: Numeric Pad - Divide Sign
658 ;; KEYBOARD TYPES: G, P12
659 ;; TABLE TYPE: Translate
660 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
662 ;; DW CP850_DIVID_END-$ ;; length of state section
663 ;; DB DIVIDE_SIGN ;; State ID
664 ;; DW G_KB+P12_KB ;; Keyboard Type
665 ;; DB -1,-1 ;; error character = standalone accent
667 ;; DW CP850_DIVID_T1_END-$ ;; Size of xlat table
668 ;; DB TYPE_2_TAB ;; xlat options:
669 ;; DB 2 ;; number of scans
670 ;; DB 0E0H,',',0E0H ;; DIVIDE SIGN
672 ;; CP850_DIVID_T1_END: ;;
674 ;; DW 0 ;; Size of xlat table - null table
676 ;; CP850_DIVID_END: ;;
678 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
679 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
681 ;; STATE: Numeric Key Pad - Multiplication
682 ;; KEYBOARD TYPES: G, P12
683 ;; TABLE TYPE: Translate
684 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
686 ;; DW CP850_PAD_K1_END-$ ;; length of state section
687 ;; DB NUMERIC_PAD ;; State ID
688 ;; DW P12_KB ;; Keyboard Type
689 ;; DB -1,-1 ;; Buffer entry for error character
691 ;; DW CP850_PAD_K1_T1_END-$ ;; Size of xlat table
692 ;; DB STANDARD_TABLE ;; xlat options:
693 ;; DB 1 ;; number of entries
694 ;; DB 51,',' ; (removed *** CNS ****) ;; MULTIPLICATION SIGN
695 ;; CP850_PAD_K1_T1_END: ;;
697 ;; DW 0 ;; Size of xlat table - null table
699 ;; CP850_PAD_K1_END: ;;
701 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
702 ;*********************************************************
704 ;; STATE: Alpha Lower Case
705 ;; KEYBOARD TYPES: All
706 ;; TABLE TYPE: Translate
707 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
709 DW COM_AL_LO_END
-$ ;; length of state section
710 DB ALPHA_LOWER
;; State ID
711 DW ANY_KB
;; Keyboard Type
712 DB -1,-1 ;; Buffer entry for error character
714 DW COM_AL_LO_T1_END
-$ ;; Size of xlat table
715 DB STANDARD_TABLE
;; xlat options:
716 DB 5 ;; number of entries
724 DW 0 ;; Size of xlat table - null table
728 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
730 ;; STATE: Alpha Upper Case
731 ;; KEYBOARD TYPES: All
732 ;; TABLE TYPE: Translate
733 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
735 DW COM_AL_UP_END
-$ ;; length of state section
736 DB ALPHA_UPPER
;; State ID
737 DW ANY_KB
;; Keyboard Type
738 DB -1,-1 ;; Buffer entry for error character
740 DW COM_AL_UP_T1_END
-$ ;; Size of xlat table
741 DB STANDARD_TABLE
;; xlat options:
742 DB 5 ;; number of entries
750 DW 0 ;; Size of xlat table - null table
755 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
757 ;; STATE: Non-Alpha Lower Case
758 ;; KEYBOARD TYPES: G, P12
759 ;; TABLE TYPE: Translate
760 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
762 DW COM_NA_LO_END
-$ ;; length of state section
763 DB NON_ALPHA_LOWER
;; State ID
764 DW G_KB
+P12_KB
;; Keyboard Type
765 DB -1,-1 ;; Buffer entry for error character
767 DW COM_NA_LO_T1_END
-$ ;; Size of xlat table
768 DB STANDARD_TABLE
;; xlat options:
769 DB 20 ;; number of entries
770 DB 41,"ý" ;; superscript 2
772 DB 3,"\82" ;; acute - e
776 DB 8,"\8a" ;; grave - e
778 DB 10,"\87" ;; c - cedilla small
783 DB 40,"\97" ;; grave - u
792 DW 0 ;; Size of xlat table - null table
797 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
799 ;; STATE: Non-Alpha Lower Case
801 ;; TABLE TYPE: Translate
802 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
804 DW COM_NA_LO_K2_END
-$ ;; length of state section
805 DB NON_ALPHA_LOWER
;; State ID
806 DW AT_KB
;; Keyboard Type
807 DB -1,-1 ;; Buffer entry for error character
809 DW COM_NA_LO_T1_K2_END
-$ ;; Size of xlat table
810 DB STANDARD_TABLE
;; xlat options:
811 DB 19 ;; number of entries
814 DB 3,"\82" ;; acute - e
818 DB 8,"\8a" ;; grave - e
820 DB 10,"\87" ;; c - cedilla small
825 DB 40,"\97" ;; grave - u
831 COM_NA_LO_T1_K2_END: ;;
833 DW 0 ;; Size of xlat table - null table
836 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
838 ;; STATE: Non-Alpha Lower Case
839 ;; KEYBOARD TYPES: XT,
840 ;; TABLE TYPE: Translate
841 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
843 DW COM_NA_LO_K1_END
-$ ;; length of state section
844 DB NON_ALPHA_LOWER
;; State ID
845 DW XT_KB
;; Keyboard Type
846 DB -1,-1 ;; Buffer entry for error character
848 DW COM_NA_LO_K1_T1_END
-$ ;; Size of xlat table
849 DB STANDARD_TABLE
;; xlat options:
850 DB 19 ;; number of entries
852 DB 3,"\82" ;; acute - e
858 DB 10,"\87" ;; c - cedilla small
863 DB 40,"\97" ;; grave - u
870 COM_NA_LO_K1_T1_END: ;;
872 DW 0 ;; Size of xlat table - null table
876 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
878 ;; STATE: Non-Alpha Upper Case
879 ;; KEYBOARD TYPES: G, P12
880 ;; TABLE TYPE: Translate
881 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
883 DW COM_NA_UP_END
-$ ;; length of state section
884 DB NON_ALPHA_UPPER
;; State ID
885 DW G_KB
+P12_KB
;; Keyboard Type
886 DB -1,-1 ;; Buffer entry for error character
888 DW COM_NA_UP_T1_END
-$ ;; Size of xlat table
889 DB STANDARD_TABLE
;; xlat options:
890 DB 20 ;; number of entries
901 DB 12,0F8H ;; degree symbol
913 DW 0 ;; Size of xlat table - null table
916 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
918 ;; STATE: Non-Alpha Upper Case
919 ;; KEYBOARD TYPES: XT +
920 ;; TABLE TYPE: Translate
921 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
923 DW COM_NA_UP_K1_END
-$ ;; length of state section
924 DB NON_ALPHA_UPPER
;; State ID
925 DW XT_KB
;; Keyboard Type
926 DB -1,-1 ;; Buffer entry for error character
928 DW COM_NA_UP_T1_K1_END
-$ ;; Size of xlat table
929 DB STANDARD_TABLE
;; xlat options:
930 DB 20 ;; number of entries
942 DB 12,0F8H ;; degree symbol
951 COM_NA_UP_T1_K1_END: ;;
953 DW 0 ;; Size of xlat table - null table
956 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
958 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
960 ;; STATE: Non-Alpha Upper Case
961 ;; KEYBOARD TYPES: AT
962 ;; TABLE TYPE: Translate
963 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
965 DW COM_NA_UP_K2_END
-$ ;; length of state section
966 DB NON_ALPHA_UPPER
;; State ID
967 DW AT_KB
;; Keyboard Type
968 DB -1,-1 ;; Buffer entry for error character
970 DW COM_NA_UP_T1_K2_END
-$ ;; Size of xlat table
971 DB STANDARD_TABLE
;; xlat options:
972 DB 20 ;; number of entries
984 DB 12,0F8H ;; degree symbol
993 COM_NA_UP_T1_K2_END: ;;
995 DW 0 ;; Size of xlat table - null table
998 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1000 ;; STATE: Third Shift
1001 ;; KEYBOARD TYPES: G, P12
1002 ;; TABLE TYPE: Translate
1003 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1005 DW COM_THIRD_END
-$ ;; length of state section
1006 DB THIRD_SHIFT
;; State ID
1007 DW G_KB
+P12_KB
;; Keyboard Type
1008 DB -1,-1 ;; Buffer entry for error character
1010 DW COM_THIRD_T1_END
-$ ;; Size of xlat table
1011 DB STANDARD_TABLE
;; xlat options:
1012 DB 9 ;; number of entries
1022 COM_THIRD_T1_END: ;;
1024 DW 0 ;; Last xlat table
1027 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1028 ;; CODE PAGE: Common
1029 ;; STATE: Third Shift
1030 ;; KEYBOARD TYPES: XT
1031 ;; TABLE TYPE: Translate
1032 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1034 DW COM_THIRD_K1_END-$ ;; length of state section
1035 DB THIRD_SHIFT ;; State ID
1036 DW XT_KB ;; Keyboard Type
1037 DB -1,-1 ;; Buffer entry for error character
1039 DW COM_THIRD_T1_K1_END-$ ;; Size of xlat table
1040 DB STANDARD_TABLE ;; xlat options:
1041 DB 9 ;; number of entries
1051 COM_THIRD_T1_K1_END: ;;
1053 DW 0 ;; Last xlat table
1054 COM_THIRD_K1_END: ;;
1055 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1056 ;; CODE PAGE: Common
1057 ;; STATE: Third Shift
1058 ;; KEYBOARD TYPES: AT
1059 ;; TABLE TYPE: Translate
1060 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1062 DW COM_THIRD_K2_END
-$ ;; length of state section
1063 DB THIRD_SHIFT
;; State ID
1064 DW AT_KB
;; Keyboard Type
1065 DB -1,-1 ;; Buffer entry for error character
1067 DW COM_THIRD_T1_K2_END
-$ ;; Size of xlat table
1068 DB STANDARD_TABLE
;; xlat options:
1069 DB 9 ;; number of entries
1079 COM_THIRD_T1_K2_END: ;;
1081 DW 0 ;; Last xlat table
1082 COM_THIRD_K2_END: ;;
1083 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1084 ;; CODE PAGE: Common
1085 ;; STATE: Grave Lower
1086 ;; KEYBOARD TYPES: ALL
1087 ;; TABLE TYPE: Translate
1088 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1090 DW COM_GR_LO_END-$ ;; length of state section
1091 DB GRAVE_LOWER ;; State ID
1092 DW ANY_KB ;; Keyboard Type
1093 DB 96,0 ;; error character = standalone accent
1095 DW COM_GR_LO_T1_END-$ ;; Size of xlat table
1096 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1097 DB 5 ;; number of scans
1098 DB 18,'\8a' ;; scan code,ASCII - e
1099 DB 16,'\85' ;; scan code,ASCII - a
1100 DB 24,'\95' ;; scan code,ASCII - o
1101 DB 22,'\97' ;; scan code,ASCII - u
1102 DB 23,'\8d' ;; scan code,ASCII - i
1103 COM_GR_LO_T1_END: ;;
1105 DW 0 ;; Size of xlat table - null table
1107 COM_GR_LO_END: ;; length of state section
1109 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1110 ;; CODE PAGE: Common
1111 ;; STATE: Grave Upper Case
1112 ;; KEYBOARD TYPES: All
1113 ;; TABLE TYPE: Translate
1114 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1116 DW COM_GR_UP_END-$ ;; length of state section
1117 DB GRAVE_UPPER ;; State ID
1118 DW ANY_KB ;; Keyboard Type
1119 DB 96,0 ;; error character = standalone accent
1121 DW COM_GR_UP_T1_END-$ ;; Size of xlat table
1122 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1123 DB 0 ;; number of scans
1124 COM_GR_UP_T1_END: ;;
1126 DW 0 ;; Size of xlat table - null table
1128 COM_GR_UP_END: ;; length of state section
1131 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1132 ;; CODE PAGE: Common
1133 ;; STATE: Grave Space Bar
1134 ;; KEYBOARD TYPES: All
1135 ;; TABLE TYPE: Translate
1136 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1138 DW COM_GR_SP_END-$ ;; length of state section
1139 DB GRAVE_SPACE ;; State ID
1140 DW ANY_KB ;; Keyboard Type
1141 DB 96,0 ;; error character = standalone accent
1143 DW COM_GR_SP_T1_END-$ ;; Size of xlat table
1144 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1145 DB 1 ;; number of scans
1146 DB 57,96 ;; STANDALONE GRAVE
1147 COM_GR_SP_T1_END: ;;
1149 DW 0 ;; Size of xlat table - null table
1151 COM_GR_SP_END: ;; length of state section
1153 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1154 ;; CODE PAGE: Common
1155 ;; STATE: Circumflex Lower
1156 ;; KEYBOARD TYPES: All
1157 ;; TABLE TYPE: Translate
1158 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1160 DW COM_CI_LO_END-$ ;; length of state section
1161 DB CIRCUMFLEX_LOWER ;; State ID
1162 DW ANY_KB ;; Keyboard Type
1163 DB 94,0 ;; error character = standalone accent
1165 DW COM_CI_LO_T1_END-$ ;; Size of xlat table
1166 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1167 DB 5 ;; number of scans
1168 DB 16,'\83' ;; scan code,ASCII - a
1169 DB 18,'\88' ;; scan code,ASCII - e
1170 DB 24,'\93' ;; scan code,ASCII - o
1171 DB 22,'\96' ;; scan code,ASCII - u
1172 DB 23,'\8c' ;; scan code,ASCII - i
1173 COM_CI_LO_T1_END: ;;
1179 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1180 ;; CODE PAGE: Common
1181 ;; STATE: Circumflex Upper
1182 ;; KEYBOARD TYPES: All
1183 ;; TABLE TYPE: Translate
1184 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1186 DW COM_CI_UP_END-$ ;; length of state section
1187 DB CIRCUMFLEX_UPPER ;; State ID
1188 DW ANY_KB ;; Keyboard Type
1189 DB 94,0 ;; error character = standalone accent
1191 DW COM_CI_UP_T1_END-$ ;; Size of xlat table
1192 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1193 DB 0 ;; number of scans
1194 COM_CI_UP_T1_END: ;;
1199 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1200 ;; CODE PAGE: Common
1201 ;; STATE: Circumflex Space Bar
1202 ;; KEYBOARD TYPES: All
1203 ;; TABLE TYPE: Translate
1204 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1206 DW COM_CI_SP_END-$ ;; length of state section
1207 DB CIRCUMFLEX_SPACE ;; State ID
1208 DW ANY_KB ;; Keyboard Type
1209 DB 94,0 ;; error character = standalone accent
1211 DW COM_CI_SP_T1_END-$ ;; Size of xlat table
1212 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1213 DB 1 ;; number of scans
1214 DB 57,94 ;; STANDALONE CIRCUMFLEX
1215 COM_CI_SP_T1_END: ;;
1217 DW 0 ;; Size of xlat table - null table
1219 COM_CI_SP_END: ;; length of state section
1222 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1223 ;; CODE PAGE: Common
1224 ;; STATE: Tilde Space Bar
1225 ;; KEYBOARD TYPES: All
1226 ;; TABLE TYPE: Translate
1227 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1229 DW COM_TI_SP_END-$ ;; length of state section
1230 DB TILDE_SPACE ;; State ID
1231 DW ANY_KB ;; Keyboard Type
1232 DB 126,0 ;; error character = standalone accent
1234 DW COM_TI_SP_T1_END-$ ;; Size of xlat table
1235 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1236 DB 1 ;; number of scans
1237 DB 57,126 ;; STANDALONE TIDLE
1238 COM_TI_SP_T1_END: ;;
1240 DW 0 ;; Size of xlat table - null table
1242 COM_TI_SP_END: ;; length of state section
1244 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1250 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1251 ;;***************************************
1252 ;; BE Specific Translate Section for 437
1254 ;;***************************************
1255 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1257 PUBLIC BE_437_XLAT ;;
1260 DW CP437_XLAT_END-$ ;; length of section
1262 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1264 ;; STATE: Non-Alpha Lower Case
1265 ;; KEYBOARD TYPES: All
1266 ;; TABLE TYPE: Translate
1267 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1269 DW CP437_NA_LO_END-$ ;; length of state section
1270 DB NON_ALPHA_LOWER ;; State ID
1271 DW ANY_KB ;; Keyboard Type
1272 DB -1,-1 ;; default ignore error state
1274 DW CP437_NA_LO_T1_END-$ ;; Size of xlat table
1275 DB STANDARD_TABLE ;; xlat options:
1276 DB 1 ;; number of scans
1277 DB 7,15H ;; Section Symbol
1278 CP437_NA_LO_T1_END: ;;
1280 DW 0 ;; Size of xlat table - null table
1284 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1286 ;; STATE: Non-Alpha Upper Case
1287 ;; KEYBOARD TYPES: G, P12
1288 ;; TABLE TYPE: Translate
1289 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1291 DW CP437_NA_UP_END-$ ;; length of state section
1292 DB NON_ALPHA_UPPER ;; State ID
1293 DW G_KB+P12_KB ;; Keyboard Type
1294 DB -1,-1 ;; default ignore error state
1296 DW CP437_NA_UP_T1_END-$ ;; Size of xlat table
1297 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1298 DB 1 ;; number of scans
1299 DB 41,00H ;; 3 Superscript
1300 CP437_NA_UP_T1_END: ;;
1302 DW 0 ;; Size of xlat table - null table
1306 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1308 ;; STATE: Acute Lower Case
1309 ;; KEYBOARD TYPES: All
1310 ;; TABLE TYPE: Translate
1311 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1313 DW CP437_AC_LO_END-$ ;; length of state section
1314 DB ACUTE_LOWER ;; State ID
1315 DW ANY_KB ;; Keyboard Type
1316 DB 39,0 ;; error character = standalone accent
1318 DW CP437_AC_LO_T1_END-$ ;; Size of xlat table
1319 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1320 DB 5 ;; number of scans
1321 DB 16,' ' ;; a acute
1322 DB 18,'\82' ;; e acute
1323 DB 23,'¡
' ;; i acute
1324 DB 24,'¢
' ;; o acute
1325 DB 22,'£
' ;; u acute
1326 CP437_AC_LO_T1_END: ;;
1328 DW 0 ;; Size of xlat table - null table
1332 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1334 ;; STATE: Acute Upper Case
1335 ;; KEYBOARD TYPES: All
1336 ;; TABLE TYPE: Translate
1337 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1339 DW CP437_AC_UP_END-$ ;; length of state section
1340 DB ACUTE_UPPER ;; State ID
1341 DW ANY_KB ;; Keyboard Type
1342 DB 39,0 ;; error character = standalone accent
1344 DW CP437_AC_UP_T1_END-$ ;; Size of xlat table
1345 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1346 DB 1 ;; number of scans
1347 DB 18,'\90' ;; scan code,ASCII - e
1348 CP437_AC_UP_T1_END: ;;
1350 DW 0 ;; Size of xlat table - null table
1354 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1356 ;; STATE: Acute Space Bar
1357 ;; KEYBOARD TYPES: All
1358 ;; TABLE TYPE: Translate
1359 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1361 DW CP437_AC_SP_END-$ ;; length of state section
1362 DB ACUTE_SPACE ;; State ID
1363 DW ANY_KB ;; Keyboard Type
1364 DB 39,0 ;; error character = standalone accent
1366 DW CP437_AC_SP_T1_END-$ ;; Size of xlat table
1367 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1368 DB 1 ;; number of scans
1369 DB 57,39 ;; scan code,ASCII - SPACE
1370 CP437_AC_SP_T1_END: ;;
1372 DW 0 ;; Size of xlat table - null table
1376 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1378 ;; STATE: Tilde Lower
1379 ;; KEYBOARD TYPES: All
1380 ;; TABLE TYPE: Translate
1381 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1383 DW CP437_TI_LO_END-$ ;; length of state section
1384 DB TILDE_LOWER ;; State ID
1385 DW ANY_KB ;; Keyboard Type
1386 DB 126,0 ;; error character = standalone accent
1388 DW CP437_TI_LO_T1_END-$ ;; Size of xlat table
1389 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1390 DB 1 ;; number of scans
1391 DB 49,164 ;; scan code,ASCII - n
1392 CP437_TI_LO_T1_END: ;;
1394 DW 0 ;; Size of xlat table - null table
1396 CP437_TI_LO_END: ;; length of state section
1398 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1400 ;; STATE: Tilde Upper Case
1401 ;; KEYBOARD TYPES: All
1402 ;; TABLE TYPE: Translate
1403 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1405 DW CP437_TI_UP_END-$ ;; length of state section
1406 DB TILDE_UPPER ;; State ID
1407 DW ANY_KB ;; Keyboard Type
1408 DB 126,0 ;; error character = standalone accent
1410 DW CP437_TI_UP_T1_END-$ ;; Size of xlat table
1411 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1412 DB 1 ;; number of scans
1413 DB 49,165 ;; scan code,ASCII - N
1414 CP437_TI_UP_T1_END: ;;
1416 DW 0 ;; Size of xlat table - null table
1418 CP437_TI_UP_END: ;; length of state section
1420 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1422 ;; STATE: Diaresis Lower Case
1423 ;; KEYBOARD TYPES: All
1424 ;; TABLE TYPE: Translate
1425 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1427 DW CP437_DI_LO_END-$ ;; length of state section
1428 DB DIARESIS_LOWER ;; State ID
1429 DW ANY_KB ;; Keyboard Type
1430 DB 0FEH,0 ;; error character = standalone accent
1432 DW CP437_DI_LO_T1_END-$ ;; Size of xlat table
1433 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1434 DB 6 ;; number of scans
1435 DB 18,'\89' ;; scan code,ASCII - e
1436 DB 16,'\84' ;; scan code,ASCII - a
1437 DB 24,'\94' ;; scan code,ASCII - o
1438 DB 22,'\81' ;; scan code,ASCII - u
1439 DB 23,'\8b' ;; scan code,ASCII - i
1440 DB 21,'\98' ;; scan code,ASCII - y
1441 CP437_DI_LO_T1_END: ;;
1443 DW 0 ;; Size of xlat table - null table
1445 CP437_DI_LO_END: ;; length of state section
1447 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1449 ;; STATE: Diaresis Upper Case
1450 ;; KEYBOARD TYPES: All
1451 ;; TABLE TYPE: Translate
1452 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1454 DW CP437_DI_UP_END-$ ;; length of state section
1455 DB DIARESIS_UPPER ;; State ID
1456 DW ANY_KB ;; Keyboard Type
1457 DB 0FEH,0 ;; error character = standalone accent
1459 DW CP437_DI_UP_T1_END-$ ;; Size of xlat table
1460 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1461 DB 3 ;; number of scans
1462 DB 16,'\8e' ;; scan code,ASCII - a
1463 DB 24,'\99' ;; scan code,ASCII - o
1464 DB 22,'\9a' ;; scan code,ASCII - u
1465 CP437_DI_UP_T1_END: ;;
1467 DW 0 ;; Size of xlat table - null table
1469 CP437_DI_UP_END: ;; length of state section
1472 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1474 ;; STATE: Diaresis Space Bar
1475 ;; KEYBOARD TYPES: All
1476 ;; TABLE TYPE: Translate
1477 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1479 ; DW CP437_DI_SP_END-$ ;; length of state section
1480 ; DB DIARESIS_SPACE ;; State ID
1481 ; DW ANY_KB ;; Keyboard Type
1482 ; DB 0FEH,0 ;; error character = standalone accent
1484 ; DW CP437_DI_SP_T1_END-$ ;; Size of xlat table
1485 ; DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1486 ; DB 1 ;; number of scans
1487 ; DB 57,0FEH ;; error character = standalone accent
1488 ;CP437_DI_SP_T1_END: ;;
1490 ; DW 0 ;; Size of xlat table - null table
1491 ;CP437_DI_SP_END: ;; length of state section
1493 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1498 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1499 ;;***************************************
1500 ;; BE Specific Translate Section for 850
1501 ;;***************************************
1502 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1504 PUBLIC BE_850_XLAT ;;
1507 DW CP850_XLAT_END-$ ;; length of section
1511 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1513 ;; STATE: Non-Alpha Lower Case
1514 ;; KEYBOARD TYPES: All
1515 ;; TABLE TYPE: Translate
1516 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1518 DW CP850_NA_LO_END-$ ;; length of state section
1519 DB NON_ALPHA_LOWER ;; State ID
1520 DW ANY_KB ;; Keyboard Type
1521 DB -1,-1 ;; default ignore error state
1523 DW CP850_NA_LO_T1_END-$ ;; Size of xlat table
1524 DB STANDARD_TABLE ;; xlat options:
1525 DB 1 ;; number of scans
1526 DB 7,0F5H ;; Section symbol - \15
1527 CP850_NA_LO_T1_END: ;;
1529 DW 0 ;; Size of xlat table - null table
1534 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1536 ;; STATE: Non-Alpha Upper Case
1537 ;; KEYBOARD TYPES: G, P12
1538 ;; TABLE TYPE: Translate
1539 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1541 DW CP850_NA_UP_END-$ ;; length of state section
1542 DB NON_ALPHA_UPPER ;; State ID
1543 DW G_KB+P12_KB ;; Keyboard Type
1544 DB -1,-1 ;; default ignore error state
1546 DW CP850_NA_UP_T1_END-$ ;; Size of xlat table
1547 DB STANDARD_TABLE ;; xlat options:
1548 DB 1 ;; number of scans
1549 DB 41,0FCH ;; 3 Superscript
1550 CP850_NA_UP_T1_END: ;;
1552 DW 0 ;; Size of xlat table - null table
1556 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1558 ;; STATE: Third Shift
1559 ;; KEYBOARD TYPES: All
1560 ;; TABLE TYPE: Translate
1561 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1563 DW CP850_THIRD_END-$ ;; length of state section
1564 DB THIRD_SHIFT ;; State ID
1565 DW ANY_KB ;; Keyboard Type
1566 DB -1,-1 ;; default ignore error state
1568 DW CP850_THIRD_T1_END-$ ;; Size of xlat table
1569 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1570 DB 0 ;; number of scans
1571 CP850_THIRD_T1_END: ;;
1573 DW 0 ;; Size of xlat table - null table
1577 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1579 ;; STATE: Tilde Lower
1580 ;; KEYBOARD TYPES: All
1581 ;; TABLE TYPE: Translate
1582 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1584 DW CP850_TI_LO_END-$ ;; length of state section
1585 DB TILDE_LOWER ;; State ID
1586 DW ANY_KB ;; Keyboard Type
1587 DB 126,0 ;; error character = standalone accent
1589 DW CP850_TI_LO_T1_END-$ ;; Size of xlat table
1590 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1591 DB 3 ;; number of scans
1592 DB 49,164 ;; scan code,ASCII - n
1595 CP850_TI_LO_T1_END: ;;
1597 DW 0 ;; Size of xlat table - null table
1599 CP850_TI_LO_END: ;; length of state section
1601 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1603 ;; STATE: Tilde Upper Case
1604 ;; KEYBOARD TYPES: All
1605 ;; TABLE TYPE: Translate
1606 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1608 DW CP850_TI_UP_END-$ ;; length of state section
1609 DB TILDE_UPPER ;; State ID
1610 DW ANY_KB ;; Keyboard Type
1611 DB 126,0 ;; error character = standalone accent
1613 DW CP850_TI_UP_T1_END-$ ;; Size of xlat table
1614 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1615 DB 3 ;; number of scans
1616 DB 49,165 ;; scan code,ASCII - N
1619 CP850_TI_UP_T1_END: ;;
1621 DW 0 ;; Size of xlat table - null table
1623 CP850_TI_UP_END: ;; length of state section
1625 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1627 ;; STATE: Acute Lower Case
1628 ;; KEYBOARD TYPES: All
1629 ;; TABLE TYPE: Translate
1630 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1632 DW CP850_AC_LO_END-$ ;; length of state section
1633 DB ACUTE_LOWER ;; State ID
1634 DW ANY_KB ;; Keyboard Type
1635 DB 0EFH,0 ;; error character = standalone accent
1636 DW CP850_AC_LO_T1_END-$ ;; Size of xlat table
1637 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1638 DB 6 ;; number of scans
1639 DB 16,' ' ;; a acute
1640 DB 18,'\82' ;; e acute
1641 DB 23,'¡
' ;; i acute
1642 DB 24,'¢
' ;; o acute
1643 DB 22,'£
' ;; u acute
1644 DB 21,0ECH ;; y acute ADDED 12/16 CNS **********
1645 CP850_AC_LO_T1_END: ;;
1647 DW 0 ;; Size of xlat table - null table
1651 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1653 ;; STATE: Acute Upper Case
1654 ;; KEYBOARD TYPES: All
1655 ;; TABLE TYPE: Translate
1656 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1658 DW CP850_AC_UP_END-$ ;; length of state section
1659 DB ACUTE_UPPER ;; State ID
1660 DW ANY_KB ;; Keyboard Type
1661 DB 0EFH,0 ;; error character = standalone accent
1662 DW CP850_AC_UP_T1_END-$ ;; Size of xlat table
1663 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1664 DB 6 ;; number of scans
1665 DB 16,0B5H ;; A acute
1666 DB 18,090H ;; E acute
1667 DB 23,0D6H ;; I acute
1668 DB 24,0E0H ;; O acute
1669 DB 22,0E9H ;; U acute
1670 DB 21,0EDH ;; Y acute
1671 CP850_AC_UP_T1_END: ;;
1673 DW 0 ;; Size of xlat table - null table
1676 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1678 ;; STATE: Acute Space Bar
1679 ;; KEYBOARD TYPES: All
1680 ;; TABLE TYPE: Translate
1681 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1683 DW CP850_AC_SP_END-$ ;; length of state section
1684 DB ACUTE_SPACE ;; State ID
1685 DW ANY_KB ;; Keyboard Type
1686 DB 0EFH,0 ;; error character = standalone accent
1688 DW CP850_AC_SP_T1_END-$ ;; Size of xlat table
1689 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1690 DB 1 ;; number of scans
1691 DB 57,0EFH ;; scan code,ASCII - SPACE
1692 CP850_AC_SP_T1_END: ;;
1694 DW 0 ;; Size of xlat table - null table
1698 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1700 ;; STATE: Diaresis Lower Case
1701 ;; KEYBOARD TYPES: All
1702 ;; TABLE TYPE: Translate
1703 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1705 DW CP850_DI_LO_END-$ ;; length of state section
1706 DB DIARESIS_LOWER ;; State ID
1707 DW ANY_KB ;; Keyboard Type
1708 DB 249,0 ;; error character = standalone accent
1710 DW CP850_DI_LO_T1_END-$ ;; Size of xlat table
1711 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1712 DB 6 ;; number of scans
1713 DB 18,'\89' ;; scan code,ASCII - e
1714 DB 16,'\84' ;; scan code,ASCII - a
1715 DB 24,'\94' ;; scan code,ASCII - o
1716 DB 22,'\81' ;; scan code,ASCII - u
1717 DB 23,'\8b' ;; scan code,ASCII - i
1718 DB 21,'\98' ;; scan code,ASCII - y
1719 CP850_DI_LO_T1_END: ;;
1721 DW 0 ;; Size of xlat table - null table
1723 CP850_DI_LO_END: ;; length of state section
1725 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;
1727 ;; STATE: Diaresis Upper
1728 ;; KEYBOARD TYPES: All
1729 ;; TABLE TYPE: Translate
1730 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1732 DW CP850_DI_UP_END-$ ;; length of state section
1733 DB DIARESIS_UPPER ;; State ID
1734 DW ANY_KB ;; Keyboard Type
1735 DB 249,0 ;; error character = standalone accent
1737 DW CP850_DI_UP_T1_END-$ ;; Size of xlat table
1738 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1739 DB 5 ;; number of scans
1741 DB 18,0D3H ;; E diaeresis
1742 DB 23,0D8H ;; I diaeresis
1745 CP850_DI_UP_T1_END: ;;
1747 DW 0 ;; Size of xlat table - null table
1749 CP850_DI_UP_END: ;; length of state section
1751 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1753 ;; STATE: Diaeresis Space Bar
1754 ;; KEYBOARD TYPES: All
1755 ;; TABLE TYPE: Translate
1756 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1758 DW CP850_DI_SP_END-$ ;; length of state section
1759 DB DIARESIS_SPACE ;; State ID
1760 DW ANY_KB ;; Keyboard Type
1761 DB 0FEH,0 ;; error character = standalone accent
1763 DW CP850_DI_SP_T1_END-$ ;; Size of xlat table
1764 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1765 DB 1 ;; number of scans
1766 DB 57,0F9H ;; scan code,ASCII - SPACE
1767 CP850_DI_SP_T1_END: ;;
1769 DW 0 ;; Size of xlat table - null table
1772 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1774 ;; STATE: Grave Upper
1775 ;; KEYBOARD TYPES: ALL
1776 ;; TABLE TYPE: Translate
1777 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1779 DW CP850_GR_UP_END-$ ;; length of state section
1780 DB GRAVE_UPPER ;; State ID
1781 DW ANY_KB ;; Keyboard Type
1782 DB 96,0 ;; error character = standalone accent
1784 DW CP850_GR_UP_T1_END-$ ;; Size of xlat table
1785 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1786 DB 5 ;; number of scans
1787 DB 16,0B7H ;; A grave
1788 DB 18,0D4H ;; E grave
1789 DB 23,0DEH ;; I grave
1790 DB 24,0E3H ;; O grave
1791 DB 22,0EBH ;; U grave
1792 CP850_GR_UP_T1_END: ;;
1794 DW 0 ;; Size of xlat table - null table
1796 CP850_GR_UP_END: ;; length of state section
1798 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1800 ;; STATE: Circumflex Upper
1801 ;; KEYBOARD TYPES: All
1802 ;; TABLE TYPE: Translate
1803 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1805 DW CP850_CI_UP_END-$ ;; length of state section
1806 DB CIRCUMFLEX_UPPER ;; State ID
1808 DB 94,0 ;; error character = standalone accent
1810 DW CP850_CI_UP_T1_END-$ ;; Size of xlat table
1811 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1812 DB 5 ;; number of scans
1813 DB 16,0B6H ;; A circumflex
1814 DB 18,0D2H ;; E circumflex
1815 DB 23,0D7H ;; I circumflex
1816 DB 24,0E2H ;; O circumflex
1817 DB 22,0EAH ;; U circumflex
1818 CP850_CI_UP_T1_END: ;;
1820 DW 0 ;; Size of xlat table - null table
1822 CP850_CI_UP_END: ;; length of state section
1824 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1829 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1833 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;