2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;; DOS - - NLS Support - Keyboard Definition File
4 ;; (C) Copyright 1988 Microsoft
6 ;; File Name: KEYBMAC.INC
11 ;; Include file containing macros for the Keyboard Definition File.
17 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
19 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
21 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
23 ACUTE EQU 80H ;; NLS_FLAG_1
29 ;; NLS_FLAG_2 : nothing defined yet
32 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
34 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
36 DEAD_LOWER EQU 1 ;; dead keys on lower shift
40 NON_ALPHA_LOWER EQU 5 ;;
41 NON_ALPHA_UPPER EQU 6 ;;
49 DIARESIS_LOWER EQU 14 ;;
50 DIARESIS_UPPER EQU 15 ;;
51 DIARESIS_SPACE EQU 16 ;;
52 CIRCUMFLEX_LOWER EQU 17 ;;
53 CIRCUMFLEX_UPPER EQU 18 ;;
54 CIRCUMFLEX_SPACE EQU 19 ;;
55 CEDILLA_LOWER EQU 20 ;;
56 CEDILLA_UPPER EQU 21 ;;
57 CEDILLA_SPACE EQU 22 ;;
58 CEDILLA_CEDILLA EQU 23 ;;
62 DIARESIS_DIARESIS EQU 27 ;;
63 CIRCUMFLEX_CIRCUMFLEX EQU 28 ;;
64 FOURTH_SHIFT EQU 29 ;;
75 BOTLH_F_CAPS EQU 40 ;;
76 BOTRH_F_CAPS EQU 41 ;;
78 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
80 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
85 FIND_FLAG MACRO FLAG_MASK
86 IFIDN <FLAG_MASK>,<SCAN_MATCH>
87 FLAG_ID = EXT_KB_FLAG_ID
89 IFIDN <FLAG_MASK>,<EITHER_SHIFT>
90 FLAG_ID = EXT_KB_FLAG_ID
92 IFIDN <FLAG_MASK>,<CAPS_STATE>
95 IFIDN <FLAG_MASK>,<NUM_STATE>
98 IFIDN <FLAG_MASK>,<EITHER_CTL>
99 FLAG_ID = EXT_KB_FLAG_ID
101 IFIDN <FLAG_MASK>,<EITHER_ALT>
102 FLAG_ID = EXT_KB_FLAG_ID
104 IFIDN <FLAG_MASK>,<LEFT_SHIFT>
107 IFIDN <FLAG_MASK>,<RIGHT_SHIFT>
110 IFIDN <FLAG_MASK>,<ALT_SHIFT>
113 IFIDN <FLAG_MASK>,<CTL_SHIFT>
116 IFIDN <FLAG_MASK>,<R_ALT_SHIFT>
117 FLAG_ID = KB_FLAG_3_ID
119 IFIDN <FLAG_MASK>,<R_CTL_SHIFT>
120 FLAG_ID = KB_FLAG_3_ID
122 IFIDN <FLAG_MASK>,<TILDE>
123 FLAG_ID = NLS_FLAG_1_ID
125 IFIDN <FLAG_MASK>,<ACUTE>
126 FLAG_ID = NLS_FLAG_1_ID
128 IFIDN <FLAG_MASK>,<GRAVE>
129 FLAG_ID = NLS_FLAG_1_ID
131 IFIDN <FLAG_MASK>,<DIARESIS>
132 FLAG_ID = NLS_FLAG_1_ID
134 IFIDN <FLAG_MASK>,<CEDILLA>
135 FLAG_ID = NLS_FLAG_1_ID
137 IFIDN <FLAG_MASK>,<CIRCUMFLEX>
138 FLAG_ID = NLS_FLAG_1_ID
140 IFIDN <FLAG_MASK>,<LC_E0>
141 FLAG_ID = KB_FLAG_3_ID
165 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
168 IF (FLAG_ID EQ UNKNOWN)
170 %OUT Unknown parameter FLAG_MASK on FLAG MACRO
178 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
179 IFF MACRO FLAG_MASK,MASK_TYPE
184 IFIDN <MASK_TYPE>,<NOT>
189 %OUT Unknown parameter MASK_TYPE on IFF MACRO
195 IF (FLAG_ID EQ UNKNOWN)
197 %OUT Unknown parameter FLAG_MASK on IFF MACRO
200 DB IFF_COMMAND+NOT_BIT+FLAG_ID
206 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
212 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
213 ANDF MACRO FLAG_MASK,MASK_TYPE
218 IFIDN <MASK_TYPE>,<NOT>
223 %OUT Unknown parameter MASK_TYPE on ANDF MACRO
229 IF (FLAG_ID EQ UNKNOWN)
231 %OUT Unknown parameter FLAG_MASK on ANDF MACRO
234 DB ANDF_COMMAND+NOT_BIT+FLAG_ID
240 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
245 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
250 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
256 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
257 PUT_ERROR_CHAR MACRO STATE
262 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
263 OPTION MACRO MASK,MASK_TYPE
268 IFIDN <MASK_TYPE>,<NOT>
273 %OUT Unknown parameter MASK_TYPE on OPTION MACRO
278 DB OPTION_COMMAND+NOT_BIT
283 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
289 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
294 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
299 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
300 GOTO MACRO GOTO_OFFSET
305 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
307 DB GOTO_COMMAND+EXIT_INT_9_FLAG
311 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
312 EXIT_STATE_LOGIC MACRO
313 DB GOTO_COMMAND+EXIT_STATE_LOGIC_FLAG
317 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
318 CHECK_FOR_CORE_KEY MACRO
319 DB CHECK_CORE_COMMAND
322 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;