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

📄 sub_ui_stop.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 2 页
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       18/Nov/107  18:11:57 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d913f\ap\ap_reader\sub_ui_stop.c          #
#       List file     =  d:\case_i_d913f\ap\ap_reader\list\sub_ui_stop.lst   #
#       Object file   =  d:\case_i_d913f\ap\ap_reader\obj\sub_ui_stop.r01    #
#       ASM file      =  d:\case_i_d913f\ap\ap_reader\list\sub_ui_stop.s01   #
#       Command line  =  -v0 -mb -OD:\case_i_d913f\ap\ap_reader\Obj\ -e -K   #
#                        -w -gA -s9 -RCODE -r0 -DNAPDEBUG -DAMV_JPG_TXT      #
#                        -LD:\case_i_d913f\ap\ap_reader\List\ -q -t8         #
#                        -AD:\case_i_d913f\ap\ap_reader\List\                #
#                        -ND:\case_i_d913f\ap\ap_reader\List\ -X             #
#                        -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\         #
#                        d:\case_i_d913f\AP\AP_READER\sub_ui_stop.c          #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    sub_ui_stop(17)
   \   0000                    RSEG    CODE_1(0)
   \   0000                    RSEG    COM_FSL(0)
   \   0000                    EXTERN  FS_GetName
   \   0000                    EXTERN  PutS
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    EXTERN  SetTextPos
   \   0000                    PUBLIC  com_fname
   \   0000                    EXTERN  fileName
   \   0000                    EXTERN  file_name
   \   0000                    EXTERN  fselGetByNO
   \   0000                    EXTERN  menu_pos
   \   0000                    PUBLIC  read_idm_data_reader
   \   0000                    PUBLIC  reinit_idm_buf_reader
   \   0000                    PUBLIC  reset_cur_list_bg_color_reader
   \   0000                    PUBLIC  show_active_list_reader
   \   0000                    EXTERN  unitochar
   \   0000                    PUBLIC  write_idm_data_reader
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?SS_MOD_L02
   \   0000                    EXTERN  ?S_MUL_L02
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    EXTERN  ?STRCPY_L11
   \   0000                    RSEG    CODE_1
   \   0000            write_idm_data_reader:
      1          
      2          
      3          #include "ap_common.h"
      4          #include "ap_reader.h"
      5          
      6          
      7          #pragma codeseg(CODE_1)      
      8          
      9          #pragma memory=dataseg(COM_FSL)
     10          char com_fname[explorer_row_count_def][50];  
     11          #pragma memory=default
     12          extern char fileName[50];
     13          
     14          
     15          BOOL write_idm_data_reader(char *name, int count)
     16          {
   \   0000  C5                PUSH    BC
   \   0001  D5                PUSH    DE
   \   0002  F5                PUSH    AF
     17               byte status; 
     18               status = input8(0x05);
   \   0003  DB05              IN      A,(5)
   \   0005  210000            LD      HL,0
   \   0008  39                ADD     HL,SP
   \   0009  77                LD      (HL),A
     19               output8(0x05, 0xf6);
   \   000A  3EF6              LD      A,246
   \   000C  D305              OUT     (5),A
     20               memcpy( com_fname[count], name, 50);
   \   000E  113200            LD      DE,50
   \   0011  CD0000            CALL    LWRD ?S_MUL_L02
   \   0014  210000            LD      HL,com_fname
   \   0017  19                ADD     HL,DE
   \   0018  EB                EX      DE,HL
   \   0019  210200            LD      HL,2
   \   001C  39                ADD     HL,SP
   \   001D  46                LD      B,(HL)
   \   001E  23                INC     HL
   \   001F  66                LD      H,(HL)
   \   0020  68                LD      L,B
   \   0021  013200            LD      BC,50
   \   0024            ?0013:
   \   0024  EDB0              LDIR
     21               output8(0x05, status); 
   \   0026  69                LD      L,C
   \   0027  60                LD      H,B
   \   0028  39                ADD     HL,SP
   \   0029  7E                LD      A,(HL)
   \   002A  D305              OUT     (5),A
     22          }
   \   002C  E1                POP     HL
   \   002D  E1                POP     HL
   \   002E  E1                POP     HL
   \   002F  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0032            ?0014:
   \   0032  77                LD      (HL),A
   \   0033  3EF6              LD      A,246
   \   0035  D305              OUT     (5),A
   \   0037  013200            LD      BC,50
   \   003A  DDE5              PUSH    IX
   \   003C  D1                POP     DE
   \   003D  CD0000            CALL    LWRD ?S_MUL_L02
   \   0040  210000            LD      HL,com_fname
   \   0043  19                ADD     HL,DE
   \   0044  EB                EX      DE,HL
   \   0045  210000            LD      HL,fileName
   \   0048  CD0000            CALL    LWRD ?STRCPY_L11
   \   004B  68                LD      L,B
   \   004C  60                LD      H,B
   \   004D  C9                RET
   \   004E            reinit_idm_buf_reader:
     23          
     24          /*
     25          ********************************************************************************
     26          * Description : 重新初始化IDM数据区
     27          *
     28          * Arguments   :
     29          *
     30          * Returns     : 
     31          *
     32          * Notes       :dir: 0:select file , 1: select dir 
     33          *        
     34          ********************************************************************************
     35          */
     36          void reinit_idm_buf_reader(int top, int bottom, int dir, int string_id)
     37          {
   \   004E  FDE5              PUSH    IY
   \   0050  DDE5              PUSH    IX
   \   0052  DD210000          LD      IX,0
   \   0056  DD39              ADD     IX,SP
   \   0058  C5                PUSH    BC
   \   0059  D5                PUSH    DE
   \   005A  21CCFF            LD      HL,65484
   \   005D  39                ADD     HL,SP
   \   005E  F9                LD      SP,HL
     38              int i,NameNum;
     39              char Longnamebuf[50];
     40               
     41              for(i = top; i <= bottom; i++)
   \   005F  D5                PUSH    DE
   \   0060  FDE1              POP     IY
   \   0062            ?0003:
   \   0062  FDE5              PUSH    IY
   \   0064  C1                POP     BC
   \   0065  DD6EFE            LD      L,(IX-2)
   \   0068  DD66FF            LD      H,(IX-1)
   \   006B  F680              OR      128
   \   006D  ED42              SBC     HL,BC
   \   006F  E27300            JP      PO,?0009
   \   0072  AC                XOR     H
   \   0073            ?0009:
   \   0073  FAE100            JP      M,?0002
   \   0076            ?0004:
     42              { 
     43                  fselGetByNO(file_name, i + 1); 
   \   0076  CDEA00            CALL    LWRD ?0015
     44          
     45                  memcpy(Longnamebuf,file_name,12);
   \   0079  010C00            LD      BC,12
   \   007C  210200            LD      HL,2
   \   007F  39                ADD     HL,SP
   \   0080  EB                EX      DE,HL
   \   0081  210000            LD      HL,file_name
   \   0084  EDB0              LDIR
     46                  NameNum = FS_GetName(Longnamebuf,24);                    //获取当前目录名的长文件名  
   \   0086  0E18              LD      C,24
   \   0088  210200            LD      HL,2
   \   008B  39                ADD     HL,SP
   \   008C  EB                EX      DE,HL
   \   008D  CD0000            CALL    LWRD FS_GetName
   \   0090  4F                LD      C,A
   \   0091  0600              LD      B,0
     47                  if(NameNum!=0)
   \   0093  79                LD      A,C
   \   0094  B7                OR      A
   \   0095  282E              JR      Z,?0007
   \   0097            ?0006:
     48                  {
     49                      unitochar(Longnamebuf,NameNum*2+2,string_id);   //
   \   0097  DD6E0A            LD      L,(IX+10)
   \   009A  E5                PUSH    HL
   \   009B  69                LD      L,C
   \   009C  60                LD      H,B
   \   009D  29                ADD     HL,HL
   \   009E  4D                LD      C,L
   \   009F  44                LD      B,H
   \   00A0  03                INC     BC
   \   00A1  03                INC     BC
   \   00A2  210400            LD      HL,4
   \   00A5  39                ADD     HL,SP
   \   00A6  EB                EX      DE,HL
   \   00A7  3E00              LD      A,BYTE3 unitochar
   \   00A9  210000            LD      HL,LWRD unitochar
   \   00AC  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00AF  F1                POP     AF
     50                      write_idm_data_reader(Longnamebuf, i - top);
   \   00B0  DD4EFC            LD      C,(IX-4)
   \   00B3  DD46FD            LD      B,(IX-3)
   \   00B6  FDE5              PUSH    IY
   \   00B8  E1                POP     HL
   \   00B9  A7                AND     A
   \   00BA  ED42              SBC     HL,BC
   \   00BC  4D                LD      C,L
   \   00BD  44                LD      B,H
   \   00BE  210200            LD      HL,2
   \   00C1  39                ADD     HL,SP
   \   00C2  EB                EX      DE,HL
   \   00C3  1810              JR      ?0010
     51                  }
     52                  else
   \   00C5            ?0007:
     53                      write_idm_data_reader(file_name, i - top);
   \   00C5  DD4EFC            LD      C,(IX-4)
   \   00C8  DD46FD            LD      B,(IX-3)
   \   00CB  FDE5              PUSH    IY
   \   00CD  E1                POP     HL
   \   00CE  ED42              SBC     HL,BC
   \   00D0  4D                LD      C,L
   \   00D1  44                LD      B,H
   \   00D2  110000            LD      DE,file_name
   \   00D5            ?0010:
   \   00D5  3E00              LD      A,BYTE3 write_idm_data_reader
   \   00D7  210000            LD      HL,LWRD write_idm_data_reader

⌨️ 快捷键说明

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