kopia lustrzana https://github.com/Jean-MarcHarvengt/MCUME
add Vic20 emu for Teensy41 and add USB keyboard support to c64 emu
rodzic
7da55b5657
commit
babf855c4e
Plik diff jest za duży
Load Diff
Plik diff jest za duży
Load Diff
Plik diff jest za duży
Load Diff
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,361 @@
|
|||
#include "emuapi.h"
|
||||
|
||||
#ifdef HAS_SND
|
||||
|
||||
#include "AudioPlaySystem.h"
|
||||
#include <Arduino.h>
|
||||
#define SAMPLERATE AUDIO_SAMPLE_RATE_EXACT
|
||||
#define CLOCKFREQ 985248
|
||||
|
||||
#ifndef CUSTOM_SND
|
||||
PROGMEM static const short square[]={
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
32767,32767,32767,32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,
|
||||
};
|
||||
|
||||
PROGMEM const short noise[] {
|
||||
-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,
|
||||
-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767,32767,-32767,
|
||||
-32767,-32767,32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,32767,-32767,
|
||||
-32767,-32767,32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,32767,-32767,-32767,32767,32767,-32767,
|
||||
-32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,32767,-32767,-32767,32767,32767,-32767,
|
||||
-32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,32767,-32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,32767,-32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,-32767,-32767,32767,32767,32767,-32767,-32767,
|
||||
32767,-32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,-32767,32767,-32767,32767,32767,32767,-32767,-32767,
|
||||
32767,32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,-32767,32767,32767,-32767,32767,-32767,32767,-32767,-32767,
|
||||
32767,32767,-32767,-32767,-32767,32767,-32767,-32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,
|
||||
32767,-32767,32767,-32767,-32767,32767,32767,32767,32767,32767,-32767,32767,-32767,32767,-32767,-32767,
|
||||
};
|
||||
|
||||
#define NOISEBSIZE 0x100
|
||||
|
||||
typedef struct
|
||||
{
|
||||
unsigned int spos;
|
||||
unsigned int sinc;
|
||||
unsigned int vol;
|
||||
} Channel;
|
||||
|
||||
static Channel chan[6] = {
|
||||
{0,0,0},
|
||||
{0,0,0},
|
||||
{0,0,0},
|
||||
{0,0,0},
|
||||
{0,0,0},
|
||||
{0,0,0} };
|
||||
|
||||
#endif
|
||||
|
||||
volatile bool playing = false;
|
||||
|
||||
|
||||
static void snd_Reset(void)
|
||||
{
|
||||
#ifndef CUSTOM_SND
|
||||
chan[0].vol = 0;
|
||||
chan[1].vol = 0;
|
||||
chan[2].vol = 0;
|
||||
chan[3].vol = 0;
|
||||
chan[4].vol = 0;
|
||||
chan[5].vol = 0;
|
||||
chan[0].sinc = 0;
|
||||
chan[1].sinc = 0;
|
||||
chan[2].sinc = 0;
|
||||
chan[3].sinc = 0;
|
||||
chan[4].sinc = 0;
|
||||
chan[5].sinc = 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#ifdef CUSTOM_SND
|
||||
//extern "C" {
|
||||
void SND_Process(void *sndbuffer, int sndn);
|
||||
//}
|
||||
#endif
|
||||
|
||||
|
||||
FASTRUN void AudioPlaySystem::snd_Mixer(short * stream, int len )
|
||||
{
|
||||
if (playing)
|
||||
{
|
||||
#ifdef CUSTOM_SND
|
||||
SND_Process((void*)stream, len);
|
||||
#else
|
||||
int i;
|
||||
long s;
|
||||
len = len >> 1;
|
||||
short v0=chan[0].vol;
|
||||
short v1=chan[1].vol;
|
||||
short v2=chan[2].vol;
|
||||
short v3=chan[3].vol;
|
||||
short v4=chan[4].vol;
|
||||
short v5=chan[5].vol;
|
||||
for (i=0;i<len;i++)
|
||||
{
|
||||
s =((v0*square[(chan[0].spos>>8)&0x3f])>>11);
|
||||
s+=((v1*square[(chan[1].spos>>8)&0x3f])>>11);
|
||||
s+=((v2*square[(chan[2].spos>>8)&0x3f])>>11);
|
||||
s+=((v3*noise[(chan[3].spos>>8)&(NOISEBSIZE-1)])>>11);
|
||||
s+=((v4*noise[(chan[4].spos>>8)&(NOISEBSIZE-1)])>>11);
|
||||
s+=((v5*noise[(chan[5].spos>>8)&(NOISEBSIZE-1)])>>11);
|
||||
*stream++ = (short)(s);
|
||||
*stream++ = (short)(s);
|
||||
chan[0].spos += chan[0].sinc;
|
||||
chan[1].spos += chan[1].sinc;
|
||||
chan[2].spos += chan[2].sinc;
|
||||
chan[3].spos += chan[3].sinc;
|
||||
chan[4].spos += chan[4].sinc;
|
||||
chan[5].spos += chan[5].sinc;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void AudioPlaySystem::begin(void)
|
||||
{
|
||||
this->reset();
|
||||
}
|
||||
|
||||
void AudioPlaySystem::start(void)
|
||||
{
|
||||
playing = true;
|
||||
}
|
||||
|
||||
void AudioPlaySystem::setSampleParameters(float clockfreq, float samplerate) {
|
||||
}
|
||||
|
||||
void AudioPlaySystem::reset(void)
|
||||
{
|
||||
snd_Reset();
|
||||
}
|
||||
|
||||
void AudioPlaySystem::stop(void)
|
||||
{
|
||||
//__disable_irq();
|
||||
playing = false;
|
||||
//__enable_irq();
|
||||
}
|
||||
|
||||
bool AudioPlaySystem::isPlaying(void)
|
||||
{
|
||||
return playing;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void AudioPlaySystem::sound(int C, int F, int V) {
|
||||
#ifndef CUSTOM_SND
|
||||
if (C < 6) {
|
||||
chan[C].vol = V;
|
||||
chan[C].sinc = F>>1;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void AudioPlaySystem::step(void) {
|
||||
}
|
||||
|
||||
|
||||
#ifndef HAS_T4_VGA
|
||||
/*******************************************************************
|
||||
Experimental I2S interrupt based sound driver for PCM51xx !!!
|
||||
*******************************************************************/
|
||||
|
||||
FLASHMEM static void set_audioClock(int nfact, int32_t nmult, uint32_t ndiv, bool force) // sets PLL4
|
||||
{
|
||||
if (!force && (CCM_ANALOG_PLL_AUDIO & CCM_ANALOG_PLL_AUDIO_ENABLE)) return;
|
||||
|
||||
CCM_ANALOG_PLL_AUDIO = CCM_ANALOG_PLL_AUDIO_BYPASS | CCM_ANALOG_PLL_AUDIO_ENABLE
|
||||
| CCM_ANALOG_PLL_AUDIO_POST_DIV_SELECT(2) // 2: 1/4; 1: 1/2; 0: 1/1
|
||||
| CCM_ANALOG_PLL_AUDIO_DIV_SELECT(nfact);
|
||||
|
||||
CCM_ANALOG_PLL_AUDIO_NUM = nmult & CCM_ANALOG_PLL_AUDIO_NUM_MASK;
|
||||
CCM_ANALOG_PLL_AUDIO_DENOM = ndiv & CCM_ANALOG_PLL_AUDIO_DENOM_MASK;
|
||||
|
||||
CCM_ANALOG_PLL_AUDIO &= ~CCM_ANALOG_PLL_AUDIO_POWERDOWN;//Switch on PLL
|
||||
while (!(CCM_ANALOG_PLL_AUDIO & CCM_ANALOG_PLL_AUDIO_LOCK)) {}; //Wait for pll-lock
|
||||
|
||||
const int div_post_pll = 1; // other values: 2,4
|
||||
CCM_ANALOG_MISC2 &= ~(CCM_ANALOG_MISC2_DIV_MSB | CCM_ANALOG_MISC2_DIV_LSB);
|
||||
if(div_post_pll>1) CCM_ANALOG_MISC2 |= CCM_ANALOG_MISC2_DIV_LSB;
|
||||
if(div_post_pll>3) CCM_ANALOG_MISC2 |= CCM_ANALOG_MISC2_DIV_MSB;
|
||||
|
||||
CCM_ANALOG_PLL_AUDIO &= ~CCM_ANALOG_PLL_AUDIO_BYPASS;//Disable Bypass
|
||||
}
|
||||
|
||||
#define AUDIO_SAMPLE_RATE_EXACT 11025.0 //44117.64706 //11025.0 //22050.0 //44117.64706 //31778.0
|
||||
|
||||
FLASHMEM static void config_sai1()
|
||||
{
|
||||
CCM_CCGR5 |= CCM_CCGR5_SAI1(CCM_CCGR_ON);
|
||||
double fs = AUDIO_SAMPLE_RATE_EXACT;
|
||||
// PLL between 27*24 = 648MHz und 54*24=1296MHz
|
||||
int n1 = 4; //SAI prescaler 4 => (n1*n2) = multiple of 4
|
||||
int n2 = 1 + (24000000 * 27) / (fs * 256 * n1);
|
||||
double C = (fs * 256 * n1 * n2) / 24000000;
|
||||
int c0 = C;
|
||||
int c2 = 10000;
|
||||
int c1 = C * c2 - (c0 * c2);
|
||||
|
||||
set_audioClock(c0, c1, c2, true);
|
||||
// clear SAI1_CLK register locations
|
||||
CCM_CSCMR1 = (CCM_CSCMR1 & ~(CCM_CSCMR1_SAI1_CLK_SEL_MASK))
|
||||
| CCM_CSCMR1_SAI1_CLK_SEL(2); // &0x03 // (0,1,2): PLL3PFD0, PLL5, PLL4
|
||||
|
||||
n1 = n1 / 2; //Double Speed for TDM
|
||||
|
||||
CCM_CS1CDR = (CCM_CS1CDR & ~(CCM_CS1CDR_SAI1_CLK_PRED_MASK | CCM_CS1CDR_SAI1_CLK_PODF_MASK))
|
||||
| CCM_CS1CDR_SAI1_CLK_PRED(n1 - 1) // &0x07
|
||||
| CCM_CS1CDR_SAI1_CLK_PODF(n2 - 1); // &0x3f
|
||||
|
||||
IOMUXC_GPR_GPR1 = (IOMUXC_GPR_GPR1 & ~(IOMUXC_GPR_GPR1_SAI1_MCLK1_SEL_MASK))
|
||||
| (IOMUXC_GPR_GPR1_SAI1_MCLK_DIR | IOMUXC_GPR_GPR1_SAI1_MCLK1_SEL(0)); //Select MCLK
|
||||
|
||||
|
||||
// configure transmitter
|
||||
int rsync = 0;
|
||||
int tsync = 1;
|
||||
|
||||
I2S1_TMR = 0;
|
||||
I2S1_TCR1 = I2S_TCR1_RFW(1);
|
||||
I2S1_TCR2 = I2S_TCR2_SYNC(tsync) | I2S_TCR2_BCP // sync=0; tx is async;
|
||||
| (I2S_TCR2_BCD | I2S_TCR2_DIV((1)) | I2S_TCR2_MSEL(1));
|
||||
I2S1_TCR3 = I2S_TCR3_TCE;
|
||||
I2S1_TCR4 = I2S_TCR4_FRSZ((2-1)) | I2S_TCR4_SYWD((32-1)) | I2S_TCR4_MF
|
||||
| I2S_TCR4_FSD | I2S_TCR4_FSE | I2S_TCR4_FSP;
|
||||
I2S1_TCR5 = I2S_TCR5_WNW((32-1)) | I2S_TCR5_W0W((32-1)) | I2S_TCR5_FBT((32-1));
|
||||
|
||||
|
||||
I2S1_RMR = 0;
|
||||
I2S1_RCR1 = I2S_RCR1_RFW(1);
|
||||
I2S1_RCR2 = I2S_RCR2_SYNC(rsync) | I2S_RCR2_BCP // sync=0; rx is async;
|
||||
| (I2S_RCR2_BCD | I2S_RCR2_DIV((1)) | I2S_RCR2_MSEL(1));
|
||||
I2S1_RCR3 = I2S_RCR3_RCE;
|
||||
I2S1_RCR4 = I2S_RCR4_FRSZ((2-1)) | I2S_RCR4_SYWD((32-1)) | I2S_RCR4_MF
|
||||
| I2S_RCR4_FSE | I2S_RCR4_FSP | I2S_RCR4_FSD;
|
||||
I2S1_RCR5 = I2S_RCR5_WNW((32-1)) | I2S_RCR5_W0W((32-1)) | I2S_RCR5_FBT((32-1));
|
||||
|
||||
//CORE_PIN23_CONFIG = 3; // MCLK
|
||||
CORE_PIN21_CONFIG = 3; // RX_BCLK
|
||||
CORE_PIN20_CONFIG = 3; // RX_SYNC
|
||||
CORE_PIN7_CONFIG = 3; // TX_DATA0
|
||||
I2S1_RCSR |= I2S_RCSR_RE | I2S_RCSR_BCE;
|
||||
I2S1_TCSR = I2S_TCSR_TE | I2S_TCSR_BCE | I2S_TCSR_FRDE ;//<-- not using DMA */;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//DMAMEM __attribute__((aligned(32))) static uint32_t i2s_tx[1024];
|
||||
|
||||
static bool fillfirsthalf = true;
|
||||
static uint16_t cnt = 0;
|
||||
static uint16_t sampleBufferSize = 0;
|
||||
|
||||
static void (*fillsamples)(short * stream, int len) = nullptr;
|
||||
|
||||
static uint32_t * i2s_tx_buffer __attribute__((aligned(32)));
|
||||
static uint16_t * i2s_tx_buffer16;
|
||||
static uint16_t * txreg = (uint16_t *)((uint32_t)&I2S1_TDR0 + 2);
|
||||
|
||||
|
||||
FASTRUN void AudioPlaySystem::AUDIO_isr() {
|
||||
|
||||
*txreg = i2s_tx_buffer16[cnt];
|
||||
cnt = cnt + 1;
|
||||
cnt = cnt & (sampleBufferSize*2-1);
|
||||
|
||||
if (cnt == 0) {
|
||||
fillfirsthalf = false;
|
||||
NVIC_SET_PENDING(IRQ_SOFTWARE);
|
||||
}
|
||||
else if (cnt == sampleBufferSize) {
|
||||
fillfirsthalf = true;
|
||||
NVIC_SET_PENDING(IRQ_SOFTWARE);
|
||||
}
|
||||
/*
|
||||
I2S1_TDR0 = i2s_tx_buffer[cnt];
|
||||
cnt = cnt + 1;
|
||||
cnt = cnt & (sampleBufferSize-1);
|
||||
if (cnt == 0) {
|
||||
fillfirsthalf = false;
|
||||
NVIC_SET_PENDING(IRQ_SOFTWARE);
|
||||
}
|
||||
else if (cnt == sampleBufferSize/2) {
|
||||
fillfirsthalf = true;
|
||||
NVIC_SET_PENDING(IRQ_SOFTWARE);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
FASTRUN void AudioPlaySystem::SOFTWARE_isr() {
|
||||
//Serial.println("x");
|
||||
if (fillfirsthalf) {
|
||||
fillsamples((short *)i2s_tx_buffer, sampleBufferSize);
|
||||
arm_dcache_flush_delete((void*)i2s_tx_buffer, (sampleBufferSize/2)*sizeof(uint32_t));
|
||||
}
|
||||
else {
|
||||
fillsamples((short *)&i2s_tx_buffer[sampleBufferSize/2], sampleBufferSize);
|
||||
arm_dcache_flush_delete((void*)&i2s_tx_buffer[sampleBufferSize/2], (sampleBufferSize/2)*sizeof(uint32_t));
|
||||
}
|
||||
}
|
||||
|
||||
// display VGA image
|
||||
FLASHMEM void AudioPlaySystem::begin_audio(int samplesize, void (*callback)(short * stream, int len))
|
||||
{
|
||||
fillsamples = callback;
|
||||
i2s_tx_buffer = (uint32_t*)malloc(samplesize*sizeof(uint32_t)); //&i2s_tx[0];
|
||||
|
||||
if (i2s_tx_buffer == NULL) {
|
||||
Serial.println("could not allocate audio samples");
|
||||
return;
|
||||
}
|
||||
memset((void*)i2s_tx_buffer,0, samplesize*sizeof(uint32_t));
|
||||
arm_dcache_flush_delete((void*)i2s_tx_buffer, samplesize*sizeof(uint32_t));
|
||||
i2s_tx_buffer16 = (uint16_t*)i2s_tx_buffer;
|
||||
|
||||
sampleBufferSize = samplesize;
|
||||
|
||||
config_sai1();
|
||||
attachInterruptVector(IRQ_SAI1, AUDIO_isr);
|
||||
NVIC_ENABLE_IRQ(IRQ_SAI1);
|
||||
NVIC_SET_PRIORITY(IRQ_QTIMER3, 0); // 0 highest priority, 255 = lowest priority
|
||||
NVIC_SET_PRIORITY(IRQ_SAI1, 127);
|
||||
attachInterruptVector(IRQ_SOFTWARE, SOFTWARE_isr);
|
||||
NVIC_SET_PRIORITY(IRQ_SOFTWARE, 208);
|
||||
NVIC_ENABLE_IRQ(IRQ_SOFTWARE);
|
||||
|
||||
I2S1_TCSR |= 1<<8; // start generating TX FIFO interrupts
|
||||
|
||||
Serial.print("Audio sample buffer = ");
|
||||
Serial.println(samplesize);
|
||||
}
|
||||
|
||||
FLASHMEM void AudioPlaySystem::end_audio()
|
||||
{
|
||||
if (i2s_tx_buffer != NULL) {
|
||||
free(i2s_tx_buffer);
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,34 @@
|
|||
#ifndef audioplaysystem_h_
|
||||
#define audioplaysystem_h_
|
||||
|
||||
#ifdef HAS_SND
|
||||
|
||||
#include "platform_config.h"
|
||||
|
||||
class AudioPlaySystem
|
||||
{
|
||||
public:
|
||||
AudioPlaySystem(void) { };
|
||||
void begin(void);
|
||||
void setSampleParameters(float clockfreq, float samplerate);
|
||||
void reset(void);
|
||||
void start(void);
|
||||
void stop(void);
|
||||
bool isPlaying(void);
|
||||
void sound(int C, int F, int V);
|
||||
void buzz(int size, int val);
|
||||
void step(void);
|
||||
static void snd_Mixer(short * stream, int len );
|
||||
#ifndef HAS_T4_VGA
|
||||
void begin_audio(int samplesize, void (*callback)(short * stream, int len));
|
||||
void end_audio();
|
||||
static void AUDIO_isr(void);
|
||||
static void SOFTWARE_isr(void);
|
||||
#endif
|
||||
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
|
@ -0,0 +1,21 @@
|
|||
#include "IC.h"
|
||||
|
||||
IC::IC() : cycles(0) {
|
||||
|
||||
}
|
||||
|
||||
IC::~IC() {
|
||||
|
||||
}
|
||||
|
||||
uint32_t IC::getCycles() {
|
||||
return this->cycles;
|
||||
}
|
||||
|
||||
uint32_t IC::getClockSpeed() {
|
||||
return this->clockSpeed;
|
||||
}
|
||||
|
||||
void IC::setClockSpeed(uint32_t clock) {
|
||||
this->clockSpeed = clock;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
#ifndef _H_IC
|
||||
#define _H_IC
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/*
|
||||
Simple base class for integrated circuits.
|
||||
*/
|
||||
class IC {
|
||||
public:
|
||||
IC();
|
||||
~IC();
|
||||
|
||||
// Getters
|
||||
uint32_t getCycles();
|
||||
uint32_t getClockSpeed();
|
||||
|
||||
// Setters
|
||||
void setClockSpeed(uint32_t clock);
|
||||
protected:
|
||||
// Derived classes handle incrementing this counter
|
||||
uint32_t cycles;
|
||||
|
||||
// Determines the maximum frequenzy an IC can operate in hertz
|
||||
uint32_t clockSpeed;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -0,0 +1,20 @@
|
|||
#ifndef _H_MOS6502MEMORY
|
||||
#define _H_MOS6502MEMORY
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
extern uint8_t vicmemory[];
|
||||
|
||||
|
||||
#define readWord(location) (vicmemory[location])
|
||||
#define writeWord(location,value) {vicmemory[location]=value;}
|
||||
//extern uint8_t readWord( uint16_t location);
|
||||
//extern void writeWord( uint16_t location, uint8_t value);
|
||||
|
||||
#define silentReadWord(location) (vicmemory[location])
|
||||
#define silentWriteWord(location,value) {vicmemory[location]=value;}
|
||||
#define silentReadDWord(location) (vicmemory[location] | vicmemory[location + 1] << 8)
|
||||
#define silentWriteDWord(location,value) {vicmemory[location]=uint8_t(value & 0xFF); vicmemory[location + 1]=(uint8_t)((value >> 8) & 0xFF);}
|
||||
|
||||
|
||||
#endif
|
|
@ -0,0 +1,183 @@
|
|||
#include "MOS6522.h"
|
||||
#include "MOS6502Memory.h"
|
||||
|
||||
MOS6522::MOS6522() : IC()
|
||||
, keyPressed(0)
|
||||
, shiftPressed(false)
|
||||
, cbmPressed(false) {
|
||||
// Set clock speed
|
||||
this->setClockSpeed(2000000);
|
||||
}
|
||||
|
||||
MOS6522::~MOS6522() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
void MOS6522::setCpu(mos6502 *omos6502) {
|
||||
this->omos6502 = omos6502;
|
||||
}
|
||||
|
||||
void MOS6522::setKeyPressed(uint16_t key) {
|
||||
/* Store high byte first
|
||||
= 0x9120 << 8 | 0x9121
|
||||
*/
|
||||
keyPressed = key;
|
||||
}
|
||||
|
||||
void MOS6522::setShiftPressed(bool state) {
|
||||
this->shiftPressed = state;
|
||||
}
|
||||
|
||||
void MOS6522::setCbmPressed(bool state) {
|
||||
this->cbmPressed = state;
|
||||
}
|
||||
|
||||
void MOS6522::setJoyStickPressed(Vic20JoyStickButton button, bool state) {
|
||||
this->joyStick[button] = state;
|
||||
}
|
||||
|
||||
void MOS6522::initialize() {
|
||||
// Clear joystick memory
|
||||
writeWord(0x9111, 0xFF);
|
||||
}
|
||||
|
||||
void MOS6522::tick() {
|
||||
// Tick timer cycle
|
||||
this->tickTimers();
|
||||
|
||||
// Handle input in this cycle
|
||||
this->joy1Input();
|
||||
this->joy2Input();
|
||||
this->keyboardInput();
|
||||
|
||||
// Increment cycles counter
|
||||
this->cycles += 1;
|
||||
}
|
||||
|
||||
|
||||
void MOS6522::joy1Input() {
|
||||
// Handle joystick input on VIA1
|
||||
uint8_t via1PortAValue = silentReadWord(via1PORTA);
|
||||
via1PortAValue |= 0x3c;
|
||||
if (joyStick[Vic20JoyStickButton::Fire]) {
|
||||
via1PortAValue &= ~0x20;
|
||||
}
|
||||
|
||||
if (joyStick[Vic20JoyStickButton::Up]) {
|
||||
via1PortAValue &= ~0x04;
|
||||
}
|
||||
|
||||
if (joyStick[Vic20JoyStickButton::Down]) {
|
||||
via1PortAValue &= ~0x08;
|
||||
}
|
||||
|
||||
if (joyStick[Vic20JoyStickButton::Left]) {
|
||||
via1PortAValue &= ~0x10;
|
||||
}
|
||||
silentWriteWord(via1PORTA, via1PortAValue);
|
||||
silentWriteWord(via1PORTAMIRROR, via1PortAValue);
|
||||
}
|
||||
|
||||
void MOS6522::joy2Input() {
|
||||
uint8_t via2PortBValue = silentReadWord(this->via2PORTB);
|
||||
// If this bit is input, set it to default value, else leave it as it is so it won't mess up keyboard input
|
||||
if (!(silentReadWord(via2PortBDDR) & 0x80)) {
|
||||
via2PortBValue |= 0x80;
|
||||
}
|
||||
// Joystick RIGHT ison VIA 2
|
||||
if (joyStick[Vic20JoyStickButton::Right]) {
|
||||
via2PortBValue &= ~0x80;
|
||||
}
|
||||
silentWriteWord(via2PORTB, via2PortBValue);
|
||||
}
|
||||
|
||||
void MOS6522::keyboardInput() {
|
||||
uint8_t via2PortAValue = silentReadWord(this->via2PORTA);
|
||||
uint8_t via2PortBValue = silentReadWord(this->via2PORTB);
|
||||
|
||||
// Get row and column of key press
|
||||
uint8_t column = (keyPressed >> 8) & 0xFF; // output
|
||||
uint8_t row = keyPressed & 0xFF; //input
|
||||
|
||||
// Check whether keyboard should be scanned
|
||||
if (via2PortBValue == 0) {
|
||||
// If port b is 0 then the vic is asking whether any keys are pressed on the keyboard
|
||||
via2PortAValue = keyPressed == 0 ? 0xFF : row;
|
||||
}
|
||||
else {
|
||||
// Return keyboard row depending on column state
|
||||
via2PortAValue = (via2PortBValue == column ? (row == 0 ? 0xFF : row) : 0xFF);
|
||||
}
|
||||
|
||||
if ((via2PortBValue == 0xF7) && shiftPressed) {
|
||||
// Return row of shift key
|
||||
via2PortAValue = 0xFD & (keyPressed == 0 ? 0xFF : (column == 0xF7 ? row : 0xFF));
|
||||
} else if (via2PortBValue == 0xDF && cbmPressed) {
|
||||
// Return row of cbm key
|
||||
via2PortAValue = 0xFE & (keyPressed == 0 ? 0xFF : (column == 0xDF ? row : 0xFF));
|
||||
}
|
||||
|
||||
silentWriteWord(this->via2PORTA, via2PortAValue);
|
||||
silentWriteWord(this->via2PORTAMIRROR, via2PortAValue);
|
||||
}
|
||||
|
||||
void MOS6522::tickTimers() {
|
||||
// Grab values of timer related registers
|
||||
uint8_t interruptEnable = readWord(this->irqEnableAddress);
|
||||
uint8_t interruptFlags = readWord(this->irqFlagsAddress);
|
||||
|
||||
// Get timer values
|
||||
uint16_t timer1 = silentReadDWord(this->via2timer1DAddress);
|
||||
uint16_t timer2 = silentReadDWord(this->via1timer2DAddress);
|
||||
// If timer1 is active, decrement it
|
||||
if (timer1 > 0) {
|
||||
silentWriteDWord(this->via2timer1DAddress, --timer1);
|
||||
}
|
||||
if (timer1 == 0) {
|
||||
// Set interrupt flag
|
||||
interruptFlags |= 0x40;
|
||||
silentWriteWord(this->irqFlagsAddress, interruptFlags);
|
||||
}
|
||||
|
||||
// If timer2 is active and no latch, decrement it
|
||||
if (silentReadWord(this->via2timer2HighByteLatch) != 0) {
|
||||
if (timer2 > 0) {
|
||||
silentWriteDWord(this->via1timer2DAddress, --timer2);
|
||||
}
|
||||
if (timer2 == 0) {
|
||||
// Reset high byte latch
|
||||
silentWriteDWord(this->via1timer2DAddress, silentReadDWord(this->via2timer2LowByteLatch));
|
||||
silentWriteDWord(this->via2timer2HighByteLatch, 0);
|
||||
// Set interrupt flag
|
||||
interruptFlags |= 0x20;
|
||||
silentWriteWord(this->irqFlagsAddress, interruptFlags);
|
||||
}
|
||||
}
|
||||
|
||||
// Check if an interrupt request exists in the system
|
||||
if (interruptFlags & interruptEnable & 0x7F) {
|
||||
// Send an interrupt request to the cpu
|
||||
//if (omos6502->interrupt()) {
|
||||
if (omos6502->IRQ()) {
|
||||
uint8_t auxControl = readWord(this->auxControlAddress);
|
||||
// Post interrupt operation
|
||||
if (interruptFlags & 0x40) {
|
||||
// Determine what to do with timer based on auxiliary control register
|
||||
if (auxControl & 0x40) {
|
||||
// Continuous interrupt
|
||||
silentWriteDWord(this->via2timer1DAddress, silentReadDWord(this->via2timer1LowByteLatch));
|
||||
}
|
||||
// Reset interrupt flag
|
||||
interruptFlags &= ~0x40;
|
||||
silentWriteWord(irqFlagsAddress, interruptFlags);
|
||||
}
|
||||
|
||||
if (interruptFlags & 0x20) {
|
||||
// Reset interrupt flag
|
||||
interruptFlags &= ~0x20;
|
||||
silentWriteWord(irqFlagsAddress, interruptFlags);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,101 @@
|
|||
#ifndef _H_MOS6522
|
||||
#define _H_MOS6522
|
||||
|
||||
#include "IC.h"
|
||||
#include "mos6502.h"
|
||||
|
||||
/*
|
||||
Notes,
|
||||
This single object will serve as emulation
|
||||
for both VIA chips in the VIC-20.
|
||||
|
||||
References,
|
||||
http://vic-20.appspot.com/docs/viausage.txt
|
||||
http://vic-20.appspot.com/docs/vickey.txt
|
||||
*/
|
||||
class MOS6522 : public IC {
|
||||
public:
|
||||
MOS6522();
|
||||
~MOS6522();
|
||||
|
||||
// Joystick
|
||||
enum Vic20JoyStickButton { Fire = 0, Up = 1, Down = 2, Left = 3, Right = 4 };
|
||||
|
||||
// Via joystick interface
|
||||
void setJoyStickPressed(Vic20JoyStickButton button, bool state);
|
||||
|
||||
// Via 2 Keyboard interface
|
||||
void setKeyPressed(uint16_t key);
|
||||
void setShiftPressed(bool state);
|
||||
void setCbmPressed(bool state);
|
||||
|
||||
// Interface
|
||||
void tick();
|
||||
// Organize operations into separate methods for cleaner code
|
||||
void tickTimers();
|
||||
void joy1Input();
|
||||
void joy2Input();
|
||||
void keyboardInput();
|
||||
void setCpu(mos6502 *omos6502);
|
||||
void initialize();
|
||||
|
||||
private:
|
||||
|
||||
// Cpu reference
|
||||
mos6502 *omos6502;
|
||||
|
||||
// Via 1 & 2 Joystick
|
||||
bool joyStick[5];
|
||||
|
||||
// Via 2 Keyboard
|
||||
uint16_t keyPressed;
|
||||
bool shiftPressed;
|
||||
bool cbmPressed;
|
||||
|
||||
// VIA 1 Joystick addresses
|
||||
static const uint16_t via1PORTB = 0x9110;
|
||||
static const uint16_t via1PORTA = 0x9111;
|
||||
static const uint16_t via1PORTAMIRROR = 0x911F;
|
||||
|
||||
// Port A
|
||||
static const uint8_t joyStickUpBit = 0x2;
|
||||
static const uint8_t joyStickDownBit = 0x4;
|
||||
static const uint8_t joyStickLeftBit = 0x8;
|
||||
static const uint8_t joyStickFireBit = 0x10;
|
||||
|
||||
// VIA 1 ddrs
|
||||
static const uint16_t via1PortBDDR = 0x9112;
|
||||
static const uint16_t via1PortADDR = 0x9113;
|
||||
|
||||
// VIA 1 Timer
|
||||
static const uint16_t via1timer2DAddress = 0x9118; //and 0x9119
|
||||
|
||||
|
||||
// Via 2 Keyboard addresses + joystick right
|
||||
static const uint16_t via2PORTB = 0x9120;
|
||||
static const uint16_t via2PORTA = 0x9121;
|
||||
static const uint16_t via2PORTAMIRROR = 0x912F;
|
||||
|
||||
// Port B
|
||||
static const uint8_t joyStickRightBit = 0x80;
|
||||
|
||||
// VIA 2 ddrs
|
||||
static const uint16_t via2PortBDDR = 0x9122;
|
||||
static const uint16_t via2PortADDR = 0x9123;
|
||||
|
||||
// VIA 2 Timer
|
||||
static const uint16_t via2timer1LowByteLatch = 0x9124;
|
||||
static const uint16_t via2timer1HighByteLatch = 0x9125;
|
||||
static const uint16_t via2timer1DAddress = 0x9126; //and 0x9127
|
||||
static const uint16_t via2timer2LowByteLatch = 0x9128;
|
||||
static const uint16_t via2timer2HighByteLatch = 0x9129;
|
||||
|
||||
|
||||
|
||||
// Via 2 Registers
|
||||
static const uint16_t auxControlAddress = 0x912B;
|
||||
static const uint16_t irqFlagsAddress = 0x912D;
|
||||
static const uint16_t irqEnableAddress = 0x912E;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -0,0 +1,320 @@
|
|||
#include "MOS6561.h"
|
||||
|
||||
extern "C" {
|
||||
#include "emuapi.h"
|
||||
#include "platform_config.h"
|
||||
}
|
||||
|
||||
#ifdef HAS_T4_VGA
|
||||
#include "vga_t_dma.h"
|
||||
typedef uint8_t Pixel;
|
||||
#else
|
||||
#include "tft_t_dma.h"
|
||||
typedef uint16_t Pixel;
|
||||
#endif
|
||||
|
||||
#define WIN_W TFT_WIDTH
|
||||
#define WIN_H TFT_HEIGHT
|
||||
|
||||
//#include <stdio.h>
|
||||
|
||||
|
||||
// definitions for easy access to registers
|
||||
#define REG_COLPAGE_BASE (0x9400) // 0x9400+0x200 = 0x9600 unexpanded
|
||||
|
||||
#define REG_SCRPAGE_LO ((readWord(0x9002) & 0x80)<< 2) // 0x0200
|
||||
#define REG_COLPAGE_LO ((readWord(0x9002) & 0x80)<< 2) // 0x0200
|
||||
#define REG_NB_COLUMNS (readWord(0x9002) & 0x7F)
|
||||
|
||||
#define REG_RASTER_LO_RD (0x9003) // 0x80 >> 7
|
||||
#define REG_DOUBLE_HEIGHT (readWord(0x9003) & 0x01)
|
||||
#define REG_NB_ROWS ((readWord(0x9003) & 0x7E) >> 1) //x2 => 46
|
||||
|
||||
#define REG_RASTER_HI_RD (0x9004) // << 1 // 1E00 unexpanded?
|
||||
|
||||
#define REG_CHRMAP_PT (readWord(0x9005) & 0x0F)
|
||||
#define REG_SCRPAGE_HIGH ((readWord(0x9005) & 0xF0) << 6) // 0x2C00
|
||||
|
||||
#define REG_AUXILIARY_COLOUR ((readWord(0x900E) & 0xF0) >> 4)
|
||||
#define REG_BORDER_COLOUR (readWord(0x900F) & 0x7)
|
||||
#define REG_BACKGROUND_COLOUR ((readWord(0x900F) & 0xF0) >> 4)
|
||||
|
||||
#define REG_HORI_OFFSET ((readWord(0x9000) & 0x7F)
|
||||
#define REG_VERT_OFFSET ((readWord(0x9001) & 0xFF)
|
||||
|
||||
// C R H V
|
||||
// 16 16 +6 +16
|
||||
// 22 23 0 0
|
||||
// 24 28 -3 -9
|
||||
// 25 30 -3 -12
|
||||
// 27 33 -5 -19
|
||||
|
||||
|
||||
static Pixel vicPalette[16];
|
||||
static uint16_t remap[16] = {
|
||||
0x8000,
|
||||
0x8400,
|
||||
0x8800,
|
||||
0x8c00,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x0000,
|
||||
0x1000,
|
||||
0x1400,
|
||||
0x1800,
|
||||
0x1c00
|
||||
};
|
||||
|
||||
MOS6561::MOS6561() : IC(), curRow(0), frameReady(true) {
|
||||
// Set clock speed
|
||||
this->setClockSpeed(1108000);
|
||||
}
|
||||
|
||||
MOS6561::~MOS6561() {
|
||||
}
|
||||
|
||||
void MOS6561::initialize() {
|
||||
// Initialize VIC palette
|
||||
vicPalette[0] = RGBVAL16(0, 0, 0);
|
||||
vicPalette[1] = RGBVAL16(255, 255, 255);
|
||||
vicPalette[2] = RGBVAL16((182), (31), (33));
|
||||
vicPalette[3] = RGBVAL16((77), (240), (255));
|
||||
vicPalette[4] = RGBVAL16((180), (63), (255));
|
||||
vicPalette[5] = RGBVAL16((68), (226), (55));
|
||||
vicPalette[6] = RGBVAL16((15), (87), (247));
|
||||
vicPalette[7] = RGBVAL16((220), (215), (27));
|
||||
vicPalette[8] = RGBVAL16((202), (84), (0));
|
||||
vicPalette[9] = RGBVAL16((233), (176), (114));
|
||||
vicPalette[10] = RGBVAL16((231), (146), (147));
|
||||
vicPalette[11] = RGBVAL16((154), (247), (253));
|
||||
vicPalette[12] = RGBVAL16((224), (159), (255));
|
||||
vicPalette[13] = RGBVAL16((143), (228), (147));
|
||||
vicPalette[14] = RGBVAL16((130), (144), (255));
|
||||
vicPalette[15] = RGBVAL16((229), (222), (133));
|
||||
}
|
||||
|
||||
|
||||
void MOS6561::renderBorder(uint16_t raster){
|
||||
if (raster < WIN_H) {
|
||||
Pixel bcol = vicPalette[REG_BORDER_COLOUR];
|
||||
Pixel * dst = (Pixel *)emu_LineBuffer(raster);
|
||||
for (int x=0; x < WIN_W; x++) {
|
||||
*dst++ = bcol;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MOS6561::renderLine(uint16_t raster, uint16_t row, uint8_t rowHeight, uint8_t chrLine) {
|
||||
int curRow = row;
|
||||
int nbRow = REG_NB_ROWS;
|
||||
|
||||
if ( (rowHeight == 16) && (nbRow >= 23) ) {
|
||||
curRow = curRow/2;
|
||||
nbRow = nbRow/2;
|
||||
}
|
||||
|
||||
if (raster < WIN_H)
|
||||
{
|
||||
int nbCol = REG_NB_COLUMNS;
|
||||
int bWidth = (WIN_W - nbCol*8)/2;
|
||||
#define bakcol 0
|
||||
#define borcol 1
|
||||
#define forcol 2
|
||||
#define auxcol 3
|
||||
Pixel cols[4];
|
||||
uint16_t screenPage = (REG_SCRPAGE_HIGH & ~0x2000) + REG_SCRPAGE_LO;
|
||||
uint8_t * charPointer = &vicmemory[screenPage + (curRow * nbCol)];
|
||||
uint16_t colourPage = REG_COLPAGE_BASE + REG_COLPAGE_LO;
|
||||
uint8_t * colPointer = &vicmemory[colourPage + (curRow * nbCol)];
|
||||
|
||||
cols[borcol] = vicPalette[REG_BORDER_COLOUR];
|
||||
cols[bakcol] = vicPalette[REG_BACKGROUND_COLOUR];
|
||||
|
||||
// Border Left
|
||||
Pixel * dst = (Pixel *)emu_LineBuffer(raster);
|
||||
for (int x=0; x < bWidth; x++) {
|
||||
*dst++ = cols[borcol];
|
||||
}
|
||||
|
||||
uint16_t chardefbase = remap[REG_CHRMAP_PT];
|
||||
for (int x = 0; x < nbCol; x +=1)
|
||||
{
|
||||
uint16_t charpt = chardefbase + charPointer[x]*rowHeight + chrLine;
|
||||
if ( (charpt > 0x2000) && (charpt < 0x3000) )
|
||||
charpt += 0x6000;
|
||||
uint8_t characterByte = vicmemory[charpt];
|
||||
uint8_t colour = colPointer[x] & 0x7;
|
||||
uint8_t multiColour = colPointer[x] & 0x8;
|
||||
cols[forcol] = vicPalette[colour];
|
||||
if (!multiColour) {
|
||||
Pixel * dest = dst;
|
||||
for (int a = 0; a < 8; a++) {
|
||||
if ((characterByte << a) & 0x80) {
|
||||
*dest++ = cols[forcol];
|
||||
}
|
||||
else {
|
||||
*dest++ = cols[bakcol];
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
Pixel * dest = dst;
|
||||
cols[auxcol] = vicPalette[REG_AUXILIARY_COLOUR];
|
||||
for (int a = 0; a < 8; a += 2) {
|
||||
// Set colour
|
||||
Pixel col = cols[((characterByte << a) & 0xC0) >> 6];
|
||||
*dest++ = col;
|
||||
*dest++ = col;
|
||||
}
|
||||
}
|
||||
dst +=8;
|
||||
}
|
||||
|
||||
// Border Right
|
||||
for (int x=0; x < bWidth; x++) {
|
||||
*dst++ = cols[borcol];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MOS6561::renderRow(uint16_t raster, uint16_t row, uint8_t rowHeight)
|
||||
{
|
||||
int curRow = row;
|
||||
int nbRow = REG_NB_ROWS;
|
||||
|
||||
//printf("rows %d of %d, cols=%d, rowHeight:%d\n", curRow, nbRow, nbCol, rowHeight);
|
||||
|
||||
if ( (rowHeight == 16) && (nbRow >= 23) ) {
|
||||
curRow = curRow/2;
|
||||
nbRow = nbRow/2;
|
||||
}
|
||||
|
||||
if ((raster+curRow*rowHeight) < WIN_H)
|
||||
{
|
||||
int nbCol = REG_NB_COLUMNS;
|
||||
int bWidth = (WIN_W - nbCol*8)/2;
|
||||
#define bakcol 0
|
||||
#define borcol 1
|
||||
#define forcol 2
|
||||
#define auxcol 3
|
||||
Pixel cols[4];
|
||||
uint16_t screenPage = (REG_SCRPAGE_HIGH & ~0x2000) + REG_SCRPAGE_LO;
|
||||
uint8_t * charPointer = &vicmemory[screenPage + (curRow * nbCol)];
|
||||
uint16_t colourPage = REG_COLPAGE_BASE + REG_COLPAGE_LO;
|
||||
uint8_t * colPointer = &vicmemory[colourPage + (curRow * nbCol)];
|
||||
|
||||
cols[borcol] = vicPalette[REG_BORDER_COLOUR];
|
||||
cols[bakcol] = vicPalette[REG_BACKGROUND_COLOUR];
|
||||
|
||||
for (int line=0; line < rowHeight; line++) {
|
||||
// Border Left
|
||||
Pixel * dst = (Pixel *)emu_LineBuffer(curRow*rowHeight+line+raster);
|
||||
for (int x=0; x < bWidth; x++) {
|
||||
*dst++ = cols[borcol];
|
||||
}
|
||||
|
||||
uint16_t chardefbase = remap[REG_CHRMAP_PT];
|
||||
for (int x = 0; x < nbCol; x +=1)
|
||||
{
|
||||
uint16_t charpt = chardefbase + charPointer[x]*rowHeight + line;
|
||||
if ( (charpt > 0x2000) && (charpt < 0x3000) )
|
||||
charpt += 0x6000;
|
||||
uint8_t characterByte = vicmemory[charpt];
|
||||
uint8_t colour = colPointer[x] & 0x7;
|
||||
uint8_t multiColour = colPointer[x] & 0x8;
|
||||
cols[forcol] = vicPalette[colour];
|
||||
if (!multiColour) {
|
||||
Pixel * dest = dst;
|
||||
for (int a = 0; a < 8; a++) {
|
||||
if ((characterByte << a) & 0x80) {
|
||||
*dest++ = cols[forcol];
|
||||
}
|
||||
else {
|
||||
*dest++ = cols[bakcol];
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
Pixel * dest = dst;
|
||||
cols[auxcol] = vicPalette[REG_AUXILIARY_COLOUR];
|
||||
for (int a = 0; a < 8; a += 2) {
|
||||
// Set colour
|
||||
Pixel col = cols[((characterByte << a) & 0xC0) >> 6];
|
||||
*dest++ = col;
|
||||
*dest++ = col;
|
||||
}
|
||||
}
|
||||
dst +=8;
|
||||
}
|
||||
|
||||
// Border Right
|
||||
for (int x=0; x < bWidth; x++) {
|
||||
*dst++ = cols[borcol];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MOS6561::renderFrame() {
|
||||
this->frameReady = false;
|
||||
}
|
||||
|
||||
bool MOS6561::isFrameReady() {
|
||||
return this->frameReady;
|
||||
}
|
||||
|
||||
|
||||
void MOS6561::tick(int nbcycles) {
|
||||
// Increment raster counter
|
||||
uint16_t raster = readWord(REG_RASTER_HI_RD) << 1 | readWord(REG_RASTER_LO_RD) >> 7;
|
||||
if (cycles % cyclesPerScanline == 0) {
|
||||
uint8_t rowHeight = (REG_DOUBLE_HEIGHT?16:8);
|
||||
if (raster <= lastScanline) {
|
||||
raster += 1;
|
||||
}
|
||||
else {
|
||||
raster = 0;
|
||||
visScanlines = REG_NB_ROWS * rowHeight;
|
||||
if ( (rowHeight == 16) && (REG_NB_ROWS >= 23) ) {
|
||||
visScanlines = REG_NB_ROWS * 8;
|
||||
}
|
||||
firstVisibleScanline = (WIN_H-visScanlines)/2;
|
||||
}
|
||||
writeWord(REG_RASTER_LO_RD, (raster & 0x1) << 7 | (readWord(REG_RASTER_LO_RD) & 0x7F));
|
||||
writeWord(REG_RASTER_HI_RD, raster >> 1);
|
||||
|
||||
if (visScanlines) {
|
||||
if (raster < firstVisibleScanline) {
|
||||
renderBorder(raster);
|
||||
}
|
||||
// If not blanking, update screen
|
||||
else if (raster >= firstVisibleScanline && raster < (firstVisibleScanline+visScanlines)) {
|
||||
// Update video
|
||||
uint8_t chrLine = (raster-firstVisibleScanline) % rowHeight;
|
||||
//renderLine(raster, this->curRow, rowHeight, chrLine);
|
||||
if (chrLine == rowHeight-1) {
|
||||
renderRow(firstVisibleScanline, this->curRow, rowHeight);
|
||||
this->curRow++;
|
||||
// End of screen reached
|
||||
if (this->curRow >= REG_NB_ROWS) {
|
||||
this->curRow = 0;
|
||||
frameReady = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
renderBorder(raster);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Increment cycle counter
|
||||
this->cycles += nbcycles;
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
#ifndef _H_MOS6561
|
||||
#define _H_MOS6561
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "IC.h"
|
||||
#include "MOS6502Memory.h"
|
||||
|
||||
/*
|
||||
References,
|
||||
http://vic-20.appspot.com/docs/6561.txt
|
||||
http://vic-20.appspot.com/docs/vicregs.txt
|
||||
http://vic-20.appspot.com/docs/6561help.txt
|
||||
*/
|
||||
|
||||
class MOS6561 : public IC {
|
||||
public:
|
||||
MOS6561();
|
||||
~MOS6561();
|
||||
|
||||
// Interface
|
||||
void tick(int cycles);
|
||||
void initialize();
|
||||
|
||||
// Getters, mostly depend on memory
|
||||
bool isFrameReady();
|
||||
void renderFrame();
|
||||
void renderBorder(uint16_t raster);
|
||||
void renderRow(uint16_t raster, uint16_t row, uint8_t rowHeight);
|
||||
void renderLine(uint16_t raster, uint16_t row, uint8_t rowHeight, uint8_t chrLine);
|
||||
private:
|
||||
// Used as counters
|
||||
uint8_t curRow;
|
||||
uint16_t firstVisibleScanline;
|
||||
uint16_t visScanlines;
|
||||
|
||||
// Determines if a full frame has been drawn
|
||||
bool frameReady;
|
||||
|
||||
static const uint16_t lastScanline = 312;
|
||||
public:
|
||||
static const int cyclesPerScanline = 71;
|
||||
|
||||
static const uint16_t Audio1Register = 0x900A;
|
||||
static const uint16_t Audio2Register = 0x900B;
|
||||
static const uint16_t Audio3Register = 0x900C;
|
||||
static const uint16_t Audio4Register = 0x900D;
|
||||
static const uint16_t AudioVolRegister = 0x900E;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -0,0 +1,514 @@
|
|||
const unsigned char PROGMEM basicrom[8192] = {
|
||||
0x78,0xE3,0x67,0xE4,0x43,0x42,0x4D,0x42,0x41,0x53,0x49,0x43,0x30,0xC8,0x41,0xC7,
|
||||
0x1D,0xCD,0xF7,0xC8,0xA4,0xCB,0xBE,0xCB,0x80,0xD0,0x05,0xCC,0xA4,0xC9,0x9F,0xC8,
|
||||
0x70,0xC8,0x27,0xC9,0x1C,0xC8,0x82,0xC8,0xD1,0xC8,0x3A,0xC9,0x2E,0xC8,0x4A,0xC9,
|
||||
0x2C,0xD8,0x64,0xE1,0x52,0xE1,0x61,0xE1,0xB2,0xD3,0x23,0xD8,0x7F,0xCA,0x9F,0xCA,
|
||||
0x56,0xC8,0x9B,0xC6,0x5D,0xC6,0x85,0xCA,0x26,0xE1,0xBA,0xE1,0xC3,0xE1,0x7A,0xCB,
|
||||
0x41,0xC6,0x39,0xDC,0xCC,0xDC,0x58,0xDC,0x00,0x00,0x7D,0xD3,0x9E,0xD3,0x71,0xDF,
|
||||
0x94,0xE0,0xEA,0xD9,0xED,0xDF,0x61,0xE2,0x68,0xE2,0xB1,0xE2,0x0B,0xE3,0x0D,0xD8,
|
||||
0x7C,0xD7,0x65,0xD4,0xAD,0xD7,0x8B,0xD7,0xEC,0xD6,0x00,0xD7,0x2C,0xD7,0x37,0xD7,
|
||||
0x79,0x69,0xD8,0x79,0x52,0xD8,0x7B,0x2A,0xDA,0x7B,0x11,0xDB,0x7F,0x7A,0xDF,0x50,
|
||||
0xE8,0xCF,0x46,0xE5,0xCF,0x7D,0xB3,0xDF,0x5A,0xD3,0xCE,0x64,0x15,0xD0,0x45,0x4E,
|
||||
0xC4,0x46,0x4F,0xD2,0x4E,0x45,0x58,0xD4,0x44,0x41,0x54,0xC1,0x49,0x4E,0x50,0x55,
|
||||
0x54,0xA3,0x49,0x4E,0x50,0x55,0xD4,0x44,0x49,0xCD,0x52,0x45,0x41,0xC4,0x4C,0x45,
|
||||
0xD4,0x47,0x4F,0x54,0xCF,0x52,0x55,0xCE,0x49,0xC6,0x52,0x45,0x53,0x54,0x4F,0x52,
|
||||
0xC5,0x47,0x4F,0x53,0x55,0xC2,0x52,0x45,0x54,0x55,0x52,0xCE,0x52,0x45,0xCD,0x53,
|
||||
0x54,0x4F,0xD0,0x4F,0xCE,0x57,0x41,0x49,0xD4,0x4C,0x4F,0x41,0xC4,0x53,0x41,0x56,
|
||||
0xC5,0x56,0x45,0x52,0x49,0x46,0xD9,0x44,0x45,0xC6,0x50,0x4F,0x4B,0xC5,0x50,0x52,
|
||||
0x49,0x4E,0x54,0xA3,0x50,0x52,0x49,0x4E,0xD4,0x43,0x4F,0x4E,0xD4,0x4C,0x49,0x53,
|
||||
0xD4,0x43,0x4C,0xD2,0x43,0x4D,0xC4,0x53,0x59,0xD3,0x4F,0x50,0x45,0xCE,0x43,0x4C,
|
||||
0x4F,0x53,0xC5,0x47,0x45,0xD4,0x4E,0x45,0xD7,0x54,0x41,0x42,0xA8,0x54,0xCF,0x46,
|
||||
0xCE,0x53,0x50,0x43,0xA8,0x54,0x48,0x45,0xCE,0x4E,0x4F,0xD4,0x53,0x54,0x45,0xD0,
|
||||
0xAB,0xAD,0xAA,0xAF,0xDE,0x41,0x4E,0xC4,0x4F,0xD2,0xBE,0xBD,0xBC,0x53,0x47,0xCE,
|
||||
0x49,0x4E,0xD4,0x41,0x42,0xD3,0x55,0x53,0xD2,0x46,0x52,0xC5,0x50,0x4F,0xD3,0x53,
|
||||
0x51,0xD2,0x52,0x4E,0xC4,0x4C,0x4F,0xC7,0x45,0x58,0xD0,0x43,0x4F,0xD3,0x53,0x49,
|
||||
0xCE,0x54,0x41,0xCE,0x41,0x54,0xCE,0x50,0x45,0x45,0xCB,0x4C,0x45,0xCE,0x53,0x54,
|
||||
0x52,0xA4,0x56,0x41,0xCC,0x41,0x53,0xC3,0x43,0x48,0x52,0xA4,0x4C,0x45,0x46,0x54,
|
||||
0xA4,0x52,0x49,0x47,0x48,0x54,0xA4,0x4D,0x49,0x44,0xA4,0x47,0xCF,0x00,0x54,0x4F,
|
||||
0x4F,0x20,0x4D,0x41,0x4E,0x59,0x20,0x46,0x49,0x4C,0x45,0xD3,0x46,0x49,0x4C,0x45,
|
||||
0x20,0x4F,0x50,0x45,0xCE,0x46,0x49,0x4C,0x45,0x20,0x4E,0x4F,0x54,0x20,0x4F,0x50,
|
||||
0x45,0xCE,0x46,0x49,0x4C,0x45,0x20,0x4E,0x4F,0x54,0x20,0x46,0x4F,0x55,0x4E,0xC4,
|
||||
0x44,0x45,0x56,0x49,0x43,0x45,0x20,0x4E,0x4F,0x54,0x20,0x50,0x52,0x45,0x53,0x45,
|
||||
0x4E,0xD4,0x4E,0x4F,0x54,0x20,0x49,0x4E,0x50,0x55,0x54,0x20,0x46,0x49,0x4C,0xC5,
|
||||
0x4E,0x4F,0x54,0x20,0x4F,0x55,0x54,0x50,0x55,0x54,0x20,0x46,0x49,0x4C,0xC5,0x4D,
|
||||
0x49,0x53,0x53,0x49,0x4E,0x47,0x20,0x46,0x49,0x4C,0x45,0x20,0x4E,0x41,0x4D,0xC5,
|
||||
0x49,0x4C,0x4C,0x45,0x47,0x41,0x4C,0x20,0x44,0x45,0x56,0x49,0x43,0x45,0x20,0x4E,
|
||||
0x55,0x4D,0x42,0x45,0xD2,0x4E,0x45,0x58,0x54,0x20,0x57,0x49,0x54,0x48,0x4F,0x55,
|
||||
0x54,0x20,0x46,0x4F,0xD2,0x53,0x59,0x4E,0x54,0x41,0xD8,0x52,0x45,0x54,0x55,0x52,
|
||||
0x4E,0x20,0x57,0x49,0x54,0x48,0x4F,0x55,0x54,0x20,0x47,0x4F,0x53,0x55,0xC2,0x4F,
|
||||
0x55,0x54,0x20,0x4F,0x46,0x20,0x44,0x41,0x54,0xC1,0x49,0x4C,0x4C,0x45,0x47,0x41,
|
||||
0x4C,0x20,0x51,0x55,0x41,0x4E,0x54,0x49,0x54,0xD9,0x4F,0x56,0x45,0x52,0x46,0x4C,
|
||||
0x4F,0xD7,0x4F,0x55,0x54,0x20,0x4F,0x46,0x20,0x4D,0x45,0x4D,0x4F,0x52,0xD9,0x55,
|
||||
0x4E,0x44,0x45,0x46,0x27,0x44,0x20,0x53,0x54,0x41,0x54,0x45,0x4D,0x45,0x4E,0xD4,
|
||||
0x42,0x41,0x44,0x20,0x53,0x55,0x42,0x53,0x43,0x52,0x49,0x50,0xD4,0x52,0x45,0x44,
|
||||
0x49,0x4D,0x27,0x44,0x20,0x41,0x52,0x52,0x41,0xD9,0x44,0x49,0x56,0x49,0x53,0x49,
|
||||
0x4F,0x4E,0x20,0x42,0x59,0x20,0x5A,0x45,0x52,0xCF,0x49,0x4C,0x4C,0x45,0x47,0x41,
|
||||
0x4C,0x20,0x44,0x49,0x52,0x45,0x43,0xD4,0x54,0x59,0x50,0x45,0x20,0x4D,0x49,0x53,
|
||||
0x4D,0x41,0x54,0x43,0xC8,0x53,0x54,0x52,0x49,0x4E,0x47,0x20,0x54,0x4F,0x4F,0x20,
|
||||
0x4C,0x4F,0x4E,0xC7,0x46,0x49,0x4C,0x45,0x20,0x44,0x41,0x54,0xC1,0x46,0x4F,0x52,
|
||||
0x4D,0x55,0x4C,0x41,0x20,0x54,0x4F,0x4F,0x20,0x43,0x4F,0x4D,0x50,0x4C,0x45,0xD8,
|
||||
0x43,0x41,0x4E,0x27,0x54,0x20,0x43,0x4F,0x4E,0x54,0x49,0x4E,0x55,0xC5,0x55,0x4E,
|
||||
0x44,0x45,0x46,0x27,0x44,0x20,0x46,0x55,0x4E,0x43,0x54,0x49,0x4F,0xCE,0x56,0x45,
|
||||
0x52,0x49,0x46,0xD9,0x4C,0x4F,0x41,0xC4,0x9E,0xC1,0xAC,0xC1,0xB5,0xC1,0xC2,0xC1,
|
||||
0xD0,0xC1,0xE2,0xC1,0xF0,0xC1,0xFF,0xC1,0x10,0xC2,0x25,0xC2,0x35,0xC2,0x3B,0xC2,
|
||||
0x4F,0xC2,0x5A,0xC2,0x6A,0xC2,0x72,0xC2,0x7F,0xC2,0x90,0xC2,0x9D,0xC2,0xAA,0xC2,
|
||||
0xBA,0xC2,0xC8,0xC2,0xD5,0xC2,0xE4,0xC2,0xED,0xC2,0x00,0xC3,0x0E,0xC3,0x1E,0xC3,
|
||||
0x24,0xC3,0x83,0xC3,0x0D,0x4F,0x4B,0x0D,0x00,0x0D,0x20,0x45,0x52,0x52,0x4F,0x52,
|
||||
0x00,0x20,0x49,0x4E,0x20,0x00,0x0D,0x0A,0x52,0x45,0x41,0x44,0x59,0x2E,0x0D,0x0A,
|
||||
0x00,0x0D,0x0A,0x42,0x52,0x45,0x41,0x4B,0x00,0xA0,0xBA,0xE8,0xE8,0xE8,0xE8,0xBD,
|
||||
0x01,0x01,0xC9,0x81,0xD0,0x21,0xA5,0x4A,0xD0,0x0A,0xBD,0x02,0x01,0x85,0x49,0xBD,
|
||||
0x03,0x01,0x85,0x4A,0xDD,0x03,0x01,0xD0,0x07,0xA5,0x49,0xDD,0x02,0x01,0xF0,0x07,
|
||||
0x8A,0x18,0x69,0x12,0xAA,0xD0,0xD8,0x60,0x20,0x08,0xC4,0x85,0x31,0x84,0x32,0x38,
|
||||
0xA5,0x5A,0xE5,0x5F,0x85,0x22,0xA8,0xA5,0x5B,0xE5,0x60,0xAA,0xE8,0x98,0xF0,0x23,
|
||||
0xA5,0x5A,0x38,0xE5,0x22,0x85,0x5A,0xB0,0x03,0xC6,0x5B,0x38,0xA5,0x58,0xE5,0x22,
|
||||
0x85,0x58,0xB0,0x08,0xC6,0x59,0x90,0x04,0xB1,0x5A,0x91,0x58,0x88,0xD0,0xF9,0xB1,
|
||||
0x5A,0x91,0x58,0xC6,0x5B,0xC6,0x59,0xCA,0xD0,0xF2,0x60,0x0A,0x69,0x3E,0xB0,0x35,
|
||||
0x85,0x22,0xBA,0xE4,0x22,0x90,0x2E,0x60,0xC4,0x34,0x90,0x28,0xD0,0x04,0xC5,0x33,
|
||||
0x90,0x22,0x48,0xA2,0x09,0x98,0x48,0xB5,0x57,0xCA,0x10,0xFA,0x20,0x26,0xD5,0xA2,
|
||||
0xF7,0x68,0x95,0x61,0xE8,0x30,0xFA,0x68,0xA8,0x68,0xC4,0x34,0x90,0x06,0xD0,0x05,
|
||||
0xC5,0x33,0xB0,0x01,0x60,0xA2,0x10,0x6C,0x00,0x03,0x8A,0x0A,0xAA,0xBD,0x26,0xC3,
|
||||
0x85,0x22,0xBD,0x27,0xC3,0x85,0x23,0x20,0xCC,0xFF,0xA9,0x00,0x85,0x13,0x20,0xD7,
|
||||
0xCA,0x20,0x45,0xCB,0xA0,0x00,0xB1,0x22,0x48,0x29,0x7F,0x20,0x47,0xCB,0xC8,0x68,
|
||||
0x10,0xF4,0x20,0x7A,0xC6,0xA9,0x69,0xA0,0xC3,0x20,0x1E,0xCB,0xA4,0x3A,0xC8,0xF0,
|
||||
0x03,0x20,0xC2,0xDD,0xA9,0x76,0xA0,0xC3,0x20,0x1E,0xCB,0xA9,0x80,0x20,0x90,0xFF,
|
||||
0x6C,0x02,0x03,0x20,0x60,0xC5,0x86,0x7A,0x84,0x7B,0x20,0x73,0x00,0xAA,0xF0,0xF0,
|
||||
0xA2,0xFF,0x86,0x3A,0x90,0x06,0x20,0x79,0xC5,0x4C,0xE1,0xC7,0x20,0x6B,0xC9,0x20,
|
||||
0x79,0xC5,0x84,0x0B,0x20,0x13,0xC6,0x90,0x44,0xA0,0x01,0xB1,0x5F,0x85,0x23,0xA5,
|
||||
0x2D,0x85,0x22,0xA5,0x60,0x85,0x25,0xA5,0x5F,0x88,0xF1,0x5F,0x18,0x65,0x2D,0x85,
|
||||
0x2D,0x85,0x24,0xA5,0x2E,0x69,0xFF,0x85,0x2E,0xE5,0x60,0xAA,0x38,0xA5,0x5F,0xE5,
|
||||
0x2D,0xA8,0xB0,0x03,0xE8,0xC6,0x25,0x18,0x65,0x22,0x90,0x03,0xC6,0x23,0x18,0xB1,
|
||||
0x22,0x91,0x24,0xC8,0xD0,0xF9,0xE6,0x23,0xE6,0x25,0xCA,0xD0,0xF2,0x20,0x59,0xC6,
|
||||
0x20,0x33,0xC5,0xAD,0x00,0x02,0xF0,0x88,0x18,0xA5,0x2D,0x85,0x5A,0x65,0x0B,0x85,
|
||||
0x58,0xA4,0x2E,0x84,0x5B,0x90,0x01,0xC8,0x84,0x59,0x20,0xB8,0xC3,0xA5,0x14,0xA4,
|
||||
0x15,0x8D,0xFE,0x01,0x8C,0xFF,0x01,0xA5,0x31,0xA4,0x32,0x85,0x2D,0x84,0x2E,0xA4,
|
||||
0x0B,0x88,0xB9,0xFC,0x01,0x91,0x5F,0x88,0x10,0xF8,0x20,0x59,0xC6,0x20,0x33,0xC5,
|
||||
0x4C,0x80,0xC4,0xA5,0x2B,0xA4,0x2C,0x85,0x22,0x84,0x23,0x18,0xA0,0x01,0xB1,0x22,
|
||||
0xF0,0x1D,0xA0,0x04,0xC8,0xB1,0x22,0xD0,0xFB,0xC8,0x98,0x65,0x22,0xAA,0xA0,0x00,
|
||||
0x91,0x22,0xA5,0x23,0x69,0x00,0xC8,0x91,0x22,0x86,0x22,0x85,0x23,0x90,0xDD,0x60,
|
||||
0xA2,0x00,0x20,0x0F,0xE1,0xC9,0x0D,0xF0,0x0D,0x9D,0x00,0x02,0xE8,0xE0,0x59,0x90,
|
||||
0xF1,0xA2,0x17,0x4C,0x37,0xC4,0x4C,0xCA,0xCA,0x6C,0x04,0x03,0xA6,0x7A,0xA0,0x04,
|
||||
0x84,0x0F,0xBD,0x00,0x02,0x10,0x07,0xC9,0xFF,0xF0,0x3E,0xE8,0xD0,0xF4,0xC9,0x20,
|
||||
0xF0,0x37,0x85,0x08,0xC9,0x22,0xF0,0x56,0x24,0x0F,0x70,0x2D,0xC9,0x3F,0xD0,0x04,
|
||||
0xA9,0x99,0xD0,0x25,0xC9,0x30,0x90,0x04,0xC9,0x3C,0x90,0x1D,0x84,0x71,0xA0,0x00,
|
||||
0x84,0x0B,0x88,0x86,0x7A,0xCA,0xC8,0xE8,0xBD,0x00,0x02,0x38,0xF9,0x9E,0xC0,0xF0,
|
||||
0xF5,0xC9,0x80,0xD0,0x30,0x05,0x0B,0xA4,0x71,0xE8,0xC8,0x99,0xFB,0x01,0xB9,0xFB,
|
||||
0x01,0xF0,0x36,0x38,0xE9,0x3A,0xF0,0x04,0xC9,0x49,0xD0,0x02,0x85,0x0F,0x38,0xE9,
|
||||
0x55,0xD0,0x9F,0x85,0x08,0xBD,0x00,0x02,0xF0,0xDF,0xC5,0x08,0xF0,0xDB,0xC8,0x99,
|
||||
0xFB,0x01,0xE8,0xD0,0xF0,0xA6,0x7A,0xE6,0x0B,0xC8,0xB9,0x9D,0xC0,0x10,0xFA,0xB9,
|
||||
0x9E,0xC0,0xD0,0xB4,0xBD,0x00,0x02,0x10,0xBE,0x99,0xFD,0x01,0xC6,0x7B,0xA9,0xFF,
|
||||
0x85,0x7A,0x60,0xA5,0x2B,0xA6,0x2C,0xA0,0x01,0x85,0x5F,0x86,0x60,0xB1,0x5F,0xF0,
|
||||
0x1F,0xC8,0xC8,0xA5,0x15,0xD1,0x5F,0x90,0x18,0xF0,0x03,0x88,0xD0,0x09,0xA5,0x14,
|
||||
0x88,0xD1,0x5F,0x90,0x0C,0xF0,0x0A,0x88,0xB1,0x5F,0xAA,0x88,0xB1,0x5F,0xB0,0xD7,
|
||||
0x18,0x60,0xD0,0xFD,0xA9,0x00,0xA8,0x91,0x2B,0xC8,0x91,0x2B,0xA5,0x2B,0x18,0x69,
|
||||
0x02,0x85,0x2D,0xA5,0x2C,0x69,0x00,0x85,0x2E,0x20,0x8E,0xC6,0xA9,0x00,0xD0,0x2D,
|
||||
0x20,0xE7,0xFF,0xA5,0x37,0xA4,0x38,0x85,0x33,0x84,0x34,0xA5,0x2D,0xA4,0x2E,0x85,
|
||||
0x2F,0x84,0x30,0x85,0x31,0x84,0x32,0x20,0x1D,0xC8,0xA2,0x19,0x86,0x16,0x68,0xA8,
|
||||
0x68,0xA2,0xFA,0x9A,0x48,0x98,0x48,0xA9,0x00,0x85,0x3E,0x85,0x10,0x60,0x18,0xA5,
|
||||
0x2B,0x69,0xFF,0x85,0x7A,0xA5,0x2C,0x69,0xFF,0x85,0x7B,0x60,0x90,0x06,0xF0,0x04,
|
||||
0xC9,0xAB,0xD0,0xE9,0x20,0x6B,0xC9,0x20,0x13,0xC6,0x20,0x79,0x00,0xF0,0x0C,0xC9,
|
||||
0xAB,0xD0,0x8E,0x20,0x73,0x00,0x20,0x6B,0xC9,0xD0,0x86,0x68,0x68,0xA5,0x14,0x05,
|
||||
0x15,0xD0,0x06,0xA9,0xFF,0x85,0x14,0x85,0x15,0xA0,0x01,0x84,0x0F,0xB1,0x5F,0xF0,
|
||||
0x43,0x20,0x2C,0xC8,0x20,0xD7,0xCA,0xC8,0xB1,0x5F,0xAA,0xC8,0xB1,0x5F,0xC5,0x15,
|
||||
0xD0,0x04,0xE4,0x14,0xF0,0x02,0xB0,0x2C,0x84,0x49,0x20,0xCD,0xDD,0xA9,0x20,0xA4,
|
||||
0x49,0x29,0x7F,0x20,0x47,0xCB,0xC9,0x22,0xD0,0x06,0xA5,0x0F,0x49,0xFF,0x85,0x0F,
|
||||
0xC8,0xF0,0x11,0xB1,0x5F,0xD0,0x10,0xA8,0xB1,0x5F,0xAA,0xC8,0xB1,0x5F,0x86,0x5F,
|
||||
0x85,0x60,0xD0,0xB5,0x4C,0x74,0xC4,0x6C,0x06,0x03,0x10,0xD7,0xC9,0xFF,0xF0,0xD3,
|
||||
0x24,0x0F,0x30,0xCF,0x38,0xE9,0x7F,0xAA,0x84,0x49,0xA0,0xFF,0xCA,0xF0,0x08,0xC8,
|
||||
0xB9,0x9E,0xC0,0x10,0xFA,0x30,0xF5,0xC8,0xB9,0x9E,0xC0,0x30,0xB2,0x20,0x47,0xCB,
|
||||
0xD0,0xF5,0xA9,0x80,0x85,0x10,0x20,0xA5,0xC9,0x20,0x8A,0xC3,0xD0,0x05,0x8A,0x69,
|
||||
0x0F,0xAA,0x9A,0x68,0x68,0xA9,0x09,0x20,0xFB,0xC3,0x20,0x06,0xC9,0x18,0x98,0x65,
|
||||
0x7A,0x48,0xA5,0x7B,0x69,0x00,0x48,0xA5,0x3A,0x48,0xA5,0x39,0x48,0xA9,0xA4,0x20,
|
||||
0xFF,0xCE,0x20,0x8D,0xCD,0x20,0x8A,0xCD,0xA5,0x66,0x09,0x7F,0x25,0x62,0x85,0x62,
|
||||
0xA9,0x8B,0xA0,0xC7,0x85,0x22,0x84,0x23,0x4C,0x43,0xCE,0xA9,0xBC,0xA0,0xD9,0x20,
|
||||
0xA2,0xDB,0x20,0x79,0x00,0xC9,0xA9,0xD0,0x06,0x20,0x73,0x00,0x20,0x8A,0xCD,0x20,
|
||||
0x2B,0xDC,0x20,0x38,0xCE,0xA5,0x4A,0x48,0xA5,0x49,0x48,0xA9,0x81,0x48,0x20,0x2C,
|
||||
0xC8,0xA5,0x7A,0xA4,0x7B,0xC0,0x02,0xEA,0xF0,0x04,0x85,0x3D,0x84,0x3E,0xA0,0x00,
|
||||
0xB1,0x7A,0xD0,0x43,0xA0,0x02,0xB1,0x7A,0x18,0xD0,0x03,0x4C,0x4B,0xC8,0xC8,0xB1,
|
||||
0x7A,0x85,0x39,0xC8,0xB1,0x7A,0x85,0x3A,0x98,0x65,0x7A,0x85,0x7A,0x90,0x02,0xE6,
|
||||
0x7B,0x6C,0x08,0x03,0x20,0x73,0x00,0x20,0xED,0xC7,0x4C,0xAE,0xC7,0xF0,0x3C,0xE9,
|
||||
0x80,0x90,0x11,0xC9,0x23,0xB0,0x17,0x0A,0xA8,0xB9,0x0D,0xC0,0x48,0xB9,0x0C,0xC0,
|
||||
0x48,0x4C,0x73,0x00,0x4C,0xA5,0xC9,0xC9,0x3A,0xF0,0xD6,0x4C,0x08,0xCF,0xC9,0x4B,
|
||||
0xD0,0xF9,0x20,0x73,0x00,0xA9,0xA4,0x20,0xFF,0xCE,0x4C,0xA0,0xC8,0x38,0xA5,0x2B,
|
||||
0xE9,0x01,0xA4,0x2C,0xB0,0x01,0x88,0x85,0x41,0x84,0x42,0x60,0x20,0xE1,0xFF,0xB0,
|
||||
0x01,0x18,0xD0,0x3C,0xA5,0x7A,0xA4,0x7B,0xA6,0x3A,0xE8,0xF0,0x0C,0x85,0x3D,0x84,
|
||||
0x3E,0xA5,0x39,0xA4,0x3A,0x85,0x3B,0x84,0x3C,0x68,0x68,0xA9,0x81,0xA0,0xC3,0x90,
|
||||
0x03,0x4C,0x69,0xC4,0x4C,0x74,0xC4,0xD0,0x17,0xA2,0x1A,0xA4,0x3E,0xD0,0x03,0x4C,
|
||||
0x37,0xC4,0xA5,0x3D,0x85,0x7A,0x84,0x7B,0xA5,0x3B,0xA4,0x3C,0x85,0x39,0x84,0x3A,
|
||||
0x60,0x08,0xA9,0x00,0x20,0x90,0xFF,0x28,0xD0,0x03,0x4C,0x59,0xC6,0x20,0x60,0xC6,
|
||||
0x4C,0x97,0xC8,0xA9,0x03,0x20,0xFB,0xC3,0xA5,0x7B,0x48,0xA5,0x7A,0x48,0xA5,0x3A,
|
||||
0x48,0xA5,0x39,0x48,0xA9,0x8D,0x48,0x20,0x79,0x00,0x20,0xA0,0xC8,0x4C,0xAE,0xC7,
|
||||
0x20,0x6B,0xC9,0x20,0x09,0xC9,0x38,0xA5,0x39,0xE5,0x14,0xA5,0x3A,0xE5,0x15,0xB0,
|
||||
0x0B,0x98,0x38,0x65,0x7A,0xA6,0x7B,0x90,0x07,0xE8,0xB0,0x04,0xA5,0x2B,0xA6,0x2C,
|
||||
0x20,0x17,0xC6,0x90,0x1E,0xA5,0x5F,0xE9,0x01,0x85,0x7A,0xA5,0x60,0xE9,0x00,0x85,
|
||||
0x7B,0x60,0xD0,0xFD,0xA9,0xFF,0x85,0x4A,0x20,0x8A,0xC3,0x9A,0xC9,0x8D,0xF0,0x0B,
|
||||
0xA2,0x0C,0x2C,0xA2,0x11,0x4C,0x37,0xC4,0x4C,0x08,0xCF,0x68,0x68,0x85,0x39,0x68,
|
||||
0x85,0x3A,0x68,0x85,0x7A,0x68,0x85,0x7B,0x20,0x06,0xC9,0x98,0x18,0x65,0x7A,0x85,
|
||||
0x7A,0x90,0x02,0xE6,0x7B,0x60,0xA2,0x3A,0x2C,0xA2,0x00,0x86,0x07,0xA0,0x00,0x84,
|
||||
0x08,0xA5,0x08,0xA6,0x07,0x85,0x07,0x86,0x08,0xB1,0x7A,0xF0,0xE8,0xC5,0x08,0xF0,
|
||||
0xE4,0xC8,0xC9,0x22,0xD0,0xF3,0xF0,0xE9,0x20,0x9E,0xCD,0x20,0x79,0x00,0xC9,0x89,
|
||||
0xF0,0x05,0xA9,0xA7,0x20,0xFF,0xCE,0xA5,0x61,0xD0,0x05,0x20,0x09,0xC9,0xF0,0xBB,
|
||||
0x20,0x79,0x00,0xB0,0x03,0x4C,0xA0,0xC8,0x4C,0xED,0xC7,0x20,0x9E,0xD7,0x48,0xC9,
|
||||
0x8D,0xF0,0x04,0xC9,0x89,0xD0,0x91,0xC6,0x65,0xD0,0x04,0x68,0x4C,0xEF,0xC7,0x20,
|
||||
0x73,0x00,0x20,0x6B,0xC9,0xC9,0x2C,0xF0,0xEE,0x68,0x60,0xA2,0x00,0x86,0x14,0x86,
|
||||
0x15,0xB0,0xF7,0xE9,0x2F,0x85,0x07,0xA5,0x15,0x85,0x22,0xC9,0x19,0xB0,0xD4,0xA5,
|
||||
0x14,0x0A,0x26,0x22,0x0A,0x26,0x22,0x65,0x14,0x85,0x14,0xA5,0x22,0x65,0x15,0x85,
|
||||
0x15,0x06,0x14,0x26,0x15,0xA5,0x14,0x65,0x07,0x85,0x14,0x90,0x02,0xE6,0x15,0x20,
|
||||
0x73,0x00,0x4C,0x71,0xC9,0x20,0x8B,0xD0,0x85,0x49,0x84,0x4A,0xA9,0xB2,0x20,0xFF,
|
||||
0xCE,0xA5,0x0E,0x48,0xA5,0x0D,0x48,0x20,0x9E,0xCD,0x68,0x2A,0x20,0x90,0xCD,0xD0,
|
||||
0x18,0x68,0x10,0x12,0x20,0x1B,0xDC,0x20,0xBF,0xD1,0xA0,0x00,0xA5,0x64,0x91,0x49,
|
||||
0xC8,0xA5,0x65,0x91,0x49,0x60,0x4C,0xD0,0xDB,0x68,0xA4,0x4A,0xC0,0xDF,0xD0,0x4C,
|
||||
0x20,0xA6,0xD6,0xC9,0x06,0xD0,0x3D,0xA0,0x00,0x84,0x61,0x84,0x66,0x84,0x71,0x20,
|
||||
0x1D,0xCA,0x20,0xE2,0xDA,0xE6,0x71,0xA4,0x71,0x20,0x1D,0xCA,0x20,0x0C,0xDC,0xAA,
|
||||
0xF0,0x05,0xE8,0x8A,0x20,0xED,0xDA,0xA4,0x71,0xC8,0xC0,0x06,0xD0,0xDF,0x20,0xE2,
|
||||
0xDA,0x20,0x9B,0xDC,0xA6,0x64,0xA4,0x63,0xA5,0x65,0x4C,0xDB,0xFF,0xB1,0x22,0x20,
|
||||
0x80,0x00,0x90,0x03,0x4C,0x48,0xD2,0xE9,0x2F,0x4C,0x7E,0xDD,0xA0,0x02,0xB1,0x64,
|
||||
0xC5,0x34,0x90,0x17,0xD0,0x07,0x88,0xB1,0x64,0xC5,0x33,0x90,0x0E,0xA4,0x65,0xC4,
|
||||
0x2E,0x90,0x08,0xD0,0x0D,0xA5,0x64,0xC5,0x2D,0xB0,0x07,0xA5,0x64,0xA4,0x65,0x4C,
|
||||
0x68,0xCA,0xA0,0x00,0xB1,0x64,0x20,0x75,0xD4,0xA5,0x50,0xA4,0x51,0x85,0x6F,0x84,
|
||||
0x70,0x20,0x7A,0xD6,0xA9,0x61,0xA0,0x00,0x85,0x50,0x84,0x51,0x20,0xDB,0xD6,0xA0,
|
||||
0x00,0xB1,0x50,0x91,0x49,0xC8,0xB1,0x50,0x91,0x49,0xC8,0xB1,0x50,0x91,0x49,0x60,
|
||||
0x20,0x86,0xCA,0x4C,0xB5,0xCB,0x20,0x9E,0xD7,0xF0,0x05,0xA9,0x2C,0x20,0xFF,0xCE,
|
||||
0x08,0x86,0x13,0x20,0x15,0xE1,0x28,0x4C,0xA0,0xCA,0x20,0x21,0xCB,0x20,0x79,0x00,
|
||||
0xF0,0x35,0xF0,0x43,0xC9,0xA3,0xF0,0x50,0xC9,0xA6,0x18,0xF0,0x4B,0xC9,0x2C,0xF0,
|
||||
0x37,0xC9,0x3B,0xF0,0x5E,0x20,0x9E,0xCD,0x24,0x0D,0x30,0xDE,0x20,0xDD,0xDD,0x20,
|
||||
0x87,0xD4,0x20,0x21,0xCB,0x20,0x3B,0xCB,0xD0,0xD3,0xA9,0x00,0x9D,0x00,0x02,0xA2,
|
||||
0xFF,0xA0,0x01,0xA5,0x13,0xD0,0x10,0xA9,0x0D,0x20,0x47,0xCB,0x24,0x13,0x10,0x05,
|
||||
0xA9,0x0A,0x20,0x47,0xCB,0x49,0xFF,0x60,0x38,0x20,0xF0,0xFF,0x98,0x38,0xE9,0x0B,
|
||||
0xB0,0xFC,0x49,0xFF,0x69,0x01,0xD0,0x16,0x08,0x38,0x20,0xF0,0xFF,0x84,0x09,0x20,
|
||||
0x9B,0xD7,0xC9,0x29,0xD0,0x59,0x28,0x90,0x06,0x8A,0xE5,0x09,0x90,0x05,0xAA,0xE8,
|
||||
0xCA,0xD0,0x06,0x20,0x73,0x00,0x4C,0xA2,0xCA,0x20,0x3B,0xCB,0xD0,0xF2,0x20,0x87,
|
||||
0xD4,0x20,0xA6,0xD6,0xAA,0xA0,0x00,0xE8,0xCA,0xF0,0xBC,0xB1,0x22,0x20,0x47,0xCB,
|
||||
0xC8,0xC9,0x0D,0xD0,0xF3,0x20,0xE5,0xCA,0x4C,0x28,0xCB,0xA5,0x13,0xF0,0x03,0xA9,
|
||||
0x20,0x2C,0xA9,0x1D,0x2C,0xA9,0x3F,0x20,0x09,0xE1,0x29,0xFF,0x60,0xA5,0x11,0xF0,
|
||||
0x11,0x30,0x04,0xA0,0xFF,0xD0,0x04,0xA5,0x3F,0xA4,0x40,0x85,0x39,0x84,0x3A,0x4C,
|
||||
0x08,0xCF,0xA5,0x13,0xF0,0x05,0xA2,0x18,0x4C,0x37,0xC4,0xA9,0x0C,0xA0,0xCD,0x20,
|
||||
0x1E,0xCB,0xA5,0x3D,0xA4,0x3E,0x85,0x7A,0x84,0x7B,0x60,0x20,0xA6,0xD3,0xC9,0x23,
|
||||
0xD0,0x10,0x20,0x73,0x00,0x20,0x9E,0xD7,0xA9,0x2C,0x20,0xFF,0xCE,0x86,0x13,0x20,
|
||||
0x1B,0xE1,0xA2,0x01,0xA0,0x02,0xA9,0x00,0x8D,0x01,0x02,0xA9,0x40,0x20,0x0F,0xCC,
|
||||
0xA6,0x13,0xD0,0x13,0x60,0x20,0x9E,0xD7,0xA9,0x2C,0x20,0xFF,0xCE,0x86,0x13,0x20,
|
||||
0x1B,0xE1,0x20,0xCE,0xCB,0xA5,0x13,0x20,0xCC,0xFF,0xA2,0x00,0x86,0x13,0x60,0xC9,
|
||||
0x22,0xD0,0x0B,0x20,0xBD,0xCE,0xA9,0x3B,0x20,0xFF,0xCE,0x20,0x21,0xCB,0x20,0xA6,
|
||||
0xD3,0xA9,0x2C,0x8D,0xFF,0x01,0x20,0xF9,0xCB,0xA5,0x13,0xF0,0x0D,0x20,0xB7,0xFF,
|
||||
0x29,0x02,0xF0,0x06,0x20,0xB5,0xCB,0x4C,0xF8,0xC8,0xAD,0x00,0x02,0xD0,0x1E,0xA5,
|
||||
0x13,0xD0,0xE3,0x20,0x06,0xC9,0x4C,0xFB,0xC8,0xA5,0x13,0xD0,0x06,0x20,0x45,0xCB,
|
||||
0x20,0x3B,0xCB,0x4C,0x60,0xC5,0xA6,0x41,0xA4,0x42,0xA9,0x98,0x2C,0xA9,0x00,0x85,
|
||||
0x11,0x86,0x43,0x84,0x44,0x20,0x8B,0xD0,0x85,0x49,0x84,0x4A,0xA5,0x7A,0xA4,0x7B,
|
||||
0x85,0x4B,0x84,0x4C,0xA6,0x43,0xA4,0x44,0x86,0x7A,0x84,0x7B,0x20,0x79,0x00,0xD0,
|
||||
0x20,0x24,0x11,0x50,0x0C,0x20,0x21,0xE1,0x8D,0x00,0x02,0xA2,0xFF,0xA0,0x01,0xD0,
|
||||
0x0C,0x30,0x75,0xA5,0x13,0xD0,0x03,0x20,0x45,0xCB,0x20,0xF9,0xCB,0x86,0x7A,0x84,
|
||||
0x7B,0x20,0x73,0x00,0x24,0x0D,0x10,0x31,0x24,0x11,0x50,0x09,0xE8,0x86,0x7A,0xA9,
|
||||
0x00,0x85,0x07,0xF0,0x0C,0x85,0x07,0xC9,0x22,0xF0,0x07,0xA9,0x3A,0x85,0x07,0xA9,
|
||||
0x2C,0x18,0x85,0x08,0xA5,0x7A,0xA4,0x7B,0x69,0x00,0x90,0x01,0xC8,0x20,0x8D,0xD4,
|
||||
0x20,0xE2,0xD7,0x20,0xDA,0xC9,0x4C,0x91,0xCC,0x20,0xF3,0xDC,0xA5,0x0E,0x20,0xC2,
|
||||
0xC9,0x20,0x79,0x00,0xF0,0x07,0xC9,0x2C,0xF0,0x03,0x4C,0x4D,0xCB,0xA5,0x7A,0xA4,
|
||||
0x7B,0x85,0x43,0x84,0x44,0xA5,0x4B,0xA4,0x4C,0x85,0x7A,0x84,0x7B,0x20,0x79,0x00,
|
||||
0xF0,0x2D,0x20,0xFD,0xCE,0x4C,0x15,0xCC,0x20,0x06,0xC9,0xC8,0xAA,0xD0,0x12,0xA2,
|
||||
0x0D,0xC8,0xB1,0x7A,0xF0,0x6C,0xC8,0xB1,0x7A,0x85,0x3F,0xC8,0xB1,0x7A,0xC8,0x85,
|
||||
0x40,0x20,0xFB,0xC8,0x20,0x79,0x00,0xAA,0xE0,0x83,0xD0,0xDC,0x4C,0x51,0xCC,0xA5,
|
||||
0x43,0xA4,0x44,0xA6,0x11,0x10,0x03,0x4C,0x27,0xC8,0xA0,0x00,0xB1,0x43,0xF0,0x0B,
|
||||
0xA5,0x13,0xD0,0x07,0xA9,0xFC,0xA0,0xCC,0x4C,0x1E,0xCB,0x60,0x3F,0x45,0x58,0x54,
|
||||
0x52,0x41,0x20,0x49,0x47,0x4E,0x4F,0x52,0x45,0x44,0x0D,0x00,0x3F,0x52,0x45,0x44,
|
||||
0x4F,0x20,0x46,0x52,0x4F,0x4D,0x20,0x53,0x54,0x41,0x52,0x54,0x0D,0x00,0xD0,0x04,
|
||||
0xA0,0x00,0xF0,0x03,0x20,0x8B,0xD0,0x85,0x49,0x84,0x4A,0x20,0x8A,0xC3,0xF0,0x05,
|
||||
0xA2,0x0A,0x4C,0x37,0xC4,0x9A,0x8A,0x18,0x69,0x04,0x48,0x69,0x06,0x85,0x24,0x68,
|
||||
0xA0,0x01,0x20,0xA2,0xDB,0xBA,0xBD,0x09,0x01,0x85,0x66,0xA5,0x49,0xA4,0x4A,0x20,
|
||||
0x67,0xD8,0x20,0xD0,0xDB,0xA0,0x01,0x20,0x5D,0xDC,0xBA,0x38,0xFD,0x09,0x01,0xF0,
|
||||
0x17,0xBD,0x0F,0x01,0x85,0x39,0xBD,0x10,0x01,0x85,0x3A,0xBD,0x12,0x01,0x85,0x7A,
|
||||
0xBD,0x11,0x01,0x85,0x7B,0x4C,0xAE,0xC7,0x8A,0x69,0x11,0xAA,0x9A,0x20,0x79,0x00,
|
||||
0xC9,0x2C,0xD0,0xF1,0x20,0x73,0x00,0x20,0x24,0xCD,0x20,0x9E,0xCD,0x18,0x24,0x38,
|
||||
0x24,0x0D,0x30,0x03,0xB0,0x03,0x60,0xB0,0xFD,0xA2,0x16,0x4C,0x37,0xC4,0xA6,0x7A,
|
||||
0xD0,0x02,0xC6,0x7B,0xC6,0x7A,0xA2,0x00,0x24,0x48,0x8A,0x48,0xA9,0x01,0x20,0xFB,
|
||||
0xC3,0x20,0x83,0xCE,0xA9,0x00,0x85,0x4D,0x20,0x79,0x00,0x38,0xE9,0xB1,0x90,0x17,
|
||||
0xC9,0x03,0xB0,0x13,0xC9,0x01,0x2A,0x49,0x01,0x45,0x4D,0xC5,0x4D,0x90,0x61,0x85,
|
||||
0x4D,0x20,0x73,0x00,0x4C,0xBB,0xCD,0xA6,0x4D,0xD0,0x2C,0xB0,0x7B,0x69,0x07,0x90,
|
||||
0x77,0x65,0x0D,0xD0,0x03,0x4C,0x3D,0xD6,0x69,0xFF,0x85,0x22,0x0A,0x65,0x22,0xA8,
|
||||
0x68,0xD9,0x80,0xC0,0xB0,0x67,0x20,0x8D,0xCD,0x48,0x20,0x20,0xCE,0x68,0xA4,0x4B,
|
||||
0x10,0x17,0xAA,0xF0,0x56,0xD0,0x5F,0x46,0x0D,0x8A,0x2A,0xA6,0x7A,0xD0,0x02,0xC6,
|
||||
0x7B,0xC6,0x7A,0xA0,0x1B,0x85,0x4D,0xD0,0xD7,0xD9,0x80,0xC0,0xB0,0x48,0x90,0xD9,
|
||||
0xB9,0x82,0xC0,0x48,0xB9,0x81,0xC0,0x48,0x20,0x33,0xCE,0xA5,0x4D,0x4C,0xA9,0xCD,
|
||||
0x4C,0x08,0xCF,0xA5,0x66,0xBE,0x80,0xC0,0xA8,0x68,0x85,0x22,0xE6,0x22,0x68,0x85,
|
||||
0x23,0x98,0x48,0x20,0x1B,0xDC,0xA5,0x65,0x48,0xA5,0x64,0x48,0xA5,0x63,0x48,0xA5,
|
||||
0x62,0x48,0xA5,0x61,0x48,0x6C,0x22,0x00,0xA0,0xFF,0x68,0xF0,0x23,0xC9,0x64,0xF0,
|
||||
0x03,0x20,0x8D,0xCD,0x84,0x4B,0x68,0x4A,0x85,0x12,0x68,0x85,0x69,0x68,0x85,0x6A,
|
||||
0x68,0x85,0x6B,0x68,0x85,0x6C,0x68,0x85,0x6D,0x68,0x85,0x6E,0x45,0x66,0x85,0x6F,
|
||||
0xA5,0x61,0x60,0x6C,0x0A,0x03,0xA9,0x00,0x85,0x0D,0x20,0x73,0x00,0xB0,0x03,0x4C,
|
||||
0xF3,0xDC,0x20,0x13,0xD1,0x90,0x03,0x4C,0x28,0xCF,0xC9,0xFF,0xD0,0x0F,0xA9,0xA8,
|
||||
0xA0,0xCE,0x20,0xA2,0xDB,0x4C,0x73,0x00,0x82,0x49,0x0F,0xDA,0xA1,0xC9,0x2E,0xF0,
|
||||
0xDE,0xC9,0xAB,0xF0,0x58,0xC9,0xAA,0xF0,0xD1,0xC9,0x22,0xD0,0x0F,0xA5,0x7A,0xA4,
|
||||
0x7B,0x69,0x00,0x90,0x01,0xC8,0x20,0x87,0xD4,0x4C,0xE2,0xD7,0xC9,0xA8,0xD0,0x13,
|
||||
0xA0,0x18,0xD0,0x3B,0x20,0xBF,0xD1,0xA5,0x65,0x49,0xFF,0xA8,0xA5,0x64,0x49,0xFF,
|
||||
0x4C,0x91,0xD3,0xC9,0xA5,0xD0,0x03,0x4C,0xF4,0xD3,0xC9,0xB4,0x90,0x03,0x4C,0xA7,
|
||||
0xCF,0x20,0xFA,0xCE,0x20,0x9E,0xCD,0xA9,0x29,0x2C,0xA9,0x28,0x2C,0xA9,0x2C,0xA0,
|
||||
0x00,0xD1,0x7A,0xD0,0x03,0x4C,0x73,0x00,0xA2,0x0B,0x4C,0x37,0xC4,0xA0,0x15,0x68,
|
||||
0x68,0x4C,0xFA,0xCD,0x38,0xA5,0x64,0xE9,0x00,0xA5,0x65,0xE9,0xC0,0x90,0x08,0xA9,
|
||||
0x87,0xE5,0x64,0xA9,0xE3,0xE5,0x65,0x60,0x20,0x8B,0xD0,0x85,0x64,0x84,0x65,0xA6,
|
||||
0x45,0xA4,0x46,0xA5,0x0D,0xF0,0x26,0xA9,0x00,0x85,0x70,0x20,0x14,0xCF,0x90,0x1C,
|
||||
0xE0,0x54,0xD0,0x18,0xC0,0xC9,0xD0,0x14,0x20,0x84,0xCF,0x84,0x5E,0x88,0x84,0x71,
|
||||
0xA0,0x06,0x84,0x5D,0xA0,0x24,0x20,0x68,0xDE,0x4C,0x6F,0xD4,0x60,0x24,0x0E,0x10,
|
||||
0x0D,0xA0,0x00,0xB1,0x64,0xAA,0xC8,0xB1,0x64,0xA8,0x8A,0x4C,0x91,0xD3,0x20,0x14,
|
||||
0xCF,0x90,0x2D,0xE0,0x54,0xD0,0x1B,0xC0,0x49,0xD0,0x25,0x20,0x84,0xCF,0x98,0xA2,
|
||||
0xA0,0x4C,0x4F,0xDC,0x20,0xDE,0xFF,0x86,0x64,0x84,0x63,0x85,0x65,0xA0,0x00,0x84,
|
||||
0x62,0x60,0xE0,0x53,0xD0,0x0A,0xC0,0x54,0xD0,0x06,0x20,0xB7,0xFF,0x4C,0x3C,0xDC,
|
||||
0xA5,0x64,0xA4,0x65,0x4C,0xA2,0xDB,0x0A,0x48,0xAA,0x20,0x73,0x00,0xE0,0x8F,0x90,
|
||||
0x20,0x20,0xFA,0xCE,0x20,0x9E,0xCD,0x20,0xFD,0xCE,0x20,0x8F,0xCD,0x68,0xAA,0xA5,
|
||||
0x65,0x48,0xA5,0x64,0x48,0x8A,0x48,0x20,0x9E,0xD7,0x68,0xA8,0x8A,0x48,0x4C,0xD6,
|
||||
0xCF,0x20,0xF1,0xCE,0x68,0xA8,0xB9,0xEA,0xBF,0x85,0x55,0xB9,0xEB,0xBF,0x85,0x56,
|
||||
0x20,0x54,0x00,0x4C,0x8D,0xCD,0xA0,0xFF,0x2C,0xA0,0x00,0x84,0x0B,0x20,0xBF,0xD1,
|
||||
0xA5,0x64,0x45,0x0B,0x85,0x07,0xA5,0x65,0x45,0x0B,0x85,0x08,0x20,0xFC,0xDB,0x20,
|
||||
0xBF,0xD1,0xA5,0x65,0x45,0x0B,0x25,0x08,0x45,0x0B,0xA8,0xA5,0x64,0x45,0x0B,0x25,
|
||||
0x07,0x45,0x0B,0x4C,0x91,0xD3,0x20,0x90,0xCD,0xB0,0x13,0xA5,0x6E,0x09,0x7F,0x25,
|
||||
0x6A,0x85,0x6A,0xA9,0x69,0xA0,0x00,0x20,0x5B,0xDC,0xAA,0x4C,0x61,0xD0,0xA9,0x00,
|
||||
0x85,0x0D,0xC6,0x4D,0x20,0xA6,0xD6,0x85,0x61,0x86,0x62,0x84,0x63,0xA5,0x6C,0xA4,
|
||||
0x6D,0x20,0xAA,0xD6,0x86,0x6C,0x84,0x6D,0xAA,0x38,0xE5,0x61,0xF0,0x08,0xA9,0x01,
|
||||
0x90,0x04,0xA6,0x61,0xA9,0xFF,0x85,0x66,0xA0,0xFF,0xE8,0xC8,0xCA,0xD0,0x07,0xA6,
|
||||
0x66,0x30,0x0F,0x18,0x90,0x0C,0xB1,0x6C,0xD1,0x62,0xF0,0xEF,0xA2,0xFF,0xB0,0x02,
|
||||
0xA2,0x01,0xE8,0x8A,0x2A,0x25,0x12,0xF0,0x02,0xA9,0xFF,0x4C,0x3C,0xDC,0x20,0xFD,
|
||||
0xCE,0xAA,0x20,0x90,0xD0,0x20,0x79,0x00,0xD0,0xF4,0x60,0xA2,0x00,0x20,0x79,0x00,
|
||||
0x86,0x0C,0x85,0x45,0x20,0x79,0x00,0x20,0x13,0xD1,0xB0,0x03,0x4C,0x08,0xCF,0xA2,
|
||||
0x00,0x86,0x0D,0x86,0x0E,0x20,0x73,0x00,0x90,0x05,0x20,0x13,0xD1,0x90,0x0B,0xAA,
|
||||
0x20,0x73,0x00,0x90,0xFB,0x20,0x13,0xD1,0xB0,0xF6,0xC9,0x24,0xD0,0x06,0xA9,0xFF,
|
||||
0x85,0x0D,0xD0,0x10,0xC9,0x25,0xD0,0x13,0xA5,0x10,0xD0,0xD0,0xA9,0x80,0x85,0x0E,
|
||||
0x05,0x45,0x85,0x45,0x8A,0x09,0x80,0xAA,0x20,0x73,0x00,0x86,0x46,0x38,0x05,0x10,
|
||||
0xE9,0x28,0xD0,0x03,0x4C,0xD1,0xD1,0xA0,0x00,0x84,0x10,0xA5,0x2D,0xA6,0x2E,0x86,
|
||||
0x60,0x85,0x5F,0xE4,0x30,0xD0,0x04,0xC5,0x2F,0xF0,0x22,0xA5,0x45,0xD1,0x5F,0xD0,
|
||||
0x08,0xA5,0x46,0xC8,0xD1,0x5F,0xF0,0x7D,0x88,0x18,0xA5,0x5F,0x69,0x07,0x90,0xE1,
|
||||
0xE8,0xD0,0xDC,0xC9,0x41,0x90,0x05,0xE9,0x5B,0x38,0xE9,0xA5,0x60,0x68,0x48,0xC9,
|
||||
0x2A,0xD0,0x05,0xA9,0x13,0xA0,0xDF,0x60,0xA5,0x45,0xA4,0x46,0xC9,0x54,0xD0,0x0B,
|
||||
0xC0,0xC9,0xF0,0xEF,0xC0,0x49,0xD0,0x03,0x4C,0x08,0xCF,0xC9,0x53,0xD0,0x04,0xC0,
|
||||
0x54,0xF0,0xF5,0xA5,0x2F,0xA4,0x30,0x85,0x5F,0x84,0x60,0xA5,0x31,0xA4,0x32,0x85,
|
||||
0x5A,0x84,0x5B,0x18,0x69,0x07,0x90,0x01,0xC8,0x85,0x58,0x84,0x59,0x20,0xB8,0xC3,
|
||||
0xA5,0x58,0xA4,0x59,0xC8,0x85,0x2F,0x84,0x30,0xA0,0x00,0xA5,0x45,0x91,0x5F,0xC8,
|
||||
0xA5,0x46,0x91,0x5F,0xA9,0x00,0xC8,0x91,0x5F,0xC8,0x91,0x5F,0xC8,0x91,0x5F,0xC8,
|
||||
0x91,0x5F,0xC8,0x91,0x5F,0xA5,0x5F,0x18,0x69,0x02,0xA4,0x60,0x90,0x01,0xC8,0x85,
|
||||
0x47,0x84,0x48,0x60,0xA5,0x0B,0x0A,0x69,0x05,0x65,0x5F,0xA4,0x60,0x90,0x01,0xC8,
|
||||
0x85,0x58,0x84,0x59,0x60,0x90,0x80,0x00,0x00,0x00,0x20,0xBF,0xD1,0xA5,0x64,0xA4,
|
||||
0x65,0x60,0x20,0x73,0x00,0x20,0x9E,0xCD,0x20,0x8D,0xCD,0xA5,0x66,0x30,0x0D,0xA5,
|
||||
0x61,0xC9,0x90,0x90,0x09,0xA9,0xA5,0xA0,0xD1,0x20,0x5B,0xDC,0xD0,0x7A,0x4C,0x9B,
|
||||
0xDC,0xA5,0x0C,0x05,0x0E,0x48,0xA5,0x0D,0x48,0xA0,0x00,0x98,0x48,0xA5,0x46,0x48,
|
||||
0xA5,0x45,0x48,0x20,0xB2,0xD1,0x68,0x85,0x45,0x68,0x85,0x46,0x68,0xA8,0xBA,0xBD,
|
||||
0x02,0x01,0x48,0xBD,0x01,0x01,0x48,0xA5,0x64,0x9D,0x02,0x01,0xA5,0x65,0x9D,0x01,
|
||||
0x01,0xC8,0x20,0x79,0x00,0xC9,0x2C,0xF0,0xD2,0x84,0x0B,0x20,0xF7,0xCE,0x68,0x85,
|
||||
0x0D,0x68,0x85,0x0E,0x29,0x7F,0x85,0x0C,0xA6,0x2F,0xA5,0x30,0x86,0x5F,0x85,0x60,
|
||||
0xC5,0x32,0xD0,0x04,0xE4,0x31,0xF0,0x39,0xA0,0x00,0xB1,0x5F,0xC8,0xC5,0x45,0xD0,
|
||||
0x06,0xA5,0x46,0xD1,0x5F,0xF0,0x16,0xC8,0xB1,0x5F,0x18,0x65,0x5F,0xAA,0xC8,0xB1,
|
||||
0x5F,0x65,0x60,0x90,0xD7,0xA2,0x12,0x2C,0xA2,0x0E,0x4C,0x37,0xC4,0xA2,0x13,0xA5,
|
||||
0x0C,0xD0,0xF7,0x20,0x94,0xD1,0xA5,0x0B,0xA0,0x04,0xD1,0x5F,0xD0,0xE7,0x4C,0xEA,
|
||||
0xD2,0x20,0x94,0xD1,0x20,0x08,0xC4,0xA0,0x00,0x84,0x72,0xA2,0x05,0xA5,0x45,0x91,
|
||||
0x5F,0x10,0x01,0xCA,0xC8,0xA5,0x46,0x91,0x5F,0x10,0x02,0xCA,0xCA,0x86,0x71,0xA5,
|
||||
0x0B,0xC8,0xC8,0xC8,0x91,0x5F,0xA2,0x0B,0xA9,0x00,0x24,0x0C,0x50,0x08,0x68,0x18,
|
||||
0x69,0x01,0xAA,0x68,0x69,0x00,0xC8,0x91,0x5F,0xC8,0x8A,0x91,0x5F,0x20,0x4C,0xD3,
|
||||
0x86,0x71,0x85,0x72,0xA4,0x22,0xC6,0x0B,0xD0,0xDC,0x65,0x59,0xB0,0x5D,0x85,0x59,
|
||||
0xA8,0x8A,0x65,0x58,0x90,0x03,0xC8,0xF0,0x52,0x20,0x08,0xC4,0x85,0x31,0x84,0x32,
|
||||
0xA9,0x00,0xE6,0x72,0xA4,0x71,0xF0,0x05,0x88,0x91,0x58,0xD0,0xFB,0xC6,0x59,0xC6,
|
||||
0x72,0xD0,0xF5,0xE6,0x59,0x38,0xA5,0x31,0xE5,0x5F,0xA0,0x02,0x91,0x5F,0xA5,0x32,
|
||||
0xC8,0xE5,0x60,0x91,0x5F,0xA5,0x0C,0xD0,0x62,0xC8,0xB1,0x5F,0x85,0x0B,0xA9,0x00,
|
||||
0x85,0x71,0x85,0x72,0xC8,0x68,0xAA,0x85,0x64,0x68,0x85,0x65,0xD1,0x5F,0x90,0x0E,
|
||||
0xD0,0x06,0xC8,0x8A,0xD1,0x5F,0x90,0x07,0x4C,0x45,0xD2,0x4C,0x35,0xC4,0xC8,0xA5,
|
||||
0x72,0x05,0x71,0x18,0xF0,0x0A,0x20,0x4C,0xD3,0x8A,0x65,0x64,0xAA,0x98,0xA4,0x22,
|
||||
0x65,0x65,0x86,0x71,0xC6,0x0B,0xD0,0xCA,0x85,0x72,0xA2,0x05,0xA5,0x45,0x10,0x01,
|
||||
0xCA,0xA5,0x46,0x10,0x02,0xCA,0xCA,0x86,0x28,0xA9,0x00,0x20,0x55,0xD3,0x8A,0x65,
|
||||
0x58,0x85,0x47,0x98,0x65,0x59,0x85,0x48,0xA8,0xA5,0x47,0x60,0x84,0x22,0xB1,0x5F,
|
||||
0x85,0x28,0x88,0xB1,0x5F,0x85,0x29,0xA9,0x10,0x85,0x5D,0xA2,0x00,0xA0,0x00,0x8A,
|
||||
0x0A,0xAA,0x98,0x2A,0xA8,0xB0,0xA4,0x06,0x71,0x26,0x72,0x90,0x0B,0x18,0x8A,0x65,
|
||||
0x28,0xAA,0x98,0x65,0x29,0xA8,0xB0,0x93,0xC6,0x5D,0xD0,0xE3,0x60,0xA5,0x0D,0xF0,
|
||||
0x03,0x20,0xA6,0xD6,0x20,0x26,0xD5,0x38,0xA5,0x33,0xE5,0x31,0xA8,0xA5,0x34,0xE5,
|
||||
0x32,0xA2,0x00,0x86,0x0D,0x85,0x62,0x84,0x63,0xA2,0x90,0x4C,0x44,0xDC,0x38,0x20,
|
||||
0xF0,0xFF,0xA9,0x00,0xF0,0xEB,0xA6,0x3A,0xE8,0xD0,0xA0,0xA2,0x15,0x2C,0xA2,0x1B,
|
||||
0x4C,0x37,0xC4,0x20,0xE1,0xD3,0x20,0xA6,0xD3,0x20,0xFA,0xCE,0xA9,0x80,0x85,0x10,
|
||||
0x20,0x8B,0xD0,0x20,0x8D,0xCD,0x20,0xF7,0xCE,0xA9,0xB2,0x20,0xFF,0xCE,0x48,0xA5,
|
||||
0x48,0x48,0xA5,0x47,0x48,0xA5,0x7B,0x48,0xA5,0x7A,0x48,0x20,0xF8,0xC8,0x4C,0x4F,
|
||||
0xD4,0xA9,0xA5,0x20,0xFF,0xCE,0x09,0x80,0x85,0x10,0x20,0x92,0xD0,0x85,0x4E,0x84,
|
||||
0x4F,0x4C,0x8D,0xCD,0x20,0xE1,0xD3,0xA5,0x4F,0x48,0xA5,0x4E,0x48,0x20,0xF1,0xCE,
|
||||
0x20,0x8D,0xCD,0x68,0x85,0x4E,0x68,0x85,0x4F,0xA0,0x02,0xB1,0x4E,0x85,0x47,0xAA,
|
||||
0xC8,0xB1,0x4E,0xF0,0x99,0x85,0x48,0xC8,0xB1,0x47,0x48,0x88,0x10,0xFA,0xA4,0x48,
|
||||
0x20,0xD4,0xDB,0xA5,0x7B,0x48,0xA5,0x7A,0x48,0xB1,0x4E,0x85,0x7A,0xC8,0xB1,0x4E,
|
||||
0x85,0x7B,0xA5,0x48,0x48,0xA5,0x47,0x48,0x20,0x8A,0xCD,0x68,0x85,0x4E,0x68,0x85,
|
||||
0x4F,0x20,0x79,0x00,0xF0,0x03,0x4C,0x08,0xCF,0x68,0x85,0x7A,0x68,0x85,0x7B,0xA0,
|
||||
0x00,0x68,0x91,0x4E,0x68,0xC8,0x91,0x4E,0x68,0xC8,0x91,0x4E,0x68,0xC8,0x91,0x4E,
|
||||
0x68,0xC8,0x91,0x4E,0x60,0x20,0x8D,0xCD,0xA0,0x00,0x20,0xDF,0xDD,0x68,0x68,0xA9,
|
||||
0xFF,0xA0,0x00,0xF0,0x12,0xA6,0x64,0xA4,0x65,0x86,0x50,0x84,0x51,0x20,0xF4,0xD4,
|
||||
0x86,0x62,0x84,0x63,0x85,0x61,0x60,0xA2,0x22,0x86,0x07,0x86,0x08,0x85,0x6F,0x84,
|
||||
0x70,0x85,0x62,0x84,0x63,0xA0,0xFF,0xC8,0xB1,0x6F,0xF0,0x0C,0xC5,0x07,0xF0,0x04,
|
||||
0xC5,0x08,0xD0,0xF3,0xC9,0x22,0xF0,0x01,0x18,0x84,0x61,0x98,0x65,0x6F,0x85,0x71,
|
||||
0xA6,0x70,0x90,0x01,0xE8,0x86,0x72,0xA5,0x70,0xF0,0x04,0xC9,0x02,0xD0,0x0B,0x98,
|
||||
0x20,0x75,0xD4,0xA6,0x6F,0xA4,0x70,0x20,0x88,0xD6,0xA6,0x16,0xE0,0x22,0xD0,0x05,
|
||||
0xA2,0x19,0x4C,0x37,0xC4,0xA5,0x61,0x95,0x00,0xA5,0x62,0x95,0x01,0xA5,0x63,0x95,
|
||||
0x02,0xA0,0x00,0x86,0x64,0x84,0x65,0x84,0x70,0x88,0x84,0x0D,0x86,0x17,0xE8,0xE8,
|
||||
0xE8,0x86,0x16,0x60,0x46,0x0F,0x48,0x49,0xFF,0x38,0x65,0x33,0xA4,0x34,0xB0,0x01,
|
||||
0x88,0xC4,0x32,0x90,0x11,0xD0,0x04,0xC5,0x31,0x90,0x0B,0x85,0x33,0x84,0x34,0x85,
|
||||
0x35,0x84,0x36,0xAA,0x68,0x60,0xA2,0x10,0xA5,0x0F,0x30,0xB6,0x20,0x26,0xD5,0xA9,
|
||||
0x80,0x85,0x0F,0x68,0xD0,0xD0,0xA6,0x37,0xA5,0x38,0x86,0x33,0x85,0x34,0xA0,0x00,
|
||||
0x84,0x4F,0x84,0x4E,0xA5,0x31,0xA6,0x32,0x85,0x5F,0x86,0x60,0xA9,0x19,0xA2,0x00,
|
||||
0x85,0x22,0x86,0x23,0xC5,0x16,0xF0,0x05,0x20,0xC7,0xD5,0xF0,0xF7,0xA9,0x07,0x85,
|
||||
0x53,0xA5,0x2D,0xA6,0x2E,0x85,0x22,0x86,0x23,0xE4,0x30,0xD0,0x04,0xC5,0x2F,0xF0,
|
||||
0x05,0x20,0xBD,0xD5,0xF0,0xF3,0x85,0x58,0x86,0x59,0xA9,0x03,0x85,0x53,0xA5,0x58,
|
||||
0xA6,0x59,0xE4,0x32,0xD0,0x07,0xC5,0x31,0xD0,0x03,0x4C,0x06,0xD6,0x85,0x22,0x86,
|
||||
0x23,0xA0,0x00,0xB1,0x22,0xAA,0xC8,0xB1,0x22,0x08,0xC8,0xB1,0x22,0x65,0x58,0x85,
|
||||
0x58,0xC8,0xB1,0x22,0x65,0x59,0x85,0x59,0x28,0x10,0xD3,0x8A,0x30,0xD0,0xC8,0xB1,
|
||||
0x22,0xA0,0x00,0x0A,0x69,0x05,0x65,0x22,0x85,0x22,0x90,0x02,0xE6,0x23,0xA6,0x23,
|
||||
0xE4,0x59,0xD0,0x04,0xC5,0x58,0xF0,0xBA,0x20,0xC7,0xD5,0xF0,0xF3,0xB1,0x22,0x30,
|
||||
0x35,0xC8,0xB1,0x22,0x10,0x30,0xC8,0xB1,0x22,0xF0,0x2B,0xC8,0xB1,0x22,0xAA,0xC8,
|
||||
0xB1,0x22,0xC5,0x34,0x90,0x06,0xD0,0x1E,0xE4,0x33,0xB0,0x1A,0xC5,0x60,0x90,0x16,
|
||||
0xD0,0x04,0xE4,0x5F,0x90,0x10,0x86,0x5F,0x85,0x60,0xA5,0x22,0xA6,0x23,0x85,0x4E,
|
||||
0x86,0x4F,0xA5,0x53,0x85,0x55,0xA5,0x53,0x18,0x65,0x22,0x85,0x22,0x90,0x02,0xE6,
|
||||
0x23,0xA6,0x23,0xA0,0x00,0x60,0xA5,0x4F,0x05,0x4E,0xF0,0xF5,0xA5,0x55,0x29,0x04,
|
||||
0x4A,0xA8,0x85,0x55,0xB1,0x4E,0x65,0x5F,0x85,0x5A,0xA5,0x60,0x69,0x00,0x85,0x5B,
|
||||
0xA5,0x33,0xA6,0x34,0x85,0x58,0x86,0x59,0x20,0xBF,0xC3,0xA4,0x55,0xC8,0xA5,0x58,
|
||||
0x91,0x4E,0xAA,0xE6,0x59,0xA5,0x59,0xC8,0x91,0x4E,0x4C,0x2A,0xD5,0xA5,0x65,0x48,
|
||||
0xA5,0x64,0x48,0x20,0x83,0xCE,0x20,0x8F,0xCD,0x68,0x85,0x6F,0x68,0x85,0x70,0xA0,
|
||||
0x00,0xB1,0x6F,0x18,0x71,0x64,0x90,0x05,0xA2,0x17,0x4C,0x37,0xC4,0x20,0x75,0xD4,
|
||||
0x20,0x7A,0xD6,0xA5,0x50,0xA4,0x51,0x20,0xAA,0xD6,0x20,0x8C,0xD6,0xA5,0x6F,0xA4,
|
||||
0x70,0x20,0xAA,0xD6,0x20,0xCA,0xD4,0x4C,0xB8,0xCD,0xA0,0x00,0xB1,0x6F,0x48,0xC8,
|
||||
0xB1,0x6F,0xAA,0xC8,0xB1,0x6F,0xA8,0x68,0x86,0x22,0x84,0x23,0xA8,0xF0,0x0A,0x48,
|
||||
0x88,0xB1,0x22,0x91,0x35,0x98,0xD0,0xF8,0x68,0x18,0x65,0x35,0x85,0x35,0x90,0x02,
|
||||
0xE6,0x36,0x60,0x20,0x8F,0xCD,0xA5,0x64,0xA4,0x65,0x85,0x22,0x84,0x23,0x20,0xDB,
|
||||
0xD6,0x08,0xA0,0x00,0xB1,0x22,0x48,0xC8,0xB1,0x22,0xAA,0xC8,0xB1,0x22,0xA8,0x68,
|
||||
0x28,0xD0,0x13,0xC4,0x34,0xD0,0x0F,0xE4,0x33,0xD0,0x0B,0x48,0x18,0x65,0x33,0x85,
|
||||
0x33,0x90,0x02,0xE6,0x34,0x68,0x86,0x22,0x84,0x23,0x60,0xC4,0x18,0xD0,0x0C,0xC5,
|
||||
0x17,0xD0,0x08,0x85,0x16,0xE9,0x03,0x85,0x17,0xA0,0x00,0x60,0x20,0xA1,0xD7,0x8A,
|
||||
0x48,0xA9,0x01,0x20,0x7D,0xD4,0x68,0xA0,0x00,0x91,0x62,0x68,0x68,0x4C,0xCA,0xD4,
|
||||
0x20,0x61,0xD7,0xD1,0x50,0x98,0x90,0x04,0xB1,0x50,0xAA,0x98,0x48,0x8A,0x48,0x20,
|
||||
0x7D,0xD4,0xA5,0x50,0xA4,0x51,0x20,0xAA,0xD6,0x68,0xA8,0x68,0x18,0x65,0x22,0x85,
|
||||
0x22,0x90,0x02,0xE6,0x23,0x98,0x20,0x8C,0xD6,0x4C,0xCA,0xD4,0x20,0x61,0xD7,0x18,
|
||||
0xF1,0x50,0x49,0xFF,0x4C,0x06,0xD7,0xA9,0xFF,0x85,0x65,0x20,0x79,0x00,0xC9,0x29,
|
||||
0xF0,0x06,0x20,0xFD,0xCE,0x20,0x9E,0xD7,0x20,0x61,0xD7,0xF0,0x4B,0xCA,0x8A,0x48,
|
||||
0x18,0xA2,0x00,0xF1,0x50,0xB0,0xB6,0x49,0xFF,0xC5,0x65,0x90,0xB1,0xA5,0x65,0xB0,
|
||||
0xAD,0x20,0xF7,0xCE,0x68,0xA8,0x68,0x85,0x55,0x68,0x68,0x68,0xAA,0x68,0x85,0x50,
|
||||
0x68,0x85,0x51,0xA5,0x55,0x48,0x98,0x48,0xA0,0x00,0x8A,0x60,0x20,0x82,0xD7,0x4C,
|
||||
0xA2,0xD3,0x20,0xA3,0xD6,0xA2,0x00,0x86,0x0D,0xA8,0x60,0x20,0x82,0xD7,0xF0,0x08,
|
||||
0xA0,0x00,0xB1,0x22,0xA8,0x4C,0xA2,0xD3,0x4C,0x48,0xD2,0x20,0x73,0x00,0x20,0x8A,
|
||||
0xCD,0x20,0xB8,0xD1,0xA6,0x64,0xD0,0xF0,0xA6,0x65,0x4C,0x79,0x00,0x20,0x82,0xD7,
|
||||
0xD0,0x03,0x4C,0xF7,0xD8,0xA6,0x7A,0xA4,0x7B,0x86,0x71,0x84,0x72,0xA6,0x22,0x86,
|
||||
0x7A,0x18,0x65,0x22,0x85,0x24,0xA6,0x23,0x86,0x7B,0x90,0x01,0xE8,0x86,0x25,0xA0,
|
||||
0x00,0xB1,0x24,0x48,0x98,0x91,0x24,0x20,0x79,0x00,0x20,0xF3,0xDC,0x68,0xA0,0x00,
|
||||
0x91,0x24,0xA6,0x71,0xA4,0x72,0x86,0x7A,0x84,0x7B,0x60,0x20,0x8A,0xCD,0x20,0xF7,
|
||||
0xD7,0x20,0xFD,0xCE,0x4C,0x9E,0xD7,0xA5,0x66,0x30,0x9D,0xA5,0x61,0xC9,0x91,0xB0,
|
||||
0x97,0x20,0x9B,0xDC,0xA5,0x64,0xA4,0x65,0x84,0x14,0x85,0x15,0x60,0xA5,0x15,0x48,
|
||||
0xA5,0x14,0x48,0x20,0xF7,0xD7,0xA0,0x00,0xB1,0x14,0xA8,0x68,0x85,0x14,0x68,0x85,
|
||||
0x15,0x4C,0xA2,0xD3,0x20,0xEB,0xD7,0x8A,0xA0,0x00,0x91,0x14,0x60,0x20,0xEB,0xD7,
|
||||
0x86,0x49,0xA2,0x00,0x20,0x79,0x00,0xF0,0x03,0x20,0xF1,0xD7,0x86,0x4A,0xA0,0x00,
|
||||
0xB1,0x14,0x45,0x4A,0x25,0x49,0xF0,0xF8,0x60,0xA9,0x11,0xA0,0xDF,0x4C,0x67,0xD8,
|
||||
0x20,0x8C,0xDA,0xA5,0x66,0x49,0xFF,0x85,0x66,0x45,0x6E,0x85,0x6F,0xA5,0x61,0x4C,
|
||||
0x6A,0xD8,0x20,0x99,0xD9,0x90,0x3C,0x20,0x8C,0xDA,0xD0,0x03,0x4C,0xFC,0xDB,0xA6,
|
||||
0x70,0x86,0x56,0xA2,0x69,0xA5,0x69,0xA8,0xF0,0xCE,0x38,0xE5,0x61,0xF0,0x24,0x90,
|
||||
0x12,0x84,0x61,0xA4,0x6E,0x84,0x66,0x49,0xFF,0x69,0x00,0xA0,0x00,0x84,0x56,0xA2,
|
||||
0x61,0xD0,0x04,0xA0,0x00,0x84,0x70,0xC9,0xF9,0x30,0xC7,0xA8,0xA5,0x70,0x56,0x01,
|
||||
0x20,0xB0,0xD9,0x24,0x6F,0x10,0x57,0xA0,0x61,0xE0,0x69,0xF0,0x02,0xA0,0x69,0x38,
|
||||
0x49,0xFF,0x65,0x56,0x85,0x70,0xB9,0x04,0x00,0xF5,0x04,0x85,0x65,0xB9,0x03,0x00,
|
||||
0xF5,0x03,0x85,0x64,0xB9,0x02,0x00,0xF5,0x02,0x85,0x63,0xB9,0x01,0x00,0xF5,0x01,
|
||||
0x85,0x62,0xB0,0x03,0x20,0x47,0xD9,0xA0,0x00,0x98,0x18,0xA6,0x62,0xD0,0x4A,0xA6,
|
||||
0x63,0x86,0x62,0xA6,0x64,0x86,0x63,0xA6,0x65,0x86,0x64,0xA6,0x70,0x86,0x65,0x84,
|
||||
0x70,0x69,0x08,0xC9,0x20,0xD0,0xE4,0xA9,0x00,0x85,0x61,0x85,0x66,0x60,0x65,0x56,
|
||||
0x85,0x70,0xA5,0x65,0x65,0x6D,0x85,0x65,0xA5,0x64,0x65,0x6C,0x85,0x64,0xA5,0x63,
|
||||
0x65,0x6B,0x85,0x63,0xA5,0x62,0x65,0x6A,0x85,0x62,0x4C,0x36,0xD9,0x69,0x01,0x06,
|
||||
0x70,0x26,0x65,0x26,0x64,0x26,0x63,0x26,0x62,0x10,0xF2,0x38,0xE5,0x61,0xB0,0xC7,
|
||||
0x49,0xFF,0x69,0x01,0x85,0x61,0x90,0x0E,0xE6,0x61,0xF0,0x42,0x66,0x62,0x66,0x63,
|
||||
0x66,0x64,0x66,0x65,0x66,0x70,0x60,0xA5,0x66,0x49,0xFF,0x85,0x66,0xA5,0x62,0x49,
|
||||
0xFF,0x85,0x62,0xA5,0x63,0x49,0xFF,0x85,0x63,0xA5,0x64,0x49,0xFF,0x85,0x64,0xA5,
|
||||
0x65,0x49,0xFF,0x85,0x65,0xA5,0x70,0x49,0xFF,0x85,0x70,0xE6,0x70,0xD0,0x0E,0xE6,
|
||||
0x65,0xD0,0x0A,0xE6,0x64,0xD0,0x06,0xE6,0x63,0xD0,0x02,0xE6,0x62,0x60,0xA2,0x0F,
|
||||
0x4C,0x37,0xC4,0xA2,0x25,0xB4,0x04,0x84,0x70,0xB4,0x03,0x94,0x04,0xB4,0x02,0x94,
|
||||
0x03,0xB4,0x01,0x94,0x02,0xA4,0x68,0x94,0x01,0x69,0x08,0x30,0xE8,0xF0,0xE6,0xE9,
|
||||
0x08,0xA8,0xA5,0x70,0xB0,0x14,0x16,0x01,0x90,0x02,0xF6,0x01,0x76,0x01,0x76,0x01,
|
||||
0x76,0x02,0x76,0x03,0x76,0x04,0x6A,0xC8,0xD0,0xEC,0x18,0x60,0x81,0x00,0x00,0x00,
|
||||
0x00,0x03,0x7F,0x5E,0x56,0xCB,0x79,0x80,0x13,0x9B,0x0B,0x64,0x80,0x76,0x38,0x93,
|
||||
0x16,0x82,0x38,0xAA,0x3B,0x20,0x80,0x35,0x04,0xF3,0x34,0x81,0x35,0x04,0xF3,0x34,
|
||||
0x80,0x80,0x00,0x00,0x00,0x80,0x31,0x72,0x17,0xF8,0x20,0x2B,0xDC,0xF0,0x02,0x10,
|
||||
0x03,0x4C,0x48,0xD2,0xA5,0x61,0xE9,0x7F,0x48,0xA9,0x80,0x85,0x61,0xA9,0xD6,0xA0,
|
||||
0xD9,0x20,0x67,0xD8,0xA9,0xDB,0xA0,0xD9,0x20,0x0F,0xDB,0xA9,0xBC,0xA0,0xD9,0x20,
|
||||
0x50,0xD8,0xA9,0xC1,0xA0,0xD9,0x20,0x40,0xE0,0xA9,0xE0,0xA0,0xD9,0x20,0x67,0xD8,
|
||||
0x68,0x20,0x7E,0xDD,0xA9,0xE5,0xA0,0xD9,0x20,0x8C,0xDA,0xD0,0x03,0x4C,0x8B,0xDA,
|
||||
0x20,0xB7,0xDA,0xA9,0x00,0x85,0x26,0x85,0x27,0x85,0x28,0x85,0x29,0xA5,0x70,0x20,
|
||||
0x59,0xDA,0xA5,0x65,0x20,0x59,0xDA,0xA5,0x64,0x20,0x59,0xDA,0xA5,0x63,0x20,0x59,
|
||||
0xDA,0xA5,0x62,0x20,0x5E,0xDA,0x4C,0x8F,0xDB,0xD0,0x03,0x4C,0x83,0xD9,0x4A,0x09,
|
||||
0x80,0xA8,0x90,0x19,0x18,0xA5,0x29,0x65,0x6D,0x85,0x29,0xA5,0x28,0x65,0x6C,0x85,
|
||||
0x28,0xA5,0x27,0x65,0x6B,0x85,0x27,0xA5,0x26,0x65,0x6A,0x85,0x26,0x66,0x26,0x66,
|
||||
0x27,0x66,0x28,0x66,0x29,0x66,0x70,0x98,0x4A,0xD0,0xD6,0x60,0x85,0x22,0x84,0x23,
|
||||
0xA0,0x04,0xB1,0x22,0x85,0x6D,0x88,0xB1,0x22,0x85,0x6C,0x88,0xB1,0x22,0x85,0x6B,
|
||||
0x88,0xB1,0x22,0x85,0x6E,0x45,0x66,0x85,0x6F,0xA5,0x6E,0x09,0x80,0x85,0x6A,0x88,
|
||||
0xB1,0x22,0x85,0x69,0xA5,0x61,0x60,0xA5,0x69,0xF0,0x1F,0x18,0x65,0x61,0x90,0x04,
|
||||
0x30,0x1D,0x18,0x2C,0x10,0x14,0x69,0x80,0x85,0x61,0xD0,0x03,0x4C,0xFB,0xD8,0xA5,
|
||||
0x6F,0x85,0x66,0x60,0xA5,0x66,0x49,0xFF,0x30,0x05,0x68,0x68,0x4C,0xF7,0xD8,0x4C,
|
||||
0x7E,0xD9,0x20,0x0C,0xDC,0xAA,0xF0,0x10,0x18,0x69,0x02,0xB0,0xF2,0xA2,0x00,0x86,
|
||||
0x6F,0x20,0x77,0xD8,0xE6,0x61,0xF0,0xE7,0x60,0x84,0x20,0x00,0x00,0x00,0x20,0x0C,
|
||||
0xDC,0xA9,0xF9,0xA0,0xDA,0xA2,0x00,0x86,0x6F,0x20,0xA2,0xDB,0x4C,0x12,0xDB,0x20,
|
||||
0x8C,0xDA,0xF0,0x76,0x20,0x1B,0xDC,0xA9,0x00,0x38,0xE5,0x61,0x85,0x61,0x20,0xB7,
|
||||
0xDA,0xE6,0x61,0xF0,0xBA,0xA2,0xFC,0xA9,0x01,0xA4,0x6A,0xC4,0x62,0xD0,0x10,0xA4,
|
||||
0x6B,0xC4,0x63,0xD0,0x0A,0xA4,0x6C,0xC4,0x64,0xD0,0x04,0xA4,0x6D,0xC4,0x65,0x08,
|
||||
0x2A,0x90,0x09,0xE8,0x95,0x29,0xF0,0x32,0x10,0x34,0xA9,0x01,0x28,0xB0,0x0E,0x06,
|
||||
0x6D,0x26,0x6C,0x26,0x6B,0x26,0x6A,0xB0,0xE6,0x30,0xCE,0x10,0xE2,0xA8,0xA5,0x6D,
|
||||
0xE5,0x65,0x85,0x6D,0xA5,0x6C,0xE5,0x64,0x85,0x6C,0xA5,0x6B,0xE5,0x63,0x85,0x6B,
|
||||
0xA5,0x6A,0xE5,0x62,0x85,0x6A,0x98,0x4C,0x4F,0xDB,0xA9,0x40,0xD0,0xCE,0x0A,0x0A,
|
||||
0x0A,0x0A,0x0A,0x0A,0x85,0x70,0x28,0x4C,0x8F,0xDB,0xA2,0x14,0x4C,0x37,0xC4,0xA5,
|
||||
0x26,0x85,0x62,0xA5,0x27,0x85,0x63,0xA5,0x28,0x85,0x64,0xA5,0x29,0x85,0x65,0x4C,
|
||||
0xD7,0xD8,0x85,0x22,0x84,0x23,0xA0,0x04,0xB1,0x22,0x85,0x65,0x88,0xB1,0x22,0x85,
|
||||
0x64,0x88,0xB1,0x22,0x85,0x63,0x88,0xB1,0x22,0x85,0x66,0x09,0x80,0x85,0x62,0x88,
|
||||
0xB1,0x22,0x85,0x61,0x84,0x70,0x60,0xA2,0x5C,0x2C,0xA2,0x57,0xA0,0x00,0xF0,0x04,
|
||||
0xA6,0x49,0xA4,0x4A,0x20,0x1B,0xDC,0x86,0x22,0x84,0x23,0xA0,0x04,0xA5,0x65,0x91,
|
||||
0x22,0x88,0xA5,0x64,0x91,0x22,0x88,0xA5,0x63,0x91,0x22,0x88,0xA5,0x66,0x09,0x7F,
|
||||
0x25,0x62,0x91,0x22,0x88,0xA5,0x61,0x91,0x22,0x84,0x70,0x60,0xA5,0x6E,0x85,0x66,
|
||||
0xA2,0x05,0xB5,0x68,0x95,0x60,0xCA,0xD0,0xF9,0x86,0x70,0x60,0x20,0x1B,0xDC,0xA2,
|
||||
0x06,0xB5,0x60,0x95,0x68,0xCA,0xD0,0xF9,0x86,0x70,0x60,0xA5,0x61,0xF0,0xFB,0x06,
|
||||
0x70,0x90,0xF7,0x20,0x6F,0xD9,0xD0,0xF2,0x4C,0x38,0xD9,0xA5,0x61,0xF0,0x09,0xA5,
|
||||
0x66,0x2A,0xA9,0xFF,0xB0,0x02,0xA9,0x01,0x60,0x20,0x2B,0xDC,0x85,0x62,0xA9,0x00,
|
||||
0x85,0x63,0xA2,0x88,0xA5,0x62,0x49,0xFF,0x2A,0xA9,0x00,0x85,0x65,0x85,0x64,0x86,
|
||||
0x61,0x85,0x70,0x85,0x66,0x4C,0xD2,0xD8,0x46,0x66,0x60,0x85,0x24,0x84,0x25,0xA0,
|
||||
0x00,0xB1,0x24,0xC8,0xAA,0xF0,0xC4,0xB1,0x24,0x45,0x66,0x30,0xC2,0xE4,0x61,0xD0,
|
||||
0x21,0xB1,0x24,0x09,0x80,0xC5,0x62,0xD0,0x19,0xC8,0xB1,0x24,0xC5,0x63,0xD0,0x12,
|
||||
0xC8,0xB1,0x24,0xC5,0x64,0xD0,0x0B,0xC8,0xA9,0x7F,0xC5,0x70,0xB1,0x24,0xE5,0x65,
|
||||
0xF0,0x28,0xA5,0x66,0x90,0x02,0x49,0xFF,0x4C,0x31,0xDC,0xA5,0x61,0xF0,0x4A,0x38,
|
||||
0xE9,0xA0,0x24,0x66,0x10,0x09,0xAA,0xA9,0xFF,0x85,0x68,0x20,0x4D,0xD9,0x8A,0xA2,
|
||||
0x61,0xC9,0xF9,0x10,0x06,0x20,0x99,0xD9,0x84,0x68,0x60,0xA8,0xA5,0x66,0x29,0x80,
|
||||
0x46,0x62,0x05,0x62,0x85,0x62,0x20,0xB0,0xD9,0x84,0x68,0x60,0xA5,0x61,0xC9,0xA0,
|
||||
0xB0,0x20,0x20,0x9B,0xDC,0x84,0x70,0xA5,0x66,0x84,0x66,0x49,0x80,0x2A,0xA9,0xA0,
|
||||
0x85,0x61,0xA5,0x65,0x85,0x07,0x4C,0xD2,0xD8,0x85,0x62,0x85,0x63,0x85,0x64,0x85,
|
||||
0x65,0xA8,0x60,0xA0,0x00,0xA2,0x0A,0x94,0x5D,0xCA,0x10,0xFB,0x90,0x0F,0xC9,0x2D,
|
||||
0xD0,0x04,0x86,0x67,0xF0,0x04,0xC9,0x2B,0xD0,0x05,0x20,0x73,0x00,0x90,0x5B,0xC9,
|
||||
0x2E,0xF0,0x2E,0xC9,0x45,0xD0,0x30,0x20,0x73,0x00,0x90,0x17,0xC9,0xAB,0xF0,0x0E,
|
||||
0xC9,0x2D,0xF0,0x0A,0xC9,0xAA,0xF0,0x08,0xC9,0x2B,0xF0,0x04,0xD0,0x07,0x66,0x60,
|
||||
0x20,0x73,0x00,0x90,0x5C,0x24,0x60,0x10,0x0E,0xA9,0x00,0x38,0xE5,0x5E,0x4C,0x49,
|
||||
0xDD,0x66,0x5F,0x24,0x5F,0x50,0xC3,0xA5,0x5E,0x38,0xE5,0x5D,0x85,0x5E,0xF0,0x12,
|
||||
0x10,0x09,0x20,0xFE,0xDA,0xE6,0x5E,0xD0,0xF9,0xF0,0x07,0x20,0xE2,0xDA,0xC6,0x5E,
|
||||
0xD0,0xF9,0xA5,0x67,0x30,0x01,0x60,0x4C,0xB4,0xDF,0x48,0x24,0x5F,0x10,0x02,0xE6,
|
||||
0x5D,0x20,0xE2,0xDA,0x68,0x38,0xE9,0x30,0x20,0x7E,0xDD,0x4C,0x0A,0xDD,0x48,0x20,
|
||||
0x0C,0xDC,0x68,0x20,0x3C,0xDC,0xA5,0x6E,0x45,0x66,0x85,0x6F,0xA6,0x61,0x4C,0x6A,
|
||||
0xD8,0xA5,0x5E,0xC9,0x0A,0x90,0x09,0xA9,0x64,0x24,0x60,0x30,0x11,0x4C,0x7E,0xD9,
|
||||
0x0A,0x0A,0x18,0x65,0x5E,0x0A,0x18,0xA0,0x00,0x71,0x7A,0x38,0xE9,0x30,0x85,0x5E,
|
||||
0x4C,0x30,0xDD,0x9B,0x3E,0xBC,0x1F,0xFD,0x9E,0x6E,0x6B,0x27,0xFD,0x9E,0x6E,0x6B,
|
||||
0x28,0x00,0xA9,0x71,0xA0,0xC3,0x20,0xDA,0xDD,0xA5,0x3A,0xA6,0x39,0x85,0x62,0x86,
|
||||
0x63,0xA2,0x90,0x38,0x20,0x49,0xDC,0x20,0xDF,0xDD,0x4C,0x1E,0xCB,0xA0,0x01,0xA9,
|
||||
0x20,0x24,0x66,0x10,0x02,0xA9,0x2D,0x99,0xFF,0x00,0x85,0x66,0x84,0x71,0xC8,0xA9,
|
||||
0x30,0xA6,0x61,0xD0,0x03,0x4C,0x04,0xDF,0xA9,0x00,0xE0,0x80,0xF0,0x02,0xB0,0x09,
|
||||
0xA9,0xBD,0xA0,0xDD,0x20,0x28,0xDA,0xA9,0xF7,0x85,0x5D,0xA9,0xB8,0xA0,0xDD,0x20,
|
||||
0x5B,0xDC,0xF0,0x1E,0x10,0x12,0xA9,0xB3,0xA0,0xDD,0x20,0x5B,0xDC,0xF0,0x02,0x10,
|
||||
0x0E,0x20,0xE2,0xDA,0xC6,0x5D,0xD0,0xEE,0x20,0xFE,0xDA,0xE6,0x5D,0xD0,0xDC,0x20,
|
||||
0x49,0xD8,0x20,0x9B,0xDC,0xA2,0x01,0xA5,0x5D,0x18,0x69,0x0A,0x30,0x09,0xC9,0x0B,
|
||||
0xB0,0x06,0x69,0xFF,0xAA,0xA9,0x02,0x38,0xE9,0x02,0x85,0x5E,0x86,0x5D,0x8A,0xF0,
|
||||
0x02,0x10,0x13,0xA4,0x71,0xA9,0x2E,0xC8,0x99,0xFF,0x00,0x8A,0xF0,0x06,0xA9,0x30,
|
||||
0xC8,0x99,0xFF,0x00,0x84,0x71,0xA0,0x00,0xA2,0x80,0xA5,0x65,0x18,0x79,0x19,0xDF,
|
||||
0x85,0x65,0xA5,0x64,0x79,0x18,0xDF,0x85,0x64,0xA5,0x63,0x79,0x17,0xDF,0x85,0x63,
|
||||
0xA5,0x62,0x79,0x16,0xDF,0x85,0x62,0xE8,0xB0,0x04,0x10,0xDE,0x30,0x02,0x30,0xDA,
|
||||
0x8A,0x90,0x04,0x49,0xFF,0x69,0x0A,0x69,0x2F,0xC8,0xC8,0xC8,0xC8,0x84,0x47,0xA4,
|
||||
0x71,0xC8,0xAA,0x29,0x7F,0x99,0xFF,0x00,0xC6,0x5D,0xD0,0x06,0xA9,0x2E,0xC8,0x99,
|
||||
0xFF,0x00,0x84,0x71,0xA4,0x47,0x8A,0x49,0xFF,0x29,0x80,0xAA,0xC0,0x24,0xF0,0x04,
|
||||
0xC0,0x3C,0xD0,0xA6,0xA4,0x71,0xB9,0xFF,0x00,0x88,0xC9,0x30,0xF0,0xF8,0xC9,0x2E,
|
||||
0xF0,0x01,0xC8,0xA9,0x2B,0xA6,0x5E,0xF0,0x2E,0x10,0x08,0xA9,0x00,0x38,0xE5,0x5E,
|
||||
0xAA,0xA9,0x2D,0x99,0x01,0x01,0xA9,0x45,0x99,0x00,0x01,0x8A,0xA2,0x2F,0x38,0xE8,
|
||||
0xE9,0x0A,0xB0,0xFB,0x69,0x3A,0x99,0x03,0x01,0x8A,0x99,0x02,0x01,0xA9,0x00,0x99,
|
||||
0x04,0x01,0xF0,0x08,0x99,0xFF,0x00,0xA9,0x00,0x99,0x00,0x01,0xA9,0x00,0xA0,0x01,
|
||||
0x60,0x80,0x00,0x00,0x00,0x00,0xFA,0x0A,0x1F,0x00,0x00,0x98,0x96,0x80,0xFF,0xF0,
|
||||
0xBD,0xC0,0x00,0x01,0x86,0xA0,0xFF,0xFF,0xD8,0xF0,0x00,0x00,0x03,0xE8,0xFF,0xFF,
|
||||
0xFF,0x9C,0x00,0x00,0x00,0x0A,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0x0A,0x80,0x00,0x03,
|
||||
0x4B,0xC0,0xFF,0xFF,0x73,0x60,0x00,0x00,0x0E,0x10,0xFF,0xFF,0xFD,0xA8,0x00,0x00,
|
||||
0x00,0x3C,0xBF,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,
|
||||
0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,
|
||||
0xAA,0x20,0x0C,0xDC,0xA9,0x11,0xA0,0xDF,0x20,0xA2,0xDB,0xF0,0x70,0xA5,0x69,0xD0,
|
||||
0x03,0x4C,0xF9,0xD8,0xA2,0x4E,0xA0,0x00,0x20,0xD4,0xDB,0xA5,0x6E,0x10,0x0F,0x20,
|
||||
0xCC,0xDC,0xA9,0x4E,0xA0,0x00,0x20,0x5B,0xDC,0xD0,0x03,0x98,0xA4,0x07,0x20,0xFE,
|
||||
0xDB,0x98,0x48,0x20,0xEA,0xD9,0xA9,0x4E,0xA0,0x00,0x20,0x28,0xDA,0x20,0xED,0xDF,
|
||||
0x68,0x4A,0x90,0x0A,0xA5,0x61,0xF0,0x06,0xA5,0x66,0x49,0xFF,0x85,0x66,0x60,0x81,
|
||||
0x38,0xAA,0x3B,0x29,0x07,0x71,0x34,0x58,0x3E,0x56,0x74,0x16,0x7E,0xB3,0x1B,0x77,
|
||||
0x2F,0xEE,0xE3,0x85,0x7A,0x1D,0x84,0x1C,0x2A,0x7C,0x63,0x59,0x58,0x0A,0x7E,0x75,
|
||||
0xFD,0xE7,0xC6,0x80,0x31,0x72,0x18,0x10,0x81,0x00,0x00,0x00,0x00,0xA9,0xBF,0xA0,
|
||||
0xDF,0x20,0x28,0xDA,0xA5,0x70,0x69,0x50,0x90,0x03,0x20,0x23,0xDC,0x85,0x56,0x20,
|
||||
};
|
|
@ -0,0 +1,258 @@
|
|||
const unsigned char PROGMEM charrom[4096] = {
|
||||
0x1C,0x22,0x4A,0x56,0x4C,0x20,0x1E,0x00,0x18,0x24,0x42,0x7E,0x42,0x42,0x42,0x00,
|
||||
0x7C,0x22,0x22,0x3C,0x22,0x22,0x7C,0x00,0x1C,0x22,0x40,0x40,0x40,0x22,0x1C,0x00,
|
||||
0x78,0x24,0x22,0x22,0x22,0x24,0x78,0x00,0x7E,0x40,0x40,0x78,0x40,0x40,0x7E,0x00,
|
||||
0x7E,0x40,0x40,0x78,0x40,0x40,0x40,0x00,0x1C,0x22,0x40,0x4E,0x42,0x22,0x1C,0x00,
|
||||
0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,
|
||||
0x0E,0x04,0x04,0x04,0x04,0x44,0x38,0x00,0x42,0x44,0x48,0x70,0x48,0x44,0x42,0x00,
|
||||
0x40,0x40,0x40,0x40,0x40,0x40,0x7E,0x00,0x42,0x66,0x5A,0x5A,0x42,0x42,0x42,0x00,
|
||||
0x42,0x62,0x52,0x4A,0x46,0x42,0x42,0x00,0x18,0x24,0x42,0x42,0x42,0x24,0x18,0x00,
|
||||
0x7C,0x42,0x42,0x7C,0x40,0x40,0x40,0x00,0x18,0x24,0x42,0x42,0x4A,0x24,0x1A,0x00,
|
||||
0x7C,0x42,0x42,0x7C,0x48,0x44,0x42,0x00,0x3C,0x42,0x40,0x3C,0x02,0x42,0x3C,0x00,
|
||||
0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,
|
||||
0x42,0x42,0x42,0x24,0x24,0x18,0x18,0x00,0x42,0x42,0x42,0x5A,0x5A,0x66,0x42,0x00,
|
||||
0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x00,0x22,0x22,0x22,0x1C,0x08,0x08,0x08,0x00,
|
||||
0x7E,0x02,0x04,0x18,0x20,0x40,0x7E,0x00,0x3C,0x20,0x20,0x20,0x20,0x20,0x3C,0x00,
|
||||
0x0C,0x10,0x10,0x3C,0x10,0x70,0x6E,0x00,0x3C,0x04,0x04,0x04,0x04,0x04,0x3C,0x00,
|
||||
0x00,0x08,0x1C,0x2A,0x08,0x08,0x08,0x08,0x00,0x00,0x10,0x20,0x7F,0x20,0x10,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x00,0x00,0x08,0x00,
|
||||
0x24,0x24,0x24,0x00,0x00,0x00,0x00,0x00,0x24,0x24,0x7E,0x24,0x7E,0x24,0x24,0x00,
|
||||
0x08,0x1E,0x28,0x1C,0x0A,0x3C,0x08,0x00,0x00,0x62,0x64,0x08,0x10,0x26,0x46,0x00,
|
||||
0x30,0x48,0x48,0x30,0x4A,0x44,0x3A,0x00,0x04,0x08,0x10,0x00,0x00,0x00,0x00,0x00,
|
||||
0x04,0x08,0x10,0x10,0x10,0x08,0x04,0x00,0x20,0x10,0x08,0x08,0x08,0x10,0x20,0x00,
|
||||
0x08,0x2A,0x1C,0x3E,0x1C,0x2A,0x08,0x00,0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x10,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x02,0x04,0x08,0x10,0x20,0x40,0x00,
|
||||
0x3C,0x42,0x46,0x5A,0x62,0x42,0x3C,0x00,0x08,0x18,0x28,0x08,0x08,0x08,0x3E,0x00,
|
||||
0x3C,0x42,0x02,0x0C,0x30,0x40,0x7E,0x00,0x3C,0x42,0x02,0x1C,0x02,0x42,0x3C,0x00,
|
||||
0x04,0x0C,0x14,0x24,0x7E,0x04,0x04,0x00,0x7E,0x40,0x78,0x04,0x02,0x44,0x38,0x00,
|
||||
0x1C,0x20,0x40,0x7C,0x42,0x42,0x3C,0x00,0x7E,0x42,0x04,0x08,0x10,0x10,0x10,0x00,
|
||||
0x3C,0x42,0x42,0x3C,0x42,0x42,0x3C,0x00,0x3C,0x42,0x42,0x3E,0x02,0x04,0x38,0x00,
|
||||
0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x08,0x10,
|
||||
0x0E,0x18,0x30,0x60,0x30,0x18,0x0E,0x00,0x00,0x00,0x7E,0x00,0x7E,0x00,0x00,0x00,
|
||||
0x70,0x18,0x0C,0x06,0x0C,0x18,0x70,0x00,0x3C,0x42,0x02,0x0C,0x10,0x00,0x10,0x00,
|
||||
0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x08,0x1C,0x3E,0x7F,0x7F,0x1C,0x3E,0x00,
|
||||
0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
|
||||
0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00,0x00,0x00,0x00,0xE0,0x10,0x08,0x08,
|
||||
0x08,0x08,0x08,0x04,0x03,0x00,0x00,0x00,0x08,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,
|
||||
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,
|
||||
0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
|
||||
0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x3C,0x7E,0x7E,0x7E,0x7E,0x3C,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x36,0x7F,0x7F,0x7F,0x3E,0x1C,0x08,0x00,
|
||||
0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x03,0x04,0x08,0x08,
|
||||
0x81,0x42,0x24,0x18,0x18,0x24,0x42,0x81,0x00,0x3C,0x42,0x42,0x42,0x42,0x3C,0x00,
|
||||
0x08,0x1C,0x2A,0x77,0x2A,0x08,0x08,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,
|
||||
0x08,0x1C,0x3E,0x7F,0x3E,0x1C,0x08,0x00,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,
|
||||
0xA0,0x50,0xA0,0x50,0xA0,0x50,0xA0,0x50,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
|
||||
0x00,0x00,0x01,0x3E,0x54,0x14,0x14,0x00,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,
|
||||
0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
|
||||
0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
|
||||
0x00,0x00,0x00,0x00,0xAA,0x55,0xAA,0x55,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,
|
||||
0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x08,0x08,0x08,0x08,0x0F,0x08,0x08,0x08,
|
||||
0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x0F,0x08,0x08,0x08,0x08,0x0F,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0xF8,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,
|
||||
0x00,0x00,0x00,0x00,0x0F,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xFF,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0xFF,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xF8,0x08,0x08,0x08,
|
||||
0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
|
||||
0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,
|
||||
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,
|
||||
0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0xF8,0x00,0x00,0x00,
|
||||
0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
|
||||
0xE3,0xDD,0xB5,0xA9,0xB3,0xDF,0xE1,0xFF,0xE7,0xDB,0xBD,0x81,0xBD,0xBD,0xBD,0xFF,
|
||||
0x83,0xDD,0xDD,0xC3,0xDD,0xDD,0x83,0xFF,0xE3,0xDD,0xBF,0xBF,0xBF,0xDD,0xE3,0xFF,
|
||||
0x87,0xDB,0xDD,0xDD,0xDD,0xDB,0x87,0xFF,0x81,0xBF,0xBF,0x87,0xBF,0xBF,0x81,0xFF,
|
||||
0x81,0xBF,0xBF,0x87,0xBF,0xBF,0xBF,0xFF,0xE3,0xDD,0xBF,0xB1,0xBD,0xDD,0xE3,0xFF,
|
||||
0xBD,0xBD,0xBD,0x81,0xBD,0xBD,0xBD,0xFF,0xE3,0xF7,0xF7,0xF7,0xF7,0xF7,0xE3,0xFF,
|
||||
0xF1,0xFB,0xFB,0xFB,0xFB,0xBB,0xC7,0xFF,0xBD,0xBB,0xB7,0x8F,0xB7,0xBB,0xBD,0xFF,
|
||||
0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0x81,0xFF,0xBD,0x99,0xA5,0xA5,0xBD,0xBD,0xBD,0xFF,
|
||||
0xBD,0x9D,0xAD,0xB5,0xB9,0xBD,0xBD,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,
|
||||
0x83,0xBD,0xBD,0x83,0xBF,0xBF,0xBF,0xFF,0xE7,0xDB,0xBD,0xBD,0xB5,0xDB,0xE5,0xFF,
|
||||
0x83,0xBD,0xBD,0x83,0xB7,0xBB,0xBD,0xFF,0xC3,0xBD,0xBF,0xC3,0xFD,0xBD,0xC3,0xFF,
|
||||
0xC1,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xFF,0xBD,0xBD,0xBD,0xBD,0xBD,0xBD,0xC3,0xFF,
|
||||
0xBD,0xBD,0xBD,0xDB,0xDB,0xE7,0xE7,0xFF,0xBD,0xBD,0xBD,0xA5,0xA5,0x99,0xBD,0xFF,
|
||||
0xBD,0xBD,0xDB,0xE7,0xDB,0xBD,0xBD,0xFF,0xDD,0xDD,0xDD,0xE3,0xF7,0xF7,0xF7,0xFF,
|
||||
0x81,0xFD,0xFB,0xE7,0xDF,0xBF,0x81,0xFF,0xC3,0xDF,0xDF,0xDF,0xDF,0xDF,0xC3,0xFF,
|
||||
0xF3,0xEF,0xEF,0xC3,0xEF,0x8F,0x91,0xFF,0xC3,0xFB,0xFB,0xFB,0xFB,0xFB,0xC3,0xFF,
|
||||
0xFF,0xF7,0xE3,0xD5,0xF7,0xF7,0xF7,0xF7,0xFF,0xFF,0xEF,0xDF,0x80,0xDF,0xEF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xF7,0xF7,0xFF,0xFF,0xF7,0xFF,
|
||||
0xDB,0xDB,0xDB,0xFF,0xFF,0xFF,0xFF,0xFF,0xDB,0xDB,0x81,0xDB,0x81,0xDB,0xDB,0xFF,
|
||||
0xF7,0xE1,0xD7,0xE3,0xF5,0xC3,0xF7,0xFF,0xFF,0x9D,0x9B,0xF7,0xEF,0xD9,0xB9,0xFF,
|
||||
0xCF,0xB7,0xB7,0xCF,0xB5,0xBB,0xC5,0xFF,0xFB,0xF7,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFB,0xF7,0xEF,0xEF,0xEF,0xF7,0xFB,0xFF,0xDF,0xEF,0xF7,0xF7,0xF7,0xEF,0xDF,0xFF,
|
||||
0xF7,0xD5,0xE3,0xC1,0xE3,0xD5,0xF7,0xFF,0xFF,0xF7,0xF7,0xC1,0xF7,0xF7,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xEF,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xE7,0xE7,0xFF,0xFF,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0xFF,
|
||||
0xC3,0xBD,0xB9,0xA5,0x9D,0xBD,0xC3,0xFF,0xF7,0xE7,0xD7,0xF7,0xF7,0xF7,0xC1,0xFF,
|
||||
0xC3,0xBD,0xFD,0xF3,0xCF,0xBF,0x81,0xFF,0xC3,0xBD,0xFD,0xE3,0xFD,0xBD,0xC3,0xFF,
|
||||
0xFB,0xF3,0xEB,0xDB,0x81,0xFB,0xFB,0xFF,0x81,0xBF,0x87,0xFB,0xFD,0xBB,0xC7,0xFF,
|
||||
0xE3,0xDF,0xBF,0x83,0xBD,0xBD,0xC3,0xFF,0x81,0xBD,0xFB,0xF7,0xEF,0xEF,0xEF,0xFF,
|
||||
0xC3,0xBD,0xBD,0xC3,0xBD,0xBD,0xC3,0xFF,0xC3,0xBD,0xBD,0xC1,0xFD,0xFB,0xC7,0xFF,
|
||||
0xFF,0xFF,0xF7,0xFF,0xFF,0xF7,0xFF,0xFF,0xFF,0xFF,0xF7,0xFF,0xFF,0xF7,0xF7,0xEF,
|
||||
0xF1,0xE7,0xCF,0x9F,0xCF,0xE7,0xF1,0xFF,0xFF,0xFF,0x81,0xFF,0x81,0xFF,0xFF,0xFF,
|
||||
0x8F,0xE7,0xF3,0xF9,0xF3,0xE7,0x8F,0xFF,0xC3,0xBD,0xFD,0xF3,0xEF,0xFF,0xEF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xF7,0xE3,0xC1,0x80,0x80,0xE3,0xC1,0xFF,
|
||||
0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xDF,0xDF,0xDF,0xDF,0xDF,0xDF,0xDF,0xDF,
|
||||
0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFF,0xFF,0xFF,0xFF,0x1F,0xEF,0xF7,0xF7,
|
||||
0xF7,0xF7,0xF7,0xFB,0xFC,0xFF,0xFF,0xFF,0xF7,0xF7,0xF7,0xEF,0x1F,0xFF,0xFF,0xFF,
|
||||
0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x00,0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,
|
||||
0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0x00,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
|
||||
0x00,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF,0xC3,0x81,0x81,0x81,0x81,0xC3,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xC9,0x80,0x80,0x80,0xC1,0xE3,0xF7,0xFF,
|
||||
0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0xFF,0xFF,0xFF,0xFF,0xFC,0xFB,0xF7,0xF7,
|
||||
0x7E,0xBD,0xDB,0xE7,0xE7,0xDB,0xBD,0x7E,0xFF,0xC3,0xBD,0xBD,0xBD,0xBD,0xC3,0xFF,
|
||||
0xF7,0xE3,0xD5,0x88,0xD5,0xF7,0xF7,0xFF,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,
|
||||
0xF7,0xE3,0xC1,0x80,0xC1,0xE3,0xF7,0xFF,0xF7,0xF7,0xF7,0xF7,0x00,0xF7,0xF7,0xF7,
|
||||
0x5F,0xAF,0x5F,0xAF,0x5F,0xAF,0x5F,0xAF,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,
|
||||
0xFF,0xFF,0xFE,0xC1,0xAB,0xEB,0xEB,0xFF,0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
|
||||
0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,
|
||||
0xFF,0xFF,0xFF,0xFF,0x55,0xAA,0x55,0xAA,0x00,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,
|
||||
0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xF7,0xF7,0xF7,0xF7,0xF0,0xF7,0xF7,0xF7,
|
||||
0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0,0xF7,0xF7,0xF7,0xF7,0xF0,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x07,0xF7,0xF7,0xF7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,
|
||||
0xFF,0xFF,0xFF,0xFF,0xF0,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0x00,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0x07,0xF7,0xF7,0xF7,
|
||||
0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,
|
||||
0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,
|
||||
0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0x00,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,
|
||||
0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xF7,0xF7,0x07,0xFF,0xFF,0xFF,
|
||||
0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,
|
||||
0x1C,0x22,0x4A,0x56,0x4C,0x20,0x1E,0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x3A,0x00,
|
||||
0x40,0x40,0x5C,0x62,0x42,0x62,0x5C,0x00,0x00,0x00,0x3C,0x42,0x40,0x42,0x3C,0x00,
|
||||
0x02,0x02,0x3A,0x46,0x42,0x46,0x3A,0x00,0x00,0x00,0x3C,0x42,0x7E,0x40,0x3C,0x00,
|
||||
0x0C,0x12,0x10,0x7C,0x10,0x10,0x10,0x00,0x00,0x00,0x3A,0x46,0x46,0x3A,0x02,0x3C,
|
||||
0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x1C,0x00,
|
||||
0x04,0x00,0x0C,0x04,0x04,0x04,0x44,0x38,0x40,0x40,0x44,0x48,0x50,0x68,0x44,0x00,
|
||||
0x18,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,0x00,0x00,0x76,0x49,0x49,0x49,0x49,0x00,
|
||||
0x00,0x00,0x5C,0x62,0x42,0x42,0x42,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x3C,0x00,
|
||||
0x00,0x00,0x5C,0x62,0x62,0x5C,0x40,0x40,0x00,0x00,0x3A,0x46,0x46,0x3A,0x02,0x02,
|
||||
0x00,0x00,0x5C,0x62,0x40,0x40,0x40,0x00,0x00,0x00,0x3E,0x40,0x3C,0x02,0x7C,0x00,
|
||||
0x10,0x10,0x7C,0x10,0x10,0x12,0x0C,0x00,0x00,0x00,0x42,0x42,0x42,0x46,0x3A,0x00,
|
||||
0x00,0x00,0x42,0x42,0x42,0x24,0x18,0x00,0x00,0x00,0x41,0x49,0x49,0x49,0x36,0x00,
|
||||
0x00,0x00,0x42,0x24,0x18,0x24,0x42,0x00,0x00,0x00,0x42,0x42,0x46,0x3A,0x02,0x3C,
|
||||
0x00,0x00,0x7E,0x04,0x18,0x20,0x7E,0x00,0x3C,0x20,0x20,0x20,0x20,0x20,0x3C,0x00,
|
||||
0x0C,0x10,0x10,0x3C,0x10,0x70,0x6E,0x00,0x3C,0x04,0x04,0x04,0x04,0x04,0x3C,0x00,
|
||||
0x00,0x08,0x1C,0x2A,0x08,0x08,0x08,0x08,0x00,0x00,0x10,0x20,0x7F,0x20,0x10,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x00,0x00,0x08,0x00,
|
||||
0x24,0x24,0x24,0x00,0x00,0x00,0x00,0x00,0x24,0x24,0x7E,0x24,0x7E,0x24,0x24,0x00,
|
||||
0x08,0x1E,0x28,0x1C,0x0A,0x3C,0x08,0x00,0x00,0x62,0x64,0x08,0x10,0x26,0x46,0x00,
|
||||
0x30,0x48,0x48,0x30,0x4A,0x44,0x3A,0x00,0x04,0x08,0x10,0x00,0x00,0x00,0x00,0x00,
|
||||
0x04,0x08,0x10,0x10,0x10,0x08,0x04,0x00,0x20,0x10,0x08,0x08,0x08,0x10,0x20,0x00,
|
||||
0x08,0x2A,0x1C,0x3E,0x1C,0x2A,0x08,0x00,0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x10,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x02,0x04,0x08,0x10,0x20,0x40,0x00,
|
||||
0x3C,0x42,0x46,0x5A,0x62,0x42,0x3C,0x00,0x08,0x18,0x28,0x08,0x08,0x08,0x3E,0x00,
|
||||
0x3C,0x42,0x02,0x0C,0x30,0x40,0x7E,0x00,0x3C,0x42,0x02,0x1C,0x02,0x42,0x3C,0x00,
|
||||
0x04,0x0C,0x14,0x24,0x7E,0x04,0x04,0x00,0x7E,0x40,0x78,0x04,0x02,0x44,0x38,0x00,
|
||||
0x1C,0x20,0x40,0x7C,0x42,0x42,0x3C,0x00,0x7E,0x42,0x04,0x08,0x10,0x10,0x10,0x00,
|
||||
0x3C,0x42,0x42,0x3C,0x42,0x42,0x3C,0x00,0x3C,0x42,0x42,0x3E,0x02,0x04,0x38,0x00,
|
||||
0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x08,0x10,
|
||||
0x0E,0x18,0x30,0x60,0x30,0x18,0x0E,0x00,0x00,0x00,0x7E,0x00,0x7E,0x00,0x00,0x00,
|
||||
0x70,0x18,0x0C,0x06,0x0C,0x18,0x70,0x00,0x3C,0x42,0x02,0x0C,0x10,0x00,0x10,0x00,
|
||||
0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x18,0x24,0x42,0x7E,0x42,0x42,0x42,0x00,
|
||||
0x7C,0x22,0x22,0x3C,0x22,0x22,0x7C,0x00,0x1C,0x22,0x40,0x40,0x40,0x22,0x1C,0x00,
|
||||
0x78,0x24,0x22,0x22,0x22,0x24,0x78,0x00,0x7E,0x40,0x40,0x78,0x40,0x40,0x7E,0x00,
|
||||
0x7E,0x40,0x40,0x78,0x40,0x40,0x40,0x00,0x1C,0x22,0x40,0x4E,0x42,0x22,0x1C,0x00,
|
||||
0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,
|
||||
0x0E,0x04,0x04,0x04,0x04,0x44,0x38,0x00,0x42,0x44,0x48,0x70,0x48,0x44,0x42,0x00,
|
||||
0x40,0x40,0x40,0x40,0x40,0x40,0x7E,0x00,0x42,0x66,0x5A,0x5A,0x42,0x42,0x42,0x00,
|
||||
0x42,0x62,0x52,0x4A,0x46,0x42,0x42,0x00,0x18,0x24,0x42,0x42,0x42,0x24,0x18,0x00,
|
||||
0x7C,0x42,0x42,0x7C,0x40,0x40,0x40,0x00,0x18,0x24,0x42,0x42,0x4A,0x24,0x1A,0x00,
|
||||
0x7C,0x42,0x42,0x7C,0x48,0x44,0x42,0x00,0x3C,0x42,0x40,0x3C,0x02,0x42,0x3C,0x00,
|
||||
0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,
|
||||
0x42,0x42,0x42,0x24,0x24,0x18,0x18,0x00,0x42,0x42,0x42,0x5A,0x5A,0x66,0x42,0x00,
|
||||
0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x00,0x22,0x22,0x22,0x1C,0x08,0x08,0x08,0x00,
|
||||
0x7E,0x02,0x04,0x18,0x20,0x40,0x7E,0x00,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,
|
||||
0xA0,0x50,0xA0,0x50,0xA0,0x50,0xA0,0x50,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
|
||||
0xCC,0xCC,0x33,0x33,0xCC,0xCC,0x33,0x33,0xCC,0x66,0x33,0x99,0xCC,0x66,0x33,0x99,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,
|
||||
0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
|
||||
0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
|
||||
0x00,0x00,0x00,0x00,0xAA,0x55,0xAA,0x55,0x99,0x33,0x66,0xCC,0x99,0x33,0x66,0xCC,
|
||||
0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x08,0x08,0x08,0x08,0x0F,0x08,0x08,0x08,
|
||||
0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x0F,0x08,0x08,0x08,0x08,0x0F,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0xF8,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,
|
||||
0x00,0x00,0x00,0x00,0x0F,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xFF,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x00,0xFF,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xF8,0x08,0x08,0x08,
|
||||
0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
|
||||
0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,
|
||||
0x01,0x02,0x44,0x48,0x50,0x60,0x40,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,
|
||||
0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0xF8,0x00,0x00,0x00,
|
||||
0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
|
||||
0xE3,0xDD,0xB5,0xA9,0xB3,0xDF,0xE1,0xFF,0xFF,0xFF,0xC7,0xFB,0xC3,0xBB,0xC5,0xFF,
|
||||
0xBF,0xBF,0xA3,0x9D,0xBD,0x9D,0xA3,0xFF,0xFF,0xFF,0xC3,0xBD,0xBF,0xBD,0xC3,0xFF,
|
||||
0xFD,0xFD,0xC5,0xB9,0xBD,0xB9,0xC5,0xFF,0xFF,0xFF,0xC3,0xBD,0x81,0xBF,0xC3,0xFF,
|
||||
0xF3,0xED,0xEF,0x83,0xEF,0xEF,0xEF,0xFF,0xFF,0xFF,0xC5,0xB9,0xB9,0xC5,0xFD,0xC3,
|
||||
0xBF,0xBF,0xA3,0x9D,0xBD,0xBD,0xBD,0xFF,0xF7,0xFF,0xE7,0xF7,0xF7,0xF7,0xE3,0xFF,
|
||||
0xFB,0xFF,0xF3,0xFB,0xFB,0xFB,0xBB,0xC7,0xBF,0xBF,0xBB,0xB7,0xAF,0x97,0xBB,0xFF,
|
||||
0xE7,0xF7,0xF7,0xF7,0xF7,0xF7,0xE3,0xFF,0xFF,0xFF,0x89,0xB6,0xB6,0xB6,0xB6,0xFF,
|
||||
0xFF,0xFF,0xA3,0x9D,0xBD,0xBD,0xBD,0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xBD,0xC3,0xFF,
|
||||
0xFF,0xFF,0xA3,0x9D,0x9D,0xA3,0xBF,0xBF,0xFF,0xFF,0xC5,0xB9,0xB9,0xC5,0xFD,0xFD,
|
||||
0xFF,0xFF,0xA3,0x9D,0xBF,0xBF,0xBF,0xFF,0xFF,0xFF,0xC1,0xBF,0xC3,0xFD,0x83,0xFF,
|
||||
0xEF,0xEF,0x83,0xEF,0xEF,0xED,0xF3,0xFF,0xFF,0xFF,0xBD,0xBD,0xBD,0xB9,0xC5,0xFF,
|
||||
0xFF,0xFF,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,0xFF,0xFF,0xBE,0xB6,0xB6,0xB6,0xC9,0xFF,
|
||||
0xFF,0xFF,0xBD,0xDB,0xE7,0xDB,0xBD,0xFF,0xFF,0xFF,0xBD,0xBD,0xB9,0xC5,0xFD,0xC3,
|
||||
0xFF,0xFF,0x81,0xFB,0xE7,0xDF,0x81,0xFF,0xC3,0xDF,0xDF,0xDF,0xDF,0xDF,0xC3,0xFF,
|
||||
0xF3,0xEF,0xEF,0xC3,0xEF,0x8F,0x91,0xFF,0xC3,0xFB,0xFB,0xFB,0xFB,0xFB,0xC3,0xFF,
|
||||
0xFF,0xF7,0xE3,0xD5,0xF7,0xF7,0xF7,0xF7,0xFF,0xFF,0xEF,0xDF,0x80,0xDF,0xEF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xF7,0xF7,0xFF,0xFF,0xF7,0xFF,
|
||||
0xDB,0xDB,0xDB,0xFF,0xFF,0xFF,0xFF,0xFF,0xDB,0xDB,0x81,0xDB,0x81,0xDB,0xDB,0xFF,
|
||||
0xF7,0xE1,0xD7,0xE3,0xF5,0xC3,0xF7,0xFF,0xFF,0x9D,0x9B,0xF7,0xEF,0xD9,0xB9,0xFF,
|
||||
0xCF,0xB7,0xB7,0xCF,0xB5,0xBB,0xC5,0xFF,0xFB,0xF7,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFB,0xF7,0xEF,0xEF,0xEF,0xF7,0xFB,0xFF,0xDF,0xEF,0xF7,0xF7,0xF7,0xEF,0xDF,0xFF,
|
||||
0xF7,0xD5,0xE3,0xC1,0xE3,0xD5,0xF7,0xFF,0xFF,0xF7,0xF7,0xC1,0xF7,0xF7,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xEF,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xE7,0xE7,0xFF,0xFF,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0xFF,
|
||||
0xC3,0xBD,0xB9,0xA5,0x9D,0xBD,0xC3,0xFF,0xF7,0xE7,0xD7,0xF7,0xF7,0xF7,0xC1,0xFF,
|
||||
0xC3,0xBD,0xFD,0xF3,0xCF,0xBF,0x81,0xFF,0xC3,0xBD,0xFD,0xE3,0xFD,0xBD,0xC3,0xFF,
|
||||
0xFB,0xF3,0xEB,0xDB,0x81,0xFB,0xFB,0xFF,0x81,0xBF,0x87,0xFB,0xFD,0xBB,0xC7,0xFF,
|
||||
0xE3,0xDF,0xBF,0x83,0xBD,0xBD,0xC3,0xFF,0x81,0xBD,0xFB,0xF7,0xEF,0xEF,0xEF,0xFF,
|
||||
0xC3,0xBD,0xBD,0xC3,0xBD,0xBD,0xC3,0xFF,0xC3,0xBD,0xBD,0xC1,0xFD,0xFB,0xC7,0xFF,
|
||||
0xFF,0xFF,0xF7,0xFF,0xFF,0xF7,0xFF,0xFF,0xFF,0xFF,0xF7,0xFF,0xFF,0xF7,0xF7,0xEF,
|
||||
0xF1,0xE7,0xCF,0x9F,0xCF,0xE7,0xF1,0xFF,0xFF,0xFF,0x81,0xFF,0x81,0xFF,0xFF,0xFF,
|
||||
0x8F,0xE7,0xF3,0xF9,0xF3,0xE7,0x8F,0xFF,0xC3,0xBD,0xFD,0xF3,0xEF,0xFF,0xEF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xE7,0xDB,0xBD,0x81,0xBD,0xBD,0xBD,0xFF,
|
||||
0x83,0xDD,0xDD,0xC3,0xDD,0xDD,0x83,0xFF,0xE3,0xDD,0xBF,0xBF,0xBF,0xDD,0xE3,0xFF,
|
||||
0x87,0xDB,0xDD,0xDD,0xDD,0xDB,0x87,0xFF,0x81,0xBF,0xBF,0x87,0xBF,0xBF,0x81,0xFF,
|
||||
0x81,0xBF,0xBF,0x87,0xBF,0xBF,0xBF,0xFF,0xE3,0xDD,0xBF,0xB1,0xBD,0xDD,0xE3,0xFF,
|
||||
0xBD,0xBD,0xBD,0x81,0xBD,0xBD,0xBD,0xFF,0xE3,0xF7,0xF7,0xF7,0xF7,0xF7,0xE3,0xFF,
|
||||
0xF1,0xFB,0xFB,0xFB,0xFB,0xBB,0xC7,0xFF,0xBD,0xBB,0xB7,0x8F,0xB7,0xBB,0xBD,0xFF,
|
||||
0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0x81,0xFF,0xBD,0x99,0xA5,0xA5,0xBD,0xBD,0xBD,0xFF,
|
||||
0xBD,0x9D,0xAD,0xB5,0xB9,0xBD,0xBD,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,
|
||||
0x83,0xBD,0xBD,0x83,0xBF,0xBF,0xBF,0xFF,0xE7,0xDB,0xBD,0xBD,0xB5,0xDB,0xE5,0xFF,
|
||||
0x83,0xBD,0xBD,0x83,0xB7,0xBB,0xBD,0xFF,0xC3,0xBD,0xBF,0xC3,0xFD,0xBD,0xC3,0xFF,
|
||||
0xC1,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xFF,0xBD,0xBD,0xBD,0xBD,0xBD,0xBD,0xC3,0xFF,
|
||||
0xBD,0xBD,0xBD,0xDB,0xDB,0xE7,0xE7,0xFF,0xBD,0xBD,0xBD,0xA5,0xA5,0x99,0xBD,0xFF,
|
||||
0xBD,0xBD,0xDB,0xE7,0xDB,0xBD,0xBD,0xFF,0xDD,0xDD,0xDD,0xE3,0xF7,0xF7,0xF7,0xFF,
|
||||
0x81,0xFD,0xFB,0xE7,0xDF,0xBF,0x81,0xFF,0xF7,0xF7,0xF7,0xF7,0x00,0xF7,0xF7,0xF7,
|
||||
0x5F,0xAF,0x5F,0xAF,0x5F,0xAF,0x5F,0xAF,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,
|
||||
0x33,0x33,0xCC,0xCC,0x33,0x33,0xCC,0xCC,0x33,0x99,0xCC,0x66,0x33,0x99,0xCC,0x66,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
|
||||
0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,
|
||||
0xFF,0xFF,0xFF,0xFF,0x55,0xAA,0x55,0xAA,0x66,0xCC,0x99,0x33,0x66,0xCC,0x99,0x33,
|
||||
0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xF7,0xF7,0xF7,0xF7,0xF0,0xF7,0xF7,0xF7,
|
||||
0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0,0xF7,0xF7,0xF7,0xF7,0xF0,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x07,0xF7,0xF7,0xF7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,
|
||||
0xFF,0xFF,0xFF,0xFF,0xF0,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0x00,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0x00,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0x07,0xF7,0xF7,0xF7,
|
||||
0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,
|
||||
0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,
|
||||
0xFE,0xFD,0xBB,0xB7,0xAF,0x9F,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,
|
||||
0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF,0xF7,0xF7,0xF7,0xF7,0x07,0xFF,0xFF,0xFF,
|
||||
0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,
|
||||
};
|
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,214 @@
|
|||
#ifndef EMUAPI_H
|
||||
#define EMUAPI_H
|
||||
|
||||
#include "platform_config.h"
|
||||
|
||||
#define CUSTOM_SND 1
|
||||
//#define TIMER_REND 1
|
||||
|
||||
#define EXTRA_HEAP 0x10
|
||||
|
||||
// Title: < >
|
||||
#define TITLE " Vic20 Emulator "
|
||||
#define ROMSDIR "v20"
|
||||
|
||||
#define emu_Init(ROM) { v20_Init(); v20_Start(ROM);}
|
||||
#define emu_Step(x) { v20_Step(); }
|
||||
#define emu_Input(x) { v20_Input(x); }
|
||||
|
||||
#define MAX_FILENAME_PATH 64
|
||||
#define NB_FILE_HANDLER 4
|
||||
#define PALETTE_SIZE 256
|
||||
#define VID_FRAME_SKIP 0x0
|
||||
#define TFT_VBUFFER_YCROP 0
|
||||
#define SINGLELINE_RENDERING 1
|
||||
|
||||
#define R32(rgb) ((rgb>>16)&0xff)
|
||||
#define G32(rgb) ((rgb>>8)&0xff)
|
||||
#define B32(rgb) (rgb & 0xff)
|
||||
|
||||
#define ACTION_NONE 0
|
||||
#define ACTION_MAXKBDVAL 16
|
||||
#define ACTION_EXITKBD 128
|
||||
#define ACTION_RUN1 129
|
||||
#define ACTION_RUN2 130
|
||||
#define ACTION_RUN3 131
|
||||
|
||||
|
||||
#ifdef KEYMAP_PRESENT
|
||||
|
||||
#define keylables_map0_0 (char *)"QWERTYUIOP\x1a"
|
||||
#define keylables_map0_1 (char *)" ASDFGHJKL\x19"
|
||||
#define keylables_map0_2 (char *)" ZXCVBNM,.;/"
|
||||
#define keylables_map0_3 (char *)" +\x10-"
|
||||
const unsigned short key_map0[] = {
|
||||
'Q','W','E','R','T','Y','U','I','O','P',157, //default C64 uppercase always
|
||||
0,'A','S','D','F','G','H','J','K','L',10,
|
||||
0,'Z','X','C','V','B','N','M',',','.',';','/',
|
||||
0,0,0,0,
|
||||
0,'+',' ','-'
|
||||
};
|
||||
|
||||
#define keylables_map1_0 (char *)"1234567890 "
|
||||
#define keylables_map1_1 (char *)" "
|
||||
#define keylables_map1_2 (char *)" "
|
||||
#define keylables_map1_3 (char *)" "
|
||||
|
||||
const unsigned short key_map1[] = {
|
||||
'1','2','3','4','5','6','7','8','9','0',0, // digit keys
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,
|
||||
0,0,' ',0
|
||||
};
|
||||
|
||||
#define keylables_map2_0 (char *)"!\"#$%^&*()@"
|
||||
#define keylables_map2_1 (char *)" "
|
||||
#define keylables_map2_2 (char *)" <>:?"
|
||||
#define keylables_map2_3 (char *)" =\x10_"
|
||||
const unsigned short key_map2[] = {
|
||||
'!','"','#','$','%','^','&','*','(',')','@', // shiftothers
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,'<','>',':','?',
|
||||
153,151,150,152, //U L R D
|
||||
0,'=',' ','_'
|
||||
};
|
||||
|
||||
#define keylables_map3_0 (char *)"\x11\x12\x13\x14\x15\x16\x17\x18 "
|
||||
#define keylables_map3_1 (char *)" "
|
||||
#define keylables_map3_2 (char *)" "
|
||||
#define keylables_map3_3 (char *)" "
|
||||
|
||||
const unsigned short key_map3[] = {
|
||||
129,130,131,132,133,134,135,136,0,0,0, // function keys
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,
|
||||
0,0,' ',0
|
||||
};
|
||||
|
||||
#define keylables_map4_0 (char *)"QWERTYUIOP@"
|
||||
#define keylables_map4_1 (char *)" ASDFGHJKL\x19"
|
||||
#define keylables_map4_2 (char *)" ZXCVBNM<>:?"
|
||||
#define keylables_map4_3 (char *)" =\x10_"
|
||||
const unsigned short key_map4[] = {
|
||||
'Q','W','E','R','T','Y','U','I','O','P','@', //shift uppercase
|
||||
0,'A','S','D','F','G','H','J','K','L',10,
|
||||
0,'Z','X','C','V','B','N','M','<','>',':','?',
|
||||
0,0,0,0,
|
||||
0,'=',' ','_'
|
||||
};
|
||||
|
||||
#define keylables_map5_0 (char *)" "
|
||||
#define keylables_map5_1 (char *)" "
|
||||
#define keylables_map5_2 (char *)" "
|
||||
#define keylables_map5_3 (char *)" "
|
||||
|
||||
const unsigned short key_map5[] = {
|
||||
0,0,0,0,0,0,0,0,0,0,0, // extra keys
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,0,0,0,0,
|
||||
153,151,150,152, //U L R D
|
||||
0,0,' ',0
|
||||
};
|
||||
|
||||
const unsigned short matkeys[] = {
|
||||
0x004,0x008,0x108,0x104,0x208,0x204,0x308,0x304,0x408,0x404,0x410, // row 1
|
||||
0x502,0x002,0x020,0x102,0x120,0x202,0x220,0x302,0x320,0x402,0x420, // row 2
|
||||
0x508,0x001,0x040,0x101,0x140,0x201,0x240,0x210,0x340,0x301,0x401,0x440, // row 3
|
||||
0x504,0x520,0x540,0x501, // UP LEFT RIGHT DOWN
|
||||
0x510,0x010,0x110,0x310, // row 4
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#define MASK_JOY2_RIGHT 0x0001
|
||||
#define MASK_JOY2_LEFT 0x0002
|
||||
#define MASK_JOY2_UP 0x0004
|
||||
#define MASK_JOY2_DOWN 0x0008
|
||||
#define MASK_JOY2_BTN 0x0010
|
||||
#define MASK_KEY_USER1 0x0020
|
||||
#define MASK_KEY_USER2 0x0040
|
||||
#define MASK_KEY_USER3 0x0080
|
||||
#define MASK_JOY1_RIGHT 0x0100
|
||||
#define MASK_JOY1_LEFT 0x0200
|
||||
#define MASK_JOY1_UP 0x0400
|
||||
#define MASK_JOY1_DOWN 0x0800
|
||||
#define MASK_JOY1_BTN 0x1000
|
||||
#define MASK_KEY_USER4 0x2000
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern void emu_init(void);
|
||||
extern void emu_start(void);
|
||||
extern void emu_printf(const char * text);
|
||||
extern void emu_printi(int val);
|
||||
extern void emu_printh(int val);
|
||||
extern void * emu_Malloc(unsigned int size);
|
||||
extern void * emu_MallocI(unsigned int size);
|
||||
extern void emu_Free(void * pt);
|
||||
|
||||
extern int emu_FileOpen(const char * filepath, const char * mode);
|
||||
extern int emu_FileRead(void * buf, int size, int handler);
|
||||
extern int emu_FileGetc(int handler);
|
||||
extern int emu_FileSeek(int handler, int seek, int origin);
|
||||
extern int emu_FileTell(int handler);
|
||||
extern void emu_FileClose(int handler);
|
||||
|
||||
extern unsigned int emu_FileSize(const char * filepath);
|
||||
extern unsigned int emu_LoadFile(const char * filepath, void * buf, int size);
|
||||
extern unsigned int emu_LoadFileSeek(const char * filepath, void * buf, int size, int seek);
|
||||
|
||||
extern void emu_SetPaletteEntry(unsigned char r, unsigned char g, unsigned char b, int index);
|
||||
extern void emu_DrawScreen(unsigned char * VBuf, int width, int height, int stride);
|
||||
extern void emu_DrawLine(unsigned char * VBuf, int width, int height, int line);
|
||||
extern void emu_DrawLine16(unsigned short * VBuf, int width, int height, int line);
|
||||
extern void emu_DrawLine8(unsigned char * VBuf, int width, int height, int line);
|
||||
extern void emu_CopyLine(int width, int height, int ysrc, int ydst);
|
||||
extern void emu_DrawVsync(void);
|
||||
extern int emu_FrameSkip(void);
|
||||
extern void * emu_LineBuffer(int line);
|
||||
extern void emu_tweakVideo(int shiftdelta, int numdelta, int denomdelta);
|
||||
|
||||
extern bool menuActive(void);
|
||||
extern char * menuSelection(void);
|
||||
extern char * menuSecondSelection(void);
|
||||
extern void toggleMenu(bool on);
|
||||
extern int handleMenu(unsigned short bClick);
|
||||
|
||||
extern int handleOSKB(void);
|
||||
extern void toggleOSKB(bool forceon);
|
||||
|
||||
extern void emu_InitJoysticks(void);
|
||||
extern int emu_SwapJoysticks(int statusOnly);
|
||||
extern unsigned short emu_DebounceLocalKeys(void);
|
||||
extern int emu_ReadKeys(void);
|
||||
extern int emu_GetPad(void);
|
||||
extern int emu_GetMouse(int *x, int *y, int *buts);
|
||||
extern int emu_MouseDetected(void);
|
||||
extern int emu_KeyboardDetected(void);
|
||||
extern int emu_ReadAnalogJoyX(int min, int max);
|
||||
extern int emu_ReadAnalogJoyY(int min, int max);
|
||||
extern int emu_ReadI2CKeyboard(void);
|
||||
extern unsigned char emu_ReadI2CKeyboard2(int row);
|
||||
extern void emu_KeyboardOnUp(int keymodifer, int key);
|
||||
extern void emu_KeyboardOnDown(int keymodifer, int key);
|
||||
extern void emu_MidiOnDataReceived(unsigned char data);
|
||||
|
||||
extern void emu_sndPlaySound(int chan, int volume, int freq);
|
||||
extern void emu_sndPlayBuzz(int size, int val);
|
||||
extern void emu_sndInit();
|
||||
extern void emu_resetus(void);
|
||||
extern int emu_us(void);
|
||||
|
||||
extern int emu_setKeymap(int index);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
|
@ -0,0 +1,148 @@
|
|||
|
||||
// Font: c64_lower.64c
|
||||
|
||||
PROGMEM const unsigned char font8x8[128][8] =
|
||||
{
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0000 (nul)
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0001
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0002
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0003
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0004
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0005
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0006
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0007
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0008
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0009
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000A
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000B
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000C
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000D
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000E
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+000F
|
||||
|
||||
{ 0x7f, 0x41, 0x41, 0x41, 0x41, 0x41, 0x7f, 0x00 }, // Space // 0x10
|
||||
{ 0x00, 0x27, 0x31, 0x27, 0x21, 0x71, 0x00, 0x00 }, // F1 // 0x11
|
||||
{ 0x00, 0x77, 0x41, 0x77, 0x11, 0x71, 0x00, 0x00 }, // F2
|
||||
{ 0x00, 0x77, 0x41, 0x77, 0x41, 0x71, 0x00, 0x00 }, // F3
|
||||
{ 0x00, 0x17, 0x51, 0x77, 0x41, 0x41, 0x00, 0x00 }, // F4
|
||||
{ 0x00, 0x77, 0x11, 0x77, 0x41, 0x71, 0x00, 0x00 }, // F5
|
||||
{ 0x00, 0x77, 0x11, 0x77, 0x51, 0x71, 0x00, 0x00 }, // F6
|
||||
{ 0x00, 0x77, 0x41, 0x47, 0x41, 0x41, 0x00, 0x00 }, // F7
|
||||
{ 0x00, 0x77, 0x51, 0x77, 0x51, 0x71, 0x00, 0x00 }, // F8 // 0x18
|
||||
{ 0x00, 0x00, 0x20, 0x24, 0x3e, 0x04, 0x00, 0x00 }, // Return // 0x19
|
||||
{ 0x00, 0x59, 0x4b, 0x5b, 0x4b, 0xd9, 0x00, 0x00 }, // Del // 0x1A
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0010
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0011
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0012
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0013
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0014
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0015
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0016
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0017
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0018
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0019
|
||||
//{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001A
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001B
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001C
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001D
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001E
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+001F
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0020 (space)
|
||||
{ 0x18, 0x3C, 0x3C, 0x18, 0x18, 0x00, 0x18, 0x00}, // U+0021 (!)
|
||||
{ 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0022 (")
|
||||
{ 0x36, 0x36, 0x7F, 0x36, 0x7F, 0x36, 0x36, 0x00}, // U+0023 (#)
|
||||
{ 0x0C, 0x3E, 0x03, 0x1E, 0x30, 0x1F, 0x0C, 0x00}, // U+0024 ($)
|
||||
{ 0x00, 0x63, 0x33, 0x18, 0x0C, 0x66, 0x63, 0x00}, // U+0025 (%)
|
||||
{ 0x1C, 0x36, 0x1C, 0x6E, 0x3B, 0x33, 0x6E, 0x00}, // U+0026 (&)
|
||||
{ 0x06, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0027 (')
|
||||
{ 0x18, 0x0C, 0x06, 0x06, 0x06, 0x0C, 0x18, 0x00}, // U+0028 (()
|
||||
{ 0x06, 0x0C, 0x18, 0x18, 0x18, 0x0C, 0x06, 0x00}, // U+0029 ())
|
||||
{ 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00}, // U+002A (*)
|
||||
{ 0x00, 0x0C, 0x0C, 0x3F, 0x0C, 0x0C, 0x00, 0x00}, // U+002B (+)
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x06}, // U+002C (,)
|
||||
{ 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00}, // U+002D (-)
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x00}, // U+002E (.)
|
||||
{ 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x00}, // U+002F (/)
|
||||
{ 0x3E, 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x3E, 0x00}, // U+0030 (0)
|
||||
{ 0x0C, 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x3F, 0x00}, // U+0031 (1)
|
||||
{ 0x1E, 0x33, 0x30, 0x1C, 0x06, 0x33, 0x3F, 0x00}, // U+0032 (2)
|
||||
{ 0x1E, 0x33, 0x30, 0x1C, 0x30, 0x33, 0x1E, 0x00}, // U+0033 (3)
|
||||
{ 0x38, 0x3C, 0x36, 0x33, 0x7F, 0x30, 0x78, 0x00}, // U+0034 (4)
|
||||
{ 0x3F, 0x03, 0x1F, 0x30, 0x30, 0x33, 0x1E, 0x00}, // U+0035 (5)
|
||||
{ 0x1C, 0x06, 0x03, 0x1F, 0x33, 0x33, 0x1E, 0x00}, // U+0036 (6)
|
||||
{ 0x3F, 0x33, 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x00}, // U+0037 (7)
|
||||
{ 0x1E, 0x33, 0x33, 0x1E, 0x33, 0x33, 0x1E, 0x00}, // U+0038 (8)
|
||||
{ 0x1E, 0x33, 0x33, 0x3E, 0x30, 0x18, 0x0E, 0x00}, // U+0039 (9)
|
||||
{ 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x0C, 0x0C, 0x00}, // U+003A (:)
|
||||
{ 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x0C, 0x0C, 0x06}, // U+003B (//)
|
||||
{ 0x18, 0x0C, 0x06, 0x03, 0x06, 0x0C, 0x18, 0x00}, // U+003C (<)
|
||||
{ 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00}, // U+003D (=)
|
||||
{ 0x06, 0x0C, 0x18, 0x30, 0x18, 0x0C, 0x06, 0x00}, // U+003E (>)
|
||||
{ 0x1E, 0x33, 0x30, 0x18, 0x0C, 0x00, 0x0C, 0x00}, // U+003F (?)
|
||||
{ 0x3E, 0x63, 0x7B, 0x7B, 0x7B, 0x03, 0x1E, 0x00}, // U+0040 (@)
|
||||
{ 0x0C, 0x1E, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x00}, // U+0041 (A)
|
||||
{ 0x3F, 0x66, 0x66, 0x3E, 0x66, 0x66, 0x3F, 0x00}, // U+0042 (B)
|
||||
{ 0x3C, 0x66, 0x03, 0x03, 0x03, 0x66, 0x3C, 0x00}, // U+0043 (C)
|
||||
{ 0x1F, 0x36, 0x66, 0x66, 0x66, 0x36, 0x1F, 0x00}, // U+0044 (D)
|
||||
{ 0x7F, 0x46, 0x16, 0x1E, 0x16, 0x46, 0x7F, 0x00}, // U+0045 (E)
|
||||
{ 0x7F, 0x46, 0x16, 0x1E, 0x16, 0x06, 0x0F, 0x00}, // U+0046 (F)
|
||||
{ 0x3C, 0x66, 0x03, 0x03, 0x73, 0x66, 0x7C, 0x00}, // U+0047 (G)
|
||||
{ 0x33, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x33, 0x00}, // U+0048 (H)
|
||||
{ 0x1E, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00}, // U+0049 (I)
|
||||
{ 0x78, 0x30, 0x30, 0x30, 0x33, 0x33, 0x1E, 0x00}, // U+004A (J)
|
||||
{ 0x67, 0x66, 0x36, 0x1E, 0x36, 0x66, 0x67, 0x00}, // U+004B (K)
|
||||
{ 0x0F, 0x06, 0x06, 0x06, 0x46, 0x66, 0x7F, 0x00}, // U+004C (L)
|
||||
{ 0x63, 0x77, 0x7F, 0x7F, 0x6B, 0x63, 0x63, 0x00}, // U+004D (M)
|
||||
{ 0x63, 0x67, 0x6F, 0x7B, 0x73, 0x63, 0x63, 0x00}, // U+004E (N)
|
||||
{ 0x1C, 0x36, 0x63, 0x63, 0x63, 0x36, 0x1C, 0x00}, // U+004F (O)
|
||||
{ 0x3F, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x0F, 0x00}, // U+0050 (P)
|
||||
{ 0x1E, 0x33, 0x33, 0x33, 0x3B, 0x1E, 0x38, 0x00}, // U+0051 (Q)
|
||||
{ 0x3F, 0x66, 0x66, 0x3E, 0x36, 0x66, 0x67, 0x00}, // U+0052 (R)
|
||||
{ 0x1E, 0x33, 0x07, 0x0E, 0x38, 0x33, 0x1E, 0x00}, // U+0053 (S)
|
||||
{ 0x3F, 0x2D, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00}, // U+0054 (T)
|
||||
{ 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3F, 0x00}, // U+0055 (U)
|
||||
{ 0x33, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00}, // U+0056 (V)
|
||||
{ 0x63, 0x63, 0x63, 0x6B, 0x7F, 0x77, 0x63, 0x00}, // U+0057 (W)
|
||||
{ 0x63, 0x63, 0x36, 0x1C, 0x1C, 0x36, 0x63, 0x00}, // U+0058 (X)
|
||||
{ 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x0C, 0x1E, 0x00}, // U+0059 (Y)
|
||||
{ 0x7F, 0x63, 0x31, 0x18, 0x4C, 0x66, 0x7F, 0x00}, // U+005A (Z)
|
||||
{ 0x1E, 0x06, 0x06, 0x06, 0x06, 0x06, 0x1E, 0x00}, // U+005B ([)
|
||||
{ 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x40, 0x00}, // U+005C (\)
|
||||
{ 0x1E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1E, 0x00}, // U+005D (])
|
||||
{ 0x08, 0x1C, 0x36, 0x63, 0x00, 0x00, 0x00, 0x00}, // U+005E (^)
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF}, // U+005F (_)
|
||||
{ 0x0C, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0060 (`)
|
||||
{ 0x00, 0x00, 0x1E, 0x30, 0x3E, 0x33, 0x6E, 0x00}, // U+0061 (a)
|
||||
{ 0x07, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3B, 0x00}, // U+0062 (b)
|
||||
{ 0x00, 0x00, 0x1E, 0x33, 0x03, 0x33, 0x1E, 0x00}, // U+0063 (c)
|
||||
{ 0x38, 0x30, 0x30, 0x3e, 0x33, 0x33, 0x6E, 0x00}, // U+0064 (d)
|
||||
{ 0x00, 0x00, 0x1E, 0x33, 0x3f, 0x03, 0x1E, 0x00}, // U+0065 (e)
|
||||
{ 0x1C, 0x36, 0x06, 0x0f, 0x06, 0x06, 0x0F, 0x00}, // U+0066 (f)
|
||||
{ 0x00, 0x00, 0x6E, 0x33, 0x33, 0x3E, 0x30, 0x1F}, // U+0067 (g)
|
||||
{ 0x07, 0x06, 0x36, 0x6E, 0x66, 0x66, 0x67, 0x00}, // U+0068 (h)
|
||||
{ 0x0C, 0x00, 0x0E, 0x0C, 0x0C, 0x0C, 0x1E, 0x00}, // U+0069 (i)
|
||||
{ 0x30, 0x00, 0x30, 0x30, 0x30, 0x33, 0x33, 0x1E}, // U+006A (j)
|
||||
{ 0x07, 0x06, 0x66, 0x36, 0x1E, 0x36, 0x67, 0x00}, // U+006B (k)
|
||||
{ 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00}, // U+006C (l)
|
||||
{ 0x00, 0x00, 0x33, 0x7F, 0x7F, 0x6B, 0x63, 0x00}, // U+006D (m)
|
||||
{ 0x00, 0x00, 0x1F, 0x33, 0x33, 0x33, 0x33, 0x00}, // U+006E (n)
|
||||
{ 0x00, 0x00, 0x1E, 0x33, 0x33, 0x33, 0x1E, 0x00}, // U+006F (o)
|
||||
{ 0x00, 0x00, 0x3B, 0x66, 0x66, 0x3E, 0x06, 0x0F}, // U+0070 (p)
|
||||
{ 0x00, 0x00, 0x6E, 0x33, 0x33, 0x3E, 0x30, 0x78}, // U+0071 (q)
|
||||
{ 0x00, 0x00, 0x3B, 0x6E, 0x66, 0x06, 0x0F, 0x00}, // U+0072 (r)
|
||||
{ 0x00, 0x00, 0x3E, 0x03, 0x1E, 0x30, 0x1F, 0x00}, // U+0073 (s)
|
||||
{ 0x08, 0x0C, 0x3E, 0x0C, 0x0C, 0x2C, 0x18, 0x00}, // U+0074 (t)
|
||||
{ 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x6E, 0x00}, // U+0075 (u)
|
||||
{ 0x00, 0x00, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00}, // U+0076 (v)
|
||||
{ 0x00, 0x00, 0x63, 0x6B, 0x7F, 0x7F, 0x36, 0x00}, // U+0077 (w)
|
||||
{ 0x00, 0x00, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x00}, // U+0078 (x)
|
||||
{ 0x00, 0x00, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x1F}, // U+0079 (y)
|
||||
{ 0x00, 0x00, 0x3F, 0x19, 0x0C, 0x26, 0x3F, 0x00}, // U+007A (z)
|
||||
{ 0x38, 0x0C, 0x0C, 0x07, 0x0C, 0x0C, 0x38, 0x00}, // U+007B ({)
|
||||
{ 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x00}, // U+007C (|)
|
||||
{ 0x07, 0x0C, 0x0C, 0x38, 0x0C, 0x0C, 0x07, 0x00}, // U+007D (})
|
||||
{ 0x6E, 0x3B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+007E (~)
|
||||
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // U+007F
|
||||
};
|
||||
|
||||
|
|
@ -0,0 +1,124 @@
|
|||
#ifndef IOPINS_H
|
||||
#define IOPINS_H
|
||||
|
||||
#include "platform_config.h"
|
||||
|
||||
#ifdef TEECOMPUTER
|
||||
|
||||
// Teecomputer layout
|
||||
|
||||
// VGA
|
||||
// R 3 2K
|
||||
// R 4 1K
|
||||
// R 33 500
|
||||
// G 11 2K
|
||||
// G 13 1K
|
||||
// G 2 500
|
||||
// B 10 820
|
||||
// B 12 390
|
||||
// HSYNC 15 82
|
||||
// VSYNC 8 82
|
||||
|
||||
// Display
|
||||
#define TFT_SCLK 27
|
||||
#define TFT_MOSI 26
|
||||
#define TFT_MISO 255
|
||||
#define TFT_TOUCH_CS 255
|
||||
#define TFT_TOUCH_INT 255
|
||||
#define TFT_DC 23
|
||||
#define TFT_CS 22 // 255 for LORES ST7789 (NO CS)
|
||||
#define TFT_RST 255 // 255 for ILI/ST if connected to 3.3V or 24 if really needed
|
||||
|
||||
|
||||
// SD
|
||||
#define SD_CS BUILTIN_SDCARD
|
||||
|
||||
// Audio
|
||||
#define AUDIO_I2S_DIN 7
|
||||
#define AUDIO_I2S_BCK 21
|
||||
#define AUDIO_I2S_LCK 20
|
||||
|
||||
// Keyboard matrix
|
||||
#define KLED 14
|
||||
//Cols (out)
|
||||
//pico 1,2,3,4,5,14
|
||||
//teen 16,6,24,25,28,31
|
||||
#define KCOLOUT1 16
|
||||
#define KCOLOUT2 6
|
||||
#define KCOLOUT3 24
|
||||
#define KCOLOUT4 25
|
||||
#define KCOLOUT5 28
|
||||
#define KCOLOUT6 31
|
||||
//Rows (in)
|
||||
//pico 9,8,6,15,7,22
|
||||
//teen 19,18,17,5,29,30,32 //5,6,16,17,18,19
|
||||
#define KROWIN1 19
|
||||
#define KROWIN2 18
|
||||
#define KROWIN3 17
|
||||
#define KROWIN4 5
|
||||
#define KROWIN5 29
|
||||
#define KROWIN6 30
|
||||
#define KROWIN7 32
|
||||
|
||||
#define PIN_KEY_USER1 41
|
||||
#define PIN_KEY_USER2 40
|
||||
|
||||
// Second joystick (external)
|
||||
#define PIN_JOY1_BTN 34
|
||||
#define PIN_JOY1_1 35 // UP
|
||||
#define PIN_JOY1_2 36 // DOWN
|
||||
#define PIN_JOY1_3 38 // RIGHT
|
||||
#define PIN_JOY1_4 37 // LEFT
|
||||
|
||||
#else
|
||||
|
||||
// Original Layout
|
||||
#define TFT_SCLK 13
|
||||
#define TFT_MOSI 11
|
||||
#define TFT_MISO 12
|
||||
#define TFT_TOUCH_CS 255
|
||||
#define TFT_TOUCH_INT 255
|
||||
#define TFT_DC 9
|
||||
#define TFT_CS 22 // 255 for LORES ST7789 (NO CS)
|
||||
#define TFT_RST 23 // 255 for ILI/ST if connected to 3.3V
|
||||
|
||||
// SD
|
||||
#define SD_CS BUILTIN_SDCARD
|
||||
|
||||
// I2C keyboard
|
||||
#define I2C_SCL_IO 19
|
||||
#define I2C_SDA_IO 18
|
||||
|
||||
// Analog joystick (primary) for JOY2 and 5 extra buttons
|
||||
#ifdef HAS_T4_VGA
|
||||
#define PIN_JOY2_A1X A3
|
||||
#define PIN_JOY2_A2Y A2
|
||||
#define PIN_JOY2_BTN 14
|
||||
#define PIN_KEY_USER1 22
|
||||
#define PIN_KEY_USER2 23
|
||||
|
||||
// Second joystick
|
||||
#define PIN_JOY1_BTN 34
|
||||
#define PIN_JOY1_1 35 // UP
|
||||
#define PIN_JOY1_2 36 // DOWN
|
||||
#define PIN_JOY1_3 38 // RIGHT
|
||||
#define PIN_JOY1_4 37 // LEFT
|
||||
|
||||
#else
|
||||
#define PIN_JOY2_A1X A1
|
||||
#define PIN_JOY2_A2Y A2
|
||||
#define PIN_JOY2_BTN 17
|
||||
#define PIN_KEY_USER1 3 //34
|
||||
#define PIN_KEY_USER2 4 //35
|
||||
|
||||
// Second joystick
|
||||
#define PIN_JOY1_BTN 2
|
||||
#define PIN_JOY1_1 14 // UP
|
||||
#define PIN_JOY1_2 7 // DOWN
|
||||
#define PIN_JOY1_3 6 // RIGHT
|
||||
#define PIN_JOY1_4 5 // LEFT
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
|
@ -0,0 +1,514 @@
|
|||
const unsigned char PROGMEM kernalrom[8192] = {
|
||||
0x0F,0xDC,0xA5,0x61,0xC9,0x88,0x90,0x03,0x20,0xD4,0xDA,0x20,0xCC,0xDC,0xA5,0x07,
|
||||
0x18,0x69,0x81,0xF0,0xF3,0x38,0xE9,0x01,0x48,0xA2,0x05,0xB5,0x69,0xB4,0x61,0x95,
|
||||
0x61,0x94,0x69,0xCA,0x10,0xF5,0xA5,0x56,0x85,0x70,0x20,0x53,0xD8,0x20,0xB4,0xDF,
|
||||
0xA9,0xC4,0xA0,0xDF,0x20,0x56,0xE0,0xA9,0x00,0x85,0x6F,0x68,0x20,0xB9,0xDA,0x60,
|
||||
0x85,0x71,0x84,0x72,0x20,0xCA,0xDB,0xA9,0x57,0x20,0x28,0xDA,0x20,0x5A,0xE0,0xA9,
|
||||
0x57,0xA0,0x00,0x4C,0x28,0xDA,0x85,0x71,0x84,0x72,0x20,0xC7,0xDB,0xB1,0x71,0x85,
|
||||
0x67,0xA4,0x71,0xC8,0x98,0xD0,0x02,0xE6,0x72,0x85,0x71,0xA4,0x72,0x20,0x28,0xDA,
|
||||
0xA5,0x71,0xA4,0x72,0x18,0x69,0x05,0x90,0x01,0xC8,0x85,0x71,0x84,0x72,0x20,0x67,
|
||||
0xD8,0xA9,0x5C,0xA0,0x00,0xC6,0x67,0xD0,0xE4,0x60,0x98,0x35,0x44,0x7A,0x00,0x68,
|
||||
0x28,0xB1,0x46,0x00,0x20,0x2B,0xDC,0x30,0x37,0xD0,0x20,0x20,0xF3,0xFF,0x86,0x22,
|
||||
0x84,0x23,0xA0,0x04,0xB1,0x22,0x85,0x62,0xC8,0xB1,0x22,0x85,0x64,0xA0,0x08,0xB1,
|
||||
0x22,0x85,0x63,0xC8,0xB1,0x22,0x85,0x65,0x4C,0xE0,0xE0,0xA9,0x8B,0xA0,0x00,0x20,
|
||||
0xA2,0xDB,0xA9,0x8A,0xA0,0xE0,0x20,0x28,0xDA,0xA9,0x8F,0xA0,0xE0,0x20,0x67,0xD8,
|
||||
0xA6,0x65,0xA5,0x62,0x85,0x65,0x86,0x62,0xA6,0x63,0xA5,0x64,0x85,0x63,0x86,0x64,
|
||||
0xA9,0x00,0x85,0x66,0xA5,0x61,0x85,0x70,0xA9,0x80,0x85,0x61,0x20,0xD7,0xD8,0xA2,
|
||||
0x8B,0xA0,0x00,0x4C,0xD4,0xDB,0xC9,0xF0,0xD0,0x07,0x84,0x38,0x86,0x37,0x4C,0x63,
|
||||
0xC6,0xAA,0xD0,0x02,0xA2,0x1E,0x4C,0x37,0xC4,0x20,0xD2,0xFF,0xB0,0xE8,0x60,0x20,
|
||||
0xCF,0xFF,0xB0,0xE2,0x60,0x20,0xC9,0xFF,0xB0,0xDC,0x60,0x20,0xC6,0xFF,0xB0,0xD6,
|
||||
0x60,0x20,0xE4,0xFF,0xB0,0xD0,0x60,0x20,0x8A,0xCD,0x20,0xF7,0xD7,0xA9,0xE1,0x48,
|
||||
0xA9,0x43,0x48,0xAD,0x0F,0x03,0x48,0xAD,0x0C,0x03,0xAE,0x0D,0x03,0xAC,0x0E,0x03,
|
||||
0x28,0x6C,0x14,0x00,0x08,0x8D,0x0C,0x03,0x8E,0x0D,0x03,0x8C,0x0E,0x03,0x68,0x8D,
|
||||
0x0F,0x03,0x60,0x20,0xD1,0xE1,0xA6,0x2D,0xA4,0x2E,0xA9,0x2B,0x20,0xD8,0xFF,0xB0,
|
||||
0x95,0x60,0xA9,0x01,0x2C,0xA9,0x00,0x85,0x0A,0x20,0xD1,0xE1,0xA5,0x0A,0xA6,0x2B,
|
||||
0xA4,0x2C,0x20,0xD5,0xFF,0xB0,0x57,0xA5,0x0A,0xF0,0x1A,0xA2,0x1C,0x20,0xB7,0xFF,
|
||||
0x29,0x10,0xF0,0x03,0x4C,0x37,0xC4,0xA5,0x7A,0xC9,0x02,0xF0,0x07,0xA9,0x64,0xA0,
|
||||
0xC3,0x4C,0x1E,0xCB,0x60,0x20,0xB7,0xFF,0x29,0xBF,0xF0,0x05,0xA2,0x1D,0x4C,0x37,
|
||||
0xC4,0xA5,0x7B,0xC9,0x02,0xD0,0x0E,0x86,0x2D,0x84,0x2E,0xA9,0x76,0xA0,0xC3,0x20,
|
||||
0x1E,0xCB,0x4C,0x2A,0xC5,0x20,0x8E,0xC6,0x4C,0x76,0xE4,0x20,0x16,0xE2,0x20,0xC0,
|
||||
0xFF,0xB0,0x0B,0x60,0x20,0x16,0xE2,0xA5,0x49,0x20,0xC3,0xFF,0x90,0xC6,0x4C,0xF6,
|
||||
0xE0,0xA9,0x00,0x20,0xBD,0xFF,0xA2,0x01,0xA0,0x00,0x20,0xBA,0xFF,0x20,0x03,0xE2,
|
||||
0x20,0x54,0xE2,0x20,0x03,0xE2,0x20,0xFD,0xE1,0xA0,0x00,0x86,0x49,0x20,0xBA,0xFF,
|
||||
0x20,0x03,0xE2,0x20,0xFD,0xE1,0x8A,0xA8,0xA6,0x49,0x4C,0xBA,0xFF,0x20,0x0B,0xE2,
|
||||
0x4C,0x9E,0xD7,0x20,0x79,0x00,0xD0,0x02,0x68,0x68,0x60,0x20,0xFD,0xCE,0x20,0x79,
|
||||
0x00,0xD0,0xF7,0x4C,0x08,0xCF,0xA9,0x00,0x20,0xBD,0xFF,0x20,0x0E,0xE2,0x20,0x9E,
|
||||
0xD7,0x86,0x49,0x8A,0xA2,0x01,0xA0,0x00,0x20,0xBA,0xFF,0x20,0x03,0xE2,0x20,0xFD,
|
||||
0xE1,0x86,0x4A,0xA0,0x00,0xA5,0x49,0xE0,0x03,0x90,0x01,0x88,0x20,0xBA,0xFF,0x20,
|
||||
0x03,0xE2,0x20,0xFD,0xE1,0x8A,0xA8,0xA6,0x4A,0xA5,0x49,0x20,0xBA,0xFF,0x20,0x03,
|
||||
0xE2,0x20,0x0B,0xE2,0x20,0x9E,0xCD,0x20,0xA3,0xD6,0xA6,0x22,0xA4,0x23,0x4C,0xBD,
|
||||
0xFF,0xA9,0xDD,0xA0,0xE2,0x20,0x67,0xD8,0x20,0x0C,0xDC,0xA9,0xE2,0xA0,0xE2,0xA6,
|
||||
0x6E,0x20,0x07,0xDB,0x20,0x0C,0xDC,0x20,0xCC,0xDC,0xA9,0x00,0x85,0x6F,0x20,0x53,
|
||||
0xD8,0xA9,0xE7,0xA0,0xE2,0x20,0x50,0xD8,0xA5,0x66,0x48,0x10,0x0D,0x20,0x49,0xD8,
|
||||
0xA5,0x66,0x30,0x09,0xA5,0x12,0x49,0xFF,0x85,0x12,0x20,0xB4,0xDF,0xA9,0xE7,0xA0,
|
||||
0xE2,0x20,0x67,0xD8,0x68,0x10,0x03,0x20,0xB4,0xDF,0xA9,0xEC,0xA0,0xE2,0x4C,0x40,
|
||||
0xE0,0x20,0xCA,0xDB,0xA9,0x00,0x85,0x12,0x20,0x68,0xE2,0xA2,0x4E,0xA0,0x00,0x20,
|
||||
0xF3,0xE0,0xA9,0x57,0xA0,0x00,0x20,0xA2,0xDB,0xA9,0x00,0x85,0x66,0xA5,0x12,0x20,
|
||||
0xD9,0xE2,0xA9,0x4E,0xA0,0x00,0x4C,0x0F,0xDB,0x48,0x4C,0x9A,0xE2,0x81,0x49,0x0F,
|
||||
0xDA,0xA2,0x83,0x49,0x0F,0xDA,0xA2,0x7F,0x00,0x00,0x00,0x00,0x05,0x84,0xE6,0x1A,
|
||||
0x2D,0x1B,0x86,0x28,0x07,0xFB,0xF8,0x87,0x99,0x68,0x89,0x01,0x87,0x23,0x35,0xDF,
|
||||
0xE1,0x86,0xA5,0x5D,0xE7,0x28,0x83,0x49,0x0F,0xDA,0xA2,0xA5,0x66,0x48,0x10,0x03,
|
||||
0x20,0xB4,0xDF,0xA5,0x61,0x48,0xC9,0x81,0x90,0x07,0xA9,0xBC,0xA0,0xD9,0x20,0x0F,
|
||||
0xDB,0xA9,0x3B,0xA0,0xE3,0x20,0x40,0xE0,0x68,0xC9,0x81,0x90,0x07,0xA9,0xDD,0xA0,
|
||||
0xE2,0x20,0x50,0xD8,0x68,0x10,0x03,0x4C,0xB4,0xDF,0x60,0x0B,0x76,0xB3,0x83,0xBD,
|
||||
0xD3,0x79,0x1E,0xF4,0xA6,0xF5,0x7B,0x83,0xFC,0xB0,0x10,0x7C,0x0C,0x1F,0x67,0xCA,
|
||||
0x7C,0xDE,0x53,0xCB,0xC1,0x7D,0x14,0x64,0x70,0x4C,0x7D,0xB7,0xEA,0x51,0x7A,0x7D,
|
||||
0x63,0x30,0x88,0x7E,0x7E,0x92,0x44,0x99,0x3A,0x7E,0x4C,0xCC,0x91,0xC7,0x7F,0xAA,
|
||||
0xAA,0xAA,0x13,0x81,0x00,0x00,0x00,0x00,0x20,0x5B,0xE4,0x20,0xA4,0xE3,0x20,0x04,
|
||||
0xE4,0xA2,0xFB,0x9A,0x4C,0x74,0xC4,0xE6,0x7A,0xD0,0x02,0xE6,0x7B,0xAD,0x60,0xEA,
|
||||
0xC9,0x3A,0xB0,0x0A,0xC9,0x20,0xF0,0xEF,0x38,0xE9,0x30,0x38,0xE9,0xD0,0x60,0x80,
|
||||
0x4F,0xC7,0x52,0x58,0xA9,0x4C,0x85,0x54,0x85,0x00,0xA9,0x48,0xA0,0xD2,0x85,0x01,
|
||||
0x84,0x02,0xA9,0x91,0xA0,0xD3,0x85,0x05,0x84,0x06,0xA9,0xAA,0xA0,0xD1,0x85,0x03,
|
||||
0x84,0x04,0xA2,0x1C,0xBD,0x87,0xE3,0x95,0x73,0xCA,0x10,0xF8,0xA9,0x03,0x85,0x53,
|
||||
0xA9,0x00,0x85,0x68,0x85,0x13,0x85,0x18,0xA2,0x01,0x8E,0xFD,0x01,0x8E,0xFC,0x01,
|
||||
0xA2,0x19,0x86,0x16,0x38,0x20,0x9C,0xFF,0x86,0x2B,0x84,0x2C,0x38,0x20,0x99,0xFF,
|
||||
0x86,0x37,0x84,0x38,0x86,0x33,0x84,0x34,0xA0,0x00,0x98,0x91,0x2B,0xE6,0x2B,0xD0,
|
||||
0x02,0xE6,0x2C,0x60,0xA5,0x2B,0xA4,0x2C,0x20,0x08,0xC4,0xA9,0x36,0xA0,0xE4,0x20,
|
||||
0x1E,0xCB,0xA5,0x37,0x38,0xE5,0x2B,0xAA,0xA5,0x38,0xE5,0x2C,0x20,0xCD,0xDD,0xA9,
|
||||
0x29,0xA0,0xE4,0x20,0x1E,0xCB,0x4C,0x44,0xC6,0x20,0x42,0x59,0x54,0x45,0x53,0x20,
|
||||
0x46,0x52,0x45,0x45,0x0D,0x00,0x93,0x2A,0x2A,0x2A,0x2A,0x20,0x43,0x42,0x4D,0x20,
|
||||
0x42,0x41,0x53,0x49,0x43,0x20,0x56,0x32,0x20,0x2A,0x2A,0x2A,0x2A,0x0D,0x00,0x3A,
|
||||
0xC4,0x83,0xC4,0x7C,0xC5,0x1A,0xC7,0xE4,0xC7,0x86,0xCE,0xA2,0x0B,0xBD,0x4F,0xE4,
|
||||
0x9D,0x00,0x03,0xCA,0x10,0xF7,0x60,0x20,0xCC,0xFF,0xA9,0x00,0x85,0x13,0x20,0x7A,
|
||||
0xC6,0x58,0x4C,0x74,0xC4,0x41,0x20,0x33,0xC5,0x4C,0x77,0xC6,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xAD,0x2C,0x91,0x29,0xDF,0x8D,0x2C,0x91,0x60,0xAD,0x2C,0x91,0x09,0x20,0x8D,0x2C,
|
||||
0x91,0x60,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0x60,0xA6,0xB9,0x4C,0x47,
|
||||
0xF6,0x8A,0xD0,0x08,0xA5,0xC3,0x85,0xAE,0xA5,0xC4,0x85,0xAF,0x4C,0x6A,0xF6,0x20,
|
||||
0xE3,0xF8,0x90,0x03,0x68,0xA9,0x00,0x4C,0x9E,0xF3,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xA2,0x10,0xA0,0x91,0x60,0xA2,0x16,0xA0,0x17,0x60,0xB0,0x07,0x86,0xD6,0x84,0xD3,
|
||||
0x20,0x87,0xE5,0xA6,0xD6,0xA4,0xD3,0x60,0x20,0xBB,0xE5,0xAD,0x88,0x02,0x29,0xFD,
|
||||
0x0A,0x0A,0x09,0x80,0x8D,0x05,0x90,0xAD,0x88,0x02,0x29,0x02,0xF0,0x08,0xA9,0x80,
|
||||
0x0D,0x02,0x90,0x8D,0x02,0x90,0xA9,0x00,0x8D,0x91,0x02,0x85,0xCF,0xA9,0xDC,0x8D,
|
||||
0x8F,0x02,0xA9,0xEB,0x8D,0x90,0x02,0xA9,0x0A,0x8D,0x89,0x02,0x8D,0x8C,0x02,0xA9,
|
||||
0x06,0x8D,0x86,0x02,0xA9,0x04,0x8D,0x8B,0x02,0xA9,0x0C,0x85,0xCD,0x85,0xCC,0xAD,
|
||||
0x88,0x02,0x09,0x80,0xA8,0xA9,0x00,0xAA,0x94,0xD9,0x18,0x69,0x16,0x90,0x01,0xC8,
|
||||
0xE8,0xE0,0x18,0xD0,0xF3,0xA9,0xFF,0x95,0xD9,0xA2,0x16,0x20,0x8D,0xEA,0xCA,0x10,
|
||||
0xFA,0xA0,0x00,0x84,0xD3,0x84,0xD6,0xA6,0xD6,0xA5,0xD3,0xB4,0xD9,0x30,0x08,0x18,
|
||||
0x69,0x16,0x85,0xD3,0xCA,0x10,0xF4,0xB5,0xD9,0x29,0x03,0x0D,0x88,0x02,0x85,0xD2,
|
||||
0xBD,0xFD,0xED,0x85,0xD1,0xA9,0x15,0xE8,0xB4,0xD9,0x30,0x06,0x18,0x69,0x16,0xE8,
|
||||
0x10,0xF6,0x85,0xD5,0x60,0x20,0xBB,0xE5,0x4C,0x81,0xE5,0xA9,0x03,0x85,0x9A,0xA9,
|
||||
0x00,0x85,0x99,0xA2,0x10,0xBD,0xE3,0xED,0x9D,0xFF,0x8F,0xCA,0xD0,0xF7,0x60,0xAC,
|
||||
0x77,0x02,0xA2,0x00,0xBD,0x78,0x02,0x9D,0x77,0x02,0xE8,0xE4,0xC6,0xD0,0xF5,0xC6,
|
||||
0xC6,0x98,0x58,0x18,0x60,0x20,0x42,0xE7,0xA5,0xC6,0x85,0xCC,0x8D,0x92,0x02,0xF0,
|
||||
0xF7,0x78,0xA5,0xCF,0xF0,0x0C,0xA5,0xCE,0xAE,0x87,0x02,0xA0,0x00,0x84,0xCF,0x20,
|
||||
0xA1,0xEA,0x20,0xCF,0xE5,0xC9,0x83,0xD0,0x10,0xA2,0x09,0x78,0x86,0xC6,0xBD,0xF3,
|
||||
0xED,0x9D,0x76,0x02,0xCA,0xD0,0xF7,0xF0,0xCF,0xC9,0x0D,0xD0,0xC8,0xA4,0xD5,0x84,
|
||||
0xD0,0xB1,0xD1,0xC9,0x20,0xD0,0x03,0x88,0xD0,0xF7,0xC8,0x84,0xC8,0xA0,0x00,0x8C,
|
||||
0x92,0x02,0x84,0xD3,0x84,0xD4,0xA5,0xC9,0x30,0x1D,0xA6,0xD6,0x20,0x19,0xE7,0xE4,
|
||||
0xC9,0xD0,0x14,0xD0,0x12,0xA5,0xCA,0x85,0xD3,0xC5,0xC8,0x90,0x0A,0xB0,0x42,0x98,
|
||||
0x48,0x8A,0x48,0xA5,0xD0,0xF0,0x91,0xA4,0xD3,0xB1,0xD1,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0x85,0xD7,0x29,0x3F,0x06,0xD7,0x24,0xD7,0x10,0x02,0x09,0x80,0x90,0x04,
|
||||
0xA6,0xD4,0xD0,0x04,0x70,0x02,0x09,0x40,0xE6,0xD3,0x20,0xB8,0xE6,0xC4,0xC8,0xD0,
|
||||
0x17,0xA9,0x00,0x85,0xD0,0xA9,0x0D,0xA6,0x99,0xE0,0x03,0xF0,0x06,0xA6,0x9A,0xE0,
|
||||
0x03,0xF0,0x03,0x20,0x42,0xE7,0xA9,0x0D,0x85,0xD7,0x68,0xAA,0x68,0xA8,0xA5,0xD7,
|
||||
0xC9,0xDE,0xD0,0x02,0xA9,0xFF,0x18,0x60,0xC9,0x22,0xD0,0x08,0xA5,0xD4,0x49,0x01,
|
||||
0x85,0xD4,0xA9,0x22,0x60,0x09,0x40,0xA6,0xC7,0xF0,0x02,0x09,0x80,0xA6,0xD8,0xF0,
|
||||
0x02,0xC6,0xD8,0xAE,0x86,0x02,0x20,0xA1,0xEA,0x20,0xEA,0xE6,0x68,0xA8,0xA5,0xD8,
|
||||
0xF0,0x02,0x46,0xD4,0x68,0xAA,0x68,0x18,0x58,0x60,0x20,0xFA,0xE8,0xE6,0xD3,0xA5,
|
||||
0xD5,0xC5,0xD3,0xB0,0x37,0xC9,0x57,0xF0,0x2A,0xAD,0x92,0x02,0xF0,0x03,0x4C,0xF0,
|
||||
0xE9,0xA6,0xD6,0xE0,0x17,0x90,0x07,0x20,0x75,0xE9,0xC6,0xD6,0xA6,0xD6,0x16,0xD9,
|
||||
0x56,0xD9,0x4C,0x5B,0xED,0x69,0x16,0x85,0xD5,0xB5,0xD9,0x30,0x03,0xCA,0xD0,0xF9,
|
||||
0x4C,0x7E,0xEA,0xC6,0xD6,0x20,0xC3,0xE8,0xA9,0x00,0x85,0xD3,0x60,0xA6,0xD6,0xD0,
|
||||
0x06,0x86,0xD3,0x68,0x68,0xD0,0xA5,0xCA,0x86,0xD6,0x20,0x87,0xE5,0xA4,0xD5,0x84,
|
||||
0xD3,0x60,0x48,0x85,0xD7,0x8A,0x48,0x98,0x48,0xA9,0x00,0x85,0xD0,0xA4,0xD3,0xA5,
|
||||
0xD7,0x10,0x03,0x4C,0x00,0xE8,0xC9,0x0D,0xD0,0x03,0x4C,0xD8,0xE8,0xC9,0x20,0x90,
|
||||
0x10,0xC9,0x60,0x90,0x04,0x29,0xDF,0xD0,0x02,0x29,0x3F,0x20,0xB8,0xE6,0x4C,0xC7,
|
||||
0xE6,0xA6,0xD8,0xF0,0x03,0x4C,0xCB,0xE6,0xC9,0x14,0xD0,0x2E,0x98,0xD0,0x06,0x20,
|
||||
0x2D,0xE7,0x4C,0x9F,0xE7,0x20,0xE8,0xE8,0x88,0x84,0xD3,0x20,0xB2,0xEA,0xC8,0xB1,
|
||||
0xD1,0x88,0x91,0xD1,0xC8,0xB1,0xF3,0x88,0x91,0xF3,0xC8,0xC4,0xD5,0xD0,0xEF,0xA9,
|
||||
0x20,0x91,0xD1,0xAD,0x86,0x02,0x91,0xF3,0x10,0x4D,0xA6,0xD4,0xF0,0x03,0x4C,0xCB,
|
||||
0xE6,0xC9,0x12,0xD0,0x02,0x85,0xC7,0xC9,0x13,0xD0,0x03,0x20,0x81,0xE5,0xC9,0x1D,
|
||||
0xD0,0x17,0xC8,0x20,0xFA,0xE8,0x84,0xD3,0x88,0xC4,0xD5,0x90,0x09,0xC6,0xD6,0x20,
|
||||
0xC3,0xE8,0xA0,0x00,0x84,0xD3,0x4C,0xDC,0xE6,0xC9,0x11,0xD0,0x1D,0x18,0x98,0x69,
|
||||
0x16,0xA8,0xE6,0xD6,0xC5,0xD5,0x90,0xEC,0xF0,0xEA,0xC6,0xD6,0xE9,0x16,0x90,0x04,
|
||||
0x85,0xD3,0xD0,0xF8,0x20,0xC3,0xE8,0x4C,0xDC,0xE6,0x20,0x12,0xE9,0x4C,0x21,0xED,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0x29,0x7F,0xC9,0x7F,0xD0,0x02,0xA9,0x5E,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xC9,0x20,0x90,0x03,0x4C,0xC5,0xE6,0xC9,0x0D,0xD0,0x03,0x4C,0xD8,
|
||||
0xE8,0xA6,0xD4,0xD0,0x3F,0xC9,0x14,0xD0,0x37,0xA4,0xD5,0xB1,0xD1,0xC9,0x20,0xD0,
|
||||
0x04,0xC4,0xD3,0xD0,0x07,0xC0,0x57,0xF0,0x24,0x20,0xEE,0xE9,0xA4,0xD5,0x20,0xB2,
|
||||
0xEA,0x88,0xB1,0xD1,0xC8,0x91,0xD1,0x88,0xB1,0xF3,0xC8,0x91,0xF3,0x88,0xC4,0xD3,
|
||||
0xD0,0xEF,0xA9,0x20,0x91,0xD1,0xAD,0x86,0x02,0x91,0xF3,0xE6,0xD8,0x4C,0xDC,0xE6,
|
||||
0xA6,0xD8,0xF0,0x05,0x09,0x40,0x4C,0xCB,0xE6,0xC9,0x11,0xD0,0x16,0xA6,0xD6,0xF0,
|
||||
0x37,0xC6,0xD6,0xA5,0xD3,0x38,0xE9,0x16,0x90,0x04,0x85,0xD3,0x10,0x2A,0x20,0x87,
|
||||
0xE5,0xD0,0x25,0xC9,0x12,0xD0,0x04,0xA9,0x00,0x85,0xC7,0xC9,0x1D,0xD0,0x12,0x98,
|
||||
0xF0,0x09,0x20,0xE8,0xE8,0x88,0x84,0xD3,0x4C,0xDC,0xE6,0x20,0x2D,0xE7,0x4C,0xDC,
|
||||
0xE6,0xC9,0x13,0xD0,0x06,0x20,0x5F,0xE5,0x4C,0xDC,0xE6,0x09,0x80,0x20,0x12,0xE9,
|
||||
0x4C,0x30,0xED,0x46,0xC9,0xA6,0xD6,0xE8,0xE0,0x17,0xD0,0x03,0x20,0x75,0xE9,0xB5,
|
||||
0xD9,0x10,0xF4,0x86,0xD6,0x4C,0x87,0xE5,0xA2,0x00,0x86,0xD8,0x86,0xC7,0x86,0xD4,
|
||||
0x86,0xD3,0x20,0xC3,0xE8,0x4C,0xDC,0xE6,0xA2,0x04,0xA9,0x00,0xC5,0xD3,0xF0,0x07,
|
||||
0x18,0x69,0x16,0xCA,0xD0,0xF6,0x60,0xC6,0xD6,0x60,0xA2,0x04,0xA9,0x15,0xC5,0xD3,
|
||||
0xF0,0x07,0x18,0x69,0x16,0xCA,0xD0,0xF6,0x60,0xA6,0xD6,0xE0,0x17,0xF0,0x02,0xE6,
|
||||
0xD6,0x60,0xA2,0x07,0xDD,0x21,0xE9,0xF0,0x04,0xCA,0x10,0xF8,0x60,0x8E,0x86,0x02,
|
||||
0x60,0x90,0x05,0x1C,0x9F,0x9C,0x1E,0x1F,0x9E,0xEF,0xA1,0xDF,0xA6,0xE1,0xB1,0xE2,
|
||||
0xB2,0xE3,0xB3,0xE4,0xB4,0xE5,0xB5,0xE6,0xB6,0xE7,0xB7,0xE8,0xB8,0xE9,0xB9,0xFA,
|
||||
0xBA,0xFB,0xBB,0xFC,0xBC,0xEC,0xBD,0xFE,0xBE,0x84,0xBF,0xF7,0xC0,0xF8,0xDB,0xF9,
|
||||
0xDD,0xEA,0xDE,0x5E,0xE0,0x5B,0xE1,0x5D,0xE2,0x40,0xB0,0x61,0xB1,0x78,0xDB,0x79,
|
||||
0xDD,0x66,0xB6,0x77,0xC0,0x70,0xF0,0x71,0xF1,0x72,0xF2,0x73,0xF3,0x74,0xF4,0x75,
|
||||
0xF5,0x76,0xF6,0x7D,0xFD,0xA5,0xAC,0x48,0xA5,0xAD,0x48,0xA5,0xAE,0x48,0xA5,0xAF,
|
||||
0x48,0xA2,0xFF,0xC6,0xD6,0xC6,0xC9,0xC6,0xF2,0xE8,0x20,0x7E,0xEA,0xE0,0x16,0xB0,
|
||||
0x0C,0xBD,0xFE,0xED,0x85,0xAC,0xB5,0xDA,0x20,0x56,0xEA,0x30,0xEC,0x20,0x8D,0xEA,
|
||||
0xA2,0x00,0xB5,0xD9,0x29,0x7F,0xB4,0xDA,0x10,0x02,0x09,0x80,0x95,0xD9,0xE8,0xE0,
|
||||
0x16,0xD0,0xEF,0xA5,0xEF,0x09,0x80,0x85,0xEF,0xA5,0xD9,0x10,0xC4,0xE6,0xD6,0xE6,
|
||||
0xF2,0xA9,0xFB,0x8D,0x20,0x91,0xAD,0x21,0x91,0xC9,0xFE,0x08,0xA9,0xF7,0x8D,0x20,
|
||||
0x91,0x28,0xD0,0x0B,0xA0,0x00,0xEA,0xCA,0xD0,0xFC,0x88,0xD0,0xF9,0x84,0xC6,0xA6,
|
||||
0xD6,0x68,0x85,0xAF,0x68,0x85,0xAE,0x68,0x85,0xAD,0x68,0x85,0xAC,0x60,0xA6,0xD6,
|
||||
0xE8,0xB5,0xD9,0x10,0xFB,0x86,0xF2,0xE0,0x16,0xF0,0x0D,0x90,0x0B,0x20,0x75,0xE9,
|
||||
0xA6,0xF2,0xCA,0xC6,0xD6,0x4C,0x0E,0xE7,0xA5,0xAC,0x48,0xA5,0xAD,0x48,0xA5,0xAE,
|
||||
0x48,0xA5,0xAF,0x48,0xA2,0x17,0xCA,0x20,0x7E,0xEA,0xE4,0xF2,0x90,0x0E,0xF0,0x0C,
|
||||
0xBD,0xFC,0xED,0x85,0xAC,0xB5,0xD8,0x20,0x56,0xEA,0x30,0xEA,0x20,0x8D,0xEA,0xA2,
|
||||
0x15,0xE4,0xF2,0x90,0x0F,0xB5,0xDA,0x29,0x7F,0xB4,0xD9,0x10,0x02,0x09,0x80,0x95,
|
||||
0xDA,0xCA,0xD0,0xED,0xA6,0xF2,0x20,0x0E,0xE7,0x68,0x85,0xAF,0x68,0x85,0xAE,0x68,
|
||||
0x85,0xAD,0x68,0x85,0xAC,0x60,0x29,0x03,0x0D,0x88,0x02,0x85,0xAD,0x20,0x6E,0xEA,
|
||||
0xA0,0x15,0xB1,0xAC,0x91,0xD1,0xB1,0xAE,0x91,0xF3,0x88,0x10,0xF5,0x60,0x20,0xB2,
|
||||
0xEA,0xA5,0xAC,0x85,0xAE,0xA5,0xAD,0x29,0x03,0x09,0x94,0x85,0xAF,0x60,0xBD,0xFD,
|
||||
0xED,0x85,0xD1,0xB5,0xD9,0x29,0x03,0x0D,0x88,0x02,0x85,0xD2,0x60,0xA0,0x15,0x20,
|
||||
0x7E,0xEA,0x20,0xB2,0xEA,0xA9,0x20,0x91,0xD1,0xA9,0x01,0x91,0xF3,0x88,0x10,0xF5,
|
||||
0x60,0xA8,0xA9,0x02,0x85,0xCD,0x20,0xB2,0xEA,0x98,0xA4,0xD3,0x91,0xD1,0x8A,0x91,
|
||||
0xF3,0x60,0xA5,0xD1,0x85,0xF3,0xA5,0xD2,0x29,0x03,0x09,0x94,0x85,0xF4,0x60,0x20,
|
||||
0xEA,0xFF,0xA5,0xCC,0xD0,0x29,0xC6,0xCD,0xD0,0x25,0xA9,0x14,0x85,0xCD,0xA4,0xD3,
|
||||
0x46,0xCF,0xAE,0x87,0x02,0xB1,0xD1,0xB0,0x11,0xE6,0xCF,0x85,0xCE,0x20,0xB2,0xEA,
|
||||
0xB1,0xF3,0x8D,0x87,0x02,0xAE,0x86,0x02,0xA5,0xCE,0x49,0x80,0x20,0xAA,0xEA,0xAD,
|
||||
0x1F,0x91,0x29,0x40,0xF0,0x0B,0xA0,0x00,0x84,0xC0,0xAD,0x1C,0x91,0x09,0x02,0xD0,
|
||||
0x09,0xA5,0xC0,0xD0,0x0D,0xAD,0x1C,0x91,0x29,0xFD,0x2C,0x1E,0x91,0x70,0x03,0x8D,
|
||||
0x1C,0x91,0x20,0x1E,0xEB,0x2C,0x24,0x91,0x68,0xA8,0x68,0xAA,0x68,0x40,0xA9,0x00,
|
||||
0x8D,0x8D,0x02,0xA0,0x40,0x84,0xCB,0x8D,0x20,0x91,0xAE,0x21,0x91,0xE0,0xFF,0xF0,
|
||||
0x5E,0xA9,0xFE,0x8D,0x20,0x91,0xA0,0x00,0xA9,0x5E,0x85,0xF5,0xA9,0xEC,0x85,0xF6,
|
||||
0xA2,0x08,0xAD,0x21,0x91,0xCD,0x21,0x91,0xD0,0xF6,0x4A,0xB0,0x16,0x48,0xB1,0xF5,
|
||||
0xC9,0x05,0xB0,0x0C,0xC9,0x03,0xF0,0x08,0x0D,0x8D,0x02,0x8D,0x8D,0x02,0x10,0x02,
|
||||
0x84,0xCB,0x68,0xC8,0xC0,0x41,0xB0,0x09,0xCA,0xD0,0xDF,0x38,0x2E,0x20,0x91,0xD0,
|
||||
0xCF,0x6C,0x8F,0x02,0xA4,0xCB,0xB1,0xF5,0xAA,0xC4,0xC5,0xF0,0x07,0xA0,0x10,0x8C,
|
||||
0x8C,0x02,0xD0,0x36,0x29,0x7F,0x2C,0x8A,0x02,0x30,0x16,0x70,0x49,0xC9,0x7F,0xF0,
|
||||
0x29,0xC9,0x14,0xF0,0x0C,0xC9,0x20,0xF0,0x08,0xC9,0x1D,0xF0,0x04,0xC9,0x11,0xD0,
|
||||
0x35,0xAC,0x8C,0x02,0xF0,0x05,0xCE,0x8C,0x02,0xD0,0x2B,0xCE,0x8B,0x02,0xD0,0x26,
|
||||
0xA0,0x04,0x8C,0x8B,0x02,0xA4,0xC6,0x88,0x10,0x1C,0xA4,0xCB,0x84,0xC5,0xAC,0x8D,
|
||||
0x02,0x8C,0x8E,0x02,0xE0,0xFF,0xF0,0x0E,0x8A,0xA6,0xC6,0xEC,0x89,0x02,0xB0,0x06,
|
||||
0x9D,0x77,0x02,0xE8,0x86,0xC6,0xA9,0xF7,0x8D,0x20,0x91,0x60,0xAD,0x8D,0x02,0xC9,
|
||||
0x03,0xD0,0x2C,0xCD,0x8E,0x02,0xF0,0xEE,0xAD,0x91,0x02,0x30,0x56,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xAD,0x05,0x90,0x49,0x02,0x8D,0x05,0x90,0xEA,0xEA,0xEA,0xEA,0x4C,0x43,0xEC,0x0A,
|
||||
0xC9,0x08,0x90,0x04,0xA9,0x06,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xAA,0xBD,0x46,0xEC,0x85,0xF5,0xBD,0x47,
|
||||
0xEC,0x85,0xF6,0x4C,0x74,0xEB,0x5E,0xEC,0x9F,0xEC,0xE0,0xEC,0xA3,0xED,0x5E,0xEC,
|
||||
0x9F,0xEC,0x69,0xED,0xA3,0xED,0x21,0xED,0x69,0xED,0x69,0xED,0xA3,0xED,0x31,0x33,
|
||||
0x35,0x37,0x39,0x2B,0x5C,0x14,0x5F,0x57,0x52,0x59,0x49,0x50,0x2A,0x0D,0x04,0x41,
|
||||
0x44,0x47,0x4A,0x4C,0x3B,0x1D,0x03,0x01,0x58,0x56,0x4E,0x2C,0x2F,0x11,0x20,0x5A,
|
||||
0x43,0x42,0x4D,0x2E,0x01,0x85,0x02,0x53,0x46,0x48,0x4B,0x3A,0x3D,0x86,0x51,0x45,
|
||||
0x54,0x55,0x4F,0x40,0x5E,0x87,0x32,0x34,0x36,0x38,0x30,0x2D,0x13,0x88,0xFF,0x21,
|
||||
0x23,0x25,0x27,0x29,0xDB,0xA9,0x94,0x5F,0xD7,0xD2,0xD9,0xC9,0xD0,0xC0,0x8D,0x04,
|
||||
0xC1,0xC4,0xC7,0xCA,0xCC,0x5D,0x9D,0x83,0x01,0xD8,0xD6,0xCE,0x3C,0x3F,0x91,0xA0,
|
||||
0xDA,0xC3,0xC2,0xCD,0x3E,0x01,0x89,0x02,0xD3,0xC6,0xC8,0xCB,0x5B,0x3D,0x8A,0xD1,
|
||||
0xC5,0xD4,0xD5,0xCF,0xBA,0xDE,0x8B,0x22,0x24,0x26,0x28,0x30,0xDD,0x93,0x8C,0xFF,
|
||||
0x21,0x23,0x25,0x27,0x29,0xA6,0xA8,0x94,0x5F,0xB3,0xB2,0xB7,0xA2,0xAF,0xDF,0x8D,
|
||||
0x04,0xB0,0xAC,0xA5,0xB5,0xB6,0x5D,0x9D,0x83,0x01,0xBD,0xBE,0xAA,0x3C,0x3F,0x91,
|
||||
0xA0,0xAD,0xBC,0xBF,0xA7,0x3E,0x01,0x89,0x02,0xAE,0xBB,0xB4,0xA1,0x5B,0x3D,0x8A,
|
||||
0xAB,0xB1,0xA3,0xB8,0xB9,0xA4,0xDE,0x8B,0x22,0x24,0x26,0x28,0x30,0xDC,0x93,0x8C,
|
||||
0xFF,0xC9,0x0E,0xD0,0x0B,0xA9,0x02,0x0D,0x05,0x90,0x8D,0x05,0x90,0x4C,0xDC,0xE6,
|
||||
0xC9,0x8E,0xD0,0x0B,0xA9,0xFD,0x2D,0x05,0x90,0x8D,0x05,0x90,0x4C,0xDC,0xE6,0xC9,
|
||||
0x08,0xD0,0x0A,0xA9,0x80,0x0D,0x91,0x02,0x8D,0x91,0x02,0x30,0xEF,0xC9,0x09,0xD0,
|
||||
0xEB,0xA9,0x7F,0x2D,0x91,0x02,0x8D,0x91,0x02,0x10,0xE1,0xE8,0xB5,0xD9,0x09,0x80,
|
||||
0x95,0xD9,0xCA,0xA5,0xD5,0x18,0x4C,0x15,0xE7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0x04,0xFF,0xFF,0xFF,0xFF,0xFF,0xE2,0x9D,0x83,0x01,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0x91,0xA0,0xFF,0xFF,0xFF,0xFF,0xEE,0x01,0x89,0x02,0xFF,0xFF,0xFF,0xFF,0xE1,
|
||||
0xFD,0x8A,0xFF,0xFF,0xFF,0xFF,0xFF,0xB0,0xE0,0x8B,0xF2,0xF4,0xF6,0xFF,0xF0,0xED,
|
||||
0x93,0x8C,0xFF,0x90,0x1C,0x9C,0x1F,0x12,0xFF,0xFF,0xFF,0x06,0xFF,0x12,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x05,0x9F,0x1E,0x9E,0x92,
|
||||
0xFF,0xFF,0xFF,0xFF,0x05,0x19,0x16,0x2E,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x1B,0x4C,0x4F,0x41,0x44,0x0D,0x52,0x55,0x4E,0x0D,0x00,0x16,0x2C,
|
||||
0x42,0x58,0x6E,0x84,0x9A,0xB0,0xC6,0xDC,0xF2,0x08,0x1E,0x34,0x4A,0x60,0x76,0x8C,
|
||||
0xA2,0xB8,0xCE,0xE4,0x09,0x40,0x2C,0x09,0x20,0x20,0x60,0xF1,0x48,0x24,0x94,0x10,
|
||||
0x0A,0x38,0x66,0xA3,0x20,0x49,0xEE,0x46,0x94,0x46,0xA3,0x68,0x85,0x95,0x20,0xA0,
|
||||
0xE4,0xC9,0x3F,0xD0,0x03,0x20,0x84,0xEF,0xAD,0x1F,0x91,0x09,0x80,0x8D,0x1F,0x91,
|
||||
0x20,0x8D,0xEF,0x20,0xA0,0xE4,0x20,0x96,0xEF,0x78,0x20,0xA0,0xE4,0x20,0xB2,0xE4,
|
||||
0x4A,0xB0,0x61,0x20,0x84,0xEF,0x24,0xA3,0x10,0x0C,0x20,0xB2,0xE4,0x4A,0x90,0xFA,
|
||||
0x20,0xB2,0xE4,0x4A,0xB0,0xFA,0x20,0xB2,0xE4,0x4A,0x90,0xFA,0x20,0x8D,0xEF,0xA9,
|
||||
0x08,0x85,0xA5,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0x4A,0x90,0x38,0x66,
|
||||
0x95,0xB0,0x05,0x20,0xA9,0xE4,0xD0,0x03,0x20,0xA0,0xE4,0x20,0x84,0xEF,0xEA,0xEA,
|
||||
0xEA,0xEA,0xAD,0x2C,0x91,0x29,0xDF,0x09,0x02,0x8D,0x2C,0x91,0xC6,0xA5,0xD0,0xD3,
|
||||
0xA9,0x04,0x8D,0x29,0x91,0xAD,0x2D,0x91,0x29,0x20,0xD0,0x0B,0x20,0xB2,0xE4,0x4A,
|
||||
0xB0,0xF3,0x58,0x60,0xA9,0x80,0x2C,0xA9,0x03,0x20,0x6A,0xFE,0x58,0x18,0x90,0x49,
|
||||
0x85,0x95,0x20,0x40,0xEE,0xAD,0x1F,0x91,0x29,0x7F,0x8D,0x1F,0x91,0x60,0x85,0x95,
|
||||
0x20,0x40,0xEE,0x78,0x20,0xA9,0xE4,0x20,0xC5,0xEE,0x20,0x84,0xEF,0x20,0xB2,0xE4,
|
||||
0xB0,0xFB,0x58,0x60,0x24,0x94,0x30,0x05,0x38,0x66,0x94,0xD0,0x05,0x48,0x20,0x49,
|
||||
0xEE,0x68,0x85,0x95,0x18,0x60,0x20,0x8D,0xEF,0xAD,0x1F,0x91,0x09,0x80,0x8D,0x1F,
|
||||
0x91,0xA9,0x5F,0x2C,0xA9,0x3F,0x20,0x1C,0xEE,0x20,0xC5,0xEE,0x8A,0xA2,0x0B,0xCA,
|
||||
0xD0,0xFD,0xAA,0x20,0x84,0xEF,0x4C,0xA0,0xE4,0x78,0xA9,0x00,0x85,0xA5,0x20,0x84,
|
||||
0xEF,0x20,0xB2,0xE4,0x90,0xFB,0x20,0xA0,0xE4,0xA9,0x01,0x8D,0x29,0x91,0xAD,0x2D,
|
||||
0x91,0x29,0x20,0xD0,0x07,0x20,0xB2,0xE4,0xB0,0xF4,0x90,0x18,0xA5,0xA5,0xF0,0x05,
|
||||
0xA9,0x02,0x4C,0xB9,0xEE,0x20,0xA9,0xE4,0x20,0x0C,0xEF,0xA9,0x40,0x20,0x6A,0xFE,
|
||||
0xE6,0xA5,0xD0,0xD5,0xA9,0x08,0x85,0xA5,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,
|
||||
0x4A,0x90,0xF5,0x4A,0x66,0xA4,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0xB0,
|
||||
0xF5,0xC6,0xA5,0xD0,0xE3,0x20,0xA9,0xE4,0xA5,0x90,0xF0,0x03,0x20,0x0C,0xEF,0xA5,
|
||||
0xA4,0x58,0x18,0x60,0xAD,0x2C,0x91,0x29,0xFD,0x8D,0x2C,0x91,0x60,0xAD,0x2C,0x91,
|
||||
0x09,0x02,0x8D,0x2C,0x91,0x60,0xA9,0x04,0x8D,0x29,0x91,0xAD,0x2D,0x91,0x29,0x20,
|
||||
0xF0,0xF9,0x60,0xA5,0xB4,0xF0,0x47,0x30,0x3F,0x46,0xB6,0xA2,0x00,0x90,0x01,0xCA,
|
||||
0x8A,0x45,0xBD,0x85,0xBD,0xC6,0xB4,0xF0,0x06,0x8A,0x29,0x20,0x85,0xB5,0x60,0xA9,
|
||||
0x20,0x2C,0x94,0x02,0xF0,0x14,0x30,0x1C,0x70,0x14,0xA5,0xBD,0xD0,0x01,0xCA,0xC6,
|
||||
0xB4,0xAD,0x93,0x02,0x10,0xE3,0xC6,0xB4,0xD0,0xDF,0xE6,0xB4,0xD0,0xF0,0xA5,0xBD,
|
||||
0xF0,0xED,0xD0,0xEA,0x70,0xE9,0x50,0xE6,0xE6,0xB4,0xA2,0xFF,0xD0,0xCB,0xAD,0x94,
|
||||
0x02,0x4A,0x90,0x07,0x2C,0x20,0x91,0x10,0x1D,0x50,0x1E,0xA9,0x00,0x85,0xBD,0x85,
|
||||
0xB5,0xAE,0x98,0x02,0x86,0xB4,0xAC,0x9D,0x02,0xCC,0x9E,0x02,0xF0,0x13,0xB1,0xF9,
|
||||
0x85,0xB6,0xEE,0x9D,0x02,0x60,0xA9,0x40,0x2C,0xA9,0x10,0x0D,0x97,0x02,0x8D,0x97,
|
||||
0x02,0xA9,0x40,0x8D,0x1E,0x91,0x60,0xA2,0x09,0xA9,0x20,0x2C,0x93,0x02,0xF0,0x01,
|
||||
0xCA,0x50,0x02,0xCA,0xCA,0x60,0xA6,0xA9,0xD0,0x2E,0xC6,0xA8,0xF0,0x31,0x30,0x0D,
|
||||
0xA5,0xA7,0x45,0xAB,0x85,0xAB,0x46,0xA7,0x66,0xAA,0x60,0xC6,0xA8,0xA5,0xA7,0xF0,
|
||||
0x62,0xAD,0x93,0x02,0x0A,0xA9,0x01,0x65,0xA8,0xD0,0xEF,0xA9,0x90,0x8D,0x1E,0x91,
|
||||
0x85,0xA9,0xA9,0x20,0x8D,0x1E,0x91,0x60,0xA5,0xA7,0xD0,0xEF,0x85,0xA9,0x60,0xAC,
|
||||
0x9B,0x02,0xC8,0xCC,0x9C,0x02,0xF0,0x2A,0x8C,0x9B,0x02,0x88,0xA5,0xAA,0xAE,0x98,
|
||||
0x02,0xE0,0x09,0xF0,0x04,0x4A,0xE8,0xD0,0xF8,0x91,0xF7,0xA9,0x20,0x2C,0x94,0x02,
|
||||
0xF0,0xB9,0x30,0xB6,0xA5,0xA7,0x45,0xAB,0xF0,0x03,0x70,0xAE,0x2C,0x50,0xAB,0xA9,
|
||||
0x01,0x2C,0xA9,0x04,0x2C,0xA9,0x80,0x2C,0xA9,0x02,0x0D,0x97,0x02,0x8D,0x97,0x02,
|
||||
0x4C,0x5B,0xF0,0xA5,0xAA,0xD0,0xF1,0xF0,0xEC,0x4C,0x96,0xF7,0x85,0x9A,0xAD,0x94,
|
||||
0x02,0x4A,0x90,0x27,0xA9,0x02,0x2C,0x10,0x91,0x10,0x1D,0xD0,0x1E,0xAD,0x1E,0x91,
|
||||
0x29,0x30,0xD0,0xF9,0x2C,0x10,0x91,0x70,0xFB,0xAD,0x10,0x91,0x09,0x02,0x8D,0x10,
|
||||
0x91,0x2C,0x10,0x91,0x70,0x05,0x30,0xF9,0x20,0x16,0xF0,0x18,0x60,0xAC,0x9E,0x02,
|
||||
0xC8,0xCC,0x9D,0x02,0xF0,0xF7,0x8C,0x9E,0x02,0x88,0x91,0xF9,0x2C,0x1E,0x91,0x50,
|
||||
0x01,0x60,0xAD,0x99,0x02,0x8D,0x14,0x91,0xAD,0x9A,0x02,0x8D,0x15,0x91,0xA9,0xC0,
|
||||
0x8D,0x1E,0x91,0x4C,0xEE,0xEF,0x85,0x99,0xAD,0x94,0x02,0x4A,0x90,0x28,0x29,0x08,
|
||||
0xF0,0x24,0xA9,0x02,0x2C,0x10,0x91,0x10,0xBF,0xF0,0x19,0x2C,0x1E,0x91,0x70,0xFB,
|
||||
0xAD,0x10,0x91,0x29,0xFD,0x8D,0x10,0x91,0xAD,0x10,0x91,0x29,0x04,0xF0,0xF9,0xA9,
|
||||
0x90,0x8D,0x1E,0x91,0x18,0x60,0xAD,0x1E,0x91,0x29,0x30,0xF0,0xF2,0x18,0x60,0xAC,
|
||||
0x9C,0x02,0xCC,0x9B,0x02,0xF0,0x06,0xB1,0xF7,0xEE,0x9C,0x02,0x60,0xA9,0x00,0x60,
|
||||
0x48,0xAD,0x1E,0x91,0xF0,0x0C,0xAD,0x1E,0x91,0x29,0x60,0xD0,0xF9,0xA9,0x10,0x8D,
|
||||
0x1E,0x91,0x68,0x60,0x0D,0x49,0x2F,0x4F,0x20,0x45,0x52,0x52,0x4F,0x52,0x20,0xA3,
|
||||
0x0D,0x53,0x45,0x41,0x52,0x43,0x48,0x49,0x4E,0x47,0xA0,0x46,0x4F,0x52,0xA0,0x0D,
|
||||
0x50,0x52,0x45,0x53,0x53,0x20,0x50,0x4C,0x41,0x59,0x20,0x4F,0x4E,0x20,0x54,0x41,
|
||||
0x50,0xC5,0x50,0x52,0x45,0x53,0x53,0x20,0x52,0x45,0x43,0x4F,0x52,0x44,0x20,0x26,
|
||||
0x20,0x50,0x4C,0x41,0x59,0x20,0x4F,0x4E,0x20,0x54,0x41,0x50,0xC5,0x0D,0x4C,0x4F,
|
||||
0x41,0x44,0x49,0x4E,0xC7,0x0D,0x53,0x41,0x56,0x49,0x4E,0x47,0xA0,0x0D,0x56,0x45,
|
||||
0x52,0x49,0x46,0x59,0x49,0x4E,0xC7,0x0D,0x46,0x4F,0x55,0x4E,0x44,0xA0,0x0D,0x4F,
|
||||
0x4B,0x8D,0x24,0x9D,0x10,0x0D,0xB9,0x74,0xF1,0x08,0x29,0x7F,0x20,0xD2,0xFF,0xC8,
|
||||
0x28,0x10,0xF3,0x18,0x60,0xA5,0x99,0xD0,0x08,0xA5,0xC6,0xF0,0x6D,0x78,0x4C,0xCF,
|
||||
0xE5,0xC9,0x02,0xD0,0x18,0x84,0x97,0x20,0x4F,0xF1,0xA4,0x97,0x18,0x60,0xA5,0x99,
|
||||
0xD0,0x0B,0xA5,0xD3,0x85,0xCA,0xA5,0xD6,0x85,0xC9,0x4C,0x4F,0xE6,0xC9,0x03,0xD0,
|
||||
0x09,0x85,0xD0,0xA5,0xD5,0x85,0xC8,0x4C,0x4F,0xE6,0xB0,0x38,0xC9,0x02,0xF0,0x3F,
|
||||
0x86,0x97,0x20,0x50,0xF2,0xB0,0x16,0x48,0x20,0x50,0xF2,0xB0,0x0D,0xD0,0x05,0xA9,
|
||||
0x40,0x20,0x6A,0xFE,0xC6,0xA6,0xA6,0x97,0x68,0x60,0xAA,0x68,0x8A,0xA6,0x97,0x60,
|
||||
0x20,0x8A,0xF8,0xD0,0x0B,0x20,0xC0,0xF8,0xB0,0x11,0xA9,0x00,0x85,0xA6,0xF0,0xF0,
|
||||
0xB1,0xB2,0x18,0x60,0xA5,0x90,0xF0,0x04,0xA9,0x0D,0x18,0x60,0x4C,0x19,0xEF,0x20,
|
||||
0x05,0xF2,0xB0,0x05,0xC9,0x00,0xF0,0xF7,0x18,0x60,0x48,0xA5,0x9A,0xC9,0x03,0xD0,
|
||||
0x04,0x68,0x4C,0x42,0xE7,0x90,0x04,0x68,0x4C,0xE4,0xEE,0xC9,0x02,0xF0,0x2A,0x68,
|
||||
0x85,0x9E,0x48,0x8A,0x48,0x98,0x48,0x20,0x8A,0xF8,0xD0,0x0E,0x20,0xE3,0xF8,0xB0,
|
||||
0x0E,0xA9,0x02,0xA0,0x00,0x91,0xB2,0xC8,0x84,0xA6,0xA5,0x9E,0x91,0xB2,0x18,0x68,
|
||||
0xA8,0x68,0xAA,0x68,0x90,0x02,0xA9,0x00,0x60,0x68,0x86,0x97,0x84,0x9E,0x20,0xED,
|
||||
0xF0,0xA6,0x97,0xA4,0x9E,0x18,0x60,0x20,0xCF,0xF3,0xF0,0x03,0x4C,0x84,0xF7,0x20,
|
||||
0xDF,0xF3,0xA5,0xBA,0xF0,0x16,0xC9,0x03,0xF0,0x12,0xB0,0x14,0xC9,0x02,0xD0,0x03,
|
||||
0x4C,0x16,0xF1,0xA6,0xB9,0xE0,0x60,0xF0,0x03,0x4C,0x8D,0xF7,0x85,0x99,0x18,0x60,
|
||||
0xAA,0x20,0x14,0xEE,0xA5,0xB9,0x10,0x06,0x20,0xD3,0xEE,0x4C,0x01,0xF3,0x20,0xCE,
|
||||
0xEE,0x8A,0x24,0x90,0x10,0xE6,0x4C,0x8A,0xF7,0x20,0xCF,0xF3,0xF0,0x03,0x4C,0x84,
|
||||
0xF7,0x20,0xDF,0xF3,0xA5,0xBA,0xD0,0x03,0x4C,0x90,0xF7,0xC9,0x03,0xF0,0x0F,0xB0,
|
||||
0x11,0xC9,0x02,0xD0,0x03,0x4C,0xBC,0xF0,0xA6,0xB9,0xE0,0x60,0xF0,0xEA,0x85,0x9A,
|
||||
0x18,0x60,0xAA,0x20,0x17,0xEE,0xA5,0xB9,0x10,0x05,0x20,0xC5,0xEE,0xD0,0x03,0x20,
|
||||
0xC0,0xEE,0x8A,0x24,0x90,0x10,0xE7,0x4C,0x8A,0xF7,0x20,0xD4,0xF3,0xF0,0x02,0x18,
|
||||
0x60,0x20,0xDF,0xF3,0x8A,0x48,0xA5,0xBA,0xF0,0x57,0xC9,0x03,0xF0,0x53,0xB0,0x4E,
|
||||
0xC9,0x02,0xD0,0x29,0x68,0x20,0xB2,0xF3,0xA9,0x7D,0x8D,0x1E,0x91,0xA9,0x06,0x8D,
|
||||
0x10,0x91,0xA9,0xEE,0x8D,0x1C,0x91,0x20,0x75,0xFE,0xA5,0xF8,0xF0,0x01,0xC8,0xA5,
|
||||
0xFA,0xF0,0x01,0xC8,0xA9,0x00,0x85,0xF8,0x85,0xFA,0x4C,0x3C,0xF5,0xA5,0xB9,0x29,
|
||||
0x0F,0xF0,0x1E,0x20,0x4D,0xF8,0xA9,0x00,0x20,0x90,0xF2,0x4C,0xCF,0xE4,0xB0,0x2E,
|
||||
0xA5,0xB9,0xC9,0x62,0xD0,0x0B,0xA9,0x05,0x20,0xE7,0xF7,0x4C,0xB1,0xF3,0x20,0xDA,
|
||||
0xF6,0x68,0xAA,0xC6,0x98,0xE4,0x98,0xF0,0x14,0xA4,0x98,0xB9,0x59,0x02,0x9D,0x59,
|
||||
0x02,0xB9,0x63,0x02,0x9D,0x63,0x02,0xB9,0x6D,0x02,0x9D,0x6D,0x02,0x18,0x60,0xA9,
|
||||
0x00,0x85,0x90,0x8A,0xA6,0x98,0xCA,0x30,0x15,0xDD,0x59,0x02,0xD0,0xF8,0x60,0xBD,
|
||||
0x59,0x02,0x85,0xB8,0xBD,0x63,0x02,0x85,0xBA,0xBD,0x6D,0x02,0x85,0xB9,0x60,0xA9,
|
||||
0x00,0x85,0x98,0xA2,0x03,0xE4,0x9A,0xB0,0x03,0x20,0x04,0xEF,0xE4,0x99,0xB0,0x03,
|
||||
0x20,0xF6,0xEE,0x86,0x9A,0xA9,0x00,0x85,0x99,0x60,0xA6,0xB8,0xD0,0x03,0x4C,0x8D,
|
||||
0xF7,0x20,0xCF,0xF3,0xD0,0x03,0x4C,0x81,0xF7,0xA6,0x98,0xE0,0x0A,0x90,0x03,0x4C,
|
||||
0x7E,0xF7,0xE6,0x98,0xA5,0xB8,0x9D,0x59,0x02,0xA5,0xB9,0x09,0x60,0x85,0xB9,0x9D,
|
||||
0x6D,0x02,0xA5,0xBA,0x9D,0x63,0x02,0xF0,0x5A,0xC9,0x03,0xF0,0x56,0x90,0x05,0x20,
|
||||
0x95,0xF4,0x90,0x4F,0xC9,0x02,0xD0,0x03,0x4C,0xC7,0xF4,0x20,0x4D,0xF8,0xB0,0x03,
|
||||
0x4C,0x96,0xF7,0xA5,0xB9,0x29,0x0F,0xD0,0x1F,0x20,0x94,0xF8,0xB0,0x36,0x20,0x47,
|
||||
0xF6,0xA5,0xB7,0xF0,0x0A,0x20,0x67,0xF8,0x90,0x18,0xF0,0x28,0x4C,0x87,0xF7,0x20,
|
||||
0xAF,0xF7,0xF0,0x20,0x90,0x0C,0xB0,0xF4,0x20,0xB7,0xF8,0xB0,0x17,0xA9,0x04,0x20,
|
||||
0xE7,0xF7,0xA9,0xBF,0xA4,0xB9,0xC0,0x60,0xF0,0x07,0xA0,0x00,0xA9,0x02,0x91,0xB2,
|
||||
0x98,0x85,0xA6,0x18,0x60,0xA5,0xB9,0x30,0x2C,0xA4,0xB7,0xF0,0x28,0xA5,0xBA,0x20,
|
||||
0x17,0xEE,0xA5,0xB9,0x09,0xF0,0x20,0xC0,0xEE,0xA5,0x90,0x10,0x05,0x68,0x68,0x4C,
|
||||
0x8A,0xF7,0xA5,0xB7,0xF0,0x0C,0xA0,0x00,0xB1,0xBB,0x20,0xE4,0xEE,0xC8,0xC4,0xB7,
|
||||
0xD0,0xF6,0x20,0x04,0xEF,0x18,0x60,0xA9,0x06,0x8D,0x12,0x91,0x8D,0x10,0x91,0xA9,
|
||||
0xEE,0x8D,0x1C,0x91,0xA0,0x00,0x8C,0x97,0x02,0xC4,0xB7,0xF0,0x0A,0xB1,0xBB,0x99,
|
||||
0x93,0x02,0xC8,0xC0,0x04,0xD0,0xF2,0x20,0x27,0xF0,0x8E,0x98,0x02,0xAD,0x93,0x02,
|
||||
0x29,0x0F,0xD0,0x00,0x0A,0xAA,0xBD,0x5A,0xFF,0x0A,0xA8,0xBD,0x5B,0xFF,0x2A,0x48,
|
||||
0x98,0x69,0xC8,0x8D,0x99,0x02,0x68,0x69,0x00,0x8D,0x9A,0x02,0xAD,0x94,0x02,0x4A,
|
||||
0x90,0x09,0xAD,0x20,0x91,0x0A,0xB0,0x03,0x4C,0x16,0xF0,0xAD,0x9B,0x02,0x8D,0x9C,
|
||||
0x02,0xAD,0x9E,0x02,0x8D,0x9D,0x02,0x20,0x75,0xFE,0xA5,0xF8,0xD0,0x05,0x88,0x84,
|
||||
0xF8,0x86,0xF7,0xA5,0xFA,0xD0,0x05,0x88,0x84,0xFA,0x86,0xF9,0x38,0xA9,0xF0,0x4C,
|
||||
0x7B,0xFE,0x86,0xC3,0x84,0xC4,0x6C,0x30,0x03,0x85,0x93,0xA9,0x00,0x85,0x90,0xA5,
|
||||
0xBA,0xD0,0x03,0x4C,0x96,0xF7,0xC9,0x03,0xF0,0xF9,0x90,0x6E,0xA4,0xB7,0xD0,0x03,
|
||||
0x4C,0x93,0xF7,0x20,0xBC,0xE4,0xA9,0x60,0x85,0xB9,0x20,0x95,0xF4,0xA5,0xBA,0x20,
|
||||
0x14,0xEE,0xA5,0xB9,0x20,0xCE,0xEE,0x20,0x19,0xEF,0x85,0xAE,0xA5,0x90,0x4A,0x4A,
|
||||
0xB0,0x45,0x20,0x19,0xEF,0x85,0xAF,0x20,0xC1,0xE4,0xA9,0xFD,0x25,0x90,0x85,0x90,
|
||||
0x20,0xE1,0xFF,0xD0,0x03,0x4C,0xCB,0xF6,0x20,0x19,0xEF,0xAA,0xA5,0x90,0x4A,0x4A,
|
||||
0xB0,0xE8,0x8A,0xA4,0x93,0xF0,0x0C,0xA0,0x00,0xD1,0xAE,0xF0,0x08,0xA9,0x10,0x20,
|
||||
0x6A,0xFE,0x2C,0x91,0xAE,0xE6,0xAE,0xD0,0x02,0xE6,0xAF,0x24,0x90,0x50,0xCB,0x20,
|
||||
0xF6,0xEE,0x20,0xDA,0xF6,0x90,0x7A,0x4C,0x87,0xF7,0xC9,0x02,0xD0,0x03,0x4C,0xB9,
|
||||
0xF0,0x20,0x4D,0xF8,0xB0,0x03,0x4C,0x96,0xF7,0x20,0x94,0xF8,0xB0,0x68,0x20,0x47,
|
||||
0xF6,0xA5,0xB7,0xF0,0x09,0x20,0x67,0xF8,0x90,0x0B,0xF0,0x5A,0xB0,0xD9,0x20,0xAF,
|
||||
0xF7,0xF0,0x53,0xB0,0xD2,0xA5,0x90,0x29,0x10,0x38,0xD0,0x4A,0xE0,0x01,0xF0,0x11,
|
||||
0xE0,0x03,0xD0,0xDD,0xA0,0x01,0xB1,0xB2,0x85,0xC3,0xC8,0xB1,0xB2,0x85,0xC4,0xB0,
|
||||
0x04,0xA5,0xB9,0xD0,0xEF,0xA0,0x03,0xB1,0xB2,0xA0,0x01,0xF1,0xB2,0xAA,0xA0,0x04,
|
||||
0xB1,0xB2,0xA0,0x02,0xF1,0xB2,0xA8,0x18,0x8A,0x65,0xC3,0x85,0xAE,0x98,0x65,0xC4,
|
||||
0x85,0xAF,0xA5,0xC3,0x85,0xC1,0xA5,0xC4,0x85,0xC2,0x20,0x6A,0xF6,0x20,0xC9,0xF8,
|
||||
0x24,0x18,0xA6,0xAE,0xA4,0xAF,0x60,0xA5,0x9D,0x10,0x1E,0xA0,0x0C,0x20,0xE6,0xF1,
|
||||
0xA5,0xB7,0xF0,0x15,0xA0,0x17,0x20,0xE6,0xF1,0xA4,0xB7,0xF0,0x0C,0xA0,0x00,0xB1,
|
||||
0xBB,0x20,0xD2,0xFF,0xC8,0xC4,0xB7,0xD0,0xF6,0x60,0xA0,0x49,0xA5,0x93,0xF0,0x02,
|
||||
0xA0,0x59,0x4C,0xE2,0xF1,0x86,0xAE,0x84,0xAF,0xAA,0xB5,0x00,0x85,0xC1,0xB5,0x01,
|
||||
0x85,0xC2,0x6C,0x32,0x03,0xA5,0xBA,0xD0,0x03,0x4C,0x96,0xF7,0xC9,0x03,0xF0,0xF9,
|
||||
0x90,0x5F,0xA9,0x61,0x85,0xB9,0xA4,0xB7,0xD0,0x03,0x4C,0x93,0xF7,0x20,0x95,0xF4,
|
||||
0x20,0x28,0xF7,0xA5,0xBA,0x20,0x17,0xEE,0xA5,0xB9,0x20,0xC0,0xEE,0xA0,0x00,0x20,
|
||||
0xD2,0xFB,0xA5,0xAC,0x20,0xE4,0xEE,0xA5,0xAD,0x20,0xE4,0xEE,0x20,0x11,0xFD,0xB0,
|
||||
0x16,0xB1,0xAC,0x20,0xE4,0xEE,0x20,0xE1,0xFF,0xD0,0x07,0x20,0xDA,0xF6,0xA9,0x00,
|
||||
0x38,0x60,0x20,0x1B,0xFD,0xD0,0xE5,0x20,0x04,0xEF,0x24,0xB9,0x30,0x11,0xA5,0xBA,
|
||||
0x20,0x17,0xEE,0xA5,0xB9,0x29,0xEF,0x09,0xE0,0x20,0xC0,0xEE,0x20,0x04,0xEF,0x18,
|
||||
0x60,0xC9,0x02,0xD0,0x03,0x4C,0xB9,0xF0,0x20,0x4D,0xF8,0x90,0x8C,0x20,0xB7,0xF8,
|
||||
0xB0,0x25,0x20,0x28,0xF7,0xA2,0x03,0xA5,0xB9,0x29,0x01,0xD0,0x02,0xA2,0x01,0x8A,
|
||||
0x20,0xE7,0xF7,0xB0,0x12,0x20,0xE6,0xF8,0xB0,0x0D,0xA5,0xB9,0x29,0x02,0xF0,0x06,
|
||||
0xA9,0x05,0x20,0xE7,0xF7,0x24,0x18,0x60,0xA5,0x9D,0x10,0xFB,0xA0,0x51,0x20,0xE6,
|
||||
0xF1,0x4C,0x59,0xF6,0xA2,0x00,0xE6,0xA2,0xD0,0x06,0xE6,0xA1,0xD0,0x02,0xE6,0xA0,
|
||||
0x38,0xA5,0xA2,0xE9,0x01,0xA5,0xA1,0xE9,0x1A,0xA5,0xA0,0xE9,0x4F,0x90,0x06,0x86,
|
||||
0xA0,0x86,0xA1,0x86,0xA2,0xAD,0x2F,0x91,0xCD,0x2F,0x91,0xD0,0xF8,0x85,0x91,0x60,
|
||||
0x78,0xA5,0xA2,0xA6,0xA1,0xA4,0xA0,0x78,0x85,0xA2,0x86,0xA1,0x84,0xA0,0x58,0x60,
|
||||
0xA5,0x91,0xC9,0xFE,0xD0,0x07,0x08,0x20,0xCC,0xFF,0x85,0xC6,0x28,0x60,0xA9,0x01,
|
||||
0x2C,0xA9,0x02,0x2C,0xA9,0x03,0x2C,0xA9,0x04,0x2C,0xA9,0x05,0x2C,0xA9,0x06,0x2C,
|
||||
0xA9,0x07,0x2C,0xA9,0x08,0x2C,0xA9,0x09,0x48,0x20,0xCC,0xFF,0xA0,0x00,0x24,0x9D,
|
||||
0x50,0x0A,0x20,0xE6,0xF1,0x68,0x48,0x09,0x30,0x20,0xD2,0xFF,0x68,0x38,0x60,0xA5,
|
||||
0x93,0x48,0x20,0xC0,0xF8,0x68,0x85,0x93,0xB0,0x2C,0xA0,0x00,0xB1,0xB2,0xC9,0x05,
|
||||
0xF0,0x24,0xC9,0x01,0xF0,0x08,0xC9,0x03,0xF0,0x04,0xC9,0x04,0xD0,0xE1,0xAA,0x24,
|
||||
0x9D,0x10,0x11,0xA0,0x63,0x20,0xE6,0xF1,0xA0,0x05,0xB1,0xB2,0x20,0xD2,0xFF,0xC8,
|
||||
0xC0,0x15,0xD0,0xF6,0x18,0x88,0x60,0x85,0x9E,0x20,0x4D,0xF8,0x90,0x5E,0xA5,0xC2,
|
||||
0x48,0xA5,0xC1,0x48,0xA5,0xAF,0x48,0xA5,0xAE,0x48,0xA0,0xBF,0xA9,0x20,0x91,0xB2,
|
||||
0x88,0xD0,0xFB,0xA5,0x9E,0x91,0xB2,0xC8,0xA5,0xC1,0x91,0xB2,0xC8,0xA5,0xC2,0x91,
|
||||
0xB2,0xC8,0xA5,0xAE,0x91,0xB2,0xC8,0xA5,0xAF,0x91,0xB2,0xC8,0x84,0x9F,0xA0,0x00,
|
||||
0x84,0x9E,0xA4,0x9E,0xC4,0xB7,0xF0,0x0C,0xB1,0xBB,0xA4,0x9F,0x91,0xB2,0xE6,0x9E,
|
||||
0xE6,0x9F,0xD0,0xEE,0x20,0x54,0xF8,0xA9,0x69,0x85,0xAB,0x20,0xEA,0xF8,0xA8,0x68,
|
||||
0x85,0xAE,0x68,0x85,0xAF,0x68,0x85,0xC1,0x68,0x85,0xC2,0x98,0x60,0xA6,0xB2,0xA4,
|
||||
0xB3,0xC0,0x02,0x60,0x20,0x4D,0xF8,0x8A,0x85,0xC1,0x18,0x69,0xC0,0x85,0xAE,0x98,
|
||||
0x85,0xC2,0x69,0x00,0x85,0xAF,0x60,0x20,0xAF,0xF7,0xB0,0x1D,0xA0,0x05,0x84,0x9F,
|
||||
0xA0,0x00,0x84,0x9E,0xC4,0xB7,0xF0,0x10,0xB1,0xBB,0xA4,0x9F,0xD1,0xB2,0xD0,0xE7,
|
||||
0xE6,0x9E,0xE6,0x9F,0xA4,0x9E,0xD0,0xEC,0x18,0x60,0x20,0x4D,0xF8,0xE6,0xA6,0xA4,
|
||||
0xA6,0xC0,0xC0,0x60,0x20,0xAB,0xF8,0xF0,0x1C,0xA0,0x1B,0x20,0xE6,0xF1,0x20,0x4B,
|
||||
0xF9,0x20,0xAB,0xF8,0xD0,0xF8,0xA0,0x6A,0x4C,0xE6,0xF1,0xA9,0x40,0x2C,0x1F,0x91,
|
||||
0xD0,0x03,0x2C,0x1F,0x91,0x18,0x60,0x20,0xAB,0xF8,0xF0,0xF9,0xA0,0x2E,0xD0,0xDB,
|
||||
0xA9,0x00,0x85,0x90,0x85,0x93,0x20,0x54,0xF8,0x20,0x94,0xF8,0xB0,0x1F,0x78,0xA9,
|
||||
0x00,0x85,0xAA,0x85,0xB4,0x85,0xB0,0x85,0x9E,0x85,0x9F,0x85,0x9C,0xA9,0x82,0xA2,
|
||||
0x0E,0xD0,0x11,0x20,0x54,0xF8,0xA9,0x14,0x85,0xAB,0x20,0xB7,0xF8,0xB0,0x68,0x78,
|
||||
0xA9,0xA0,0xA2,0x08,0xA0,0x7F,0x8C,0x2E,0x91,0x8D,0x2E,0x91,0x20,0x60,0xF1,0xAD,
|
||||
0x14,0x03,0x8D,0x9F,0x02,0xAD,0x15,0x03,0x8D,0xA0,0x02,0x20,0xFB,0xFC,0xA9,0x02,
|
||||
0x85,0xBE,0x20,0xDB,0xFB,0xAD,0x1C,0x91,0x29,0xFD,0x09,0x0C,0x8D,0x1C,0x91,0x85,
|
||||
0xC0,0xA2,0xFF,0xA0,0xFF,0x88,0xD0,0xFD,0xCA,0xD0,0xF8,0x8D,0x29,0x91,0x58,0xAD,
|
||||
0xA0,0x02,0xCD,0x15,0x03,0x18,0xF0,0x1F,0x20,0x4B,0xF9,0xAD,0x2D,0x91,0x29,0x40,
|
||||
0xF0,0xED,0xAD,0x14,0x91,0x20,0x34,0xF7,0x4C,0x2F,0xF9,0x20,0xE1,0xFF,0x18,0xD0,
|
||||
0x0B,0x20,0xCF,0xFC,0x38,0x68,0x68,0xA9,0x00,0x8D,0xA0,0x02,0x60,0x86,0xB1,0xA5,
|
||||
0xB0,0x0A,0x0A,0x18,0x65,0xB0,0x18,0x65,0xB1,0x85,0xB1,0xA9,0x00,0x24,0xB0,0x30,
|
||||
0x01,0x2A,0x06,0xB1,0x2A,0x06,0xB1,0x2A,0xAA,0xAD,0x28,0x91,0xC9,0x15,0x90,0xF9,
|
||||
0x65,0xB1,0x8D,0x24,0x91,0x8A,0x6D,0x29,0x91,0x8D,0x25,0x91,0x58,0x60,0xAE,0x29,
|
||||
0x91,0xA0,0xFF,0x98,0xED,0x28,0x91,0xEC,0x29,0x91,0xD0,0xF2,0x86,0xB1,0xAA,0x8C,
|
||||
0x28,0x91,0x8C,0x29,0x91,0x98,0xE5,0xB1,0x86,0xB1,0x4A,0x66,0xB1,0x4A,0x66,0xB1,
|
||||
0xA5,0xB0,0x18,0x69,0x3C,0x2C,0x21,0x91,0xC5,0xB1,0xB0,0x4A,0xA6,0x9C,0xF0,0x03,
|
||||
0x4C,0xAD,0xFA,0xA6,0xA3,0x30,0x1B,0xA2,0x00,0x69,0x30,0x65,0xB0,0xC5,0xB1,0xB0,
|
||||
0x1C,0xE8,0x69,0x26,0x65,0xB0,0xC5,0xB1,0xB0,0x17,0x69,0x2C,0x65,0xB0,0xC5,0xB1,
|
||||
0x90,0x03,0x4C,0x60,0xFA,0xA5,0xB4,0xF0,0x1D,0x85,0xA8,0xD0,0x19,0xE6,0xA9,0xB0,
|
||||
0x02,0xC6,0xA9,0x38,0xE9,0x13,0xE5,0xB1,0x65,0x92,0x85,0x92,0xA5,0xA4,0x49,0x01,
|
||||
0x85,0xA4,0xF0,0x21,0x86,0xD7,0xA5,0xB4,0xF0,0x18,0x2C,0x2D,0x91,0x50,0x13,0xA9,
|
||||
0x00,0x85,0xA4,0xA5,0xA3,0x10,0x30,0x30,0xC9,0xA2,0xA6,0x20,0x5D,0xF9,0xA5,0x9B,
|
||||
0xD0,0xC3,0x4C,0x56,0xFF,0xA5,0x92,0xF0,0x07,0x30,0x03,0xC6,0xB0,0x2C,0xE6,0xB0,
|
||||
0xA9,0x00,0x85,0x92,0xE4,0xD7,0xD0,0x0F,0x8A,0xD0,0xAA,0xA5,0xA9,0x30,0xC7,0xC9,
|
||||
0x10,0x90,0xC3,0x85,0x96,0xB0,0xBF,0x8A,0x45,0x9B,0x85,0x9B,0xA5,0xB4,0xF0,0xD2,
|
||||
0xC6,0xA3,0x30,0xC5,0x46,0xD7,0x66,0xBF,0xA2,0xDA,0x20,0x5D,0xF9,0x4C,0x56,0xFF,
|
||||
0xA5,0x96,0xF0,0x04,0xA5,0xB4,0xF0,0x04,0xA5,0xA3,0x10,0x85,0x46,0xB1,0xA9,0x93,
|
||||
0x38,0xE5,0xB1,0x65,0xB0,0x0A,0xAA,0x20,0x5D,0xF9,0xE6,0x9C,0xA5,0xB4,0xD0,0x11,
|
||||
0xA5,0x96,0xF0,0x26,0x85,0xA8,0xA9,0x00,0x85,0x96,0xA9,0xC0,0x8D,0x2E,0x91,0x85,
|
||||
0xB4,0xA5,0x96,0x85,0xB5,0xF0,0x09,0xA9,0x00,0x85,0xB4,0xA9,0x40,0x8D,0x2E,0x91,
|
||||
0xA5,0xBF,0x85,0xBD,0xA5,0xA8,0x05,0xA9,0x85,0xB6,0x4C,0x56,0xFF,0x20,0xDB,0xFB,
|
||||
0x85,0x9C,0xA2,0xDA,0x20,0x5D,0xF9,0xA5,0xBE,0xF0,0x02,0x85,0xA7,0xA9,0x0F,0x24,
|
||||
0xAA,0x10,0x17,0xA5,0xB5,0xD0,0x0C,0xA6,0xBE,0xCA,0xD0,0x0B,0xA9,0x08,0x20,0x6A,
|
||||
0xFE,0xD0,0x04,0xA9,0x00,0x85,0xAA,0x4C,0x56,0xFF,0x70,0x31,0xD0,0x18,0xA5,0xB5,
|
||||
0xD0,0xF5,0xA5,0xB6,0xD0,0xF1,0xA5,0xA7,0x4A,0xA5,0xBD,0x30,0x03,0x90,0x18,0x18,
|
||||
0xB0,0x15,0x29,0x0F,0x85,0xAA,0xC6,0xAA,0xD0,0xDD,0xA9,0x40,0x85,0xAA,0x20,0xD2,
|
||||
0xFB,0xA9,0x00,0x85,0xAB,0xF0,0xD0,0xA9,0x80,0x85,0xAA,0xD0,0xCA,0xA5,0xB5,0xF0,
|
||||
0x0A,0xA9,0x04,0x20,0x6A,0xFE,0xA9,0x00,0x4C,0x97,0xFB,0x20,0x11,0xFD,0x90,0x03,
|
||||
0x4C,0x95,0xFB,0xA6,0xA7,0xCA,0xF0,0x2D,0xA5,0x93,0xF0,0x0C,0xA0,0x00,0xA5,0xBD,
|
||||
0xD1,0xAC,0xF0,0x04,0xA9,0x01,0x85,0xB6,0xA5,0xB6,0xF0,0x4B,0xA2,0x3D,0xE4,0x9E,
|
||||
0x90,0x3E,0xA6,0x9E,0xA5,0xAD,0x9D,0x01,0x01,0xA5,0xAC,0x9D,0x00,0x01,0xE8,0xE8,
|
||||
0x86,0x9E,0x4C,0x87,0xFB,0xA6,0x9F,0xE4,0x9E,0xF0,0x35,0xA5,0xAC,0xDD,0x00,0x01,
|
||||
0xD0,0x2E,0xA5,0xAD,0xDD,0x01,0x01,0xD0,0x27,0xE6,0x9F,0xE6,0x9F,0xA5,0x93,0xF0,
|
||||
0x0B,0xA5,0xBD,0xA0,0x00,0xD1,0xAC,0xF0,0x17,0xC8,0x84,0xB6,0xA5,0xB6,0xF0,0x07,
|
||||
0xA9,0x10,0x20,0x6A,0xFE,0xD0,0x09,0xA5,0x93,0xD0,0x05,0xA8,0xA5,0xBD,0x91,0xAC,
|
||||
0x20,0x1B,0xFD,0xD0,0x3A,0xA9,0x80,0x85,0xAA,0xA6,0xBE,0xCA,0x30,0x02,0x86,0xBE,
|
||||
0xC6,0xA7,0xF0,0x08,0xA5,0x9E,0xD0,0x27,0x85,0xBE,0xF0,0x23,0x20,0xCF,0xFC,0x20,
|
||||
0xD2,0xFB,0xA0,0x00,0x84,0xAB,0xB1,0xAC,0x45,0xAB,0x85,0xAB,0x20,0x1B,0xFD,0x20,
|
||||
0x11,0xFD,0x90,0xF2,0xA5,0xAB,0x45,0xBD,0xF0,0x05,0xA9,0x20,0x20,0x6A,0xFE,0x4C,
|
||||
0x56,0xFF,0xA5,0xC2,0x85,0xAD,0xA5,0xC1,0x85,0xAC,0x60,0xA9,0x08,0x85,0xA3,0xA9,
|
||||
0x00,0x85,0xA4,0x85,0xA8,0x85,0x9B,0x85,0xA9,0x60,0xA5,0xBD,0x4A,0xA9,0x60,0x90,
|
||||
0x02,0xA9,0xB0,0xA2,0x00,0x8D,0x28,0x91,0x8E,0x29,0x91,0xAD,0x20,0x91,0x49,0x08,
|
||||
0x8D,0x20,0x91,0x29,0x08,0x60,0x38,0x66,0xAD,0x30,0x3C,0xA5,0xA8,0xD0,0x12,0xA9,
|
||||
0x10,0xA2,0x01,0x20,0xF5,0xFB,0xD0,0x2F,0xE6,0xA8,0xA5,0xAD,0x10,0x29,0x4C,0x95,
|
||||
0xFC,0xA5,0xA9,0xD0,0x09,0x20,0xF1,0xFB,0xD0,0x1D,0xE6,0xA9,0xD0,0x19,0x20,0xEA,
|
||||
0xFB,0xD0,0x14,0xA5,0xA4,0x49,0x01,0x85,0xA4,0xF0,0x0F,0xA5,0xBD,0x49,0x01,0x85,
|
||||
0xBD,0x29,0x01,0x45,0x9B,0x85,0x9B,0x4C,0x56,0xFF,0x46,0xBD,0xC6,0xA3,0xA5,0xA3,
|
||||
0xF0,0x3A,0x10,0xF3,0x20,0xDB,0xFB,0x58,0xA5,0xA5,0xF0,0x12,0xA2,0x00,0x86,0xD7,
|
||||
0xC6,0xA5,0xA6,0xBE,0xE0,0x02,0xD0,0x02,0x09,0x80,0x85,0xBD,0xD0,0xD9,0x20,0x11,
|
||||
0xFD,0x90,0x0A,0xD0,0x91,0xE6,0xAD,0xA5,0xD7,0x85,0xBD,0xB0,0xCA,0xA0,0x00,0xB1,
|
||||
0xAC,0x85,0xBD,0x45,0xD7,0x85,0xD7,0x20,0x1B,0xFD,0xD0,0xBB,0xA5,0x9B,0x49,0x01,
|
||||
0x85,0xBD,0x4C,0x56,0xFF,0xC6,0xBE,0xD0,0x03,0x20,0x08,0xFD,0xA9,0x50,0x85,0xA7,
|
||||
0xA2,0x08,0x78,0x20,0xFB,0xFC,0xD0,0xEA,0xA9,0x78,0x20,0xF3,0xFB,0xD0,0xE3,0xC6,
|
||||
0xA7,0xD0,0xDF,0x20,0xDB,0xFB,0xC6,0xAB,0x10,0xD8,0xA2,0x0A,0x20,0xFB,0xFC,0x58,
|
||||
0xE6,0xAB,0xA5,0xBE,0xF0,0x30,0x20,0xD2,0xFB,0xA2,0x09,0x86,0xA5,0xD0,0x85,0x08,
|
||||
0x78,0x20,0x08,0xFD,0xA9,0x7F,0x8D,0x2E,0x91,0xA9,0xF7,0x8D,0x20,0x91,0xA9,0x40,
|
||||
0x8D,0x2B,0x91,0x20,0x39,0xFE,0xAD,0xA0,0x02,0xF0,0x09,0x8D,0x15,0x03,0xAD,0x9F,
|
||||
0x02,0x8D,0x14,0x03,0x28,0x60,0x20,0xCF,0xFC,0xF0,0x97,0xBD,0xE9,0xFD,0x8D,0x14,
|
||||
0x03,0xBD,0xEA,0xFD,0x8D,0x15,0x03,0x60,0xAD,0x1C,0x91,0x09,0x0E,0x8D,0x1C,0x91,
|
||||
0x60,0x38,0xA5,0xAC,0xE5,0xAE,0xA5,0xAD,0xE5,0xAF,0x60,0xE6,0xAC,0xD0,0x02,0xE6,
|
||||
0xAD,0x60,0xA2,0xFF,0x78,0x9A,0xD8,0x20,0x3F,0xFD,0xD0,0x03,0x6C,0x00,0xA0,0x20,
|
||||
0x8D,0xFD,0x20,0x52,0xFD,0x20,0xF9,0xFD,0x20,0x18,0xE5,0x58,0x6C,0x00,0xC0,0xA2,
|
||||
0x05,0xBD,0x4C,0xFD,0xDD,0x03,0xA0,0xD0,0x03,0xCA,0xD0,0xF5,0x60,0x41,0x30,0xC3,
|
||||
0xC2,0xCD,0xA2,0x6D,0xA0,0xFD,0x18,0x86,0xC3,0x84,0xC4,0xA0,0x1F,0xB9,0x14,0x03,
|
||||
0xB0,0x02,0xB1,0xC3,0x91,0xC3,0x99,0x14,0x03,0x88,0x10,0xF1,0x60,0xBF,0xEA,0xD2,
|
||||
0xFE,0xAD,0xFE,0x0A,0xF4,0x4A,0xF3,0xC7,0xF2,0x09,0xF3,0xF3,0xF3,0x0E,0xF2,0x7A,
|
||||
0xF2,0x70,0xF7,0xF5,0xF1,0xEF,0xF3,0xD2,0xFE,0x49,0xF5,0x85,0xF6,0xA9,0x00,0xAA,
|
||||
0x95,0x00,0x9D,0x00,0x02,0x9D,0x00,0x03,0xE8,0xD0,0xF5,0xA2,0x3C,0xA0,0x03,0x86,
|
||||
0xB2,0x84,0xB3,0x85,0xC1,0x85,0x97,0x8D,0x81,0x02,0xA8,0xA9,0x04,0x85,0xC2,0xE6,
|
||||
0xC1,0xD0,0x02,0xE6,0xC2,0x20,0x91,0xFE,0xA5,0x97,0xF0,0x22,0xB0,0xF1,0xA4,0xC2,
|
||||
0xA6,0xC1,0xC0,0x20,0x90,0x25,0xC0,0x21,0xB0,0x08,0xA0,0x1E,0x8C,0x88,0x02,0x4C,
|
||||
0x7B,0xFE,0xA9,0x12,0x8D,0x82,0x02,0xA9,0x10,0x8D,0x88,0x02,0xD0,0xF1,0x90,0xCF,
|
||||
0xA5,0xC2,0x8D,0x82,0x02,0x85,0x97,0xC9,0x11,0x90,0xC4,0x20,0xC3,0xE5,0x4C,0xEB,
|
||||
0xFD,0xA8,0xFC,0x0B,0xFC,0xBF,0xEA,0x8E,0xF9,0xA9,0x7F,0x8D,0x1E,0x91,0x8D,0x2E,
|
||||
0x91,0xA9,0x40,0x8D,0x2B,0x91,0xA9,0x40,0x8D,0x1B,0x91,0xA9,0xFE,0x8D,0x1C,0x91,
|
||||
0xA9,0xDE,0x8D,0x2C,0x91,0xA2,0x00,0x8E,0x12,0x91,0xA2,0xFF,0x8E,0x22,0x91,0xA2,
|
||||
0x00,0x8E,0x23,0x91,0xA2,0x80,0x8E,0x13,0x91,0xA2,0x00,0x8E,0x1F,0x91,0x20,0x84,
|
||||
0xEF,0xA9,0x82,0x8D,0x1E,0x91,0x20,0x8D,0xEF,0xA9,0xC0,0x8D,0x2E,0x91,0xA9,0x89,
|
||||
0x8D,0x24,0x91,0xA9,0x42,0x8D,0x25,0x91,0x60,0x85,0xB7,0x86,0xBB,0x84,0xBC,0x60,
|
||||
0x85,0xB8,0x86,0xBA,0x84,0xB9,0x60,0xA5,0xBA,0xC9,0x02,0xD0,0x0B,0xAD,0x97,0x02,
|
||||
0xA9,0x00,0x8D,0x97,0x02,0x60,0x85,0x9D,0xA5,0x90,0x05,0x90,0x85,0x90,0x60,0x8D,
|
||||
0x85,0x02,0x60,0x90,0x06,0xAE,0x83,0x02,0xAC,0x84,0x02,0x8E,0x83,0x02,0x8C,0x84,
|
||||
0x02,0x60,0x90,0x06,0xAE,0x81,0x02,0xAC,0x82,0x02,0x8E,0x81,0x02,0x8C,0x82,0x02,
|
||||
0x60,0xB1,0xC1,0xAA,0xA9,0x55,0x91,0xC1,0xD1,0xC1,0xD0,0x08,0x6A,0x91,0xC1,0xD1,
|
||||
0xC1,0xD0,0x01,0xA9,0x18,0x8A,0x91,0xC1,0x60,0x78,0x6C,0x18,0x03,0x48,0x8A,0x48,
|
||||
0x98,0x48,0xAD,0x1D,0x91,0x10,0x48,0x2D,0x1E,0x91,0xAA,0x29,0x02,0xF0,0x1F,0x20,
|
||||
0x3F,0xFD,0xD0,0x03,0x6C,0x02,0xA0,0x2C,0x11,0x91,0x20,0x34,0xF7,0x20,0xE1,0xFF,
|
||||
0xD0,0x2D,0x20,0x52,0xFD,0x20,0xF9,0xFD,0x20,0x18,0xE5,0x6C,0x02,0xC0,0xAD,0x1E,
|
||||
0x91,0x09,0x80,0x48,0xA9,0x7F,0x8D,0x1E,0x91,0x8A,0x29,0x40,0xF0,0x14,0xA9,0xCE,
|
||||
0x05,0xB5,0x8D,0x1C,0x91,0xAD,0x14,0x91,0x68,0x8D,0x1E,0x91,0x20,0xA3,0xEF,0x4C,
|
||||
0x56,0xFF,0x8A,0x29,0x20,0xF0,0x25,0xAD,0x10,0x91,0x29,0x01,0x85,0xA7,0xAD,0x18,
|
||||
0x91,0xE9,0x16,0x6D,0x99,0x02,0x8D,0x18,0x91,0xAD,0x19,0x91,0x6D,0x9A,0x02,0x8D,
|
||||
0x19,0x91,0x68,0x8D,0x1E,0x91,0x20,0x36,0xF0,0x4C,0x56,0xFF,0x8A,0x29,0x10,0xF0,
|
||||
0x25,0xAD,0x93,0x02,0x29,0x0F,0xD0,0x00,0x0A,0xAA,0xBD,0x5A,0xFF,0x8D,0x18,0x91,
|
||||
0xBD,0x5B,0xFF,0x8D,0x19,0x91,0xAD,0x10,0x91,0x68,0x09,0x20,0x29,0xEF,0x8D,0x1E,
|
||||
0x91,0xAE,0x98,0x02,0x86,0xA8,0x68,0xA8,0x68,0xAA,0x68,0x40,0x92,0x27,0x40,0x1A,
|
||||
0xC6,0x11,0x74,0x0E,0xEE,0x0C,0x45,0x06,0xF1,0x02,0x46,0x01,0xB8,0x00,0x71,0x00,
|
||||
0x2A,0x00,0x48,0x8A,0x48,0x98,0x48,0xBA,0xBD,0x04,0x01,0x29,0x10,0xF0,0x03,0x6C,
|
||||
0x16,0x03,0x6C,0x14,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0x4C,0x52,0xFD,0x4C,0x57,0xFD,
|
||||
0x4C,0x66,0xFE,0x4C,0xC0,0xEE,0x4C,0xCE,0xEE,0x4C,0x73,0xFE,0x4C,0x82,0xFE,0x4C,
|
||||
0x1E,0xEB,0x4C,0x6F,0xFE,0x4C,0x19,0xEF,0x4C,0xE4,0xEE,0x4C,0xF6,0xEE,0x4C,0x04,
|
||||
0xEF,0x4C,0x17,0xEE,0x4C,0x14,0xEE,0x4C,0x57,0xFE,0x4C,0x50,0xFE,0x4C,0x49,0xFE,
|
||||
0x6C,0x1A,0x03,0x6C,0x1C,0x03,0x6C,0x1E,0x03,0x6C,0x20,0x03,0x6C,0x22,0x03,0x6C,
|
||||
0x24,0x03,0x6C,0x26,0x03,0x4C,0x42,0xF5,0x4C,0x75,0xF6,0x4C,0x67,0xF7,0x4C,0x60,
|
||||
0xF7,0x6C,0x28,0x03,0x6C,0x2A,0x03,0x6C,0x2C,0x03,0x4C,0x34,0xF7,0x4C,0x05,0xE5,
|
||||
0x4C,0x0A,0xE5,0x4C,0x00,0xE5,0xFF,0xFF,0xFF,0xFF,0xA9,0xFE,0x22,0xFD,0x72,0xFF,
|
||||
};
|
|
@ -0,0 +1,514 @@
|
|||
const unsigned char kernalrom[8192] = {
|
||||
0x0F,0xDC,0xA5,0x61,0xC9,0x88,0x90,0x03,0x20,0xD4,0xDA,0x20,0xCC,0xDC,0xA5,0x07,
|
||||
0x18,0x69,0x81,0xF0,0xF3,0x38,0xE9,0x01,0x48,0xA2,0x05,0xB5,0x69,0xB4,0x61,0x95,
|
||||
0x61,0x94,0x69,0xCA,0x10,0xF5,0xA5,0x56,0x85,0x70,0x20,0x53,0xD8,0x20,0xB4,0xDF,
|
||||
0xA9,0xC4,0xA0,0xDF,0x20,0x56,0xE0,0xA9,0x00,0x85,0x6F,0x68,0x20,0xB9,0xDA,0x60,
|
||||
0x85,0x71,0x84,0x72,0x20,0xCA,0xDB,0xA9,0x57,0x20,0x28,0xDA,0x20,0x5A,0xE0,0xA9,
|
||||
0x57,0xA0,0x00,0x4C,0x28,0xDA,0x85,0x71,0x84,0x72,0x20,0xC7,0xDB,0xB1,0x71,0x85,
|
||||
0x67,0xA4,0x71,0xC8,0x98,0xD0,0x02,0xE6,0x72,0x85,0x71,0xA4,0x72,0x20,0x28,0xDA,
|
||||
0xA5,0x71,0xA4,0x72,0x18,0x69,0x05,0x90,0x01,0xC8,0x85,0x71,0x84,0x72,0x20,0x67,
|
||||
0xD8,0xA9,0x5C,0xA0,0x00,0xC6,0x67,0xD0,0xE4,0x60,0x98,0x35,0x44,0x7A,0x00,0x68,
|
||||
0x28,0xB1,0x46,0x00,0x20,0x2B,0xDC,0x30,0x37,0xD0,0x20,0x20,0xF3,0xFF,0x86,0x22,
|
||||
0x84,0x23,0xA0,0x04,0xB1,0x22,0x85,0x62,0xC8,0xB1,0x22,0x85,0x64,0xA0,0x08,0xB1,
|
||||
0x22,0x85,0x63,0xC8,0xB1,0x22,0x85,0x65,0x4C,0xE0,0xE0,0xA9,0x8B,0xA0,0x00,0x20,
|
||||
0xA2,0xDB,0xA9,0x8A,0xA0,0xE0,0x20,0x28,0xDA,0xA9,0x8F,0xA0,0xE0,0x20,0x67,0xD8,
|
||||
0xA6,0x65,0xA5,0x62,0x85,0x65,0x86,0x62,0xA6,0x63,0xA5,0x64,0x85,0x63,0x86,0x64,
|
||||
0xA9,0x00,0x85,0x66,0xA5,0x61,0x85,0x70,0xA9,0x80,0x85,0x61,0x20,0xD7,0xD8,0xA2,
|
||||
0x8B,0xA0,0x00,0x4C,0xD4,0xDB,0xC9,0xF0,0xD0,0x07,0x84,0x38,0x86,0x37,0x4C,0x63,
|
||||
0xC6,0xAA,0xD0,0x02,0xA2,0x1E,0x4C,0x37,0xC4,0x20,0xD2,0xFF,0xB0,0xE8,0x60,0x20,
|
||||
0xCF,0xFF,0xB0,0xE2,0x60,0x20,0xC9,0xFF,0xB0,0xDC,0x60,0x20,0xC6,0xFF,0xB0,0xD6,
|
||||
0x60,0x20,0xE4,0xFF,0xB0,0xD0,0x60,0x20,0x8A,0xCD,0x20,0xF7,0xD7,0xA9,0xE1,0x48,
|
||||
0xA9,0x43,0x48,0xAD,0x0F,0x03,0x48,0xAD,0x0C,0x03,0xAE,0x0D,0x03,0xAC,0x0E,0x03,
|
||||
0x28,0x6C,0x14,0x00,0x08,0x8D,0x0C,0x03,0x8E,0x0D,0x03,0x8C,0x0E,0x03,0x68,0x8D,
|
||||
0x0F,0x03,0x60,0x20,0xD1,0xE1,0xA6,0x2D,0xA4,0x2E,0xA9,0x2B,0x20,0xD8,0xFF,0xB0,
|
||||
0x95,0x60,0xA9,0x01,0x2C,0xA9,0x00,0x85,0x0A,0x20,0xD1,0xE1,0xA5,0x0A,0xA6,0x2B,
|
||||
0xA4,0x2C,0x20,0xD5,0xFF,0xB0,0x57,0xA5,0x0A,0xF0,0x1A,0xA2,0x1C,0x20,0xB7,0xFF,
|
||||
0x29,0x10,0xF0,0x03,0x4C,0x37,0xC4,0xA5,0x7A,0xC9,0x02,0xF0,0x07,0xA9,0x64,0xA0,
|
||||
0xC3,0x4C,0x1E,0xCB,0x60,0x20,0xB7,0xFF,0x29,0xBF,0xF0,0x05,0xA2,0x1D,0x4C,0x37,
|
||||
0xC4,0xA5,0x7B,0xC9,0x02,0xD0,0x0E,0x86,0x2D,0x84,0x2E,0xA9,0x76,0xA0,0xC3,0x20,
|
||||
0x1E,0xCB,0x4C,0x2A,0xC5,0x20,0x8E,0xC6,0x4C,0x76,0xE4,0x20,0x16,0xE2,0x20,0xC0,
|
||||
0xFF,0xB0,0x0B,0x60,0x20,0x16,0xE2,0xA5,0x49,0x20,0xC3,0xFF,0x90,0xC6,0x4C,0xF6,
|
||||
0xE0,0xA9,0x00,0x20,0xBD,0xFF,0xA2,0x01,0xA0,0x00,0x20,0xBA,0xFF,0x20,0x03,0xE2,
|
||||
0x20,0x54,0xE2,0x20,0x03,0xE2,0x20,0xFD,0xE1,0xA0,0x00,0x86,0x49,0x20,0xBA,0xFF,
|
||||
0x20,0x03,0xE2,0x20,0xFD,0xE1,0x8A,0xA8,0xA6,0x49,0x4C,0xBA,0xFF,0x20,0x0B,0xE2,
|
||||
0x4C,0x9E,0xD7,0x20,0x79,0x00,0xD0,0x02,0x68,0x68,0x60,0x20,0xFD,0xCE,0x20,0x79,
|
||||
0x00,0xD0,0xF7,0x4C,0x08,0xCF,0xA9,0x00,0x20,0xBD,0xFF,0x20,0x0E,0xE2,0x20,0x9E,
|
||||
0xD7,0x86,0x49,0x8A,0xA2,0x01,0xA0,0x00,0x20,0xBA,0xFF,0x20,0x03,0xE2,0x20,0xFD,
|
||||
0xE1,0x86,0x4A,0xA0,0x00,0xA5,0x49,0xE0,0x03,0x90,0x01,0x88,0x20,0xBA,0xFF,0x20,
|
||||
0x03,0xE2,0x20,0xFD,0xE1,0x8A,0xA8,0xA6,0x4A,0xA5,0x49,0x20,0xBA,0xFF,0x20,0x03,
|
||||
0xE2,0x20,0x0B,0xE2,0x20,0x9E,0xCD,0x20,0xA3,0xD6,0xA6,0x22,0xA4,0x23,0x4C,0xBD,
|
||||
0xFF,0xA9,0xDD,0xA0,0xE2,0x20,0x67,0xD8,0x20,0x0C,0xDC,0xA9,0xE2,0xA0,0xE2,0xA6,
|
||||
0x6E,0x20,0x07,0xDB,0x20,0x0C,0xDC,0x20,0xCC,0xDC,0xA9,0x00,0x85,0x6F,0x20,0x53,
|
||||
0xD8,0xA9,0xE7,0xA0,0xE2,0x20,0x50,0xD8,0xA5,0x66,0x48,0x10,0x0D,0x20,0x49,0xD8,
|
||||
0xA5,0x66,0x30,0x09,0xA5,0x12,0x49,0xFF,0x85,0x12,0x20,0xB4,0xDF,0xA9,0xE7,0xA0,
|
||||
0xE2,0x20,0x67,0xD8,0x68,0x10,0x03,0x20,0xB4,0xDF,0xA9,0xEC,0xA0,0xE2,0x4C,0x40,
|
||||
0xE0,0x20,0xCA,0xDB,0xA9,0x00,0x85,0x12,0x20,0x68,0xE2,0xA2,0x4E,0xA0,0x00,0x20,
|
||||
0xF3,0xE0,0xA9,0x57,0xA0,0x00,0x20,0xA2,0xDB,0xA9,0x00,0x85,0x66,0xA5,0x12,0x20,
|
||||
0xD9,0xE2,0xA9,0x4E,0xA0,0x00,0x4C,0x0F,0xDB,0x48,0x4C,0x9A,0xE2,0x81,0x49,0x0F,
|
||||
0xDA,0xA2,0x83,0x49,0x0F,0xDA,0xA2,0x7F,0x00,0x00,0x00,0x00,0x05,0x84,0xE6,0x1A,
|
||||
0x2D,0x1B,0x86,0x28,0x07,0xFB,0xF8,0x87,0x99,0x68,0x89,0x01,0x87,0x23,0x35,0xDF,
|
||||
0xE1,0x86,0xA5,0x5D,0xE7,0x28,0x83,0x49,0x0F,0xDA,0xA2,0xA5,0x66,0x48,0x10,0x03,
|
||||
0x20,0xB4,0xDF,0xA5,0x61,0x48,0xC9,0x81,0x90,0x07,0xA9,0xBC,0xA0,0xD9,0x20,0x0F,
|
||||
0xDB,0xA9,0x3B,0xA0,0xE3,0x20,0x40,0xE0,0x68,0xC9,0x81,0x90,0x07,0xA9,0xDD,0xA0,
|
||||
0xE2,0x20,0x50,0xD8,0x68,0x10,0x03,0x4C,0xB4,0xDF,0x60,0x0B,0x76,0xB3,0x83,0xBD,
|
||||
0xD3,0x79,0x1E,0xF4,0xA6,0xF5,0x7B,0x83,0xFC,0xB0,0x10,0x7C,0x0C,0x1F,0x67,0xCA,
|
||||
0x7C,0xDE,0x53,0xCB,0xC1,0x7D,0x14,0x64,0x70,0x4C,0x7D,0xB7,0xEA,0x51,0x7A,0x7D,
|
||||
0x63,0x30,0x88,0x7E,0x7E,0x92,0x44,0x99,0x3A,0x7E,0x4C,0xCC,0x91,0xC7,0x7F,0xAA,
|
||||
0xAA,0xAA,0x13,0x81,0x00,0x00,0x00,0x00,0x20,0x5B,0xE4,0x20,0xA4,0xE3,0x20,0x04,
|
||||
0xE4,0xA2,0xFB,0x9A,0x4C,0x74,0xC4,0xE6,0x7A,0xD0,0x02,0xE6,0x7B,0xAD,0x60,0xEA,
|
||||
0xC9,0x3A,0xB0,0x0A,0xC9,0x20,0xF0,0xEF,0x38,0xE9,0x30,0x38,0xE9,0xD0,0x60,0x80,
|
||||
0x4F,0xC7,0x52,0x58,0xA9,0x4C,0x85,0x54,0x85,0x00,0xA9,0x48,0xA0,0xD2,0x85,0x01,
|
||||
0x84,0x02,0xA9,0x91,0xA0,0xD3,0x85,0x05,0x84,0x06,0xA9,0xAA,0xA0,0xD1,0x85,0x03,
|
||||
0x84,0x04,0xA2,0x1C,0xBD,0x87,0xE3,0x95,0x73,0xCA,0x10,0xF8,0xA9,0x03,0x85,0x53,
|
||||
0xA9,0x00,0x85,0x68,0x85,0x13,0x85,0x18,0xA2,0x01,0x8E,0xFD,0x01,0x8E,0xFC,0x01,
|
||||
0xA2,0x19,0x86,0x16,0x38,0x20,0x9C,0xFF,0x86,0x2B,0x84,0x2C,0x38,0x20,0x99,0xFF,
|
||||
0x86,0x37,0x84,0x38,0x86,0x33,0x84,0x34,0xA0,0x00,0x98,0x91,0x2B,0xE6,0x2B,0xD0,
|
||||
0x02,0xE6,0x2C,0x60,0xA5,0x2B,0xA4,0x2C,0x20,0x08,0xC4,0xA9,0x36,0xA0,0xE4,0x20,
|
||||
0x1E,0xCB,0xA5,0x37,0x38,0xE5,0x2B,0xAA,0xA5,0x38,0xE5,0x2C,0x20,0xCD,0xDD,0xA9,
|
||||
0x29,0xA0,0xE4,0x20,0x1E,0xCB,0x4C,0x44,0xC6,0x20,0x42,0x59,0x54,0x45,0x53,0x20,
|
||||
0x46,0x52,0x45,0x45,0x0D,0x00,0x93,0x2A,0x2A,0x2A,0x2A,0x20,0x43,0x42,0x4D,0x20,
|
||||
0x42,0x41,0x53,0x49,0x43,0x20,0x56,0x32,0x20,0x2A,0x2A,0x2A,0x2A,0x0D,0x00,0x3A,
|
||||
0xC4,0x83,0xC4,0x7C,0xC5,0x1A,0xC7,0xE4,0xC7,0x86,0xCE,0xA2,0x0B,0xBD,0x4F,0xE4,
|
||||
0x9D,0x00,0x03,0xCA,0x10,0xF7,0x60,0x20,0xCC,0xFF,0xA9,0x00,0x85,0x13,0x20,0x7A,
|
||||
0xC6,0x58,0x4C,0x74,0xC4,0xE8,0x20,0x33,0xC5,0x4C,0x77,0xC6,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xAD,0x2C,0x91,0x29,0xDF,0x8D,0x2C,0x91,0x60,0xAD,0x2C,0x91,0x09,0x20,0x8D,0x2C,
|
||||
0x91,0x60,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0x60,0xA6,0xB9,0x4C,0x47,
|
||||
0xF6,0x8A,0xD0,0x08,0xA5,0xC3,0x85,0xAE,0xA5,0xC4,0x85,0xAF,0x4C,0x6A,0xF6,0x20,
|
||||
0xE3,0xF8,0x90,0x03,0x68,0xA9,0x00,0x4C,0x9E,0xF3,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xA2,0x10,0xA0,0x91,0x60,0xA2,0x16,0xA0,0x17,0x60,0xB0,0x07,0x86,0xD6,0x84,0xD3,
|
||||
0x20,0x87,0xE5,0xA6,0xD6,0xA4,0xD3,0x60,0x20,0xBB,0xE5,0xAD,0x88,0x02,0x29,0xFD,
|
||||
0x0A,0x0A,0x09,0x80,0x8D,0x05,0x90,0xAD,0x88,0x02,0x29,0x02,0xF0,0x08,0xA9,0x80,
|
||||
0x0D,0x02,0x90,0x8D,0x02,0x90,0xA9,0x00,0x8D,0x91,0x02,0x85,0xCF,0xA9,0xDC,0x8D,
|
||||
0x8F,0x02,0xA9,0xEB,0x8D,0x90,0x02,0xA9,0x0A,0x8D,0x89,0x02,0x8D,0x8C,0x02,0xA9,
|
||||
0x06,0x8D,0x86,0x02,0xA9,0x04,0x8D,0x8B,0x02,0xA9,0x0C,0x85,0xCD,0x85,0xCC,0xAD,
|
||||
0x88,0x02,0x09,0x80,0xA8,0xA9,0x00,0xAA,0x94,0xD9,0x18,0x69,0x16,0x90,0x01,0xC8,
|
||||
0xE8,0xE0,0x18,0xD0,0xF3,0xA9,0xFF,0x95,0xD9,0xA2,0x16,0x20,0x8D,0xEA,0xCA,0x10,
|
||||
0xFA,0xA0,0x00,0x84,0xD3,0x84,0xD6,0xA6,0xD6,0xA5,0xD3,0xB4,0xD9,0x30,0x08,0x18,
|
||||
0x69,0x16,0x85,0xD3,0xCA,0x10,0xF4,0xB5,0xD9,0x29,0x03,0x0D,0x88,0x02,0x85,0xD2,
|
||||
0xBD,0xFD,0xED,0x85,0xD1,0xA9,0x15,0xE8,0xB4,0xD9,0x30,0x06,0x18,0x69,0x16,0xE8,
|
||||
0x10,0xF6,0x85,0xD5,0x60,0x20,0xBB,0xE5,0x4C,0x81,0xE5,0xA9,0x03,0x85,0x9A,0xA9,
|
||||
0x00,0x85,0x99,0xA2,0x10,0xBD,0xE3,0xED,0x9D,0xFF,0x8F,0xCA,0xD0,0xF7,0x60,0xAC,
|
||||
0x77,0x02,0xA2,0x00,0xBD,0x78,0x02,0x9D,0x77,0x02,0xE8,0xE4,0xC6,0xD0,0xF5,0xC6,
|
||||
0xC6,0x98,0x58,0x18,0x60,0x20,0x42,0xE7,0xA5,0xC6,0x85,0xCC,0x8D,0x92,0x02,0xF0,
|
||||
0xF7,0x78,0xA5,0xCF,0xF0,0x0C,0xA5,0xCE,0xAE,0x87,0x02,0xA0,0x00,0x84,0xCF,0x20,
|
||||
0xA1,0xEA,0x20,0xCF,0xE5,0xC9,0x83,0xD0,0x10,0xA2,0x09,0x78,0x86,0xC6,0xBD,0xF3,
|
||||
0xED,0x9D,0x76,0x02,0xCA,0xD0,0xF7,0xF0,0xCF,0xC9,0x0D,0xD0,0xC8,0xA4,0xD5,0x84,
|
||||
0xD0,0xB1,0xD1,0xC9,0x20,0xD0,0x03,0x88,0xD0,0xF7,0xC8,0x84,0xC8,0xA0,0x00,0x8C,
|
||||
0x92,0x02,0x84,0xD3,0x84,0xD4,0xA5,0xC9,0x30,0x1D,0xA6,0xD6,0x20,0x19,0xE7,0xE4,
|
||||
0xC9,0xD0,0x14,0xD0,0x12,0xA5,0xCA,0x85,0xD3,0xC5,0xC8,0x90,0x0A,0xB0,0x42,0x98,
|
||||
0x48,0x8A,0x48,0xA5,0xD0,0xF0,0x91,0xA4,0xD3,0xB1,0xD1,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0x85,0xD7,0x29,0x3F,0x06,0xD7,0x24,0xD7,0x10,0x02,0x09,0x80,0x90,0x04,
|
||||
0xA6,0xD4,0xD0,0x04,0x70,0x02,0x09,0x40,0xE6,0xD3,0x20,0xB8,0xE6,0xC4,0xC8,0xD0,
|
||||
0x17,0xA9,0x00,0x85,0xD0,0xA9,0x0D,0xA6,0x99,0xE0,0x03,0xF0,0x06,0xA6,0x9A,0xE0,
|
||||
0x03,0xF0,0x03,0x20,0x42,0xE7,0xA9,0x0D,0x85,0xD7,0x68,0xAA,0x68,0xA8,0xA5,0xD7,
|
||||
0xC9,0xDE,0xD0,0x02,0xA9,0xFF,0x18,0x60,0xC9,0x22,0xD0,0x08,0xA5,0xD4,0x49,0x01,
|
||||
0x85,0xD4,0xA9,0x22,0x60,0x09,0x40,0xA6,0xC7,0xF0,0x02,0x09,0x80,0xA6,0xD8,0xF0,
|
||||
0x02,0xC6,0xD8,0xAE,0x86,0x02,0x20,0xA1,0xEA,0x20,0xEA,0xE6,0x68,0xA8,0xA5,0xD8,
|
||||
0xF0,0x02,0x46,0xD4,0x68,0xAA,0x68,0x18,0x58,0x60,0x20,0xFA,0xE8,0xE6,0xD3,0xA5,
|
||||
0xD5,0xC5,0xD3,0xB0,0x37,0xC9,0x57,0xF0,0x2A,0xAD,0x92,0x02,0xF0,0x03,0x4C,0xF0,
|
||||
0xE9,0xA6,0xD6,0xE0,0x17,0x90,0x07,0x20,0x75,0xE9,0xC6,0xD6,0xA6,0xD6,0x16,0xD9,
|
||||
0x56,0xD9,0x4C,0x5B,0xED,0x69,0x16,0x85,0xD5,0xB5,0xD9,0x30,0x03,0xCA,0xD0,0xF9,
|
||||
0x4C,0x7E,0xEA,0xC6,0xD6,0x20,0xC3,0xE8,0xA9,0x00,0x85,0xD3,0x60,0xA6,0xD6,0xD0,
|
||||
0x06,0x86,0xD3,0x68,0x68,0xD0,0xA5,0xCA,0x86,0xD6,0x20,0x87,0xE5,0xA4,0xD5,0x84,
|
||||
0xD3,0x60,0x48,0x85,0xD7,0x8A,0x48,0x98,0x48,0xA9,0x00,0x85,0xD0,0xA4,0xD3,0xA5,
|
||||
0xD7,0x10,0x03,0x4C,0x00,0xE8,0xC9,0x0D,0xD0,0x03,0x4C,0xD8,0xE8,0xC9,0x20,0x90,
|
||||
0x10,0xC9,0x60,0x90,0x04,0x29,0xDF,0xD0,0x02,0x29,0x3F,0x20,0xB8,0xE6,0x4C,0xC7,
|
||||
0xE6,0xA6,0xD8,0xF0,0x03,0x4C,0xCB,0xE6,0xC9,0x14,0xD0,0x2E,0x98,0xD0,0x06,0x20,
|
||||
0x2D,0xE7,0x4C,0x9F,0xE7,0x20,0xE8,0xE8,0x88,0x84,0xD3,0x20,0xB2,0xEA,0xC8,0xB1,
|
||||
0xD1,0x88,0x91,0xD1,0xC8,0xB1,0xF3,0x88,0x91,0xF3,0xC8,0xC4,0xD5,0xD0,0xEF,0xA9,
|
||||
0x20,0x91,0xD1,0xAD,0x86,0x02,0x91,0xF3,0x10,0x4D,0xA6,0xD4,0xF0,0x03,0x4C,0xCB,
|
||||
0xE6,0xC9,0x12,0xD0,0x02,0x85,0xC7,0xC9,0x13,0xD0,0x03,0x20,0x81,0xE5,0xC9,0x1D,
|
||||
0xD0,0x17,0xC8,0x20,0xFA,0xE8,0x84,0xD3,0x88,0xC4,0xD5,0x90,0x09,0xC6,0xD6,0x20,
|
||||
0xC3,0xE8,0xA0,0x00,0x84,0xD3,0x4C,0xDC,0xE6,0xC9,0x11,0xD0,0x1D,0x18,0x98,0x69,
|
||||
0x16,0xA8,0xE6,0xD6,0xC5,0xD5,0x90,0xEC,0xF0,0xEA,0xC6,0xD6,0xE9,0x16,0x90,0x04,
|
||||
0x85,0xD3,0xD0,0xF8,0x20,0xC3,0xE8,0x4C,0xDC,0xE6,0x20,0x12,0xE9,0x4C,0x21,0xED,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0x29,0x7F,0xC9,0x7F,0xD0,0x02,0xA9,0x5E,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xC9,0x20,0x90,0x03,0x4C,0xC5,0xE6,0xC9,0x0D,0xD0,0x03,0x4C,0xD8,
|
||||
0xE8,0xA6,0xD4,0xD0,0x3F,0xC9,0x14,0xD0,0x37,0xA4,0xD5,0xB1,0xD1,0xC9,0x20,0xD0,
|
||||
0x04,0xC4,0xD3,0xD0,0x07,0xC0,0x57,0xF0,0x24,0x20,0xEE,0xE9,0xA4,0xD5,0x20,0xB2,
|
||||
0xEA,0x88,0xB1,0xD1,0xC8,0x91,0xD1,0x88,0xB1,0xF3,0xC8,0x91,0xF3,0x88,0xC4,0xD3,
|
||||
0xD0,0xEF,0xA9,0x20,0x91,0xD1,0xAD,0x86,0x02,0x91,0xF3,0xE6,0xD8,0x4C,0xDC,0xE6,
|
||||
0xA6,0xD8,0xF0,0x05,0x09,0x40,0x4C,0xCB,0xE6,0xC9,0x11,0xD0,0x16,0xA6,0xD6,0xF0,
|
||||
0x37,0xC6,0xD6,0xA5,0xD3,0x38,0xE9,0x16,0x90,0x04,0x85,0xD3,0x10,0x2A,0x20,0x87,
|
||||
0xE5,0xD0,0x25,0xC9,0x12,0xD0,0x04,0xA9,0x00,0x85,0xC7,0xC9,0x1D,0xD0,0x12,0x98,
|
||||
0xF0,0x09,0x20,0xE8,0xE8,0x88,0x84,0xD3,0x4C,0xDC,0xE6,0x20,0x2D,0xE7,0x4C,0xDC,
|
||||
0xE6,0xC9,0x13,0xD0,0x06,0x20,0x5F,0xE5,0x4C,0xDC,0xE6,0x09,0x80,0x20,0x12,0xE9,
|
||||
0x4C,0x30,0xED,0x46,0xC9,0xA6,0xD6,0xE8,0xE0,0x17,0xD0,0x03,0x20,0x75,0xE9,0xB5,
|
||||
0xD9,0x10,0xF4,0x86,0xD6,0x4C,0x87,0xE5,0xA2,0x00,0x86,0xD8,0x86,0xC7,0x86,0xD4,
|
||||
0x86,0xD3,0x20,0xC3,0xE8,0x4C,0xDC,0xE6,0xA2,0x04,0xA9,0x00,0xC5,0xD3,0xF0,0x07,
|
||||
0x18,0x69,0x16,0xCA,0xD0,0xF6,0x60,0xC6,0xD6,0x60,0xA2,0x04,0xA9,0x15,0xC5,0xD3,
|
||||
0xF0,0x07,0x18,0x69,0x16,0xCA,0xD0,0xF6,0x60,0xA6,0xD6,0xE0,0x17,0xF0,0x02,0xE6,
|
||||
0xD6,0x60,0xA2,0x07,0xDD,0x21,0xE9,0xF0,0x04,0xCA,0x10,0xF8,0x60,0x8E,0x86,0x02,
|
||||
0x60,0x90,0x05,0x1C,0x9F,0x9C,0x1E,0x1F,0x9E,0xEF,0xA1,0xDF,0xA6,0xE1,0xB1,0xE2,
|
||||
0xB2,0xE3,0xB3,0xE4,0xB4,0xE5,0xB5,0xE6,0xB6,0xE7,0xB7,0xE8,0xB8,0xE9,0xB9,0xFA,
|
||||
0xBA,0xFB,0xBB,0xFC,0xBC,0xEC,0xBD,0xFE,0xBE,0x84,0xBF,0xF7,0xC0,0xF8,0xDB,0xF9,
|
||||
0xDD,0xEA,0xDE,0x5E,0xE0,0x5B,0xE1,0x5D,0xE2,0x40,0xB0,0x61,0xB1,0x78,0xDB,0x79,
|
||||
0xDD,0x66,0xB6,0x77,0xC0,0x70,0xF0,0x71,0xF1,0x72,0xF2,0x73,0xF3,0x74,0xF4,0x75,
|
||||
0xF5,0x76,0xF6,0x7D,0xFD,0xA5,0xAC,0x48,0xA5,0xAD,0x48,0xA5,0xAE,0x48,0xA5,0xAF,
|
||||
0x48,0xA2,0xFF,0xC6,0xD6,0xC6,0xC9,0xC6,0xF2,0xE8,0x20,0x7E,0xEA,0xE0,0x16,0xB0,
|
||||
0x0C,0xBD,0xFE,0xED,0x85,0xAC,0xB5,0xDA,0x20,0x56,0xEA,0x30,0xEC,0x20,0x8D,0xEA,
|
||||
0xA2,0x00,0xB5,0xD9,0x29,0x7F,0xB4,0xDA,0x10,0x02,0x09,0x80,0x95,0xD9,0xE8,0xE0,
|
||||
0x16,0xD0,0xEF,0xA5,0xEF,0x09,0x80,0x85,0xEF,0xA5,0xD9,0x10,0xC4,0xE6,0xD6,0xE6,
|
||||
0xF2,0xA9,0xFB,0x8D,0x20,0x91,0xAD,0x21,0x91,0xC9,0xFE,0x08,0xA9,0xF7,0x8D,0x20,
|
||||
0x91,0x28,0xD0,0x0B,0xA0,0x00,0xEA,0xCA,0xD0,0xFC,0x88,0xD0,0xF9,0x84,0xC6,0xA6,
|
||||
0xD6,0x68,0x85,0xAF,0x68,0x85,0xAE,0x68,0x85,0xAD,0x68,0x85,0xAC,0x60,0xA6,0xD6,
|
||||
0xE8,0xB5,0xD9,0x10,0xFB,0x86,0xF2,0xE0,0x16,0xF0,0x0D,0x90,0x0B,0x20,0x75,0xE9,
|
||||
0xA6,0xF2,0xCA,0xC6,0xD6,0x4C,0x0E,0xE7,0xA5,0xAC,0x48,0xA5,0xAD,0x48,0xA5,0xAE,
|
||||
0x48,0xA5,0xAF,0x48,0xA2,0x17,0xCA,0x20,0x7E,0xEA,0xE4,0xF2,0x90,0x0E,0xF0,0x0C,
|
||||
0xBD,0xFC,0xED,0x85,0xAC,0xB5,0xD8,0x20,0x56,0xEA,0x30,0xEA,0x20,0x8D,0xEA,0xA2,
|
||||
0x15,0xE4,0xF2,0x90,0x0F,0xB5,0xDA,0x29,0x7F,0xB4,0xD9,0x10,0x02,0x09,0x80,0x95,
|
||||
0xDA,0xCA,0xD0,0xED,0xA6,0xF2,0x20,0x0E,0xE7,0x68,0x85,0xAF,0x68,0x85,0xAE,0x68,
|
||||
0x85,0xAD,0x68,0x85,0xAC,0x60,0x29,0x03,0x0D,0x88,0x02,0x85,0xAD,0x20,0x6E,0xEA,
|
||||
0xA0,0x15,0xB1,0xAC,0x91,0xD1,0xB1,0xAE,0x91,0xF3,0x88,0x10,0xF5,0x60,0x20,0xB2,
|
||||
0xEA,0xA5,0xAC,0x85,0xAE,0xA5,0xAD,0x29,0x03,0x09,0x94,0x85,0xAF,0x60,0xBD,0xFD,
|
||||
0xED,0x85,0xD1,0xB5,0xD9,0x29,0x03,0x0D,0x88,0x02,0x85,0xD2,0x60,0xA0,0x15,0x20,
|
||||
0x7E,0xEA,0x20,0xB2,0xEA,0xA9,0x20,0x91,0xD1,0xA9,0x01,0x91,0xF3,0x88,0x10,0xF5,
|
||||
0x60,0xA8,0xA9,0x02,0x85,0xCD,0x20,0xB2,0xEA,0x98,0xA4,0xD3,0x91,0xD1,0x8A,0x91,
|
||||
0xF3,0x60,0xA5,0xD1,0x85,0xF3,0xA5,0xD2,0x29,0x03,0x09,0x94,0x85,0xF4,0x60,0x20,
|
||||
0xEA,0xFF,0xA5,0xCC,0xD0,0x29,0xC6,0xCD,0xD0,0x25,0xA9,0x14,0x85,0xCD,0xA4,0xD3,
|
||||
0x46,0xCF,0xAE,0x87,0x02,0xB1,0xD1,0xB0,0x11,0xE6,0xCF,0x85,0xCE,0x20,0xB2,0xEA,
|
||||
0xB1,0xF3,0x8D,0x87,0x02,0xAE,0x86,0x02,0xA5,0xCE,0x49,0x80,0x20,0xAA,0xEA,0xAD,
|
||||
0x1F,0x91,0x29,0x40,0xF0,0x0B,0xA0,0x00,0x84,0xC0,0xAD,0x1C,0x91,0x09,0x02,0xD0,
|
||||
0x09,0xA5,0xC0,0xD0,0x0D,0xAD,0x1C,0x91,0x29,0xFD,0x2C,0x1E,0x91,0x70,0x03,0x8D,
|
||||
0x1C,0x91,0x20,0x1E,0xEB,0x2C,0x24,0x91,0x68,0xA8,0x68,0xAA,0x68,0x40,0xA9,0x00,
|
||||
0x8D,0x8D,0x02,0xA0,0x40,0x84,0xCB,0x8D,0x20,0x91,0xAE,0x21,0x91,0xE0,0xFF,0xF0,
|
||||
0x5E,0xA9,0xFE,0x8D,0x20,0x91,0xA0,0x00,0xA9,0x5E,0x85,0xF5,0xA9,0xEC,0x85,0xF6,
|
||||
0xA2,0x08,0xAD,0x21,0x91,0xCD,0x21,0x91,0xD0,0xF6,0x4A,0xB0,0x16,0x48,0xB1,0xF5,
|
||||
0xC9,0x05,0xB0,0x0C,0xC9,0x03,0xF0,0x08,0x0D,0x8D,0x02,0x8D,0x8D,0x02,0x10,0x02,
|
||||
0x84,0xCB,0x68,0xC8,0xC0,0x41,0xB0,0x09,0xCA,0xD0,0xDF,0x38,0x2E,0x20,0x91,0xD0,
|
||||
0xCF,0x6C,0x8F,0x02,0xA4,0xCB,0xB1,0xF5,0xAA,0xC4,0xC5,0xF0,0x07,0xA0,0x10,0x8C,
|
||||
0x8C,0x02,0xD0,0x36,0x29,0x7F,0x2C,0x8A,0x02,0x30,0x16,0x70,0x49,0xC9,0x7F,0xF0,
|
||||
0x29,0xC9,0x14,0xF0,0x0C,0xC9,0x20,0xF0,0x08,0xC9,0x1D,0xF0,0x04,0xC9,0x11,0xD0,
|
||||
0x35,0xAC,0x8C,0x02,0xF0,0x05,0xCE,0x8C,0x02,0xD0,0x2B,0xCE,0x8B,0x02,0xD0,0x26,
|
||||
0xA0,0x04,0x8C,0x8B,0x02,0xA4,0xC6,0x88,0x10,0x1C,0xA4,0xCB,0x84,0xC5,0xAC,0x8D,
|
||||
0x02,0x8C,0x8E,0x02,0xE0,0xFF,0xF0,0x0E,0x8A,0xA6,0xC6,0xEC,0x89,0x02,0xB0,0x06,
|
||||
0x9D,0x77,0x02,0xE8,0x86,0xC6,0xA9,0xF7,0x8D,0x20,0x91,0x60,0xAD,0x8D,0x02,0xC9,
|
||||
0x03,0xD0,0x2C,0xCD,0x8E,0x02,0xF0,0xEE,0xAD,0x91,0x02,0x30,0x56,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xAD,0x05,0x90,0x49,0x02,0x8D,0x05,0x90,0xEA,0xEA,0xEA,0xEA,0x4C,0x43,0xEC,0x0A,
|
||||
0xC9,0x08,0x90,0x04,0xA9,0x06,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,
|
||||
0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xEA,0xAA,0xBD,0x46,0xEC,0x85,0xF5,0xBD,0x47,
|
||||
0xEC,0x85,0xF6,0x4C,0x74,0xEB,0x5E,0xEC,0x9F,0xEC,0xE0,0xEC,0xA3,0xED,0x5E,0xEC,
|
||||
0x9F,0xEC,0x69,0xED,0xA3,0xED,0x21,0xED,0x69,0xED,0x69,0xED,0xA3,0xED,0x31,0x33,
|
||||
0x35,0x37,0x39,0x2B,0x5C,0x14,0x5F,0x57,0x52,0x59,0x49,0x50,0x2A,0x0D,0x04,0x41,
|
||||
0x44,0x47,0x4A,0x4C,0x3B,0x1D,0x03,0x01,0x58,0x56,0x4E,0x2C,0x2F,0x11,0x20,0x5A,
|
||||
0x43,0x42,0x4D,0x2E,0x01,0x85,0x02,0x53,0x46,0x48,0x4B,0x3A,0x3D,0x86,0x51,0x45,
|
||||
0x54,0x55,0x4F,0x40,0x5E,0x87,0x32,0x34,0x36,0x38,0x30,0x2D,0x13,0x88,0xFF,0x21,
|
||||
0x23,0x25,0x27,0x29,0xDB,0xA9,0x94,0x5F,0xD7,0xD2,0xD9,0xC9,0xD0,0xC0,0x8D,0x04,
|
||||
0xC1,0xC4,0xC7,0xCA,0xCC,0x5D,0x9D,0x83,0x01,0xD8,0xD6,0xCE,0x3C,0x3F,0x91,0xA0,
|
||||
0xDA,0xC3,0xC2,0xCD,0x3E,0x01,0x89,0x02,0xD3,0xC6,0xC8,0xCB,0x5B,0x3D,0x8A,0xD1,
|
||||
0xC5,0xD4,0xD5,0xCF,0xBA,0xDE,0x8B,0x22,0x24,0x26,0x28,0x30,0xDD,0x93,0x8C,0xFF,
|
||||
0x21,0x23,0x25,0x27,0x29,0xA6,0xA8,0x94,0x5F,0xB3,0xB2,0xB7,0xA2,0xAF,0xDF,0x8D,
|
||||
0x04,0xB0,0xAC,0xA5,0xB5,0xB6,0x5D,0x9D,0x83,0x01,0xBD,0xBE,0xAA,0x3C,0x3F,0x91,
|
||||
0xA0,0xAD,0xBC,0xBF,0xA7,0x3E,0x01,0x89,0x02,0xAE,0xBB,0xB4,0xA1,0x5B,0x3D,0x8A,
|
||||
0xAB,0xB1,0xA3,0xB8,0xB9,0xA4,0xDE,0x8B,0x22,0x24,0x26,0x28,0x30,0xDC,0x93,0x8C,
|
||||
0xFF,0xC9,0x0E,0xD0,0x0B,0xA9,0x02,0x0D,0x05,0x90,0x8D,0x05,0x90,0x4C,0xDC,0xE6,
|
||||
0xC9,0x8E,0xD0,0x0B,0xA9,0xFD,0x2D,0x05,0x90,0x8D,0x05,0x90,0x4C,0xDC,0xE6,0xC9,
|
||||
0x08,0xD0,0x0A,0xA9,0x80,0x0D,0x91,0x02,0x8D,0x91,0x02,0x30,0xEF,0xC9,0x09,0xD0,
|
||||
0xEB,0xA9,0x7F,0x2D,0x91,0x02,0x8D,0x91,0x02,0x10,0xE1,0xE8,0xB5,0xD9,0x09,0x80,
|
||||
0x95,0xD9,0xCA,0xA5,0xD5,0x18,0x4C,0x15,0xE7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0x04,0xFF,0xFF,0xFF,0xFF,0xFF,0xE2,0x9D,0x83,0x01,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0x91,0xA0,0xFF,0xFF,0xFF,0xFF,0xEE,0x01,0x89,0x02,0xFF,0xFF,0xFF,0xFF,0xE1,
|
||||
0xFD,0x8A,0xFF,0xFF,0xFF,0xFF,0xFF,0xB0,0xE0,0x8B,0xF2,0xF4,0xF6,0xFF,0xF0,0xED,
|
||||
0x93,0x8C,0xFF,0x90,0x1C,0x9C,0x1F,0x12,0xFF,0xFF,0xFF,0x06,0xFF,0x12,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x05,0x9F,0x1E,0x9E,0x92,
|
||||
0xFF,0xFF,0xFF,0xFF,0x0C,0x26,0x16,0x2E,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||
0x00,0x00,0x00,0x1B,0x4C,0x4F,0x41,0x44,0x0D,0x52,0x55,0x4E,0x0D,0x00,0x16,0x2C,
|
||||
0x42,0x58,0x6E,0x84,0x9A,0xB0,0xC6,0xDC,0xF2,0x08,0x1E,0x34,0x4A,0x60,0x76,0x8C,
|
||||
0xA2,0xB8,0xCE,0xE4,0x09,0x40,0x2C,0x09,0x20,0x20,0x60,0xF1,0x48,0x24,0x94,0x10,
|
||||
0x0A,0x38,0x66,0xA3,0x20,0x49,0xEE,0x46,0x94,0x46,0xA3,0x68,0x85,0x95,0x20,0xA0,
|
||||
0xE4,0xC9,0x3F,0xD0,0x03,0x20,0x84,0xEF,0xAD,0x1F,0x91,0x09,0x80,0x8D,0x1F,0x91,
|
||||
0x20,0x8D,0xEF,0x20,0xA0,0xE4,0x20,0x96,0xEF,0x78,0x20,0xA0,0xE4,0x20,0xB2,0xE4,
|
||||
0x4A,0xB0,0x61,0x20,0x84,0xEF,0x24,0xA3,0x10,0x0C,0x20,0xB2,0xE4,0x4A,0x90,0xFA,
|
||||
0x20,0xB2,0xE4,0x4A,0xB0,0xFA,0x20,0xB2,0xE4,0x4A,0x90,0xFA,0x20,0x8D,0xEF,0xA9,
|
||||
0x08,0x85,0xA5,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0x4A,0x90,0x38,0x66,
|
||||
0x95,0xB0,0x05,0x20,0xA9,0xE4,0xD0,0x03,0x20,0xA0,0xE4,0x20,0x84,0xEF,0xEA,0xEA,
|
||||
0xEA,0xEA,0xAD,0x2C,0x91,0x29,0xDF,0x09,0x02,0x8D,0x2C,0x91,0xC6,0xA5,0xD0,0xD3,
|
||||
0xA9,0x04,0x8D,0x29,0x91,0xAD,0x2D,0x91,0x29,0x20,0xD0,0x0B,0x20,0xB2,0xE4,0x4A,
|
||||
0xB0,0xF3,0x58,0x60,0xA9,0x80,0x2C,0xA9,0x03,0x20,0x6A,0xFE,0x58,0x18,0x90,0x49,
|
||||
0x85,0x95,0x20,0x40,0xEE,0xAD,0x1F,0x91,0x29,0x7F,0x8D,0x1F,0x91,0x60,0x85,0x95,
|
||||
0x20,0x40,0xEE,0x78,0x20,0xA9,0xE4,0x20,0xC5,0xEE,0x20,0x84,0xEF,0x20,0xB2,0xE4,
|
||||
0xB0,0xFB,0x58,0x60,0x24,0x94,0x30,0x05,0x38,0x66,0x94,0xD0,0x05,0x48,0x20,0x49,
|
||||
0xEE,0x68,0x85,0x95,0x18,0x60,0x20,0x8D,0xEF,0xAD,0x1F,0x91,0x09,0x80,0x8D,0x1F,
|
||||
0x91,0xA9,0x5F,0x2C,0xA9,0x3F,0x20,0x1C,0xEE,0x20,0xC5,0xEE,0x8A,0xA2,0x0B,0xCA,
|
||||
0xD0,0xFD,0xAA,0x20,0x84,0xEF,0x4C,0xA0,0xE4,0x78,0xA9,0x00,0x85,0xA5,0x20,0x84,
|
||||
0xEF,0x20,0xB2,0xE4,0x90,0xFB,0x20,0xA0,0xE4,0xA9,0x01,0x8D,0x29,0x91,0xAD,0x2D,
|
||||
0x91,0x29,0x20,0xD0,0x07,0x20,0xB2,0xE4,0xB0,0xF4,0x90,0x18,0xA5,0xA5,0xF0,0x05,
|
||||
0xA9,0x02,0x4C,0xB9,0xEE,0x20,0xA9,0xE4,0x20,0x0C,0xEF,0xA9,0x40,0x20,0x6A,0xFE,
|
||||
0xE6,0xA5,0xD0,0xD5,0xA9,0x08,0x85,0xA5,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,
|
||||
0x4A,0x90,0xF5,0x4A,0x66,0xA4,0xAD,0x1F,0x91,0xCD,0x1F,0x91,0xD0,0xF8,0x4A,0xB0,
|
||||
0xF5,0xC6,0xA5,0xD0,0xE3,0x20,0xA9,0xE4,0xA5,0x90,0xF0,0x03,0x20,0x0C,0xEF,0xA5,
|
||||
0xA4,0x58,0x18,0x60,0xAD,0x2C,0x91,0x29,0xFD,0x8D,0x2C,0x91,0x60,0xAD,0x2C,0x91,
|
||||
0x09,0x02,0x8D,0x2C,0x91,0x60,0xA9,0x04,0x8D,0x29,0x91,0xAD,0x2D,0x91,0x29,0x20,
|
||||
0xF0,0xF9,0x60,0xA5,0xB4,0xF0,0x47,0x30,0x3F,0x46,0xB6,0xA2,0x00,0x90,0x01,0xCA,
|
||||
0x8A,0x45,0xBD,0x85,0xBD,0xC6,0xB4,0xF0,0x06,0x8A,0x29,0x20,0x85,0xB5,0x60,0xA9,
|
||||
0x20,0x2C,0x94,0x02,0xF0,0x14,0x30,0x1C,0x70,0x14,0xA5,0xBD,0xD0,0x01,0xCA,0xC6,
|
||||
0xB4,0xAD,0x93,0x02,0x10,0xE3,0xC6,0xB4,0xD0,0xDF,0xE6,0xB4,0xD0,0xF0,0xA5,0xBD,
|
||||
0xF0,0xED,0xD0,0xEA,0x70,0xE9,0x50,0xE6,0xE6,0xB4,0xA2,0xFF,0xD0,0xCB,0xAD,0x94,
|
||||
0x02,0x4A,0x90,0x07,0x2C,0x20,0x91,0x10,0x1D,0x50,0x1E,0xA9,0x00,0x85,0xBD,0x85,
|
||||
0xB5,0xAE,0x98,0x02,0x86,0xB4,0xAC,0x9D,0x02,0xCC,0x9E,0x02,0xF0,0x13,0xB1,0xF9,
|
||||
0x85,0xB6,0xEE,0x9D,0x02,0x60,0xA9,0x40,0x2C,0xA9,0x10,0x0D,0x97,0x02,0x8D,0x97,
|
||||
0x02,0xA9,0x40,0x8D,0x1E,0x91,0x60,0xA2,0x09,0xA9,0x20,0x2C,0x93,0x02,0xF0,0x01,
|
||||
0xCA,0x50,0x02,0xCA,0xCA,0x60,0xA6,0xA9,0xD0,0x2E,0xC6,0xA8,0xF0,0x31,0x30,0x0D,
|
||||
0xA5,0xA7,0x45,0xAB,0x85,0xAB,0x46,0xA7,0x66,0xAA,0x60,0xC6,0xA8,0xA5,0xA7,0xF0,
|
||||
0x62,0xAD,0x93,0x02,0x0A,0xA9,0x01,0x65,0xA8,0xD0,0xEF,0xA9,0x90,0x8D,0x1E,0x91,
|
||||
0x85,0xA9,0xA9,0x20,0x8D,0x1E,0x91,0x60,0xA5,0xA7,0xD0,0xEF,0x85,0xA9,0x60,0xAC,
|
||||
0x9B,0x02,0xC8,0xCC,0x9C,0x02,0xF0,0x2A,0x8C,0x9B,0x02,0x88,0xA5,0xAA,0xAE,0x98,
|
||||
0x02,0xE0,0x09,0xF0,0x04,0x4A,0xE8,0xD0,0xF8,0x91,0xF7,0xA9,0x20,0x2C,0x94,0x02,
|
||||
0xF0,0xB9,0x30,0xB6,0xA5,0xA7,0x45,0xAB,0xF0,0x03,0x70,0xAE,0x2C,0x50,0xAB,0xA9,
|
||||
0x01,0x2C,0xA9,0x04,0x2C,0xA9,0x80,0x2C,0xA9,0x02,0x0D,0x97,0x02,0x8D,0x97,0x02,
|
||||
0x4C,0x5B,0xF0,0xA5,0xAA,0xD0,0xF1,0xF0,0xEC,0x4C,0x96,0xF7,0x85,0x9A,0xAD,0x94,
|
||||
0x02,0x4A,0x90,0x27,0xA9,0x02,0x2C,0x10,0x91,0x10,0x1D,0xD0,0x1E,0xAD,0x1E,0x91,
|
||||
0x29,0x30,0xD0,0xF9,0x2C,0x10,0x91,0x70,0xFB,0xAD,0x10,0x91,0x09,0x02,0x8D,0x10,
|
||||
0x91,0x2C,0x10,0x91,0x70,0x05,0x30,0xF9,0x20,0x16,0xF0,0x18,0x60,0xAC,0x9E,0x02,
|
||||
0xC8,0xCC,0x9D,0x02,0xF0,0xF7,0x8C,0x9E,0x02,0x88,0x91,0xF9,0x2C,0x1E,0x91,0x50,
|
||||
0x01,0x60,0xAD,0x99,0x02,0x8D,0x14,0x91,0xAD,0x9A,0x02,0x8D,0x15,0x91,0xA9,0xC0,
|
||||
0x8D,0x1E,0x91,0x4C,0xEE,0xEF,0x85,0x99,0xAD,0x94,0x02,0x4A,0x90,0x28,0x29,0x08,
|
||||
0xF0,0x24,0xA9,0x02,0x2C,0x10,0x91,0x10,0xBF,0xF0,0x19,0x2C,0x1E,0x91,0x70,0xFB,
|
||||
0xAD,0x10,0x91,0x29,0xFD,0x8D,0x10,0x91,0xAD,0x10,0x91,0x29,0x04,0xF0,0xF9,0xA9,
|
||||
0x90,0x8D,0x1E,0x91,0x18,0x60,0xAD,0x1E,0x91,0x29,0x30,0xF0,0xF2,0x18,0x60,0xAC,
|
||||
0x9C,0x02,0xCC,0x9B,0x02,0xF0,0x06,0xB1,0xF7,0xEE,0x9C,0x02,0x60,0xA9,0x00,0x60,
|
||||
0x48,0xAD,0x1E,0x91,0xF0,0x0C,0xAD,0x1E,0x91,0x29,0x60,0xD0,0xF9,0xA9,0x10,0x8D,
|
||||
0x1E,0x91,0x68,0x60,0x0D,0x49,0x2F,0x4F,0x20,0x45,0x52,0x52,0x4F,0x52,0x20,0xA3,
|
||||
0x0D,0x53,0x45,0x41,0x52,0x43,0x48,0x49,0x4E,0x47,0xA0,0x46,0x4F,0x52,0xA0,0x0D,
|
||||
0x50,0x52,0x45,0x53,0x53,0x20,0x50,0x4C,0x41,0x59,0x20,0x4F,0x4E,0x20,0x54,0x41,
|
||||
0x50,0xC5,0x50,0x52,0x45,0x53,0x53,0x20,0x52,0x45,0x43,0x4F,0x52,0x44,0x20,0x26,
|
||||
0x20,0x50,0x4C,0x41,0x59,0x20,0x4F,0x4E,0x20,0x54,0x41,0x50,0xC5,0x0D,0x4C,0x4F,
|
||||
0x41,0x44,0x49,0x4E,0xC7,0x0D,0x53,0x41,0x56,0x49,0x4E,0x47,0xA0,0x0D,0x56,0x45,
|
||||
0x52,0x49,0x46,0x59,0x49,0x4E,0xC7,0x0D,0x46,0x4F,0x55,0x4E,0x44,0xA0,0x0D,0x4F,
|
||||
0x4B,0x8D,0x24,0x9D,0x10,0x0D,0xB9,0x74,0xF1,0x08,0x29,0x7F,0x20,0xD2,0xFF,0xC8,
|
||||
0x28,0x10,0xF3,0x18,0x60,0xA5,0x99,0xD0,0x08,0xA5,0xC6,0xF0,0x6D,0x78,0x4C,0xCF,
|
||||
0xE5,0xC9,0x02,0xD0,0x18,0x84,0x97,0x20,0x4F,0xF1,0xA4,0x97,0x18,0x60,0xA5,0x99,
|
||||
0xD0,0x0B,0xA5,0xD3,0x85,0xCA,0xA5,0xD6,0x85,0xC9,0x4C,0x4F,0xE6,0xC9,0x03,0xD0,
|
||||
0x09,0x85,0xD0,0xA5,0xD5,0x85,0xC8,0x4C,0x4F,0xE6,0xB0,0x38,0xC9,0x02,0xF0,0x3F,
|
||||
0x86,0x97,0x20,0x50,0xF2,0xB0,0x16,0x48,0x20,0x50,0xF2,0xB0,0x0D,0xD0,0x05,0xA9,
|
||||
0x40,0x20,0x6A,0xFE,0xC6,0xA6,0xA6,0x97,0x68,0x60,0xAA,0x68,0x8A,0xA6,0x97,0x60,
|
||||
0x20,0x8A,0xF8,0xD0,0x0B,0x20,0xC0,0xF8,0xB0,0x11,0xA9,0x00,0x85,0xA6,0xF0,0xF0,
|
||||
0xB1,0xB2,0x18,0x60,0xA5,0x90,0xF0,0x04,0xA9,0x0D,0x18,0x60,0x4C,0x19,0xEF,0x20,
|
||||
0x05,0xF2,0xB0,0x05,0xC9,0x00,0xF0,0xF7,0x18,0x60,0x48,0xA5,0x9A,0xC9,0x03,0xD0,
|
||||
0x04,0x68,0x4C,0x42,0xE7,0x90,0x04,0x68,0x4C,0xE4,0xEE,0xC9,0x02,0xF0,0x2A,0x68,
|
||||
0x85,0x9E,0x48,0x8A,0x48,0x98,0x48,0x20,0x8A,0xF8,0xD0,0x0E,0x20,0xE3,0xF8,0xB0,
|
||||
0x0E,0xA9,0x02,0xA0,0x00,0x91,0xB2,0xC8,0x84,0xA6,0xA5,0x9E,0x91,0xB2,0x18,0x68,
|
||||
0xA8,0x68,0xAA,0x68,0x90,0x02,0xA9,0x00,0x60,0x68,0x86,0x97,0x84,0x9E,0x20,0xED,
|
||||
0xF0,0xA6,0x97,0xA4,0x9E,0x18,0x60,0x20,0xCF,0xF3,0xF0,0x03,0x4C,0x84,0xF7,0x20,
|
||||
0xDF,0xF3,0xA5,0xBA,0xF0,0x16,0xC9,0x03,0xF0,0x12,0xB0,0x14,0xC9,0x02,0xD0,0x03,
|
||||
0x4C,0x16,0xF1,0xA6,0xB9,0xE0,0x60,0xF0,0x03,0x4C,0x8D,0xF7,0x85,0x99,0x18,0x60,
|
||||
0xAA,0x20,0x14,0xEE,0xA5,0xB9,0x10,0x06,0x20,0xD3,0xEE,0x4C,0x01,0xF3,0x20,0xCE,
|
||||
0xEE,0x8A,0x24,0x90,0x10,0xE6,0x4C,0x8A,0xF7,0x20,0xCF,0xF3,0xF0,0x03,0x4C,0x84,
|
||||
0xF7,0x20,0xDF,0xF3,0xA5,0xBA,0xD0,0x03,0x4C,0x90,0xF7,0xC9,0x03,0xF0,0x0F,0xB0,
|
||||
0x11,0xC9,0x02,0xD0,0x03,0x4C,0xBC,0xF0,0xA6,0xB9,0xE0,0x60,0xF0,0xEA,0x85,0x9A,
|
||||
0x18,0x60,0xAA,0x20,0x17,0xEE,0xA5,0xB9,0x10,0x05,0x20,0xC5,0xEE,0xD0,0x03,0x20,
|
||||
0xC0,0xEE,0x8A,0x24,0x90,0x10,0xE7,0x4C,0x8A,0xF7,0x20,0xD4,0xF3,0xF0,0x02,0x18,
|
||||
0x60,0x20,0xDF,0xF3,0x8A,0x48,0xA5,0xBA,0xF0,0x57,0xC9,0x03,0xF0,0x53,0xB0,0x4E,
|
||||
0xC9,0x02,0xD0,0x29,0x68,0x20,0xB2,0xF3,0xA9,0x7D,0x8D,0x1E,0x91,0xA9,0x06,0x8D,
|
||||
0x10,0x91,0xA9,0xEE,0x8D,0x1C,0x91,0x20,0x75,0xFE,0xA5,0xF8,0xF0,0x01,0xC8,0xA5,
|
||||
0xFA,0xF0,0x01,0xC8,0xA9,0x00,0x85,0xF8,0x85,0xFA,0x4C,0x3C,0xF5,0xA5,0xB9,0x29,
|
||||
0x0F,0xF0,0x1E,0x20,0x4D,0xF8,0xA9,0x00,0x20,0x90,0xF2,0x4C,0xCF,0xE4,0xB0,0x2E,
|
||||
0xA5,0xB9,0xC9,0x62,0xD0,0x0B,0xA9,0x05,0x20,0xE7,0xF7,0x4C,0xB1,0xF3,0x20,0xDA,
|
||||
0xF6,0x68,0xAA,0xC6,0x98,0xE4,0x98,0xF0,0x14,0xA4,0x98,0xB9,0x59,0x02,0x9D,0x59,
|
||||
0x02,0xB9,0x63,0x02,0x9D,0x63,0x02,0xB9,0x6D,0x02,0x9D,0x6D,0x02,0x18,0x60,0xA9,
|
||||
0x00,0x85,0x90,0x8A,0xA6,0x98,0xCA,0x30,0x15,0xDD,0x59,0x02,0xD0,0xF8,0x60,0xBD,
|
||||
0x59,0x02,0x85,0xB8,0xBD,0x63,0x02,0x85,0xBA,0xBD,0x6D,0x02,0x85,0xB9,0x60,0xA9,
|
||||
0x00,0x85,0x98,0xA2,0x03,0xE4,0x9A,0xB0,0x03,0x20,0x04,0xEF,0xE4,0x99,0xB0,0x03,
|
||||
0x20,0xF6,0xEE,0x86,0x9A,0xA9,0x00,0x85,0x99,0x60,0xA6,0xB8,0xD0,0x03,0x4C,0x8D,
|
||||
0xF7,0x20,0xCF,0xF3,0xD0,0x03,0x4C,0x81,0xF7,0xA6,0x98,0xE0,0x0A,0x90,0x03,0x4C,
|
||||
0x7E,0xF7,0xE6,0x98,0xA5,0xB8,0x9D,0x59,0x02,0xA5,0xB9,0x09,0x60,0x85,0xB9,0x9D,
|
||||
0x6D,0x02,0xA5,0xBA,0x9D,0x63,0x02,0xF0,0x5A,0xC9,0x03,0xF0,0x56,0x90,0x05,0x20,
|
||||
0x95,0xF4,0x90,0x4F,0xC9,0x02,0xD0,0x03,0x4C,0xC7,0xF4,0x20,0x4D,0xF8,0xB0,0x03,
|
||||
0x4C,0x96,0xF7,0xA5,0xB9,0x29,0x0F,0xD0,0x1F,0x20,0x94,0xF8,0xB0,0x36,0x20,0x47,
|
||||
0xF6,0xA5,0xB7,0xF0,0x0A,0x20,0x67,0xF8,0x90,0x18,0xF0,0x28,0x4C,0x87,0xF7,0x20,
|
||||
0xAF,0xF7,0xF0,0x20,0x90,0x0C,0xB0,0xF4,0x20,0xB7,0xF8,0xB0,0x17,0xA9,0x04,0x20,
|
||||
0xE7,0xF7,0xA9,0xBF,0xA4,0xB9,0xC0,0x60,0xF0,0x07,0xA0,0x00,0xA9,0x02,0x91,0xB2,
|
||||
0x98,0x85,0xA6,0x18,0x60,0xA5,0xB9,0x30,0x2C,0xA4,0xB7,0xF0,0x28,0xA5,0xBA,0x20,
|
||||
0x17,0xEE,0xA5,0xB9,0x09,0xF0,0x20,0xC0,0xEE,0xA5,0x90,0x10,0x05,0x68,0x68,0x4C,
|
||||
0x8A,0xF7,0xA5,0xB7,0xF0,0x0C,0xA0,0x00,0xB1,0xBB,0x20,0xE4,0xEE,0xC8,0xC4,0xB7,
|
||||
0xD0,0xF6,0x20,0x04,0xEF,0x18,0x60,0xA9,0x06,0x8D,0x12,0x91,0x8D,0x10,0x91,0xA9,
|
||||
0xEE,0x8D,0x1C,0x91,0xA0,0x00,0x8C,0x97,0x02,0xC4,0xB7,0xF0,0x0A,0xB1,0xBB,0x99,
|
||||
0x93,0x02,0xC8,0xC0,0x04,0xD0,0xF2,0x20,0x27,0xF0,0x8E,0x98,0x02,0xAD,0x93,0x02,
|
||||
0x29,0x0F,0xD0,0x00,0x0A,0xAA,0xBD,0x5A,0xFF,0x0A,0xA8,0xBD,0x5B,0xFF,0x2A,0x48,
|
||||
0x98,0x69,0xC8,0x8D,0x99,0x02,0x68,0x69,0x00,0x8D,0x9A,0x02,0xAD,0x94,0x02,0x4A,
|
||||
0x90,0x09,0xAD,0x20,0x91,0x0A,0xB0,0x03,0x4C,0x16,0xF0,0xAD,0x9B,0x02,0x8D,0x9C,
|
||||
0x02,0xAD,0x9E,0x02,0x8D,0x9D,0x02,0x20,0x75,0xFE,0xA5,0xF8,0xD0,0x05,0x88,0x84,
|
||||
0xF8,0x86,0xF7,0xA5,0xFA,0xD0,0x05,0x88,0x84,0xFA,0x86,0xF9,0x38,0xA9,0xF0,0x4C,
|
||||
0x7B,0xFE,0x86,0xC3,0x84,0xC4,0x6C,0x30,0x03,0x85,0x93,0xA9,0x00,0x85,0x90,0xA5,
|
||||
0xBA,0xD0,0x03,0x4C,0x96,0xF7,0xC9,0x03,0xF0,0xF9,0x90,0x6E,0xA4,0xB7,0xD0,0x03,
|
||||
0x4C,0x93,0xF7,0x20,0xBC,0xE4,0xA9,0x60,0x85,0xB9,0x20,0x95,0xF4,0xA5,0xBA,0x20,
|
||||
0x14,0xEE,0xA5,0xB9,0x20,0xCE,0xEE,0x20,0x19,0xEF,0x85,0xAE,0xA5,0x90,0x4A,0x4A,
|
||||
0xB0,0x45,0x20,0x19,0xEF,0x85,0xAF,0x20,0xC1,0xE4,0xA9,0xFD,0x25,0x90,0x85,0x90,
|
||||
0x20,0xE1,0xFF,0xD0,0x03,0x4C,0xCB,0xF6,0x20,0x19,0xEF,0xAA,0xA5,0x90,0x4A,0x4A,
|
||||
0xB0,0xE8,0x8A,0xA4,0x93,0xF0,0x0C,0xA0,0x00,0xD1,0xAE,0xF0,0x08,0xA9,0x10,0x20,
|
||||
0x6A,0xFE,0x2C,0x91,0xAE,0xE6,0xAE,0xD0,0x02,0xE6,0xAF,0x24,0x90,0x50,0xCB,0x20,
|
||||
0xF6,0xEE,0x20,0xDA,0xF6,0x90,0x7A,0x4C,0x87,0xF7,0xC9,0x02,0xD0,0x03,0x4C,0xB9,
|
||||
0xF0,0x20,0x4D,0xF8,0xB0,0x03,0x4C,0x96,0xF7,0x20,0x94,0xF8,0xB0,0x68,0x20,0x47,
|
||||
0xF6,0xA5,0xB7,0xF0,0x09,0x20,0x67,0xF8,0x90,0x0B,0xF0,0x5A,0xB0,0xD9,0x20,0xAF,
|
||||
0xF7,0xF0,0x53,0xB0,0xD2,0xA5,0x90,0x29,0x10,0x38,0xD0,0x4A,0xE0,0x01,0xF0,0x11,
|
||||
0xE0,0x03,0xD0,0xDD,0xA0,0x01,0xB1,0xB2,0x85,0xC3,0xC8,0xB1,0xB2,0x85,0xC4,0xB0,
|
||||
0x04,0xA5,0xB9,0xD0,0xEF,0xA0,0x03,0xB1,0xB2,0xA0,0x01,0xF1,0xB2,0xAA,0xA0,0x04,
|
||||
0xB1,0xB2,0xA0,0x02,0xF1,0xB2,0xA8,0x18,0x8A,0x65,0xC3,0x85,0xAE,0x98,0x65,0xC4,
|
||||
0x85,0xAF,0xA5,0xC3,0x85,0xC1,0xA5,0xC4,0x85,0xC2,0x20,0x6A,0xF6,0x20,0xC9,0xF8,
|
||||
0x24,0x18,0xA6,0xAE,0xA4,0xAF,0x60,0xA5,0x9D,0x10,0x1E,0xA0,0x0C,0x20,0xE6,0xF1,
|
||||
0xA5,0xB7,0xF0,0x15,0xA0,0x17,0x20,0xE6,0xF1,0xA4,0xB7,0xF0,0x0C,0xA0,0x00,0xB1,
|
||||
0xBB,0x20,0xD2,0xFF,0xC8,0xC4,0xB7,0xD0,0xF6,0x60,0xA0,0x49,0xA5,0x93,0xF0,0x02,
|
||||
0xA0,0x59,0x4C,0xE2,0xF1,0x86,0xAE,0x84,0xAF,0xAA,0xB5,0x00,0x85,0xC1,0xB5,0x01,
|
||||
0x85,0xC2,0x6C,0x32,0x03,0xA5,0xBA,0xD0,0x03,0x4C,0x96,0xF7,0xC9,0x03,0xF0,0xF9,
|
||||
0x90,0x5F,0xA9,0x61,0x85,0xB9,0xA4,0xB7,0xD0,0x03,0x4C,0x93,0xF7,0x20,0x95,0xF4,
|
||||
0x20,0x28,0xF7,0xA5,0xBA,0x20,0x17,0xEE,0xA5,0xB9,0x20,0xC0,0xEE,0xA0,0x00,0x20,
|
||||
0xD2,0xFB,0xA5,0xAC,0x20,0xE4,0xEE,0xA5,0xAD,0x20,0xE4,0xEE,0x20,0x11,0xFD,0xB0,
|
||||
0x16,0xB1,0xAC,0x20,0xE4,0xEE,0x20,0xE1,0xFF,0xD0,0x07,0x20,0xDA,0xF6,0xA9,0x00,
|
||||
0x38,0x60,0x20,0x1B,0xFD,0xD0,0xE5,0x20,0x04,0xEF,0x24,0xB9,0x30,0x11,0xA5,0xBA,
|
||||
0x20,0x17,0xEE,0xA5,0xB9,0x29,0xEF,0x09,0xE0,0x20,0xC0,0xEE,0x20,0x04,0xEF,0x18,
|
||||
0x60,0xC9,0x02,0xD0,0x03,0x4C,0xB9,0xF0,0x20,0x4D,0xF8,0x90,0x8C,0x20,0xB7,0xF8,
|
||||
0xB0,0x25,0x20,0x28,0xF7,0xA2,0x03,0xA5,0xB9,0x29,0x01,0xD0,0x02,0xA2,0x01,0x8A,
|
||||
0x20,0xE7,0xF7,0xB0,0x12,0x20,0xE6,0xF8,0xB0,0x0D,0xA5,0xB9,0x29,0x02,0xF0,0x06,
|
||||
0xA9,0x05,0x20,0xE7,0xF7,0x24,0x18,0x60,0xA5,0x9D,0x10,0xFB,0xA0,0x51,0x20,0xE6,
|
||||
0xF1,0x4C,0x59,0xF6,0xA2,0x00,0xE6,0xA2,0xD0,0x06,0xE6,0xA1,0xD0,0x02,0xE6,0xA0,
|
||||
0x38,0xA5,0xA2,0xE9,0x01,0xA5,0xA1,0xE9,0x1A,0xA5,0xA0,0xE9,0x4F,0x90,0x06,0x86,
|
||||
0xA0,0x86,0xA1,0x86,0xA2,0xAD,0x2F,0x91,0xCD,0x2F,0x91,0xD0,0xF8,0x85,0x91,0x60,
|
||||
0x78,0xA5,0xA2,0xA6,0xA1,0xA4,0xA0,0x78,0x85,0xA2,0x86,0xA1,0x84,0xA0,0x58,0x60,
|
||||
0xA5,0x91,0xC9,0xFE,0xD0,0x07,0x08,0x20,0xCC,0xFF,0x85,0xC6,0x28,0x60,0xA9,0x01,
|
||||
0x2C,0xA9,0x02,0x2C,0xA9,0x03,0x2C,0xA9,0x04,0x2C,0xA9,0x05,0x2C,0xA9,0x06,0x2C,
|
||||
0xA9,0x07,0x2C,0xA9,0x08,0x2C,0xA9,0x09,0x48,0x20,0xCC,0xFF,0xA0,0x00,0x24,0x9D,
|
||||
0x50,0x0A,0x20,0xE6,0xF1,0x68,0x48,0x09,0x30,0x20,0xD2,0xFF,0x68,0x38,0x60,0xA5,
|
||||
0x93,0x48,0x20,0xC0,0xF8,0x68,0x85,0x93,0xB0,0x2C,0xA0,0x00,0xB1,0xB2,0xC9,0x05,
|
||||
0xF0,0x24,0xC9,0x01,0xF0,0x08,0xC9,0x03,0xF0,0x04,0xC9,0x04,0xD0,0xE1,0xAA,0x24,
|
||||
0x9D,0x10,0x11,0xA0,0x63,0x20,0xE6,0xF1,0xA0,0x05,0xB1,0xB2,0x20,0xD2,0xFF,0xC8,
|
||||
0xC0,0x15,0xD0,0xF6,0x18,0x88,0x60,0x85,0x9E,0x20,0x4D,0xF8,0x90,0x5E,0xA5,0xC2,
|
||||
0x48,0xA5,0xC1,0x48,0xA5,0xAF,0x48,0xA5,0xAE,0x48,0xA0,0xBF,0xA9,0x20,0x91,0xB2,
|
||||
0x88,0xD0,0xFB,0xA5,0x9E,0x91,0xB2,0xC8,0xA5,0xC1,0x91,0xB2,0xC8,0xA5,0xC2,0x91,
|
||||
0xB2,0xC8,0xA5,0xAE,0x91,0xB2,0xC8,0xA5,0xAF,0x91,0xB2,0xC8,0x84,0x9F,0xA0,0x00,
|
||||
0x84,0x9E,0xA4,0x9E,0xC4,0xB7,0xF0,0x0C,0xB1,0xBB,0xA4,0x9F,0x91,0xB2,0xE6,0x9E,
|
||||
0xE6,0x9F,0xD0,0xEE,0x20,0x54,0xF8,0xA9,0x69,0x85,0xAB,0x20,0xEA,0xF8,0xA8,0x68,
|
||||
0x85,0xAE,0x68,0x85,0xAF,0x68,0x85,0xC1,0x68,0x85,0xC2,0x98,0x60,0xA6,0xB2,0xA4,
|
||||
0xB3,0xC0,0x02,0x60,0x20,0x4D,0xF8,0x8A,0x85,0xC1,0x18,0x69,0xC0,0x85,0xAE,0x98,
|
||||
0x85,0xC2,0x69,0x00,0x85,0xAF,0x60,0x20,0xAF,0xF7,0xB0,0x1D,0xA0,0x05,0x84,0x9F,
|
||||
0xA0,0x00,0x84,0x9E,0xC4,0xB7,0xF0,0x10,0xB1,0xBB,0xA4,0x9F,0xD1,0xB2,0xD0,0xE7,
|
||||
0xE6,0x9E,0xE6,0x9F,0xA4,0x9E,0xD0,0xEC,0x18,0x60,0x20,0x4D,0xF8,0xE6,0xA6,0xA4,
|
||||
0xA6,0xC0,0xC0,0x60,0x20,0xAB,0xF8,0xF0,0x1C,0xA0,0x1B,0x20,0xE6,0xF1,0x20,0x4B,
|
||||
0xF9,0x20,0xAB,0xF8,0xD0,0xF8,0xA0,0x6A,0x4C,0xE6,0xF1,0xA9,0x40,0x2C,0x1F,0x91,
|
||||
0xD0,0x03,0x2C,0x1F,0x91,0x18,0x60,0x20,0xAB,0xF8,0xF0,0xF9,0xA0,0x2E,0xD0,0xDB,
|
||||
0xA9,0x00,0x85,0x90,0x85,0x93,0x20,0x54,0xF8,0x20,0x94,0xF8,0xB0,0x1F,0x78,0xA9,
|
||||
0x00,0x85,0xAA,0x85,0xB4,0x85,0xB0,0x85,0x9E,0x85,0x9F,0x85,0x9C,0xA9,0x82,0xA2,
|
||||
0x0E,0xD0,0x11,0x20,0x54,0xF8,0xA9,0x14,0x85,0xAB,0x20,0xB7,0xF8,0xB0,0x68,0x78,
|
||||
0xA9,0xA0,0xA2,0x08,0xA0,0x7F,0x8C,0x2E,0x91,0x8D,0x2E,0x91,0x20,0x60,0xF1,0xAD,
|
||||
0x14,0x03,0x8D,0x9F,0x02,0xAD,0x15,0x03,0x8D,0xA0,0x02,0x20,0xFB,0xFC,0xA9,0x02,
|
||||
0x85,0xBE,0x20,0xDB,0xFB,0xAD,0x1C,0x91,0x29,0xFD,0x09,0x0C,0x8D,0x1C,0x91,0x85,
|
||||
0xC0,0xA2,0xFF,0xA0,0xFF,0x88,0xD0,0xFD,0xCA,0xD0,0xF8,0x8D,0x29,0x91,0x58,0xAD,
|
||||
0xA0,0x02,0xCD,0x15,0x03,0x18,0xF0,0x1F,0x20,0x4B,0xF9,0xAD,0x2D,0x91,0x29,0x40,
|
||||
0xF0,0xED,0xAD,0x14,0x91,0x20,0x34,0xF7,0x4C,0x2F,0xF9,0x20,0xE1,0xFF,0x18,0xD0,
|
||||
0x0B,0x20,0xCF,0xFC,0x38,0x68,0x68,0xA9,0x00,0x8D,0xA0,0x02,0x60,0x86,0xB1,0xA5,
|
||||
0xB0,0x0A,0x0A,0x18,0x65,0xB0,0x18,0x65,0xB1,0x85,0xB1,0xA9,0x00,0x24,0xB0,0x30,
|
||||
0x01,0x2A,0x06,0xB1,0x2A,0x06,0xB1,0x2A,0xAA,0xAD,0x28,0x91,0xC9,0x15,0x90,0xF9,
|
||||
0x65,0xB1,0x8D,0x24,0x91,0x8A,0x6D,0x29,0x91,0x8D,0x25,0x91,0x58,0x60,0xAE,0x29,
|
||||
0x91,0xA0,0xFF,0x98,0xED,0x28,0x91,0xEC,0x29,0x91,0xD0,0xF2,0x86,0xB1,0xAA,0x8C,
|
||||
0x28,0x91,0x8C,0x29,0x91,0x98,0xE5,0xB1,0x86,0xB1,0x4A,0x66,0xB1,0x4A,0x66,0xB1,
|
||||
0xA5,0xB0,0x18,0x69,0x3C,0x2C,0x21,0x91,0xC5,0xB1,0xB0,0x4A,0xA6,0x9C,0xF0,0x03,
|
||||
0x4C,0xAD,0xFA,0xA6,0xA3,0x30,0x1B,0xA2,0x00,0x69,0x30,0x65,0xB0,0xC5,0xB1,0xB0,
|
||||
0x1C,0xE8,0x69,0x26,0x65,0xB0,0xC5,0xB1,0xB0,0x17,0x69,0x2C,0x65,0xB0,0xC5,0xB1,
|
||||
0x90,0x03,0x4C,0x60,0xFA,0xA5,0xB4,0xF0,0x1D,0x85,0xA8,0xD0,0x19,0xE6,0xA9,0xB0,
|
||||
0x02,0xC6,0xA9,0x38,0xE9,0x13,0xE5,0xB1,0x65,0x92,0x85,0x92,0xA5,0xA4,0x49,0x01,
|
||||
0x85,0xA4,0xF0,0x21,0x86,0xD7,0xA5,0xB4,0xF0,0x18,0x2C,0x2D,0x91,0x50,0x13,0xA9,
|
||||
0x00,0x85,0xA4,0xA5,0xA3,0x10,0x30,0x30,0xC9,0xA2,0xA6,0x20,0x5D,0xF9,0xA5,0x9B,
|
||||
0xD0,0xC3,0x4C,0x56,0xFF,0xA5,0x92,0xF0,0x07,0x30,0x03,0xC6,0xB0,0x2C,0xE6,0xB0,
|
||||
0xA9,0x00,0x85,0x92,0xE4,0xD7,0xD0,0x0F,0x8A,0xD0,0xAA,0xA5,0xA9,0x30,0xC7,0xC9,
|
||||
0x10,0x90,0xC3,0x85,0x96,0xB0,0xBF,0x8A,0x45,0x9B,0x85,0x9B,0xA5,0xB4,0xF0,0xD2,
|
||||
0xC6,0xA3,0x30,0xC5,0x46,0xD7,0x66,0xBF,0xA2,0xDA,0x20,0x5D,0xF9,0x4C,0x56,0xFF,
|
||||
0xA5,0x96,0xF0,0x04,0xA5,0xB4,0xF0,0x04,0xA5,0xA3,0x10,0x85,0x46,0xB1,0xA9,0x93,
|
||||
0x38,0xE5,0xB1,0x65,0xB0,0x0A,0xAA,0x20,0x5D,0xF9,0xE6,0x9C,0xA5,0xB4,0xD0,0x11,
|
||||
0xA5,0x96,0xF0,0x26,0x85,0xA8,0xA9,0x00,0x85,0x96,0xA9,0xC0,0x8D,0x2E,0x91,0x85,
|
||||
0xB4,0xA5,0x96,0x85,0xB5,0xF0,0x09,0xA9,0x00,0x85,0xB4,0xA9,0x40,0x8D,0x2E,0x91,
|
||||
0xA5,0xBF,0x85,0xBD,0xA5,0xA8,0x05,0xA9,0x85,0xB6,0x4C,0x56,0xFF,0x20,0xDB,0xFB,
|
||||
0x85,0x9C,0xA2,0xDA,0x20,0x5D,0xF9,0xA5,0xBE,0xF0,0x02,0x85,0xA7,0xA9,0x0F,0x24,
|
||||
0xAA,0x10,0x17,0xA5,0xB5,0xD0,0x0C,0xA6,0xBE,0xCA,0xD0,0x0B,0xA9,0x08,0x20,0x6A,
|
||||
0xFE,0xD0,0x04,0xA9,0x00,0x85,0xAA,0x4C,0x56,0xFF,0x70,0x31,0xD0,0x18,0xA5,0xB5,
|
||||
0xD0,0xF5,0xA5,0xB6,0xD0,0xF1,0xA5,0xA7,0x4A,0xA5,0xBD,0x30,0x03,0x90,0x18,0x18,
|
||||
0xB0,0x15,0x29,0x0F,0x85,0xAA,0xC6,0xAA,0xD0,0xDD,0xA9,0x40,0x85,0xAA,0x20,0xD2,
|
||||
0xFB,0xA9,0x00,0x85,0xAB,0xF0,0xD0,0xA9,0x80,0x85,0xAA,0xD0,0xCA,0xA5,0xB5,0xF0,
|
||||
0x0A,0xA9,0x04,0x20,0x6A,0xFE,0xA9,0x00,0x4C,0x97,0xFB,0x20,0x11,0xFD,0x90,0x03,
|
||||
0x4C,0x95,0xFB,0xA6,0xA7,0xCA,0xF0,0x2D,0xA5,0x93,0xF0,0x0C,0xA0,0x00,0xA5,0xBD,
|
||||
0xD1,0xAC,0xF0,0x04,0xA9,0x01,0x85,0xB6,0xA5,0xB6,0xF0,0x4B,0xA2,0x3D,0xE4,0x9E,
|
||||
0x90,0x3E,0xA6,0x9E,0xA5,0xAD,0x9D,0x01,0x01,0xA5,0xAC,0x9D,0x00,0x01,0xE8,0xE8,
|
||||
0x86,0x9E,0x4C,0x87,0xFB,0xA6,0x9F,0xE4,0x9E,0xF0,0x35,0xA5,0xAC,0xDD,0x00,0x01,
|
||||
0xD0,0x2E,0xA5,0xAD,0xDD,0x01,0x01,0xD0,0x27,0xE6,0x9F,0xE6,0x9F,0xA5,0x93,0xF0,
|
||||
0x0B,0xA5,0xBD,0xA0,0x00,0xD1,0xAC,0xF0,0x17,0xC8,0x84,0xB6,0xA5,0xB6,0xF0,0x07,
|
||||
0xA9,0x10,0x20,0x6A,0xFE,0xD0,0x09,0xA5,0x93,0xD0,0x05,0xA8,0xA5,0xBD,0x91,0xAC,
|
||||
0x20,0x1B,0xFD,0xD0,0x3A,0xA9,0x80,0x85,0xAA,0xA6,0xBE,0xCA,0x30,0x02,0x86,0xBE,
|
||||
0xC6,0xA7,0xF0,0x08,0xA5,0x9E,0xD0,0x27,0x85,0xBE,0xF0,0x23,0x20,0xCF,0xFC,0x20,
|
||||
0xD2,0xFB,0xA0,0x00,0x84,0xAB,0xB1,0xAC,0x45,0xAB,0x85,0xAB,0x20,0x1B,0xFD,0x20,
|
||||
0x11,0xFD,0x90,0xF2,0xA5,0xAB,0x45,0xBD,0xF0,0x05,0xA9,0x20,0x20,0x6A,0xFE,0x4C,
|
||||
0x56,0xFF,0xA5,0xC2,0x85,0xAD,0xA5,0xC1,0x85,0xAC,0x60,0xA9,0x08,0x85,0xA3,0xA9,
|
||||
0x00,0x85,0xA4,0x85,0xA8,0x85,0x9B,0x85,0xA9,0x60,0xA5,0xBD,0x4A,0xA9,0x60,0x90,
|
||||
0x02,0xA9,0xB0,0xA2,0x00,0x8D,0x28,0x91,0x8E,0x29,0x91,0xAD,0x20,0x91,0x49,0x08,
|
||||
0x8D,0x20,0x91,0x29,0x08,0x60,0x38,0x66,0xAD,0x30,0x3C,0xA5,0xA8,0xD0,0x12,0xA9,
|
||||
0x10,0xA2,0x01,0x20,0xF5,0xFB,0xD0,0x2F,0xE6,0xA8,0xA5,0xAD,0x10,0x29,0x4C,0x95,
|
||||
0xFC,0xA5,0xA9,0xD0,0x09,0x20,0xF1,0xFB,0xD0,0x1D,0xE6,0xA9,0xD0,0x19,0x20,0xEA,
|
||||
0xFB,0xD0,0x14,0xA5,0xA4,0x49,0x01,0x85,0xA4,0xF0,0x0F,0xA5,0xBD,0x49,0x01,0x85,
|
||||
0xBD,0x29,0x01,0x45,0x9B,0x85,0x9B,0x4C,0x56,0xFF,0x46,0xBD,0xC6,0xA3,0xA5,0xA3,
|
||||
0xF0,0x3A,0x10,0xF3,0x20,0xDB,0xFB,0x58,0xA5,0xA5,0xF0,0x12,0xA2,0x00,0x86,0xD7,
|
||||
0xC6,0xA5,0xA6,0xBE,0xE0,0x02,0xD0,0x02,0x09,0x80,0x85,0xBD,0xD0,0xD9,0x20,0x11,
|
||||
0xFD,0x90,0x0A,0xD0,0x91,0xE6,0xAD,0xA5,0xD7,0x85,0xBD,0xB0,0xCA,0xA0,0x00,0xB1,
|
||||
0xAC,0x85,0xBD,0x45,0xD7,0x85,0xD7,0x20,0x1B,0xFD,0xD0,0xBB,0xA5,0x9B,0x49,0x01,
|
||||
0x85,0xBD,0x4C,0x56,0xFF,0xC6,0xBE,0xD0,0x03,0x20,0x08,0xFD,0xA9,0x50,0x85,0xA7,
|
||||
0xA2,0x08,0x78,0x20,0xFB,0xFC,0xD0,0xEA,0xA9,0x78,0x20,0xF3,0xFB,0xD0,0xE3,0xC6,
|
||||
0xA7,0xD0,0xDF,0x20,0xDB,0xFB,0xC6,0xAB,0x10,0xD8,0xA2,0x0A,0x20,0xFB,0xFC,0x58,
|
||||
0xE6,0xAB,0xA5,0xBE,0xF0,0x30,0x20,0xD2,0xFB,0xA2,0x09,0x86,0xA5,0xD0,0x85,0x08,
|
||||
0x78,0x20,0x08,0xFD,0xA9,0x7F,0x8D,0x2E,0x91,0xA9,0xF7,0x8D,0x20,0x91,0xA9,0x40,
|
||||
0x8D,0x2B,0x91,0x20,0x39,0xFE,0xAD,0xA0,0x02,0xF0,0x09,0x8D,0x15,0x03,0xAD,0x9F,
|
||||
0x02,0x8D,0x14,0x03,0x28,0x60,0x20,0xCF,0xFC,0xF0,0x97,0xBD,0xE9,0xFD,0x8D,0x14,
|
||||
0x03,0xBD,0xEA,0xFD,0x8D,0x15,0x03,0x60,0xAD,0x1C,0x91,0x09,0x0E,0x8D,0x1C,0x91,
|
||||
0x60,0x38,0xA5,0xAC,0xE5,0xAE,0xA5,0xAD,0xE5,0xAF,0x60,0xE6,0xAC,0xD0,0x02,0xE6,
|
||||
0xAD,0x60,0xA2,0xFF,0x78,0x9A,0xD8,0x20,0x3F,0xFD,0xD0,0x03,0x6C,0x00,0xA0,0x20,
|
||||
0x8D,0xFD,0x20,0x52,0xFD,0x20,0xF9,0xFD,0x20,0x18,0xE5,0x58,0x6C,0x00,0xC0,0xA2,
|
||||
0x05,0xBD,0x4C,0xFD,0xDD,0x03,0xA0,0xD0,0x03,0xCA,0xD0,0xF5,0x60,0x41,0x30,0xC3,
|
||||
0xC2,0xCD,0xA2,0x6D,0xA0,0xFD,0x18,0x86,0xC3,0x84,0xC4,0xA0,0x1F,0xB9,0x14,0x03,
|
||||
0xB0,0x02,0xB1,0xC3,0x91,0xC3,0x99,0x14,0x03,0x88,0x10,0xF1,0x60,0xBF,0xEA,0xD2,
|
||||
0xFE,0xAD,0xFE,0x0A,0xF4,0x4A,0xF3,0xC7,0xF2,0x09,0xF3,0xF3,0xF3,0x0E,0xF2,0x7A,
|
||||
0xF2,0x70,0xF7,0xF5,0xF1,0xEF,0xF3,0xD2,0xFE,0x49,0xF5,0x85,0xF6,0xA9,0x00,0xAA,
|
||||
0x95,0x00,0x9D,0x00,0x02,0x9D,0x00,0x03,0xE8,0xD0,0xF5,0xA2,0x3C,0xA0,0x03,0x86,
|
||||
0xB2,0x84,0xB3,0x85,0xC1,0x85,0x97,0x8D,0x81,0x02,0xA8,0xA9,0x04,0x85,0xC2,0xE6,
|
||||
0xC1,0xD0,0x02,0xE6,0xC2,0x20,0x91,0xFE,0xA5,0x97,0xF0,0x22,0xB0,0xF1,0xA4,0xC2,
|
||||
0xA6,0xC1,0xC0,0x20,0x90,0x25,0xC0,0x21,0xB0,0x08,0xA0,0x1E,0x8C,0x88,0x02,0x4C,
|
||||
0x7B,0xFE,0xA9,0x12,0x8D,0x82,0x02,0xA9,0x10,0x8D,0x88,0x02,0xD0,0xF1,0x90,0xCF,
|
||||
0xA5,0xC2,0x8D,0x82,0x02,0x85,0x97,0xC9,0x11,0x90,0xC4,0x20,0xC3,0xE5,0x4C,0xEB,
|
||||
0xFD,0xA8,0xFC,0x0B,0xFC,0xBF,0xEA,0x8E,0xF9,0xA9,0x7F,0x8D,0x1E,0x91,0x8D,0x2E,
|
||||
0x91,0xA9,0x40,0x8D,0x2B,0x91,0xA9,0x40,0x8D,0x1B,0x91,0xA9,0xFE,0x8D,0x1C,0x91,
|
||||
0xA9,0xDE,0x8D,0x2C,0x91,0xA2,0x00,0x8E,0x12,0x91,0xA2,0xFF,0x8E,0x22,0x91,0xA2,
|
||||
0x00,0x8E,0x23,0x91,0xA2,0x80,0x8E,0x13,0x91,0xA2,0x00,0x8E,0x1F,0x91,0x20,0x84,
|
||||
0xEF,0xA9,0x82,0x8D,0x1E,0x91,0x20,0x8D,0xEF,0xA9,0xC0,0x8D,0x2E,0x91,0xA9,0x26,
|
||||
0x8D,0x24,0x91,0xA9,0x48,0x8D,0x25,0x91,0x60,0x85,0xB7,0x86,0xBB,0x84,0xBC,0x60,
|
||||
0x85,0xB8,0x86,0xBA,0x84,0xB9,0x60,0xA5,0xBA,0xC9,0x02,0xD0,0x0B,0xAD,0x97,0x02,
|
||||
0xA9,0x00,0x8D,0x97,0x02,0x60,0x85,0x9D,0xA5,0x90,0x05,0x90,0x85,0x90,0x60,0x8D,
|
||||
0x85,0x02,0x60,0x90,0x06,0xAE,0x83,0x02,0xAC,0x84,0x02,0x8E,0x83,0x02,0x8C,0x84,
|
||||
0x02,0x60,0x90,0x06,0xAE,0x81,0x02,0xAC,0x82,0x02,0x8E,0x81,0x02,0x8C,0x82,0x02,
|
||||
0x60,0xB1,0xC1,0xAA,0xA9,0x55,0x91,0xC1,0xD1,0xC1,0xD0,0x08,0x6A,0x91,0xC1,0xD1,
|
||||
0xC1,0xD0,0x01,0xA9,0x18,0x8A,0x91,0xC1,0x60,0x78,0x6C,0x18,0x03,0x48,0x8A,0x48,
|
||||
0x98,0x48,0xAD,0x1D,0x91,0x10,0x48,0x2D,0x1E,0x91,0xAA,0x29,0x02,0xF0,0x1F,0x20,
|
||||
0x3F,0xFD,0xD0,0x03,0x6C,0x02,0xA0,0x2C,0x11,0x91,0x20,0x34,0xF7,0x20,0xE1,0xFF,
|
||||
0xD0,0x2D,0x20,0x52,0xFD,0x20,0xF9,0xFD,0x20,0x18,0xE5,0x6C,0x02,0xC0,0xAD,0x1E,
|
||||
0x91,0x09,0x80,0x48,0xA9,0x7F,0x8D,0x1E,0x91,0x8A,0x29,0x40,0xF0,0x14,0xA9,0xCE,
|
||||
0x05,0xB5,0x8D,0x1C,0x91,0xAD,0x14,0x91,0x68,0x8D,0x1E,0x91,0x20,0xA3,0xEF,0x4C,
|
||||
0x56,0xFF,0x8A,0x29,0x20,0xF0,0x25,0xAD,0x10,0x91,0x29,0x01,0x85,0xA7,0xAD,0x18,
|
||||
0x91,0xE9,0x16,0x6D,0x99,0x02,0x8D,0x18,0x91,0xAD,0x19,0x91,0x6D,0x9A,0x02,0x8D,
|
||||
0x19,0x91,0x68,0x8D,0x1E,0x91,0x20,0x36,0xF0,0x4C,0x56,0xFF,0x8A,0x29,0x10,0xF0,
|
||||
0x25,0xAD,0x93,0x02,0x29,0x0F,0xD0,0x00,0x0A,0xAA,0xBD,0x5A,0xFF,0x8D,0x18,0x91,
|
||||
0xBD,0x5B,0xFF,0x8D,0x19,0x91,0xAD,0x10,0x91,0x68,0x09,0x20,0x29,0xEF,0x8D,0x1E,
|
||||
0x91,0xAE,0x98,0x02,0x86,0xA8,0x68,0xA8,0x68,0xAA,0x68,0x40,0xE6,0x2A,0x78,0x1C,
|
||||
0x49,0x13,0xB1,0x0F,0x0A,0x0E,0xD3,0x06,0x38,0x03,0x6A,0x01,0xD0,0x00,0x83,0x00,
|
||||
0x36,0x00,0x48,0x8A,0x48,0x98,0x48,0xBA,0xBD,0x04,0x01,0x29,0x10,0xF0,0x03,0x6C,
|
||||
0x16,0x03,0x6C,0x14,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0x4C,0x52,0xFD,0x4C,0x57,0xFD,
|
||||
0x4C,0x66,0xFE,0x4C,0xC0,0xEE,0x4C,0xCE,0xEE,0x4C,0x73,0xFE,0x4C,0x82,0xFE,0x4C,
|
||||
0x1E,0xEB,0x4C,0x6F,0xFE,0x4C,0x19,0xEF,0x4C,0xE4,0xEE,0x4C,0xF6,0xEE,0x4C,0x04,
|
||||
0xEF,0x4C,0x17,0xEE,0x4C,0x14,0xEE,0x4C,0x57,0xFE,0x4C,0x50,0xFE,0x4C,0x49,0xFE,
|
||||
0x6C,0x1A,0x03,0x6C,0x1C,0x03,0x6C,0x1E,0x03,0x6C,0x20,0x03,0x6C,0x22,0x03,0x6C,
|
||||
0x24,0x03,0x6C,0x26,0x03,0x4C,0x42,0xF5,0x4C,0x75,0xF6,0x4C,0x67,0xF7,0x4C,0x60,
|
||||
0xF7,0x6C,0x28,0x03,0x6C,0x2A,0x03,0x6C,0x2C,0x03,0x4C,0x34,0xF7,0x4C,0x05,0xE5,
|
||||
0x4C,0x0A,0xE5,0x4C,0x00,0xE5,0xFF,0xFF,0xFF,0xFF,0xA9,0xFE,0x22,0xFD,0x72,0xFF,
|
||||
};
|
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,192 @@
|
|||
#ifndef _H_MOS6502
|
||||
#define _H_MOS6502
|
||||
|
||||
//============================================================================
|
||||
// Name : mos6502
|
||||
// Author : Gianluca Ghettini
|
||||
// Version : 1.0
|
||||
// Copyright :
|
||||
// Description : A MOS 6502 CPU emulator written in C++
|
||||
//============================================================================
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define NEGATIVE 0x80
|
||||
#define OVERFLOW 0x40
|
||||
#define CONSTANT 0x20
|
||||
#define BREAK 0x10
|
||||
#define DECIMAL 0x08
|
||||
#define INTERRUPT 0x04
|
||||
#define ZERO 0x02
|
||||
#define CARRY 0x01
|
||||
|
||||
#define SET_NEGATIVE(x) (x ? (status |= NEGATIVE) : (status &= (~NEGATIVE)) )
|
||||
#define SET_OVERFLOW(x) (x ? (status |= OVERFLOW) : (status &= (~OVERFLOW)) )
|
||||
#define SET_CONSTANT(x) (x ? (status |= CONSTANT) : (status &= (~CONSTANT)) )
|
||||
#define SET_BREAK(x) (x ? (status |= BREAK) : (status &= (~BREAK)) )
|
||||
#define SET_DECIMAL(x) (x ? (status |= DECIMAL) : (status &= (~DECIMAL)) )
|
||||
#define SET_INTERRUPT(x) (x ? (status |= INTERRUPT) : (status &= (~INTERRUPT)) )
|
||||
#define SET_ZERO(x) (x ? (status |= ZERO) : (status &= (~ZERO)) )
|
||||
#define SET_CARRY(x) (x ? (status |= CARRY) : (status &= (~CARRY)) )
|
||||
|
||||
#define IF_NEGATIVE() ((status & NEGATIVE) ? true : false)
|
||||
#define IF_OVERFLOW() ((status & OVERFLOW) ? true : false)
|
||||
#define IF_CONSTANT() ((status & CONSTANT) ? true : false)
|
||||
#define IF_BREAK() ((status & BREAK) ? true : false)
|
||||
#define IF_DECIMAL() ((status & DECIMAL) ? true : false)
|
||||
#define IF_INTERRUPT() ((status & INTERRUPT) ? true : false)
|
||||
#define IF_ZERO() ((status & ZERO) ? true : false)
|
||||
#define IF_CARRY() ((status & CARRY) ? true : false)
|
||||
|
||||
|
||||
|
||||
class mos6502
|
||||
{
|
||||
private:
|
||||
// registers
|
||||
uint8_t A; // accumulator
|
||||
uint8_t X; // X-index
|
||||
uint8_t Y; // Y-index
|
||||
|
||||
// stack pointer
|
||||
uint8_t sp;
|
||||
|
||||
// program counter
|
||||
uint16_t pc;
|
||||
|
||||
// status register
|
||||
uint8_t status;
|
||||
|
||||
typedef void (mos6502::*CodeExec)(uint16_t);
|
||||
typedef uint16_t (mos6502::*AddrExec)();
|
||||
|
||||
struct Instr
|
||||
{
|
||||
AddrExec addr;
|
||||
CodeExec code;
|
||||
uint8_t cycles;
|
||||
};
|
||||
|
||||
Instr InstrTable[256];
|
||||
|
||||
void Exec(Instr i);
|
||||
|
||||
bool illegalOpcode;
|
||||
|
||||
// addressing modes
|
||||
uint16_t Addr_ACC(); // ACCUMULATOR
|
||||
uint16_t Addr_IMM(); // IMMEDIATE
|
||||
uint16_t Addr_ABS(); // ABSOLUTE
|
||||
uint16_t Addr_ZER(); // ZERO PAGE
|
||||
uint16_t Addr_ZEX(); // INDEXED-X ZERO PAGE
|
||||
uint16_t Addr_ZEY(); // INDEXED-Y ZERO PAGE
|
||||
uint16_t Addr_ABX(); // INDEXED-X ABSOLUTE
|
||||
uint16_t Addr_ABY(); // INDEXED-Y ABSOLUTE
|
||||
uint16_t Addr_IMP(); // IMPLIED
|
||||
uint16_t Addr_REL(); // RELATIVE
|
||||
uint16_t Addr_INX(); // INDEXED-X INDIRECT
|
||||
uint16_t Addr_INY(); // INDEXED-Y INDIRECT
|
||||
uint16_t Addr_ABI(); // ABSOLUTE INDIRECT
|
||||
|
||||
// opcodes (grouped as per datasheet)
|
||||
void Op_ADC(uint16_t src);
|
||||
void Op_AND(uint16_t src);
|
||||
void Op_ASL(uint16_t src); void Op_ASL_ACC(uint16_t src);
|
||||
void Op_BCC(uint16_t src);
|
||||
void Op_BCS(uint16_t src);
|
||||
|
||||
void Op_BEQ(uint16_t src);
|
||||
void Op_BIT(uint16_t src);
|
||||
void Op_BMI(uint16_t src);
|
||||
void Op_BNE(uint16_t src);
|
||||
void Op_BPL(uint16_t src);
|
||||
|
||||
void Op_BRK(uint16_t src);
|
||||
void Op_BVC(uint16_t src);
|
||||
void Op_BVS(uint16_t src);
|
||||
void Op_CLC(uint16_t src);
|
||||
void Op_CLD(uint16_t src);
|
||||
|
||||
void Op_CLI(uint16_t src);
|
||||
void Op_CLV(uint16_t src);
|
||||
void Op_CMP(uint16_t src);
|
||||
void Op_CPX(uint16_t src);
|
||||
void Op_CPY(uint16_t src);
|
||||
|
||||
void Op_DEC(uint16_t src);
|
||||
void Op_DEX(uint16_t src);
|
||||
void Op_DEY(uint16_t src);
|
||||
void Op_EOR(uint16_t src);
|
||||
void Op_INC(uint16_t src);
|
||||
|
||||
void Op_INX(uint16_t src);
|
||||
void Op_INY(uint16_t src);
|
||||
void Op_JMP(uint16_t src);
|
||||
void Op_JSR(uint16_t src);
|
||||
void Op_LDA(uint16_t src);
|
||||
|
||||
void Op_LDX(uint16_t src);
|
||||
void Op_LDY(uint16_t src);
|
||||
void Op_LSR(uint16_t src); void Op_LSR_ACC(uint16_t src);
|
||||
void Op_NOP(uint16_t src);
|
||||
void Op_ORA(uint16_t src);
|
||||
|
||||
void Op_PHA(uint16_t src);
|
||||
void Op_PHP(uint16_t src);
|
||||
void Op_PLA(uint16_t src);
|
||||
void Op_PLP(uint16_t src);
|
||||
void Op_ROL(uint16_t src); void Op_ROL_ACC(uint16_t src);
|
||||
|
||||
void Op_ROR(uint16_t src); void Op_ROR_ACC(uint16_t src);
|
||||
void Op_RTI(uint16_t src);
|
||||
void Op_RTS(uint16_t src);
|
||||
void Op_SBC(uint16_t src);
|
||||
void Op_SEC(uint16_t src);
|
||||
void Op_SED(uint16_t src);
|
||||
|
||||
void Op_SEI(uint16_t src);
|
||||
void Op_STA(uint16_t src);
|
||||
void Op_STX(uint16_t src);
|
||||
void Op_STY(uint16_t src);
|
||||
void Op_TAX(uint16_t src);
|
||||
|
||||
void Op_TAY(uint16_t src);
|
||||
void Op_TSX(uint16_t src);
|
||||
void Op_TXA(uint16_t src);
|
||||
void Op_TXS(uint16_t src);
|
||||
void Op_TYA(uint16_t src);
|
||||
|
||||
void Op_ILLEGAL(uint16_t src);
|
||||
|
||||
// IRQ, reset, NMI vectors
|
||||
static const uint16_t irqVectorH = 0xFFFF;
|
||||
static const uint16_t irqVectorL = 0xFFFE;
|
||||
static const uint16_t rstVectorH = 0xFFFD;
|
||||
static const uint16_t rstVectorL = 0xFFFC;
|
||||
static const uint16_t nmiVectorH = 0xFFFB;
|
||||
static const uint16_t nmiVectorL = 0xFFFA;
|
||||
|
||||
// read/write callbacks
|
||||
//typedef void (*BusWrite)(uint16_t, uint8_t);
|
||||
//typedef uint8_t (*BusRead)(uint16_t);
|
||||
//BusRead Read;
|
||||
//BusWrite Write;
|
||||
|
||||
// stack operations
|
||||
inline void StackPush(uint8_t byte);
|
||||
inline uint8_t StackPop();
|
||||
|
||||
public:
|
||||
enum CycleMethod {
|
||||
INST_COUNT,
|
||||
CYCLE_COUNT,
|
||||
};
|
||||
mos6502();
|
||||
void NMI();
|
||||
int IRQ();
|
||||
void Reset();
|
||||
uint64_t Run(
|
||||
int32_t cycles,
|
||||
CycleMethod cycleMethod = CYCLE_COUNT);
|
||||
};
|
||||
#endif
|
|
@ -0,0 +1,39 @@
|
|||
#ifndef _PLATFORM_CONFIG_H_
|
||||
#define _PLATFORM_CONFIG_H_
|
||||
|
||||
#define TEECOMPUTER 1
|
||||
|
||||
#ifdef TEECOMPUTER
|
||||
//#define ILI9341 1
|
||||
//#define ST7789 1
|
||||
//#define TFTSPI1 1
|
||||
#define HAS_T4_VGA 1
|
||||
#define HAS_SND 1
|
||||
#define HAS_USBKEY 1
|
||||
#define INVX 1
|
||||
#else
|
||||
|
||||
#define HAS_T4_VGA 1
|
||||
//#define INVX 1
|
||||
#define INVY 1
|
||||
#define HAS_SND 1
|
||||
#define HAS_USBKEY 1
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
//#define ILI9341 1
|
||||
//#define ST7789 1
|
||||
//#define SWAP_JOYSTICK 1
|
||||
//#define LOHRES 1
|
||||
//#define ROTATE_SCREEN 1
|
||||
//#define EXTERNAL_SD 1
|
||||
|
||||
|
||||
//#define USE_SDFAT 1
|
||||
//#define SD_FAT_TYPE 1
|
||||
//#define USE_SDFS 1
|
||||
//#define SDFSDEV "1:"
|
||||
|
||||
|
||||
#endif
|
|
@ -0,0 +1,204 @@
|
|||
extern "C" {
|
||||
#include "emuapi.h"
|
||||
#include "iopins.h"
|
||||
}
|
||||
|
||||
#include "v20.h"
|
||||
|
||||
#ifdef HAS_T4_VGA
|
||||
#include "vga_t_dma.h"
|
||||
TFT_T_DMA tft;
|
||||
#else
|
||||
#include "tft_t_dma.h"
|
||||
TFT_T_DMA tft = TFT_T_DMA(TFT_CS, TFT_DC, TFT_RST, TFT_MOSI, TFT_SCLK, TFT_MISO, TFT_TOUCH_CS, TFT_TOUCH_INT);
|
||||
#endif
|
||||
|
||||
bool vgaMode = false;
|
||||
|
||||
static unsigned char palette8[PALETTE_SIZE];
|
||||
static unsigned short palette16[PALETTE_SIZE];
|
||||
static IntervalTimer myTimer;
|
||||
volatile boolean vbl=true;
|
||||
static int skip=0;
|
||||
static elapsedMicros tius;
|
||||
|
||||
static void vblCount() {
|
||||
if (vbl) {
|
||||
vbl = false;
|
||||
} else {
|
||||
vbl = true;
|
||||
}
|
||||
}
|
||||
|
||||
void emu_SetPaletteEntry(unsigned char r, unsigned char g, unsigned char b, int index)
|
||||
{
|
||||
if (index<PALETTE_SIZE) {
|
||||
//Serial.println("%d: %d %d %d\n", index, r,g,b);
|
||||
palette8[index] = RGBVAL8(r,g,b);
|
||||
palette16[index] = RGBVAL16(r,g,b);
|
||||
}
|
||||
}
|
||||
|
||||
void emu_DrawVsync(void)
|
||||
{
|
||||
volatile boolean vb=vbl;
|
||||
skip += 1;
|
||||
skip &= VID_FRAME_SKIP;
|
||||
if (!vgaMode) {
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.waitSync();
|
||||
#else
|
||||
while (vbl==vb) {};
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void emu_DrawLine(unsigned char * VBuf, int width, int height, int line)
|
||||
{
|
||||
if (!vgaMode) {
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.writeLine(width,1,line, VBuf, palette8);
|
||||
#else
|
||||
tft.writeLine(width,1,line, VBuf, palette16);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void emu_DrawLine8(unsigned char * VBuf, int width, int height, int line)
|
||||
{
|
||||
if (!vgaMode) {
|
||||
if (skip==0) {
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.writeLine(width,height,line, VBuf);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void emu_DrawLine16(unsigned short * VBuf, int width, int height, int line)
|
||||
{
|
||||
if (!vgaMode) {
|
||||
if (skip==0) {
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.writeLine16(width,height,line, VBuf);
|
||||
#else
|
||||
tft.writeLine(width,height,line, VBuf);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void emu_DrawScreen(unsigned char * VBuf, int width, int height, int stride)
|
||||
{
|
||||
if (!vgaMode) {
|
||||
if (skip==0) {
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.writeScreen(width,height-TFT_VBUFFER_YCROP,stride, VBuf+(TFT_VBUFFER_YCROP/2)*stride, palette8);
|
||||
#else
|
||||
tft.writeScreen(width,height-TFT_VBUFFER_YCROP,stride, VBuf+(TFT_VBUFFER_YCROP/2)*stride, palette16);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int emu_FrameSkip(void)
|
||||
{
|
||||
return skip;
|
||||
}
|
||||
|
||||
void * emu_LineBuffer(int line)
|
||||
{
|
||||
if (!vgaMode) {
|
||||
return (void*)tft.getLineBuffer(line);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ****************************************************
|
||||
// the setup() method runs once, when the sketch starts
|
||||
// ****************************************************
|
||||
void setup() {
|
||||
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.begin(VGA_MODE_320x240);
|
||||
// NVIC_SET_PRIORITY(IRQ_QTIMER3, 0);
|
||||
#else
|
||||
tft.begin();
|
||||
#endif
|
||||
|
||||
emu_init();
|
||||
}
|
||||
|
||||
|
||||
// ****************************************************
|
||||
// the loop() method runs continuously
|
||||
// ****************************************************
|
||||
void loop(void)
|
||||
{
|
||||
if (menuActive()) {
|
||||
uint16_t bClick = emu_DebounceLocalKeys();
|
||||
int action = handleMenu(bClick);
|
||||
char * filename = menuSelection();
|
||||
if (action == ACTION_RUN1) {
|
||||
toggleMenu(false);
|
||||
vgaMode = false;
|
||||
emu_start();
|
||||
emu_Init(filename);
|
||||
tft.fillScreenNoDma( RGBVAL16(0x00,0x00,0x00) );
|
||||
tft.startDMA();
|
||||
myTimer.begin(vblCount, 20000); //to run every 20ms
|
||||
}
|
||||
delay(20);
|
||||
}
|
||||
else {
|
||||
uint16_t bClick = emu_DebounceLocalKeys();
|
||||
emu_Input(bClick);
|
||||
emu_Step();
|
||||
delay(10);
|
||||
//uint16_t bClick = emu_DebounceLocalKeys();
|
||||
//if (bClick & MASK_KEY_USER1) {
|
||||
// emu_Input(bClick);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAS_SND
|
||||
|
||||
#include "AudioPlaySystem.h"
|
||||
|
||||
AudioPlaySystem mymixer;
|
||||
|
||||
|
||||
void emu_sndInit() {
|
||||
Serial.println("sound init");
|
||||
#ifdef HAS_T4_VGA
|
||||
tft.begin_audio(256, mymixer.snd_Mixer);
|
||||
#else
|
||||
mymixer.begin_audio(256, mymixer.snd_Mixer);
|
||||
#endif
|
||||
// sgtl5000_1.enable();
|
||||
// sgtl5000_1.volume(0.6);
|
||||
mymixer.start();
|
||||
}
|
||||
|
||||
void emu_sndPlaySound(int chan, int volume, int freq)
|
||||
{
|
||||
if (chan < 6) {
|
||||
mymixer.sound(chan, freq, volume);
|
||||
}
|
||||
/*
|
||||
Serial.print(chan);
|
||||
Serial.print(":" );
|
||||
Serial.print(volume);
|
||||
Serial.print(":" );
|
||||
Serial.println(freq);
|
||||
*/
|
||||
}
|
||||
|
||||
void emu_sndPlayBuzz(int size, int val) {
|
||||
mymixer.buzz(size,val);
|
||||
//Serial.print((val==1)?1:0);
|
||||
//Serial.print(":");
|
||||
//Serial.println(size);
|
||||
}
|
||||
#endif
|
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,234 @@
|
|||
/*
|
||||
Based on C64 ILI9341 dma driver from Frank Bösing, 2017
|
||||
*/
|
||||
|
||||
#ifndef _TFT_T_DMAH_
|
||||
#define _TFT_T_DMAH_
|
||||
|
||||
#ifdef __cplusplus
|
||||
#include <Arduino.h>
|
||||
#include <SPI.h>
|
||||
#include <DMAChannel.h>
|
||||
#endif
|
||||
|
||||
#include "tft_t_dma_config.h"
|
||||
|
||||
#define RGBVAL32(r,g,b) ( (r<<16) | (g<<8) | b )
|
||||
#define RGBVAL16(r,g,b) ( (((r>>3)&0x1f)<<11) | (((g>>2)&0x3f)<<5) | (((b>>3)&0x1f)<<0) )
|
||||
#define RGBVAL8(r,g,b) ( (((r>>5)&0x07)<<5) | (((g>>5)&0x07)<<2) | (((b>>6)&0x3)<<0) )
|
||||
#define R16(rgb) ((rgb>>8)&0xf8)
|
||||
#define G16(rgb) ((rgb>>3)&0xfc)
|
||||
#define B16(rgb) ((rgb<<3)&0xf8)
|
||||
|
||||
#define PAL_COLOR_MASK 0xff
|
||||
|
||||
#ifdef LOHRES
|
||||
#define TFT_WIDTH 240
|
||||
#define TFT_REALWIDTH 240
|
||||
#else
|
||||
#define TFT_WIDTH 320
|
||||
#define TFT_REALWIDTH 320
|
||||
#endif
|
||||
#define TFT_HEIGHT 240
|
||||
#define TFT_REALHEIGHT 240
|
||||
|
||||
//#define WIDTH 272
|
||||
//#define HEIGHT 228
|
||||
|
||||
#define LINES_PER_BLOCK 64
|
||||
#define NR_OF_BLOCK 4
|
||||
#define SCREEN_DMA_NUM_SETTINGS NR_OF_BLOCK
|
||||
|
||||
|
||||
#ifdef ILI9341
|
||||
|
||||
#define ILI9341_NOP 0x00
|
||||
#define ILI9341_SWRESET 0x01
|
||||
#define ILI9341_RDDID 0x04
|
||||
#define ILI9341_RDDST 0x09
|
||||
|
||||
#define ILI9341_SLPIN 0x10
|
||||
#define ILI9341_SLPOUT 0x11
|
||||
#define ILI9341_PTLON 0x12
|
||||
#define ILI9341_NORON 0x13
|
||||
|
||||
#define ILI9341_RDMODE 0x0A
|
||||
#define ILI9341_RDMADCTL 0x0B
|
||||
#define ILI9341_RDPIXFMT 0x0C
|
||||
#define ILI9341_RDIMGFMT 0x0D
|
||||
#define ILI9341_RDSELFDIAG 0x0F
|
||||
|
||||
#define ILI9341_INVOFF 0x20
|
||||
#define ILI9341_INVON 0x21
|
||||
#define ILI9341_GAMMASET 0x26
|
||||
#define ILI9341_DISPOFF 0x28
|
||||
#define ILI9341_DISPON 0x29
|
||||
|
||||
#define ILI9341_CASET 0x2A
|
||||
#define ILI9341_PASET 0x2B
|
||||
#define ILI9341_RAMWR 0x2C
|
||||
#define ILI9341_RAMRD 0x2E
|
||||
|
||||
#define ILI9341_PTLAR 0x30
|
||||
#define ILI9341_MADCTL 0x36
|
||||
#define ILI9341_VSCRSADD 0x37
|
||||
#define ILI9341_PIXFMT 0x3A
|
||||
|
||||
#define ILI9341_FRMCTR1 0xB1
|
||||
#define ILI9341_FRMCTR2 0xB2
|
||||
#define ILI9341_FRMCTR3 0xB3
|
||||
#define ILI9341_INVCTR 0xB4
|
||||
#define ILI9341_DFUNCTR 0xB6
|
||||
|
||||
#define ILI9341_PWCTR1 0xC0
|
||||
#define ILI9341_PWCTR2 0xC1
|
||||
#define ILI9341_PWCTR3 0xC2
|
||||
#define ILI9341_PWCTR4 0xC3
|
||||
#define ILI9341_PWCTR5 0xC4
|
||||
#define ILI9341_VMCTR1 0xC5
|
||||
#define ILI9341_VMCTR2 0xC7
|
||||
|
||||
#define ILI9341_RDID1 0xDA
|
||||
#define ILI9341_RDID2 0xDB
|
||||
#define ILI9341_RDID3 0xDC
|
||||
#define ILI9341_RDID4 0xDD
|
||||
|
||||
#define ILI9341_GMCTRP1 0xE0
|
||||
#define ILI9341_GMCTRN1 0xE1
|
||||
|
||||
#define ILI9341_MADCTL_MY 0x80
|
||||
#define ILI9341_MADCTL_MX 0x40
|
||||
#define ILI9341_MADCTL_MV 0x20
|
||||
#define ILI9341_MADCTL_ML 0x10
|
||||
#define ILI9341_MADCTL_RGB 0x00
|
||||
#define ILI9341_MADCTL_BGR 0x08
|
||||
#define ILI9341_MADCTL_MH 0x04
|
||||
|
||||
#define TFT_CASET ILI9341_CASET
|
||||
#define TFT_PASET ILI9341_PASET
|
||||
#define TFT_RAMWR ILI9341_RAMWR
|
||||
#define TFT_MADCTL ILI9341_MADCTL
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef ST7789
|
||||
|
||||
#define ST7735_NOP 0x00
|
||||
#define ST7735_SWRESET 0x01
|
||||
#define ST7735_RDDID 0x04
|
||||
#define ST7735_RDDST 0x09
|
||||
|
||||
#define ST7735_SLPIN 0x10
|
||||
#define ST7735_SLPOUT 0x11
|
||||
#define ST7735_PTLON 0x12
|
||||
#define ST7735_NORON 0x13
|
||||
|
||||
#define ST7735_INVOFF 0x20
|
||||
#define ST7735_INVON 0x21
|
||||
#define ST7735_DISPOFF 0x28
|
||||
#define ST7735_DISPON 0x29
|
||||
#define ST7735_CASET 0x2A
|
||||
#define ST7735_RASET 0x2B
|
||||
#define ST7735_RAMWR 0x2C
|
||||
#define ST7735_RAMRD 0x2E
|
||||
|
||||
#define ST7735_PTLAR 0x30
|
||||
#define ST7735_COLMOD 0x3A
|
||||
#define ST7735_MADCTL 0x36
|
||||
|
||||
#define ST7735_FRMCTR1 0xB1
|
||||
#define ST7735_FRMCTR2 0xB2
|
||||
#define ST7735_FRMCTR3 0xB3
|
||||
#define ST7735_INVCTR 0xB4
|
||||
#define ST7735_DISSET5 0xB6
|
||||
|
||||
#define ST7735_PWCTR1 0xC0
|
||||
#define ST7735_PWCTR2 0xC1
|
||||
#define ST7735_PWCTR3 0xC2
|
||||
#define ST7735_PWCTR4 0xC3
|
||||
#define ST7735_PWCTR5 0xC4
|
||||
#define ST7735_VMCTR1 0xC5
|
||||
|
||||
#define ST7735_RDID1 0xDA
|
||||
#define ST7735_RDID2 0xDB
|
||||
#define ST7735_RDID3 0xDC
|
||||
#define ST7735_RDID4 0xDD
|
||||
|
||||
#define ST7735_PWCTR6 0xFC
|
||||
|
||||
#define ST7735_GMCTRP1 0xE0
|
||||
#define ST7735_GMCTRN1 0xE1
|
||||
|
||||
#define ST77XX_MADCTL_MY 0x80
|
||||
#define ST77XX_MADCTL_MX 0x40
|
||||
#define ST77XX_MADCTL_MV 0x20
|
||||
#define ST77XX_MADCTL_ML 0x10
|
||||
#define ST77XX_MADCTL_RGB 0x00
|
||||
#define ST77XX_MADCTL_BGR 0x08
|
||||
#define ST77XX_MADCTL_MH 0x04
|
||||
|
||||
#define TFT_CASET ST7735_CASET
|
||||
#define TFT_PASET ST7735_RASET
|
||||
#define TFT_RAMWR ST7735_RAMWR
|
||||
#define TFT_MADCTL ST7735_MADCTL
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
class TFT_T_DMA
|
||||
{
|
||||
public:
|
||||
TFT_T_DMA(uint8_t _CS, uint8_t _DC, uint8_t _RST = 255, uint8_t _MOSI=11, uint8_t _SCLK=13, uint8_t _MISO=12, uint8_t touch_cs=38, uint8_t touch_irq=37);
|
||||
|
||||
void setArea(uint16_t x1,uint16_t y1,uint16_t x2,uint16_t y2);
|
||||
void begin(void);
|
||||
void flipscreen(bool flip);
|
||||
boolean isflipped(void);
|
||||
void startDMA(void);
|
||||
void stopDMA();
|
||||
int get_frame_buffer_size(int *width, int *height);
|
||||
|
||||
// Touch screen functions
|
||||
#define TOUCH_ENABLED() ((_touch_cs != 255) && (_touch_irq != 255))
|
||||
bool isTouching(void) { return ((!TOUCH_ENABLED())?false:(digitalRead(_touch_irq) == LOW)); }
|
||||
void readRaw(uint16_t * oX, uint16_t * oY, uint16_t * oZ);
|
||||
void readCal(uint16_t * oX, uint16_t * oY, uint16_t * oZ);
|
||||
void callibrateTouch(uint16_t xMin,uint16_t yMin,uint16_t xMax,uint16_t yMax);
|
||||
|
||||
// NoDMA functions
|
||||
void writeScreenNoDma(const uint16_t *pcolors);
|
||||
void fillScreenNoDma(uint16_t color);
|
||||
void drawTextNoDma(int16_t x, int16_t y, const char * text, uint16_t fgcolor, uint16_t bgcolor, bool doublesize);
|
||||
void drawRectNoDma(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
|
||||
void drawSpriteNoDma(int16_t x, int16_t y, const uint16_t *bitmap);
|
||||
void drawSpriteNoDma(int16_t x, int16_t y, const uint16_t *bitmap, uint16_t croparx, uint16_t cropary, uint16_t croparw, uint16_t croparh);
|
||||
|
||||
// DMA functions
|
||||
uint16_t * getLineBuffer(int j);
|
||||
void writeScreen(int width, int height, int stride, uint8_t *buffer, uint16_t *palette16);
|
||||
void writeLine(int width, int height, int stride, uint8_t *buffer, uint16_t *palette16);
|
||||
void writeLine(int width, int height, int y, uint16_t *buf);
|
||||
void fillScreen(uint16_t color);
|
||||
void drawText(int16_t x, int16_t y, const char * text, uint16_t fgcolor, uint16_t bgcolor, bool doublesize);
|
||||
void drawRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
|
||||
void drawSprite(int16_t x, int16_t y, const uint16_t *bitmap);
|
||||
void drawSprite(int16_t x, int16_t y, const uint16_t *bitmap, uint16_t croparx, uint16_t cropary, uint16_t croparw, uint16_t croparh);
|
||||
|
||||
protected:
|
||||
uint8_t _rst, _cs, _dc;
|
||||
uint8_t _miso, _mosi, _sclk;
|
||||
uint8_t _touch_irq=255, _touch_cs=255;
|
||||
bool flipped=false;
|
||||
|
||||
void wait(void);
|
||||
void enableTouchIrq();
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
#include "platform_config.h"
|
||||
|
||||
//#define ST7789 1
|
||||
//#define ILI9341 1
|
||||
|
||||
#define TFT_LINEARINT 1
|
||||
#define LINEARINT_HACK 1
|
||||
|
||||
//#define FLIP_SCREEN 1
|
||||
//#define TFT_DEBUG 1
|
||||
#if defined(__IMXRT1052__) || defined(__IMXRT1062__)
|
||||
//#define TFT_STATICFB 1
|
||||
#endif
|
||||
|
|
@ -0,0 +1,459 @@
|
|||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
extern "C" {
|
||||
#include "emuapi.h"
|
||||
#include "platform_config.h"
|
||||
}
|
||||
#include <Arduino.h>
|
||||
|
||||
|
||||
// Vic 20 emulation includes
|
||||
#include "mos6502.h"
|
||||
#include "MOS6561.h"
|
||||
#include "MOS6522.h"
|
||||
#include "MOS6502Memory.h"
|
||||
#include "kernalromp.h"
|
||||
#include "charrom.h"
|
||||
#include "basicrom.h"
|
||||
|
||||
static mos6502 mos;
|
||||
static MOS6561 mos6561;
|
||||
static MOS6522 mos6522;
|
||||
uint8_t vicmemory[0x10000];;
|
||||
|
||||
|
||||
#define VIC20FREQBASE 65535
|
||||
|
||||
/* noise magic */
|
||||
#define NSHIFT(v, n) (((v)<<(n))|((((v)>>(23-(n)))^(v>>(18-(n))))&((1<<(n))-1)))
|
||||
#define NVALUE(v) (noiseLSB[v&0xff]|noiseMID[(v>>8)&0xff]|noiseMSB[(v>>16)&0xff])
|
||||
#define NSEED 0x7ffff8
|
||||
|
||||
/* Noise tables */
|
||||
#define NOISETABLESIZE 256
|
||||
static uint8_t noiseMSB[NOISETABLESIZE];
|
||||
static uint8_t noiseMID[NOISETABLESIZE];
|
||||
static uint8_t noiseLSB[NOISETABLESIZE];
|
||||
|
||||
/* needed data for one voice */
|
||||
typedef struct voice_s
|
||||
{
|
||||
/* counter value */
|
||||
int f;
|
||||
/* counter step / sample */
|
||||
int fs;
|
||||
/* noise shift register. Note! rv may be 0 to 15 shifts 'behind' the
|
||||
real noise shift register value. Remaining shifts are done when
|
||||
it is referenced */
|
||||
int rv;
|
||||
} voice_t;
|
||||
|
||||
/* needed data for SID */
|
||||
struct sound_s
|
||||
{
|
||||
/* number of voices */
|
||||
voice_t v[4];
|
||||
/* 4-bit volume value */
|
||||
uint8_t vol;
|
||||
/* internal constant used for sample rate dependent calculations */
|
||||
int speed1;
|
||||
};
|
||||
|
||||
static sound_s psid;
|
||||
|
||||
static void VIC_VOICE_HANDLE(int voice, int value, int shift)
|
||||
{
|
||||
int div = 255 - value;
|
||||
if (!div)
|
||||
div = 127;
|
||||
if (!(value & 0x80))
|
||||
psid.v[voice].fs = 0;
|
||||
else
|
||||
psid.v[voice].fs = psid.speed1*VIC20FREQBASE*(1 << shift)/div;
|
||||
};
|
||||
|
||||
|
||||
void SND_Process(void * stream, int len) {
|
||||
int o0, o1, o2, o3;
|
||||
|
||||
short * sndbuf = (short *)stream;
|
||||
for (int i = 0; i < len/2; i++)
|
||||
{
|
||||
/* addfptrs */
|
||||
psid.v[0].f += psid.v[0].fs;
|
||||
psid.v[1].f += psid.v[1].fs;
|
||||
psid.v[2].f += psid.v[2].fs;
|
||||
psid.v[3].f += psid.v[3].fs;
|
||||
/* noise */
|
||||
if (psid.v[3].f < psid.v[3].fs)
|
||||
psid.v[3].rv = NSHIFT(psid.v[3].rv, 16);
|
||||
/* voices */
|
||||
o0 = (psid.v[0].f & 0x80000000) >> 2;
|
||||
o1 = (psid.v[1].f & 0x80000000) >> 2;
|
||||
o2 = (psid.v[2].f & 0x80000000) >> 2;
|
||||
o3 = (int)NVALUE(NSHIFT(psid.v[3].rv, psid.v[3].f >> 28)) << 22;
|
||||
/* sample */
|
||||
uint16_t s = ((int)((o0+o1+o2+o3)>>20)-0x800)*psid.vol;
|
||||
*sndbuf++ =s;
|
||||
*sndbuf++ =s;
|
||||
}
|
||||
}
|
||||
|
||||
static char * strext(char * filepath) {
|
||||
int str_len = strlen(filepath);
|
||||
for (int i=0; i<str_len; i++) {
|
||||
if ( (filepath[i] == '.') && (i != (str_len-1) ) ) {
|
||||
return &filepath[i+1];
|
||||
}
|
||||
}
|
||||
return filepath;
|
||||
}
|
||||
|
||||
static void loadROM(char * filepath, uint16_t atMemoryLocation) {
|
||||
uint16_t loadAddress;
|
||||
uint16_t endAddress;
|
||||
int lSize = emu_FileSize(filepath);
|
||||
int f = emu_FileOpen(filepath,"r+b");
|
||||
char * ext = strext(filepath);
|
||||
if ( (ext[0] == 'p') || (ext[0] == 'P') ) {
|
||||
unsigned char buffer[2];
|
||||
emu_FileRead((char *)&buffer[0], 2,f);
|
||||
loadAddress = buffer[0] | buffer[1] << 8;
|
||||
endAddress = loadAddress + lSize-2;
|
||||
emu_FileRead((char *)&vicmemory[loadAddress], lSize-2, f);
|
||||
}
|
||||
else {
|
||||
switch (ext[0]) {
|
||||
case '2':
|
||||
loadAddress = 0x2000;
|
||||
break;
|
||||
case '4':
|
||||
loadAddress = 0x4000;
|
||||
break;
|
||||
case '6':
|
||||
loadAddress = 0x6000;
|
||||
break;
|
||||
case 'a':
|
||||
case 'A':
|
||||
loadAddress = 0xA000;
|
||||
break;
|
||||
}
|
||||
endAddress = loadAddress + lSize;
|
||||
emu_FileRead((char *)&vicmemory[loadAddress], lSize,f);
|
||||
}
|
||||
emu_FileClose(f);
|
||||
|
||||
// Set basic memory pointers
|
||||
silentWriteDWord(0x2B, loadAddress);
|
||||
silentWriteDWord(0x2D, loadAddress);
|
||||
silentWriteDWord(0x2F, endAddress);
|
||||
silentWriteDWord(0x31, endAddress);
|
||||
silentWriteDWord(0x33, endAddress);
|
||||
silentWriteDWord(0x37, 0xFFFF);
|
||||
silentWriteDWord(0xAE, endAddress);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*VIC-20 KEYBOARD MATRIX
|
||||
|
||||
In my implementation, n = 0xF7EF
|
||||
|
||||
(80 40 20 10 08 04 02 01)
|
||||
7f bf df ef f7 fb fd fe
|
||||
__
|
||||
01 fe 2 q CBM Space RunStop Control Lft_arr 1
|
||||
02 fd 4 e s z Shift_L a w 3
|
||||
04 fb 6 t f c x d r 5
|
||||
08 f7 8 u h b v g y 7
|
||||
10 ef 0 o k m n j i 9
|
||||
20 df - @ : . , l p +
|
||||
40 bf Home Up_arr = Shift_R / ; * GBP
|
||||
80 7f F7 F5 F3 F1 Down Right Return Del
|
||||
--
|
||||
*/
|
||||
|
||||
const uint32_t ascii2scan[] = {
|
||||
//0 1 2 3 4 5 6 7 8 9 A B C D E F
|
||||
0,0,0,0,0,0,0,0,0,0,0xfd7f,0,0,0,0,0, // return
|
||||
// 31:RUNSTOP
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xf7fe,
|
||||
//sp ! " # $ % & ' ( ) * + , - . /
|
||||
0xeffe ,0x1fefe,0x17ffe,0x1fe02,0x17ffd,0x1fefb,0x17ffb,0x1fef7,0x17ff7,0x1feef,0xfdbf ,0xfedf ,0xf7df ,0x7fDf ,0xefdf ,0xf7bf,
|
||||
//0 1 2 3 4 5 6 7 8 9 : ; < = > ?
|
||||
0x7fef ,0xfefe ,0x7ffe ,0xfefd ,0x7ffd ,0xfefb ,0x7ffb ,0xfef7 ,0x7ff7 ,0xfeef ,0xdfdf ,0xfbbf ,0x1f7df,0xdfbf ,0x1efdf,0x1f7bf,
|
||||
//@ A B C D E F G H I J K L M N O
|
||||
0xbfdf ,0xfbfd ,0xeff7 ,0xeffb ,0xfbfb ,0xbffd ,0xdffb ,0xfbf7 ,0xdff7 ,0xfdef ,0xfbef ,0xdfef ,0xfbdf ,0xefef ,0xf7ef ,0xbfef,
|
||||
//P Q R S T U V W X Y Z [ \ ] ^ _
|
||||
0xfddf ,0xbffe ,0xfdfb ,0xdffd ,0xbffb ,0xbff7 ,0xf7f7 ,0xfdfd ,0xf7fb ,0xfdf7 ,0xeffd ,0x1dfdf,0xffff ,0x1fbbf,0 ,0,
|
||||
//' a c c d e f g h i j k l m n o
|
||||
0 ,0xfbfd ,0xeff7 ,0xeffb ,0xfbfb ,0xbffd ,0xdffb ,0xfbf7 ,0xdff7 ,0xfdef ,0xfbef ,0xdfef ,0xfbdf ,0xefef ,0xf7ef ,0xbfef,
|
||||
//p q r s t u v w x y z { | } ~ DEL
|
||||
0xfddf ,0xbffe ,0xfdfb ,0xdffd ,0xbffb ,0xbff7 ,0xf7f7 ,0xfdfd ,0xf7fb ,0xfdf7 ,0xeffd ,0, 0 , 0, 0xfe7f ,0,
|
||||
// 129:f1 f2 f3 f4 f5 f6 f7 f8
|
||||
0,0xef7f,0x1ef7f,0xdf7f,0x1df7f,0xbf7f,0x1bf7f,0x7f7f,0x17f7f,0,0,0,0,0,0,0, // 128-143
|
||||
// 150:right left down up 157:left
|
||||
0,0,0,0,0,0, 0xfb7f,0x1fb7f,0xf77f,0x1f77f,0,0,0,0,0,0 // 144-159
|
||||
};
|
||||
|
||||
|
||||
static int ik; // joypad key
|
||||
static int pik=0;
|
||||
|
||||
static int ihk; // I2C keyboard key
|
||||
static int iusbhk;// USB keyboard key
|
||||
|
||||
void v20_Input(int bClick) {
|
||||
ik = emu_GetPad();
|
||||
ihk = emu_ReadI2CKeyboard();
|
||||
}
|
||||
|
||||
void emu_KeyboardOnDown(int keymodifer, int key) {
|
||||
int keyCode = -1; //INV_KEY;
|
||||
if ((key >=0xc0) && (key <=0xdf)) {
|
||||
keyCode = ((key-0xc0) & 0x1f) + 0x7f;
|
||||
}
|
||||
else {
|
||||
keyCode = key & 0x7f;
|
||||
}
|
||||
|
||||
//Serial.println(keyCode);
|
||||
|
||||
if (keyCode != -1) {
|
||||
iusbhk = keyCode;
|
||||
}
|
||||
}
|
||||
|
||||
void emu_KeyboardOnUp(int keymodifer, int key) {
|
||||
iusbhk = 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
uint8_t readWord( uint16_t location) {
|
||||
switch (location) {
|
||||
case 0x9111:
|
||||
case 0x911F:
|
||||
mos6522.joy1Input();
|
||||
break;
|
||||
case 0x9120:
|
||||
mos6522.joy2Input();
|
||||
break;
|
||||
case 0x9121:
|
||||
//case 0x912F:
|
||||
mos6522.keyboardInput();
|
||||
break;
|
||||
}
|
||||
return vicmemory[location];
|
||||
}
|
||||
|
||||
void writeWord( uint16_t location, uint8_t value){
|
||||
vicmemory[location] = value;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
void v20_Init(void)
|
||||
{
|
||||
|
||||
// Initialize emulation objects
|
||||
mos.Reset();
|
||||
mos6561.initialize();
|
||||
mos6522.setCpu(&mos);
|
||||
mos6522.initialize();
|
||||
|
||||
// clear memory
|
||||
for(int i=0; i<sizeof(vicmemory); i++) {
|
||||
vicmemory[i] = 0;
|
||||
}
|
||||
// load charrom
|
||||
for(int i=0; i<4096; i++) {
|
||||
vicmemory[0x8000+i] = charrom[i];
|
||||
}
|
||||
// load basic rom
|
||||
for(int i=0; i<8192; i++) {
|
||||
vicmemory[0xC000+i] = basicrom[i];
|
||||
}
|
||||
// load kernal rom
|
||||
for(int i=0; i<8192; i++) {
|
||||
vicmemory[0xE000+i] = kernalrom[i];
|
||||
}
|
||||
|
||||
#ifdef HAS_SND
|
||||
psid.speed1 = (1000000 << 8) / 22000;
|
||||
psid.v[3].rv = NSEED;
|
||||
for (int i = 0; i < NOISETABLESIZE; i++)
|
||||
{
|
||||
noiseLSB[i] = (((i>>(7-2))&0x04)|((i>>(4-1))&0x02)|((i>>(2-0))&0x01));
|
||||
noiseMID[i] = (((i>>(13-8-4))&0x10)|((i<<(3-(11-8)))&0x08));
|
||||
noiseMSB[i] = (((i<<(7-(22-16)))&0x80)|((i<<(6-(20-16)))&0x40)
|
||||
|((i<<(5-(16-16)))&0x20));
|
||||
}
|
||||
emu_sndInit();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void v20_Start(char * filename)
|
||||
{
|
||||
emu_printf("emu starting");
|
||||
|
||||
loadROM(filename,0);
|
||||
|
||||
// Reset cpu
|
||||
mos.Reset();
|
||||
// Execute boot sequence before doing much else
|
||||
mos.Run(20000);
|
||||
|
||||
emu_printf("emu started");
|
||||
}
|
||||
|
||||
void v20_Step(void)
|
||||
{
|
||||
do {
|
||||
// bind emulation to clock speed
|
||||
|
||||
// Cpu clock is four times less than 6561 clock
|
||||
//int cpuCycles = mos.executeInstruction();
|
||||
|
||||
uint64_t cpuCycles = mos.Run(1);
|
||||
mos6561.tick(1);
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
|
||||
/*
|
||||
uint64_t cpuCycles = mos.Run(mos6561.cyclesPerScanline);
|
||||
mos6561.tick(mos6561.cyclesPerScanline);
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
*/
|
||||
|
||||
/*
|
||||
// printf("cycles %d\n", cpuCycles);
|
||||
while (cpuCycles) {
|
||||
cpuCycles--;
|
||||
mos6522.tick();
|
||||
mos6522.tick();
|
||||
}
|
||||
*/
|
||||
|
||||
} while ((!mos6561.isFrameReady()));
|
||||
|
||||
// Swap buffers if frame ready
|
||||
if (mos6561.isFrameReady()) {
|
||||
mos6561.renderFrame();
|
||||
}
|
||||
|
||||
// Top basic
|
||||
// Unexpanded
|
||||
//vicmemory[55] = 0;
|
||||
//vicmemory[56] = 0x1E;
|
||||
// +3k
|
||||
//vicmemory[55] = 0;
|
||||
//vicmemory[56] = 0x1E;
|
||||
// +8k
|
||||
//vicmemory[55] = 0;
|
||||
//vicmemory[56] = 0x40;
|
||||
// +16k
|
||||
//vicmemory[55] = 0;
|
||||
//vicmemory[56] = 0x60;
|
||||
// +24k
|
||||
//vicmemory[55] = 0;
|
||||
//vicmemory[56] = 0x80;
|
||||
// Bottom basic ???
|
||||
//vicmemory[51] = 0;
|
||||
//vicmemory[52] = 0x1E;
|
||||
|
||||
emu_DrawVsync();
|
||||
|
||||
int hk=ihk;
|
||||
if (iusbhk) hk = iusbhk;
|
||||
|
||||
if (hk) {
|
||||
int scan = ascii2scan[hk];
|
||||
if (scan & 0x10000) mos6522.setShiftPressed(true);
|
||||
else mos6522.setShiftPressed(false);
|
||||
mos6522.setKeyPressed(scan & 0xffff);
|
||||
}
|
||||
else {
|
||||
mos6522.setShiftPressed(false);
|
||||
mos6522.setKeyPressed(0);
|
||||
}
|
||||
|
||||
|
||||
int k=ik;
|
||||
#ifdef TEECOMPUTER
|
||||
// Ignore joypad if shift/fn is pressed!!!
|
||||
if ( !(k & MASK_KEY_USER1) && !(k & MASK_KEY_USER2) )
|
||||
#endif
|
||||
{
|
||||
if ( !(pik & MASK_JOY2_BTN) && (k & MASK_JOY2_BTN) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Fire, true);
|
||||
}
|
||||
else if ( (pik & MASK_JOY2_BTN) && !(k & MASK_JOY2_BTN) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Fire, false);
|
||||
}
|
||||
if ( !(pik & MASK_JOY2_UP) && (k & MASK_JOY2_UP) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Up, true);
|
||||
}
|
||||
else if ( (pik & MASK_JOY2_UP) && !(k & MASK_JOY2_UP) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Up, false);
|
||||
}
|
||||
if ( !(pik & MASK_JOY2_DOWN) && (k & MASK_JOY2_DOWN) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Down, true);
|
||||
}
|
||||
else if ( (pik & MASK_JOY2_DOWN) && !(k & MASK_JOY2_DOWN) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Down, false);
|
||||
}
|
||||
if ( !(pik & MASK_JOY2_RIGHT) && (k & MASK_JOY2_RIGHT) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Left, true);
|
||||
}
|
||||
else if ( (pik & MASK_JOY2_RIGHT) && !(k & MASK_JOY2_RIGHT) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Left, false);
|
||||
}
|
||||
if ( !(pik & MASK_JOY2_LEFT) && (k & MASK_JOY2_LEFT) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Right, true);
|
||||
}
|
||||
else if ( (pik & MASK_JOY2_LEFT) && !(k & MASK_JOY2_LEFT) ) {
|
||||
mos6522.setJoyStickPressed(MOS6522::Vic20JoyStickButton::Right, false);
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef TEECOMPUTER
|
||||
if ( !(pik & MASK_KEY_USER1) && (k & MASK_KEY_USER1) ) {
|
||||
mos6522.setKeyPressed(0xEF7F);
|
||||
mos6522.setShiftPressed(true);
|
||||
}
|
||||
else if ( (pik & MASK_KEY_USER1) && !(k & MASK_KEY_USER1) ) {
|
||||
mos6522.setShiftPressed(false);
|
||||
mos6522.setKeyPressed(0);
|
||||
}
|
||||
|
||||
if ( !(pik & MASK_KEY_USER2) && (k & MASK_KEY_USER2) ) {
|
||||
mos6522.setShiftPressed(false);
|
||||
mos6522.setKeyPressed(ascii2scan['1']);
|
||||
}
|
||||
else if ( (pik & MASK_KEY_USER2) && !(k & MASK_KEY_USER2) ) {
|
||||
mos6522.setShiftPressed(false);
|
||||
mos6522.setKeyPressed(0);
|
||||
}
|
||||
#endif
|
||||
pik = k;
|
||||
|
||||
#ifdef HAS_SND
|
||||
VIC_VOICE_HANDLE(0, vicmemory[mos6561.Audio1Register], 0);
|
||||
VIC_VOICE_HANDLE(1, vicmemory[mos6561.Audio2Register], 1);
|
||||
VIC_VOICE_HANDLE(2, vicmemory[mos6561.Audio3Register], 2);
|
||||
VIC_VOICE_HANDLE(3, vicmemory[mos6561.Audio4Register], 0);
|
||||
int vol = (vicmemory[mos6561.AudioVolRegister] & 0x0f);
|
||||
psid.vol = vol;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
extern void v20_Init(void);
|
||||
extern void v20_Step(void);
|
||||
extern void v20_Start(char * filename);
|
||||
extern void v20_Input(int key);
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
/*
|
||||
Wrapping class to extend VGA_T4 to TFT_T_DMA
|
||||
*/
|
||||
|
||||
#ifndef _VGA_T_DMAH_
|
||||
#define _VGA_T_DMAH_
|
||||
|
||||
#ifdef __cplusplus
|
||||
#include <VGA_t4.h>
|
||||
#endif
|
||||
|
||||
|
||||
#define RGBVAL16(r,g,b) ( (((r>>5)&0x07)<<5) | (((g>>5)&0x07)<<2) | (((b>>6)&0x3)<<0) )
|
||||
#define RGBVAL8(r,g,b) ( (((r>>5)&0x07)<<5) | (((g>>5)&0x07)<<2) | (((b>>6)&0x3)<<0) )
|
||||
|
||||
|
||||
|
||||
|
||||
#define TFT_WIDTH 320
|
||||
#define TFT_REALWIDTH 320
|
||||
|
||||
#define TFT_HEIGHT 240
|
||||
#define TFT_REALHEIGHT 240
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
class TFT_T_DMA: public VGA_T4
|
||||
{
|
||||
public:
|
||||
// Fake touch screen functions
|
||||
bool isTouching(void) { return false; }
|
||||
void readRaw(uint16_t * oX, uint16_t * oY, uint16_t * oZ) { }
|
||||
void readCal(uint16_t * oX, uint16_t * oY, uint16_t * oZ) { };
|
||||
void callibrateTouch(uint16_t xMin,uint16_t yMin,uint16_t xMax,uint16_t yMax) { }
|
||||
|
||||
// fake DMA functions
|
||||
void startDMA(void) { };
|
||||
void stopDMA(void) { };
|
||||
|
||||
// fake no DMA functions
|
||||
void writeScreenNoDma(const vga_pixel *pcolors) { writeScreen(pcolors); }
|
||||
void fillScreenNoDma(vga_pixel color) { clear(color); }
|
||||
void drawTextNoDma(int16_t x, int16_t y, const char * text, vga_pixel fgcolor, vga_pixel bgcolor, bool doublesize) { drawText(x,y,text,fgcolor,bgcolor,doublesize); }
|
||||
void drawRectNoDma(int16_t x, int16_t y, int16_t w, int16_t h, vga_pixel color) { drawRect(x, y, w, h, color); }
|
||||
void drawSpriteNoDma(int16_t x, int16_t y, const uint16_t *bitmap) { drawSprite(x, y, bitmap); }
|
||||
void drawSpriteNoDma(int16_t x, int16_t y, const uint16_t *bitmap, uint16_t croparx, uint16_t cropary, uint16_t croparw, uint16_t croparh) { drawSprite(x, y, bitmap, croparx, cropary, croparw, croparh); }
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
#endif
|
|
@ -45,11 +45,36 @@ static void oneRasterLine(void) {
|
|||
|
||||
}
|
||||
|
||||
/*
|
||||
const uint32_t ascii2scanvic20[] = {
|
||||
//0 1 2 3 4 5 6 7 8 9 A B C D E F
|
||||
0,0,0,0,0,0,0,0,0,0,0xfd7f,0,0,0xfd7f,0,0, // return
|
||||
// 31:RUNSTOP
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xf7fe,
|
||||
//sp ! " # $ % & ' ( ) * + , - . /
|
||||
0xeffe ,0x1fefe,0x17ffe,0x1fe02,0x17ffd,0x1fefb,0x17ffb,0x1fef7,0x17ff7,0x1feef,0xfdbf ,0xfedf ,0xf7df ,0x7fDf ,0xefdf ,0xf7bf,
|
||||
//0 1 2 3 4 5 6 7 8 9 : ; < = > ?
|
||||
0x7fef ,0xfefe ,0x7ffe ,0xfefd ,0x7ffd ,0xfefb ,0x7ffb ,0xfef7 ,0x7ff7 ,0xfeef ,0xdfdf ,0xfbbf ,0x1f7df,0xdfbf ,0x1efdf,0x1f7bf,
|
||||
//@ A B C D E F G H I J K L M N O
|
||||
0xbfdf ,0xfbfd ,0xeff7 ,0xeffb ,0xfbfb ,0xbffd ,0xdffb ,0xfbf7 ,0xdff7 ,0xfdef ,0xfbef ,0xdfef ,0xfbdf ,0xefef ,0xf7ef ,0xbfef,
|
||||
//P Q R S T U V W X Y Z [ \ ] ^ _
|
||||
0xfddf ,0xbffe ,0xfdfb ,0xdffd ,0xbffb ,0xbff7 ,0xf7f7 ,0xfdfd ,0xf7fb ,0xfdf7 ,0xeffd ,0x1dfdf,0xffff ,0x1fbbf,0 ,0,
|
||||
//' a c c d e f g h i j k l m n o
|
||||
0 ,0xfbfd ,0xeff7 ,0xeffb ,0xfbfb ,0xbffd ,0xdffb ,0xfbf7 ,0xdff7 ,0xfdef ,0xfbef ,0xdfef ,0xfbdf ,0xefef ,0xf7ef ,0xbfef,
|
||||
//p q r s t u v w x y z { | } ~ DEL
|
||||
0xfddf ,0xbffe ,0xfdfb ,0xdffd ,0xbffb ,0xbff7 ,0xf7f7 ,0xfdfd ,0xf7fb ,0xfdf7 ,0xeffd ,0, 0 , 0, 0xfe7f ,0x1fb7f,
|
||||
// 129:f1 f2 f3 f4 f5 f6 f7 f8
|
||||
0,0xef7f,0x1ef7f,0xdf7f,0x1df7f,0xbf7f,0x1bf7f,0x7f7f,0x17f7f,0,0,0,0,0,0,0, // 128-143
|
||||
// 150:right left down up
|
||||
0,0,0,0,0,0, 0xfb7f,0x1fb7f,0xf77f,0x1f77f,0,0,0,0,0,0 // 144-159
|
||||
};
|
||||
*/
|
||||
|
||||
|
||||
const uint32_t ascii2scan[] = {
|
||||
//0 1 2 3 4 5 6 7 8 9 A B C D E F
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0x28,0,0, // return
|
||||
// 17:down 29:right
|
||||
0x00,0x51,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4f,0x00,0x00,
|
||||
0,0,0,0,0,0,0,0,0,0,0x28,0,0,0x28,0,0, // 0x0A: return
|
||||
0x00,0x0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //31:RUNSTOP
|
||||
//sp ! " # $ % & ' ( ) * + , - . /
|
||||
0x2c,0x201e,0x201f,0x2020,0x2021,0x2022,0x2023,0x2024,0x2025,0x2026,0x55,0x57,0x36,0x56,0x37,0x54,
|
||||
//0 1 2 3 4 5 6 7 8 9 : ; < = > ?
|
||||
|
@ -58,14 +83,18 @@ const uint32_t ascii2scan[] = {
|
|||
47,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,0x10,0x11,0x12,
|
||||
//P Q R S T U V W X Y Z [ \ ] ^ _
|
||||
0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x2026,0x31,0x2027,0x00,0x00,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // ' a b c d e f g h i j k l m n o
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x49,0, // p q r s t u v w x y z { | } ~ DEL
|
||||
//up left arr 133:f1 f2 f3 f4 f5 f6 f7 f8
|
||||
75,78,0x00,0x00,0x00,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x00,0x00,0x00, // 128-143
|
||||
// 145:up 157:left
|
||||
0x00,0x2051,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x204f,0x00,0x00 // 144-159
|
||||
//' a b c d e f g h i j k l m n o
|
||||
0,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,0x10,0x11,0x12,
|
||||
//p w r s t u v w x y z { | } ~ DEL
|
||||
0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0, 0, 0,0x49,0x204f,
|
||||
// 129:f1 f2 f3 f4 f5 f6 f7 f8
|
||||
0, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,0,0,0,0,0,0,0, // 128-143
|
||||
// 150:right left down up
|
||||
0,0,0,0,0,0, 0x4f, 0x204f, 0x51, 0x2051,0,0,0,0,0,0 // 144-159
|
||||
|
||||
};
|
||||
|
||||
|
||||
// we also use USB matrix for the moment
|
||||
static const uint8_t keymatrixmap[2][256] = {
|
||||
//Rows:
|
||||
|
@ -123,13 +152,23 @@ struct {
|
|||
} kbdData = {0, 0, 0};
|
||||
|
||||
|
||||
|
||||
|
||||
static void setKey(uint32_t k, boolean pressed) {
|
||||
static void setKey(uint8_t c, boolean pressed) {
|
||||
uint32_t k = ascii2scan[c];
|
||||
/*
|
||||
uint32_t kvic20 = ascii2scanvic20[c];
|
||||
bool shiftPressed;
|
||||
if (k & 0x10000) shiftPressed = true;
|
||||
else shiftPressed = false;
|
||||
if (pressed) {
|
||||
kbdData.kv = k & 0xffff;
|
||||
}
|
||||
*/
|
||||
if (pressed) {
|
||||
kbdData.kv = (k << 16);
|
||||
kbdData.ke = kbdData.k2;
|
||||
kbdData.k2 = 0;
|
||||
//Serial.println(~kvic20, HEX);
|
||||
//Serial.println((keymatrixmap[1][kbdData.k]<<8)+keymatrixmap[0][kbdData.k], HEX);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -137,12 +176,13 @@ static void setKey(uint32_t k, boolean pressed) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
static void pushStringToTextEntry(char * text) {
|
||||
char c;
|
||||
while ((c = *text++)) {
|
||||
setKey(ascii2scan[c], true);
|
||||
setKey(c, true);
|
||||
delay(20);
|
||||
setKey(ascii2scan[c], false);
|
||||
setKey(c, false);
|
||||
delay(20);
|
||||
}
|
||||
}
|
||||
|
@ -168,15 +208,23 @@ uint8_t cia1PORTA(void) {
|
|||
if (keys & MASK_JOY1_LEFT) v &= 0xF7;
|
||||
}
|
||||
|
||||
|
||||
if (!kbdData.kv) return v; //Keine Taste gedrückt
|
||||
|
||||
uint8_t filter = ~cpu.cia1.R[0x01] & cpu.cia1.R[0x03];
|
||||
|
||||
|
||||
/*
|
||||
uint8_t column = ~((kbdData.kv >> 8) & 0xFF); // output
|
||||
uint8_t row = ~(kbdData.kv & 0xFF); //input
|
||||
if (kbdData.kv) {
|
||||
if (column & filter) v &= ~row ;
|
||||
}
|
||||
*/
|
||||
|
||||
if (kbdData.k) {
|
||||
if ( keymatrixmap[1][kbdData.k] & filter) v &= ~keymatrixmap[0][kbdData.k];
|
||||
}
|
||||
|
||||
|
||||
if (kbdData.ke) {
|
||||
if (kbdData.ke & 0x02) { //Shift-links
|
||||
if ( keymatrixmap[1][0xff] & filter) v &= ~keymatrixmap[0][0xff];
|
||||
|
@ -222,6 +270,14 @@ uint8_t cia1PORTB(void) {
|
|||
|
||||
uint8_t filter = ~cpu.cia1.R[0x00] & cpu.cia1.R[0x02];
|
||||
|
||||
/*
|
||||
uint8_t column = ~((kbdData.kv >> 8) & 0xFF); // output
|
||||
uint8_t row = ~(kbdData.kv & 0xFF); //input
|
||||
if (kbdData.kv) {
|
||||
if (row & filter) v &= ~column ;
|
||||
}
|
||||
*/
|
||||
|
||||
if (kbdData.k) {
|
||||
if ( keymatrixmap[0][kbdData.k] & filter) v &= ~keymatrixmap[1][kbdData.k];
|
||||
}
|
||||
|
@ -280,6 +336,8 @@ static char textkey[1];
|
|||
static bool res=false;
|
||||
static bool firsttime=true;
|
||||
|
||||
static int iusbhk;// USB keyboard key
|
||||
|
||||
void c64_Input(int bClick) {
|
||||
|
||||
if (nbkeys == 0) {
|
||||
|
@ -312,19 +370,21 @@ void c64_Input(int bClick) {
|
|||
else
|
||||
{
|
||||
int hk = emu_ReadI2CKeyboard();
|
||||
if (iusbhk) hk = iusbhk;
|
||||
|
||||
if ( (hk != 0) && (res == false) ) {
|
||||
setKey(ascii2scan[hk],true);
|
||||
setKey(hk,true);
|
||||
res = true;
|
||||
}
|
||||
else if (hk == 0){
|
||||
setKey(ascii2scan[hk],false);
|
||||
setKey(hk,false);
|
||||
res = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
char k = textseq[kcnt];
|
||||
if (k != '\t') setKey(ascii2scan[k],toggle);
|
||||
if (k != '\t') setKey(k, toggle);
|
||||
if (!toggle) {
|
||||
kcnt++;
|
||||
nbkeys--;
|
||||
|
@ -337,9 +397,23 @@ void c64_Input(int bClick) {
|
|||
}
|
||||
|
||||
void emu_KeyboardOnDown(int keymodifer, int key) {
|
||||
int keyCode = -1;
|
||||
if ((key >=0xc0) && (key <=0xdf)) {
|
||||
keyCode = ((key-0xc0) & 0x1f) + 0x7f;
|
||||
}
|
||||
else {
|
||||
keyCode = key & 0x7f;
|
||||
}
|
||||
|
||||
//Serial.println(keyCode);
|
||||
|
||||
if (keyCode != -1) {
|
||||
iusbhk = keyCode;
|
||||
}
|
||||
}
|
||||
|
||||
void emu_KeyboardOnUp(int keymodifer, int key) {
|
||||
iusbhk = 0;
|
||||
}
|
||||
|
||||
#ifdef HAS_SND
|
||||
|
|
|
@ -42,10 +42,10 @@
|
|||
#define keylables_map0_2 (char *)" ZXCVBNM,.;/"
|
||||
#define keylables_map0_3 (char *)" +\x10-"
|
||||
const unsigned short key_map0[] = {
|
||||
'Q','W','E','R','T','Y','U','I','O','P',157, //default C64 uppercase always
|
||||
0,'A','S','D','F','G','H','J','K','L',0x0D,
|
||||
'Q','W','E','R','T','Y','U','I','O','P',127, //default C64 uppercase always
|
||||
0,'A','S','D','F','G','H','J','K','L',10,
|
||||
0,'Z','X','C','V','B','N','M',',','.',';','/',
|
||||
145,157,29,17,
|
||||
0,0,0,0,
|
||||
0,'+',' ','-'
|
||||
};
|
||||
|
||||
|
@ -70,7 +70,7 @@ const unsigned short key_map2[] = {
|
|||
'!','"','#','$','%','^','&','*','(',')','@', // shiftothers
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,'<','>',':','?',
|
||||
0,0,0,0,
|
||||
153,151,150,152, //U L R D
|
||||
0,'=',' ','_'
|
||||
};
|
||||
|
||||
|
@ -80,7 +80,7 @@ const unsigned short key_map2[] = {
|
|||
#define keylables_map3_3 (char *)" "
|
||||
|
||||
const unsigned short key_map3[] = {
|
||||
133,134,135,136,137,138,139,140,0,0,0, // function keys
|
||||
129,130,131,132,133,134,135,136,0,0,0, // function keys
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,
|
||||
|
@ -93,9 +93,9 @@ const unsigned short key_map3[] = {
|
|||
#define keylables_map4_3 (char *)" =\x10_"
|
||||
const unsigned short key_map4[] = {
|
||||
'Q','W','E','R','T','Y','U','I','O','P','@', //shift uppercase
|
||||
0,'A','S','D','F','G','H','J','K','L',0x0D,
|
||||
0,'A','S','D','F','G','H','J','K','L',10,
|
||||
0,'Z','X','C','V','B','N','M','<','>',':','?',
|
||||
145,157,29,17,
|
||||
0,0,0,0,
|
||||
0,'=',' ','_'
|
||||
};
|
||||
|
||||
|
@ -108,7 +108,7 @@ const unsigned short key_map5[] = {
|
|||
0,0,0,0,0,0,0,0,0,0,0, // extra keys
|
||||
0, 0,0,0,0,0,0,0,0,0,0,
|
||||
0, 0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,
|
||||
153,151,150,152, //U L R D
|
||||
0,0,' ',0
|
||||
};
|
||||
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
|
||||
#ifdef TEECOMPUTER
|
||||
//#define ILI9341 1
|
||||
#define ST7789 1
|
||||
#define TFTSPI1 1
|
||||
//#define HAS_T4_VGA 1
|
||||
//#define ST7789 1
|
||||
//#define TFTSPI1 1
|
||||
#define HAS_T4_VGA 1
|
||||
#define HAS_SND 1
|
||||
#define HAS_USBKEY 1
|
||||
#define INVX 1
|
||||
|
|
|
@ -145,9 +145,7 @@ void loop(void)
|
|||
toggleMenu(false);
|
||||
vgaMode = false;
|
||||
emu_start();
|
||||
emu_Init(filename);
|
||||
//digitalWrite(TFT_CS, 1);
|
||||
//digitalWrite(SD_CS, 1);
|
||||
emu_Init(filename);
|
||||
tft.fillScreenNoDma( RGBVAL16(0x00,0x00,0x00) );
|
||||
tft.startDMA();
|
||||
myTimer.begin(vblCount, 20000); //to run every 20ms
|
||||
|
|
Ładowanie…
Reference in New Issue