Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1433 lines
48 KiB

PAGE ,132
TITLE PC DOS 3.3 Keyboard Definition File
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; PC DOS 3.3 - NLS Support - Keyboard Definition File
;; (c) Copyright IBM Corp 1986,1987
;;
;; This file contains the keyboard tables for Turkey KBID 440
;;
;; Linkage Instructions:
;; Refer to KDF.ASM.
;;
;; Author: BILL DEVLIN - IBM Canada Laboratory - May 1986
;; modded : DTF 18-Sep-86
;; KBID 440 Support implemented by: T. Fikret Inam & D.Love
;; 12 May 1992 - Boca Raton
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
INCLUDE KEYBSHAR.INC ;;
INCLUDE POSTEQU.INC ;;
INCLUDE KEYBMAC.INC ;;
;;
PUBLIC TR2_LOGIC ;;
PUBLIC TR2_850_XLAT ;;
PUBLIC TR2_857_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
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; TR2 State Logic
;;***************************************
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
TR2_LOGIC:
DW LOGIC_END-$ ;; length
;;
DW 0 ;; 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 ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Dead key definitions must come before
;; dead key translations to handle
;; dead key + dead key.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
IFKBD G_KB+P12_KB ;; ONLY VALID FOR ENHANCED KB
;;
IFF EITHER_CTL,NOT ;;
IFF EITHER_ALT,NOT ;;
IFF EITHER_SHIFT ;;
SET_FLAG DEAD_UPPER ;;
ELSEF ;;
SET_FLAG DEAD_LOWER ;;
ENDIFF ;;
ELSEF ;;
IFF R_ALT_SHIFT ;;
ANDF EITHER_SHIFT,NOT ;;
SET_FLAG DEAD_THIRD ;;
ENDIFF ;;
ENDIFF ;;
ENDIFF ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;IFKBD P12_KB+G_KB ;;
; IFF EITHER_ALT,NOT ;;
; ANDF EITHER_CTL,NOT ;;
; IFF EITHER_SHIFT ;;
; SET_FLAG DEAD_UPPER ;;
; ELSEF ;;
; SET_FLAG DEAD_LOWER ;;
; ENDIFF ;;
; ENDIFF ;;
;IFF EITHER_SHIFT,NOT ;;
; IFKBD XT_KB+AT_KB+JR_KB ;;
; IFF EITHER_CTL ;;
; ANDF ALT_SHIFT ;;
; SET_FLAG DEAD_THIRD ;;
; ENDIFF ;;
; ELSEF ;;
; IFF EITHER_CTL,NOT ;;
; ANDF ALT_SHIFT,NOT ;;
; ANDF R_ALT_SHIFT ;;
; SET_FLAG DEAD_THIRD ;;
; ENDIFF ;;
; ENDIFF ;;
;ENDIFF ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ACUTE ACCENT TRANSLATIONS
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
ACUTE_PROC: ;;
;;
IFF ACUTE,NOT ;;
GOTO DIARESIS_PROC ;;
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 ;; 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 GRAVE_PROC ;;
ENDIFF ;;
;;
RESET_NLS ;;
IFF R_ALT_SHIFT,NOT ;;
XLATT DIARESIS_SPACE ;; exist for 850 so beep for
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 ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; GRAVE ACCENT TRANSLATIONS
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
GRAVE_PROC: ;;
;;
IFF GRAVE,NOT ;;
GOTO TILDE_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 ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; TILDE ACCENT TRANSLATIONS
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TILDE_PROC: ;;
;;
IFF TILDE,NOT ;;
GOTO CIRCUMFLEX_PROC ;;
ENDIFF ;;
;;
RESET_NLS ;;
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 ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CIRCUMFLEX ACCENT TRANSLATIONS
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
CIRCUMFLEX_PROC: ;;
;;
IFF CIRCUMFLEX,NOT ;;
GOTO NON_DEAD ;;
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,NOT ;;
XLATT CIRCUMFLEX_LOWER ;;
ELSEF ;;
XLATT CIRCUMFLEX_UPPER ;;
ENDIFF ;;
ENDIFF ;;
ENDIFF ;;
;;
INVALID_CIRCUMFLEX: ;;
PUT_ERROR_CHAR CIRCUMFLEX_LOWER ;; standalone accent
BEEP ;; Invalid dead key combo.
GOTO NON_DEAD ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Upper, lower and third shifts
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
NON_DEAD: ;;
;;
IFKBD G_KB ;; Avoid accidentally translating
ANDF LC_E0 ;; the "/" on the numeric pad of the
EXIT_STATE_LOGIC ;; G keyboard
ENDIFF ;;
IFF EITHER_ALT,NOT ;; Lower and upper case. Alphabetic
ANDF EITHER_CTL,NOT ;; keys are affected by CAPS LOCK.
IFF EITHER_SHIFT ;; Numeric keys are not.
;;***BD ADDED FOR NUMERIC PAD
IFF NUM_STATE,NOT ;;
XLATT NUMERIC_PAD ;;
ENDIFF ;;
;;***BD END OF ADDITION
XLATT NON_ALPHA_UPPER ;;
IFF CAPS_STATE ;;
XLATT ALPHA_LOWER ;;
ELSEF ;;
XLATT ALPHA_UPPER ;;
ENDIFF ;;
ELSEF ;;
;;***BD ADDED FOR NUMERIC PAD
IFF NUM_STATE ;;
XLATT NUMERIC_PAD ;;
ENDIFF ;;
;;***BD END OF ADDITION
XLATT NON_ALPHA_LOWER ;;
IFF CAPS_STATE ;;
XLATT ALPHA_UPPER ;;
ELSEF ;;
XLATT ALPHA_LOWER ;;
ENDIFF ;;
ENDIFF ;;
ELSEF ;;
IFF EITHER_SHIFT,NOT ;;
IFKBD XT_KB+AT_KB+JR_KB ;;
IFF EITHER_CTL ;;
ANDF ALT_SHIFT ;;
XLATT THIRD_SHIFT ;;
ENDIFF ;;
ELSEF ;;
IFF EITHER_CTL,NOT ;;
ANDF R_ALT_SHIFT ;;
XLATT THIRD_SHIFT ;;
ENDIFF ;;
ENDIFF ;;
ENDIFF ;;
ENDIFF ;;
;**************************************;;
IFF EITHER_SHIFT,NOT ;;
IFF EITHER_CTL ;;
ANDF ALT_SHIFT ;;
IFF R_ALT_SHIFT,NOT ;;
XLATT ALT_CASE ;;
ENDIFF ;;
ENDIFF ;;
ENDIFF ;;
;**************************************;;
IFF EITHER_CTL,NOT ;;
IFF ALT_SHIFT ;; ALT - case
ANDF R_ALT_SHIFT,NOT ;;
XLATT ALT_CASE ;;
ENDIFF ;;
ELSEF ;;
IFF EITHER_ALT,NOT ;; CTRL - case
XLATT CTRL_CASE ;;
ENDIFF ;;
ENDIFF ;;
IFF EITHER_CTL ;;
ANDF ALT_SHIFT ;;
ANDF R_ALT_SHIFT,NOT ;;
XLATT ALT_CASE ;;
ENDIFF ;;
ENDIFF ;;
;;
EXIT_STATE_LOGIC ;;
;;
LOGIC_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; TR Common Translate Section
;; This section contains translations for the lower 128 characters
;; only since these will never change from code page to code page.
;; In addition the dead key "Set Flag" tables are here since the
;; dead keys are on the same keytops for all code pages.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
PUBLIC TR2_COMMON_XLAT ;;
TR2_COMMON_XLAT: ;;
;;
DW COMMON_XLAT_END-$ ;; length of section
DW -1 ;; code page
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Upper Shift Dead Key
;; KEYBOARD TYPES: G
;; TABLE TYPE: Flag Table
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_TR_UP_END-$ ;; length of state section
DB DEAD_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;; Set Flag Table
DW 1 ;; number of entries
DB 4 ;; scan code
FLAG CIRCUMFLEX ;;
;;
COM_TR_UP_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Third Shift Dead Key
;; KEYBOARD TYPES: G
;; TABLE TYPE: Flag Table
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_TR_TH_END-$ ;; length of state section
DB DEAD_THIRD ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;; Set Flag Table
DW 4 ;; number of entries
DB 26 ;; scan code
FLAG DIARESIS ;; flag bit to set
DB 27 ;;
FLAG TILDE ;;
DB 39 ;; (could be 40!)
FLAG ACUTE ;;
DB 43 ;; scan code
FLAG GRAVE ;; flag bit to set
;;
COM_TR_TH_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Numeric Key Pad
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_PAD_K1_END-$ ;; length of state section
DB NUMERIC_PAD ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_PAD_K1_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 1 ;; number of entries
DB 83,',' ;; decimal seperator = ,
COM_PAD_K1_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_PAD_K1_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;******************************
;;***BD - ADDED FOR ALT CASE
;;******************************
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Alt Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_ALT_K1_END-$ ;; length of state section
DB ALT_CASE ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_ALT_K1_T1_END-$ ;; Size of xlat table
DB TYPE_2_TAB ;; xlat options:
DB 2 ;; number of entries
; DB 07,00,35H ;;
DB 12,0,2BH ;;
DB 13,0,082H ;; 53 changed to 13 - YE
COM_ALT_K1_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_ALT_K1_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Ctrl Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_CTRL_K2_END-$ ;; length of state section
DB CTRL_CASE ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_CTRL_K2_T1_END-$ ;; Size of xlat table
DB TYPE_2_TAB ;; xlat options:
DB 6 ;; number of entries
DB 09,1BH,09 ;; [
DB 10,1DH,10 ;; ]
DB 1AH,-1,-1 ;; " " [
DB 1BH,-1,-1 ;; " " ]
DB 12,01CH,2BH ;; backslash
DB 13,01FH,0CH ;; MOVE HYPHEN
COM_CTRL_K2_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_CTRL_K2_END: ;;
;;
;; ***************************************************
;; ****** CHANGES START HERE FOR KBID 440 - F.I. *****
;; ***************************************************
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Alpha Lower Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; ;;
DW COM_AL_LO_END-$ ;; length of state section
DB ALPHA_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
; ;;
DW COM_AL_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 29 ;;
DB 16,'f' ;;
DB 17,'g' ;;
; DB 18,BELL ;; g "breve" Turkish National DO NOT USE see 850
; DB 19,BELL ;; i "dotless" Turkish National DO NOT USE see 850
DB 20,'o' ;;
DB 21,'d' ;;
DB 22,'r' ;;
DB 23,'n' ;;
DB 24,'h' ;;
DB 25,'p' ;;
DB 26,'q' ;;
DB 27,'w' ;;
DB 30,'u' ;;
DB 31,'i' ;;
DB 32,'e' ;;
DB 33,'a' ;;
DB 34,'�' ;;
DB 35,'t' ;;
DB 36,'k' ;;
DB 37,'m' ;;
DB 38,'l' ;;
DB 39,'y' ;;
; DB 40,BELL ;; s "cedilla" Turkish National DO NOT USE see 850
DB 43,'x' ;;
DB 44,'j' ;;
DB 45,'”' ;;
DB 46,'v' ;;
DB 47,'c' ;;
DB 48,'‡' ;;
DB 49,'z' ;;
DB 50,'s' ;;
DB 51,'b' ;;
COM_AL_LO_T1_END: ;;
; ;;
DW 0 ;; Size of xlat table - null table
; ;;
COM_AL_LO_END: ;;
; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Alpha Upper Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; ;;
DW COM_AL_UP_END-$ ;; length of state section
DB ALPHA_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
; ;;
DW COM_AL_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 29 ;;
DB 16,'F' ;;
DB 17,'G' ;;
; DB 18,BELL ;; G "breve" Turkish National DO NOT USE see 850
DB 19,'I' ;;
DB 20,'O' ;;
DB 21,'D' ;;
DB 22,'R' ;;
DB 23,'N' ;;
DB 24,'H' ;;
DB 25,'P' ;;
DB 26,'Q' ;;
DB 27,'W' ;;
DB 30,'U' ;;
; DB 31,BELL ;; I "overdot" Turkish National DO NOT USE se 850
DB 32,'E' ;;
DB 33,'A' ;;
DB 34,'š' ;;
DB 35,'T' ;;
DB 36,'K' ;;
DB 37,'M' ;;
DB 38,'L' ;;
DB 39,'Y' ;;
; DB 40,BELL ;; S "cedilla" Turkish National DO NOT USE see 850
DB 43,'X' ;;
DB 44,'J' ;;
DB 45,'™' ;;
DB 46,'V' ;;
DB 47,'C' ;;
DB 48,'€' ;;
DB 49,'Z' ;;
DB 50,'S' ;;
DB 51,'B' ;;
COM_AL_UP_T1_END: ;;
; ;;
DW 0 ;; Size of xlat table - null table
; ;;
COM_AL_UP_END: ;;
; ;;
; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Non-Alpha Lower Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_NA_LO_K1_END-$ ;; length of state section
DB NON_ALPHA_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_NA_LO_K1_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 6 ;; number of entries
DB 12,"/" ;;
DB 13,"-" ;;
DB 41,"+" ;;
DB 52,"." ;;
DB 53,"," ;;
DB 86,"<" ;;
;;
COM_NA_LO_K1_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_NA_LO_K1_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Non-Alpha Upper Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_NA_UP_K1_END-$ ;; length of state section
DB NON_ALPHA_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_NA_UP_K1_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 15 ;;
DB 2,"!" ;;
DB 3,022H ;;
DB 5,'$' ;;
DB 6,'%' ;;
DB 7,'&' ;;
DB 8,027H ;;
DB 9,'(' ;;
DB 10,')' ;;
DB 11,'=' ;;
DB 12,'?' ;;
DB 13,'_' ;;
DB 41,'*' ;;
DB 52,':' ;;
DB 53,';' ;;
DB 86,'>' ;;
;;
COM_NA_UP_K1_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_NA_UP_K1_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Third Shift
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_THIRD_END-$ ;; length of state section
DB THIRD_SHIFT ;; State ID
DW G_KB ;; Keyboard Type FERRARI
DB -1,-1 ;; Buffer entry for error character
;;
DW COM_THIRD_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 24 ;; number of entries
DB 41,'ª' ;; Logical Not Sign
DB 2,0FBH ;; 1 Superscript
DB 3,0FDH ;; 2 Superscript
DB 4,'#' ;; Number Sign
DB 5,0ACH ;; One Quarter Sign
DB 6,0ABH ;; One Half Sign
DB 7,0F3H ;; Three Quarters Sign
DB 8,'{' ;; Left Brace
DB 9,'[' ;; Left Bracket
DB 10,']' ;; Right Bracket
DB 11,'}' ;; Right Brace
DB 12,'\' ;; Backslash
DB 16,'@' ;; At Sign
DB 19,0F4H ;; ô 244
DB 21,0BEH ;; Yen Sign
DB 24,09BH ;; › 155
DB 25,09CH ;; UK Pound Sign
DB 30,091H ;; ‘ 145
DB 31,0E1H ;; Sharp S
DB 44,0AEH ;; Left Angle Quotes
DB 45,0AFH ;; Right Angle Quotes
DB 46,0BDH ;; Cent Sign (NOT ON LAYOUT - F.I.)
DB 50,0E6H ;; Micro Symbol (NOT ON LAYOUT - F.I.)
DB 51,0E8H ;; Multiply Sign
DB 52,0F6H ;; Divide Sign
DB 53,0f0h ;; Syllable Hyphen
DB 86,'|' ;; Unbroken Bar
;;
COM_THIRD_T1_END: ;;
;;
DW 0 ;; Last xlat table
COM_THIRD_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Grave Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_GR_LO_END-$ ;; length of state section
DB GRAVE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 96,0 ;; error character = standalone accent
;;
DW COM_GR_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 5 ;; number of scans
DB 32,'Š' ;; scan code,ASCII - e
DB 30,'—' ;; scan code,ASCII - u
DB 31,0ECH ;; scan code,ASCII - i
DB 20,'•' ;; scan code,ASCII - o
DB 33,'…' ;; scan code,ASCII - a
;;
COM_GR_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_GR_LO_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Grave Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_GR_SP_END-$ ;; length of state section
DB GRAVE_SPACE ;; State ID
DW G_KB ;; Keyboard Type
DB 96,0 ;; error character = standalone accent
;;
DW COM_GR_SP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 57,060H ;; STANDALONE GRAVE
COM_GR_SP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_GR_SP_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Circumflex Lower
;; KEYBOARD TYPES: G-KB
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_CI_LO_END-$ ;; length of state section
DB CIRCUMFLEX_LOWER ;; State ID
DW G_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 5 ;; number of scans
DB 32,'ˆ' ;; scan code,ASCII - e
DB 30,'–' ;; scan code,ASCII - u
DB 31,'Œ' ;; scan code,ASCII - i
DB 20,'“' ;; scan code,ASCII - o
DB 33,'ƒ' ;; scan code,ASCII - a
COM_CI_LO_T1_END: ;;
;;
DW 0 ;;
;;
COM_CI_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Circumflex Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_CI_SP_END-$ ;; length of state section
DB CIRCUMFLEX_SPACE ;; State ID
DW G_KB ;; Keyboard Type
DB 94,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,94 ;; STANDALONE CIRCUMFLEX
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: Tilde Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_TI_LO_END-$ ;; length of state section
DB TILDE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 07EH,0 ;; error character = standalone accent
;;
DW COM_TI_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 23,0A4H ;; scan code,ASCII - ¤
COM_TI_LO_T1_END: ;;
;;
DW 0 ;;
;;
COM_TI_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; CODE PAGE: Common
;;; STATE: Tilde Upper Case
;;; KEYBOARD TYPES: G
;;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_TI_UP_END-$ ;; length of state section
DB TILDE_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 07EH,0 ;; error character = standalone accent
;;
DW COM_TI_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 23,0A5H ;; scan code,ASCII - ¥
COM_TI_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_TI_UP_END: ;; length of state section
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Tilde Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_TI_SP_END-$ ;; length of state section
DB TILDE_SPACE ;; State ID
DW G_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: Common
;; STATE: Acute Lower Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_AC_LO_END-$ ;; length of state section
DB ACUTE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 0EFH,0 ;; error character = standalone accent
;;
DW COM_AC_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 5 ;; number of scans
DB 32,'‚' ;; scan code,ASCII - e
DB 30,'£' ;; scan code,ASCII - u
DB 31,'¡' ;; scan code,ASCII - i
DB 20,'¢' ;; scan code,ASCII - o
DB 33,' ' ;; scan code,ASCII - a
COM_AC_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_AC_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Acute Upper Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_AC_UP_END-$ ;; length of state section
DB ACUTE_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 0EFH,0 ;; error character = standalone accent
;;
DW COM_AC_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 32,090H ;; E acute
COM_AC_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_AC_UP_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Diaresis Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_DI_LO_END-$ ;; length of state section
DB DIARESIS_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 0F9H,0 ;; error character = standalone accent
;;
DW COM_DI_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 5 ;; number of scans
DB 33,084H ;; a diaeresis
DB 32,089H ;; e "
DB 31,08BH ;; i "
DB 20,094H ;; o "
DB 30,081H ;; u "
COM_DI_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_DI_LO_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: Common
;; STATE: Diaresis Upper
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW COM_DI_UP_END-$ ;; length of state section
DB DIARESIS_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 0F9H,0 ;; error character = standalone accent
;;
DW COM_DI_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 4 ;; number of scans
DB 33,08EH ;; A diaeresis
DB 20,099H ;; O diaeresis
DB 30,09AH ;; U diaeresis
DB 19,0D8H ;; I "
COM_DI_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
COM_DI_UP_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;
DW 0 ;; Last State
COMMON_XLAT_END: ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;SPECIFIC TURKEY 850 XLATES
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PUBLIC TR2_850_XLAT ;;
TR2_850_XLAT: ;;
;;
DW CP850_XLAT_END-$ ;;
DW 850 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP 850
;; STATE: Alpha Lower Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP850_AL_LO_END-$ ;; length of state section
DB ALPHA_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 0,0 ;; Buffer entry for error character
;;
DW CP850_AL_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 3 ;;
DB 19,-1 ;; dotless i - NO OPERATION BELL!
DB 18,-1 ;; g-breve
DB 40,-1 ;; s-cedilla
CP850_AL_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP850_AL_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP850
;; STATE: Alpha Upper Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP850_AL_UP_END-$ ;; length of state section
DB ALPHA_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 0,0 ;; Buffer entry for error character
;;
DW CP850_AL_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 3 ;;
DB 18,-1 ;; G-breve NO OP WITH BELL!
DB 40,-1 ;; S-cedilla "
DB 31,-1 ;; I-overdot "
CP850_AL_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP850_AL_UP_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DW 0 ;;
CP850_XLAT_END: ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;TURKEY SPECIFIC 857 XLATES
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PUBLIC TR2_857_XLAT ;;
TR2_857_XLAT: ;;
;;
DW CP_857_XLAT_END-$ ;; length of section
DW 857 ;; code page
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Alpha Lower Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_AL_LO_END-$ ;; length of state section
DB ALPHA_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW CP857_AL_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 3 ;;
DB 19,08DH ;; dotless i
DB 18,0A7H ;; g-breve
DB 40,09FH ;; s-cedilla
CP857_AL_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_AL_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Alpha Upper Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_AL_UP_END-$ ;; length of state section
DB ALPHA_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB -1,-1 ;; Buffer entry for error character
;;
DW CP857_AL_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE ;; xlat options:
DB 3 ;;
DB 18,0A6H ;; G-breve
DB 40,09EH ;; S-cedilla
DB 31,098H ;; I-overdot
CP857_AL_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_AL_UP_END: ;;
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Grave Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_GR_LO_END-$ ;; length of state section
DB GRAVE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 96,0 ;; error character = standalone accent
;;
DW CP857_GR_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 6 ;; number of scans
DB 32,08AH ;; E grave
DB 30,097H ;; U grave
DB 19,0ECh ;; scan code,ASCII - dotless i
DB 31,0ECh ;; scan code,ASCII - i
DB 20,095H ;; O grave
DB 33,085H ;; A grave
CP857_GR_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_GR_LO_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Grave Upper
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_GR_UP_END-$ ;; length of state section
DB GRAVE_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 96,0 ;; error character = standalone accent
;;
DW CP857_GR_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 6 ;; number of scans
DB 32,0D4H ;; E grave
DB 30,0EBH ;; U grave
DB 19,0DEH ;; I grave - I
DB 31,0DEH ;; I grave - I overdot
DB 20,0E3H ;; O grave
DB 33,0B7H ;; A grave
CP857_GR_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_GR_UP_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Circumflex Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_CI_LO_END-$ ;; length of state section
DB CIRCUMFLEX_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 94,0 ;; error character = standalone accent
;;
DW CP857_CI_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 2 ;; number of scans
DB 19,08CH ;; scan code,ASCII - dotless i
DB 31,08CH ;; scan code,ASCII - i
CP857_CI_LO_T1_END: ;;
;;
DW 0 ;;
;;
CP857_CI_LO_END: ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Circumflex Upper
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_CI_UP_END-$ ;; length of state section
DB CIRCUMFLEX_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 94,0 ;; error character = standalone accent
;;
DW CP857_CI_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 6 ;; number of scans
DB 33,0B6H ;; A circumflex
DB 32,0D2H ;; E circumflex
DB 20,0E2H ;; O circumflex
DB 19,0D7H ;; I "
DB 31,0D7H ;; I " - with I overdot
DB 30,0EAH ;; U "
CP857_CI_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_CI_UP_END: ;; length of state section
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Tilde Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_TI_LO_END-$ ;; length of state section
DB TILDE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 07EH,0 ;; error character = standalone accent
;;
DW CP857_TI_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 3 ;; number of scans
DB 23,0A4H ;; scan code,ASCII - ¤
DB 20,0E4h ;; o tilde
DB 33,0C6h ;; a tilde
CP857_TI_LO_T1_END: ;;
;;
DW 0 ;;
;;
CP857_TI_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; CODE PAGE: Common
;;; STATE: Tilde Upper Case
;;; KEYBOARD TYPES: G
;;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_TI_UP_END-$ ;; length of state section
DB TILDE_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 07EH,0 ;; error character = standalone accent
;;
DW CP857_TI_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 3 ;; number of scans
DB 23,0A5H ;; scan code,ASCII - ¥
DB 20,0E5h ;; O tilde
DB 33,0C7h ;; A tilde
CP857_TI_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_TI_UP_END: ;; length of state section
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Tilde Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
; DW CP857_TI_SP_END-$ ;; length of state section
; DB TILDE_SPACE ;; State ID
; DW G_KB ;; Keyboard Type
; DB 07EH,0 ;; error character = standalone accent
; ;;
; DW CP857_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
;CP857_TI_SP_T1_END: ;;
; ;;
; DW 0 ;; Size of xlat table - null table
; ;;
;CP857_TI_SP_END: ;; length of state section
; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Acute Lower Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_AC_LO_END-$ ;; length of state section
DB ACUTE_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 0EFH,0 ;; error character = standalone accent
;;
DW CP857_AC_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 19,'¡' ;; scan code,ASCII - dotless i
CP857_AC_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_AC_LO_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Acute Upper Case
;; KEYBOARD TYPES:G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_AC_UP_END-$ ;; length of state section
DB ACUTE_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 0EFH,0 ;; error character = standalone accent
;;
DW CP857_AC_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 5 ;; number of scans
DB 30,0E9H ;; U acute
DB 19,0D6H ;; I acute
DB 31,0D6H ;; I acute - with I overdot
DB 20,0E0H ;; O acute
DB 33,0B5H ;; A acute
CP857_AC_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_AC_UP_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: CP857
;; STATE: Acute Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; *****
;;
DW CP857_AC_SP_END-$ ;; length of state section
DB ACUTE_SPACE ;; State ID
DW G_KB ;; Keyboard Type
DB 0EFH,0 ;; error character = standalone accent
;;
DW CP857_AC_SP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 57,0EFH ;; STANDALONE ACUTE
CP857_AC_SP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_AC_SP_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Diaresis Lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_DI_LO_END-$ ;; length of state section
DB DIARESIS_LOWER ;; State ID
DW G_KB ;; Keyboard Type
DB 0F9H,0 ;; error character = standalone accent
;;
DW CP857_DI_LO_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 3 ;; number of scans
DB 19,08BH ;; i diaeresis - with dotless i
DB 39,0EDH ;; y diaeresis
DB 31,08BH ;; i diaeresis - with dotted i
CP857_DI_LO_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_DI_LO_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Diaresis Upper
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_DI_UP_END-$ ;; length of state section
DB DIARESIS_UPPER ;; State ID
DW G_KB ;; Keyboard Type
DB 0F9H,0 ;; error character = standalone accent
;;
DW CP857_DI_UP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 3 ;; number of scans
DB 32,0D3H ;; E "
DB 19,0D8H ;; I "
DB 31,0D8H ;; I diaeresis with dot I
CP857_DI_UP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_DI_UP_END: ;; length of state section
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: 857
;; STATE: Diaresis Space Bar
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
DW CP857_DI_SP_END-$ ;; length of state section
DB DIARESIS_SPACE ;; State ID
DW G_KB ;; Keyboard Type
DB 0F9H,0 ;; error character = standalone accent
;;
DW CP857_DI_SP_T1_END-$ ;; Size of xlat table
DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
DB 1 ;; number of scans
DB 57,0F9H ;; scan code,ASCII - SPACE
CP857_DI_SP_T1_END: ;;
;;
DW 0 ;; Size of xlat table - null table
;;
CP857_DI_SP_END: ;;
;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DW 0 ;; LAST STATE
;;
CP_857_XLAT_END: ;;
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
CODE ENDS ;;
END ;;