diff -Naur libiconv-1.14/ChangeLog libiconv-1.14-mono/ChangeLog
--- libiconv-1.14/ChangeLog	2013-03-21 18:44:29.000000000 +0100
+++ libiconv-1.14-mono/ChangeLog	2022-07-03 19:57:20.292477185 +0200
@@ -1,3 +1,24 @@
+2022-07-03  Jerzy Kut  <mono@protolabo.pl>
+
+	Implement ATARI8-EUROTEKST.
+
+2014-10-27  Jerzy Kut  <mono@protolabo.pl>
+
+	Implement and document ATARI8-TCHEKO, CP895/CP867, ZX80, ZX81, ZX82-*, PETSCII-*.
+	Corrections of ATARI8-CAPEK.
+
+2011-08-21  Jerzy Kut  <mono@protolabo.pl>
+
+	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  <bruno@clisp.org>
 
 	* Version 1.14 released.
diff -Naur libiconv-1.14/configure libiconv-1.14-mono/configure
--- libiconv-1.14/configure	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/configure	2013-03-21 18:44:21.000000000 +0100
@@ -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/configure.ac libiconv-1.14-mono/configure.ac
--- libiconv-1.14/configure.ac	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/configure.ac	2013-03-21 18:44:22.000000000 +0100
@@ -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/lib/aliases_extra.h libiconv-1.14-mono/lib/aliases_extra.h
--- libiconv-1.14/lib/aliases_extra.h	2013-03-21 18:44:26.000000000 +0100
+++ libiconv-1.14-mono/lib/aliases_extra.h	2022-07-03 19:43:38.715961934 +0200
@@ -10,3 +10,33 @@
   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-EUROTEKST", ei_atari8_eurotekst )
+  S(extra_26, "ATARI8-CAPEK", ei_atari8_capek )
+  S(extra_27, "ATARI8-CZ", ei_atari8_capek )
+  S(extra_28, "ATARI8-TCHEKO", ei_atari8_tcheko )
+  S(extra_29, "ZX80", ei_zx80 )
+  S(extra_30, "ZX81", ei_zx80 )
+  S(extra_31, "ZX82", ei_zx82 )
+  S(extra_32, "ZX82-PL", ei_zx82_pl )
+  S(extra_33, "ZXSPECTRUM", ei_zx82 )
+  S(extra_34, "ZXSPECTRUM-PL", ei_zx82_pl )
+  S(extra_35, "PETSCII-UC", ei_petscii_uc )
+  S(extra_36, "PETSCII", ei_petscii_uc )
+  S(extra_37, "PETSCII-LC", ei_petscii_lc )
+  S(extra_38, "CP895", ei_cp895_cp867 )
+  S(extra_39, "CP867", ei_cp895_cp867 )
+  S(extra_40, "KAMENICKY", ei_cp895_cp867 )
+  S(extra_41, "KEYBCS2", ei_cp895_cp867 )
diff -Naur libiconv-1.14/lib/atari8_awp.h libiconv-1.14-mono/lib/atari8_awp.h
--- libiconv-1.14/lib/atari8_awp.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_awp.h	2013-03-21 18:44:16.000000000 +0100
@@ -0,0 +1,167 @@
+/*
+ * 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[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_awp_page00_1[40] = {
+  0x00, 0x00, 0x00, 0x10, 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, 0x0f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+static const unsigned char atari8_awp_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x01, 0x16, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x12, 0x05, 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, 0x0b, 0x0c, 0x0d, 0x0e, 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, 0x04, 0x13, 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, 0x02, 0x18, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_awp_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_awp_page25[120] = {
+  0x00, 0x06, 0x07, 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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] = {
+  0x7b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_awp_page00[wc-0x0060];
+  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 = 0x11;
+  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/lib/atari8_capek.h libiconv-1.14-mono/lib/atari8_capek.h
--- libiconv-1.14/lib/atari8_capek.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_capek.h	2014-10-27 13:44:21.000000000 +0100
@@ -0,0 +1,158 @@
+/*
+ * 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 */
+  0xfeff, 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, 0x2926, 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, 0x007d, 0x00f6, 0x00e4,
+  /* 0x80 */
+  0xfeff, 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, 0x2926, 0x010e,
+  /* 0xa0 */
+  0x0020, 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, 0x007d, 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)
+    *pwc = (ucs4_t) atari8_capek_2uni_1[c];
+  else if (c < 0x40)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) atari8_capek_2uni_2[c-0x40];
+  return 1;
+}
+
+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, 0x21, 0x22, 0x23, 0x07, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x06, 0x24, 0x08, 0x02, 0x2c, 0x2d, 0x2e, 0x2f, /* 0x28-0x2f */
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 0x30-0x37 */
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, /* 0x38-0x3f */
+  0x00, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, /* 0x40-0x47 */
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, /* 0x48-0x4f */
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, /* 0x50-0x57 */
+  0x58, 0x59, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x5f, /* 0x58-0x5f */
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x7d, 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, 0x16, /* 0xa0-0xa7 */
+  0x00, 0x17, 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, 0x01, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x05, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x15, 0x00, 0x7b, 0x19, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x2a, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x5b, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x0f, 0x18, 0x00, 0x7e, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x00, 0x5d, 0x00, 0x10, 0x60, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char atari8_capek_page01[120] = {
+  0x00, 0x00, 0x00, 0x00, 0x03, 0x27, 0x1f, 0x04, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x0d, 0x25, 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, 0x5c, 0x0c, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, /* 0x40-0x47 */
+  0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, /* 0x50-0x57 */
+  0x12, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x13, 0x26, 0x00, 0x00, 0x1d, 0x14, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x2b, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x28, 0x00, /* 0x78-0x7f */
+};
+
+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 == 0x241b)
+    c = 0x1b;
+  else if (wc == 0x2926)
+    c = 0x1e;
+  else if (wc == 0xfeff)
+    c = 0x80;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/atari8_eurotekst.h libiconv-1.14-mono/lib/atari8_eurotekst.h
--- libiconv-1.14/lib/atari8_eurotekst.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_eurotekst.h	2022-07-03 20:02:42.589747202 +0200
@@ -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 EuroTekst ATASCII
+ */
+
+static const unsigned short atari8_eurotekst_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_eurotekst_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_eurotekst_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20)
+    *pwc = (ucs4_t) atari8_eurotekst_2uni_1[c];
+  else if (c < 0x60)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) atari8_eurotekst_2uni_2[c-0x60];
+  return 1;
+}
+
+static const unsigned char atari8_eurotekst_page00[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_eurotekst_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x05, 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, 0x0c, 0x00, 0x0e, 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, 0x13, 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, 0x18, 0x00, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_eurotekst_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_eurotekst_page25[48] = {
+  0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x11, 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, 0x04, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+};
+static const unsigned char atari8_eurotekst_page25_1[120] = {
+  0x00, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x8d, /* 0x80-0x87 */
+  0xa0, 0x82, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, /* 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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_eurotekst_page26[8] = {
+  0x7b, 0x00, 0x00, 0x10, 0x00, 0x80, 0x60, 0x00, /* 0x60-0x67 */
+};
+
+static int
+atari8_eurotekst_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_eurotekst_page00[wc-0x0060];
+  else if (wc == 0x00f3)
+    c = 0x0f;
+  else if (wc >= 0x0100 && wc < 0x0180)
+    c = atari8_eurotekst_page01[wc-0x0100];
+  else if (wc >= 0x2190 && wc < 0x21b8)
+    c = atari8_eurotekst_page21[wc-0x2190];
+  else if (wc == 0x241b)
+    c = 0x1b;
+  else if (wc >= 0x2500 && wc < 0x2530)
+    c = atari8_eurotekst_page25[wc-0x2500];
+  else if (wc >= 0x2570 && wc < 0x25e8)
+    c = atari8_eurotekst_page25_1[wc-0x2570];
+  else if (wc >= 0x2660 && wc < 0x2668)
+    c = atari8_eurotekst_page26[wc-0x2660];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/atari8_graph.h libiconv-1.14-mono/lib/atari8_graph.h
--- libiconv-1.14/lib/atari8_graph.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_graph.h	2013-03-21 18:44:16.000000000 +0100
@@ -0,0 +1,150 @@
+/*
+ * 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[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_graph_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_graph_page25[232] = {
+  0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x05, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x13, 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, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x95, 0x0e, 0x00, 0x00, 0x15, 0x00, 0x00, 0x8d, /* 0x80-0x87 */
+  0xa0, 0x82, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, /* 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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] = {
+  0x7b, 0x00, 0x00, 0x10, 0x00, 0x80, 0x60, 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_graph_page00[wc-0x0060];
+  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/lib/atari8_int.h libiconv-1.14-mono/lib/atari8_int.h
--- libiconv-1.14/lib/atari8_int.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_int.h	2013-03-21 18:44:16.000000000 +0100
@@ -0,0 +1,140 @@
+/*
+ * 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[160] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 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, 0x60, 0x00, 0x08, 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, 0x7b, 0x1a, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x19, 0x80, 0x11, 0x00, 0x0b, 0x18, 0x00, 0x04, /* 0xe0-0xe7 */
+  0x15, 0x14, 0x17, 0x00, 0x07, 0x00, 0x13, 0x09, /* 0xe8-0xef */
+  0x00, 0x16, 0x06, 0x0e, 0x05, 0x00, 0x0f, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x01, 0x0d, 0x12, 0x0a, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char atari8_int_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0100)
+    c = atari8_int_page00[wc-0x0060];
+  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/lib/atari8_karen.h libiconv-1.14-mono/lib/atari8_karen.h
--- libiconv-1.14/lib/atari8_karen.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_karen.h	2013-03-21 18:44:17.000000000 +0100
@@ -0,0 +1,161 @@
+/*
+ * 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[288] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 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 */
+  0x60, 0x00, 0x00, 0x08, 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, 0x19, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x0a, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x06, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x01, 0x16, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x12, 0x05, 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, 0x0b, 0x0c, 0x0d, 0x0e, 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, 0x04, 0x13, 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, 0x02, 0x18, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_karen_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0180)
+    c = atari8_karen_page00[wc-0x0060];
+  else if (wc == 0x0474)
+    c = 0x11;
+  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 = 0x7b;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/atari8_panther.h libiconv-1.14-mono/lib/atari8_panther.h
--- libiconv-1.14/lib/atari8_panther.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_panther.h	2013-03-21 18:44:17.000000000 +0100
@@ -0,0 +1,164 @@
+/*
+ * 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[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_panther_page00_1[40] = {
+  0x00, 0x00, 0x00, 0x10, 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, 0x0f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+static const unsigned char atari8_panther_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x11, 0x01, 0x16, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x12, 0x05, 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, 0x7b, 0x0c, 0x0d, 0x0e, 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, 0x04, 0x13, 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, 0x60, 0x0b, 0x18, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_panther_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_panther_page25[120] = {
+  0x00, 0x06, 0x07, 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, 0x02, 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_panther_page00[wc-0x0060];
+  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 = 0x17;
+  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/lib/atari8_pe.h libiconv-1.14-mono/lib/atari8_pe.h
--- libiconv-1.14/lib/atari8_pe.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_pe.h	2013-03-21 18:44:17.000000000 +0100
@@ -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 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[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_pe_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x05, 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, 0x0c, 0x00, 0x0e, 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, 0x13, 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, 0x18, 0x00, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_pe_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_pe_page25[48] = {
+  0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x11, 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, 0x04, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+};
+static const unsigned char atari8_pe_page25_1[120] = {
+  0x00, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x8d, /* 0x80-0x87 */
+  0xa0, 0x82, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, /* 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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] = {
+  0x7b, 0x00, 0x00, 0x10, 0x00, 0x80, 0x60, 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_pe_page00[wc-0x0060];
+  else if (wc == 0x00f3)
+    c = 0x0f;
+  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/lib/atari8_tcheko.h libiconv-1.14-mono/lib/atari8_tcheko.h
--- libiconv-1.14/lib/atari8_tcheko.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_tcheko.h	2014-10-27 13:44:21.000000000 +0100
@@ -0,0 +1,146 @@
+/*
+ * 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 Tcheko ATASCII
+ */
+
+static const unsigned short atari8_tcheko_2uni_1[32] = {
+  /* 0x00 */
+  0x00b7, 0x00e1, 0x010e, 0x010d, 0xfffd, 0x011b, 0x011a, 0x00c9,
+  0x00da, 0x00ed, 0x00fc, 0x00dc, 0x00cd, 0x0147, 0x0148, 0x00f3,
+  /* 0x10 */
+  0x00d3, 0x00c1, 0x0159, 0x0161, 0x0165, 0x00fa, 0x010c, 0x00e9,
+  0x017d, 0x00fd, 0x017e, 0x241b, 0x0158, 0x0160, 0x0164, 0x00dd,
+};
+static const unsigned short atari8_tcheko_2uni_2[144] = {
+  /* 0x70 */
+  0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+  0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x2926,
+  /* 0x80 */
+  0x00b7, 0x00e1, 0x010e, 0x010d, 0xfffd, 0x011b, 0x011a, 0x00c9,
+  0x00da, 0x00ed, 0x00fc, 0x00dc, 0x00cd, 0x0147, 0x0148, 0x00f3,
+  /* 0x90 */
+  0x00d3, 0x00c1, 0x0159, 0x0161, 0x0165, 0x00fa, 0x010c, 0x00e9,
+  0x017d, 0x00fd, 0x017e, 0x000a, 0x0158, 0x0160, 0x0164, 0x00dd,
+  /* 0xa0 */
+  0x0020, 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 */
+  0x0060, 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, 0x007b, 0x007c, 0x007d, 0x007e, 0x2926,
+};
+
+static int
+atari8_tcheko_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20) {
+    unsigned short wc = atari8_tcheko_2uni_1[c];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  else if (c < 0x70) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = atari8_tcheko_2uni_2[c-0x70];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char atari8_tcheko_page00[136] = {
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 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, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x07, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x08, 0x00, 0x0b, 0x1f, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x17, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x00, 0x15, 0x00, 0x0a, 0x19, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char atari8_tcheko_page01[120] = {
+  0x00, 0x00, 0x00, 0x00, 0x16, 0x03, 0x02, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x06, 0x05, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, /* 0x40-0x47 */
+  0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x1c, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x1d, 0x13, 0x00, 0x00, 0x1e, 0x14, 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, 0x00, 0x00, 0x00, 0x18, 0x1a, 0x00, /* 0x78-0x7f */
+};
+
+static int
+atari8_tcheko_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0078)
+    c = wc;
+  else if (wc >= 0x0078 && wc < 0x0100)
+    c = atari8_tcheko_page00[wc-0x0078];
+  else if (wc >= 0x0108 && wc < 0x0180)
+    c = atari8_tcheko_page01[wc-0x0108];
+  else if (wc == 0x241b)
+    c = 0x1b;
+  else if (wc == 0x2926)
+    c = 0x7f;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/atari8_xlent.h libiconv-1.14-mono/lib/atari8_xlent.h
--- libiconv-1.14/lib/atari8_xlent.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/atari8_xlent.h	2013-03-21 18:44:17.000000000 +0100
@@ -0,0 +1,164 @@
+/*
+ * 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[32] = {
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x00, 0x7c, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_xlent_page00_1[40] = {
+  0x00, 0x00, 0x00, 0x10, 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, 0x0f, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+static const unsigned char atari8_xlent_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x17, 0x01, 0x16, 0x03, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x12, 0x05, 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, 0x7b, 0x0c, 0x0d, 0x0e, 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, 0x04, 0x13, 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, 0x02, 0x18, 0x1a, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char atari8_xlent_page21[40] = {
+  0x1e, 0x1c, 0x1f, 0x1d, 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 */
+  0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char atari8_xlent_page25[120] = {
+  0x00, 0x06, 0x07, 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, 0x7f, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 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 == 0x000a)
+    c = 0x9b;
+  else if (wc >= 0x0020 && wc < 0x0060)
+    c = wc;
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = atari8_xlent_page00[wc-0x0060];
+  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 = 0x11;
+  else if (wc >= 0x2570 && wc < 0x25e8)
+    c = atari8_xlent_page25[wc-0x2570];
+  else if (wc == 0x2666)
+    c = 0x60;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/converters.h libiconv-1.14-mono/lib/converters.h
--- libiconv-1.14/lib/converters.h	2013-03-21 18:44:27.000000000 +0100
+++ libiconv-1.14-mono/lib/converters.h	2022-07-03 19:45:41.952377749 +0200
@@ -294,5 +294,21 @@
 #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_eurotekst.h"
+#include "atari8_capek.h"
+#include "atari8_tcheko.h"
+#include "zx80.h"
+#include "zx82.h"
+#include "zx82_pl.h"
+#include "petscii_uc.h"
+#include "petscii_lc.h"
+#include "cp895_cp867.h"
 #endif
 
diff -Naur libiconv-1.14/lib/cp895_cp867.h libiconv-1.14-mono/lib/cp895_cp867.h
--- libiconv-1.14/lib/cp895_cp867.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/cp895_cp867.h	2014-10-27 13:44:21.000000000 +0100
@@ -0,0 +1,169 @@
+/*
+ * 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.
+ */
+
+/*
+ * CP895/CP867/KEYBCS2 Bratři Kameničtí
+ */
+
+static const unsigned short cp895_cp867_2uni[128] = {
+  /* 0x80 */
+  0x010c, 0x00fc, 0x00e9, 0x010f, 0x00e4, 0x010e, 0x0164, 0x010d,
+  0x011b, 0x011a, 0x0139, 0x00cd, 0x013e, 0x013a, 0x00c4, 0x00c1,
+  /* 0x90 */
+  0x00c9, 0x017e, 0x017d, 0x00f4, 0x00f6, 0x00d3, 0x016f, 0x00da,
+  0x00fd, 0x00d6, 0x00dc, 0x0160, 0x013d, 0x00dd, 0x0158, 0x0165,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0148, 0x0147, 0x016e, 0x00d4,
+  0x0161, 0x0159, 0x0155, 0x0154, 0x00bc, 0x00a7, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp895_cp867_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp895_cp867_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp895_cp867_page00[96] = {
+  0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xad, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0xae, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xaf, 0xac, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x8f, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0x8b, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x95, 0xa7, 0x00, 0x99, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x97, 0x00, 0x9a, 0x9d, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x00, 0xa0, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x82, 0x00, 0x00, 0x00, 0xa1, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x00, 0xa3, 0x00, 0x81, 0x98, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp895_cp867_page01[120] = {
+  0x00, 0x00, 0x00, 0x00, 0x80, 0x87, 0x85, 0x83, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x89, 0x88, 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, 0x8a, 0x8d, 0x00, 0x00, 0x9c, 0x8c, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa5, /* 0x40-0x47 */
+  0xa4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0xab, 0xaa, 0x00, 0x00, /* 0x50-0x57 */
+  0x9e, 0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x9b, 0xa8, 0x00, 0x00, 0x86, 0x9f, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0x96, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x92, 0x91, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp895_cp867_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp895_cp867_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 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, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp895_cp867_page23[8] = {
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp895_cp867_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 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 */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp895_cp867_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp895_cp867_page00[wc-0x00a0];
+  else if (wc >= 0x0108 && wc < 0x0180)
+    c = cp895_cp867_page01[wc-0x0108];
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp895_cp867_page03[wc-0x0390];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp895_cp867_page22[wc-0x2218];
+  else if (wc >= 0x2320 && wc < 0x2328)
+    c = cp895_cp867_page23[wc-0x2320];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp895_cp867_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/encodings_extra.def libiconv-1.14-mono/lib/encodings_extra.def
--- libiconv-1.14/lib/encodings_extra.def	2013-03-21 18:44:26.000000000 +0100
+++ libiconv-1.14-mono/lib/encodings_extra.def	2022-07-03 19:46:34.999507420 +0200
@@ -55,3 +55,93 @@
             ),
             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-EUROTEKST",
+            ),
+            atari8_eurotekst,
+            { atari8_eurotekst_mbtowc, NULL },     { atari8_eurotekst_wctomb, NULL })
+
+DEFENCODING(( "ATARI8-CAPEK",
+              "ATARI8-CZ",
+            ),
+            atari8_capek,
+            { atari8_capek_mbtowc, NULL },     { atari8_capek_wctomb, NULL })
+
+DEFENCODING(( "ATARI8-TCHEKO",
+            ),
+            atari8_tcheko,
+            { atari8_tcheko_mbtowc, NULL },     { atari8_tcheko_wctomb, NULL })
+
+DEFENCODING(( "ZX80",
+              "ZX81",
+            ),
+            zx80,
+            { zx80_mbtowc, NULL },     { zx80_wctomb, NULL })
+
+DEFENCODING(( "ZX82",
+              "ZXSPECTRUM",
+            ),
+            zx82,
+            { zx82_mbtowc, NULL },     { zx82_wctomb, NULL })
+
+DEFENCODING(( "ZX82-PL",
+              "ZXSPECTRUM-PL",
+            ),
+            zx82_pl,
+            { zx82_pl_mbtowc, NULL },     { zx82_pl_wctomb, NULL })
+
+DEFENCODING(( "PETSCII-UC",
+              "PETSCII",
+            ),
+            petscii_uc,
+            { petscii_uc_mbtowc, NULL },     { petscii_uc_wctomb, NULL })
+
+DEFENCODING(( "PETSCII-LC",
+            ),
+            petscii_lc,
+            { petscii_lc_mbtowc, NULL },     { petscii_lc_wctomb, NULL })
+
+DEFENCODING(( "CP895",
+              "CP867", "KAMENICKY", "KEYBCS2"
+            ),
+            cp895_cp867,
+            { cp895_cp867_mbtowc, NULL },     { cp895_cp867_wctomb, NULL })
+
diff -Naur libiconv-1.14/lib/flags.h libiconv-1.14-mono/lib/flags.h
--- libiconv-1.14/lib/flags.h	2013-03-21 18:44:26.000000000 +0100
+++ libiconv-1.14-mono/lib/flags.h	2022-07-03 19:47:24.498815362 +0200
@@ -155,3 +155,19 @@
 #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_eurotekst_oflags (HAVE_ACCENTS)
+#define ei_atari8_capek_oflags (HAVE_ACCENTS)
+#define ei_atari8_tcheko_oflags (HAVE_ACCENTS)
+#define ei_zx80_oflags (HAVE_ACCENTS)
+#define ei_zx82_oflags (HAVE_ACCENTS)
+#define ei_zx82_pl_oflags (HAVE_ACCENTS)
+#define ei_petscii_uc_oflags (HAVE_ACCENTS)
+#define ei_petscii_lc_oflags (HAVE_ACCENTS)
+#define ei_cp895_cp867_oflags (HAVE_ACCENTS)
diff -Naur libiconv-1.14/lib/iconv.c libiconv-1.14-mono/lib/iconv.c
--- libiconv-1.14/lib/iconv.c	2013-03-21 18:44:27.000000000 +0100
+++ libiconv-1.14-mono/lib/iconv.c	2018-08-16 23:19:42.696385447 +0200
@@ -179,7 +179,7 @@
 #ifdef __GNUC__
 __inline
 #endif
-const struct alias *
+static const struct alias *
 aliases2_lookup (register const char *str)
 {
   const struct alias * ptr;
diff -Naur libiconv-1.14/lib/petscii_lc.h libiconv-1.14-mono/lib/petscii_lc.h
--- libiconv-1.14/lib/petscii_lc.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/petscii_lc.h	2014-10-27 21:23:15.000000000 +0100
@@ -0,0 +1,158 @@
+/*
+ * 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.
+ */
+
+/*
+ * Commodore Lowercase PETSCII
+ */
+
+static const unsigned short petscii_lc_2uni_1[32] = {
+  /* 0x00 */
+  0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0xf100, 0x0006, 0x0007,
+  0xf118, 0xf119, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+  /* 0x10 */
+  0x0010, 0xf11c, 0xf11a, 0xf120, 0x007f, 0x0015, 0x0016, 0x0017,
+  0x0018, 0x0019, 0x001a, 0x001b, 0xf101, 0xf11d, 0xf102, 0xf103,
+};
+static const unsigned short petscii_lc_2uni_2[192] = {
+  /* 0x40 */
+  0x0040, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+  0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+  /* 0x50 */
+  0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+  0x0078, 0x0079, 0x007a, 0x005b, 0x00a3, 0x005d, 0x2191, 0x2190,
+  /* 0x60 */
+  0x2501, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+  0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+  /* 0x70 */
+  0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+  0x0058, 0x0059, 0x005a, 0x253c, 0xf12e, 0x2502, 0x2592, 0xf139,
+  /* 0x80 */
+  0x0080, 0xf104, 0x0082, 0x0083, 0x0084, 0xf110, 0xf112, 0xf114,
+  0xf116, 0xf111, 0xf113, 0xf115, 0xf117, 0x000a, 0x000f, 0x008f,
+  /* 0x90 */
+  0xf105, 0xf11e, 0xf11b, 0x000c, 0xf121, 0xf106, 0xf107, 0xf108,
+  0xf109, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf11d, 0xf10e, 0xf10f,
+  /* 0xa0 */
+  0x00a0, 0x258c, 0x2584, 0x2594, 0x2581, 0x258f, 0x2592, 0x2595,
+  0xf12f, 0xf13a, 0xf130, 0x251c, 0xf134, 0x2514, 0x2510, 0x2582,
+  /* 0xb0 */
+  0x250c, 0x2534, 0x252c, 0x2524, 0x258e, 0x258d, 0xf131, 0xf132,
+  0xf133, 0x2583, 0x2713, 0xf135, 0xf136, 0x2518, 0xf137, 0xf138,
+  /* 0xc0 */
+  0x2501, 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, 0x253c, 0xf12e, 0x2502, 0x2592, 0xf139,
+  /* 0xe0 */
+  0x00a0, 0x258c, 0x2584, 0x2594, 0x2581, 0x258f, 0x2592, 0x2595,
+  0xf12f, 0xf13a, 0xf130, 0x251c, 0xf134, 0x2514, 0x2510, 0x2582,
+  /* 0xf0 */
+  0x250c, 0x2534, 0x252c, 0x2524, 0x258e, 0x258d, 0xf131, 0xf132,
+  0xf133, 0x2583, 0x2713, 0xf135, 0xf136, 0x2518, 0xf137, 0x2592,
+};
+
+static int
+petscii_lc_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20)
+    *pwc = (ucs4_t) petscii_lc_2uni_1[c];
+  else if (c < 0x40)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) petscii_lc_2uni_2[c-0x40];
+  return 1;
+}
+
+static const unsigned char petscii_lc_page00[168] = {
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x06, 0x07, /* 0x00-0x07 */
+  0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, /* 0x08-0x0f */
+  0x10, 0x00, 0x00, 0x00, 0x00, 0x15, 0x16, 0x17, /* 0x10-0x17 */
+  0x18, 0x19, 0x1a, 0x1b, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, /* 0x20-0x27 */
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, /* 0x28-0x2f */
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 0x30-0x37 */
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, /* 0x38-0x3f */
+  0x40, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x40-0x47 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x48-0x4f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x50-0x57 */
+  0x78, 0x79, 0x7a, 0x5b, 0x00, 0x5d, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, /* 0x60-0x67 */
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, /* 0x68-0x6f */
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, /* 0x70-0x77 */
+  0x58, 0x59, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x78-0x7f */
+  0x80, 0x00, 0x82, 0x83, 0x84, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8f, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xa0, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+static const unsigned char petscii_lc_page21[8] = {
+  0x5f, 0x5e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char petscii_lc_page25[64] = {
+  0x00, 0x60, 0x7d, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xae, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xbd, 0x00, 0x00, 0x00, 0xab, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb3, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xb2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xb1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x7b, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char petscii_lc_page25_1[24] = {
+  0x00, 0xa4, 0xaf, 0xb9, 0xa2, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0xa1, 0xb5, 0xb4, 0xa5, /* 0x88-0x8f */
+  0x00, 0x00, 0x7e, 0x00, 0xa3, 0xa7, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char petscii_lc_pagef1[64] = {
+  0x05, 0x1c, 0x1e, 0x1f, 0x81, 0x90, 0x95, 0x96, /* 0x00-0x07 */
+  0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9e, 0x9f, /* 0x08-0x0f */
+  0x85, 0x89, 0x86, 0x8a, 0x87, 0x8b, 0x88, 0x8c, /* 0x10-0x17 */
+  0x08, 0x09, 0x12, 0x92, 0x11, 0x1d, 0x91, 0x00, /* 0x18-0x1f */
+  0x13, 0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xa8, /* 0x28-0x2f */
+  0xaa, 0xb6, 0xb7, 0xb8, 0xac, 0xbb, 0xbc, 0xbe, /* 0x30-0x37 */
+  0xbf, 0x7f, 0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+petscii_lc_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a8)
+    c = petscii_lc_page00[wc];
+  else if (wc >= 0x2190 && wc < 0x2198)
+    c = petscii_lc_page21[wc-0x2190];
+  else if (wc >= 0x2500 && wc < 0x2540)
+    c = petscii_lc_page25[wc-0x2500];
+  else if (wc >= 0x2580 && wc < 0x2598)
+    c = petscii_lc_page25_1[wc-0x2580];
+  else if (wc == 0x2713)
+    c = 0xba;
+  else if (wc >= 0xf100 && wc < 0xf140)
+    c = petscii_lc_pagef1[wc-0xf100];
+  if (c != 0 || wc == 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/petscii_uc.h libiconv-1.14-mono/lib/petscii_uc.h
--- libiconv-1.14/lib/petscii_uc.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/petscii_uc.h	2014-10-27 21:23:15.000000000 +0100
@@ -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.
+ */
+
+/*
+ * Commodore Uppercase PETSCII
+ */
+
+static const unsigned short petscii_uc_2uni_1[32] = {
+  /* 0x00 */
+  0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0xf100, 0x0006, 0x0007,
+  0xf118, 0xf119, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+  /* 0x10 */
+  0x0010, 0xf11c, 0xf11a, 0xf120, 0x007f, 0x0015, 0x0016, 0x0017,
+  0x0018, 0x0019, 0x001a, 0x001b, 0xf101, 0xf11d, 0xf102, 0xf103,
+};
+static const unsigned short petscii_uc_2uni_2[176] = {
+  /* 0x50 */
+  0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+  0x0058, 0x0059, 0x005a, 0x005b, 0x00a3, 0x005d, 0x2191, 0x2190,
+  /* 0x60 */
+  0x2501, 0x2660, 0x2502, 0x2501, 0xf122, 0xf123, 0xf124, 0xf126,
+  0xf128, 0x256e, 0x2570, 0x256f, 0xf12a, 0x2572, 0x2571, 0xf12b,
+  /* 0x70 */
+  0xf12c, 0x25cf, 0xf125, 0x2665, 0xf127, 0x256d, 0x2573, 0x25cb,
+  0x2663, 0xf129, 0x2666, 0x253c, 0xf12e, 0x2502, 0x03c0, 0x25e5,
+  /* 0x80 */
+  0x0080, 0xf104, 0x0082, 0x0083, 0x0084, 0xf110, 0xf112, 0xf114,
+  0xf116, 0xf111, 0xf113, 0xf115, 0xf117, 0x000a, 0x000f, 0x008f,
+  /* 0x90 */
+  0xf105, 0xf11e, 0xf11b, 0x000c, 0xf121, 0xf106, 0xf107, 0xf108,
+  0xf109, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf11d, 0xf10e, 0xf10f,
+  /* 0xa0 */
+  0x00a0, 0x258c, 0x2584, 0x2594, 0x2581, 0x258f, 0x2592, 0x2595,
+  0xf12f, 0x25e4, 0xf130, 0x251c, 0xf134, 0x2514, 0x2510, 0x2582,
+  /* 0xb0 */
+  0x250c, 0x2534, 0x252c, 0x2524, 0x258e, 0x258d, 0xf131, 0xf132,
+  0xf133, 0x2583, 0xf12d, 0xf135, 0xf136, 0x2518, 0xf137, 0xf138,
+  /* 0xc0 */
+  0x2501, 0x2660, 0x2502, 0x2501, 0xf122, 0xf123, 0xf124, 0xf126,
+  0xf128, 0x256e, 0x2570, 0x256f, 0xf12a, 0x2572, 0x2571, 0xf12b,
+  /* 0xd0 */
+  0xf12c, 0x25cf, 0xf125, 0x2665, 0xf127, 0x256d, 0x2573, 0x25cb,
+  0x2663, 0xf129, 0x2666, 0x253c, 0xf12e, 0x2502, 0x03c0, 0x25e5,
+  /* 0xe0 */
+  0x00a0, 0x258c, 0x2584, 0x2594, 0x2581, 0x258f, 0x2592, 0x2595,
+  0xf12f, 0x25e4, 0xf130, 0x251c, 0xf134, 0x2514, 0x2510, 0x2582,
+  /* 0xf0 */
+  0x250c, 0x2534, 0x252c, 0x2524, 0x258e, 0x258d, 0xf131, 0xf132,
+  0xf133, 0x2583, 0xf12d, 0xf135, 0xf136, 0x2518, 0xf137, 0x03c0,
+};
+
+static int
+petscii_uc_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20)
+    *pwc = (ucs4_t) petscii_uc_2uni_1[c];
+  else if (c < 0x50)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) petscii_uc_2uni_2[c-0x50];
+  return 1;
+}
+
+static const unsigned char petscii_uc_page00[168] = {
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x06, 0x07, /* 0x00-0x07 */
+  0x00, 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, /* 0x08-0x0f */
+  0x10, 0x00, 0x00, 0x00, 0x00, 0x15, 0x16, 0x17, /* 0x10-0x17 */
+  0x18, 0x19, 0x1a, 0x1b, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, /* 0x20-0x27 */
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, /* 0x28-0x2f */
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 0x30-0x37 */
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, /* 0x38-0x3f */
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, /* 0x40-0x47 */
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, /* 0x48-0x4f */
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, /* 0x50-0x57 */
+  0x58, 0x59, 0x5a, 0x5b, 0x00, 0x5d, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x78-0x7f */
+  0x80, 0x00, 0x82, 0x83, 0x84, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8f, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xa0, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+static const unsigned char petscii_uc_page21[8] = {
+  0x5f, 0x5e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char petscii_uc_page25[232] = {
+  0x00, 0x60, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xae, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xbd, 0x00, 0x00, 0x00, 0xab, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb3, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xb2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xb1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x7b, 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, 0x75, 0x69, 0x6b, /* 0x68-0x6f */
+  0x6a, 0x6e, 0x6d, 0x76, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0xa4, 0xaf, 0xb9, 0xa2, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0xa1, 0xb5, 0xb4, 0xa5, /* 0x88-0x8f */
+  0x00, 0x00, 0xa6, 0x00, 0xa3, 0xa7, 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, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x71, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0xa9, 0x7f, 0x00, 0x00, /* 0xe0-0xe7 */
+};
+static const unsigned char petscii_uc_page26[8] = {
+  0x61, 0x00, 0x00, 0x78, 0x00, 0x73, 0x7a, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char petscii_uc_pagef1[64] = {
+  0x05, 0x1c, 0x1e, 0x1f, 0x81, 0x90, 0x95, 0x96, /* 0x00-0x07 */
+  0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9e, 0x9f, /* 0x08-0x0f */
+  0x85, 0x89, 0x86, 0x8a, 0x87, 0x8b, 0x88, 0x8c, /* 0x10-0x17 */
+  0x08, 0x09, 0x12, 0x92, 0x11, 0x1d, 0x91, 0x00, /* 0x18-0x1f */
+  0x13, 0x94, 0x64, 0x65, 0x66, 0x72, 0x67, 0x74, /* 0x20-0x27 */
+  0x68, 0x79, 0x6c, 0x6f, 0x70, 0xba, 0x7c, 0xa8, /* 0x28-0x2f */
+  0xaa, 0xb6, 0xb7, 0xb8, 0xac, 0xbb, 0xbc, 0xbe, /* 0x30-0x37 */
+  0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+petscii_uc_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a8)
+    c = petscii_uc_page00[wc];
+  else if (wc == 0x03c0)
+    c = 0x7e;
+  else if (wc >= 0x2190 && wc < 0x2198)
+    c = petscii_uc_page21[wc-0x2190];
+  else if (wc >= 0x2500 && wc < 0x25e8)
+    c = petscii_uc_page25[wc-0x2500];
+  else if (wc >= 0x2660 && wc < 0x2668)
+    c = petscii_uc_page26[wc-0x2660];
+  else if (wc >= 0xf100 && wc < 0xf140)
+    c = petscii_uc_pagef1[wc-0xf100];
+  if (c != 0 || wc == 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/zx80.h libiconv-1.14-mono/lib/zx80.h
--- libiconv-1.14/lib/zx80.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/zx80.h	2014-10-27 21:23:15.000000000 +0100
@@ -0,0 +1,105 @@
+/*
+ * 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.
+ */
+
+/*
+ * Sinclair ZX-80 ASCII
+ */
+
+static const unsigned short zx80_2uni_1[64] = {
+  /* 0x00 */
+  0x0020, 0x2598, 0x259d, 0x2580, 0x2596, 0x258c, 0x259e, 0x259b,
+  0x2592, 0x2584, 0x2580, 0x0022, 0x00a3, 0x0024, 0x003a, 0x003f,
+  /* 0x10 */
+  0x0028, 0x0029, 0x003c, 0x003e, 0x003d, 0x002b, 0x002d, 0x002a,
+  0x002f, 0x003b, 0x002c, 0x002e, 0x0030, 0x0031, 0x0032, 0x0033,
+  /* 0x20 */
+  0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x0041, 0x0042,
+  0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+  /* 0x30 */
+  0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+  0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+};
+static const unsigned short zx80_2uni_2[64] = {
+  /* 0x80 */
+  0x2588, 0x259f, 0x2599, 0x2584, 0x259c, 0x2590, 0x259a, 0x2597,
+  0x2592, 0x2584, 0x2580, 0x0022, 0x00a3, 0x0024, 0x003a, 0x003f,
+  /* 0x90 */
+  0x0028, 0x0029, 0x003c, 0x003e, 0x003d, 0x002b, 0x002d, 0x002a,
+  0x002f, 0x003b, 0x002c, 0x002e, 0x0030, 0x0031, 0x0032, 0x0033,
+  /* 0xa0 */
+  0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x0041, 0x0042,
+  0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+  /* 0xb0 */
+  0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+  0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+};
+
+static int
+zx80_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x40)
+    *pwc = (ucs4_t) zx80_2uni_1[c];
+  else if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xc0)
+    *pwc = (ucs4_t) zx80_2uni_2[c-0x80];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char zx80_page00[64] = {
+  0x00, 0x00, 0x0b, 0x00, 0x0d, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x10, 0x11, 0x17, 0x15, 0x1a, 0x16, 0x1b, 0x18, /* 0x28-0x2f */
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, /* 0x30-0x37 */
+  0x24, 0x25, 0x0e, 0x19, 0x12, 0x14, 0x13, 0x0f, /* 0x38-0x3f */
+  0x40, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, /* 0x40-0x47 */
+  0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, /* 0x48-0x4f */
+  0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, /* 0x50-0x57 */
+  0x3d, 0x3e, 0x3f, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, /* 0x58-0x5f */
+};
+static const unsigned char zx80_page25[32] = {
+  0x03, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x80, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x85, 0x00, 0x08, 0x00, 0x00, 0x00, 0x04, 0x87, /* 0x90-0x97 */
+  0x01, 0x82, 0x86, 0x07, 0x84, 0x02, 0x06, 0x81, /* 0x98-0x9f */
+};
+
+static int
+zx80_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc >= 0x0020 && wc < 0x0060)
+    c = zx80_page00[wc-0x0020];
+  else if (wc >= 0x0060 && wc < 0x0080)
+    c = wc;
+  else if (wc == 0x00a3)
+    c = 0x0c;
+  else if (wc >= 0x00c0 && wc < 0x0100)
+    c = wc;
+  else if (wc >= 0x2580 && wc < 0x25a0)
+    c = zx80_page25[wc-0x2580];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/zx82.h libiconv-1.14-mono/lib/zx82.h
--- libiconv-1.14/lib/zx82.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/zx82.h	2014-10-27 21:23:15.000000000 +0100
@@ -0,0 +1,94 @@
+/*
+ * 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.
+ */
+
+/*
+ * Sinclair ZX Spectrum Standard ASCII
+ */
+
+static const unsigned short zx82_2uni[64] = {
+  /* 0x50 */
+  0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+  0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x2191, 0x005f,
+  /* 0x60 */
+  0x00a3, 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, 0x007b, 0x007c, 0x007d, 0x007e, 0x00a9,
+  /* 0x80 */
+  0x00a0, 0x259d, 0x2598, 0x2580, 0x2597, 0x2590, 0x259a, 0x259c,
+  0x2596, 0x259e, 0x258c, 0x259b, 0x2584, 0x259f, 0x2599, 0x2588,
+};
+
+static int
+zx82_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x50)
+    *pwc = (ucs4_t) c;
+  else if (c < 0x90)
+    *pwc = (ucs4_t) zx82_2uni[c-0x50];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char zx82_page00[88] = {
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x00, 0x5f, /* 0x58-0x5f */
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x90-0x97 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x98-0x9f */
+  0x80, 0xa1, 0xa2, 0x60, 0xa4, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0x7f, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+};
+static const unsigned char zx82_page25[32] = {
+  0x83, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x8f, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x84, /* 0x90-0x97 */
+  0x82, 0x8e, 0x86, 0x8b, 0x87, 0x81, 0x89, 0x8d, /* 0x98-0x9f */
+};
+
+static int
+zx82_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0058) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0058 && wc < 0x00b0)
+    c = zx82_page00[wc-0x0058];
+  else if (wc >= 0x00b0 && wc < 0x0100)
+    c = wc;
+  else if (wc == 0x2191)
+    c = 0x5e;
+  else if (wc >= 0x2580 && wc < 0x25a0)
+    c = zx82_page25[wc-0x2580];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/lib/zx82_pl.h libiconv-1.14-mono/lib/zx82_pl.h
--- libiconv-1.14/lib/zx82_pl.h	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/lib/zx82_pl.h	2014-10-27 21:23:15.000000000 +0100
@@ -0,0 +1,118 @@
+/*
+ * 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.
+ */
+
+/*
+ * Sinclair ZX Spectrum Polish ASCII
+ */
+
+static const unsigned short zx82_pl_2uni[80] = {
+  /* 0x50 */
+  0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+  0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x2191, 0x005f,
+  /* 0x60 */
+  0x00a3, 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, 0x007b, 0x007c, 0x007d, 0x007e, 0x00a9,
+  /* 0x80 */
+  0x0141, 0x0142, 0x0104, 0x0118, 0x0105, 0x0119, 0x015a, 0x015b,
+  0x0106, 0x0107, 0x017b, 0x017c, 0x0179, 0x017a, 0x00d3, 0x00f3,
+  /* 0x90 */
+  0x0143, 0x0144, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+  0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+};
+
+static int
+zx82_pl_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x50)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xa0)
+    *pwc = (ucs4_t) zx82_pl_2uni[c-0x50];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char zx82_pl_page00[160] = {
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x00, 0x5f, /* 0x58-0x5f */
+  0x00, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 0x60-0x67 */
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, /* 0x68-0x6f */
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, /* 0x70-0x77 */
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 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, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x90-0x97 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x98-0x9f */
+  0xa0, 0xa1, 0xa2, 0x60, 0xa4, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0x7f, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0xd0, 0xd1, 0xd2, 0x8e, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0xf0, 0xf1, 0xf2, 0x8f, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+};
+static const unsigned char zx82_pl_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x82, 0x84, 0x88, 0x89, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x83, 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, 0x80, 0x81, 0x90, 0x91, 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, 0x86, 0x87, 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, 0x8c, 0x8d, 0x8a, 0x8b, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+
+static int
+zx82_pl_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0058) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0058 && wc < 0x00f8)
+    c = zx82_pl_page00[wc-0x0058];
+  else if (wc >= 0x00f8 && wc < 0x0100)
+    c = wc;
+  else if (wc >= 0x0100 && wc < 0x0180)
+    c = zx82_pl_page01[wc-0x0100];
+  else if (wc == 0x2191)
+    c = 0x5e;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff -Naur libiconv-1.14/man/iconv_open.3 libiconv-1.14-mono/man/iconv_open.3
--- libiconv-1.14/man/iconv_open.3	2013-03-21 18:44:27.000000000 +0100
+++ libiconv-1.14-mono/man/iconv_open.3	2022-07-03 19:52:41.696497277 +0200
@@ -166,7 +166,11 @@
 Platform specifics
 .nf
 .fi
-ATARIST, RISCOS\-LATIN1
+ATARIST, RISCOS\-LATIN1,
+ATARI8\-{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,EUROTEKST,PL,CAPEK,TCHEKO,CZ,ATASCII,ATASCII2}, ATASCII, ATASCII2,
+ZX80, ZX81, ZX82, ZX82-PL, ZXSPECTRUM, ZXSPECTRUM-PL,
+PETSCII\-{UC,LC}, PETSCII,
+CP895, CP867, KAMENICKY, KEYBCS2
 .PP
 The empty encoding name "" is equivalent to "char": it denotes the
 locale dependent character encoding.
diff -Naur libiconv-1.14/man/iconv_open.3.html libiconv-1.14-mono/man/iconv_open.3.html
--- libiconv-1.14/man/iconv_open.3.html	2013-03-21 18:44:27.000000000 +0100
+++ libiconv-1.14-mono/man/iconv_open.3.html	2022-07-03 19:52:57.132457259 +0200
@@ -231,7 +231,11 @@
 <p style="margin-left:11%;">Platform specifics</p>
 
 <p style="margin-left:22%;">ATARIST,
-RISCOS&minus;LATIN1</p>
+RISCOS&minus;LATIN1,
+ATARI8&minus;{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,EUROTEKST,PL,CAPEK,CZ,TCHEKO,ATASCII,ATASCII2}, ATASCII, ATASCII2,
+ZX80, ZX81, ZX82, ZX82&minus;PL, ZXSPECTRUM, ZXSPECTRUM&minus;PL,
+PETSCII&minus;{UC,LC}, PETSCII,
+CP895, CP867, KAMENICKY, KEYBCS2</p>
 
 <p style="margin-left:11%; margin-top: 1em">The empty
 encoding name &quot;&quot; is equivalent to
diff -Naur libiconv-1.14/NOTES libiconv-1.14-mono/NOTES
--- libiconv-1.14/NOTES	2013-03-21 18:44:27.000000000 +0100
+++ libiconv-1.14-mono/NOTES	2014-10-27 21:46:53.000000000 +0100
@@ -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-*, PETSCII-*, ZX*, CP895/CP867/KEYBCS2
+       We implement these because they are quite useful in crossworking
+       on retro 8-bit Atari XL/XE, Commodore and Sinclair Spectrum machines.
    Full Unicode
      * UTF-8, UCS-2, UCS-4
        We implement these. Obviously.
diff -Naur libiconv-1.14/po/libiconv.pot libiconv-1.14-mono/po/libiconv.pot
--- libiconv-1.14/po/libiconv.pot	2013-03-21 18:44:26.000000000 +0100
+++ libiconv-1.14-mono/po/libiconv.pot	2014-10-27 12:11:11.000000000 +0100
@@ -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: 2014-10-27 12:11+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff -Naur libiconv-1.14/README libiconv-1.14-mono/README
--- libiconv-1.14/README	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/README	2022-07-03 19:57:46.360538406 +0200
@@ -70,7 +70,12 @@
     Turkmen
         TDS565
     Platform specifics
-        ATARIST, RISCOS-LATIN1
+        ATARIST, RISCOS-LATIN1,
+        ATARI8-{GRAPH,INT,KAREN,AWP,XLENT,PANTHER,PE,EUROTEKST,PL,CAPEK,CZ,TCHEKO},
+        ATASCII, ATASCII2,
+        ZX80, ZX81, ZX82, ZX82-PL, ZXSPECTRUM, ZXSPECTRUM-PL,
+        PETSCII, PETSCII-{UC, LC},
+        CP895, CP867, KEYBCS2, KAMENICKY
 
 It can convert from any of these encodings to any other, through Unicode
 conversion.
diff -Naur libiconv-1.14/tests/ATARI8-AWP.TXT libiconv-1.14-mono/tests/ATARI8-AWP.TXT
--- libiconv-1.14/tests/ATARI8-AWP.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-AWP.TXT	2013-03-21 18:44:19.000000000 +0100
@@ -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/tests/ATARI8-CAPEK.TXT libiconv-1.14-mono/tests/ATARI8-CAPEK.TXT
--- libiconv-1.14/tests/ATARI8-CAPEK.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-CAPEK.TXT	2014-10-27 12:03:39.000000000 +0100
@@ -0,0 +1,304 @@
+#
+# Name:			Atari 8-bit Česky Čapek standard (ATASCII) to Unicode
+# Unicode version:	4.0
+# Table version:	1.0
+# Table format:		Format A
+# Date:			2011 September 21
+# Authors:		Jerzy Kut <mono AT atari.pl>
+#
+# Copyright (c) 1998 - 2011 Unicode, Inc.  All Rights reserved.
+#
+# This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
+# No claims are made as to fitness for any particular purpose.  No
+# warranties of any kind are expressed or implied.  The recipient
+# agrees to determine applicability of information provided.  If this
+# file has been provided on optical media by Unicode, Inc., the sole
+# remedy for any claim will be exchange of defective media within 90
+# days of receipt.
+#
+# Unicode, Inc. hereby grants the right to freely use the information
+# supplied in this file in the creation of products supporting the
+# Unicode Standard, and to make copies of this file in any form for
+# internal or external distribution as long as this notice remains
+# attached.
+#
+# General notes:
+#
+# This table contains the data the Unicode Consortium has on how
+# 8-bit Atari Česky Čapek standard characters (ATASCII) map into Unicode.
+#
+# Format:	Three tab-separated columns
+# 	Column 1 is the Atari code (in hex as 0xXX)
+# 	Column 2 is the Unicode (in hex as 0xXXXX)
+# 	Column 3 the Unicode name (follows a comment sign, '#')
+# 	Column 4 is the actual character or <symbol> (follows a comment sign, '#')
+# 	Column 5 indicates backward compatible character set mappings
+#
+# The entries are in Atari 8-bit order.
+#
+# Version history
+# 1.0 version new, by Jerzy Kut (based on ATARIST.TXT).
+#
+# Updated versions of this file may be found in:
+# 	<ftp://ftp.unicode.org/Public/MAPPINGS/>
+#
+# Any comments or problems, contact http://www.unicode.org/reporting.html
+#
+0x00	0xFEFF	# ZERO WIDTH NO-BREAK SPACE				# 	ISO646
+0x01	0x00C1	# LATIN CAPITAL LETTER A WITH ACUTE			# Á	ISO646
+0x02	0x002B	# PLUS SIGN						# +	ISO646
+0x03	0x010C	# LATIN CAPITAL LETTER C WITH CARON			# Č	ISO646
+0x04	0x010F	# LATIN SMALL LETTER D WITH CARON			# ď	ISO646 *
+0x05	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE			# É	ISO646
+0x06	0x0028	# LEFT PARENTHESIS					# (	ISO646
+0x07	0x0024	# DOLLAR SIGN						# $	ISO646
+0x08	0x002A	# ASTERISK						# *	ISO646
+0x09	0x00CD	# LATIN CAPITAL LETTER I WITH ACUTE			# Í	ISO646
+0x0A	0x0147	# LATIN CAPITAL LETTER N WITH CARON			# Ň	ISO646
+0x0B	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE			# Ó	ISO646
+0x0C	0x013E	# LATIN SMALL LETTER L WITH CARON			# ľ	ISO646
+0x0D	0x011A	# LATIN CAPITAL LETTER E WITH CARON			# Ě	ISO646
+0x0E	0x0148	# LATIN SMALL LETTER N WITH CARON			# ň	ISO646
+0x0F	0x00F3	# LATIN SMALL LETTER O WITH ACUTE			# ó	ISO646
+0x10	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS			# ü	ISO646
+0x11	0x0155	# LATIN SMALL LETTER R WITH ACUTE			# ŕ	ISO646
+0x12	0x0158	# LATIN CAPITAL LETTER R WITH CARON			# Ř	ISO646
+0x13	0x0160	# LATIN CAPITAL LETTER S WITH CARON			# Š	ISO646
+0x14	0x0165	# LATIN SMALL LETTER T WITH CARON			# ť	ISO646
+0x15	0x00DA	# LATIN CAPITAL LETTER U WITH ACUTE			# Ú	ISO646
+0x16	0x00A7	# SECTION SIGN						# §	ISO646
+0x17	0x00A9	# COPYRIGHT SIGN					# ©	ISO646
+0x18	0x00F4	# LATIN SMALL LETTER O WITH CIRCUMFLEX			# ô	ISO646
+0x19	0x00DD	# LATIN CAPITAL LETTER Y WITH ACUTE			# Ý	ISO646
+0x1A	0x017D	# LATIN CAPITAL LETTER Z WITH CARON			# Ž	ISO646
+0x1B	0x241B	# SYMBOL FOR ESCAPE					# ␛	Atari 8-bit
+0x1C	0x016E	# LATIN CAPITAL LETTER U WITH RING ABOVE		# Ů	ISO646
+0x1D	0x0164	# LATIN CAPITAL LETTER T WITH CARON			# Ť	ISO646
+0x1E	0x2926	# SOUTH WEST ARROW WITH HOOK				# ⤦	ISO646
+0x1F	0x010E	# LATIN CAPITAL LETTER D WITH CARON			# Ď	ISO646
+0x20	0x0020	# SPACE							# <SP>	ISO646
+0x21	0x0021	# EXCLAMATION MARK					# !	ASCII
+0x22	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0x23	0x0023	# NUMBER SIGN						# #	ASCII
+0x24	0x0029	# RIGHT PARENTHESIS					# )	ISO646
+0x25	0x011B	# LATIN SMALL LETTER E WITH CARON			# ě	ISO646
+0x26	0x0161	# LATIN SMALL LETTER S WITH CARON			# š	ISO646
+0x27	0x010D	# LATIN SMALL LETTER C WITH CARON			# č	ISO646
+0x28	0x017E	# LATIN SMALL LETTER Z WITH CARON			# ž	ISO646
+0x29	0x00ED	# LATIN SMALL LETTER I WITH ACUTE			# í	ISO646
+0x2A	0x00E1	# LATIN SMALL LETTER A WITH ACUTE			# á	ISO646
+0x2B	0x016F	# LATIN SMALL LETTER U WITH RING ABOVE			# ů	ISO646
+0x2C	0x002C	# COMMA							# ,	ASCII
+0x2D	0x002D	# HYPHEN-MINUS						# -	ASCII
+0x2E	0x002E	# FULL STOP						# .	ASCII
+0x2F	0x002F	# SOLIDUS						# /	ASCII
+0x30	0x0030	# DIGIT ZERO						# 0	ASCII
+0x31	0x0031	# DIGIT ONE						# 1	ASCII
+0x32	0x0032	# DIGIT TWO						# 2	ASCII
+0x33	0x0033	# DIGIT THREE						# 3	ASCII
+0x34	0x0034	# DIGIT FOUR						# 4	ASCII
+0x35	0x0035	# DIGIT FIVE						# 5	ASCII
+0x36	0x0036	# DIGIT SIX						# 6	ASCII
+0x37	0x0037	# DIGIT SEVEN						# 7	ASCII
+0x38	0x0038	# DIGIT EIGHT						# 8	ASCII
+0x39	0x0039	# DIGIT NINE						# 9	ASCII
+0x3A	0x003A	# COLON							# :	ASCII
+0x3B	0x003B	# SEMICOLON						# ;	ASCII
+0x3C	0x003C	# LESS-THAN SIGN					# <	ASCII
+0x3D	0x003D	# EQUALS SIGN						# =	ASCII
+0x3E	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0x3F	0x003F	# QUESTION MARK						# ?	ASCII
+0x40	0x0159	# LATIN SMALL LETTER R WITH CARON			# ř	ISO646
+0x41	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0x42	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0x43	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0x44	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0x45	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0x46	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0x47	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0x48	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0x49	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0x4A	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0x4B	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0x4C	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0x4D	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0x4E	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0x4F	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0x50	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0x51	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0x52	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0x53	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0x54	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0x55	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0x56	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0x57	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0x58	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0x59	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0x5A	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+0x5B	0x00E9	# LATIN SMALL LETTER E WITH ACUTE			# é	ISO646
+0x5C	0x013D	# LATIN CAPITAL LETTER L WITH CARON			# Ľ	ISO646
+0x5D	0x00FA	# LATIN SMALL LETTER U WITH ACUTE			# ú	ISO646
+0x5E	0x00C4	# LATIN CAPITAL LETTER A WITH DIAERESIS			# Ä	ISO646
+0x5F	0x005F	# LOW LINE						# _	ASCII
+0x60	0x00FD	# LATIN SMALL LETTER Y WITH ACUTE			# ý	ISO646
+0x61	0x0061	# LATIN SMALL LETTER A					# a	ASCII
+0x62	0x0062	# LATIN SMALL LETTER B					# b	ASCII
+0x63	0x0063	# LATIN SMALL LETTER C					# c	ASCII
+0x64	0x0064	# LATIN SMALL LETTER D					# d	ASCII
+0x65	0x0065	# LATIN SMALL LETTER E					# e	ASCII
+0x66	0x0066	# LATIN SMALL LETTER F					# f	ASCII
+0x67	0x0067	# LATIN SMALL LETTER G					# g	ASCII
+0x68	0x0068	# LATIN SMALL LETTER H					# h	ASCII
+0x69	0x0069	# LATIN SMALL LETTER I					# i	ASCII
+0x6A	0x006A	# LATIN SMALL LETTER J					# j	ASCII
+0x6B	0x006B	# LATIN SMALL LETTER K					# k	ASCII
+0x6C	0x006C	# LATIN SMALL LETTER L					# l	ASCII
+0x6D	0x006D	# LATIN SMALL LETTER M					# m	ASCII
+0x6E	0x006E	# LATIN SMALL LETTER N					# n	ASCII
+0x6F	0x006F	# LATIN SMALL LETTER O					# o	ASCII
+0x70	0x0070	# LATIN SMALL LETTER P					# p	ASCII
+0x71	0x0071	# LATIN SMALL LETTER Q					# q	ASCII
+0x72	0x0072	# LATIN SMALL LETTER R					# r	ASCII
+0x73	0x0073	# LATIN SMALL LETTER S					# s	ASCII
+0x74	0x0074	# LATIN SMALL LETTER T					# t	ASCII
+0x75	0x0075	# LATIN SMALL LETTER U					# u	ASCII
+0x76	0x0076	# LATIN SMALL LETTER V					# v	ASCII
+0x77	0x0077	# LATIN SMALL LETTER W					# w	ASCII
+0x78	0x0078	# LATIN SMALL LETTER X					# x	ASCII
+0x79	0x0079	# LATIN SMALL LETTER Y					# y	ASCII
+0x7A	0x007A	# LATIN SMALL LETTER Z					# z	ASCII
+0x7B	0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS			# Ü	ISO646
+0x7C	0x007C	# VERTICAL LINE						# |	ASCII
+0x7D	0x007D	# RIGHT CURLY BRACKET					# }	ASCII
+0x7E	0x00F6	# LATIN SMALL LETTER O WITH DIAERESIS			# ö	ISO646
+0x7F	0x00E4	# LATIN SMALL LETTER A WITH DIAERESIS			# ä	ISO646
+#inverted characters
+0x80	0xFEFF	# ZERO WIDTH NO-BREAK SPACE				# 	ISO646
+0x81	0x00C1	# LATIN CAPITAL LETTER A WITH ACUTE			# Á	ISO646
+0x82	0x002B	# PLUS SIGN						# +	ISO646
+0x83	0x010C	# LATIN CAPITAL LETTER C WITH CARON			# Č	ISO646
+0x84	0x010F	# LATIN SMALL LETTER D WITH CARON			# ď	ISO646 *
+0x85	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE			# É	ISO646
+0x86	0x0028	# LEFT PARENTHESIS					# (	ISO646
+0x87	0x0024	# DOLLAR SIGN						# $	ISO646
+0x88	0x002A	# ASTERISK						# *	ISO646
+0x89	0x00CD	# LATIN CAPITAL LETTER I WITH ACUTE			# Í	ISO646
+0x8A	0x0147	# LATIN CAPITAL LETTER N WITH CARON			# Ň	ISO646
+0x8B	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE			# Ó	ISO646
+0x8C	0x013E	# LATIN SMALL LETTER L WITH CARON			# ľ	ISO646
+0x8D	0x011A	# LATIN CAPITAL LETTER E WITH CARON			# Ě	ISO646
+0x8E	0x0148	# LATIN SMALL LETTER N WITH CARON			# ň	ISO646
+0x8F	0x00F3	# LATIN SMALL LETTER O WITH ACUTE			# ó	ISO646
+0x90	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS			# ü	ISO646
+0x91	0x0155	# LATIN SMALL LETTER R WITH ACUTE			# ŕ	ISO646
+0x92	0x0158	# LATIN CAPITAL LETTER R WITH CARON			# Ř	ISO646
+0x93	0x0160	# LATIN CAPITAL LETTER S WITH CARON			# Š	ISO646
+0x94	0x0165	# LATIN SMALL LETTER T WITH CARON			# ť	ISO646
+0x95	0x00DA	# LATIN CAPITAL LETTER U WITH ACUTE			# Ú	ISO646
+0x96	0x00A7	# SECTION SIGN						# §	ISO646
+0x97	0x00A9	# COPYRIGHT SIGN					# ©	ISO646
+0x98	0x00F4	# LATIN SMALL LETTER O WITH CIRCUMFLEX			# ô	ISO646
+0x99	0x00DD	# LATIN CAPITAL LETTER Y WITH ACUTE			# Ý	ISO646
+0x9A	0x017D	# LATIN CAPITAL LETTER Z WITH CARON			# Ž	ISO646
+0x9B	0x000A	# LINE FEED						# <LF>	ASCII
+0x9C	0x016E	# LATIN CAPITAL LETTER U WITH RING ABOVE		# Ů	ISO646
+0x9D	0x0164	# LATIN CAPITAL LETTER T WITH CARON			# Ť	ISO646
+0x9E	0x2926	# SOUTH WEST ARROW WITH HOOK				# ⤦	ISO646
+0x9F	0x010E	# LATIN CAPITAL LETTER D WITH CARON			# Ď	ISO646
+0xA0	0x0020	# SPACE							# <SP>	ISO646
+0xA1	0x0021	# EXCLAMATION MARK					# !	ASCII
+0xA2	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0xA3	0x0023	# NUMBER SIGN						# #	ASCII
+0xA4	0x0029	# RIGHT PARENTHESIS					# )	ISO646
+0xA5	0x011B	# LATIN SMALL LETTER E WITH CARON			# ě	ISO646
+0xA6	0x0161	# LATIN SMALL LETTER S WITH CARON			# š	ISO646
+0xA7	0x010D	# LATIN SMALL LETTER C WITH CARON			# č	ISO646
+0xA8	0x017E	# LATIN SMALL LETTER Z WITH CARON			# ž	ISO646
+0xA9	0x00ED	# LATIN SMALL LETTER I WITH ACUTE			# í	ISO646
+0xAA	0x00E1	# LATIN SMALL LETTER A WITH ACUTE			# á	ISO646
+0xAB	0x016F	# LATIN SMALL LETTER U WITH RING ABOVE			# ů	ISO646
+0xAC	0x002C	# COMMA							# ,	ASCII
+0xAD	0x002D	# HYPHEN-MINUS						# -	ASCII
+0xAE	0x002E	# FULL STOP						# .	ASCII
+0xAF	0x002F	# SOLIDUS						# /	ASCII
+0xB0	0x0030	# DIGIT ZERO						# 0	ASCII
+0xB1	0x0031	# DIGIT ONE						# 1	ASCII
+0xB2	0x0032	# DIGIT TWO						# 2	ASCII
+0xB3	0x0033	# DIGIT THREE						# 3	ASCII
+0xB4	0x0034	# DIGIT FOUR						# 4	ASCII
+0xB5	0x0035	# DIGIT FIVE						# 5	ASCII
+0xB6	0x0036	# DIGIT SIX						# 6	ASCII
+0xB7	0x0037	# DIGIT SEVEN						# 7	ASCII
+0xB8	0x0038	# DIGIT EIGHT						# 8	ASCII
+0xB9	0x0039	# DIGIT NINE						# 9	ASCII
+0xBA	0x003A	# COLON							# :	ASCII
+0xBB	0x003B	# SEMICOLON						# ;	ASCII
+0xBC	0x003C	# LESS-THAN SIGN					# <	ASCII
+0xBD	0x003D	# EQUALS SIGN						# =	ASCII
+0xBE	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0xBF	0x003F	# QUESTION MARK						# ?	ASCII
+0xC0	0x0159	# LATIN SMALL LETTER R WITH CARON			# ř	ISO646
+0xC1	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0xC2	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0xC3	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0xC4	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0xC5	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0xC6	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0xC7	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0xC8	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0xC9	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0xCA	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0xCB	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0xCC	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0xCD	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0xCE	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0xCF	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0xD0	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0xD1	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0xD2	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0xD3	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0xD4	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0xD5	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0xD6	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0xD7	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0xD8	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0xD9	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0xDA	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+0xDB	0x00E9	# LATIN SMALL LETTER E WITH ACUTE			# é	ISO646
+0xDC	0x013D	# LATIN CAPITAL LETTER L WITH CARON			# Ľ	ISO646
+0xDD	0x00FA	# LATIN SMALL LETTER U WITH ACUTE			# ú	ISO646
+0xDE	0x00C4	# LATIN CAPITAL LETTER A WITH DIAERESIS			# Ä	ISO646
+0xDF	0x005F	# LOW LINE						# _	ASCII
+0xE0	0x00FD	# LATIN SMALL LETTER Y WITH ACUTE			# ý	ISO646
+0xE1	0x0061	# LATIN SMALL LETTER A					# a	ASCII
+0xE2	0x0062	# LATIN SMALL LETTER B					# b	ASCII
+0xE3	0x0063	# LATIN SMALL LETTER C					# c	ASCII
+0xE4	0x0064	# LATIN SMALL LETTER D					# d	ASCII
+0xE5	0x0065	# LATIN SMALL LETTER E					# e	ASCII
+0xE6	0x0066	# LATIN SMALL LETTER F					# f	ASCII
+0xE7	0x0067	# LATIN SMALL LETTER G					# g	ASCII
+0xE8	0x0068	# LATIN SMALL LETTER H					# h	ASCII
+0xE9	0x0069	# LATIN SMALL LETTER I					# i	ASCII
+0xEA	0x006A	# LATIN SMALL LETTER J					# j	ASCII
+0xEB	0x006B	# LATIN SMALL LETTER K					# k	ASCII
+0xEC	0x006C	# LATIN SMALL LETTER L					# l	ASCII
+0xED	0x006D	# LATIN SMALL LETTER M					# m	ASCII
+0xEE	0x006E	# LATIN SMALL LETTER N					# n	ASCII
+0xEF	0x006F	# LATIN SMALL LETTER O					# o	ASCII
+0xF0	0x0070	# LATIN SMALL LETTER P					# p	ASCII
+0xF1	0x0071	# LATIN SMALL LETTER Q					# q	ASCII
+0xF2	0x0072	# LATIN SMALL LETTER R					# r	ASCII
+0xF3	0x0073	# LATIN SMALL LETTER S					# s	ASCII
+0xF4	0x0074	# LATIN SMALL LETTER T					# t	ASCII
+0xF5	0x0075	# LATIN SMALL LETTER U					# u	ASCII
+0xF6	0x0076	# LATIN SMALL LETTER V					# v	ASCII
+0xF7	0x0077	# LATIN SMALL LETTER W					# w	ASCII
+0xF8	0x0078	# LATIN SMALL LETTER X					# x	ASCII
+0xF9	0x0079	# LATIN SMALL LETTER Y					# y	ASCII
+0xFA	0x007A	# LATIN SMALL LETTER Z					# z	ASCII
+0xFB	0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS			# Ü	ISO646
+0xFC	0x007C	# VERTICAL LINE						# |	ASCII
+0xFD	0x007D	# RIGHT CURLY BRACKET					# }	ASCII
+0xFE	0x00F6	# LATIN SMALL LETTER O WITH DIAERESIS			# ö	ISO646
+0xFF	0x00E4	# LATIN SMALL LETTER A WITH DIAERESIS			# ä	ISO646
+
diff -Naur libiconv-1.14/tests/ATARI8-EUROTEKST.TXT libiconv-1.14-mono/tests/ATARI8-EUROTEKST.TXT
--- libiconv-1.14/tests/ATARI8-EUROTEKST.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-EUROTEKST.TXT	2022-07-03 20:28:53.598942940 +0200
@@ -0,0 +1,129 @@
+0x00	0x2665
+0x01	0x0107
+0x02	0x0106
+0x03	0x0144
+0x04	0x0143
+0x05	0x00F3
+0x06	0x00D3
+0x07	0x015B
+0x08	0x015A
+0x09	0x017C
+0x0A	0x017B
+0x0B	0x017A
+0x0C	0x0179
+0x0D	0x0142
+0x0E	0x0141
+0x0F	0x007B
+0x10	0x007D
+0x11	0x00AB
+0x12	0x00BB
+0x13	0x007C
+0x14	0x005F
+0x15	0x007E
+0x16	0x00A7
+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	0x0105
+0x7C	0x0104
+0x7D	0x0119
+0x7E	0x0118
+0x7F	0x25B6
+0x9B	0x000A
diff -Naur libiconv-1.14/tests/ATARI8-GRAPH.TXT libiconv-1.14-mono/tests/ATARI8-GRAPH.TXT
--- libiconv-1.14/tests/ATARI8-GRAPH.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-GRAPH.TXT	2013-03-21 18:44:19.000000000 +0100
@@ -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/tests/ATARI8-INT.TXT libiconv-1.14-mono/tests/ATARI8-INT.TXT
--- libiconv-1.14/tests/ATARI8-INT.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-INT.TXT	2013-03-21 18:44:19.000000000 +0100
@@ -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/tests/ATARI8-KAREN.TXT libiconv-1.14-mono/tests/ATARI8-KAREN.TXT
--- libiconv-1.14/tests/ATARI8-KAREN.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-KAREN.TXT	2013-03-21 18:44:20.000000000 +0100
@@ -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/tests/ATARI8-PANTHER.TXT libiconv-1.14-mono/tests/ATARI8-PANTHER.TXT
--- libiconv-1.14/tests/ATARI8-PANTHER.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-PANTHER.TXT	2013-03-21 18:44:20.000000000 +0100
@@ -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/tests/ATARI8-PE.TXT libiconv-1.14-mono/tests/ATARI8-PE.TXT
--- libiconv-1.14/tests/ATARI8-PE.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-PE.TXT	2013-03-21 18:44:19.000000000 +0100
@@ -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/tests/ATARI8-TCHEKO.TXT libiconv-1.14-mono/tests/ATARI8-TCHEKO.TXT
--- libiconv-1.14/tests/ATARI8-TCHEKO.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-TCHEKO.TXT	2014-10-27 12:03:45.000000000 +0100
@@ -0,0 +1,307 @@
+#
+# Name:			Atari 8-bit Česky Tcheko standard (ATASCII) to Unicode
+# Unicode version:	4.0
+# Table version:	1.0
+# Table format:		Format A
+# Date:			2014 October 26
+# Authors:		Jerzy Kut <mono AT atari.pl>
+#
+# Copyright (c) 1998 - 2011 Unicode, Inc.  All Rights reserved.
+#
+# This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
+# No claims are made as to fitness for any particular purpose.  No
+# warranties of any kind are expressed or implied.  The recipient
+# agrees to determine applicability of information provided.  If this
+# file has been provided on optical media by Unicode, Inc., the sole
+# remedy for any claim will be exchange of defective media within 90
+# days of receipt.
+#
+# Unicode, Inc. hereby grants the right to freely use the information
+# supplied in this file in the creation of products supporting the
+# Unicode Standard, and to make copies of this file in any form for
+# internal or external distribution as long as this notice remains
+# attached.
+#
+# General notes:
+#
+# This table contains the data the Unicode Consortium has on how
+# 8-bit Atari Česky Tcheko standard characters (ATASCII) map into Unicode.
+#
+# Format:	Three tab-separated columns
+# 	Column 1 is the Atari code (in hex as 0xXX)
+# 	Column 2 is the Unicode (in hex as 0xXXXX)
+# 	Column 3 the Unicode name (follows a comment sign, '#')
+# 	Column 4 is the actual character or <symbol> (follows a comment sign, '#')
+# 	Column 5 indicates backward compatible character set mappings
+#
+# The entries are in Atari 8-bit order.
+#
+# Version history
+# 1.0 version new, by Jerzy Kut (based on ATARIST.TXT).
+#
+# Updated versions of this file may be found in:
+# 	<ftp://ftp.unicode.org/Public/MAPPINGS/>
+#
+# Any comments or problems, contact http://www.unicode.org/reporting.html
+#
+0x00	0x00B7	# MIDDLE DOT						# ·	ISO646
+0x01	0x00E1	# LATIN SMALL LETTER A WITH ACUTE			# á	ISO646
+0x02	0x010E	# LATIN CAPITAL LETTER D WITH CARON			# Ď	ISO646
+0x03	0x010D	# LATIN SMALL LETTER C WITH CARON			# č	ISO646
+#0x04		# LATIN SMALL LETTER D WITH CIRCUMFLEX			# d	ISO646 ?
+0x05	0x011B	# LATIN SMALL LETTER E WITH CARON			# ě	ISO646
+0x06	0x011A	# LATIN CAPITAL LETTER E WITH CARON			# Ě	ISO646
+0x07	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE			# É	ISO646
+0x08	0x00DA	# LATIN CAPITAL LETTER U WITH ACUTE			# Ú	ISO646
+0x09	0x00ED	# LATIN SMALL LETTER I WITH ACUTE			# í	ISO646
+0x0A	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS			# ü	ISO646
+#0x0A	0x016F	# LATIN SMALL LETTER U WITH RING ABOVE			# ů	ISO646 ?
+0x0B	0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS			# Ü	ISO646
+#0x0B	0x016E	# LATIN CAPITAL LETTER U WITH RING ABOVE		# Ů	ISO646 ?
+0x0C	0x00CD	# LATIN CAPITAL LETTER I WITH ACUTE			# Í	ISO646
+0x0D	0x0147	# LATIN CAPITAL LETTER N WITH CARON			# Ň	ISO646
+0x0E	0x0148	# LATIN SMALL LETTER N WITH CARON			# ň	ISO646
+0x0F	0x00F3	# LATIN SMALL LETTER O WITH ACUTE			# ó	ISO646
+0x10	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE			# Ó	ISO646
+0x11	0x00C1	# LATIN CAPITAL LETTER A WITH ACUTE			# Á	ISO646
+0x12	0x0159	# LATIN SMALL LETTER R WITH CARON			# ř	ISO646
+0x13	0x0161	# LATIN SMALL LETTER S WITH CARON			# š	ISO646
+0x14	0x0165	# LATIN SMALL LETTER T WITH CARON			# ť	ISO646
+0x15	0x00FA	# LATIN SMALL LETTER U WITH ACUTE			# ú	ISO646
+0x16	0x010C	# LATIN CAPITAL LETTER C WITH CARON			# Č	ISO646
+0x17	0x00E9	# LATIN SMALL LETTER E WITH ACUTE			# é	ISO646
+0x18	0x017D	# LATIN CAPITAL LETTER Z WITH CARON			# Ž	ISO646
+0x19	0x00FD	# LATIN SMALL LETTER Y WITH ACUTE			# ý	ISO646
+0x1A	0x017E	# LATIN SMALL LETTER Z WITH CARON			# ž	ISO646
+0x1B	0x241B	# SYMBOL FOR ESCAPE					# ␛	Atari 8-bit
+0x1C	0x0158	# LATIN CAPITAL LETTER R WITH CARON			# Ř	ISO646
+0x1D	0x0160	# LATIN CAPITAL LETTER S WITH CARON			# Š	ISO646
+0x1E	0x0164	# LATIN CAPITAL LETTER T WITH CARON			# Ť	ISO646
+0x1F	0x00DD	# LATIN CAPITAL LETTER Y WITH ACUTE			# Ý	ISO646
+0x20	0x0020	# SPACE							# <SP>	ISO646
+0x21	0x0021	# EXCLAMATION MARK					# !	ASCII
+0x22	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0x23	0x0023	# NUMBER SIGN						# #	ASCII
+0x24	0x0024	# DOLLAR SIGN						# $	ASCII
+0x25	0x0025	# PERCENT SIGN						# %	ASCII
+0x26	0x0026	# AMPERSAND						# &amp;	ASCII
+0x27	0x0027	# APOSTROPHE						# '	ASCII
+0x28	0x0028	# LEFT PARENTHESIS					# (	ASCII
+0x29	0x0029	# RIGHT PARENTHESIS					# )	ASCII
+0x2A	0x002A	# ASTERISK						# *	ASCII
+0x2B	0x002B	# PLUS SIGN						# +	ASCII
+0x2C	0x002C	# COMMA							# ,	ASCII
+0x2D	0x002D	# HYPHEN-MINUS						# -	ASCII
+0x2E	0x002E	# FULL STOP						# .	ASCII
+0x2F	0x002F	# SOLIDUS						# /	ASCII
+0x30	0x0030	# DIGIT ZERO						# 0	ASCII
+0x31	0x0031	# DIGIT ONE						# 1	ASCII
+0x32	0x0032	# DIGIT TWO						# 2	ASCII
+0x33	0x0033	# DIGIT THREE						# 3	ASCII
+0x34	0x0034	# DIGIT FOUR						# 4	ASCII
+0x35	0x0035	# DIGIT FIVE						# 5	ASCII
+0x36	0x0036	# DIGIT SIX						# 6	ASCII
+0x37	0x0037	# DIGIT SEVEN						# 7	ASCII
+0x38	0x0038	# DIGIT EIGHT						# 8	ASCII
+0x39	0x0039	# DIGIT NINE						# 9	ASCII
+0x3A	0x003A	# COLON							# :	ASCII
+0x3B	0x003B	# SEMICOLON						# ;	ASCII
+0x3C	0x003C	# LESS-THAN SIGN					# <	ASCII
+0x3D	0x003D	# EQUALS SIGN						# =	ASCII
+0x3E	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0x3F	0x003F	# QUESTION MARK						# ?	ASCII
+0x40	0x0040	# COMMERCIAL AT						# @	ASCII
+0x41	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0x42	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0x43	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0x44	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0x45	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0x46	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0x47	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0x48	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0x49	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0x4A	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0x4B	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0x4C	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0x4D	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0x4E	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0x4F	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0x50	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0x51	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0x52	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0x53	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0x54	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0x55	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0x56	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0x57	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0x58	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0x59	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0x5A	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+0x5B	0x005B	# LEFT SQUARE BRACKET					# [	ASCII
+0x5C	0x005C	# REVERSE SOLIDUS					# \	ASCII
+0x5D	0x005D	# RIGHT SQUARE BRACKET					# ]	ASCII
+0x5E	0x005E	# CIRCUMFLEX ACCENT					# ^	ASCII
+0x5F	0x005F	# LOW LINE						# _	ASCII
+0x60	0x0060	# GRAVE ACCENT						# `	ASCII
+0x61	0x0061	# LATIN SMALL LETTER A					# a	ASCII
+0x62	0x0062	# LATIN SMALL LETTER B					# b	ASCII
+0x63	0x0063	# LATIN SMALL LETTER C					# c	ASCII
+0x64	0x0064	# LATIN SMALL LETTER D					# d	ASCII
+0x65	0x0065	# LATIN SMALL LETTER E					# e	ASCII
+0x66	0x0066	# LATIN SMALL LETTER F					# f	ASCII
+0x67	0x0067	# LATIN SMALL LETTER G					# g	ASCII
+0x68	0x0068	# LATIN SMALL LETTER H					# h	ASCII
+0x69	0x0069	# LATIN SMALL LETTER I					# i	ASCII
+0x6A	0x006A	# LATIN SMALL LETTER J					# j	ASCII
+0x6B	0x006B	# LATIN SMALL LETTER K					# k	ASCII
+0x6C	0x006C	# LATIN SMALL LETTER L					# l	ASCII
+0x6D	0x006D	# LATIN SMALL LETTER M					# m	ASCII
+0x6E	0x006E	# LATIN SMALL LETTER N					# n	ASCII
+0x6F	0x006F	# LATIN SMALL LETTER O					# o	ASCII
+0x70	0x0070	# LATIN SMALL LETTER P					# p	ASCII
+0x71	0x0071	# LATIN SMALL LETTER Q					# q	ASCII
+0x72	0x0072	# LATIN SMALL LETTER R					# r	ASCII
+0x73	0x0073	# LATIN SMALL LETTER S					# s	ASCII
+0x74	0x0074	# LATIN SMALL LETTER T					# t	ASCII
+0x75	0x0075	# LATIN SMALL LETTER U					# u	ASCII
+0x76	0x0076	# LATIN SMALL LETTER V					# v	ASCII
+0x77	0x0077	# LATIN SMALL LETTER W					# w	ASCII
+0x78	0x0078	# LATIN SMALL LETTER X					# x	ASCII
+0x79	0x0079	# LATIN SMALL LETTER Y					# y	ASCII
+0x7A	0x007A	# LATIN SMALL LETTER Z					# z	ASCII
+0x7B	0x007B	# LEFT CURLY BRACKET					# {	ASCII
+0x7C	0x007C	# VERTICAL LINE						# |	ASCII
+0x7D	0x007D	# RIGHT CURLY BRACKET					# }	ASCII
+0x7E	0x007E	# TILDE							# ~	ASCII
+0x7F	0x2926	# SOUTH WEST ARROW WITH HOOK				# ⤦	ISO646
+#inverted characters
+0x80	0x00B7	# MIDDLE DOT						# ·	ISO646
+0x81	0x00E1	# LATIN SMALL LETTER A WITH ACUTE			# á	ISO646
+0x82	0x010E	# LATIN CAPITAL LETTER D WITH CARON			# Ď	ISO646
+0x83	0x010D	# LATIN SMALL LETTER C WITH CARON			# č	ISO646
+#0x84		# LATIN SMALL LETTER D WITH CIRCUMFLEX			# d	ISO646 ?
+0x85	0x011B	# LATIN SMALL LETTER E WITH CARON			# ě	ISO646
+0x86	0x011A	# LATIN CAPITAL LETTER E WITH CARON			# Ě	ISO646
+0x87	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE			# É	ISO646
+0x88	0x00DA	# LATIN CAPITAL LETTER U WITH ACUTE			# Ú	ISO646
+0x89	0x00ED	# LATIN SMALL LETTER I WITH ACUTE			# í	ISO646
+0x8A	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS			# ü	ISO646
+#0x8A	0x016F	# LATIN SMALL LETTER U WITH RING ABOVE			# ů	ISO646 ?
+0x8B	0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS			# Ü	ISO646
+#0x8B	0x016E	# LATIN CAPITAL LETTER U WITH RING ABOVE		# Ů	ISO646 ?
+0x8C	0x00CD	# LATIN CAPITAL LETTER I WITH ACUTE			# Í	ISO646
+0x8D	0x0147	# LATIN CAPITAL LETTER N WITH CARON			# Ň	ISO646
+0x8E	0x0148	# LATIN SMALL LETTER N WITH CARON			# ň	ISO646
+0x8F	0x00F3	# LATIN SMALL LETTER O WITH ACUTE			# ó	ISO646
+0x90	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE			# Ó	ISO646
+0x91	0x00C1	# LATIN CAPITAL LETTER A WITH ACUTE			# Á	ISO646
+0x92	0x0159	# LATIN SMALL LETTER R WITH CARON			# ř	ISO646
+0x93	0x0161	# LATIN SMALL LETTER S WITH CARON			# š	ISO646
+0x94	0x0165	# LATIN SMALL LETTER T WITH CARON			# ť	ISO646 *
+0x95	0x00FA	# LATIN SMALL LETTER U WITH ACUTE			# ú	ISO646
+0x96	0x010C	# LATIN CAPITAL LETTER C WITH CARON			# Č	ISO646
+0x97	0x00E9	# LATIN SMALL LETTER E WITH ACUTE			# é	ISO646
+0x98	0x017D	# LATIN CAPITAL LETTER Z WITH CARON			# Ž	ISO646
+0x99	0x00FD	# LATIN SMALL LETTER Y WITH ACUTE			# ý	ISO646
+0x9A	0x017E	# LATIN SMALL LETTER Z WITH CARON			# ž	ISO646
+0x9B	0x000A	# LINE FEED						# <LF>	ASCII
+0x9C	0x0158	# LATIN CAPITAL LETTER R WITH CARON			# Ř	ISO646
+0x9D	0x0160	# LATIN CAPITAL LETTER S WITH CARON			# Š	ISO646
+0x9E	0x0164	# LATIN CAPITAL LETTER T WITH CARON			# Ť	ISO646
+0x9F	0x00DD	# LATIN CAPITAL LETTER Y WITH ACUTE			# Ý	ISO646
+0xA0	0x0020	# SPACE							# <SP>	ISO646
+0xA1	0x0021	# EXCLAMATION MARK					# !	ASCII
+0xA2	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0xA3	0x0023	# NUMBER SIGN						# #	ASCII
+0xA4	0x0024	# DOLLAR SIGN						# $	ASCII
+0xA5	0x0025	# PERCENT SIGN						# %	ASCII
+0xA6	0x0026	# AMPERSAND						# &amp;	ASCII
+0xA7	0x0027	# APOSTROPHE						# '	ASCII
+0xA8	0x0028	# LEFT PARENTHESIS					# (	ASCII
+0xA9	0x0029	# RIGHT PARENTHESIS					# )	ASCII
+0xAA	0x002A	# ASTERISK						# *	ASCII
+0xAB	0x002B	# PLUS SIGN						# +	ASCII
+0xAC	0x002C	# COMMA							# ,	ASCII
+0xAD	0x002D	# HYPHEN-MINUS						# -	ASCII
+0xAE	0x002E	# FULL STOP						# .	ASCII
+0xAF	0x002F	# SOLIDUS						# /	ASCII
+0xB0	0x0030	# DIGIT ZERO						# 0	ASCII
+0xB1	0x0031	# DIGIT ONE						# 1	ASCII
+0xB2	0x0032	# DIGIT TWO						# 2	ASCII
+0xB3	0x0033	# DIGIT THREE						# 3	ASCII
+0xB4	0x0034	# DIGIT FOUR						# 4	ASCII
+0xB5	0x0035	# DIGIT FIVE						# 5	ASCII
+0xB6	0x0036	# DIGIT SIX						# 6	ASCII
+0xB7	0x0037	# DIGIT SEVEN						# 7	ASCII
+0xB8	0x0038	# DIGIT EIGHT						# 8	ASCII
+0xB9	0x0039	# DIGIT NINE						# 9	ASCII
+0xBA	0x003A	# COLON							# :	ASCII
+0xBB	0x003B	# SEMICOLON						# ;	ASCII
+0xBC	0x003C	# LESS-THAN SIGN					# <	ASCII
+0xBD	0x003D	# EQUALS SIGN						# =	ASCII
+0xBE	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0xBF	0x003F	# QUESTION MARK						# ?	ASCII
+0xC0	0x0040	# COMMERCIAL AT						# @	ASCII
+0xC1	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0xC2	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0xC3	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0xC4	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0xC5	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0xC6	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0xC7	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0xC8	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0xC9	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0xCA	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0xCB	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0xCC	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0xCD	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0xCE	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0xCF	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0xD0	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0xD1	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0xD2	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0xD3	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0xD4	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0xD5	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0xD6	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0xD7	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0xD8	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0xD9	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0xDA	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+0xDB	0x005B	# LEFT SQUARE BRACKET					# [	ASCII
+0xDC	0x005C	# REVERSE SOLIDUS					# \	ASCII
+0xDD	0x005D	# RIGHT SQUARE BRACKET					# ]	ASCII
+0xDE	0x005E	# CIRCUMFLEX ACCENT					# ^	ASCII
+0xDF	0x005F	# LOW LINE						# _	ASCII
+0xE0	0x0060	# GRAVE ACCENT						# `	ASCII
+0xE1	0x0061	# LATIN SMALL LETTER A					# a	ASCII
+0xE2	0x0062	# LATIN SMALL LETTER B					# b	ASCII
+0xE3	0x0063	# LATIN SMALL LETTER C					# c	ASCII
+0xE4	0x0064	# LATIN SMALL LETTER D					# d	ASCII
+0xE5	0x0065	# LATIN SMALL LETTER E					# e	ASCII
+0xE6	0x0066	# LATIN SMALL LETTER F					# f	ASCII
+0xE7	0x0067	# LATIN SMALL LETTER G					# g	ASCII
+0xE8	0x0068	# LATIN SMALL LETTER H					# h	ASCII
+0xE9	0x0069	# LATIN SMALL LETTER I					# i	ASCII
+0xEA	0x006A	# LATIN SMALL LETTER J					# j	ASCII
+0xEB	0x006B	# LATIN SMALL LETTER K					# k	ASCII
+0xEC	0x006C	# LATIN SMALL LETTER L					# l	ASCII
+0xED	0x006D	# LATIN SMALL LETTER M					# m	ASCII
+0xEE	0x006E	# LATIN SMALL LETTER N					# n	ASCII
+0xEF	0x006F	# LATIN SMALL LETTER O					# o	ASCII
+0xF0	0x0070	# LATIN SMALL LETTER P					# p	ASCII
+0xF1	0x0071	# LATIN SMALL LETTER Q					# q	ASCII
+0xF2	0x0072	# LATIN SMALL LETTER R					# r	ASCII
+0xF3	0x0073	# LATIN SMALL LETTER S					# s	ASCII
+0xF4	0x0074	# LATIN SMALL LETTER T					# t	ASCII
+0xF5	0x0075	# LATIN SMALL LETTER U					# u	ASCII
+0xF6	0x0076	# LATIN SMALL LETTER V					# v	ASCII
+0xF7	0x0077	# LATIN SMALL LETTER W					# w	ASCII
+0xF8	0x0078	# LATIN SMALL LETTER X					# x	ASCII
+0xF9	0x0079	# LATIN SMALL LETTER Y					# y	ASCII
+0xFA	0x007A	# LATIN SMALL LETTER Z					# z	ASCII
+0xFB	0x007B	# LEFT CURLY BRACKET					# {	ASCII
+0xFC	0x007C	# VERTICAL LINE						# |	ASCII
+0xFD	0x007D	# RIGHT CURLY BRACKET					# }	ASCII
+0xFE	0x007E	# TILDE							# ~	ASCII
+0xFF	0x2926	# SOUTH WEST ARROW WITH HOOK				# ⤦	ISO646
diff -Naur libiconv-1.14/tests/ATARI8-XLENT.TXT libiconv-1.14-mono/tests/ATARI8-XLENT.TXT
--- libiconv-1.14/tests/ATARI8-XLENT.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ATARI8-XLENT.TXT	2013-03-21 18:44:20.000000000 +0100
@@ -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/tests/CP895_CP867.TXT libiconv-1.14-mono/tests/CP895_CP867.TXT
--- libiconv-1.14/tests/CP895_CP867.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/CP895_CP867.TXT	2014-10-27 12:04:01.000000000 +0100
@@ -0,0 +1,276 @@
+#
+# CP895/CP867 alias KEYBCS2, Kamenicti to Unicode
+#
+# Made on 2014 October 27 by Jerzy Kut <mono AT atari.pl> based on http://linux.fjfi.cvut.cz/~zub/cp895/kam_to_uni.trans
+#
+# One of the character sets I wanted to use is the rather exotic CP895 alias "Bratři Kameničtí".
+#
+# This mapping is taken by me from http://linux.fjfi.cvut.cz/~zub/cp895/ (unfortunatelly I don't know Author of it).
+
+0x00	0x0000	# NULL
+0x01	0x0001	# START OF HEADING
+0x02	0x0002	# START OF TEXT
+0x03	0x0003	# END OF TEXT
+0x04	0x0004	# END OF TRANSMISSION
+0x05	0x0005	# ENQUIRY
+0x06	0x0006	# ACKNOWLEDGE
+0x07	0x0007	# BELL
+0x08	0x0008	# BACKSPACE
+0x09	0x0009	# HORIZONTAL TABULATION
+0x0a	0x000a	# LINE FEED
+0x0b	0x000b	# VERTICAL TABULATION
+0x0c	0x000c	# FORM FEED
+0x0d	0x000d	# CARRIAGE RETURN
+0x0e	0x000e	# SHIFT OUT
+0x0f	0x000f	# SHIFT IN
+0x10	0x0010	# DATA LINK ESCAPE
+0x11	0x0011	# DEVICE CONTROL ONE
+0x12	0x0012	# DEVICE CONTROL TWO
+0x13	0x0013	# DEVICE CONTROL THREE
+0x14	0x0014	# DEVICE CONTROL FOUR
+0x15	0x0015	# NEGATIVE ACKNOWLEDGE
+0x16	0x0016	# SYNCHRONOUS IDLE
+0x17	0x0017	# END OF TRANSMISSION BLOCK
+0x18	0x0018	# CANCEL
+0x19	0x0019	# END OF MEDIUM
+0x1a	0x001a	# SUBSTITUTE
+0x1b	0x001b	# ESCAPE
+0x1c	0x001c	# FILE SEPARATOR
+0x1d	0x001d	# GROUP SEPARATOR
+0x1e	0x001e	# RECORD SEPARATOR
+0x1f	0x001f	# UNIT SEPARATOR
+0x20	0x0020	# SPACE
+0x21	0x0021	# EXCLAMATION MARK
+0x22	0x0022	# QUOTATION MARK
+0x23	0x0023	# NUMBER SIGN
+0x24	0x0024	# DOLLAR SIGN
+0x25	0x0025	# PERCENT SIGN
+0x26	0x0026	# AMPERSAND
+0x27	0x0027	# APOSTROPHE
+0x28	0x0028	# LEFT PARENTHESIS
+0x29	0x0029	# RIGHT PARENTHESIS
+0x2a	0x002a	# ASTERISK
+0x2b	0x002b	# PLUS SIGN
+0x2c	0x002c	# COMMA
+0x2d	0x002d	# HYPHEN-MINUS
+0x2e	0x002e	# FULL STOP
+0x2f	0x002f	# SOLIDUS
+0x30	0x0030	# DIGIT ZERO
+0x31	0x0031	# DIGIT ONE
+0x32	0x0032	# DIGIT TWO
+0x33	0x0033	# DIGIT THREE
+0x34	0x0034	# DIGIT FOUR
+0x35	0x0035	# DIGIT FIVE
+0x36	0x0036	# DIGIT SIX
+0x37	0x0037	# DIGIT SEVEN
+0x38	0x0038	# DIGIT EIGHT
+0x39	0x0039	# DIGIT NINE
+0x3a	0x003a	# COLON
+0x3b	0x003b	# SEMICOLON
+0x3c	0x003c	# LESS-THAN SIGN
+0x3d	0x003d	# EQUALS SIGN
+0x3e	0x003e	# GREATER-THAN SIGN
+0x3f	0x003f	# QUESTION MARK
+0x40	0x0040	# COMMERCIAL AT
+0x41	0x0041	# LATIN CAPITAL LETTER A
+0x42	0x0042	# LATIN CAPITAL LETTER B
+0x43	0x0043	# LATIN CAPITAL LETTER C
+0x44	0x0044	# LATIN CAPITAL LETTER D
+0x45	0x0045	# LATIN CAPITAL LETTER E
+0x46	0x0046	# LATIN CAPITAL LETTER F
+0x47	0x0047	# LATIN CAPITAL LETTER G
+0x48	0x0048	# LATIN CAPITAL LETTER H
+0x49	0x0049	# LATIN CAPITAL LETTER I
+0x4a	0x004a	# LATIN CAPITAL LETTER J
+0x4b	0x004b	# LATIN CAPITAL LETTER K
+0x4c	0x004c	# LATIN CAPITAL LETTER L
+0x4d	0x004d	# LATIN CAPITAL LETTER M
+0x4e	0x004e	# LATIN CAPITAL LETTER N
+0x4f	0x004f	# LATIN CAPITAL LETTER O
+0x50	0x0050	# LATIN CAPITAL LETTER P
+0x51	0x0051	# LATIN CAPITAL LETTER Q
+0x52	0x0052	# LATIN CAPITAL LETTER R
+0x53	0x0053	# LATIN CAPITAL LETTER S
+0x54	0x0054	# LATIN CAPITAL LETTER T
+0x55	0x0055	# LATIN CAPITAL LETTER U
+0x56	0x0056	# LATIN CAPITAL LETTER V
+0x57	0x0057	# LATIN CAPITAL LETTER W
+0x58	0x0058	# LATIN CAPITAL LETTER X
+0x59	0x0059	# LATIN CAPITAL LETTER Y
+0x5a	0x005a	# LATIN CAPITAL LETTER Z
+0x5b	0x005b	# LEFT SQUARE BRACKET
+0x5c	0x005c	# REVERSE SOLIDUS
+0x5d	0x005d	# RIGHT SQUARE BRACKET
+0x5e	0x005e	# CIRCUMFLEX ACCENT
+0x5f	0x005f	# LOW LINE
+0x60	0x0060	# GRAVE ACCENT
+0x61	0x0061	# LATIN SMALL LETTER A
+0x62	0x0062	# LATIN SMALL LETTER B
+0x63	0x0063	# LATIN SMALL LETTER C
+0x64	0x0064	# LATIN SMALL LETTER D
+0x65	0x0065	# LATIN SMALL LETTER E
+0x66	0x0066	# LATIN SMALL LETTER F
+0x67	0x0067	# LATIN SMALL LETTER G
+0x68	0x0068	# LATIN SMALL LETTER H
+0x69	0x0069	# LATIN SMALL LETTER I
+0x6a	0x006a	# LATIN SMALL LETTER J
+0x6b	0x006b	# LATIN SMALL LETTER K
+0x6c	0x006c	# LATIN SMALL LETTER L
+0x6d	0x006d	# LATIN SMALL LETTER M
+0x6e	0x006e	# LATIN SMALL LETTER N
+0x6f	0x006f	# LATIN SMALL LETTER O
+0x70	0x0070	# LATIN SMALL LETTER P
+0x71	0x0071	# LATIN SMALL LETTER Q
+0x72	0x0072	# LATIN SMALL LETTER R
+0x73	0x0073	# LATIN SMALL LETTER S
+0x74	0x0074	# LATIN SMALL LETTER T
+0x75	0x0075	# LATIN SMALL LETTER U
+0x76	0x0076	# LATIN SMALL LETTER V
+0x77	0x0077	# LATIN SMALL LETTER W
+0x78	0x0078	# LATIN SMALL LETTER X
+0x79	0x0079	# LATIN SMALL LETTER Y
+0x7a	0x007a	# LATIN SMALL LETTER Z
+0x7b	0x007b	# LEFT CURLY BRACKET
+0x7c	0x007c	# VERTICAL LINE
+0x7d	0x007d	# RIGHT CURLY BRACKET
+0x7e	0x007e	# TILDE
+0x7f	0x007f	# DELETE
+
+##
+0x80	0x010C	# LATIN CAPITAL LETTER C WITH CARON
+0x81	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS
+0x82	0x00E9	# LATIN SMALL LETTER E WITH ACUTE
+0x83	0x010F	# LATIN SMALL LETTER D WITH CARON
+0x84	0x00e4	# LATIN SMALL LETTER A WITH DIAERESIS
+0x85	0x010E	# LATIN CAPITAL LETTER D WITH CARON
+0x86	0x0164	# LATIN CAPITAL LETTER T WITH CARON
+0x87	0x010D	# LATIN SMALL LETTER C WITH CARON
+0x88	0x011B	# LATIN SMALL LETTER E WITH CARON
+0x89    0x011a  # LATIN CAPITAL LETTER E WITH CARON
+0x8A	0x0139	# LATIN CAPITAL LETTER L WITH ACUTE
+0x8B	0x00CD	# LATIN CAPITAL LETTER I WITH ACUTE
+0x8C	0x013E	# LATIN SMALL LETTER L WITH CARON
+0x8D	0x013A	# LATIN SMALL LETTER L WITH ACUTE
+0x8E	0x00C4	# LATIN CAPITAL LETTER A WITH DIAERESIS
+0x8F	0x00C1	# LATIN CAPITAL LETTER A WITH ACUTE
+
+0x90	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE
+0x91	0x017E	# LATIN SMALL LETTER Z WITH CARON
+0x92	0x017D	# LATIN CAPITAL LETTER Z WITH CARON
+0x93	0x00F4	# LATIN SMALL LETTER O WITH CIRCUMFLEX
+0x94	0x00F6	# LATIN SMALL LETTER O WITH DIAERESIS
+0x95	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE
+0x96	0x016F	# LATIN SMALL LETTER U WITH RING ABOVE
+0x97	0x00DA	# LATIN CAPITAL LETTER U WITH ACUTE
+0x98	0x00FD	# LATIN SMALL LETTER Y WITH ACUTE
+0x99	0x00d6	# LATIN CAPITAL LETTER O WITH DIAERESIS
+0x9a	0x00dc	# LATIN CAPITAL LETTER U WITH DIAERESIS
+
+0x9b	0x0160	# LATIN CAPITAL LETTER S WITH CARON
+
+0x9c	0x013D	# LATIN CAPITAL LETTER L WITH CARON
+0x9d	0x00DD	# LATIN CAPITAL LETTER Y WITH ACUTE
+0x9e	0x0158	# LATIN CAPITAL LETTER R WITH CARON
+0x9f	0x0165	# LATIN SMALL LETTER T WITH CARON
+0xa0	0x00e1	# LATIN SMALL LETTER A WITH ACUTE
+0xa1	0x00ed	# LATIN SMALL LETTER I WITH ACUTE
+0xa2	0x00f3	# LATIN SMALL LETTER O WITH ACUTE
+0xa3	0x00fa	# LATIN SMALL LETTER U WITH ACUTE
+0xa4	0x0148	# LATIN SMALL LETTER N WITH CARON
+0xa5	0x0147	# LATIN CAPITAL LETTER N WITH CARON
+0xa6	0x016E	# LATIN CAPITAL LETTER U WITH RING ABOVE
+0xa7	0x00D4	# LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+0xa8	0x0161	# LATIN SMALL LETTER S WITH CARON
+0xa9	0x0159	# LATIN SMALL LETTER R WITH CARON
+0xaa	0x0155	# LATIN SMALL LETTER R WITH ACUTE
+0xab	0x0154	# LATIN CAPITAL LETTER R WITH ACUTE
+0xac	0x00bc	# VULGAR FRACTION ONE QUARTER
+0xad	0x00a7	# SECTION SIGN
+0xae	0x00ab	# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+0xaf	0x00bb	# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+
+0xb0	0x2591	# LIGHT SHADE
+0xb1	0x2592	# MEDIUM SHADE
+0xb2	0x2593	# DARK SHADE
+0xb3	0x2502	# BOX DRAWINGS LIGHT VERTICAL
+0xb4	0x2524	# BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0xb5	0x2561	# BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+0xb6	0x2562	# BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+0xb7	0x2556	# BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+0xb8	0x2555	# BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+0xb9	0x2563	# BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+0xba	0x2551	# BOX DRAWINGS DOUBLE VERTICAL
+0xbb	0x2557	# BOX DRAWINGS DOUBLE DOWN AND LEFT
+0xbc	0x255d	# BOX DRAWINGS DOUBLE UP AND LEFT
+0xbd	0x255c	# BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+0xbe	0x255b	# BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+0xbf	0x2510	# BOX DRAWINGS LIGHT DOWN AND LEFT
+
+0xc0	0x2514	# BOX DRAWINGS LIGHT UP AND RIGHT
+0xc1	0x2534	# BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0xc2	0x252c	# BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0xc3	0x251c	# BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0xc4	0x2500	# BOX DRAWINGS LIGHT HORIZONTAL
+0xc5	0x253c	# BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0xc6	0x255e	# BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+0xc7	0x255f	# BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+0xc8	0x255a	# BOX DRAWINGS DOUBLE UP AND RIGHT
+0xc9	0x2554	# BOX DRAWINGS DOUBLE DOWN AND RIGHT
+0xca	0x2569	# BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+0xcb	0x2566	# BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+0xcc	0x2560	# BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+0xcd	0x2550	# BOX DRAWINGS DOUBLE HORIZONTAL
+0xce	0x256c	# BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+0xcf	0x2567	# BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+
+0xd0	0x2568	# BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+0xd1	0x2564	# BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+0xd2	0x2565	# BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+0xd3	0x2559	# BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+0xd4	0x2558	# BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+0xd5	0x2552	# BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+0xd6	0x2553	# BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+0xd7	0x256b	# BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+0xd8	0x256a	# BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+0xd9	0x2518	# BOX DRAWINGS LIGHT UP AND LEFT
+0xda	0x250c	# BOX DRAWINGS LIGHT DOWN AND RIGHT
+0xdb	0x2588	# FULL BLOCK
+0xdc	0x2584	# LOWER HALF BLOCK
+0xdd	0x258c	# LEFT HALF BLOCK
+0xde	0x2590	# RIGHT HALF BLOCK
+0xdf	0x2580	# UPPER HALF BLOCK
+
+0xe0	0x03b1	# GREEK SMALL LETTER ALPHA
+0xe1	0x00df	# LATIN SMALL LETTER SHARP S
+0xe2	0x0393	# GREEK CAPITAL LETTER GAMMA
+0xe3	0x03c0	# GREEK SMALL LETTER PI
+0xe4	0x03a3	# GREEK CAPITAL LETTER SIGMA
+0xe5	0x03c3	# GREEK SMALL LETTER SIGMA
+0xe6	0x00b5	# MICRO SIGN
+0xe7	0x03c4	# GREEK SMALL LETTER TAU
+0xe8	0x03a6	# GREEK CAPITAL LETTER PHI
+0xe9	0x0398	# GREEK CAPITAL LETTER THETA
+0xea	0x03a9	# GREEK CAPITAL LETTER OMEGA
+0xeb	0x03b4	# GREEK SMALL LETTER DELTA
+0xec	0x221e	# INFINITY
+0xed	0x03c6	# GREEK SMALL LETTER PHI
+0xee	0x03b5	# GREEK SMALL LETTER EPSILON
+0xef	0x2229	# INTERSECTION
+
+0xf0	0x2261	# IDENTICAL TO
+0xf1	0x00b1	# PLUS-MINUS SIGN
+0xf2	0x2265	# GREATER-THAN OR EQUAL TO
+0xf3	0x2264	# LESS-THAN OR EQUAL TO
+0xf4	0x2320	# TOP HALF INTEGRAL
+0xf5	0x2321	# BOTTOM HALF INTEGRAL
+0xf6	0x00f7	# DIVISION SIGN
+0xf7	0x2248	# ALMOST EQUAL TO
+0xf8	0x00b0	# DEGREE SIGN
+0xf9	0x2219	# BULLET OPERATOR
+0xfa	0x00b7	# MIDDLE DOT
+0xfb	0x221a	# SQUARE ROOT
+0xfc	0x207f	# SUPERSCRIPT LATIN SMALL LETTER N
+0xfd	0x00b2	# SUPERSCRIPT TWO
+0xfe	0x25a0	# BLACK SQUARE
+0xff	0x00a0	# NO-BREAK SPACE
+
diff -Naur libiconv-1.14/tests/Makefile.in libiconv-1.14-mono/tests/Makefile.in
--- libiconv-1.14/tests/Makefile.in	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/tests/Makefile.in	2022-07-03 19:55:23.936321498 +0200
@@ -202,6 +202,22 @@
 	$(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-EUROTEKST
+	$(srcdir)/check-stateless $(srcdir) ATARI8-CAPEK
+	$(srcdir)/check-stateless $(srcdir) ATARI8-TCHEKO
+	$(srcdir)/check-stateless $(srcdir) ZX80
+	$(srcdir)/check-stateless $(srcdir) ZX82
+	$(srcdir)/check-stateless $(srcdir) ZX82-PL
+	$(srcdir)/check-stateless $(srcdir) PETSCII-UC
+	$(srcdir)/check-stateless $(srcdir) PETSCII-LC
+	$(srcdir)/check-stateless $(srcdir) CP895_CP867
 
 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/tests/PETSCII_LC.TXT libiconv-1.14-mono/tests/PETSCII_LC.TXT
--- libiconv-1.14/tests/PETSCII_LC.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/PETSCII_LC.TXT	2014-10-27 21:22:31.000000000 +0100
@@ -0,0 +1,273 @@
+#
+#    Name:		PETSCII C64 English Lowercase to Unicode Table
+#    Unicode version:	3.0
+#    Table version:	1.10
+#    Table format:	Format A
+#    Date:		05/10/02
+#    Authors:		Linus Walleij <triad@df.lth.se>
+#    General notes:	Licensed under the GNU GPL, version 2
+#
+#    Format: Three tab-separated columns
+#        Column #1 is the PETSCII C64 Lowercase code (in hex)
+#        Column #2 is the Unicode (in hex as 0xXXXX)
+#        Column #3 is the Unicode name (follows a comment sign, '#')
+#
+#    The entries are in PETSCII order
+#
+0x00	0x0000	#UNDEFINED
+0x01	0x0001	#UNDEFINED
+0x02	0x0002	#UNDEFINED
+0x03	0x0003	#UNDEFINED
+0x04	0x0004	#UNDEFINED
+0x05	0xF100	#WHITE COLOR SWITCH (CUS)
+0x06	0x0006	#UNDEFINED
+0x07	0x0007	#UNDEFINED
+0x08	0xF118	#DISABLE CHARACTER SET SWITCHING (CUS)
+0x09	0xF119	#ENABLE CHARACTER SET SWITCHING (CUS)
+0x0A	0x000A	#UNDEFINED
+0x0B	0x000B	#UNDEFINED
+0x0C	0x000C	#UNDEFINED
+0x0D	0x000D	#CARRIAGE RETURN
+0x0E	0x000E	#SHIFT OUT
+0x0F	0x000F	#UNDEFINED
+0x10	0x0010	#UNDEFINED
+0x11	0xF11C	#CURSOR DOWN (CUS)
+0x12	0xF11A	#REVERSE VIDEO ON (CUS)
+0x13	0xF120	#HOME (CUS)
+0x14	0x007F	#DELETE
+0x15	0x0015	#UNDEFINED
+0x16	0x0016	#UNDEFINED
+0x17	0x0017	#UNDEFINED
+0x18	0x0018	#UNDEFINED
+0x19	0x0019	#UNDEFINED
+0x1A	0x001A	#UNDEFINED
+0x1B	0x001B	#UNDEFINED
+0x1C	0xF101	#RED COLOR SWITCH (CUS)
+0x1D	0xF11D	#CURSOR RIGHT (CUS)
+0x1E	0xF102	#GREEN COLOR SWITCH (CUS)
+0x1F	0xF103	#BLUE COLOR SWITCH (CUS)
+0x20	0x0020	#SPACE
+0x21	0x0021	#EXCLAMATION MARK
+0x22	0x0022	#QUOTATION MARK
+0x23	0x0023	#NUMBER SIGN
+0x24	0x0024	#DOLLAR SIGN
+0x25	0x0025	#PERCENT SIGN
+0x26	0x0026	#AMPERSAND
+0x27	0x0027	#APOSTROPHE
+0x28	0x0028	#LEFT PARENTHESIS
+0x29	0x0029	#RIGHT PARENTHESIS
+0x2A	0x002A	#ASTERISK
+0x2B	0x002B	#PLUS SIGN
+0x2C	0x002C	#COMMA
+0x2D	0x002D	#HYPHEN-MINUS
+0x2E	0x002E	#FULL STOP
+0x2F	0x002F	#SOLIDUS
+0x30	0x0030	#DIGIT ZERO
+0x31	0x0031	#DIGIT ONE
+0x32	0x0032	#DIGIT TWO
+0x33	0x0033	#DIGIT THREE
+0x34	0x0034	#DIGIT FOUR
+0x35	0x0035	#DIGIT FIVE
+0x36	0x0036	#DIGIT SIX
+0x37	0x0037	#DIGIT SEVEN
+0x38	0x0038	#DIGIT EIGHT
+0x39	0x0039	#DIGIT NINE
+0x3A	0x003A	#COLON
+0x3B	0x003B	#SEMICOLON
+0x3C	0x003C	#LESS-THAN SIGN
+0x3D	0x003D	#EQUALS SIGN
+0x3E	0x003E	#GREATER-THAN SIGN
+0x3F	0x003F	#QUESTION MARK
+0x40	0x0040	#COMMERCIAL AT
+0x41	0x0061	#LATIN SMALL LETTER A
+0x42	0x0062	#LATIN SMALL LETTER B
+0x43	0x0063	#LATIN SMALL LETTER C
+0x44	0x0064	#LATIN SMALL LETTER D
+0x45	0x0065	#LATIN SMALL LETTER E
+0x46	0x0066	#LATIN SMALL LETTER F
+0x47	0x0067	#LATIN SMALL LETTER G
+0x48	0x0068	#LATIN SMALL LETTER H
+0x49	0x0069	#LATIN SMALL LETTER I
+0x4A	0x006A	#LATIN SMALL LETTER J
+0x4B	0x006B	#LATIN SMALL LETTER K
+0x4C	0x006C	#LATIN SMALL LETTER L
+0x4D	0x006D	#LATIN SMALL LETTER M
+0x4E	0x006E	#LATIN SMALL LETTER N
+0x4F	0x006F	#LATIN SMALL LETTER O
+0x50	0x0070	#LATIN SMALL LETTER P
+0x51	0x0071	#LATIN SMALL LETTER Q
+0x52	0x0072	#LATIN SMALL LETTER R
+0x53	0x0073	#LATIN SMALL LETTER S
+0x54	0x0074	#LATIN SMALL LETTER T
+0x55	0x0075	#LATIN SMALL LETTER U
+0x56	0x0076	#LATIN SMALL LETTER V
+0x57	0x0077	#LATIN SMALL LETTER W
+0x58	0x0078	#LATIN SMALL LETTER X
+0x59	0x0079	#LATIN SMALL LETTER Y
+0x5A	0x007A	#LATIN SMALL LETTER Z
+0x5B	0x005B	#LEFT SQUARE BRACKET
+0x5C	0x00A3	#POUND SIGN
+0x5D	0x005D	#RIGHT SQUARE BRACKET
+0x5E	0x2191	#UPWARDS ARROW
+0x5F	0x2190	#LEFTWARDS ARROW
+0x60	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0x61	0x0041	#LATIN CAPITAL LETTER A
+0x62	0x0042	#LATIN CAPITAL LETTER B
+0x63	0x0043	#LATIN CAPITAL LETTER C
+0x64	0x0044	#LATIN CAPITAL LETTER D
+0x65	0x0045	#LATIN CAPITAL LETTER E
+0x66	0x0046	#LATIN CAPITAL LETTER F
+0x67	0x0047	#LATIN CAPITAL LETTER G
+0x68	0x0048	#LATIN CAPITAL LETTER H
+0x69	0x0049	#LATIN CAPITAL LETTER I
+0x6A	0x004A	#LATIN CAPITAL LETTER J
+0x6B	0x004B	#LATIN CAPITAL LETTER K
+0x6C	0x004C	#LATIN CAPITAL LETTER L
+0x6D	0x004D	#LATIN CAPITAL LETTER M
+0x6E	0x004E	#LATIN CAPITAL LETTER N
+0x6F	0x004F	#LATIN CAPITAL LETTER O
+0x70	0x0050	#LATIN CAPITAL LETTER P
+0x71	0x0051	#LATIN CAPITAL LETTER Q
+0x72	0x0052	#LATIN CAPITAL LETTER R
+0x73	0x0053	#LATIN CAPITAL LETTER S
+0x74	0x0054	#LATIN CAPITAL LETTER T
+0x75	0x0055	#LATIN CAPITAL LETTER U
+0x76	0x0056	#LATIN CAPITAL LETTER V
+0x77	0x0057	#LATIN CAPITAL LETTER W
+0x78	0x0058	#LATIN CAPITAL LETTER X
+0x79	0x0059	#LATIN CAPITAL LETTER Y
+0x7A	0x005A	#LATIN CAPITAL LETTER Z
+0x7B	0x253C	#BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0x7C	0xF12E	#LEFT HALF BLOCK MEDIUM SHADE (CUS)
+0x7D	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0x7E	0x2592	#MEDIUM SHADE
+0x7F	0xF139	#MEDIUM SHADE SLASHED LEFT (CUS)
+0x80	0x0080	#UNDEFINED
+0x81	0xF104	#ORANGE COLOR SWITCH (CUS)
+0x82	0x0082	#UNDEFINED
+0x83	0x0083	#UNDEFINED
+0x84	0x0084	#UNDEFINED
+0x85	0xF110	#FUNCTION KEY 1 (CUS)
+0x86	0xF112	#FUNCTION KEY 3 (CUS)
+0x87	0xF114	#FUNCTION KEY 5 (CUS)
+0x88	0xF116	#FUNCTION KEY 7 (CUS)
+0x89	0xF111	#FUNCTION KEY 2 (CUS)
+0x8A	0xF113	#FUNCTION KEY 4 (CUS)
+0x8B	0xF115	#FUNCTION KEY 6 (CUS)
+0x8C	0xF117	#FUNCTION KEY 8 (CUS)
+0x8D	0x000A	#LINE FEED
+0x8E	0x000F	#SHIFT IN
+0x8F	0x008F	#UNDEFINED
+0x90	0xF105	#BLACK COLOR SWITCH (CUS)
+0x91	0xF11E	#CURSOR UP (CUS)
+0x92	0xF11B	#REVERSE VIDEO OFF (CUS)
+0x93	0x000C	#FORM FEED
+0x94	0xF121	#INSERT (CUS)
+0x95	0xF106	#BROWN COLOR SWITCH (CUS)
+0x96	0xF107	#LIGHT RED COLOR SWITCH (CUS)
+0x97	0xF108	#GRAY 1 COLOR SWITCH (CUS)
+0x98	0xF109	#GRAY 2 COLOR SWITCH (CUS)
+0x99	0xF10A	#LIGHT GREEN COLOR SWITCH (CUS)
+0x9A	0xF10B	#LIGHT BLUE COLOR SWITCH (CUS)
+0x9B	0xF10C	#GRAY 3 COLOR SWITCH (CUS)
+0x9C	0xF10D	#PURPLE COLOR SWITCH (CUS)
+0x9D	0xF11D	#CURSOR LEFT (CUS)
+0x9E	0xF10E	#YELLOW COLOR SWITCH (CUS)
+0x9F	0xF10F	#CYAN COLOR SWITCH (CUS)
+0xA0	0x00A0	#NO-BREAK SPACE
+0xA1	0x258C	#LEFT HALF BLOCK
+0xA2	0x2584	#LOWER HALF BLOCK
+0xA3	0x2594	#UPPER ONE EIGHTH BLOCK
+0xA4	0x2581	#LOWER ONE EIGHTH BLOCK
+0xA5	0x258F	#LEFT ONE EIGHTH BLOCK
+0xA6	0x2592	#MEDIUM SHADE
+0xA7	0x2595	#RIGHT ONE EIGHTH BLOCK
+0xA8	0xF12F	#LOWER HALF BLOCK MEDIUM SHADE (CUS)
+0xA9	0xF13A	#MEDIUM SHADE SLASHED RIGHT (CUS)
+0xAA	0xF130	#RIGHT ONE QUARTER BLOCK (CUS)
+0xAB	0x251C	#BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0xAC	0xF134	#BLACK SMALL SQUARE LOWER RIGHT (CUS)
+0xAD	0x2514	#BOX DRAWINGS LIGHT UP AND RIGHT
+0xAE	0x2510	#BOX DRAWINGS LIGHT DOWN AND LEFT
+0xAF	0x2582	#LOWER ONE QUARTER BLOCK
+0xB0	0x250C	#BOX DRAWINGS LIGHT DOWN AND RIGHT
+0xB1	0x2534	#BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0xB2	0x252C	#BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0xB3	0x2524	#BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0xB4	0x258E	#LEFT ONE QUARTER BLOCK
+0xB5	0x258D	#LEFT THREE EIGTHS BLOCK
+0xB6	0xF131	#RIGHT THREE EIGHTHS BLOCK (CUS)
+0xB7	0xF132	#UPPER ONE QUARTER BLOCK (CUS)
+0xB8	0xF133	#UPPER THREE EIGHTS BLOCK (CUS)
+0xB9	0x2583	#LOWER THREE EIGHTHS BLOCK
+0xBA	0x2713	#CHECK MARK
+0xBB	0xF135	#BLACK SMALL SQUARE LOWER LEFT (CUS)
+0xBC	0xF136	#BLACK SMALL SQUARE UPPER RIGHT (CUS)
+0xBD	0x2518	#BOX DRAWINGS LIGHT UP AND LEFT
+0xBE	0xF137	#BLACK SMALL SQUARE UPPER LEFT (CUS)
+0xBF	0xF138	#TWO SMALL BLACK SQUARES DIAGONAL LEFT TO RIGHT (CUS)
+0xC0	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0xC1	0x0041	#LATIN CAPITAL LETTER A
+0xC2	0x0042	#LATIN CAPITAL LETTER B
+0xC3	0x0043	#LATIN CAPITAL LETTER C
+0xC4	0x0044	#LATIN CAPITAL LETTER D
+0xC5	0x0045	#LATIN CAPITAL LETTER E
+0xC6	0x0046	#LATIN CAPITAL LETTER F
+0xC7	0x0047	#LATIN CAPITAL LETTER G
+0xC8	0x0048	#LATIN CAPITAL LETTER H
+0xC9	0x0049	#LATIN CAPITAL LETTER I
+0xCA	0x004A	#LATIN CAPITAL LETTER J
+0xCB	0x004B	#LATIN CAPITAL LETTER K
+0xCC	0x004C	#LATIN CAPITAL LETTER L
+0xCD	0x004D	#LATIN CAPITAL LETTER M
+0xCE	0x004E	#LATIN CAPITAL LETTER N
+0xCF	0x004F	#LATIN CAPITAL LETTER O
+0xD0	0x0050	#LATIN CAPITAL LETTER P
+0xD1	0x0051	#LATIN CAPITAL LETTER Q
+0xD2	0x0052	#LATIN CAPITAL LETTER R
+0xD3	0x0053	#LATIN CAPITAL LETTER S
+0xD4	0x0054	#LATIN CAPITAL LETTER T
+0xD5	0x0055	#LATIN CAPITAL LETTER U
+0xD6	0x0056	#LATIN CAPITAL LETTER V
+0xD7	0x0057	#LATIN CAPITAL LETTER W
+0xD8	0x0058	#LATIN CAPITAL LETTER X
+0xD9	0x0059	#LATIN CAPITAL LETTER Y
+0xDA	0x005A	#LATIN CAPITAL LETTER Z
+0xDB	0x253C	#BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0xDC	0xF12E	#LEFT HALF BLOCK MEDIUM SHADE (CUS)
+0xDD	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0xDE	0x2592	#MEDIUM SHADE
+0xDF	0xF139	#MEDIUM SHADE SLASHED LEFT (CUS)
+0xE0	0x00A0	#NO-BREAK SPACE
+0xE1	0x258C	#LEFT HALF BLOCK
+0xE2	0x2584	#LOWER HALF BLOCK
+0xE3	0x2594	#UPPER ONE EIGHTH BLOCK
+0xE4	0x2581	#LOWER ONE EIGHTH BLOCK
+0xE5	0x258F	#LEFT ONE EIGHTH BLOCK
+0xE6	0x2592	#MEDIUM SHADE
+0xE7	0x2595	#RIGHT ONE EIGHTH BLOCK
+0xE8	0xF12F	#LOWER HALF BLOCK MEDIUM SHADE (CUS)
+0xE9	0xF13A	#MEDIUM SHADE SLASHED RIGHT (CUS)
+0xEA	0xF130	#RIGHT ONE QUARTER BLOCK (CUS)
+0xEB	0x251C	#BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0xEC	0xF134	#BLACK SMALL SQUARE LOWER RIGHT (CUS)
+0xED	0x2514	#BOX DRAWINGS LIGHT UP AND RIGHT
+0xEE	0x2510	#BOX DRAWINGS LIGHT DOWN AND LEFT
+0xEF	0x2582	#LOWER ONE QUARTER BLOCK
+0xF0	0x250C	#BOX DRAWINGS LIGHT DOWN AND RIGHT
+0xF1	0x2534	#BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0xF2	0x252C	#BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0xF3	0x2524	#BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0xF4	0x258E	#LEFT ONE QUARTER BLOCK
+0xF5	0x258D	#LEFT THREE EIGTHS BLOCK
+0xF6	0xF131	#RIGHT THREE EIGHTHS BLOCK (CUS)
+0xF7	0xF132	#UPPER ONE QUARTER BLOCK (CUS)
+0xF8	0xF133	#UPPER THREE EIGHTS BLOCK (CUS)
+0xF9	0x2583	#LOWER THREE EIGHTHS BLOCK
+0xFA	0x2713	#CHECK MARK
+0xFB	0xF135	#BLACK SMALL SQUARE LOWER LEFT (CUS)
+0xFC	0xF136	#BLACK SMALL SQUARE UPPER RIGHT (CUS)
+0xFD	0x2518	#BOX DRAWINGS LIGHT UP AND LEFT
+0xFE	0xF137	#BLACK SMALL SQUARE UPPER LEFT (CUS)
+0xFF	0x2592	#MEDIUM SHADE
+
diff -Naur libiconv-1.14/tests/PETSCII_UC.TXT libiconv-1.14-mono/tests/PETSCII_UC.TXT
--- libiconv-1.14/tests/PETSCII_UC.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/PETSCII_UC.TXT	2014-10-27 21:22:31.000000000 +0100
@@ -0,0 +1,273 @@
+#
+#    Name:		PETSCII C64 English Uppercase to Unicode Table
+#    Unicode version:	3.0
+#    Table version:	1.00
+#    Table format:	Format A
+#    Date:		12/03/00
+#    Authors:		Linus Walleij <triad@df.lth.se>
+#    General notes:	Licensed under the GNU GPL, version 2
+#
+#    Format: Three tab-separated columns
+#        Column #1 is the PETSCII C64 Uppercase code (in hex)
+#        Column #2 is the Unicode (in hex as 0xXXXX)
+#        Column #3 is the Unicode name (follows a comment sign, '#')
+#
+#    The entries are in PETSCII order
+#
+0x00	0x0000	#UNDEFINED
+0x01	0x0001	#UNDEFINED
+0x02	0x0002	#UNDEFINED
+0x03	0x0003	#UNDEFINED
+0x04	0x0004	#UNDEFINED
+0x05	0xF100	#WHITE COLOR SWITCH (CUS)
+0x06	0x0006	#UNDEFINED
+0x07	0x0007	#UNDEFINED
+0x08	0xF118	#DISABLE CHARACTER SET SWITCHING (CUS)
+0x09	0xF119	#ENABLE CHARACTER SET SWITCHING (CUS)
+0x0A	0x000A	#UNDEFINED
+0x0B	0x000B	#UNDEFINED
+0x0C	0x000C	#UNDEFINED
+0x0D	0x000D	#CARRIAGE RETURN
+0x0E	0x000E	#SHIFT OUT
+0x0F	0x000F	#UNDEFINED
+0x10	0x0010	#UNDEFINED
+0x11	0xF11C	#CURSOR DOWN (CUS)
+0x12	0xF11A	#REVERSE VIDEO ON (CUS)
+0x13	0xF120	#HOME (CUS)
+0x14	0x007F	#DELETE
+0x15	0x0015	#UNDEFINED
+0x16	0x0016	#UNDEFINED
+0x17	0x0017	#UNDEFINED
+0x18	0x0018	#UNDEFINED
+0x19	0x0019	#UNDEFINED
+0x1A	0x001A	#UNDEFINED
+0x1B	0x001B	#UNDEFINED
+0x1C	0xF101	#RED COLOR SWITCH (CUS)
+0x1D	0xF11D	#CURSOR RIGHT (CUS)
+0x1E	0xF102	#GREEN COLOR SWITCH (CUS)
+0x1F	0xF103	#BLUE COLOR SWITCH (CUS)
+0x20	0x0020	#SPACE
+0x21	0x0021	#EXCLAMATION MARK
+0x22	0x0022	#QUOTATION MARK
+0x23	0x0023	#NUMBER SIGN
+0x24	0x0024	#DOLLAR SIGN
+0x25	0x0025	#PERCENT SIGN
+0x26	0x0026	#AMPERSAND
+0x27	0x0027	#APOSTROPHE
+0x28	0x0028	#LEFT PARENTHESIS
+0x29	0x0029	#RIGHT PARENTHESIS
+0x2A	0x002A	#ASTERISK
+0x2B	0x002B	#PLUS SIGN
+0x2C	0x002C	#COMMA
+0x2D	0x002D	#HYPHEN-MINUS
+0x2E	0x002E	#FULL STOP
+0x2F	0x002F	#SOLIDUS
+0x30	0x0030	#DIGIT ZERO
+0x31	0x0031	#DIGIT ONE
+0x32	0x0032	#DIGIT TWO
+0x33	0x0033	#DIGIT THREE
+0x34	0x0034	#DIGIT FOUR
+0x35	0x0035	#DIGIT FIVE
+0x36	0x0036	#DIGIT SIX
+0x37	0x0037	#DIGIT SEVEN
+0x38	0x0038	#DIGIT EIGHT
+0x39	0x0039	#DIGIT NINE
+0x3A	0x003A	#COLON
+0x3B	0x003B	#SEMICOLON
+0x3C	0x003C	#LESS-THAN SIGN
+0x3D	0x003D	#EQUALS SIGN
+0x3E	0x003E	#GREATER-THAN SIGN
+0x3F	0x003F	#QUESTION MARK
+0x40	0x0040	#COMMERCIAL AT
+0x41	0x0041	#LATIN CAPITAL LETTER A
+0x42	0x0042	#LATIN CAPITAL LETTER B
+0x43	0x0043	#LATIN CAPITAL LETTER C
+0x44	0x0044	#LATIN CAPITAL LETTER D
+0x45	0x0045	#LATIN CAPITAL LETTER E
+0x46	0x0046	#LATIN CAPITAL LETTER F
+0x47	0x0047	#LATIN CAPITAL LETTER G
+0x48	0x0048	#LATIN CAPITAL LETTER H
+0x49	0x0049	#LATIN CAPITAL LETTER I
+0x4A	0x004A	#LATIN CAPITAL LETTER J
+0x4B	0x004B	#LATIN CAPITAL LETTER K
+0x4C	0x004C	#LATIN CAPITAL LETTER L
+0x4D	0x004D	#LATIN CAPITAL LETTER M
+0x4E	0x004E	#LATIN CAPITAL LETTER N
+0x4F	0x004F	#LATIN CAPITAL LETTER O
+0x50	0x0050	#LATIN CAPITAL LETTER P
+0x51	0x0051	#LATIN CAPITAL LETTER Q
+0x52	0x0052	#LATIN CAPITAL LETTER R
+0x53	0x0053	#LATIN CAPITAL LETTER S
+0x54	0x0054	#LATIN CAPITAL LETTER T
+0x55	0x0055	#LATIN CAPITAL LETTER U
+0x56	0x0056	#LATIN CAPITAL LETTER V
+0x57	0x0057	#LATIN CAPITAL LETTER W
+0x58	0x0058	#LATIN CAPITAL LETTER X
+0x59	0x0059	#LATIN CAPITAL LETTER Y
+0x5A	0x005A	#LATIN CAPITAL LETTER Z
+0x5B	0x005B	#LEFT SQUARE BRACKET
+0x5C	0x00A3	#POUND SIGN
+0x5D	0x005D	#RIGHT SQUARE BRACKET
+0x5E	0x2191	#UPWARDS ARROW
+0x5F	0x2190	#LEFTWARDS ARROW
+0x60	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0x61	0x2660	#BLACK SPADE SUIT
+0x62	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0x63	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0x64	0xF122	#BOX DRAWINGS LIGHT HORIZONTAL ONE QUARTER UP (CUS)
+0x65	0xF123	#BOX DRAWINGS LIGHT HORIZONTAL TWO QUARTERS UP (CUS)
+0x66	0xF124	#BOX DRAWINGS LIGHT HORIZONTAL ONE QUARTER DOWN (CUS)
+0x67	0xF126	#BOX DRAWINGS LIGHT VERTICAL ONE QUARTER LEFT (CUS)
+0x68	0xF128	#BOX DRAWINGS LIGHT VERTICAL ONE QUARTER RIGHT (CUS)
+0x69	0x256E	#BOX DRAWINGS LIGHT ARC DOWN AND LEFT
+0x6A	0x2570	#BOX DRAWINGS LIGHT ARC UP AND RIGHT
+0x6B	0x256F	#BOX DRAWINGS LIGHT ARC UP AND LEFT
+0x6C	0xF12A	#ONE EIGHTH BLOCK UP AND RIGHT (CUS)
+0x6D	0x2572	#BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT
+0x6E	0x2571	#BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT
+0x6F	0xF12B	#ONE EIGHTH BLOCK DOWN AND RIGHT (CUS)
+0x70	0xF12C	#ONE EIGHTH BLOCK DOWN AND LEFT (CUS)
+0x71	0x25CF	#BLACK CIRCLE
+0x72	0xF125	#BOX DRAWINGS LIGHT HORIZONTAL TWO QUARTERS DOWN (CUS)
+0x73	0x2665	#BLACK HEART SUIT
+0x74	0xF127	#BOX DRAWINGS LIGHT VERTICAL TWO QUARTERS LEFT (CUS)
+0x75	0x256D	#BOX DRAWINGS LIGHT ARC DOWN AND RIGHT
+0x76	0x2573	#BOX DRAWINGS LIGHT DIAGONAL CROSS
+0x77	0x25CB	#WHITE CIRCLE
+0x78	0x2663	#BLACK CLUB SUIT
+0x79	0xF129	#BOX DRAWINGS LIGHT VERTICAL TWO QUARTERS RIGHT (CUS)
+0x7A	0x2666	#BLACK DIAMOND SUIT
+0x7B	0x253C	#BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0x7C	0xF12E	#LEFT HALF BLOCK MEDIUM SHADE (CUS)
+0x7D	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0x7E	0x03C0	#GREEK SMALL LETTER PI
+0x7F	0x25E5	#BLACK UPPER RIGHT TRIANGLE
+0x80	0x0080	#UNDEFINED
+0x81	0xF104	#ORANGE COLOR SWITCH (CUS)
+0x82	0x0082	#UNDEFINED
+0x83	0x0083	#UNDEFINED
+0x84	0x0084	#UNDEFINED
+0x85	0xF110	#FUNCTION KEY 1 (CUS)
+0x86	0xF112	#FUNCTION KEY 3 (CUS)
+0x87	0xF114	#FUNCTION KEY 5 (CUS)
+0x88	0xF116	#FUNCTION KEY 7 (CUS)
+0x89	0xF111	#FUNCTION KEY 2 (CUS)
+0x8A	0xF113	#FUNCTION KEY 4 (CUS)
+0x8B	0xF115	#FUNCTION KEY 6 (CUS)
+0x8C	0xF117	#FUNCTION KEY 8 (CUS)
+0x8D	0x000A	#LINE FEED
+0x8E	0x000F	#SHIFT IN
+0x8F	0x008F	#UNDEFINED
+0x90	0xF105	#BLACK COLOR SWITCH (CUS)
+0x91	0xF11E	#CURSOR UP (CUS)
+0x92	0xF11B	#REVERSE VIDEO OFF (CUS)
+0x93	0x000C	#FORM FEED
+0x94	0xF121	#INSERT (CUS)
+0x95	0xF106	#BROWN COLOR SWITCH (CUS)
+0x96	0xF107	#LIGHT RED COLOR SWITCH (CUS)
+0x97	0xF108	#GRAY 1 COLOR SWITCH (CUS)
+0x98	0xF109	#GRAY 2 COLOR SWITCH (CUS)
+0x99	0xF10A	#LIGHT GREEN COLOR SWITCH (CUS)
+0x9A	0xF10B	#LIGHT BLUE COLOR SWITCH (CUS)
+0x9B	0xF10C	#GRAY 3 COLOR SWITCH (CUS)
+0x9C	0xF10D	#PURPLE COLOR SWITCH (CUS)
+0x9D	0xF11D	#CURSOR LEFT (CUS)
+0x9E	0xF10E	#YELLOW COLOR SWITCH (CUS)
+0x9F	0xF10F	#CYAN COLOR SWITCH (CUS)
+0xA0	0x00A0	#NO-BREAK SPACE
+0xA1	0x258C	#LEFT HALF BLOCK
+0xA2	0x2584	#LOWER HALF BLOCK
+0xA3	0x2594	#UPPER ONE EIGHTH BLOCK
+0xA4	0x2581	#LOWER ONE EIGHTH BLOCK
+0xA5	0x258F	#LEFT ONE EIGHTH BLOCK
+0xA6	0x2592	#MEDIUM SHADE
+0xA7	0x2595	#RIGHT ONE EIGHTH BLOCK
+0xA8	0xF12F	#LOWER HALF BLOCK MEDIUM SHADE (CUS)
+0xA9	0x25E4	#BLACK UPPER LEFT TRIANGLE
+0xAA	0xF130	#RIGHT ONE QUARTER BLOCK (CUS)
+0xAB	0x251C	#BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0xAC	0xF134	#BLACK SMALL SQUARE LOWER RIGHT (CUS)
+0xAD	0x2514	#BOX DRAWINGS LIGHT UP AND RIGHT
+0xAE	0x2510	#BOX DRAWINGS LIGHT DOWN AND LEFT
+0xAF	0x2582	#LOWER ONE QUARTER BLOCK
+0xB0	0x250C	#BOX DRAWINGS LIGHT DOWN AND RIGHT
+0xB1	0x2534	#BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0xB2	0x252C	#BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0xB3	0x2524	#BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0xB4	0x258E	#LEFT ONE QUARTER BLOCK
+0xB5	0x258D	#LEFT THREE EIGTHS BLOCK
+0xB6	0xF131	#RIGHT THREE EIGHTHS BLOCK (CUS)
+0xB7	0xF132	#UPPER ONE QUARTER BLOCK (CUS)
+0xB8	0xF133	#UPPER THREE EIGHTS BLOCK (CUS)
+0xB9	0x2583	#LOWER THREE EIGHTHS BLOCK
+0xBA	0xF12D	#ONE EIGHTH BLOCK UP AND LEFT (CUS)
+0xBB	0xF135	#BLACK SMALL SQUARE LOWER LEFT (CUS)
+0xBC	0xF136	#BLACK SMALL SQUARE UPPER RIGHT (CUS)
+0xBD	0x2518	#BOX DRAWINGS LIGHT UP AND LEFT
+0xBE	0xF137	#BLACK SMALL SQUARE UPPER LEFT (CUS)
+0xBF	0xF138	#TWO SMALL BLACK SQUARES DIAGONAL LEFT TO RIGHT (CUS)
+0xC0	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0xC1	0x2660	#BLACK SPADE SUIT
+0xC2	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0xC3	0x2501	#BOX DRAWINGS LIGHT HORIZONTAL
+0xC4	0xF122	#BOX DRAWINGS LIGHT HORIZONTAL ONE QUARTER UP (CUS)
+0xC5	0xF123	#BOX DRAWINGS LIGHT HORIZONTAL TWO QUARTERS UP (CUS)
+0xC6	0xF124	#BOX DRAWINGS LIGHT HORIZONTAL ONE QUARTER DOWN (CUS)
+0xC7	0xF126	#BOX DRAWINGS LIGHT VERTICAL ONE QUARTER LEFT (CUS)
+0xC8	0xF128	#BOX DRAWINGS LIGHT VERTICAL ONE QUARTER RIGHT (CUS)
+0xC9	0x256E	#BOX DRAWINGS LIGHT ARC DOWN AND LEFT
+0xCA	0x2570	#BOX DRAWINGS LIGHT ARC UP AND RIGHT
+0xCB	0x256F	#BOX DRAWINGS LIGHT ARC UP AND LEFT
+0xCC	0xF12A	#ONE EIGHTH BLOCK UP AND RIGHT (CUS)
+0xCD	0x2572	#BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT
+0xCE	0x2571	#BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT
+0xCF	0xF12B	#ONE EIGHTH BLOCK DOWN AND RIGHT (CUS)
+0xD0	0xF12C	#ONE EIGHTH BLOCK DOWN AND LEFT (CUS)
+0xD1	0x25CF	#BLACK CIRCLE
+0xD2	0xF125	#BOX DRAWINGS LIGHT HORIZONTAL TWO QUARTERS DOWN (CUS)
+0xD3	0x2665	#BLACK HEART SUIT
+0xD4	0xF127	#BOX DRAWINGS LIGHT VERTICAL TWO QUARTERS LEFT (CUS)
+0xD5	0x256D	#BOX DRAWINGS LIGHT ARC DOWN AND LEFT
+0xD6	0x2573	#BOX DRAWINGS LIGHT DIAGONAL CROSS
+0xD7	0x25CB	#WHITE CIRCLE
+0xD8	0x2663	#BLACK CLUB SUIT
+0xD9	0xF129	#BOX DRAWINGS LIGHT VERTICAL TWO QUARTERS RIGHT (CUS)
+0xDA	0x2666	#BLACK DIAMOND SUIT
+0xDB	0x253C	#BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0xDC	0xF12E	#LEFT HALF BLOCK MEDIUM SHADE (CUS)
+0xDD	0x2502	#BOX DRAWINGS LIGHT VERTICAL
+0xDE	0x03C0	#GREEK SMALL LETTER PI
+0xDF	0x25E5	#BLACK UPPER RIGHT TRIANGLE
+0xE0	0x00A0	#NO-BREAK SPACE
+0xE1	0x258C	#LEFT HALF BLOCK
+0xE2	0x2584	#LOWER HALF BLOCK
+0xE3	0x2594	#UPPER ONE EIGHTH BLOCK
+0xE4	0x2581	#LOWER ONE EIGHTH BLOCK
+0xE5	0x258F	#LEFT ONE EIGHTH BLOCK
+0xE6	0x2592	#MEDIUM SHADE
+0xE7	0x2595	#RIGHT ONE EIGHTH BLOCK
+0xE8	0xF12F	#LOWER HALF BLOCK MEDIUM SHADE (CUS)
+0xE9	0x25E4	#BLACK UPPER LEFT TRIANGLE
+0xEA	0xF130	#RIGHT ONE QUARTER BLOCK (CUS)
+0xEB	0x251C	#BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0xEC	0xF134	#BLACK SMALL SQUARE LOWER RIGHT (CUS)
+0xED	0x2514	#BOX DRAWINGS LIGHT UP AND RIGHT
+0xEE	0x2510	#BOX DRAWINGS LIGHT DOWN AND LEFT
+0xEF	0x2582	#LOWER ONE QUARTER BLOCK
+0xF0	0x250C	#BOX DRAWINGS LIGHT DOWN AND RIGHT
+0xF1	0x2534	#BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0xF2	0x252C	#BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0xF3	0x2524	#BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0xF4	0x258E	#LEFT ONE QUARTER BLOCK
+0xF5	0x258D	#LEFT THREE EIGTHS BLOCK
+0xF6	0xF131	#RIGHT THREE EIGHTHS BLOCK (CUS)
+0xF7	0xF132	#UPPER ONE QUARTER BLOCK (CUS)
+0xF8	0xF133	#UPPER THREE EIGHTS BLOCK (CUS)
+0xF9	0x2583	#LOWER THREE EIGHTHS BLOCK
+0xFA	0xF12D	#ONE EIGHTH BLOCK UP AND LEFT (CUS)
+0xFB	0xF135	#BLACK SMALL SQUARE LOWER LEFT (CUS)
+0xFC	0xF136	#BLACK SMALL SQUARE UPPER RIGHT (CUS)
+0xFD	0x2518	#BOX DRAWINGS LIGHT UP AND LEFT
+0xFE	0xF137	#BLACK SMALL SQUARE UPPER LEFT (CUS)
+0xFF	0x03C0	#GREEK SMALL LETTER PI
+
diff -Naur libiconv-1.14/tests/ZX80.TXT libiconv-1.14-mono/tests/ZX80.TXT
--- libiconv-1.14/tests/ZX80.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ZX80.TXT	2014-10-27 21:22:31.000000000 +0100
@@ -0,0 +1,305 @@
+#
+# Name:			ZX 80/81 standard to Unicode
+# Unicode version:	4.0
+# Table version:	1.0
+# Table format:		Format A
+# Date:			2014 October 23
+# Authors:		Jerzy Kut <mono AT atari.pl>
+#
+# Copyright (c) 1998 - 2014 Unicode, Inc.  All Rights reserved.
+#
+# This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
+# No claims are made as to fitness for any particular purpose.  No
+# warranties of any kind are expressed or implied.  The recipient
+# agrees to determine applicability of information provided.  If this
+# file has been provided on optical media by Unicode, Inc., the sole
+# remedy for any claim will be exchange of defective media within 90
+# days of receipt.
+#
+# Unicode, Inc. hereby grants the right to freely use the information
+# supplied in this file in the creation of products supporting the
+# Unicode Standard, and to make copies of this file in any form for
+# internal or external distribution as long as this notice remains
+# attached.
+#
+# General notes:
+#
+# This table contains the data the Unicode Consortium has on how
+# ZX80/ZX81 standard characters (ATASCII) map into Unicode.
+#
+# Format:	Three tab-separated columns
+# 	Column 1 is the ZX code (in hex as 0xXX)
+# 	Column 2 is the Unicode (in hex as 0xXXXX)
+# 	Column 3 the Unicode name (follows a comment sign, '#')
+# 	Column 4 is the actual character or <symbol> (follows a comment sign, '#')
+# 	Column 5 indicates backward compatible character set mappings
+#
+# The entries are in ZX order.
+#
+# Version history
+# 1.0 version new, by Jerzy Kut (based on ATARI8-GRAPH.TXT).
+#
+# Updated versions of this file may be found in:
+# 	<ftp://ftp.unicode.org/Public/MAPPINGS/>
+#
+# Any comments or problems, contact http://www.unicode.org/reporting.html
+#
+#normal characters
+0x00	0x0020	# SPACE							# <SP>	ISO646
+0x01	0x2598	# QUADRANT UPPER LEFT					# ▘	ISO646
+0x02	0x259D	# QUADRANT UPPER RIGHT					# ▝	ISO646
+0x03	0x2580	# UPPER HALF BLOCK					# ▀	ISO646
+0x04	0x2596	# QUADRANT LOWER LEFT					# ▖	ISO646
+0x05	0x258C	# LEFT HALF BLOCK					# ▌	ISO646
+0x06	0x259E	# QUADRANT UPPER RIGHT AND LOWER LEFT			# ▞	ISO646
+0x07	0x259B	# QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT	# ▛	ISO646
+0x08	0x2592	# MEDIUM SHADE						# ▒	ISO646
+0x09	0x2584	# LOWER SHADE HALF BLOCK				# ▄	ISO646 *
+0x0A	0x2580	# UPPER SHADE HALF BLOCK				# ▀	ISO646 *
+0x0B	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0x0C	0x00A3	# POUND SIGN						# £	ISO646
+0x0D	0x0024	# DOLLAR SIGN						# $	ASCII
+0x0E	0x003A	# COLON							# :	ASCII
+0x0F	0x003F	# QUESTION MARK						# ?	ASCII
+0x10	0x0028	# LEFT PARENTHESIS					# (	ASCII
+0x11	0x0029	# RIGHT PARENTHESIS					# )	ASCII
+0x12	0x003C	# LESS-THAN SIGN					# <	ASCII
+0x13	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0x14	0x003D	# EQUALS SIGN						# =	ASCII
+0x15	0x002B	# PLUS SIGN						# +	ASCII
+0x16	0x002D	# HYPHEN-MINUS						# -	ASCII
+0x17	0x002A	# ASTERISK						# *	ASCII
+0x18	0x002F	# SOLIDUS						# /	ASCII
+0x19	0x003B	# SEMICOLON						# ;	ASCII
+0x1A	0x002C	# COMMA							# ,	ASCII
+0x1B	0x002E	# FULL STOP						# .	ASCII
+0x1C	0x0030	# DIGIT ZERO						# 0	ASCII
+0x1D	0x0031	# DIGIT ONE						# 1	ASCII
+0x1E	0x0032	# DIGIT TWO						# 2	ASCII
+0x1F	0x0033	# DIGIT THREE						# 3	ASCII
+0x20	0x0034	# DIGIT FOUR						# 4	ASCII
+0x21	0x0035	# DIGIT FIVE						# 5	ASCII
+0x22	0x0036	# DIGIT SIX						# 6	ASCII
+0x23	0x0037	# DIGIT SEVEN						# 7	ASCII
+0x24	0x0038	# DIGIT EIGHT						# 8	ASCII
+0x25	0x0039	# DIGIT NINE						# 9	ASCII
+0x26	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0x27	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0x28	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0x29	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0x2A	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0x2B	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0x2C	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0x2D	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0x2E	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0x2F	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0x30	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0x31	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0x32	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0x33	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0x34	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0x35	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0x36	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0x37	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0x38	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0x39	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0x3A	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0x3B	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0x3C	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0x3D	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0x3E	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0x3F	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+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	0x0060
+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	0x007B
+0x7C	0x007C
+0x7D	0x007D
+0x7E	0x007E
+0x7F	0x007F
+#inverted characters
+0x80	0x2588	# FULL BLOCK						# █	ISO646
+0x81	0x259F	# QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT	# ▟	ISO646
+0x82	0x2599	# QUADRANT UPPER LEFT AND LOWER LEFT AND LOWER RIGHT	# ▙	ISO646
+0x83	0x2584	# LOWER HALF BLOCK					# ▄	ISO646
+0x84	0x259C	# QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER RIGHT	# ▜	ISO646
+0x85	0x2590	# RIGHT HALF BLOCK					# ▐	ISO646
+0x86	0x259A	# QUADRANT UPPER LEFT AND LOWER RIGHT			# ▚	ISO646
+0x87	0x2597	# QUADRANT LOWER RIGHT					# ▗	ISO646
+0x88	0x2592	# MEDIUM SHADE						# ▒	ISO646 *
+0x89	0x2584	# LOWER SHADE HALF BLOCK				# ▄	ISO646 *
+0x8A	0x2580	# UPPER SHADE HALF BLOCK				# ▀	ISO646 *
+0x8B	0x0022	# QUOTATION MARK					# &quot;	ASCII
+0x8C	0x00A3	# POUND SIGN						# £	ISO646
+0x8D	0x0024	# DOLLAR SIGN						# $	ASCII
+0x8E	0x003A	# COLON							# :	ASCII
+0x8F	0x003F	# QUESTION MARK						# ?	ASCII
+0x90	0x0028	# LEFT PARENTHESIS					# (	ASCII
+0x91	0x0029	# RIGHT PARENTHESIS					# )	ASCII
+0x92	0x003C	# LESS-THAN SIGN					# <	ASCII
+0x93	0x003E	# GREATER-THAN SIGN					# >	ASCII
+0x94	0x003D	# EQUALS SIGN						# =	ASCII
+0x95	0x002B	# PLUS SIGN						# +	ASCII
+0x96	0x002D	# HYPHEN-MINUS						# -	ASCII
+0x97	0x002A	# ASTERISK						# *	ASCII
+0x98	0x002F	# SOLIDUS						# /	ASCII
+0x99	0x003B	# SEMICOLON						# ;	ASCII
+0x9A	0x002C	# COMMA							# ,	ASCII
+0x9B	0x002E	# FULL STOP						# .	ASCII
+0x9C	0x0030	# DIGIT ZERO						# 0	ASCII
+0x9D	0x0031	# DIGIT ONE						# 1	ASCII
+0x9E	0x0032	# DIGIT TWO						# 2	ASCII
+0x9F	0x0033	# DIGIT THREE						# 3	ASCII
+0xA0	0x0034	# DIGIT FOUR						# 4	ASCII
+0xA1	0x0035	# DIGIT FIVE						# 5	ASCII
+0xA2	0x0036	# DIGIT SIX						# 6	ASCII
+0xA3	0x0037	# DIGIT SEVEN						# 7	ASCII
+0xA4	0x0038	# DIGIT EIGHT						# 8	ASCII
+0xA5	0x0039	# DIGIT NINE						# 9	ASCII
+0xA6	0x0041	# LATIN CAPITAL LETTER A				# A	ASCII
+0xA7	0x0042	# LATIN CAPITAL LETTER B				# B	ASCII
+0xA8	0x0043	# LATIN CAPITAL LETTER C				# C	ASCII
+0xA9	0x0044	# LATIN CAPITAL LETTER D				# D	ASCII
+0xAA	0x0045	# LATIN CAPITAL LETTER E				# E	ASCII
+0xAB	0x0046	# LATIN CAPITAL LETTER F				# F	ASCII
+0xAC	0x0047	# LATIN CAPITAL LETTER G				# G	ASCII
+0xAD	0x0048	# LATIN CAPITAL LETTER H				# H	ASCII
+0xAE	0x0049	# LATIN CAPITAL LETTER I				# I	ASCII
+0xAF	0x004A	# LATIN CAPITAL LETTER J				# J	ASCII
+0xB0	0x004B	# LATIN CAPITAL LETTER K				# K	ASCII
+0xB1	0x004C	# LATIN CAPITAL LETTER L				# L	ASCII
+0xB2	0x004D	# LATIN CAPITAL LETTER M				# M	ASCII
+0xB3	0x004E	# LATIN CAPITAL LETTER N				# N	ASCII
+0xB4	0x004F	# LATIN CAPITAL LETTER O				# O	ASCII
+0xB5	0x0050	# LATIN CAPITAL LETTER P				# P	ASCII
+0xB6	0x0051	# LATIN CAPITAL LETTER Q				# Q	ASCII
+0xB7	0x0052	# LATIN CAPITAL LETTER R				# R	ASCII
+0xB8	0x0053	# LATIN CAPITAL LETTER S				# S	ASCII
+0xB9	0x0054	# LATIN CAPITAL LETTER T				# T	ASCII
+0xBA	0x0055	# LATIN CAPITAL LETTER U				# U	ASCII
+0xBB	0x0056	# LATIN CAPITAL LETTER V				# V	ASCII
+0xBC	0x0057	# LATIN CAPITAL LETTER W				# W	ASCII
+0xBD	0x0058	# LATIN CAPITAL LETTER X				# X	ASCII
+0xBE	0x0059	# LATIN CAPITAL LETTER Y				# Y	ASCII
+0xBF	0x005A	# LATIN CAPITAL LETTER Z				# Z	ASCII
+0xC0	0x00C0
+0xC1	0x00C1
+0xC2	0x00C2
+0xC3	0x00C3
+0xC4	0x00C4
+0xC5	0x00C5
+0xC6	0x00C6
+0xC7	0x00C7
+0xC8	0x00C8
+0xC9	0x00C9
+0xCA	0x00CA
+0xCB	0x00CB
+0xCC	0x00CC
+0xCD	0x00CD
+0xCE	0x00CE
+0xCF	0x00CF
+0xD0	0x00D0
+0xD1	0x00D1
+0xD2	0x00D2
+0xD3	0x00D3
+0xD4	0x00D4
+0xD5	0x00D5
+0xD6	0x00D6
+0xD7	0x00D7
+0xD8	0x00D8
+0xD9	0x00D9
+0xDA	0x00DA
+0xDB	0x00DB
+0xDC	0x00DC
+0xDD	0x00DD
+0xDE	0x00DE
+0xDF	0x00DF
+0xE0	0x00E0
+0xE1	0x00E1
+0xE2	0x00E2
+0xE3	0x00E3
+0xE4	0x00E4
+0xE5	0x00E5
+0xE6	0x00E6
+0xE7	0x00E7
+0xE8	0x00E8
+0xE9	0x00E9
+0xEA	0x00EA
+0xEB	0x00EB
+0xEC	0x00EC
+0xED	0x00ED
+0xEE	0x00EE
+0xEF	0x00EF
+0xF0	0x00F0
+0xF1	0x00F1
+0xF2	0x00F2
+0xF3	0x00F3
+0xF4	0x00F4
+0xF5	0x00F5
+0xF6	0x00F6
+0xF7	0x00F7
+0xF8	0x00F8
+0xF9	0x00F9
+0xFA	0x00FA
+0xFB	0x00FB
+0xFC	0x00FC
+0xFD	0x00FD
+0xFE	0x00FE
+0xFF	0x00FF
+
diff -Naur libiconv-1.14/tests/ZX82-PL.TXT libiconv-1.14-mono/tests/ZX82-PL.TXT
--- libiconv-1.14/tests/ZX82-PL.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ZX82-PL.TXT	2014-10-27 21:22:31.000000000 +0100
@@ -0,0 +1,285 @@
+#
+#	Name:             Sinclair ZX Spectrum+ 48K Character Set to Unicode
+#	Unicode version:  4.0
+#	Table version:    1.0
+#	Table format:     Format A
+#	Date:             2004 December 02
+#	Authors:          Michael Zaretski
+#	                  Jerzy Kut <mono AT atari.pl>
+#
+#	Format:  Three tab-separated columns
+#		 Column #1 is the ZX Spectrum Character Set code (in hex as 0xXX)
+#		 Column #2 is the Unicode (in hex as 0xXXXX)
+#		 Column #3 the Unicode name (follows a comment sign, '#')
+#
+#	The entries are in ZX Spectrum Character Set order.
+#
+#	Mapping was fetched 2014 October 23 from http://eclecticsatyr.hostultra.com/speccs.txt by Jerzy Kut
+#
+
+#0x00 to 0x1F are proprietary control codes, unmappable to Unicode
+0x00	0x0000
+0x01	0x0001
+0x02	0x0002
+0x03	0x0003
+0x04	0x0004
+0x05	0x0005
+0x06	0x0006
+0x07	0x0007
+0x08	0x0008
+0x09	0x0009
+0x0A	0x000A
+0x0B	0x000B
+0x0C	0x000C
+0x0D	0x000D
+0x0E	0x000E
+0x0F	0x000F
+0x10	0x0010
+0x11	0x0011
+0x12	0x0012
+0x13	0x0013
+0x14	0x0014
+0x15	0x0015
+0x16	0x0016
+0x17	0x0017
+0x18	0x0018
+0x19	0x0019
+0x1A	0x001A
+0x1B	0x001B
+0x1C	0x001C
+0x1D	0x001D
+0x1E	0x001E
+0x1F	0x001F
+0x20	0x0020	#  	SPACE
+0x21	0x0021	# !	EXCLAMATION MARK
+0x22	0x0022	# "	QUOTATION MARK
+0x23	0x0023	# #	NUMBER SIGN
+0x24	0x0024	# $	DOLLAR SIGN
+0x25	0x0025	# %	PERCENT SIGN
+0x26	0x0026	# &	AMPERSAND
+0x27	0x0027	# '	APOSTROPHE
+0x28	0x0028	# (	LEFT PARENTHESIS
+0x29	0x0029	# )	RIGHT PARENTHESIS
+0x2A	0x002A	# *	ASTERISK
+0x2B	0x002B	# +	PLUS SIGN
+0x2C	0x002C	# ,	COMMA
+0x2D	0x002D	# -	HYPHEN-MINUS
+0x2E	0x002E	# .	FULL STOP
+0x2F	0x002F	# /	SOLIDUS
+0x30	0x0030	# 0	DIGIT ZERO
+0x31	0x0031	# 1	DIGIT ONE
+0x32	0x0032	# 2	DIGIT TWO
+0x33	0x0033	# 3	DIGIT THREE
+0x34	0x0034	# 4	DIGIT FOUR
+0x35	0x0035	# 5	DIGIT FIVE
+0x36	0x0036	# 6	DIGIT SIX
+0x37	0x0037	# 7	DIGIT SEVEN
+0x38	0x0038	# 8	DIGIT EIGHT
+0x39	0x0039	# 9	DIGIT NINE
+0x3A	0x003A	# :	COLON
+0x3B	0x003B	# ;	SEMICOLON
+0x3C	0x003C	# <	LESS-THAN SIGN
+0x3D	0x003D	# =	EQUALS SIGN
+0x3E	0x003E	# >	GREATER-THAN SIGN
+0x3F	0x003F	# ?	QUESTION MARK
+0x40	0x0040	# @	COMMERCIAL AT
+0x41	0x0041	# A	LATIN CAPITAL LETTER A
+0x42	0x0042	# B	LATIN CAPITAL LETTER B
+0x43	0x0043	# C	LATIN CAPITAL LETTER C
+0x44	0x0044	# D	LATIN CAPITAL LETTER D
+0x45	0x0045	# E	LATIN CAPITAL LETTER E
+0x46	0x0046	# F	LATIN CAPITAL LETTER F
+0x47	0x0047	# G	LATIN CAPITAL LETTER G
+0x48	0x0048	# H	LATIN CAPITAL LETTER H
+0x49	0x0049	# I	LATIN CAPITAL LETTER I
+0x4A	0x004A	# J	LATIN CAPITAL LETTER J
+0x4B	0x004B	# K	LATIN CAPITAL LETTER K
+0x4C	0x004C	# L	LATIN CAPITAL LETTER L
+0x4D	0x004D	# M	LATIN CAPITAL LETTER M
+0x4E	0x004E	# N	LATIN CAPITAL LETTER N
+0x4F	0x004F	# O	LATIN CAPITAL LETTER O
+0x50	0x0050	# P	LATIN CAPITAL LETTER P
+0x51	0x0051	# Q	LATIN CAPITAL LETTER Q
+0x52	0x0052	# R	LATIN CAPITAL LETTER R
+0x53	0x0053	# S	LATIN CAPITAL LETTER S
+0x54	0x0054	# T	LATIN CAPITAL LETTER T
+0x55	0x0055	# U	LATIN CAPITAL LETTER U
+0x56	0x0056	# V	LATIN CAPITAL LETTER V
+0x57	0x0057	# W	LATIN CAPITAL LETTER W
+0x58	0x0058	# X	LATIN CAPITAL LETTER X
+0x59	0x0059	# Y	LATIN CAPITAL LETTER Y
+0x5A	0x005A	# Z	LATIN CAPITAL LETTER Z
+0x5B	0x005B	# [	LEFT SQUARE BRACKET
+0x5C	0x005C	# \	REVERSE SOLIDUS
+0x5D	0x005D	# ]	RIGHT SQUARE BRACKET
+0x5E	0x2191	# ↑	UPWARDS ARROW
+0x5F	0x005F	# _	LOW LINE
+0x60	0x00A3	# £	POUND SIGN
+0x61	0x0061	# a	LATIN SMALL LETTER A
+0x62	0x0062	# b	LATIN SMALL LETTER B
+0x63	0x0063	# c	LATIN SMALL LETTER C
+0x64	0x0064	# d	LATIN SMALL LETTER D
+0x65	0x0065	# e	LATIN SMALL LETTER E
+0x66	0x0066	# f	LATIN SMALL LETTER F
+0x67	0x0067	# g	LATIN SMALL LETTER G
+0x68	0x0068	# h	LATIN SMALL LETTER H
+0x69	0x0069	# i	LATIN SMALL LETTER I
+0x6A	0x006A	# j	LATIN SMALL LETTER J
+0x6B	0x006B	# k	LATIN SMALL LETTER K
+0x6C	0x006C	# l	LATIN SMALL LETTER L
+0x6D	0x006D	# m	LATIN SMALL LETTER M
+0x6E	0x006E	# n	LATIN SMALL LETTER N
+0x6F	0x006F	# o	LATIN SMALL LETTER O
+0x70	0x0070	# p	LATIN SMALL LETTER P
+0x71	0x0071	# q	LATIN SMALL LETTER Q
+0x72	0x0072	# r	LATIN SMALL LETTER R
+0x73	0x0073	# s	LATIN SMALL LETTER S
+0x74	0x0074	# t	LATIN SMALL LETTER T
+0x75	0x0075	# u	LATIN SMALL LETTER U
+0x76	0x0076	# v	LATIN SMALL LETTER V
+0x77	0x0077	# w	LATIN SMALL LETTER W
+0x78	0x0078	# x	LATIN SMALL LETTER X
+0x79	0x0079	# y	LATIN SMALL LETTER Y
+0x7A	0x007A	# z	LATIN SMALL LETTER Z
+0x7B	0x007B	# {	LEFT CURLY BRACKET
+0x7C	0x007C	# |	VERTICAL LINE
+0x7D	0x007D	# }	RIGHT CURLY BRACKET
+0x7E	0x007E	# ~	TILDE
+0x7F	0x00A9	# ©	COPYRIGHT SIGN
+#0x80 is actually a blank block, the opposite of 0x8F, Unicode 0x2588
+0x80	0x0141	# LATIN CAPITAL LETTER L WITH STROKE			# Ł	ISO646
+0x81	0x0142	# LATIN SMALL LETTER L WITH STROKE			# ł	ISO646
+0x82	0x0104	# LATIN CAPITAL LETTER A WITH OGONEK			# Ą	ISO646
+0x83	0x0118	# LATIN CAPITAL LETTER E WITH OGONEK			# Ę	ISO646
+0x84	0x0105	# LATIN SMALL LETTER A WITH OGONEK			# ą	ISO646
+0x85	0x0119	# LATIN SMALL LETTER E WITH OGONEK			# ę	ISO646
+0x86	0x015A	# LATIN CAPITAL LETTER S WITH ACUTE			# Ś	ISO646
+0x87	0x015B	# LATIN SMALL LETTER S WITH ACUTE			# ś	ISO646
+0x88	0x0106	# LATIN CAPITAL LETTER C WITH ACUTE			# Ć	ISO646
+0x89	0x0107	# LATIN SMALL LETTER C WITH ACUTE			# ć	ISO646
+0x8A	0x017B	# LATIN CAPITAL LETTER Z WITH DOT ABOVE			# Ż	ISO646
+0x8B	0x017C	# LATIN SMALL LETTER Z WITH DOT ABOVE			# ż	ISO646
+0x8C	0x0179	# LATIN CAPITAL LETTER Z WITH ACUTE			# Ź	ISO646
+0x8D	0x017A	# LATIN SMALL LETTER Z WITH ACUTE			# ź	ISO646
+0x8E	0x00D3	# LATIN CAPITAL LETTER O WITH ACUTE			# Ó	ISO646
+0x8F	0x00F3	# LATIN SMALL LETTER O WITH ACUTE			# ó	ISO646
+#0x90 to 0xA4 are user-defined graphics
+0x90	0x0143	# LATIN CAPITAL LETTER N WITH ACUTE			# Ń	ISO646
+0x91	0x0144	# LATIN SMALL LETTER N WITH ACUTE			# ń	ISO646
+0x92	0x0092
+0x93	0x0093
+0x94	0x0094
+0x95	0x0095
+0x96	0x0096
+0x97	0x0097
+0x98	0x0098
+0x99	0x0099
+0x9A	0x009A
+0x9B	0x009B
+0x9C	0x009C
+0x9D	0x009D
+0x9E	0x009E
+0x9F	0x009F
+0xA0	0x00A0
+0xA1	0x00A1
+0xA2	0x00A2
+#0xA3 is SPECTRUM token in 128K BASIC
+0xA3	0x00A3
+#0xA4 is PLAY token in 128K BASIC
+0xA4	0x00A4
+#0xA5 to 0xFF except 0xC7 to 0xC9 are BASIC tokens
+0xA5	0x00A5
+0xA6	0x00A6
+0xA7	0x00A7
+0xA8	0x00A8
+0xA9	0x00A9
+0xAA	0x00AA
+0xAB	0x00AB
+0xAC	0x00AC
+0xAD	0x00AD
+0xAE	0x00AE
+0xAF	0x00AF
+0xB0	0x00B0
+0xB1	0x00B1
+0xB2	0x00B2
+0xB3	0x00B3
+0xB4	0x00B4
+0xB5	0x00B5
+0xB6	0x00B6
+0xB7	0x00B7
+0xB8	0x00B8
+0xB9	0x00B9
+0xBA	0x00BA
+0xBB	0x00BB
+0xBC	0x00BC
+0xBD	0x00BD
+0xBE	0x00BE
+0xBF	0x00BF
+0xC0	0x00C0
+0xC1	0x00C1
+0xC2	0x00C2
+0xC3	0x00C3
+0xC4	0x00C4
+0xC5	0x00C5
+0xC6	0x00C6
+#0xC7 maps to 0xA03C 0xA03D (LESS-THAN SIGN, EQUALS SIGN)
+0xC7	0x00C7
+#0xC8 maps to 0xA03E 0xA03D (GREATER-THAN SIGN, EQUALS SIGN)
+0xC8	0x00C8
+#0xC9 maps to 0xA03C 0xA03E (LESS-THAN SIGN, GREATER-THAN SIGN)
+0xC9	0x00C9
+0xCA	0x00CA
+0xCB	0x00CB
+0xCC	0x00CC
+0xCD	0x00CD
+0xCE	0x00CE
+0xCF	0x00CF
+0xD0	0x00D0
+0xD1	0x00D1
+0xD2	0x00D2
+0xD3	0x00D3
+0xD4	0x00D4
+0xD5	0x00D5
+0xD6	0x00D6
+0xD7	0x00D7
+0xD8	0x00D8
+0xD9	0x00D9
+0xDA	0x00DA
+0xDB	0x00DB
+0xDC	0x00DC
+0xDD	0x00DD
+0xDE	0x00DE
+0xDF	0x00DF
+0xE0	0x00E0
+0xE1	0x00E1
+0xE2	0x00E2
+0xE3	0x00E3
+0xE4	0x00E4
+0xE5	0x00E5
+0xE6	0x00E6
+0xE7	0x00E7
+0xE8	0x00E8
+0xE9	0x00E9
+0xEA	0x00EA
+0xEB	0x00EB
+0xEC	0x00EC
+0xED	0x00ED
+0xEE	0x00EE
+0xEF	0x00EF
+0xF0	0x00F0
+0xF1	0x00F1
+0xF2	0x00F2
+0xF3	0x00F3
+0xF4	0x00F4
+0xF5	0x00F5
+0xF6	0x00F6
+0xF7	0x00F7
+0xF8	0x00F8
+0xF9	0x00F9
+0xFA	0x00FA
+0xFB	0x00FB
+0xFC	0x00FC
+0xFD	0x00FD
+0xFE	0x00FE
+0xFF	0x00FF
+
diff -Naur libiconv-1.14/tests/ZX82.TXT libiconv-1.14-mono/tests/ZX82.TXT
--- libiconv-1.14/tests/ZX82.TXT	1970-01-01 01:00:00.000000000 +0100
+++ libiconv-1.14-mono/tests/ZX82.TXT	2014-10-27 21:22:31.000000000 +0100
@@ -0,0 +1,285 @@
+#
+#	Name:             Sinclair ZX Spectrum+ 48K Character Set to Unicode
+#	Unicode version:  4.0
+#	Table version:    1.0
+#	Table format:     Format A
+#	Date:             2004 December 02
+#	Authors:          Michael Zaretski
+#	                  Jerzy Kut <mono AT atari.pl>
+#
+#	Format:  Three tab-separated columns
+#		 Column #1 is the ZX Spectrum Character Set code (in hex as 0xXX)
+#		 Column #2 is the Unicode (in hex as 0xXXXX)
+#		 Column #3 the Unicode name (follows a comment sign, '#')
+#
+#	The entries are in ZX Spectrum Character Set order.
+#
+#	Mapping was fetched 2014 October 23 from http://eclecticsatyr.hostultra.com/speccs.txt by Jerzy Kut
+#
+
+#0x00 to 0x1F are proprietary control codes, unmappable to Unicode
+0x00	0x0000
+0x01	0x0001
+0x02	0x0002
+0x03	0x0003
+0x04	0x0004
+0x05	0x0005
+0x06	0x0006
+0x07	0x0007
+0x08	0x0008
+0x09	0x0009
+0x0A	0x000A
+0x0B	0x000B
+0x0C	0x000C
+0x0D	0x000D
+0x0E	0x000E
+0x0F	0x000F
+0x10	0x0010
+0x11	0x0011
+0x12	0x0012
+0x13	0x0013
+0x14	0x0014
+0x15	0x0015
+0x16	0x0016
+0x17	0x0017
+0x18	0x0018
+0x19	0x0019
+0x1A	0x001A
+0x1B	0x001B
+0x1C	0x001C
+0x1D	0x001D
+0x1E	0x001E
+0x1F	0x001F
+0x20	0x0020	#  	SPACE
+0x21	0x0021	# !	EXCLAMATION MARK
+0x22	0x0022	# "	QUOTATION MARK
+0x23	0x0023	# #	NUMBER SIGN
+0x24	0x0024	# $	DOLLAR SIGN
+0x25	0x0025	# %	PERCENT SIGN
+0x26	0x0026	# &	AMPERSAND
+0x27	0x0027	# '	APOSTROPHE
+0x28	0x0028	# (	LEFT PARENTHESIS
+0x29	0x0029	# )	RIGHT PARENTHESIS
+0x2A	0x002A	# *	ASTERISK
+0x2B	0x002B	# +	PLUS SIGN
+0x2C	0x002C	# ,	COMMA
+0x2D	0x002D	# -	HYPHEN-MINUS
+0x2E	0x002E	# .	FULL STOP
+0x2F	0x002F	# /	SOLIDUS
+0x30	0x0030	# 0	DIGIT ZERO
+0x31	0x0031	# 1	DIGIT ONE
+0x32	0x0032	# 2	DIGIT TWO
+0x33	0x0033	# 3	DIGIT THREE
+0x34	0x0034	# 4	DIGIT FOUR
+0x35	0x0035	# 5	DIGIT FIVE
+0x36	0x0036	# 6	DIGIT SIX
+0x37	0x0037	# 7	DIGIT SEVEN
+0x38	0x0038	# 8	DIGIT EIGHT
+0x39	0x0039	# 9	DIGIT NINE
+0x3A	0x003A	# :	COLON
+0x3B	0x003B	# ;	SEMICOLON
+0x3C	0x003C	# <	LESS-THAN SIGN
+0x3D	0x003D	# =	EQUALS SIGN
+0x3E	0x003E	# >	GREATER-THAN SIGN
+0x3F	0x003F	# ?	QUESTION MARK
+0x40	0x0040	# @	COMMERCIAL AT
+0x41	0x0041	# A	LATIN CAPITAL LETTER A
+0x42	0x0042	# B	LATIN CAPITAL LETTER B
+0x43	0x0043	# C	LATIN CAPITAL LETTER C
+0x44	0x0044	# D	LATIN CAPITAL LETTER D
+0x45	0x0045	# E	LATIN CAPITAL LETTER E
+0x46	0x0046	# F	LATIN CAPITAL LETTER F
+0x47	0x0047	# G	LATIN CAPITAL LETTER G
+0x48	0x0048	# H	LATIN CAPITAL LETTER H
+0x49	0x0049	# I	LATIN CAPITAL LETTER I
+0x4A	0x004A	# J	LATIN CAPITAL LETTER J
+0x4B	0x004B	# K	LATIN CAPITAL LETTER K
+0x4C	0x004C	# L	LATIN CAPITAL LETTER L
+0x4D	0x004D	# M	LATIN CAPITAL LETTER M
+0x4E	0x004E	# N	LATIN CAPITAL LETTER N
+0x4F	0x004F	# O	LATIN CAPITAL LETTER O
+0x50	0x0050	# P	LATIN CAPITAL LETTER P
+0x51	0x0051	# Q	LATIN CAPITAL LETTER Q
+0x52	0x0052	# R	LATIN CAPITAL LETTER R
+0x53	0x0053	# S	LATIN CAPITAL LETTER S
+0x54	0x0054	# T	LATIN CAPITAL LETTER T
+0x55	0x0055	# U	LATIN CAPITAL LETTER U
+0x56	0x0056	# V	LATIN CAPITAL LETTER V
+0x57	0x0057	# W	LATIN CAPITAL LETTER W
+0x58	0x0058	# X	LATIN CAPITAL LETTER X
+0x59	0x0059	# Y	LATIN CAPITAL LETTER Y
+0x5A	0x005A	# Z	LATIN CAPITAL LETTER Z
+0x5B	0x005B	# [	LEFT SQUARE BRACKET
+0x5C	0x005C	# \	REVERSE SOLIDUS
+0x5D	0x005D	# ]	RIGHT SQUARE BRACKET
+0x5E	0x2191	# ↑	UPWARDS ARROW
+0x5F	0x005F	# _	LOW LINE
+0x60	0x00A3	# £	POUND SIGN
+0x61	0x0061	# a	LATIN SMALL LETTER A
+0x62	0x0062	# b	LATIN SMALL LETTER B
+0x63	0x0063	# c	LATIN SMALL LETTER C
+0x64	0x0064	# d	LATIN SMALL LETTER D
+0x65	0x0065	# e	LATIN SMALL LETTER E
+0x66	0x0066	# f	LATIN SMALL LETTER F
+0x67	0x0067	# g	LATIN SMALL LETTER G
+0x68	0x0068	# h	LATIN SMALL LETTER H
+0x69	0x0069	# i	LATIN SMALL LETTER I
+0x6A	0x006A	# j	LATIN SMALL LETTER J
+0x6B	0x006B	# k	LATIN SMALL LETTER K
+0x6C	0x006C	# l	LATIN SMALL LETTER L
+0x6D	0x006D	# m	LATIN SMALL LETTER M
+0x6E	0x006E	# n	LATIN SMALL LETTER N
+0x6F	0x006F	# o	LATIN SMALL LETTER O
+0x70	0x0070	# p	LATIN SMALL LETTER P
+0x71	0x0071	# q	LATIN SMALL LETTER Q
+0x72	0x0072	# r	LATIN SMALL LETTER R
+0x73	0x0073	# s	LATIN SMALL LETTER S
+0x74	0x0074	# t	LATIN SMALL LETTER T
+0x75	0x0075	# u	LATIN SMALL LETTER U
+0x76	0x0076	# v	LATIN SMALL LETTER V
+0x77	0x0077	# w	LATIN SMALL LETTER W
+0x78	0x0078	# x	LATIN SMALL LETTER X
+0x79	0x0079	# y	LATIN SMALL LETTER Y
+0x7A	0x007A	# z	LATIN SMALL LETTER Z
+0x7B	0x007B	# {	LEFT CURLY BRACKET
+0x7C	0x007C	# |	VERTICAL LINE
+0x7D	0x007D	# }	RIGHT CURLY BRACKET
+0x7E	0x007E	# ~	TILDE
+0x7F	0x00A9	# ©	COPYRIGHT SIGN
+#0x80 is actually a blank block, the opposite of 0x8F, Unicode 0x2588
+0x80	0x00A0	#  	NO-BREAK SPACE
+0x81	0x259D	# ▝	QUADRANT UPPER RIGHT
+0x82	0x2598	# ▘	QUADRANT UPPER LEFT
+0x83	0x2580	# ▀	UPPER HALF BLOCK
+0x84	0x2597	# ▗	QUADRANT LOWER RIGHT
+0x85	0x2590	# ▐	RIGHT HALF BLOCK
+0x86	0x259A	# ▚	QUADRANT UPPER LEFT AND LOWER RIGHT
+0x87	0x259C	# ▜	QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER RIGHT
+0x88	0x2596	# ▖	QUADRANT LOWER LEFT
+0x89	0x259E	# ▞	QUADRANT UPPER RIGHT AND LOWER LEFT
+0x8A	0x258C	# ▌	LEFT HALF BLOCK
+0x8B	0x259B	# ▛	QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT
+0x8C	0x2584	# ▄	LOWER HALF BLOCK
+0x8D	0x259F	# ▟	QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT
+0x8E	0x2599	# ▙	QUADRANT UPPER LEFT AND LOWER LEFT AND LOWER RIGHT
+0x8F	0x2588	# █	FULL BLOCK
+#0x90 to 0xA4 are user-defined graphics
+0x90	0x0090
+0x91	0x0091
+0x92	0x0092
+0x93	0x0093
+0x94	0x0094
+0x95	0x0095
+0x96	0x0096
+0x97	0x0097
+0x98	0x0098
+0x99	0x0099
+0x9A	0x009A
+0x9B	0x009B
+0x9C	0x009C
+0x9D	0x009D
+0x9E	0x009E
+0x9F	0x009F
+0xA0	0x00A0
+0xA1	0x00A1
+0xA2	0x00A2
+#0xA3 is SPECTRUM token in 128K BASIC
+0xA3	0x00A3
+#0xA4 is PLAY token in 128K BASIC
+0xA4	0x00A4
+#0xA5 to 0xFF except 0xC7 to 0xC9 are BASIC tokens
+0xA5	0x00A5
+0xA6	0x00A6
+0xA7	0x00A7
+0xA8	0x00A8
+0xA9	0x00A9
+0xAA	0x00AA
+0xAB	0x00AB
+0xAC	0x00AC
+0xAD	0x00AD
+0xAE	0x00AE
+0xAF	0x00AF
+0xB0	0x00B0
+0xB1	0x00B1
+0xB2	0x00B2
+0xB3	0x00B3
+0xB4	0x00B4
+0xB5	0x00B5
+0xB6	0x00B6
+0xB7	0x00B7
+0xB8	0x00B8
+0xB9	0x00B9
+0xBA	0x00BA
+0xBB	0x00BB
+0xBC	0x00BC
+0xBD	0x00BD
+0xBE	0x00BE
+0xBF	0x00BF
+0xC0	0x00C0
+0xC1	0x00C1
+0xC2	0x00C2
+0xC3	0x00C3
+0xC4	0x00C4
+0xC5	0x00C5
+0xC6	0x00C6
+#0xC7 maps to 0xA03C 0xA03D (LESS-THAN SIGN, EQUALS SIGN)
+0xC7	0x00C7
+#0xC8 maps to 0xA03E 0xA03D (GREATER-THAN SIGN, EQUALS SIGN)
+0xC8	0x00C8
+#0xC9 maps to 0xA03C 0xA03E (LESS-THAN SIGN, GREATER-THAN SIGN)
+0xC9	0x00C9
+0xCA	0x00CA
+0xCB	0x00CB
+0xCC	0x00CC
+0xCD	0x00CD
+0xCE	0x00CE
+0xCF	0x00CF
+0xD0	0x00D0
+0xD1	0x00D1
+0xD2	0x00D2
+0xD3	0x00D3
+0xD4	0x00D4
+0xD5	0x00D5
+0xD6	0x00D6
+0xD7	0x00D7
+0xD8	0x00D8
+0xD9	0x00D9
+0xDA	0x00DA
+0xDB	0x00DB
+0xDC	0x00DC
+0xDD	0x00DD
+0xDE	0x00DE
+0xDF	0x00DF
+0xE0	0x00E0
+0xE1	0x00E1
+0xE2	0x00E2
+0xE3	0x00E3
+0xE4	0x00E4
+0xE5	0x00E5
+0xE6	0x00E6
+0xE7	0x00E7
+0xE8	0x00E8
+0xE9	0x00E9
+0xEA	0x00EA
+0xEB	0x00EB
+0xEC	0x00EC
+0xED	0x00ED
+0xEE	0x00EE
+0xEF	0x00EF
+0xF0	0x00F0
+0xF1	0x00F1
+0xF2	0x00F2
+0xF3	0x00F3
+0xF4	0x00F4
+0xF5	0x00F5
+0xF6	0x00F6
+0xF7	0x00F7
+0xF8	0x00F8
+0xF9	0x00F9
+0xFA	0x00FA
+0xFB	0x00FB
+0xFC	0x00FC
+0xFD	0x00FD
+0xFE	0x00FE
+0xFF	0x00FF
+
diff -Naur libiconv-1.14/tools/8bit_tab_to_h.c libiconv-1.14-mono/tools/8bit_tab_to_h.c
--- libiconv-1.14/tools/8bit_tab_to_h.c	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/tools/8bit_tab_to_h.c	2013-03-21 18:44:21.000000000 +0100
@@ -338,7 +338,7 @@
       struct { int minline; int maxline; int usecount; const char* suffix; } tables[0x2000];
       bool need_c;
       bool fix_0000;
-      int i, j, p, j1, j2, t;
+      int i, j, p, j1, j2, t, first;
 
       for (j = 0; j < 0x10000; j++)
         uni2charset[j] = 0;
@@ -346,7 +346,7 @@
         pages[p] = false;
       for (i = 0; i < 0x100; i++) {
         j = charset2uni[i];
-        if (j != 0xfffd) {
+        if ((j != 0xfffd) && !uni2charset[j]) {	/* first most important - all next ignored */
           uni2charset[j] = i;
           pages[j>>8] = true;
         }
@@ -443,6 +443,7 @@
       fprintf(f, "{\n");
       if (need_c)
         fprintf(f, "  unsigned char c = 0;\n");
+      first = 1;
       for (j1 = 0; j1 < 0x2000;) {
         t = line[j1];
         for (j2 = j1; j2 < 0x2000 && line[j2] == t; j2++);
@@ -453,9 +454,10 @@
         }
         if (t == -2) {
         } else {
-          if (j1 == 0)
+          if (first) {
             fprintf(f, "  ");
-          else
+            first = 0;
+          } else
             fprintf(f, "  else ");
           if (t >= 0 && tables[t].usecount == 0) abort();
           if (t >= 0 && tables[t].usecount == 1) {
diff -Naur libiconv-1.14/tools/Makefile libiconv-1.14-mono/tools/Makefile
--- libiconv-1.14/tools/Makefile	2013-03-21 18:44:28.000000000 +0100
+++ libiconv-1.14-mono/tools/Makefile	2022-07-03 19:56:05.252353303 +0200
@@ -122,7 +122,23 @@
  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_eurotekst.h \
+ atari8_capek.h \
+ atari8_tcheko.h \
+ zx80.h \
+ zx82.h \
+ zx82_pl.h \
+ petscii_uc.h \
+ petscii_lc.h \
+ cp895_cp867.h
 
 all : $(ALL)
 
@@ -514,6 +530,50 @@
 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 < $< > $@
+
+atari8_tcheko.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARI8-TCHEKO.TXT
+	./8bit_tab_to_h "Atari 8-bit Czech Tcheko ATASCII" atari8_tcheko < $< > $@
+
+zx80.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ZX80.TXT
+	./8bit_tab_to_h "Sinclair ZX-80 ASCII" zx80 < $< > $@
+
+zx82.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ZX82.TXT
+	./8bit_tab_to_h "Sinclair ZX Spectrum Standard ASCII" zx82 < $< > $@
+
+zx82_pl.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ZX82-PL.TXT
+	./8bit_tab_to_h "Sinclair ZX Spectrum Polish ASCII" zx82_pl < $< > $@
+
+petscii_uc.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/PETSCII-UC.TXT
+	./8bit_tab_to_h "Commodore Uppercase PETSCII" petscii_uc < $< > $@
+
+petscii_lc.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/PETSCII-LC.TXT
+	./8bit_tab_to_h "Commodore Lowercase PETSCII" petscii_lc < $< > $@
+
+cp895_cp867.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/CP895_CP867.TXT
+	./8bit_tab_to_h "CP895/CP867/KEYBCS2 Bratři Kameničtí" cp895_cp867 < $< > $@
 
 cjk_variants.h : $(TABLESDIR)/yasuoka/UniVariants cjk_variants
 	./cjk_variants < $< > $@
