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

📄 sub_callback.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 2 页
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       25/Dec/106  17:00:43 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d90f\ap\ap_music\sub_callback.c           #
#       List file     =  d:\case_i_d90f\ap\ap_music\list\sub_callback.lst    #
#       Object file   =  d:\case_i_d90f\ap\ap_music\obj\sub_callback.r01     #
#       ASM file      =  d:\case_i_d90f\ap\ap_music\list\sub_callback.s01    #
#       Command line  =  -v0 -mb -OD:\case_i_d90f\ap\ap_music\Obj\ -e -K -w  #
#                        -gA -z9 -RCODE -r0 -DNAPDEBUG                       #
#                        -LD:\case_i_d90f\ap\ap_music\List\ -q -t8           #
#                        -AD:\case_i_d90f\ap\ap_music\List\                  #
#                        -ND:\case_i_d90f\ap\ap_music\List\ -X               #
#                        -Id:\sdk_i_90f\inc\ -Id:\case_i_d90f\inc\           #
#                        d:\case_i_d90f\AP\AP_MUSIC\sub_callback.c           #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    sub_callback(17)
   \   0000                    RSEG    CODE(0)
   \   0000                    RSEG    CONST(0)
   \   0000                    PUBLIC  EQVOLADJ_TAB
   \   0000                    PUBLIC  OutPutVolume
   \   0000                    EXTERN  SRSModeFlag
   \   0000                    EXTERN  SetPAVolume
   \   0000                    EXTERN  UpDisplayFlag
   \   0000                    PUBLIC  bass_user_callback
   \   0000                    PUBLIC  eq_callback
   \   0000                    EXTERN  g_music_vars
   \   0000                    PUBLIC  loop_callback
   \   0000                    EXTERN  musicpSendCommand
   \   0000                    PUBLIC  speed_callback
   \   0000                    PUBLIC  srs_callback
   \   0000                    PUBLIC  srs_user_callback
   \   0000                    PUBLIC  volume_callback
   \   0000                    PUBLIC  wow_user_callback
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?SS_CMP_L02
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_LEAVE_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    EXTERN  ?ENT_PARM_DIRECT_L09
   \   0000                    EXTERN  ?ENT_AUTO_DIRECT_L09
   \   0000                    RSEG    CODE
   \   0000            volume_callback:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        voice player stop program.
      5          *
      6          *        (c) Copyright, Actions Co,Ld.                             
      7          *             All Right Reserved                          
      8          *
      9          *  $Id: sub_callback.c,v 1.1.1.1 2006/05/22 03:24:01 selina Exp $
     10          *******************************************************************************
     11          */
     12          
     13          #include "ap_music.h"
     14                       
     15          #define eqcount_def 8
     16          extern byte SRSModeFlag;
     17          const signed char EQVOLADJ_TAB[eqcount_def] = 
     18          {//EQ音量调整表
     19               0,0,0,0,0,0,0,0
     20          };
     21          
     22          void OutPutVolume(int vol);
     23                        
     24          void volume_callback( int Vol )
     25          {
   \   0000  CD0000            CALL    LWRD ?ENT_PARM_DIRECT_L09
     26              //实时改变音量的值
     27              musicpSendCommand(MC_SETVOLUME, Vol);
   \   0003  4B                LD      C,E
   \   0004  42                LD      B,D
   \   0005  1E40              LD      E,64
   \   0007  CD2700            CALL    LWRD ?0024
     28              g_music_vars.volume = Vol;
   \   000A  DD7E02            LD      A,(IX+2)
   \   000D  320000            LD      (g_music_vars),A
     29              OutPutVolume(g_music_vars.volume);    
   \   0010  ED5B0000          LD      DE,(g_music_vars)
   \   0014  7B                LD      A,E
   \   0015  07                RLCA
   \   0016  9F                SBC     A,A
   \   0017  57                LD      D,A
   \   0018  3E00              LD      A,BYTE3 OutPutVolume
   \   001A  213601            LD      HL,LWRD OutPutVolume
   \   001D  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     30              //g_FadeInStatusFlag = 0;//关闭淡入淡出功能
     31          }
   \   0020  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0023            ?0025:
   \   0023  4D                LD      C,L
   \   0024  44                LD      B,H
   \   0025  1E42              LD      E,66
   \   0027            ?0024:
   \   0027  3E00              LD      A,BYTE3 musicpSendCommand
   \   0029  210000            LD      HL,LWRD musicpSendCommand
   \   002C  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   002F            speed_callback:
     32          
     33          void speed_callback( int speed )
     34          {
   \   002F  CD0000            CALL    LWRD ?ENT_PARM_DIRECT_L09
     35              //实时改变速度
     36              g_music_vars.play_rate = (BYTE)speed;
   \   0032  7B                LD      A,E
   \   0033  320300            LD      (g_music_vars+3),A
     37              musicpSendCommand(MC_SETSPEED, speed); //设置当前的速度
   \   0036  4B                LD      C,E
   \   0037  42                LD      B,D
   \   0038  1E46              LD      E,70
   \   003A            ?0019:
   \   003A  CD2700            CALL    LWRD ?0024
     38          }
   \   003D  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0040            eq_callback:
     39          
     40          void eq_callback( int eq )
     41          {
   \   0040  CD0000            CALL    LWRD ?ENT_PARM_DIRECT_L09
     42              //实时改变EQ的值
     43              g_music_vars.eq_type = eq;
   \   0043  7B                LD      A,E
   \   0044  320200            LD      (g_music_vars+2),A
     44              musicpSendCommand(MC_SETEQ, eq);
   \   0047  4B                LD      C,E
   \   0048  42                LD      B,D
   \   0049  1E43              LD      E,67
   \   004B  CD2700            CALL    LWRD ?0024
     45              UpDisplayFlag = UpDisplayFlag | up_musiceqmode;
   \   004E            ?0022:
   \   004E  210000            LD      HL,UpDisplayFlag
   \   0051  23                INC     HL
   \   0052  CBD6              SET     2,(HL)
     46          }
   \   0054  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0057            srs_callback:
     47          void srs_callback( int srs )
     48          {
   \   0057  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   005A  F6FF              DEFW    -10
     49              //实时改变EQ的值
     50              int temp;
     51              char temp1[10];
     52              if(srs==0)
   \   005C  DD7E02            LD      A,(IX+2)
   \   005F  DDB603            OR      (IX+3)
   \   0062  2023              JR      NZ,?0003
   \   0064            ?0002:
     53              {
     54                g_music_vars.eq_type = 0x4f;//user srs
   \   0064  3E4F              LD      A,79
   \   0066  320200            LD      (g_music_vars+2),A
     55                musicpSendCommand(MC_SETEQ, 0x4f);      
   \   0069  014F00            LD      BC,79
   \   006C  1E43              LD      E,67
   \   006E  CD2700            CALL    LWRD ?0024
     56                temp1[0]=8;
   \   0071  DD36F608          LD      (IX-10),8
     57                temp1[1]=8;
   \   0075  DD36F708          LD      (IX-9),8
     58                temp1[2]=4;
   \   0079  DD36F804          LD      (IX-8),4
     59                musicpSendCommand(MC_SETUSEREQ, (int)&temp1);   
   \   007D  210000            LD      HL,0
   \   0080  39                ADD     HL,SP
   \   0081  CD2300            CALL    LWRD ?0025
     60                SRSModeFlag=0; 
   \   0084  AF                XOR     A
   \   0085  1818              JR      ?0016
   \   0087            ?0003:
     61              }      
     62              else if(srs==1)
   \   0087  3E01              LD      A,1
   \   0089  DDAE02            XOR     (IX+2)
   \   008C  DDB603            OR      (IX+3)
   \   008F  2013              JR      NZ,?0006
   \   0091            ?0005:
     63               {
     64                  g_music_vars.eq_type = 0x4f;//user srs
   \   0091  3E4F              LD      A,79
   \   0093  320200            LD      (g_music_vars+2),A
     65                  musicpSendCommand(MC_SETEQ, 0x4f);
   \   0096  CDB200            CALL    LWRD ?0023
     66                  temp1[0]=g_music_vars.SRSMod.Wow; 
     67                  temp1[1]=g_music_vars.SRSMod.Bass;
     68                  temp1[2]=g_music_vars.SRSMod.Srs;
     69                  musicpSendCommand(MC_SETUSEREQ, (int)&temp1);   
   \   0099  39                ADD     HL,SP
   \   009A  CD2300            CALL    LWRD ?0025
     70                  SRSModeFlag=1; 
   \   009D  3E01              LD      A,1
   \   009F            ?0016:
   \   009F  320000            LD      (SRSModeFlag),A
     71               } 
     72             else 
   \   00A2  180B              JR      ?0007
   \   00A4            ?0006:
     73              {
     74               eq_callback(0);

⌨️ 快捷键说明

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