Questa scheda ha a bordo l'encoder MP3 VS1011, il connettore per la memoria MMC/SD, il connettore per lo scambio di dati via seriale con il PIC ed il connettore per l'alimentazione.
Sono, inoltre, presenti sulla scheda tutti i componenti necessari al funzionamento dell'encoder.
#include <p18cxxx.h>
#include <player1011esci.h>
#include <spi.h>
// carica il programma nel VS
void LoadUserCode(void) {
int i;
for (i=0;i<CODE_SIZE;i++) {
WriteVS10xxRegister(atab[i], dtab[i]);
}
}
// scrive una istruzione nel VS
void WriteVS10xxRegister(unsigned char adr, unsigned int cmd)
{
// XCS goes low (active state)
LATCbits.LATC0=0;
// writes "WRITE" command to VS1011
WriteSPI(VS_SCI_WRITE);
// writes address byte
WriteSPI(adr);
// writes MSbyte
WriteSPI(cmd >> 8);
// writes LSbyte
WriteSPI(cmd & 0x00ff);
// XCS goes high (inactive state)
LATCbits.LATC0=1;
// loop while DREQ == 0 (DREQ is on RC2)
while(PORTCbits.RC2 == 0)
;
return;
}
// start VS execution
void StartVS(void)
{
// init SCI CLOCKF register (see vs1011.pdf, page 32, Example 1: For a 12.288MHz XTALI with clock doubler)
WriteVS10xxRegister(VS_REG_CLOCKF, 0x9800);
// init SCI VOL register: set initial volume to half range
// (from 0-max volume to 0xFE-min volume; NOTE: 0xFF will activate analog powerdown mode)
// see vs1011.pdf, page 35, SCI VOL (RW) Register
VolumeVS(0x7F);
// start code execution
WriteVS10xxRegister(VS_REG_AIADDR, 0x0030);
}
// set VS output volume
// see vs1011.pdf, page 35, SCI VOL (RW) Register
void VolumeVS (unsigned char vol)
{
unsigned int v_stereo;
v_stereo = vol;
v_stereo <<= 8;
v_stereo += vol;
WriteVS10xxRegister(VS_REG_VOL, vol);
}
// set VS Song Number
// see standalone.pdf, page 13
void SongVS(unsigned int track)
{
track += 0x8000;
WriteVS10xxRegister(VS_REG_AICTRL0, track);
}
// ----
//#define CODE_SIZE 2364
rom const unsigned char atab[CODE_SIZE] = { /* Register addresses */
0x7, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x7, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6,
0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x7, 0x6
};
rom const unsigned short dtab[CODE_SIZE] = { /* Data to write */
0x8010, 0x2000, 0x0000, 0x0012, 0x0000, 0x2800, 0x4d80, 0x3e12,
0x3805, 0x2900, 0x1880, 0x0000, 0x3fc5, 0x3602, 0x0024, 0x2000,
0x0000, 0xb500, 0x9bc5, 0x8030, 0x2919, 0xb7c0, 0x0000, 0x0490,
0x2917, 0xfdc0, 0x0000, 0x0010, 0x0000, 0x0041, 0x2800, 0xa280,
0x0000, 0x0056, 0x2800, 0xa280, 0x0000, 0x0001, 0x3e13, 0xb80f,
0x0000, 0x0055, 0x0030, 0x0497, 0x3f75, 0x780d, 0x0000, 0x03ce,
0x2400, 0x114e, 0x0000, 0x0024, 0x2800, 0x1040, 0x0000, 0x02d5,
0x3f05, 0x4024, 0x2800, 0x1100, 0x0000, 0x00d5, 0x3f05, 0x4024,
0x3009, 0x1bcd, 0x2000, 0x0000, 0x36f3, 0x980f, 0x0000, 0x0401,
0x3e11, 0xb804, 0x0000, 0x0244, 0x0000, 0x0046, 0x3e13, 0x7805,
0x419a, 0x380e, 0x4cc2, 0xb80f, 0x0030, 0x0497, 0x2400, 0x1605,
0x0fff, 0xff45, 0x0000, 0x0024, 0x3f60, 0x4024, 0x3710, 0x4024,
0x3f01, 0x0024, 0xa152, 0x0024, 0x8cc2, 0x3e46, 0x36f3, 0x980f,
0x36f3, 0x5805, 0x2000, 0x0000, 0x36f1, 0x9804, 0x6492, 0xb808,
0x2900, 0x1880, 0x6198, 0x3844, 0x3009, 0x1808, 0x4082, 0x1804,
0x0005, 0x0015, 0xf240, 0x3814, 0xf400, 0x4014, 0x3583, 0x3801,
0x3510, 0x4024, 0x0000, 0x0204, 0x2800, 0x1ad1, 0x3500, 0x0024,
0xac42, 0x0024, 0x0000, 0x0020, 0x6848, 0x4800, 0xac42, 0x1814,
0x2000, 0x0000, 0xc100, 0x9bc1, 0x0001, 0xe197, 0x3e00, 0x5c00,
0x000f, 0xd641, 0xfe10, 0x0024, 0x0008, 0xd4c0, 0x4cb2, 0x0024,
0x2000, 0x0000, 0x36f0, 0x7c00, 0x3e12, 0xb817, 0x3e12, 0x3815,
0x3e05, 0xb814, 0x3615, 0x0024, 0x0000, 0x800a, 0x3e10, 0x7802,
0x3e10, 0xf804, 0x3e11, 0x7806, 0x3e11, 0xf810, 0x3e14, 0x7813,
0x3e13, 0xf80e, 0x3e03, 0x4842, 0x2800, 0x49c0, 0xb88a, 0x8bc3,
0x2900, 0x04c0, 0x4588, 0x184c, 0x408e, 0x0024, 0x0000, 0x3940,
0x2800, 0x47c5, 0x6700, 0x0024, 0x0000, 0x02c1, 0x2800, 0x4205,
0x0000, 0x0024, 0x2900, 0x04c0, 0x4518, 0x184c, 0x0000, 0x0401,
0xb010, 0x0024, 0x0000, 0x0b80, 0x2800, 0x2cc5, 0x6700, 0x0024,
0x0000, 0x0501, 0x2800, 0x2cc5, 0x0000, 0x0024, 0x0000, 0x0686,
0x4518, 0x184c, 0x3009, 0x3852, 0x3e10, 0xf802, 0x3009, 0x3852,
0x2900, 0x1880, 0x3009, 0x3840, 0xb284, 0x984c, 0x2900, 0x1880,
0x4568, 0x4003, 0xb182, 0x134c, 0x2900, 0xdf00, 0x4dc6, 0x10d2,
0x34d3, 0x1bcc, 0x3600, 0xd802, 0x3e10, 0x0024, 0x2900, 0x1e00,
0x3434, 0x8024, 0x4080, 0x1bcc, 0x3009, 0x1812, 0x2800, 0x2c58,
0x4d82, 0x0024, 0x2800, 0x4a80, 0xc890, 0x1bcc, 0x2900, 0xf580,
0x0000, 0x4208, 0x0000, 0x02c1, 0x2900, 0x04c0, 0x4518, 0x184c,
0x0000, 0x3781, 0xb010, 0x0024, 0x0000, 0x0024, 0x2800, 0x4215,
0x0000, 0x0024, 0x0000, 0x0206, 0x2900, 0x1740, 0x4568, 0x184c,
0x2900, 0xfe00, 0x3613, 0x0024, 0x4080, 0x0024, 0x0000, 0x4001,
0x2800, 0x4205, 0x0000, 0x0024, 0x0030, 0x03d0, 0x3000, 0x0024,
0xb010, 0x0024, 0x0000, 0x0024, 0x2800, 0x3885, 0xf152, 0x0024,
0x0000, 0x014e, 0x0000, 0x0000, 0x0005, 0x0006, 0x4162, 0x0024,
0xf400, 0x4051, 0x003f, 0xc006, 0x3153, 0x0024, 0x3100, 0x4024,
0xb16c, 0x0024, 0x39b1, 0x8024, 0x2400, 0x360e, 0x0001, 0xe010,
0x3111, 0x8041, 0xd162, 0x0024, 0xc010, 0x0024, 0x4080, 0x0024,
0x0000, 0x0184, 0x2800, 0x3895, 0x0000, 0x0024, 0x0004, 0xe613,
0x3300, 0x4024, 0x0030, 0x0313, 0x2800, 0x3a80, 0x3b00, 0x4024,
0x0004, 0xe610, 0x30f1, 0x0024, 0x6498, 0x0040, 0x4090, 0x23c4,
0x6090, 0x2000, 0x0000, 0x0024, 0x2800, 0x4215, 0x0000, 0x0024,
0x0005, 0x0001, 0xf150, 0x0024, 0x0001, 0xe010, 0x0000, 0x014e,
0x4010, 0x0024, 0xf400, 0x4011, 0x2400, 0x3c8e, 0x3110, 0x0024,
0x3110, 0x2040, 0x0004, 0xe253, 0x0000, 0x0706, 0x2900, 0x1740,
0x4568, 0x984c, 0x0000, 0x0686, 0x3b10, 0x184c, 0x3bf0, 0x7802,
0x0000, 0x0501, 0x4518, 0x3843, 0x0000, 0x0001, 0x3009, 0x3852,
0x2900, 0x1880, 0x3009, 0x3840, 0xb284, 0x984c, 0x2900, 0x1880,
0x4568, 0x4003, 0x4dc6, 0x0024, 0x2900, 0xdf00, 0x0001, 0xe1d2,
0x2800, 0x4a80, 0xc890, 0x9b92, 0xf400, 0x4145, 0x0000, 0x0801,
0x451a, 0x0024, 0x0000, 0x7fc1, 0xb51a, 0x0024, 0x458a, 0x0024,
0x0000, 0x0024, 0x2800, 0x2195, 0x0000, 0x0024, 0x6d96, 0x4490,
0x3023, 0x0024, 0x3009, 0x0000, 0x4090, 0x0024, 0x3009, 0x2000,
0x2800, 0x49d5, 0x0000, 0x0024, 0x30f3, 0x08cc, 0x3009, 0x03c1,
0x4180, 0x8842, 0x3009, 0x0bc3, 0x2800, 0x49d8, 0x0000, 0x0024,
0x32d3, 0x0024, 0x0030, 0x03d0, 0x003f, 0xbfc1, 0x0004, 0xe611,
0x3000, 0x0024, 0xb012, 0x0024, 0x3800, 0x4024, 0x2800, 0x4a80,
0x3100, 0x0024, 0x4d82, 0x184c, 0x2900, 0xf580, 0x0000, 0x2188,
0x36f3, 0x4024, 0x36f3, 0xd80e, 0x36f4, 0x5813, 0x36f1, 0xd810,
0x36f1, 0x5806, 0x36f0, 0xd804, 0x36f0, 0x5802, 0x3405, 0x9014,
0x36f3, 0x0024, 0x36f2, 0x1815, 0x2000, 0x0000, 0x36f2, 0x9817,
0x3613, 0x0024, 0x3e12, 0xb817, 0x3e12, 0x3815, 0x3e05, 0xb814,
0x3625, 0x0024, 0x0000, 0x800a, 0x3e10, 0x3801, 0x0000, 0x0401,
0x3e10, 0xb803, 0x3e11, 0x3805, 0x3e11, 0xb807, 0x3e14, 0x3811,
0x0004, 0xe390, 0x0030, 0x03d1, 0x3e14, 0xb813, 0x3e13, 0xf80e,
0x3e03, 0x4024, 0x3001, 0x4024, 0x3100, 0x0024, 0xb010, 0x0024,
0x0000, 0x0024, 0x2800, 0x54c5, 0x458a, 0x0024, 0x0000, 0x0024,
0x2800, 0x5605, 0x0000, 0x0024, 0x0004, 0xe3d2, 0x2800, 0x5600,
0xb88a, 0x2805, 0x0000, 0x0024, 0x2800, 0x5615, 0x0000, 0x0024,
0x0004, 0xe3d2, 0x3201, 0x4024, 0x0020, 0x0001, 0x31d3, 0x0024,
0x3100, 0x0024, 0xb010, 0x0024, 0x0000, 0x0024, 0x2800, 0x5c85,
0x4590, 0x0024, 0x3100, 0x184c, 0xf292, 0x0024, 0xb012, 0x0024,
0x3930, 0x4024, 0x003f, 0xe9c1, 0x3100, 0x0024, 0xb012, 0x0024,
0x2900, 0x0e40, 0x3900, 0x4024, 0x0000, 0x404e, 0x2400, 0x5b8e,
0x0000, 0x0024, 0x0000, 0x0401, 0x2900, 0x1280, 0xc890, 0x184c,
0x0000, 0x0024, 0x2900, 0x0d80, 0x0000, 0x4084, 0x4590, 0x0024,
0x0000, 0x0181, 0x2800, 0x6215, 0x0030, 0x03d0, 0x0000, 0x0085,
0x0004, 0xe250, 0x0004, 0xe451, 0x3010, 0x0024, 0x30f0, 0x4024,
0x0004, 0xe590, 0x6c92, 0x0024, 0x0000, 0x0020, 0xf2c2, 0x0024,
0x3910, 0x0024, 0x0001, 0xe1c0, 0x39f0, 0x4024, 0x0001, 0xe1d1,
0x38d0, 0x0440, 0x3810, 0x0441, 0x3810, 0x4400, 0x0000, 0x0181,
0x3800, 0x0024, 0x0030, 0x03d0, 0x3000, 0x0024, 0xb010, 0x0024,
0x0000, 0x0081, 0x6012, 0x0024, 0x001d, 0x9941, 0x2800, 0x67d5,
0x0000, 0x0024, 0x30a3, 0x0024, 0x3000, 0x0024, 0x6012, 0x0024,
0x0000, 0x0024, 0x2800, 0x67d5, 0x0000, 0x0024, 0x0030, 0x0110,
0x0004, 0xe651, 0x3000, 0x0024, 0x3100, 0x4024, 0x6014, 0x0024,
0x0000, 0x0024, 0x2800, 0x67c1, 0x0000, 0x0024, 0x3100, 0x0024,
0x3800, 0x0024, 0x0000, 0x0080, 0x6500, 0x0024, 0x001f, 0xffc1,
0x2800, 0x6c55, 0x0000, 0x0024, 0x0004, 0xe412, 0x0004, 0xe4d0,
0x0004, 0xe691, 0x0000, 0x00c5, 0x3011, 0x984c, 0x30f1, 0xf800,
0x4890, 0x0024, 0xbfce, 0x0401, 0xaf1e, 0x0024, 0x2901, 0x0280,
0x0000, 0x1442, 0x0000, 0x0000, 0x3a00, 0x0024, 0x0000, 0x00c0,
0x6500, 0x0024, 0x0000, 0x0100, 0x2800, 0x7495, 0x0000, 0x0201,
0x003f, 0xc000, 0x2900, 0x1280, 0x3613, 0x0024, 0xf400, 0x4004,
0x0000, 0x3f80, 0x6400, 0x0024, 0x0000, 0x3fc0, 0x2800, 0x7155,
0x0000, 0x0024, 0x0000, 0x0105, 0x0004, 0xe410, 0xb880, 0x984c,
0x3800, 0x0024, 0x2901, 0x0bc0, 0x0000, 0x9e08, 0x6400, 0x0024,
0x0000, 0x0024, 0x2800, 0x8a55, 0x0000, 0x0024, 0x0004, 0xe410,
0x3000, 0x0024, 0x6090, 0x0024, 0x4080, 0x2000, 0x0000, 0x0024,
0x2800, 0x9e18, 0x0000, 0x0024, 0x2900, 0x0d80, 0x0000, 0x9e08,
0x6500, 0x0024, 0x0000, 0x0140, 0x2800, 0x9395, 0x0000, 0xf601,
0x2919, 0xf980, 0x3613, 0x0024, 0x6012, 0x0024, 0x0004, 0xe450,
0x2800, 0x8898, 0x0000, 0x0024, 0x3010, 0x0024, 0x30f0, 0x4024,
0x4c82, 0x0024, 0x0000, 0x0024, 0x2800, 0x8889, 0x0000, 0x0024,
0x0000, 0x0802, 0x0000, 0x2c90, 0x0000, 0x0041, 0x0004, 0xe451,
0x3111, 0x8012, 0xfe22, 0x07c7, 0x48b2, 0x0024, 0x6cfe, 0x0024,
0x0000, 0x0004, 0x2800, 0x7bc9, 0x6420, 0x0024, 0xb888, 0x0442,
0x6420, 0x07c3, 0x0000, 0x0024, 0x2800, 0x8018, 0x4290, 0x0024,
0x2400, 0x7fc0, 0x0000, 0x0024, 0x0000, 0x0401, 0x2900, 0x1280,
0xc890, 0x184c, 0x0006, 0x0001, 0x3a10, 0x0024, 0xf400, 0x4480,
0x6016, 0x0024, 0x0000, 0x0024, 0x2800, 0x7fd1, 0x0000, 0x0024,
0x0005, 0x0012, 0x6498, 0x0024, 0x0000, 0x2c90, 0x0000, 0x0041,
0x0004, 0xe451, 0x0004, 0xe413, 0x3111, 0xa012, 0xfe22, 0x07c7,
0x6fb2, 0x0024, 0x3910, 0x0024, 0x39f0, 0x4024, 0x0000, 0x0801,
0x3300, 0x0024, 0x4012, 0x0024, 0x0000, 0x4000, 0x6100, 0x2c01,
0x0000, 0x0401, 0x2800, 0x8548, 0x0000, 0x0024, 0x0000, 0x0085,
0xc890, 0x184c, 0x2900, 0x1280, 0x0000, 0x8888, 0x0000, 0xf601,
0x2919, 0xf980, 0x3613, 0x0024, 0x6012, 0x0024, 0x0004, 0xe450,
0x2800, 0x8898, 0x0000, 0x0024, 0x3010, 0x0024, 0x30f0, 0x4024,
0x4c82, 0x0024, 0x0000, 0x0024, 0x2800, 0x7899, 0x0000, 0x0024,
0x0004, 0xe450, 0x3010, 0x0024, 0x30f0, 0x4024, 0x4c82, 0x0024,
0x0000, 0x0024, 0x2800, 0x9e19, 0x0000, 0x0024, 0x0000, 0x404e,
0x2400, 0x8bce, 0x0000, 0x0024, 0x0000, 0x0401, 0x2900, 0x1280,
0xc890, 0x184c, 0x0000, 0x0024, 0x0000, 0x0180, 0x0030, 0x03d0,
0x2900, 0x0e40, 0x3613, 0x0024, 0x3001, 0x0024, 0xb408, 0x0024,
0x0000, 0x0080, 0x6400, 0x0024, 0x0000, 0x0180, 0x2800, 0x9015,
0x0004, 0xe652, 0x0030, 0x0111, 0x689a, 0x0400, 0x6090, 0x0024,
0x2800, 0x9e00, 0x3a00, 0x0024, 0x6400, 0x0024, 0x0000, 0x1401,
0x2800, 0x9215, 0x0000, 0x0024, 0x3000, 0x0024, 0xc012, 0x0024,
0x2800, 0x9e00, 0x3800, 0x4024, 0x0000, 0x0145, 0x6892, 0x034c,
0x3000, 0x0024, 0x4012, 0x0024, 0x2800, 0x9e00, 0x3800, 0x4024,
0x6500, 0x0024, 0x0000, 0x0024, 0x2800, 0x9e15, 0x0000, 0x0024,
0x2919, 0xf980, 0x3613, 0x0024, 0x6012, 0x0024, 0x0002, 0x4001,
0x2800, 0x9a58, 0x0004, 0xe410, 0x0000, 0x2c90, 0x0000, 0x07ce,
0x2400, 0x994e, 0xb884, 0x8012, 0xf400, 0x4480, 0x0005, 0xffc1,
0x6016, 0x2842, 0x0004, 0xe410, 0x2800, 0x98d1, 0x0000, 0x2c91,
0x0005, 0x0012, 0x3000, 0x2412, 0x6090, 0x0024, 0x3800, 0x0024,
0x0004, 0xe410, 0x0002, 0x4001, 0x0000, 0x0804, 0x3000, 0x0024,
0x6012, 0x0024, 0x0000, 0x404e, 0x2800, 0x9e08, 0x0000, 0x0024,
0x2400, 0x9cce, 0x0000, 0x0024, 0x0000, 0x0401, 0x2900, 0x1280,
0xc890, 0x184c, 0x0000, 0x0024, 0x2900, 0x0e40, 0x3613, 0x0024,
0x2900, 0x0d80, 0x0000, 0x0024, 0x0030, 0x0490, 0x0000, 0x0000,
0x0004, 0xe391, 0x3800, 0x0024, 0x3901, 0x4024, 0x36f3, 0x4024,
0x36f3, 0xd80e, 0x36f4, 0x9813, 0x36f4, 0x1811, 0x36f1, 0x9807,
0x36f1, 0x1805, 0x36f0, 0x9803, 0x36f0, 0x1801, 0x3405, 0x9014,
0x36f3, 0x0024, 0x36f2, 0x1815, 0x2000, 0x0000, 0x36f2, 0x9817,
0x003f, 0xfdc3, 0x0030, 0x0652, 0x0030, 0x0350, 0x0030, 0x0011,
0x3e05, 0xb814, 0x3615, 0x0024, 0x0000, 0x800a, 0xb880, 0x0024,
0x2900, 0x0400, 0x3800, 0x0024, 0x3100, 0x8024, 0xb234, 0x0024,
0xc020, 0x0024, 0x4182, 0x2400, 0x0000, 0x02c0, 0x3ae0, 0x0024,
0x3a00, 0x0024, 0x2800, 0xa845, 0x0001, 0xe193, 0x2910, 0x2180,
0x3613, 0x0c04, 0x2800, 0xad00, 0x3009, 0x2c04, 0x0000, 0x2cd0,
0x0001, 0x0002, 0x0002, 0x0004, 0x0000, 0x2d13, 0x2910, 0x9e40,
0x3613, 0x0024, 0xb880, 0x184c, 0x3e10, 0xac00, 0x0005, 0x0013,
0x0002, 0x0000, 0xb886, 0xa013, 0x0000, 0x2c90, 0x3e10, 0xe013,
0x0000, 0x2d90, 0x3e11, 0x2000, 0x0000, 0x2d50, 0x2919, 0x6880,
0x3009, 0x2000, 0x36d3, 0x0024, 0x2913, 0xbbc0, 0x3613, 0x0024,
0x2911, 0x2200, 0x3613, 0x0024, 0x2913, 0x1400, 0x3613, 0x0024,
0x4182, 0x0024, 0x0000, 0x0024, 0x2800, 0xb085, 0x0000, 0x0024,
0x0000, 0x7d05, 0x6898, 0x184c, 0x2910, 0x3e40, 0x0000, 0xb1c8,
0x003f, 0xfdc2, 0x3113, 0x0024, 0x3100, 0x0024, 0xb024, 0x0024,
0x3900, 0x8024, 0xb880, 0x094c, 0x2911, 0x5440, 0x3a00, 0x184c,
0x0000, 0x7fce, 0x2400, 0xb3ce, 0x0000, 0x0024, 0x2900, 0x0e40,
0x3613, 0x0024, 0x0000, 0x0024, 0x0000, 0x1002, 0x2901, 0x0280,
0xbf8e, 0x184c, 0x4090, 0x4004, 0x0000, 0x0024, 0x2800, 0xb295,
0x0000, 0x0024, 0x0000, 0x1045, 0x0000, 0x1202, 0x0000, 0x4886,
0x2901, 0x0280, 0xb88e, 0x184c, 0x4090, 0x0024, 0x0000, 0x0024,
0x2800, 0xb855, 0x0000, 0x0024, 0x0000, 0x1a45, 0x0000, 0x1a40,
0x6500, 0x184c, 0x0000, 0x0024, 0x2800, 0xbb55, 0xbf8e, 0x0024,
0x3009, 0x3842, 0x2901, 0x0280, 0x0000, 0x1dc2, 0x0010, 0x0007,
0xb88c, 0x4142, 0x2901, 0x0280, 0x0000, 0xbbc8, 0x2901, 0x0280,
0xbf8e, 0x4142, 0x4084, 0x0024, 0x0000, 0x0240, 0x2800, 0xbf85,
0x6498, 0x0024, 0x000b, 0xb803, 0x6436, 0x4100, 0x0000, 0x0024,
0x2800, 0xb298, 0x0000, 0x0024, 0x4290, 0x0024, 0x0000, 0x0024,
0x2800, 0xb845, 0x0000, 0x0024, 0x2800, 0xb280, 0x0000, 0x0024,
0x0004, 0xe690, 0x3800, 0x0024, 0x0000, 0x1a40, 0x6500, 0x0024,
0x0000, 0x9184, 0x2800, 0xc5d5, 0x0000, 0x0024, 0x0000, 0x1e82,
0x2901, 0x0280, 0xbf8e, 0x184c, 0x4080, 0x0024, 0x0000, 0x0024,
0x2800, 0xc5d5, 0x0000, 0x0024, 0x0010, 0x0002, 0xc890, 0x184c,
0x3009, 0x3841, 0x2900, 0x1280, 0x0000, 0x0401, 0xb020, 0x9bc1,
0x0000, 0x0000, 0x2800, 0xc5c5, 0x0000, 0x0024, 0x0000, 0x0184,
0x3800, 0x0024, 0x0000, 0xf610, 0x4480, 0x184c, 0x2917, 0xfdc0,
0xb882, 0xb801, 0x2901, 0x10c0, 0x3009, 0x1801, 0x4080, 0x0024,
0x0030, 0x03d0, 0x2800, 0xd995, 0x0000, 0x0024, 0x0000, 0x0802,
0x3000, 0x0024, 0xb020, 0x0024, 0x0000, 0x0024, 0x2800, 0xca45,
0x0000, 0x0024, 0x2800, 0xcb00, 0xf290, 0x038c, 0x003f, 0xffc4,
0x2901, 0x2800, 0x3613, 0x038c, 0x6894, 0x2080, 0x3000, 0x0024,
0xb020, 0x0024, 0x0000, 0x0080, 0x2800, 0xd205, 0x0000, 0x0024,
0x30e3, 0x0024, 0x3000, 0xc024, 0x6300, 0x0024, 0x0004, 0xe6d0,
0x2800, 0xd211, 0x0000, 0x0024, 0x0001, 0xe191, 0x2900, 0x1c00,
0x3613, 0x0024, 0x4084, 0x0000, 0x4204, 0x8400, 0x4080, 0x0024,
0x0000, 0x0024, 0x2800, 0xd115, 0x6230, 0x0024, 0x3001, 0x0024,
0x4430, 0x0024, 0x6230, 0x2000, 0x0030, 0x0312, 0x2800, 0xce01,
0x0004, 0xe6d0, 0x3a00, 0x8024, 0x0030, 0x0310, 0xf298, 0x0002,
0xb244, 0x984c, 0x2901, 0x2800, 0x4288, 0x2002, 0x4080, 0x0024,
0x0000, 0x0024, 0x2800, 0xd998, 0x0000, 0x0024, 0x0000, 0x0182,
0x3033, 0x0024, 0x3000, 0x0024, 0xb020, 0x0024, 0x0000, 0x0102,
0x6024, 0x0024, 0x0004, 0xe391, 0x2800, 0xd7d5, 0x003f, 0xefc2,
0x0000, 0x0402, 0x3000, 0x0024, 0xc024, 0x0024, 0x3800, 0x8024,
0x003f, 0xefc2, 0x3000, 0x0024, 0xb020, 0x0024, 0x0000, 0x0202,
0xc020, 0x0024, 0x6890, 0x2000, 0x2800, 0xda80, 0x3900, 0x0024,
0x0030, 0x0310, 0xb880, 0x0024, 0x2900, 0x0d80, 0x3800, 0x0024,
0x0000, 0x0940, 0x0030, 0x0690, 0x0030, 0x0111, 0x0004, 0xe652,
0xb880, 0x2000, 0x3900, 0x0024, 0x3a00, 0x0024, 0x2912, 0x2240,
0x3613, 0x0024, 0x4080, 0x184c, 0x0000, 0x0024, 0x2800, 0xde95,
0x0000, 0x0024, 0x2919, 0x46c0, 0x0000, 0xdc48, 0x3613, 0x0024,
0x2911, 0x5440, 0x0000, 0xdc48, 0x3e10, 0x7807, 0x3e12, 0x380a,
0x3e11, 0x3805, 0x3e14, 0xf811, 0x0004, 0xe2d1, 0x31a0, 0x084c,
0x2800, 0xe9c0, 0xb182, 0x3806, 0x6d96, 0x05c0, 0x4080, 0x184c,
0x0003, 0xffc7, 0x2800, 0xe345, 0x3223, 0x050c, 0x2900, 0x1740,
0x489c, 0x44c4, 0x2800, 0xe500, 0xbcfe, 0x0640, 0x2900, 0x1880,
0x478a, 0x44c4, 0x6098, 0x0024, 0x0000, 0x0001, 0x2800, 0xe515,
0x4c8e, 0x0640, 0x489c, 0x4147, 0x3009, 0x0804, 0x4408, 0x070c,
0x4408, 0xab84, 0x0000, 0x0024, 0x2800, 0xe701, 0x6fda, 0x0401,
0x0000, 0x0024, 0x2800, 0xed05, 0x4f86, 0x0024, 0x4898, 0x05cc,
0x0003, 0xffc5, 0x6fea, 0x4480, 0x0001, 0xfd84, 0x2800, 0xf345,
0x6048, 0x084c, 0x3143, 0x0024, 0x2800, 0xf358, 0xb182, 0x0680,
0x3233, 0x0024, 0xffb0, 0x084c, 0x48ba, 0xab81, 0xffa0, 0x0440,
0x44ba, 0x05c1, 0x4ce2, 0x0684, 0x000c, 0x8c45, 0x645a, 0xa840,
0x0000, 0x0024, 0x2800, 0xef95, 0x3193, 0x2bc1, 0xc998, 0x088c,
0x2800, 0xf340, 0x3009, 0x2bc4, 0x4182, 0x44c6, 0x0000, 0x0080,
0x2800, 0xee45, 0x460c, 0x0024, 0x460c, 0x0024, 0x0000, 0x7fc0,
0xb60c, 0x0024, 0xf400, 0x4193, 0x2800, 0xe115, 0x0000, 0x0024,
0x0000, 0x3fc6, 0xb26c, 0x0440, 0x4080, 0x184c, 0x0fff, 0xfe04,
0x2800, 0xf205, 0x0000, 0x0021, 0x0000, 0x1fc6, 0xb26c, 0x0024,
0x466c, 0x0024, 0x0fff, 0xfe44, 0xad42, 0x0444, 0x466c, 0x0785,
0x4ce2, 0x4193, 0x2900, 0xf580, 0x0000, 0xe108, 0x36f1, 0x8884,
0x0020, 0x0005, 0xc458, 0x4480, 0x32e3, 0x1811, 0x36f4, 0xe804,
0x36f1, 0x1805, 0x36f2, 0x180a, 0x2000, 0x0000, 0x36f0, 0x5807,
0x3e10, 0xb806, 0x3e12, 0x380a, 0x0000, 0x0246, 0x4112, 0xb812,
0xf212, 0x3847, 0x3e13, 0xf80e, 0xac6e, 0x388d, 0x2901, 0x0280,
0x0000, 0x1442, 0x0003, 0xe807, 0x003f, 0xc000, 0x2900, 0x1280,
0x0000, 0x0201, 0x479e, 0x0024, 0x0005, 0x0012, 0x2800, 0xfc04,
0x0000, 0x3fc2, 0x6024, 0x184c, 0x0000, 0x0024, 0x2800, 0xf805,
0x0000, 0x3fce, 0x2400, 0xfbce, 0x36f3, 0x0024, 0x2900, 0x1240,
0xc090, 0x984c, 0x3a10, 0x0024, 0x2900, 0x1240, 0xc090, 0x180d,
0x2900, 0x0e40, 0x3603, 0xd80e, 0x36f1, 0xd812, 0x36f2, 0x180a,
0x2000, 0x0000, 0x36f0, 0x9806, 0x4c87, 0xe2e3, 0x0000, 0x3fc1,
0xb316, 0x0024, 0x0001, 0x01d5, 0xf400, 0x5544, 0x4c82, 0x0024,
0x0000, 0x0024, 0x2801, 0x0145, 0x0000, 0x0024, 0xdcd2, 0x0024,
0x0000, 0x0024, 0x2800, 0xff15, 0x0fff, 0xffc0, 0x2000, 0x0000,
0x36f0, 0x9803, 0x0033, 0x504d, 0x0056, 0x4157, 0x0000, 0x0000,
0x3e10, 0x7803, 0x3e24, 0x3808, 0x2900, 0x0e40, 0x0030, 0x0650,
0x2900, 0x0e40, 0xf296, 0x984c, 0xf236, 0x0000, 0x0fff, 0xff41,
0xb012, 0x0024, 0xf236, 0x2001, 0x003f, 0xc000, 0x2900, 0x1280,
0x0000, 0x0201, 0x0000, 0x0201, 0x2900, 0x1280, 0xa210, 0x184c,
0x2900, 0x1240, 0x4780, 0x184c, 0x2900, 0x1240, 0x4680, 0x188c,
0x0000, 0x0201, 0x2900, 0x1280, 0x0025, 0x4000, 0x2801, 0x0940,
0x0001, 0xf402, 0x2900, 0x1280, 0x4680, 0x184c, 0x4294, 0x0024,
0x0000, 0x2006, 0x2801, 0x0b05, 0xb06c, 0x0024, 0x003f, 0xc006,
0x2801, 0x08d5, 0x0000, 0x0201, 0x36f4, 0x1808, 0x2000, 0x0000,
0x36f0, 0x5803, 0x0004, 0xe4d5, 0x3510, 0x3842, 0x3510, 0x7803,
0x6c96, 0x1780, 0x4090, 0x3442, 0x3009, 0x1bc2, 0x2801, 0x1055,
0x3d10, 0xdbc3, 0x35e3, 0x0024, 0x3510, 0x0024, 0x3520, 0x4024,
0x4c82, 0x1417, 0x0000, 0x0024, 0x2000, 0x0008, 0xcc92, 0x1ccc,
0x3dd5, 0xdc41, 0x3d10, 0x5c41, 0x3d10, 0x5c00, 0x2000, 0x0000,
0xbc82, 0x3400, 0x3e11, 0xf812, 0x3e10, 0x7802, 0x3e10, 0xf804,
0x3e11, 0x7806, 0x0004, 0xe1d2, 0xbc82, 0x380a, 0x3a10, 0x3888,
0x2900, 0xf580, 0x3af0, 0x4024, 0x2900, 0x1740, 0x0000, 0x0d84,
0x0010, 0x5184, 0x000c, 0x5505, 0x6ce2, 0x18cc, 0x0000, 0x0024,
0x2801, 0x1745, 0x000c, 0xd505, 0x2900, 0x1740, 0x0000, 0x1484,
0x0010, 0x5184, 0x6ce2, 0x184c, 0x0000, 0x0024, 0x2801, 0x1745,
0x0000, 0x7184, 0x2900, 0x1740, 0x3613, 0x0024, 0x3a10, 0x0024,
0x2900, 0xf580, 0x3a50, 0x4024, 0x2900, 0x1880, 0x0000, 0x0e44,
0x3af0, 0x0024, 0x2900, 0x1880, 0x0000, 0x0444, 0x408e, 0x2a40,
0x0000, 0x02c4, 0x2801, 0x1a85, 0x6892, 0x0acc, 0xb882, 0x0024,
0x2900, 0x1880, 0x3a70, 0x584c, 0x0000, 0x2001, 0xff82, 0x090c,
0x48b2, 0x184c, 0x2900, 0x04c0, 0x0000, 0x0344, 0xff90, 0x4046,
0x48b6, 0x984c, 0x3ac0, 0x8024, 0x2900, 0x1880, 0x0000, 0x0384,
0x3211, 0x0024, 0xffe0, 0x0a45, 0x4eb2, 0x184c, 0x3a10, 0x0024,
0xb182, 0x2841, 0x2900, 0x1880, 0x0000, 0x0584, 0x4080, 0x2840,
0x3ac0, 0x584c, 0x2801, 0x2255, 0x3230, 0x0024, 0x4080, 0x1bcc,
0x0000, 0x0904, 0x2801, 0x2685, 0x0000, 0x02c0, 0x2900, 0x1740,
0x3613, 0x0024, 0x3a10, 0x184c, 0x3af0, 0x4024, 0x2900, 0x04c0,
0x0000, 0x0404, 0xffe0, 0x0842, 0x48ba, 0x0b43, 0xffb8, 0x4103,
0x48b2, 0x0844, 0xffa6, 0x09c5, 0x40b2, 0x888c, 0x4cea, 0x0a42,
0xb182, 0x41c0, 0x0fff, 0xff07, 0xac72, 0x4043, 0x4ce2, 0x0bcc,
0x4224, 0x2844, 0x6cd2, 0x2845, 0xb880, 0x2840, 0x3a00, 0x4024,
0x36f2, 0x9808, 0x36f1, 0x5806, 0x36f0, 0xd804, 0x36f0, 0x5802,
0x2000, 0x0000, 0x36f1, 0xd812, 0x3e10, 0x7802, 0x3e12, 0x3810,
0x3e10, 0xf812, 0x0004, 0xe012, 0x3230, 0x0024, 0x4080, 0xb851,
0x0001, 0xe1d1, 0x2801, 0x2b45, 0x0020, 0x0003, 0x0000, 0x0082,
0xb886, 0x4452, 0x2900, 0xdf00, 0x0001, 0x2e08, 0x3210, 0x1bcc,
0x3260, 0x4024, 0xc132, 0x088c, 0x3200, 0x8024, 0xf224, 0xa440,
0xb182, 0xa7c1, 0xf224, 0x4450, 0xf224, 0x00cc, 0xf224, 0xa3c1,
0x3009, 0x2082, 0xf400, 0x4400, 0x0004, 0xe5d5, 0xf400, 0x4452,
0xb884, 0x3444, 0x3d00, 0x8024, 0x2900, 0x1e00, 0x3e10, 0x0024,
0x3009, 0x1bd1, 0x36f0, 0xd812, 0x36f2, 0x1810, 0x2000, 0x0000,
0x36f0, 0x5802, 0x139b, 0x0000
};