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

📄 sub_function1.lst

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

   \   0000                    NAME    sub_function1(17)
   \   0000                    RSEG    AP_UI_PLY(0)
   \   0000                    EXTERN  BankSwitch
   \   0000                    PUBLIC  ChangeMusic
   \   0000                    EXTERN  CheckMusicType
   \   0000                    EXTERN  ClearTimePara
   \   0000                    PUBLIC  DealMusicFileEnd
   \   0000                    EXTERN  GetInformation
   \   0000                    EXTERN  PlayStatus
   \   0000                    PUBLIC  SelectCurMusic
   \   0000                    EXTERN  ToNextMusic
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  fselGetLocation
   \   0000                    EXTERN  fselGetNextFile
   \   0000                    EXTERN  fselGetNo
   \   0000                    EXTERN  fselGetPrevFile
   \   0000                    EXTERN  fselGetTotal
   \   0000                    EXTERN  fselInit
   \   0000                    EXTERN  fselSetMode
   \   0000                    EXTERN  g_TagInfoBuf
   \   0000                    EXTERN  g_amv_vars
   \   0000                    EXTERN  g_currentMusicType
   \   0000                    EXTERN  g_musicamount
   \   0000                    EXTERN  g_musicsequence
   \   0000                    EXTERN  g_result
   \   0000                    EXTERN  make_dirname
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?C_S_SWITCH_L06
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    RSEG    AP_UI_PLY
   \   0000            DealMusicFileEnd:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        This program demostrates how to build an AP
      5          *
      6          *        (c) Copyright Actions Co,Ld.
      7          *
      8          *  $Id: sub_function1.c,v 1.1.1.1 2006/05/22 03:24:02 selina Exp $
      9          *******************************************************************************
     10          */
     11          #include "ap_amv.h"
     12          
     13          #pragma codeseg(AP_UI_PLY)
     14          
     15          extern void make_dirname(void);
     16          
     17          
     18          //===========[放到文件尾时的处理]===============
     19          int DealMusicFileEnd( char DisMod)
     20          {
   \   0000  D5                PUSH    DE
     21          
     22                  if (PlayStatus == FBPlaySta)
   \   0001  3A0000            LD      A,(PlayStatus)
   \   0004  FE04              CP      4
   \   0006  2011              JR      NZ,?0003
   \   0008            ?0002:
   \   0008            ?0005:
     23                  {
     24                      while ( ap_get_message() != (AP_KEY_PREV | AP_KEY_UP) );
   \   0008  CD0000            CALL    LWRD ap_get_message
   \   000B  FE25              CP      37
   \   000D  20F9              JR      NZ,?0002
   \   000F            ?0006:
   \   000F            ?0004:
     25                      SelectCurMusic();
   \   000F  3E00              LD      A,BYTE3 SelectCurMusic
   \   0011  213601            LD      HL,LWRD SelectCurMusic
   \   0014  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0017  1833              JR      ?0017
   \   0019            ?0003:
     26          
     27                  }
     28                  else if (PlayStatus == FFPlaySta)
   \   0019  FE03              CP      3
   \   001B  201C              JR      NZ,?0009
   \   001D            ?0008:
   \   001D            ?0011:
     29                  {
     30                      while ( ap_get_message() != (AP_KEY_NEXT | AP_KEY_UP) );
   \   001D  CD0000            CALL    LWRD ap_get_message
   \   0020  FE26              CP      38
   \   0022  20F9              JR      NZ,?0008
   \   0024            ?0012:
   \   0024            ?0010:
     31                      g_result = ToNextMusic(Play_key);
   \   0024  1E02              LD      E,2
   \   0026  3E00              LD      A,BYTE3 ToNextMusic
   \   0028  210000            LD      HL,LWRD ToNextMusic
   \   002B  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   002E  220000            LD      (g_result),HL
     32                      if(g_result == RESULT_UI_STOP) return g_result;
   \   0031  3E66              LD      A,102
   \   0033  AD                XOR     L
   \   0034  B4                OR      H
   \   0035  2015              JR      NZ,?0017
   \   0037            ?0013:
   \   0037  1816              JR      ?0018
     33                  }
   \   0039            ?0014:
     34          
     35                  else
   \   0039            ?0009:
     36                  {
     37                      g_result = ToNextMusic(Play_play);
   \   0039  1E01              LD      E,1
   \   003B  3E00              LD      A,BYTE3 ToNextMusic
   \   003D  210000            LD      HL,LWRD ToNextMusic
   \   0040  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0043  220000            LD      (g_result),HL
     38                      if(g_result == RESULT_UI_STOP) return g_result;
   \   0046  3E66              LD      A,102
   \   0048  AD                XOR     L
   \   0049  B4                OR      H
   \   004A  2803              JR      Z,?0018
   \   004C            ?0016:
     39                  }
   \   004C            ?0017:
   \   004C            ?0015:
   \   004C            ?0007:
     40          
     41                  return NULL;
   \   004C  210000            LD      HL,0
     42          }
   \   004F            ?0018:
   \   004F  F1                POP     AF
   \   0050  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0053            ChangeMusic:
     43          //================================================
     44          
     45          
     46          /*
     47          *******************************************************************************
     48          * Description : 换曲时要做的选曲,初始化动作
     49          * Arguments  :
     50          * Returns     :真时表示可继续放,假时表示要停止放(播放状态)
     51          * Notes       :
     52          *******************************************************************************
     53          */
     54          bool ChangeMusic( BYTE Direct, Music_sel_mod_t mod )
     55          {
   \   0053  C5                PUSH    BC
   \   0054  D5                PUSH    DE
   \   0055  F5                PUSH    AF
     56              bool result;
     57          
     58             //清 WATCH_DOG
     59              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   0056  DB4E              IN      A,(78)
   \   0058  CBDF              SET     3,A
   \   005A  D34E              OUT     (78),A
     60          
     61              ClearTimePara();
   \   005C  3E00              LD      A,BYTE3 ClearTimePara
   \   005E  210000            LD      HL,LWRD ClearTimePara
   \   0061  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     62              g_TagInfoBuf[0] = 0x0;
   \   0064  AF                XOR     A
   \   0065  320000            LD      (g_TagInfoBuf),A
     63              BankSwitch((unsigned long)FSELInit >> 16);
   \   0068  47                LD      B,A
   \   0069  1E00              LD      E,BYTE3 fselInit
   \   006B  48                LD      C,B
   \   006C  CD0000            CALL    LWRD BankSwitch
     64          
     65              if (mod == Play_key)
   \   006F  210400            LD      HL,4
   \   0072  39                ADD     HL,SP
   \   0073  46                LD      B,(HL)
   \   0074  05                DEC     B
   \   0075  05                DEC     B
   \   0076  200D              JR      NZ,?0020
   \   0078            ?0019:
     66              {//play 按键的情况
     67                  switch (g_amv_vars.repeat_mode)
   \   0078  3A0300            LD      A,(g_amv_vars+3)
   \   007B  FE03              CP      3
   \   007D  380A              JR      C,?0051
   \   007F  FE06              CP      6
   \   0081  200A              JR      NZ,?0026
   \   0083            ?0022:

⌨️ 快捷键说明

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