Kamenický encoding

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

The Kamenický encoding (Czech: kódování Kamenických), named for the brothers Jiří and Marian Kamenický, was a code page for personal computers running MS-DOS, very popular in Czechoslovakia (since 1993, the Czech Republic and Slovakia) around 1985–1995. Another name for this encoding is KEYBCS2, the name of the Terminate and Stay Resident utility which implemented the matching keyboard driver.

It was based on the code page 437 encoding (with accented characters for Western-European languages) where most of the characters from code points 128 to 173 were replaced by Czech and Slovak characters chosen so that the glyphs of the replacement characters resembled those of the original as closely as possible, e. g. č in the place of ç. This ensured that text in the Kamenický encoding was (barely) readable even on older or cheap computers with the original fonts (which were often in videocard ROM, making modification difficult if not impossible).

A supplemental feature was that the block graphic and box-drawing characters of code page 437 remained unchanged (IBM's official Central-European code page 852 did not have this property, making programs like Norton Commander look funny with corners and joints of border lines broken by accented letters).

Some ambiguity exists in the official code page assignment for the Kamenický encoding:

Some dot matrix printers of the NEC Pinwriter series, namely the P3200/P3300 (P20/P30), P6200/P6300 (P60/P70), P9300 (P90), P7200/P7300 (P62/P72), P22Q/P32Q, P3800/P3900 (P42Q/P52Q), P1200/P1300 (P2Q/P3Q), P2000 (P2X) and P8000 (P72X), supported the installation of optional font EPROMs.[1] The optional ROM #2 "East Europe" included this encoding. While named "Kamenický" in the documentation,[1] it was originally advertised by NEC as code page 867 (CP867) or "Czech".[2] (However, it was never registered with IBM under that ID, as IBM registered another unrelated code page Israel: Hebrew, based on CP862, under that ID in 1998.[3])

The encoding was also sometimes called code page 895 (CP895), for example in the WordPerfect[4] text processor and under the Arachne[4] web browser for DOS, but IBM uses this code page number for a different encoding, CM/Group 2: 7-bit Latin SBCS: Japanese (EUC-JP JIS-Roman)[4][5] or Japan 7-Bit Latin (00895),[6] and the IANA does not recognize the number at all. The DOS code page switching file NECPINW.CPI for NEC Pinwriters supported the Kamenický encoding under both, code page 867 and 895 as well.[4]

The widespread use of the Kamenický encoding was undermined neither by IBM's code page 852, nor by the Windows 3.1 introducing Microsoft Central Europe code page 1250. Only with Windows 95 and the spreading deployment of Microsoft Office did users begin to use code page 1250, which in turn is now obsoleted by Unicode.

Character table

Each character is shown with its equivalent Unicode code point and its decimal code point. Only the second half of the table (code points 128–255) is shown, the first half (code points 0–127) being the same as ASCII and code page 437. Code points 129–130, 132, 142, 144, 147–148, 153–154, 160–163, 172, and 174–255 are identical to code page 437 as well.[1][7]

While the original display[7][nb 1] and printer fonts[1] defined code point 173 as section sign ('§', U+00A7), some tools also used an inverted exclamation mark ('¡', U+00A1) instead.[citation needed] This variant is not fully compliant with the definition of code page 867 / 895 and should therefore not be associated with these numbers. (In lack of an official code page ID for them, user-definable code page numbers 58211 (E363h) or 58239 (E37Fh) could be used as "handles" to these encodings in a local or private context.)

Differences from code page 437 have a gray border, code points used for multiple purposes in code page 437 are shaded slightly darker.

Code page 867 / 895
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 
8_
 
Č
010C
128
ü
00FC
129
é
00E9
130
ď
010F
131
ä
00E4
132
Ď
010E
133
Ť
0164
134
č
010D
135
ě
011B
136
Ě
011A
137
Ĺ
0139
138
Í
00CD
139
ľ
013E
140
ĺ
013A
141
Ä
00C4
142
Á
00C1
143
 
9_
 
É
00C9
144
ž
017E
145
Ž
017D
146
ô
00F4
147
ö
00F6
148
Ó
00D3
149
ů
016F
150
Ú
00DA
151
ý
00FD
152
Ö
00D6
153
Ü
00DC
154
Š
0160
155
Ľ
013D
156
Ý
00DD
157
Ř
0158
158
ť
0165
159
 
A_
 
á
00E1
160
í
00ED
161
ó
00F3
162
ú
00FA
163
ň
0148
164
Ň
0147
165
Ů
016E
166
Ô
00D4
167
š
0161
168
ř
0159
169
ŕ
0155
170
Ŕ
0154
171
¼
00BC
172
§
00A7
173
«
00AB
174
»
00BB
175
 
B_
 

2591
176

2592
177

2593
178

2502
179

2524
180

2561
181

2562
182

2556
183

2555
184

2563
185

2551
186

2557
187

255D
188

255C
189

255B
190

2510
191
 
C_
 

2514
192

2534
193

252C
194

251C
195

2500
196

253C
197

255E
198

255F
199

255A
200

2554
201

2569
202

2566
203

2560
204

2550
205

256C
206

2567
207
 
D_
 

2568
208

2564
209

2565
210

2559
211

2558
212

2552
213

2553
214

256B
215

256A
216

2518
217

250C
218

2588
219

2584
220

258C
221

2590
222

2580
223
 
E_
 
α
03B1
224
ß
00DF
225
Γ
0393
226
π
03C0
227
Σ
03A3
228
σ
03C3
229
µ
00B5
230
τ
03C4
231
Φ
03A6
232
Θ
0398
233
Ω
03A9
234
δ
03B4
235

221E
236
φ
03C6
237
ε
03B5
238

2229
239
 
F_
 

2261
240
±
00B1
241

2265
242

2264
243

2320
244

2321
245
÷
00F7
246

2248
247
°
00B0
248

2219
249
·
00B7
250

221A
251

207F
252
²
00B2
253

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

See also

Notes

  1. The Czech DOS word processor cs (Text602) aka T602 assigned code point 173 to a section sign (U+00A7) in Kamenický encoding.

References

  1. 1.0 1.1 1.2 1.3 Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found. (NB. According to this publication, these printers included optional support for code page 867 (CP867), as it were also supported in display fonts in MS-DOS 5.0 and DR DOS 6.0.)
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. 4.0 4.1 4.2 4.3 Lua error in package.lua at line 80: module 'strict' not found.
  5. IBM Character Data Representation Architecture (CDRA) level 2
  6. [1]
  7. 7.0 7.1 Lua error in package.lua at line 80: module 'strict' not found.