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