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