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