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>
This commit is contained in:
Renato Botelho 2006-07-27 18:46:50 +00:00
parent b2f122946b
commit 644ec9e0cb
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=168901
15 changed files with 899 additions and 0 deletions

View File

@ -94,6 +94,7 @@
SUBDIR += mupen64-sdlaudio
SUBDIR += mupen64-sdlinput
SUBDIR += mupen64-sound
SUBDIR += nonpareil
SUBDIR += o2em
SUBDIR += ods2reader
SUBDIR += openmsx

View File

@ -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>

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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)
{

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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))

View File

@ -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)
{

View File

@ -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

View File

@ -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

View File

@ -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/