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

📄 ui_delete2.lst

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

   \   0000                    NAME    ui_delete2(17)
   \   0000                    RSEG    COM_CTRL(0)
   \   0000                    RSEG    CSTR(0)
   \   0000                    EXTERN  FS_CD
   \   0000                    EXTERN  FS_GetName
   \   0000                    EXTERN  FS_SetCurDir
   \   0000                    EXTERN  GetDCStatus
   \   0000                    EXTERN  ResShowMultiString
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    EXTERN  SetTextOutMode
   \   0000                    EXTERN  ShowFilelist
   \   0000                    EXTERN  UpdateScreen
   \   0000                    EXTERN  ap_get_message
   \   0000                    EXTERN  ap_handle_hotkey
   \   0000                    EXTERN  ap_message_init
   \   0000                    EXTERN  ap_sleep
   \   0000                    PUBLIC  draw_del_dir
   \   0000                    PUBLIC  draw_del_file
   \   0000                    EXTERN  fselDelFile
   \   0000                    EXTERN  fselGetByNO
   \   0000                    EXTERN  fselGetLocation
   \   0000                    EXTERN  fselGetNo
   \   0000                    EXTERN  fselGetTotal
   \   0000                    EXTERN  fselSetLocation
   \   0000                    EXTERN  reinit_idm_buf_filelist
   \   0000                    PUBLIC  show_del_fail
   \   0000                    EXTERN  show_delete_menu
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?SS_DIV_L02
   \   0000                    EXTERN  ?SS_CMP_L02
   \   0000                    EXTERN  ?S_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                    EXTERN  ?MEMSET_L11
   \   0000                    RSEG    COM_CTRL
   \   0000            show_del_fail:
      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          #include "enhanced.h"
     15          void show_del_fail(BYTE langid);
     16          int draw_del_file(file_location_t *location, BYTE string_id);
     17          void draw_del_dir(file_location_t *location, BYTE string_id);
     18          void reinit_idm_buf_filelist(int top, int bottom,BYTE string_id);
     19          void ShowFilelist(int top,int bottom,int Old_active,int active,BYTE string_id);
     20          int show_delete_menu(BYTE string_id);
     21          
     22          
     23          void show_del_fail(BYTE langid)
     24          {
   \   0000  CD0000            CALL    LWRD ?ENT_PARM_DIRECT_L09
     25              ResShowMultiString(CDELFAIL,langid,16,32);        //删除失败界面显示
   \   0003  0E20              LD      C,32
   \   0005  C5                PUSH    BC
   \   0006  0E10              LD      C,16
   \   0008  C5                PUSH    BC
   \   0009  4B                LD      C,E
   \   000A  111601            LD      DE,278
   \   000D  CD2600            CALL    LWRD ?0082
   \   0010  F1                POP     AF
   \   0011  F1                POP     AF
     26              UpdateScreen(NULL);
   \   0012  110000            LD      DE,0
   \   0015  CD0000            CALL    LWRD UpdateScreen
     27              ap_sleep(4);
   \   0018  110400            LD      DE,4
   \   001B  3E00              LD      A,BYTE3 ap_sleep
   \   001D  210000            LD      HL,LWRD ap_sleep
   \   0020  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
     28          }
   \   0023  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0026            ?0082:
   \   0026  3E00              LD      A,BYTE3 ResShowMultiString
   \   0028  210000            LD      HL,LWRD ResShowMultiString
   \   002B  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   002E            draw_del_file:
     29          
     30          /********************************************************************************
     31          * Description : draw the selector file of the selector directory.
     32          *
     33          * Arguments  : location  :keep the file selector parament
     34                         string_id :display language type
     35          * Returns     :
     36          *            other:    Successful
     37          *            0:    Fail, detail information in fselError
     38          * Notes       :
     39          *
     40          ********************************************************************************/
     41          int draw_del_file(file_location_t *location, BYTE string_id)
     42          {
   \   002E  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0031  E6FF              DEFW    65510
   \   0033  FDE5              PUSH    IY
     43             int   filelist_active,cur_grouplist;    //目录总数,文件总数和浏览项数,浏览活动项
     44             int top, bottom,filetotal;
     45              char name[12];
     46              int key;
     47              filelist_active= FSELGetNo()-1;
   \   0035  3E00              LD      A,BYTE3 fselGetNo
   \   0037  210000            LD      HL,LWRD fselGetNo
   \   003A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   003D  11FFFF            LD      DE,65535
   \   0040  19                ADD     HL,DE
   \   0041  E5                PUSH    HL
   \   0042  FDE1              POP     IY
     48          
     49              cur_grouplist=filelist_active/6;
   \   0044  010600            LD      BC,6
   \   0047  EB                EX      DE,HL
   \   0048  CD9703            CALL    LWRD ?0085
     50              top=cur_grouplist*6; //顶的序号
     51          
     52              filetotal=fselGetTotal();
   \   004B  3E00              LD      A,BYTE3 fselGetTotal
   \   004D  210000            LD      HL,LWRD fselGetTotal
   \   0050  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0053  DD75EE            LD      (IX-18),L
   \   0056  DD74EF            LD      (IX-17),H
     53              bottom=top+5;
   \   0059  210500            LD      HL,5
   \   005C  DD4EEA            LD      C,(IX-22)
   \   005F  DD46EB            LD      B,(IX-21)
     54              if(bottom>filetotal-1)
   \   0062  CDAD03            CALL    LWRD ?0086
   \   0065  3006              JR      NC,?0003
   \   0067            ?0002:
     55                 bottom=filetotal-1;
   \   0067  DD75EC            LD      (IX-20),L
   \   006A  DD74ED            LD      (IX-19),H
   \   006D            ?0003:
     56             reinit_idm_buf_filelist(top, bottom, string_id);       //换页要重新初始化IDM数据
   \   006D  DD6E04            LD      L,(IX+4)
   \   0070  E5                PUSH    HL
   \   0071  CDC403            CALL    LWRD ?0088
   \   0074  E1                POP     HL
     57             ShowFilelist(top,bottom,filelist_active,filelist_active,string_id);
   \   0075  DD6E04            LD      L,(IX+4)
   \   0078  E5                PUSH    HL
   \   0079  FDE5              PUSH    IY
   \   007B  FDE5              PUSH    IY
   \   007D  DD4EEC            LD      C,(IX-20)
   \   0080  DD46ED            LD      B,(IX-19)
   \   0083  DD5EEA            LD      E,(IX-22)
   \   0086  DD56EB            LD      D,(IX-21)
   \   0089  3E00              LD      A,BYTE3 ShowFilelist
   \   008B  210000            LD      HL,LWRD ShowFilelist
   \   008E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0091  E1                POP     HL
   \   0092  E1                POP     HL
   \   0093  E1                POP     HL
   \   0094            ?0005:
     58               while(ap_get_message()!=0) {;}      //丢掉多余按键
   \   0094  CD0000            CALL    LWRD ap_get_message
   \   0097  B7                OR      A
   \   0098  20FA              JR      NZ,?0005
   \   009A            ?0006:
   \   009A            ?0004:
     59             ap_message_init(NULL);
   \   009A  5F                LD      E,A
   \   009B  57                LD      D,A
   \   009C  3E00              LD      A,BYTE3 ap_message_init
   \   009E  210000            LD      HL,LWRD ap_message_init
   \   00A1  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00A4            ?0008:
     60              while(1)
     61              {
     62                  //handle msg
     63                  key = ap_get_message();
   \   00A4  CD0000            CALL    LWRD ap_get_message
   \   00A7  4F                LD      C,A
   \   00A8  59                LD      E,C
   \   00A9  0600              LD      B,0
     64                  switch(key)
   \   00AB  50                LD      D,B
   \   00AC  CD0000            CALL    LWRD ?S_V_SWITCH_L06
   \   00AF  0900              DEFW    9
   \   00B1  0500              DEFW    5
   \   00B3  0600              DEFW    6
   \   00B5  1E00              DEFW    30
   \   00B7  2100              DEFW    33
   \   00B9  3000              DEFW    48
   \   00BB  3700              DEFW    55
   \   00BD  3800              DEFW    56
   \   00BF  4500              DEFW    69
   \   00C1  4600              DEFW    70
   \   00C3  3003              DEFW    ?0056
   \   00C5  D700              DEFW    ?0011
   \   00C7  9601              DEFW    ?0025
   \   00C9  A400              DEFW    ?0008
   \   00CB  2003              DEFW    ?0052
   \   00CD  6302              DEFW    ?0036
   \   00CF  5202              DEFW    ?0035
   \   00D1  0F03              DEFW    ?0049
   \   00D3  D700              DEFW    ?0011
   \   00D5  9601              DEFW    ?0025
   \   00D7            ?0011:
     65                  {
     66                  case AP_KEY_NEXT:
     67                  case AP_KEY_NEXT | AP_KEY_HOLD:
     68          
     69                    if(filelist_active<filetotal -1 )  //当前项小于总列表数
   \   00D7  DD4EEE            LD      C,(IX-18)
   \   00DA  DD46EF            LD      B,(IX-17)
   \   00DD  0B                DEC     BC
   \   00DE  FDE5              PUSH    IY
   \   00E0  E1                POP     HL
   \   00E1  CD0000            CALL    LWRD ?SS_CMP_L02
   \   00E4  304F              JR      NC,?0013
   \   00E6            ?0012:
     70                      {
     71          
     72                           filelist_active++;
     73                           if(filelist_active/6==cur_grouplist)
   \   00E6  010600            LD      BC,6
   \   00E9  FD23              INC     IY
   \   00EB  FDE5              PUSH    IY
   \   00ED  D1                POP     DE
   \   00EE  CD0000            CALL    LWRD ?SS_DIV_L02

⌨️ 快捷键说明

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