ui_stop.lst

来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,317 行 · 第 1/5 页

LST
1,317
字号
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       18/Nov/107  22:57:46 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d913f\ap\ap_music\ui_stop.c               #
#       List file     =  d:\case_i_d913f\ap\ap_music\list\ui_stop.lst        #
#       Object file   =  d:\case_i_d913f\ap\ap_music\obj\ui_stop.r01         #
#       ASM file      =  d:\case_i_d913f\ap\ap_music\list\ui_stop.s01        #
#       Command line  =  -v0 -mb -OD:\case_i_d913f\ap\ap_music\Obj\ -e -K    #
#                        -w -gA -z9 -RCODE -r0 -DNAPDEBUG                    #
#                        -LD:\case_i_d913f\ap\ap_music\List\ -q -t8          #
#                        -AD:\case_i_d913f\ap\ap_music\List\                 #
#                        -ND:\case_i_d913f\ap\ap_music\List\ -X              #
#                        -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\         #
#                        d:\case_i_d913f\AP\AP_MUSIC\ui_stop.c               #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    ui_stop(17)
   \   0000                    RSEG    AP_UI_STP(0)
   \   0000                    RSEG    CSTR(0)
   \   0000                    RSEG    UDATA0(0)
   \   0000                    RSEG    IDATA0(0)
   \   0000                    RSEG    CDATA0(0)
   \   0000                    EXTERN  BackupCurrentTime
   \   0000                    PUBLIC  CaltimeFlag
   \   0000                    EXTERN  ChangeMusic
   \   0000                    EXTERN  CheckMusicType
   \   0000                    EXTERN  ClearTimePara
   \   0000                    EXTERN  DisplayErrMsg
   \   0000                    EXTERN  DisplayTimeRollback
   \   0000                    EXTERN  ErrReport
   \   0000                    EXTERN  FS_FRemove
   \   0000                    PUBLIC  FadeOut
   \   0000                    EXTERN  GetInformation
   \   0000                    EXTERN  MusicEditSelStatus
   \   0000                    EXTERN  MusicEditStatus
   \   0000                    EXTERN  MusicEdit_SelSeg
   \   0000                    EXTERN  PlayStatus
   \   0000                    EXTERN  RealDisplay
   \   0000                    EXTERN  RefreshMainScreen
   \   0000                    EXTERN  UpDisplayFlag
   \   0000                    EXTERN  UpdateFileSelector
   \   0000                    PUBLIC  WaitForCaltimeCNT
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  ap_handle_hotkey
   \   0000                    EXTERN  ap_message_init
   \   0000                    EXTERN  bList_Flag
   \   0000                    EXTERN  fselGetNo
   \   0000                    EXTERN  fselGetTotal
   \   0000                    EXTERN  fselInit
   \   0000                    EXTERN  fselSetLocation
   \   0000                    EXTERN  fselSetMode
   \   0000                    EXTERN  fsel_mode_change_flag
   \   0000                    EXTERN  g_FCexitflag
   \   0000                    EXTERN  g_OldSecTempBackup
   \   0000                    EXTERN  g_Openparam
   \   0000                    EXTERN  g_PowerOffFlag
   \   0000                    EXTERN  g_ScrollFlag
   \   0000                    EXTERN  g_autoswitch_counter
   \   0000                    EXTERN  g_comval
   \   0000                    EXTERN  g_currentMusicType
   \   0000                    EXTERN  g_file_list_total
   \   0000                    PUBLIC  g_firstplay_flag
   \   0000                    EXTERN  g_from_browser
   \   0000                    EXTERN  g_introCNT
   \   0000                    EXTERN  g_introCntMode
   \   0000                    EXTERN  g_music_vars
   \   0000                    EXTERN  g_musicamount
   \   0000                    EXTERN  g_musicsequence
   \   0000                    EXTERN  g_result
   \   0000                    EXTERN  ifSelBuffToltalTimeFlag
   \   0000                    EXTERN  make_dirname
   \   0000                    EXTERN  musicpSendCommand
   \   0000                    EXTERN  need_draw
   \   0000                    EXTERN  sKY_Beep
   \   0000                    EXTERN  ui_auto_update
   \   0000                    EXTERN  ui_play
   \   0000                    PUBLIC  ui_stop
   \   0000                    PUBLIC  ui_stop_loop
   \   0000                    EXTERN  ui_stop_menu
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?C_V_SWITCH_L06
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_LEAVE_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    EXTERN  ?ENT_AUTO_DIRECT_L09
   \   0000                    RSEG    AP_UI_STP
   \   0000            ui_stop:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        This program demostrates how to build an AP
      5          *
      6          *        (c) Copyright Actions Co,Ld.
      7          *
      8          *  $Id: ui_stop.c,v 1.2 2006/07/14 06:46:20 tangwh Exp $
      9          *******************************************************************************
     10          */
     11          #include "ap_music.h"
     12          
     13          char WaitForCaltimeCNT;//在停止状态下先不计时,到无按键动作一定时间后再开始计时
     14                                  // 这样可以提高在停止状态时按next 跳歌的速度.
     15          bool CaltimeFlag;       //true: 不用再算时间
     16          bool g_firstplay_flag = TRUE;
     17          extern void make_dirname(void);                        //false: 未算时间
     18          extern BYTE fsel_mode_change_flag;
     19          extern bool g_FCexitflag;
     20          
     21          extern EMU_MusicEditSelStatus MusicEditSelStatus;        // select: empty start end
     22          extern EMU_MusicEditStatus MusicEditStatus;                // select ,delete
     23          extern STRU_SelMusicSegment MusicEdit_SelSeg;
     24          extern HANDLE m_Mp3deFileHandle;     
     25          int ui_stop_loop(void);
     26          int DealForDRMsong(void);
     27          void ttest(void);
     28          bool DisplayTimeRollback(void);
     29          
     30          #pragma codeseg(AP_UI_STP)
     31          //======================================================================================
     32          //RESULT_CURR_UI: 还要处在当前界面
     33          //RESULT_UI_STOP: 到UI_STOP界面(因现在就是UI_STOP界面,所以同上)
     34          //RESULT_LAST_UI: 到上一级界面
     35          //--------------------------------------------------------------------------------------
     36          int ui_stop(void)
     37          {
   \   0000  C5                PUSH    BC
   \   0001  D5                PUSH    DE
     38              int result;
     39              ap_message_init(NULL);//开始算STANDBY 时间
   \   0002  110000            LD      DE,0
   \   0005  3E00              LD      A,BYTE3 ap_message_init
   \   0007  210000            LD      HL,LWRD ap_message_init
   \   000A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   000D            ?0004:
     40          
     41              do
     42              {
     43                  if (UpdateFileSelector() == 0)
   \   000D  3E00              LD      A,BYTE3 UpdateFileSelector
   \   000F  210000            LD      HL,LWRD UpdateFileSelector
   \   0012  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0015  7D                LD      A,L
   \   0016  B4                OR      H
   \   0017  CAF900            JP      Z,?0162
   \   001A            ?0005:
     44                   {
     45                       return 0;
     46                  }  
   \   001A            ?0006:
     47                  
     48                 if(g_music_vars.location.disk=='C')             //选择Flash
   \   001A  3A0700            LD      A,(g_music_vars+7)
   \   001D  FE43              CP      67
   \   001F  2009              JR      NZ,?0008
   \   0021            ?0007:
     49                 {
     50                  if(g_music_vars.file_list_total_flash==0)
   \   0021  2A5600            LD      HL,(g_music_vars+86)
   \   0024  7D                LD      A,L
   \   0025  B4                OR      H
   \   0026  200F              JR      NZ,?0014
   \   0028            ?0009:
     51                    g_music_vars.file_list_type = 0xff;         //普通播放模式  
   \   0028  1807              JR      ?0164
     52                  else
   \   002A            ?0010:
     53                    g_file_list_total = g_music_vars.file_list_total_flash;     
   \   002A            ?0011:
     54                 }                                               
     55               
     56                 else                                          //选择插卡       
   \   002A            ?0008:
     57                 {
     58                  if(g_music_vars.file_list_total_card == 0) 
   \   002A  2A5800            LD      HL,(g_music_vars+88)
   \   002D  7D                LD      A,L
   \   002E  B4                OR      H
   \   002F  2006              JR      NZ,?0014
   \   0031            ?0013:
     59                     g_music_vars.file_list_type = 0xff;           //普通播放模式  
   \   0031            ?0164:
   \   0031  2F                CPL
   \   0032  325C00            LD      (g_music_vars+92),A
     60                  else
   \   0035  1803              JR      ?0015
   \   0037            ?0014:
     61                    g_file_list_total = g_music_vars.file_list_total_card;   
   \   0037  220000            LD      (g_file_list_total),HL
   \   003A            ?0015:
   \   003A            ?0012:
     62                 }         
     63                    
     64                  if(g_music_vars.file_list_type==0xff)         //普通目录播放
   \   003A  3A5C00            LD      A,(g_music_vars+92)
   \   003D  3C                INC     A
   \   003E  2015              JR      NZ,?0017
   \   0040            ?0016:
     65                  {
     66                   g_musicamount = FSELGetTotal();
   \   0040  3E00              LD      A,BYTE3 fselGetTotal
   \   0042  210000            LD      HL,LWRD fselGetTotal
   \   0045  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0048  220000            LD      (g_musicamount),HL
     67                   g_musicsequence = FSELGetNo();
   \   004B  3E00              LD      A,BYTE3 fselGetNo
   \   004D  210000            LD      HL,LWRD fselGetNo
   \   0050  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0053  180A              JR      ?0161
     68                  }
     69                  else
   \   0055            ?0017:
     70                  {
     71                   g_musicamount = g_file_list_total;  //列表总数  
   \   0055  2A0000            LD      HL,(g_file_list_total)
   \   0058  220000            LD      (g_musicamount),HL
     72                   g_musicsequence = g_music_vars.file_list_num+1;            //当前列表编号
   \   005B  2A5A00            LD      HL,(g_music_vars+90)
   \   005E  23                INC     HL
   \   005F            ?0161:
   \   005F  220000            LD      (g_musicsequence),HL
   \   0062            ?0018:
     73                  }  
     74                  FSELSetMode(g_music_vars.repeat_mode);
   \   0062  ED5B0100          LD      DE,(g_music_vars+1)
   \   0066  3E00              LD      A,BYTE3 fselSetMode
   \   0068  210000            LD      HL,LWRD fselSetMode
   \   006B  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     75                   make_dirname();
   \   006E  3E00              LD      A,BYTE3 make_dirname
   \   0070  210000            LD      HL,LWRD make_dirname
   \   0073  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     76                  g_currentMusicType = CheckMusicType(g_music_vars.location.filename);
   \   0076  112100            LD      DE,g_music_vars+33
   \   0079  3E00              LD      A,BYTE3 CheckMusicType
   \   007B  210000            LD      HL,LWRD CheckMusicType
   \   007E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0081  7D                LD      A,L
   \   0082  320000            LD      (g_currentMusicType),A
     77          
     78                  GetInformation(); //取文件信息
   \   0085  3E00              LD      A,BYTE3 GetInformation
   \   0087  210000            LD      HL,LWRD GetInformation
   \   008A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     79                      
     80                  musicpSendCommand( MC_OPEN,  (int)& g_Openparam );
   \   008D  010000            LD      BC,g_Openparam
   \   0090  1E01              LD      E,1
   \   0092  CD5201            CALL    LWRD ?0177
     81                  musicpSendCommand(MC_LOAD, NULL);//04-4-23 9:32
   \   0095  010000            LD      BC,0
   \   0098  1E03              LD      E,3
   \   009A  CD5201            CALL    LWRD ?0177
     82                  SetFullInterface();
   \   009D  AF                XOR     A
   \   009E  320000            LD      (ui_auto_update),A
   \   00A1  210000            LD      HL,UpDisplayFlag
   \   00A4  7E                LD      A,(HL)
   \   00A5  F6C1              OR      193

⌨️ 快捷键说明

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