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

📄 ui_directory_rec.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 4 页
字号:
   \   00EF  CD0000            CALL    LWRD ap_get_message
   \   00F2  B7                OR      A
   \   00F3  20FA              JR      NZ,?0020
   \   00F5            ?0021:
   \   00F5            ?0019:
     94          
     95              ap_message_init(NULL);
   \   00F5  5F                LD      E,A
   \   00F6  57                LD      D,A
   \   00F7  3E00              LD      A,BYTE3 ap_message_init
   \   00F9  210000            LD      HL,LWRD ap_message_init
   \   00FC  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00FF            ?0023:
     96          
     97              while(1)
     98              {
     99                  //handle msg
    100                  key = ap_get_message();
   \   00FF  CD0000            CALL    LWRD ap_get_message
    101                  switch(key)
   \   0102  5F                LD      E,A
   \   0103  CD0000            CALL    LWRD ?C_V_SWITCH_L06
   \   0106  0C00              DEFW    12
   \   0108  05                DEFB    5
   \   0109  06                DEFB    6
   \   010A  1E                DEFB    30
   \   010B  21                DEFB    33
   \   010C  25                DEFB    37
   \   010D  26                DEFB    38
   \   010E  30                DEFB    48
   \   010F  37                DEFB    55
   \   0110  38                DEFB    56
   \   0111  45                DEFB    69
   \   0112  46                DEFB    70
   \   0113  90                DEFB    144
   \   0114  0204              DEFW    ?0107
   \   0116  5F02              DEFW    ?0063
   \   0118  2E01              DEFW    ?0026
   \   011A  D001              DEFW    ?0044
   \   011C  FF00              DEFW    ?0023
   \   011E  F103              DEFW    ?0103
   \   0120  C602              DEFW    ?0078
   \   0122  C701              DEFW    ?0040
   \   0124  5602              DEFW    ?0058
   \   0126  DE03              DEFW    ?0102
   \   0128  DE03              DEFW    ?0102
   \   012A  2E01              DEFW    ?0026
   \   012C  D001              DEFW    ?0044
   \   012E            ?0026:
    102                  {
    103          
    104                      case AP_KEY_NEXT:
    105                      case AP_KEY_NEXT | AP_KEY_HOLD:
    106                              if(list_active < list_total_num - 1)
   \   012E  21FFFF            LD      HL,65535
   \   0131  ED4B0000          LD      BC,(list_total_num)
   \   0135  09                ADD     HL,BC
   \   0136  4D                LD      C,L
   \   0137  44                LD      B,H
   \   0138  2A0000            LD      HL,(list_active)
   \   013B  A7                AND     A
   \   013C  ED42              SBC     HL,BC
   \   013E  3031              JR      NC,?0028
   \   0140            ?0027:
    107                              {
    108                                  list_active++;
   \   0140  2A0000            LD      HL,(list_active)
   \   0143  23                INC     HL
   \   0144  220000            LD      (list_active),HL
    109                                  if(list_active/GroupDefine==cur_group)
   \   0147  010600            LD      BC,6
   \   014A  EB                EX      DE,HL
   \   014B  CD0000            CALL    LWRD ?US_DIV_L02
   \   014E  2A0000            LD      HL,(cur_group)
   \   0151  A7                AND     A
   \   0152  ED52              SBC     HL,DE
   \   0154  2011              JR      NZ,?0030
   \   0156            ?0029:
    110                                  {
    111                                          ShowDirectory(top,bottom,list_active-1,list_active,string_id,DiskFlag);
   \   0156  DD6EF8            LD      L,(IX-8)
   \   0159  E5                PUSH    HL
   \   015A  DD6E08            LD      L,(IX+8)
   \   015D  E5                PUSH    HL
   \   015E  3A0000            LD      A,(list_active)
   \   0161  4F                LD      C,A
   \   0162  C5                PUSH    BC
   \   0163  C6FF              ADD     A,255
   \   0165  184E              JR      ?0117
    112                                      }
    113                                      else
   \   0167            ?0030:
    114                                      {
    115                                              cur_group=cur_group+1;
   \   0167  210100            LD      HL,1
    116          
    117                                              top=(list_active/GroupDefine)*GroupDefine; //顶的序号
   \   016A  CD4204            CALL    LWRD ?0126
    118                                              bottom=top+GroupDefine-1;                  //底的序号
    119                                              if(bottom>(list_total_num-1))
   \   016D  302C              JR      NC,?0036
   \   016F            ?0032:
    120                                                  bottom=list_total_num-1;
   \   016F  181F              JR      ?0122
   \   0171            ?0033:
    121          
    122                                              DecodeOnePage(top,bottom,type,string_id);
    123                                              ShowDirectory(top,bottom,list_active,list_active,string_id,DiskFlag);
   \   0171            ?0031:
    124                                      }
    125                              }
    126                              else
   \   0171            ?0028:
    127                              {
    128                                      list_active = 0;
   \   0171  210000            LD      HL,0
   \   0174  220000            LD      (list_active),HL
    129                                      cur_group=0;
   \   0177  220000            LD      (cur_group),HL
    130                                      top=0; //顶的序号
    131                                      bottom=top+GroupDefine-1;                  //底的序号
   \   017A  FD210500          LD      IY,5
    132                                      if(bottom>(list_total_num-1))
   \   017E  AF                XOR     A
   \   017F  DD77F6            LD      (IX-10),A
   \   0182  DD77F7            LD      (IX-9),A
   \   0185  2B                DEC     HL
   \   0186  03                INC     BC
   \   0187  09                ADD     HL,BC
   \   0188  FDE5              PUSH    IY
   \   018A  C1                POP     BC
   \   018B  A7                AND     A
   \   018C  ED42              SBC     HL,BC
   \   018E  300B              JR      NC,?0036
   \   0190            ?0035:
    133                                          bottom=list_total_num-1;
   \   0190            ?0122:
   \   0190  21FFFF            LD      HL,65535
   \   0193  ED4B0000          LD      BC,(list_total_num)
   \   0197  09                ADD     HL,BC
   \   0198  E5                PUSH    HL
   \   0199  FDE1              POP     IY
   \   019B            ?0036:
    134                                      DecodeOnePage(top,bottom,type,string_id);
   \   019B  DD6E08            LD      L,(IX+8)
   \   019E  E5                PUSH    HL
   \   019F  DD6EFE            LD      L,(IX-2)
   \   01A2  E5                PUSH    HL
   \   01A3  CD2204            CALL    LWRD ?0124
   \   01A6  E1                POP     HL
   \   01A7  E1                POP     HL
    135                                      ShowDirectory(top,bottom,list_active,list_active,string_id,DiskFlag);
   \   01A8  DD6EF8            LD      L,(IX-8)
   \   01AB  E5                PUSH    HL
   \   01AC  DD6E08            LD      L,(IX+8)
   \   01AF  E5                PUSH    HL
   \   01B0  3A0000            LD      A,(list_active)
   \   01B3  4F                LD      C,A
   \   01B4  C5                PUSH    BC
   \   01B5            ?0117:
   \   01B5  4F                LD      C,A
   \   01B6  C5                PUSH    BC
   \   01B7  CD3304            CALL    LWRD ?0125
   \   01BA  E1                POP     HL
   \   01BB  E1                POP     HL
   \   01BC  E1                POP     HL
   \   01BD  E1                POP     HL
   \   01BE            ?0034:
   \   01BE            ?0038:
    136                              }
    137          
    138                        while(ap_get_message() != 0);
   \   01BE  CD0000            CALL    LWRD ap_get_message
   \   01C1  B7                OR      A
   \   01C2  CAFF00            JP      Z,?0023
   \   01C5            ?0039:
    139                          break;
   \   01C5  18F7              JR      ?0034
   \   01C7            ?0037:
   \   01C7            ?0040:
   \   01C7            ?0042:
    140          
    141          
    142                      case AP_KEY_NEXT | AP_KEY_UP:
    143                          while(ap_get_message() != 0);
   \   01C7  CD0000            CALL    LWRD ap_get_message
   \   01CA  B7                OR      A
   \   01CB  CAFF00            JP      Z,?0023
   \   01CE            ?0043:
    144                          break;
   \   01CE  18F7              JR      ?0040
   \   01D0            ?0041:
   \   01D0            ?0044:
    145          
    146                      case AP_KEY_PREV:
    147                      case AP_KEY_PREV | AP_KEY_HOLD :
    148                          if(list_active >0)
   \   01D0  2A0000            LD      HL,(list_active)
   \   01D3  7D                LD      A,L
   \   01D4  B4                OR      H
   \   01D5  282C              JR      Z,?0046
   \   01D7            ?0045:
    149                              {
    150                                  list_active--;
   \   01D7  2B                DEC     HL
   \   01D8  220000            LD      (list_active),HL
    151                                  if(list_active/GroupDefine==cur_group)
   \   01DB  010600            LD      BC,6
   \   01DE  EB                EX      DE,HL
   \   01DF  CD0000            CALL    LWRD ?US_DIV_L02
   \   01E2  2A0000            LD      HL,(cur_group)
   \   01E5  ED52              SBC     HL,DE
   \   01E7  2010              JR      NZ,?0048
   \   01E9            ?0047:
    152                                  {
    153                                          ShowDirectory(top,bottom,list_active+1,list_active,string_id,DiskFlag);
   \   01E9  DD6EF8            LD      L,(IX-8)
   \   01EC  E5                PUSH    HL
   \   01ED  DD6E08            LD      L,(IX+8)
   \   01F0  E5                PUSH    HL
   \   01F1  3A0000            LD      A,(list_active)
   \   01F4  4F                LD      C,A
   \   01F5  C5                PUSH    BC
   \   01F6  3C                INC     A
   \   01F7  184B              JR      ?0118
    154                                      }
    155                                      else
   \   01F9            ?0048:
    156                                      {
    157                                              cur_group=cur_group-1;
   \   01F9  21FFFF            LD      HL,65535
    158          
    159                                              top=(list_active/GroupDefine)*GroupDefine; //顶的序号
   \   01FC  CD4204            CALL    LWRD ?0126
    160                                              bottom=top+GroupDefine-1;                  //底的序号
    161                                              if(bottom>(list_total_num-1))
   \   01FF  3029              JR      NC,?0054
   \   0201            ?0050:
    162                                                  bottom=list_total_num-1;
   \   0201  181C              JR      ?0123
   \   0203            ?0051:
    163          
    164                                              DecodeOnePage(top,bottom,type,string_id);
    165                                              ShowDirectory(top,bottom,list_active,list_active,string_id,DiskFlag);
   \   0203            ?0049:
    166                                      }
    167                              }
    168                              else
   \   0203            ?0046:
    169                              {
    170                                      list_active= list_total_num - 1;
   \   0203  21FFFF            LD      HL,65535
   \   0206  ED4B0000          LD      BC,(list_total_num)
   \   020A  09                ADD     HL,BC
   \   020B  220000            LD      (list_active),HL
    171                                      cur_group=(list_total_num - 1)/GroupDefine;
   \   020E  010600            LD      BC,6
   \   0211  EB                EX      DE,HL
   \   0212  CD7604            CALL    LWRD ?0127
    172                                      top=(list_active/GroupDefine)*GroupDefine; //顶的序号
    173                                      bottom=top+GroupDefine-1;                  //底的序号
    174                                      if(bottom>(list_total_num-1))
   \   0215  4D                LD      C,L
   \   0216  44                LD      B,H
   \   0217  2A0000            LD      HL,(list_active)
   \   021A  A7                AND     A
   \   021B  ED42              SBC     HL,BC
   \   021D  300B              JR      NC,?0054
   \   021F            ?0053:
    175                                          bottom=list_total_num-1;
   \   021F            ?0123:
   \   021F  21FFFF            LD      HL,65535
   \   0222  ED4B0000          LD      BC,(list_total_num)
   \   0226  09                ADD     HL,BC
   \   0227  E5                PUSH    HL

⌨️ 快捷键说明

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