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

📄 sub_function3.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 4 页
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       18/Nov/107  22:58:07 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d913f\ap\ap_music\sub_function3.c         #
#       List file     =  d:\case_i_d913f\ap\ap_music\list\sub_function3.lst  #
#       Object file   =  d:\case_i_d913f\ap\ap_music\obj\sub_function3.r01   #
#       ASM file      =  d:\case_i_d913f\ap\ap_music\list\sub_function3.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\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  11FFFF            LD      DE,65535
   \   001B  CD0000            CALL    LWRD SetBackgdColor
     28                  ClearScreen(NULL);  
   \   001E  110000            LD      DE,0
   \   0021  CD0000            CALL    LWRD ClearScreen
     29                  if(id==CREADERR)
   \   0024  217602            LD      HL,630
   \   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,0,16); 
   \   0032  0E10              LD      C,16
   \   0034  C5                PUSH    BC
   \   0035  0E00              LD      C,0
   \   0037  111800            LD      DE,24
   \   003A  1808              JR      ?0116
     31                  else 
   \   003C            ?0003:
     32                    ResShowPic(MESSAGE,30,25);
   \   003C  0E19              LD      C,25
   \   003E  C5                PUSH    BC
   \   003F  0E1E              LD      C,30
   \   0041  11C500            LD      DE,197
   \   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, 70);//显示磁盘无文件
   \   0052  0E46              LD      C,70
   \   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);
   \   006C  1E00              LD      E,0
   \   006E  CD0000            CALL    LWRD SetTextOutMode
     36                  SetPenColor(oldDC_sav.PenColor);
   \   0071  DD4EFA            LD      C,(IX-6)
   \   0074  DD46FB            LD      B,(IX-5)
   \   0077  DD5EF8            LD      E,(IX-8)
   \   007A  DD56F9            LD      D,(IX-7)
   \   007D  CD0000            CALL    LWRD SetPenColor
     37                  SetBackgdColor(oldDC_sav.BackgdColor);
   \   0080  210400            LD      HL,4
   \   0083  39                ADD     HL,SP
   \   0084  5E                LD      E,(HL)
   \   0085  23                INC     HL
   \   0086  56                LD      D,(HL)
   \   0087  23                INC     HL
   \   0088  4E                LD      C,(HL)
   \   0089  23                INC     HL
   \   008A  46                LD      B,(HL)
   \   008B  CD0000            CALL    LWRD SetBackgdColor
   \   008E            ?0006:
     38          
     39              while( ap_get_message() != NULL );//清空消息池,确保DELAY时间准确
   \   008E  CD0000            CALL    LWRD ap_get_message
   \   0091  B7                OR      A
   \   0092  20FA              JR      NZ,?0006
   \   0094            ?0007:
   \   0094            ?0005:
     40              ap_sleep(4);    
   \   0094  110400            LD      DE,4
   \   0097  3E00              LD      A,BYTE3 ap_sleep
   \   0099  210000            LD      HL,LWRD ap_sleep
   \   009C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     41          }
   \   009F  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   00A2            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          {    
   \   00A2  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   00A5  FEFF              DEFW    65534
     56              int result;                                         
     57          
     58              if (g_music_vars.location.disk == 'H')
   \   00A7  3A0700            LD      A,(g_music_vars+7)
   \   00AA  FE48              CP      72
   \   00AC  2064              JR      NZ,?0009
   \   00AE            ?0008:
     59              {            
     60                  //检测 sd 卡是否存在
     61                  if ((DRV_DetectUD(1) == 0x20)&&((g_DiskStateFlag & SetCardOKFlag_def)!=0))
   \   00AE  1E01              LD      E,1
   \   00B0  CD0000            CALL    LWRD DRV_DetectUD
   \   00B3  FE20              CP      32
   \   00B5  2023              JR      NZ,?0011
   \   00B7  3A0000            LD      A,(g_DiskStateFlag)
   \   00BA  CB5F              BIT     3,A
   \   00BC  281C              JR      Z,?0011
   \   00BE            ?0013:
   \   00BE            ?0012:
   \   00BE            ?0010:
     62                  {//有卡
     63                      if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'H'))    
   \   00BE  0E48              LD      C,72
   \   00C0  C5                PUSH    BC
   \   00C1  215100            LD      HL,g_music_vars+81
   \   00C4  4E                LD      C,(HL)
   \   00C5  C5                PUSH    BC
   \   00C6  CD8901            CALL    LWRD ?0205
   \   00C9  F1                POP     AF
   \   00CA  F1                POP     AF
   \   00CB  2C                INC     L
   \   00CC  2D                DEC     L
   \   00CD  2033              JR      NZ,?0125
   \   00CF            ?0014:
     64                      {
     65                          return 1;
     66                      }
   \   00CF            ?0015:
     67                      
     68                      if (FSELGetErrID() == 0)
   \   00CF  CD9401            CALL    LWRD ?0206
   \   00D2  2C                INC     L
   \   00D3  2D                DEC     L
   \   00D4  CA8301            JP      Z,?0118
   \   00D7            ?0016:
     69                      {
     70                          return 0;//非法,
     71                      }                    
   \   00D7            ?0017:
     72                      DisplayErrInfor(CFILEOUT);//显示卡无文件                        
   \   00D7  CDAD01            CALL    LWRD ?0208
   \   00DA            ?0011:
     73                  }
     74                      
     75                  g_music_vars.location.disk = 'C';
   \   00DA  3E43              LD      A,67
   \   00DC  320700            LD      (g_music_vars+7),A
     76                  if ((g_DiskStateFlag & SetDiskOKFlag_def) == 0)
   \   00DF  3A0000            LD      A,(g_DiskStateFlag)
   \   00E2  CB7F              BIT     7,A

⌨️ 快捷键说明

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