]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/DEV/KEYBOARD/KDFFR189.ASM

wirehaze git hosting

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