|
|
;/* ; * Microsoft Confidential ; * Copyright (C) Microsoft Corporation 1988-1993. ; * All Rights Reserved. ; */
PAGE 118,132 TITLE MS-DOS - Keyboard Definition File
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; MS-DOS - NLS Support - Keyboard Definition File ;; ;; This file contains the keyboard tables for Dual mode Canadian, French ;; ;; Linkage Instructions: ;; Refer to KDFNOW.ASM. ;; Created by John Hicks 9-19-93 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; INCLUDE KEYBSHAR.INC ;; INCLUDE POSTEQU.INC ;; INCLUDE KEYBMAC.INC ;; ;; PUBLIC GK_LOGIC ;; PUBLIC GK_869_XLAT ;; PUBLIC GK_737_XLAT ;; ;; CODE SEGMENT PUBLIC 'CODE' ;; ASSUME CS:CODE,DS:CODE ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Standard translate table options are a linear search table ;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; STANDARD_TABLE EQU TYPE_2_TAB+ASCII_ONLY ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;*************************************** ;; ;; GK State Logic ;; ;;*************************************** ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; GK_LOGIC: ;; ;; DW LOGIC_END-$ ;; length ;; DW SHIFTS_TO_LOGIC+SWITCHABLE ;; special features ;; ;; COMMANDS START HERE ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; OPTIONS: If we find a scan match in ;; an XLATT or SET_FLAG operation then ;; exit from INT 9. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; OPTION EXIT_IF_FOUND ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Mode change CHECK ;; ;; MODE CHANGE BY <CTRL + Left SHIFT> and ;; <CTRL+Right SHIFT> PRESS ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; IFF SHIFTS_PRESSED ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT ;; IFF LEFT_SHIFT ;; Primary mode BEEP ;; RESET_NLS ;; ENDIFF ;; IFF RIGHT_SHIFT ;; BEEP ;; SET_FLAG RUS_MODE_SET ;; secondary mode ENDIFF ;; ENDIFF ;; EXIT_STATE_LOGIC ;; ENDIFF ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LATIN IFF RUS_MODE,NOT ;; Primary Mode dead keys IFF EITHER_ALT,NOT ;; ANDF EITHER_CTL,NOT ;; IFF LC_E0,NOT ;; IFF EITHER_SHIFT ;; SET_FLAG DEAD_UPPER ;; ELSEF ;; SET_FLAG DEAD_LOWER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; GREEK ELSEF ;; Secondary Mode Dead Keys IFF EITHER_ALT,NOT ;; ANDF EITHER_CTL,NOT ;; IFF LC_E0,NOT ;; IFF EITHER_SHIFT ;; SET_FLAG DEAD_UPPER_SEC ;; ELSEF ;; SET_FLAG DEAD_LOWER_SEC ;; ENDIFF ;; ENDIFF ;; ELSEF ;; IFF EITHER_SHIFT,NOT ;; IFKBD XT_KB+AT_KB ;; IFF EITHER_CTL ;; ANDF ALT_SHIFT ;; SET_FLAG DEAD_THIRD_SEC ;; ENDIFF ;; ELSEF ;; IFF R_ALT_SHIFT ;; ANDF EITHER_CTL,NOT ;; ANDF LC_E0,NOT ;; SET_FLAG DEAD_THIRD_SEC ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CIRCUMFLEX ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; IFF CIRCUMFLEX,NOT ;; GOTO DIARESIS_PROC ;; ENDIFF ;; ;; RESET_NLS ;; IFF R_ALT_SHIFT,NOT ;; XLATT CIRCUMFLEX_SPACE ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT CIRCUMFLEX_LOWER ;; ELSEF ;; XLATT CIRCUMFLEX_UPPER ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT CIRCUMFLEX_UPPER ;; ELSEF ;; XLATT CIRCUMFLEX_LOWER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ;; INVALID_CIRCUMFLEX: ;; PUT_ERROR_CHAR CIRCUMFLEX_SPACE ;; If we get here then either the XLATT BEEP ;; failed or we are ina bad shift state. GOTO NON_DEAD ;; Either is invalid so BEEP and fall ;; through to generate the second char. ;; Note that the dead key flag will be ;; reset before we get here. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DIARESIS ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DIARESIS_PROC: ;; ;; IFF DIARESIS,NOT ;; GOTO DIARESIS_SEC_PROC ;; ENDIFF ;; RESET_NLS ;; IFF R_ALT_SHIFT,NOT ;; XLATT DIARESIS_SPACE ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT DIARESIS_LOWER ;; ELSEF ;; XLATT DIARESIS_UPPER ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT DIARESIS_UPPER ;; ELSEF ;; XLATT DIARESIS_LOWER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; INVALID_DIARESIS: ;; PUT_ERROR_CHAR DIARESIS_LOWER ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DIARESIS ACCENT TRANSLATIONS SEC ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DIARESIS_SEC_PROC: ;; ;; IFF DIARESIS_SEC,NOT ;; GOTO GRAVE_PROC ;; ENDIFF ;; RESET_NLS1 ;; IFF R_ALT_SHIFT,NOT ;; XLATT DIARESIS_SPACE_SEC ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT DIARESIS_LOWER_SEC ; ELSEF ;; XLATT DIARESIS_UPPER_SEC ; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT DIARESIS_UPPER_SEC ; ELSEF ;; XLATT DIARESIS_LOWER_SEC ; ENDIFF ;; ENDIFF ;; ENDIFF ;; INVALID_DIARESIS_SEC: ;; PUT_ERROR_CHAR DIARESIS_LOWER_SEC ; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; GRAVE ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; GRAVE_PROC: ;; ;; IFF GRAVE,NOT ;; GOTO ACUTE_PROC ;; ENDIFF ;; ;; RESET_NLS ;; IFF R_ALT_SHIFT,NOT ;; XLATT GRAVE_SPACE ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT GRAVE_LOWER ;; ELSEF ;; XLATT GRAVE_UPPER ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE,NOT ;; XLATT GRAVE_LOWER ;; ELSEF ;; XLATT GRAVE_UPPER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ;; INVALID_GRAVE: ;; PUT_ERROR_CHAR GRAVE_LOWER ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE_PROC: ;; ;; IFF ACUTE,NOT ;; GOTO ACUTE_SEC_PROC ;; changed for bug 1502 ENDIFF ;; ;; RESET_NLS ;; IFF R_ALT_SHIFT,NOT ;; XLATT ACUTE_SPACE ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT ACUTE_LOWER ;; ELSEF ;; XLATT ACUTE_UPPER ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT ACUTE_UPPER ;; ELSEF ;; XLATT ACUTE_LOWER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; INVALID_ACUTE: ;; PUT_ERROR_CHAR ACUTE_LOWER ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE-DIARESIS ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE_SEC_PROC: ;; ;; IFF ACUTE_SEC,NOT ;; GOTO ACUTE_DIAR_PROC ;; ENDIFF ;; ;; RESET_NLS1 ;; IFF R_ALT_SHIFT,NOT ;; XLATT ACUTE_SPACE_SEC ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT ACUTE_LOWER_SEC ;; ELSEF ;; XLATT ACUTE_UPPER_SEC ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT ACUTE_UPPER_SEC ;; ELSEF ;; XLATT ACUTE_LOWER_SEC ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; INVALID_ACUTE_SEC: ;; PUT_ERROR_CHAR ACUTE_LOWER_SEC ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE-DIARESIS ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ACUTE_DIAR_PROC: ;; ;; IFF ACUTE_DIAR,NOT ;; GOTO TILDE_PROC ;; ENDIFF ;; ;; RESET_NLS1 ;; IFF R_ALT_SHIFT,NOT ;; XLATT ACDI_SPACE_SEC ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT ACDI_LOWER_SEC ;; ELSEF ;; XLATT ACDI_UPPER_SEC ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT ACDI_UPPER_SEC ;; ELSEF ;; XLATT ACDI_LOWER_SEC ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ;; INVALID_ACDI_DIAR: ;; PUT_ERROR_CHAR ACDI_LOWER_SEC ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; TILDE ACCENT TRANSLATIONS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; TILDE_PROC: ;; ;; IFF TILDE,NOT ;; GOTO NON_DEAD ;; ENDIFF ;; ;; RESET_NLS ;; TILDE_ON: ;; IFF R_ALT_SHIFT,NOT ;; XLATT TILDE_SPACE ;; ENDIFF ;; IFF EITHER_CTL,NOT ;; ANDF EITHER_ALT,NOT ;; IFF EITHER_SHIFT ;; IFF CAPS_STATE ;; XLATT TILDE_LOWER ;; ELSEF ;; XLATT TILDE_UPPER ;; ENDIFF ;; ELSEF ;; IFF CAPS_STATE ;; XLATT TILDE_UPPER ;; ELSEF ;; XLATT TILDE_LOWER ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ;; INVALID_TILDE: ;; PUT_ERROR_CHAR TILDE_LOWER ;; standalone accent BEEP ;; Invalid dead key combo. GOTO NON_DEAD ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NON_DEAD: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Upper, lower and third shifts ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; IFF EITHER_CTL,NOT ;; Lower and upper case. Alphabetic IFF EITHER_ALT,NOT ;; keys are affected by CAPS LOCK. IFF RUS_MODE,NOT ;; ANDF LC_E0,NOT ;; Enhanced keys are not IFF EITHER_SHIFT ;; Numeric keys are not. XLATT NON_ALPHA_UPPER ;; IFF CAPS_STATE ;; XLATT ALPHA_LOWER ;; ELSEF ;; XLATT ALPHA_UPPER ;; ENDIFF ;; ELSEF ;; XLATT NON_ALPHA_LOWER ;; IFF CAPS_STATE ;; XLATT ALPHA_UPPER ;; ELSEF ;; XLATT ALPHA_LOWER ;; ENDIFF ;; ENDIFF ;; Third and Fourth shifts ELSEF ;; IFF LC_E0, NOT ;; IFF EITHER_SHIFT ;; XLATT NON_ALPHA_UPPER_SEC ;; IFF CAPS_STATE ;; XLATT ALPHA_LOWER_SEC ;; ELSEF ;; XLATT ALPHA_UPPER_SEC ;; ENDIFF ;; ELSEF ;; XLATT NON_ALPHA_LOWER_SEC ;; IFF CAPS_STATE ;; XLATT ALPHA_UPPER_SEC ;; ELSEF ;; XLATT ALPHA_LOWER_SEC ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ENDIFF ;; ELSEF ;; ctl off, alt on at this point IFF R_ALT_SHIFT ;; ALTGr ANDF EITHER_SHIFT,NOT ;; XLATT THIRD_SHIFT ;; ENDIFF ;; ENDIFF ;; ELSEF IFF EITHER_ALT,NOT ;; XLATT CTRL_CASE ELSEF ;; IFKBD XT_KB+AT_KB ;; XT, AT, keyboards. IFF EITHER_SHIFT,NOT ;; only. XLATT THIRD_SHIFT ;; ALT + Ctrl ENDIFF ;; ENDIFF ;; ENDIFF ENDIFF ;; ;; ;**************************************;; ;; EXIT_STATE_LOGIC ;; ;; LOGIC_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;********************************************************************** ;; GK Common Translate Section ;; This section contains translations for the lower 128 characters ;; only since these will never change from code page to code page. ;; Some common Characters are included from 128 - 165 where appropriate. ;; In addition the dead key "Set Flag" tables are here since the ;; dead keys are on the same keytops for all code pages. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; PUBLIC GK_COMMON_XLAT ;; GK_COMMON_XLAT: ;; ;; DW COMMON_XLAT_END-$ ;; length of section DW -1 ;; code page ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ******** ;; CODE PAGE: COMMON ;; STATE: low shift Dead_lower ;; KEYBOARD TYPES: G ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_PL_LO_END-$ ;; length of state section DB DEAD_LOWER ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW 3 ;; number of entries DB 27h ;; FLAG ACUTE ;; DB 2bh ;; FLAG GRAVE ;; ; DB 28h ;; No corresponding characters with Circ. ; FLAG CIRCUMFLEX ;; in either codepage, so replaced by corresponding ;; standalone character. COM_PL_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ******** ;; CODE PAGE: COMMON ;; STATE: low shift Dead_UPPER ;; KEYBOARD TYPES: G ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_PL_UP_END-$ ;; length of state section DB DEAD_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW 1 ;; number of entries DB 27h ;; FLAG DIARESIS ;; ;; DB 28h ;; No corresponding characters in either codepage ;; FLAG TILDE ;; so commented out and replaced by ;; standalone tilde. COM_PL_UP_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: COMMON ;; STATE: low shift DEAD_UPPER_SEC ;; KEYBOARD TYPES: G SECONDARY MODE ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_SC_UP_END-$ ;; length of state section DB DEAD_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW 1 ;; number of entries DB 27h ;; FLAG DIARESIS_SEC ;; BUG-BUG ;; Not available in 737 cp CP869_SC_UP_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: COMMON ;; STATE: low shift DEAD_lower_SEC ;; KEYBOARD TYPES: G SECONDARY MODE ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_SC_LO_END-$ ;; length of state section DB DEAD_LOWER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW 1 ;; number of entries DB 27h ;; FLAG ACUTE_SEC ;; BUG-BUG ;; Not available in 737 cp CP869_SC_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ****** ;; CODE PAGE: Common ;; STATE: Third Shift Dead Key SECONDARY (Greek) ;; KEYBOARD TYPES: G ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BUG-BUG not in 737 ;; DW CP869_SE_TH_END-$ ;; length of state section DB DEAD_THIRD_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW 1 ;; number of entries DB 27h ;; FLAG ACUTE_DIAR ;; Unique key to Greek codepages ;; combination of diaresis and acute CP869_SE_TH_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ******** ;; STATE: Non-alpha Upper Case ;; KEYBOARD: G_KB, P_KB, P12_KB Latin Mode ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_NA_UP_1_END-$ ;; Length of state section DB NON_ALPHA_UPPER ;; DW G_KB+P_KB+P12_KB ;; DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW GK_005300-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 15 ;; number of scans DB 03,22h ;; " DB 07,26h ;; & DB 08,2fh ;; / DB 09,28h ;; ( DB 0Ah,29h ;; ) DB 0Bh,3dh ;; = DB 0Ch,3fh ;; ? DB 0Dh,2ah ;; * DB 28h,7eh ;; Circumflex standalone char, to replace useless dead key DB 29h,7ch ;; | DB 2bh,40h ;; @ DB 33h,3bh ;; ; DB 34h,3ah ;; : DB 35h,5fh ;; _ DB 56h,3eh ;; > ;; GK_005300: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_NA_UP_1_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Non-alpha Upper Case SECONDARY KEYBOARD MODE ;; KEYBOARD: all ;; TABLE TYPE: Translate Greek Mode, merge changes from winse ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_NA_UP_2_END-$ ;; Length of state section DB NON_ALPHA_UPPER_SEC ;; DW ANY_KB ;; DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW GK_005301-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 11 ;; number of scans DB 03,40h ;; @ DB 08,26h ;; & DB 09,2ah ;; * DB 0Ah,28h ;; ( DB 0Bh,29h ;; ) DB 0ch,5fh ;; _ DB 0Dh,2bh ;; + DB 29h,7eh ;; ~ DB 33h,3ch ;; < DB 34h,3eh ;; > DB 35h,3fh ;; ?
GK_005301: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_NA_UP_2_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Non_alpha_lower Case ;; KEYBOARD: all ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_NA_LC_1_END-$ ;; Length of state section DB NON_ALPHA_LOWER ;; DW ANY_KB ;; DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW GK_005303-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 6 ;; number of scans DB 28h,5eh ;; Circumflex standalone char, to replace useless dead key DB 29h,5ch ;; \ DB 0ch,27h ;; ' DB 0dh,2bh ;; + DB 35h,2dh ;; - DB 56h,3ch ;; < ;; GK_005303: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_NA_LC_1_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ******* ;; STATE: Non_alpha_lower Case Secondary keyboard ;; KEYBOARD: all Greek ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_NA_L_1_END-$ ;; Length of state section DB NON_ALPHA_LOWER_SEC ;; DW ANY_KB ;; DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW GK_00530-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 5 ;; number of scans DB 29h,60h ;; 1/2 DB 0ch,2dh ;; ' DB 0dh,3dh ;; + DB 35h,2fh ;; DB 56h,15h ;; character 15h ;; GK_00530: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_NA_L_1_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: CIRCUMFLEX Lower Case ;; KEYBOARD TYPES: ALL ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_CI_LO_END-$ ;; length of state section DB CIRCUMFLEX_LOWER ;; State ID DW ANY_KB ;; Keyboard Type DB 94,0 ;; error character = standalone accent ;; DW COM_CI_LO_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; COM_CI_LO_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_CI_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: COMMON ;; STATE: Circumflex Space Bar ;; KEYBOARD TYPES: P12_KB+G_KB ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_CI_SP_END-$ ;; length of state section DB CIRCUMFLEX_SPACE ;; State ID DW ANY_KB ;; Keyboard Type DB 5eh,0 ;; error character = standalone accent ;; DW COM_CI_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,5eh ;; error character = standalone accent COM_CI_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_CI_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Grave Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_GR_LO_END-$ ;; Length of state section DB GRAVE_LOWER ;; DW ANY_KB ;; DB 60h,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_001200-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; GK_001200: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_GR_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Tilde Space Bar ;; KEYBOARD TYPES: Any, ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_SP_END-$ ;; length of state section DB GRAVE_SPACE ;; State ID DW ANY_KB ;; Keyboard Type DB 060H,0 ;; error character = standalone accent ;; DW COM_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,060H ;; STANDALONE TILDE ;; COM_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Tilde Lower ;; KEYBOARD TYPES: Any ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_TI_LO_K1_END-$ ;; length of state section DB TILDE_LOWER ;; State ID DW ANY_KB ;; Keyboard Type DB 07EH,0 ;; error character = standalone accent ;; DW COM_TI_LO_K1_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; 869,737 have no tilde characters COM_TI_LO_K1_T1_END: ;; ;; DW 0 ;; ;; COM_TI_LO_K1_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Tilde Upper Case ;; KEYBOARD TYPES: Any ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_TI_UP_K1_END-$ ;; length of state section DB TILDE_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB 07EH,0 ;; error character = standalone accent ;; DW COM_TI_UP_K1_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; 863 has no tilde chars. COM_TI_UP_K1_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_TI_UP_K1_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: Tilde Space Bar ;; KEYBOARD TYPES: Any, ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_TI_SP_END-$ ;; length of state section DB TILDE_SPACE ;; State ID DW ANY_KB ;; Keyboard Type DB 07EH,0 ;; error character = standalone accent ;; DW COM_TI_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,07EH ;; STANDALONE TILDE ;; COM_TI_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_TI_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; CODE PAGE: Any ;; STATE: RUS_MODE ;; KEYBOARD TYPES: All ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_F1_END-$ ;; length of state section DB RUS_MODE_SET ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; ;; Set Flag Table DW 1 ;; number of entries DB 54 ;; scan code (Right Shift) FLAG RUS_MODE ;; flag bit to set ;; DW 0 ;; Size of xlat table - null table ;; COM_F1_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: Any ;; STATE: LAT_MODE ;; KEYBOARD TYPES: All ;; TABLE TYPE: Flag Table ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_F2_END-$ ;; length of state section DB LAT_MODE_SET ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; ;; Set Flag Table DW 1 ;; number of entries DB 42 ;; scan code (Left Shift) FLAG LAT_MODE ;; flag bit to set ;; DW 0 ;; Size of xlat table - null table ;; COM_F2_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW 0 ;; Last State COMMON_XLAT_END: ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;*************************************** ;; GK Specific Translate Section for 869 ;;*************************************** ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; PUBLIC GK_869_XLAT ;; GK_869_XLAT: ;; ;; DW CP869_XLAT_END-$ ;; length of section DW 869 ;; ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ******* (Greek) ;; CODE PAGE: 869 ;; STATE: Third Shift Sec SECONDARY ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C869_TS_END-$ ;; length of state section DB THIRD_SHIFT ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; DW C869_TS_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 1 ;; number of entries DB 35h,0f0h ;; sd10 ;; C869_TS_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; C869_TS_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ****** ;; STATE: Non-Alpha Upper Case SECONDARY KEYBOARD ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_NY_UP_END-$ ;; length of state section DB NON_ALPHA_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; DW CP869_NY_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 9 ;; number of entrie DB 04h,9ch ;; � DB 07h,89h ;; -| DB 2bh,9ah ;; superscript 3 not in 737 DB 56h,97h ;; copyright symbol not in 737 DB 1ah,0aeh ;; << does not exist in 737 DB 1bh,0afh ;; >> does not exist in 737 DB 10h,8eh ;; -- does not exist in 737 DB 11h,8ah ;; | does not exist in 737 DB 28h,8bh ;; ` does not exist in 737
;; CP869_NY_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_NY_UP_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Non Alpha Lower SECONDARY KEYBOARD ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DW CP869_NA_LO_END-$ ;; length of state section DB NON_ALPHA_LOWER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; DW CP869_NA_LO_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 3 ;; number of entries ;; ; DB 27h,0efh ;; Acute-now a dead key DB 10h,88h ;; DB 28h,8ch ;; DB 2bh,99h ;;
CP869_NA_LO_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_NA_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Alpha Lower Case ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_AL_LW_END-$ ;; length of state section DB ALPHA_LOWER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; error character = standalone accent ;; DW CP869_AL_LW_T2_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 25 ;; number of scans DB 11h,0edh ;; DB 12h,0deh ;; Greek alpha characters DB 13h,0ebh ;; DB 14h,0eeh ;; DB 15h,0e7h ;; DB 16h,0e2h ;; DB 17h,0e3h ;; DB 18h,0e9h ;; DB 19h,0eah ;; DB 1eh,0d6h ;; DB 1fh,0ech ;; DB 20h,0ddh ;; DB 21h,0f3h ;; DB 22h,0d8h ;; DB 23h,0e1h ;; DB 24h,0e8h ;; DB 25h,0e4h ;; DB 26h,0e5h ;; DB 2ch,0e0h ;; DB 2dh,0f4h ;; DB 2eh,0f6h ;; DB 2fh,0fah ;; DB 30h,0d7h ;; DB 31h,0e7h ;; DB 32h,0e6h ;; ;; CP869_AL_LW_T2_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_AL_LW_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Alpha Upper Case ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_AL_2P_END-$ ;; length of state section DB ALPHA_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; error character = standalone accent ;; DW CP869_AL_UP_T2_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 25 ;; number of scans ;; DB 12h,0a8h ;; Greek alpha characters DB 13h,0c7h ;; DB 14h,0d0h ;; DB 15h,0d1h ;; DB 16h,0ach ;; DB 17h,0adh ;; DB 18h,0beh ;; DB 19h,0c6h ;; DB 1eh,0a4h ;; DB 1fh,0cfh ;; DB 20h,0a7h ;; DB 21h,0d2h ;; DB 22h,0a6h ;; DB 23h,0aah ;; DB 24h,0bdh ;; DB 25h,0b5h ;; DB 26h,0b6h ;; DB 2ch,0a9h ;; DB 2dh,0d3h ;; DB 2eh,0d4h ;; DB 2fh,0d5h ;; DB 30h,0d7h ;; DB 31h,0b8h ;; DB 32h,0b7h ;; ;; CP869_AL_UP_T2_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_AL_2P_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Diaresis Upper Sec ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_D2_UP_END-$ ;; length of state section DB DIARESIS_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB 0f9h,0 ;; error character = standalone accent ;; DW CP869_D2_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,91h ;; I diaeresis DB 15h,96h ;; U diaeresis ;; CP869_D2_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_D2_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 869 LATIN ;; STATE: Diaresis Lower Case Sec ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C869_D2_LO_END-$ ;; Length of state section DB DIARESIS_LOWER_SEC ;; DW ANY_KB ;; DB 0f9h,0 ;; Buffer entry for error character ;; Set Flag Table DW GK2_869-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0a0h ;; I diaresis GREEK char DB 15h,0fbh ;; Y diaresis GREEK char GK2_869: ;; ;; DW 0 ;; Size of xlat table - null table ;; C869_D2_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Diaresis Space Bar SEC ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_D2_SP_END-$ ;; length of state section DB DIARESIS_SPACE_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB 0f9h,0 ;; error character = standalone accent ;; DW CP869_D2_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,0f9h ;; error character = standalone accent CP869_D2_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table CP869_D2_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Diaresis Upper ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_DI_UP_END-$ ;; length of state section DB DIARESIS_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB 0f9h,0 ;; error character = standalone accent ;; DW CP869_DI_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,91h ;; I diaeresis DB 15h,96h ;; U diaeresis ;; CP869_DI_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_DI_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 869 LATIN ;; STATE: Diaresis Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C869_DI_LO_END-$ ;; Length of state section DB DIARESIS_LOWER ;; DW ANY_KB ;; DB 0f9h,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_869-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; GK_869: ;; No Characters for this in Either codepage ;; DW 0 ;; Size of xlat table - null table ;; C869_DI_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: Diaresis Space Bar ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_DI_SP_END-$ ;; length of state section DB DIARESIS_SPACE ;; State ID DW ANY_KB ;; Keyboard Type DB 0f9h,0 ;; error character = standalone accent ;; DW CP869_DI_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,0f9h ;; error character = standalone accent CP869_DI_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table CP869_DI_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: ACUTE Upper Sec ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_A_UP_END-$ ;; length of state section DB ACUTE_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB 0efh,0 ;; error character = standalone accent ;; DW CP869_A_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,08dh ;; acute E DB 15h,095h ;; acute Y DB 18h,092h ;; acute O DB 1eh,086h ;; acute A DB 23h,08fh ;; acute H DB 2fh,098h ;; acute OMEGA DB 17h,090h ;; acute IOTA ;; CP869_A_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_A_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 869 LATIN ;; STATE: ACUTE Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C869_A_LO_END-$ ;; Length of state section DB ACUTE_LOWER_SEC ;; DW ANY_KB ;; DB 0efh,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_A_869-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,09dh ;; acute e DB 15h,0a3h ;; acute y DB 18h,0a2h ;; acute o DB 1eh,09bh ;; acute a DB 23h,09eh ;; acute h DB 2fh,0fdh ;; acute omega DB 17h,09fh ;; acute iota ;; GK_A_869: ;; ;; DW 0 ;; Size of xlat table - null table ;; C869_A_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: ACUTE Space Bar Sec ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_A_SP_END-$ ;; length of state section DB ACUTE_SPACE_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB 0efh,0 ;; error character = standalone accent ;; DW CP869_A_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,0efh ;; error character = standalone accent CP869_A_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table CP869_A_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: ACUTE Upper ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_AC_UP_END-$ ;; length of state section DB ACUTE_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB 0efh,0 ;; error character = standalone accent ;; DW CP869_AC_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,08dh ;; acute E DB 15h,095h ;; acute Y DB 18h,092h ;; acute O DB 1eh,086h ;; acute A DB 23h,08fh ;; acute H DB 2fh,098h ;; acute OMEGA DB 17h,090h ;; acute IOTA ;; CP869_AC_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_AC_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 869 LATIN ;; STATE: ACUTE Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C869_AC_LO_END-$ ;; Length of state section DB ACUTE_LOWER ;; DW ANY_KB ;; DB 0efh,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_AC_869-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,09dh ;; acute e DB 15h,0a3h ;; acute y DB 18h,0a2h ;; acute o DB 1eh,09bh ;; acute a DB 23h,09eh ;; acute h DB 2fh,0fdh ;; acute omega DB 17h,09fh ;; acute iota ;; GK_AC_869: ;; ;; DW 0 ;; Size of xlat table - null table ;; C869_AC_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 ;; STATE: ACUTE Space Bar ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_AC_SP_END-$ ;; length of state section DB ACUTE_SPACE ;; State ID DW ANY_KB ;; Keyboard Type DB 0efh,0 ;; error character = standalone accent ;; DW CP869_AC_SP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,0efh ;; error character = standalone accent CP869_AC_SP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table CP869_AC_SP_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 Acute-Diaresis combo GREEK Secondary ;; STATE: Acute-diaresis Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_AC_LO_END-$ ;; Length of state section DB ACDI_LOWER_SEC ;; DW ANY_KB ;; DB 0f7h,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_001100-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0a1h ;; i acute-diaresis DB 15h,0fch ;; GK_001100: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_AC_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 869 SECONDARY Greek mode ;; STATE: ACDI INPUT: Space Bar ;; KEYBOARD: All Not really acute, but ;; TABLE TYPE: Translate Acute_diaresis combination ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP869_AC2_SP_END-$ ;; Length of state section DB ACDI_SPACE_SEC ;; DW ANY_KB ;; DB 0f7H,0 ;; Buffer entry for error character ;; Set Flag Table DW GK_10450-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 1 ;; number of scans DB 57,0F7H ;; ACDI GK_10450: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP869_AC2_SP_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: Common ;; STATE: ACDI Upper Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW COM_AC_UP_END-$ ;; Length of state section DB ACDI_UPPER_SEC ;; DW ANY_KB ;; DB -1,-1 ;; Buffer entry for error character ;; Set Flag Table DW GK_003100-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0a1h ;; i ACDI-diaresis DB 15h,0fch ;; GK_003100: ;; ;; DW 0 ;; Size of xlat table - null table ;; COM_AC_UP_END: ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; DW 0 ;; LAST STATE ;; CP869_XLAT_END: ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;*************************************** ;; GK Specific Translate Section for 737 ;;*************************************** ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; PUBLIC GK_737_XLAT ;; GK_737_XLAT: ;; ;; DW CP737_XLAT_END-$ ;; length of section DW 737 ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ******* ;; CODE PAGE: 737 GREEK ;; STATE: Non Alpha Lower SECONDARY KEYBOARD ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_NA_LO_END-$ ;; length of state section DB NON_ALPHA_LOWER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; DW CP737_NA_LO_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 3 ;; number of entries DB 10h,3bh ;; Middle dot DB 11h,0aah ;; DB 2bh,5ch ;; subscript 2
CP737_NA_LO_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_NA_LO_END: ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ******* ;; CODE PAGE: 737 GREEK ;; STATE: Non Alpha Upper SECONDARY KEYBOARD ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_NA_UP_END-$ ;; length of state section DB NON_ALPHA_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; Buffer entry for error character ;; DW CP737_NA_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE ;; xlat options: DB 2 ;; number of entries DB 10h,3ah ;; Middle dot DB 11h,91h ;; subscript 2
CP737_NA_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_NA_UP_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Last state for 737 ;; ;; CODE PAGE: 737 ;; STATE: Alpha lower Case SECONDARY ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_AL_LW_END-$ ;; length of state section DB ALPHA_LOWER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; error character = standalone accent ;; DW CP737_AL_LW_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 24 ;; number of scans DB 12h,09ch ;; Greek alpha characters DB 13h,0a8h ;; DB 14h,0abh ;; DB 15h,0ach ;; DB 16h,09fh ;; DB 17h,0a0h ;; DB 18h,0a6h ;; DB 19h,0a7h ;; DB 1eh,098h ;; DB 1fh,0a9h ;; DB 20h,09bh ;; DB 21h,0adh ;; DB 22h,09ah ;; DB 23h,09eh ;; DB 24h,0a5h ;; DB 25h,0a1h ;; DB 26h,0a2h ;; DB 2ch,09dh ;; DB 2dh,0aeh ;; DB 2eh,0afh ;; DB 2fh,0e0h ;; DB 30h,099h ;; DB 31h,0a4h ;; DB 32h,0a3h ;; ;; CP737_AL_LW_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_AL_LW_END: ;; length of state section ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Last state for 737 ;; ;; CODE PAGE: 737 ;; STATE: Alpha UPPER Case SECONDARY ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_AL_UP_END-$ ;; length of state section DB ALPHA_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1,-1 ;; error character = standalone accent ;; DW CP737_AL_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 24 ;; number of scans DB 12h,084h ;; Greek alpha characters DB 13h,090h ;; DB 14h,092h ;; DB 15h,093h ;; DB 16h,087h ;; DB 17h,088h ;; DB 18h,08eh ;; DB 19h,08fh ;; DB 1eh,080h ;; DB 1fh,091h ;; DB 20h,083h ;; DB 21h,094h ;; DB 22h,082h ;; DB 23h,086h ;; DB 24h,08dh ;; DB 25h,089h ;; DB 26h,08ah ;; DB 2ch,085h ;; DB 2dh,095h ;; DB 2eh,096h ;; DB 2fh,097h ;; DB 30h,081h ;; DB 31h,08ch ;; DB 32h,08bh ;; ;; CP737_AL_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_AL_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 737 LATIN ;; STATE: Diaresis Lower Case Sec ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; DW CP737_D2_UP_END-$ ;; length of state section DB DIARESIS_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1, -1 ;; error character = standalone accent ;; DW CP737_D2_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0f4h ;; I diaeresis DB 15h,0f5h ;; U diaeresis ;; CP737_D2_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_D2_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 737 LATIN ;; STATE: Diaresis Lower Case Sec ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C737_D2_LO_END-$ ;; Length of state section DB DIARESIS_LOWER_SEC ;; DW ANY_KB ;; DB -1, -1 ;; Buffer entry for error character ;; Set Flag Table DW GK2_737-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0e4h ;; I diaresis GREEK char DB 15h,0e8h ;; Y diaresis GREEK char GK2_737: ;; ;; DW 0 ;; Size of xlat table - null table ;; C737_D2_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 737 ;; STATE: Diaresis Upper ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_DI_UP_END-$ ;; length of state section DB DIARESIS_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB -1, -1 ;; error character = standalone accent ;; DW CP737_DI_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 2 ;; number of scans DB 17h,0f4h ;; I diaeresis DB 15h,0f5h ;; U diaeresis ;; CP737_DI_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_DI_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 737 LATIN ;; STATE: Diaresis Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C737_DI_LO_END-$ ;; Length of state section DB DIARESIS_LOWER ;; DW ANY_KB ;; DB -1, -1 ;; Buffer entry for error character ;; Set Flag Table DW GK_737-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 0 ;; number of scans ;; GK_737: ;; No Characters for this in Either codepage ;; DW 0 ;; Size of xlat table - null table ;; C737_DI_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 737 ;; STATE: ACUTE Upper Sec ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_A_UP_END-$ ;; length of state section DB ACUTE_UPPER_SEC ;; State ID DW ANY_KB ;; Keyboard Type DB -1, -1 ;; error character = standalone accent ;; DW CP737_A_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,0ebh ;; acute E DB 15h,0efh ;; acute Y DB 18h,0eeh ;; acute O DB 1eh,0eah ;; acute A DB 23h,0ech ;; acute H DB 2fh,0f0h ;; acute OMEGA DB 17h,0edh ;; acute IOTA ;; CP737_A_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_A_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 737 LATIN ;; STATE: ACUTE Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C737_A_LO_END-$ ;; Length of state section DB ACUTE_LOWER_SEC ;; DW ANY_KB ;; DB -1, -1 ;; Buffer entry for error character ;; Set Flag Table DW GK_A_737-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,0e2h ;; acute e DB 15h,0e7h ;; acute y DB 18h,0e6h ;; acute o DB 1eh,0e1h ;; acute a DB 23h,0e3h ;; acute h DB 2fh,0e9h ;; acute omega DB 17h,0e5h ;; acute iota ;; GK_A_737: ;; ;; DW 0 ;; Size of xlat table - null table ;; C737_A_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; CODE PAGE: 737 ;; STATE: ACUTE Upper ;; KEYBOARD TYPES: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW CP737_AC_UP_END-$ ;; length of state section DB ACUTE_UPPER ;; State ID DW ANY_KB ;; Keyboard Type DB -1, -1 ;; error character = standalone accent ;; DW CP737_AC_UP_T1_END-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,0ebh ;; acute E DB 15h,0efh ;; acute Y DB 18h,0eeh ;; acute O DB 1eh,0eah ;; acute A DB 23h,0ech ;; acute H DB 2fh,0f0h ;; acute OMEGA DB 17h,0edh ;; acute IOTA ;; CP737_AC_UP_T1_END: ;; ;; DW 0 ;; Size of xlat table - null table ;; CP737_AC_UP_END: ;; length of state section ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; CODE PAGE: 737 LATIN ;; STATE: ACUTE Lower Case ;; KEYBOARD: All ;; TABLE TYPE: Translate ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DW C737_AC_LO_END-$ ;; Length of state section DB ACUTE_LOWER ;; DW ANY_KB ;; DB -1, -1 ;; Buffer entry for error character ;; Set Flag Table DW GK_AC_737-$ ;; Size of xlat table DB STANDARD_TABLE+ZERO_SCAN ;; xlat options: DB 7 ;; number of scans DB 12h,0e2h ;; acute e DB 15h,0e7h ;; acute y DB 18h,0e6h ;; acute o DB 1eh,0e1h ;; acute a DB 23h,0e3h ;; acute h DB 2fh,0e9h ;; acute omega DB 17h,0e5h ;; acute iota ;; GK_AC_737: ;; ;; DW 0 ;; Size of xlat table - null table ;; C737_AC_LO_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Last state for 737 ;; ;; ;; DW 0 ;; LAST STATE ;; CP737_XLAT_END: ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; CODE ENDS ;; END ;;
|