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