⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 723cache.c

📁 The combined demo is dedicated for S1C33L05, so DMT33L05 should be used to load and run the demo. F
💻 C
字号:
/*
 *  Copyright (C) SEIKO EPSON CORP.2000
 *  All Rights Reserved
 *
 *  File name : ramcopy.c
 *  Function  :
 *      This is copy to RAM.
 *      It has described which program is copied.
 *  Revision  :
 *      Ver 0.10 2000/10/23  Y.Uchiyama  Start
 *      Ver 0.20 2001/01/12  N.Komatsu   Add prefix
 */

#include "g723adec.h"

extern int __START_cache0;     // spkintr3_code
extern int __START_cache1;     // 723e0c33_code
extern int __START_cache2;     // basop_code
extern int __START_cache3;     // lpc_code
extern int __START_cache4;     // util_lbc_code
extern int __START_cache5;     // decod_code
extern int __START_cache6;

extern int __END_cache0;
extern int __START_cache0_lma;
extern int __END_cache1;
extern int __START_cache1_lma;
extern int __END_cache2;
extern int __START_cache2_lma;
extern int __END_cache3;
extern int __START_cache3_lma;
extern int __END_cache4;
extern int __START_cache4_lma;
extern int __END_cache5;
extern int __START_cache5_lma;
extern int __END_cache6;
extern int __START_cache6_lma;

void g723aCodeCopy(int *dst, int *src, int *size)
{
	asm("DCOPY_LOOP:	");
	asm("ld.b	 %r10,[%r7]+");		// read byte from src addr
	asm("ld.b	 [%r6]+,%r10");		// write byte to dest addr
	asm("cmp %r6,%r8	");			//
	asm("jrult DCOPY_LOOP");
}

void g723aDataCopy(int dst, int size)
{
    asm("xld.w	%r11, 0xcccc	");
    asm("HCOPY_LOOP2:		");
    asm("ld.h	[%r12]+, %r11	");
    asm("sub	%r13, 2		");
    asm("jrgt	HCOPY_LOOP2	");
}

void	g723aDecodeCopy(void)
{
//    g723aDataCopy((int)0x0000, ((int)0x1d00));

    g723aCodeCopy(&__START_cache0,&__START_cache0_lma,&__END_cache0);
    g723aCodeCopy(&__START_cache1,&__START_cache1_lma,&__END_cache1);
    g723aCodeCopy(&__START_cache2,&__START_cache2_lma,&__END_cache2);
    g723aCodeCopy(&__START_cache3,&__START_cache3_lma,&__END_cache3);
    g723aCodeCopy(&__START_cache4,&__START_cache4_lma,&__END_cache4);
    g723aCodeCopy(&__START_cache5,&__START_cache5_lma,&__END_cache5);
    g723aCodeCopy(&__START_cache6,&__START_cache6_lma,&__END_cache6);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -