Code page 858

Code page 858 (also known as CP 858, IBM 00858,[1] OEM 858[2]) is a code page used under MS-DOS to write Western European languages.

Code page 858 was created from code page 850 in 1998 by changing code point 213 (D5hex) from dotless i ‹ı› to the euro sign ‹€›.[1]

Still, instead of adding support for the new code page 858, IBM's PC DOS 2000, also released in 1998, changed the definition of the existing code page 850 to what IBM called modified code page 850 to include the euro sign at code point 213.[nb 1][3][4][5] More recent IBM products implemented codepage 858 under its own ID.

Code page layout

The following table shows code page 858.[2] Each character is shown with its equivalent Unicode code point and its decimal code point. Only the second half of the table (code points 128255) is shown, the first half (code points 0127) being the same as ASCII; although code points 1–31 and 127 (00–1Fhex and 7Fhex) have a different interpretation in some circumstances – see code page 437.

Code page 858
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 
8_
 
Ç
00C7
128
ü
00FC
129
é
00E9
130
â
00E2
131
ä
00E4
132
à
00E0
133
å
00E5
134
ç
00E7
135
ê
00EA
136
ë
00EB
137
è
00E8
138
ï
00EF
139
î
00EE
140
ì
00EC
141
Ä
00C4
142
Å
00C5
143
 
9_
 
É
00C9
144
æ
00E6
145
Æ
00C6
146
ô
00F4
147
ö
00F6
148
ò
00F2
149
û
00FB
150
ù
00F9
151
ÿ
00FF
152
Ö
00D6
153
Ü
00DC
154
ø
00F8
155
£
00A3
156
Ø
00D8
157
×
00D7
158
ƒ
0192
159
 
A_
 
á
00E1
160
í
00ED
161
ó
00F3
162
ú
00FA
163
ñ
00F1
164
Ñ
00D1
165
ª
00AA
166
º
00BA
167
¿
00BF
168
®
00AE
169
¬
00AC
170
½
00BD
171
¼
00BC
172
¡
00A1
173
«
00AB
174
»
00BB
175
 
B_
 

2591
176

2592
177

2593
178

2502
179

2524
180
Á
00C1
181
Â
00C2
182
À
00C0
183
©
00A9
184

2563
185

2551
186

2557
187

255D
188
¢
00A2
189
¥
00A5
190

2510
191
 
C_
 

2514
192

2534
193

252C
194

251C
195

2500
196

253C
197
ã
00E3
198
Ã
00C3
199

255A
200

2554
201

2569
202

2566
203

2560
204

2550
205

256C
206
¤
00A4
207
 
D_
 
ð
00F0
208
Ð
00D0
209
Ê
00CA
210
Ë
00CB
211
È
00C8
212

20AC
213
Í
00CD
214
Î
00CE
215
Ï
00CF
216

2518
217

250C
218

2588
219

2584
220
¦
00A6
221
Ì
00CC
222

2580
223
 
E_
 
Ó
00D3
224
ß
00DF
225
Ô
00D4
226
Ò
00D2
227
õ
00F5
228
Õ
00D5
229
µ
00B5
230
þ
00FE
231
Þ
00DE
232
Ú
00DA
233
Û
00DB
234
Ù
00D9
235
ý
00FD
236
Ý
00DD
237
¯
00AF
238
´
00B4
239
 
F_
 
SHY
00AD
240
±
00B1
241

2017
242
¾
00BE
243

00B6
244
§
00A7
245
÷
00F7
246
¸
00B8
247
°
00B0
248
¨
00A8
249
·
00B7
250
¹
00B9
251
³
00B3
252
²
00B2
253

25A0
254
NBSP
00A0
255
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F

Notes

  1. The reason for this might have been down to existing restrictions in the implementation of the codepage switching logic under MS-DOS/PC DOS, which limited .CPI files to 64 KB in size or about six codepages maximum, a limitation, which was circumvented in some OEM versions of MS-DOS, in Windows NT, and also does not exist in DR-DOS. Further, the parser in MS-DOS/PC DOS limits the number of possible country / codepage entries in COUNTRY.SYS files to a maximum of 146 or 438, a limitation non-existent in DR-DOS. So, adding support for codepage 858 might have meant to drop another (e.g. codepage 850) at the same time, which might not have been a viable solution at that time, given that some applications were hard-wired to use codepage 850.

    References

    1. 1 2 "00858". Code pages by CPGID. IBM. Retrieved 20 Nov 2011.
    2. 1 2 "OEM 858". Go Global Developer Center. Microsoft. Retrieved 23 Nov 2011.
    3. Paul, Matthias (2001-08-15). "Changing codepages in FreeDOS" (Technical design specification based on fd-dev post ). Retrieved 2013-05-08. The new official ID for the Multilingual "codepage 850 with EURO SIGN" is 858, not 850. IBM will switch to use 858 instead of their 850 variant with future issues of their products. [...] I can only guess why they didn't add 858 to their EGAx.CPI, COUNTRY.SYS, and KEYBOARD.SYS files in PC DOS 2000. Many third-party applications are designed to work with 850 and didn't know about 858 at the time PC DOS 2000 was released, so it's easier for everyone, but unfortunately it's not compatible. [...] As explained above, COUNTRY.SYS and KEYBOARD.SYS contain only two codepage entries for a given country in Western issues of DOS. (In Arabic and Hebrew issues there can be up to 8 codepages for one country, in theory there is no limit below the range of allowed codepages 1..65534). [...] The problem is that removing support for 850 might have caused compatibility problems with applications which are hard-wired to use 850. Adding 858 as a third choice to all the files would have increased the file and table sizes significantly. The COUNTRY.SYS file parser in MS-DOS/PC DOS IO.SYS/IBMBIO.COM sets aside a 6 Kb (for DOS 6) scratchpad to load all the info. This allows a maximum of 438 entries in a COUNTRY.SYS file to be accepted, otherwise you will get the message "COUNTRY.SYS too large.". The NLSFUNC parser does not have this limitation, and the file parsers in DR-DOS (kernel and NLSFUNC) also do not know of such a restriction. Older issues of MS-DOS/PC DOS even had a 2 Kb buffer for a maximum of 146 entries.
    4. Paul, Matthias (2001-08-27). "Changing codepages in FreeDOS (follow-up)". Retrieved 2013-05-08. [...] one could also create custom .CPI files in the traditional FONT style without difficulties, but you could only store up to a six codepages in such a file if it should be useable by MS-DOS/PC DOS (some OEM issues and NT can handle files larger than 64 Kb, but MS-DOS/PC DOS can not).
    5. Starikov, Yuri (2005-04-11). "15-летию Russian MS-DOS 4.01 посвящается" [15 Years of Russian MS-DOS 4.01] (in Russian). Retrieved 2014-05-07.
    This article is issued from Wikipedia - version of the Wednesday, May 07, 2014. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.