diff -Naur libiconv-1.14-orig/ChangeLog libiconv-1.14/ChangeLog --- libiconv-1.14-orig/ChangeLog 2011-08-07 17:48:04.000000000 +0000 +++ libiconv-1.14/ChangeLog 2011-09-22 00:49:28.000000000 +0000 @@ -1,3 +1,15 @@ +2011-08-21 Jerzy Kut + + Implement and document ATARI8-*. + * tools/Makefile (ALL): Add atari8_*.h. + (atari8_*.h): New rule. + * lib/atari8_*.h: New file. + * lib/converters.h: Include it. + * lib/encodings_extra.def (ATARI8-*): New encoding. + * README, man/iconv_open.3: Add ATARI8-*. + * tests/Makefile.in (check-extra-yes): Check ATARI8-*. + * tests/ATARI8-*.TXT: New file. + 2011-08-07 Bruno Haible * Version 1.14 released. diff -Naur libiconv-1.14-orig/NOTES libiconv-1.14/NOTES --- libiconv-1.14-orig/NOTES 2009-06-21 11:17:33.000000000 +0000 +++ libiconv-1.14/NOTES 2011-09-22 10:25:47.000000000 +0000 @@ -289,6 +289,9 @@ We implement these because they were the native character set on HPs and NeXTs for a long time, and libiconv is intended to be usable on these old machines. + * ATARI8-* + We implement these because they are quite useful in crossworking + on retro 8-bit Atari XL/XE machines. Full Unicode * UTF-8, UCS-2, UCS-4 We implement these. Obviously. diff -Naur libiconv-1.14-orig/README libiconv-1.14/README --- libiconv-1.14-orig/README 2011-08-07 17:48:03.000000000 +0000 +++ libiconv-1.14/README 2011-09-22 14:48:27.000000000 +0000 @@ -70,7 +70,9 @@ Turkmen TDS565 Platform specifics - ATARIST, RISCOS-LATIN1 + ATARIST, RISCOS-LATIN1, + ATARI8-{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,PL,CAPEK,CZ,ATASCII,ATASCII2}, + ATASCII, ATASCII2 It can convert from any of these encodings to any other, through Unicode conversion. diff -Naur libiconv-1.14-orig/configure libiconv-1.14/configure --- libiconv-1.14-orig/configure 2011-08-07 17:49:02.000000000 +0000 +++ libiconv-1.14/configure 2011-09-22 00:49:28.000000000 +0000 @@ -3503,7 +3503,7 @@ # Define the identity of the package. PACKAGE=libiconv - VERSION=1.14 + VERSION=1.14-atari cat >>confdefs.h <<_ACEOF diff -Naur libiconv-1.14-orig/configure.ac libiconv-1.14/configure.ac --- libiconv-1.14-orig/configure.ac 2011-08-07 17:48:03.000000000 +0000 +++ libiconv-1.14/configure.ac 2011-09-22 00:49:28.000000000 +0000 @@ -20,7 +20,7 @@ AC_INIT AC_CONFIG_SRCDIR([lib/iconv.c]) AC_CONFIG_AUX_DIR([build-aux]) -AM_INIT_AUTOMAKE([libiconv], [1.14]) +AM_INIT_AUTOMAKE([libiconv], [1.14-atari]) AC_CONFIG_HEADERS([config.h lib/config.h]) AC_PROG_MAKE_SET diff -Naur libiconv-1.14-orig/lib/aliases_extra.h libiconv-1.14/lib/aliases_extra.h --- libiconv-1.14-orig/lib/aliases_extra.h 2011-08-07 17:49:09.000000000 +0000 +++ libiconv-1.14/lib/aliases_extra.h 2011-09-22 12:56:28.000000000 +0000 @@ -10,3 +10,18 @@ S(extra_9, "ATARIST", ei_atarist ) S(extra_10, "ATARI", ei_atarist ) S(extra_11, "RISCOS-LATIN1", ei_riscos1 ) + S(extra_12, "ATARI8", ei_atari8_graph ) + S(extra_13, "ATARI8-GRAPH", ei_atari8_graph ) + S(extra_14, "ATARI8-ATASCII", ei_atari8_graph ) + S(extra_15, "ATASCII", ei_atari8_graph ) + S(extra_16, "ATARI8-INT", ei_atari8_int ) + S(extra_17, "ATARI8-ATASCII2", ei_atari8_int ) + S(extra_18, "ATASCII2", ei_atari8_int ) + S(extra_19, "ATARI8-KAREN", ei_atari8_karen ) + S(extra_20, "ATARI8-PL", ei_atari8_karen ) + S(extra_21, "ATARI8-AWP", ei_atari8_awp ) + S(extra_22, "ATARI8-XLENT", ei_atari8_xlent ) + S(extra_23, "ATARI8-PANTHER", ei_atari8_panther ) + S(extra_24, "ATARI8-PE", ei_atari8_pe ) + S(extra_25, "ATARI8-CAPEK", ei_atari8_capek ) + S(extra_26, "ATARI8-CZ", ei_atari8_capek ) diff -Naur libiconv-1.14-orig/lib/atari8_awp.h libiconv-1.14/lib/atari8_awp.h --- libiconv-1.14-orig/lib/atari8_awp.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_awp.h 2011-09-22 14:35:56.000000000 +0000 @@ -0,0 +1,174 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Polish Atari Writer + ATASCII + */ + +static const unsigned short atari8_awp_2uni_1[32] = { + /* 0x00 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e2, 0x2597, 0x25e3, 0x0141, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x10 */ + 0x00d3, 0x250c, 0x0118, 0x015b, 0x25cf, 0x2584, 0x0106, 0x0104, + 0x017b, 0x258c, 0x017c, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_awp_2uni_2[160] = { + /* 0x60 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e4, 0x259b, 0x25e5, 0x0141, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x90 */ + 0x00d3, 0x250c, 0x0118, 0x015b, 0x25cf, 0x2580, 0x0106, 0x0104, + 0x017b, 0x2590, 0x017c, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_awp_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_awp_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_awp_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_awp_page00[120] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_awp_page00_1[40] = { + 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */ + 0x00, 0x00, 0x00, 0x8f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */ +}; +static const unsigned char atari8_awp_page01[128] = { + 0x00, 0x00, 0x00, 0x00, 0x97, 0x81, 0x96, 0x83, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x92, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0x8b, 0x8c, 0x8d, 0x8e, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x84, 0x93, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x80, 0x82, 0x98, 0x9a, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_awp_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_awp_page25[120] = { + 0x00, 0x86, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x95, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0xa0, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x08, 0x0a, 0x88, 0x8a, 0x00, 0x00, /* 0xe0-0xe7 */ +}; +static const unsigned char atari8_awp_page26[8] = { + 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, /* 0x60-0x67 */ +}; + +static int +atari8_awp_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0080) + c = atari8_awp_page00[wc-0x0008]; + else if (wc >= 0x00d0 && wc < 0x00f8) + c = atari8_awp_page00_1[wc-0x00d0]; + else if (wc >= 0x0100 && wc < 0x0180) + c = atari8_awp_page01[wc-0x0100]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_awp_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc == 0x250c) + c = 0x91; + else if (wc >= 0x2570 && wc < 0x25e8) + c = atari8_awp_page25[wc-0x2570]; + else if (wc >= 0x2660 && wc < 0x2668) + c = atari8_awp_page26[wc-0x2660]; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_capek.h libiconv-1.14/lib/atari8_capek.h --- libiconv-1.14-orig/lib/atari8_capek.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_capek.h 2011-09-22 14:36:05.000000000 +0000 @@ -0,0 +1,177 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Czech Čapek ATASCII + */ + +static const unsigned short atari8_capek_2uni_1[48] = { + /* 0x00 */ + 0xfffd, 0x00c1, 0x002b, 0x010c, 0x010f, 0x00c9, 0x0028, 0x0024, + 0x002a, 0x00cd, 0x0147, 0x00d3, 0x013e, 0x011a, 0x0148, 0x00f3, + /* 0x10 */ + 0x00fc, 0x0155, 0x0158, 0x0160, 0x0165, 0x00da, 0x00a7, 0x00a9, + 0x00f4, 0x00dd, 0x017d, 0x241b, 0x016e, 0x0164, 0x2190, 0x010e, + /* 0x20 */ + 0x0020, 0x0021, 0x0022, 0x0023, 0x0029, 0x011b, 0x0161, 0x010d, + 0x017e, 0x00ed, 0x00e1, 0x016f, 0x002c, 0x002d, 0x002e, 0x002f, +}; +static const unsigned short atari8_capek_2uni_2[192] = { + /* 0x40 */ + 0x0159, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0x50 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x00e9, 0x013d, 0x00fa, 0x00c4, 0x005f, + /* 0x60 */ + 0x00fd, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x00dc, 0x007c, 0x21b0, 0x00f6, 0x00e4, + /* 0x80 */ + 0xfffd, 0x00c1, 0x002b, 0x010c, 0x010f, 0x00c9, 0x0028, 0x0024, + 0x002a, 0x00cd, 0x0147, 0x00d3, 0x013e, 0x011a, 0x0148, 0x00f3, + /* 0x90 */ + 0x00fc, 0x0155, 0x0158, 0x0160, 0x0165, 0x00da, 0x00a7, 0x00a9, + 0x00f4, 0x00dd, 0x017d, 0x000a, 0x016e, 0x0164, 0x2190, 0x010e, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0029, 0x011b, 0x0161, 0x010d, + 0x017e, 0x00ed, 0x00e1, 0x016f, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0159, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x00e9, 0x013d, 0x00fa, 0x00c4, 0x005f, + /* 0xe0 */ + 0x00fd, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x00dc, 0x007c, 0x21b0, 0x00f6, 0x00e4, +}; + +static int +atari8_capek_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x30) { + unsigned short wc = atari8_capek_2uni_1[c]; + if (wc != 0xfffd) { + *pwc = (ucs4_t) wc; + return 1; + } + } + else if (c < 0x40) { + *pwc = (ucs4_t) c; + return 1; + } + else { + unsigned short wc = atari8_capek_2uni_2[c-0x40]; + if (wc != 0xfffd) { + *pwc = (ucs4_t) wc; + return 1; + } + } + return RET_ILSEQ; +} + +static const unsigned char atari8_capek_page00[248] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0x87, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x86, 0xa4, 0x88, 0x82, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x96, /* 0xa0-0xa7 */ + 0x00, 0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0x00, 0x81, 0x00, 0x00, 0xde, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x85, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x8b, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x95, 0x00, 0xfb, 0x99, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0xaa, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */ + 0x00, 0xdb, 0x00, 0x00, 0x00, 0xa9, 0x00, 0x00, /* 0xe8-0xef */ + 0x00, 0x00, 0x00, 0x8f, 0x98, 0x00, 0xfe, 0x00, /* 0xf0-0xf7 */ + 0x00, 0x00, 0xdd, 0x00, 0x90, 0xe0, 0x00, 0x00, /* 0xf8-0xff */ +}; +static const unsigned char atari8_capek_page01[120] = { + 0x00, 0x00, 0x00, 0x00, 0x83, 0xa7, 0x9f, 0x84, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x8d, 0xa5, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x8c, 0x00, /* 0x38-0x3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, /* 0x40-0x47 */ + 0x8e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00, /* 0x50-0x57 */ + 0x92, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x93, 0xa6, 0x00, 0x00, 0x9d, 0x94, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0xab, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x9a, 0xa8, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_capek_page21[40] = { + 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; + +static int +atari8_capek_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0100) + c = atari8_capek_page00[wc-0x0008]; + else if (wc >= 0x0108 && wc < 0x0180) + c = atari8_capek_page01[wc-0x0108]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_capek_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc == 0x2588) + c = 0xa0; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_graph.h libiconv-1.14/lib/atari8_graph.h --- libiconv-1.14-orig/lib/atari8_graph.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_graph.h 2011-09-22 14:36:12.000000000 +0000 @@ -0,0 +1,157 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Semi-graphic ATASCII + */ + +static const unsigned short atari8_graph_2uni_1[32] = { + /* 0x00 */ + 0x2665, 0x251c, 0x2595, 0x2518, 0x2524, 0x2510, 0x2571, 0x2572, + 0x25e2, 0x2597, 0x25e3, 0x259d, 0x2598, 0x2594, 0x2581, 0x2596, + /* 0x10 */ + 0x2663, 0x250c, 0x2500, 0x253c, 0x25cf, 0x2584, 0x258f, 0x252c, + 0x2534, 0x258c, 0x2514, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_graph_2uni_2[160] = { + /* 0x60 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x2665, 0x251c, 0x2589, 0x2518, 0x2524, 0x2510, 0x2571, 0x2572, + 0x25e4, 0x259b, 0x25e5, 0x2599, 0x259f, 0x2587, 0x2581, 0x259c, + /* 0x90 */ + 0x2663, 0x250c, 0x2500, 0x253c, 0x25cf, 0x2580, 0x258f, 0x252c, + 0x2534, 0x2590, 0x2514, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_graph_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_graph_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_graph_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_graph_page00[120] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_graph_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_graph_page25[232] = { + 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x85, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x83, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x86, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x95, 0x8e, 0x00, 0x00, 0x15, 0x00, 0x00, 0x8d, /* 0x80-0x87 */ + 0xa0, 0x82, 0x00, 0x00, 0x19, 0x00, 0x00, 0x96, /* 0x88-0x8f */ + 0x99, 0x00, 0x00, 0x00, 0x0d, 0x02, 0x0f, 0x09, /* 0x90-0x97 */ + 0x0c, 0x8b, 0x00, 0x89, 0x8f, 0x0b, 0x00, 0x8c, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x08, 0x0a, 0x88, 0x8a, 0x00, 0x00, /* 0xe0-0xe7 */ +}; +static const unsigned char atari8_graph_page26[8] = { + 0xfb, 0x00, 0x00, 0x90, 0x00, 0x80, 0xe0, 0x00, /* 0x60-0x67 */ +}; + +static int +atari8_graph_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0080) + c = atari8_graph_page00[wc-0x0008]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_graph_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc >= 0x2500 && wc < 0x25e8) + c = atari8_graph_page25[wc-0x2500]; + else if (wc >= 0x2660 && wc < 0x2668) + c = atari8_graph_page26[wc-0x2660]; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_int.h libiconv-1.14/lib/atari8_int.h --- libiconv-1.14-orig/lib/atari8_int.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_int.h 2011-09-22 14:36:22.000000000 +0000 @@ -0,0 +1,147 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit International ATASCII2 + */ + +static const unsigned short atari8_int_2uni_1[32] = { + /* 0x00 */ + 0x00e1, 0x00f9, 0x00d1, 0x00c9, 0x00e7, 0x00f4, 0x00f2, 0x00ec, + 0x00a3, 0x00ef, 0x00fc, 0x00e4, 0x00d6, 0x00fa, 0x00f3, 0x00f6, + /* 0x10 */ + 0x00dc, 0x00e2, 0x00fb, 0x00ee, 0x00e9, 0x00e8, 0x00f1, 0x00ea, + 0x00e5, 0x00e0, 0x00c5, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_int_2uni_2[160] = { + /* 0x60 */ + 0x00a1, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x00c4, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x00e1, 0x00f9, 0x00d1, 0x00c9, 0x00e7, 0x00f4, 0x00f2, 0x00ec, + 0x00a3, 0x00ef, 0x00fc, 0x00e4, 0x00d6, 0x00fa, 0x00f3, 0x00f6, + /* 0x90 */ + 0x00dc, 0x00e2, 0x00fb, 0x00ee, 0x00e9, 0x00e8, 0x00f1, 0x00ea, + 0x00e5, 0x00e0, 0x00c5, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x00a1, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x00c4, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_int_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_int_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_int_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_int_page00[248] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0xe0, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0x00, 0x00, 0x00, 0x00, 0xfb, 0x9a, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */ + 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x99, 0x80, 0x91, 0x00, 0x8b, 0x98, 0x00, 0x84, /* 0xe0-0xe7 */ + 0x95, 0x94, 0x97, 0x00, 0x87, 0x00, 0x93, 0x89, /* 0xe8-0xef */ + 0x00, 0x96, 0x86, 0x8e, 0x85, 0x00, 0x8f, 0x00, /* 0xf0-0xf7 */ + 0x00, 0x81, 0x8d, 0x92, 0x8a, 0x00, 0x00, 0x00, /* 0xf8-0xff */ +}; +static const unsigned char atari8_int_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_int_page25[64] = { + 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ +}; + +static int +atari8_int_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0100) + c = atari8_int_page00[wc-0x0008]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_int_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc >= 0x2588 && wc < 0x25c8) + c = atari8_int_page25[wc-0x2588]; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_karen.h libiconv-1.14/lib/atari8_karen.h --- libiconv-1.14-orig/lib/atari8_karen.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_karen.h 2011-09-22 14:36:28.000000000 +0000 @@ -0,0 +1,168 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Polish P.Z.Karen ATASCII + */ + +static const unsigned short atari8_karen_2uni_1[32] = { + /* 0x00 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x00f6, 0x00d6, + 0x00a3, 0x00fc, 0x00df, 0x0141, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x10 */ + 0x00d3, 0x0474, 0x0118, 0x015b, 0x00e4, 0x00dc, 0x0106, 0x0104, + 0x017b, 0x00c4, 0x017c, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_karen_2uni_2[160] = { + /* 0x60 */ + 0x00a0, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0xfeff, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x00f6, 0x00d6, + 0x00a3, 0x00fc, 0x00df, 0x0141, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x90 */ + 0x00d3, 0x0474, 0x0118, 0x015b, 0x00e4, 0x00dc, 0x0106, 0x0104, + 0x017b, 0x00c4, 0x017c, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x00a0, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0xfeff, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_karen_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_karen_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_karen_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_karen_page00[376] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0xe0, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0x00, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x87, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x8a, /* 0xd8-0xdf */ + 0x00, 0x00, 0x00, 0x00, 0x94, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */ + 0x00, 0x00, 0x00, 0x8f, 0x00, 0x00, 0x86, 0x00, /* 0xf0-0xf7 */ + 0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, /* 0xf8-0xff */ + /* 0x0100 */ + 0x00, 0x00, 0x00, 0x00, 0x97, 0x81, 0x96, 0x83, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x92, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0x8b, 0x8c, 0x8d, 0x8e, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x84, 0x93, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x80, 0x82, 0x98, 0x9a, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_karen_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_karen_page25[64] = { + 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ +}; + +static int +atari8_karen_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0180) + c = atari8_karen_page00[wc-0x0008]; + else if (wc == 0x0474) + c = 0x91; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_karen_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc >= 0x2588 && wc < 0x25c8) + c = atari8_karen_page25[wc-0x2588]; + else if (wc == 0xfeff) + c = 0xfb; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_panther.h libiconv-1.14/lib/atari8_panther.h --- libiconv-1.14-orig/lib/atari8_panther.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_panther.h 2011-09-22 14:36:35.000000000 +0000 @@ -0,0 +1,171 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Polish Panther ATASCII + */ + +static const unsigned short atari8_panther_2uni_1[32] = { + /* 0x00 */ + 0x2665, 0x0105, 0x2595, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e2, 0x2597, 0x25e3, 0x017a, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x10 */ + 0x00d3, 0x0104, 0x0118, 0x015b, 0x25cf, 0x2584, 0x0106, 0x252c, + 0x017b, 0x258c, 0x017c, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_panther_2uni_2[160] = { + /* 0x60 */ + 0x0179, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x0141, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x2665, 0x0105, 0x2595, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e4, 0x259b, 0x25e5, 0x017a, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x90 */ + 0x00d3, 0x0104, 0x0118, 0x015b, 0x25cf, 0x2580, 0x0106, 0x252c, + 0x017b, 0x2590, 0x017c, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x0179, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x0141, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_panther_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_panther_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_panther_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_panther_page00[120] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_panther_page00_1[40] = { + 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */ + 0x00, 0x00, 0x00, 0x8f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */ +}; +static const unsigned char atari8_panther_page01[128] = { + 0x00, 0x00, 0x00, 0x00, 0x91, 0x81, 0x96, 0x83, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x92, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0xfb, 0x8c, 0x8d, 0x8e, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x84, 0x93, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0xe0, 0x8b, 0x98, 0x9a, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_panther_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_panther_page25[120] = { + 0x00, 0x86, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x95, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0xa0, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x99, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x09, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x08, 0x0a, 0x88, 0x8a, 0x00, 0x00, /* 0xe0-0xe7 */ +}; + +static int +atari8_panther_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0080) + c = atari8_panther_page00[wc-0x0008]; + else if (wc >= 0x00d0 && wc < 0x00f8) + c = atari8_panther_page00_1[wc-0x00d0]; + else if (wc >= 0x0100 && wc < 0x0180) + c = atari8_panther_page01[wc-0x0100]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_panther_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc == 0x252c) + c = 0x97; + else if (wc >= 0x2570 && wc < 0x25e8) + c = atari8_panther_page25[wc-0x2570]; + else if (wc == 0x2665) + c = 0x80; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_pe.h libiconv-1.14/lib/atari8_pe.h --- libiconv-1.14-orig/lib/atari8_pe.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_pe.h 2011-09-22 14:36:46.000000000 +0000 @@ -0,0 +1,175 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Polish Polski Edytor ATASCII + */ + +static const unsigned short atari8_pe_2uni_1[32] = { + /* 0x00 */ + 0x2665, 0x0105, 0x2595, 0x0107, 0x2524, 0x0119, 0x2571, 0x2572, + 0x25e2, 0x2597, 0x25e3, 0x259d, 0x0142, 0x2594, 0x0144, 0x00f3, + /* 0x10 */ + 0x2663, 0x250c, 0x2500, 0x015b, 0x25cf, 0x2584, 0x258f, 0x252c, + 0x017a, 0x258c, 0x017c, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_pe_2uni_2[160] = { + /* 0x60 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x2665, 0x0105, 0x2589, 0x0107, 0x2524, 0x0119, 0x2571, 0x2572, + 0x25e4, 0x259b, 0x25e5, 0x2599, 0x0142, 0x2587, 0x0144, 0x00f3, + /* 0x90 */ + 0x2663, 0x250c, 0x2500, 0x015b, 0x25cf, 0x2584, 0x258f, 0x252c, + 0x017a, 0x2590, 0x017c, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x2660, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_pe_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_pe_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_pe_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_pe_page00[120] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_pe_page01[128] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x83, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0x00, 0x8c, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x98, 0x00, 0x9a, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_pe_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_pe_page25[48] = { + 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, /* 0x28-0x2f */ +}; +static const unsigned char atari8_pe_page25_1[120] = { + 0x00, 0x86, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x00, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x8d, /* 0x80-0x87 */ + 0xa0, 0x82, 0x00, 0x00, 0x19, 0x00, 0x00, 0x96, /* 0x88-0x8f */ + 0x99, 0x00, 0x00, 0x00, 0x0d, 0x02, 0x00, 0x09, /* 0x90-0x97 */ + 0x00, 0x8b, 0x00, 0x89, 0x00, 0x0b, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x08, 0x0a, 0x88, 0x8a, 0x00, 0x00, /* 0xe0-0xe7 */ +}; +static const unsigned char atari8_pe_page26[8] = { + 0xfb, 0x00, 0x00, 0x90, 0x00, 0x80, 0xe0, 0x00, /* 0x60-0x67 */ +}; + +static int +atari8_pe_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0080) + c = atari8_pe_page00[wc-0x0008]; + else if (wc == 0x00f3) + c = 0x8f; + else if (wc >= 0x0100 && wc < 0x0180) + c = atari8_pe_page01[wc-0x0100]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_pe_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc >= 0x2500 && wc < 0x2530) + c = atari8_pe_page25[wc-0x2500]; + else if (wc >= 0x2570 && wc < 0x25e8) + c = atari8_pe_page25_1[wc-0x2570]; + else if (wc >= 0x2660 && wc < 0x2668) + c = atari8_pe_page26[wc-0x2660]; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/atari8_xlent.h libiconv-1.14/lib/atari8_xlent.h --- libiconv-1.14-orig/lib/atari8_xlent.h 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/lib/atari8_xlent.h 2011-09-22 14:36:56.000000000 +0000 @@ -0,0 +1,171 @@ +/* + * Copyright (C) 1999-2002 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301, USA. + */ + +/* + * Atari 8-bit Polish First XLEnt Word Processor ATASCII + */ + +static const unsigned short atari8_xlent_2uni_1[32] = { + /* 0x00 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e2, 0x2597, 0x25e3, 0x259d, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x10 */ + 0x00d3, 0x250c, 0x0118, 0x015b, 0x25cf, 0x2584, 0x0106, 0x0104, + 0x017b, 0x258c, 0x017c, 0x241b, 0x2191, 0x2193, 0x2190, 0x2192, +}; +static const unsigned short atari8_xlent_2uni_2[160] = { + /* 0x60 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0x70 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x0141, 0x007c, 0x21b0, 0x25c0, 0x25b6, + /* 0x80 */ + 0x0179, 0x0105, 0x017a, 0x0107, 0x015a, 0x0119, 0x2571, 0x2572, + 0x25e4, 0x259b, 0x25e5, 0x2599, 0x0142, 0x0143, 0x0144, 0x00f3, + /* 0x90 */ + 0x00d3, 0x250c, 0x0118, 0x015b, 0x25cf, 0x2580, 0x0106, 0x0104, + 0x017b, 0x2590, 0x017c, 0x000a, 0x2191, 0x2193, 0x2190, 0x2192, + /* 0xa0 */ + 0x2588, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, + 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, + /* 0xb0 */ + 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, + 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, + /* 0xc0 */ + 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, + 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, + /* 0xd0 */ + 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, + 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, + /* 0xe0 */ + 0x2666, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, + 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, + /* 0xf0 */ + 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, + 0x0078, 0x0079, 0x007a, 0x0141, 0x007c, 0x21b0, 0x25c0, 0x25b6, +}; + +static int +atari8_xlent_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n) +{ + unsigned char c = *s; + if (c < 0x20) + *pwc = (ucs4_t) atari8_xlent_2uni_1[c]; + else if (c < 0x60) + *pwc = (ucs4_t) c; + else + *pwc = (ucs4_t) atari8_xlent_2uni_2[c-0x60]; + return 1; +} + +static const unsigned char atari8_xlent_page00[120] = { + 0x00, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x20-0x27 */ + 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x28-0x2f */ + 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x30-0x37 */ + 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x38-0x3f */ + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x40-0x47 */ + 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x48-0x4f */ + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x50-0x57 */ + 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x58-0x5f */ + 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x60-0x67 */ + 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x68-0x6f */ + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x70-0x77 */ + 0xf8, 0xf9, 0xfa, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_xlent_page00_1[40] = { + 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */ + 0x00, 0x00, 0x00, 0x8f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */ +}; +static const unsigned char atari8_xlent_page01[128] = { + 0x00, 0x00, 0x00, 0x00, 0x97, 0x81, 0x96, 0x83, /* 0x00-0x07 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */ + 0x92, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */ + 0x00, 0xfb, 0x8c, 0x8d, 0x8e, 0x00, 0x00, 0x00, /* 0x40-0x47 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */ + 0x00, 0x00, 0x84, 0x93, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x80, 0x82, 0x98, 0x9a, 0x00, 0x00, 0x00, /* 0x78-0x7f */ +}; +static const unsigned char atari8_xlent_page21[40] = { + 0x9e, 0x9c, 0x9f, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */ +}; +static const unsigned char atari8_xlent_page25[120] = { + 0x00, 0x86, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */ + 0x95, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, /* 0x80-0x87 */ + 0xa0, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, /* 0x88-0x8f */ + 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, /* 0x90-0x97 */ + 0x00, 0x8b, 0x00, 0x89, 0x00, 0x0b, 0x00, 0x00, /* 0x98-0x9f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, /* 0xb0-0xb7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */ + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0xc8-0xcf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */ + 0x00, 0x00, 0x08, 0x0a, 0x88, 0x8a, 0x00, 0x00, /* 0xe0-0xe7 */ +}; + +static int +atari8_xlent_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) +{ + unsigned char c = 0; + if (wc >= 0x0008 && wc < 0x0080) + c = atari8_xlent_page00[wc-0x0008]; + else if (wc >= 0x00d0 && wc < 0x00f8) + c = atari8_xlent_page00_1[wc-0x00d0]; + else if (wc >= 0x0100 && wc < 0x0180) + c = atari8_xlent_page01[wc-0x0100]; + else if (wc >= 0x2190 && wc < 0x21b8) + c = atari8_xlent_page21[wc-0x2190]; + else if (wc == 0x241b) + c = 0x1b; + else if (wc == 0x250c) + c = 0x91; + else if (wc >= 0x2570 && wc < 0x25e8) + c = atari8_xlent_page25[wc-0x2570]; + else if (wc == 0x2666) + c = 0xe0; + if (c != 0) { + *r = c; + return 1; + } + return RET_ILUNI; +} diff -Naur libiconv-1.14-orig/lib/converters.h libiconv-1.14/lib/converters.h --- libiconv-1.14-orig/lib/converters.h 2010-11-24 02:24:03.000000000 +0000 +++ libiconv-1.14/lib/converters.h 2011-09-22 12:56:55.000000000 +0000 @@ -294,5 +294,13 @@ #include "tds565.h" #include "atarist.h" #include "riscos1.h" +#include "atari8_graph.h" +#include "atari8_int.h" +#include "atari8_karen.h" +#include "atari8_awp.h" +#include "atari8_xlent.h" +#include "atari8_panther.h" +#include "atari8_pe.h" +#include "atari8_capek.h" #endif diff -Naur libiconv-1.14-orig/lib/encodings_extra.def libiconv-1.14/lib/encodings_extra.def --- libiconv-1.14-orig/lib/encodings_extra.def 2009-06-21 11:17:33.000000000 +0000 +++ libiconv-1.14/lib/encodings_extra.def 2011-09-22 14:46:53.000000000 +0000 @@ -55,3 +55,48 @@ ), riscos1, { riscos1_mbtowc, NULL }, { riscos1_wctomb, NULL }) + +DEFENCODING(( "ATARI8", + "ATARI8-GRAPH", "ATARI8-ATASCII", "ATASCII", + ), + atari8_graph, + { atari8_graph_mbtowc, NULL }, { atari8_graph_wctomb, NULL }) + +DEFENCODING(( "ATARI8-INT", + "ATARI8-ATASCII2", "ATASCII2", + ), + atari8_int, + { atari8_int_mbtowc, NULL }, { atari8_int_wctomb, NULL }) + +DEFENCODING(( "ATARI8-KAREN", + "ATARI8-PL", + ), + atari8_karen, + { atari8_karen_mbtowc, NULL }, { atari8_karen_wctomb, NULL }) + +DEFENCODING(( "ATARI8-AWP", + ), + atari8_awp, + { atari8_awp_mbtowc, NULL }, { atari8_awp_wctomb, NULL }) + +DEFENCODING(( "ATARI8-XLENT", + ), + atari8_xlent, + { atari8_xlent_mbtowc, NULL }, { atari8_xlent_wctomb, NULL }) + +DEFENCODING(( "ATARI8-PANTHER", + ), + atari8_panther, + { atari8_panther_mbtowc, NULL }, { atari8_panther_wctomb, NULL }) + +DEFENCODING(( "ATARI8-PE", + ), + atari8_pe, + { atari8_pe_mbtowc, NULL }, { atari8_pe_wctomb, NULL }) + +DEFENCODING(( "ATARI8-CAPEK", + "ATARI8-CZ", + ), + atari8_capek, + { atari8_capek_mbtowc, NULL }, { atari8_capek_wctomb, NULL }) + diff -Naur libiconv-1.14-orig/lib/flags.h libiconv-1.14/lib/flags.h --- libiconv-1.14-orig/lib/flags.h 2011-08-07 17:49:13.000000000 +0000 +++ libiconv-1.14/lib/flags.h 2011-09-22 12:57:36.000000000 +0000 @@ -155,3 +155,11 @@ #define ei_tds565_oflags (0) #define ei_atarist_oflags (HAVE_ACCENTS) #define ei_riscos1_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS) +#define ei_atari8_graph_oflags (HAVE_ACCENTS) +#define ei_atari8_int_oflags (HAVE_ACCENTS) +#define ei_atari8_karen_oflags (HAVE_ACCENTS) +#define ei_atari8_awp_oflags (HAVE_ACCENTS) +#define ei_atari8_xlent_oflags (HAVE_ACCENTS) +#define ei_atari8_panther_oflags (HAVE_ACCENTS) +#define ei_atari8_pe_oflags (HAVE_ACCENTS) +#define ei_atari8_capek_oflags (HAVE_ACCENTS) diff -Naur libiconv-1.14-orig/man/iconv_open.3 libiconv-1.14/man/iconv_open.3 --- libiconv-1.14-orig/man/iconv_open.3 2010-11-24 02:24:03.000000000 +0000 +++ libiconv-1.14/man/iconv_open.3 2011-09-22 12:58:02.000000000 +0000 @@ -166,7 +166,8 @@ Platform specifics .nf .fi -ATARIST, RISCOS\-LATIN1 +ATARIST, RISCOS\-LATIN1, +ATARI8\-{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,PL,CAPEK,CZ,ATASCII,ATASCII2}, ATASCII, ATASCII2 .PP The empty encoding name "" is equivalent to "char": it denotes the locale dependent character encoding. diff -Naur libiconv-1.14-orig/man/iconv_open.3.html libiconv-1.14/man/iconv_open.3.html --- libiconv-1.14-orig/man/iconv_open.3.html 2011-08-07 17:49:14.000000000 +0000 +++ libiconv-1.14/man/iconv_open.3.html 2011-09-22 13:41:51.000000000 +0000 @@ -231,7 +231,8 @@

Platform specifics

ATARIST, -RISCOS−LATIN1

+RISCOS−LATIN1, +ATARI8−{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,PL,CAPEK,CZ}, ATASCII, ATASCII2

The empty encoding name "" is equivalent to diff -Naur libiconv-1.14-orig/po/libiconv.pot libiconv-1.14/po/libiconv.pot --- libiconv-1.14-orig/po/libiconv.pot 2011-08-07 17:48:03.000000000 +0000 +++ libiconv-1.14/po/libiconv.pot 2011-09-22 14:32:58.000000000 +0000 @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: GNU libiconv 1.14\n" +"Project-Id-Version: GNU libiconv 1.14-atari\n" "Report-Msgid-Bugs-To: bug-gnu-libiconv@gnu.org\n" -"POT-Creation-Date: 2011-08-07 15:24+0200\n" +"POT-Creation-Date: 2011-09-22 16:32+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff -Naur libiconv-1.14-orig/tests/ATARI8-AWP.TXT libiconv-1.14/tests/ATARI8-AWP.TXT --- libiconv-1.14-orig/tests/ATARI8-AWP.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-AWP.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x0179 +0x01 0x0105 +0x02 0x017A +0x03 0x0107 +0x04 0x015A +0x05 0x0119 +0x06 0x2571 +0x07 0x2572 +0x08 0x25E2 +0x09 0x2597 +0x0A 0x25E3 +0x0B 0x0141 +0x0C 0x0142 +0x0D 0x0143 +0x0E 0x0144 +0x0F 0x00F3 +0x10 0x00D3 +0x11 0x250C +0x12 0x0118 +0x13 0x015B +0x14 0x25CF +0x15 0x2584 +0x16 0x0106 +0x17 0x0104 +0x18 0x017B +0x19 0x258C +0x1A 0x017C +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x2666 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x2660 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-CAPEK.TXT libiconv-1.14/tests/ATARI8-CAPEK.TXT --- libiconv-1.14-orig/tests/ATARI8-CAPEK.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-CAPEK.TXT 2011-09-22 13:44:30.000000000 +0000 @@ -0,0 +1,254 @@ +0x01 0x00C1 +0x02 0x002B +0x03 0x010C +0x04 0x010F +0x05 0x00C9 +0x06 0x0028 +0x07 0x0024 +0x08 0x002A +0x09 0x00CD +0x0A 0x0147 +0x0B 0x00D3 +0x0C 0x013E +0x0D 0x011A +0x0E 0x0148 +0x0F 0x00F3 +0x10 0x00FC +0x11 0x0155 +0x12 0x0158 +0x13 0x0160 +0x14 0x0165 +0x15 0x00DA +0x16 0x00A7 +0x17 0x00A9 +0x18 0x00F4 +0x19 0x00DD +0x1A 0x017D +0x1B 0x241B +0x1C 0x016E +0x1D 0x0164 +0x1E 0x2190 +0x1F 0x010E +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0029 +0x25 0x011B +0x26 0x0161 +0x27 0x010D +0x28 0x017E +0x29 0x00ED +0x2A 0x00E1 +0x2B 0x016F +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0159 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x00E9 +0x5C 0x013D +0x5D 0x00FA +0x5E 0x00C4 +0x5F 0x005F +0x60 0x00FD +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x00DC +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x00F6 +0x7F 0x00E4 +0x01 0x00C1 +0x02 0x002B +0x03 0x010C +0x04 0x010F +0x05 0x00C9 +0x06 0x0028 +0x07 0x0024 +0x08 0x002A +0x09 0x00CD +0x0A 0x0147 +0x0B 0x00D3 +0x0C 0x013E +0x0D 0x011A +0x0E 0x0148 +0x0F 0x00F3 +0x10 0x00FC +0x11 0x0155 +0x12 0x0158 +0x13 0x0160 +0x14 0x0165 +0x15 0x00DA +0x16 0x00A7 +0x17 0x00A9 +0x18 0x00F4 +0x19 0x00DD +0x1A 0x017D +0x9B 0x000A +0x1C 0x016E +0x1D 0x0164 +0x1E 0x2190 +0x1F 0x010E +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0029 +0x25 0x011B +0x26 0x0161 +0x27 0x010D +0x28 0x017E +0x29 0x00ED +0x2A 0x00E1 +0x2B 0x016F +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0159 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x00E9 +0x5C 0x013D +0x5D 0x00FA +0x5E 0x00C4 +0x5F 0x005F +0x60 0x00FD +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x00DC +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x00F6 +0x7F 0x00E4 diff -Naur libiconv-1.14-orig/tests/ATARI8-GRAPH.TXT libiconv-1.14/tests/ATARI8-GRAPH.TXT --- libiconv-1.14-orig/tests/ATARI8-GRAPH.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-GRAPH.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x2665 +0x01 0x251C +0x02 0x2595 +0x03 0x2518 +0x04 0x2524 +0x05 0x2510 +0x06 0x2571 +0x07 0x2572 +0x08 0x25E2 +0x09 0x2597 +0x0A 0x25E3 +0x0B 0x259D +0x0C 0x2598 +0x0D 0x2594 +0x0E 0x2581 +0x0F 0x2596 +0x10 0x2663 +0x11 0x250C +0x12 0x2500 +0x13 0x253C +0x14 0x25CF +0x15 0x2584 +0x16 0x258F +0x17 0x252C +0x18 0x2534 +0x19 0x258C +0x1A 0x2514 +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x2666 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x2660 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-INT.TXT libiconv-1.14/tests/ATARI8-INT.TXT --- libiconv-1.14-orig/tests/ATARI8-INT.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-INT.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x00E1 +0x01 0x00F9 +0x02 0x00D1 +0x03 0x00C9 +0x04 0x00E7 +0x05 0x00F4 +0x06 0x00F2 +0x07 0x00EC +0x08 0x00A3 +0x09 0x00EF +0x0A 0x00FC +0x0B 0x00E4 +0x0C 0x00D6 +0x0D 0x00FA +0x0E 0x00F3 +0x0F 0x00F6 +0x10 0x00DC +0x11 0x00E2 +0x12 0x00FB +0x13 0x00EE +0x14 0x00E9 +0x15 0x00E8 +0x16 0x00F1 +0x17 0x00EA +0x18 0x00E5 +0x19 0x00E0 +0x1A 0x00C5 +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x00A1 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x00C4 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-KAREN.TXT libiconv-1.14/tests/ATARI8-KAREN.TXT --- libiconv-1.14-orig/tests/ATARI8-KAREN.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-KAREN.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,122 @@ +0x00 0x0179 +0x01 0x0105 +0x02 0x017A +0x03 0x0107 +0x04 0x015A +0x05 0x0119 +0x0A 0x00DF +0x0B 0x0141 +0x0C 0x0142 +0x0D 0x0143 +0x0E 0x0144 +0x0F 0x00F3 +0x10 0x00D3 +0x11 0x0474 +0x12 0x0118 +0x13 0x015B +0x16 0x0106 +0x17 0x0104 +0x18 0x017B +0x1A 0x017C +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x00A0 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0xFEFF +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-PANTHER.TXT libiconv-1.14/tests/ATARI8-PANTHER.TXT --- libiconv-1.14-orig/tests/ATARI8-PANTHER.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-PANTHER.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x2665 +0x01 0x0105 +0x02 0x2595 +0x03 0x0107 +0x04 0x015A +0x05 0x0119 +0x06 0x2571 +0x07 0x2572 +0x08 0x25E2 +0x09 0x2597 +0x0A 0x25E3 +0x0B 0x017A +0x0C 0x0142 +0x0D 0x0143 +0x0E 0x0144 +0x0F 0x00F3 +0x10 0x00D3 +0x11 0x0104 +0x12 0x0118 +0x13 0x015B +0x14 0x25CF +0x15 0x2584 +0x16 0x0106 +0x17 0x252C +0x18 0x017B +0x19 0x258C +0x1A 0x017C +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x0179 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x0141 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-PE.TXT libiconv-1.14/tests/ATARI8-PE.TXT --- libiconv-1.14-orig/tests/ATARI8-PE.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-PE.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x2665 +0x01 0x0105 +0x02 0x2595 +0x03 0x0107 +0x04 0x2524 +0x05 0x0119 +0x06 0x2571 +0x07 0x2572 +0x08 0x25E2 +0x09 0x2597 +0x0A 0x25E3 +0x0B 0x259D +0x0C 0x0142 +0x0D 0x2594 +0x0E 0x0144 +0x0F 0x00F3 +0x10 0x2663 +0x11 0x250C +0x12 0x2500 +0x13 0x015B +0x14 0x25CF +0x15 0x2584 +0x16 0x258F +0x17 0x252C +0x18 0x017A +0x19 0x258C +0x1A 0x017C +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x2666 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x2660 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/ATARI8-XLENT.TXT libiconv-1.14/tests/ATARI8-XLENT.TXT --- libiconv-1.14-orig/tests/ATARI8-XLENT.TXT 1970-01-01 00:00:00.000000000 +0000 +++ libiconv-1.14/tests/ATARI8-XLENT.TXT 2011-09-22 00:49:28.000000000 +0000 @@ -0,0 +1,129 @@ +0x00 0x0179 +0x01 0x0105 +0x02 0x017A +0x03 0x0107 +0x04 0x015A +0x05 0x0119 +0x06 0x2571 +0x07 0x2572 +0x08 0x25E2 +0x09 0x2597 +0x0A 0x25E3 +0x0B 0x259D +0x0C 0x0142 +0x0D 0x0143 +0x0E 0x0144 +0x0F 0x00F3 +0x10 0x00D3 +0x11 0x250C +0x12 0x0118 +0x13 0x015B +0x14 0x25CF +0x15 0x2584 +0x16 0x0106 +0x17 0x0104 +0x18 0x017B +0x19 0x258C +0x1A 0x017C +0x1B 0x241B +0x1C 0x2191 +0x1D 0x2193 +0x1E 0x2190 +0x1F 0x2192 +0x20 0x0020 +0x21 0x0021 +0x22 0x0022 +0x23 0x0023 +0x24 0x0024 +0x25 0x0025 +0x26 0x0026 +0x27 0x0027 +0x28 0x0028 +0x29 0x0029 +0x2A 0x002A +0x2B 0x002B +0x2C 0x002C +0x2D 0x002D +0x2E 0x002E +0x2F 0x002F +0x30 0x0030 +0x31 0x0031 +0x32 0x0032 +0x33 0x0033 +0x34 0x0034 +0x35 0x0035 +0x36 0x0036 +0x37 0x0037 +0x38 0x0038 +0x39 0x0039 +0x3A 0x003A +0x3B 0x003B +0x3C 0x003C +0x3D 0x003D +0x3E 0x003E +0x3F 0x003F +0x40 0x0040 +0x41 0x0041 +0x42 0x0042 +0x43 0x0043 +0x44 0x0044 +0x45 0x0045 +0x46 0x0046 +0x47 0x0047 +0x48 0x0048 +0x49 0x0049 +0x4A 0x004A +0x4B 0x004B +0x4C 0x004C +0x4D 0x004D +0x4E 0x004E +0x4F 0x004F +0x50 0x0050 +0x51 0x0051 +0x52 0x0052 +0x53 0x0053 +0x54 0x0054 +0x55 0x0055 +0x56 0x0056 +0x57 0x0057 +0x58 0x0058 +0x59 0x0059 +0x5A 0x005A +0x5B 0x005B +0x5C 0x005C +0x5D 0x005D +0x5E 0x005E +0x5F 0x005F +0x60 0x2666 +0x61 0x0061 +0x62 0x0062 +0x63 0x0063 +0x64 0x0064 +0x65 0x0065 +0x66 0x0066 +0x67 0x0067 +0x68 0x0068 +0x69 0x0069 +0x6A 0x006A +0x6B 0x006B +0x6C 0x006C +0x6D 0x006D +0x6E 0x006E +0x6F 0x006F +0x70 0x0070 +0x71 0x0071 +0x72 0x0072 +0x73 0x0073 +0x74 0x0074 +0x75 0x0075 +0x76 0x0076 +0x77 0x0077 +0x78 0x0078 +0x79 0x0079 +0x7A 0x007A +0x7B 0x0141 +0x7C 0x007C +0x7D 0x21B0 +0x7E 0x25C0 +0x7F 0x25B6 +0x9B 0x000A diff -Naur libiconv-1.14-orig/tests/Makefile.in libiconv-1.14/tests/Makefile.in --- libiconv-1.14-orig/tests/Makefile.in 2010-11-24 02:24:03.000000000 +0000 +++ libiconv-1.14/tests/Makefile.in 2011-09-22 13:45:15.000000000 +0000 @@ -202,6 +202,14 @@ $(srcdir)/check-stateless $(srcdir) TDS565 $(srcdir)/check-stateless $(srcdir) ATARIST $(srcdir)/check-stateless $(srcdir) RISCOS-LATIN1 + $(srcdir)/check-stateless $(srcdir) ATARI8-GRAPH + $(srcdir)/check-stateless $(srcdir) ATARI8-INT + $(srcdir)/check-stateless $(srcdir) ATARI8-KAREN + $(srcdir)/check-stateless $(srcdir) ATARI8-AWP + $(srcdir)/check-stateless $(srcdir) ATARI8-XLENT + $(srcdir)/check-stateless $(srcdir) ATARI8-PANTHER + $(srcdir)/check-stateless $(srcdir) ATARI8-PE + $(srcdir)/check-stateless $(srcdir) ATARI8-CAPEK table-from : table-from.@OBJEXT@ ../lib/libiconv.la $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) table-from.@OBJEXT@ ../srclib/libicrt.a ../lib/libiconv.la -o $@ diff -Naur libiconv-1.14-orig/tools/Makefile libiconv-1.14/tools/Makefile --- libiconv-1.14-orig/tools/Makefile 2010-11-24 02:24:03.000000000 +0000 +++ libiconv-1.14/tools/Makefile 2011-09-22 14:47:59.000000000 +0000 @@ -122,7 +122,15 @@ tds565.h \ atarist.h \ riscos1.h \ - cjk_variants.h + cjk_variants.h \ + atari8_graph.h \ + atari8_int.h \ + atari8_karen.h \ + atari8_awp.h \ + atari8_xlent.h \ + atari8_panther.h \ + atari8_pe.h \ + atari8_capek.h all : $(ALL) @@ -514,6 +522,29 @@ riscos1.h : $(TABLESDIR)/recode-cvs/RISCOS-LATIN1.TXT 8bit_tab_to_h (echo '#'; cat $<) | ./8bit_tab_to_h RISCOS-LATIN1 riscos1 > $@ +atari8_graph.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-GRAPH.TXT + ./8bit_tab_to_h "Atari 8-bit Semi-graphic ATASCII" atari8_graph < $< > $@ + +atari8_int.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-INT.TXT + ./8bit_tab_to_h "Atari 8-bit International ATASCII2" atari8_int < $< > $@ + +atari8_karen.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-KAREN.TXT + ./8bit_tab_to_h "Atari 8-bit Polish P.Z.Karen ATASCII" atari8_karen < $< > $@ + +atari8_awp.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-AWP.TXT + ./8bit_tab_to_h "Atari 8-bit Polish Atari Writer + ATASCII" atari8_awp < $< > $@ + +atari8_xlent.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-XLENT.TXT + ./8bit_tab_to_h "Atari 8-bit Polish First XLEnt Word Processor ATASCII" atari8_xlent < $< > $@ + +atari8_panther.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-PANTHER.TXT + ./8bit_tab_to_h "Atari 8-bit Polish Panther ATASCII" atari8_panther < $< > $@ + +atari8_pe.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-PE.TXT + ./8bit_tab_to_h "Atari 8-bit Polish Polski Edytor ATASCII" atari8_pe < $< > $@ + +atari8_capek.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-CAPEK.TXT + ./8bit_tab_to_h "Atari 8-bit Czech Čapek ATASCII" atari8_capek < $< > $@ cjk_variants.h : $(TABLESDIR)/yasuoka/UniVariants cjk_variants ./cjk_variants < $< > $@