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

wirehaze git hosting

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