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

📄 sub_function3.lst

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

   \   0000                    NAME    sub_function3(17)
   \   0000                    RSEG    CODE(0)
   \   0000                    EXTERN  BankSwitch
   \   0000                    EXTERN  ClearScreen
   \   0000                    EXTERN  ClearTimePara
   \   0000                    EXTERN  DRV_DetectUD
   \   0000                    PUBLIC  DisplayErrInfor
   \   0000                    EXTERN  GetDCStatus
   \   0000                    PUBLIC  InitFileSelector
   \   0000                    EXTERN  ResShowMultiString
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    EXTERN  SetTextOutMode
   \   0000                    PUBLIC  StartFileSelector
   \   0000                    PUBLIC  UpdateFileSelector
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  ap_sleep
   \   0000                    EXTERN  fselGetErrID
   \   0000                    EXTERN  fselGetNextFile
   \   0000                    EXTERN  fselInit
   \   0000                    EXTERN  fselSetLocation
   \   0000                    EXTERN  g_DiskStateFlag
   \   0000                    EXTERN  g_comval
   \   0000                    EXTERN  g_music_vars
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   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    CODE
   \   0000            DisplayErrInfor:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        A short description of this file 
      5          *
      6          *        (c) Copyright, Actions Co,Ld.                             
      7          *             All Right Reserved                          
      8          *
      9          *  #Id#
     10          *******************************************************************************
     11          */
     12          #include "ap_music.h"
     13          
     14          /******************************************************************************
     15          ** 名字: 显示输入 id 的资源内容
     16          ** 接口: void DisplayErrInfor(int id)
     17          ** 描述: 
     18          ** 输入参数: int id:要显示的资源号
     19          ** 输出参数: void 
     20          ** 使用说明: 
     21          ********************************************************************************/
     22          void DisplayErrInfor(int id)
     23          {
   \   0000  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0003  F8FF              DEFW    65528
     24                  DC  oldDC_sav;
     25                  GetDCStatus(&oldDC_sav);
   \   0005  210000            LD      HL,0
   \   0008  39                ADD     HL,SP
   \   0009  EB                EX      DE,HL
   \   000A  CD0000            CALL    LWRD GetDCStatus
     26                  SetPenColor(Color_BLACK_def);
   \   000D  010000            LD      BC,0
   \   0010  59                LD      E,C
   \   0011  50                LD      D,B
   \   0012  CD0000            CALL    LWRD SetPenColor
     27                  SetBackgdColor(Color_MENU_def);
   \   0015  010000            LD      BC,0
   \   0018  11C0FC            LD      DE,64704
   \   001B  CD0000            CALL    LWRD SetBackgdColor
     28                  ClearScreen(NULL);  
   \   001E  110000            LD      DE,0
   \   0021  CD0000            CALL    LWRD ClearScreen
     29                  if(id==CREADERR)
   \   0024  219401            LD      HL,404
   \   0027  DD4E02            LD      C,(IX+2)
   \   002A  DD4603            LD      B,(IX+3)
   \   002D  A7                AND     A
   \   002E  ED42              SBC     HL,BC
   \   0030  200A              JR      NZ,?0003
   \   0032            ?0002:
     30                    ResShowPic(CARDERR,25,32); 
   \   0032  0E20              LD      C,32
   \   0034  C5                PUSH    BC
   \   0035  0E19              LD      C,25
   \   0037  111F00            LD      DE,31
   \   003A  1808              JR      ?0116
     31                  else 
   \   003C            ?0003:
     32                    ResShowPic(MESSAGE,22,38);
   \   003C  0E26              LD      C,38
   \   003E  C5                PUSH    BC
   \   003F  0E16              LD      C,22
   \   0041  117800            LD      DE,120
   \   0044            ?0116:
   \   0044  3E00              LD      A,BYTE3 ResShowPic
   \   0046  210000            LD      HL,LWRD ResShowPic
   \   0049  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   004C  F1                POP     AF
   \   004D            ?0004:
     33                  SetTextOutMode(1);
   \   004D  1E01              LD      E,1
   \   004F  CD0000            CALL    LWRD SetTextOutMode
     34                  ResShowMultiString(id, g_comval.langid, 255, 54);//显示磁盘无文件
   \   0052  0E36              LD      C,54
   \   0054  C5                PUSH    BC
   \   0055  0EFF              LD      C,255
   \   0057  C5                PUSH    BC
   \   0058  ED4B0C00          LD      BC,(g_comval+12)
   \   005C  DD5E02            LD      E,(IX+2)
   \   005F  DD5603            LD      D,(IX+3)
   \   0062  3E00              LD      A,BYTE3 ResShowMultiString
   \   0064  210000            LD      HL,LWRD ResShowMultiString
   \   0067  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   006A  F1                POP     AF
   \   006B  F1                POP     AF
     35                 // SetTextOutMode(0);
     36                  SetPenColor(oldDC_sav.PenColor);
   \   006C  DD4EFA            LD      C,(IX-6)
   \   006F  DD46FB            LD      B,(IX-5)
   \   0072  DD5EF8            LD      E,(IX-8)
   \   0075  DD56F9            LD      D,(IX-7)
   \   0078  CD0000            CALL    LWRD SetPenColor
     37                  SetBackgdColor(oldDC_sav.BackgdColor);
   \   007B  210400            LD      HL,4
   \   007E  39                ADD     HL,SP
   \   007F  5E                LD      E,(HL)
   \   0080  23                INC     HL
   \   0081  56                LD      D,(HL)
   \   0082  23                INC     HL
   \   0083  4E                LD      C,(HL)
   \   0084  23                INC     HL
   \   0085  46                LD      B,(HL)
   \   0086  CD0000            CALL    LWRD SetBackgdColor
   \   0089            ?0006:
     38          
     39              while( ap_get_message() != NULL );//清空消息池,确保DELAY时间准确
   \   0089  CD0000            CALL    LWRD ap_get_message
   \   008C  B7                OR      A
   \   008D  20FA              JR      NZ,?0006
   \   008F            ?0007:
   \   008F            ?0005:
     40              ap_sleep(4);    
   \   008F  110400            LD      DE,4
   \   0092  3E00              LD      A,BYTE3 ap_sleep
   \   0094  210000            LD      HL,LWRD ap_sleep
   \   0097  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     41          }
   \   009A  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   009D            InitFileSelector:
     42          
     43          
     44          
     45          /******************************************************************************
     46          ** 名字:  文件选择器初始化及报错显示
     47          ** 接口:  int InitFileSelector(void)
     48          ** 描述:  把文件选择器初始化到有效的盘上,如找不到,则报错退出
     49          ** 输入参数: void
     50          ** 输出参数: 0: 没有有效的盘或盘上无文件,初始化失败,要求退出AP
     51                       1: 已完成初始化文件选择器动作
     52          ** 使用说明:
     53          ********************************************************************************/
     54          int InitFileSelector(void)
     55          {    
   \   009D  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   00A0  FEFF              DEFW    65534
     56              int result;                                         
     57          
     58              if (g_music_vars.location.disk == 'H')
   \   00A2  3A0700            LD      A,(g_music_vars+7)
   \   00A5  FE48              CP      72
   \   00A7  2064              JR      NZ,?0009
   \   00A9            ?0008:
     59              {            
     60                  //检测 sd 卡是否存在
     61                  if ((DRV_DetectUD(1) == 0x20)&&((g_DiskStateFlag & SetCardOKFlag_def)!=0))
   \   00A9  1E01              LD      E,1
   \   00AB  CD0000            CALL    LWRD DRV_DetectUD
   \   00AE  FE20              CP      32
   \   00B0  2023              JR      NZ,?0011
   \   00B2  3A0000            LD      A,(g_DiskStateFlag)
   \   00B5  CB5F              BIT     3,A
   \   00B7  281C              JR      Z,?0011
   \   00B9            ?0013:
   \   00B9            ?0012:
   \   00B9            ?0010:
     62                  {//有卡
     63                      if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'H'))    
   \   00B9  0E48              LD      C,72
   \   00BB  C5                PUSH    BC
   \   00BC  214F00            LD      HL,g_music_vars+79
   \   00BF  4E                LD      C,(HL)
   \   00C0  C5                PUSH    BC
   \   00C1  CD8401            CALL    LWRD ?0205
   \   00C4  F1                POP     AF
   \   00C5  F1                POP     AF
   \   00C6  2C                INC     L
   \   00C7  2D                DEC     L
   \   00C8  2033              JR      NZ,?0125
   \   00CA            ?0014:
     64                      {
     65                          return 1;
     66                      }
   \   00CA            ?0015:
     67                      
     68                      if (FSELGetErrID() == 0)
   \   00CA  CD8F01            CALL    LWRD ?0206
   \   00CD  2C                INC     L
   \   00CE  2D                DEC     L
   \   00CF  CA7E01            JP      Z,?0118
   \   00D2            ?0016:
     69                      {
     70                          return 0;//非法,
     71                      }                    
   \   00D2            ?0017:
     72                      DisplayErrInfor(CFILEOUT);//显示卡无文件                        
   \   00D2  CDA801            CALL    LWRD ?0208
   \   00D5            ?0011:
     73                  }
     74                      
     75                  g_music_vars.location.disk = 'C';
   \   00D5  3E43              LD      A,67
   \   00D7  320700            LD      (g_music_vars+7),A
     76                  if ((g_DiskStateFlag & SetDiskOKFlag_def) == 0)
   \   00DA  3A0000            LD      A,(g_DiskStateFlag)
   \   00DD  CB7F              BIT     7,A
   \   00DF  CA7E01            JP      Z,?0118
   \   00E2            ?0018:

⌨️ 快捷键说明

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