# liblouis: text.nabcc.dis
#
# Based on the braille contraction modules in BRLTTY
#
# Copyright (C) 1995-2004 by The BRLTTY Team
# Copyright (C) 2004 ViewPlus Technologies, Inc., www.viewplustech.com
# Copyright (C) 2004 Computers to Help People, Inc., www.chpi.org

# This file is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.

# This file is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.

# You should have received a copy of the GNU Lesser General Public
# License along with this file; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
# liblouis  comes with ABSOLUTELY NO WARRANTY.

# This is a description of the default text translation table used by BRLTTY.  
# It's based on the North American Braille Computer Code, but defines the full
# Latin1 (ISO-8859-1) character set.

# The 95 printable characters of the standard 7-bit US-ASCII character set
# (32-126) are identical to their representations within the North American
# Braille Computer Code (these are the only characters which the NABCC actually
# defines). Characters from literary braille, symbols from The Nemeth Braille
# Code for Mathematics and Science Notation, and a bit of human imagination
# have all been combined to create an easy-to-remember, one-to-one mapping
# between each character and its braille counterpart. All possible combinations
# involving only the original 6 braille dots are used, but that only allows for
# 64 out of the required 95 character representations. The presence or absence
# of dot 7 is used to differentiate between pairs of characters which either
# are very closely related in meaning or, in a few cases where a more intuitive
# reason couldn't be found, have a very close logical relationship within the
# US-ASCII code. Dot 8 is used for control characters and accented characters.

# This table is synchronized with Text/en-nabcc.ttb table from the BRLTTY
# project, except the re-added no-break space mapping.

# The space and the 26 lowercase letters (a-z) are the same as in literary 
# braille:

#        Hex   Dots       Dec Char Description
display \x0020 0        #  32      SPACE
display \x0061 1        #  97 a    LATIN SMALL LETTER A
display \x0062 12       #  98 b    LATIN SMALL LETTER B
display \x0063 14       #  99 c    LATIN SMALL LETTER C
display \x0064 145      # 100 d    LATIN SMALL LETTER D
display \x0065 15       # 101 e    LATIN SMALL LETTER E
display \x0066 124      # 102 f    LATIN SMALL LETTER F
display \x0067 1245     # 103 g    LATIN SMALL LETTER G
display \x0068 125      # 104 h    LATIN SMALL LETTER H
display \x0069 24       # 105 i    LATIN SMALL LETTER I
display \x006a 245      # 106 j    LATIN SMALL LETTER J
display \x006b 13       # 107 k    LATIN SMALL LETTER K
display \x006c 123      # 108 l    LATIN SMALL LETTER L
display \x006d 134      # 109 m    LATIN SMALL LETTER M
display \x006e 1345     # 110 n    LATIN SMALL LETTER N
display \x006f 135      # 111 o    LATIN SMALL LETTER O
display \x0070 1234     # 112 p    LATIN SMALL LETTER P
display \x0071 12345    # 113 q    LATIN SMALL LETTER Q
display \x0072 1235     # 114 r    LATIN SMALL LETTER R
display \x0073 234      # 115 s    LATIN SMALL LETTER S
display \x0074 2345     # 116 t    LATIN SMALL LETTER T
display \x0075 136      # 117 u    LATIN SMALL LETTER U
display \x0076 1236     # 118 v    LATIN SMALL LETTER V
display \x0077 2456     # 119 w    LATIN SMALL LETTER W
display \x0078 1346     # 120 x    LATIN SMALL LETTER X
display \x0079 13456    # 121 y    LATIN SMALL LETTER Y
display \x007a 1356     # 122 z    LATIN SMALL LETTER Z

# The 26 uppercase letters A-Z) are the same as their lowercase counterparts 
# except that dot7 is added:

#        Hex   Dots       Dec Char Description
display \x0041 17       #  65 A    LATIN CAPITAL LETTER A
display \x0042 127      #  66 B    LATIN CAPITAL LETTER B
display \x0043 147      #  67 C    LATIN CAPITAL LETTER C
display \x0044 1457     #  68 D    LATIN CAPITAL LETTER D
display \x0045 157      #  69 E    LATIN CAPITAL LETTER E
display \x0046 1247     #  70 F    LATIN CAPITAL LETTER F
display \x0047 12457    #  71 G    LATIN CAPITAL LETTER G
display \x0048 1257     #  72 H    LATIN CAPITAL LETTER H
display \x0049 247      #  73 I    LATIN CAPITAL LETTER I
display \x004a 2457     #  74 J    LATIN CAPITAL LETTER J
display \x004b 137      #  75 K    LATIN CAPITAL LETTER K
display \x004c 1237     #  76 L    LATIN CAPITAL LETTER L
display \x004d 1347     #  77 M    LATIN CAPITAL LETTER M
display \x004e 13457    #  78 N    LATIN CAPITAL LETTER N
display \x004f 1357     #  79 O    LATIN CAPITAL LETTER O
display \x0050 12347    #  80 P    LATIN CAPITAL LETTER P
display \x0051 123457   #  81 Q    LATIN CAPITAL LETTER Q
display \x0052 12357    #  82 R    LATIN CAPITAL LETTER R
display \x0053 2347     #  83 S    LATIN CAPITAL LETTER S
display \x0054 23457    #  84 T    LATIN CAPITAL LETTER T
display \x0055 1367     #  85 U    LATIN CAPITAL LETTER U
display \x0056 12367    #  86 V    LATIN CAPITAL LETTER V
display \x0057 24567    #  87 W    LATIN CAPITAL LETTER W
display \x0058 13467    #  88 X    LATIN CAPITAL LETTER X
display \x0059 134567   #  89 Y    LATIN CAPITAL LETTER Y
display \x005a 13567    #  90 Z    LATIN CAPITAL LETTER Z

# The 10 decimal digits 0-9) are the same as in the Nemeth Code:

#        Hex   Dots       Dec Char Description
display \x0030 356      #  48 0    DIGIT ZERO
display \x0031 2        #  49 1    DIGIT ONE
display \x0032 23       #  50 2    DIGIT TWO
display \x0033 25       #  51 3    DIGIT THREE
display \x0034 256      #  52 4    DIGIT FOUR
display \x0035 26       #  53 5    DIGIT FIVE
display \x0036 235      #  54 6    DIGIT SIX
display \x0037 2356     #  55 7    DIGIT SEVEN
display \x0038 236      #  56 8    DIGIT EIGHT
display \x0039 35       #  57 9    DIGIT NINE

# Common symbols used within mathematical expressions by popular computer
# programming languages are the same as in the Nemeth Code:

#        Hex   Dots       Dec Char Description
display \x002e 46       #  46 .    FULL STOP
display \x002b 346      #  43 +    PLUS SIGN
display \x002d 36       #  45 -    HYPHEN-MINUS
display \x002a 16       #  42 *    ASTERISK
display \x002f 34       #  47 /    SOLIDUS
display \x0028 12356    #  40 (    LEFT PARENTHESIS
display \x0029 23456    #  41 )    RIGHT PARENTHESIS

# With all of these major considerations having been taken into account, 
# convenient representations were still available, and are used, for some of 
# the remaining characters:

#        Hex   Dots       Dec Char Description
display \x0026 12346    #  38 &    AMPERSAND
display \x0023 3456     #  35 #    NUMBER SIGN

# The remaining characters are what they are. Dot 7 isn't used either within 
# the number block (32-63) or, with the exception of the DEL control character
# (127), within the lowercase block (96-127). With the exception of the
# underscore (95), dot 7 is used for every character within the uppercase block
# (64-95). Adding dot 7 to any character within the lowercase block (96-127)
# yields its corresponding character within the uppercase block (64-95) except
# that removing dot 7 from the DEL control character yields the underscore.

#        Hex   Dots       Dec Char Description
display \x002c 6        #  44 ,    COMMA
display \x003b 56       #  59 ;    SEMICOLON
display \x003a 156      #  58 :    COLON
display \x0021 2346     #  33 !    EXCLAMATION MARK
display \x003f 1456     #  63 ?    QUESTION MARK
display \x0022 5        #  34 "    QUOTATION MARK
display \x0027 3        #  39 '    APOSTROPHE
display \x0060 4        #  96 `    GRAVE ACCENT
display \x005e 457      #  94 ^    CIRCUMFLEX ACCENT
display \x007e 45       # 126 ~    TILDE
display \x005b 2467     #  91 [    LEFT SQUARE BRACKET
display \x005d 124567   #  93 ]    RIGHT SQUARE BRACKET
display \x007b 246      # 123 {    LEFT CURLY BRACKET
display \x007d 12456    # 125 }    RIGHT CURLY BRACKET
display \x003d 123456   #  61 =    EQUALS SIGN
display \x003c 126      #  60 <    LESS-THAN SIGN
display \x003e 345      #  62 >    GREATER-THAN SIGN
display \x0024 1246     #  36 $    DOLLAR SIGN
display \x0025 146      #  37 %    PERCENT SIGN
display \x0040 47       #  64 @    COMMERCIAL AT
display \x007c 1256     # 124 |    VERTICAL LINE
display \x005c 12567    #  92 \    REVERSE SOLIDUS
display \x005f 456      #  95 _    LOW LINE

# The DEL control character
#        Hex   Dots       Dec Char Description
display \x007f 4567     # 127 ^?   DELETE

# Each of the characters within the basic control character block (0-31) is the
# same as its corresponding character within both the uppercase block (64-95)
# and the lowercase block (96-127) except that dots 7 and 8 are both used.

#        Hex   Dots       Dec Char Description
display \x0000 478      #   0 ^@   NULL
display \x0001 178      #   1 ^A   START OF HEADING
display \x0002 1278     #   2 ^B   START OF TEXT
display \x0003 1478     #   3 ^C   END OF TEXT
display \x0004 14578    #   4 ^D   END OF TRANSMISSION
display \x0005 1578     #   5 ^E   ENQUIRY
display \x0006 12478    #   6 ^F   ACKNOWLEDGE
display \x0007 124578   #   7 ^G   BELL
display \x0008 12578    #   8 ^H   BACKSPACE
display \x0009 2478     #   9 ^I   HORIZONTAL TABULATION
display \x000a 24578    #  10 ^J   LINE FEED
display \x000b 1378     #  11 ^K   VERTICAL TABULATION
display \x000c 12378    #  12 ^L   FORM FEED
display \x000d 13478    #  13 ^M   CARRIAGE RETURN
display \x000e 134578   #  14 ^N   SHIFT OUT
display \x000f 13578    #  15 ^O   SHIFT IN
display \x0010 123478   #  16 ^P   DATA LINK ESCAPE
display \x0011 1234578  #  17 ^Q   DEVICE CONTROL ONE
display \x0012 123578   #  18 ^R   DEVICE CONTROL TWO
display \x0013 23478    #  19 ^S   DEVICE CONTROL THREE
display \x0014 234578   #  20 ^T   DEVICE CONTROL FOUR
display \x0015 13678    #  21 ^U   NEGATIVE ACKNOWLEDGE
display \x0016 123678   #  22 ^V   SYNCHRONOUS IDLE
display \x0017 245678   #  23 ^W   END OF TRANSMISSION BLOCK
display \x0018 134678   #  24 ^X   CANCEL
display \x0019 1345678  #  25 ^Y   END OF MEDIUM
display \x001a 135678   #  26 ^Z   SUBSTITUTE
display \x001b 24678    #  27 ^[   ESCAPE
display \x001c 125678   #  28 ^\   FILE SEPARATOR
display \x001d 1245678  #  29 ^]   GROUP SEPARATOR
display \x001e 4578     #  30 ^^   RECORD SEPARATOR
display \x001f 45678    #  31 ^_   UNIT SEPARATOR

# Each of the characters within the extended control character block (128-159)
# is the same as its corresponding character within the basic control character
# block (0-31) except that only dot 8 is used.

#        Hex   Dots       Dec Char Description
display \x0080 48       # 128 ~@   <control>
display \x0081 18       # 129 ~A   <CONTROL>
display \x0082 128      # 130 ~B   BREAK PERMITTED HERE
display \x0083 148      # 131 ~C   NO BREAK HERE
display \x0084 1458     # 132 ~D   <CONTROL>
display \x0085 158      # 133 ~E   NEXT LINE
display \x0086 1248     # 134 ~F   START OF SELECTED AREA
display \x0087 12458    # 135 ~G   END OF SELECTED AREA
display \x0088 1258     # 136 ~H   CHARACTER TABULATION SET
display \x0089 248      # 137 ~I   CHARACTER TABULATION WITH JUSTIFICATION
display \x008a 2458     # 138 ~J   LINE TABULATION SET
display \x008b 138      # 139 ~K   PARTIAL LINE DOWN
display \x008c 1238     # 140 ~L   PARTIAL LINE UP
display \x008d 1348     # 141 ~M   REVERSE LINE FEED
display \x008e 13458    # 142 ~N   SINGLE SHIFT TWO
display \x008f 1358     # 143 ~O   SINGLE SHIFT THREE
display \x0090 12348    # 144 ~P   DEVICE CONTROL STRING
display \x0091 123458   # 145 ~Q   PRIVATE USE ONE
display \x0092 12358    # 146 ~R   PRIVATE USE TWO
display \x0093 2348     # 147 ~S   SET TRANSMIT STATE
display \x0094 23458    # 148 ~T   CANCEL CHARACTER
display \x0095 1368     # 149 ~U   MESSAGE WAITING
display \x0096 12368    # 150 ~V   START OF GUARDED AREA
display \x0097 24568    # 151 ~W   END OF GUARDED AREA
display \x0098 13468    # 152 ~X   START OF STRING
display \x0099 134568   # 153 ~Y   <CONTROL>
display \x009a 13568    # 154 ~Z   SINGLE CHARACTER INTRODUCER
display \x009b 2468     # 155 ~[   CONTROL SEQUENCE INTRODUCER
display \x009c 12568    # 156 ~\   STRING TERMINATOR
display \x009d 124568   # 157 ~]   OPERATING SYSTEM COMMAND
display \x009e 458      # 158 ~^   PRIVACY MESSAGE
display \x009f 4568     # 159 ~_   APPLICATION PROGRAM COMMAND


# Representations for the uppercase accented letters are drawn from the
# remaining combinations which use both dots 7 and 8. The representation for a
# lowercase accented letter is the same as its uppercase counterpart except
# that dot 7 isn't used. This scheme retains the use of dot 7 as the modifier
# for a capitalized letter. The only exception to these rules is that, due to
# the nature of the  Latin 1 character set, the German lowercase double-s is
# treated as though it were an uppercase y-dieresis neither has an uppercase
# definition). These representations have been gathered, as much as possible,
# into logical groupings.

# The 5 letters with a circumflex accent (^) use the [1-5] dot combinations:

#        Hex   Dots       Dec Char Description
display \x00c2 278      # 194 Â    LATIN CAPITAL LETTER A WITH CIRCUMFLEX
display \x00ca 2378     # 202 Ê    LATIN CAPITAL LETTER E WITH CIRCUMFLEX
display \x00ce 2578     # 206 Î    LATIN CAPITAL LETTER I WITH CIRCUMFLEX
display \x00d4 25678    # 212 Ô    LATIN CAPITAL LETTER O WITH CIRCUMFLEX
display \x00db 2678     # 219 Û    LATIN CAPITAL LETTER U WITH CIRCUMFLEX
display \x00e2 28       # 226 â    LATIN SMALL LETTER A WITH CIRCUMFLEX
display \x00ea 238      # 234 ê    LATIN SMALL LETTER E WITH CIRCUMFLEX
display \x00ee 258      # 238 î    LATIN SMALL LETTER I WITH CIRCUMFLEX
display \x00f4 2568     # 244 ô    LATIN SMALL LETTER O WITH CIRCUMFLEX
display \x00fb 268      # 251 û    LATIN SMALL LETTER U WITH CIRCUMFLEX

# The 5 letters with a grave accent (`) use the [6-0] dot combinations:

#        Hex   Dots       Dec Char Description
display \x00c0 23578    # 192 À    LATIN CAPITAL LETTER A WITH GRAVE
display \x00c8 235678   # 200 È    LATIN CAPITAL LETTER E WITH GRAVE
display \x00cc 23678    # 204 Ì    LATIN CAPITAL LETTER I WITH GRAVE
display \x00d2 3578     # 210 Ò    LATIN CAPITAL LETTER O WITH GRAVE
display \x00d9 35678    # 217 Ù    LATIN CAPITAL LETTER U WITH GRAVE
display \x00e0 2358     # 224 à    LATIN SMALL LETTER A WITH GRAVE
display \x00e8 23568    # 232 è    LATIN SMALL LETTER E WITH GRAVE
display \x00ec 2368     # 236 ì    LATIN SMALL LETTER I WITH GRAVE
display \x00f2 358      # 242 ò    LATIN SMALL LETTER O WITH GRAVE
display \x00f9 3568     # 249 ù    LATIN SMALL LETTER U WITH GRAVE

# The 6 letters with an acute accent (´) use the [a-f] dot combinations with
# dots 6 and 8 added:

#        Hex   Dots       Dec Char Description
display \x00c1 1678     # 193 Á    LATIN CAPITAL LETTER A WITH ACUTE
display \x00c9 12678    # 201 É    LATIN CAPITAL LETTER E WITH ACUTE
display \x00cd 14678    # 205 Í    LATIN CAPITAL LETTER I WITH ACUTE
display \x00d3 145678   # 211 Ó    LATIN CAPITAL LETTER O WITH ACUTE
display \x00da 15678    # 218 Ú    LATIN CAPITAL LETTER U WITH ACUTE
display \x00dd 124678   # 221 Ý    LATIN CAPITAL LETTER Y WITH ACUTE
display \x00e1 168      # 225 á    LATIN SMALL LETTER A WITH ACUTE
display \x00e9 1268     # 233 é    LATIN SMALL LETTER E WITH ACUTE
display \x00ed 1468     # 237 í    LATIN SMALL LETTER I WITH ACUTE
display \x00f3 14568    # 243 ó    LATIN SMALL LETTER O WITH ACUTE
display \x00fa 1568     # 250 ú    LATIN SMALL LETTER U WITH ACUTE
display \x00fd 12468    # 253 ý    LATIN SMALL LETTER Y WITH ACUTE

# The 6 letters with a dieresis accent (¨) use the [f-j] dot combinations with
# dots 3 and 6 added, and the number sign (because it fits the sequence
# reasonably well):

#        Hex   Dots       Dec Char Description
display \x00c4 1234678  # 196 Ä    LATIN CAPITAL LETTER A WITH DIAERESIS
display \x00cb 12345678 # 203 Ë    LATIN CAPITAL LETTER E WITH DIAERESIS
display \x00cf 1235678  # 207 Ï    LATIN CAPITAL LETTER I WITH DIAERESIS
display \x00d6 234678   # 214 Ö    LATIN CAPITAL LETTER O WITH DIAERESIS
display \x00dc 2345678  # 220 Ü    LATIN CAPITAL LETTER U WITH DIAERESIS
display \x00e4 123468   # 228 ä    LATIN SMALL LETTER A WITH DIAERESIS
display \x00eb 1234568  # 235 ë    LATIN SMALL LETTER E WITH DIAERESIS
display \x00ef 123568   # 239 ï    LATIN SMALL LETTER I WITH DIAERESIS
display \x00f6 23468    # 246 ö    LATIN SMALL LETTER O WITH DIAERESIS
display \x00fc 234568   # 252 ü    LATIN SMALL LETTER U WITH DIAERESIS
display \x00ff 34568    # 255 ÿ    LATIN SMALL LETTER Y WITH DIAERESIS

# There is no uppercase y-dieresis in the Latin1 character set. The German
# lowercase double-s, which also doesn't have an uppercase counterpart in the
# Latin1 character set, uses its representation:

#        Hex   Dots       Dec Char Description
display \x00df 345678   # 223 ß    LATIN SMALL LETTER SHARP S

# The remaining accented letters are:

#        Hex   Dots       Dec Char Description
display \x00c3 578      # 195 Ã    LATIN CAPITAL LETTER A WITH TILDE
display \x00d1 4678     # 209 Ñ    LATIN CAPITAL LETTER N WITH TILDE
display \x00d5 5678     # 213 Õ    LATIN CAPITAL LETTER O WITH TILDE
display \x00c5 34578    # 197 Å    LATIN CAPITAL LETTER A WITH RING ABOVE
display \x00c7 34678    # 199 Ç    LATIN CAPITAL LETTER C WITH CEDILLA
display \x00d8 3478     # 216 Ø    LATIN CAPITAL LETTER O WITH STROKE
display \x00c6 378      # 198 Æ    LATIN CAPITAL LETTER AE
display \x00d0 678      # 208 Ð    LATIN CAPITAL LETTER ETH
display \x00de 3678     # 222 Þ    LATIN CAPITAL LETTER THORN
display \x00e3 58       # 227 ã    LATIN SMALL LETTER A WITH TILDE
display \x00f1 468      # 241 ñ    LATIN SMALL LETTER N WITH TILDE
display \x00f5 568      # 245 õ    LATIN SMALL LETTER O WITH TILDE
display \x00e5 3458     # 229 å    LATIN SMALL LETTER A WITH RING ABOVE
display \x00e7 3468     # 231 ç    LATIN SMALL LETTER C WITH CEDILLA
display \x00f8 348      # 248 ø    LATIN SMALL LETTER O WITH STROKE
display \x00e6 38       # 230 æ    LATIN SMALL LETTER AE
display \x00f0 68       # 240 ð    LATIN SMALL LETTER ETH
display \x00fe 368      # 254 þ    LATIN SMALL LETTER THORN

# Some characters are the same as other characters which they resemble but with
# dot 7 added:

#        Hex   Dots       Dec Char Description
display \x00ad 367      # 173 ­    SOFT HYPHEN
display \x00ab 1267     # 171 «    LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
display \x00bb 3457     # 187 »    RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
display \x00a6 1567     # 166 ¦    BROKEN BAR
display \x00b9 27       # 185 ¹    SUPERSCRIPT ONE
display \x00b2 237      # 178 ²    SUPERSCRIPT TWO
display \x00b3 257      # 179 ³    SUPERSCRIPT THREE
display \x00b1 3467     # 177 ±    PLUS-MINUS SIGN
display \x00d7 167      # 215 ×    MULTIPLICATION SIGN
display \x00f7 347      # 247 ÷    DIVISION SIGN
display \x00b7 467      # 183 ·    MIDDLE DOT
display \x00a1 23467    # 161 ¡    INVERTED EXCLAMATION MARK
display \x00bf 14567    # 191 ¿    INVERTED QUESTION MARK
display \x00a2 12467    # 162 ¢    CENT SIGN
display \x00a3 34567    # 163 £    POUND SIGN

# A few more characters follow this same convention but their relationships
# to their base characters is a bit obscure:

#        Hex   Dots       Dec Char Description
display \x00a4 1467     # 164 ¤    CURRENCY SIGN
display \x00a5 123467   # 165 ¥    YEN SIGN

# Some characters are represented by the first letters of their names lowered
# by one row of dots:

#        Hex   Dots       Dec Char Description
display \x00ac 2567     # 172 ¬    NOT SIGN
display \x00b6 2357     # 182 ¶    PILCROW SIGN
display \x00a9 23567    # 169 ©    COPYRIGHT SIGN
display \x00ae 2367     # 174 ®    REGISTERED SIGN
display \x00a7 357      # 167 §    SECTION SIGN
display \x00b0 3567     # 176 °    DEGREE SIGN

# The three fraction characters use combinations of dots 1 and 4 (which
# progress from left to right as the value of the fraction increases) together
# with dots 2,3,5,6,7:

#        Hex   Dots       Dec Char Description
display \x00bc 123567   # 188 ¼    VULGAR FRACTION ONE QUARTER
display \x00bd 1234567  # 189 ½    VULGAR FRACTION ONE HALF
display \x00be 234567   # 190 ¾    VULGAR FRACTION THREE QUARTERS

# Each of the three extended accent characters is the same as its conventional
# compose character but with dot7 added:

#        Hex   Dots       Dec Char Description
display \x00b4 37       # 180 ´    ACUTE ACCENT
display \x00b8 67       # 184 ¸    CEDILLA
display \x00a8 57       # 168 ¨    DIAERESIS

# The two gender symbols are:

#        Hex   Dots       Dec Char Description
display \x00ba 7        # 186 º    MASCULINE ORDINAL INDICATOR
display \x00aa 8        # 170 ª    FEMININE ORDINAL INDICATOR

# The three remaining characters are:

#        Hex   Dots       Dec Char Description
display \x00af 267      # 175 ¯    MACRON
display \x00b5 567      # 181 µ    MICRO SIGN
display \x00a0 78       # 160      NO-BREAK SPACE

# The nonbreaking space is dots 7 and 8 because this presents a sequence of
# nonbreaking spaces as a smooth low line segment.