#ident	"@(#)eac:i386/eaccmd/mapchan/ibm	1.1.1.1"
#ident  "$Header: $"
#
#	@(#) ibm 22.1 89/11/14 
#
#	Copyright (C) The Santa Cruz Operation, 1985, 1986, 1987, 1988.
#	This Module contains Proprietary Information of
#	The Santa Cruz Operation and Microsoft Corportation
#	and should be treated as Confidential.
#

# SCO Mapchan File
#
# The descriptions in this file are provided for informational
# purposes only, and are intended for the exclusive use of the
# clients, customers, and licensees of The Santa Cruz Operation,
# Inc.  The Santa Cruz Operation does not warrant the correctness
# or suitability for any purpose of any information contained
# herein.

# This map file is for console and other devices using the IBM PC
# character set.
#
# Dead keys are implemented using codes for graphics characters which
# would otherwise not be generated from the keyboard.
#

input
0x80	0xc7	# C cedilla
0x81	0xfc	# u umlaut
0x82	0xe9	# e acute
0x83	0xe2	# a circumflex
0x84	0xe4	# a umlaut
0x85	0xe0	# a grave
0x86	0xe5	# a ring
0x87	0xe7	# c cedilla
0x88	0xea	# e circumflex
0x89	0xeb	# e umlaut
0x8a	0xe8	# e grave
0x8b	0xef	# i umlaut
0x8c	0xee	# i circumflex
0x8d	0xec	# i grave
0x8e	0xc4	# A umlaut
0x8f	0xc5	# A ring
0x90	0xc9	# E acute
0x91	0xe6	# ae ligature
0x92	0xc6	# AE ligature
0x93	0xf4	# o circumflex
0x94	0xf6	# o umlaut
0x95	0xf2	# o grave
0x96	0xfb	# u circumflex
0x97	0xf9	# u grave
0x98	0xff	# y umlaut (ij ligature)
0x99	0xd6	# O umlaut
0x9a	0xdc	# U umlaut
0x9c	0xa3	# pound sign
0x9d	0xa5	# yen sign
0xa0	0xe1	# a acute
0xa1	0xed	# i acute
0xa2	0xf3	# o acute
0xa3	0xfa	# u acute
0xa4	0xf1	# n tilde
0xa5	0xd1	# N tilde
0xa6	0xaa	# feminine ordinal indicator
0xa7	0xba	# masculine ordinal indicator
0xa8	0xbf	# inverted ?
0xaa	0xac	# not sign
0xab	0xbd	# fraction one-half
0xac	0xbc	# fraction one-quarter
0xad	0xa1	# inverted !
0xae	0xab	# angle quotation mark left
0xaf	0xbb	# angle quotation mark right
0xb2	0xa7	# 0xb2 used for section symbol to avoid clash with ^U
0xe1	0xdf	# sharp ss
0xe6	0xb5	# micro sign
0xed	0xd8	# O slash
0xf1	0xb1	# plus/minus sign
0xf6	0xf7	# divide operator
0xf8	0xb0	# degree sign
0xfa	0xb7	# middle dot
0xfd	0xb2	# superscript 2

output
0xa0	' '	# no break space
0xa1	0xad	# inverted !
0xa2	0x1b '[' '1' '5' '5' 'g'	# cent sign
0xa3	0x9c	# pound sign
0xa4	0x1b '[' '1' '5' 'g'	# currency sign
0xa5	0x9d	# yen sign
0xa6	'|'	# broken bar (approximation)
0xa7	0x1b '[' '2' '1' 'g'	# section sign
0xa8	'"'	# diaresis (approximation)
0xa9	'c'	# copyright sign (approximation)
0xaa	0xa6	# feminine ordinal indicator
0xab	0xae	# angle quotation mark left
0xac	0xaa	# not sign
0xad	'-'	# soft hyphen
0xae	'r'	# registered trade mark (approximation)
0xaf	0x1b '[' '2' '9' 'g'	# macron
0xb0	0xf8	# degree sign
0xb1	0xf1	# plus/minus sign
0xb2	0xfd	# superscript 2
0xb3	'3'	# superscript 3 (approximation)
0xb4	39	# acute accent (approximation)
0xb5	0xe6	# micro sign
0xb6	0x1b '[' '2' '0' 'g'	# paragraph sign
0xb7	0xfa	# middle dot
0xb8	','	# cedilla (approximation)
0xb9	'1'	# superscript 1 (approximation)
0xba	0xa7	# masculine ordinal indicator
0xbb	0xaf	# angle quotation mark right
0xbc	0xac	# fraction one-quarter
0xbd	0xab	# fraction one-half
0xbe	'/'	# fraction three-quarter (approximation)
0xbf	0xa8	# inverted ?
0xc0	'A'	# A grave (approximation)
0xc1	'A'	# A acute (approximation)
0xc2	'A'	# A circumflex (approximation)
0xc3	'A'	# A tilde (approximation)
0xc4	0x8e	# A umlaut
0xc5	0x8f	# A ring
0xc6	0x92	# AE ligature
0xc7	0x80	# C cedilla
0xc8	'E'	# E grave (approximation)
0xc9	0x90	# E acute
0xca	'E'	# E circumflex (approximation)
0xcb	'E'	# E umlaut (approximation)
0xcc	'I'	# I grave (approximation)
0xcd	'I'	# I acute (approximation)
0xce	'I'	# I circumflex (approximation)
0xcf	'I'	# I umlaut (approximation)
0xd0	0xe9	# capital Icelandic eth (approximation)
0xd1	0xa5	# N tilde
0xd2	'O'	# O grave (approximation)
0xd3	'O'	# O acute (approximation)
0xd4	'O'	# O circumflex (approximation)
0xd5	'O'	# O tilde (approximation)
0xd6	0x99	# O umlaut
0xd7	'x'	# multiply operator (approximation)
0xd8	0xed	# O slash
0xd9	'U'	# U grave (approximation)
0xda	'U'	# U acute (approximation)
0xdb	'U'	# U circumflex (approximation)
0xdc	0x9a	# U umlaut
0xdd	'Y'	# Y acute (approximation)
0xde	0x9e	# capital Icelandic thorn (approximation)
0xdf	0xe1	# sharp ss
0xe0	0x85	# a grave
0xe1	0xa0	# a acute
0xe2	0x83	# a circumflex
0xe3	'a'	# a tilde (approximation)
0xe4	0x84	# a umlaut
0xe5	0x86	# a ring
0xe6	0x91	# ae ligature
0xe7	0x87	# c cedilla
0xe8	0x8a	# e grave
0xe9	0x82	# e acute
0xea	0x88	# e circumflex
0xeb	0x89	# e umlaut
0xec	0x8d	# i grave
0xed	0xa1	# i acute
0xee	0x8c	# i circumflex
0xef	0x8b	# i umlaut
0xf0	0xeb	# lowercase Icelandic eth (approximation)
0xf1	0xa4	# n tilde
0xf2	0x95	# o grave
0xf3	0xa2	# o acute
0xf4	0x93	# o circumflex
0xf5	'o'	# o tilde (approximation)
0xf6	0x94	# o umlaut
0xf7	0xf6	# divide operator
0xf8	0xed	# o slash (approximation)
0xf9	0x97	# u grave
0xfa	0xa3	# u acute
0xfb	0x96	# u circumflex
0xfc	0x81	# u umlaut
0xfd	'y'	# y acute (approximation)
0xfe	0xe8	# lowercase Icelandic thorn (approximation)
0xff	0x98	# y umlaut (ij ligature)

dead 0xb0	# circumflex dead key
' '	'^'	# caret
0xb0	'^'	# caret
'A'	0xc2	# A circumflex
'E'	0xca	# E circumflex
'I'	0xce	# I circumflex
'O'	0xd4	# O circumflex
'U'	0xdb	# U circumflex
'a'	0xe2	# a circumflex
'e'	0xea	# e circumflex
'i'	0xee	# i circumflex
'o'	0xf4	# o circumflex
'u'	0xfb	# u circumflex

dead 0xb1	# umlaut dead key
' '	0xa8	# diaresis
0xb1	0xa8	# diaresis
'A'	0xc4	# A umlaut
'E'	0xcb	# E umlaut
'I'	0xcf	# I umlaut
'O'	0xd6	# O umlaut
'U'	0xdc	# U umlaut
'a'	0xe4	# a umlaut
'e'	0xeb	# e umlaut
'i'	0xef	# i umlaut
'o'	0xf6	# o umlaut
'u'	0xfc	# u umlaut
'y'	0xff	# y umlaut (ij ligature)

dead 0xb3	# acute accent dead key
' '	0xb4	# acute accent
0xb3	0xb4	# acute accent
'A'	0xc1	# A acute
'E'	0xc9	# E acute
'I'	0xcd	# I acute
'O'	0xd3	# O acute
'U'	0xda	# U acute
'Y'	0xdd	# Y acute
'a'	0xe1	# a acute
'e'	0xe9	# e acute
'i'	0xed	# i acute
'o'	0xf3	# o acute
'u'	0xfa	# u acute
'y'	0xfd	# y acute

dead 0xb4	# grave accent dead key
' '	'`'	# backquote (grave accent)
0xb4	'`'	# backquote (grave accent)
'A'	0xc0	# A grave
'E'	0xc8	# E grave
'I'	0xcc	# I grave
'O'	0xd2	# O grave
'U'	0xd9	# U grave
'a'	0xe0	# a grave
'e'	0xe8	# e grave
'i'	0xec	# i grave
'o'	0xf2	# o grave
'u'	0xf9	# u grave

compose 0x1f	# ^_ (control underscore)

'+' '+' '#'     # hash
'S' '/' '$'     # dollar sign
'S' '|' '$'     # dollar sign
's' '/' '$'     # dollar sign
's' '|' '$'     # dollar sign
'A' 'A' '@'     # at sign
'a' 'a' '@'     # at sign
'(' '(' '['     # open square bracket
'/' '/' 92      # backslash
')' ')' ']'     # close square bracket
'>' '<' '^'     # caret
39 '<'  '`'     # backquote (grave accent)
'(' '-' '{'     # open curly brace
'/' '<' '|'     # vertical bar (pipe)
'/' '^' '|'     # vertical bar (pipe)
')' '-' '}'     # close curly brace
'=' '=' '~'     # tilde
'_' '_' 0x1f    # ^_ (control underscore)
' ' ' ' 0xa0    # no break space
'!' '!' 0xa1    # inverted !
'C' '/' 0xa2    # cent sign
'C' '|' 0xa2    # cent sign
'c' '/' 0xa2    # cent sign
'c' '|' 0xa2    # cent sign
'L' '-' 0xa3    # pound sign
'L' '=' 0xa3    # pound sign
'l' '-' 0xa3    # pound sign
'l' '=' 0xa3    # pound sign
'X' 'O' 0xa4    # currency sign
'x' 'o' 0xa4    # currency sign
'Y' '-' 0xa5    # yen sign
'Y' '=' 0xa5    # yen sign
'y' '-' 0xa5    # yen sign
'y' '=' 0xa5    # yen sign
'/' '!' 0xa6    # broken bar
'|' '/' 0xa6    # broken bar
'|' '|' 0xa6    # broken bar
'S' '!' 0xa7    # section sign
'S' 'O' 0xa7    # section sign
's' '!' 0xa7    # section sign
's' 'o' 0xa7    # section sign
'.' '.' 0xa8    # diaresis
'C' 'O' 0xa9    # copyright sign
'c' 'o' 0xa9    # copyright sign
'A' '-' 0xaa    # feminine ordinal indicator
'A' '_' 0xaa    # feminine ordinal indicator
'a' '-' 0xaa    # feminine ordinal indicator
'a' '_' 0xaa    # feminine ordinal indicator
'<' '<' 0xab    # angle quotation mark left
'-' '!' 0xac    # not sign
'-' '|' 0xac    # not sign
'-' '-' 0xad    # soft hyphen
'R' 'O' 0xae    # registered trade mark
'r' 'o' 0xae    # registered trade mark
'-' '<' 0xaf    # macron
'-' '^' 0xaf    # macron
'_' '<' 0xaf    # macron
'_' '^' 0xaf    # macron
'O' ' ' 0xb0    # degree sign
'o' ' ' 0xb0    # degree sign
'+' '-' 0xb1    # plus/minus sign
'2' '<' 0xb2    # superscript 2
'2' '^' 0xb2    # superscript 2
'3' '<' 0xb3    # superscript 3
'3' '^' 0xb3    # superscript 3
39 39   0xb4    # acute accent
'U' '/' 0xb5    # micro sign
'u' '/' 0xb5    # micro sign
'P' '!' 0xb6    # paragraph sign
'p' '!' 0xb6    # paragraph sign
'.' '<' 0xb7    # middle dot
'.' '^' 0xb7    # middle dot
',' ',' 0xb8    # cedilla
'1' '<' 0xb9    # superscript 1
'1' '^' 0xb9    # superscript 1
'O' '-' 0xba    # masculine ordinal indicator
'O' '_' 0xba    # masculine ordinal indicator
'o' '-' 0xba    # masculine ordinal indicator
'o' '_' 0xba    # masculine ordinal indicator
'>' '>' 0xbb    # angle quotation mark right
'1' '4' 0xbc    # fraction one-quarter
'1' '2' 0xbd    # fraction one-half
'3' '4' 0xbe    # fraction three-quarter
'?' '?' 0xbf    # inverted ?
'A' '(' 0xc0    # A grave
'A' '`' 0xc0    # A grave
'A' 39  0xc1    # A acute
'A' '>' 0xc2    # A circumflex
'A' '^' 0xc2    # A circumflex
'A' '=' 0xc3    # A tilde
'A' '~' 0xc3    # A tilde
'A' '"' 0xc4    # A umlaut
'A' '*' 0xc5    # A ring
'A' 'E' 0xc6    # AE ligature
'C' ',' 0xc7    # C cedilla
'E' '(' 0xc8    # E grave
'E' '`' 0xc8    # E grave
'E' 39  0xc9    # E acute
'E' '>' 0xca    # E circumflex
'E' '^' 0xca    # E circumflex
'E' '"' 0xcb    # E umlaut
'I' '(' 0xcc    # I grave
'I' '`' 0xcc    # I grave
'I' 39  0xcd    # I acute
'I' '>' 0xce    # I circumflex
'I' '^' 0xce    # I circumflex
'I' '"' 0xcf    # I umlaut
'D' '-' 0xd0    # capital Icelandic eth
'D' 'H' 0xd0    # capital Icelandic eth
'N' '=' 0xd1    # N tilde
'N' '~' 0xd1    # N tilde
'O' '(' 0xd2    # O grave
'O' '`' 0xd2    # O grave
'O' 39  0xd3    # O acute
'O' '>' 0xd4    # O circumflex
'O' '^' 0xd4    # O circumflex
'O' '=' 0xd5    # O tilde
'O' '~' 0xd5    # O tilde
'O' '"' 0xd6    # O umlaut
'X' '-' 0xd7    # multiply operator
'x' '-' 0xd7    # multiply operator
'O' '/' 0xd8    # O slash
'U' '(' 0xd9    # U grave
'U' '`' 0xd9    # U grave
'U' 39  0xda    # U acute
'U' '>' 0xdb    # U circumflex
'U' '^' 0xdb    # U circumflex
'U' '"' 0xdc    # U umlaut
'Y' 39  0xdd    # Y acute
'P' '1' 0xde    # capital Icelandic thorn
'T' 'H' 0xde    # capital Icelandic thorn
'S' 'S' 0xdf    # sharp ss
's' 's' 0xdf    # sharp ss
'a' '(' 0xe0    # a grave
'a' '`' 0xe0    # a grave
'a' 39  0xe1    # a acute
'a' '>' 0xe2    # a circumflex
'a' '^' 0xe2    # a circumflex
'a' '=' 0xe3    # a tilde
'a' '~' 0xe3    # a tilde
'a' '"' 0xe4    # a umlaut
'a' '*' 0xe5    # a ring
'a' 'e' 0xe6    # ae ligature
'c' ',' 0xe7    # c cedilla
'e' '(' 0xe8    # e grave
'e' '`' 0xe8    # e grave
'e' 39  0xe9    # e acute
'e' '>' 0xea    # e circumflex
'e' '^' 0xea    # e circumflex
'e' '"' 0xeb    # e umlaut
'i' '(' 0xec    # i grave
'i' '`' 0xec    # i grave
'i' 39  0xed    # i acute
'i' '>' 0xee    # i circumflex
'i' '^' 0xee    # i circumflex
'i' '"' 0xef    # i umlaut
'd' '-' 0xf0    # lowercase Icelandic eth
'd' 'h' 0xf0    # lowercase Icelandic eth
'n' '=' 0xf1    # n tilde
'n' '~' 0xf1    # n tilde
'o' '(' 0xf2    # o grave
'o' '`' 0xf2    # o grave
'o' 39  0xf3    # o acute
'o' '>' 0xf4    # o circumflex
'o' '^' 0xf4    # o circumflex
'o' '=' 0xf5    # o tilde
'o' '~' 0xf5    # o tilde
'o' '"' 0xf6    # o umlaut
':' '-' 0xf7    # divide operator
'o' '/' 0xf8    # o slash
'u' '(' 0xf9    # u grave
'u' '`' 0xf9    # u grave
'u' 39  0xfa    # u acute
'u' '>' 0xfb    # u circumflex
'u' '^' 0xfb    # u circumflex
'u' '"' 0xfc    # u umlaut
'y' 39  0xfd    # y acute
'p' '1' 0xfe    # lowercase Icelandic thorn
't' 'h' 0xfe    # lowercase Icelandic thorn
'y' '"' 0xff    # y umlaut (ij ligature)

beep

#	Since only character codes in the range 0x80 to 0xff are mapped,
#	and such characters should not form part of escape sequences,
#	the following control section is not necessary, and has been
#	commented out.  Should this map file be modified to map 7-bit
#	characters, it should be reintroduced.
#
#	CONTROL
#
#	input
#	\E[	1	# Standard ANSI key codes
#
#	output
#	\E[	1	# Standard ANSI escape sequences
