2 TITLE DOS
- Keyboard Definition
File
4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5 ;; DOS - - NLS Support - Keyboard Defintion File
6 ;; (c) Copyright 1988 Microsoft
8 ;; This file contains the keyboard tables for Swiss German
10 ;; Linkage Instructions:
13 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
15 INCLUDE KEYBSHAR
.INC ;;
16 INCLUDE POSTEQU
.INC ;;
17 INCLUDE KEYBMAC
.INC ;;
23 CODE SEGMENT PUBLIC 'CODE' ;;
24 ASSUME
CS:CODE,DS:CODE ;;
26 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
27 ;; Standard translate table options are a liner search table
28 ;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
29 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
31 STANDARD_TABLE EQU TYPE_2_TAB
+ASCII_ONLY
33 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
34 ;;***************************************
36 ;;***************************************
37 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
42 DW LOGIC_END
-$ ;; length
44 DW 0 ;; special features
46 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
48 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
49 ;; OPTIONS: If we find a scan match in
50 ;; an XLATT or SET_FLAG operation then
52 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54 OPTION EXIT_IF_FOUND
;;
57 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
58 ;; Dead key definitions must come before
59 ;; dead key translations to handle
60 ;; dead key + dead key.
61 ;; ***BD - THIS SECTION HAS BEEN UPDATED
62 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
63 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
67 ANDF EITHER_CTL
,NOT ;;
69 SET_FLAG DEAD_UPPER
;;
71 SET_FLAG DEAD_LOWER
;;
74 IFF EITHER_SHIFT
,NOT ;;
78 SET_FLAG DEAD_THIRD
;;
83 SET_FLAG DEAD_THIRD
;;
88 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
89 ;; ACUTE ACCENT TRANSLATIONS
90 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
99 IFF R_ALT_SHIFT
,NOT ;;
102 IFF EITHER_CTL
,NOT ;;
103 ANDF EITHER_ALT
,NOT ;;
120 PUT_ERROR_CHAR ACUTE_LOWER
;; If we get here then either the XLATT
121 BEEP
;; failed or we are ina bad shift state.
122 GOTO NON_DEAD
;; Either is invalid so BEEP and fall
123 ;; through to generate the second char.
124 ;; Note that the dead key flag will be
125 ;; reset before we get here.
127 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
128 ;; DIARESIS ACCENT TRANSLATIONS
129 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
138 IFF R_ALT_SHIFT
,NOT ;;
139 XLATT DIARESIS_SPACE
;; exist for 437 so beep for
141 IFF EITHER_CTL
,NOT ;;
142 ANDF EITHER_ALT
,NOT ;;
145 XLATT DIARESIS_LOWER
;;
147 XLATT DIARESIS_UPPER
;;
151 XLATT DIARESIS_UPPER
;;
153 XLATT DIARESIS_LOWER
;;
159 PUT_ERROR_CHAR DIARESIS_LOWER
;; standalone accent
160 BEEP
;; Invalid dead key combo.
163 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
164 ;; GRAVE ACCENT TRANSLATIONS
165 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
174 IFF R_ALT_SHIFT
,NOT ;;
177 IFF EITHER_CTL
,NOT ;;
178 ANDF EITHER_ALT
,NOT ;;
186 IFF CAPS_STATE
,NOT ;;
195 PUT_ERROR_CHAR GRAVE_LOWER
;; standalone accent
196 BEEP
;; Invalid dead key combo.
199 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
200 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
201 ;; TILDE ACCENT TRANSLATIONS
202 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
206 GOTO CIRCUMFLEX_PROC
;;
210 IFF R_ALT_SHIFT
,NOT ;;
213 IFF EITHER_CTL
,NOT ;;
214 ANDF EITHER_ALT
,NOT ;;
231 PUT_ERROR_CHAR TILDE_LOWER
;; standalone accent
232 BEEP
;; Invalid dead key combo.
235 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
236 ;; CIRCUMFLEX ACCENT TRANSLATIONS
237 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
241 IFF CIRCUMFLEX
,NOT ;;
246 IFF R_ALT_SHIFT
,NOT ;;
247 XLATT CIRCUMFLEX_SPACE
;;
249 IFF EITHER_CTL
,NOT ;;
250 ANDF EITHER_ALT
,NOT ;;
253 XLATT CIRCUMFLEX_LOWER
;;
255 XLATT CIRCUMFLEX_UPPER
;;
258 IFF CAPS_STATE
,NOT ;;
259 XLATT CIRCUMFLEX_LOWER
;;
261 XLATT CIRCUMFLEX_UPPER
;;
266 INVALID_CIRCUMFLEX: ;;
267 PUT_ERROR_CHAR CIRCUMFLEX_LOWER
;; standalone accent
268 BEEP
;; Invalid dead key combo.
271 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
272 ;; Upper, lower and third shifts
273 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
277 IFKBD G_KB
+P12_KB
;; Avoid accidentally translating
278 ANDF LC_E0
;; the "/" on the numeric pad of the
279 EXIT_STATE_LOGIC
;; G keyboard
282 IFF EITHER_ALT
,NOT ;; Lower and upper case. Alphabetic
283 ANDF EITHER_CTL
,NOT ;; keys are affected by CAPS LOCK.
284 IFF EITHER_SHIFT
;; Numeric keys are not.
286 XLATT BOTLH_F_CAPS
;;
291 XLATT NON_ALPHA_UPPER
;;
299 XLATT NON_ALPHA_LOWER
;;
302 IFF EITHER_SHIFT
,NOT ;;
309 IFF EITHER_CTL
,NOT ;;
323 IFF R_ALT_SHIFT
,NOT ;;
330 ;IFF EITHER_SHIFT,NOT ;;
332 IFF EITHER_CTL
,NOT ;;
333 IFF ALT_SHIFT
;; ALT - case
342 IFF EITHER_CTL
,NOT ;;
343 IFF ALT_SHIFT
;; ALT - case
344 ANDF R_ALT_SHIFT
,NOT ;;
357 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
358 ;;***************************************
359 ;; SG Common Translate Section
360 ;; This section contains translations for the lower 128 characters
361 ;; only since these will never change from code page to code page.
362 ;; In addition the dead key "Set Flag" tables are here since the
363 ;; dead keys are on the same keytops for all code pages.
364 ;;***************************************
365 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
367 PUBLIC SG_COMMON_XLAT
;;
370 DW COMMON_XLAT_END
-$ ;; length of section
374 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376 ;; STATE: Lower Shift Dead Key
377 ;; KEYBOARD TYPES: All
378 ;; TABLE TYPE: Flag Table
379 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
381 DW COM_SG_LO_END
-$ ;; length of state section
382 DB DEAD_LOWER
;; State ID
383 DW ANY_KB
;; Keyboard Type
384 DB -1,-1 ;; Buffer entry for error character
386 DW 2 ;; number of entries
388 FLAG CIRCUMFLEX
;; flag bit to set
390 FLAG DIARESIS
;; flag bit to set
395 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
397 ;; STATE: Upper Shift Dead Key
398 ;; KEYBOARD TYPES: All
399 ;; TABLE TYPE: Flag Table
400 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
402 DW COM_SG_UP_END
-$ ;; length of state section
403 DB DEAD_UPPER
;; State ID
404 DW ANY_KB
;; Keyboard Type
405 DB -1,-1 ;; Buffer entry for error character
407 DW 1 ;; number of entries
409 FLAG GRAVE
;; flag bit to set
412 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
414 ;; STATE: Third Shift Dead Key
415 ;; KEYBOARD TYPES: All
416 ;; TABLE TYPE: Flag Table
417 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
419 DW COM_DK_TH_END
-$ ;; length of state section
420 DB DEAD_THIRD
;; State ID
421 DW ANY_KB
;; Keyboard Type
422 DB -1,-1 ;; Buffer entry for error character
424 DW 2 ;; number of entries
426 FLAG TILDE
;; flag bit to set
428 FLAG ACUTE
;; flag bit to set
431 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
434 ;; KEYBOARD TYPES: All
435 ;; TABLE TYPE: Translate
436 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
438 DW COM_ALT_K1_END
-$ ;; length of state section
439 DB ALT_CASE
;; State ID
440 DW ANY_KB
;; Keyboard Type
441 DB -1,-1 ;; Buffer entry for error character
443 DW COM_ALT_K1_T1_END
-$ ;; Size of xlat table
445 DB 2 ;; 5 Number of entries
451 COM_ALT_K1_T1_END: ;;
457 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
460 ;; KEYBOARD TYPES: All
461 ;; TABLE TYPE: Translate
462 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
464 DW COM_CTRL_K1_END
-$ ;; length of state section
465 DB CTRL_CASE
;; State ID
466 DW ANY_KB
;; Keyboard Type
467 DB -1,-1 ;; Buffer entry for error character
469 DW COM_CTRL_K1_T1_END
-$ ;; Size of xlat table
471 DB 6 ;; Number of entries
478 COM_CTRL_K1_T1_END: ;;
484 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
486 ;; STATE: Alpha Lower Case
487 ;; KEYBOARD TYPES: All
488 ;; TABLE TYPE: Translate
489 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
491 DW COM_AL_LO_END
-$ ;; length of state section
492 DB ALPHA_LOWER
;; State ID
493 DW ANY_KB
;; Keyboard Type
494 DB -1,-1 ;; Buffer entry for error character
496 DW COM_AL_LO_T1_END
-$ ;; Size of xlat table
497 DB STANDARD_TABLE
;; xlat options:
498 DB 2 ;; number of entries
504 DW 0 ;; Size of xlat table - null table
508 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
510 ;; STATE: Alpha Upper Case
511 ;; KEYBOARD TYPES: All
512 ;; TABLE TYPE: Translate
513 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
515 DW COM_AL_UP_END
-$ ;; length of state section
516 DB ALPHA_UPPER
;; State ID
517 DW ANY_KB
;; Keyboard Type
518 DB -1,-1 ;; Buffer entry for error character
520 DW COM_AL_UP_T1_END
-$ ;; Size of xlat table
521 DB STANDARD_TABLE
;; xlat options:
522 DB 2 ;; number of entries
527 DW 0 ;; Size of xlat table - null table
532 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
534 ;; STATE: Non-Alpha Lower Case
535 ;; KEYBOARD TYPES: G_KB+P12
536 ;; TABLE TYPE: Translate
537 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
539 DW COM_NA_LO_K1_END
-$ ;; length of state section
540 DB NON_ALPHA_LOWER
;; State ID
541 DW G_KB
+P12_KB
;; Keyboard Type
542 DB -1,-1 ;; Buffer entry for error character
544 DW COM_NA_LO_K1_T1_END
-$ ;; Size of xlat table
545 DB STANDARD_TABLE
;; xlat options:
546 DB 7 ;; number of entries
548 DB 39,'\94' ;; diaresis - o
549 DB 26,'\81' ;; diaresis - u
550 DB 40,'\84' ;; diaresis - a
554 COM_NA_LO_K1_T1_END: ;;
556 DW 0 ;; Size of xlat table - null table
560 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
562 ;; STATE: Non-Alpha Lower Case
563 ;; KEYBOARD TYPES: AT_KB
564 ;; TABLE TYPE: Translate
565 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
567 DW COM_NA_LO_K2_END
-$ ;; length of state section
568 DB NON_ALPHA_LOWER
;; State ID
569 DW AT_KB
;; Keyboard Type
570 DB -1,-1 ;; Buffer entry for error character
572 DW COM_NA_LO_K2_T1_END
-$ ;; Size of xlat table
573 DB STANDARD_TABLE
;; xlat options:
574 DB 7 ;; number of entries
576 DB 39,'\94' ;; diaresis - o
577 DB 26,'\81' ;; diaresis - u
578 DB 40,'\84' ;; diaresis - a
582 COM_NA_LO_K2_T1_END: ;;
584 DW 0 ;; Size of xlat table - null table
588 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
590 ;; STATE: Non-Alpha Lower Case
591 ;; KEYBOARD TYPES: XT_KB+
592 ;; TABLE TYPE: Translate
593 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
595 DW COM_NA_LO_K3_END
-$ ;; length of state section
596 DB NON_ALPHA_LOWER
;; State ID
597 DW XT_KB
;; Keyboard Type
598 DB -1,-1 ;; Buffer entry for error character
600 DW COM_NA_LO_K3_T1_END
-$ ;; Size of xlat table
601 DB STANDARD_TABLE
;; xlat options:
602 DB 7 ;; number of entries
604 DB 39,'\94' ;; diaresis - o
605 DB 26,'\81' ;; diaresis - u
606 DB 40,'\84' ;; diaresis - a
610 COM_NA_LO_K3_T1_END: ;;
612 DW 0 ;; Size of xlat table - null table
616 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
618 ;; STATE: Non-Alpha Upper Case
619 ;; KEYBOARD TYPES: G_KB+P12
620 ;; TABLE TYPE: Translate
621 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
623 DW COM_NA_UP_K1_END
-$ ;; length of state section
624 DB NON_ALPHA_UPPER
;; State ID
625 DW G_KB
+P12_KB
;; Keyboard Type
626 DB -1,-1 ;; Buffer entry for error character
628 DW COM_NA_UP_T1_K1_END
-$ ;; Size of xlat table
629 DB STANDARD_TABLE
;; xlat options:
630 DB 20 ;; number of entries
631 DB 41,0F8H ;; degree symbol
648 DB 39,'\82' ;; acute e
649 DB 26,'\8a' ;; grave e
650 DB 40,'\85' ;; grave a
651 COM_NA_UP_T1_K1_END: ;;
653 DW 0 ;; Size of xlat table - null table
658 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
659 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
661 ;; STATE: Non-Alpha Upper Case
662 ;; KEYBOARD TYPES: AT
663 ;; TABLE TYPE: Translate
664 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
666 DW COM_NA_UP_K2_END
-$ ;; length of state section
667 DB NON_ALPHA_UPPER
;; State ID
668 DW AT_KB
;; Keyboard Type
669 DB -1,-1 ;; Buffer entry for error character
671 DW COM_NA_UP_T1_K2_END
-$ ;; Size of xlat table
672 DB STANDARD_TABLE
;; xlat options:
673 DB 19 ;; number of entries
674 DB 41,'>' ;; degree symbol
690 DB 39,'\82' ;; acute e
691 DB 26,'\8a' ;; grave e
692 DB 40,'\85' ;; grave a
693 COM_NA_UP_T1_K2_END: ;;
695 DW 0 ;; Size of xlat table - null table
700 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
701 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
703 ;; STATE: Non-Alpha Upper Case
704 ;; KEYBOARD TYPES: XT+
705 ;; TABLE TYPE: Translate
706 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
708 DW COM_NA_UP_K3_END
-$ ;; length of state section
709 DB NON_ALPHA_UPPER
;; State ID
710 DW XT_KB
;; Keyboard Type
711 DB -1,-1 ;; Buffer entry for error character
713 DW COM_NA_UP_T1_K3_END
-$ ;; Size of xlat table
714 DB STANDARD_TABLE
;; xlat options:
715 DB 19 ;; number of entries
716 DB 43,'>' ;; degree symbol
732 DB 39,'\82' ;; acute e - Shift stae for SWISS GR
733 DB 26,'\8a' ;; grave e
734 DB 40,'\85' ;; grave a
735 COM_NA_UP_T1_K3_END: ;;
737 DW 0 ;; Size of xlat table - null table
741 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
743 ;; STATE: Third Shift
744 ;; KEYBOARD TYPES: G_KB+P12
745 ;; TABLE TYPE: Translate
746 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
748 DW COM_THIRD_K1_END
-$ ;; length of state section
749 DB THIRD_SHIFT
;; State ID
750 DW G_KB
+P12_KB
;; Keyboard Type
751 DB -1,-1 ;; Buffer entry for error character
753 DW COM_THIRD_T1_K1_END
-$ ;; Size of xlat table
754 DB STANDARD_TABLE
;; xlat options:
755 DB 8 ;; number of entries
764 COM_THIRD_T1_K1_END: ;;
766 DW 0 ;; Last xlat table
770 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
771 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
773 ;; STATE: Third Shift
774 ;; KEYBOARD TYPES: AT
775 ;; TABLE TYPE: Translate
776 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
778 DW COM_THIRD_K2_END-$ ;; length of state section
779 DB THIRD_SHIFT ;; State ID
780 DW AT_KB ;; Keyboard Type
781 DB -1,-1 ;; Buffer entry for error character
783 DW COM_THIRD_T1_K2_END-$ ;; Size of xlat table
784 DB STANDARD_TABLE ;; xlat options:
785 DB 9 ;; number of entries
788 DB 5,0F8H ;; degree symbol
789 DB 8,07CH ;; broken vertical - |
795 COM_THIRD_T1_K2_END: ;;
797 DW 0 ;; Last xlat table
801 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
802 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
804 ;; STATE: Third Shift
805 ;; KEYBOARD TYPES: XT+
806 ;; TABLE TYPE: Translate
807 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
809 DW COM_THIRD_K3_END
-$ ;; length of state section
810 DB THIRD_SHIFT
;; State ID
811 DW XT_KB
;; Keyboard Type
812 DB -1,-1 ;; Buffer entry for error character
814 DW COM_THIRD_T1_K3_END
-$ ;; Size of xlat table
815 DB STANDARD_TABLE
;; xlat options:
816 DB 9 ;; number of entries
819 DB 5,0F8H ;; degree symbol
820 DB 6,0E8H ;; è symbol
826 COM_THIRD_T1_K3_END: ;;
828 DW 0 ;; Last xlat table
832 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
834 ;; STATE: Grave Lower
835 ;; KEYBOARD TYPES: All
836 ;; TABLE TYPE: Translate
837 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
839 DW COM_GR_LO_END-$ ;; length of state section
840 DB GRAVE_LOWER ;; State ID
841 DW ANY_KB ;; Keyboard Type
842 DB 96,0 ;; error character = standalone accent
844 DW COM_GR_LO_T1_END-$ ;; Size of xlat table
845 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
846 DB 5 ;; number of scans
847 DB 18,08AH ;; scan code,ASCII - e
848 DB 22,'\97' ;; scan code,ASCII - u
849 DB 23,'\8d' ;; scan code,ASCII - i
850 DB 24,'\95' ;; scan code,ASCII - o
851 DB 30,'\85' ;; scan code,ASCII - a
854 DW 0 ;; Size of xlat table - null table
856 COM_GR_LO_END: ;; length of state section
858 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
860 ;; STATE: Grave Space Bar
861 ;; KEYBOARD TYPES: All
862 ;; TABLE TYPE: Translate
863 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
865 DW COM_GR_SP_END-$ ;; length of state section
866 DB GRAVE_SPACE ;; State ID
867 DW ANY_KB ;; Keyboard Type
868 DB 96,0 ;; error character = standalone accent
870 DW COM_GR_SP_T1_END-$ ;; Size of xlat table
871 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
872 DB 1 ;; number of scans
873 DB 57,96 ;; STANDALONE GRAVE
876 DW 0 ;; Size of xlat table - null table
878 COM_GR_SP_END: ;; length of state section
880 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
882 ;; STATE: Circumflex Lower
883 ;; KEYBOARD TYPES: All
884 ;; TABLE TYPE: Translate
885 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
887 DW COM_CI_LO_END-$ ;; length of state section
888 DB CIRCUMFLEX_LOWER ;; State ID
889 DW ANY_KB ;; Keyboard Type
890 DB 94,0 ;; error character = standalone accent
892 DW COM_CI_LO_T1_END-$ ;; Size of xlat table
893 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
894 DB 5 ;; number of scans
895 DB 18,'\88' ;; scan code,ASCII - e
896 DB 22,'\96' ;; scan code,ASCII - u
897 DB 23,'\8c' ;; scan code,ASCII - i
898 DB 24,'\93' ;; scan code,ASCII - o
899 DB 30,'\83' ;; scan code,ASCII - a
906 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
907 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
909 ;; STATE: Circumflex Space Bar
910 ;; KEYBOARD TYPES: All
911 ;; TABLE TYPE: Translate
912 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
914 DW COM_CI_SP_END-$ ;; length of state section
915 DB CIRCUMFLEX_SPACE ;; State ID
916 DW ANY_KB ;; Keyboard Type
917 DB 94,0 ;; error character = standalone accent
919 DW COM_CI_SP_T1_END-$ ;; Size of xlat table
920 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
921 DB 1 ;; number of scans
922 DB 57,94 ;; STANDALONE CIRCUMFLEX
925 DW 0 ;; Size of xlat table - null table
927 COM_CI_SP_END: ;; length of state section
929 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
931 ;; STATE: Tilde Lower
932 ;; KEYBOARD TYPES: All
933 ;; TABLE TYPE: Translate
934 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
936 DW COM_TI_LO_END-$ ;; length of state section
937 DB TILDE_LOWER ;; State ID
938 DW ANY_KB ;; Keyboard Type
939 DB 07EH,0 ;; error character = standalone accent
941 DW COM_TI_LO_T1_END-$ ;; Size of xlat table
942 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
943 DB 1 ;; number of scans
944 DB 49,0A4H ;; scan code,ASCII - ¤
951 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
952 ;;; CODE PAGE: Common
953 ;;; STATE: Tilde Upper Case
954 ;;; KEYBOARD TYPES: All
955 ;;; TABLE TYPE: Translate
956 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
958 DW COM_TI_UP_END-$ ;; length of state section
959 DB TILDE_UPPER ;; State ID
960 DW ANY_KB ;; Keyboard Type
961 DB 07EH,0 ;; error character = standalone accent
963 DW COM_TI_UP_T1_END-$ ;; Size of xlat table
964 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
965 DB 1 ;; number of scans
966 DB 49,0A5H ;; scan code,ASCII - ¥
969 DW 0 ;; Size of xlat table - null table
971 COM_TI_UP_END: ;; length of state section
974 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
976 ;; STATE: Tilde Space Bar
977 ;; KEYBOARD TYPES: All
978 ;; TABLE TYPE: Translate
979 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
981 DW COM_TI_SP_END-$ ;; length of state section
982 DB TILDE_SPACE ;; State ID
983 DW ANY_KB ;; Keyboard Type
984 DB 07EH,0 ;; error character = standalone accent
986 DW COM_TI_SP_T1_END-$ ;; Size of xlat table
987 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
988 DB 1 ;; number of scans
989 DB 57,07EH ;; STANDALONE TILDE
992 DW 0 ;; Size of xlat table - null table
994 COM_TI_SP_END: ;; length of state section
996 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1002 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1003 ;;***************************************
1004 ;; SG Specific Translate Section for 437
1005 ;;***************************************
1006 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1008 PUBLIC SG_437_XLAT ;;
1011 DW CP437_XLAT_END-$ ;; length of section
1014 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1016 ;; STATE: Non-Alpha Lower Case
1017 ;; KEYBOARD TYPES: G_KB+P12_KB
1018 ;; TABLE TYPE: Translate
1019 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1021 DW CP437_NA_LO_END-$ ;; length of state section
1022 DB NON_ALPHA_LOWER ;; State ID
1023 DW G_KB+P12_KB ;; Keyboard Type
1024 DB -1,-1 ;; Buffer entry for error character
1026 DW CP437_NA_LO_T1_END-$ ;; Size of xlat table
1027 DB STANDARD_TABLE ;; xlat options:
1028 DB 1 ;; number of entries
1029 DB 41,015H ;; Section Symbol
1030 CP437_NA_LO_T1_END: ;;
1032 DW 0 ;; Size of xlat table - null table
1037 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1039 ;; STATE: Third Shift
1040 ;; KEYBOARD TYPES: G_KB+P12_KB
1041 ;; TABLE TYPE: Translate
1042 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1044 DW CP437_THIRD_K1_END-$ ;; length of state section
1045 DB THIRD_SHIFT ;; State ID
1046 DW G_KB+P12_KB ;; Keyboard Type
1047 DB -1,-1 ;; Buffer entry for error character
1049 DW CP437_THIRD_T1_K1_END-$ ;; Size of xlat table
1050 DB STANDARD_TABLE ;; xlat options:
1051 DB 3 ;; number of entries
1052 DB 2,0B3H ;; Solid vertical
1053 DB 8,07CH ;; Broken vertical
1054 DB 9,09BH ;; \9b cent sign
1055 CP437_THIRD_T1_K1_END: ;;
1057 DW 0 ;; Size of xlat table - null table
1059 CP437_THIRD_K1_END: ;;
1062 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1064 ;; STATE: Third Shift
1065 ;; KEYBOARD TYPES: AT+XT+
1066 ;; TABLE TYPE: Translate
1067 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1069 DW CP437_THIRD_K2_END-$ ;; length of state section
1070 DB THIRD_SHIFT ;; State ID
1071 DW AT_KB+XT_KB ;; Keyboard Type
1072 DB -1,-1 ;; Buffer entry for error character
1074 DW CP437_THIRD_T1_K2_END-$ ;; Size of xlat table
1075 DB STANDARD_TABLE ;; xlat options:
1076 DB 2 ;; number of entries
1077 DB 8,07CH ;; Broken vertical
1078 DB 6,015H ;; Section Symbol
1079 CP437_THIRD_T1_K2_END: ;;
1081 DW 0 ;; Size of xlat table - null table
1083 CP437_THIRD_K2_END: ;;
1086 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1088 ;; STATE: Acute Lower Case
1089 ;; KEYBOARD TYPES: All
1090 ;; TABLE TYPE: Translate
1091 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1093 DW CP437_AC_LO_END-$ ;; length of state section
1094 DB ACUTE_LOWER ;; State ID
1095 DW ANY_KB ;; Keyboard Type
1096 DB 39,0 ;; error character = standalone accent
1098 DW CP437_AC_LO_T1_END-$ ;; Size of xlat table
1099 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1100 DB 5 ;; number of scans
1101 DB 18,'\82' ;; scan code,ASCII - e
1102 DB 22,'£
' ;; scan code,ASCII - u
1103 DB 23,'¡
' ;; scan code,ASCII - i
1104 DB 24,'¢
' ;; scan code,ASCII - o
1105 DB 30,' ' ;; scan code,ASCII - a
1106 CP437_AC_LO_T1_END: ;;
1108 DW 0 ;; Size of xlat table - null table
1112 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1114 ;; STATE: Acute Upper Case
1115 ;; KEYBOARD TYPES: All
1116 ;; TABLE TYPE: Translate
1117 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1119 DW CP437_AC_UP_END-$ ;; length of state section
1120 DB ACUTE_UPPER ;; State ID
1121 DW ANY_KB ;; Keyboard Type
1122 DB 39,0 ;; error character = standalone accent
1124 DW CP437_AC_UP_T1_END-$ ;; Size of xlat table
1125 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1126 DB 1 ;; number of entries
1127 DB 18,'\90' ;; scan code,ASCII - \90
1128 CP437_AC_UP_T1_END: ;;
1130 DW 0 ;; Size of xlat table - null table
1134 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1136 ;; STATE: Diaresis Lower Case
1137 ;; KEYBOARD TYPES: All
1138 ;; TABLE TYPE: Translate
1139 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1141 DW CP437_DI_LO_END-$ ;; length of state section
1142 DB DIARESIS_LOWER ;; State ID
1143 DW ANY_KB ;; Keyboard Type
1144 DB 34,0 ;; error character = standalone accent
1146 DW CP437_DI_LO_T1_END-$ ;; Size of xlat table
1147 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1148 DB 6 ;; number of scans
1149 DB 18,'\89' ;; scan code,ASCII - e
1150 DB 44,'\98' ;; scan code,ASCII - y
1151 DB 22,'\81' ;; scan code,ASCII - u
1152 DB 23,'\8b' ;; scan code,ASCII - i
1153 DB 24,'\94' ;; scan code,ASCII - o
1154 DB 30,'\84' ;; scan code,ASCII - a
1155 CP437_DI_LO_T1_END: ;;
1157 DW 0 ;; Size of xlat table - null table
1159 CP437_DI_LO_END: ;; length of state section
1161 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1163 ;; STATE: Diaresis Upper Case
1164 ;; KEYBOARD TYPES: All
1165 ;; TABLE TYPE: Translate
1166 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1168 DW CP437_DI_UP_END-$ ;; length of state section
1169 DB DIARESIS_UPPER ;; State ID
1170 DW ANY_KB ;; Keyboard Type
1171 DB 34,0 ;; error character = standalone accent
1173 DW CP437_DI_UP_T1_END-$ ;; Size of xlat table
1174 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1175 DB 3 ;; number of scans
1176 DB 22,'\9a' ;; scan code,ASCII - U
1177 DB 24,'\99' ;; scan code,ASCII - O
1178 DB 30,'\8e' ;; scan code,ASCII - A
1179 CP437_DI_UP_T1_END: ;;
1181 DW 0 ;; Size of xlat table - null table
1183 CP437_DI_UP_END: ;; length of state section
1185 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1188 ;; KEYBOARD TYPES: All
1189 ;; TABLE TYPE: Translate
1190 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1192 DW CP437_BOTLH_K1_END-$ ;; length of state section
1193 DB BOTLH_CAPS ;; State ID
1194 DW ANY_KB ;; Keyboard Type
1195 DB -1,-1 ;; Buffer entry for error character
1197 DW CP437_BOTLH_K1_T1_END-$ ;; Size of xlat table
1198 DB STANDARD_TABLE ;; xlat options:
1199 DB 3 ;; number of entries
1200 DB 39,099H ;; CAP O Umlaut
1201 DB 26,09AH ;; CAP U Umlaut
1202 DB 40,08EH ;; CAP A Umlaut
1203 CP437_BOTLH_K1_T1_END: ;;
1205 DW 0 ;; Last xlat table
1206 CP437_BOTLH_K1_END: ;;
1209 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1211 ;; STATE: CapsLock + Shift
1212 ;; KEYBOARD TYPES: All
1213 ;; TABLE TYPE: Translate
1214 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1216 DW CP437_BOTLH_T1_END-$ ;; length of state section
1217 DB BOTLH_F_CAPS ;; State ID
1218 DW ANY_KB ;; Keyboard Type
1219 DB -1,-1 ;; Buffer entry for error character
1221 DW CP437_BOTLH_T1_K2_END-$ ;; Size of xlat table
1222 DB STANDARD_TABLE ;; xlat options:
1223 DB 3 ;; number of entries
1224 DB 39,082H ;; e Acute
1225 DB 26,08AH ;; e Grave
1226 DB 40,085H ;; a Grave
1227 CP437_BOTLH_T1_K2_END: ;;
1229 DW 0 ;; Last xlat table
1230 CP437_BOTLH_T1_END: ;;
1232 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1238 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1239 ;;***************************************
1240 ;; SG Specific Translate Section for 850
1241 ;;***************************************
1242 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1244 PUBLIC SG_850_XLAT ;;
1247 DW CP850_XLAT_END-$ ;; length of section
1251 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1254 ;; KEYBOARD TYPES: All
1255 ;; TABLE TYPE: Translate
1256 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1258 DW CP850_BOTLH_END-$ ;; length of state section
1259 DB BOTLH_CAPS ;; State ID
1260 DW ANY_KB ;; Keyboard Type
1261 DB -1,-1 ;; Buffer entry for error character
1263 DW CP850_BOTLH_T1_END-$ ;; Size of xlat table
1264 DB STANDARD_TABLE ;; xlat options:
1265 DB 3 ;; number of entries
1266 DB 26,09AH ;; CAP U Umlaut
1267 DB 39,099H ;; CAP O Umlaut
1268 DB 40,08EH ;; CAP A Umlaut
1269 CP850_BOTLH_T1_END: ;;
1271 DW 0 ;; Last xlat table
1274 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1276 ;; STATE: CapsLock + Shift
1277 ;; KEYBOARD TYPES: All
1278 ;; TABLE TYPE: Translate
1279 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1281 DW CP850_BOTLH_K1_END-$ ;; length of state section
1282 DB BOTLH_F_CAPS ;; State ID
1283 DW ANY_KB ;; Keyboard Type
1284 DB -1,-1 ;; Buffer entry for error character
1286 DW CP850_BOTLH_T1_K1_END-$ ;; Size of xlat table
1287 DB STANDARD_TABLE ;; xlat options:
1288 DB 3 ;; number of entries
1289 DB 26,0D4H ;; CAP E Grave
1290 DB 39,090H ;; CAP E Acute
1291 DB 40,0B7H ;; CAP A Grave
1292 CP850_BOTLH_T1_K1_END: ;;
1294 DW 0 ;; Last xlat table
1295 CP850_BOTLH_K1_END: ;;
1297 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1299 ;; STATE: Non-Alpha Lower Case
1300 ;; KEYBOARD TYPES: G_KB+P12
1301 ;; TABLE TYPE: Translate
1302 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1304 DW CP850_NA_LO_END-$ ;; length of state section
1305 DB NON_ALPHA_LOWER ;; State ID
1306 DW G_KB+P12_KB ;; Keyboard Type
1307 DB -1,-1 ;; Buffer entry for error character
1309 DW CP850_NA_LO_T1_END-$ ;; Size of xlat table
1310 DB STANDARD_TABLE ;; xlat options:
1311 DB 1 ;; number of entries
1312 DB 41,0F5H ;; Section Symbol
1313 CP850_NA_LO_T1_END: ;;
1315 DW 0 ;; Size of xlat table - null table
1320 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1322 ;; STATE: Third Shift
1323 ;; KEYBOARD TYPES: G_KB+P12_KB
1324 ;; TABLE TYPE: Translate
1325 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1327 DW CP850_THIRD_K1_END-$ ;; length of state section
1328 DB THIRD_SHIFT ;; State ID
1329 DW G_KB+P12_KB ;; Keyboard Type
1330 DB -1,-1 ;; Buffer entry for error character
1332 DW CP850_THIRD_T1_K1_END-$ ;; Size of xlat table
1333 DB STANDARD_TABLE ;; xlat options:
1334 DB 3 ;; number of entries
1335 DB 2,07CH ;; Solid vertical
1336 DB 8,0DDH ;; Broken vertical
1337 DB 9,0BDH ;; \9b cent sign
1338 CP850_THIRD_T1_K1_END: ;;
1340 DW 0 ;; Size of xlat table - null table
1342 CP850_THIRD_K1_END: ;;
1345 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1346 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1348 ;; STATE: Third Shift
1349 ;; KEYBOARD TYPES: AT+XT
1350 ;; TABLE TYPE: Translate
1351 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1353 DW CP850_THIRD_K2_END-$ ;; length of state section
1354 DB THIRD_SHIFT ;; State ID
1355 DW AT_KB+XT_KB ;; Keyboard Type
1356 DB -1,-1 ;; Buffer entry for error character
1358 DW CP850_THIRD_T1_K2_END-$ ;; Size of xlat table
1359 DB STANDARD_TABLE ;; xlat options:
1360 DB 2 ;; number of entries
1361 DB 8,0DDH ;; Broken vertical
1362 DB 6,0F5H ;; Section Symbol
1363 CP850_THIRD_T1_K2_END: ;;
1365 DW 0 ;; Size of xlat table - null table
1367 CP850_THIRD_K2_END: ;;
1370 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1372 ;; STATE: Acute Lower Case
1373 ;; KEYBOARD TYPES: All
1374 ;; TABLE TYPE: Translate
1375 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1377 DW CP850_AC_LO_END-$ ;; length of state section
1378 DB ACUTE_LOWER ;; State ID
1379 DW ANY_KB ;; Keyboard Type
1380 DB 239,0 ;; error character = standalone accent
1382 DW CP850_AC_LO_T1_END-$ ;; Size of xlat table
1383 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1384 DB 6 ;; number of scans
1385 DB 18,'\82' ;; scan code,ASCII - e
1386 DB 44,0ECH ;; y acute
1387 DB 22,'£
' ;; scan code,ASCII - u
1388 DB 23,'¡
' ;; scan code,ASCII - i
1389 DB 24,'¢
' ;; scan code,ASCII - o
1390 DB 30,' ' ;; scan code,ASCII - a
1391 CP850_AC_LO_T1_END: ;;
1393 DW 0 ;; Size of xlat table - null table
1397 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1399 ;; STATE: Acute Upper Case
1400 ;; KEYBOARD TYPES: All
1401 ;; TABLE TYPE: Translate
1402 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1404 DW CP850_AC_UP_END-$ ;; length of state section
1405 DB ACUTE_UPPER ;; State ID
1406 DW ANY_KB ;; Keyboard Type
1407 DB 239,0 ;; error character = standalone accent
1409 DW CP850_AC_UP_T1_END-$ ;; Size of xlat table
1410 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1411 DB 6 ;; number of entries
1412 DB 18,090H ;; E acute
1413 DB 44,0EDH ;; Y acute
1414 DB 22,0E9H ;; U acute
1415 DB 23,0D6H ;; I acute
1416 DB 24,0E0H ;; O acute
1417 DB 30,0B5H ;; A acute
1418 CP850_AC_UP_T1_END: ;;
1420 DW 0 ;; Size of xlat table - null table
1424 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1426 ;; STATE: Acute Space Bar
1427 ;; KEYBOARD TYPES: All
1428 ;; TABLE TYPE: Translate
1429 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1431 DW CP850_AC_SP_END-$ ;; length of state section
1432 DB ACUTE_SPACE ;; State ID
1433 DW ANY_KB ;; Keyboard Type
1434 DB 239,0 ;; error character = standalone accent
1436 DW CP850_AC_SP_T1_END-$ ;; Size of xlat table
1437 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1438 DB 1 ;; number of scans
1439 DB 57,239 ;; scan code,ASCII - SPACE
1440 CP850_AC_SP_T1_END: ;;
1442 DW 0 ;; Size of xlat table - null table
1446 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1448 ;; STATE: Diaresis Lower Case
1449 ;; KEYBOARD TYPES: All
1450 ;; TABLE TYPE: Translate
1451 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1453 DW CP850_DI_LO_END-$ ;; length of state section
1454 DB DIARESIS_LOWER ;; State ID
1455 DW ANY_KB ;; Keyboard Type
1456 DB 249,0 ;; error character = standalone accent
1458 DW CP850_DI_LO_T1_END-$ ;; Size of xlat table
1459 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1460 DB 6 ;; number of scans
1461 DB 18,'\89' ;; scan code,ASCII - e
1462 DB 44,'\98' ;; scan code,ASCII - y
1463 DB 22,'\81' ;; scan code,ASCII - u
1464 DB 23,'\8b' ;; scan code,ASCII - i
1465 DB 24,'\94' ;; scan code,ASCII - o
1466 DB 30,'\84' ;; scan code,ASCII - a
1467 CP850_DI_LO_T1_END: ;;
1469 DW 0 ;; Size of xlat table - null table
1471 CP850_DI_LO_END: ;; length of state section
1473 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1475 ;; STATE: Diaresis Upper Case
1476 ;; KEYBOARD TYPES: All
1477 ;; TABLE TYPE: Translate
1478 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1480 DW CP850_DI_UP_END-$ ;; length of state section
1481 DB DIARESIS_UPPER ;; State ID
1482 DW ANY_KB ;; Keyboard Type
1483 DB 249,0 ;; error character = standalone accent
1485 DW CP850_DI_UP_T1_END-$ ;; Size of xlat table
1486 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1487 DB 5 ;; number of scans
1488 DB 18,0D3H ;; E Diaeresis
1489 DB 22,'\9a' ;; U Diaeresis
1490 DB 23,0D8H ;; I Diaeresis
1491 DB 24,'\99' ;; O Diaeresis
1492 DB 30,'\8e' ;; A Diaeresis
1493 CP850_DI_UP_T1_END: ;;
1495 DW 0 ;; Size of xlat table - null table
1497 CP850_DI_UP_END: ;; length of state section
1500 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1502 ;; STATE: Diaresis Space Bar
1503 ;; KEYBOARD TYPES: All
1504 ;; TABLE TYPE: Translate
1505 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1507 DW CP850_DI_SP_END-$ ;; length of state section
1508 DB DIARESIS_SPACE ;; State ID
1509 DW ANY_KB ;; Keyboard Type
1510 DB 249,0 ;; error character = standalone accent
1512 DW CP850_DI_SP_T1_END-$ ;; Size of xlat table
1513 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1514 DB 1 ;; number of scans
1515 DB 57,249 ;; error character = standalone accent
1516 CP850_DI_SP_T1_END: ;;
1518 DW 0 ;; Size of xlat table - null table
1519 CP850_DI_SP_END: ;; length of state section
1521 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1523 ;; STATE: Grave Upper
1524 ;; KEYBOARD TYPES: All
1525 ;; TABLE TYPE: Translate
1526 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1528 DW CP850_GR_UP_END-$ ;; length of state section
1529 DB GRAVE_UPPER ;; State ID
1530 DW ANY_KB ;; Keyboard Type
1531 DB 96,0 ;; error character = standalone accent
1533 DW CP850_GR_UP_T1_END-$ ;; Size of xlat table
1534 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1535 DB 5 ;; number of scans
1536 DB 18,0D4H ;; E grave
1537 DB 22,0EBH ;; U grave
1538 DB 23,0DEH ;; I grave
1539 DB 24,0E3H ;; O grave
1540 DB 30,0B7H ;; A grave
1541 CP850_GR_UP_T1_END: ;;
1543 DW 0 ;; Size of xlat table - null table
1545 CP850_GR_UP_END: ;; length of state section
1547 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1549 ;; STATE: Tilde Lower
1550 ;; KEYBOARD TYPES: All
1551 ;; TABLE TYPE: Translate
1552 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1554 DW CP850_TI_LO_END-$ ;; length of state section
1555 DB TILDE_LOWER ;; State ID
1556 DW ANY_KB ;; Keyboard Type
1557 DB 07EH,0 ;; error character = standalone accent
1559 DW CP850_TI_LO_T1_END-$ ;; Size of xlat table
1560 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1561 DB 2 ;; number of scans
1562 DB 24,0E4H ;; scan code,ASCII - o tilde
1563 DB 30,0C6H ;; scan code,ASCII - a tilde
1564 CP850_TI_LO_T1_END: ;;
1570 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1572 ;;; STATE: Tilde Upper Case
1573 ;;; KEYBOARD TYPES: All
1574 ;;; TABLE TYPE: Translate
1575 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1577 DW CP850_TI_UP_END-$ ;; length of state section
1578 DB TILDE_UPPER ;; State ID
1579 DW ANY_KB ;; Keyboard Type
1580 DB 07EH,0 ;; error character = standalone accent
1582 DW CP850_TI_UP_T1_END-$ ;; Size of xlat table
1583 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1584 DB 2 ;; number of scans
1585 DB 24,0E5H ;; scan code,ASCII - O tilde
1586 DB 30,0C7H ;; scan code,ASCII - A tilde
1587 CP850_TI_UP_T1_END: ;;
1589 DW 0 ;; Size of xlat table - null table
1591 CP850_TI_UP_END: ;; length of state section
1594 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1596 ;; STATE: Circumflex Upper
1597 ;; KEYBOARD TYPES: All
1598 ;; TABLE TYPE: Translate
1599 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1601 DW CP850_CI_UP_END-$ ;; length of state section
1602 DB CIRCUMFLEX_UPPER ;; State ID
1603 DW ANY_KB ;; Keyboard Type
1604 DB 94,0 ;; error character = standalone accent
1606 DW CP850_CI_UP_T1_END-$ ;; Size of xlat table
1607 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1608 DB 5 ;; number of scans
1609 DB 18,0D2H ;; E circumflex
1610 DB 22,0EAH ;; U circumflex
1611 DB 23,0D7H ;; I circumflex
1612 DB 24,0E2H ;; O circumflex
1613 DB 30,0B6H ;; A circumflex
1614 CP850_CI_UP_T1_END: ;;
1616 DW 0 ;; Size of xlat table - null table
1618 CP850_CI_UP_END: ;; length of state section
1620 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1626 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;