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

📄 ui_progress.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       27/Sep/107  17:31:10 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d913f\ap\common\ui_progress.c             #
#       List file     =  d:\case_i_d913f\ap\ap_fmrecord\list\ui_progress.lst #
#       Object file   =  d:\case_i_d913f\ap\ap_fmrecord\obj\ui_progress.r01  #
#       Command line  =  -v0 -mb -OD:\case_i_d913f\ap\ap_fmrecord\Obj\ -e    #
#                        -K -w -gA -s9 -RCODE -r0 -DNAPDEBUG                 #
#                        -LD:\case_i_d913f\ap\ap_fmrecord\List\ -q -t8 -X    #
#                        -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\         #
#                        d:\case_i_d913f\AP\COMMON\ui_progress.c             #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    ui_progress(17)
   \   0000                    RSEG    COM_CTRL(0)
   \   0000                    EXTERN  GetDCStatus
   \   0000                    EXTERN  ResShowMultiString
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    PUBLIC  ui_show_progress
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?SS_DIV_L02
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    RSEG    COM_CTRL
   \   0000            ui_show_progress:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *           ap common lib file
      5          *
      6          *        (c) Copyright, Actions Co,Ld.                             
      7          *             All Right Reserved                          
      8          *
      9          *  $Id: ui_progress.c,v 1.1.1.1 2006/05/22 03:23:59 selina Exp $
     10          *******************************************************************************
     11          */
     12          #pragma codeseg(COM_CTRL)
     13          
     14          #include "ap_common.h"
     15          
     16          
     17          /*
     18          ********************************************************************************
     19          * Description : 进度条
     20          *
     21          * Arguments   :
     22          *
     23          * Returns     : 
     24          *
     25          * Notes       :
     26          *
     27          ********************************************************************************
     28          */
     29          int ui_show_progress(const progress_t *progress, int string_id)
     30          {
   \   0000  FDE5              PUSH    IY
   \   0002  DDE5              PUSH    IX
   \   0004  C5                PUSH    BC
   \   0005  21F6FF            LD      HL,65526
   \   0008  39                ADD     HL,SP
   \   0009  F9                LD      SP,HL
   \   000A  D5                PUSH    DE
   \   000B  DDE1              POP     IX
     31              bool need_draw=TRUE;
     32              char key;
     33              int width, step, value;
     34              
     35              DC  oldDC_sav;    
     36              GetDCStatus(&oldDC_sav);
   \   000D  EB                EX      DE,HL
   \   000E  CD0000            CALL    LWRD GetDCStatus
     37              
     38              // 计算每一个步长的长度
     39              value = slider_pox_x_def + (slider_width_def) * (progress->value - progress->min) / (progress->max - progress->min);
   \   0011  DD5E00            LD      E,(IX+0)
   \   0014  DD5601            LD      D,(IX+1)
   \   0017  DD6E04            LD      L,(IX+4)
   \   001A  DD6605            LD      H,(IX+5)
   \   001D  A7                AND     A
   \   001E  ED52              SBC     HL,DE
   \   0020  29                ADD     HL,HL
   \   0021  29                ADD     HL,HL
   \   0022  29                ADD     HL,HL
   \   0023  29                ADD     HL,HL
   \   0024  29                ADD     HL,HL
   \   0025  29                ADD     HL,HL
   \   0026  29                ADD     HL,HL
   \   0027  EB                EX      DE,HL
   \   0028  DD4E00            LD      C,(IX+0)
   \   002B  DD4601            LD      B,(IX+1)
   \   002E  DD6E02            LD      L,(IX+2)
   \   0031  DD6603            LD      H,(IX+3)
   \   0034  A7                AND     A
   \   0035  ED42              SBC     HL,BC
   \   0037  4D                LD      C,L
   \   0038  44                LD      B,H
   \   0039  CD0000            CALL    LWRD ?SS_DIV_L02
   \   003C  211800            LD      HL,24
   \   003F  19                ADD     HL,DE
   \   0040  E5                PUSH    HL
   \   0041  FDE1              POP     IY
     40              //width = slider_width_def / step;
     41              // 可能会越界
     42               
     43                  if(need_draw)
   \   0043  AF                XOR     A
   \   0044  3C                INC     A
   \   0045  2863              JR      Z,?0003
   \   0047            ?0002:
     44                  {
     45                          ResShowPic(SSBCK,0,0);
   \   0047  0E00              LD      C,0
   \   0049  C5                PUSH    BC
   \   004A  11FE00            LD      DE,254
   \   004D  3E00              LD      A,BYTE3 ResShowPic
   \   004F  210000            LD      HL,LWRD ResShowPic
   \   0052  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0055  F1                POP     AF
     46                          ResShowPic(SSLIDER,slider_pox_x_def,slider_pox_y_def);
   \   0056  0E37              LD      C,55
   \   0058  C5                PUSH    BC
   \   0059  0E18              LD      C,24
   \   005B  11FF00            LD      DE,255
   \   005E  3E00              LD      A,BYTE3 ResShowPic
   \   0060  210000            LD      HL,LWRD ResShowPic
   \   0063  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0066  F1                POP     AF
     47                          SetPenColor(Color_BLACK_def);
   \   0067  010000            LD      BC,0
   \   006A  59                LD      E,C
   \   006B  50                LD      D,B
   \   006C  CD0000            CALL    LWRD SetPenColor
     48                                  //SetBackgdColor(Color_MENU_def);
     49                                  ///-SetTextOutMode(1);
     50                                  SetBackgdColor(0x0000df1c);
   \   006F  010000            LD      BC,0
   \   0072  111CDF            LD      DE,57116
   \   0075  CD0000            CALL    LWRD SetBackgdColor
     51                                  ResShowMultiString(SMAIN7, progress->string_id, 255, 1);
   \   0078  0E01              LD      C,1
   \   007A  C5                PUSH    BC
   \   007B  0EFF              LD      C,255
   \   007D  C5                PUSH    BC
   \   007E  DD4E06            LD      C,(IX+6)
   \   0081  11F701            LD      DE,503
   \   0084  3E00              LD      A,BYTE3 ResShowMultiString
   \   0086  210000            LD      HL,LWRD ResShowMultiString
   \   0089  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   008C  F1                POP     AF
   \   008D  F1                POP     AF
     52                                  SetBackgdColor(Color_MENU_def);
   \   008E  010000            LD      BC,0
   \   0091  11FFFF            LD      DE,65535
   \   0094  CD0000            CALL    LWRD SetBackgdColor
     53                                  ///-SetTextOutMode(0);
     54                                                  ResShowPic(SLIDPTR, value, slider_cursor_y_def); 
   \   0097  0E37              LD      C,55
   \   0099  C5                PUSH    BC
   \   009A  FDE5              PUSH    IY
   \   009C  E1                POP     HL
   \   009D  4D                LD      C,L
   \   009E  11FD00            LD      DE,253
   \   00A1  3E00              LD      A,BYTE3 ResShowPic
   \   00A3  210000            LD      HL,LWRD ResShowPic
   \   00A6  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00A9  F1                POP     AF
   \   00AA            ?0003:
     55                                                  
     56                  }
     57                          SetPenColor(oldDC_sav.PenColor);
   \   00AA  210000            LD      HL,0
   \   00AD  39                ADD     HL,SP
   \   00AE  5E                LD      E,(HL)
   \   00AF  23                INC     HL
   \   00B0  56                LD      D,(HL)
   \   00B1  23                INC     HL
   \   00B2  4E                LD      C,(HL)
   \   00B3  23                INC     HL
   \   00B4  46                LD      B,(HL)
   \   00B5  CD0000            CALL    LWRD SetPenColor
     58                                          SetBackgdColor(oldDC_sav.BackgdColor);
   \   00B8  210400            LD      HL,4
   \   00BB  39                ADD     HL,SP
   \   00BC  5E                LD      E,(HL)
   \   00BD  23                INC     HL
   \   00BE  56                LD      D,(HL)
   \   00BF  23                INC     HL
   \   00C0  4E                LD      C,(HL)
   \   00C1  23                INC     HL
   \   00C2  46                LD      B,(HL)
   \   00C3  CD0000            CALL    LWRD SetBackgdColor
     59          }
   \   00C6  210C00            LD      HL,12
   \   00C9  39                ADD     HL,SP
   \   00CA  F9                LD      SP,HL
   \   00CB  DDE1              POP     IX
   \   00CD  FDE1              POP     IY
   \   00CF  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   00D2                    END

Errors: none
Warnings: none
Code size: 210
Constant size: 0
Static variable size: Data(0) Iram(0)

⌨️ 快捷键说明

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