summaryrefslogtreecommitdiff
path: root/v4.0/src/DEV/KEYBOARD/KDFDK.ASM
diff options
context:
space:
mode:
authorGravatar Mark Zbikowski2024-04-25 21:24:10 +0100
committerGravatar Microsoft Open Source2024-04-25 22:32:27 +0000
commit2d04cacc5322951f187bb17e017c12920ac8ebe2 (patch)
tree80ee017efa878dfd5344b44249e6a241f2a7f6e2 /v4.0/src/DEV/KEYBOARD/KDFDK.ASM
parentMerge pull request #430 from jpbaltazar/typoptbr (diff)
downloadms-dos-main.tar.gz
ms-dos-main.tar.xz
ms-dos-main.zip
MZ is back!HEADmain
Diffstat (limited to 'v4.0/src/DEV/KEYBOARD/KDFDK.ASM')
-rw-r--r--v4.0/src/DEV/KEYBOARD/KDFDK.ASM1631
1 files changed, 1631 insertions, 0 deletions
diff --git a/v4.0/src/DEV/KEYBOARD/KDFDK.ASM b/v4.0/src/DEV/KEYBOARD/KDFDK.ASM
new file mode 100644
index 0000000..4ae463a
--- /dev/null
+++ b/v4.0/src/DEV/KEYBOARD/KDFDK.ASM
@@ -0,0 +1,1631 @@
1 PAGE ,132
2 TITLE DOS - Keyboard Definition File
3
4;; LATEST CHANGE P12 NUMERIC
5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6;; DOS - - NLS Support - Keyboard Definition File
7;; (c) Copyright 1988 Microsoft
8;;
9;; This file contains the keyboard tables for Danish
10;;
11;; Linkage Instructions:
12;; Refer to KDF.ASM.
13;;
14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
15 ;;
16 INCLUDE KEYBSHAR.INC ;;
17 INCLUDE POSTEQU.INC ;;
18 INCLUDE KEYBMAC.INC ;;
19 ;;
20 PUBLIC DK_LOGIC ;;
21 PUBLIC DK_865_XLAT ;;
22 PUBLIC DK_850_XLAT ;;
23 ;;
24CODE SEGMENT PUBLIC 'CODE' ;;
25 ASSUME CS:CODE,DS:CODE ;;
26 ;;
27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
28;; Standard translate table options are a linear search table
29;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
31 ;;
32STANDARD_TABLE EQU TYPE_2_TAB+ASCII_ONLY
33 ;;
34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
35;;***************************************
36;; DK State Logic
37;;***************************************
38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
39 ;;
40 ;;
41DK_LOGIC:
42
43 DW LOGIC_END-$ ;; length
44 ;;
45 DW 0 ;; special features
46 ;;
47 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
48 ;;
49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
50;; OPTIONS: If we find a scan match in
51;; an XLATT or SET_FLAG operation then
52;; exit from INT 9.
53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54 ;;
55 OPTION EXIT_IF_FOUND ;;
56 ;;
57 ;;
58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
59;; Dead key definitions must come before
60;; dead key translations to handle
61;; dead key + dead key.
62;; ***BD - THIS SECTION HAS BEEN UPDATED
63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
64 ;;
65 IFF EITHER_CTL,NOT ;;
66 IFF EITHER_ALT,NOT ;;
67 IFF EITHER_SHIFT ;;
68 SET_FLAG DEAD_UPPER ;;
69 ELSEF ;;
70 SET_FLAG DEAD_LOWER ;;
71 ENDIFF ;;
72 ELSEF ;;
73 IFKBD G_KB+P12_KB ;; For ENHANCED keyboard some
74 ANDF R_ALT_SHIFT ;; dead keys are on third shift
75 ANDF EITHER_SHIFT,NOT ;; which is accessed via the altgr key
76 SET_FLAG DEAD_THIRD ;;
77 ENDIFF ;;
78 ENDIFF ;;
79 ENDIFF ;;
80 ;;
81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
82;; ACUTE ACCENT TRANSLATIONS
83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
84 ;;
85ACUTE_PROC: ;;
86 ;;
87 IFF ACUTE,NOT ;;
88 GOTO DIARESIS_PROC ;;
89 ENDIFF ;;
90 ;;
91 RESET_NLS ;;
92 IFF R_ALT_SHIFT,NOT ;;
93 XLATT ACUTE_SPACE ;;
94 ENDIFF ;;
95 IFF EITHER_CTL,NOT ;;
96 ANDF EITHER_ALT,NOT ;;
97 IFF EITHER_SHIFT ;;
98 IFF CAPS_STATE ;;
99 XLATT ACUTE_LOWER ;;
100 ELSEF ;;
101 XLATT ACUTE_UPPER ;;
102 ENDIFF ;;
103 ELSEF ;;
104 IFF CAPS_STATE ;;
105 XLATT ACUTE_UPPER ;;
106 ELSEF ;;
107 XLATT ACUTE_LOWER ;;
108 ENDIFF ;;
109 ENDIFF ;;
110 ENDIFF ;;
111 ;;
112INVALID_ACUTE: ;;
113 PUT_ERROR_CHAR ACUTE_LOWER ;; If we get here then either the XLATT
114 BEEP ;; failed or we are ina bad shift state.
115 GOTO NON_DEAD ;; Either is invalid so BEEP and fall
116 ;; through to generate the second char.
117 ;; Note that the dead key flag will be
118 ;; reset before we get here.
119 ;;
120;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
121;; DIARESIS ACCENT TRANSLATIONS
122;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
123 ;;
124DIARESIS_PROC: ;;
125 ;;
126 IFF DIARESIS,NOT ;;
127 GOTO GRAVE_PROC ;;
128 ENDIFF ;;
129 ;;
130 RESET_NLS ;;
131 IFF R_ALT_SHIFT,NOT ;;
132 XLATT DIARESIS_SPACE ;; exist for 437 so beep for
133 ENDIFF ;;
134 IFF EITHER_CTL,NOT ;;
135 ANDF EITHER_ALT,NOT ;;
136 IFF EITHER_SHIFT ;;
137 IFF CAPS_STATE ;;
138 XLATT DIARESIS_LOWER ;;
139 ELSEF ;;
140 XLATT DIARESIS_UPPER ;;
141 ENDIFF ;;
142 ELSEF ;;
143 IFF CAPS_STATE ;;
144 XLATT DIARESIS_UPPER ;;
145 ELSEF ;;
146 XLATT DIARESIS_LOWER ;;
147 ENDIFF ;;
148 ENDIFF ;;
149 ENDIFF ;;
150 ;;
151INVALID_DIARESIS: ;;
152 PUT_ERROR_CHAR DIARESIS_LOWER ;; standalone accent
153 BEEP ;; Invalid dead key combo.
154 GOTO NON_DEAD ;;
155 ;;
156;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
157;; GRAVE ACCENT TRANSLATIONS
158;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
159 ;;
160GRAVE_PROC: ;;
161 ;;
162 IFF GRAVE,NOT ;;
163 GOTO TILDE_PROC ;;
164 ENDIFF ;;
165 ;;
166 RESET_NLS ;;
167 IFF R_ALT_SHIFT,NOT ;;
168 XLATT GRAVE_SPACE ;;
169 ENDIFF ;;
170 IFF EITHER_CTL,NOT ;;
171 ANDF EITHER_ALT,NOT ;;
172 IFF EITHER_SHIFT ;;
173 IFF CAPS_STATE ;;
174 XLATT GRAVE_LOWER ;;
175 ELSEF ;;
176 XLATT GRAVE_UPPER ;;
177 ENDIFF ;;
178 ELSEF ;;
179 IFF CAPS_STATE,NOT ;;
180 XLATT GRAVE_LOWER ;;
181 ELSEF ;;
182 XLATT GRAVE_UPPER ;;
183 ENDIFF ;;
184 ENDIFF ;;
185 ENDIFF ;;
186 ;;
187INVALID_GRAVE: ;;
188 PUT_ERROR_CHAR GRAVE_LOWER ;; standalone accent
189 BEEP ;; Invalid dead key combo.
190 GOTO NON_DEAD ;;
191 ;;
192;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
193;; TILDE ACCENT TRANSLATIONS
194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
195TILDE_PROC: ;;
196 ;;
197 IFF TILDE,NOT ;;
198 GOTO CIRCUMFLEX_PROC ;;
199 ENDIFF ;;
200 ;;
201 RESET_NLS ;;
202 IFF R_ALT_SHIFT,NOT ;;
203 XLATT TILDE_SPACE ;;
204 ENDIFF ;;
205 IFF EITHER_CTL,NOT ;;
206 ANDF EITHER_ALT,NOT ;;
207 IFF EITHER_SHIFT ;;
208 IFF CAPS_STATE ;;
209 XLATT TILDE_LOWER ;;
210 ELSEF ;;
211 XLATT TILDE_UPPER ;;
212 ENDIFF ;;
213 ELSEF ;;
214 IFF CAPS_STATE ;;
215 XLATT TILDE_UPPER ;;
216 ELSEF ;;
217 XLATT TILDE_LOWER ;;
218 ENDIFF ;;
219 ENDIFF ;;
220 ENDIFF ;;
221 ;;
222INVALID_TILDE: ;;
223 PUT_ERROR_CHAR TILDE_LOWER ;; standalone accent
224 BEEP ;; Invalid dead key combo.
225 GOTO NON_DEAD ;;
226 ;;
227;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
228;; CIRCUMFLEX ACCENT TRANSLATIONS
229;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
230 ;;
231CIRCUMFLEX_PROC: ;;
232 ;;
233 IFF CIRCUMFLEX,NOT ;;
234 GOTO NON_DEAD ;;
235 ENDIFF ;;
236 ;;
237 RESET_NLS ;;
238 IFF R_ALT_SHIFT,NOT ;;
239 XLATT CIRCUMFLEX_SPACE ;;
240 ENDIFF ;;
241 IFF EITHER_CTL,NOT ;;
242 ANDF EITHER_ALT,NOT ;;
243 IFF EITHER_SHIFT ;;
244 IFF CAPS_STATE ;;
245 XLATT CIRCUMFLEX_LOWER ;;
246 ELSEF ;;
247 XLATT CIRCUMFLEX_UPPER ;;
248 ENDIFF ;;
249 ELSEF ;;
250 IFF CAPS_STATE,NOT ;;
251 XLATT CIRCUMFLEX_LOWER ;;
252 ELSEF ;;
253 XLATT CIRCUMFLEX_UPPER ;;
254 ENDIFF ;;
255 ENDIFF ;;
256 ENDIFF ;;
257 ;;
258INVALID_CIRCUMFLEX: ;;
259 PUT_ERROR_CHAR CIRCUMFLEX_LOWER ;; standalone accent
260 BEEP ;; Invalid dead key combo.
261 GOTO NON_DEAD ;;
262 ;;
263;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
264;; Upper, lower and third shifts
265;; ***BD - NON_DEAD THRU LOGIC_END IS UPDATED
266;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
267NON_DEAD: ;;
268 ;;
269 IFKBD G_KB+P12_KB ;; Avoid accidentally translating
270 ANDF LC_E0 ;; the "/" on the numeric pad of the
271 EXIT_STATE_LOGIC ;; G keyboard
272 ENDIFF ;;
273 ;;
274 IFF EITHER_CTL,NOT ;; Lower and upper case. Alphabetic
275 IFF EITHER_ALT,NOT ;; keys are affected by CAPS LOCK.
276 IFF EITHER_SHIFT ;; Numeric keys are not.
277;;***BD ADDED FOR NUMERIC PAD
278 IFF NUM_STATE,NOT ;;
279 XLATT NUMERIC_PAD ;;
280 ENDIFF ;;
281;;***BD END OF ADDITION
282 XLATT NON_ALPHA_UPPER ;;
283 IFF CAPS_STATE ;;
284 XLATT ALPHA_LOWER ;;
285 ELSEF ;;
286 XLATT ALPHA_UPPER ;;
287 ENDIFF ;;
288 ELSEF ;;
289;;***BD ADDED FOR NUMERIC PAD
290 IFF NUM_STATE ;;
291 XLATT NUMERIC_PAD ;;
292 ENDIFF ;;
293;;***BD END OF ADDITION
294 XLATT NON_ALPHA_LOWER ;;
295 IFF CAPS_STATE ;;
296 XLATT ALPHA_UPPER ;;
297 ELSEF ;;
298 XLATT ALPHA_LOWER ;;
299 ENDIFF ;;
300 ENDIFF ;; Third and Fourth shifts
301 ELSEF ;; ctl off, alt on at this point
302 IFKBD XT_KB+AT_KB ;; XT, AT, keyboards. Nordics
303 IFF EITHER_SHIFT ;; only.
304 XLATT FOURTH_SHIFT ;; ALT + shift
305 ELSEF ;;
306 XLATT THIRD_SHIFT ;; ALT
307 ENDIFF ;;
308 ELSEF ;; ENHANCED keyboard
309 IFF R_ALT_SHIFT ;; ALTGr
310 ANDF EITHER_SHIFT,NOT ;;
311 XLATT THIRD_SHIFT ;;
312 ENDIFF ;;
313 ENDIFF ;;
314 ENDIFF ;;
315 ENDIFF ;;
316;**************************************;;
317 IFF EITHER_SHIFT,NOT ;;
318 IFKBD XT_KB+AT_KB ;;
319 IFF EITHER_CTL ;;
320 ANDF ALT_SHIFT ;;
321 XLATT ALT_CASE ;;
322 ENDIFF ;;
323 ENDIFF ;;
324 IFKBD G_KB+P12_KB ;;
325 IFF EITHER_CTL ;;
326 ANDF ALT_SHIFT ;;
327 IFF R_ALT_SHIFT,NOT ;;
328 XLATT ALT_CASE ;;
329 ENDIFF ;;
330 ENDIFF ;;
331 ENDIFF ;;
332 ENDIFF ;;
333;**************************************;;
334 IFKBD AT_KB+XT_KB ;;
335 IFF EITHER_CTL,NOT ;;
336 IFF ALT_SHIFT ;; ALT - case
337 XLATT ALT_CASE ;;
338 ENDIFF ;;
339 ELSEF ;;
340 IFF EITHER_ALT,NOT ;; CTRL - case
341 XLATT CTRL_CASE ;;
342 ENDIFF ;;
343 ENDIFF ;;
344 ENDIFF ;;
345 ;;
346 IFKBD G_KB+P12_KB ;;
347 IFF EITHER_CTL,NOT ;;
348 IFF ALT_SHIFT ;; ALT - case
349 ANDF R_ALT_SHIFT,NOT ;;
350 XLATT ALT_CASE ;;
351 ENDIFF ;;
352 ELSEF ;;
353 IFF EITHER_ALT,NOT ;; CTRL - case
354 XLATT CTRL_CASE ;;
355 ENDIFF ;;
356 ENDIFF ;;
357 ENDIFF ;;
358 ;;
359 EXIT_STATE_LOGIC ;;
360 ;;
361LOGIC_END: ;;
362 ;;
363;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
364;;**********************************************************************
365;; DK Common Translate Section
366;; This section contains translations for the lower 128 characters
367;; only since these will never change from code page to code page.
368;; Some common Characters are included from 128 - 165 where appropriate.
369;; In addition the dead key "Set Flag" tables are here since the
370;; dead keys are on the same keytops for all code pages.
371;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
372 ;;
373 PUBLIC DK_COMMON_XLAT ;;
374DK_COMMON_XLAT: ;;
375 ;;
376 DW COMMON_XLAT_END-$ ;; length of section
377 DW -1 ;; code page
378 ;;
379 ;;
380;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
381;; CODE PAGE: Common
382;; STATE: Lower Shift Dead Key
383;; KEYBOARD TYPES: All
384;; TABLE TYPE: Flag Table
385;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
386 ;;
387 DW COM_DK_LO_END-$ ;; length of state section
388 DB DEAD_LOWER ;; State ID
389 DW ANY_KB ;; Keyboard Type
390 DB -1,-1 ;; Buffer entry for error character
391 ;; Set Flag Table
392 DW 2 ;; number of entries
393 DB 13 ;; scan code
394 FLAG ACUTE ;; flag bit to set
395 DB 27 ;;
396 FLAG DIARESIS ;;
397 ;;
398 ;;
399COM_DK_LO_END: ;;
400 ;;
401;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
402;; CODE PAGE: Common
403;; STATE: Upper Shift Dead Key
404;; KEYBOARD TYPES: All
405;; TABLE TYPE: Flag Table
406;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
407 ;;
408 DW COM_DK_UP_END-$ ;; length of state section
409 DB DEAD_UPPER ;; State ID
410 DW ANY_KB ;; Keyboard Type
411 DB -1,-1 ;; Buffer entry for error character
412 ;; Set Flag Table
413 DW 2 ;; number of entries
414 DB 13 ;; scan code
415 FLAG GRAVE ;; flag bit to set
416 DB 27 ;;
417 FLAG CIRCUMFLEX ;;
418 ;;
419COM_DK_UP_END: ;;
420 ;;
421;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
422;; CODE PAGE: Common
423;; STATE: Third Shift Dead Key
424;; KEYBOARD TYPES: G, P12
425;; TABLE TYPE: Flag Table
426;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
427 ;;
428 DW COM_DK_TH_END-$ ;; length of state section
429 DB DEAD_THIRD ;; State ID
430 DW G_KB+P12_KB ;; Keyboard Type
431 DB -1,-1 ;; Buffer entry for error character
432 ;; Set Flag Table
433 DW 1 ;; number of entries
434 DB 27 ;; scan code
435 FLAG TILDE ;; flag bit to set
436 ;;
437COM_DK_TH_END: ;;
438 ;;
439 ;;
440 ;;
441;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
442;;******************************
443;;***BD - ADDED FOR NUMERIC PAD (DECIMAL SEPERATOR)
444;;******************************
445;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
446;; CODE PAGE: Common ;;change **********CNS **************
447;; STATE: Numeric Key Pad
448;; KEYBOARD TYPES: All except the p12
449;; TABLE TYPE: Translate
450;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
451 ;;
452 DW COM_PAD_K1_END-$ ;; length of state section
453 DB NUMERIC_PAD ;; State ID
454 DW G_KB+AT_KB+XT_KB ;; Keyboard Type
455 DB -1,-1 ;; Buffer entry for error character
456 ;;
457 DW COM_PAD_K1_T1_END-$ ;; Size of xlat table
458 DB STANDARD_TABLE ;; xlat options:
459 DB 1 ;; number of entries
460 DB 83,',' ;; decimal seperator = ,
461COM_PAD_K1_T1_END: ;;
462 ;;
463 DW 0 ;; Size of xlat table - null table
464 ;;
465COM_PAD_K1_END: ;;
466 ;;
467;;******************************
468;;***BD - ADDED FOR ALT CASE
469;;******************************
470;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
471;; CODE PAGE: Common
472;; STATE: Alt Case
473;; KEYBOARD TYPES: G, P12
474;; TABLE TYPE: Translate
475;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
476 ;;
477 DW COM_ALT_K1_END-$ ;; length of state section
478 DB ALT_CASE ;; State ID
479 DW G_KB+P12_KB ;; Keyboard Type
480 DB -1,-1 ;; Buffer entry for error character
481 ;;
482 DW COM_ALT_K1_T1_END-$ ;; Size of xlat table
483 DB TYPE_2_TAB ;; xlat options:
484 DB 0 ;; 2 number of entries
485; DB 12,-1,-1 ;;
486; DB 53,0,082H ;;
487COM_ALT_K1_T1_END: ;;
488 ;;
489 DW 0 ;; Size of xlat table - null table
490 ;;
491COM_ALT_K1_END: ;;
492 ;;
493;;******************************
494;;***BD - ADDED FOR CTRL CASE
495;;******************************
496;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
497;; CODE PAGE: Common
498;; STATE: Ctrl Case
499;; KEYBOARD TYPES: XT, , AT
500;; TABLE TYPE: Translate
501;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
502 ;;
503 DW COM_CTRL_K1_END-$ ;; length of state section
504 DB CTRL_CASE ;; State ID
505 DW XT_KB+AT_KB ;; Keyboard Type
506 DB -1,-1 ;; Buffer entry for error character
507 ;;
508 DW COM_CTRL_K1_T1_END-$ ;; Size of xlat table
509 DB TYPE_2_TAB ;; xlat options:
510 DB 2 ;; number of entries
511 DB 12,-1,-1 ;;
512 DB 53,01FH,35h ;;
513COM_CTRL_K1_T1_END: ;;
514 ;;
515 DW 0 ;; Size of xlat table - null table
516 ;;
517COM_CTRL_K1_END: ;;
518 ;;
519;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
520;; CODE PAGE: Common
521;; STATE: Ctrl Case
522;; KEYBOARD TYPES: G, P12
523;; TABLE TYPE: Translate
524;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
525 ;;
526 DW COM_CTRL_K2_END-$ ;; length of state section
527 DB CTRL_CASE ;; State ID
528 DW G_KB+P12_KB ;; Keyboard Type
529 DB -1,-1 ;; Buffer entry for error character
530 ;;
531 DW COM_CTRL_K2_T1_END-$ ;; Size of xlat table
532 DB TYPE_2_TAB ;; xlat options:
533 DB 8 ;; number of entries
534 DB 9,01BH,09H ;;
535 DB 10,01DH,0AH ;;
536 DB 12,-1,-1 ;;
537 DB 26,-1,-1 ;;
538 DB 27,-1,-1 ;;
539 DB 43,-1,-1 ;;
540 DB 53,01FH,35H ;;
541 DB 86,01CH,56H ;;
542COM_CTRL_K2_T1_END: ;;
543 ;;
544 DW 0 ;; Size of xlat table - null table
545 ;;
546COM_CTRL_K2_END: ;;
547 ;;
548;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
549;; CODE PAGE: Common
550;; STATE: Alpha Lower Case
551;; KEYBOARD TYPES: All
552;; TABLE TYPE: Translate
553;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
554 ;;
555 DW COM_AL_LO_END-$ ;; length of state section
556 DB ALPHA_LOWER ;; State ID
557 DW ANY_KB ;; Keyboard Type
558 DB -1,-1 ;; Buffer entry for error character
559 ;;
560 DW COM_AL_LO_T1_END-$ ;; Size of xlat table
561 DB STANDARD_TABLE ;; xlat options:
562 DB 3 ;; number of entries
563 DB 26,086H ;; a-overcircle
564 DB 39,091H ;; ae-dipthong
565 DB 40,09BH ;; o-slash
566COM_AL_LO_T1_END: ;;
567 ;;
568 DW 0 ;; Size of xlat table - null table
569 ;;
570COM_AL_LO_END: ;;
571 ;;
572;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
573;; CODE PAGE: Common
574;; STATE: Alpha Upper Case
575;; KEYBOARD TYPES: All
576;; TABLE TYPE: Translate
577;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
578 ;;
579 DW COM_AL_UP_END-$ ;; length of state section
580 DB ALPHA_UPPER ;; State ID
581 DW ANY_KB ;; Keyboard Type
582 DB -1,-1 ;; Buffer entry for error character
583 ;;
584 DW COM_AL_UP_T1_END-$ ;; Size of xlat table
585 DB STANDARD_TABLE ;; xlat options:
586 DB 3 ;; number of entries
587 DB 26,08FH ;; A-OVERCIRCLE
588 DB 39,092H ;; AE-DIPTHONG
589 DB 40,09DH ;; O-SLASH
590COM_AL_UP_T1_END: ;;
591 ;;
592 DW 0 ;; Size of xlat table - null table
593 ;;
594COM_AL_UP_END: ;;
595 ;;
596 ;;
597;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
598;; CODE PAGE: Common
599;; STATE: Non-Alpha Lower Case
600;; KEYBOARD TYPES: G + P12
601;; TABLE TYPE: Translate
602;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
603 ;;
604 DW COM_NA_LO_K1_END-$ ;; length of state section
605 DB NON_ALPHA_LOWER ;; State ID
606 DW G_KB+P12_KB ;; Keyboard Type
607 DB -1,-1 ;; Buffer entry for error character
608 ;;
609 DW COM_NA_LO_K1_T1_END-$ ;; Size of xlat table
610 DB STANDARD_TABLE ;; xlat options:
611 DB 5 ;; number of entries
612 DB 41,0ABH ;;
613 DB 12,"+" ;; + INCLUDED FOR SIMPLIC.
614 DB 43,"'" ;; '
615 DB 86,"<" ;; <
616 DB 53,"-" ;; -
617COM_NA_LO_K1_T1_END: ;;
618 ;;
619 DW 0 ;; Size of xlat table - null table
620 ;;
621COM_NA_LO_K1_END: ;;
622 ;;
623;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
624;; CODE PAGE: Common
625;; STATE: Non-Alpha Lower Case
626;; KEYBOARD TYPES: XT +
627;; TABLE TYPE: Translate
628;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
629 ;;
630 DW COM_NA_LO_K2_END-$ ;; length of state section
631 DB NON_ALPHA_LOWER ;; State ID
632 DW XT_KB ;; Keyboard Type
633 DB -1,-1 ;; Buffer entry for error character
634 ;;
635 DW COM_NA_LO_K2_T1_END-$ ;; Size of xlat table
636 DB STANDARD_TABLE ;; xlat options:
637 DB 4 ;; number of entries
638 DB 41,"'" ;; '
639 DB 12,"+" ;; +
640 DB 43,"<" ;; <
641 DB 53,"-" ;; -
642COM_NA_LO_K2_T1_END: ;;
643 ;;
644 DW 0 ;; Size of xlat table - null table
645 ;;
646COM_NA_LO_K2_END: ;;
647 ;;
648;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
649;; CODE PAGE: Common
650;; STATE: Non-Alpha Lower Case
651;; KEYBOARD TYPES: AT
652;; TABLE TYPE: Translate
653;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
654 ;;
655 DW COM_NA_LO_K3_END-$ ;; length of state section
656 DB NON_ALPHA_LOWER ;; State ID
657 DW AT_KB ;; Keyboard Type
658 DB -1,-1 ;; Buffer entry for error character
659 ;;
660 DW COM_NA_LO_K3_T1_END-$ ;; Size of xlat table
661 DB STANDARD_TABLE ;; xlat options:
662 DB 4 ;; number of entries
663 DB 12,"+" ;; +
664 DB 41,"<" ;; <
665 DB 43,"'" ;; '
666 DB 53,"-" ;; -
667COM_NA_LO_K3_T1_END: ;;
668 ;;
669 DW 0 ;; Size of xlat table - null table
670 ;;
671COM_NA_LO_K3_END: ;;
672 ;;
673;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
674;; CODE PAGE: Common
675;; STATE: Non-Alpha Upper Case
676;; KEYBOARD TYPES: G + P12
677;; TABLE TYPE: Translate
678;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
679 ;;
680 DW COM_NA_UP_K1_END-$ ;; length of state section
681 DB NON_ALPHA_UPPER ;; State ID
682 DW G_KB+P12_KB ;; Keyboard Type
683 DB -1,-1 ;; Buffer entry for error character
684 ;;
685 DW COM_NA_UP_K1_T1_END-$ ;; Size of xlat table
686 DB STANDARD_TABLE ;; xlat options:
687 DB 12 ;; number of entries
688 DB 3,'"' ;;
689 DB 7,'&' ;;
690 DB 8,'/' ;;
691 DB 9,'(' ;;
692 DB 10,')' ;;
693 DB 11,'=' ;;
694 DB 12,'?' ;;
695 DB 51,';' ;;
696 DB 52,':' ;;
697 DB 53,'_' ;;
698 DB 43,'*' ;;
699 DB 86,'>' ;;
700COM_NA_UP_K1_T1_END: ;;
701 ;;
702 DW 0 ;; Size of xlat table - null table
703 ;;
704COM_NA_UP_K1_END: ;;
705 ;;
706 ;;
707;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
708;; CODE PAGE: Common
709;; STATE: Non-Alpha Upper Case
710;; KEYBOARD TYPES: XT +
711;; TABLE TYPE: Translate
712;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
713 ;;
714 DW COM_NA_UP_K2_END-$ ;; length of state section
715 DB NON_ALPHA_UPPER ;; State ID
716 DW XT_KB ;; Keyboard Type
717 DB -1,-1 ;; Buffer entry for error character
718 ;;
719 DW COM_NA_UP_K2_T1_END-$ ;; Size of xlat table
720 DB STANDARD_TABLE ;; xlat options:
721 DB 12 ;; number of entries
722 DB 3,'"' ;;
723 DB 7,'&' ;;
724 DB 8,'/' ;;
725 DB 9,'(' ;;
726 DB 10,')' ;;
727 DB 11,'=' ;;
728 DB 12,'?' ;;
729 DB 51,';' ;;
730 DB 52,':' ;;
731 DB 53,'_' ;;
732 DB 41,'*' ;;
733 DB 43,'>' ;;
734COM_NA_UP_K2_T1_END: ;;
735 ;;
736 DW 0 ;; Size of xlat table - null table
737 ;;
738COM_NA_UP_K2_END: ;;
739 ;;
740 ;;
741;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
742;; CODE PAGE: Common
743;; STATE: Non-Alpha Upper Case
744;; KEYBOARD TYPES: AT
745;; TABLE TYPE: Translate
746;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
747 ;;
748 DW COM_NA_UP_K3_END-$ ;; length of state section
749 DB NON_ALPHA_UPPER ;; State ID
750 DW AT_KB ;; Keyboard Type
751 DB -1,-1 ;; Buffer entry for error character
752 ;;
753 DW COM_NA_UP_K3_T1_END-$ ;; Size of xlat table
754 DB STANDARD_TABLE ;; xlat options:
755 DB 12 ;; number of entries
756 DB 3,'"' ;;
757 DB 7,'&' ;;
758 DB 8,'/' ;;
759 DB 9,'(' ;;
760 DB 10,')' ;;
761 DB 11,'=' ;;
762 DB 12,'?' ;;
763 DB 51,';' ;;
764 DB 52,':' ;;
765 DB 53,'_' ;;
766 DB 41,'>' ;;
767 DB 43,'*' ;;
768COM_NA_UP_K3_T1_END: ;;
769 ;;
770 DW 0 ;; Size of xlat table - null table
771 ;;
772COM_NA_UP_K3_END: ;;
773 ;;
774 ;;
775;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
776;; CODE PAGE: Common
777;; STATE: Third Shift
778;; KEYBOARD TYPES: G, P12
779;; TABLE TYPE: Translate
780;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
781 ;;
782 DW COM_THIRD_END-$ ;; length of state section
783 DB THIRD_SHIFT ;; State ID
784 DW G_KB+P12_KB ;; Keyboard Type FERRARI
785 DB -1,-1 ;; Buffer entry for error character
786 ;;
787 DW COM_THIRD_T1_END-$ ;; Size of xlat table
788 DB STANDARD_TABLE ;; xlat options:
789 DB 9 ;; number of entries
790 DB 3,'@' ;;
791 DB 4,09CH ;;
792 DB 5,'$' ;;
793 DB 8,'{' ;;
794 DB 9,'[' ;;
795 DB 10,']' ;;
796 DB 11,'}' ;;
797 DB 13,'|' ;; Broken Vertical Line
798 DB 86,'\' ;;
799COM_THIRD_T1_END: ;;
800 ;;
801 DW 0 ;; Last xlat table
802COM_THIRD_END: ;;
803 ;;
804;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
805;; CODE PAGE: Common
806;; STATE: Third Shift (ALTERNATE)
807;; KEYBOARD TYPES: XT,
808;; TABLE TYPE: Translate
809;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
810 ;;
811 DW COM_THIRD_K1_END-$ ;; length of state section
812 DB THIRD_SHIFT ;; State ID
813 DW XT_KB ;; Keyboard Type
814 DB -1,-1 ;; Buffer entry for error character
815 ;;
816 DW COM_THIRD_K1_T1_END-$ ;; Size of xlat table
817 DB TYPE_2_TAB ;; xlat options:
818 DB 9 ;; number of entries
819 DB 12,'-','-' ;;
820 DB 13,'=','=' ;;
821 DB 26,'[','[' ;;
822 DB 27,']',']' ;;
823 DB 39,';',';' ;;
824 DB 40,027H,027H ;;
825 DB 41,060H,060H ;;
826 DB 43,'\','\' ;;
827 DB 53,'/','/' ;;
828COM_THIRD_K1_T1_END: ;;
829 ;;
830 DW 0 ;; Last xlat table
831COM_THIRD_K1_END: ;;
832 ;;
833;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
834;; CODE PAGE: Common
835;; STATE: Third Shift (ALTERNATE)
836;; KEYBOARD TYPES: AT
837;; TABLE TYPE: Translate
838;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
839 ;;
840 DW COM_THIRD_K2_END-$ ;; length of state section
841 DB THIRD_SHIFT ;; State ID
842 DW AT_KB ;; Keyboard Type
843 DB -1,-1 ;; Buffer entry for error character
844 ;;
845 DW COM_THIRD_K2_T1_END-$ ;; Size of xlat table
846 DB TYPE_2_TAB ;; xlat options:
847 DB 9 ;; number of entries
848 DB 12,'-','-' ;;
849 DB 13,'=','=' ;;
850 DB 26,'[','[' ;;
851 DB 27,']',']' ;;
852 DB 39,';',';' ;;
853 DB 40,027H,027H ;;
854 DB 41,'\','\' ;;
855 DB 43,060H,060H ;;
856 DB 53,'/','/' ;;
857COM_THIRD_K2_T1_END: ;;
858 ;;
859 DW 0 ;; Last xlat table
860COM_THIRD_K2_END: ;;
861 ;;
862;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
863;; CODE PAGE: Common
864;; STATE: Fourth Shift (ALTERNATE+SHIFT)
865;; KEYBOARD TYPES: XT,
866;; TABLE TYPE: Translate
867;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
868 ;;
869 DW COM_FOURTH_END-$ ;; length of state section
870 DB FOURTH_SHIFT ;; State ID
871 DW XT_KB ;; Keyboard Type
872 DB -1,-1 ;; Buffer entry for error character
873 ;;
874 DW COM_FOURTH_T1_END-$ ;; Size of xlat table
875 DB TYPE_2_TAB ;; xlat options:
876 DB 18 ;; number of entries
877 DB 3,'@','@' ;;
878 DB 5,'$','$' ;;
879 DB 7,'^','^' ;;
880 DB 8,'&','&' ;;
881 DB 9,'*','*' ;;
882 DB 10,'(','(' ;;
883 DB 11,')',')' ;;
884 DB 12,'_','_' ;;
885 DB 13,'+','+' ;;
886 DB 26,'{','{' ;;
887 DB 27,'}','}' ;;
888 DB 39,':',':' ;;
889 DB 40,'"','"' ;;
890 DB 41,'~','~' ;;
891 DB 43,'|','|' ;;
892 DB 51,'<','<' ;;
893 DB 52,'>','>' ;;
894 DB 53,'?','?' ;;
895COM_FOURTH_T1_END: ;;
896 ;;
897 DW 0 ;; Last xlat table
898COM_FOURTH_END: ;;
899 ;;
900;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
901;; CODE PAGE: Common
902;; STATE: Fourth Shift (ALTERNATE+SHIFT)
903;; KEYBOARD TYPES: AT
904;; TABLE TYPE: Translate
905;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
906 ;;
907 DW COM_FOURTH_K1_END-$ ;; length of state section
908 DB FOURTH_SHIFT ;; State ID
909 DW AT_KB ;; Keyboard Type
910 DB -1,-1 ;; Buffer entry for error character
911 ;;
912 DW COM_FOURTH_K1_T1_END-$ ;; Size of xlat table
913 DB TYPE_2_TAB ;; xlat options:
914 DB 18 ;; number of entries
915 DB 3,'@','@' ;;
916 DB 5,'$','$' ;;
917 DB 7,'^','^' ;;
918 DB 8,'&','&' ;;
919 DB 9,'*','*' ;;
920 DB 10,'(','(' ;;
921 DB 11,')',')' ;;
922 DB 12,'_','_' ;;
923 DB 13,'+','+' ;;
924 DB 26,'{','{' ;;
925 DB 27,'}','}' ;;
926 DB 39,':',':' ;;
927 DB 40,'"','"' ;;
928 DB 41,'|','|' ;;
929 DB 43,'~','~' ;;
930 DB 51,'<','<' ;;
931 DB 52,'>','>' ;;
932 DB 53,'?','?' ;;
933COM_FOURTH_K1_T1_END: ;;
934 ;;
935 DW 0 ;; Last xlat table
936COM_FOURTH_K1_END: ;;
937 ;;
938;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
939;; CODE PAGE: Common
940;; STATE: Grave Lower
941;; KEYBOARD TYPES: All
942;; TABLE TYPE: Translate
943;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
944 ;;
945 DW COM_GR_LO_END-$ ;; length of state section
946 DB GRAVE_LOWER ;; State ID
947 DW ANY_KB ;; Keyboard Type
948 DB 96,0 ;; error character = standalone accent
949 ;;
950 DW COM_GR_LO_T1_END-$ ;; Size of xlat table
951 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
952 DB 5 ;; number of scans
953 DB 18,'' ;; scan code,ASCII - e
954 DB 22,'' ;; scan code,ASCII - u
955 DB 23,'' ;; scan code,ASCII - i
956 DB 24,'' ;; scan code,ASCII - o
957 DB 30,'' ;; scan code,ASCII - a
958COM_GR_LO_T1_END: ;;
959 ;;
960 DW 0 ;; Size of xlat table - null table
961 ;;
962COM_GR_LO_END: ;; length of state section
963 ;;
964;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
965;; CODE PAGE: Common
966;; STATE: Grave Space Bar
967;; KEYBOARD TYPES: All
968;; TABLE TYPE: Translate
969;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
970 ;;
971 DW COM_GR_SP_END-$ ;; length of state section
972 DB GRAVE_SPACE ;; State ID
973 DW ANY_KB ;; Keyboard Type
974 DB 96,0 ;; error character = standalone accent
975 ;;
976 DW COM_GR_SP_T1_END-$ ;; Size of xlat table
977 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
978 DB 1 ;; number of scans
979 DB 57,96 ;; STANDALONE GRAVE
980COM_GR_SP_T1_END: ;;
981 ;;
982 DW 0 ;; Size of xlat table - null table
983 ;;
984COM_GR_SP_END: ;; length of state section
985 ;;
986;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
987;; CODE PAGE: Common
988;; STATE: Circumflex Lower
989;; KEYBOARD TYPES: All
990;; TABLE TYPE: Translate
991;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
992 ;;
993 DW COM_CI_LO_END-$ ;; length of state section
994 DB CIRCUMFLEX_LOWER ;; State ID
995 DW ANY_KB ;; Keyboard Type
996 DB 94,0 ;; error character = standalone accent
997 ;;
998 DW COM_CI_LO_T1_END-$ ;; Size of xlat table
999 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1000 DB 5 ;; number of scans
1001 DB 18,'' ;; scan code,ASCII - e
1002 DB 22,'' ;; scan code,ASCII - u
1003 DB 23,'' ;; scan code,ASCII - i
1004 DB 24,'' ;; scan code,ASCII - o
1005 DB 30,'' ;; scan code,ASCII - a
1006COM_CI_LO_T1_END: ;;
1007 ;;
1008 DW 0 ;;
1009 ;;
1010COM_CI_LO_END: ;;
1011 ;;
1012;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1013;; CODE PAGE: Common
1014;; STATE: Circumflex Space Bar
1015;; KEYBOARD TYPES: All
1016;; TABLE TYPE: Translate
1017;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1018 ;;
1019 DW COM_CI_SP_END-$ ;; length of state section
1020 DB CIRCUMFLEX_SPACE ;; State ID
1021 DW ANY_KB ;; Keyboard Type
1022 DB 94,0 ;; error character = standalone accent
1023 ;;
1024 DW COM_CI_SP_T1_END-$ ;; Size of xlat table
1025 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1026 DB 1 ;; number of scans
1027 DB 57,94 ;; STANDALONE CIRCUMFLEX
1028COM_CI_SP_T1_END: ;;
1029 ;;
1030 DW 0 ;; Size of xlat table - null table
1031 ;;
1032COM_CI_SP_END: ;; length of state section
1033 ;;
1034;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1035;; CODE PAGE: Common
1036;; STATE: Tilde Lower
1037;; KEYBOARD TYPES: All
1038;; TABLE TYPE: Translate
1039;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1040 ;;
1041 DW COM_TI_LO_END-$ ;; length of state section
1042 DB TILDE_LOWER ;; State ID
1043 DW ANY_KB ;; Keyboard Type
1044 DB 07EH,0 ;; error character = standalone accent
1045 ;;
1046 DW COM_TI_LO_T1_END-$ ;; Size of xlat table
1047 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1048 DB 1 ;; number of scans
1049 DB 49,0A4H ;; scan code,ASCII -
1050 COM_TI_LO_T1_END: ;;
1051 ;;
1052 DW 0 ;;
1053 ;;
1054 COM_TI_LO_END: ;;
1055 ;;
1056;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1057;;; CODE PAGE: Common
1058;;; STATE: Tilde Upper Case
1059;;; KEYBOARD TYPES: All
1060;;; TABLE TYPE: Translate
1061;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1062 ;;
1063 DW COM_TI_UP_END-$ ;; length of state section
1064 DB TILDE_UPPER ;; State ID
1065 DW ANY_KB ;; Keyboard Type
1066 DB 07EH,0 ;; error character = standalone accent
1067 ;;
1068 DW COM_TI_UP_T1_END-$ ;; Size of xlat table
1069 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1070 DB 1 ;; number of scans
1071 DB 49,0A5H ;; scan code,ASCII -
1072 COM_TI_UP_T1_END: ;;
1073 ;;
1074 DW 0 ;; Size of xlat table - null table
1075 ;;
1076 COM_TI_UP_END: ;; length of state section
1077 ;;
1078 ;;
1079;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1080;; CODE PAGE: Common
1081;; STATE: Tilde Space Bar
1082;; KEYBOARD TYPES: All
1083;; TABLE TYPE: Translate
1084;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1085 ;;
1086 DW COM_TI_SP_END-$ ;; length of state section
1087 DB TILDE_SPACE ;; State ID
1088 DW ANY_KB ;; Keyboard Type
1089 DB 07EH,0 ;; error character = standalone accent
1090 ;;
1091 DW COM_TI_SP_T1_END-$ ;; Size of xlat table
1092 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1093 DB 1 ;; number of scans
1094 DB 57,07EH ;; STANDALONE TILDE
1095COM_TI_SP_T1_END: ;;
1096 ;;
1097 DW 0 ;; Size of xlat table - null table
1098 ;;
1099COM_TI_SP_END: ;; length of state section
1100 ;;
1101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1102 DW 0 ;; Last State
1103COMMON_XLAT_END: ;;
1104 ;;
1105 ;;
1106 ;;
1107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1108;;***************************************
1109;; DK Specific Translate Section for 865
1110;;***************************************
1111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1112 ;;
1113 PUBLIC DK_865_XLAT ;;
1114DK_865_XLAT: ;;
1115 ;;
1116 DW CP865_XLAT_END-$ ;; length of section
1117 DW 865 ;;
1118 ;;
1119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1120;; CODE PAGE: 865
1121;; STATE: Non-Alpha Upper Case
1122;; KEYBOARD TYPES: XT, , AT
1123;; TABLE TYPE: Translate
1124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1125 ;;
1126 DW CP865_NA_UP_END-$ ;; length of state section
1127 DB NON_ALPHA_UPPER ;; State ID
1128 DW XT_KB+AT_KB ;; Keyboard Type
1129 DB -1,-1 ;; Buffer entry for error character
1130 ;;
1131 DW CP865_NA_UP_T1_END-$ ;; Size of xlat table
1132 DB STANDARD_TABLE ;; xlat options:
1133 DB 1 ;; number of entries
1134 DB 5,0AFH ;; International Currency Symb
1135CP865_NA_UP_T1_END: ;;
1136 ;;
1137 DW 0 ;; Size of xlat table - null table
1138 ;;
1139CP865_NA_UP_END: ;;
1140 ;;
1141;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1142;; CODE PAGE: 865
1143;; STATE: Non-Alpha Upper Case
1144;; KEYBOARD TYPES: G, P12
1145;; TABLE TYPE: Translate
1146;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1147 ;;
1148 DW CP865_NA_UP_K1_END-$ ;; length of state section
1149 DB NON_ALPHA_UPPER ;; State ID
1150 DW G_KB+P12_KB ;; Keyboard Type
1151 DB -1,-1 ;; Buffer entry for error character
1152 ;;
1153 DW CP865_NA_UP_K1_T1_END-$ ;; Size of xlat table
1154 DB STANDARD_TABLE ;; xlat options:
1155 DB 2 ;; number of entries
1156 DB 5,0AFH ;; International Currency Symb
1157 DB 41,015H ;; SECTION Symb
1158CP865_NA_UP_K1_T1_END: ;;
1159 ;;
1160 DW 0 ;; Size of xlat table - null table
1161 ;;
1162CP865_NA_UP_K1_END: ;;
1163 ;;
1164;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1165;; CODE PAGE: 865
1166;; STATE: Acute Lower Case
1167;; KEYBOARD TYPES: All
1168;; TABLE TYPE: Translate
1169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1170 ;;
1171 DW CP865_AC_LO_END-$ ;; length of state section
1172 DB ACUTE_LOWER ;; State ID
1173 DW ANY_KB ;; Keyboard Type
1174 DB 39,0 ;; error character = standalone accent
1175 ;;
1176 DW CP865_AC_LO_T1_END-$ ;; Size of xlat table
1177 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1178 DB 5 ;; number of scans
1179 DB 18,'' ;; scan code,ASCII - e
1180 DB 22,'' ;; scan code,ASCII - u
1181 DB 23,'' ;; scan code,ASCII - i
1182 DB 24,'' ;; scan code,ASCII - o
1183 DB 30,'' ;; scan code,ASCII - a
1184CP865_AC_LO_T1_END: ;;
1185 ;;
1186 DW 0 ;; Size of xlat table - null table
1187 ;;
1188CP865_AC_LO_END: ;;
1189 ;;
1190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1191;; CODE PAGE: 865
1192;; STATE: Acute Upper Case
1193;; KEYBOARD TYPES: All
1194;; TABLE TYPE: Translate
1195;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1196 ;;
1197 DW CP865_AC_UP_END-$ ;; length of state section
1198 DB ACUTE_UPPER ;; State ID
1199 DW ANY_KB ;; Keyboard Type
1200 DB 39,0 ;; error character = standalone accent
1201 ;;
1202 DW CP865_AC_UP_T1_END-$ ;; Size of xlat table
1203 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1204 DB 1 ;; number of entries
1205 DB 18,'' ;; scan code,ASCII -
1206CP865_AC_UP_T1_END: ;;
1207 ;;
1208 DW 0 ;; Size of xlat table - null table
1209 ;;
1210CP865_AC_UP_END: ;;
1211 ;;
1212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1213;; CODE PAGE: 865
1214;; STATE: Acute Space Bar
1215;; KEYBOARD TYPES: All
1216;; TABLE TYPE: Translate
1217;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1218 ;;
1219 DW CP865_AC_SP_END-$ ;; length of state section
1220 DB ACUTE_SPACE ;; State ID
1221 DW ANY_KB ;; Keyboard Type
1222 DB 39,0 ;; error character = standalone accent
1223 ;;
1224 DW CP865_AC_SP_T1_END-$ ;; Size of xlat table
1225 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1226 DB 1 ;; number of scans
1227 DB 57,39 ;; scan code,ASCII - SPACE
1228CP865_AC_SP_T1_END: ;;
1229 ;;
1230 DW 0 ;; Size of xlat table - null table
1231 ;;
1232CP865_AC_SP_END: ;;
1233 ;;
1234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1235;; CODE PAGE: CP865
1236;; STATE: Diaresis Lower Case
1237;; KEYBOARD TYPES: All
1238;; TABLE TYPE: Translate
1239;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1240 ;;
1241 DW CP865_DI_LO_END-$ ;; length of state section
1242 DB DIARESIS_LOWER ;; State ID
1243 DW ANY_KB ;; Keyboard Type
1244 DB 254,0 ;; error character = standalone accent
1245 ;;
1246 DW CP865_DI_LO_T1_END-$ ;; Size of xlat table
1247 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1248 DB 6 ;; number of scans
1249 DB 18,'' ;; scan code,ASCII - e
1250 DB 21,'' ;; scan code,ASCII - y
1251 DB 22,'' ;; scan code,ASCII - u
1252 DB 23,'' ;; scan code,ASCII - i
1253 DB 24,'' ;; scan code,ASCII - o
1254 DB 30,'' ;; scan code,ASCII - a
1255CP865_DI_LO_T1_END: ;;
1256 ;;
1257 DW 0 ;; Size of xlat table - null table
1258 ;;
1259CP865_DI_LO_END: ;; length of state section
1260 ;;
1261;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1262;; CODE PAGE: CP865
1263;; STATE: Diaresis Upper Case
1264;; KEYBOARD TYPES: All
1265;; TABLE TYPE: Translate
1266;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1267 ;;
1268 DW CP865_DI_UP_END-$ ;; length of state section
1269 DB DIARESIS_UPPER ;; State ID
1270 DW ANY_KB ;; Keyboard Type
1271 DB 254,0 ;; error character = standalone accent
1272 ;;
1273 DW CP865_DI_UP_T1_END-$ ;; Size of xlat table
1274 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1275 DB 3 ;; number of scans
1276 DB 22,'' ;; scan code,ASCII - U
1277 DB 24,'' ;; scan code,ASCII - O
1278 DB 30,'' ;; scan code,ASCII - A
1279CP865_DI_UP_T1_END: ;;
1280 ;;
1281 DW 0 ;; Size of xlat table - null table
1282 ;;
1283CP865_DI_UP_END: ;; length of state section
1284 ;;
1285 ;;
1286;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1287;; CODE PAGE: 865
1288;; STATE: Diaresis Space Bar
1289;; KEYBOARD TYPES: All
1290;; TABLE TYPE: Translate
1291;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1292; ;;
1293; DW CP865_DI_SP_END-$ ;; length of state section
1294; DB DIARESIS_SPACE ;; State ID
1295; DW ANY_KB ;; Keyboard Type
1296; DB 254,0 ;; error character = standalone accent
1297; ;;
1298; DW CP865_DI_SP_T1_END-$ ;; Size of xlat table
1299; DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1300; DB 1 ;; number of scans
1301; DB 57,254 ;; error character = standalone accent
1302;CP865_DI_SP_T1_END: ;;
1303; ;;
1304; DW 0 ;; Size of xlat table - null table
1305;CP865_DI_SP_END: ;; length of state section
1306; ;;
1307;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1308 ;;
1309 DW 0 ;; LAST STATE
1310 ;;
1311CP865_XLAT_END: ;;
1312 ;;
1313;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1314;;***************************************
1315;; DK Specific Translate Section for 850
1316;;***************************************
1317;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1318 ;;
1319 PUBLIC DK_850_XLAT ;;
1320DK_850_XLAT: ;;
1321 ;;
1322 DW CP850_XLAT_END-$ ;; length of section
1323 DW 850 ;;
1324 ;;
1325 ;;
1326;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1327;; CODE PAGE: 850
1328;; STATE: Non-Alpha Upper Case
1329;; KEYBOARD TYPES: XT, , AT
1330;; TABLE TYPE: Translate
1331;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1332 ;;
1333 DW CP850_NA_UP_END-$ ;; length of state section
1334 DB NON_ALPHA_UPPER ;; State ID
1335 DW XT_KB+AT_KB ;; Keyboard Type
1336 DB -1,-1 ;; Buffer entry for error character
1337 ;;
1338 DW CP850_NA_UP_T1_END-$ ;; Size of xlat table
1339 DB STANDARD_TABLE ;; xlat options:
1340 DB 1 ;; number of entries
1341 DB 5,0CFH ;; International Currency Symb
1342CP850_NA_UP_T1_END: ;;
1343 ;;
1344 DW 0 ;; Size of xlat table - null table
1345 ;;
1346CP850_NA_UP_END: ;;
1347 ;;
1348 ;;
1349;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1350;; CODE PAGE: 850
1351;; STATE: Non-Alpha Upper Case
1352;; KEYBOARD TYPES: G, P12
1353;; TABLE TYPE: Translate
1354;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1355 ;;
1356 DW CP850_NA_UP_K1_END-$ ;; length of state section
1357 DB NON_ALPHA_UPPER ;; State ID
1358 DW G_KB+P12_KB ;; Keyboard Type
1359 DB -1,-1 ;; Buffer entry for error character
1360 ;;
1361 DW CP850_NA_UP_K1_T1_END-$ ;; Size of xlat table
1362 DB STANDARD_TABLE ;; xlat options:
1363 DB 2 ;; number of entries
1364 DB 5,0CFH ;; International Currency Symb
1365 DB 41,0F5H ;; SECTION Symb
1366CP850_NA_UP_K1_T1_END: ;;
1367 ;;
1368 DW 0 ;; Size of xlat table - null table
1369 ;;
1370CP850_NA_UP_K1_END: ;;
1371 ;;
1372;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1373;; CODE PAGE: 850
1374;; STATE: Acute Lower Case
1375;; KEYBOARD TYPES: All
1376;; TABLE TYPE: Translate
1377;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1378 ;;
1379 DW CP850_AC_LO_END-$ ;; length of state section
1380 DB ACUTE_LOWER ;; State ID
1381 DW ANY_KB ;; Keyboard Type
1382 DB 239,0 ;; error character = standalone accent
1383 ;;
1384 DW CP850_AC_LO_T1_END-$ ;; Size of xlat table
1385 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1386 DB 6 ;; number of scans
1387 DB 18,'' ;; scan code,ASCII - e
1388 DB 21,0ECH ;; y acute
1389 DB 22,'' ;; scan code,ASCII - u
1390 DB 23,'' ;; scan code,ASCII - i
1391 DB 24,'' ;; scan code,ASCII - o
1392 DB 30,'' ;; scan code,ASCII - a
1393CP850_AC_LO_T1_END: ;;
1394 ;;
1395 DW 0 ;; Size of xlat table - null table
1396 ;;
1397CP850_AC_LO_END: ;;
1398 ;;
1399;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1400;; CODE PAGE: 850
1401;; STATE: Acute Upper Case
1402;; KEYBOARD TYPES: All
1403;; TABLE TYPE: Translate
1404;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1405 ;;
1406 DW CP850_AC_UP_END-$ ;; length of state section
1407 DB ACUTE_UPPER ;; State ID
1408 DW ANY_KB ;; Keyboard Type
1409 DB 239,0 ;; error character = standalone accent
1410 ;;
1411 DW CP850_AC_UP_T1_END-$ ;; Size of xlat table
1412 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1413 DB 6 ;; number of entries
1414 DB 18,090H ;; E acute
1415 DB 21,0EDH ;; Y acute
1416 DB 22,0E9H ;; U acute
1417 DB 23,0D6H ;; I acute
1418 DB 24,0E0H ;; O acute
1419 DB 30,0B5H ;; A acute
1420CP850_AC_UP_T1_END: ;;
1421 ;;
1422 DW 0 ;; Size of xlat table - null table
1423 ;;
1424CP850_AC_UP_END: ;;
1425 ;;
1426;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1427;; CODE PAGE: 850
1428;; STATE: Acute Space Bar
1429;; KEYBOARD TYPES: All
1430;; TABLE TYPE: Translate
1431;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1432 ;;
1433 DW CP850_AC_SP_END-$ ;; length of state section
1434 DB ACUTE_SPACE ;; State ID
1435 DW ANY_KB ;; Keyboard Type
1436 DB 239,0 ;; error character = standalone accent
1437 ;;
1438 DW CP850_AC_SP_T1_END-$ ;; Size of xlat table
1439 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1440 DB 1 ;; number of scans
1441 DB 57,239 ;; scan code,ASCII - SPACE
1442CP850_AC_SP_T1_END: ;;
1443 ;;
1444 DW 0 ;; Size of xlat table - null table
1445 ;;
1446CP850_AC_SP_END: ;;
1447 ;;
1448;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1449;; CODE PAGE: 850
1450;; STATE: Diaresis Lower Case
1451;; KEYBOARD TYPES: All
1452;; TABLE TYPE: Translate
1453;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1454 ;;
1455 DW CP850_DI_LO_END-$ ;; length of state section
1456 DB DIARESIS_LOWER ;; State ID
1457 DW ANY_KB ;; Keyboard Type
1458 DB 249,0 ;; error character = standalone accent
1459 ;;
1460 DW CP850_DI_LO_T1_END-$ ;; Size of xlat table
1461 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1462 DB 6 ;; number of scans
1463 DB 18,'' ;; scan code,ASCII - e
1464 DB 21,'' ;; scan code,ASCII - y
1465 DB 22,'' ;; scan code,ASCII - u
1466 DB 23,'' ;; scan code,ASCII - i
1467 DB 24,'' ;; scan code,ASCII - o
1468 DB 30,'' ;; scan code,ASCII - a
1469CP850_DI_LO_T1_END: ;;
1470 ;;
1471 DW 0 ;; Size of xlat table - null table
1472 ;;
1473CP850_DI_LO_END: ;; length of state section
1474 ;;
1475;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1476;; CODE PAGE: 850
1477;; STATE: Diaresis Upper Case
1478;; KEYBOARD TYPES: All
1479;; TABLE TYPE: Translate
1480;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1481 ;;
1482 DW CP850_DI_UP_END-$ ;; length of state section
1483 DB DIARESIS_UPPER ;; State ID
1484 DW ANY_KB ;; Keyboard Type
1485 DB 249,0 ;; error character = standalone accent
1486 ;;
1487 DW CP850_DI_UP_T1_END-$ ;; Size of xlat table
1488 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1489 DB 5 ;; number of scans
1490 DB 18,0D3H ;; E Diaeresis
1491 DB 22,'' ;; U Diaeresis
1492 DB 23,0D8H ;; I Diaeresis
1493 DB 24,'' ;; O Diaeresis
1494 DB 30,'' ;; A Diaeresis
1495CP850_DI_UP_T1_END: ;;
1496 ;;
1497 DW 0 ;; Size of xlat table - null table
1498 ;;
1499CP850_DI_UP_END: ;; length of state section
1500 ;;
1501 ;;
1502;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1503;; CODE PAGE: 850
1504;; STATE: Diaresis Space Bar
1505;; KEYBOARD TYPES: All
1506;; TABLE TYPE: Translate
1507;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1508 ;;
1509 DW CP850_DI_SP_END-$ ;; length of state section
1510 DB DIARESIS_SPACE ;; State ID
1511 DW ANY_KB ;; Keyboard Type
1512 DB 249,0 ;; error character = standalone accent
1513 ;;
1514 DW CP850_DI_SP_T1_END-$ ;; Size of xlat table
1515 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1516 DB 1 ;; number of scans
1517 DB 57,249 ;; error character = standalone accent
1518CP850_DI_SP_T1_END: ;;
1519 ;;
1520 DW 0 ;; Size of xlat table - null table
1521CP850_DI_SP_END: ;; length of state section
1522 ;;
1523;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1524;; CODE PAGE: 850
1525;; STATE: Grave Upper
1526;; KEYBOARD TYPES: All
1527;; TABLE TYPE: Translate
1528;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1529 ;;
1530 DW CP850_GR_UP_END-$ ;; length of state section
1531 DB GRAVE_UPPER ;; State ID
1532 DW ANY_KB ;; Keyboard Type
1533 DB 96,0 ;; error character = standalone accent
1534 ;;
1535 DW CP850_GR_UP_T1_END-$ ;; Size of xlat table
1536 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1537 DB 5 ;; number of scans
1538 DB 18,0D4H ;; E grave
1539 DB 22,0EBH ;; U grave
1540 DB 23,0DEH ;; I grave
1541 DB 24,0E3H ;; O grave
1542 DB 30,0B7H ;; A grave
1543CP850_GR_UP_T1_END: ;;
1544 ;;
1545 DW 0 ;; Size of xlat table - null table
1546 ;;
1547CP850_GR_UP_END: ;; length of state section
1548 ;;
1549;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1550;; CODE PAGE: 850
1551;; STATE: Tilde Lower
1552;; KEYBOARD TYPES: All
1553;; TABLE TYPE: Translate
1554;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1555 ;;
1556 DW CP850_TI_LO_END-$ ;; length of state section
1557 DB TILDE_LOWER ;; State ID
1558 DW ANY_KB ;; Keyboard Type
1559 DB 07EH,0 ;; error character = standalone accent
1560 ;;
1561 DW CP850_TI_LO_T1_END-$ ;; Size of xlat table
1562 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1563 DB 2 ;; number of scans
1564 DB 24,0E4H ;; scan code,ASCII - o tilde
1565 DB 30,0C6H ;; scan code,ASCII - a tilde
1566 CP850_TI_LO_T1_END: ;;
1567 ;;
1568 DW 0 ;;
1569 ;;
1570 CP850_TI_LO_END: ;;
1571 ;;
1572;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1573;;; CODE PAGE: 850
1574;;; STATE: Tilde Upper Case
1575;;; KEYBOARD TYPES: All
1576;;; TABLE TYPE: Translate
1577;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1578 ;;
1579 DW CP850_TI_UP_END-$ ;; length of state section
1580 DB TILDE_UPPER ;; State ID
1581 DW ANY_KB ;; Keyboard Type
1582 DB 07EH,0 ;; error character = standalone accent
1583 ;;
1584 DW CP850_TI_UP_T1_END-$ ;; Size of xlat table
1585 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1586 DB 2 ;; number of scans
1587 DB 24,0E5H ;; scan code,ASCII - O tilde
1588 DB 30,0C7H ;; scan code,ASCII - A tilde
1589 CP850_TI_UP_T1_END: ;;
1590 ;;
1591 DW 0 ;; Size of xlat table - null table
1592 ;;
1593 CP850_TI_UP_END: ;; length of state section
1594 ;;
1595 ;;
1596;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1597;; CODE PAGE: 850
1598;; STATE: Circumflex Upper
1599;; KEYBOARD TYPES: All
1600;; TABLE TYPE: Translate
1601;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1602 ;;
1603 DW CP850_CI_UP_END-$ ;; length of state section
1604 DB CIRCUMFLEX_UPPER ;; State ID
1605 DW ANY_KB ;; Keyboard Type
1606 DB 94,0 ;; error character = standalone accent
1607 ;;
1608 DW CP850_CI_UP_T1_END-$ ;; Size of xlat table
1609 DB STANDARD_TABLE+ZERO_SCAN ;; xlat options:
1610 DB 5 ;; number of scans
1611 DB 18,0D2H ;; E circumflex
1612 DB 22,0EAH ;; U circumflex
1613 DB 23,0D7H ;; I circumflex
1614 DB 24,0E2H ;; O circumflex
1615 DB 30,0B6H ;; A circumflex
1616CP850_CI_UP_T1_END: ;;
1617 ;;
1618 DW 0 ;; Size of xlat table - null table
1619 ;;
1620CP850_CI_UP_END: ;; length of state section
1621 ;;
1622;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1623 ;;
1624 DW 0 ;; LAST STATE
1625 ;;
1626CP850_XLAT_END: ;;
1627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1628 ;;
1629CODE ENDS ;;
1630 END ;;
1631