aboutsummaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorRenato Botelho <garga@FreeBSD.org>2006-07-27 18:46:50 +0000
committerRenato Botelho <garga@FreeBSD.org>2006-07-27 18:46:50 +0000
commit644ec9e0cbef22696a3141656ad815fd68d16dc6 (patch)
treec697ad44d4661c49932dd477e9d0e7785bc59be1 /emulators
parentb2f122946bef43497e48251043317ee2addab7a4 (diff)
downloadports-644ec9e0cbef22696a3141656ad815fd68d16dc6.tar.gz
ports-644ec9e0cbef22696a3141656ad815fd68d16dc6.zip
Nonpareil is a high-fidelity simulator for calculators. It currently
supports many HP calculators models introduced between 1972 and 1982. Simulation fidelity is achieved through the use of the actual microcode of the calculators, thus in most cases the simulation behavior exactly matches that of the real calculator. WWW: http://nonpareil.brouhaha.com/ PR: ports/100834 Submitted by: trasz <trasz at pin.if.uz.zgora.pl>
Notes
Notes: svn path=/head/; revision=168901
Diffstat (limited to 'emulators')
-rw-r--r--emulators/Makefile1
-rw-r--r--emulators/nonpareil/Makefile86
-rw-r--r--emulators/nonpareil/distinfo3
-rw-r--r--emulators/nonpareil/files/patch-build_common610
-rw-r--r--emulators/nonpareil/files/patch-src_SConscript73
-rw-r--r--emulators/nonpareil/files/patch-src_debugger_gui.c14
-rw-r--r--emulators/nonpareil/files/patch-src_proc.c17
-rw-r--r--emulators/nonpareil/files/patch-src_proc_nut.c12
-rw-r--r--emulators/nonpareil/files/patch-src_proc_woodstock.c12
-rw-r--r--emulators/nonpareil/files/patch-src_sound.c11
-rw-r--r--emulators/nonpareil/files/patch-src_state_read.c12
-rw-r--r--emulators/nonpareil/files/patch-src_state_write.c12
-rw-r--r--emulators/nonpareil/files/patch-src_util.c18
-rw-r--r--emulators/nonpareil/files/patch-src_util.h11
-rw-r--r--emulators/nonpareil/pkg-descr7
15 files changed, 899 insertions, 0 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index 2ab43706a30b..64ec0d387a39 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -94,6 +94,7 @@
SUBDIR += mupen64-sdlaudio
SUBDIR += mupen64-sdlinput
SUBDIR += mupen64-sound
+ SUBDIR += nonpareil
SUBDIR += o2em
SUBDIR += ods2reader
SUBDIR += openmsx
diff --git a/emulators/nonpareil/Makefile b/emulators/nonpareil/Makefile
new file mode 100644
index 000000000000..243a27da816d
--- /dev/null
+++ b/emulators/nonpareil/Makefile
@@ -0,0 +1,86 @@
+# New ports collection makefile for: nonpareil
+# Date created: 24 Jul 2006
+# Whom: trasz <trasz@pin.if.uz.zgora.pl>
+#
+# $FreeBSD$
+#
+
+PORTNAME= nonpareil
+PORTVERSION= 0.77
+CATEGORIES= emulators
+MASTER_SITES= http://nonpareil.brouhaha.com/download/
+
+MAINTAINER= trasz@pin.if.uz.zgora.pl
+COMMENT= Simulator for many HP calculators
+
+BUILD_DEPENDS= pnmtopng:${PORTSDIR}/graphics/netpbm \
+ bison2:${PORTSDIR}/devel/bison2
+
+USE_SCONS= yes
+USE_GNOME= gtk20 libxml2
+USE_SDL= mixer
+USE_GCC= 3.4+
+
+SCONS_ARGS+= prefix="${PREFIX}"
+
+PLIST_EXECS= bin/uasm bin/nonpareil bin/modutil
+PLIST_DATA= lib/nonpareil/21.obj lib/nonpareil/25.obj \
+ lib/nonpareil/32e.obj lib/nonpareil/33c.obj \
+ lib/nonpareil/34c.obj lib/nonpareil/37e.obj \
+ lib/nonpareil/38c.obj lib/nonpareil/38e.obj \
+ lib/nonpareil/41cv.mod lib/nonpareil/41cx.mod \
+ lib/nonpareil/82143a.mod lib/nonpareil/82182a.mod \
+ lib/nonpareil/11c.obj lib/nonpareil/12c.obj \
+ lib/nonpareil/15c.obj lib/nonpareil/16c.obj \
+ lib/nonpareil/35.kml lib/nonpareil/45.kml \
+ lib/nonpareil/55.kml lib/nonpareil/80.kml \
+ lib/nonpareil/21.kml lib/nonpareil/25.kml \
+ lib/nonpareil/32e.kml lib/nonpareil/33c.kml \
+ lib/nonpareil/34c.kml lib/nonpareil/37e.kml \
+ lib/nonpareil/38c.kml lib/nonpareil/38e.kml \
+ lib/nonpareil/41cv.kml lib/nonpareil/41cx.kml \
+ lib/nonpareil/11c.kml lib/nonpareil/12c.kml \
+ lib/nonpareil/15c.kml lib/nonpareil/16c.kml \
+ lib/nonpareil/35.png lib/nonpareil/45.png \
+ lib/nonpareil/55.png lib/nonpareil/80.png \
+ lib/nonpareil/21.png lib/nonpareil/25.png \
+ lib/nonpareil/32e.png lib/nonpareil/33c.png \
+ lib/nonpareil/34c.png lib/nonpareil/37e.png \
+ lib/nonpareil/38c.png lib/nonpareil/41cv.png \
+ lib/nonpareil/11c.png lib/nonpareil/12c.png \
+ lib/nonpareil/15c.png lib/nonpareil/16c.png \
+ lib/nonpareil/35.obj lib/nonpareil/35.lst \
+ lib/nonpareil/45.obj lib/nonpareil/45.lst \
+ lib/nonpareil/55.obj lib/nonpareil/55.lst \
+ lib/nonpareil/80.obj lib/nonpareil/80.lst
+
+PLIST_FILES= ${PLIST_EXECS} ${PLIST_DATA}
+PLIST_DIRS= lib/nonpareil
+PORTDOCS= CREDITS DEBUGGING README TODO
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 500000
+BROKEN= Doesn't build on 4.x
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's,%%CFLAGS%%,${CFLAGS},' \
+ -e 's,%%CC%%,${CC},' \
+ ${WRKSRC}/src/SConscript
+ @${REINPLACE_CMD} -E "s|('/usr/local')|\1,PathOption.PathAccept|" \
+ ${WRKSRC}/SConstruct
+ @${REINPLACE_CMD} -e 's,<stdint.h>,<inttypes.h>,g' \
+ ${WRKSRC}/src/*.[cly]
+
+post-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}
+ ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+ ${CHOWN} 0:0 ${PLIST_FILES:S|^|${PREFIX}/|}
+ ${TOUCH} ${PLIST_FILES:S|^|${PREFIX}/|}
+ ${CHMOD} 644 ${PLIST_DATA:S|^|${PREFIX}/|}
+ ${CHMOD} 755 ${PLIST_EXECS:S|^|${PREFIX}/|}
+
+.include <bsd.port.post.mk>
diff --git a/emulators/nonpareil/distinfo b/emulators/nonpareil/distinfo
new file mode 100644
index 000000000000..8b4eec4341eb
--- /dev/null
+++ b/emulators/nonpareil/distinfo
@@ -0,0 +1,3 @@
+MD5 (nonpareil-0.77.tar.gz) = b3aadd73fe28cf7cfa2118306a0519b9
+SHA256 (nonpareil-0.77.tar.gz) = 8e1dd0574bafc17e5946af3af15c1f7eb6bc9afb8436cd7d45ab7340660ed575
+SIZE (nonpareil-0.77.tar.gz) = 4903320
diff --git a/emulators/nonpareil/files/patch-build_common b/emulators/nonpareil/files/patch-build_common
new file mode 100644
index 000000000000..f0c624fad9d8
--- /dev/null
+++ b/emulators/nonpareil/files/patch-build_common
@@ -0,0 +1,610 @@
+diff -urN build/common.orig/lgoose_png.c build/common/lgoose_png.c
+--- build/common.orig/lgoose_png.c Thu Jan 1 01:00:00 1970
++++ build/common/lgoose_png.c Wed Jul 26 02:19:39 2006
+@@ -0,0 +1,98 @@
++const unsigned char lgoose_png [] =
++{
++ 0x89,0x50,0x4e,0x47,0x0d,0x0a,0x1a,0x0a,
++ 0x00,0x00,0x00,0x0d,0x49,0x48,0x44,0x52,
++ 0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x2c,
++ 0x08,0x06,0x00,0x00,0x00,0x17,0x6f,0xfa,
++ 0x7b,0x00,0x00,0x00,0x04,0x73,0x42,0x49,
++ 0x54,0x08,0x08,0x08,0x08,0x7c,0x08,0x64,
++ 0x88,0x00,0x00,0x02,0xa2,0x49,0x44,0x41,
++ 0x54,0x58,0x85,0xed,0xd8,0x3b,0x88,0x15,
++ 0x67,0x18,0xc6,0xf1,0xdf,0x9a,0x88,0x45,
++ 0x52,0x24,0xc5,0x36,0x4b,0x14,0x95,0x40,
++ 0x82,0x60,0xa3,0x98,0x28,0x76,0x16,0x82,
++ 0x13,0x34,0xa4,0xb2,0x18,0x04,0x89,0x10,
++ 0xd1,0xc1,0x1b,0xf1,0x82,0x1a,0x88,0xd8,
++ 0x28,0x41,0x61,0xb3,0x30,0x68,0x2d,0x4c,
++ 0x91,0xc2,0x42,0xd0,0x01,0x6d,0x92,0x40,
++ 0x0a,0x37,0x2a,0x5e,0x51,0x11,0x41,0x44,
++ 0x43,0x40,0x09,0x04,0xaf,0xc8,0x2a,0x6b,
++ 0x31,0xa3,0x9e,0x3d,0x7b,0x8e,0x97,0xf9,
++ 0xbe,0xc5,0x2d,0xf6,0x69,0x86,0xf3,0x9e,
++ 0x99,0x67,0xfe,0xbc,0xef,0x77,0x79,0xe7,
++ 0xeb,0x29,0x8b,0xdc,0x78,0xd6,0xa4,0xf7,
++ 0x0d,0xf0,0x26,0x4d,0x00,0x86,0xea,0xc3,
++ 0xb1,0x7e,0x41,0x92,0x66,0x53,0xb0,0x0a,
++ 0x07,0xca,0x22,0x1f,0x7e,0xd7,0xe7,0xc7,
++ 0x34,0x83,0x49,0x9a,0xcd,0xc0,0x20,0x66,
++ 0x36,0xf5,0x18,0x93,0x0c,0x26,0x69,0xd6,
++ 0x8b,0x15,0xf8,0x01,0x5f,0x20,0x6b,0x92,
++ 0x3d,0x22,0x03,0x26,0x69,0xd6,0x83,0x69,
++ 0x38,0x5e,0x83,0xc1,0xbf,0x38,0xdf,0xd4,
++ 0x33,0x76,0x89,0xa7,0xa1,0xf4,0x0a,0x0e,
++ 0x2e,0xe2,0x61,0x53,0xc3,0x68,0x80,0x49,
++ 0x9a,0x7d,0xa6,0x82,0x9b,0xd5,0xf6,0xd7,
++ 0xe1,0xa6,0xe5,0x25,0x12,0x60,0x5d,0xda,
++ 0x3d,0x46,0xc3,0xdd,0xc7,0x89,0x10,0xef,
++ 0x58,0x19,0xfc,0x14,0x8b,0x3a,0xc4,0x8f,
++ 0xe0,0x66,0x88,0x71,0x2c,0xc0,0x85,0xe8,
++ 0x6b,0x8b,0x0d,0x62,0x4f,0x48,0x79,0x89,
++ 0x00,0x58,0x97,0x77,0x53,0x5b,0xf8,0x12,
++ 0x36,0x97,0x45,0x7e,0x39,0xd4,0x3f,0xc6,
++ 0x32,0x33,0x03,0xf3,0x5a,0x7e,0x9f,0xc2,
++ 0x37,0x65,0x91,0xdf,0x8d,0xe0,0x1d,0x96,
++ 0xc1,0x3a,0x7b,0xdb,0xf0,0x31,0xee,0xe1,
++ 0x17,0x2c,0x8d,0x05,0x47,0x78,0x06,0xe7,
++ 0x62,0x39,0x0e,0xe0,0x50,0x59,0xe4,0x27,
++ 0xc3,0x91,0x46,0xaa,0x23,0x60,0x92,0x66,
++ 0x93,0xb0,0xc1,0xc8,0x05,0xf7,0x85,0x0a,
++ 0xfc,0x55,0x0f,0xfe,0x0f,0xf0,0x33,0x7a,
++ 0xb0,0x32,0x49,0xb3,0x95,0xf5,0x3d,0x0f,
++ 0x70,0x0c,0xb7,0x71,0x3d,0x64,0xa2,0xf4,
++ 0xb4,0x77,0xd4,0x35,0xdc,0x2e,0xfc,0x54,
++ 0xbf,0xb8,0x5d,0x43,0x58,0x83,0xb3,0xd8,
++ 0x87,0xaf,0xf0,0x51,0x17,0xff,0xbb,0x48,
++ 0x70,0xa6,0x29,0xe4,0x88,0x31,0xd8,0x02,
++ 0xb7,0xb3,0x0b,0x1c,0x4c,0xc6,0x97,0xaa,
++ 0x6d,0x6d,0xc1,0x6b,0xe0,0xa0,0x17,0x47,
++ 0x31,0xa7,0x09,0xdc,0x28,0x40,0x0c,0xe3,
++ 0xbf,0xfa,0xda,0x4d,0xbf,0x63,0x87,0x6a,
++ 0x11,0xfe,0x1e,0x4f,0x5e,0x73,0xef,0x2d,
++ 0x3c,0x16,0x6b,0x2f,0xae,0xcb,0x30,0x80,
++ 0x1f,0xf1,0xac,0xed,0xde,0xc7,0xaa,0xf1,
++ 0xb7,0xa2,0x2c,0xf2,0xa1,0x3a,0xb6,0x08,
++ 0xeb,0x70,0xae,0x8b,0xff,0x30,0x96,0x94,
++ 0x45,0x7e,0xb5,0x29,0xe0,0xa8,0x31,0xc8,
++ 0xcb,0xe5,0x63,0xb6,0x6a,0x12,0xbc,0xd0,
++ 0x23,0x5c,0x6b,0x1d,0x4b,0x49,0x9a,0x6d,
++ 0xc7,0x32,0x2c,0xc6,0xe7,0x1d,0xfc,0xef,
++ 0x94,0x45,0xfe,0x4f,0x53,0x38,0xba,0xcc,
++ 0xe2,0x1a,0xe2,0xc2,0x5b,0x3c,0x7f,0x04,
++ 0xbb,0xb1,0x17,0x1b,0x5b,0x32,0x1b,0x4d,
++ 0xa1,0x5b,0xdd,0x15,0xdc,0xc0,0x5a,0xf4,
++ 0x27,0x69,0x36,0x39,0x1c,0x69,0xa4,0x62,
++ 0x34,0x0b,0x7f,0xd4,0xd7,0xb5,0xf8,0x2d,
++ 0x49,0xb3,0xa8,0x5d,0x7a,0x10,0x60,0x3d,
++ 0x14,0xee,0xb4,0x84,0xbe,0xc3,0xfe,0x98,
++ 0x90,0x31,0x32,0xd8,0xde,0xef,0xad,0xc7,
++ 0xb7,0xf5,0x44,0x0b,0x56,0x0c,0xc0,0xbf,
++ 0x3b,0xc4,0x06,0xf0,0x49,0x04,0xef,0x68,
++ 0x19,0x3c,0xdd,0x16,0xeb,0xc3,0xf4,0x08,
++ 0xde,0xe1,0x80,0x65,0x91,0xff,0x8f,0x2d,
++ 0xaa,0x76,0x2b,0xaa,0x77,0x34,0x13,0xfc,
++ 0xa9,0xda,0xbf,0x5b,0xb5,0x2c,0x86,0x71,
++ 0x14,0xc0,0x7a,0x36,0x1f,0x44,0x7f,0x4b,
++ 0x78,0x7e,0x8c,0x89,0x12,0xed,0xbb,0xb8,
++ 0x2c,0xf2,0xa7,0xd8,0x8a,0x8d,0xaa,0x3e,
++ 0xf0,0x6b,0x4c,0x0d,0xf5,0x8d,0x7a,0xb2,
++ 0x50,0x16,0xf9,0x50,0x59,0xe4,0xbf,0xaa,
++ 0xda,0xb0,0x93,0xaa,0x3d,0x3a,0x48,0x63,
++ 0x72,0xba,0x55,0x16,0xf9,0x6d,0xac,0x46,
++ 0x5f,0x68,0x99,0x3b,0x76,0x33,0xe3,0x49,
++ 0xe3,0xfe,0x84,0x75,0x02,0x30,0x54,0x13,
++ 0x80,0xa1,0x9a,0x00,0x0c,0xd5,0x73,0x71,
++ 0xea,0xb6,0x98,0x3b,0xd7,0x3f,0xee,0x00,
++ 0x00,0x00,0x00,0x49,0x45,0x4e,0x44,0xae,
++ 0x42,0x60,0x82
++};
++unsigned long lgoose_png_size = 747;
+diff -urN build/common.orig/lgoose_png.h build/common/lgoose_png.h
+--- build/common.orig/lgoose_png.h Thu Jan 1 01:00:00 1970
++++ build/common/lgoose_png.h Wed Jul 26 02:19:39 2006
+@@ -0,0 +1,2 @@
++extern const unsigned char lgoose_png [];
++extern unsigned long lgoose_png_size;
+diff -urN build/common.orig/nonpareil_title_png.c build/common/nonpareil_title_png.c
+--- build/common.orig/nonpareil_title_png.c Thu Jan 1 01:00:00 1970
++++ build/common/nonpareil_title_png.c Wed Jul 26 02:19:38 2006
+@@ -0,0 +1,382 @@
++const unsigned char nonpareil_title_png [] =
++{
++ 0x89,0x50,0x4e,0x47,0x0d,0x0a,0x1a,0x0a,
++ 0x00,0x00,0x00,0x0d,0x49,0x48,0x44,0x52,
++ 0x00,0x00,0x01,0x7c,0x00,0x00,0x00,0x40,
++ 0x08,0x06,0x00,0x00,0x00,0x19,0x28,0xcc,
++ 0xa8,0x00,0x00,0x00,0x04,0x73,0x42,0x49,
++ 0x54,0x08,0x08,0x08,0x08,0x7c,0x08,0x64,
++ 0x88,0x00,0x00,0x0b,0x86,0x49,0x44,0x41,
++ 0x54,0x78,0x9c,0xed,0x9d,0x79,0xac,0x1d,
++ 0x55,0x19,0xc0,0x7f,0x0f,0x68,0x59,0x2c,
++ 0x16,0x8d,0x6d,0xd3,0xda,0x62,0x15,0xa2,
++ 0x45,0x03,0x02,0xb2,0x27,0x6e,0x04,0x94,
++ 0x4e,0xb5,0x45,0x0b,0x26,0x66,0xac,0x4b,
++ 0x8d,0x0b,0x1d,0x24,0x88,0x81,0xa8,0xb8,
++ 0x24,0x44,0x22,0x82,0xc4,0x16,0x1d,0x4a,
++ 0x15,0x8c,0x4b,0x47,0x6d,0x8c,0x90,0x16,
++ 0x18,0x0c,0xa6,0x14,0x0c,0x54,0xd3,0x52,
++ 0x6a,0x6a,0xac,0x14,0x4c,0xb1,0xa1,0xb5,
++ 0x0a,0xb6,0xb6,0x50,0x29,0x94,0xe2,0xf3,
++ 0x8f,0x73,0x6e,0xdf,0x7d,0xf7,0xdd,0x6d,
++ 0xce,0x32,0xcb,0x9d,0xef,0x97,0xbc,0xf4,
++ 0xde,0xe9,0xcc,0x99,0xdf,0xfb,0xce,0x9b,
++ 0xef,0xde,0x39,0x73,0xe6,0x9b,0xa1,0x34,
++ 0x89,0x11,0x04,0x41,0x10,0x06,0x9f,0xc3,
++ 0x8a,0x16,0x10,0x04,0x41,0x10,0xf2,0x41,
++ 0x12,0xbe,0x20,0x08,0x42,0x4d,0x90,0x84,
++ 0x2f,0x08,0x82,0x50,0x13,0x24,0xe1,0x0b,
++ 0x82,0x20,0xd4,0x04,0x49,0xf8,0x82,0x20,
++ 0x08,0x35,0x41,0x12,0xbe,0x20,0x08,0x42,
++ 0x4d,0x90,0x84,0x2f,0x08,0x82,0x50,0x13,
++ 0x24,0xe1,0x0b,0x82,0x20,0xd4,0x04,0x49,
++ 0xf8,0x82,0x20,0x08,0x35,0xe1,0x88,0xa2,
++ 0x05,0x7c,0x11,0x84,0xd1,0x34,0xe0,0x72,
++ 0xe0,0x04,0x60,0x3d,0xf0,0x3c,0x70,0xbe,
++ 0xa3,0xe6,0x57,0x03,0x77,0xa5,0x49,0xfc,
++ 0xac,0xa3,0xf6,0x4a,0x47,0xd9,0xe3,0x27,
++ 0x7e,0xe2,0x67,0xc1,0xc0,0x1f,0xbf,0x9d,
++ 0x28,0x65,0xc2,0x0f,0xc2,0x68,0x08,0xb8,
++ 0x02,0x58,0x9e,0x26,0xf1,0x2e,0xc3,0x66,
++ 0x3e,0x0f,0x7c,0x45,0xbf,0xfe,0x88,0x13,
++ 0xb1,0x11,0x4e,0x01,0xa6,0x04,0x61,0x74,
++ 0xab,0x85,0x9f,0x37,0x6a,0x12,0x3f,0xf1,
++ 0x2b,0xb7,0xdf,0x3d,0x96,0x6d,0x94,0xdd,
++ 0xaf,0x92,0x18,0x25,0xfc,0x20,0x8c,0x4e,
++ 0x46,0x7d,0xf2,0xae,0x4c,0x93,0x78,0xd8,
++ 0xad,0x12,0x00,0x73,0x80,0x1b,0x81,0x4d,
++ 0xc0,0x9a,0xac,0x1b,0x6b,0xbf,0xa7,0x81,
++ 0xa7,0x80,0x37,0xba,0x55,0xe3,0x49,0xe0,
++ 0x26,0x60,0x29,0xf0,0x30,0xe6,0x7e,0x12,
++ 0x3f,0xbb,0xf8,0x89,0x5f,0x79,0xfd,0x66,
++ 0xa7,0x49,0xfc,0x0f,0xcb,0x76,0x7e,0x0c,
++ 0x7c,0x8c,0x12,0xfa,0xe5,0x70,0xfc,0x7a,
++ 0xc3,0x74,0x0c,0x7f,0x11,0xf0,0x4b,0xe0,
++ 0x52,0x87,0x2e,0x00,0x04,0x61,0x74,0x1c,
++ 0xb0,0x04,0x18,0x6f,0xd1,0xcc,0x22,0xe0,
++ 0x16,0xdd,0xce,0x36,0x17,0x5e,0x9a,0x75,
++ 0xa8,0xdf,0xf9,0x5a,0xec,0xfd,0x24,0x7e,
++ 0xe6,0x88,0x5f,0x79,0xfd,0x2e,0x4a,0x93,
++ 0xf8,0xef,0xb6,0x0d,0xe9,0x36,0x66,0x53,
++ 0x4e,0x3f,0x6f,0xc7,0xaf,0x6f,0x4c,0x13,
++ 0xfe,0x51,0xfa,0xe7,0xb3,0x41,0x18,0xbd,
++ 0x47,0x0f,0x21,0xb8,0xe2,0x52,0xe0,0x4d,
++ 0x96,0x6d,0x34,0xfc,0x3e,0x08,0x5c,0x04,
++ 0xac,0x00,0x5e,0xb6,0x68,0xef,0x9f,0xc0,
++ 0xd7,0x80,0x77,0x03,0x67,0x39,0xf4,0x93,
++ 0xf8,0x89,0xdf,0x40,0xf9,0xa5,0x49,0xbc,
++ 0xd5,0xd2,0xed,0x10,0x69,0x12,0x6f,0xa1,
++ 0x9c,0x7e,0x87,0x8e,0x5f,0x07,0x6d,0xe5,
++ 0x4a,0xe6,0x21,0x9d,0x36,0xc9,0x69,0x0e,
++ 0x30,0x3f,0x08,0xa3,0xab,0xd2,0x24,0xb6,
++ 0xe9,0x94,0x06,0x67,0xdb,0x6c,0xdc,0xc6,
++ 0x6f,0x0b,0xf0,0x51,0xe0,0x1d,0xc0,0x85,
++ 0xc0,0x07,0x80,0x63,0x32,0x34,0x79,0x3f,
++ 0x70,0x7b,0x9a,0xc4,0x4f,0xea,0xf6,0x5d,
++ 0xfb,0x49,0xfc,0xc4,0x6f,0x60,0xfc,0x5c,
++ 0x93,0x26,0xf1,0xe3,0x41,0x18,0x95,0xc6,
++ 0xaf,0x35,0x7e,0x41,0x18,0x0d,0x55,0x69,
++ 0x58,0xc7,0x64,0x0c,0x7f,0x3c,0x70,0x81,
++ 0x7e,0x7d,0x16,0x6a,0xac,0x38,0x05,0xce,
++ 0x08,0xc2,0xe8,0x92,0x34,0x89,0x77,0x98,
++ 0xca,0x04,0x61,0x34,0x0e,0x38,0xdd,0x74,
++ 0xfb,0x0e,0x7e,0xaf,0x49,0x93,0x78,0x37,
++ 0xf0,0xa8,0xfe,0xf9,0x76,0xc9,0xfc,0x24,
++ 0x7e,0xe2,0x37,0x10,0x7e,0xbe,0xd0,0x09,
++ 0x75,0x94,0x5f,0x10,0x46,0x33,0x80,0x1f,
++ 0x00,0xb3,0xf4,0x6a,0x7b,0x81,0xab,0xd3,
++ 0x24,0x7e,0xc8,0xb3,0xce,0x98,0xf8,0x01,
++ 0xbb,0x3d,0xef,0xd3,0x19,0x26,0x43,0x3a,
++ 0x43,0xc0,0x04,0xfd,0xfa,0x18,0x60,0x2b,
++ 0xea,0x02,0xd0,0x39,0xc0,0xfa,0x20,0x8c,
++ 0x22,0x0b,0x9f,0xc9,0xc0,0xa9,0x16,0xdb,
++ 0xc3,0x58,0xbf,0x89,0x96,0xed,0x35,0xe3,
++ 0xc3,0x4f,0xe2,0x97,0x0d,0xf1,0xb3,0xc3,
++ 0xa7,0x5f,0x9e,0x4c,0x07,0xe6,0x02,0x6f,
++ 0xd6,0x3f,0x67,0x02,0xef,0xcc,0x61,0xbf,
++ 0x95,0x8e,0x9f,0x49,0xc2,0x3f,0x17,0x38,
++ 0x56,0xbf,0x3e,0x1c,0x35,0x37,0xf6,0xfb,
++ 0xfa,0xfd,0x54,0xe0,0x3b,0x41,0x18,0x4d,
++ 0x31,0xf4,0x79,0x0b,0x2a,0xa0,0x00,0x2f,
++ 0xa0,0x12,0xa1,0xad,0xdf,0x85,0x86,0x2e,
++ 0xed,0xf0,0xe1,0x27,0xf1,0xcb,0x86,0xf8,
++ 0x29,0xca,0xe8,0x57,0x07,0x2a,0x1d,0x3f,
++ 0x93,0x84,0xff,0x6a,0xd4,0x2f,0xda,0xcc,
++ 0xa6,0xa6,0xd7,0x46,0x9f,0x7a,0x7a,0x6c,
++ 0x6c,0x7e,0xd3,0xa2,0x7d,0xa8,0x69,0x63,
++ 0x59,0x69,0xe7,0x67,0x8d,0x67,0x3f,0x89,
++ 0x5f,0xff,0x88,0x9f,0xa2,0x54,0x7e,0x05,
++ 0x70,0x41,0x9b,0x65,0x2f,0xe4,0xb0,0xdf,
++ 0x4a,0xc7,0xcf,0x24,0xe1,0xbf,0xb7,0xe5,
++ 0xfd,0xf9,0xc0,0x46,0x46,0xc6,0xb1,0x86,
++ 0x80,0xc0,0xa0,0xdd,0x63,0x51,0x57,0xe4,
++ 0x6d,0x69,0xe7,0xe7,0x02,0x9f,0x7e,0x12,
++ 0xbf,0xfe,0x11,0x3f,0x3b,0x7c,0xf9,0xe5,
++ 0x4d,0xeb,0x85,0xdb,0x83,0xc0,0xca,0x1c,
++ 0xf6,0x5b,0xe9,0xf8,0x99,0x24,0xfc,0xd7,
++ 0xb5,0x79,0xbf,0x17,0x38,0xd0,0xb4,0xec,
++ 0xc8,0x2c,0x0d,0xea,0x6f,0x2f,0xf3,0xb0,
++ 0x9f,0x6e,0xd6,0xf0,0xe9,0xf6,0x3e,0x33,
++ 0x39,0xf8,0x49,0xfc,0xfa,0x47,0xfc,0xec,
++ 0x70,0xee,0x57,0x10,0xad,0x77,0xca,0x6e,
++ 0x42,0x5d,0x0f,0xf3,0x4d,0xa5,0xe3,0xe7,
++ 0xa2,0x78,0xda,0x14,0x60,0x1c,0xb0,0xb6,
++ 0x69,0xd9,0xdc,0x2c,0x0d,0xe8,0xab,0xf0,
++ 0xf3,0x7b,0xae,0x68,0xc6,0x94,0x20,0x8c,
++ 0x8e,0xb2,0x69,0xc0,0xb7,0x1f,0x12,0x3f,
++ 0x1b,0xc4,0xcf,0x0e,0x6b,0xbf,0x82,0xf8,
++ 0x5f,0xcb,0xfb,0x5b,0x0a,0x9a,0x1e,0x59,
++ 0xa9,0xf8,0xb9,0x48,0xf8,0x27,0xa1,0xae,
++ 0x5a,0x2f,0x03,0x5e,0xd4,0xcb,0x26,0x05,
++ 0x61,0xd4,0xf7,0x5c,0xd9,0x20,0x8c,0x26,
++ 0x03,0xef,0x6a,0x59,0xbc,0x1d,0x70,0xd1,
++ 0x81,0x27,0x31,0x72,0x91,0xc5,0x88,0x1c,
++ 0xfc,0x24,0x7e,0xe6,0x88,0x9f,0x1d,0xd6,
++ 0x7e,0x05,0xf1,0x04,0xf0,0x4c,0xd3,0xfb,
++ 0x3f,0x14,0xe4,0x51,0xa9,0xf8,0x65,0x4a,
++ 0xf8,0x7a,0x1e,0xf0,0x19,0x2d,0x8b,0x37,
++ 0x03,0xcf,0x01,0xbf,0x03,0xee,0xd5,0xcb,
++ 0x4e,0x04,0x26,0x65,0x68,0xfa,0x68,0xd4,
++ 0x7c,0xd6,0x66,0xd6,0xa5,0x49,0xdc,0xfa,
++ 0x29,0x6e,0xe3,0x67,0x43,0x1e,0x7e,0x12,
++ 0xbf,0x1e,0x88,0xdf,0x28,0xca,0xe4,0x57,
++ 0x04,0xff,0x61,0xe4,0x22,0xed,0x53,0xc0,
++ 0x4e,0xdf,0x3b,0x1c,0x84,0xf8,0x65,0xfd,
++ 0x86,0x7f,0x38,0x30,0xad,0x65,0xd9,0x33,
++ 0x69,0x12,0xbf,0xa4,0x4f,0xa7,0x16,0x00,
++ 0x5f,0x46,0x7d,0xf3,0xb8,0xde,0xb0,0x64,
++ 0x40,0xe3,0x5b,0x4b,0xa6,0x3f,0xe6,0x5e,
++ 0x7e,0x06,0x6d,0x75,0xc2,0x8b,0x9f,0xc4,
++ 0xaf,0x2f,0xc4,0xaf,0xfc,0x7e,0x79,0x31,
++ 0x0c,0x34,0x0a,0xa0,0xfd,0x24,0x4d,0xe2,
++ 0xe7,0x73,0xd8,0x67,0xe5,0xe3,0xe7,0x62,
++ 0x48,0xe7,0xd0,0x69,0x65,0x9a,0xc4,0xfb,
++ 0x81,0x9b,0x51,0xf5,0x5c,0xce,0x04,0x8e,
++ 0xef,0xb3,0x8d,0x5d,0x40,0x82,0x3a,0x4d,
++ 0x4b,0x51,0xf5,0xaa,0xef,0x76,0xe0,0x36,
++ 0xca,0xcf,0x82,0x5c,0xfc,0x24,0x7e,0x46,
++ 0x88,0x9f,0x1d,0x95,0x29,0x0b,0xd0,0x8c,
++ 0xfe,0x82,0xf4,0x08,0xea,0xdb,0xf5,0xf2,
++ 0x02,0x55,0x2a,0x15,0x3f,0xdb,0x7a,0xf8,
++ 0xbb,0x80,0xaf,0x37,0x2f,0x48,0x93,0xf8,
++ 0x20,0x70,0x67,0x10,0x46,0xf7,0x03,0xfb,
++ 0xfb,0x69,0x24,0x4d,0xe2,0x7d,0x41,0x18,
++ 0x3d,0xc7,0xc8,0x5d,0x73,0xa0,0x4a,0xbf,
++ 0xfe,0xd6,0xb5,0x9f,0x09,0x79,0xfa,0x95,
++ 0x30,0x7e,0x7f,0x09,0xc2,0xe8,0xb6,0x36,
++ 0xff,0x97,0x00,0x0f,0xa7,0x49,0x3c,0x1c,
++ 0x84,0xd1,0x61,0xa8,0x32,0xb6,0x73,0x80,
++ 0xb7,0x36,0xad,0xb3,0x0f,0x35,0x4c,0xb5,
++ 0x1d,0x75,0x60,0x8a,0xdf,0xe0,0xfa,0xfd,
++ 0xad,0x80,0x8b,0xa6,0x1b,0x80,0x27,0x5c,
++ 0x16,0x6c,0xcb,0x88,0x93,0xfc,0x92,0x27,
++ 0x59,0x13,0xfe,0x41,0x54,0xfd,0xed,0xb9,
++ 0xa8,0x5f,0x76,0x5e,0x9a,0xc4,0x7f,0x6c,
++ 0xb7,0x62,0x9a,0xc4,0xfb,0x32,0xb6,0x7d,
++ 0x23,0xf0,0x7e,0xd4,0xd4,0xb3,0xe5,0xc0,
++ 0x0d,0x19,0xb7,0xcf,0xe4,0x67,0x40,0xae,
++ 0x7e,0x25,0x89,0xdf,0x2a,0xd4,0x83,0x54,
++ 0xda,0x0d,0x2d,0x2d,0x04,0x2e,0x0b,0xc2,
++ 0x68,0x23,0xf0,0x5d,0x54,0x5d,0x91,0x57,
++ 0xb5,0x59,0xef,0x4b,0xc0,0xb3,0xc0,0xa7,
++ 0xc5,0x6f,0xa0,0xfd,0x82,0x20,0x8c,0x36,
++ 0xe4,0x9c,0xf4,0xd7,0xa0,0x3e,0x6c,0xf2,
++ 0xc2,0x67,0x7e,0xc9,0x85,0x4c,0x43,0x3a,
++ 0xfa,0xdb,0x67,0x08,0xfc,0x0c,0xf5,0xcb,
++ 0x3e,0xe2,0x4a,0x44,0xd7,0xa8,0xfe,0x38,
++ 0x70,0x3b,0xf0,0x99,0x34,0x89,0x5f,0xec,
++ 0xbe,0x85,0xf8,0x79,0xf6,0x5b,0x05,0x7c,
++ 0x82,0xf6,0xc9,0x00,0xd4,0x54,0xd2,0x59,
++ 0xa8,0x61,0xa7,0x73,0x69,0x9f,0x0c,0x1a,
++ 0x4c,0x02,0x7e,0x04,0x5c,0x2f,0x7e,0x03,
++ 0xeb,0x77,0x0f,0xf6,0x85,0xdd,0xb2,0x72,
++ 0x24,0x19,0xef,0x59,0xb1,0xc1,0xe7,0xf1,
++ 0x9b,0x17,0x26,0x63,0xf8,0xe3,0x51,0x1d,
++ 0x3c,0xb1,0xdf,0x8b,0x8a,0xfd,0xac,0xa7,
++ 0xd7,0x99,0x8a,0xba,0x91,0xc1,0x66,0xa8,
++ 0x29,0xb3,0x5f,0x3f,0x14,0xe9,0x57,0x50,
++ 0xfc,0x0e,0xd0,0x7d,0x7c,0x72,0x0d,0xf0,
++ 0x55,0xd4,0xdd,0x8d,0x0b,0x81,0x6e,0x17,
++ 0xae,0x9e,0x46,0x0d,0x4f,0xad,0x4d,0x93,
++ 0xd8,0x28,0x59,0xe5,0xe4,0x37,0x01,0x89,
++ 0x9f,0x8d,0xdf,0x7f,0x2d,0xbc,0x4c,0x98,
++ 0x82,0x72,0xcb,0x13,0x2f,0xf9,0x25,0x2f,
++ 0xfa,0x4e,0xf8,0x41,0x18,0x0d,0xe9,0xa7,
++ 0x29,0xdd,0x85,0x7a,0x12,0xcd,0x0a,0xe0,
++ 0xbc,0x7e,0xb6,0x03,0x7e,0x18,0x84,0x51,
++ 0xaf,0xbb,0x04,0xe7,0xa3,0x3e,0x39,0x2f,
++ 0x06,0x7e,0xae,0xc7,0x0d,0xfb,0xc6,0xd4,
++ 0x2f,0x03,0x85,0xf8,0x15,0x18,0xbf,0x10,
++ 0x55,0x7e,0xf6,0x95,0x96,0x55,0xf7,0xa3,
++ 0xc6,0x77,0x17,0xa4,0x49,0xfc,0xb2,0x3e,
++ 0x85,0xff,0x15,0xea,0xb9,0xa3,0x7f,0xea,
++ 0xd0,0xfc,0x30,0xea,0xb1,0x72,0x8f,0x67,
++ 0x71,0xca,0xd9,0xef,0x7b,0xa8,0x61,0x92,
++ 0x5c,0xe3,0xa7,0x97,0x9d,0x0f,0x7c,0xa1,
++ 0x87,0x5f,0xd9,0xe3,0x67,0xe5,0x67,0xc1,
++ 0xac,0xde,0xab,0xd8,0x93,0x43,0x7e,0xc9,
++ 0x85,0xbe,0xff,0xa8,0x75,0xc7,0x7f,0x8b,
++ 0x91,0x1b,0x40,0x26,0x00,0x5f,0xec,0x73,
++ 0xbb,0xad,0x40,0xa2,0xe7,0xb1,0x8e,0x21,
++ 0x08,0xa3,0xcb,0x80,0x9f,0xa2,0xe6,0x1b,
++ 0xc3,0xd8,0xa9,0x4f,0xde,0xfc,0xfa,0xa1,
++ 0x48,0xbf,0x82,0xe3,0x37,0x1d,0x75,0x9a,
++ 0xde,0xfc,0x73,0x1a,0x2a,0x19,0xec,0x68,
++ 0xde,0x36,0x4d,0xe2,0x55,0xa8,0x03,0xa0,
++ 0x75,0xfd,0xd3,0x81,0xf3,0x6c,0x93,0x81,
++ 0x67,0xbf,0xa5,0xa8,0x3a,0xeb,0xb9,0xc7,
++ 0xaf,0xa9,0x7f,0x17,0xea,0x6d,0xab,0x18,
++ 0x3f,0x6b,0x3f,0x43,0x72,0xab,0x54,0xe9,
++ 0x33,0xbf,0xe4,0x49,0xd6,0x53,0xd7,0xe3,
++ 0x7a,0xbc,0xef,0xc4,0x4a,0xe0,0x3a,0x60,
++ 0x71,0x10,0x46,0x57,0xb6,0x79,0xb2,0xd3,
++ 0xa7,0x18,0x5d,0x0c,0xc9,0xb4,0xea,0x9d,
++ 0xa9,0x5f,0x2f,0x8a,0xf6,0x2b,0x2c,0x7e,
++ 0x69,0x12,0x6f,0x6a,0xbb,0x66,0x1b,0xf4,
++ 0xb4,0xd2,0x8d,0x86,0xfb,0xee,0x07,0x2f,
++ 0x7e,0x41,0x18,0x2d,0xa3,0xd8,0xf8,0x35,
++ 0xfa,0xf7,0x06,0xa0,0x5d,0xff,0xba,0xa2,
++ 0xec,0xfd,0xdb,0x37,0xfa,0xcc,0xf7,0x12,
++ 0xf2,0x9d,0x16,0xe9,0x2b,0xbf,0xe4,0x46,
++ 0x96,0x21,0x9d,0x71,0x98,0x3f,0x41,0xfe,
++ 0xaf,0xa8,0xbb,0xe1,0x16,0xa1,0x92,0x56,
++ 0xdb,0x6f,0xaa,0x4d,0x6c,0x32,0xbc,0x8b,
++ 0xd0,0xf5,0x13,0xee,0x3b,0x91,0xb7,0xdf,
++ 0xa0,0xc5,0x2f,0x33,0xd2,0xbf,0x76,0x94,
++ 0xbd,0x7f,0x0d,0x78,0x9b,0xfe,0xc9,0x85,
++ 0x41,0x89,0x5f,0x96,0x71,0xca,0x71,0xc0,
++ 0xc9,0x16,0xfb,0x7a,0x50,0xff,0xbb,0x08,
++ 0x58,0x11,0x84,0x91,0xed,0x3d,0x00,0xad,
++ 0xd8,0xfa,0xf9,0x46,0xe2,0x67,0xc7,0xa0,
++ 0xfb,0x3d,0xa8,0xff,0xad,0x6b,0xff,0x66,
++ 0xe5,0x54,0xd4,0x0c,0x9d,0x23,0x82,0x30,
++ 0xca,0xa3,0x3e,0xfd,0x40,0xc4,0xcf,0xf6,
++ 0x4e,0xdb,0x03,0xbd,0x57,0x39,0x34,0xfe,
++ 0xd5,0x5c,0xe8,0xe8,0x43,0xc0,0xcd,0x5d,
++ 0xfe,0xa8,0x5d,0x9d,0xd2,0xf6,0xe5,0x67,
++ 0x40,0xae,0x7e,0x03,0x18,0x3f,0x57,0xd4,
++ 0xb5,0x7f,0x5d,0x51,0xf6,0xfe,0x6d,0x8b,
++ 0x1e,0xce,0xb9,0x52,0xbf,0x3d,0x05,0x38,
++ 0xa1,0x20,0x95,0xca,0xc5,0xcf,0x36,0xe1,
++ 0xdf,0x99,0x61,0xdd,0x6d,0x2d,0xef,0xaf,
++ 0x00,0xe6,0x75,0x98,0xda,0xe4,0xea,0x41,
++ 0x06,0x59,0xfc,0xb2,0x50,0x84,0xdf,0x20,
++ 0xc5,0xcf,0x15,0x75,0xed,0x5f,0x57,0x94,
++ 0xbd,0x7f,0x3b,0x31,0x8b,0x91,0xe1,0x9c,
++ 0x21,0xe0,0x0d,0x05,0x79,0x54,0x2e,0x7e,
++ 0x59,0x12,0xfe,0x54,0xd4,0x69,0x4d,0x83,
++ 0x97,0xc8,0x56,0xcf,0x63,0x5d,0x9b,0x65,
++ 0xb7,0xa0,0x2e,0x7c,0xac,0x6d,0x59,0x6e,
++ 0x52,0x18,0xca,0xd6,0xaf,0x1b,0x65,0xf0,
++ 0xab,0x72,0xfc,0x5c,0x50,0xe7,0xfe,0x75,
++ 0x41,0xd9,0xfb,0x37,0x0b,0x73,0x80,0xe6,
++ 0x1a,0xf4,0x67,0xe7,0xb0,0xcf,0x81,0x88,
++ 0x5f,0x96,0x84,0x7f,0x1a,0xa3,0x83,0xfc,
++ 0x0b,0x46,0x9f,0x86,0xf6,0x62,0x1b,0xf0,
++ 0x68,0xcb,0xb2,0x69,0xc0,0x4c,0xc6,0xde,
++ 0x1e,0x6d,0x72,0xe5,0xdd,0xd6,0xaf,0x1b,
++ 0x65,0xf0,0xab,0x72,0xfc,0x5c,0x50,0xe7,
++ 0xfe,0x75,0x41,0xd9,0xfb,0xb7,0x2f,0xf4,
++ 0x19,0xcf,0x87,0x0b,0xd8,0xf5,0x40,0xc4,
++ 0xcf,0x74,0x48,0x67,0x18,0xf8,0x75,0x96,
++ 0xba,0x19,0x69,0x12,0xef,0x01,0xae,0x66,
++ 0x6c,0xed,0xe8,0x56,0x87,0x9d,0xc0,0x7a,
++ 0x43,0xaf,0x06,0x99,0xfd,0x32,0x50,0x88,
++ 0xdf,0x00,0xc5,0xcf,0x05,0x75,0xee,0x5f,
++ 0x17,0x94,0xbd,0x7f,0xbb,0x71,0x22,0xf0,
++ 0xf6,0x82,0x1d,0x2a,0x1b,0x3f,0xd3,0x3f,
++ 0xa6,0x3f,0x03,0x0f,0x18,0x6c,0xf7,0x10,
++ 0x70,0x6d,0xcb,0xb2,0xb9,0xc0,0xbf,0x9a,
++ 0xde,0x0f,0x33,0xf6,0xee,0xbf,0xac,0x98,
++ 0xfa,0x75,0xa2,0x2c,0x7e,0x55,0x8d,0x9f,
++ 0x6b,0xea,0xd6,0xbf,0xae,0x29,0x7b,0xff,
++ 0x76,0x63,0x36,0x63,0x1f,0x60,0x9e,0x37,
++ 0x95,0x8d,0x9f,0x69,0xc2,0xdf,0x61,0x52,
++ 0xf4,0x5f,0x7f,0x22,0xde,0x06,0x2c,0x6e,
++ 0x5a,0x7c,0x0e,0xf0,0x7b,0x43,0x8f,0x4e,
++ 0x18,0xf9,0x75,0xa1,0x14,0x7e,0x15,0x8e,
++ 0x9f,0x6b,0x6a,0xd5,0xbf,0x1e,0x2e,0xdc,
++ 0x96,0xbd,0x7f,0xbb,0x31,0xb3,0x68,0x01,
++ 0x2a,0x1c,0x3f,0xd3,0x84,0x7f,0x6f,0xef,
++ 0x55,0xda,0xa3,0x2b,0xce,0x5d,0x83,0x9a,
++ 0x56,0xb5,0x1d,0x75,0xc1,0x25,0xf3,0xad,
++ 0xec,0x3d,0x30,0xf6,0xcb,0x09,0x89,0x9f,
++ 0x1d,0x03,0xeb,0xd7,0xa1,0x7f,0x67,0x38,
++ 0xf2,0x6a,0x50,0xf6,0xf8,0x75,0xe3,0x56,
++ 0xd4,0x4d,0x6a,0xcd,0xec,0xce,0xd9,0xa1,
++ 0xb2,0xf1,0x33,0x99,0xe7,0x3b,0x8c,0xe5,
++ 0xf3,0x23,0xf5,0xad,0xe3,0x4b,0x82,0x30,
++ 0xfa,0x0d,0xaa,0xdc,0xeb,0x19,0xa8,0x3f,
++ 0xee,0xe9,0xa8,0xd3,0x25,0x9b,0xb1,0xb1,
++ 0x43,0x7e,0xfa,0x9b,0xd1,0xf1,0xa8,0x3a,
++ 0x25,0xe3,0x81,0x1d,0x7a,0x1f,0xdd,0xd8,
++ 0x03,0x3c,0x8f,0x3a,0xc8,0xee,0x46,0xcd,
++ 0xe0,0xd8,0xe3,0xc3,0xcf,0x94,0xbc,0xe2,
++ 0x57,0x52,0x7c,0xf8,0x95,0xbd,0x7f,0xdf,
++ 0xa7,0xff,0x75,0x81,0xf3,0xe3,0xc3,0xd7,
++ 0x58,0x76,0x17,0xbf,0x55,0x8c,0x2e,0x8b,
++ 0x3c,0x33,0x08,0xa3,0xc6,0xf3,0x01,0x7c,
++ 0xfb,0x55,0x26,0x7e,0xed,0x30,0x49,0xf8,
++ 0x9b,0x81,0xfb,0x5c,0xec,0x3c,0x4d,0xe2,
++ 0xed,0x41,0x18,0x7d,0x0e,0x55,0x97,0x7b,
++ 0x27,0x2a,0x58,0x5b,0x2c,0x03,0xb0,0x19,
++ 0xb8,0x2f,0x08,0xa3,0x19,0xc0,0x27,0x81,
++ 0xcb,0x51,0x73,0x75,0x8f,0x65,0xf4,0x55,
++ 0xf6,0x4e,0xec,0x43,0x15,0x46,0x02,0xb8,
++ 0x0a,0x75,0xe7,0xe3,0x1d,0xae,0xfd,0x2c,
++ 0xb6,0x3f,0x84,0xcf,0xf8,0xb9,0xf0,0xf3,
++ 0x84,0x73,0xbf,0x34,0x89,0xf7,0x06,0x61,
++ 0x54,0xba,0xf8,0x35,0xf7,0x6f,0x10,0x46,
++ 0x43,0x8e,0x12,0x83,0xf3,0xe3,0x23,0x08,
++ 0xa3,0x3b,0x5c,0x27,0xad,0x12,0xfb,0x55,
++ 0x22,0x7e,0x9d,0xc8,0x3a,0xa4,0xf3,0x18,
++ 0xb0,0x48,0x17,0x51,0x72,0x42,0x9a,0xc4,
++ 0xdb,0xd2,0x24,0xbe,0x8e,0xf6,0xf3,0x90,
++ 0xb3,0xf2,0x18,0xf0,0x0d,0x54,0xe5,0xc3,
++ 0x4d,0xa8,0x82,0x54,0x93,0x51,0x01,0xee,
++ 0xb7,0x3e,0xc9,0x84,0xa6,0xd7,0xe3,0x80,
++ 0x18,0x55,0x89,0x72,0x83,0x23,0xbf,0xb2,
++ 0xc7,0xcf,0xa9,0x9f,0x63,0x7c,0xfa,0x95,
++ 0x32,0x7e,0x8d,0xfe,0x75,0x94,0x10,0xbc,
++ 0x1d,0x1f,0x41,0x18,0x1d,0xdd,0x61,0xfd,
++ 0x4c,0x04,0x61,0xf4,0xfa,0x20,0x8c,0x16,
++ 0x97,0xd4,0xaf,0xf4,0xf1,0xeb,0x45,0x96,
++ 0x6f,0xf8,0xab,0x81,0x07,0xd2,0x24,0xf6,
++ 0x35,0x5e,0x76,0x15,0x6a,0xb6,0xc4,0x84,
++ 0x5e,0x2b,0x76,0x60,0x35,0xea,0x13,0x76,
++ 0x29,0xaa,0x13,0x9a,0x79,0x05,0xf3,0xd3,
++ 0xf4,0xf1,0xc0,0x02,0xd4,0xe9,0xd7,0x12,
++ 0xba,0x3f,0x08,0xa2,0x97,0x5f,0xd9,0xe3,
++ 0xe7,0xd3,0xcf,0x16,0x89,0x9f,0x1d,0xbe,
++ 0x8f,0x8f,0x89,0x41,0x18,0x5d,0x93,0x26,
++ 0xf1,0x16,0x53,0xc1,0x20,0x8c,0x2e,0x06,
++ 0x96,0x95,0xd4,0xaf,0xf4,0xf1,0xeb,0x87,
++ 0xa1,0x34,0x89,0x7d,0xb6,0x9f,0x09,0x3d,
++ 0x26,0xf6,0xda,0x34,0x89,0x77,0x19,0x6e,
++ 0x7f,0x0d,0xf0,0x4d,0xfc,0x4d,0xdb,0x5a,
++ 0x0f,0x04,0x69,0x12,0xff,0xdb,0x53,0xfb,
++ 0x56,0xd8,0xc6,0xaf,0xee,0x0c,0x7a,0xfc,
++ 0x72,0x3a,0x3e,0xce,0xc9,0x5a,0x69,0xb4,
++ 0x81,0xf8,0xd9,0xf9,0xf5,0x83,0xef,0xe2,
++ 0x4c,0x99,0xd0,0xa7,0xad,0x36,0x07,0xdb,
++ 0x4d,0xa8,0x3a,0x28,0x93,0xdc,0x18,0x8d,
++ 0x61,0x27,0x76,0x7e,0x5e,0x71,0x10,0xbf,
++ 0x5a,0x53,0x83,0xf8,0xe5,0x71,0x7c,0xd8,
++ 0x0c,0x3d,0x89,0x9f,0xe7,0xfa,0xfe,0xa5,
++ 0xfa,0x86,0x2f,0x08,0x82,0x20,0xf8,0xc3,
++ 0xc7,0x6d,0xdb,0x82,0x20,0x08,0x42,0x09,
++ 0x91,0x84,0x2f,0x08,0x82,0x50,0x13,0x24,
++ 0xe1,0x0b,0x82,0x20,0xd4,0x04,0x49,0xf8,
++ 0x82,0x20,0x08,0x35,0x41,0x12,0xbe,0x20,
++ 0x08,0x42,0x4d,0x90,0x84,0x2f,0x08,0x82,
++ 0x50,0x13,0x24,0xe1,0x0b,0x82,0x20,0xd4,
++ 0x04,0x49,0xf8,0x82,0x20,0x08,0x35,0x41,
++ 0x12,0xbe,0x20,0x08,0x42,0x4d,0x90,0x84,
++ 0x2f,0x08,0x82,0x50,0x13,0x24,0xe1,0x0b,
++ 0x82,0x20,0xd4,0x04,0x49,0xf8,0x82,0x20,
++ 0x08,0x35,0x41,0x12,0xbe,0x20,0x08,0x42,
++ 0x4d,0xf8,0x3f,0x2a,0x9a,0x75,0xc1,0x40,
++ 0xb9,0x67,0x50,0x00,0x00,0x00,0x00,0x49,
++ 0x45,0x4e,0x44,0xae,0x42,0x60,0x82
++};
++unsigned long nonpareil_title_png_size = 3023;
+diff -urN build/common.orig/nonpareil_title_png.h build/common/nonpareil_title_png.h
+--- build/common.orig/nonpareil_title_png.h Thu Jan 1 01:00:00 1970
++++ build/common/nonpareil_title_png.h Wed Jul 26 02:19:38 2006
+@@ -0,0 +1,2 @@
++extern const unsigned char nonpareil_title_png [];
++extern unsigned long nonpareil_title_png_size;
+diff -urN build/common.orig/rgoose_png.c build/common/rgoose_png.c
+--- build/common.orig/rgoose_png.c Thu Jan 1 01:00:00 1970
++++ build/common/rgoose_png.c Wed Jul 26 02:19:38 2006
+@@ -0,0 +1,100 @@
++const unsigned char rgoose_png [] =
++{
++ 0x89,0x50,0x4e,0x47,0x0d,0x0a,0x1a,0x0a,
++ 0x00,0x00,0x00,0x0d,0x49,0x48,0x44,0x52,
++ 0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x2c,
++ 0x08,0x06,0x00,0x00,0x00,0x17,0x6f,0xfa,
++ 0x7b,0x00,0x00,0x00,0x04,0x73,0x42,0x49,
++ 0x54,0x08,0x08,0x08,0x08,0x7c,0x08,0x64,
++ 0x88,0x00,0x00,0x02,0xb0,0x49,0x44,0x41,
++ 0x54,0x58,0x85,0xed,0xd8,0x3f,0x88,0x14,
++ 0x57,0x1c,0xc0,0xf1,0xcf,0x69,0xd4,0x44,
++ 0x0b,0x2b,0x11,0x11,0x12,0x84,0x90,0xa8,
++ 0x68,0x23,0x9c,0x68,0xa3,0x8d,0x20,0x19,
++ 0x89,0x58,0xe4,0x52,0xb8,0x0a,0xa2,0x55,
++ 0x18,0xc4,0x22,0x85,0x41,0x53,0x68,0x71,
++ 0x85,0xa0,0x8d,0x32,0xa0,0xd8,0xa4,0x19,
++ 0x90,0xa0,0x41,0xc1,0x4c,0x2e,0x24,0x10,
++ 0x92,0xe2,0x9a,0x23,0x28,0x36,0x2a,0x08,
++ 0x16,0x6a,0x13,0x51,0x10,0x94,0x33,0x6a,
++ 0xee,0x52,0xcc,0x53,0x67,0xff,0xcc,0xae,
++ 0xde,0x3a,0xb3,0x16,0xf7,0x6d,0xf6,0xbd,
++ 0xb7,0x8f,0x99,0x2f,0xef,0xf7,0xde,0xef,
++ 0xfd,0x76,0x87,0xb2,0x34,0xf1,0x3e,0x33,
++ 0x67,0xd0,0x02,0xbd,0x98,0x15,0xec,0x97,
++ 0x0f,0x3a,0x0d,0x46,0x8d,0x78,0x0e,0x36,
++ 0xe1,0xcf,0x2c,0x4d,0xa6,0xeb,0x55,0x6a,
++ 0xa6,0x6c,0x05,0xa7,0xb1,0x0d,0x27,0xa3,
++ 0x46,0x3c,0xaf,0x46,0x9f,0x36,0x3a,0x0a,
++ 0x86,0x55,0xfb,0x09,0xdf,0xe0,0xaf,0xa8,
++ 0x11,0x2f,0xaf,0xd5,0xaa,0x40,0xb7,0x3d,
++ 0x38,0x81,0x3b,0xd8,0x80,0x89,0xa8,0x11,
++ 0xc7,0xf5,0x28,0x35,0xd3,0x4d,0xf0,0x3f,
++ 0x9c,0x0a,0xed,0x65,0x38,0x16,0x35,0xe2,
++ 0xa5,0xd5,0x2b,0x35,0x53,0x2a,0x18,0xc2,
++ 0x7c,0xad,0x30,0xb4,0x10,0x8b,0x2b,0x37,
++ 0x6a,0xa1,0x57,0x9a,0xb9,0x82,0x87,0xa1,
++ 0x3d,0x84,0xa8,0x5a,0x9d,0x76,0x7a,0x09,
++ 0x3e,0xc2,0xb3,0x42,0x7f,0x41,0x85,0x2e,
++ 0x1d,0xe9,0x25,0x38,0x85,0xf1,0x42,0x7f,
++ 0x7b,0x85,0x2e,0x1d,0xe9,0x2a,0x98,0xa5,
++ 0xc9,0x14,0xce,0xe0,0x69,0x18,0x5a,0x12,
++ 0x35,0xe2,0x85,0x95,0x5b,0x15,0x78,0x93,
++ 0xab,0xee,0x37,0xfc,0x1c,0xda,0x9f,0x62,
++ 0x49,0x75,0x3a,0xed,0xf4,0x14,0x0c,0xa7,
++ 0x79,0x37,0xbe,0x93,0xdf,0x30,0xa3,0x51,
++ 0x23,0x1e,0xaa,0x5a,0xec,0x25,0x6f,0x54,
++ 0x2c,0x64,0x69,0x32,0x89,0x13,0x18,0xc1,
++ 0x30,0x3e,0xae,0x52,0xaa,0x48,0xb7,0x62,
++ 0xe1,0x00,0x3e,0xef,0xf0,0xf5,0x7e,0xdc,
++ 0x2d,0xcc,0x5b,0x21,0xbf,0xb7,0x57,0x17,
++ 0xe6,0x3c,0x96,0x6f,0x8b,0xbb,0xb8,0xd5,
++ 0x4f,0xc1,0x31,0xd4,0x5a,0x51,0x87,0x97,
++ 0x1e,0xc1,0xf7,0xf2,0xdc,0xd7,0xca,0x73,
++ 0xf9,0x1d,0x7d,0x05,0xc7,0xb1,0x1e,0x8b,
++ 0x4a,0x9e,0x7f,0x5f,0x9e,0x3b,0xff,0x9e,
++ 0xa9,0x64,0x53,0x88,0x0b,0x72,0x87,0x4b,
++ 0xe4,0x60,0x1e,0x56,0xca,0xc3,0xbc,0xb1,
++ 0x8b,0x1c,0xf9,0x81,0xba,0x8c,0x75,0x33,
++ 0x91,0x6b,0x13,0x94,0x1f,0x82,0x07,0xe1,
++ 0xb3,0x8c,0x3f,0x70,0x08,0x97,0xb0,0x17,
++ 0xff,0x76,0x99,0x7b,0x07,0x93,0x78,0xf2,
++ 0x4e,0x04,0x43,0x18,0x4e,0xe2,0x5b,0x79,
++ 0xb1,0x50,0x64,0x12,0xe7,0x70,0x13,0x4b,
++ 0xc3,0xdc,0x73,0xf8,0x1a,0x57,0x4b,0x9e,
++ 0x3f,0x8d,0x2f,0xb2,0x34,0xb9,0x31,0x53,
++ 0xc1,0xb6,0x3d,0x08,0x21,0x8d,0xac,0xc5,
++ 0xdc,0xc2,0xf0,0x27,0xd8,0x87,0xcf,0xb0,
++ 0x31,0x4b,0x93,0x87,0x85,0xf9,0x1f,0xc9,
++ 0xc3,0xde,0xca,0x3f,0x59,0x9a,0xdc,0x9b,
++ 0xa9,0x5c,0xa9,0x60,0x07,0xd9,0x3d,0x38,
++ 0x1d,0x86,0x76,0x64,0x69,0xf2,0x4b,0x3f,
++ 0x2f,0x7d,0x1b,0xba,0xe6,0xc1,0x20,0xb7,
++ 0x4b,0x2e,0x37,0x1f,0x3f,0x62,0xac,0x06,
++ 0xaf,0x57,0xf4,0x4a,0xd4,0x23,0x38,0x2b,
++ 0x97,0x83,0xf3,0x75,0xff,0x88,0x2a,0x15,
++ 0x8c,0x1a,0xf1,0x02,0x79,0xca,0x79,0x59,
++ 0x62,0x5d,0xc7,0xaf,0x35,0x38,0x35,0xd1,
++ 0x6d,0x05,0x77,0x62,0x55,0xa1,0x7f,0x31,
++ 0x4b,0x93,0xa7,0x65,0x93,0xab,0xa2,0xa3,
++ 0x60,0x48,0xd8,0x5f,0x15,0x86,0x5e,0x78,
++ 0x7d,0x48,0x6a,0xa5,0x6c,0x05,0xd7,0x60,
++ 0x4b,0xa1,0x3f,0x2e,0xdc,0xbf,0x75,0x53,
++ 0x26,0xf8,0xa5,0xd7,0x07,0x03,0x2e,0x84,
++ 0xe2,0xb5,0x76,0xda,0x04,0x43,0x78,0x87,
++ 0x0b,0x43,0x53,0xb8,0x58,0x9b,0x51,0x0b,
++ 0x9d,0x56,0x70,0x2d,0xb6,0x86,0xf6,0x34,
++ 0x8e,0x1a,0x50,0x78,0x69,0xa9,0x07,0xc3,
++ 0xea,0x1d,0xc4,0x87,0xb8,0x8d,0x51,0xfc,
++ 0x30,0xa8,0xf0,0xd2,0x5e,0xb0,0x6e,0x96,
++ 0x5f,0xfe,0xbf,0x63,0x67,0x96,0x26,0xf7,
++ 0xeb,0x57,0x6a,0xa6,0x55,0x70,0x18,0x3b,
++ 0x30,0x96,0xa5,0xc9,0x8b,0x01,0xf8,0xb4,
++ 0xd1,0xb3,0x58,0x18,0x34,0xef,0xfd,0x3f,
++ 0xac,0xb3,0x82,0xfd,0x32,0x2b,0xd8,0x2f,
++ 0xb3,0x82,0xfd,0xf2,0x3f,0x39,0x32,0xa9,
++ 0x4e,0x6d,0x31,0xbe,0xc4,0x00,0x00,0x00,
++ 0x00,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,
++ 0x82
++};
++unsigned long rgoose_png_size = 761;
+diff -urN build/common.orig/rgoose_png.h build/common/rgoose_png.h
+--- build/common.orig/rgoose_png.h Thu Jan 1 01:00:00 1970
++++ build/common/rgoose_png.h Wed Jul 26 02:19:38 2006
+@@ -0,0 +1,2 @@
++extern const unsigned char rgoose_png [];
++extern unsigned long rgoose_png_size;
diff --git a/emulators/nonpareil/files/patch-src_SConscript b/emulators/nonpareil/files/patch-src_SConscript
new file mode 100644
index 000000000000..36573db5fad5
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_SConscript
@@ -0,0 +1,73 @@
+--- src/SConscript.orig Tue Jun 28 04:53:44 2005
++++ src/SConscript Wed Jul 26 20:37:54 2006
+@@ -37,20 +37,15 @@
+ pkg_config_cmd = 'pkg-config'
+ pkg_config_cmd += ' --cflags --libs '
+
+-sdl_pkg_config_cmd = 'sdl-config --cflags --libs'
++sdl_pkg_config_cmd = 'sdl11-config --cflags --libs'
+
+ build_env.Append (CPPPATH = ['.'])
+ build_env.Append (CPPPATH = ['#/build/common']) # generated includes
+-build_env.Append (CCFLAGS = ['-Wall'])
++build_env.Append (CCFLAGS = ['-Wall %%CFLAGS%%'])
+ build_env.Append (YACCFLAGS = [ '-d', '-v' ])
+-
+-if build_env ['debug'] :
+- build_env.Append (CCFLAGS = ['-g'])
+-else:
+- build_env.Append (CCFLAGS = ['-O2'])
++build_env.Replace (CC = '%%CC%%')
+
+ if cross and ming and build_target_only:
+- build_env.Replace (CC = '/usr/local/mingw/bin/i586-mingw32msvc-gcc')
+ build_env.Append (CCFLAGS = ['-mms-bitfields'])
+ build_env.Append (CPPPATH = ['/usr/local/gtkwin/include']) # libpng
+ build_env.Append (CPPPATH = ['/usr/local/gtkwin/SDL-1.2.8/include'])
+@@ -189,46 +184,6 @@
+ native_env.Append (BUILDERS = { 'Assemble': Assemble },
+ UASM = uasm,
+ UASMCOM = "$UASM $UASMFLAGS $SOURCE -o $TARGET -l ${TARGETS[1]}")
+-
+-
+-#-----------------------------------------------------------------------------
+-# prepare graphics
+-#-----------------------------------------------------------------------------
+-
+-if not build_target_only:
+- str2png_env = native_env.Copy ()
+-
+- # pull in X11-related environment variables to make gdk-pixbuf library happy
+- for var in [ 'DISPLAY', 'XAUTHORITY' ]:
+- if var in os.environ:
+- str2png_env ['ENV'][var] = os.environ [var]
+-
+- title_env = str2png_env.Copy (STR2PNG_STRING = 'NONPAREIL',
+- STR2PNG_OPTS = '-x 40 -y 44 -m 10')
+-
+- title_env.STR2PNG (target = 'nonpareil_title',
+- source = build_env ['KML_41CV'])
+-
+- native_env.PNG2C (target = '#build/common/nonpareil_title_png.c',
+- source = 'nonpareil_title.png')
+-
+- rgoose_env = str2png_env.Copy (STR2PNG_STRING = '.',
+- STR2PNG_OPTS = '-x 40 -y 44')
+-
+- rgoose_env.STR2PNG (target = 'rgoose',
+- source = build_env ['KML_41CV'])
+-
+- native_env.PNG2C (target = '#build/common/rgoose_png.c',
+- source = 'rgoose.png')
+-
+- lgoose_env = str2png_env.Copy (STR2PNG_STRING = ',',
+- STR2PNG_OPTS = '-x 40 -y 44')
+-
+- lgoose_env.STR2PNG (target = 'lgoose',
+- source = build_env ['KML_41CV'])
+-
+- native_env.PNG2C (target = '#build/common/lgoose_png.c',
+- source = 'lgoose.png')
+
+ #-----------------------------------------------------------------------------
+ # prepare sounds
diff --git a/emulators/nonpareil/files/patch-src_debugger_gui.c b/emulators/nonpareil/files/patch-src_debugger_gui.c
new file mode 100644
index 000000000000..2a086d4650c2
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_debugger_gui.c
@@ -0,0 +1,14 @@
+--- src.orig/debugger_gui.c Thu Jul 27 19:48:05 2006
++++ src/debugger_gui.c Thu Jul 27 19:49:43 2006
+@@ -34,6 +34,11 @@
+ #include "display.h"
+ #include "proc.h"
+
++#ifndef PRIx64
++#define PRIx64 "llx"
++#define PRIu64 "llu"
++#define PRIo64 "llo"
++#endif
+
+ static GtkWidget *reg_window;
+ static gboolean reg_window_visible;
diff --git a/emulators/nonpareil/files/patch-src_proc.c b/emulators/nonpareil/files/patch-src_proc.c
new file mode 100644
index 000000000000..406d465a57b2
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_proc.c
@@ -0,0 +1,17 @@
+diff -urN src.orig/proc.c src/proc.c
+--- src.orig/proc.c Tue Jul 25 21:29:20 2006
++++ src/proc.c Tue Jul 25 21:30:08 2006
+@@ -352,7 +352,13 @@
+ // Microsoft freopen() isn't compliant with the C standard, which allows
+ // NULL for the filename if you're reopening an existing file handle.
+ #else
++ // XXX: for some reason this does not work.
++#if 0
+ f = freopen (NULL, "r", f);
++#else
++ fclose(f);
++ f = fopen(fn, "rb");
++#endif
+ #endif
+ if (! f)
+ {
diff --git a/emulators/nonpareil/files/patch-src_proc_nut.c b/emulators/nonpareil/files/patch-src_proc_nut.c
new file mode 100644
index 000000000000..5da903c4a0dc
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_proc_nut.c
@@ -0,0 +1,12 @@
+--- src.orig/proc_nut.c Thu Jul 27 18:10:44 2006
++++ src/proc_nut.c Thu Jul 27 18:11:41 2006
+@@ -38,6 +38,9 @@
+ #include "proc_nut.h"
+ #include "dis_nut.h"
+
++#ifndef PRId64
++#define PRId64 "lld"
++#endif
+
+ #define KBD_RELEASE_DEBOUNCE_CYCLES 32
+
diff --git a/emulators/nonpareil/files/patch-src_proc_woodstock.c b/emulators/nonpareil/files/patch-src_proc_woodstock.c
new file mode 100644
index 000000000000..10c379805b78
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_proc_woodstock.c
@@ -0,0 +1,12 @@
+--- src.orig/proc_woodstock.c Thu Jul 27 18:10:44 2006
++++ src/proc_woodstock.c Thu Jul 27 18:12:03 2006
+@@ -36,6 +36,9 @@
+ #include "proc_woodstock.h"
+ #include "dis_woodstock.h"
+
++#ifndef PRId64
++#define PRId64 "lld"
++#endif
+
+ /* If defined, print warnings about stack overflow or underflow. */
+ #undef STACK_WARNING
diff --git a/emulators/nonpareil/files/patch-src_sound.c b/emulators/nonpareil/files/patch-src_sound.c
new file mode 100644
index 000000000000..b7d7482cc91b
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_sound.c
@@ -0,0 +1,11 @@
+--- src.orig/sound.c Mon Jul 24 14:38:57 2006
++++ src/sound.c Mon Jul 24 14:39:06 2006
+@@ -24,7 +24,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-#include "SDL/SDL_audio.h"
++#include "SDL11/SDL_audio.h"
+
+ #include "util.h"
+ #include "sound.h"
diff --git a/emulators/nonpareil/files/patch-src_state_read.c b/emulators/nonpareil/files/patch-src_state_read.c
new file mode 100644
index 000000000000..8e38241f03bb
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_state_read.c
@@ -0,0 +1,12 @@
+--- src.orig/state_read.c Thu Jul 27 19:48:05 2006
++++ src/state_read.c Thu Jul 27 19:52:02 2006
+@@ -42,6 +42,9 @@
+ #include "csim.h" // $$$ for slide switches - really should get from sim instead
+ #include "state_io.h"
+
++#ifndef PRIx64
++#define PRIx64 "llx"
++#endif
+
+ #define unused __attribute__((unused))
+
diff --git a/emulators/nonpareil/files/patch-src_state_write.c b/emulators/nonpareil/files/patch-src_state_write.c
new file mode 100644
index 000000000000..a6c405cea135
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_state_write.c
@@ -0,0 +1,12 @@
+--- src.orig/state_write.c Thu Jul 27 19:48:05 2006
++++ src/state_write.c Thu Jul 27 19:53:08 2006
+@@ -41,6 +41,9 @@
+ #include "csim.h" // $$$ for slide switches - really should get from sim instead
+ #include "state_io.h"
+
++#ifndef PRIx64
++#define PRIx64 "llx"
++#endif
+
+ static void xml_start_element (xmlTextWriterPtr writer, char *element_name)
+ {
diff --git a/emulators/nonpareil/files/patch-src_util.c b/emulators/nonpareil/files/patch-src_util.c
new file mode 100644
index 000000000000..dc4fe477d15a
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_util.c
@@ -0,0 +1,18 @@
+--- src.orig/util.c Mon Jul 24 14:32:21 2006
++++ src/util.c Mon Jul 24 14:34:48 2006
+@@ -130,6 +130,7 @@
+ }
+
+
++#if 0
+ // strlcpy will copy as much of src into dest as it can, up to one less than
+ // the maximum length of dest specified by the argument l. Unlike strncpy(),
+ // strlcpy() will always leave dest NULL-terminated on return.
+@@ -139,6 +140,7 @@
+ dest [l - 1] = '\0';
+ return dest;
+ }
++#endif
+
+
+ // strlncpy will copy up to n characters from src to dest, but not more than
diff --git a/emulators/nonpareil/files/patch-src_util.h b/emulators/nonpareil/files/patch-src_util.h
new file mode 100644
index 000000000000..3156b3df66bd
--- /dev/null
+++ b/emulators/nonpareil/files/patch-src_util.h
@@ -0,0 +1,11 @@
+--- src.orig/util.h Mon Jul 24 14:32:21 2006
++++ src/util.h Mon Jul 24 14:33:52 2006
+@@ -56,7 +56,7 @@
+ // strlcpy will copy as much of src into dest as it can, up to one less than
+ // the maximum length of dest specified by the argument l. Unlike strncpy(),
+ // strlcpy() will always leave dest NULL-terminated on return.
+-char *strlcpy (char *dest, const char *src, size_t l);
++//char *strlcpy (char *dest, const char *src, size_t l);
+
+
+ // strlncpy will copy up to n characters from src to dest, but not more than
diff --git a/emulators/nonpareil/pkg-descr b/emulators/nonpareil/pkg-descr
new file mode 100644
index 000000000000..63453174461c
--- /dev/null
+++ b/emulators/nonpareil/pkg-descr
@@ -0,0 +1,7 @@
+Nonpareil is a high-fidelity simulator for calculators. It currently
+supports many HP calculators models introduced between 1972 and
+1982. Simulation fidelity is achieved through the use of the actual
+microcode of the calculators, thus in most cases the simulation
+behavior exactly matches that of the real calculator.
+
+WWW: http://nonpareil.brouhaha.com/