www.pudn.com > g729Decoder.rar > LSP_EXPN.asm


;========================================================================== 
;  File Name 
;  ---------- 
;  LSP_EXPN.ASM 
; 
;  Brief Description of the Code: 
;  ------------------------------ 
;  Check minimum distance between lsp vectors and make adjustment 
;  if necessary. 
; 
;  Ref 
;  ------ 
;  LSPGETQ.C 
;========================================================================== 
 
        .mmregs 
 
        .include  ..\include\const.h 
        .include  ..\include\ld8amem.h 
 
        .text 
        .def    Lsp_expand_1_2 
 
 
;----------------------------------------------------------------------- 
;  Lsp_expand_1_2 
;----------------------------------------------------------------------- 
;  void Lsp_expand_1_2( 
;    Word16 buf[],       /* (i/o) Q13 : LSP vectors */ 
;    Word16 gap          /* (i)   Q13 : gap         */ 
;  ) 
;----------------------------------------------------------------------- 
;  Pointers : ptr_lsp_vec -> buf 
;----------------------------------------------------------------------- 
;  Input : T = gap 
;----------------------------------------------------------------------- 
 
        .asg    "AR2", pLspVecQ13_1 
        .asg    "AR3", pLspVecQ13 
        .asg    "AR4", pGap 
 
Lsp_expand_1_2: 
        MVDM    ptr_lsp_vec, pLspVecQ13_1 
        STM     #M - 2, BRC 
        MVMM    pLspVecQ13_1, pLspVecQ13 
        MAR     *pLspVecQ13+ 
        SUB     *pLspVecQ13_1+, *pLspVecQ13+, B 
 
 
        RPTBD   EndLspExpn - 1 
        STM     #T, pGap 
 
                ADD     *pGap, 16, B 
                BC      NoChange, BLEQ 
                        LD      B, -1, A 
                        LD      A, -16, A 
                        NEG     A, B 
 
                        ADD     *pLspVecQ13_1, A 
                        STL     A, *pLspVecQ13_1- 
 
                        ADD     *pLspVecQ13_1, B 
                        STL     B, *pLspVecQ13_1+ 
NoChange: 
                SUB     *pLspVecQ13_1+, *pLspVecQ13+, B 
EndLspExpn: 
        RET