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


;========================================================================== 
;  File Name 
;  ---------- 
;  G_UPDATE.ASM 
; 
;  Brief Description of the Code: 
;  ------------------------------ 
;  Update table of past quantized energies 
; 
;  Ref 
;  ------ 
;  GAINPRED.C 
;========================================================================== 
;  Function  Gain_update 
;---------------------------------------------------------------------- 
;  void Gain_update( 
;       Word16 past_qua_en[],/* (io) Q10 :Past quantized energies        */ 
;       Word32  L_gbk12   /* (i) Q13 : gbk1[indice1][1]+gbk2[indice2][1] */ 
;       ) 
;---------------------------------------------------------------------- 
;  Input    :  A = L_gbk12 
; 
;  Pointers :  ptr_prev_qua_eng -> past_qua_en 
; 
;---------------------------------------------------------------------- 
;  Modified Registers : AR5 
;----------------------------------------------------------------------- 
		.mmregs 
        .include ..\include\const.h 
        .include ..\include\ld8amem.h 
 
        .def     Gain_update 
        .ref     Log2 
 
        .asg     "Addr_local_buf1", exp 
        .asg     "Addr_local_buf1+1", frac 
 
Gain_update: 
        CALLD   Log2 
        STM     #exp, AR5 
 
        LD      *AR5+, 16, A 
        SUB     #13, 16, A 
        ADD     *AR5, 1, A 
        LD      A, 13, A 
        STM     #24660, T 
        MVDM    ptr_prev_qua_eng, AR5 
        MPYA    A 
 
        MAR     *+AR5(2) 
        DELAY   *AR5- 
        DELAY   *AR5- 
        DELAY   *AR5 
 
        RETD 
        STL     A, -16, *AR5