Fix tabs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24153 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
686c4e53ce
commit
56d972ad57
26 changed files with 607 additions and 607 deletions
|
@ -61,7 +61,7 @@ extern bool lcd_button_support(void);
|
|||
|
||||
void button_init_device(void)
|
||||
{
|
||||
GPIOA_DIR |= (1<<1);
|
||||
GPIOA_DIR |= (1<<1);
|
||||
GPIOA_PIN(1) = (1<<1);
|
||||
}
|
||||
|
||||
|
|
|
@ -250,48 +250,48 @@ void system_prepare_fw_start(void)
|
|||
|
||||
inline void dumpregs(void)
|
||||
{
|
||||
asm volatile ("mov %0,r0\n\t"
|
||||
"mov %1,r1\n\t"
|
||||
"mov %2,r2\n\t"
|
||||
"mov %3,r3":
|
||||
"=r"(regs.r0),"=r"(regs.r1),
|
||||
"=r"(regs.r2),"=r"(regs.r3):);
|
||||
asm volatile ("mov %0,r0\n\t"
|
||||
"mov %1,r1\n\t"
|
||||
"mov %2,r2\n\t"
|
||||
"mov %3,r3":
|
||||
"=r"(regs.r0),"=r"(regs.r1),
|
||||
"=r"(regs.r2),"=r"(regs.r3):);
|
||||
|
||||
asm volatile ("mov %0,r4\n\t"
|
||||
"mov %1,r5\n\t"
|
||||
"mov %2,r6\n\t"
|
||||
"mov %3,r7":
|
||||
"=r"(regs.r4),"=r"(regs.r5),
|
||||
"=r"(regs.r6),"=r"(regs.r7):);
|
||||
"mov %1,r5\n\t"
|
||||
"mov %2,r6\n\t"
|
||||
"mov %3,r7":
|
||||
"=r"(regs.r4),"=r"(regs.r5),
|
||||
"=r"(regs.r6),"=r"(regs.r7):);
|
||||
|
||||
asm volatile ("mov %0,r8\n\t"
|
||||
"mov %1,r9\n\t"
|
||||
"mov %2,r10\n\t"
|
||||
"mov %3,r12":
|
||||
"=r"(regs.r8),"=r"(regs.r9),
|
||||
"=r"(regs.r10),"=r"(regs.r11):);
|
||||
"mov %1,r9\n\t"
|
||||
"mov %2,r10\n\t"
|
||||
"mov %3,r12":
|
||||
"=r"(regs.r8),"=r"(regs.r9),
|
||||
"=r"(regs.r10),"=r"(regs.r11):);
|
||||
|
||||
asm volatile ("mov %0,r12\n\t"
|
||||
"mov %1,sp\n\t"
|
||||
"mov %2,lr\n\t"
|
||||
"mov %3,pc\n"
|
||||
"sub %3,%3,#8":
|
||||
"=r"(regs.r12),"=r"(regs.sp),
|
||||
"=r"(regs.lr),"=r"(regs.pc):);
|
||||
asm volatile ("mov %0,r12\n\t"
|
||||
"mov %1,sp\n\t"
|
||||
"mov %2,lr\n\t"
|
||||
"mov %3,pc\n"
|
||||
"sub %3,%3,#8":
|
||||
"=r"(regs.r12),"=r"(regs.sp),
|
||||
"=r"(regs.lr),"=r"(regs.pc):);
|
||||
#ifdef HAVE_SERIAL
|
||||
dprintf("Register Dump :\n");
|
||||
dprintf("R0=0x%x\tR1=0x%x\tR2=0x%x\tR3=0x%x\n",regs.r0,regs.r1,regs.r2,regs.r3);
|
||||
dprintf("R0=0x%x\tR1=0x%x\tR2=0x%x\tR3=0x%x\n",regs.r0,regs.r1,regs.r2,regs.r3);
|
||||
dprintf("R4=0x%x\tR5=0x%x\tR6=0x%x\tR7=0x%x\n",regs.r4,regs.r5,regs.r6,regs.r7);
|
||||
dprintf("R8=0x%x\tR9=0x%x\tR10=0x%x\tR11=0x%x\n",regs.r8,regs.r9,regs.r10,regs.r11);
|
||||
dprintf("R12=0x%x\tSP=0x%x\tLR=0x%x\tPC=0x%x\n",regs.r12,regs.sp,regs.lr,regs.pc);
|
||||
//dprintf("CPSR=0x%x\t\n",regs.cpsr);
|
||||
dprintf("R8=0x%x\tR9=0x%x\tR10=0x%x\tR11=0x%x\n",regs.r8,regs.r9,regs.r10,regs.r11);
|
||||
dprintf("R12=0x%x\tSP=0x%x\tLR=0x%x\tPC=0x%x\n",regs.r12,regs.sp,regs.lr,regs.pc);
|
||||
//dprintf("CPSR=0x%x\t\n",regs.cpsr);
|
||||
#endif
|
||||
DEBUGF("Register Dump :\n");
|
||||
DEBUGF("R0=0x%x\tR1=0x%x\tR2=0x%x\tR3=0x%x\n",regs.r0,regs.r1,regs.r2,regs.r3);
|
||||
DEBUGF("Register Dump :\n");
|
||||
DEBUGF("R0=0x%x\tR1=0x%x\tR2=0x%x\tR3=0x%x\n",regs.r0,regs.r1,regs.r2,regs.r3);
|
||||
DEBUGF("R4=0x%x\tR5=0x%x\tR6=0x%x\tR7=0x%x\n",regs.r4,regs.r5,regs.r6,regs.r7);
|
||||
DEBUGF("R8=0x%x\tR9=0x%x\tR10=0x%x\tR11=0x%x\n",regs.r8,regs.r9,regs.r10,regs.r11);
|
||||
DEBUGF("R12=0x%x\tSP=0x%x\tLR=0x%x\tPC=0x%x\n",regs.r12,regs.sp,regs.lr,regs.pc);
|
||||
//DEBUGF("CPSR=0x%x\t\n",regs.cpsr);
|
||||
DEBUGF("R8=0x%x\tR9=0x%x\tR10=0x%x\tR11=0x%x\n",regs.r8,regs.r9,regs.r10,regs.r11);
|
||||
DEBUGF("R12=0x%x\tSP=0x%x\tLR=0x%x\tPC=0x%x\n",regs.r12,regs.sp,regs.lr,regs.pc);
|
||||
//DEBUGF("CPSR=0x%x\t\n",regs.cpsr);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -58,23 +58,23 @@ void imx31_regclr32(volatile uint32_t *reg_p, uint32_t mask);
|
|||
#define KDEV_INIT
|
||||
|
||||
struct ARM_REGS {
|
||||
int r0;
|
||||
int r1;
|
||||
int r2;
|
||||
int r3;
|
||||
int r4;
|
||||
int r5;
|
||||
int r6;
|
||||
int r7;
|
||||
int r8;
|
||||
int r9;
|
||||
int r10;
|
||||
int r11;
|
||||
int r12;
|
||||
int sp;
|
||||
int lr;
|
||||
int pc;
|
||||
int cpsr;
|
||||
int r0;
|
||||
int r1;
|
||||
int r2;
|
||||
int r3;
|
||||
int r4;
|
||||
int r5;
|
||||
int r6;
|
||||
int r7;
|
||||
int r8;
|
||||
int r9;
|
||||
int r10;
|
||||
int r11;
|
||||
int r12;
|
||||
int sp;
|
||||
int lr;
|
||||
int pc;
|
||||
int cpsr;
|
||||
} regs;
|
||||
|
||||
inline void dumpregs(void);
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
/*!
|
||||
* Following define start address of start script
|
||||
*/
|
||||
#define start_ADDR_1 0
|
||||
#define start_ADDR_1 0
|
||||
/*!
|
||||
* Following define size of start script
|
||||
*/
|
||||
|
@ -359,230 +359,230 @@
|
|||
static __attribute__((aligned(4), section(".sdmacode")))
|
||||
const short sdma_code_1[RAM_CODE_SIZE_1] =
|
||||
{
|
||||
0xc0ec, 0x7d59, 0x0970, 0x0111, 0x5111, 0x5ad1, 0x5bd9, 0xc0fe,
|
||||
0x5ce1, 0x7d02, 0x0200, 0x9806, 0x08ff, 0x0011, 0x28ff, 0x00bc,
|
||||
0x05df, 0x7d4b, 0x06df, 0x7d2f, 0x6dc5, 0x6ed5, 0x5ef1, 0x0288,
|
||||
0xd81a, 0x9854, 0x0b04, 0x00d3, 0x7d20, 0x06a5, 0x3e03, 0x3d03,
|
||||
0x03a5, 0x3b03, 0x008b, 0x058b, 0x7802, 0x63d8, 0x0000, 0x7e72,
|
||||
0x63ff, 0x7e70, 0x02a5, 0x008a, 0x4e00, 0x7d01, 0x983d, 0x6dcf,
|
||||
0x6edf, 0x0015, 0x0015, 0x7802, 0x63d8, 0x0000, 0x7e63, 0x63ff,
|
||||
0x7e61, 0x3a03, 0x008a, 0x6dcd, 0x6edd, 0x7801, 0x63d8, 0x7e5a,
|
||||
0x63ff, 0x7e58, 0x0006, 0x6dc5, 0x6e07, 0x5ef1, 0x0288, 0xd8f7,
|
||||
0x7e02, 0x7f04, 0x9854, 0x0007, 0x68cc, 0x6b28, 0x54e1, 0x0089,
|
||||
0xdb13, 0x0188, 0x5ce1, 0x9854, 0x52d1, 0x53d9, 0x54e1, 0xc10d,
|
||||
0x7dad, 0x0200, 0x9800, 0x0200, 0x9800, 0x06df, 0x7d06, 0x6d23,
|
||||
0x6ed5, 0x5ef1, 0x0288, 0xd8cd, 0x9854, 0x5ef1, 0x6e07, 0x6d03,
|
||||
0x0b04, 0x00d3, 0x7d59, 0x06a5, 0x3e03, 0x3d03, 0x4d00, 0x7d09,
|
||||
0x03a5, 0x00a3, 0x0588, 0x008b, 0xd8c9, 0x7ed8, 0x620c, 0x7ed6,
|
||||
0x008d, 0x4e00, 0x7c25, 0x0a20, 0x00da, 0x7c22, 0x6503, 0x3d1f,
|
||||
0x02a5, 0x00a2, 0x0215, 0x0215, 0x6a18, 0x6a28, 0x7fc7, 0x0a20,
|
||||
0x0b08, 0x00da, 0x7c06, 0x6b18, 0x6b28, 0x7fc0, 0x0000, 0x2020,
|
||||
0x9889, 0x0688, 0x0015, 0x0015, 0x6818, 0x6828, 0x7fb7, 0x98c2,
|
||||
0x0007, 0x6a0c, 0x54e1, 0x0089, 0xdb0f, 0x0188, 0x5ce1, 0x9854,
|
||||
0x0b04, 0x00d3, 0x7d21, 0x0389, 0x1b12, 0x048b, 0x0688, 0x0015,
|
||||
0x0015, 0x0588, 0x038c, 0x0a08, 0x05da, 0x008d, 0x7c01, 0x008a,
|
||||
0x05a0, 0x7803, 0x620b, 0x5a03, 0x1b01, 0x7e98, 0x008b, 0x00a4,
|
||||
0x038c, 0x7803, 0x5203, 0x6a0b, 0x1b01, 0x6a28, 0x7f8f, 0x0000,
|
||||
0x4d00, 0x7ce8, 0x008e, 0x3803, 0xd8c9, 0x7e88, 0x620c, 0x7e86,
|
||||
0x9854, 0x7802, 0x6209, 0x6a29, 0x0006, 0x3e03, 0x4e00, 0x7d11,
|
||||
0x0b04, 0x03a6, 0x02db, 0x7d01, 0x038a, 0x02a3, 0x048a, 0x008b,
|
||||
0x7802, 0x6329, 0x6bc8, 0x7ebc, 0x63c8, 0x7ebc, 0x008c, 0x4800,
|
||||
0x7d15, 0x0488, 0x0015, 0x0015, 0x6edf, 0x7803, 0x632b, 0x6bc8,
|
||||
0x0000, 0x7eae, 0x63c8, 0x7eae, 0x008c, 0x3803, 0x6edd, 0x7803,
|
||||
0x6329, 0x6bc8, 0x0000, 0x7ea4, 0x63c8, 0x7ea4, 0x0006, 0x3d03,
|
||||
0x4d00, 0x7d0e, 0x0b04, 0x03a5, 0x02db, 0x7d01, 0x038a, 0x02a3,
|
||||
0x048a, 0x008b, 0x7802, 0x63c8, 0x6b09, 0x7e1e, 0x7f1e, 0x008c,
|
||||
0x0488, 0x0015, 0x0015, 0x6dcf, 0x0288, 0x008a, 0x0d08, 0x02dd,
|
||||
0x7c01, 0x008d, 0x7802, 0x63c8, 0x6b0b, 0x7e0e, 0x6b28, 0x7f0d,
|
||||
0x0000, 0x02dd, 0x7c02, 0x2208, 0x990d, 0x008c, 0x3803, 0x65c0,
|
||||
0x6dc5, 0x7802, 0x63c8, 0x6b09, 0x6b28, 0x0006, 0x0870, 0x0011,
|
||||
0x5010, 0xc0ec, 0x7d5e, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
|
||||
0x7d02, 0x0200, 0x992c, 0x6ec3, 0x6d07, 0x5df0, 0x0dff, 0x0511,
|
||||
0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0b70, 0x0311, 0x522b, 0x5313,
|
||||
0x02b9, 0x4a00, 0x7c04, 0x6a28, 0x7f3a, 0x0400, 0x993c, 0x008f,
|
||||
0x00d5, 0x7d01, 0x008d, 0x05a0, 0x0a03, 0x0212, 0x02bc, 0x0210,
|
||||
0x4a00, 0x7d1c, 0x4a02, 0x7d20, 0x4a01, 0x7d23, 0x0b70, 0x0311,
|
||||
0x53eb, 0x62c8, 0x7e24, 0x0360, 0x7d02, 0x0210, 0x0212, 0x6a09,
|
||||
0x7f1e, 0x0212, 0x6a09, 0x7f1b, 0x0212, 0x6a09, 0x7f18, 0x2003,
|
||||
0x4800, 0x7cef, 0x0b70, 0x0311, 0x5313, 0x997d, 0x0015, 0x0015,
|
||||
0x7802, 0x62c8, 0x6a0b, 0x997c, 0x0015, 0x7802, 0x62c8, 0x6a0a,
|
||||
0x997c, 0x7802, 0x62c8, 0x6a09, 0x7c02, 0x0000, 0x993a, 0xdb13,
|
||||
0x6a28, 0x7ffd, 0x008b, 0x52c3, 0x53cb, 0xc10d, 0x7da5, 0x0200,
|
||||
0x992c, 0x0200, 0x9929, 0xc19d, 0xc0ec, 0x7d69, 0x0c70, 0x0411,
|
||||
0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe, 0x56fa, 0x7d02,
|
||||
0x0200, 0x9994, 0x6d07, 0x5bca, 0x5cd2, 0x0bff, 0x0311, 0x1bff,
|
||||
0x04bb, 0x0415, 0x53da, 0x4c00, 0x7d47, 0x0a70, 0x0211, 0x552a,
|
||||
0x5212, 0x008d, 0x00bb, 0x4800, 0x7c07, 0x05b9, 0x4d00, 0x7c13,
|
||||
0x6928, 0x7f2d, 0x0400, 0x99a5, 0x008f, 0x0015, 0x04d8, 0x7d01,
|
||||
0x008c, 0x04a0, 0x0015, 0x7802, 0x55c6, 0x6d0b, 0x7e29, 0x6d28,
|
||||
0x7f1e, 0x0000, 0x99a3, 0x1e20, 0x5506, 0x2620, 0x008d, 0x0560,
|
||||
0x7c08, 0x065f, 0x55c6, 0x063f, 0x7e1b, 0x6d0a, 0x7f10, 0x4c00,
|
||||
0x7d1b, 0x04d8, 0x7d02, 0x008c, 0x0020, 0x04a0, 0x0015, 0x7802,
|
||||
0x55c6, 0x6d0b, 0x7e0d, 0x6d28, 0x7f02, 0x0000, 0x99ec, 0x0007,
|
||||
0x680c, 0x6d0c, 0x6507, 0x6d07, 0x6d2b, 0x6d28, 0x0007, 0x680c,
|
||||
0x0007, 0x54d2, 0x0454, 0x99ef, 0x6928, 0x7ff1, 0x54d2, 0x008a,
|
||||
0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7d9f, 0x0200, 0x9994, 0x0200,
|
||||
0x998c, 0xc0ec, 0x7d72, 0x0800, 0x0970, 0x0111, 0x5111, 0x5ac1,
|
||||
0x5bc9, 0x028e, 0xc0fe, 0x068a, 0x7c6a, 0x5dd9, 0x5ce1, 0x0bff,
|
||||
0x0311, 0x1bff, 0x03bc, 0x5bd1, 0x1a5c, 0x6ac3, 0x63c8, 0x0363,
|
||||
0x7c05, 0x036f, 0x7d27, 0x0374, 0x7c7a, 0x9a71, 0xdb04, 0x3c06,
|
||||
0x4c00, 0x7df7, 0x028f, 0x1a04, 0x6a23, 0x620b, 0x6f23, 0x301f,
|
||||
0x00aa, 0x0462, 0x7c04, 0x4a00, 0x7d0b, 0x2001, 0x9a30, 0x048a,
|
||||
0x620b, 0x2201, 0x1c01, 0x1801, 0x02dc, 0x7d02, 0x301f, 0x00aa,
|
||||
0x048f, 0x1c04, 0x6c07, 0x0488, 0x3c1f, 0x6c2b, 0x0045, 0x028e,
|
||||
0x1a5c, 0x9a11, 0x058f, 0x1d0c, 0x6d23, 0x650b, 0x007d, 0x7c01,
|
||||
0x1d08, 0x007c, 0x7c01, 0x1d04, 0x6d23, 0x650b, 0x0488, 0x3c1f,
|
||||
0x0417, 0x0417, 0x0417, 0x0417, 0x059c, 0x6d23, 0x028e, 0x1a34,
|
||||
0x6ad7, 0x0488, 0x0804, 0x7802, 0x650b, 0x6dc8, 0x008c, 0x1a28,
|
||||
0x6ad7, 0x63c8, 0x034c, 0x6bc8, 0x54d1, 0x4c00, 0x7d06, 0x0065,
|
||||
0x7c02, 0x0101, 0x0025, 0x0400, 0x9a0d, 0x52c1, 0x53c9, 0x54e1,
|
||||
0x0453, 0xc10d, 0x7d95, 0x0200, 0x9a00, 0x0200, 0x99f9, 0x0200,
|
||||
0x9a00, 0x55d9, 0x6d07, 0x54d1, 0x058a, 0x2508, 0x6dc7, 0x0373,
|
||||
0x7c03, 0x65c8, 0x6d0b, 0x2408, 0x0372, 0x7c04, 0x65c8, 0x6d0b,
|
||||
0x2408, 0x9a86, 0x6cce, 0x65c8, 0x6d0a, 0x2404, 0x6d28, 0x6507,
|
||||
0x5dd9, 0x5cd1, 0x6ad7, 0x6ae3, 0x63c8, 0x0334, 0x6bc8, 0x0370,
|
||||
0x7ca9, 0x0c60, 0x0411, 0x04bb, 0x4c00, 0x7da4, 0x0410, 0x1c30,
|
||||
0x0410, 0x04bb, 0x046d, 0x7d0a, 0x047d, 0x7c03, 0x047c, 0x7c01,
|
||||
0x9a3a, 0x003b, 0x003a, 0x0039, 0x0058, 0x9ab5, 0x047d, 0x7d03,
|
||||
0x047c, 0x7d01, 0x9a3a, 0x005b, 0xdaf9, 0x1d18, 0x6d23, 0x650b,
|
||||
0x0510, 0x003a, 0x0039, 0x0038, 0x00ad, 0xdb04, 0x0c30, 0x0410,
|
||||
0x04bb, 0x003c, 0x003d, 0x00ac, 0xdaf9, 0x007b, 0x7c04, 0x003d,
|
||||
0x003c, 0x1d0c, 0x9ad6, 0x048f, 0x1c14, 0x6c23, 0x640b, 0x4401,
|
||||
0x7d04, 0x005d, 0x005c, 0x1d0c, 0x9ad6, 0x0310, 0x3b30, 0x4b30,
|
||||
0x7d01, 0x1b10, 0x0310, 0x003d, 0x003c, 0x00ab, 0x6ad7, 0x63c8,
|
||||
0x6d23, 0x650b, 0x0560, 0x7d03, 0x005e, 0xdaed, 0x9a3a, 0x003e,
|
||||
0x0c80, 0x0410, 0x0394, 0xdaed, 0x640b, 0x037f, 0x7d02, 0x1a14,
|
||||
0x9aea, 0x1a0c, 0x6ad7, 0x6cc8, 0x9a3a, 0x0c7f, 0x0410, 0x03b4,
|
||||
0x04b8, 0x03ac, 0x640b, 0x6bc8, 0x028e, 0x1a04, 0x6ad7, 0x6cc8,
|
||||
0x0006, 0x058f, 0x1d08, 0x6d23, 0x650b, 0x007d, 0x7c01, 0x1d38,
|
||||
0x007c, 0x7c01, 0x1d1c, 0x0006, 0x048b, 0x042c, 0x0454, 0x042b,
|
||||
0x6ad7, 0x6cc8, 0x0006, 0x0007, 0x684c, 0x6144, 0x9b1c, 0x0007,
|
||||
0x68cc, 0x61d0, 0x9b1c, 0x0007, 0x680c, 0x680c, 0x6107, 0x6907,
|
||||
0x692b, 0x6928, 0x0007, 0x680c, 0x0d70, 0x0511, 0x5515, 0x55f5,
|
||||
0x01a5, 0x0dff, 0x0512, 0x1dff, 0x0512, 0x04bd, 0x0499, 0x0454,
|
||||
0x0006, 0x08ff, 0x0011, 0x28ff, 0x0006, 0x038c, 0x0eff, 0x0611,
|
||||
0x2eff, 0x03b6, 0x0006, 0x53d6, 0x0398, 0x5bd6, 0x53ee, 0x0398,
|
||||
0x5bee, 0x0006, 0x52de, 0x53e6, 0x54ee, 0x0498, 0x0454, 0x0006,
|
||||
0x50f6, 0x52c6, 0x53ce, 0x54d6, 0x0498, 0x0454, 0x0006, 0x6207,
|
||||
0x0b70, 0x0311, 0x5013, 0x55f0, 0x02a5, 0x0bff, 0x0312, 0x1bff,
|
||||
0x0312, 0x04bb, 0x049a, 0x0006, 0x1e10, 0x0870, 0x0011, 0x5010,
|
||||
0xc0ec, 0x7d39, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
|
||||
0x0200, 0x9b5b, 0x6d07, 0x5df0, 0x0dff, 0x0511, 0x1dff, 0x05bc,
|
||||
0x4d00, 0x7d17, 0x6ec3, 0x62c8, 0x7e28, 0x0264, 0x7d08, 0x0b70,
|
||||
0x0311, 0x522b, 0x02b9, 0x4a00, 0x7c18, 0x0400, 0x9b6a, 0x0212,
|
||||
0x3aff, 0x008a, 0x05d8, 0x7d01, 0x008d, 0x0a10, 0x6ed3, 0x6ac8,
|
||||
0xdba5, 0x6a28, 0x7f17, 0x0b70, 0x0311, 0x5013, 0xdbbd, 0x52c0,
|
||||
0x53c8, 0xc10d, 0x7dd0, 0x0200, 0x9b5b, 0x008f, 0x00d5, 0x7d01,
|
||||
0x008d, 0xdba5, 0x9b68, 0x0200, 0x9b58, 0x0007, 0x68cc, 0x6a28,
|
||||
0x7f01, 0x9ba3, 0x0007, 0x6a0c, 0x6a0c, 0x6207, 0x6a07, 0x6a2b,
|
||||
0x6a28, 0x0007, 0x680c, 0x0454, 0x9b81, 0x05a0, 0x1e08, 0x6ec3,
|
||||
0x0388, 0x3b03, 0x0015, 0x0015, 0x7802, 0x62c8, 0x6a0b, 0x7ee5,
|
||||
0x6a28, 0x7fe8, 0x0000, 0x6ec1, 0x008b, 0x7802, 0x62c8, 0x6a09,
|
||||
0x7edc, 0x6a28, 0x7fdf, 0x2608, 0x0006, 0x55f0, 0x6207, 0x02a5,
|
||||
0x0dff, 0x0511, 0x1dff, 0x04b5, 0x049a, 0x0006, 0x0870, 0x0011,
|
||||
0x5010, 0xc0ec, 0x7d78, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
|
||||
0x7d02, 0x0200, 0x9bcc, 0x6d03, 0x6ed3, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x5df8, 0x4d00, 0x7d5e, 0x0b70, 0x0311, 0x522b, 0x5313,
|
||||
0x02b9, 0x4a00, 0x7c04, 0x62ff, 0x7e3f, 0x0400, 0x9bdc, 0x008f,
|
||||
0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5ddb, 0x0d03, 0x0512, 0x05bc,
|
||||
0x0510, 0x5dd3, 0x4d00, 0x7d27, 0x4d02, 0x7d20, 0x4d01, 0x7d1a,
|
||||
0x0b70, 0x0311, 0x53eb, 0x0360, 0x7d05, 0x6509, 0x7e25, 0x620a,
|
||||
0x7e23, 0x9c06, 0x620a, 0x7e20, 0x6509, 0x7e1e, 0x0512, 0x0512,
|
||||
0x02ad, 0x6ac8, 0x7f19, 0x2003, 0x4800, 0x7ced, 0x0b70, 0x0311,
|
||||
0x5313, 0x9c21, 0x7802, 0x6209, 0x6ac8, 0x9c20, 0x0015, 0x7802,
|
||||
0x620a, 0x6ac8, 0x9c20, 0x0015, 0x0015, 0x7802, 0x620b, 0x6ac8,
|
||||
0x7c03, 0x0000, 0x55db, 0x9bda, 0x0007, 0x68cc, 0x680c, 0x55d3,
|
||||
0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9c2f, 0x0017, 0x0017, 0x55db,
|
||||
0x009d, 0x55fb, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010, 0x04b8,
|
||||
0x04ad, 0x0454, 0x62ff, 0x7ee8, 0x008b, 0x52c0, 0x53c8, 0xc10d,
|
||||
0x7d8b, 0x0200, 0x9bcc, 0x0200, 0x9bc9, 0xc19d, 0xc0ec, 0x7d52,
|
||||
0x0c70, 0x0411, 0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe,
|
||||
0x56fa, 0x7d02, 0x0200, 0x9c4e, 0x6d03, 0x5bca, 0x5cd2, 0x0bff,
|
||||
0x0311, 0x1bff, 0x04bb, 0x0415, 0x53da, 0x0a70, 0x0211, 0x4c00,
|
||||
0x7d28, 0x552a, 0x05bb, 0x4d00, 0x7c02, 0x0400, 0x9c61, 0x4c01,
|
||||
0x7d0f, 0x008f, 0x0015, 0x04d8, 0x7d01, 0x008c, 0x0020, 0x04a0,
|
||||
0x0015, 0x7802, 0x650b, 0x5d06, 0x0000, 0x7e0c, 0x7f0d, 0x9c5f,
|
||||
0x650a, 0x7e08, 0x008d, 0x0011, 0x0010, 0x05a8, 0x065f, 0x5d06,
|
||||
0x063f, 0x7f02, 0x0007, 0x680c, 0x0007, 0x5012, 0x54d0, 0x0454,
|
||||
0x9c8b, 0x5012, 0x54d0, 0x0473, 0x7c06, 0x552a, 0x05b9, 0x4d00,
|
||||
0x7c02, 0x0400, 0x9c8d, 0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7db6,
|
||||
0x0200, 0x9c4e, 0x0200, 0x9c46, 0x0870, 0x0011, 0x5010, 0xc0ec,
|
||||
0x7d46, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
|
||||
0x9ca2, 0x0b70, 0x0311, 0x6ed3, 0x6d03, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x4d00, 0x7d2b, 0x522b, 0x02b9, 0x4a00, 0x7c04, 0x62c8,
|
||||
0x7e1f, 0x0400, 0x9cb3, 0x008f, 0x00d5, 0x7d01, 0x008d, 0x05a0,
|
||||
0x0060, 0x7c05, 0x6edd, 0x6209, 0x7e16, 0x6ac8, 0x7f11, 0x0015,
|
||||
0x0060, 0x7c05, 0x6ede, 0x620a, 0x7e0e, 0x6ac8, 0x7f09, 0x6edf,
|
||||
0x0015, 0x7802, 0x620b, 0x6ac8, 0x0000, 0x7e05, 0x7f01, 0x9cb1,
|
||||
0x0007, 0x68cc, 0x9cdd, 0x0007, 0x6a0c, 0x0454, 0x62c8, 0x7ef8,
|
||||
0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7dbd, 0x0200, 0x9ca2, 0x0200,
|
||||
0x9c9f, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d29, 0x5010, 0x5ac0,
|
||||
0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9cf0, 0x0870, 0x0011,
|
||||
0x6d03, 0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d12, 0x5228,
|
||||
0x02b9, 0x4a00, 0x7c02, 0x0400, 0x9cff, 0x620b, 0x7e06, 0x5a06,
|
||||
0x7f06, 0x0000, 0x2504, 0x7d05, 0x9cff, 0x0007, 0x680c, 0x0007,
|
||||
0x0454, 0x5010, 0x52c0, 0xc10d, 0x7ddb, 0x0200, 0x9cf0, 0x0200,
|
||||
0x9cec, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d74, 0x5010, 0x5ac0,
|
||||
0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9d20, 0x6d03,
|
||||
0x0d03, 0x0512, 0x05bc, 0x0510, 0x5dd0, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x5df8, 0x4d00, 0x7d57, 0x0a70, 0x0211, 0x532a, 0x5212,
|
||||
0x03b9, 0x4b00, 0x7c02, 0x0400, 0x9d34, 0x008f, 0x05d8, 0x7d01,
|
||||
0x008d, 0x05a0, 0x5dda, 0x55d2, 0x4d00, 0x7d27, 0x4d02, 0x7d20,
|
||||
0x4d01, 0x7d1a, 0x0a70, 0x0211, 0x52ea, 0x0260, 0x7d05, 0x6509,
|
||||
0x7e25, 0x630a, 0x7e23, 0x9d58, 0x630a, 0x7e20, 0x6509, 0x7e1e,
|
||||
0x0512, 0x0512, 0x03ad, 0x5b06, 0x7f19, 0x2003, 0x4800, 0x7ced,
|
||||
0x0a70, 0x0211, 0x5212, 0x9d73, 0x7802, 0x6309, 0x5b06, 0x9d72,
|
||||
0x0015, 0x7802, 0x630a, 0x5b06, 0x9d72, 0x0015, 0x0015, 0x7802,
|
||||
0x630b, 0x5b06, 0x7c03, 0x55da, 0x0000, 0x9d32, 0x0007, 0x680c,
|
||||
0x55d2, 0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9d80, 0x0017, 0x0017,
|
||||
0x55da, 0x009d, 0x55fa, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010,
|
||||
0x04b8, 0x04ad, 0x0454, 0x008a, 0x52c0, 0x53c8, 0xc10d, 0x7d90,
|
||||
0x0200, 0x9d20, 0x0200, 0x9d1c, 0xc19d, 0x0870, 0x0011, 0xc0ec,
|
||||
0x7d35, 0x5010, 0x5ac0, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
|
||||
0x9d9b, 0x0870, 0x0011, 0x6d07, 0x0dff, 0x0511, 0x1dff, 0x05bc,
|
||||
0x4d00, 0x7d1c, 0x5228, 0x02b9, 0x4a00, 0x7c04, 0x6928, 0x7f0b,
|
||||
0x0400, 0x9daa, 0x5206, 0x7e10, 0x6a0b, 0x6928, 0x7f04, 0x0000,
|
||||
0x2504, 0x7d0c, 0x9daa, 0x0007, 0x680c, 0x680c, 0x6207, 0x6a07,
|
||||
0x6a2b, 0x6a28, 0x0007, 0x680c, 0x0007, 0x0454, 0x6928, 0x7ff3,
|
||||
0x5010, 0x52c0, 0xc10d, 0x7dcf, 0x0200, 0x9d9b, 0x0200, 0x9d97,
|
||||
0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d5e, 0x5010, 0x5ac0, 0x5bc8,
|
||||
0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9dd7, 0x6d07, 0x5df0,
|
||||
0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0a70, 0x0211,
|
||||
0x532a, 0x5212, 0x03b9, 0x4b00, 0x7c04, 0x6a28, 0x7f3a, 0x0400,
|
||||
0x9de6, 0x008f, 0x05d8, 0x7d01, 0x008d, 0x05a0, 0x0b03, 0x0312,
|
||||
0x03bc, 0x0310, 0x4b00, 0x7d1c, 0x4b02, 0x7d20, 0x4b01, 0x7d23,
|
||||
0x0a70, 0x0211, 0x52ea, 0x5306, 0x7e24, 0x0260, 0x7d02, 0x0310,
|
||||
0x0312, 0x6b09, 0x7f1e, 0x0312, 0x6b09, 0x7f1b, 0x0312, 0x6b09,
|
||||
0x7f18, 0x2003, 0x4800, 0x7cef, 0x0a70, 0x0211, 0x5212, 0x9e27,
|
||||
0x0015, 0x0015, 0x7802, 0x5306, 0x6b0b, 0x9e26, 0x0015, 0x7802,
|
||||
0x5306, 0x6b0a, 0x9e26, 0x7802, 0x5306, 0x6b09, 0x7c02, 0x0000,
|
||||
0x9de4, 0xdb13, 0x6928, 0x7ffd, 0x008a, 0x52c0, 0x53c8, 0xc10d,
|
||||
0x7da6, 0x0200, 0x9dd7, 0x0200, 0x9dd3, 0x0870, 0x0011, 0x5010,
|
||||
0xc0ec, 0x7d5b, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
|
||||
0x0200, 0x9e3b, 0x0b70, 0x0311, 0x6ec3, 0x6d07, 0x5df0, 0x0dff,
|
||||
0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d3d, 0x522b, 0x02b9, 0x4a00,
|
||||
0x7c04, 0x6a28, 0x7f33, 0x0400, 0x9e4d, 0x028e, 0x1a94, 0x6ac3,
|
||||
0x62c8, 0x0269, 0x7d1b, 0x1e94, 0x6ec3, 0x6ed3, 0x62c8, 0x0248,
|
||||
0x6ac8, 0x2694, 0x6ec3, 0x62c8, 0x026e, 0x7d31, 0x6a09, 0x7f1e,
|
||||
0x2501, 0x4d00, 0x7d1f, 0x028e, 0x1a98, 0x6ac3, 0x62c8, 0x6ec3,
|
||||
0x0260, 0x7df1, 0x6a28, 0x7f12, 0xdb47, 0x9e8c, 0x6ee3, 0x008f,
|
||||
0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x62c8, 0x026e, 0x7d17,
|
||||
0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9e4b, 0x0289, 0xdb13,
|
||||
0x018a, 0x9e9b, 0x6a28, 0x7ffa, 0x0b70, 0x0311, 0x5013, 0x52c0,
|
||||
0x53c8, 0xc10d, 0x7da8, 0x0200, 0x9e3b, 0x0200, 0x9e38, 0x6a28,
|
||||
0x7fed, 0xdb47, 0x9e9b, 0x0458, 0x0454, 0x9e8c, 0xc19d, 0x0870,
|
||||
0x0011, 0xc0ec, 0x7d54, 0x5010, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe,
|
||||
0x56f8, 0x7d02, 0x0200, 0x9ea5, 0x0b70, 0x0311, 0x6d07, 0x5df0,
|
||||
0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d36, 0x522b, 0x02b9,
|
||||
0x4a00, 0x7c04, 0x6928, 0x7f2c, 0x0400, 0x9eb6, 0x028e, 0x1a94,
|
||||
0x5202, 0x0269, 0x7d16, 0x1e94, 0x5206, 0x0248, 0x5a06, 0x2694,
|
||||
0x5206, 0x026e, 0x7d2e, 0x6a09, 0x7f1b, 0x2501, 0x4d00, 0x7d1c,
|
||||
0x028e, 0x1a98, 0x5202, 0x0260, 0x7df3, 0x6a28, 0x7f11, 0xdb47,
|
||||
0x9eee, 0x008f, 0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5206,
|
||||
0x026e, 0x7d17, 0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9eb4,
|
||||
0x0289, 0xdb13, 0x018a, 0x9efd, 0x6928, 0x7ffa, 0x0b70, 0x0311,
|
||||
0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7db0, 0x0200, 0x9ea5, 0x0200,
|
||||
0x9ea1, 0x6a28, 0x7fed, 0xdb47, 0x9efd, 0x0458, 0x0454, 0x9eee
|
||||
0xc0ec, 0x7d59, 0x0970, 0x0111, 0x5111, 0x5ad1, 0x5bd9, 0xc0fe,
|
||||
0x5ce1, 0x7d02, 0x0200, 0x9806, 0x08ff, 0x0011, 0x28ff, 0x00bc,
|
||||
0x05df, 0x7d4b, 0x06df, 0x7d2f, 0x6dc5, 0x6ed5, 0x5ef1, 0x0288,
|
||||
0xd81a, 0x9854, 0x0b04, 0x00d3, 0x7d20, 0x06a5, 0x3e03, 0x3d03,
|
||||
0x03a5, 0x3b03, 0x008b, 0x058b, 0x7802, 0x63d8, 0x0000, 0x7e72,
|
||||
0x63ff, 0x7e70, 0x02a5, 0x008a, 0x4e00, 0x7d01, 0x983d, 0x6dcf,
|
||||
0x6edf, 0x0015, 0x0015, 0x7802, 0x63d8, 0x0000, 0x7e63, 0x63ff,
|
||||
0x7e61, 0x3a03, 0x008a, 0x6dcd, 0x6edd, 0x7801, 0x63d8, 0x7e5a,
|
||||
0x63ff, 0x7e58, 0x0006, 0x6dc5, 0x6e07, 0x5ef1, 0x0288, 0xd8f7,
|
||||
0x7e02, 0x7f04, 0x9854, 0x0007, 0x68cc, 0x6b28, 0x54e1, 0x0089,
|
||||
0xdb13, 0x0188, 0x5ce1, 0x9854, 0x52d1, 0x53d9, 0x54e1, 0xc10d,
|
||||
0x7dad, 0x0200, 0x9800, 0x0200, 0x9800, 0x06df, 0x7d06, 0x6d23,
|
||||
0x6ed5, 0x5ef1, 0x0288, 0xd8cd, 0x9854, 0x5ef1, 0x6e07, 0x6d03,
|
||||
0x0b04, 0x00d3, 0x7d59, 0x06a5, 0x3e03, 0x3d03, 0x4d00, 0x7d09,
|
||||
0x03a5, 0x00a3, 0x0588, 0x008b, 0xd8c9, 0x7ed8, 0x620c, 0x7ed6,
|
||||
0x008d, 0x4e00, 0x7c25, 0x0a20, 0x00da, 0x7c22, 0x6503, 0x3d1f,
|
||||
0x02a5, 0x00a2, 0x0215, 0x0215, 0x6a18, 0x6a28, 0x7fc7, 0x0a20,
|
||||
0x0b08, 0x00da, 0x7c06, 0x6b18, 0x6b28, 0x7fc0, 0x0000, 0x2020,
|
||||
0x9889, 0x0688, 0x0015, 0x0015, 0x6818, 0x6828, 0x7fb7, 0x98c2,
|
||||
0x0007, 0x6a0c, 0x54e1, 0x0089, 0xdb0f, 0x0188, 0x5ce1, 0x9854,
|
||||
0x0b04, 0x00d3, 0x7d21, 0x0389, 0x1b12, 0x048b, 0x0688, 0x0015,
|
||||
0x0015, 0x0588, 0x038c, 0x0a08, 0x05da, 0x008d, 0x7c01, 0x008a,
|
||||
0x05a0, 0x7803, 0x620b, 0x5a03, 0x1b01, 0x7e98, 0x008b, 0x00a4,
|
||||
0x038c, 0x7803, 0x5203, 0x6a0b, 0x1b01, 0x6a28, 0x7f8f, 0x0000,
|
||||
0x4d00, 0x7ce8, 0x008e, 0x3803, 0xd8c9, 0x7e88, 0x620c, 0x7e86,
|
||||
0x9854, 0x7802, 0x6209, 0x6a29, 0x0006, 0x3e03, 0x4e00, 0x7d11,
|
||||
0x0b04, 0x03a6, 0x02db, 0x7d01, 0x038a, 0x02a3, 0x048a, 0x008b,
|
||||
0x7802, 0x6329, 0x6bc8, 0x7ebc, 0x63c8, 0x7ebc, 0x008c, 0x4800,
|
||||
0x7d15, 0x0488, 0x0015, 0x0015, 0x6edf, 0x7803, 0x632b, 0x6bc8,
|
||||
0x0000, 0x7eae, 0x63c8, 0x7eae, 0x008c, 0x3803, 0x6edd, 0x7803,
|
||||
0x6329, 0x6bc8, 0x0000, 0x7ea4, 0x63c8, 0x7ea4, 0x0006, 0x3d03,
|
||||
0x4d00, 0x7d0e, 0x0b04, 0x03a5, 0x02db, 0x7d01, 0x038a, 0x02a3,
|
||||
0x048a, 0x008b, 0x7802, 0x63c8, 0x6b09, 0x7e1e, 0x7f1e, 0x008c,
|
||||
0x0488, 0x0015, 0x0015, 0x6dcf, 0x0288, 0x008a, 0x0d08, 0x02dd,
|
||||
0x7c01, 0x008d, 0x7802, 0x63c8, 0x6b0b, 0x7e0e, 0x6b28, 0x7f0d,
|
||||
0x0000, 0x02dd, 0x7c02, 0x2208, 0x990d, 0x008c, 0x3803, 0x65c0,
|
||||
0x6dc5, 0x7802, 0x63c8, 0x6b09, 0x6b28, 0x0006, 0x0870, 0x0011,
|
||||
0x5010, 0xc0ec, 0x7d5e, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
|
||||
0x7d02, 0x0200, 0x992c, 0x6ec3, 0x6d07, 0x5df0, 0x0dff, 0x0511,
|
||||
0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0b70, 0x0311, 0x522b, 0x5313,
|
||||
0x02b9, 0x4a00, 0x7c04, 0x6a28, 0x7f3a, 0x0400, 0x993c, 0x008f,
|
||||
0x00d5, 0x7d01, 0x008d, 0x05a0, 0x0a03, 0x0212, 0x02bc, 0x0210,
|
||||
0x4a00, 0x7d1c, 0x4a02, 0x7d20, 0x4a01, 0x7d23, 0x0b70, 0x0311,
|
||||
0x53eb, 0x62c8, 0x7e24, 0x0360, 0x7d02, 0x0210, 0x0212, 0x6a09,
|
||||
0x7f1e, 0x0212, 0x6a09, 0x7f1b, 0x0212, 0x6a09, 0x7f18, 0x2003,
|
||||
0x4800, 0x7cef, 0x0b70, 0x0311, 0x5313, 0x997d, 0x0015, 0x0015,
|
||||
0x7802, 0x62c8, 0x6a0b, 0x997c, 0x0015, 0x7802, 0x62c8, 0x6a0a,
|
||||
0x997c, 0x7802, 0x62c8, 0x6a09, 0x7c02, 0x0000, 0x993a, 0xdb13,
|
||||
0x6a28, 0x7ffd, 0x008b, 0x52c3, 0x53cb, 0xc10d, 0x7da5, 0x0200,
|
||||
0x992c, 0x0200, 0x9929, 0xc19d, 0xc0ec, 0x7d69, 0x0c70, 0x0411,
|
||||
0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe, 0x56fa, 0x7d02,
|
||||
0x0200, 0x9994, 0x6d07, 0x5bca, 0x5cd2, 0x0bff, 0x0311, 0x1bff,
|
||||
0x04bb, 0x0415, 0x53da, 0x4c00, 0x7d47, 0x0a70, 0x0211, 0x552a,
|
||||
0x5212, 0x008d, 0x00bb, 0x4800, 0x7c07, 0x05b9, 0x4d00, 0x7c13,
|
||||
0x6928, 0x7f2d, 0x0400, 0x99a5, 0x008f, 0x0015, 0x04d8, 0x7d01,
|
||||
0x008c, 0x04a0, 0x0015, 0x7802, 0x55c6, 0x6d0b, 0x7e29, 0x6d28,
|
||||
0x7f1e, 0x0000, 0x99a3, 0x1e20, 0x5506, 0x2620, 0x008d, 0x0560,
|
||||
0x7c08, 0x065f, 0x55c6, 0x063f, 0x7e1b, 0x6d0a, 0x7f10, 0x4c00,
|
||||
0x7d1b, 0x04d8, 0x7d02, 0x008c, 0x0020, 0x04a0, 0x0015, 0x7802,
|
||||
0x55c6, 0x6d0b, 0x7e0d, 0x6d28, 0x7f02, 0x0000, 0x99ec, 0x0007,
|
||||
0x680c, 0x6d0c, 0x6507, 0x6d07, 0x6d2b, 0x6d28, 0x0007, 0x680c,
|
||||
0x0007, 0x54d2, 0x0454, 0x99ef, 0x6928, 0x7ff1, 0x54d2, 0x008a,
|
||||
0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7d9f, 0x0200, 0x9994, 0x0200,
|
||||
0x998c, 0xc0ec, 0x7d72, 0x0800, 0x0970, 0x0111, 0x5111, 0x5ac1,
|
||||
0x5bc9, 0x028e, 0xc0fe, 0x068a, 0x7c6a, 0x5dd9, 0x5ce1, 0x0bff,
|
||||
0x0311, 0x1bff, 0x03bc, 0x5bd1, 0x1a5c, 0x6ac3, 0x63c8, 0x0363,
|
||||
0x7c05, 0x036f, 0x7d27, 0x0374, 0x7c7a, 0x9a71, 0xdb04, 0x3c06,
|
||||
0x4c00, 0x7df7, 0x028f, 0x1a04, 0x6a23, 0x620b, 0x6f23, 0x301f,
|
||||
0x00aa, 0x0462, 0x7c04, 0x4a00, 0x7d0b, 0x2001, 0x9a30, 0x048a,
|
||||
0x620b, 0x2201, 0x1c01, 0x1801, 0x02dc, 0x7d02, 0x301f, 0x00aa,
|
||||
0x048f, 0x1c04, 0x6c07, 0x0488, 0x3c1f, 0x6c2b, 0x0045, 0x028e,
|
||||
0x1a5c, 0x9a11, 0x058f, 0x1d0c, 0x6d23, 0x650b, 0x007d, 0x7c01,
|
||||
0x1d08, 0x007c, 0x7c01, 0x1d04, 0x6d23, 0x650b, 0x0488, 0x3c1f,
|
||||
0x0417, 0x0417, 0x0417, 0x0417, 0x059c, 0x6d23, 0x028e, 0x1a34,
|
||||
0x6ad7, 0x0488, 0x0804, 0x7802, 0x650b, 0x6dc8, 0x008c, 0x1a28,
|
||||
0x6ad7, 0x63c8, 0x034c, 0x6bc8, 0x54d1, 0x4c00, 0x7d06, 0x0065,
|
||||
0x7c02, 0x0101, 0x0025, 0x0400, 0x9a0d, 0x52c1, 0x53c9, 0x54e1,
|
||||
0x0453, 0xc10d, 0x7d95, 0x0200, 0x9a00, 0x0200, 0x99f9, 0x0200,
|
||||
0x9a00, 0x55d9, 0x6d07, 0x54d1, 0x058a, 0x2508, 0x6dc7, 0x0373,
|
||||
0x7c03, 0x65c8, 0x6d0b, 0x2408, 0x0372, 0x7c04, 0x65c8, 0x6d0b,
|
||||
0x2408, 0x9a86, 0x6cce, 0x65c8, 0x6d0a, 0x2404, 0x6d28, 0x6507,
|
||||
0x5dd9, 0x5cd1, 0x6ad7, 0x6ae3, 0x63c8, 0x0334, 0x6bc8, 0x0370,
|
||||
0x7ca9, 0x0c60, 0x0411, 0x04bb, 0x4c00, 0x7da4, 0x0410, 0x1c30,
|
||||
0x0410, 0x04bb, 0x046d, 0x7d0a, 0x047d, 0x7c03, 0x047c, 0x7c01,
|
||||
0x9a3a, 0x003b, 0x003a, 0x0039, 0x0058, 0x9ab5, 0x047d, 0x7d03,
|
||||
0x047c, 0x7d01, 0x9a3a, 0x005b, 0xdaf9, 0x1d18, 0x6d23, 0x650b,
|
||||
0x0510, 0x003a, 0x0039, 0x0038, 0x00ad, 0xdb04, 0x0c30, 0x0410,
|
||||
0x04bb, 0x003c, 0x003d, 0x00ac, 0xdaf9, 0x007b, 0x7c04, 0x003d,
|
||||
0x003c, 0x1d0c, 0x9ad6, 0x048f, 0x1c14, 0x6c23, 0x640b, 0x4401,
|
||||
0x7d04, 0x005d, 0x005c, 0x1d0c, 0x9ad6, 0x0310, 0x3b30, 0x4b30,
|
||||
0x7d01, 0x1b10, 0x0310, 0x003d, 0x003c, 0x00ab, 0x6ad7, 0x63c8,
|
||||
0x6d23, 0x650b, 0x0560, 0x7d03, 0x005e, 0xdaed, 0x9a3a, 0x003e,
|
||||
0x0c80, 0x0410, 0x0394, 0xdaed, 0x640b, 0x037f, 0x7d02, 0x1a14,
|
||||
0x9aea, 0x1a0c, 0x6ad7, 0x6cc8, 0x9a3a, 0x0c7f, 0x0410, 0x03b4,
|
||||
0x04b8, 0x03ac, 0x640b, 0x6bc8, 0x028e, 0x1a04, 0x6ad7, 0x6cc8,
|
||||
0x0006, 0x058f, 0x1d08, 0x6d23, 0x650b, 0x007d, 0x7c01, 0x1d38,
|
||||
0x007c, 0x7c01, 0x1d1c, 0x0006, 0x048b, 0x042c, 0x0454, 0x042b,
|
||||
0x6ad7, 0x6cc8, 0x0006, 0x0007, 0x684c, 0x6144, 0x9b1c, 0x0007,
|
||||
0x68cc, 0x61d0, 0x9b1c, 0x0007, 0x680c, 0x680c, 0x6107, 0x6907,
|
||||
0x692b, 0x6928, 0x0007, 0x680c, 0x0d70, 0x0511, 0x5515, 0x55f5,
|
||||
0x01a5, 0x0dff, 0x0512, 0x1dff, 0x0512, 0x04bd, 0x0499, 0x0454,
|
||||
0x0006, 0x08ff, 0x0011, 0x28ff, 0x0006, 0x038c, 0x0eff, 0x0611,
|
||||
0x2eff, 0x03b6, 0x0006, 0x53d6, 0x0398, 0x5bd6, 0x53ee, 0x0398,
|
||||
0x5bee, 0x0006, 0x52de, 0x53e6, 0x54ee, 0x0498, 0x0454, 0x0006,
|
||||
0x50f6, 0x52c6, 0x53ce, 0x54d6, 0x0498, 0x0454, 0x0006, 0x6207,
|
||||
0x0b70, 0x0311, 0x5013, 0x55f0, 0x02a5, 0x0bff, 0x0312, 0x1bff,
|
||||
0x0312, 0x04bb, 0x049a, 0x0006, 0x1e10, 0x0870, 0x0011, 0x5010,
|
||||
0xc0ec, 0x7d39, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
|
||||
0x0200, 0x9b5b, 0x6d07, 0x5df0, 0x0dff, 0x0511, 0x1dff, 0x05bc,
|
||||
0x4d00, 0x7d17, 0x6ec3, 0x62c8, 0x7e28, 0x0264, 0x7d08, 0x0b70,
|
||||
0x0311, 0x522b, 0x02b9, 0x4a00, 0x7c18, 0x0400, 0x9b6a, 0x0212,
|
||||
0x3aff, 0x008a, 0x05d8, 0x7d01, 0x008d, 0x0a10, 0x6ed3, 0x6ac8,
|
||||
0xdba5, 0x6a28, 0x7f17, 0x0b70, 0x0311, 0x5013, 0xdbbd, 0x52c0,
|
||||
0x53c8, 0xc10d, 0x7dd0, 0x0200, 0x9b5b, 0x008f, 0x00d5, 0x7d01,
|
||||
0x008d, 0xdba5, 0x9b68, 0x0200, 0x9b58, 0x0007, 0x68cc, 0x6a28,
|
||||
0x7f01, 0x9ba3, 0x0007, 0x6a0c, 0x6a0c, 0x6207, 0x6a07, 0x6a2b,
|
||||
0x6a28, 0x0007, 0x680c, 0x0454, 0x9b81, 0x05a0, 0x1e08, 0x6ec3,
|
||||
0x0388, 0x3b03, 0x0015, 0x0015, 0x7802, 0x62c8, 0x6a0b, 0x7ee5,
|
||||
0x6a28, 0x7fe8, 0x0000, 0x6ec1, 0x008b, 0x7802, 0x62c8, 0x6a09,
|
||||
0x7edc, 0x6a28, 0x7fdf, 0x2608, 0x0006, 0x55f0, 0x6207, 0x02a5,
|
||||
0x0dff, 0x0511, 0x1dff, 0x04b5, 0x049a, 0x0006, 0x0870, 0x0011,
|
||||
0x5010, 0xc0ec, 0x7d78, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
|
||||
0x7d02, 0x0200, 0x9bcc, 0x6d03, 0x6ed3, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x5df8, 0x4d00, 0x7d5e, 0x0b70, 0x0311, 0x522b, 0x5313,
|
||||
0x02b9, 0x4a00, 0x7c04, 0x62ff, 0x7e3f, 0x0400, 0x9bdc, 0x008f,
|
||||
0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5ddb, 0x0d03, 0x0512, 0x05bc,
|
||||
0x0510, 0x5dd3, 0x4d00, 0x7d27, 0x4d02, 0x7d20, 0x4d01, 0x7d1a,
|
||||
0x0b70, 0x0311, 0x53eb, 0x0360, 0x7d05, 0x6509, 0x7e25, 0x620a,
|
||||
0x7e23, 0x9c06, 0x620a, 0x7e20, 0x6509, 0x7e1e, 0x0512, 0x0512,
|
||||
0x02ad, 0x6ac8, 0x7f19, 0x2003, 0x4800, 0x7ced, 0x0b70, 0x0311,
|
||||
0x5313, 0x9c21, 0x7802, 0x6209, 0x6ac8, 0x9c20, 0x0015, 0x7802,
|
||||
0x620a, 0x6ac8, 0x9c20, 0x0015, 0x0015, 0x7802, 0x620b, 0x6ac8,
|
||||
0x7c03, 0x0000, 0x55db, 0x9bda, 0x0007, 0x68cc, 0x680c, 0x55d3,
|
||||
0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9c2f, 0x0017, 0x0017, 0x55db,
|
||||
0x009d, 0x55fb, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010, 0x04b8,
|
||||
0x04ad, 0x0454, 0x62ff, 0x7ee8, 0x008b, 0x52c0, 0x53c8, 0xc10d,
|
||||
0x7d8b, 0x0200, 0x9bcc, 0x0200, 0x9bc9, 0xc19d, 0xc0ec, 0x7d52,
|
||||
0x0c70, 0x0411, 0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe,
|
||||
0x56fa, 0x7d02, 0x0200, 0x9c4e, 0x6d03, 0x5bca, 0x5cd2, 0x0bff,
|
||||
0x0311, 0x1bff, 0x04bb, 0x0415, 0x53da, 0x0a70, 0x0211, 0x4c00,
|
||||
0x7d28, 0x552a, 0x05bb, 0x4d00, 0x7c02, 0x0400, 0x9c61, 0x4c01,
|
||||
0x7d0f, 0x008f, 0x0015, 0x04d8, 0x7d01, 0x008c, 0x0020, 0x04a0,
|
||||
0x0015, 0x7802, 0x650b, 0x5d06, 0x0000, 0x7e0c, 0x7f0d, 0x9c5f,
|
||||
0x650a, 0x7e08, 0x008d, 0x0011, 0x0010, 0x05a8, 0x065f, 0x5d06,
|
||||
0x063f, 0x7f02, 0x0007, 0x680c, 0x0007, 0x5012, 0x54d0, 0x0454,
|
||||
0x9c8b, 0x5012, 0x54d0, 0x0473, 0x7c06, 0x552a, 0x05b9, 0x4d00,
|
||||
0x7c02, 0x0400, 0x9c8d, 0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7db6,
|
||||
0x0200, 0x9c4e, 0x0200, 0x9c46, 0x0870, 0x0011, 0x5010, 0xc0ec,
|
||||
0x7d46, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
|
||||
0x9ca2, 0x0b70, 0x0311, 0x6ed3, 0x6d03, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x4d00, 0x7d2b, 0x522b, 0x02b9, 0x4a00, 0x7c04, 0x62c8,
|
||||
0x7e1f, 0x0400, 0x9cb3, 0x008f, 0x00d5, 0x7d01, 0x008d, 0x05a0,
|
||||
0x0060, 0x7c05, 0x6edd, 0x6209, 0x7e16, 0x6ac8, 0x7f11, 0x0015,
|
||||
0x0060, 0x7c05, 0x6ede, 0x620a, 0x7e0e, 0x6ac8, 0x7f09, 0x6edf,
|
||||
0x0015, 0x7802, 0x620b, 0x6ac8, 0x0000, 0x7e05, 0x7f01, 0x9cb1,
|
||||
0x0007, 0x68cc, 0x9cdd, 0x0007, 0x6a0c, 0x0454, 0x62c8, 0x7ef8,
|
||||
0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7dbd, 0x0200, 0x9ca2, 0x0200,
|
||||
0x9c9f, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d29, 0x5010, 0x5ac0,
|
||||
0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9cf0, 0x0870, 0x0011,
|
||||
0x6d03, 0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d12, 0x5228,
|
||||
0x02b9, 0x4a00, 0x7c02, 0x0400, 0x9cff, 0x620b, 0x7e06, 0x5a06,
|
||||
0x7f06, 0x0000, 0x2504, 0x7d05, 0x9cff, 0x0007, 0x680c, 0x0007,
|
||||
0x0454, 0x5010, 0x52c0, 0xc10d, 0x7ddb, 0x0200, 0x9cf0, 0x0200,
|
||||
0x9cec, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d74, 0x5010, 0x5ac0,
|
||||
0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9d20, 0x6d03,
|
||||
0x0d03, 0x0512, 0x05bc, 0x0510, 0x5dd0, 0x0dff, 0x0511, 0x1dff,
|
||||
0x05bc, 0x5df8, 0x4d00, 0x7d57, 0x0a70, 0x0211, 0x532a, 0x5212,
|
||||
0x03b9, 0x4b00, 0x7c02, 0x0400, 0x9d34, 0x008f, 0x05d8, 0x7d01,
|
||||
0x008d, 0x05a0, 0x5dda, 0x55d2, 0x4d00, 0x7d27, 0x4d02, 0x7d20,
|
||||
0x4d01, 0x7d1a, 0x0a70, 0x0211, 0x52ea, 0x0260, 0x7d05, 0x6509,
|
||||
0x7e25, 0x630a, 0x7e23, 0x9d58, 0x630a, 0x7e20, 0x6509, 0x7e1e,
|
||||
0x0512, 0x0512, 0x03ad, 0x5b06, 0x7f19, 0x2003, 0x4800, 0x7ced,
|
||||
0x0a70, 0x0211, 0x5212, 0x9d73, 0x7802, 0x6309, 0x5b06, 0x9d72,
|
||||
0x0015, 0x7802, 0x630a, 0x5b06, 0x9d72, 0x0015, 0x0015, 0x7802,
|
||||
0x630b, 0x5b06, 0x7c03, 0x55da, 0x0000, 0x9d32, 0x0007, 0x680c,
|
||||
0x55d2, 0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9d80, 0x0017, 0x0017,
|
||||
0x55da, 0x009d, 0x55fa, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010,
|
||||
0x04b8, 0x04ad, 0x0454, 0x008a, 0x52c0, 0x53c8, 0xc10d, 0x7d90,
|
||||
0x0200, 0x9d20, 0x0200, 0x9d1c, 0xc19d, 0x0870, 0x0011, 0xc0ec,
|
||||
0x7d35, 0x5010, 0x5ac0, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
|
||||
0x9d9b, 0x0870, 0x0011, 0x6d07, 0x0dff, 0x0511, 0x1dff, 0x05bc,
|
||||
0x4d00, 0x7d1c, 0x5228, 0x02b9, 0x4a00, 0x7c04, 0x6928, 0x7f0b,
|
||||
0x0400, 0x9daa, 0x5206, 0x7e10, 0x6a0b, 0x6928, 0x7f04, 0x0000,
|
||||
0x2504, 0x7d0c, 0x9daa, 0x0007, 0x680c, 0x680c, 0x6207, 0x6a07,
|
||||
0x6a2b, 0x6a28, 0x0007, 0x680c, 0x0007, 0x0454, 0x6928, 0x7ff3,
|
||||
0x5010, 0x52c0, 0xc10d, 0x7dcf, 0x0200, 0x9d9b, 0x0200, 0x9d97,
|
||||
0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d5e, 0x5010, 0x5ac0, 0x5bc8,
|
||||
0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9dd7, 0x6d07, 0x5df0,
|
||||
0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0a70, 0x0211,
|
||||
0x532a, 0x5212, 0x03b9, 0x4b00, 0x7c04, 0x6a28, 0x7f3a, 0x0400,
|
||||
0x9de6, 0x008f, 0x05d8, 0x7d01, 0x008d, 0x05a0, 0x0b03, 0x0312,
|
||||
0x03bc, 0x0310, 0x4b00, 0x7d1c, 0x4b02, 0x7d20, 0x4b01, 0x7d23,
|
||||
0x0a70, 0x0211, 0x52ea, 0x5306, 0x7e24, 0x0260, 0x7d02, 0x0310,
|
||||
0x0312, 0x6b09, 0x7f1e, 0x0312, 0x6b09, 0x7f1b, 0x0312, 0x6b09,
|
||||
0x7f18, 0x2003, 0x4800, 0x7cef, 0x0a70, 0x0211, 0x5212, 0x9e27,
|
||||
0x0015, 0x0015, 0x7802, 0x5306, 0x6b0b, 0x9e26, 0x0015, 0x7802,
|
||||
0x5306, 0x6b0a, 0x9e26, 0x7802, 0x5306, 0x6b09, 0x7c02, 0x0000,
|
||||
0x9de4, 0xdb13, 0x6928, 0x7ffd, 0x008a, 0x52c0, 0x53c8, 0xc10d,
|
||||
0x7da6, 0x0200, 0x9dd7, 0x0200, 0x9dd3, 0x0870, 0x0011, 0x5010,
|
||||
0xc0ec, 0x7d5b, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
|
||||
0x0200, 0x9e3b, 0x0b70, 0x0311, 0x6ec3, 0x6d07, 0x5df0, 0x0dff,
|
||||
0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d3d, 0x522b, 0x02b9, 0x4a00,
|
||||
0x7c04, 0x6a28, 0x7f33, 0x0400, 0x9e4d, 0x028e, 0x1a94, 0x6ac3,
|
||||
0x62c8, 0x0269, 0x7d1b, 0x1e94, 0x6ec3, 0x6ed3, 0x62c8, 0x0248,
|
||||
0x6ac8, 0x2694, 0x6ec3, 0x62c8, 0x026e, 0x7d31, 0x6a09, 0x7f1e,
|
||||
0x2501, 0x4d00, 0x7d1f, 0x028e, 0x1a98, 0x6ac3, 0x62c8, 0x6ec3,
|
||||
0x0260, 0x7df1, 0x6a28, 0x7f12, 0xdb47, 0x9e8c, 0x6ee3, 0x008f,
|
||||
0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x62c8, 0x026e, 0x7d17,
|
||||
0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9e4b, 0x0289, 0xdb13,
|
||||
0x018a, 0x9e9b, 0x6a28, 0x7ffa, 0x0b70, 0x0311, 0x5013, 0x52c0,
|
||||
0x53c8, 0xc10d, 0x7da8, 0x0200, 0x9e3b, 0x0200, 0x9e38, 0x6a28,
|
||||
0x7fed, 0xdb47, 0x9e9b, 0x0458, 0x0454, 0x9e8c, 0xc19d, 0x0870,
|
||||
0x0011, 0xc0ec, 0x7d54, 0x5010, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe,
|
||||
0x56f8, 0x7d02, 0x0200, 0x9ea5, 0x0b70, 0x0311, 0x6d07, 0x5df0,
|
||||
0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d36, 0x522b, 0x02b9,
|
||||
0x4a00, 0x7c04, 0x6928, 0x7f2c, 0x0400, 0x9eb6, 0x028e, 0x1a94,
|
||||
0x5202, 0x0269, 0x7d16, 0x1e94, 0x5206, 0x0248, 0x5a06, 0x2694,
|
||||
0x5206, 0x026e, 0x7d2e, 0x6a09, 0x7f1b, 0x2501, 0x4d00, 0x7d1c,
|
||||
0x028e, 0x1a98, 0x5202, 0x0260, 0x7df3, 0x6a28, 0x7f11, 0xdb47,
|
||||
0x9eee, 0x008f, 0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5206,
|
||||
0x026e, 0x7d17, 0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9eb4,
|
||||
0x0289, 0xdb13, 0x018a, 0x9efd, 0x6928, 0x7ffa, 0x0b70, 0x0311,
|
||||
0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7db0, 0x0200, 0x9ea5, 0x0200,
|
||||
0x9ea1, 0x6a28, 0x7fed, 0xdb47, 0x9efd, 0x0458, 0x0454, 0x9eee
|
||||
};
|
||||
|
||||
/* REV 2 */
|
||||
|
|
|
@ -403,8 +403,8 @@ struct context_data
|
|||
*/
|
||||
struct script_data
|
||||
{
|
||||
unsigned long load_address; /* start address of the script */
|
||||
unsigned long wml; /* parameters for the channel descriptor */
|
||||
unsigned long load_address; /* start address of the script */
|
||||
unsigned long wml; /* parameters for the channel descriptor */
|
||||
unsigned long shp_addr; /* shared peripheral base address */
|
||||
unsigned long event_mask1; /* first event mask */
|
||||
unsigned long event_mask2; /* second event mask */
|
||||
|
|
|
@ -134,7 +134,7 @@ void lcd_set_contrast(int val)
|
|||
lcd_contrast = val << 8;
|
||||
|
||||
if (!power_on)
|
||||
return;
|
||||
return;
|
||||
|
||||
/* VCOMG=1, VDV4-0=xxxxx, VCM4-0=11000 */
|
||||
lcd_write_reg(R_POWER_CONTROL5, 0x2018 | lcd_contrast);
|
||||
|
|
|
@ -26,8 +26,8 @@
|
|||
|
||||
#define SMLAL(lo, hi, x, y) \
|
||||
asm volatile ("smlal %0, %1, %2, %3" \
|
||||
: "+r" (lo), "+r" (hi) \
|
||||
: "%r" (x), "r" (y))
|
||||
: "+r" (lo), "+r" (hi) \
|
||||
: "%r" (x), "r" (y))
|
||||
|
||||
const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] =
|
||||
{
|
||||
|
|
|
@ -114,8 +114,8 @@ void copy_read_sectors(unsigned char* buf, int wordcount)
|
|||
DISRCC0 = 0x1;
|
||||
/* Dest mapped to physical address, on AHB bus, increment */
|
||||
DIDST0 = (int) buf;
|
||||
if(DIDST0 < 0x30000000)
|
||||
DIDST0 += 0x30000000;
|
||||
if(DIDST0 < 0x30000000)
|
||||
DIDST0 += 0x30000000;
|
||||
DIDSTC0 = 0;
|
||||
|
||||
/* DACK/DREQ Sync to AHB, Whole service, No reload, 16-bit transfers */
|
||||
|
|
|
@ -127,12 +127,12 @@ void pcm_postinit(void)
|
|||
void pcm_dma_apply_settings(void)
|
||||
{
|
||||
#ifdef HAVE_UDA1341
|
||||
unsigned int reg_val;
|
||||
unsigned int reg_val;
|
||||
/* set prescaler and master clock rate according to freq */
|
||||
reg_val = (pcm_freq_parms [pcm_fsel][0] << 5) | pcm_freq_parms [pcm_fsel][0];
|
||||
|
||||
IISMOD = (IISMOD & ~IISMOD_MASTER_CLOCK_384FS) | pcm_freq_parms [pcm_fsel][1] ;
|
||||
IISPSR = reg_val;
|
||||
IISPSR = reg_val;
|
||||
#endif
|
||||
|
||||
audiohw_set_frequency(pcm_fsel);
|
||||
|
|
|
@ -32,7 +32,7 @@ struct nand_device_info_type
|
|||
uint16_t blocks;
|
||||
uint16_t userblocks;
|
||||
uint16_t pagesperblock;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t tunk1;
|
||||
uint8_t twp;
|
||||
uint8_t tunk2;
|
||||
|
|
|
@ -32,7 +32,7 @@ struct nand_device_info_type
|
|||
uint16_t blocks;
|
||||
uint16_t userblocks;
|
||||
uint16_t pagesperblock;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t tunk1;
|
||||
uint8_t twp;
|
||||
uint8_t tunk2;
|
||||
|
|
|
@ -32,7 +32,7 @@ struct nand_device_info_type
|
|||
uint16_t blocks;
|
||||
uint16_t userblocks;
|
||||
uint16_t pagesperblock;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t blocksizeexponent;
|
||||
uint8_t tunk1;
|
||||
uint8_t twp;
|
||||
uint8_t tunk2;
|
||||
|
|
|
@ -139,7 +139,7 @@ void lcd_set_contrast(int val)
|
|||
lcd_contrast = val << 8;
|
||||
|
||||
if (!power_on)
|
||||
return;
|
||||
return;
|
||||
|
||||
/* VCOMG=1, VDV4-0=xxxxx, VCM4-0=11000 */
|
||||
lcd_write_reg(R_POWER_CONTROL5, 0x2018 | lcd_contrast);
|
||||
|
|
|
@ -54,7 +54,7 @@ int button_read_device(void)
|
|||
|
||||
if (GPIOA & 0x80) btn |= BUTTON_SELECT;
|
||||
if (GPIOA & 0x100) btn |= BUTTON_POWER;
|
||||
}
|
||||
}
|
||||
return btn;
|
||||
}
|
||||
|
||||
|
|
|
@ -102,13 +102,13 @@ void lcd_init_device(void)
|
|||
(2 << 11) | /* Setup time = 2 cycles */
|
||||
(2 << 3) | /* Pulse width = 2+1 cycles */
|
||||
(2 << 0); /* Hold time = 2 cycle */
|
||||
|
||||
|
||||
GPIOE &= ~0x8;
|
||||
sleep(HZ/100); /* 10ms */
|
||||
|
||||
GPIOE |= 0x08;
|
||||
sleep(HZ/100); /* 10ms */
|
||||
|
||||
|
||||
lcd_send_command(R_STANDBY_OFF);
|
||||
sleep(HZ/20); /* 50ms */
|
||||
|
||||
|
@ -192,7 +192,7 @@ int lcd_default_contrast(void)
|
|||
|
||||
void lcd_set_contrast(int val)
|
||||
{
|
||||
//val &= 0xFF;
|
||||
//val &= 0xFF;
|
||||
lcd_send_command(R_CONTRAST_CONTROL1);
|
||||
lcd_send_command(val);
|
||||
}
|
||||
|
|
|
@ -77,19 +77,19 @@ static void gpio_init(void)
|
|||
GPIOD_FUNC = 0;
|
||||
GPIOD_DIR = 0x3f0;
|
||||
GPIOD = 0xe0;
|
||||
|
||||
|
||||
GPIOE_FUNC = 0;
|
||||
GPIOE_DIR = 0xe0;
|
||||
GPIOE = 0;
|
||||
|
||||
|
||||
GPIOA_FUNC = 0;
|
||||
GPIOA_DIR = 0xffff1000; /* 0 - 0xf000 */
|
||||
GPIOA = 0x1080;
|
||||
|
||||
|
||||
GPIOB_FUNC = 0x16a3;
|
||||
GPIOB_DIR = 0x6ffff;
|
||||
GPIOB = 0;
|
||||
|
||||
|
||||
GPIOC_FUNC = 1;
|
||||
GPIOC_DIR = 0x03ffffff; /* mvn r2, 0xfc000000 */
|
||||
GPIOC = 0;
|
||||
|
@ -128,7 +128,7 @@ static void gpio_init(void)
|
|||
GPIOC_FUNC = 1;
|
||||
GPIOD_FUNC |= 2;
|
||||
GPIOE_FUNC = 0;
|
||||
|
||||
|
||||
GPIOA_DIR = 0xFFFF0E00;
|
||||
GPIOB_DIR = 0x6FFFF;
|
||||
GPIOC_DIR = 0x03FFFFFF;
|
||||
|
@ -258,7 +258,7 @@ http://infocenter.arm.com/help/topic/com.arm.doc.ddi0201d/DDI0201D_arm946es_r1p1
|
|||
"mcr p15, 0, r0, c6, c7, 0 \n\t"
|
||||
"mcr p15, 0, r0, c6, c7, 1 \n\t"
|
||||
|
||||
|
||||
|
||||
/* Register 5 - Access Permission Registers */
|
||||
|
||||
"ldr r0, =0xffff \n\t"
|
||||
|
|
|
@ -66,7 +66,7 @@ void IRAM_ATTR GIO7(void)
|
|||
#ifdef DEBUG
|
||||
//printf("GIO7 interrupt... [%d]", current_tick);
|
||||
#endif
|
||||
usb_drv_int();
|
||||
usb_drv_int();
|
||||
|
||||
IO_INTC_IRQ1 = INTR_IRQ1_EXT7;
|
||||
IO_INTC_IRQ1 = INTR_IRQ1_EXT7;
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ bool __dbg_ports(void)
|
|||
#if defined(MROBE_500)
|
||||
int line = 0;
|
||||
int i;
|
||||
int button;
|
||||
int button;
|
||||
bool done=false;
|
||||
|
||||
lcd_setfont(FONT_SYSFIXED);
|
||||
|
@ -124,7 +124,7 @@ bool __dbg_ports(void)
|
|||
bool __dbg_hw_info(void)
|
||||
{
|
||||
int line = 0, oldline;
|
||||
int button;
|
||||
int button;
|
||||
#if defined(MROBE_500)
|
||||
int *address=0x0;
|
||||
#endif
|
||||
|
@ -175,18 +175,18 @@ bool __dbg_hw_info(void)
|
|||
IO_INTC_EINT2, IO_INTC_IRQ0);
|
||||
lcd_putsf(0, line++, " IO_INTC_IRQ1: 0x%04x IO_INTC_IRQ2: 0x%04x ",
|
||||
IO_INTC_IRQ1, IO_INTC_IRQ2);
|
||||
|
||||
|
||||
lcd_puts(0, line++, "Board revision:");
|
||||
switch (IO_BUSC_REVR) {
|
||||
case 0x0010:
|
||||
lcd_puts(0, line++, " DM320 Rev. A");
|
||||
break;
|
||||
case 0x0011:
|
||||
lcd_puts(0, line++, " DM320 Rev. B/C");
|
||||
break;
|
||||
default:
|
||||
lcd_puts(0, line++, " Unknown DM320 Chip ID");
|
||||
}
|
||||
switch (IO_BUSC_REVR) {
|
||||
case 0x0010:
|
||||
lcd_puts(0, line++, " DM320 Rev. A");
|
||||
break;
|
||||
case 0x0011:
|
||||
lcd_puts(0, line++, " DM320 Rev. B/C");
|
||||
break;
|
||||
default:
|
||||
lcd_puts(0, line++, " Unknown DM320 Chip ID");
|
||||
}
|
||||
|
||||
#if defined(MROBE_500)
|
||||
line++;
|
||||
|
|
|
@ -42,24 +42,24 @@ interrupt void handle_int0(void) {
|
|||
waiting = 0;
|
||||
|
||||
if(dma0_stopped==0)
|
||||
{
|
||||
if(!(DMPREC&0x01))
|
||||
{
|
||||
/* Give the HPIB access to refill first */
|
||||
rebuffer();
|
||||
|
||||
/* Start the MCBSP DMA */
|
||||
DMPREC |= 1;
|
||||
audiohw_start();
|
||||
}
|
||||
else
|
||||
{
|
||||
rebuffer();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rebuffer();
|
||||
{
|
||||
if(!(DMPREC&0x01))
|
||||
{
|
||||
/* Give the HPIB access to refill first */
|
||||
rebuffer();
|
||||
|
||||
/* Start the MCBSP DMA */
|
||||
DMPREC |= 1;
|
||||
audiohw_start();
|
||||
}
|
||||
else
|
||||
{
|
||||
rebuffer();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rebuffer();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -88,8 +88,8 @@ void debugf(const char *fmt, ...) {
|
|||
vsnprintf((char *)status.payload.debugf.buffer, sizeof(status), fmt, args);
|
||||
va_end(args);
|
||||
|
||||
startack();
|
||||
waitack();
|
||||
startack();
|
||||
waitack();
|
||||
|
||||
acked = 2;
|
||||
}
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
* $Id$
|
||||
*
|
||||
* Copyright (C) 2008 by Catalin Patulea
|
||||
* Copyright (C) 2008 by Maurus Cuelenaere
|
||||
* Copyright (C) 2008 by Maurus Cuelenaere
|
||||
* Copyright (C) 2009 by Karl Kurbjun
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
|
@ -23,139 +23,139 @@
|
|||
|
||||
#include "registers.h"
|
||||
#include "arm.h"
|
||||
#include "ipc.h"
|
||||
|
||||
/* Size of data buffer in words (16 bit) */
|
||||
#define DSP_BUFFER_SIZE (0x1000)
|
||||
#include "ipc.h"
|
||||
|
||||
/* Put the "data" buffer in it's own .dma section so that it can
|
||||
/* Size of data buffer in words (16 bit) */
|
||||
#define DSP_BUFFER_SIZE (0x1000)
|
||||
|
||||
/* Put the "data" buffer in it's own .dma section so that it can
|
||||
* be handled in the linker.cmd. */
|
||||
#pragma DATA_SECTION (data, ".dma")
|
||||
|
||||
#pragma DATA_SECTION (data, ".dma")
|
||||
|
||||
/* This is the "data" buffer on the DSP side used for SARAM to McBSP (IIS) */
|
||||
static signed short data[DSP_BUFFER_SIZE];
|
||||
|
||||
/* These two describe the location of the buffer on the ARM (set in DSPHINT) */
|
||||
volatile unsigned short sdem_addrh;
|
||||
volatile unsigned short sdem_addrl;
|
||||
|
||||
/* This is the size of the ARM buffer (set in DSPHINT) */
|
||||
volatile unsigned short sdem_dsp_size;
|
||||
|
||||
/* These two variables keep track of the buffer level in the DSP, dsp_level,
|
||||
* (SARAM to McBSP) and the level on the ARM buffer (sdem_level).
|
||||
* sdem_level is used in the main firmware to keep track of the current
|
||||
* playback status. dsp_level is only used in this function. */
|
||||
static unsigned short dsp_level;
|
||||
volatile unsigned short sdem_level;
|
||||
|
||||
/* This is used to keep track of the last SDRAM to SARAM transfer */
|
||||
static unsigned short last_size;
|
||||
|
||||
/* This tells us which half of the DSP buffer (data) is free */
|
||||
static unsigned short dma0_unlocked;
|
||||
|
||||
/* This is used by the ARM to flag playback status and start/stop the DMA
|
||||
* transfers. */
|
||||
volatile unsigned short sdem_addrl;
|
||||
|
||||
/* This is the size of the ARM buffer (set in DSPHINT) */
|
||||
volatile unsigned short sdem_dsp_size;
|
||||
|
||||
/* These two variables keep track of the buffer level in the DSP, dsp_level,
|
||||
* (SARAM to McBSP) and the level on the ARM buffer (sdem_level).
|
||||
* sdem_level is used in the main firmware to keep track of the current
|
||||
* playback status. dsp_level is only used in this function. */
|
||||
static unsigned short dsp_level;
|
||||
volatile unsigned short sdem_level;
|
||||
|
||||
/* This is used to keep track of the last SDRAM to SARAM transfer */
|
||||
static unsigned short last_size;
|
||||
|
||||
/* This tells us which half of the DSP buffer (data) is free */
|
||||
static unsigned short dma0_unlocked;
|
||||
|
||||
/* This is used by the ARM to flag playback status and start/stop the DMA
|
||||
* transfers. */
|
||||
volatile unsigned short dma0_stopped;
|
||||
|
||||
/* This is used to effectively flag whether the ARM has new data ready or not */
|
||||
short waiting;
|
||||
|
||||
|
||||
/* rebuffer sets up the next SDRAM to SARAM transfer and tells the ARM when DMA
|
||||
* needs a new buffer.
|
||||
*
|
||||
* Note: The upper limit on larger buffers is the size of a short. If larger
|
||||
* buffer sizes are needed the code on the ARM side needs to be changed to
|
||||
* update a full long.
|
||||
*/
|
||||
void rebuffer(void)
|
||||
{
|
||||
unsigned long sdem_addr;
|
||||
|
||||
if(dma0_stopped==1 || dma0_stopped==2) /* Stop / Pause */
|
||||
{
|
||||
/* Stop MCBSP DMA0 */
|
||||
DMPREC &= 0xFFFE;
|
||||
/* Shut the transmitter down */
|
||||
audiohw_stop();
|
||||
|
||||
/* Stop the HPIB transfer if it is running */
|
||||
DMA_TRG = 0;
|
||||
|
||||
/* Reset the following variables for DMA restart */
|
||||
sdem_level = 0;
|
||||
dsp_level = 0;
|
||||
last_size = 0;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/* If the sdem_level is equal to the buffer size the ARM code gave
|
||||
* (sdem_dsp_size) then reset the size and ask the arm for another buffer
|
||||
*/
|
||||
if(sdem_level == sdem_dsp_size)
|
||||
{
|
||||
sdem_level=0;
|
||||
|
||||
/* Get a new buffer (location and size) from ARM */
|
||||
status.msg = MSG_REFILL;
|
||||
waiting=1;
|
||||
|
||||
|
||||
/* This is used to effectively flag whether the ARM has new data ready or not */
|
||||
short waiting;
|
||||
|
||||
|
||||
/* rebuffer sets up the next SDRAM to SARAM transfer and tells the ARM when DMA
|
||||
* needs a new buffer.
|
||||
*
|
||||
* Note: The upper limit on larger buffers is the size of a short. If larger
|
||||
* buffer sizes are needed the code on the ARM side needs to be changed to
|
||||
* update a full long.
|
||||
*/
|
||||
void rebuffer(void)
|
||||
{
|
||||
unsigned long sdem_addr;
|
||||
|
||||
if(dma0_stopped==1 || dma0_stopped==2) /* Stop / Pause */
|
||||
{
|
||||
/* Stop MCBSP DMA0 */
|
||||
DMPREC &= 0xFFFE;
|
||||
/* Shut the transmitter down */
|
||||
audiohw_stop();
|
||||
|
||||
/* Stop the HPIB transfer if it is running */
|
||||
DMA_TRG = 0;
|
||||
|
||||
/* Reset the following variables for DMA restart */
|
||||
sdem_level = 0;
|
||||
dsp_level = 0;
|
||||
last_size = 0;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/* If the sdem_level is equal to the buffer size the ARM code gave
|
||||
* (sdem_dsp_size) then reset the size and ask the arm for another buffer
|
||||
*/
|
||||
if(sdem_level == sdem_dsp_size)
|
||||
{
|
||||
sdem_level=0;
|
||||
|
||||
/* Get a new buffer (location and size) from ARM */
|
||||
status.msg = MSG_REFILL;
|
||||
waiting=1;
|
||||
|
||||
/* trigger DSPHINT on the ARM */
|
||||
int_arm();
|
||||
}
|
||||
|
||||
if(!waiting)
|
||||
{
|
||||
/* Size is in bytes (but forced 32 bit transfers). Comparison is
|
||||
* against DSP_BUFFER_SIZE because it is in words and this needs to
|
||||
* compare against half the total size in bytes. */
|
||||
if( dsp_level + sdem_dsp_size - sdem_level > DSP_BUFFER_SIZE)
|
||||
{
|
||||
last_size = DSP_BUFFER_SIZE - dsp_level;
|
||||
}
|
||||
else
|
||||
{
|
||||
int_arm();
|
||||
}
|
||||
|
||||
if(!waiting)
|
||||
{
|
||||
/* Size is in bytes (but forced 32 bit transfers). Comparison is
|
||||
* against DSP_BUFFER_SIZE because it is in words and this needs to
|
||||
* compare against half the total size in bytes. */
|
||||
if( dsp_level + sdem_dsp_size - sdem_level > DSP_BUFFER_SIZE)
|
||||
{
|
||||
last_size = DSP_BUFFER_SIZE - dsp_level;
|
||||
}
|
||||
else
|
||||
{
|
||||
last_size = sdem_dsp_size - sdem_level;
|
||||
}
|
||||
|
||||
/* DSP addresses are 16 bit (word). dsp_level is in bytes so it needs to
|
||||
}
|
||||
|
||||
/* DSP addresses are 16 bit (word). dsp_level is in bytes so it needs to
|
||||
* be converted to words. */
|
||||
DSP_ADDRL = (unsigned short)data + dma0_unlocked + (dsp_level >> 1);
|
||||
DSP_ADDRH = 0;
|
||||
|
||||
/* SDRAM addresses are 8 bit (byte)
|
||||
* Warning: These addresses are forced to 32 bit alignment!
|
||||
*/
|
||||
sdem_addr = ((unsigned long)sdem_addrh << 16 | sdem_addrl) + sdem_level;
|
||||
SDEM_ADDRL = sdem_addr & 0xffff;
|
||||
SDEM_ADDRH = sdem_addr >> 16;
|
||||
|
||||
/* Set the size of the SDRAM to SARAM transfer (demac transfer) */
|
||||
DMA_SIZE = last_size;
|
||||
DSP_ADDRH = 0;
|
||||
|
||||
/* SDRAM addresses are 8 bit (byte)
|
||||
* Warning: These addresses are forced to 32 bit alignment!
|
||||
*/
|
||||
sdem_addr = ((unsigned long)sdem_addrh << 16 | sdem_addrl) + sdem_level;
|
||||
SDEM_ADDRL = sdem_addr & 0xffff;
|
||||
SDEM_ADDRH = sdem_addr >> 16;
|
||||
|
||||
/* Set the size of the SDRAM to SARAM transfer (demac transfer) */
|
||||
DMA_SIZE = last_size;
|
||||
|
||||
DMA_CTRL = 0;
|
||||
|
||||
|
||||
/* These are just debug signals that are not used/needed right now */
|
||||
status.payload.refill._DMA_TRG = DMA_TRG;
|
||||
status.payload.refill._SDEM_ADDRH = SDEM_ADDRH;
|
||||
status.payload.refill._SDEM_ADDRL = SDEM_ADDRL;
|
||||
status.payload.refill._DSP_ADDRH = DSP_ADDRH;
|
||||
status.payload.refill._DSP_ADDRL = DSP_ADDRL;
|
||||
|
||||
|
||||
/* Start the demac transfer */
|
||||
DMA_TRG = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* This interupt handler is for the SARAM (on DSP) to McBSP IIS DMA transfer.
|
||||
* It interupts at 1/2 empty and empty so that we can start filling a new buffer
|
||||
* from SDRAM when a half is free. dsp_level should always be full when this
|
||||
DMA_TRG = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* This interupt handler is for the SARAM (on DSP) to McBSP IIS DMA transfer.
|
||||
* It interupts at 1/2 empty and empty so that we can start filling a new buffer
|
||||
* from SDRAM when a half is free. dsp_level should always be full when this
|
||||
* interupt occurs except for the initial start. */
|
||||
interrupt void handle_dma0(void)
|
||||
{
|
||||
interrupt void handle_dma0(void)
|
||||
{
|
||||
/* Byte offset to half-buffer locked by DMA0.
|
||||
0 for top, DSP_BUFFER_SIZE/2 for bottom */
|
||||
unsigned short dma0_locked;
|
||||
|
@ -163,70 +163,70 @@ interrupt void handle_dma0(void)
|
|||
IFR = 1 << 6;
|
||||
|
||||
/* DMSRC0 is the beginning of the DMA0-locked SARAM half-buffer. */
|
||||
DMSA = 0x00 /* DMSRC0 (banked register, see page 133 of SPRU302B */;
|
||||
|
||||
/* Note that these address offsets (dma0_locked and dma0_unlocked are in
|
||||
DMSA = 0x00 /* DMSRC0 (banked register, see page 133 of SPRU302B */;
|
||||
|
||||
/* Note that these address offsets (dma0_locked and dma0_unlocked are in
|
||||
* words. */
|
||||
dma0_locked = DMSDN & (DSP_BUFFER_SIZE>>1);
|
||||
dma0_unlocked = dma0_locked ^ (DSP_BUFFER_SIZE>>1);
|
||||
|
||||
dsp_level = 0;
|
||||
|
||||
/* Start the SDRAM to SARAM copy */
|
||||
dma0_unlocked = dma0_locked ^ (DSP_BUFFER_SIZE>>1);
|
||||
|
||||
dsp_level = 0;
|
||||
|
||||
/* Start the SDRAM to SARAM copy */
|
||||
rebuffer();
|
||||
}
|
||||
|
||||
/* This interupt handler runs every time a DMA transfer is complete from SDRAM
|
||||
* to the SARAM buffer. It is used to update the SARAM buffer level
|
||||
* (dsp_level), the SDRAM buffer level (sdem_level) and to rebuffer if the dsp
|
||||
|
||||
/* This interupt handler runs every time a DMA transfer is complete from SDRAM
|
||||
* to the SARAM buffer. It is used to update the SARAM buffer level
|
||||
* (dsp_level), the SDRAM buffer level (sdem_level) and to rebuffer if the dsp
|
||||
* buffer is not full. */
|
||||
interrupt void handle_dmac(void) {
|
||||
IFR = 1 << 11; /* Clear interrupt */
|
||||
|
||||
/* dsp_level and sdem_level are in bytes */
|
||||
dsp_level += last_size;
|
||||
sdem_level += last_size;
|
||||
|
||||
/* compare to DSP_BUFFER_SIZE without a divide because it is in words and
|
||||
* we want half the total size in bytes. */
|
||||
if(dsp_level < DSP_BUFFER_SIZE)
|
||||
{
|
||||
rebuffer();
|
||||
IFR = 1 << 11; /* Clear interrupt */
|
||||
|
||||
/* dsp_level and sdem_level are in bytes */
|
||||
dsp_level += last_size;
|
||||
sdem_level += last_size;
|
||||
|
||||
/* compare to DSP_BUFFER_SIZE without a divide because it is in words and
|
||||
* we want half the total size in bytes. */
|
||||
if(dsp_level < DSP_BUFFER_SIZE)
|
||||
{
|
||||
rebuffer();
|
||||
}
|
||||
}
|
||||
|
||||
void dma_init(void) {
|
||||
/* Initialize some of the global variables to known values avoiding the
|
||||
* .cinit section. */
|
||||
dsp_level = 0;
|
||||
sdem_level = 0;
|
||||
|
||||
last_size = 0;
|
||||
dma0_unlocked = 0;
|
||||
dma0_stopped = 1;
|
||||
|
||||
waiting = 0;
|
||||
void dma_init(void) {
|
||||
/* Initialize some of the global variables to known values avoiding the
|
||||
* .cinit section. */
|
||||
dsp_level = 0;
|
||||
sdem_level = 0;
|
||||
|
||||
last_size = 0;
|
||||
dma0_unlocked = 0;
|
||||
dma0_stopped = 1;
|
||||
|
||||
waiting = 0;
|
||||
|
||||
/* Configure SARAM to McBSP DMA */
|
||||
|
||||
/* Configure SARAM to McBSP DMA */
|
||||
|
||||
/* Event XEVT0, 32-bit transfers, 0 frame count */
|
||||
DMSFC0 = 2 << 12 | 1 << 11;
|
||||
|
||||
/* Interrupts generated, Half and full buffer.
|
||||
* ABU mode, From data space with postincrement, to data space with no
|
||||
* change
|
||||
DMSFC0 = 2 << 12 | 1 << 11;
|
||||
|
||||
/* Interrupts generated, Half and full buffer.
|
||||
* ABU mode, From data space with postincrement, to data space with no
|
||||
* change
|
||||
*/
|
||||
DMMCR0 = 1 << 14 | 1 << 13 |
|
||||
1 << 12 | 1 << 8 | 1 << 6 | 1;
|
||||
|
||||
1 << 12 | 1 << 8 | 1 << 6 | 1;
|
||||
|
||||
/* Set the source (incrementing) location */
|
||||
DMSRC0 = (unsigned short)&data;
|
||||
|
||||
DMSRC0 = (unsigned short)&data;
|
||||
|
||||
/* Set the destination (static) location to the McBSP IIS interface */
|
||||
DMDST0 = (unsigned short)&DXR20;
|
||||
|
||||
DMDST0 = (unsigned short)&DXR20;
|
||||
|
||||
/* Set the size of the buffer */
|
||||
DMCTR0 = sizeof(data);
|
||||
DMCTR0 = sizeof(data);
|
||||
|
||||
/* Setup DMA0 interrupts and start the transfer */
|
||||
DMPREC = 2 << 6;
|
||||
|
|
|
@ -20,19 +20,19 @@
|
|||
*
|
||||
*/
|
||||
static const unsigned short _section_text[] = {
|
||||
0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0001, 0x10f8, 0x031d, 0x76f8, 0x031e, 0x0000, 0xfa44, 0x00c2, 0xf495, 0xeeff, 0x7712, 0x0054, 0x960f, 0xf830, 0x00c2, 0xf074, 0x00fc, 0x7711, 0x0054, 0x6981, 0x0001, 0xf074, 0x02af, 0xf073, 0x00c4, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0x4a11, 0x7711, 0x0026, 0x7712, 0x0001, 0x7713, 0x0001, 0x7681, 0x0010, 0x7711, 0x0000, 0x7681, 0xffff, 0xe501, 0xf495, 0xf6bb, 0xf074, 0x0284, 0xf074, 0x0243, 0xf4e1, 0xf495, 0xf073, 0x00f3, 0xe808, 0x75f8, 0x0008, 0x0280, 0xfc00, 0x4a11, 0x60f8, 0x031d, 0x0001, 0xfa30, 0x0109, 0xf495, 0xeefe, 0x60f8, 0x031d, 0x0002, 0xf820, 0x011e, 0x7711, 0x0054, 0x6881, 0xfffe, 0xf074, 0x02ba, 0xe800, 0x75f8, 0x0008, 0x8006, 0x76f8, 0x031b, 0x0000, 0x76f8, 0x0319, 0x0000, 0x76f8, 0x031a, 0x0000, 0xf073, 0x018b, 0x10f8, 0x031a, 0x08f8, 0x0318, 0xf844, 0x012f, 0x76f8, 0x031a, 0x0000, 0x76f8, 0x031e, 0x0001, 0x76f8, 0x02c5, 0x0003, 0xf074, 0x00f7, 0x10f8, 0x031e, 0xf844, 0x018b, 0x10f8, 0x0318, 0x00f8, 0x0319, 0x08f8, 0x031a, 0x8811, 0xf495, 0x7710, 0x1000, 0xf6a9, 0xf820, 0x0146, 0xf020, 0x1000, 0xf273, 0x014a, 0x08f8, 0x0319, 0x10f8, 0x0318, 0x08f8, 0x031a, 0x80f8, 0x031b, 0x10f8, 0x031c, 0xf6b8, 0xf000, 0x8000, 0x6ff8, 0x0319, 0x0c1f, 0x75f8, 0x0008, 0x8002, 0xe800, 0x75f8, 0x0008, 0x8003, 0x10f8, 0x0316, 0xf1ef, 0xf3e1, 0x10f8, 0x0317, 0xf2a0, 0x00f8, 0x031a, 0x4e00, 0xf020, 0xffff, 0x5700, 0xf280, 0x75f8, 0x0008, 0x8000, 0x5600, 0xf0f0, 0x75f8, 0x0008, 0x8001, 0xe800, 0x75f8, 0x031b, 0x8004, 0x75f8, 0x0008, 0x8005, 0x74f8, 0x02c7, 0x8006, 0x74f8, 0x02c8, 0x8001, 0x74f8, 0x02c9, 0x8000, 0x74f8, 0x02ca, 0x8003, 0xe801, 0x74f8, 0x02cb, 0x8002, 0x75f8, 0x0008, 0x8006, 0xee02, 0x8a11, 0xfc00, 0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0040, 0x7711, 0x0055, 0x7681, 0x0000, 0xf020, 0x0800, 0x7711, 0x0057, 0xeeff, 0x1881, 0x8000, 0xf020, 0x0800, 0x1c00, 0x76f8, 0x0319, 0x0000, 0x80f8, 0x031c, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0800, 0x10f8, 0x031b, 0x00f8, 0x0319, 0x80f8, 0x0319, 0x7710, 0x1000, 0x7211, 0x0319, 0x10f8, 0x031b, 0xf5a9, 0xeeff, 0x00f8, 0x031a, 0xfa20, 0x0228, 0x80f8, 0x031a, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0x4a11, 0x7711, 0x0055, 0x76f8, 0x031a, 0x0000, 0x76f8, 0x0319, 0x0000, 0x76f8, 0x031b, 0x0000, 0x76f8, 0x031c, 0x0000, 0x76f8, 0x031e, 0x0000, 0x76f8, 0x031d, 0x0001, 0x7681, 0x0003, 0x7711, 0x0057, 0x7681, 0x2800, 0x7711, 0x0055, 0x7681, 0x0004, 0x7711, 0x0057, 0x7681, 0x7141, 0x7711, 0x0055, 0x7681, 0x0000, 0x7711, 0x0057, 0x7681, 0x8000, 0x7711, 0x0055, 0x7681, 0x0001, 0x7711, 0x0057, 0x7681, 0x0022, 0x7711, 0x0055, 0x7681, 0x0002, 0x7711, 0x0057, 0x7681, 0x1000, 0x7711, 0x0054, 0x7681, 0x0080, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0000, 0x7711, 0x0039, 0x7681, 0x0000, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x7681, 0x0030, 0x7711, 0x0038, 0x7681, 0x000e, 0x7711, 0x0039, 0x7681, 0x0002, 0x7711, 0x0038, 0x7681, 0x0004, 0x7711, 0x0039, 0x7681, 0x00a0, 0x7711, 0x0038, 0x7681, 0x0005, 0x7711, 0x0039, 0x7681, 0x0000, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x6981, 0x0001, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x6881, 0xfffe, 0x8a11, 0xfc00,
|
||||
0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0001, 0x10f8, 0x031d, 0x76f8, 0x031e, 0x0000, 0xfa44, 0x00c2, 0xf495, 0xeeff, 0x7712, 0x0054, 0x960f, 0xf830, 0x00c2, 0xf074, 0x00fc, 0x7711, 0x0054, 0x6981, 0x0001, 0xf074, 0x02af, 0xf073, 0x00c4, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0x4a11, 0x7711, 0x0026, 0x7712, 0x0001, 0x7713, 0x0001, 0x7681, 0x0010, 0x7711, 0x0000, 0x7681, 0xffff, 0xe501, 0xf495, 0xf6bb, 0xf074, 0x0284, 0xf074, 0x0243, 0xf4e1, 0xf495, 0xf073, 0x00f3, 0xe808, 0x75f8, 0x0008, 0x0280, 0xfc00, 0x4a11, 0x60f8, 0x031d, 0x0001, 0xfa30, 0x0109, 0xf495, 0xeefe, 0x60f8, 0x031d, 0x0002, 0xf820, 0x011e, 0x7711, 0x0054, 0x6881, 0xfffe, 0xf074, 0x02ba, 0xe800, 0x75f8, 0x0008, 0x8006, 0x76f8, 0x031b, 0x0000, 0x76f8, 0x0319, 0x0000, 0x76f8, 0x031a, 0x0000, 0xf073, 0x018b, 0x10f8, 0x031a, 0x08f8, 0x0318, 0xf844, 0x012f, 0x76f8, 0x031a, 0x0000, 0x76f8, 0x031e, 0x0001, 0x76f8, 0x02c5, 0x0003, 0xf074, 0x00f7, 0x10f8, 0x031e, 0xf844, 0x018b, 0x10f8, 0x0318, 0x00f8, 0x0319, 0x08f8, 0x031a, 0x8811, 0xf495, 0x7710, 0x1000, 0xf6a9, 0xf820, 0x0146, 0xf020, 0x1000, 0xf273, 0x014a, 0x08f8, 0x0319, 0x10f8, 0x0318, 0x08f8, 0x031a, 0x80f8, 0x031b, 0x10f8, 0x031c, 0xf6b8, 0xf000, 0x8000, 0x6ff8, 0x0319, 0x0c1f, 0x75f8, 0x0008, 0x8002, 0xe800, 0x75f8, 0x0008, 0x8003, 0x10f8, 0x0316, 0xf1ef, 0xf3e1, 0x10f8, 0x0317, 0xf2a0, 0x00f8, 0x031a, 0x4e00, 0xf020, 0xffff, 0x5700, 0xf280, 0x75f8, 0x0008, 0x8000, 0x5600, 0xf0f0, 0x75f8, 0x0008, 0x8001, 0xe800, 0x75f8, 0x031b, 0x8004, 0x75f8, 0x0008, 0x8005, 0x74f8, 0x02c7, 0x8006, 0x74f8, 0x02c8, 0x8001, 0x74f8, 0x02c9, 0x8000, 0x74f8, 0x02ca, 0x8003, 0xe801, 0x74f8, 0x02cb, 0x8002, 0x75f8, 0x0008, 0x8006, 0xee02, 0x8a11, 0xfc00, 0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0040, 0x7711, 0x0055, 0x7681, 0x0000, 0xf020, 0x0800, 0x7711, 0x0057, 0xeeff, 0x1881, 0x8000, 0xf020, 0x0800, 0x1c00, 0x76f8, 0x0319, 0x0000, 0x80f8, 0x031c, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0xf495, 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17, 0x4a17, 0x4a19, 0x4a0e, 0x4a06, 0x4a07, 0x4a1a, 0x4a1d, 0x4a1b, 0x4a1c, 0x68f8, 0x0007, 0x7d3f, 0x69f8, 0x0007, 0x4000, 0x68f8, 0x001d, 0xfffc, 0x4818, 0x68f8, 0x0018, 0xfffe, 0x7711, 0x0001, 0x4a08, 0x7681, 0x0800, 0x10f8, 0x031b, 0x00f8, 0x0319, 0x80f8, 0x0319, 0x7710, 0x1000, 0x7211, 0x0319, 0x10f8, 0x031b, 0xf5a9, 0xeeff, 0x00f8, 0x031a, 0xfa20, 0x0228, 0x80f8, 0x031a, 0xf074, 0x00fc, 0xee01, 0x8a18, 0xf495, 0x8a1c, 0x8a1b, 0x8a1d, 0x8a1a, 0x8a07, 0x8a06, 0x8a0e, 0x8a19, 0x8a17, 0x8a17, 0x8a16, 0x8a15, 0x8a14, 0x8a13, 0x8a12, 0x8a11, 0x8a10, 0x8a0d, 0x8a0c, 0x8a0b, 0x8a0a, 0x8a09, 0x8a08, 0xf4eb, 0x4a11, 0x7711, 0x0055, 0x76f8, 0x031a, 0x0000, 0x76f8, 0x0319, 0x0000, 0x76f8, 0x031b, 0x0000, 0x76f8, 0x031c, 0x0000, 0x76f8, 0x031e, 0x0000, 0x76f8, 0x031d, 0x0001, 0x7681, 0x0003, 0x7711, 0x0057, 0x7681, 0x2800, 0x7711, 0x0055, 0x7681, 0x0004, 0x7711, 0x0057, 0x7681, 0x7141, 0x7711, 0x0055, 0x7681, 0x0000, 0x7711, 0x0057, 0x7681, 0x8000, 0x7711, 0x0055, 0x7681, 0x0001, 0x7711, 0x0057, 0x7681, 0x0022, 0x7711, 0x0055, 0x7681, 0x0002, 0x7711, 0x0057, 0x7681, 0x1000, 0x7711, 0x0054, 0x7681, 0x0080, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0000, 0x7711, 0x0039, 0x7681, 0x0000, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x7681, 0x0030, 0x7711, 0x0038, 0x7681, 0x000e, 0x7711, 0x0039, 0x7681, 0x0002, 0x7711, 0x0038, 0x7681, 0x0004, 0x7711, 0x0039, 0x7681, 0x00a0, 0x7711, 0x0038, 0x7681, 0x0005, 0x7711, 0x0039, 0x7681, 0x0000, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x6981, 0x0001, 0x8a11, 0xfc00, 0x4a11, 0x7711, 0x0038, 0x7681, 0x0001, 0x7711, 0x0039, 0x6881, 0xfffe, 0x8a11, 0xfc00,
|
||||
};
|
||||
static const unsigned short _section_vectors[] = {
|
||||
0xf273, 0x00df, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf273, 0x0080, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf273, 0x018e, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf273, 0x01e8, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495,
|
||||
0xf273, 0x00df, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf273, 0x0080, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf273, 0x018e, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495, 0xf273, 0x01e8, 0xf495, 0xf495, 0xf4eb, 0xf495, 0xf495, 0xf495,
|
||||
};
|
||||
|
||||
|
||||
static const struct dsp_section dsp_image[] = {
|
||||
{_section_text, 0x0080, 0x0245},
|
||||
{NULL /* .bss */, 0x02c5, 0x005a},
|
||||
{_section_vectors, 0x7f80, 0x0080},
|
||||
{NULL /* .dma */, 0x8000, 0x1000},
|
||||
{NULL, 0, 0}
|
||||
{_section_text, 0x0080, 0x0245},
|
||||
{NULL /* .bss */, 0x02c5, 0x005a},
|
||||
{_section_vectors, 0x7f80, 0x0080},
|
||||
{NULL /* .dma */, 0x8000, 0x1000},
|
||||
{NULL, 0, 0}
|
||||
};
|
||||
|
||||
/* Symbol table, usable with the DSP_() macro (see dsp-target.h). */
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
*/
|
||||
|
||||
static const struct dsp_section dsp_image_helloworld[] = {
|
||||
{NULL, 0, 0}
|
||||
{NULL, 0, 0}
|
||||
};
|
||||
|
||||
/* Symbol table, usable with the DSP_() macro (see dsp-target.h). */
|
||||
|
|
|
@ -69,14 +69,14 @@ void lcd_sleep()
|
|||
if (lcd_on)
|
||||
{
|
||||
lcd_on = false;
|
||||
memset16(FRAME, 0xFFFF, LCD_WIDTH*LCD_HEIGHT);
|
||||
sleep(HZ/5);
|
||||
memset16(FRAME, 0xFFFF, LCD_WIDTH*LCD_HEIGHT);
|
||||
sleep(HZ/5);
|
||||
/* Disabling these saves another ~15mA */
|
||||
IO_OSD_OSDWINMD0 &= ~(0x01);
|
||||
IO_VID_ENC_VMOD &= ~(0x01);
|
||||
|
||||
/* Disabling the LCD saves ~50mA */
|
||||
IO_GIO_BITCLR2=1<<4; /* pin 36 */
|
||||
IO_VID_ENC_VMOD &= ~(0x01);
|
||||
|
||||
/* Disabling the LCD saves ~50mA */
|
||||
IO_GIO_BITCLR2=1<<4; /* pin 36 */
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -85,11 +85,11 @@ void lcd_awake(void)
|
|||
/* "enabled" implies "powered" */
|
||||
if (!lcd_on)
|
||||
{
|
||||
lcd_on=true;
|
||||
IO_OSD_OSDWINMD0 |= 0x01;
|
||||
IO_VID_ENC_VMOD |= 0x01;
|
||||
|
||||
sleep(2);
|
||||
lcd_on=true;
|
||||
IO_OSD_OSDWINMD0 |= 0x01;
|
||||
IO_VID_ENC_VMOD |= 0x01;
|
||||
|
||||
sleep(2);
|
||||
IO_GIO_BITSET2 = 1<<4;
|
||||
|
||||
lcd_update();
|
||||
|
@ -120,8 +120,8 @@ void lcd_enable_composite(bool enable)
|
|||
{
|
||||
IO_GIO_BITCLR2 = 0x80;
|
||||
vidtemp |= 0x2015;
|
||||
IO_VID_ENC_DCLKCTL = 0x0800;
|
||||
IO_VID_ENC_DCLKPTN0 = 0x0001;
|
||||
IO_VID_ENC_DCLKCTL = 0x0800;
|
||||
IO_VID_ENC_DCLKPTN0 = 0x0001;
|
||||
}
|
||||
|
||||
IO_VID_ENC_VMOD = vidtemp;
|
||||
|
@ -179,40 +179,40 @@ void lcd_init_device(void)
|
|||
/* Clear the Frame */
|
||||
memset16(FRAME, 0x0000, LCD_WIDTH*LCD_HEIGHT);
|
||||
|
||||
IO_OSD_OSDWINMD0 &= ~(0x0001);
|
||||
IO_OSD_VIDWINMD &= ~(0x0001);
|
||||
IO_OSD_OSDWINMD0 &= ~(0x0001);
|
||||
IO_OSD_VIDWINMD &= ~(0x0001);
|
||||
|
||||
/* Setup the LCD controller */
|
||||
IO_VID_ENC_VMOD = 0x2014;
|
||||
IO_VID_ENC_VDCTL = 0x2000;
|
||||
IO_VID_ENC_VDPRO = 0x0000;
|
||||
IO_VID_ENC_SYNCTL = 0x100E;
|
||||
IO_VID_ENC_HSPLS = 1; /* HSYNC pulse width */
|
||||
IO_VID_ENC_VSPLS = 1; /* VSYNC pulse width */
|
||||
|
||||
/* These calculations support 640x480 and 320x240 (based on OF) */
|
||||
IO_VID_ENC_HINT = LCD_NATIVE_WIDTH+LCD_NATIVE_WIDTH/3;
|
||||
IO_VID_ENC_HSTART = LCD_NATIVE_WIDTH/6; /* Back porch */
|
||||
IO_VID_ENC_HVALID = LCD_NATIVE_WIDTH; /* Data valid */
|
||||
IO_VID_ENC_VINT = LCD_NATIVE_HEIGHT+8;
|
||||
IO_VID_ENC_VSTART = 2;
|
||||
IO_VID_ENC_VVALID = LCD_NATIVE_HEIGHT;
|
||||
|
||||
IO_VID_ENC_HSDLY = 0x0000;
|
||||
IO_VID_ENC_VSDLY = 0x0000;
|
||||
IO_VID_ENC_YCCTL = 0x0000;
|
||||
IO_VID_ENC_RGBCTL = 0x0000;
|
||||
IO_VID_ENC_RGBCLP = 0xFF00;
|
||||
IO_VID_ENC_LNECTL = 0x0000;
|
||||
IO_VID_ENC_CULLLNE = 0x0000;
|
||||
IO_VID_ENC_LCDOUT = 0x0000;
|
||||
IO_VID_ENC_BRTS = 0x0000;
|
||||
IO_VID_ENC_BRTW = 0x0000;
|
||||
IO_VID_ENC_ACCTL = 0x0000;
|
||||
IO_VID_ENC_PWMP = 0x0000;
|
||||
IO_VID_ENC_PWMW = 0x0000;
|
||||
/* Setup the LCD controller */
|
||||
IO_VID_ENC_VMOD = 0x2014;
|
||||
IO_VID_ENC_VDCTL = 0x2000;
|
||||
IO_VID_ENC_VDPRO = 0x0000;
|
||||
IO_VID_ENC_SYNCTL = 0x100E;
|
||||
IO_VID_ENC_HSPLS = 1; /* HSYNC pulse width */
|
||||
IO_VID_ENC_VSPLS = 1; /* VSYNC pulse width */
|
||||
|
||||
/* These calculations support 640x480 and 320x240 (based on OF) */
|
||||
IO_VID_ENC_HINT = LCD_NATIVE_WIDTH+LCD_NATIVE_WIDTH/3;
|
||||
IO_VID_ENC_HSTART = LCD_NATIVE_WIDTH/6; /* Back porch */
|
||||
IO_VID_ENC_HVALID = LCD_NATIVE_WIDTH; /* Data valid */
|
||||
IO_VID_ENC_VINT = LCD_NATIVE_HEIGHT+8;
|
||||
IO_VID_ENC_VSTART = 2;
|
||||
IO_VID_ENC_VVALID = LCD_NATIVE_HEIGHT;
|
||||
|
||||
IO_VID_ENC_HSDLY = 0x0000;
|
||||
IO_VID_ENC_VSDLY = 0x0000;
|
||||
IO_VID_ENC_YCCTL = 0x0000;
|
||||
IO_VID_ENC_RGBCTL = 0x0000;
|
||||
IO_VID_ENC_RGBCLP = 0xFF00;
|
||||
IO_VID_ENC_LNECTL = 0x0000;
|
||||
IO_VID_ENC_CULLLNE = 0x0000;
|
||||
IO_VID_ENC_LCDOUT = 0x0000;
|
||||
IO_VID_ENC_BRTS = 0x0000;
|
||||
IO_VID_ENC_BRTW = 0x0000;
|
||||
IO_VID_ENC_ACCTL = 0x0000;
|
||||
IO_VID_ENC_PWMP = 0x0000;
|
||||
IO_VID_ENC_PWMW = 0x0000;
|
||||
|
||||
/* Setup the display */
|
||||
/* Setup the display */
|
||||
IO_OSD_MODE = 0x00ff;
|
||||
|
||||
IO_OSD_ATRMD = 0x0000;
|
||||
|
@ -281,9 +281,9 @@ void lcd_init_device(void)
|
|||
IO_OSD_VIDWIN0XL = LCD_NATIVE_WIDTH;
|
||||
IO_OSD_VIDWIN0YL = LCD_NATIVE_HEIGHT;
|
||||
|
||||
IO_OSD_OSDWINMD0 |= 0x01;
|
||||
|
||||
lcd_enable_composite(false);
|
||||
IO_OSD_OSDWINMD0 |= 0x01;
|
||||
|
||||
lcd_enable_composite(false);
|
||||
}
|
||||
|
||||
#if defined(HAVE_LCD_MODES)
|
||||
|
@ -578,9 +578,9 @@ void lcd_update(void)
|
|||
|
||||
#if defined(HAVE_LCD_MODES) && (HAVE_LCD_MODES & LCD_MODE_PAL256)
|
||||
void lcd_blit_pal256(unsigned char *src, int src_x, int src_y, int x, int y,
|
||||
int width, int height) __attribute__ ((section(".icode")));
|
||||
int width, int height) __attribute__ ((section(".icode")));
|
||||
void lcd_blit_pal256(unsigned char *src, int src_x, int src_y, int x, int y,
|
||||
int width, int height)
|
||||
int width, int height)
|
||||
{
|
||||
#if CONFIG_ORIENTATION == SCREEN_PORTRAIT
|
||||
#if defined(LCD_USE_DMA)
|
||||
|
@ -604,7 +604,7 @@ void lcd_blit_pal256(unsigned char *src, int src_x, int src_y, int x, int y,
|
|||
char *dst=(char *)FRAME
|
||||
+ (LCD_NATIVE_WIDTH+LCD_FUDGE)*(LCD_NATIVE_HEIGHT-1)
|
||||
- (LCD_NATIVE_WIDTH+LCD_FUDGE)*x + y;
|
||||
|
||||
|
||||
src=src+src_x+src_y*width;
|
||||
|
||||
while(height--)
|
||||
|
@ -627,29 +627,29 @@ void lcd_blit_pal256(unsigned char *src, int src_x, int src_y, int x, int y,
|
|||
|
||||
void lcd_pal256_update_pal(fb_data *palette)
|
||||
{
|
||||
unsigned char i;
|
||||
for(i=0; i< 255; i++)
|
||||
{
|
||||
int y, cb, cr;
|
||||
unsigned char r=RGB_UNPACK_RED_LCD(palette[i])<<3;
|
||||
unsigned char g=RGB_UNPACK_GREEN_LCD(palette[i])<<2;
|
||||
unsigned char b=RGB_UNPACK_BLUE_LCD(palette[i])<<3;
|
||||
unsigned char i;
|
||||
for(i=0; i< 255; i++)
|
||||
{
|
||||
int y, cb, cr;
|
||||
unsigned char r=RGB_UNPACK_RED_LCD(palette[i])<<3;
|
||||
unsigned char g=RGB_UNPACK_GREEN_LCD(palette[i])<<2;
|
||||
unsigned char b=RGB_UNPACK_BLUE_LCD(palette[i])<<3;
|
||||
|
||||
y = ((77 * r + 150 * g + 29 * b) >> 8);
cb = ((-43 * r - 85 * g + 128 * b) >> 8) + 128;
|
||||
y = ((77 * r + 150 * g + 29 * b) >> 8);
cb = ((-43 * r - 85 * g + 128 * b) >> 8) + 128;
|
||||
cr = ((128 * r - 107 * g - 21 * b) >> 8) + 128;
|
||||
|
||||
|
||||
while(IO_OSD_MISCCTL&0x08)
|
||||
{};
|
||||
|
||||
/* Write in y and cb */
|
||||
IO_OSD_CLUTRAMYCB= ((unsigned char)y << 8) | (unsigned char)cb;
|
||||
|
||||
/* Write in the index and cr */
|
||||
IO_OSD_CLUTRAMCR=((unsigned char)cr << 8) | i;
|
||||
}
|
||||
|
||||
/* Write in y and cb */
|
||||
IO_OSD_CLUTRAMYCB= ((unsigned char)y << 8) | (unsigned char)cb;
|
||||
|
||||
/* Write in the index and cr */
|
||||
IO_OSD_CLUTRAMCR=((unsigned char)cr << 8) | i;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
void lcd_blit_yuv(unsigned char * const src[3],
|
||||
int src_x, int src_y, int stride,
|
||||
int x, int y, int width,
|
||||
|
@ -665,7 +665,7 @@ void lcd_blit_yuv(unsigned char * const src[3],
|
|||
|
||||
if (!lcd_on)
|
||||
return;
|
||||
|
||||
|
||||
/* y has to be on a 16 pixel boundary */
|
||||
y &= ~0xF;
|
||||
|
||||
|
@ -703,33 +703,33 @@ void lcd_blit_yuv(unsigned char * const src[3],
|
|||
register int y_remain=(stride<<1)-width;
|
||||
do
|
||||
{
|
||||
register fb_data *c_dst=dst;
|
||||
register int c_width=width;
|
||||
register fb_data *c_dst=dst;
|
||||
register int c_width=width;
|
||||
|
||||
do
|
||||
{
|
||||
/* This needs to be done in a block of 4 pixels */
|
||||
|
||||
*c_dst=*yuv_src[0]<<8 | *yuv_src[1];
|
||||
*(c_dst+1)=*(yuv_src[0]+stride)<<8 | *yuv_src[2];
|
||||
c_dst-=(LCD_NATIVE_WIDTH+LCD_FUDGE);
|
||||
|
||||
yuv_src[0]++;
|
||||
|
||||
*c_dst=*yuv_src[0]<<8 | *yuv_src[1];
|
||||
*(c_dst+1)=*(yuv_src[0]+stride)<<8 | *yuv_src[2];
|
||||
c_dst-=(LCD_NATIVE_WIDTH+LCD_FUDGE);
|
||||
|
||||
do
|
||||
{
|
||||
/* This needs to be done in a block of 4 pixels */
|
||||
|
||||
*c_dst=*yuv_src[0]<<8 | *yuv_src[1];
|
||||
*(c_dst+1)=*(yuv_src[0]+stride)<<8 | *yuv_src[2];
|
||||
c_dst-=(LCD_NATIVE_WIDTH+LCD_FUDGE);
|
||||
|
||||
yuv_src[0]++;
|
||||
|
||||
yuv_src[1]++;
|
||||
yuv_src[2]++;
|
||||
|
||||
c_width -= 2;
|
||||
}
|
||||
while (c_width > 0);
|
||||
|
||||
yuv_src[0] += y_remain; /* Skip down two luma lines-width */
|
||||
*c_dst=*yuv_src[0]<<8 | *yuv_src[1];
|
||||
*(c_dst+1)=*(yuv_src[0]+stride)<<8 | *yuv_src[2];
|
||||
c_dst-=(LCD_NATIVE_WIDTH+LCD_FUDGE);
|
||||
|
||||
yuv_src[0]++;
|
||||
|
||||
yuv_src[1]++;
|
||||
yuv_src[2]++;
|
||||
|
||||
c_width -= 2;
|
||||
}
|
||||
while (c_width > 0);
|
||||
|
||||
yuv_src[0] += y_remain; /* Skip down two luma lines-width */
|
||||
yuv_src[1] += cbcr_remain; /* Skip down one chroma line-width/2 */
|
||||
yuv_src[2] += cbcr_remain;
|
||||
dst+=2;
|
||||
|
|
|
@ -51,11 +51,11 @@ void power_init(void)
|
|||
|
||||
unsigned int power_input_status(void)
|
||||
{
|
||||
/* Charger is active low */
|
||||
if(!(IO_GIO_BITSET1&(1<<9)))
|
||||
{
|
||||
return POWER_INPUT_MAIN_CHARGER;
|
||||
}
|
||||
/* Charger is active low */
|
||||
if(!(IO_GIO_BITSET1&(1<<9)))
|
||||
{
|
||||
return POWER_INPUT_MAIN_CHARGER;
|
||||
}
|
||||
return POWER_INPUT_NONE;
|
||||
}
|
||||
|
||||
|
|
|
@ -277,7 +277,7 @@
|
|||
#define QH_NEXT_TERMINATE (0x00000001)
|
||||
#define QH_IOC (0x00008000)
|
||||
#define QH_MULTO (0x00000C00)
|
||||
#define QH_STATUS_HALT (0x00000040)
|
||||
#define QH_STATUS_HALT (0x00000040)
|
||||
#define QH_STATUS_ACTIVE (0x00000080)
|
||||
#define EP_QUEUE_CURRENT_OFFSET_MASK (0x00000FFF)
|
||||
#define EP_QUEUE_HEAD_NEXT_POINTER_MASK (0xFFFFFFE0)
|
||||
|
|
|
@ -151,7 +151,7 @@ static void usb_reset(void)
|
|||
GUSBCFG = 0x1408; /* OTG: 16bit PHY and some reserved bits */
|
||||
|
||||
DCFG = 4; /* Address 0 */
|
||||
DCTL = 0x800; /* Soft Reconnect */
|
||||
DCTL = 0x800; /* Soft Reconnect */
|
||||
DIEPMSK = 0x0D; /* IN EP interrupt mask */
|
||||
DOEPMSK = 0x0D; /* IN EP interrupt mask */
|
||||
GINTMSK = 0xC3000; /* Interrupt mask: IN event, OUT event, bus reset */
|
||||
|
@ -368,7 +368,7 @@ void usb_drv_init(void)
|
|||
|
||||
void usb_drv_exit(void)
|
||||
{
|
||||
DCTL = 0x802; /* Soft Disconnect */
|
||||
DCTL = 0x802; /* Soft Disconnect */
|
||||
|
||||
ORSTCON = 1; /* Put the PHY into reset (needed to get current down) */
|
||||
PCGCCTL = 1; /* Shut down PHY clock */
|
||||
|
@ -407,7 +407,7 @@ int usb_detect(void)
|
|||
#else
|
||||
void usb_init_device(void)
|
||||
{
|
||||
DCTL = 0x802; /* Soft Disconnect */
|
||||
DCTL = 0x802; /* Soft Disconnect */
|
||||
|
||||
ORSTCON = 1; /* Put the PHY into reset (needed to get current down) */
|
||||
PCGCCTL = 1; /* Shut down PHY clock */
|
||||
|
|
Loading…
Reference in a new issue