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

📄 ui_play.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       25/Dec/106  17:01:02 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d90f\ap\ap_music\ui_play.c                #
#       List file     =  d:\case_i_d90f\ap\ap_music\list\ui_play.lst         #
#       Object file   =  d:\case_i_d90f\ap\ap_music\obj\ui_play.r01          #
#       ASM file      =  d:\case_i_d90f\ap\ap_music\list\ui_play.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\ui_play.c                #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    ui_play(17)
   \   0000                    RSEG    AP_UI_PLY(0)
   \   0000                    PUBLIC  BackupCurrentTime
   \   0000                    EXTERN  CaltimeFlag
   \   0000                    PUBLIC  DealForABGap
   \   0000                    EXTERN  DealKeyForPlayStatus
   \   0000                    EXTERN  DealMusicFileEnd
   \   0000                    EXTERN  Deal_Error_Playing
   \   0000                    EXTERN  DisInFBHead
   \   0000                    PUBLIC  FadeOut
   \   0000                    EXTERN  GetBattery
   \   0000                    EXTERN  PlayStatus
   \   0000                    EXTERN  RePlayStatus
   \   0000                    PUBLIC  RealDisplay
   \   0000                    EXTERN  RefreshMainScreen
   \   0000                    EXTERN  Scroll
   \   0000                    EXTERN  SelectCurMusic
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    PUBLIC  ShowNowTime
   \   0000                    PUBLIC  Show_Bitrate
   \   0000                    EXTERN  TimeRateData_sav
   \   0000                    EXTERN  UpDisplayFlag
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  ap_handle_hotkey
   \   0000                    EXTERN  apepSendCommand
   \   0000                    EXTERN  g_2HZFlag
   \   0000                    EXTERN  g_2HZ_CNT
   \   0000                    EXTERN  g_ABMinTimeCNT
   \   0000                    EXTERN  g_AVSetFlag
   \   0000                    EXTERN  g_FCexitflag
   \   0000                    EXTERN  g_FadeInStepFlag
   \   0000                    EXTERN  g_OldSecTempBackup
   \   0000                    EXTERN  g_ReplayTimeCNT
   \   0000                    EXTERN  g_ScrollFlag
   \   0000                    EXTERN  g_TagInfoBuf
   \   0000                    EXTERN  g_comval
   \   0000                    EXTERN  g_currentMusicType
   \   0000                    EXTERN  g_introCNT
   \   0000                    EXTERN  g_introCntMode
   \   0000                    EXTERN  g_music_vars
   \   0000                    EXTERN  g_result
   \   0000                    EXTERN  ifSelBuffToltalTimeFlag
   \   0000                    EXTERN  itoa_1
   \   0000                    EXTERN  itoa_2
   \   0000                    EXTERN  main_ResShowPic
   \   0000                    EXTERN  mp3pSendCommand
   \   0000                    PUBLIC  musicpSendCommand
   \   0000                    EXTERN  musicpSendCommand_bank
   \   0000                    EXTERN  need_draw
   \   0000                    EXTERN  oggpSendCommand
   \   0000                    EXTERN  return_to_play
   \   0000                    EXTERN  savenum
   \   0000                    EXTERN  temp_buffer
   \   0000                    EXTERN  ui_auto_update
   \   0000                    PUBLIC  ui_play
   \   0000                    EXTERN  ui_show_batt
   \   0000                    EXTERN  ui_show_d
   \   0000                    EXTERN  wmapSendCommand
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?S_MUL_L02
   \   0000                    EXTERN  ?SS_CMP_L02
   \   0000                    EXTERN  ?L_MUL_L03
   \   0000                    EXTERN  ?SL_DIV_L03
   \   0000                    EXTERN  ?C_S_SWITCH_L06
   \   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_PARM_DIRECT_L09
   \   0000                    EXTERN  ?ENT_AUTO_DIRECT_L09
   \   0000                    RSEG    AP_UI_PLY
   \   0000            ui_play:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        voice player stop program.
      5          *
      6          *        (c) Copyright, Actions Co,Ld.
      7          *             All Right Reserved
      8          *
      9          *  $Id: ui_play.c,v 1.2 2006/06/26 01:14:24 tangwh Exp $
     10          *******************************************************************************
     11          */
     12          #include "ap_music.h"
     13          
     14          #define IntCntValDef 10
     15          extern bool g_FCexitflag;
     16          extern char return_to_play;
     17          
     18          //char test_play;
     19          void ErrReport(Play_status_t status);
     20          
     21          #pragma codeseg(AP_UI_PLY)
     22          
     23          #pragma memory=constseg(APC_UI_PLY)
     24          
     25          
     26          #pragma memory=default
     27          
     28          extern struct TimeRateData_sav;
     29          extern BYTE Bitrate_sav [];
     30          extern BYTE g_OldSecTempBackup;
     31          extern BYTE g_introCNT;
     32          
     33          extern const char mychar [];
     34          
     35          extern bool g_introCntMode; //是从头开始还是从中途开始,TRUE 为从头开始
     36          
     37          void FadeOut( bool DisMod );
     38          
     39          
     40          int main_ResShowPic( WORD id, uchar x, uchar y );
     41          
     42          int DealKeyForPlayStatus( char key);
     43          void DisInFBHead(char DisMod);//快退到头显示
     44          int DealForDRMsong(void);
     45           extern void Deal_Error_Playing(void);
     46          
     47          /*
     48          ********************************************************************************
     49          *             int ui_play( void )
     50          *
     51          * Description : 显示时间,滚屏,AB闪
     52          *
     53          * Arguments   : void
     54          *
     55          * Returns     : void
     56          *
     57          * Notes       :
     58          *
     59          ********************************************************************************
     60          */
     61          int ui_play( void )
     62          {
   \   0000  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0003  F6FF              DEFW    65526
     63              //int key;
     64              char key;
     65              BYTE result;
     66              //int i;
     67              music_play_status_t status_buf;
     68              PlayStatus = PlaySta;
   \   0005  3E02              LD      A,2
   \   0007  320000            LD      (PlayStatus),A
     69              RePlayStatus = NormalPlay;/* 播放状态 */
   \   000A  AF                XOR     A
   \   000B  320000            LD      (RePlayStatus),A
     70              need_draw = TRUE;/* 需要画screen */
   \   000E  3E01              LD      A,1
   \   0010  320000            LD      (need_draw),A
     71              SetStopToPlayInterface();
   \   0013  AF                XOR     A
   \   0014  320000            LD      (ui_auto_update),A
   \   0017  210000            LD      HL,UpDisplayFlag
   \   001A  CBFE              SET     7,(HL)
   \   001C  23                INC     HL
   \   001D  7E                LD      A,(HL)
   \   001E  F6FC              OR      252
   \   0020  77                LD      (HL),A
     72              g_FadeInStepFlag = FALSE;
   \   0021  AF                XOR     A
   \   0022  320000            LD      (g_FadeInStepFlag),A
   \   0025            ?0003:
     73          
     74              while (1)
     75              {
     76                  if (need_draw)
   \   0025  3A0000            LD      A,(need_draw)
   \   0028  B7                OR      A
   \   0029  280C              JR      Z,?0006
   \   002B            ?0005:
     77                  {
     78                      RefreshMainScreen();
   \   002B  3E00              LD      A,BYTE3 RefreshMainScreen
   \   002D  210000            LD      HL,LWRD RefreshMainScreen
   \   0030  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     79                      need_draw = FALSE;
   \   0033  AF                XOR     A
   \   0034  320000            LD      (need_draw),A
   \   0037            ?0006:
   \   0037            ?0009:
     80                  }
     81                  do 
     82                  {
     83                     // output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
     84                      key = ap_get_message(); //读键值
   \   0037  CD0000            CALL    LWRD ap_get_message
   \   003A  DD77F6            LD      (IX-10),A
     85                  //这里是处理快退大文件时可能丢掉KEYUP键的问题
     86                  }while(((PlayStatus == FFPlaySta) || (PlayStatus == FBPlaySta))
     87                      &&(key!=0)
     88                      &&(key!=(AP_KEY_PREV | AP_KEY_UP))
     89                      &&(key!=(AP_KEY_NEXT | AP_KEY_UP)));               
   \   003D  3A0000            LD      A,(PlayStatus)
   \   0040  FE03              CP      3
   \   0042  2804              JR      Z,?0010
   \   0044  FE04              CP      4
   \   0046  200E              JR      NZ,?0007
   \   0048            ?0010:
   \   0048            ?0011:
   \   0048  AF                XOR     A
   \   0049  DDB6F6            OR      (IX-10)
   \   004C  2808              JR      Z,?0007
   \   004E  FE25              CP      37
   \   0050  2804              JR      Z,?0007
   \   0052  FE26              CP      38
   \   0054  20E1              JR      NZ,?0006
   \   0056            ?0007:
     90                  switch (key)
   \   0056  DD5EF6            LD      E,(IX-10)
   \   0059  CD0000            CALL    LWRD ?C_V_SWITCH_L06
   \   005C  0700              DEFW    7
   \   005E  00                DEFB    0
   \   005F  01                DEFB    1
   \   0060  05                DEFB    5
   \   0061  06                DEFB    6
   \   0062  1C                DEFB    28
   \   0063  1E                DEFB    30
   \   0064  80                DEFB    128
   \   0065  9C00              DEFW    ?0022
   \   0067  7500              DEFW    ?0015
   \   0069  7500              DEFW    ?0015
   \   006B  7500              DEFW    ?0015
   \   006D  7500              DEFW    ?0015
   \   006F  7500              DEFW    ?0015
   \   0071  7500              DEFW    ?0015
   \   0073  B400              DEFW    ?0014
   \   0075            ?0015:
     91                  {
     92                  case MSG_RTC2HZ://rtc
     93                  case AP_MSG_RTC:
     94          //        case MSG_BAT_V_CHG://charging & rtc
     95                  case AP_MSG_WAIT_TIMEOUT:
     96                  case AP_KEY_PLAY://当按下PLAY键时先不处理,可减少停止时的杂音
     97                  case AP_KEY_NEXT://当按下NEXT键时先不处理,可减少选下一首时的杂音
     98                  case AP_KEY_PREV://当按下PREV键时先不处理,可减少选上一首时的杂音
     99          
    100          //             FlashMotived(PowerValue);
    101          
    102                      key = ap_handle_hotkey(key);
   \   0075  CD0000            CALL    LWRD ap_handle_hotkey
   \   0078  DD77F6            LD      (IX-10),A
    103                      if (key == RESULT_REDRAW)
   \   007B  FE32              CP      50
   \   007D  2015              JR      NZ,?0017
   \   007F            ?0016:
    104                      {
    105                          SetFullInterface();
   \   007F  AF                XOR     A
   \   0080  320000            LD      (ui_auto_update),A
   \   0083  210000            LD      HL,UpDisplayFlag
   \   0086  7E                LD      A,(HL)
   \   0087  F6C1              OR      193

⌨️ 快捷键说明

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