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

📄 ui_delete.lst

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

   \   0000                    NAME    ui_delete(17)
   \   0000                    RSEG    COM_CTRL(0)
   \   0000                    EXTERN  ResShowMultiString
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  SetPenColor
   \   0000                    EXTERN  SetTextOutMode
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  ap_handle_hotkey
   \   0000                    EXTERN  ap_message_init
   \   0000                    EXTERN  draw_del_file
   \   0000                    EXTERN  fselDelFile
   \   0000                    EXTERN  fselGetLocation
   \   0000                    EXTERN  fselSetLocation
   \   0000                    EXTERN  ui_auto_select
   \   0000                    PUBLIC  ui_delete
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?C_V_SWITCH_L06
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    RSEG    COM_CTRL
   \   0000            ui_delete:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        ap common lib, file/folder delete control file
      5          *
      6          *        (c) Copyright, Actions Co,Ld.
      7          *             All Right Reserved
      8          *
      9          *******************************************************************************
     10          */
     11          #pragma codeseg(COM_CTRL)
     12          
     13          #include "ap_common.h"
     14          extern WORD    fselFileNo;
     15          extern BYTE    fselDirLayer;
     16          extern void show_del_fail(BYTE langid);
     17          extern int draw_del_file(file_location_t *location, BYTE string_id);
     18          extern void draw_del_dir(file_location_t *location, BYTE string_id);   
     19          /********************************************************************************
     20          * Description : delete  the  files of the selector directory.
     21          *
     22          * Arguments  : location  :keep the file selector parament
     23                         string_id :display language type
     24                         type: the kind of the files
     25          * Returns     :
     26          *            other:    Successful
     27          *            0:    Fail, detail information in fselError
     28          * Notes       :
     29          *
     30          ********************************************************************************/
     31          int ui_delete(file_location_t *location, BYTE type,BYTE string_id)
     32          {
   \   0000  FDE5              PUSH    IY
   \   0002  DDE5              PUSH    IX
   \   0004  DD210000          LD      IX,0
   \   0008  DD39              ADD     IX,SP
   \   000A  C5                PUSH    BC
   \   000B  F5                PUSH    AF
   \   000C  F5                PUSH    AF
   \   000D  F5                PUSH    AF
   \   000E  F5                PUSH    AF
   \   000F  D5                PUSH    DE
   \   0010  FDE1              POP     IY
     33              BOOL need_draw=TRUE;
     34              BYTE   delflag;
     35              BYTE  i, playlistclassbak;
     36          
     37              char  key;
     38              if ( !fselSetLocation(location) )
   \   0012  3E00              LD      A,BYTE3 fselSetLocation
   \   0014  210000            LD      HL,LWRD fselSetLocation
   \   0017  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   001A  2C                INC     L
   \   001B  2D                DEC     L
   \   001C  CA1F01            JP      Z,?0048
   \   001F            ?0002:
     39                  return RESULT_IGNORE;
   \   001F            ?0003:
     40              need_draw = TRUE;
     41              delflag = 0;
     42                ap_message_init(NULL); 
   \   001F  110000            LD      DE,0
   \   0022  3E00              LD      A,BYTE3 ap_message_init
   \   0024  210000            LD      HL,LWRD ap_message_init
   \   0027  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   002A  DD36F601          LD      (IX-10),1
   \   002E            ?0050:
   \   002E  DD36F700          LD      (IX-9),0
   \   0032            ?0005:
     43              while(1)
     44              {
     45                  //show ui
     46                  if(need_draw)
   \   0032  AF                XOR     A
   \   0033  DDB6F6            OR      (IX-10)
   \   0036  282A              JR      Z,?0008
   \   0038            ?0007:
     47                  {
     48                      if(type==DELETE_FILE)
   \   0038  AF                XOR     A
   \   0039  DDB6FE            OR      (IX-2)
   \   003C  C21F01            JP      NZ,?0048
   \   003F            ?0009:
     49                      {
     50                          int result; 
     51                          result=draw_del_file(location, string_id);            //删除单个文件的显示
   \   003F  DD4E08            LD      C,(IX+8)
   \   0042  FDE5              PUSH    IY
   \   0044  D1                POP     DE
   \   0045  3E00              LD      A,BYTE3 draw_del_file
   \   0047  210000            LD      HL,LWRD draw_del_file
   \   004A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   004D  DD75FB            LD      (IX-5),L
   \   0050  DD74FC            LD      (IX-4),H
   \   0053            ?0012:
     52                          while( (key = ap_get_message())!=NULL );                          //获取消息
   \   0053  CD0000            CALL    LWRD ap_get_message
   \   0056  B7                OR      A
   \   0057  20FA              JR      NZ,?0012
   \   0059            ?0013:
   \   0059            ?0011:
     53                          return result; 
   \   0059  DD6EFB            LD      L,(IX-5)
   \   005C  DD66FC            LD      H,(IX-4)
     54                      }            
   \   005F  C34C01            JP      LWRD ?0042
   \   0062            ?0010:
     55                      else
     56                      {
     57                          return RESULT_IGNORE;                    //其它情况,忽略并退出函数
     58                      }
     59                      need_draw=FALSE;
   \   0062            ?0008:
     60                  }
     61          
     62                  //handle msg
     63                  key = ap_get_message();                          //获取消息
   \   0062  CD0000            CALL    LWRD ap_get_message
     64                  switch(key)
   \   0065  5F                LD      E,A
   \   0066  CD0000            CALL    LWRD ?C_V_SWITCH_L06
   \   0069  0900              DEFW    9
   \   006B  05                DEFB    5
   \   006C  06                DEFB    6
   \   006D  1E                DEFB    30
   \   006E  21                DEFB    33
   \   006F  30                DEFB    48
   \   0070  37                DEFB    55
   \   0071  38                DEFB    56
   \   0072  45                DEFB    69
   \   0073  46                DEFB    70
   \   0074  3101              DEFW    ?0036
   \   0076  8800              DEFW    ?0015
   \   0078  8800              DEFW    ?0015
   \   007A  3200              DEFW    ?0005
   \   007C  2401              DEFW    ?0032
   \   007E  B400              DEFW    ?0019
   \   0080  1F01              DEFW    ?0048
   \   0082  1801              DEFW    ?0028
   \   0084  8800              DEFW    ?0015
   \   0086  8800              DEFW    ?0015
   \   0088            ?0015:
     65                  {
     66                  case AP_KEY_NEXT:                            //YES和NO之间切换
     67                  case AP_KEY_PREV:
     68                  case AP_KEY_NEXT | AP_KEY_HOLD:
     69                  case AP_KEY_PREV | AP_KEY_HOLD:
     70                      if(delflag==0)
   \   0088  AF                XOR     A
   \   0089  DDB6F7            OR      (IX-9)
   \   008C  0E3C              LD      C,60
   \   008E  C5                PUSH    BC
   \   008F  0E4E              LD      C,78
   \   0091  2012              JR      NZ,?0017

⌨️ 快捷键说明

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