From 0c09f3ee88278c3f2fb79bfd8e3cca3eb8669156 Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Sun, 26 Mar 2006 23:00:24 +0000 Subject: WAV playback as a plugin, for archos recorders and Ondios. Plays 16-bit WAV files with all common sample frequencies, both mono and stereo. Meant as a preview for later PCM playback integration, and for doing experiments with the MAS PCM codec. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9273 a1c6a512-1295-4272-9138-f99709370657 --- apps/filetypes.c | 2 +- apps/plugin.c | 6 + apps/plugin.h | 12 +- apps/plugins/SOURCES | 4 + apps/plugins/viewers.config | 1 + apps/plugins/vu_meter.c | 2 +- apps/plugins/wavplay.c | 3680 +++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 3702 insertions(+), 5 deletions(-) create mode 100755 apps/plugins/wavplay.c diff --git a/apps/filetypes.c b/apps/filetypes.c index 0f9f0c790a..9bb1475a1f 100644 --- a/apps/filetypes.c +++ b/apps/filetypes.c @@ -44,7 +44,7 @@ #if CONFIG_CODEC == SWCODEC #define MAX_FILETYPES 64 #else -#define MAX_FILETYPES 32 +#define MAX_FILETYPES 40 #endif /* max exttypes (extensions stored here) */ diff --git a/apps/plugin.c b/apps/plugin.c index f78644f73b..d69fbfc3aa 100644 --- a/apps/plugin.c +++ b/apps/plugin.c @@ -33,6 +33,7 @@ #include "logf.h" #include "screens.h" #include "misc.h" +#include "i2c.h" #include "mas.h" #include "plugin.h" #include "lang.h" @@ -403,6 +404,11 @@ static const struct plugin_api rockbox_api = { /* new stuff at the end, sort into place next time the API gets incompatible */ set_sound, +#if ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) && !defined(SIMULATOR) + i2c_begin, + i2c_end, + i2c_write, +#endif }; int plugin_load(const char* plugin, void* parameter) diff --git a/apps/plugin.h b/apps/plugin.h index 4db3f1e33f..a2182d6f9b 100644 --- a/apps/plugin.h +++ b/apps/plugin.h @@ -50,9 +50,11 @@ #include "profile.h" #endif #include "misc.h" -#if (HWCODEC == SWCODEC) +#if (CONFIG_CODEC == SWCODEC) #include "pcm_playback.h" #include "dsp.h" +#else +#include "mas.h" #endif #include "settings.h" #include "timer.h" @@ -99,7 +101,7 @@ #define PLUGIN_MAGIC 0x526F634B /* RocK */ /* increase this every time the api struct changes */ -#define PLUGIN_API_VERSION 15 +#define PLUGIN_API_VERSION 16 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any @@ -472,7 +474,11 @@ struct plugin_api { the API gets incompatible */ bool (*set_sound)(const unsigned char * string, int* variable, int setting); - +#if ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) && !defined(SIMULATOR) + void (*i2c_begin)(void); + void (*i2c_end)(void); + int (*i2c_write)(int address, unsigned char* buf, int count ); +#endif }; /* plugin header */ diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES index 68d7929b81..7c24dabe74 100644 --- a/apps/plugins/SOURCES +++ b/apps/plugins/SOURCES @@ -23,6 +23,10 @@ stopwatch.c vbrfix.c viewer.c +#if ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) && !defined(SIMULATOR) +wavplay.c +#endif + #ifndef IRIVER_IFP7XX_SERIES /* Temporarily disable plugins for iFP7xx */ dice.c #ifdef HAVE_LCD_BITMAP /* Not for the Player */ diff --git a/apps/plugins/viewers.config b/apps/plugins/viewers.config index ccaea9d633..a4dcc3695b 100644 --- a/apps/plugins/viewers.config +++ b/apps/plugins/viewers.config @@ -15,3 +15,4 @@ rsp,viewers/searchengine, 0e 11 11 31 7e 60 ss,rocks/sudoku, 55 55 55 55 55 55 wav,viewers/wav2wv, 00 00 00 00 00 00 wav,viewers/mp3_encoder, 00 00 00 00 00 00 +wav,viewers/wavplay,60 7F 05 35 3F 00 \ No newline at end of file diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c index de0c4667bc..d903f97146 100644 --- a/apps/plugins/vu_meter.c +++ b/apps/plugins/vu_meter.c @@ -142,7 +142,7 @@ int last_num_right_leds; int i; -#define MAX_PEAK 0x7FFF +#define MAX_PEAK 0x8000 struct saved_settings { int meter_type; diff --git a/apps/plugins/wavplay.c b/apps/plugins/wavplay.c new file mode 100755 index 0000000000..2d88ebc40d --- /dev/null +++ b/apps/plugins/wavplay.c @@ -0,0 +1,3680 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2006 Jörg Hohensohn + * + * 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" + +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 WAVPLAY_QUIT BUTTON_OFF + +#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 IRQ6 (*((volatile unsigned long*)0x09000118)) +#define DEI3 (*((volatile unsigned long*)0x09000138)) + +#define PLAY_OK 0 +#define PLAY_ERROR -1 +#define PLAY_GOT_USB 1 + +#define LOW_WATER_CHUNKSIZE (256*1024) + +/* declarations */ + +void start_demand_isr(void) __attribute__((interrupt_handler)); +void stop_demand_isr(void) __attribute__((interrupt_handler)); +void dma_end_isr(void) __attribute__((interrupt_handler)); + +/* variables */ + +static struct plugin_api *rb; + +static unsigned char *aud_buf; +static int aud_size; +static unsigned char *plug_buf; + +static void (*pcm_callback)(unsigned char**, int*) = NULL; +static bool playing = false; +static bool filling; +static int last_dma_chunksize; +static int aud_read = 0; +static int aud_write = 0; +static int low_water = (256*1024); + +/** 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); +} + +void pcm_channel_config(int channel_config, int stereo_width) +{ + /* default values: stereo */ + unsigned long val_ll = 0x80001; + unsigned long val_lr = 0; + unsigned long val_rl = 0; + unsigned long val_rr = 0x80001; + + switch(channel_config) + { + /* Note: cases are in different order that in firmware/sound.c + * to work around a gcc bug (jumptable creation)! */ + + /* case SOUND_CHAN_STEREO unnecessary */ + + case SOUND_CHAN_MONO: + val_ll = 0xc0001; + val_lr = 0xc0001; + val_rl = 0xc0001; + val_rr = 0xc0001; + break; + + case SOUND_CHAN_MONO_LEFT: + val_ll = 0x80001; + val_lr = 0x80001; + val_rl = 0; + val_rr = 0; + break; + + case SOUND_CHAN_MONO_RIGHT: + val_ll = 0; + val_lr = 0; + val_rl = 0x80001; + val_rr = 0x80001; + break; + + case SOUND_CHAN_KARAOKE: + val_ll = 0xc0001; + val_lr = 0x3ffff; + val_rl = 0x3ffff; + val_rr = 0xc0001; + break; + + case SOUND_CHAN_CUSTOM: + { + /* fixed point variables (matching MAS internal format) + integer part: upper 13 bits (inlcuding sign) + fractional part: lower 19 bits */ + long fp_width, fp_straight, fp_cross; + + fp_width = (stereo_width * 0x7ffff) / 100; + if (stereo_width <= 100) + { + fp_straight = - (0x7ffff + fp_width) / 2; + fp_cross = fp_straight + fp_width; + } + else + { + /* straight = - (1 + width) / (2 * width) */ + fp_straight = - (((0x7ffff + fp_width) / (fp_width >> 9)) << 9); + fp_cross = 0x7ffff + fp_straight; + } + val_ll = val_rr = fp_straight & 0xfffff; + val_lr = val_rl = fp_cross & 0xfffff; + } + break; + + } + + rb->mas_writemem(MAS_BANK_D0, PCM_VOL_OUT_LL, &val_ll, 1); /* LL */ + rb->mas_writemem(MAS_BANK_D0, PCM_VOL_OUT_LR, &val_lr, 1); /* LR */ + rb->mas_writemem(MAS_BANK_D0, PCM_VOL_OUT_RL, &val_rl, 1); /* RL */ + rb->mas_writemem(MAS_BANK_D0, PCM_VOL_OUT_RR, &val_rr, 1); /* RR */ +} + +/** Basic playback system **/ + +void start_demand_isr(void) +{ + ICR |= 0x0010; /* IRQ3 edge sensitive */ + or_b(0x80, &SCR0); +} + +void stop_demand_isr(void) +{ + and_b(~0x80, &SCR0); +} + +void dma_end_isr(void) +{ + unsigned char* start; + int size = 0; + + if (pcm_callback) + pcm_callback(&start, &size); + + if (size > 0) + { + DTCR3 = size; + SAR3 = (unsigned int) start; + } + else + { + CHCR3 &= ~0x0001; /* Disable the DMA interrupt */ + playing = false; + } + CHCR3 &= ~0x0002; /* Clear DMA interrupt */ +} + +void demand_irq_enable(bool on) +{ + int oldlevel = set_irq_level(HIGHEST_IRQ_LEVEL); + + if(on) + { + IPRA = (IPRA & 0xfff0) | 0x000b; + ICR &= ~0x0010; /* IRQ3 level sensitive */ + } + else + { + IPRA &= 0xfff0; + } + + set_irq_level(oldlevel); +} + +static inline int available(void) +{ + int space = aud_write - aud_read; + if (space < 0) + space += aud_size; + + return space; +} + +void pcm_get_more(unsigned char** start, int* size) +{ + int advance; + + aud_read += last_dma_chunksize; + if (aud_read >= aud_size) + aud_read = 0; + + advance = MIN(available(), aud_size - aud_read); + advance = MIN(0x4000, advance); + + *start = aud_buf + aud_read; + *size = advance; + + last_dma_chunksize = advance; +} + +void pcm_start(void) +{ + int advance; + + advance = MIN(available(), aud_size - aud_read); + advance = MIN(0x4000, advance); + + if (!advance) + return; + + pcm_callback = pcm_get_more; + + /* init DMA */ + DAR3 = 0x5FFFEC3; + CHCR3 &= ~0x0002; /* Clear interrupt */ + CHCR3 = 0x1504; /* Single address destination, TXI0, IE=1 */ + DMAOR = 0x0001; /* Enable DMA */ + + SAR3 = (unsigned int)(aud_buf + aud_read); + DTCR3 = advance; + last_dma_chunksize = advance; + + playing = true; + demand_irq_enable(true); + CHCR3 |= 0x0001; /* Enable DMA IRQ */ +} + +void hijack_interrupts(bool on) +{ + static bool taken = false; + static unsigned long orig_DEI3, orig_IRQ3, orig_IRQ6; + + if (on && !taken) + { + orig_IRQ3 = IRQ3; + IRQ3 = (unsigned long)start_demand_isr; + orig_IRQ6 = IRQ6; + IRQ6 = (unsigned long)stop_demand_isr; + orig_DEI3 = DEI3; + DEI3 = (unsigned long)dma_end_isr; + } + else if (!on && taken) + { + IRQ3 = orig_IRQ3; + IRQ6 = orig_IRQ6; + DEI3 = orig_DEI3; + } + taken = on; +} + +void cleanup(void *fd) +{ + demand_irq_enable(false); + 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); + + /* reconfigure SCI */ + while (!(SSR0 & SCI_TEND)); /* wait for end of transfer */ + BRR0 = 2; /* ~1 MBit/s */ + + rb->close(*(int*)fd); +} + +int play_file(char* filename) +{ + char buf[32]; + int button; + int fd; + int wanted, got; + unsigned format, channels, samplerate, samplebits, bytes, time; + unsigned rate = 0; + unsigned long mas; + + fd = rb->open(filename, O_RDONLY); + if (fd < 0) + { + rb->splash(2*HZ, true, "Couldn't open WAV file"); + return PLAY_ERROR; + } + + /* Process WAV header */ + wanted = 44; + got = rb->read(fd, aud_buf, wanted); /* wav header */ + if (got < 0) + { + rb->splash(2*HZ, true, "Read error"); + rb->close(fd); + return PLAY_ERROR; + } + else if (got < wanted) + { + rb->splash(2*HZ, true, "File too short"); + rb->close(fd); + return PLAY_ERROR; + } + + if (rb->memcmp(aud_buf, "RIFF", 4) + || rb->memcmp(aud_buf + 8, "WAVE", 4) + || rb->memcmp(aud_buf + 12, "fmt ", 4) + || rb->memcmp(aud_buf + 36, "data", 4)) + { + rb->splash(2*HZ, true, "No canonical WAV file"); + rb->close(fd); + return PLAY_ERROR; + } + + format = letoh16(*(uint16_t *)(aud_buf + 20)); + if (format != 1) + { + rb->splash(2*HZ, true, "Unsupported format: %d", format); + rb->close(fd); + return PLAY_ERROR; + } + + channels = letoh16(*(uint16_t *)(aud_buf + 22)); + if (channels > 2) + { + rb->splash(2*HZ, true, "Too many channels: %d", channels); + rb->close(fd); + return PLAY_ERROR; + } + + samplebits = letoh16(*(uint16_t *)(aud_buf + 34)); + if (samplebits != 16) + { + rb->splash(2*HZ, true, "Unsupported sample depth: %dbit", samplebits); + rb->close(fd); + return PLAY_ERROR; + } + + samplerate = letoh32(*(uint32_t *)(aud_buf + 24)); + switch (samplerate) + { + case 8000: rate = 0; break; + case 11025: rate = 1; break; + case 12000: rate = 2; break; + case 16000: rate = 4; break; + case 22050: rate = 5; break; + case 24000: rate = 6; break; + case 32000: rate = 8; break; + case 44100: rate = 9; break; + case 48000: rate = 10; break; + default: + rb->splash(2*HZ, true, "Unsupported samplerate: %dHz", samplerate); + rb->close(fd); + return PLAY_ERROR; + } + bytes = letoh32(*(uint32_t *)(aud_buf + 40)); + time = bytes / (samplerate * 2 * channels); + + rb->lcd_puts(0, 0, "Playing WAV file"); + rb->snprintf(buf, sizeof(buf), "%dHz %s", samplerate, + (channels == 1) ? "mono" : "stereo"); + rb->lcd_puts(0, 1, buf); + rb->snprintf(buf, sizeof(buf), "Length: %d:%02d", time / 60, time % 60); + rb->lcd_puts(0, 2, buf); + rb->lcd_update(); + + rb->sound_set_pitch(1000); /* reset pitch */ + mas_download_pcm(); /* Download PCM codec */ + + /* Configure PCM codec */ + pcm_channel_config(rb->global_settings->channel_config, + rb->global_settings->stereo_width); +#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); + + mas = 0x0060 /* no framing, little endian */ + | ((channels == 1) ? 0x10 : 0) /* mono or stereo */ + | rate; /* bitrate */ + rb->mas_writemem(MAS_BANK_D0, PCM_SAMPLE_RATE, &mas, 1); + + mas = 0x1025; /* playback, SIBC clock invert, validate */ + rb->mas_writemem(MAS_BANK_D0, PCM_MAIN_IO_CONTROL, &mas, 1); + + /* configure SCI */ + while (!(SSR0 & SCI_TEND)); /* wait for end of transfer */ + BRR0 = 0; /* maximum speed, ~3 MBit/s */ + +#ifndef HAVE_MMC + low_water = 5 /* seconds */ + * 2 /* bytes per sample */ + * channels + * samplerate; +#endif + + hijack_interrupts(true); + filling = true; + + /* Playback loop */ + while (filling || playing) + { + if (filling) + { + int free_space = aud_read - aud_write; + + if (free_space <= 0) + free_space += aud_size; + free_space -= 2; + + if (free_space <= 0) + { + filling = false; + rb->ata_sleep(); + } + else + { + wanted = MIN(free_space, aud_size - aud_write); +#ifdef HAVE_MMC + wanted = MIN(wanted, 256*1024); +#elif MEM == 8 + wanted = MIN(wanted, 1024*1024); +#endif + if (available() < low_water) + wanted = MIN(wanted, LOW_WATER_CHUNKSIZE); + + got = rb->read(fd, aud_buf + aud_write, wanted); + + if (got > 0) + { + rb->bitswap(aud_buf + aud_write, got); + + aud_write += got; + if (aud_write >= aud_size) + aud_write = 0; + } + else /* end of file */ + { + filling = false; + } + + if (((available() >= low_water) || !filling) && !playing) + pcm_start(); + } + button = rb->button_get(false); + } + else + { + button = rb->button_get_w_tmo(HZ/2); + if ((available() < low_water) && (got > 0)) + filling = true; + } + if (button == WAVPLAY_QUIT) + break; + else if (rb->default_event_handler_ex(button, cleanup, &fd) == SYS_USB_CONNECTED) + return PLAY_GOT_USB; + + + } + cleanup(&fd); + return PLAY_OK; +} + +/* plugin entry point */ +enum plugin_status plugin_start(struct plugin_api* api, void* parameter) +{ + int buf_size; + + rb = api; + + if (!parameter) + { + rb->splash(HZ, true, "Play WAV file!"); + return PLUGIN_OK; + } + + plug_buf = rb->plugin_get_buffer(&buf_size); + if (buf_size < 6700) /* needed for i2c transfer */ + { + rb->splash(HZ, true, "Out of memory."); + return PLUGIN_ERROR; + } + + aud_buf = rb->plugin_get_audio_buffer(&aud_size); + + switch (play_file((char*)parameter)) + { + case PLAY_OK: + return PLUGIN_OK; + case PLAY_GOT_USB: + return PLUGIN_USB_CONNECTED; + default: + return PLUGIN_ERROR; + } +} -- cgit v1.2.3