From b4702463e2f15ce73447eb28786a5c2d033418d2 Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Sat, 19 May 2007 18:29:27 +0000 Subject: Archos Recorders, Ondio FM: WAV recording plugin. This is considered a technical preview, and has the following limitations: * No peakmeters and no gain control. The plugin reuses the gain values from the core, so use the core's recording screen to set gain, then call the plugin. * Recording directory is fixed, and on Ondio it always records to external MMC (there is not much point to record WAV to the 128MB internal flash). * All supported targets just generate numbered filenames, i.e. no R[DATE][TIME].wav files on recorders. * Only records to a single file, and will stop when approaching the safe file size limit of 2GB. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13416 a1c6a512-1295-4272-9138-f99709370657 --- apps/plugin.c | 1 + apps/plugin.h | 6 +- apps/plugins/SOURCES | 3 + apps/plugins/wavrecord.c | 3814 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 3823 insertions(+), 1 deletion(-) create mode 100644 apps/plugins/wavrecord.c (limited to 'apps') diff --git a/apps/plugin.c b/apps/plugin.c index 379c154bad..a63e5cd6ee 100644 --- a/apps/plugin.c +++ b/apps/plugin.c @@ -495,6 +495,7 @@ static const struct plugin_api rockbox_api = { get_codec_filename, #endif threads, + create_numbered_filename, }; int plugin_load(const char* plugin, void* parameter) diff --git a/apps/plugin.h b/apps/plugin.h index 08d320ed57..2c8b328fe1 100644 --- a/apps/plugin.h +++ b/apps/plugin.h @@ -114,7 +114,7 @@ #define PLUGIN_MAGIC 0x526F634B /* RocK */ /* increase this every time the api struct changes */ -#define PLUGIN_API_VERSION 56 +#define PLUGIN_API_VERSION 57 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any @@ -611,6 +611,10 @@ struct plugin_api { const char *(*get_codec_filename)(int cod_spec); #endif struct thread_entry* threads; + + char *(*create_numbered_filename)(char *buffer, const char *path, + const char *prefix, const char *suffix, + int numberlen IF_CNFN_NUM_(, int *num)); }; /* plugin header */ diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES index a8272b451e..11e425fc1e 100644 --- a/apps/plugins/SOURCES +++ b/apps/plugins/SOURCES @@ -27,6 +27,9 @@ metronome.c #if ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) && !defined(SIMULATOR) wavplay.c #endif +#if (CONFIG_CODEC == MAS3587F) && !defined(SIMULATOR) +wavrecord.c +#endif #ifndef IRIVER_IFP7XX_SERIES /* Temporarily disable plugins for iFP7xx */ dice.c diff --git a/apps/plugins/wavrecord.c b/apps/plugins/wavrecord.c new file mode 100644 index 0000000000..8828c1930e --- /dev/null +++ b/apps/plugins/wavrecord.c @@ -0,0 +1,3814 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2007 Jens Arnold + * + * All files in this archive are subject to the GNU General Public License. + * See the file COPYING in the source tree root for full license agreement. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#include "plugin.h" +#include "configfile.h" + +PLUGIN_HEADER + +/************ Start of MAS pcm codec, raw i2c blocks ************/ + +// address 04640 count 30 (126 bytes) +static const unsigned char maspcm_array1[] = { + 0xe0, 0x00, 0x00, 0x1e, 0x06, 0x40, + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x25, // 00000025 + 0x00, 0x00, 0x00, 0x04, // 00000004 + 0x00, 0x00, 0x48, 0x00, // 00004800 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xFF, 0xFF, // 0000FFFF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x82, 0x00, // 00008200 + 0x00, 0x00, 0x00, 0x0A, // 0000000A + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x03, 0x18, // 00000318 + 0x00, 0x00, 0x03, 0x18, // 00000318 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0x03, 0x18, // 00000318 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x03, 0x00, // 00000300 +}; +// address 04674 count 81 (330 bytes) +static const unsigned char maspcm_array2[] = { + 0xe0, 0x00, 0x00, 0x51, 0x06, 0x74, + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x02, // 00000002 + 0x00, 0x00, 0x00, 0x60, // 00000060 + 0x00, 0x00, 0x00, 0x60, // 00000060 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0xC0, 0x00, // 0000C000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x1E, // 0000001E + 0x00, 0x00, 0x42, 0x11, // 00004211 + 0x00, 0x00, 0x58, 0x33, // 00005833 + 0x00, 0x00, 0x00, 0x02, // 00000002 + 0x00, 0x00, 0x00, 0x40, // 00000040 + 0x00, 0x00, 0x00, 0x40, // 00000040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x01, 0x20, 0x01, // 00012001 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x29, // 00000029 + 0x00, 0x00, 0x30, 0xC3, // 000030C3 + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x02, // 00000002 + 0x00, 0x00, 0x00, 0x40, // 00000040 + 0x00, 0x00, 0x00, 0x40, // 00000040 + 0x00, 0x00, 0x02, 0x00, // 00000200 + 0x00, 0x01, 0x20, 0x00, // 00012000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x2D, // 0000002D + 0x00, 0x00, 0x2C, 0x86, // 00002C86 + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x01, // 00000001 + 0x00, 0x00, 0x00, 0x30, // 00000030 + 0x00, 0x00, 0x00, 0x30, // 00000030 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x01, 0x80, 0x00, // 00018000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x3C, // 0000003C + 0x00, 0x00, 0x21, 0x93, // 00002193 + 0x00, 0x00, 0x58, 0x33, // 00005833 + 0x00, 0x00, 0x00, 0x01, // 00000001 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x40, 0x01, // 00024001 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x52, // 00000052 + 0x00, 0x00, 0x18, 0xAD, // 000018AD + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x01, // 00000001 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x02, 0x00, // 00000200 + 0x00, 0x02, 0x40, 0x00, // 00024000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x5A, // 0000005A + 0x00, 0x00, 0x16, 0x81, // 00001681 + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x18, // 00000018 + 0x00, 0x00, 0x00, 0x18, // 00000018 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x03, 0x00, 0x00, // 00030000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0x78, // 00000078 + 0x00, 0x00, 0x10, 0xED, // 000010ED + 0x00, 0x00, 0x58, 0x33, // 00005833 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x10, // 00000010 + 0x00, 0x00, 0x00, 0x10, // 00000010 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x04, 0x80, 0x03, // 00048003 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0xA5, // 000000A5 + 0x00, 0x00, 0x0C, 0x56, // 00000C56 + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x10, // 00000010 + 0x00, 0x00, 0x00, 0x10, // 00000010 + 0x00, 0x00, 0x02, 0x00, // 00000200 + 0x00, 0x04, 0x80, 0x00, // 00048000 + 0x00, 0x00, 0x00, 0x14, // 00000014 + 0x00, 0x00, 0x00, 0xB4, // 000000B4 + 0x00, 0x00, 0x0B, 0x51, // 00000B51 +}; +// address 04661 count 19 (82 bytes) +static const unsigned char maspcm_array3[] = { + 0xe0, 0x00, 0x00, 0x13, 0x06, 0x61, + 0x00, 0x00, 0x01, 0x25, // 00000125 + 0x00, 0x00, 0x00, 0x05, // 00000005 + 0x00, 0x00, 0x48, 0x00, // 00004800 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x82, 0x00, // 00008200 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x08, 0x00, 0x00, // 00080000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x00, // 00080000 +}; +// address 046E4 count 16 (70 bytes) +static const unsigned char maspcm_array4[] = { + 0xe0, 0x00, 0x00, 0x10, 0x06, 0xe4, + 0x00, 0x00, 0x06, 0x74, // 00000674 + 0x00, 0x00, 0x06, 0x7D, // 0000067D + 0x00, 0x00, 0x06, 0x86, // 00000686 + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x00, 0x06, 0x8F, // 0000068F + 0x00, 0x00, 0x06, 0x98, // 00000698 + 0x00, 0x00, 0x06, 0xA1, // 000006A1 + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x00, 0x06, 0xAA, // 000006AA + 0x00, 0x00, 0x06, 0xB3, // 000006B3 + 0x00, 0x00, 0x06, 0xBC, // 000006BC + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF + 0x00, 0x0F, 0xFF, 0xFF, // 000FFFFF +}; +// address 04700 count 18 (78 byte) +static const unsigned char maspcm_array5[] = { + 0xe0, 0x00, 0x00, 0x12, 0x07, 0x00, + 0x00, 0x00, 0x06, 0xBC, // 000006BC + 0x00, 0x00, 0x00, 0x0A, // 0000000A + 0x00, 0x00, 0x06, 0x74, // 00000674 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x06, 0x7D, // 0000067D + 0x00, 0x00, 0x00, 0x01, // 00000001 + 0x00, 0x00, 0x06, 0x86, // 00000686 + 0x00, 0x00, 0x00, 0x02, // 00000002 + 0x00, 0x00, 0x06, 0x8F, // 0000068F + 0x00, 0x00, 0x00, 0x04, // 00000004 + 0x00, 0x00, 0x06, 0x98, // 00000698 + 0x00, 0x00, 0x00, 0x05, // 00000005 + 0x00, 0x00, 0x06, 0xA1, // 000006A1 + 0x00, 0x00, 0x00, 0x06, // 00000006 + 0x00, 0x00, 0x06, 0xAA, // 000006AA + 0x00, 0x00, 0x00, 0x08, // 00000008 + 0x00, 0x00, 0x06, 0xB3, // 000006B3 + 0x00, 0x00, 0x00, 0x09, // 00000009 +}; +// address 06600 count 63 (258 bytes) +static const unsigned char maspcm_array6[] = { + 0xf0, 0x00, 0x00, 0x3f, 0x06, 0x00, + 0x00, 0x00, 0x0B, 0xAD, // 00000BAD + 0x00, 0x00, 0x10, 0x00, // 00001000 + 0x00, 0x00, 0x20, 0x00, // 00002000 + 0x00, 0x00, 0x30, 0x00, // 00003000 + 0x00, 0x00, 0x40, 0x00, // 00004000 + 0x00, 0x00, 0x50, 0x00, // 00005000 + 0x00, 0x00, 0x60, 0x00, // 00006000 + 0x00, 0x00, 0x70, 0x00, // 00007000 + 0x00, 0x00, 0x80, 0x00, // 00008000 + 0x00, 0x00, 0x90, 0x00, // 00009000 + 0x00, 0x00, 0xA0, 0x00, // 0000A000 + 0x00, 0x00, 0xB0, 0x00, // 0000B000 + 0x00, 0x00, 0xC0, 0x00, // 0000C000 + 0x00, 0x00, 0xD0, 0x00, // 0000D000 + 0x00, 0x00, 0xE0, 0x00, // 0000E000 + 0x00, 0x00, 0xF0, 0x00, // 0000F000 + 0x00, 0x01, 0x00, 0x00, // 00010000 + 0x00, 0x01, 0x10, 0x00, // 00011000 + 0x00, 0x01, 0x20, 0x00, // 00012000 + 0x00, 0x01, 0x30, 0x00, // 00013000 + 0x00, 0x01, 0x40, 0x00, // 00014000 + 0x00, 0x01, 0x50, 0x00, // 00015000 + 0x00, 0x01, 0x60, 0x00, // 00016000 + 0x00, 0x01, 0x70, 0x00, // 00017000 + 0x00, 0x01, 0x80, 0x00, // 00018000 + 0x00, 0x01, 0x90, 0x00, // 00019000 + 0x00, 0x01, 0xA0, 0x00, // 0001A000 + 0x00, 0x01, 0xB0, 0x00, // 0001B000 + 0x00, 0x01, 0xC0, 0x00, // 0001C000 + 0x00, 0x01, 0xD0, 0x00, // 0001D000 + 0x00, 0x01, 0xE0, 0x00, // 0001E000 + 0x00, 0x01, 0xF0, 0x00, // 0001F000 + 0x00, 0x02, 0x00, 0x00, // 00020000 + 0x00, 0x02, 0x10, 0x00, // 00021000 + 0x00, 0x02, 0x20, 0x00, // 00022000 + 0x00, 0x02, 0x30, 0x00, // 00023000 + 0x00, 0x02, 0x40, 0x00, // 00024000 + 0x00, 0x00, 0x05, 0xFF, // 000005FF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0x00, 0x20, // 00000020 + 0x00, 0x00, 0x03, 0x00, // 00000300 + 0x00, 0x00, 0x05, 0xFF, // 000005FF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x90, // 00000090 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x0C, // 0000000C +}; +// address 06640 count 12 (54 bytes) +static const unsigned char maspcm_array7[] = { + 0xf0, 0x00, 0x00, 0x0c, 0x06, 0x40, + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 +}; +// address 06660 count 28 (118 bytes) +static const unsigned char maspcm_array8[] = { + 0xf0, 0x00, 0x00, 0x1c, 0x06, 0x60, + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 +}; +// address 04800 count 1668 (6678 bytes) +static const unsigned char maspcm_array9[] = { + 0xe0, 0x00, 0x06, 0x84, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x47, 0xC0, // 000747C0 + 0x00, 0x07, 0x04, 0x00, // 00070400 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xC0, 0x6B, // 0006C06B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x90, // 00070690 + 0x00, 0x07, 0x4C, 0x07, // 00074C07 + 0x00, 0x07, 0x0F, 0xFF, // 00070FFF + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x06, 0x80, 0x1D, // 0006801D + 0x00, 0x06, 0x80, 0x1F, // 0006801F + 0x00, 0x06, 0x80, 0x21, // 00068021 + 0x00, 0x06, 0x80, 0x23, // 00068023 + 0x00, 0x06, 0x84, 0x1D, // 0006841D + 0x00, 0x06, 0x84, 0x1F, // 0006841F + 0x00, 0x06, 0x84, 0x21, // 00068421 + 0x00, 0x06, 0x84, 0x23, // 00068423 + 0x00, 0x06, 0x88, 0x17, // 00068817 + 0x00, 0x06, 0x8C, 0x17, // 00068C17 + 0x00, 0x06, 0xD0, 0x6D, // 0006D06D + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x57, // 00071E57 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x90, // 00070690 + 0x00, 0x07, 0x4C, 0x07, // 00074C07 + 0x00, 0x07, 0x0F, 0xFF, // 00070FFF + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x06, 0x80, 0x1D, // 0006801D + 0x00, 0x06, 0x80, 0x1F, // 0006801F + 0x00, 0x06, 0x80, 0x21, // 00068021 + 0x00, 0x06, 0x80, 0x23, // 00068023 + 0x00, 0x06, 0x84, 0x1D, // 0006841D + 0x00, 0x06, 0x84, 0x1F, // 0006841F + 0x00, 0x06, 0x84, 0x21, // 00068421 + 0x00, 0x06, 0x84, 0x23, // 00068423 + 0x00, 0x06, 0x88, 0x17, // 00068817 + 0x00, 0x06, 0x8C, 0x17, // 00068C17 + 0x00, 0x06, 0xD0, 0x6D, // 0006D06D + 0x00, 0x06, 0x98, 0x1E, // 0006981E + 0x00, 0x04, 0x05, 0x08, // 00040508 + 0x00, 0x04, 0x0D, 0x08, // 00040D08 + 0x00, 0x04, 0x15, 0x08, // 00041508 + 0x00, 0x04, 0x1D, 0x08, // 00041D08 + 0x00, 0x04, 0x25, 0x08, // 00042508 + 0x00, 0x04, 0x2D, 0x08, // 00042D08 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3C, 0x30, // 00073C30 + 0x00, 0x06, 0x80, 0x3B, // 0006803B + 0x00, 0x06, 0x88, 0x5B, // 0006885B + 0x00, 0x06, 0x94, 0x3B, // 0006943B + 0x00, 0x06, 0x9C, 0x43, // 00069C43 + 0x00, 0x06, 0xA0, 0x53, // 0006A053 + 0x00, 0x06, 0xA8, 0x4B, // 0006A84B + 0x00, 0x06, 0xB4, 0x53, // 0006B453 + 0x00, 0x06, 0xBC, 0x06, // 0006BC06 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x07, 0x36, 0x63, // 00073663 + 0x00, 0x02, 0x12, 0x57, // 00021257 + 0x00, 0x07, 0x6C, 0x18, // 00076C18 + 0x00, 0x07, 0x2C, 0x00, // 00072C00 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3C, 0x45, // 00073C45 + 0x00, 0x06, 0xB0, 0x20, // 0006B020 + 0x00, 0x04, 0x36, 0x00, // 00043600 + 0x00, 0x02, 0x12, 0x46, // 00021246 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3C, 0x4C, // 00073C4C + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x66, // 00070666 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x7F, // 0006947F + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x07, 0x88, 0x04, // 00078804 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x0B, 0x49, 0x7F, // 000B497F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x04, 0x14, 0x00, // 00041400 + 0x00, 0x0A, 0xC1, 0xC2, // 000AC1C2 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x10, 0x70, // 00021070 + 0x00, 0x0A, 0xD2, 0x7E, // 000AD27E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x90, 0x04, // 00079004 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xC2, 0xC1, // 000AC2C1 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x02, 0x10, 0x85, // 00021085 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x00, 0x6D, // 0006006D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x00, 0x41, // 00080041 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xC0, 0x6D, // 0006C06D + 0x00, 0x02, 0x3F, 0xCC, // 00023FCC + 0x00, 0x07, 0x6C, 0x04, // 00076C04 + 0x00, 0x07, 0x2C, 0x7E, // 00072C7E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x10, 0x54, // 00021054 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0x80, 0x74, // 00098074 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1F, 0x00, // 00071F00 + 0x00, 0x08, 0x80, 0x42, // 00088042 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x11, 0x51, // 00021151 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0A, 0xC2, 0xC3, // 000AC2C3 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0x80, 0x78, // 00098078 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x42, // 00088042 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x11, 0x51, // 00021151 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0F, 0x00, // 00070F00 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x66, // 00070666 + 0x00, 0x07, 0x56, 0x00, // 00075600 + 0x00, 0x07, 0x14, 0x03, // 00071403 + 0x00, 0x06, 0x8C, 0x3B, // 00068C3B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x07, 0x90, 0x04, // 00079004 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2F, 0x00, // 00072F00 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x00, // 00070400 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x06, 0xAC, 0x05, // 0006AC05 + 0x00, 0x01, 0x41, 0x00, // 00014100 + 0x00, 0x06, 0x84, 0x1C, // 0006841C + 0x00, 0x07, 0x8C, 0x0C, // 00078C0C + 0x00, 0x07, 0x8C, 0x0C, // 00078C0C + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1C, 0x90, // 00071C90 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x17, 0x00, // 00071700 + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x07, 0x25, 0xFF, // 000725FF + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x00, // 00072C00 + 0x00, 0x06, 0x9C, 0x25, // 00069C25 + 0x00, 0x06, 0x98, 0x2D, // 0006982D + 0x00, 0x06, 0x94, 0x3C, // 0006943C + 0x00, 0x06, 0xA4, 0x16, // 0006A416 + 0x00, 0x06, 0xA0, 0x16, // 0006A016 + 0x00, 0x06, 0x8C, 0x3B, // 00068C3B + 0x00, 0x06, 0xAC, 0x24, // 0006AC24 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0F, 0x00, // 00070F00 + 0x00, 0x0B, 0x52, 0x6F, // 000B526F + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1E, 0x90, // 00071E90 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x1E, // 0006881E + 0x00, 0x06, 0x90, 0x15, // 00069015 + 0x00, 0x06, 0x98, 0x1F, // 0006981F + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x84, 0x6F, // 0006846F + 0x00, 0x06, 0x84, 0x70, // 00068470 + 0x00, 0x04, 0x05, 0x10, // 00040510 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x07, 0x36, 0x63, // 00073663 + 0x00, 0x02, 0x12, 0x57, // 00021257 + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x04, 0x2C, 0x08, // 00042C08 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3C, 0xD2, // 00073CD2 + 0x00, 0x06, 0xB0, 0x22, // 0006B022 + 0x00, 0x04, 0x37, 0x08, // 00043708 + 0x00, 0x04, 0x14, 0x20, // 00041420 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x07, 0x66, 0x00, // 00076600 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x5C, 0x80, // 00075C80 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3D, 0x00, // 00073D00 + 0x00, 0x0A, 0xC8, 0xC4, // 000AC8C4 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x36, 0xC4, // 000836C4 + 0x00, 0x0A, 0xC8, 0xC3, // 000AC8C3 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x12, 0x41, // 00081241 + 0x00, 0x0A, 0xC8, 0xC7, // 000AC8C7 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x02, 0x12, 0x46, // 00021246 + 0x00, 0x09, 0x92, 0x51, // 00099251 + 0x00, 0x08, 0x36, 0xC2, // 000836C2 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3C, 0xEA, // 00073CEA + 0x00, 0x06, 0xAC, 0x6D, // 0006AC6D + 0x00, 0x06, 0xAC, 0x6C, // 0006AC6C + 0x00, 0x0B, 0x7F, 0x7F, // 000B7F7F + 0x00, 0x09, 0xB6, 0x7D, // 0009B67D + 0x00, 0x0A, 0x3F, 0x53, // 000A3F53 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x0A, 0xF6, 0x43, // 000AF643 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1F, 0x18, // 00071F18 + 0x00, 0x07, 0x6C, 0x04, // 00076C04 + 0x00, 0x07, 0x2C, 0x00, // 00072C00 + 0x00, 0x04, 0x0C, 0x08, // 00040C08 + 0x00, 0x08, 0xB6, 0x41, // 0008B641 + 0x00, 0x0A, 0x09, 0xC6, // 000A09C6 + 0x00, 0x08, 0x8F, 0xC1, // 00088FC1 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x09, 0x25, // 000C0925 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x00, // 00070400 + 0x00, 0x06, 0x98, 0x53, // 00069853 + 0x00, 0x06, 0x90, 0x2C, // 0006902C + 0x00, 0x06, 0xA4, 0x24, // 0006A424 + 0x00, 0x06, 0x80, 0x53, // 00068053 + 0x00, 0x06, 0x88, 0x54, // 00068854 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x06, 0x14, 0x6F, // 0006146F + 0x00, 0x06, 0x00, 0x52, // 00060052 + 0x00, 0x08, 0x12, 0x41, // 00081241 + 0x00, 0x06, 0x1C, 0x70, // 00061C70 + 0x00, 0x0A, 0xC9, 0xC0, // 000AC9C0 + 0x00, 0x02, 0x9F, 0x38, // 00029F38 + 0x00, 0x0A, 0x09, 0x74, // 000A0974 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xC9, 0x43, // 000AC943 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0xA1, 0x42, // 0008A142 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x08, 0x1B, 0x41, // 00081B41 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x6F, // 0006946F + 0x00, 0x06, 0x9C, 0x70, // 00069C70 + 0x00, 0x06, 0x00, 0x6D, // 0006006D + 0x00, 0x02, 0x3F, 0xCC, // 00023FCC + 0x00, 0x0B, 0x00, 0x41, // 000B0041 + 0x00, 0x07, 0x6C, 0x04, // 00076C04 + 0x00, 0x07, 0x2D, 0x1E, // 00072D1E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x6D, // 0006806D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x04, 0x24, // 00060424 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x61, // 00071661 + 0x00, 0x08, 0x8C, 0x80, // 00088C80 + 0x00, 0x02, 0x89, 0x10, // 00028910 + 0x00, 0x02, 0x11, 0x03, // 00021103 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x90, 0x22, // 00069022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x07, 0x54, 0x0C, // 0007540C + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x0A, 0xD8, 0x7E, // 000AD87E + 0x00, 0x0A, 0xC8, 0x41, // 000AC841 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0A, 0xC8, 0xC2, // 000AC8C2 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x10, 0x08, // 00021008 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x98, 0x07, // 00079807 + 0x00, 0x06, 0x04, 0x6F, // 0006046F + 0x00, 0x06, 0x0C, 0x70, // 00060C70 + 0x00, 0x0A, 0x10, 0x7D, // 000A107D + 0x00, 0x08, 0x90, 0xC2, // 000890C2 + 0x00, 0x08, 0x99, 0xC2, // 000899C2 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x10, 0xC2, // 000210C2 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x6B, // 00070E6B + 0x00, 0x0B, 0x52, 0x50, // 000B5250 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x1C, // 0006881C + 0x00, 0x0A, 0xCC, 0x82, // 000ACC82 + 0x00, 0x04, 0x1D, 0x88, // 00041D88 + 0x00, 0x04, 0x1D, 0x00, // 00041D00 + 0x00, 0x08, 0x09, 0xC3, // 000809C3 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x88, 0x04, // 00078804 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x90, // 00070690 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0F, 0x00, // 00070F00 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x17, 0x18, // 00071718 + 0x00, 0x06, 0x80, 0x1F, // 0006801F + 0x00, 0x06, 0x8C, 0x3B, // 00068C3B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x53, // 00069053 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x65, // 00070E65 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x07, 0x26, 0x68, // 00072668 + 0x00, 0x06, 0x88, 0x20, // 00068820 + 0x00, 0x07, 0x90, 0x06, // 00079006 + 0x00, 0x06, 0x94, 0x7F, // 0006947F + 0x00, 0x06, 0xA0, 0x22, // 0006A022 + 0x00, 0x07, 0x90, 0x07, // 00079007 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x6B, // 00070E6B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x20, // 00068820 + 0x00, 0x04, 0x0E, 0x00, // 00040E00 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x40, // 00071C40 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x0A, 0xD1, 0xC3, // 000AD1C3 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x6A, // 0006806A + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x20, // 00071C20 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x0A, 0xD1, 0xC3, // 000AD1C3 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x6C, // 0006806C + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x10, // 00071C10 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x0A, 0xD1, 0xC3, // 000AD1C3 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x76, // 00068076 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x67, // 00071E67 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0xE4, // 000706E4 + 0x00, 0x0A, 0xD1, 0x4F, // 000AD14F + 0x00, 0x08, 0x10, 0xC2, // 000810C2 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x1C, // 0006981C + 0x00, 0x07, 0x90, 0x04, // 00079004 + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x04, 0x14, 0x00, // 00041400 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x22, // 00069022 + 0x00, 0x04, 0x2F, 0x08, // 00042F08 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0F, 0x00, // 00070F00 + 0x00, 0x07, 0x54, 0x08, // 00075408 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x0A, 0xCC, 0x81, // 000ACC81 + 0x00, 0x08, 0x92, 0xC1, // 000892C1 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x11, 0xBD, // 000211BD + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x02, 0x12, 0x57, // 00021257 + 0x00, 0x07, 0x36, 0x63, // 00073663 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3D, 0xA4, // 00073DA4 + 0x00, 0x06, 0xB0, 0x20, // 0006B020 + 0x00, 0x04, 0x36, 0x08, // 00043608 + 0x00, 0x04, 0x17, 0x08, // 00041708 + 0x00, 0x04, 0x06, 0x00, // 00040600 + 0x00, 0x07, 0x66, 0x00, // 00076600 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x5C, 0x80, // 00075C80 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3D, 0x00, // 00073D00 + 0x00, 0x0A, 0xC8, 0xC4, // 000AC8C4 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x36, 0xC4, // 000836C4 + 0x00, 0x0A, 0xC8, 0xC3, // 000AC8C3 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x12, 0x41, // 00081241 + 0x00, 0x0A, 0xC8, 0xC7, // 000AC8C7 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x12, 0x46, // 00021246 + 0x00, 0x09, 0x92, 0x51, // 00099251 + 0x00, 0x08, 0x36, 0xC2, // 000836C2 + 0x00, 0x07, 0x7C, 0x04, // 00077C04 + 0x00, 0x07, 0x3D, 0xBF, // 00073DBF + 0x00, 0x06, 0xAC, 0x6D, // 0006AC6D + 0x00, 0x06, 0xAC, 0x6C, // 0006AC6C + 0x00, 0x04, 0x06, 0x08, // 00040608 + 0x00, 0x04, 0x07, 0x08, // 00040708 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x62, // 00070E62 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x2D, // 0007142D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x1C, // 0006881C + 0x00, 0x04, 0x0C, 0x00, // 00040C00 + 0x00, 0x0A, 0xD2, 0xC1, // 000AD2C1 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x4F, // 0006904F + 0x00, 0x06, 0x94, 0x77, // 00069477 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x39, // 00070639 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x61, // 00070E61 + 0x00, 0x07, 0x54, 0x12, // 00075412 + 0x00, 0x07, 0x14, 0x30, // 00071430 + 0x00, 0x06, 0x84, 0x1C, // 0006841C + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x06, 0x88, 0x1C, // 0006881C + 0x00, 0x04, 0x0C, 0x00, // 00040C00 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x04, 0x37, 0x08, // 00043708 + 0x00, 0x09, 0xAC, 0x7F, // 0009AC7F + 0x00, 0x0A, 0xC1, 0x50, // 000AC150 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0A, 0x24, 0x7F, // 000A247F + 0x00, 0x0A, 0xC9, 0xC2, // 000AC9C2 + 0x00, 0x08, 0x0B, 0xC1, // 00080BC1 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0xA4, 0x00, // 0007A400 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x07, 0x8C, 0x00, // 00078C00 + 0x00, 0x07, 0xAC, 0x00, // 0007AC00 + 0x00, 0x04, 0xA8, 0x00, // 0004A800 + 0x00, 0x07, 0xB4, 0x00, // 0007B400 + 0x00, 0x06, 0x84, 0x45, // 00068445 + 0x00, 0x06, 0x84, 0x46, // 00068446 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x40, // 00071640 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x26, 0x90, // 00072690 + 0x00, 0x0B, 0x49, 0x75, // 000B4975 + 0x00, 0x06, 0x94, 0x1E, // 0006941E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA4, 0x1F, // 0006A41F + 0x00, 0x06, 0x8C, 0x15, // 00068C15 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6A, // 0007066A + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x17, 0x08, // 00041708 + 0x00, 0x04, 0x1F, 0x08, // 00041F08 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x04, 0x2F, 0x08, // 00042F08 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x06, 0xA4, 0x65, // 0006A465 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x84, 0x0D, // 0007840D + 0x00, 0x07, 0x8C, 0x5D, // 00078C5D + 0x00, 0x06, 0xAC, 0x79, // 0006AC79 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6C, // 0007066C + 0x00, 0x0B, 0x76, 0x41, // 000B7641 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0C, 0x0B, 0x0D, // 000C0B0D + 0x00, 0x0C, 0x13, 0x0D, // 000C130D + 0x00, 0x0C, 0x1B, 0x0D, // 000C1B0D + 0x00, 0x0C, 0x23, 0x0D, // 000C230D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB4, 0x6A, // 0006B46A + 0x00, 0x06, 0x8C, 0x66, // 00068C66 + 0x00, 0x06, 0x94, 0x67, // 00069467 + 0x00, 0x06, 0x9C, 0x68, // 00069C68 + 0x00, 0x06, 0xA4, 0x69, // 0006A469 + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x07, 0x27, 0x12, // 00072712 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x03, 0x00, // 00040300 + 0x00, 0x04, 0x0B, 0x00, // 00040B00 + 0x00, 0x04, 0x13, 0x00, // 00041300 + 0x00, 0x04, 0x1B, 0x00, // 00041B00 + 0x00, 0x06, 0xA0, 0x22, // 0006A022 + 0x00, 0x07, 0x80, 0x0F, // 0007800F + 0x00, 0x07, 0x88, 0x0F, // 0007880F + 0x00, 0x07, 0x90, 0x0F, // 0007900F + 0x00, 0x07, 0x98, 0x07, // 00079807 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x1C, // 0006801C + 0x00, 0x0A, 0xC4, 0x81, // 000AC481 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0x80, 0x74, // 00098074 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x66, // 00071E66 + 0x00, 0x07, 0x64, 0x04, // 00076404 + 0x00, 0x07, 0x24, 0x08, // 00072408 + 0x00, 0x08, 0x88, 0x41, // 00088841 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x12, 0x8F, // 0002128F + 0x00, 0x07, 0x56, 0x00, // 00075600 + 0x00, 0x07, 0x14, 0x01, // 00071401 + 0x00, 0x06, 0xA0, 0x08, // 0006A008 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x20, // 00069820 + 0x00, 0x07, 0x90, 0x06, // 00079006 + 0x00, 0x08, 0x98, 0x42, // 00089842 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x18, 0x00, // 00021800 + 0x00, 0x07, 0x56, 0x00, // 00075600 + 0x00, 0x07, 0x14, 0x02, // 00071402 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x90, 0x06, // 00079006 + 0x00, 0x02, 0x10, 0x54, // 00021054 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x64, 0x68, // 000B6468 + 0x00, 0x0A, 0xBE, 0xC4, // 000ABEC4 + 0x00, 0x09, 0xA4, 0x46, // 0009A446 + 0x00, 0x0B, 0x7F, 0xC7, // 000B7FC7 + 0x00, 0x06, 0xB8, 0x0F, // 0006B80F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA4, 0x05, // 0006A405 + 0x00, 0x06, 0xBC, 0x0D, // 0006BC0D + 0x00, 0x01, 0x41, 0x00, // 00014100 + 0x00, 0x06, 0xAC, 0x0F, // 0006AC0F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x06, 0xB4, 0x0D, // 0006B40D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xBD, 0x4A, // 0009BD4A + 0x00, 0x09, 0xB6, 0x7C, // 0009B67C + 0x00, 0x0A, 0xE4, 0x40, // 000AE440 + 0x00, 0x06, 0xB8, 0x0F, // 0006B80F + 0x00, 0x07, 0x6F, 0xFF, // 00076FFF + 0x00, 0x07, 0x2F, 0xFF, // 00072FFF + 0x00, 0x01, 0x03, 0xA6, // 000103A6 + 0x00, 0x0A, 0x2D, 0x7C, // 000A2D7C + 0x00, 0x09, 0xA4, 0x41, // 0009A441 + 0x00, 0x09, 0xBF, 0x41, // 0009BF41 + 0x00, 0x08, 0xE4, 0xC5, // 0008E4C5 + 0x00, 0x09, 0x1E, 0xC4, // 00091EC4 + 0x00, 0x02, 0x87, 0x10, // 00028710 + 0x00, 0x0A, 0xE3, 0xC3, // 000AE3C3 + 0x00, 0x08, 0xBF, 0xC5, // 0008BFC5 + 0x00, 0x07, 0x75, 0xD9, // 000775D9 + 0x00, 0x07, 0x36, 0x23, // 00073623 + 0x00, 0x09, 0xA7, 0x40, // 0009A740 + 0x00, 0x07, 0x6D, 0x14, // 00076D14 + 0x00, 0x0C, 0x36, 0x27, // 000C3627 + 0x00, 0x07, 0x2F, 0x2C, // 00072F2C + 0x00, 0x0B, 0x7D, 0x75, // 000B7D75 + 0x00, 0x08, 0xAD, 0xC4, // 0008ADC4 + 0x00, 0x00, 0xC7, 0x87, // 0000C787 + 0x00, 0x0A, 0x6E, 0xC6, // 000A6EC6 + 0x00, 0x09, 0xA4, 0x44, // 0009A444 + 0x00, 0x08, 0xAD, 0x41, // 0008AD41 + 0x00, 0x09, 0xA4, 0xC5, // 0009A4C5 + 0x00, 0x09, 0xAD, 0x43, // 0009AD43 + 0x00, 0x09, 0xB4, 0x6D, // 0009B46D + 0x00, 0x09, 0xA4, 0x49, // 0009A449 + 0x00, 0x0A, 0xF6, 0x7F, // 000AF67F + 0x00, 0x0A, 0x24, 0x77, // 000A2477 + 0x00, 0x02, 0x86, 0x30, // 00028630 + 0x00, 0x08, 0x36, 0x41, // 00083641 + 0x00, 0x08, 0xBE, 0x48, // 0008BE48 + 0x00, 0x02, 0x87, 0x18, // 00028718 + 0x00, 0x09, 0xA4, 0x49, // 0009A449 + 0x00, 0x08, 0xB6, 0x41, // 0008B641 + 0x00, 0x09, 0xA4, 0x77, // 0009A477 + 0x00, 0x0B, 0x7F, 0x74, // 000B7F74 + 0x00, 0x08, 0xB6, 0x44, // 0008B644 + 0x00, 0x02, 0x9E, 0x20, // 00029E20 + 0x00, 0x0B, 0x5B, 0x41, // 000B5B41 + 0x00, 0x08, 0x36, 0x41, // 00083641 + 0x00, 0x09, 0x9B, 0x53, // 00099B53 + 0x00, 0x08, 0x24, 0xC3, // 000824C3 + 0x00, 0x08, 0xB6, 0x41, // 0008B641 + 0x00, 0x00, 0xC7, 0x87, // 0000C787 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x09, 0xB6, 0x4F, // 0009B64F + 0x00, 0x08, 0x35, 0xC6, // 000835C6 + 0x00, 0x0B, 0x3F, 0xC7, // 000B3FC7 + 0x00, 0x0A, 0xEC, 0xC4, // 000AECC4 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0D, 0x00, // 00070D00 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x0A, 0xC9, 0xC0, // 000AC9C0 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x69, // 00071E69 + 0x00, 0x0B, 0x64, 0x7F, // 000B647F + 0x00, 0x06, 0x90, 0x78, // 00069078 + 0x00, 0x0B, 0x6D, 0x7E, // 000B6D7E + 0x00, 0x06, 0x98, 0x22, // 00069822 + 0x00, 0x0A, 0xDF, 0x84, // 000ADF84 + 0x00, 0x0A, 0xDF, 0x85, // 000ADF85 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x77, // 00069877 + 0x00, 0x06, 0x98, 0x7A, // 0006987A + 0x00, 0x06, 0xB8, 0x68, // 0006B868 + 0x00, 0x06, 0xB8, 0x69, // 0006B869 + 0x00, 0x06, 0xB8, 0x6F, // 0006B86F + 0x00, 0x06, 0xB8, 0x70, // 0006B870 + 0x00, 0x06, 0xB8, 0x71, // 0006B871 + 0x00, 0x06, 0xB8, 0x72, // 0006B872 + 0x00, 0x06, 0xB8, 0x73, // 0006B873 + 0x00, 0x06, 0xB8, 0x74, // 0006B874 + 0x00, 0x06, 0xB8, 0x75, // 0006B875 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x28, 0x6A, // 0006286A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA8, 0x61, // 0006A861 + 0x00, 0x07, 0x65, 0x5D, // 0007655D + 0x00, 0x07, 0x24, 0x10, // 00072410 + 0x00, 0x06, 0x30, 0x6C, // 0006306C + 0x00, 0x07, 0x6D, 0x59, // 00076D59 + 0x00, 0x07, 0x2C, 0x50, // 00072C50 + 0x00, 0x08, 0xB6, 0x40, // 0008B640 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x07, 0x65, 0x05, // 00076505 + 0x00, 0x07, 0x25, 0x70, // 00072570 + 0x00, 0x07, 0x6D, 0x15, // 00076D15 + 0x00, 0x07, 0x2D, 0x60, // 00072D60 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA0, 0x66, // 0006A066 + 0x00, 0x06, 0xA8, 0x67, // 0006A867 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x20, // 00071C20 + 0x00, 0x07, 0x7C, 0x01, // 00077C01 + 0x00, 0x07, 0x3D, 0xFF, // 00073DFF + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x00, // 00070E00 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x07, 0x35, 0xFF, // 000735FF + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x26, 0x98, // 00072698 + 0x00, 0x07, 0x6C, 0x01, // 00076C01 + 0x00, 0x07, 0x2C, 0x90, // 00072C90 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x90, // 00070490 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x06, 0x98, 0x15, // 00069815 + 0x00, 0x06, 0xB8, 0x16, // 0006B816 + 0x00, 0x06, 0xB4, 0x14, // 0006B414 + 0x00, 0x06, 0x88, 0x28, // 00068828 + 0x00, 0x06, 0x88, 0x22, // 00068822 + 0x00, 0x06, 0x90, 0x2E, // 0006902E + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x06, 0x90, 0x20, // 00069020 + 0x00, 0x06, 0x9C, 0x1C, // 00069C1C + 0x00, 0x06, 0xB4, 0x26, // 0006B426 + 0x00, 0x06, 0xB4, 0x24, // 0006B424 + 0x00, 0x06, 0xB4, 0x2E, // 0006B42E + 0x00, 0x06, 0xA0, 0x29, // 0006A029 + 0x00, 0x06, 0xA8, 0x1D, // 0006A81D + 0x00, 0x06, 0xA8, 0x21, // 0006A821 + 0x00, 0x06, 0xA8, 0x2F, // 0006A82F + 0x00, 0x06, 0x84, 0x1D, // 0006841D + 0x00, 0x08, 0x3F, 0x41, // 00083F41 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x01, 0x01, 0x21, // 00010121 + 0x00, 0x06, 0xB8, 0x6E, // 0006B86E + 0x00, 0x07, 0xA8, 0x0F, // 0007A80F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x38, 0x78, // 00063878 + 0x00, 0x07, 0x44, 0x05, // 00074405 + 0x00, 0x07, 0x05, 0x89, // 00070589 + 0x00, 0x07, 0x4C, 0x05, // 00074C05 + 0x00, 0x07, 0x0D, 0x4B, // 00070D4B + 0x00, 0x07, 0x54, 0x05, // 00075405 + 0x00, 0x07, 0x15, 0x59, // 00071559 + 0x00, 0x07, 0x5C, 0x05, // 00075C05 + 0x00, 0x07, 0x1D, 0xBD, // 00071DBD + 0x00, 0x08, 0xBF, 0x40, // 0008BF40 + 0x00, 0x02, 0x9F, 0x40, // 00029F40 + 0x00, 0x07, 0x44, 0x05, // 00074405 + 0x00, 0x07, 0x04, 0xC8, // 000704C8 + 0x00, 0x07, 0x4C, 0x05, // 00074C05 + 0x00, 0x07, 0x0C, 0xEE, // 00070CEE + 0x00, 0x07, 0x54, 0x05, // 00075405 + 0x00, 0x07, 0x14, 0xF8, // 000714F8 + 0x00, 0x07, 0x5C, 0x05, // 00075C05 + 0x00, 0x07, 0x1D, 0x16, // 00071D16 + 0x00, 0x06, 0x80, 0x09, // 00068009 + 0x00, 0x06, 0x88, 0x0D, // 0006880D + 0x00, 0x06, 0x90, 0x0C, // 0006900C + 0x00, 0x06, 0x98, 0x0B, // 0006980B + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x27, 0x20, // 00072720 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x3F, 0x00, // 00043F00 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x0A, 0xFF, 0x44, // 000AFF44 + 0x00, 0x06, 0xA0, 0x5B, // 0006A05B + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x27, 0x00, // 00072700 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x10, // 00071C10 + 0x00, 0x08, 0x80, 0x40, // 00088040 + 0x00, 0x06, 0xA0, 0x5B, // 0006A05B + 0x00, 0x02, 0x9E, 0x20, // 00029E20 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x64, 0x04, // 00076404 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x1C, 0x30, // 00071C30 + 0x00, 0x08, 0x24, 0xC7, // 000824C7 + 0x00, 0x06, 0x88, 0x4B, // 0006884B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x9C, 0x06, // 00069C06 + 0x00, 0x06, 0xA0, 0x5B, // 0006A05B + 0x00, 0x06, 0xA4, 0x76, // 0006A476 + 0x00, 0x06, 0x28, 0x77, // 00062877 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x40, // 00071640 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x90, // 00072490 + 0x00, 0x0B, 0x49, 0x7D, // 000B497D + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6C, // 0007066C + 0x00, 0x06, 0x90, 0x1E, // 0006901E + 0x00, 0x06, 0xA0, 0x1F, // 0006A01F + 0x00, 0x06, 0x88, 0x14, // 00068814 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x17, 0x08, // 00041708 + 0x00, 0x04, 0x1F, 0x08, // 00041F08 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x08, 0xAD, 0x40, // 0008AD40 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x07, 0x88, 0x0D, // 0007880D + 0x00, 0x07, 0x90, 0x0D, // 0007900D + 0x00, 0x07, 0x98, 0x0D, // 0007980D + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xC1, 0x05, // 0000C105 + 0x00, 0x07, 0x44, 0x04, // 00074404 + 0x00, 0x07, 0x07, 0x43, // 00070743 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x06, 0x38, 0x61, // 00063861 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0xBF, 0x40, // 0008BF40 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x13, 0x6E, // 0002136E + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x20, // 00071420 + 0x00, 0x06, 0x18, 0x1C, // 0006181C + 0x00, 0x09, 0x12, 0xC0, // 000912C0 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x10, 0x6E, // 0006106E + 0x00, 0x08, 0x9B, 0x44, // 00089B44 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x1B, 0xC2, // 00081BC2 + 0x00, 0x07, 0x45, 0x5D, // 0007455D + 0x00, 0x07, 0x04, 0x10, // 00070410 + 0x00, 0x07, 0x4D, 0x59, // 00074D59 + 0x00, 0x07, 0x0C, 0x50, // 00070C50 + 0x00, 0x06, 0x98, 0x1C, // 0006981C + 0x00, 0x00, 0xC1, 0x04, // 0000C104 + 0x00, 0x07, 0x54, 0x04, // 00075404 + 0x00, 0x07, 0x17, 0x60, // 00071760 + 0x00, 0x09, 0x80, 0x48, // 00098048 + 0x00, 0x09, 0x89, 0x78, // 00098978 + 0x00, 0x08, 0x38, 0xC1, // 000838C1 + 0x00, 0x06, 0x90, 0x0F, // 0006900F + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x65, // 00071665 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x22, // 00069022 + 0x00, 0x07, 0x88, 0x03, // 00078803 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x69, // 00068869 + 0x00, 0x06, 0x88, 0x61, // 00068861 + 0x00, 0x06, 0x08, 0x6F, // 0006086F + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x08, 0x89, 0x41, // 00088941 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x13, 0x8B, // 0002138B + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x88, 0x42, // 00088842 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0xC1, 0x01, // 0000C101 + 0x00, 0x07, 0x44, 0x04, // 00074404 + 0x00, 0x07, 0x07, 0x7F, // 0007077F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x6F, // 0006906F + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x06, 0x10, 0x66, // 00061066 + 0x00, 0x08, 0x90, 0xC2, // 000890C2 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x16, 0x14, // 00021614 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x10, 0x67, // 00061067 + 0x00, 0x08, 0x91, 0xC2, // 000891C2 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x16, 0x14, // 00021614 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x10, 0x76, // 00061076 + 0x00, 0x06, 0x08, 0x7A, // 0006087A + 0x00, 0x0A, 0x00, 0xC2, // 000A00C2 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x20, // 00071420 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x90, 0xC2, // 000890C2 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x0C, 0x26, // 00060C26 + 0x00, 0x06, 0x14, 0x1C, // 0006141C + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x00, // 00071E00 + 0x00, 0x08, 0x89, 0xC2, // 000889C2 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x09, 0xC3, // 000809C3 + 0x00, 0x06, 0x24, 0x24, // 00062424 + 0x00, 0x09, 0x22, 0xC4, // 000922C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x24, 0xC3, // 000824C3 + 0x00, 0x09, 0x29, 0xC4, // 000929C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x0C, 0x40, // 00080C40 + 0x00, 0x06, 0x24, 0x2E, // 0006242E + 0x00, 0x09, 0x22, 0xC4, // 000922C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x24, 0xC3, // 000824C3 + 0x00, 0x09, 0x29, 0xC4, // 000929C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x0C, 0x40, // 00080C40 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x20, // 00072C20 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x89, 0xC5, // 000889C5 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x6D, 0x70, // 000B6D70 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x04, 0xB8, 0x0D, // 0004B80D + 0x00, 0x06, 0xA8, 0x79, // 0006A879 + 0x00, 0x09, 0xBF, 0x7C, // 0009BF7C + 0x00, 0x00, 0xC1, 0x01, // 0000C101 + 0x00, 0x07, 0x44, 0x04, // 00074404 + 0x00, 0x07, 0x07, 0xC5, // 000707C5 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x06, 0x18, 0x76, // 00061876 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x08, 0x29, 0x40, // 00082940 + 0x00, 0x08, 0x08, 0x40, // 00080840 + 0x00, 0x0C, 0x31, 0x08, // 000C3108 + 0x00, 0x0E, 0x31, 0x09, // 000E3109 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x10, 0x73, // 00061073 + 0x00, 0x0C, 0x01, 0x08, // 000C0108 + 0x00, 0x0E, 0x01, 0x09, // 000E0109 + 0x00, 0x0A, 0xF6, 0x7C, // 000AF67C + 0x00, 0x09, 0xA7, 0x7F, // 0009A77F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x36, 0x42, // 00083642 + 0x00, 0x0A, 0xC0, 0x7C, // 000AC07C + 0x00, 0x09, 0xBF, 0x7F, // 0009BF7F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x00, 0x42, // 00080042 + 0x00, 0x06, 0x20, 0x79, // 00062079 + 0x00, 0x08, 0x12, 0x42, // 00081242 + 0x00, 0x08, 0xA4, 0x41, // 0008A441 + 0x00, 0x07, 0xF4, 0x0C, // 0007F40C + 0x00, 0x07, 0xC4, 0x0C, // 0007C40C + 0x00, 0x02, 0x9F, 0x50, // 00029F50 + 0x00, 0x06, 0x90, 0x73, // 00069073 + 0x00, 0x06, 0xA0, 0x79, // 0006A079 + 0x00, 0x08, 0x9B, 0x41, // 00089B41 + 0x00, 0x02, 0x87, 0x20, // 00028720 + 0x00, 0x08, 0x0D, 0x40, // 00080D40 + 0x00, 0x08, 0x05, 0x40, // 00080540 + 0x00, 0x02, 0x13, 0xCB, // 000213CB + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x02, 0x13, 0xBE, // 000213BE + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x00, 0x74, // 00060074 + 0x00, 0x06, 0x0C, 0x1C, // 00060C1C + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x14, 0x80, // 00071480 + 0x00, 0x08, 0x80, 0x40, // 00088040 + 0x00, 0x02, 0x9E, 0x48, // 00029E48 + 0x00, 0x08, 0x91, 0xC2, // 000891C2 + 0x00, 0x02, 0x89, 0x38, // 00028938 + 0x00, 0x02, 0x15, 0xDB, // 000215DB + 0x00, 0x07, 0x44, 0x04, // 00074404 + 0x00, 0x07, 0x07, 0xF8, // 000707F8 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0E, // 0006800E + 0x00, 0x02, 0x16, 0x52, // 00021652 + 0x00, 0x07, 0x4C, 0x04, // 00074C04 + 0x00, 0x07, 0x0F, 0xFF, // 00070FFF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x06, 0x00, 0x69, // 00060069 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x65, // 00070E65 + 0x00, 0x08, 0x00, 0x41, // 00080041 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x20, // 00071420 + 0x00, 0x06, 0x18, 0x76, // 00061876 + 0x00, 0x0A, 0x12, 0xC3, // 000A12C3 + 0x00, 0x06, 0x88, 0x22, // 00068822 + 0x00, 0x08, 0x92, 0x41, // 00089241 + 0x00, 0x0A, 0xC0, 0xC2, // 000AC0C2 + 0x00, 0x04, 0x0F, 0x00, // 00040F00 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x14, 0x14, // 00021414 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x09, 0x41, // 00080941 + 0x00, 0x06, 0x00, 0x6A, // 0006006A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x69, // 00068069 + 0x00, 0x07, 0x88, 0x07, // 00078807 + 0x00, 0x06, 0x80, 0x6F, // 0006806F + 0x00, 0x00, 0xC1, 0x03, // 0000C103 + 0x00, 0x07, 0x44, 0x05, // 00074405 + 0x00, 0x07, 0x04, 0x1B, // 0007041B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x06, 0x04, 0x26, // 00060426 + 0x00, 0x06, 0x28, 0x7A, // 0006287A + 0x00, 0x06, 0x38, 0x7A, // 0006387A + 0x00, 0x06, 0x0C, 0x1C, // 00060C1C + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x06, 0x18, 0x70, // 00061870 + 0x00, 0x08, 0x80, 0xC1, // 000880C1 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x07, 0x74, 0x00, // 00077400 + 0x00, 0x07, 0x34, 0x40, // 00073440 + 0x00, 0x06, 0x08, 0x74, // 00060874 + 0x00, 0x08, 0xA5, 0x41, // 0008A541 + 0x00, 0x02, 0x9E, 0x30, // 00029E30 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x08, 0xA0, 0xC6, // 0008A0C6 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x02, 0x81, 0x80, // 00028180 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x70, // 00029F70 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x21, // 00072421 + 0x00, 0x08, 0x93, 0xC0, // 000893C0 + 0x00, 0x06, 0x80, 0x70, // 00068070 + 0x00, 0x06, 0xA8, 0x7A, // 0006A87A + 0x00, 0x08, 0x94, 0xC2, // 000894C2 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x16, 0x11, // 00021611 + 0x00, 0x07, 0x44, 0x05, // 00074405 + 0x00, 0x07, 0x04, 0x40, // 00070440 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x01, // 00070C01 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x0A, 0xC9, 0xC0, // 000AC9C0 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x81, 0x10, // 00028110 + 0x00, 0x02, 0x14, 0xAC, // 000214AC + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x80, 0x07, // 00078007 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xC7, 0x81, // 000AC781 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x14, 0xC1, // 000214C1 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x69, // 00070669 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x01, // 00070C01 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6C, // 0007066C + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x06, 0x10, 0x7A, // 0006107A + 0x00, 0x06, 0x18, 0x77, // 00061877 + 0x00, 0x04, 0x25, 0x08, // 00042508 + 0x00, 0x04, 0x2D, 0x08, // 00042D08 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0x3D, 0x08, // 00043D08 + 0x00, 0x0A, 0xCF, 0x81, // 000ACF81 + 0x00, 0x02, 0x9F, 0x70, // 00029F70 + 0x00, 0x06, 0x0C, 0x6A, // 00060C6A + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9E, 0x50, // 00029E50 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9F, 0x30, // 00029F30 + 0x00, 0x0B, 0x49, 0x41, // 000B4941 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x06, 0x0C, 0x65, // 00060C65 + 0x00, 0x0B, 0x5B, 0x7F, // 000B5B7F + 0x00, 0x02, 0x81, 0x70, // 00028170 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x06, 0x0C, 0x6A, // 00060C6A + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9F, 0x50, // 00029F50 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9F, 0x30, // 00029F30 + 0x00, 0x0B, 0x49, 0x41, // 000B4941 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x04, 0x2F, 0x08, // 00042F08 + 0x00, 0x04, 0x37, 0x08, // 00043708 + 0x00, 0x04, 0x3F, 0x08, // 00043F08 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x06, 0x0C, 0x65, // 00060C65 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x06, 0x04, 0x6A, // 0006046A + 0x00, 0x06, 0x14, 0x65, // 00061465 + 0x00, 0x09, 0x00, 0xC2, // 000900C2 + 0x00, 0x08, 0x11, 0x41, // 00081141 + 0x00, 0x02, 0x9F, 0x18, // 00029F18 + 0x00, 0x08, 0x10, 0x41, // 00081041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x08, 0x40, // 00080840 + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x07, 0xA8, 0x0D, // 0007A80D + 0x00, 0x07, 0xB0, 0x0D, // 0007B00D + 0x00, 0x06, 0x8C, 0x6A, // 00068C6A + 0x00, 0x07, 0xB8, 0x0D, // 0007B80D + 0x00, 0x06, 0x98, 0x77, // 00069877 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x69, // 00070669 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x02, // 00070C02 + 0x00, 0x06, 0x10, 0x7A, // 0006107A + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xC3, 0x81, // 000AC381 + 0x00, 0x02, 0x9F, 0x58, // 00029F58 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9E, 0x40, // 00029E40 + 0x00, 0x0B, 0x52, 0x7E, // 000B527E + 0x00, 0x02, 0x16, 0x2E, // 0002162E + 0x00, 0x07, 0x44, 0x05, // 00074405 + 0x00, 0x07, 0x04, 0xAC, // 000704AC + 0x00, 0x06, 0x90, 0x7A, // 0006907A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x0F, // 0006800F + 0x00, 0x02, 0x81, 0x18, // 00028118 + 0x00, 0x08, 0x9A, 0x42, // 00089A42 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x7A, // 0006907A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x00, 0x6D, // 0006006D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xC0, 0x6D, // 0006C06D + 0x00, 0x02, 0x3F, 0xCC, // 00023FCC + 0x00, 0x07, 0x6C, 0x05, // 00076C05 + 0x00, 0x07, 0x2C, 0xBA, // 00072CBA + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x13, 0x3B, // 0002133B + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xC1, 0x80, // 0000C180 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x10, 0x68, // 00061068 + 0x00, 0x04, 0x04, 0x08, // 00040408 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x14, 0xDD, // 000214DD + 0x00, 0x06, 0x28, 0x6C, // 0006286C + 0x00, 0x04, 0x0C, 0x08, // 00040C08 + 0x00, 0x07, 0x64, 0x3F, // 0007643F + 0x00, 0x07, 0x27, 0xFF, // 000727FF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xA4, 0x44, // 0009A444 + 0x00, 0x04, 0x14, 0x00, // 00041400 + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x0A, 0xD2, 0xC4, // 000AD2C4 + 0x00, 0x09, 0x80, 0x48, // 00098048 + 0x00, 0x09, 0xB1, 0x78, // 0009B178 + 0x00, 0x08, 0x00, 0xC6, // 000800C6 + 0x00, 0x09, 0x89, 0x48, // 00098948 + 0x00, 0x09, 0xB2, 0x78, // 0009B278 + 0x00, 0x08, 0x09, 0xC6, // 000809C6 + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x08, 0xAD, 0x40, // 0008AD40 + 0x00, 0x02, 0x9F, 0x30, // 00029F30 + 0x00, 0x09, 0x90, 0x48, // 00099048 + 0x00, 0x09, 0xB0, 0x78, // 0009B078 + 0x00, 0x08, 0x02, 0xC6, // 000802C6 + 0x00, 0x09, 0x91, 0x48, // 00099148 + 0x00, 0x09, 0xB1, 0x78, // 0009B178 + 0x00, 0x08, 0x0A, 0xC6, // 00080AC6 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x18, 0x68, // 00061868 + 0x00, 0x06, 0x00, 0x1C, // 0006001C + 0x00, 0x09, 0x9B, 0x7D, // 00099B7D + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x06, 0x08, 0x20, // 00060820 + 0x00, 0x06, 0x10, 0x6E, // 0006106E + 0x00, 0x08, 0x81, 0xC0, // 000881C0 + 0x00, 0x09, 0x03, 0xC0, // 000903C0 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x01, 0x0A, 0x20, // 00010A20 + 0x00, 0x0B, 0x49, 0x7F, // 000B497F + 0x00, 0x04, 0x14, 0x00, // 00041400 + 0x00, 0x0B, 0x76, 0x78, // 000B7678 + 0x00, 0x09, 0x92, 0x48, // 00099248 + 0x00, 0x09, 0x89, 0x48, // 00098948 + 0x00, 0x09, 0x9A, 0x68, // 00099A68 + 0x00, 0x08, 0x09, 0xC3, // 000809C3 + 0x00, 0x08, 0x9F, 0xC1, // 00089FC1 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x06, 0xB0, 0x68, // 0006B068 + 0x00, 0x09, 0x92, 0x48, // 00099248 + 0x00, 0x09, 0x89, 0x48, // 00098948 + 0x00, 0x09, 0x9A, 0x68, // 00099A68 + 0x00, 0x08, 0x09, 0xC3, // 000809C3 + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x04, 0x14, 0x08, // 00041408 + 0x00, 0x08, 0x9F, 0xC1, // 00089FC1 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x06, 0xB0, 0x68, // 0006B068 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x30, 0x71, // 00063071 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x08, 0xB6, 0x40, // 0008B640 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x15, 0x31, // 00021531 + 0x00, 0x06, 0x18, 0x7A, // 0006187A + 0x00, 0x06, 0x30, 0x72, // 00063072 + 0x00, 0x07, 0x06, 0x00, // 00070600 + 0x00, 0x06, 0x08, 0x28, // 00060828 + 0x00, 0x08, 0x38, 0x41, // 00083841 + 0x00, 0x08, 0x90, 0xC1, // 000890C1 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x07, 0x54, 0x03, // 00075403 + 0x00, 0x07, 0x17, 0xF0, // 000717F0 + 0x00, 0x06, 0xB8, 0x22, // 0006B822 + 0x00, 0x01, 0x04, 0x90, // 00010490 + 0x00, 0x09, 0x92, 0x48, // 00099248 + 0x00, 0x0A, 0xE7, 0x8A, // 000AE78A + 0x00, 0x0A, 0xEF, 0x8A, // 000AEF8A + 0x00, 0x08, 0x36, 0x41, // 00083641 + 0x00, 0x09, 0xAD, 0x78, // 0009AD78 + 0x00, 0x08, 0x24, 0xC5, // 000824C5 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB0, 0x72, // 0006B072 + 0x00, 0x07, 0xE0, 0x0E, // 0007E00E + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x06, 0xB0, 0x71, // 0006B071 + 0x00, 0x06, 0x08, 0x20, // 00060820 + 0x00, 0x06, 0x00, 0x1C, // 0006001C + 0x00, 0x06, 0x10, 0x6E, // 0006106E + 0x00, 0x08, 0x81, 0xC0, // 000881C0 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1D, 0xE8, // 00071DE8 + 0x00, 0x0B, 0x76, 0x7F, // 000B767F + 0x00, 0x08, 0x93, 0xC0, // 000893C0 + 0x00, 0x02, 0x88, 0x08, // 00028808 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x05, 0x38, // 00070538 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB0, 0x71, // 0006B071 + 0x00, 0x06, 0xB8, 0x28, // 0006B828 + 0x00, 0x06, 0x80, 0x4B, // 0006804B + 0x00, 0x06, 0x00, 0x1C, // 0006001C + 0x00, 0x06, 0x08, 0x20, // 00060820 + 0x00, 0x06, 0x10, 0x6E, // 0006106E + 0x00, 0x08, 0x81, 0xC0, // 000881C0 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x06, 0x18, 0x68, // 00061868 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x0A, 0x10, 0x44, // 000A1044 + 0x00, 0x0A, 0x20, 0x42, // 000A2042 + 0x00, 0x08, 0x12, 0xC4, // 000812C4 + 0x00, 0x09, 0x03, 0xC2, // 000903C2 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0x00, 0x7C, // 000A007C + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x20, // 00070420 + 0x00, 0x07, 0x54, 0x05, // 00075405 + 0x00, 0x07, 0x15, 0x7C, // 0007157C + 0x00, 0x0B, 0x49, 0x41, // 000B4941 + 0x00, 0x0B, 0x64, 0x7F, // 000B647F + 0x00, 0x0B, 0x5B, 0x78, // 000B5B78 + 0x00, 0x09, 0xA4, 0x7C, // 0009A47C + 0x00, 0x06, 0x90, 0x0A, // 0006900A + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x09, 0x94, 0x83, // 00099483 + 0x00, 0x08, 0x36, 0x41, // 00083641 + 0x00, 0x09, 0x89, 0x41, // 00098941 + 0x00, 0x09, 0x92, 0x41, // 00099241 + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x09, 0xC4, // 000809C4 + 0x00, 0x01, 0x04, 0x13, // 00010413 + 0x00, 0x08, 0xAF, 0xC1, // 0008AFC1 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x00, 0xC1, 0x82, // 0000C182 + 0x00, 0x08, 0x36, 0x41, // 00083641 + 0x00, 0x09, 0x89, 0x41, // 00098941 + 0x00, 0x09, 0x92, 0x41, // 00099241 + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x09, 0xC4, // 000809C4 + 0x00, 0x08, 0xAF, 0xC1, // 0008AFC1 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x00, 0xC1, 0x82, // 0000C182 + 0x00, 0x04, 0x2C, 0x08, // 00042C08 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x15, 0x62, // 00021562 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x08, 0xAE, 0x54, // 0008AE54 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB0, 0x68, // 0006B068 + 0x00, 0x04, 0x34, 0x08, // 00043408 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x10, 0x68, // 00061068 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x82, 0x47, // 00088247 + 0x00, 0x02, 0x88, 0x08, // 00028808 + 0x00, 0x02, 0x15, 0x96, // 00021596 + 0x00, 0x0B, 0x64, 0x41, // 000B6441 + 0x00, 0x08, 0x9A, 0x54, // 00089A54 + 0x00, 0x09, 0xA4, 0x78, // 0009A478 + 0x00, 0x0A, 0xEC, 0x8C, // 000AEC8C + 0x00, 0x0A, 0xE4, 0x7F, // 000AE47F + 0x00, 0x0A, 0xF4, 0x84, // 000AF484 + 0x00, 0x0A, 0xF4, 0x8C, // 000AF48C + 0x00, 0x0A, 0xCC, 0x84, // 000ACC84 + 0x00, 0x07, 0x64, 0x3F, // 0007643F + 0x00, 0x07, 0x27, 0xFF, // 000727FF + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xA4, 0x44, // 0009A444 + 0x00, 0x09, 0x85, 0xC2, // 000985C2 + 0x00, 0x09, 0x86, 0xC3, // 000986C3 + 0x00, 0x08, 0x00, 0xC0, // 000800C0 + 0x00, 0x08, 0x12, 0x50, // 00081250 + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x08, 0x9A, 0x54, // 00089A54 + 0x00, 0x02, 0x87, 0x18, // 00028718 + 0x00, 0x08, 0x92, 0x54, // 00089254 + 0x00, 0x08, 0x2E, 0x40, // 00082E40 + 0x00, 0x08, 0x31, 0x40, // 00083140 + 0x00, 0x08, 0x9A, 0x54, // 00089A54 + 0x00, 0x09, 0x8D, 0xC2, // 00098DC2 + 0x00, 0x09, 0x8E, 0xC3, // 00098EC3 + 0x00, 0x08, 0x09, 0xC1, // 000809C1 + 0x00, 0x08, 0x12, 0x50, // 00081250 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x08, 0x9A, 0x54, // 00089A54 + 0x00, 0x02, 0x87, 0x08, // 00028708 + 0x00, 0x08, 0x92, 0x54, // 00089254 + 0x00, 0x06, 0x28, 0x6C, // 0006286C + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x06, 0x90, 0x68, // 00069068 + 0x00, 0x08, 0xAD, 0x40, // 0008AD40 + 0x00, 0x02, 0x9F, 0x30, // 00029F30 + 0x00, 0x09, 0x90, 0x48, // 00099048 + 0x00, 0x09, 0xB0, 0x78, // 0009B078 + 0x00, 0x08, 0x02, 0xC6, // 000802C6 + 0x00, 0x09, 0x91, 0x48, // 00099148 + 0x00, 0x09, 0xB1, 0x78, // 0009B178 + 0x00, 0x08, 0x0A, 0xC6, // 00080AC6 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x0A, 0xC0, 0xC4, // 000AC0C4 + 0x00, 0x0A, 0xC9, 0xC4, // 000AC9C4 + 0x00, 0x02, 0x81, 0x18, // 00028118 + 0x00, 0x07, 0x7C, 0x01, // 00077C01 + 0x00, 0x07, 0x3C, 0xC0, // 00073CC0 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x07, 0x35, 0x60, // 00073560 + 0x00, 0x06, 0x20, 0x2E, // 0006202E + 0x00, 0x06, 0x18, 0x1C, // 0006181C + 0x00, 0x06, 0x10, 0x6E, // 0006106E + 0x00, 0x06, 0x00, 0x75, // 00060075 + 0x00, 0x06, 0x08, 0x7A, // 0006087A + 0x00, 0x06, 0xA0, 0x20, // 0006A020 + 0x00, 0x08, 0x9C, 0xC3, // 00089CC3 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x1B, 0xC2, // 00081BC2 + 0x00, 0x09, 0x16, 0xC3, // 000916C3 + 0x00, 0x02, 0x89, 0x10, // 00028910 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x30, // 00070430 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9E, 0x20, // 00029E20 + 0x00, 0x08, 0x97, 0xC3, // 000897C3 + 0x00, 0x02, 0x89, 0x10, // 00028910 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x70, // 00070470 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x7F, // 0006987F + 0x00, 0x06, 0x84, 0x06, // 00068406 + 0x00, 0x06, 0x80, 0x75, // 00068075 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x15, 0xFC, // 000215FC + 0x00, 0x07, 0x4C, 0x05, // 00074C05 + 0x00, 0x07, 0x0D, 0xE2, // 00070DE2 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x32, // 00070E32 + 0x00, 0x0B, 0x6D, 0x7F, // 000B6D7F + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x8C, 0x22, // 00068C22 + 0x00, 0x06, 0x5C, 0x14, // 00065C14 + 0x00, 0x06, 0xA8, 0x74, // 0006A874 + 0x00, 0x06, 0x5C, 0x24, // 00065C24 + 0x00, 0x06, 0x5C, 0x26, // 00065C26 + 0x00, 0x06, 0x5C, 0x2E, // 00065C2E + 0x00, 0x06, 0x5C, 0x25, // 00065C25 + 0x00, 0x06, 0x5C, 0x27, // 00065C27 + 0x00, 0x06, 0x5C, 0x2F, // 00065C2F + 0x00, 0x06, 0x5C, 0x44, // 00065C44 + 0x00, 0x04, 0x80, 0x03, // 00048003 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xC1, 0x06, // 0000C106 + 0x00, 0x06, 0x84, 0x74, // 00068474 + 0x00, 0x06, 0x84, 0x43, // 00068443 + 0x00, 0x06, 0x5C, 0x3C, // 00065C3C + 0x00, 0x06, 0x5C, 0x3B, // 00065C3B + 0x00, 0x06, 0x5C, 0x54, // 00065C54 + 0x00, 0x06, 0x5C, 0x53, // 00065C53 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x25, // 00070E25 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA8, 0x74, // 0006A874 + 0x00, 0x06, 0x8C, 0x22, // 00068C22 + 0x00, 0x06, 0x5C, 0x14, // 00065C14 + 0x00, 0x06, 0x5C, 0x24, // 00065C24 + 0x00, 0x06, 0x5C, 0x26, // 00065C26 + 0x00, 0x06, 0x5C, 0x2E, // 00065C2E + 0x00, 0x06, 0x5C, 0x25, // 00065C25 + 0x00, 0x06, 0x5C, 0x27, // 00065C27 + 0x00, 0x06, 0x5C, 0x2F, // 00065C2F + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x06, 0x5C, 0x44, // 00065C44 + 0x00, 0x06, 0x5C, 0x43, // 00065C43 + 0x00, 0x06, 0x5C, 0x3C, // 00065C3C + 0x00, 0x06, 0x5C, 0x3B, // 00065C3B + 0x00, 0x06, 0x5C, 0x54, // 00065C54 + 0x00, 0x06, 0x5C, 0x53, // 00065C53 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x02, // 00071C02 + 0x00, 0x02, 0x81, 0x10, // 00028110 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x01, // 00071C01 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x65, // 00071665 + 0x00, 0x06, 0x00, 0x61, // 00060061 + 0x00, 0x06, 0x20, 0x7A, // 0006207A + 0x00, 0x07, 0x4C, 0x05, // 00074C05 + 0x00, 0x06, 0x9C, 0x7F, // 00069C7F + 0x00, 0x06, 0x90, 0x22, // 00069022 + 0x00, 0x04, 0x1F, 0x00, // 00041F00 + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x07, 0x0C, 0x14, // 00070C14 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x98, 0x1F, // 0007981F + 0x00, 0x04, 0x17, 0x00, // 00041700 + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x06, 0x00, 0x6A, // 0006006A + 0x00, 0x08, 0x12, 0x41, // 00081241 + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x61, // 00068061 + 0x00, 0x07, 0x90, 0x07, // 00079007 + 0x00, 0x06, 0x3C, 0x26, // 00063C26 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x08, 0x3F, 0x40, // 00083F40 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x06, 0x1C, 0x1C, // 00061C1C + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xBC, 0x1C, // 0006BC1C + 0x00, 0x04, 0xB0, 0x0D, // 0004B00D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xB6, 0x7C, // 0009B67C + 0x00, 0x01, 0x05, 0x10, // 00010510 + 0x00, 0x09, 0xA6, 0x7F, // 0009A67F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x00, 0x42, // 00080042 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x09, 0xB6, 0x7F, // 0009B67F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x09, 0x42, // 00080942 + 0x00, 0x07, 0x84, 0x0C, // 0007840C + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x09, 0xA6, 0x7F, // 0009A67F + 0x00, 0x07, 0x8C, 0x0C, // 00078C0C + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x30, // 00072430 + 0x00, 0x08, 0x2D, 0x41, // 00082D41 + 0x00, 0x08, 0xA4, 0xC5, // 0008A4C5 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x16, 0x35, // 00021635 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x9C, 0x1C, // 00069C1C + 0x00, 0x06, 0x04, 0x6A, // 0006046A + 0x00, 0x06, 0x08, 0x77, // 00060877 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x17, 0x12, // 00071712 + 0x00, 0x08, 0x80, 0x40, // 00088040 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x16, 0x71, // 00021671 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x02, 0x88, 0x08, // 00028808 + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x06, 0x24, 0x66, // 00062466 + 0x00, 0x06, 0x2C, 0x67, // 00062C67 + 0x00, 0x06, 0x34, 0x68, // 00063468 + 0x00, 0x06, 0x3C, 0x69, // 00063C69 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0B, 0x64, 0xC4, // 000B64C4 + 0x00, 0x0B, 0x6D, 0xC5, // 000B6DC5 + 0x00, 0x0B, 0x76, 0xC6, // 000B76C6 + 0x00, 0x0B, 0x7F, 0xC7, // 000B7FC7 + 0x00, 0x08, 0x25, 0x8C, // 0008258C + 0x00, 0x08, 0x2D, 0x8D, // 00082D8D + 0x00, 0x08, 0x35, 0x8E, // 0008358E + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x08, 0x3D, 0x8F, // 00083D8F + 0x00, 0x06, 0x84, 0x6A, // 0006846A + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x07, 0xA8, 0x0D, // 0007A80D + 0x00, 0x07, 0xB0, 0x0D, // 0007B00D + 0x00, 0x07, 0xB8, 0x0D, // 0007B80D + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x06, 0x90, 0x22, // 00069022 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x04, 0x2F, 0x08, // 00042F08 + 0x00, 0x04, 0x37, 0x08, // 00043708 + 0x00, 0x04, 0x3F, 0x08, // 00043F08 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x06, 0x84, 0x6A, // 0006846A + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x07, 0xA8, 0x0D, // 0007A80D + 0x00, 0x07, 0xB0, 0x0D, // 0007B00D + 0x00, 0x07, 0xB8, 0x0D, // 0007B80D + 0x00, 0x00, 0x00, 0x00, // 00000000 +}; +// addres 06800 count 1077 (4314 bytes) +static const unsigned char maspcm_array10[] = { + 0xf0, 0x00, 0x04, 0x35, 0x08, 0x00, + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0F, 0x00, // 00070F00 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x0B, 0x5B, 0x7E, // 000B5B7E + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x0A, 0xC9, 0xC0, // 000AC9C0 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x0A, 0x09, 0x78, // 000A0978 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x08, 0xA1, 0x41, // 0008A141 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x5B, 0x7E, // 000B5B7E + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x07, 0x26, 0x69, // 00072669 + 0x00, 0x0B, 0x6D, 0x7F, // 000B6D7F + 0x00, 0x0B, 0x75, 0x7E, // 000B757E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA0, 0x22, // 0006A022 + 0x00, 0x0A, 0xF7, 0x86, // 000AF786 + 0x00, 0x0A, 0xEF, 0x85, // 000AEF85 + 0x00, 0x0A, 0x36, 0x7F, // 000A367F + 0x00, 0x0B, 0x5B, 0x7F, // 000B5B7F + 0x00, 0x0B, 0x64, 0x70, // 000B6470 + 0x00, 0x06, 0x98, 0x79, // 00069879 + 0x00, 0x06, 0x90, 0x78, // 00069078 + 0x00, 0x06, 0xA8, 0x77, // 0006A877 + 0x00, 0x06, 0xB0, 0x7A, // 0006B07A + 0x00, 0x06, 0xBC, 0x64, // 0006BC64 + 0x00, 0x06, 0xB8, 0x71, // 0006B871 + 0x00, 0x06, 0xB8, 0x70, // 0006B870 + 0x00, 0x06, 0xB8, 0x69, // 0006B869 + 0x00, 0x06, 0xB8, 0x7B, // 0006B87B + 0x00, 0x06, 0xB8, 0x7C, // 0006B87C + 0x00, 0x06, 0x9C, 0x6B, // 00069C6B + 0x00, 0x06, 0xBC, 0x6E, // 0006BC6E + 0x00, 0x06, 0xBC, 0x72, // 0006BC72 + 0x00, 0x06, 0xB8, 0x74, // 0006B874 + 0x00, 0x06, 0xB8, 0x7D, // 0006B87D + 0x00, 0x06, 0xBC, 0x73, // 0006BC73 + 0x00, 0x06, 0x9C, 0x7D, // 00069C7D + 0x00, 0x06, 0xBC, 0x7C, // 0006BC7C + 0x00, 0x06, 0xBC, 0x7B, // 0006BC7B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x3C, 0x65, // 00063C65 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xBF, 0x41, // 0009BF41 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xBC, 0x7A, // 0006BC7A + 0x00, 0x07, 0x7C, 0x01, // 00077C01 + 0x00, 0x07, 0x3D, 0xFF, // 00073DFF + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1C, 0x90, // 00071C90 + 0x00, 0x07, 0x74, 0x01, // 00077401 + 0x00, 0x07, 0x34, 0xA0, // 000734A0 + 0x00, 0x06, 0x08, 0x76, // 00060876 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x21, 0x41, // 00082141 + 0x00, 0x06, 0xB8, 0x16, // 0006B816 + 0x00, 0x06, 0x90, 0x24, // 00069024 + 0x00, 0x06, 0x90, 0x2C, // 0006902C + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x06, 0x90, 0x20, // 00069020 + 0x00, 0x06, 0x98, 0x25, // 00069825 + 0x00, 0x06, 0x98, 0x2D, // 0006982D + 0x00, 0x06, 0xB0, 0x1D, // 0006B01D + 0x00, 0x06, 0xA0, 0x10, // 0006A010 + 0x00, 0x06, 0x98, 0x21, // 00069821 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3C, 0x24, // 00073C24 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x07, 0x6C, 0x01, // 00076C01 + 0x00, 0x07, 0x2C, 0x98, // 00072C98 + 0x00, 0x06, 0xBC, 0x16, // 0006BC16 + 0x00, 0x06, 0x94, 0x2A, // 0006942A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xAC, 0x2B, // 0006AC2B + 0x00, 0x07, 0x7C, 0x01, // 00077C01 + 0x00, 0x07, 0x3D, 0xFF, // 00073DFF + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x00, // 00071E00 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x90, // 00072C90 + 0x00, 0x06, 0xBC, 0x14, // 0006BC14 + 0x00, 0x06, 0x94, 0x1C, // 0006941C + 0x00, 0x06, 0x9C, 0x26, // 00069C26 + 0x00, 0x06, 0x9C, 0x2E, // 00069C2E + 0x00, 0x06, 0xAC, 0x1D, // 0006AC1D + 0x00, 0x06, 0xAC, 0x27, // 0006AC27 + 0x00, 0x06, 0xAC, 0x2F, // 0006AC2F + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x04, // 00070C04 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x10, // 00071410 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x4B, // 0006884B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x06, // 00069406 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x62, // 00071E62 + 0x00, 0x06, 0x10, 0x78, // 00061078 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1F, 0x18, // 00071F18 + 0x00, 0x06, 0x98, 0x22, // 00069822 + 0x00, 0x08, 0x92, 0x41, // 00089241 + 0x00, 0x02, 0x9E, 0xF0, // 00029EF0 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x80, // 00072C80 + 0x00, 0x07, 0x74, 0x00, // 00077400 + 0x00, 0x07, 0x34, 0x04, // 00073404 + 0x00, 0x0A, 0xED, 0xC0, // 000AEDC0 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x1B, 0xC6, // 00081BC6 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x40, // 00072C40 + 0x00, 0x07, 0x74, 0x02, // 00077402 + 0x00, 0x07, 0x34, 0x00, // 00073400 + 0x00, 0x0A, 0xED, 0xC0, // 000AEDC0 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x1B, 0xC6, // 00081BC6 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2C, 0x04, // 00072C04 + 0x00, 0x07, 0x74, 0x00, // 00077400 + 0x00, 0x07, 0x34, 0x20, // 00073420 + 0x00, 0x04, 0x17, 0x00, // 00041700 + 0x00, 0x0A, 0xED, 0xC0, // 000AEDC0 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x1B, 0xC6, // 00081BC6 + 0x00, 0x0A, 0xD2, 0x41, // 000AD241 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x27, 0x18, // 00072718 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x3B, // 0006983B + 0x00, 0x06, 0x9C, 0x75, // 00069C75 + 0x00, 0x06, 0xA0, 0x53, // 0006A053 + 0x00, 0x06, 0x28, 0x77, // 00062877 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x40, // 00071640 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x90, // 00072490 + 0x00, 0x0B, 0x49, 0x7D, // 000B497D + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6C, // 0007066C + 0x00, 0x06, 0x90, 0x1E, // 0006901E + 0x00, 0x06, 0xA0, 0x1F, // 0006A01F + 0x00, 0x06, 0x88, 0x14, // 00068814 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x17, 0x08, // 00041708 + 0x00, 0x04, 0x1F, 0x08, // 00041F08 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x08, 0xAD, 0x40, // 0008AD40 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0B, 0x49, 0x40, // 000B4940 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x07, 0x88, 0x0D, // 0007880D + 0x00, 0x07, 0x90, 0x0D, // 0007900D + 0x00, 0x07, 0x98, 0x0D, // 0007980D + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x50, // 00071650 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x26, 0x90, // 00072690 + 0x00, 0x0B, 0x49, 0x7D, // 000B497D + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x70, // 00070670 + 0x00, 0x06, 0x94, 0x20, // 00069420 + 0x00, 0x06, 0xA4, 0x21, // 0006A421 + 0x00, 0x06, 0x8C, 0x15, // 00068C15 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0B, 0x52, 0x75, // 000B5275 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x04, 0x0F, 0x08, // 00040F08 + 0x00, 0x07, 0x8C, 0x0E, // 00078C0E + 0x00, 0x07, 0x8C, 0x0E, // 00078C0E + 0x00, 0x07, 0x8C, 0x0E, // 00078C0E + 0x00, 0x07, 0x8C, 0x0E, // 00078C0E + 0x00, 0x06, 0x94, 0x15, // 00069415 + 0x00, 0x02, 0x1C, 0x0E, // 00021C0E + 0x00, 0x07, 0x4C, 0x06, // 00074C06 + 0x00, 0x07, 0x0C, 0xD3, // 00070CD3 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x32, // 00070E32 + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x07, 0x26, 0x70, // 00072670 + 0x00, 0x07, 0x6C, 0x00, // 00076C00 + 0x00, 0x07, 0x2E, 0x90, // 00072E90 + 0x00, 0x06, 0x8C, 0x22, // 00068C22 + 0x00, 0x04, 0x80, 0x4F, // 0004804F + 0x00, 0x06, 0x08, 0x78, // 00060878 + 0x00, 0x06, 0xA4, 0x24, // 0006A424 + 0x00, 0x06, 0xAC, 0x25, // 0006AC25 + 0x00, 0x06, 0x5C, 0x3C, // 00065C3C + 0x00, 0x06, 0x5C, 0x3B, // 00065C3B + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0x1D, // 0002191D + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x02, 0x3F, 0xCC, // 00023FCC + 0x00, 0x07, 0x6C, 0x06, // 00076C06 + 0x00, 0x07, 0x2C, 0xEB, // 00072CEB + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xC7, 0x82, // 000AC782 + 0x00, 0x02, 0x9E, 0x20, // 00029E20 + 0x00, 0x0A, 0xC7, 0x81, // 000AC781 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x54, 0x04, // 00075404 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x06, 0x30, 0x2C, // 0006302C + 0x00, 0x08, 0x92, 0x41, // 00089241 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x19, 0x0C, // 0002190C + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0A, 0xF6, 0x41, // 000AF641 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x18, 0xFA, // 000218FA + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x30, 0x2C, // 0006302C + 0x00, 0x08, 0x92, 0x41, // 00089241 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x19, 0x0C, // 0002190C + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0A, 0xF6, 0x41, // 000AF641 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0x03, // 00021903 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x38, 0x52, // 00063852 + 0x00, 0x06, 0x30, 0x2C, // 0006302C + 0x00, 0x09, 0xBF, 0x7A, // 0009BF7A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xFF, 0x41, // 000AFF41 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x36, 0x41, // 000B3641 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB0, 0x2C, // 0006B02C + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x18, 0xE4, // 000218E4 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x40, 0x7D, // 000B407D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x84, 0x15, // 00068415 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x16, // 0004B816 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x06, 0x27, // 000C0627 + 0x00, 0x04, 0x35, 0x18, // 00043518 + 0x00, 0x04, 0xB8, 0x1E, // 0004B81E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0E, 0x06, 0x27, // 000E0627 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x16, // 0004B816 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x0E, 0x27, // 000C0E27 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x0E, // 0004B80E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0E, 0x0E, 0x27, // 000E0E27 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x16, // 0004B816 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x16, 0x27, // 000C1627 + 0x00, 0x04, 0x35, 0x18, // 00043518 + 0x00, 0x04, 0xB8, 0x1E, // 0004B81E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0E, 0x16, 0x27, // 000E1627 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x16, // 0004B816 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x1E, 0x27, // 000C1E27 + 0x00, 0x04, 0x35, 0x08, // 00043508 + 0x00, 0x04, 0xB8, 0x0E, // 0004B80E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0E, 0x1E, 0x27, // 000E1E27 + 0x00, 0x07, 0x64, 0x01, // 00076401 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x27, 0x12, // 00072712 + 0x00, 0x07, 0x80, 0x0D, // 0007800D + 0x00, 0x07, 0x88, 0x0D, // 0007880D + 0x00, 0x07, 0x90, 0x0D, // 0007900D + 0x00, 0x07, 0x98, 0x0D, // 0007980D + 0x00, 0x06, 0xA0, 0x22, // 0006A022 + 0x00, 0x07, 0x80, 0x0F, // 0007800F + 0x00, 0x07, 0x88, 0x0F, // 0007880F + 0x00, 0x07, 0x90, 0x0F, // 0007900F + 0x00, 0x07, 0x98, 0x07, // 00079807 + 0x00, 0x06, 0x2C, 0x79, // 00062C79 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x09, 0x0D, // 000C090D + 0x00, 0x0C, 0x11, 0x0D, // 000C110D + 0x00, 0x0C, 0x19, 0x0D, // 000C190D + 0x00, 0x0C, 0x21, 0x0D, // 000C210D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x8C, 0x66, // 00068C66 + 0x00, 0x06, 0x94, 0x67, // 00069467 + 0x00, 0x06, 0x9C, 0x68, // 00069C68 + 0x00, 0x06, 0xA4, 0x69, // 0006A469 + 0x00, 0x06, 0x00, 0x7A, // 0006007A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x40, // 00088040 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0xF8, // 000219F8 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x00, 0x24, // 00060024 + 0x00, 0x06, 0x08, 0x78, // 00060878 + 0x00, 0x06, 0x18, 0x76, // 00061876 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x08, 0x89, 0x41, // 00088941 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x06, 0x00, 0x2C, // 0006002C + 0x00, 0x06, 0x08, 0x1C, // 0006081C + 0x00, 0x08, 0x80, 0xC1, // 000880C1 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x08, 0x9B, 0x41, // 00089B41 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x09, 0x80, 0x7F, // 0009807F + 0x00, 0x06, 0x14, 0x7B, // 0006147B + 0x00, 0x06, 0x1C, 0x7A, // 00061C7A + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9F, 0x28, // 00029F28 + 0x00, 0x08, 0x98, 0xC3, // 000898C3 + 0x00, 0x02, 0x87, 0x10, // 00028710 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x7B, // 0006947B + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x12, // 00071412 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x00, // 00071E00 + 0x00, 0x08, 0xA0, 0xC2, // 0008A0C2 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x19, 0xF8, // 000219F8 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x24, 0x2A, // 0006242A + 0x00, 0x08, 0xA3, 0xC4, // 0008A3C4 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0xF8, // 000219F8 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x01, // 00071E01 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x09, // 00070409 + 0x00, 0x06, 0x08, 0x69, // 00060869 + 0x00, 0x06, 0x9C, 0x22, // 00069C22 + 0x00, 0x06, 0x10, 0x6A, // 0006106A + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0xA4, // 000219A4 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x92, 0x41, // 00089241 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x19, 0xA4, // 000219A4 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x07, 0x55, 0x5C, // 0007555C + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x5D, 0x04, // 00075D04 + 0x00, 0x07, 0x1C, 0x00, // 00071C00 + 0x00, 0x07, 0x65, 0x58, // 00076558 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x6D, 0x14, // 00076D14 + 0x00, 0x07, 0x2C, 0x00, // 00072C00 + 0x00, 0x07, 0x94, 0x0F, // 0007940F + 0x00, 0x07, 0x9C, 0x0F, // 00079C0F + 0x00, 0x07, 0xA4, 0x0F, // 0007A40F + 0x00, 0x07, 0xAC, 0x0F, // 0007AC0F + 0x00, 0x06, 0x38, 0x3A, // 0006383A + 0x00, 0x0B, 0x76, 0x7D, // 000B767D + 0x00, 0x06, 0x10, 0x6C, // 0006106C + 0x00, 0x0A, 0xFF, 0x5F, // 000AFF5F + 0x00, 0x06, 0x84, 0x05, // 00068405 + 0x00, 0x02, 0x9F, 0x18, // 00029F18 + 0x00, 0x09, 0x3F, 0x54, // 00093F54 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xB4, 0x15, // 0006B415 + 0x00, 0x07, 0x77, 0xFC, // 000777FC + 0x00, 0x07, 0x34, 0x00, // 00073400 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x01, 0x4E, 0x80, // 00014E80 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0x80, 0x87, // 00098087 + 0x00, 0x09, 0x88, 0x87, // 00098887 + 0x00, 0x0C, 0x20, 0x12, // 000C2012 + 0x00, 0x0E, 0x21, 0x12, // 000E2112 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x28, 0x12, // 000C2812 + 0x00, 0x0E, 0x29, 0x12, // 000E2912 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0x84, 0x48, // 00098448 + 0x00, 0x09, 0x8D, 0x48, // 00098D48 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x09, 0xA4, 0x48, // 0009A448 + 0x00, 0x08, 0x04, 0x40, // 00080440 + 0x00, 0x09, 0xAD, 0x48, // 0009AD48 + 0x00, 0x08, 0x0D, 0x40, // 00080D40 + 0x00, 0x0A, 0xE4, 0xC6, // 000AE4C6 + 0x00, 0x0A, 0xC0, 0xC6, // 000AC0C6 + 0x00, 0x0A, 0xED, 0xC6, // 000AEDC6 + 0x00, 0x0A, 0xC9, 0xC6, // 000AC9C6 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0xE4, 0x0F, // 0007E40F + 0x00, 0x07, 0xC4, 0x0F, // 0007C40F + 0x00, 0x07, 0xEC, 0x0F, // 0007EC0F + 0x00, 0x07, 0xCC, 0x0F, // 0007CC0F + 0x00, 0x06, 0x00, 0x69, // 00060069 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x07, 0x0E, 0x65, // 00070E65 + 0x00, 0x08, 0x00, 0x41, // 00080041 + 0x00, 0x06, 0x1C, 0x64, // 00061C64 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x39, // 00071439 + 0x00, 0x06, 0x88, 0x22, // 00068822 + 0x00, 0x04, 0x0F, 0x00, // 00040F00 + 0x00, 0x08, 0x90, 0xC2, // 000890C2 + 0x00, 0x02, 0x9E, 0x28, // 00029E28 + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x08, 0x09, 0x41, // 00080941 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x69, // 00068069 + 0x00, 0x07, 0x88, 0x07, // 00078807 + 0x00, 0x07, 0x4C, 0x01, // 00074C01 + 0x00, 0x0B, 0x76, 0x75, // 000B7675 + 0x00, 0x07, 0x0E, 0x01, // 00070E01 + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x04, 0x04, // 00070404 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x06, 0x80, 0x4B, // 0006804B + 0x00, 0x07, 0x44, 0x00, // 00074400 + 0x00, 0x07, 0x05, 0x3D, // 0007053D + 0x00, 0x06, 0xB4, 0x15, // 0006B415 + 0x00, 0x06, 0x8C, 0x2A, // 00068C2A + 0x00, 0x06, 0x94, 0x72, // 00069472 + 0x00, 0x06, 0x80, 0x4B, // 0006804B + 0x00, 0x06, 0x00, 0x24, // 00060024 + 0x00, 0x06, 0x08, 0x78, // 00060878 + 0x00, 0x06, 0x18, 0x76, // 00061876 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x08, 0x89, 0x41, // 00088941 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x06, 0x00, 0x2C, // 0006002C + 0x00, 0x06, 0x08, 0x20, // 00060820 + 0x00, 0x08, 0x80, 0xC1, // 000880C1 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x06, 0x0C, 0x26, // 00060C26 + 0x00, 0x06, 0x14, 0x1C, // 0006141C + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x00, // 00071E00 + 0x00, 0x08, 0x89, 0xC2, // 000889C2 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x09, 0xC3, // 000809C3 + 0x00, 0x06, 0x24, 0x24, // 00062424 + 0x00, 0x09, 0x22, 0xC4, // 000922C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x24, 0xC3, // 000824C3 + 0x00, 0x09, 0x29, 0xC4, // 000929C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x0C, 0x40, // 00080C40 + 0x00, 0x06, 0x24, 0x2E, // 0006242E + 0x00, 0x09, 0x22, 0xC4, // 000922C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x24, 0xC3, // 000824C3 + 0x00, 0x09, 0x29, 0xC4, // 000929C4 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x0C, 0x40, // 00080C40 + 0x00, 0x07, 0x54, 0x00, // 00075400 + 0x00, 0x07, 0x14, 0x20, // 00071420 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0xC2, // 000880C2 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x1A, 0x86, // 00021A86 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x89, 0xC2, // 000889C2 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x1A, 0x86, // 00021A86 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x28, 0x3A, // 0006283A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xED, 0x5F, // 000AED5F + 0x00, 0x02, 0x9F, 0x18, // 00029F18 + 0x00, 0x09, 0x2D, 0x54, // 00092D54 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x04, 0xB8, 0x0D, // 0004B80D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xBF, 0x7C, // 0009BF7C + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x01, 0x0D, 0x10, // 00010D10 + 0x00, 0x06, 0x20, 0x76, // 00062076 + 0x00, 0x09, 0x86, 0x8D, // 0009868D + 0x00, 0x09, 0x8E, 0x8D, // 00098E8D + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x08, 0x40, // 00080840 + 0x00, 0x0C, 0x31, 0x08, // 000C3108 + 0x00, 0x0E, 0x31, 0x09, // 000E3109 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0C, 0x01, 0x08, // 000C0108 + 0x00, 0x0E, 0x01, 0x09, // 000E0109 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xF6, 0x7C, // 000AF67C + 0x00, 0x09, 0x9F, 0x7F, // 00099F7F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x36, 0x42, // 00083642 + 0x00, 0x0A, 0xC0, 0x7C, // 000AC07C + 0x00, 0x09, 0xBF, 0x7F, // 0009BF7F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x00, 0x42, // 00080042 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0xF4, 0x0C, // 0007F40C + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0xC4, 0x0C, // 0007C40C + 0x00, 0x02, 0x16, 0x52, // 00021652 + 0x00, 0x07, 0x4C, 0x06, // 00074C06 + 0x00, 0x07, 0x0E, 0x56, // 00070E56 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x06, 0x00, 0x7B, // 0006007B + 0x00, 0x06, 0x10, 0x74, // 00061074 + 0x00, 0x08, 0x00, 0x41, // 00080041 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1C, 0x30, // 00071C30 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9E, 0x18, // 00029E18 + 0x00, 0x08, 0x88, 0xC3, // 000888C3 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x02, 0x15, 0xDB, // 000215DB + 0x00, 0x07, 0x4C, 0x06, // 00074C06 + 0x00, 0x07, 0x0E, 0x66, // 00070E66 + 0x00, 0x06, 0x80, 0x7B, // 0006807B + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x88, 0x0E, // 0006880E + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x06, 0x08, 0x24, // 00060824 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x06, 0x08, 0x2C, // 0006082C + 0x00, 0x06, 0x34, 0x26, // 00063426 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x86, 0xC1, // 000886C1 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1F, 0x00, // 00071F00 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x08, 0xA8, 0xC3, // 0008A8C3 + 0x00, 0x02, 0x87, 0x08, // 00028708 + 0x00, 0x08, 0x80, 0xC2, // 000880C2 + 0x00, 0x06, 0x20, 0x74, // 00062074 + 0x00, 0x08, 0x28, 0xC3, // 000828C3 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x06, 0x18, 0x79, // 00061879 + 0x00, 0x06, 0x14, 0x6E, // 0006146E + 0x00, 0x08, 0xA4, 0x41, // 0008A441 + 0x00, 0x02, 0x9E, 0x20, // 00029E20 + 0x00, 0x08, 0xBB, 0x42, // 0008BB42 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x0B, 0x5B, 0x7F, // 000B5B7F + 0x00, 0x08, 0x10, 0x40, // 00081040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x98, 0x79, // 00069879 + 0x00, 0x06, 0x94, 0x6E, // 0006946E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x06, 0x08, 0x24, // 00060824 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x06, 0x08, 0x2C, // 0006082C + 0x00, 0x06, 0x00, 0x1C, // 0006001C + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x06, 0x18, 0x71, // 00061871 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x24, 0x6B, // 0006246B + 0x00, 0x08, 0xA9, 0xC0, // 0008A9C0 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x2D, 0xC2, // 00082DC2 + 0x00, 0x08, 0xB4, 0x41, // 0008B441 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x1A, 0xA5, // 00021AA5 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0xB5, 0x42, // 0008B542 + 0x00, 0x02, 0x86, 0x10, // 00028610 + 0x00, 0x02, 0x1A, 0xA5, // 00021AA5 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x34, 0x26, // 00063426 + 0x00, 0x0A, 0xD1, 0x41, // 000AD141 + 0x00, 0x0A, 0xF6, 0x7E, // 000AF67E + 0x00, 0x08, 0x12, 0xC6, // 000812C6 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x0A, 0xC2, 0x7E, // 000AC27E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA4, 0x6B, // 0006A46B + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x25, // 00072425 + 0x00, 0x08, 0x93, 0xC5, // 000893C5 + 0x00, 0x06, 0xA8, 0x71, // 0006A871 + 0x00, 0x08, 0x9C, 0xC2, // 00089CC2 + 0x00, 0x02, 0x88, 0x10, // 00028810 + 0x00, 0x02, 0x1B, 0x86, // 00021B86 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x06, 0x18, 0x52, // 00061852 + 0x00, 0x07, 0x54, 0x08, // 00075408 + 0x00, 0x07, 0x14, 0x00, // 00071400 + 0x00, 0x07, 0x7C, 0x06, // 00077C06 + 0x00, 0x07, 0x3E, 0xFD, // 00073EFD + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x20, // 00029F20 + 0x00, 0x0A, 0xC3, 0xC2, // 000AC3C2 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0xA7, // 00021BA7 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0xB8, 0x0F, // 0006B80F + 0x00, 0x06, 0x34, 0x26, // 00063426 + 0x00, 0x06, 0x3C, 0x1C, // 00063C1C + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x06, 0x18, 0x70, // 00061870 + 0x00, 0x08, 0x86, 0xC7, // 000886C7 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x00, 0xC2, // 000800C2 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x25, // 00072425 + 0x00, 0x06, 0x28, 0x79, // 00062879 + 0x00, 0x08, 0x93, 0xC0, // 000893C0 + 0x00, 0x06, 0x80, 0x70, // 00068070 + 0x00, 0x08, 0x94, 0xC2, // 000894C2 + 0x00, 0x02, 0x88, 0x38, // 00028838 + 0x00, 0x08, 0xBD, 0x41, // 0008BD41 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x09, 0xAD, 0x41, // 0009AD41 + 0x00, 0x07, 0x7C, 0x06, // 00077C06 + 0x00, 0x07, 0x3E, 0xFD, // 00073EFD + 0x00, 0x02, 0x1B, 0xB0, // 00021BB0 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0xA8, 0x79, // 0006A879 + 0x00, 0x06, 0xB8, 0x0F, // 0006B80F + 0x00, 0x06, 0x14, 0x26, // 00061426 + 0x00, 0x06, 0x20, 0x7D, // 0006207D + 0x00, 0x06, 0x28, 0x7C, // 0006287C + 0x00, 0x08, 0x32, 0x60, // 00083260 + 0x00, 0x02, 0x86, 0x18, // 00028618 + 0x00, 0x08, 0x2D, 0xC4, // 00082DC4 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x02, 0x81, 0x08, // 00028108 + 0x00, 0x0B, 0x64, 0x7F, // 000B647F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA8, 0x7C, // 0006A87C + 0x00, 0x06, 0xA0, 0x7D, // 0006A07D + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3C, 0x01, // 00073C01 + 0x00, 0x06, 0x00, 0x7C, // 0006007C + 0x00, 0x06, 0x30, 0x79, // 00063079 + 0x00, 0x08, 0xBF, 0xC0, // 0008BFC0 + 0x00, 0x02, 0x88, 0xC0, // 000288C0 + 0x00, 0x08, 0xB6, 0x41, // 0008B641 + 0x00, 0x02, 0x9E, 0xB0, // 00029EB0 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x08, 0xBA, 0xC1, // 0008BAC1 + 0x00, 0x06, 0x34, 0x6E, // 0006346E + 0x00, 0x08, 0xBF, 0xC6, // 0008BFC6 + 0x00, 0x07, 0x5C, 0x00, // 00075C00 + 0x00, 0x07, 0x1F, 0x00, // 00071F00 + 0x00, 0x07, 0x54, 0x01, // 00075401 + 0x00, 0x07, 0x16, 0x00, // 00071600 + 0x00, 0x08, 0xAF, 0xC3, // 0008AFC3 + 0x00, 0x02, 0x87, 0x08, // 00028708 + 0x00, 0x08, 0xBF, 0xC2, // 0008BFC2 + 0x00, 0x08, 0x2F, 0xC3, // 00082FC3 + 0x00, 0x02, 0x86, 0x08, // 00028608 + 0x00, 0x08, 0x3F, 0xC2, // 00083FC2 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x1C, 0x15, // 00021C15 + 0x00, 0x07, 0x4C, 0x06, // 00074C06 + 0x00, 0x07, 0x0E, 0xFD, // 00070EFD + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x7C, // 0006807C + 0x00, 0x06, 0x88, 0x0F, // 0006880F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x04, 0x64, // 00060464 + 0x00, 0x06, 0x0C, 0x72, // 00060C72 + 0x00, 0x06, 0x10, 0x74, // 00061074 + 0x00, 0x08, 0x80, 0x40, // 00088040 + 0x00, 0x02, 0x9F, 0x40, // 00029F40 + 0x00, 0x08, 0x89, 0x40, // 00088940 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x08, 0x92, 0x40, // 00089240 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x01, // 00070C01 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x04, 0x07, 0x00, // 00040700 + 0x00, 0x0A, 0xC9, 0xC0, // 000AC9C0 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x81, 0x10, // 00028110 + 0x00, 0x02, 0x1B, 0x68, // 00021B68 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x80, 0x07, // 00078007 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x61, // 00070661 + 0x00, 0x07, 0x4C, 0x0C, // 00074C0C + 0x00, 0x07, 0x0C, 0x00, // 00070C00 + 0x00, 0x06, 0x14, 0x64, // 00061464 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xC7, 0x81, // 000AC781 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x64, // 00069464 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x69, // 00070669 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x02, // 00070C02 + 0x00, 0x06, 0x10, 0x7A, // 0006107A + 0x00, 0x06, 0x20, 0x1C, // 0006201C + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xC3, 0x81, // 000AC381 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x0B, 0x52, 0x7F, // 000B527F + 0x00, 0x02, 0x81, 0x48, // 00028148 + 0x00, 0x08, 0x9A, 0x41, // 00089A41 + 0x00, 0x02, 0x9E, 0x38, // 00029E38 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x06, 0x08, 0x24, // 00060824 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x06, 0x08, 0x2C, // 0006082C + 0x00, 0x0B, 0x52, 0x40, // 000B5240 + 0x00, 0x0A, 0xE1, 0x7E, // 000AE17E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x90, 0x7A, // 0006907A + 0x00, 0x06, 0xA0, 0x1C, // 0006A01C + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x69, // 00070669 + 0x00, 0x07, 0x4C, 0x00, // 00074C00 + 0x00, 0x07, 0x0C, 0x01, // 00070C01 + 0x00, 0x07, 0x44, 0x01, // 00074401 + 0x00, 0x07, 0x06, 0x6C, // 0007066C + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0A, 0xCF, 0x81, // 000ACF81 + 0x00, 0x06, 0x18, 0x77, // 00061877 + 0x00, 0x06, 0x80, 0x22, // 00068022 + 0x00, 0x0B, 0x09, 0xC3, // 000B09C3 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0x68, // 00021B68 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x24, 0x6B, // 0006246B + 0x00, 0x0B, 0x1B, 0x41, // 000B1B41 + 0x00, 0x06, 0x14, 0x65, // 00061465 + 0x00, 0x06, 0x04, 0x6A, // 0006046A + 0x00, 0x08, 0x28, 0x41, // 00082841 + 0x00, 0x02, 0x9F, 0x08, // 00029F08 + 0x00, 0x08, 0x82, 0xC0, // 000882C0 + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0x66, // 00021B66 + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0B, 0x40, 0x41, // 000B4041 + 0x00, 0x0B, 0x64, 0x40, // 000B6440 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x0B, 0x76, 0x40, // 000B7640 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x08, 0x9B, 0x40, // 00089B40 + 0x00, 0x02, 0x9E, 0x28, // 00029E28 + 0x00, 0x04, 0x27, 0x08, // 00042708 + 0x00, 0x04, 0x2F, 0x08, // 00042F08 + 0x00, 0x04, 0x37, 0x08, // 00043708 + 0x00, 0x04, 0x3F, 0x08, // 00043F08 + 0x00, 0x07, 0xA0, 0x0D, // 0007A00D + 0x00, 0x07, 0xA8, 0x0D, // 0007A80D + 0x00, 0x07, 0xB0, 0x0D, // 0007B00D + 0x00, 0x07, 0xB8, 0x0D, // 0007B80D + 0x00, 0x06, 0x98, 0x77, // 00069877 + 0x00, 0x06, 0x84, 0x6A, // 0006846A + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x00, 0x6D, // 0006006D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xC0, 0x6D, // 0006C06D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x3F, 0xCC, // 00023FCC + 0x00, 0x07, 0x6C, 0x06, // 00076C06 + 0x00, 0x07, 0x2F, 0x78, // 00072F78 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x19, 0x5B, // 0002195B + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0xC1, 0x80, // 0000C180 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x00, 0x1C, // 0006001C + 0x00, 0x07, 0x6C, 0x01, // 00076C01 + 0x00, 0x07, 0x2E, 0x00, // 00072E00 + 0x00, 0x07, 0x7C, 0x01, // 00077C01 + 0x00, 0x07, 0x3E, 0x68, // 00073E68 + 0x00, 0x0A, 0xF1, 0x7E, // 000AF17E + 0x00, 0x09, 0x00, 0xC6, // 000900C6 + 0x00, 0x02, 0x88, 0x08, // 00028808 + 0x00, 0x08, 0x00, 0xC5, // 000800C5 + 0x00, 0x06, 0x2C, 0x64, // 00062C64 + 0x00, 0x0A, 0x00, 0x7F, // 000A007F + 0x00, 0x06, 0x20, 0x7A, // 0006207A + 0x00, 0x06, 0xB8, 0x22, // 0006B822 + 0x00, 0x04, 0x3F, 0x00, // 00043F00 + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x08, 0x3F, 0xC0, // 00083FC0 + 0x00, 0x08, 0xAD, 0x40, // 0008AD40 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x06, 0x2C, 0x7F, // 00062C7F + 0x00, 0x08, 0xA4, 0x40, // 0008A440 + 0x00, 0x02, 0x9E, 0x08, // 00029E08 + 0x00, 0x0B, 0x6D, 0x6F, // 000B6D6F + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x02, 0x1A, 0xAD, // 00021AAD + 0x00, 0x06, 0xB0, 0x1C, // 0006B01C + 0x00, 0x0A, 0xFF, 0x7E, // 000AFF7E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x84, 0x72, // 00068472 + 0x00, 0x06, 0xAC, 0x7F, // 0006AC7F + 0x00, 0x07, 0xB8, 0x07, // 0007B807 + 0x00, 0x06, 0x10, 0x2C, // 0006102C + 0x00, 0x0B, 0x64, 0x6D, // 000B646D + 0x00, 0x0A, 0xD2, 0x7E, // 000AD27E + 0x00, 0x0B, 0x5B, 0x7F, // 000B5B7F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x81, 0x20, // 00028120 + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x06, 0x90, 0x20, // 00069020 + 0x00, 0x06, 0x9C, 0x7B, // 00069C7B + 0x00, 0x0B, 0x64, 0x6E, // 000B646E + 0x00, 0x06, 0x34, 0x6D, // 0006346D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0xA4, 0x7F, // 0006A47F + 0x00, 0x06, 0xB4, 0x0F, // 0006B40F + 0x00, 0x06, 0xB4, 0x6C, // 0006B46C + 0x00, 0x0B, 0x76, 0x7F, // 000B767F + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x0B, 0x6D, 0x40, // 000B6D40 + 0x00, 0x08, 0x3F, 0x40, // 00083F40 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x06, 0xB4, 0x6B, // 0006B46B + 0x00, 0x04, 0xB0, 0x0D, // 0004B00D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x09, 0xB6, 0x7C, // 0009B67C + 0x00, 0x01, 0x05, 0x10, // 00010510 + 0x00, 0x09, 0xA6, 0x7F, // 0009A67F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x00, 0x42, // 00080042 + 0x00, 0x0B, 0x7F, 0x40, // 000B7F40 + 0x00, 0x09, 0xB6, 0x7F, // 0009B67F + 0x00, 0x02, 0x82, 0x08, // 00028208 + 0x00, 0x08, 0x3F, 0x42, // 00083F42 + 0x00, 0x07, 0x84, 0x0C, // 0007840C + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x09, 0xA6, 0x7F, // 0009A67F + 0x00, 0x07, 0xBC, 0x0C, // 0007BC0C + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x24, 0x30, // 00072430 + 0x00, 0x08, 0x2D, 0x41, // 00082D41 + 0x00, 0x08, 0xA4, 0xC5, // 0008A4C5 + 0x00, 0x02, 0x9F, 0x10, // 00029F10 + 0x00, 0x02, 0x1B, 0xBE, // 00021BBE + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3F, 0x18, // 00073F18 + 0x00, 0x06, 0x00, 0x78, // 00060078 + 0x00, 0x06, 0x10, 0x24, // 00061024 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x02, 0x9F, 0x18, // 00029F18 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3C, 0x00, // 00073C00 + 0x00, 0x06, 0x10, 0x2C, // 0006102C + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0A, 0xD2, 0x7E, // 000AD27E + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x0B, 0x6D, 0x7F, // 000B6D7F + 0x00, 0x06, 0x04, 0x64, // 00060464 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x00, 0xDE, 0x87, // 0000DE87 + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x06, 0x90, 0x20, // 00069020 + 0x00, 0x06, 0x9C, 0x62, // 00069C62 + 0x00, 0x06, 0x9C, 0x6E, // 00069C6E + 0x00, 0x06, 0x9C, 0x63, // 00069C63 + 0x00, 0x06, 0xAC, 0x7D, // 0006AC7D + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x04, 0x73, // 00060473 + 0x00, 0x07, 0x5C, 0x01, // 00075C01 + 0x00, 0x07, 0x1E, 0x00, // 00071E00 + 0x00, 0x08, 0x80, 0x41, // 00088041 + 0x00, 0x02, 0x9E, 0x10, // 00029E10 + 0x00, 0x02, 0x1B, 0x7F, // 00021B7F + 0x00, 0x02, 0x81, 0x28, // 00028128 + 0x00, 0x0B, 0x40, 0x7F, // 000B407F + 0x00, 0x08, 0x12, 0x42, // 00081242 + 0x00, 0x09, 0x1B, 0xC2, // 00091BC2 + 0x00, 0x02, 0x87, 0x08, // 00028708 + 0x00, 0x08, 0x92, 0xC3, // 000892C3 + 0x00, 0x06, 0x84, 0x73, // 00068473 + 0x00, 0x07, 0x64, 0x00, // 00076400 + 0x00, 0x07, 0x27, 0x00, // 00072700 + 0x00, 0x07, 0x7C, 0x00, // 00077C00 + 0x00, 0x07, 0x3C, 0x00, // 00073C00 + 0x00, 0x0B, 0x5B, 0x40, // 000B5B40 + 0x00, 0x0B, 0x6D, 0x7F, // 000B6D7F + 0x00, 0x06, 0xA4, 0x05, // 0006A405 + 0x00, 0x01, 0x41, 0x80, // 00014180 + 0x00, 0x06, 0xB8, 0x22, // 0006B822 + 0x00, 0x07, 0x98, 0x0F, // 0007980F + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x07, 0x98, 0x0F, // 0007980F + 0x00, 0x00, 0xC1, 0x87, // 0000C187 + 0x00, 0x06, 0x90, 0x1C, // 0006901C + 0x00, 0x06, 0x9C, 0x62, // 00069C62 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x9C, 0x63, // 00069C63 + 0x00, 0x06, 0x9C, 0x6E, // 00069C6E + 0x00, 0x06, 0xAC, 0x7D, // 0006AC7D + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x0B, 0x40, 0x40, // 000B4040 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x84, 0x62, // 00068462 + 0x00, 0x06, 0x84, 0x63, // 00068463 + 0x00, 0x06, 0x04, 0x62, // 00060462 + 0x00, 0x06, 0x1C, 0x63, // 00061C63 + 0x00, 0x0A, 0x0F, 0x41, // 000A0F41 + 0x00, 0x08, 0x97, 0xC0, // 000897C0 + 0x00, 0x08, 0x1B, 0xC2, // 00081BC2 + 0x00, 0x0A, 0x12, 0x47, // 000A1247 + 0x00, 0x07, 0x65, 0x00, // 00076500 + 0x00, 0x07, 0x24, 0x00, // 00072400 + 0x00, 0x07, 0x6D, 0x00, // 00076D00 + 0x00, 0x07, 0x2C, 0x00, // 00072C00 + 0x00, 0x07, 0x75, 0x00, // 00077500 + 0x00, 0x07, 0x34, 0x00, // 00073400 + 0x00, 0x0C, 0x12, 0x25, // 000C1225 + 0x00, 0x0E, 0x11, 0x24, // 000E1124 + 0x00, 0x0E, 0x13, 0x26, // 000E1326 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x04, 0x6C, // 0006046C + 0x00, 0x00, 0xC1, 0x07, // 0000C107 + 0x00, 0x09, 0x12, 0xC0, // 000912C0 + 0x00, 0x06, 0xBC, 0x62, // 0006BC62 + 0x00, 0x06, 0x9C, 0x63, // 00069C63 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x06, 0x94, 0x6C, // 0006946C + 0x00, 0x06, 0x94, 0x0F, // 0006940F + 0x00, 0x03, 0x33, 0x33, // 00033333 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 + 0x00, 0x00, 0x00, 0x00, // 00000000 +}; + +struct i2c_block { + const unsigned char *data; + unsigned len; +}; + +static struct i2c_block maspcm[] = { + { maspcm_array1, sizeof(maspcm_array1) }, + { maspcm_array2, sizeof(maspcm_array2) }, + { maspcm_array3, sizeof(maspcm_array3) }, + { maspcm_array4, sizeof(maspcm_array4) }, + { maspcm_array5, sizeof(maspcm_array5) }, + { maspcm_array6, sizeof(maspcm_array6) }, + { maspcm_array7, sizeof(maspcm_array7) }, + { maspcm_array8, sizeof(maspcm_array8) }, + { maspcm_array9, sizeof(maspcm_array9) }, + { maspcm_array10, sizeof(maspcm_array10) }, +}; + +/************ End of MAS pcm codec ************/ + +#define WAVRECORD_QUIT BUTTON_OFF + +#define CFGFILE_VERSION 0 /* Current config file version */ +#define CFGFILE_MINVERSION 0 /* Minimum config file version to accept */ + +#ifdef HAVE_MMC +#define REC_BASE_DIRECTORY "//recordings" +#else +#define REC_BASE_DIRECTORY "/recordings" +#endif + +#define PCM_MAIN_IO_CONTROL 0x0661 +#define PCM_IF_STATUS_CONTROL 0x0662 +#define PCM_OFREQ_CONTROL 0x0663 +#define PCM_OUTPUT_CLOCK_CONF 0x0664 +#define PCM_FRAME_COUNTER 0x0665 +#define PCM_APP_RUNNING 0x0666 +#define PCM_SAMPLE_RATE_STATUS 0x0667 +#define PCM_BUFFER_ERROR_COUNTER 0x0668 +#define PCM_SOFT_MUTE 0x0669 +#define PCM_SPDIF_CHANNEL_STATUS 0x066a +#define PCM_SAMPLE_RATE 0x066b +#define PCM_VOL_OUT_LL 0x066c +#define PCM_VOL_OUT_RL 0x066d +#define PCM_VOL_OUT_LR 0x066e +#define PCM_VOL_OUT_RR 0x066f +#define PCM_VOL_IN_LL 0x0670 +#define PCM_VOL_IN_RL 0x0671 +#define PCM_VOL_IN_LR 0x0672 +#define PCM_VOL_IN_RR 0x0673 + +#define IRQ3 (*((volatile unsigned long*)0x0900010C)) + +#define LOW_WATER_CHUNKSIZE (256*1024) + +/* declarations */ + +struct riff_header +{ + uint8_t riff_id[4]; /* 00h - "RIFF" */ + uint32_t riff_size; /* 04h - sz following headers + data_size */ + /* format header */ + uint8_t format[4]; /* 08h - "WAVE" */ + uint8_t format_id[4]; /* 0Ch - "fmt " */ + uint32_t format_size; /* 10h - 16 for PCM (sz format data) */ + /* format data */ + uint16_t audio_format; /* 14h - 1=PCM */ + uint16_t num_channels; /* 16h - 1=M, 2=S, etc. */ + uint32_t sample_rate; /* 18h - HZ */ + uint32_t byte_rate; /* 1Ch - num_channels*sample_rate*bits_per_sample/8 */ + uint16_t block_align; /* 20h - num_channels*bits_per_samples/8 */ + uint16_t bits_per_sample; /* 22h - 8=8 bits, 16=16 bits, etc. */ + /* Not for audio_format=1 (PCM) */ +/* unsigned short extra_param_size; 24h - size of extra data */ +/* unsigned char *extra_params; */ + /* data header */ + uint8_t data_id[4]; /* 24h - "data" */ + uint32_t data_size; /* 28h - num_samples*num_channels*bits_per_sample/8 */ +/* unsigned char *data; 2ch - actual sound data */ +} __attribute__((packed)); + +#define RIFF_FMT_HEADER_SIZE 12 /* format -> format_size */ +#define RIFF_FMT_DATA_SIZE 16 /* audio_format -> bits_per_sample */ +#define RIFF_DATA_HEADER_SIZE 8 /* data_id -> data_size */ + +#define PCM_DEPTH_BYTES 2 +#define PCM_DEPTH_BITS 16 + +enum { + SRC_LINE = 0, + SRC_MIC, +#ifdef HAVE_SPDIF_IN + SRC_SPDIF, +#endif + NUM_SRC, +}; + +void rec_tick(void) __attribute__((interrupt_handler)); + +/* variables */ + +static struct plugin_api *rb; + +/* settings */ +struct rec_config { + int samplerate; /* index */ + int channels; + int source; +}; + +struct rec_config reccfg_disk = { 7, 1, 0 }; +struct rec_config reccfg; /* running config */ + +static const char cfg_filename[] = "wavrecord.cfg"; +static char *samplerate_str[9] = { "8000", "11025", "12000", + "16000", "22050", "24000", + "32000", "44100", "48000" }; +static char *channel_str[2] = { "mono", "stereo" }; +static char *source_str[NUM_SRC] = { "line in", "mic", +#ifdef HAVE_SPDIF_IN + "spdif", +#endif + }; + +struct configdata disk_config[] = { + { TYPE_ENUM, 0, 9, &reccfg_disk.samplerate, "sample rate", samplerate_str, NULL }, + { TYPE_ENUM, 0, 2, &reccfg_disk.channels, "channels", channel_str, NULL }, + { TYPE_ENUM, 0, NUM_SRC, &reccfg_disk.source, "source", source_str, NULL }, +}; + +static char recfilename[MAX_PATH]; +static const char recbasedir[] = REC_BASE_DIRECTORY; + +static unsigned char *aud_buf; +static ssize_t aud_size; +static unsigned char *plug_buf; + +static int aud_read = 0; +static volatile int aud_write = 0; +static volatile int num_rec_bytes = 0; + +static const struct riff_header header_template = +{ + /* "RIFF" header */ + { 'R', 'I', 'F', 'F' }, /* riff_id */ + 0, /* riff_size (*) */ + /* format header */ + { 'W', 'A', 'V', 'E' }, /* format */ + { 'f', 'm', 't', ' ' }, /* format_id */ + H_TO_LE32(16), /* format_size */ + /* format data */ + H_TO_LE16(1), /* audio_format */ + 0, /* num_channels (*) */ + 0, /* sample_rate (*) */ + 0, /* byte_rate (*) */ + 0, /* block_align (*) */ + H_TO_LE16(PCM_DEPTH_BITS), /* bits_per_sample */ + /* data header */ + { 'd', 'a', 't', 'a' }, /* data_id */ + 0 /* data_size (*) */ + /* (*) updated during ENC_END_FILE event */ +}; + +/** i2c, MAS configuration **/ + +void i2c_random_write(int addr, int cmd, const unsigned char* data, int size) +{ + plug_buf[0] = cmd; + rb->memcpy(plug_buf+1, data, size); + + rb->i2c_begin(); + rb->i2c_write(addr, plug_buf, size+1); + rb->i2c_end(); +} + +void mas_freeze(void) +{ + static const unsigned char freeze[] = { 0x00, 0x00 }; + + /* Freeze DSP */ + i2c_random_write(MAS_ADR, MAS_DATA_WRITE, freeze, sizeof(freeze)); + /* mas_run(0); in core implementation */ + + /* stop all internal transfers */ + rb->mas_writereg(0x3b, 0x00318); /* stopdma 1 */ + rb->mas_writereg(0x43, 0x00300); /* stopdma 2 */ + rb->mas_writereg(0x4b, 0); /* stopdma 3 */ + rb->mas_writereg(0x53, 0x00318); /* stopdma 4 */ + rb->mas_writereg(0x6b, 0); /* stopdma 5 */ + rb->mas_writereg(0xbb, 0x00318); /* stopdma 6 */ + rb->mas_writereg(0xc3, 0x00300); /* stopdma 7 */ + rb->mas_writereg(0x06, 0); /* stopdma 8 */ +} + +void mas_download_pcm(void) +{ + static const unsigned char runi2s[] = { 0x10, 0x00 }; + unsigned i; + + mas_freeze(); + + /* Download program to MAS memory */ + for ( i = 0; i < (sizeof(maspcm)/sizeof(struct i2c_block)); i++ ) + i2c_random_write(MAS_ADR, MAS_DATA_WRITE, maspcm[i].data, maspcm[i].len); + + rb->mas_writereg(0x6b, 0xc0000); /* Reconfigure data to program memory */ + + /* Start execution at D0:1000 */ + i2c_random_write(MAS_ADR, MAS_DATA_WRITE, runi2s, sizeof(runi2s)); + /* mas_run(0x1000); in core implementation */ +} + +void mas_restore(void) +{ + static const unsigned char resetdsp[] = { 0x88, 0x00 }; + static const unsigned char initdsp[] = { 0x8c, 0x00 }; + unsigned long val; + + i2c_random_write(MAS_ADR, MAS_CONTROL, resetdsp, sizeof(resetdsp)); + /* mas_direct_config_write(MAS_CONTROL, 0x8d00); in core implementation */ + rb->sleep(1); + i2c_random_write(MAS_ADR, MAS_CONTROL, initdsp, sizeof(initdsp)); + /* mas_direct_config_write(MAS_CONTROL, 0x8c00); in core implementation */ + + /* Stop the current application */ + val = 0; + rb->mas_writemem(MAS_BANK_D0, MAS_D0_APP_SELECT, &val, 1); + do + rb->mas_readmem(MAS_BANK_D0, MAS_D0_APP_RUNNING, &val, 1); + while(val); + +#ifdef HAVE_SPDIF_OUT + val = 0x0009; /* Disable SDO and SDI, low impedance S/PDIF outputs */ +#else + val = 0x002d; /* Disable SDO and SDI, disable S/PDIF output */ +#endif + rb->mas_writemem(MAS_BANK_D0, MAS_D0_INTERFACE_CONTROL, &val, 1); + + val = 0x0025; /* Set Demand mode and validate all settings */ + rb->mas_writemem(MAS_BANK_D0, MAS_D0_IO_CONTROL_MAIN, &val, 1); + + val = 0x000c; /* Start the Layer2/3 decoder applications */ + rb->mas_writemem(MAS_BANK_D0, MAS_D0_APP_SELECT, &val, 1); + do + rb->mas_readmem(MAS_BANK_D0, MAS_D0_APP_RUNNING, &val, 1); + while((val & 0x000c) != 0x000c); +} + +/** Very basic recording engine **/ + +void rec_tick(void) +{ + int d1, d2, d3; + + ICR |= 0x0010; /* Begin with setting the IRQ to edge sensitive */ + + if(!(PADRH & 0x80)) + { /* /EOD is low - transfer 36 bytes (9 sample pairs, 1 MASPCM DMA block) */ + asm volatile ( + "add %[buf], %[writ] \n" /* write pos -> addr */ + "mov #9, %[i] \n" /* block size = 9*4 */ + + ".r_loop: \n" + "xor.b #0x08, @(r0,gbr) \n" /* set PR active */ + ".r_wait1: \n" + "mov.b @%[pbdh], %[scrt] \n" /* wait for RTW */ + "cmp/pz %[scrt] \n" + "bf .r_wait1 \n" + + "mov.b @%[mas], %[data] \n" /* read data from MAS */ + "xor.b #0x08, @(r0,gbr) \n" /* set PR inactive */ + "extu.b %[data], %[data] \n" + + "xor.b #0x08, @(r0,gbr) \n" /* set PR active */ + ".r_wait2: \n" + "mov.b @%[pbdh], %[scrt] \n" /* wait for RTW */ + "cmp/pz %[scrt] \n" + "bf .r_wait2 \n" + + "mov.b @%[mas], %[scrt] \n" /* read data from MAS */ + "xor.b #0x08, @(r0,gbr) \n" /* set PR inactive */ + "shll8 %[data] \n" + "extu.b %[scrt], %[scrt] \n" + "or %[scrt], %[data] \n" + + "xor.b #0x08, @(r0,gbr) \n" /* set PR active */ + ".r_wait3: \n" + "mov.b @%[pbdh], %[scrt] \n" /* wait for RTW */ + "cmp/pz %[scrt] \n" + "bf .r_wait3 \n" + + "mov.b @%[mas], %[scrt] \n" /* read data from MAS */ + "xor.b #0x08, @(r0,gbr) \n" /* set PR inactive */ + "shll8 %[data] \n" + "extu.b %[scrt], %[scrt] \n" + "or %[scrt], %[data] \n" + + "xor.b #0x08, @(r0,gbr) \n" /* set PR active */ + ".r_wait4: \n" + "mov.b @%[pbdh], %[scrt] \n" /* wait for RTW */ + "cmp/pz %[scrt] \n" + "bf .r_wait4 \n" + + "mov.b @%[mas], %[scrt] \n" /* read data from MAS */ + "xor.b #0x08, @(r0,gbr) \n" /* set PR inactive */ + "shll8 %[data] \n" + "extu.b %[scrt], %[scrt] \n" + "or %[scrt], %[data] \n" + + "mov.l %[data], @%[writ] \n" + + "add #4, %[writ] \n" /* advance buffer pointer */ + "cmp/hi %[writ], %[end] \n" + "bt .r_nowrap \n" + "mov %[buf], %[writ] \n" /* wrap if necessary */ + ".r_nowrap: \n" + + "add #-1, %[i] \n" /* count down block size */ + "cmp/pl %[i] \n" /* exit if zero */ + "bt .r_loop \n" + + ".r_end: \n" + "sub %[buf], %[writ] \n" /* eddr -> write pos */ + : /* outputs */ + [writ]"+r"(aud_write), + [i] "=&r"(d1), + [data]"=&r"(d2), + [scrt]"=&r"(d3) + : /* inputs */ + [buf] "r"(aud_buf), + [end] "r"(aud_buf + aud_size), + [padh]"z"(PADRH_ADDR), + [pbdh]"r"(PBDRH_ADDR), + [mas] "r"(0x04000000) + ); + num_rec_bytes += 36; + } +} + +void rec_tick_enable(bool on) +{ + int oldlevel = set_irq_level(HIGHEST_IRQ_LEVEL); + + if(on) + { + IPRA = (IPRA & 0xfff0) | 0x000b; + ICR &= ~0x0010; /* IRQ3 level sensitive */ + IPRB &= 0xff0f; /* Disable IRQ6 */ + } + else + { + IPRA &= 0xfff0; + ICR &= ~0x0002; /* Set IRQ6 to level sensitive and back again. */ + ICR |= 0x0002; /* This will clear a pending request. */ + IPRB = (IPRB & 0xff0f) | 0x0080; /* Reenable IRQ6 */ + } + + set_irq_level(oldlevel); +} + +void hijack_interrupts(bool on) +{ + static bool taken = false; + static unsigned long orig_IRQ3; + + if (on && !taken) + { + orig_IRQ3 = IRQ3; + IRQ3 = (unsigned long)rec_tick; + } + else if (!on && taken) + { + IRQ3 = orig_IRQ3; + } + taken = on; +} + +static bool update_wav_header(char *filename, int sample_rate, + int num_channels, int num_bytes) +{ + struct riff_header hdr; + int fd; + bool ret; + + fd = rb->open(filename, O_RDWR); + if (fd < 0) + return false; + + rb->memcpy(&hdr, &header_template, sizeof (struct riff_header)); + + /* "RIFF" header */ + hdr.riff_size = htole32(RIFF_FMT_HEADER_SIZE + RIFF_FMT_DATA_SIZE + + RIFF_DATA_HEADER_SIZE + num_bytes); + + /* format data */ + hdr.num_channels = htole16(num_channels); + hdr.sample_rate = htole32(sample_rate); + hdr.byte_rate = htole32(sample_rate * num_channels * PCM_DEPTH_BYTES); + hdr.block_align = htole16(num_channels * PCM_DEPTH_BYTES); + + /* data header */ + hdr.data_size = htole32(num_bytes); + + ret = (rb->write(fd, &hdr, sizeof (struct riff_header)) + == sizeof (struct riff_header)); + rb->close(fd); + return ret; +} + +static int record_file(char *filename) +{ + bool recording, saving; + char buf[32]; + int fd, low_water, i; + int bytes_written; + int button; + unsigned long mas; + + static const unsigned sampr[9][2] = { + {0, 8000}, {1, 11025}, {2, 12000}, + {4, 16000}, {5, 22050}, {6, 24000}, + {8, 32000}, {9, 44100}, {10, 48000} + }; + + fd = rb->open(filename, O_RDWR|O_CREAT|O_TRUNC); + if (fd < 0) + { + rb->splash(2*HZ, "Couldn't create WAV file"); + return PLUGIN_ERROR; + } + /* write template header */ + if (rb->write(fd, &header_template, sizeof (struct riff_header)) + != sizeof (struct riff_header)) + { + rb->close(fd); + rb->splash(2*HZ, "Write error"); + return PLUGIN_ERROR; + } + + rb->sound_set_pitch(1000); /* reset pitch */ + mas_download_pcm(); + num_rec_bytes = 0; + bytes_written = 0; + + rb->lcd_clear_display(); + rb->lcd_puts(0, 0, filename); + rb->snprintf(buf, sizeof(buf), "%sHz 16bit %s", + samplerate_str[reccfg.samplerate], channel_str[reccfg.channels]); + rb->lcd_puts(0, 1, buf); + rb->lcd_update(); + + switch (reccfg.source) + { + case SRC_LINE: + rb->mas_codec_writereg(0, (rb->global_settings->rec_left_gain << 12) + | (rb->global_settings->rec_right_gain << 8) + | 0x07); + rb->mas_codec_writereg(8, 0); + break; + + case SRC_MIC: + rb->mas_codec_writereg(0, (rb->global_settings->rec_mic_gain << 4) + | 0x0d); + rb->mas_codec_writereg(8, 0x8000); /* Copy left channel to right */ + break; + +#ifdef HAVE_SPDIF_IN + case SRC_SPDIF: + rb->mas_codec_writereg(0, 0x01); + break; +#endif + } + + mas = 0x0060 /* no framing, little endian */ + | ((reccfg.channels == 0) ? 0x10 : 0) /* mono/stereo */ + | sampr[reccfg.samplerate][0]; + rb->mas_writemem(MAS_BANK_D0, PCM_SAMPLE_RATE, &mas, 1); + +#ifdef HAVE_SPDIF_OUT + mas = 0x0009; /* Disable SDO and SDI, low impedance S/PDIF outputs */ +#else + mas = 0x002d; /* Disable SDO and SDI, disable S/PDIF output */ +#endif + rb->mas_writemem(MAS_BANK_D0, PCM_IF_STATUS_CONTROL, &mas, 1); + +#ifdef HAVE_SPDIF_IN + if (reccfg.source == SRC_SPDIF) + mas = 0x2225; /* recording, S/PDIF input, validate */ + else +#endif + mas = 0x2125; /* recording, ADC input, validate */ + rb->mas_writemem(MAS_BANK_D0, PCM_MAIN_IO_CONTROL, &mas, 1); + + hijack_interrupts(true); + rec_tick_enable(true); + recording = true; + saving = false; + low_water = 5 /* seconds */ + * PCM_DEPTH_BYTES + * sampr[reccfg.samplerate][1] /* samples per second */ + * (reccfg.channels + 1); + + while (recording || saving) + { + int to_save, write_now, result; + + if (saving) + { + to_save = num_rec_bytes - bytes_written; + if (to_save > aud_size) + { + rec_tick_enable(false); +#ifdef HAVE_MMC + rb->splash(HZ, "Data overrun (slow MMC)"); +#else + rb->splash(HZ, "Data overrun"); +#endif + recording = false; + saving = false; + break; + } + write_now = MIN(to_save, aud_size - aud_read); +#ifdef HAVE_MMC + write_now = MIN(write_now, 256*1024); +#else + write_now = MIN(write_now, 1024*1024); +#endif + result = rb->write(fd, aud_buf + aud_read, write_now); + if (result < 0) + { + rec_tick_enable(false); + rb->splash(HZ, "Write error"); + recording = false; + saving = false; + break; + } + bytes_written += result; + if (result != write_now) + { + rec_tick_enable(false); + rb->splash(HZ, "Disk full"); + recording = false; + saving = false; + break; + } + if (bytes_written >= 0x7fe00000) + { + rec_tick_enable(false); + rb->splash(HZ, "Max file size reached"); + recording = false; + saving = false; + break; + } + aud_read += write_now; + if (aud_read == aud_size) + aud_read = 0; + + if (to_save == write_now) + saving = false; + + rb->yield(); + button = rb->button_get(false); + } + else + { + button = rb->button_get_w_tmo(HZ/2); + if (aud_size - (num_rec_bytes - bytes_written) < low_water) + saving = true; + } + if (button == BUTTON_OFF) + { + rec_tick_enable(false); + recording = false; + saving = true; + } + rb->snprintf(buf, sizeof(buf), "Bytes: %d", num_rec_bytes); + rb->lcd_puts(0, 2, buf); + rb->lcd_update(); + } + /* read sample rate from MAS */ + rb->mas_readmem(MAS_BANK_D0, PCM_SAMPLE_RATE_STATUS, &mas, 1); + rb->close(fd); + + hijack_interrupts(false); + mas_restore(); + rb->sound_set(SOUND_CHANNELS, rb->global_settings->channel_config); + rb->sound_set(SOUND_STEREO_WIDTH, rb->global_settings->stereo_width); + + for (i = 0; i < 9; i++) + { + if (sampr[i][0] == mas) + break; + } + if (!(update_wav_header(filename, sampr[i][1], + (reccfg.channels + 1), bytes_written))) + { + rb->splash(HZ, "Updating WAV header failed"); + } + + return PLUGIN_OK; +} + +static int recording_menu(void) +{ + int result; + int rc = 0; + bool done = false; + + static const struct opt_items freqs[9] = { + { "8000Hz", -1 }, + { "11025Hz", -1 }, + { "12000Hz", -1 }, + { "16000Hz", -1 }, + { "22050Hz", -1 }, + { "24000Hz", -1 }, + { "32000Hz", -1 }, + { "44100Hz", -1 }, + { "48000Hz", -1 }, + }; + static const struct opt_items chans[2] = { + { "Mono", -1 }, + { "Stereo", -1 }, + }; + static const struct opt_items srcs[NUM_SRC] = { + { "Line In", -1 }, + { "Microphone", -1 }, +#ifdef HAVE_SPDIF_IN + { "S/PDIF", -1 }, +#endif + }; + + MENUITEM_STRINGLIST(menu, "WAV Recording", NULL, "Set sample rate", + "Set channels", "Set Source", "Start recording", "Quit"); + + while (!done) + { + rb->do_menu(&menu, &result); + switch (result) + { + case 0: /* Set sample rate */ + rb->set_option("Sample rate", &reccfg.samplerate, INT, freqs, 9, NULL); + break; + + case 1: /* Set channels */ + rb->set_option("Channels", &reccfg.channels, INT, chans, 2, NULL); + break; + + case 2: /* Set source */ + rb->set_option("Source", &reccfg.source, INT, srcs, NUM_SRC, NULL); + break; + + case 3: /* Start recording */ + rb->create_numbered_filename(recfilename, recbasedir, "rec_", + ".wav", 4 IF_CNFN_NUM_(, NULL)); + rc = record_file(recfilename); + done = true; + break; + + case 4: /* Quit */ + rc = PLUGIN_OK; + done = true; + break; + + case MENU_ATTACHED_USB: + rc = PLUGIN_USB_CONNECTED; + done = true; + break; + } + } + return rc; +} + +/* plugin entry point */ +enum plugin_status plugin_start(struct plugin_api* api, void* parameter) +{ + ssize_t buf_size; + int align; + int rc; + DIR *dir; + + (void)parameter; + rb = api; + + plug_buf = rb->plugin_get_buffer(&buf_size); + if (buf_size < 6700) /* needed for i2c transfer */ + { + rb->splash(HZ, "Out of memory."); + return PLUGIN_ERROR; + } + + if ((dir = rb->opendir(recbasedir)) == NULL) + { + rc = rb->mkdir(recbasedir); + if (rc < 0) + { + rb->splash(HZ*2, "Can't create the %s directory. Error code %d.", + recbasedir, rc); + return PLUGIN_ERROR; + } + } + else + { + rb->closedir(dir); + } + + aud_buf = rb->plugin_get_audio_buffer((size_t *)&aud_size); + align = (-(long)aud_buf) & 3; + aud_buf += align; + aud_size -= align; + aud_size &= ~3; + + configfile_init(rb); + configfile_load(cfg_filename, disk_config, + sizeof(disk_config) / sizeof(disk_config[0]), + CFGFILE_MINVERSION); + rb->memcpy(&reccfg, &reccfg_disk, sizeof(reccfg)); /* copy to running config */ + + rc = recording_menu(); + + if (rb->memcmp(&reccfg, &reccfg_disk, sizeof(reccfg))) /* save settings if changed */ + { + rb->memcpy(&reccfg_disk, &reccfg, sizeof(reccfg)); + configfile_save(cfg_filename, disk_config, + sizeof(disk_config) / sizeof(disk_config[0]), + CFGFILE_VERSION); + } + return rc; + +#if 0 +#ifdef HAVE_MMC + return record_file("//test.wav"); +#else + return record_file("/test.wav"); +#endif +#endif +} -- cgit v1.2.3