1 ;; LATEST CHANGE TO CTL [ and ] on XT moved to key 26 & 27
3 ;; ************* CNS 12/18/86
7 TITLE DOS
- Keyboard Definition
File
9 ;; LATEST CHANGE P12 NUMERIC
10 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11 ;; DOS - - NLS Support - Keyboard Defintion File
12 ;; (c) Copyright 1988 Microsoft
14 ;; This file contains the keyboard tables for Portugeuse
16 ;; Linkage Instructions:
19 ;; modded : DTF 18-Sep-86
20 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
22 INCLUDE KEYBSHAR
.INC ;;
23 INCLUDE POSTEQU
.INC ;;
24 INCLUDE KEYBMAC
.INC ;;
30 CODE SEGMENT PUBLIC 'CODE' ;;
31 ASSUME
CS:CODE,DS:CODE ;;
33 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
34 ;; Standard translate table options are a linear search table
35 ;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
36 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
38 STANDARD_TABLE EQU TYPE_2_TAB
+ASCII_ONLY
40 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
42 ;;***************************************
43 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
47 DW LOGIC_END
-$ ;; length
49 DW 0 ;; special features
51 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
52 ;; OPTIONS: If we find a scan match in
53 ;; an XLATT or SET_FLAG operation then
55 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
57 OPTION EXIT_IF_FOUND
;;
59 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
60 ;; Dead key definitions must come before
61 ;; dead key translations to handle
62 ;; dead key + dead key.
63 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
66 ANDF EITHER_CTL
,NOT ;;
68 SET_FLAG DEAD_UPPER
;;
70 SET_FLAG DEAD_LOWER
;;
73 IFF EITHER_SHIFT
,NOT ;;
77 SET_FLAG DEAD_THIRD
;;
82 SET_FLAG DEAD_THIRD
;;
86 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
87 ;; ACUTE ACCENT TRANSLATIONS
88 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
97 IFF R_ALT_SHIFT
,NOT ;;
100 IFF EITHER_CTL
,NOT ;;
101 ANDF EITHER_ALT
,NOT ;;
118 PUT_ERROR_CHAR ACUTE_LOWER
;; If we get here then either the XLATT
119 BEEP
;; failed or we are ina bad shift state.
120 GOTO NON_DEAD
;; Either is invalid so BEEP and fall
121 ;; through to generate the second char.
122 ;; Note that the dead key flag will be
123 ;; reset before we get here.
125 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
126 ;; DIARESIS ACCENT TRANSLATIONS
127 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
136 IFF R_ALT_SHIFT
,NOT ;;
137 XLATT DIARESIS_SPACE
;; exist for 437 so beep for
139 IFF EITHER_CTL
,NOT ;;
140 ANDF EITHER_ALT
,NOT ;;
143 XLATT DIARESIS_LOWER
;;
145 XLATT DIARESIS_UPPER
;;
149 XLATT DIARESIS_UPPER
;;
151 XLATT DIARESIS_LOWER
;;
157 PUT_ERROR_CHAR DIARESIS_LOWER
;; standalone accent
158 BEEP
;; Invalid dead key combo.
161 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
162 ;; GRAVE ACCENT TRANSLATIONS
163 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
172 IFF R_ALT_SHIFT
,NOT ;;
175 IFF EITHER_CTL
,NOT ;;
176 ANDF EITHER_ALT
,NOT ;;
184 IFF CAPS_STATE
,NOT ;;
193 PUT_ERROR_CHAR GRAVE_LOWER
;; standalone accent
194 BEEP
;; Invalid dead key combo.
197 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
198 ;; TILDE ACCENT TRANSLATIONS
199 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
203 GOTO CIRCUMFLEX_PROC
;;
207 IFF R_ALT_SHIFT
,NOT ;;
210 IFF EITHER_CTL
,NOT ;;
211 ANDF EITHER_ALT
,NOT ;;
228 PUT_ERROR_CHAR TILDE_LOWER
;; standalone accent
229 BEEP
;; Invalid dead key combo.
232 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
233 ;; CIRCUMFLEX ACCENT TRANSLATIONS
234 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
238 IFF CIRCUMFLEX
,NOT ;;
243 IFF R_ALT_SHIFT
,NOT ;;
244 XLATT CIRCUMFLEX_SPACE
;;
246 IFF EITHER_CTL
,NOT ;;
247 ANDF EITHER_ALT
,NOT ;;
250 XLATT CIRCUMFLEX_LOWER
;;
252 XLATT CIRCUMFLEX_UPPER
;;
255 IFF CAPS_STATE
,NOT ;;
256 XLATT CIRCUMFLEX_LOWER
;;
258 XLATT CIRCUMFLEX_UPPER
;;
263 INVALID_CIRCUMFLEX: ;;
264 PUT_ERROR_CHAR CIRCUMFLEX_LOWER
;; standalone accent
265 BEEP
;; Invalid dead key combo.
268 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
269 ;; Upper, lower and third shifts
270 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
274 IFKBD G_KB
+P12_KB
;; Avoid accidentally translating
275 ANDF LC_E0
;; the "/" on the numeric pad of the
276 EXIT_STATE_LOGIC
;; G keyboard
279 IFF EITHER_ALT
,NOT ;; Lower and upper case. Alphabetic
280 ANDF EITHER_CTL
,NOT ;; keys are affected by CAPS LOCK.
281 IFF EITHER_SHIFT
;; Numeric keys are not.
282 ;;***BD ADDED FOR NUMERIC PAD
286 ;;***BD END OF ADDITION
287 XLATT NON_ALPHA_UPPER
;;
294 ;;***BD ADDED FOR NUMERIC PAD
298 ;;***BD END OF ADDITION
299 XLATT NON_ALPHA_LOWER
;;
307 IFF EITHER_SHIFT
,NOT ;;
314 IFF EITHER_CTL
,NOT ;;
321 ;**************************************;;
322 IFF EITHER_SHIFT
,NOT ;;
332 IFF R_ALT_SHIFT
,NOT ;;
338 ;**************************************;;
340 IFF EITHER_CTL
,NOT ;;
341 IFF ALT_SHIFT
;; ALT - case
345 IFF EITHER_ALT
,NOT ;; CTRL - case
352 IFF EITHER_CTL
,NOT ;;
353 IFF ALT_SHIFT
;; ALT - case
354 ANDF R_ALT_SHIFT
,NOT ;;
358 IFF EITHER_ALT
,NOT ;; CTRL - case
364 ANDF R_ALT_SHIFT
,NOT ;;
373 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
374 ;; PO Common Translate Section
375 ;; This section contains translations for the lower 128 characters
376 ;; only since these will never change from code page to code page.
377 ;; In addition the dead key "Set Flag" tables are here since the
378 ;; dead keys are on the same keytops for all code pages.
379 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
381 PUBLIC PO_COMMON_XLAT
;;
384 DW COMMON_XLAT_END
-$ ;; length of section
388 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
390 ;; STATE: Lower Shift Dead Key
391 ;; KEYBOARD TYPES: XT
392 ;; TABLE TYPE: Flag Table
393 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
395 DW COM_DK_LO_END
-$ ;; length of state section
396 DB DEAD_LOWER
;; State ID
397 DW XT_KB
;; Keyboard Type
398 DB -1,-1 ;; Buffer entry for error character
400 DW 2 ;; number of entries
402 FLAG ACUTE
;; flag bit to set
409 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
411 ;; STATE: Lower Shift Dead Key
412 ;; KEYBOARD TYPES: G, P12
413 ;; TABLE TYPE: Flag Table
414 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
416 DW COM_DK_LO_K1_END
-$ ;; length of state section
417 DB DEAD_LOWER
;; State ID
418 DW G_KB
+P12_KB
;; Keyboard Type
419 DB -1,-1 ;; Buffer entry for error character
421 DW 2 ;; number of entries
423 FLAG ACUTE
;; flag bit to set
430 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
432 ;; STATE: Upper Shift Dead Key
433 ;; KEYBOARD TYPES: XT
434 ;; TABLE TYPE: Flag Table
435 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
437 DW COM_DK_UP_END
-$ ;; length of state section
438 DB DEAD_UPPER
;; State ID
439 DW XT_KB
;; Keyboard Type
440 DB -1,-1 ;; Buffer entry for error character
442 DW 2 ;; number of entries
444 FLAG GRAVE
;; flag bit to set
450 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
452 ;; STATE: Upper Shift Dead Key
453 ;; KEYBOARD TYPES: G, P12,
454 ;; TABLE TYPE: Flag Table
455 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
457 DW COM_DK_UP_K1_END
-$ ;; length of state section
458 DB DEAD_UPPER
;; State ID
459 DW G_KB
+P12_KB
;; Keyboard Type
460 DB -1,-1 ;; Buffer entry for error character
462 DW 2 ;; number of entries
464 FLAG GRAVE
;; flag bit to set
470 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
472 ;; STATE: Third Shift Dead Key
473 ;; KEYBOARD TYPES: G, P12
474 ;; TABLE TYPE: Flag Table
475 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
477 DW COM_DK_TH_END
-$ ;; length of state section
478 DB DEAD_THIRD
;; State ID
479 DW G_KB
+P12_KB
;; Keyboard Type
480 DB -1,-1 ;; Buffer entry for error character
482 DW 1 ;; number of entries
484 FLAG DIARESIS
;; flag bit to set
488 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
491 ;; KEYBOARD TYPES: XT, G, P12,
492 ;; TABLE TYPE: Translate
493 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
495 DW COM_ALT_K1_END
-$ ;; length of state section
496 DB ALT_CASE
;; State ID
497 DW XT_KB
+G_KB
+P12_KB
;; Keyboard Type
498 DB -1,-1 ;; Buffer entry for error character
500 DW COM_ALT_K1_T1_END
-$ ;; Size of xlat table
501 DB TYPE_2_TAB
;; xlat options:
502 DB 0 ;; 2 number of entries
503 ; DB 12,-1,-1 ;; BLOT OUT HYPHEN
504 ; DB 53,0,82H ;; MOVE HYPHEN
505 COM_ALT_K1_T1_END: ;;
507 DW 0 ;; Size of xlat table - null table
511 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
514 ;; KEYBOARD TYPES: G, P12,
515 ;; TABLE TYPE: Translate
516 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
518 DW COM_CTRL_K1_END
-$ ;; length of state section
519 DB CTRL_CASE
;; State ID **** CNS 12/18
520 DW G_KB
+P12_KB
;; Keyboard Type
521 DB -1,-1 ;; Buffer entry for error character
523 DW COM_CTRL_K1_T1_END
-$ ;; Size of xlat table
524 DB TYPE_2_TAB
;; xlat options:
525 DB 7 ;; number of entries
528 DB 12,-1,-1 ;; BLOT OUT HYPHEN
529 DB 1
AH,-1,-1 ;; " " [
530 DB 1
BH,-1,-1 ;; " " ]
531 DB 29H
,1
CH,29H
;; backslash
532 DB 53,01FH,35H
;; MOVE HYPHEN
533 COM_CTRL_K1_T1_END: ;;
535 DW 0 ;; Size of xlat table - null table
539 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
540 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
543 ;; KEYBOARD TYPES: XT
544 ;; TABLE TYPE: Translate
545 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; *** CNS 12/18/86
547 DW COM_CTRL_K2_END
-$ ;; length of state section
548 DB CTRL_CASE
;; State ID
549 DW XT_KB
;; Keyboard Type
550 DB -1,-1 ;; Buffer entry for error character
552 DW COM_CTRL_K2_T1_END
-$ ;; Size of xlat table
553 DB TYPE_2_TAB
;; xlat options:
554 DB 5 ;; number of entries
555 DB 12,-1,-1 ;; BLOT OUT HYPHEN
556 DB 1
AH,1
BH,1
AH ;; " " [
557 DB 1
BH,1
DH,1
BH ;; " " ]
558 DB 43,1
CH,43 ;; backslash
559 DB 53,01FH,35H
;; MOVE HYPHEN
560 COM_CTRL_K2_T1_END: ;;
562 DW 0 ;; Size of xlat table - null table
566 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
568 ;; STATE: Alpha Lower Case
569 ;; KEYBOARD TYPES: XT, G, P12,
570 ;; TABLE TYPE: Translate
571 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
573 DW COM_AL_LO_END
-$ ;; length of state section
574 DB ALPHA_LOWER
;; State ID
575 DW XT_KB
+G_KB
+P12_KB
;; Keyboard Type
576 DB -1,-1 ;; Buffer entry for error character
578 DW COM_AL_LO_T1_END
-$ ;; Size of xlat table
579 DB STANDARD_TABLE
;; xlat options:
580 DB 1 ;; number of entries
581 DB 39,087H ;; c-cedilla
584 DW 0 ;; Size of xlat table - null table
588 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
590 ;; STATE: Alpha Upper Case
591 ;; KEYBOARD TYPES: XT, G, P12,
592 ;; TABLE TYPE: Translate
593 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
595 DW COM_AL_UP_END
-$ ;; length of state section
596 DB ALPHA_UPPER
;; State ID
597 DW XT_KB
+G_KB
+P12_KB
;; Keyboard Type
598 DB -1,-1 ;; Buffer entry for error character
600 DW COM_AL_UP_T1_END
-$ ;; Size of xlat table
601 DB STANDARD_TABLE
;; xlat options:
602 DB 1 ;; number of entries
603 DB 39,080H ;; c-cedilla
606 DW 0 ;; Size of xlat table - null table
611 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
613 ;; STATE: Non-Alpha Lower Case
614 ;; KEYBOARD TYPES: XT,
615 ;; TABLE TYPE: Translate
616 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
618 DW COM_NA_LO_END
-$ ;; length of state section
619 DB NON_ALPHA_LOWER
;; State ID
620 DW XT_KB
;; Keyboard Type
621 DB -1,-1 ;; Buffer entry for error character
623 DW COM_NA_LO_T1_END
-$ ;; Size of xlat table
624 DB STANDARD_TABLE
;; xlat options:
625 DB 6 ;; number of entries
634 DW 0 ;; Size of xlat table - null table
638 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
640 ;; STATE: Non-Alpha Lower Case
641 ;; KEYBOARD TYPES: XT, , G, P12,
642 ;; TABLE TYPE: Translate
643 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
645 DW COM_NA_LO_K1_END
-$ ;; length of state section
646 DB NON_ALPHA_LOWER
;; State ID
647 DW G_KB
+P12_KB
;; Keyboard Type
648 DB -1,-1 ;; Buffer entry for error character
650 DW COM_NA_LO_K1_T1_END
-$ ;; Size of xlat table
651 DB STANDARD_TABLE
;; xlat options:
652 DB 7 ;; number of entries
660 COM_NA_LO_K1_T1_END: ;;
662 DW 0 ;; Size of xlat table - null table
666 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
668 ;; STATE: Non-Alpha Upper Case
669 ;; KEYBOARD TYPES: XT,
670 ;; TABLE TYPE: Translate
671 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
673 DW COM_NA_UP_END-$ ;; length of state section
674 DB NON_ALPHA_UPPER ;; State ID
675 DW XT_KB ;; Keyboard Type
676 DB -1,-1 ;; Buffer entry for error character
678 DW COM_NA_UP_T1_END-$ ;; Size of xlat table
679 DB STANDARD_TABLE ;; xlat options:
688 DB 13,0AFH ;; right double arrow ¯
690 DB 40,0A6H ;;¦ a underscore
698 DW 0 ;; Size of xlat table - null table
703 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
705 ;; STATE: Non-Alpha Upper Case
706 ;; KEYBOARD TYPES: G, P12,
707 ;; TABLE TYPE: Translate
708 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
710 DW COM_NA_UP_K1_END
-$ ;; length of state section
711 DB NON_ALPHA_UPPER
;; State ID
712 DW G_KB
+P12_KB
;; Keyboard Type
713 DB -1,-1 ;; Buffer entry for error character
715 DW COM_NA_UP_K1_T1_END
-$ ;; Size of xlat table
716 DB STANDARD_TABLE
;; xlat options:
725 DB 13,0AFH ;; right double arrow ¯
727 DB 40,0A6H ;;¦ a underscore
734 COM_NA_UP_K1_T1_END: ;;
736 DW 0 ;; Size of xlat table - null table
741 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
743 ;; STATE: Third Shift
744 ;; KEYBOARD TYPES: XT,
745 ;; TABLE TYPE: Translate
746 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
748 DW COM_THIRD_END
-$ ;; length of state section
749 DB THIRD_SHIFT
;; State ID
750 DW XT_KB
;; Keyboard Type
751 DB -1,-1 ;; Buffer entry for error character
753 DW COM_THIRD_T1_END
-$ ;; Size of xlat table
754 DB STANDARD_TABLE
;; xlat options:
755 DB 8 ;; number of entries
766 DW 0 ;; Last xlat table
769 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
771 ;; STATE: Third Shift
772 ;; KEYBOARD TYPES: G, P12,
773 ;; TABLE TYPE: Translate
774 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
776 DW COM_THIRD_K1_END-$ ;; length of state section
777 DB THIRD_SHIFT ;; State ID
778 DW G_KB+P12_KB ;; Keyboard Type
779 DB -1,-1 ;; Buffer entry for error character
781 DW COM_THIRD_K1_T1_END-$ ;; Size of xlat table
782 DB STANDARD_TABLE ;; xlat options:
783 DB 6 ;; number of entries
790 COM_THIRD_K1_T1_END: ;;
792 DW 0 ;; Last xlat table
795 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
797 ;; STATE: Grave Lower
798 ;; KEYBOARD TYPES: XT, , G, P12,
799 ;; TABLE TYPE: Translate
800 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
802 DW COM_GR_LO_END-$ ;; length of state section
803 DB GRAVE_LOWER ;; State ID
804 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
805 DB 96,0 ;; error character = standalone accent
807 DW COM_GR_LO_T1_END-$ ;; Size of xlat table
808 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
809 DB 5 ;; number of scans
810 DB 18,'\8a' ;; scan code,ASCII - e
811 DB 22,'\97' ;; scan code,ASCII - u
812 DB 23,'\8d' ;; scan code,ASCII - i
813 DB 24,'\95' ;; scan code,ASCII - o
814 DB 30,'\85' ;; scan code,ASCII - a
817 DW 0 ;; Size of xlat table - null table
819 COM_GR_LO_END: ;; length of state section
821 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
823 ;; STATE: Grave Space Bar
824 ;; KEYBOARD TYPES: XT, , G, P12,
825 ;; TABLE TYPE: Translate
826 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
828 DW COM_GR_SP_END-$ ;; length of state section
829 DB GRAVE_SPACE ;; State ID
830 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
831 DB 96,0 ;; error character = standalone accent
833 DW COM_GR_SP_T1_END-$ ;; Size of xlat table
834 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
835 DB 1 ;; number of scans
836 DB 57,96 ;; STANDALONE GRAVE
839 DW 0 ;; Size of xlat table - null table
841 COM_GR_SP_END: ;; length of state section
843 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
845 ;; STATE: Circumflex Lower
846 ;; KEYBOARD TYPES: XT, , G, P12,
847 ;; TABLE TYPE: Translate
848 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
850 DW COM_CI_LO_END-$ ;; length of state section
851 DB CIRCUMFLEX_LOWER ;; State ID
852 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
853 DB 94,0 ;; error character = standalone accent
855 DW COM_CI_LO_T1_END-$ ;; Size of xlat table
856 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
857 DB 3 ;; number of scans
858 DB 18,'\88' ;; scan code,ASCII - e
859 DB 24,'\93' ;; scan code,ASCII - o
860 DB 30,'\83' ;; scan code,ASCII - a
867 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
869 ;; STATE: Circumflex Space Bar
870 ;; KEYBOARD TYPES: XT, , G, P12,
871 ;; TABLE TYPE: Translate
872 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
874 DW COM_CI_SP_END-$ ;; length of state section
875 DB CIRCUMFLEX_SPACE ;; State ID
876 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
877 DB 94,0 ;; error character = standalone accent
879 DW COM_CI_SP_T1_END-$ ;; Size of xlat table
880 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
881 DB 1 ;; number of scans
882 DB 57,94 ;; STANDALONE CIRCUMFLEX
885 DW 0 ;; Size of xlat table - null table
887 COM_CI_SP_END: ;; length of state section
889 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
891 ;; STATE: Tilde Lower
892 ;; KEYBOARD TYPES: XT,
893 ;; TABLE TYPE: Translate
894 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
896 DW COM_TI_LO_END-$ ;; length of state section
897 DB TILDE_LOWER ;; State ID
898 DW XT_KB ;; Keyboard Type
899 DB 07EH,0 ;; error character = standalone accent
901 DW COM_TI_LO_T1_END-$ ;; Size of xlat table
902 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
903 DB 4 ;; number of scans
904 DB 30,0C6H ;; scan code,ASCII - tilde a
905 DB 24,0E4H ;; scan code,ASCII - tilde o
906 DB 49,0A4H ;; scan code,ASCII - ¤
907 DB 22,081h ;; scan code,ASCII - u diaresis
908 COM_TI_LO_T1_END: ;; because the diaresis is not
909 ;; available on the XT
914 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
915 ;;; CODE PAGE: Common
916 ;;; STATE: Tilde Upper Case
917 ;;; KEYBOARD TYPES: XT,
918 ;;; TABLE TYPE: Translate
919 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
921 DW COM_TI_UP_END-$ ;; length of state section
922 DB TILDE_UPPER ;; State ID
923 DW XT_KB ;; Keyboard Type
924 DB 07eH,0 ;; error character = standalone accent
926 DW COM_TI_UP_T1_END-$ ;; Size of xlat table
927 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
928 DB 4 ;; number of scans
929 DB 30,0C7H ;; scan code,ASCII - tilde A
930 DB 24,0E5H ;; scan code,ASCII - tilde O
931 DB 49,0A5H ;; scan code,ASCII - ¥
932 DB 22,09AH ;; scan code,ASCII - U diaresis
933 COM_TI_UP_T1_END: ;; because the diaresis is not
934 ;; available on the XT
935 DW 0 ;; Size of xlat table - null table
937 COM_TI_UP_END: ;; length of state section
940 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
942 ;; STATE: Tilde Lower
943 ;; KEYBOARD TYPES: G, P12
944 ;; TABLE TYPE: Translate
945 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
947 DW COM_TI_LO_K1_END-$ ;; length of state section
948 DB TILDE_LOWER ;; State ID
949 DW G_KB+P12_KB ;; Keyboard Type
950 DB 07EH,0 ;; error character = standalone accent
952 DW COM_TI_LO_K1_T1_END-$ ;; Size of xlat table
953 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
954 DB 3 ;; number of scans
955 DB 30,0C6H ;; scan code,ASCII - tilde a
956 DB 24,0E4H ;; scan code,ASCII - tilde o
957 DB 49,0A4H ;; scan code,ASCII - ¤
958 COM_TI_LO_K1_T1_END: ;;
964 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
965 ;;; CODE PAGE: Common
966 ;;; STATE: Tilde Upper Case
967 ;;; KEYBOARD TYPES: G, P12
968 ;;; TABLE TYPE: Translate
969 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
971 DW COM_TI_UP_K1_END-$ ;; length of state section
972 DB TILDE_UPPER ;; State ID
973 DW G_KB+P12_KB ;; Keyboard Type
974 DB 07EH,0 ;; error character = standalone accent
976 DW COM_TI_UP_K1_T1_END-$ ;; Size of xlat table
977 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
978 DB 3 ;; number of scans
979 DB 30,0C7H ;; scan code,ASCII - tilde A
980 DB 24,0E5H ;; scan code,ASCII - tilde O
981 DB 49,0A5H ;; scan code,ASCII - ¥
982 COM_TI_UP_K1_T1_END: ;;
984 DW 0 ;; Size of xlat table - null table
986 COM_TI_UP_K1_END: ;; length of state section
989 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
991 ;; STATE: Tilde Space Bar
992 ;; KEYBOARD TYPES: XT, , G, P12,
993 ;; TABLE TYPE: Translate
994 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
996 DW COM_TI_SP_END-$ ;; length of state section
997 DB TILDE_SPACE ;; State ID
998 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
999 DB 07EH,0 ;; error character = standalone accent
1001 DW COM_TI_SP_T1_END-$ ;; Size of xlat table
1002 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1003 DB 1 ;; number of scans
1004 DB 57,07EH ;; STANDALONE TILDE
1005 COM_TI_SP_T1_END: ;;
1007 DW 0 ;; Size of xlat table - null table
1009 COM_TI_SP_END: ;; length of state section
1011 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1015 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1016 ;;***************************************
1017 ;; PO Specific Translate Section for 860
1018 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1020 PUBLIC PO_860_XLAT ;;
1023 DW CP860_XLAT_END-$ ;; length of section
1025 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1027 ;; STATE: Third Shift
1028 ;; KEYBOARD TYPES: G, P12,
1029 ;; TABLE TYPE: Translate
1030 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1032 DW CP860_THIRD_K1_END-$ ;; length of state section
1033 DB THIRD_SHIFT ;; State ID
1034 DW G_KB+P12_KB ;; Keyboard Type
1035 DB -1,-1 ;; Buffer entry for error character
1037 DW CP860_THIRD_K1_T1_END-$ ;; Size of xlat table
1038 DB STANDARD_TABLE ;; xlat options:
1039 DB 1 ;; number of entries
1040 DB 5,015H ;; section symbol
1041 CP860_THIRD_K1_T1_END: ;;
1043 DW 0 ;; Last xlat table
1044 CP860_THIRD_K1_END: ;;
1046 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1048 ;; STATE: Acute Lower Case
1049 ;; KEYBOARD TYPES: XT, , G, P12,
1050 ;; TABLE TYPE: Translate
1051 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1053 DW CP860_AC_LO_END-$ ;; length of state section
1054 DB ACUTE_LOWER ;; State ID
1055 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1056 DB 39,0 ;; error character = standalone accent
1058 DW CP860_AC_LO_T1_END-$ ;; Size of xlat table
1059 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1060 DB 5 ;; number of scans
1061 DB 18,'\82' ;; scan code,ASCII - e
1062 DB 22,'£
' ;; scan code,ASCII - u
1063 DB 23,'¡
' ;; scan code,ASCII - i
1064 DB 24,'¢
' ;; scan code,ASCII - o
1065 DB 30,' ' ;; scan code,ASCII - a
1066 CP860_AC_LO_T1_END: ;;
1068 DW 0 ;; Size of xlat table - null table
1072 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1074 ;; STATE: Acute Upper Case
1075 ;; KEYBOARD TYPES: XT, , G, P12,
1076 ;; TABLE TYPE: Translate
1077 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1079 DW CP860_AC_UP_END-$ ;; length of state section
1080 DB ACUTE_UPPER ;; State ID
1081 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1082 DB 39,0 ;; error character = standalone accent
1084 DW CP860_AC_UP_T1_END-$ ;; Size of xlat table
1085 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1086 DB 5 ;; number of scans
1087 DB 18,090H ;; E acute
1088 DB 22,096H ;; U acute
1089 DB 23,08BH ;; I acute
1090 DB 24,09FH ;; O acute
1091 DB 30,086H ;; A acute
1092 CP860_AC_UP_T1_END: ;;
1094 DW 0 ;; Size of xlat table - null table
1098 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1100 ;; STATE: Acute Space Bar
1101 ;; KEYBOARD TYPES: XT, , G, P12,
1102 ;; TABLE TYPE: Translate
1103 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1105 DW CP860_AC_SP_END-$ ;; length of state section
1106 DB ACUTE_SPACE ;; State ID
1107 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1108 DB 39,0 ;; error character = standalone accent
1110 DW CP860_AC_SP_T1_END-$ ;; Size of xlat table
1111 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1112 DB 1 ;; number of scans
1113 DB 57,39 ;; scan code,ASCII - SPACE
1114 CP860_AC_SP_T1_END: ;;
1116 DW 0 ;; Size of xlat table - null table
1120 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1122 ;; STATE: Grave Upper
1123 ;; KEYBOARD TYPES: XT, , G, P12,
1124 ;; TABLE TYPE: Translate
1125 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1127 DW CP860_GR_UP_END-$ ;; length of state section
1128 DB GRAVE_UPPER ;; State ID
1129 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1130 DB 96,0 ;; error character = standalone accent
1132 DW CP860_GR_UP_T1_END-$ ;; Size of xlat table
1133 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1134 DB 5 ;; number of scans
1135 DB 18,092H ;; E grave
1136 DB 22,09DH ;; U grave
1137 DB 23,098H ;; I grave
1138 DB 24,0A9H ;; O grave
1139 DB 30,091H ;; A grave
1140 CP860_GR_UP_T1_END: ;;
1142 DW 0 ;; Size of xlat table - null table
1144 CP860_GR_UP_END: ;; length of state section
1146 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1148 ;; STATE: Circumflex Upper
1149 ;; KEYBOARD TYPES: XT, , G, P12,
1150 ;; TABLE TYPE: Translate
1151 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1153 DW CP860_CI_UP_END-$ ;; length of state section
1154 DB CIRCUMFLEX_UPPER ;; State ID
1155 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1156 DB 94,0 ;; error character = standalone accent
1158 DW CP860_CI_UP_T1_END-$ ;; Size of xlat table
1159 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1160 DB 3 ;; number of scans
1161 DB 30,08FH ;; A circumflex
1162 DB 18,089H ;; E circumflex
1163 DB 24,08CH ;; O circumflex
1164 CP860_CI_UP_T1_END: ;;
1166 DW 0 ;; Size of xlat table - null table
1168 CP860_CI_UP_END: ;; length of state section
1170 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1172 ;; STATE: Tilde Lower
1173 ;; KEYBOARD TYPES: XT, , G, P12,
1174 ;; TABLE TYPE: Translate
1175 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1177 DW CP860_TI_LO_END-$ ;; length of state section
1178 DB TILDE_LOWER ;; State ID
1179 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1180 DB 07eH,0 ;; error character = standalone accent
1182 DW CP860_TI_LO_T1_END-$ ;; Size of xlat table
1183 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1184 DB 2 ;; number of scans
1185 DB 24,094H ;; scan code,ASCII - o tilde
1186 DB 30,084H ;; scan code,ASCII - a tilde
1187 CP860_TI_LO_T1_END: ;;
1193 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1195 ;;; STATE: Tilde Upper Case
1196 ;;; KEYBOARD TYPES: XT, , G, P12,
1197 ;;; TABLE TYPE: Translate
1198 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1200 DW CP860_TI_UP_END-$ ;; length of state section
1201 DB TILDE_UPPER ;; State ID
1202 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1203 DB 07eH,0 ;; error character = standalone accent
1205 DW CP860_TI_UP_T1_END-$ ;; Size of xlat table
1206 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1207 DB 2 ;; number of scans
1208 DB 24,099H ;; scan code,ASCII - O tilde
1209 DB 30,08EH ;; scan code,ASCII - A tilde
1210 CP860_TI_UP_T1_END: ;;
1212 DW 0 ;; Size of xlat table - null table
1214 CP860_TI_UP_END: ;; length of state section
1217 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1219 ;; STATE: Diaresis Lower
1220 ;; KEYBOARD TYPES: G, P12,
1221 ;; TABLE TYPE: Translate
1222 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1224 DW CP860_DI_LO_END-$ ;; length of state section
1225 DB DIARESIS_LOWER ;; State ID
1226 DW G_KB+P12_KB ;; Keyboard Type
1227 DB 0FEH,0 ;; error character = standalone accent
1229 DW CP860_DI_LO_T1_END-$ ;; Size of xlat table
1230 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1231 DB 1 ;; number of scans
1232 DB 22,081H ;; u diaeresis
1233 CP860_DI_LO_T1_END: ;;
1235 DW 0 ;; Size of xlat table - null table
1237 CP860_DI_LO_END: ;; length of state section
1239 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1241 ;; STATE: Diaresis Upper
1242 ;; KEYBOARD TYPES: G, P12,
1243 ;; TABLE TYPE: Translate
1244 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1246 DW CP860_DI_UP_END-$ ;; length of state section
1247 DB DIARESIS_UPPER ;; State ID
1248 DW G_KB+P12_KB ;; Keyboard Type
1249 DB 0FEH,0 ;; error character = standalone accent
1251 DW CP860_DI_UP_T1_END-$ ;; Size of xlat table
1252 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1253 DB 1 ;; number of scans
1254 DB 22,09AH ;; U diaeresis
1255 CP860_DI_UP_T1_END: ;;
1257 DW 0 ;; Size of xlat table - null table
1259 CP860_DI_UP_END: ;; length of state section
1261 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1263 ;; STATE: Diaresis Space Bar
1264 ;; KEYBOARD TYPES: G, P12
1265 ;; TABLE TYPE: Translate
1266 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1268 DW CP860_DI_SP_END-$ ;; length of state section
1269 DB DIARESIS_SPACE ;; State ID
1270 DW G_KB+P12_KB ;; Keyboard Type
1271 DB 0FEH,0 ;; error character = standalone accent
1273 DW CP860_DI_SP_T1_END-$ ;; Size of xlat table
1274 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1275 DB 1 ;; number of scans
1276 DB 57,0FEH ;; scan code,ASCII - SPACE
1277 CP860_DI_SP_T1_END: ;;
1279 DW 0 ;; Size of xlat table - null table
1284 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1289 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1290 ;; PO Specific Translate Section for 850
1291 ;;***************************************
1292 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1294 PUBLIC PO_850_XLAT ;;
1297 DW CP850_XLAT_END-$ ;; length of section
1301 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1303 ;; STATE: Third Shift
1304 ;; KEYBOARD TYPES: G, P12,
1305 ;; TABLE TYPE: Translate
1306 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1308 DW CP850_THIRD_K1_END-$ ;; length of state section
1309 DB THIRD_SHIFT ;; State ID
1310 DW G_KB+P12_KB ;; Keyboard Type
1311 DB -1,-1 ;; Buffer entry for error character
1313 DW CP850_THIRD_K1_T1_END-$ ;; Size of xlat table
1314 DB STANDARD_TABLE ;; xlat options:
1315 DB 1 ;; number of entries
1316 DB 5,0F5H ;; section symbol
1317 CP850_THIRD_K1_T1_END: ;;
1319 DW 0 ;; Last xlat table
1320 CP850_THIRD_K1_END: ;;
1322 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1324 ;; STATE: Acute Lower Case
1325 ;; KEYBOARD TYPES: XT, , G, P12,
1326 ;; TABLE TYPE: Translate
1327 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1329 DW CP850_AC_LO_END-$ ;; length of state section
1330 DB ACUTE_LOWER ;; State ID
1331 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1332 DB 239,0 ;; error character = standalone accent
1334 DW CP850_AC_LO_T1_END-$ ;; Size of xlat table
1335 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1336 DB 6 ;; number of scans
1337 DB 18,'\82' ;; scan code,ASCII - e
1338 DB 21,0ECH ;; y acute
1339 DB 22,'£
' ;; scan code,ASCII - u
1340 DB 23,'¡
' ;; scan code,ASCII - i
1341 DB 24,'¢
' ;; scan code,ASCII - o
1342 DB 30,' ' ;; scan code,ASCII - a
1343 CP850_AC_LO_T1_END: ;;
1345 DW 0 ;; Size of xlat table - null table
1349 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1351 ;; STATE: Acute Upper Case
1352 ;; KEYBOARD TYPES: XT, , G, P12,
1353 ;; TABLE TYPE: Translate
1354 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1356 DW CP850_AC_UP_END-$ ;; length of state section
1357 DB ACUTE_UPPER ;; State ID
1358 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1359 DB 239,0 ;; error character = standalone accent
1361 DW CP850_AC_UP_T1_END-$ ;; Size of xlat table
1362 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1363 DB 6 ;; number of scans
1364 DB 18,090H ;; E acute
1365 DB 21,0EDH ;; Y acute
1366 DB 22,0E9H ;; U acute
1367 DB 23,0D6H ;; I acute
1368 DB 24,0E0H ;; O acute
1369 DB 30,0B5H ;; A acute
1370 CP850_AC_UP_T1_END: ;;
1372 DW 0 ;; Size of xlat table - null table
1376 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1378 ;; STATE: Acute Space Bar
1379 ;; KEYBOARD TYPES: XT, , G, P12,
1380 ;; TABLE TYPE: Translate
1381 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1383 DW CP850_AC_SP_END-$ ;; length of state section
1384 DB ACUTE_SPACE ;; State ID
1385 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1386 DB 239,0 ;; error character = standalone accent
1388 DW CP850_AC_SP_T1_END-$ ;; Size of xlat table
1389 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1390 DB 1 ;; number of scans
1391 DB 57,239 ;; scan code,ASCII - SPACE
1392 CP850_AC_SP_T1_END: ;;
1394 DW 0 ;; Size of xlat table - null table
1398 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1400 ;; STATE: Diaresis Lower
1401 ;; KEYBOARD TYPES: G, P12,
1402 ;; TABLE TYPE: Translate
1403 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1405 DW CP850_DI_LO_END-$ ;; length of state section
1406 DB DIARESIS_LOWER ;; State ID
1407 DW G_KB+P12_KB ;; Keyboard Type
1408 DB 249,0 ;; error character = standalone accent
1410 DW CP850_DI_LO_T1_END-$ ;; Size of xlat table
1411 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1412 DB 6 ;; number of scans
1413 DB 18,089H ;; e diaeresis
1414 DB 21,098H ;; y diaeresis
1415 DB 22,081H ;; u diaeresis
1416 DB 23,08BH ;; i diaeresis
1417 DB 24,094H ;; o diaeresis
1418 DB 30,084H ;; a diaeresis
1419 CP850_DI_LO_T1_END: ;;
1421 DW 0 ;; Size of xlat table - null table
1423 CP850_DI_LO_END: ;; length of state section
1425 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1427 ;; STATE: Diaresis Upper
1428 ;; KEYBOARD TYPES: G, P12,
1429 ;; TABLE TYPE: Translate
1430 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1432 DW CP850_DI_UP_END-$ ;; length of state section
1433 DB DIARESIS_UPPER ;; State ID
1434 DW G_KB+P12_KB ;; Keyboard Type
1435 DB 249,0 ;; error character = standalone accent
1437 DW CP850_DI_UP_T1_END-$ ;; Size of xlat table
1438 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1439 DB 5 ;; number of scans
1440 DB 18,0D3H ;; E diaeresis
1441 DB 22,09AH ;; U diaeresis
1442 DB 23,0D8H ;; I diaeresis
1443 DB 24,099H ;; O diaeresis
1444 DB 30,08EH ;; A diaeresis
1445 CP850_DI_UP_T1_END: ;;
1447 DW 0 ;; Size of xlat table - null table
1449 CP850_DI_UP_END: ;; length of state section
1451 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1453 ;; STATE: Diaresis Space Bar
1454 ;; KEYBOARD TYPES: G, P12
1455 ;; TABLE TYPE: Translate
1456 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1458 DW CP850_DI_SP_END-$ ;; length of state section
1459 DB DIARESIS_SPACE ;; State ID
1460 DW G_KB+P12_KB ;; Keyboard Type
1461 DB 249,0 ;; error character = standalone accent
1463 DW CP850_DI_SP_T1_END-$ ;; Size of xlat table
1464 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1465 DB 1 ;; number of scans
1466 DB 57,249 ;; scan code,ASCII - SPACE
1467 CP850_DI_SP_T1_END: ;;
1469 DW 0 ;; Size of xlat table - null table
1473 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1475 ;; STATE: Grave Upper
1476 ;; KEYBOARD TYPES: XT, , G, P12,
1477 ;; TABLE TYPE: Translate
1478 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1480 DW CP850_GR_UP_END-$ ;; length of state section
1481 DB GRAVE_UPPER ;; State ID
1482 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1483 DB 96,0 ;; error character = standalone accent
1485 DW CP850_GR_UP_T1_END-$ ;; Size of xlat table
1486 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1487 DB 5 ;; number of scans
1488 DB 30,0B7H ;; A grave
1489 DB 18,0D4H ;; E grave
1490 DB 23,0DEH ;; I grave
1491 DB 24,0E3H ;; O grave
1492 DB 22,0EBH ;; U grave
1493 CP850_GR_UP_T1_END: ;;
1495 DW 0 ;; Size of xlat table - null table
1497 CP850_GR_UP_END: ;; length of state section
1499 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1501 ;; STATE: Tilde Lower
1502 ;; KEYBOARD TYPES: XT, , G, P12,
1503 ;; TABLE TYPE: Translate
1504 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1506 DW CP850_TI_LO_END-$ ;; length of state section
1507 DB TILDE_LOWER ;; State ID
1508 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1509 DB 07EH,0 ;; error character = standalone accent
1511 DW CP850_TI_LO_T1_END-$ ;; Size of xlat table
1512 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1513 DB 2 ;; number of scans
1514 DB 30,0C6H ;; scan code,ASCII - a tilde
1515 DB 24,0E4H ;; scan code,ASCII - o tilde
1516 CP850_TI_LO_T1_END: ;;
1522 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1524 ;;; STATE: Tilde Upper Case
1525 ;;; KEYBOARD TYPES: XT, , G, P12,
1526 ;;; TABLE TYPE: Translate
1527 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1529 DW CP850_TI_UP_END-$ ;; length of state section
1530 DB TILDE_UPPER ;; State ID
1531 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1532 DB 07eH,0 ;; error character = standalone accent
1534 DW CP850_TI_UP_T1_END-$ ;; Size of xlat table
1535 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1536 DB 2 ;; number of scans
1537 DB 30,0C7H ;; scan code,ASCII - A tilde
1538 DB 24,0E5H ;; scan code,ASCII - O tilde
1539 CP850_TI_UP_T1_END: ;;
1541 DW 0 ;; Size of xlat table - null table
1543 CP850_TI_UP_END: ;; length of state section
1546 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1547 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1549 ;; STATE: Circumflex Lower
1550 ;; KEYBOARD TYPES: XT, , G, P12,
1551 ;; TABLE TYPE: Translate
1552 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1554 DW CP850_CI_LO_END-$ ;; length of state section
1555 DB CIRCUMFLEX_LOWER ;; State ID
1556 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1557 DB 94,0 ;; error character = standalone accent
1559 DW CP850_CI_LO_T1_END-$ ;; Size of xlat table
1560 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1561 DB 2 ;; number of scans
1562 DB 23,08CH ;; i circumflex
1563 DB 22,096H ;; u circumflex
1564 CP850_CI_LO_T1_END: ;;
1566 DW 0 ;; Size of xlat table - null table
1568 CP850_CI_LO_END: ;; length of state section
1570 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1571 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1573 ;; STATE: Circumflex Upper
1574 ;; KEYBOARD TYPES: XT, , G, P12,
1575 ;; TABLE TYPE: Translate
1576 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1578 DW CP850_CI_UP_END-$ ;; length of state section
1579 DB CIRCUMFLEX_UPPER ;; State ID
1580 DW XT_KB+G_KB+P12_KB ;; Keyboard Type
1581 DB 94,0 ;; error character = standalone accent
1583 DW CP850_CI_UP_T1_END-$ ;; Size of xlat table
1584 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1585 DB 5 ;; number of scans
1586 DB 30,0B6H ;; A circumflex
1587 DB 18,0D2H ;; E circumflex
1588 DB 23,0D7H ;; I circumflex
1589 DB 24,0E2H ;; O circumflex
1590 DB 22,0EAH ;; U circumflex
1591 CP850_CI_UP_T1_END: ;;
1593 DW 0 ;; Size of xlat table - null table
1595 CP850_CI_UP_END: ;; length of state section
1597 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1598 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1603 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;