📄 amf_muxnx1_s_render.asm
字号:
// Copyright(c) 2002-2006 Analog Devices, Inc. All Rights Reserved.
// This software is proprietary and confidential to Analog Devices, Inc. and its licensors.
// File : $Id: //depot/Development/VisualAudio/Modules/Packs/MuxDemuxPack/2.5.0/SHARC/Source/AMF_MuxNx1_S_Render.asm#2 $
// Part of : VisualAudio MuxDemuxPack V2.0.1
// Updated : $Date: 2006/10/12 $ by $Author: Fernando $
// Module Name : AMF_MuxNx1_S_Render.asm
// DSP Processor : ADSP-212xx
// Original Author : kishore
// Date : 08/02/05
//====================================================================================
// Processor resources used:
// cycles = n + m*TickSize (Assuming all on-chip)
//====================================================================================
// Revision History:
// 8/2/05 kishore created
// 12/12/05 stilti reformatted
#if 1
#include "AudioProcessing.h"
#include "processor.h"
#include "asm_sprt.h"
.import "AMF_MuxNx1_S.h"; // for OFFSETOF()
.global _AMF_MuxNx1_S_Render;
.type _AMF_MuxNx1_S_Render,STT_FUNC;
.segment /pm SEG_MOD_FAST_CODE;
_AMF_MuxNx1_S_Render:
entry;
puts = mode1;
r2 =i0; puts = r2;
i4 = r4;
i0 = r8; // i4->*buffers
r0=dm((OFFSETOF(AMF_MuxNx1_S, b) + OFFSETOF(AMF_ModuleVariable, inputPinCount)) ,i4); // input pin count
m4 = r0;
r0=dm(OFFSETOF(AMF_MuxNx1_S, Select) ,i4); // Select pin
i4 = dm(m4,i0); // i4=float *out
m4 = r0;
i0 = dm(m4,i0); // i0 = float *in
bit set mode1 PEYEN; // Enable PEy:SIMD
m4 = 2; // SIMD loop increment
// copy from input to output
LCNTR=r12, DO AMF_Mux_Render_loop_end UNTIL LCE;
f0 = dm(i0,m4); // load input
AMF_Mux_Render_loop_end:
dm(i4, m4) = f0; // write output
bit clr mode1 PEYEN; // Disable PEy:SIMD
i0 = gets(1);
mode1 = gets(2);
alter(2);
_AMF_MuxNx1_S_Render.end:
leaf_exit;
#endif;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -