ui_directory.lst

来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,139 行 · 第 1/4 页

LST
1,139
字号
   \   039F            ?0087:
    263                                          }
    264                                          if (fselDirNo[fselDirLayer] > 0)
   \   039F  4F                LD      C,A
   \   03A0  0600              LD      B,0
   \   03A2  210000            LD      HL,fselDirNo
   \   03A5  09                ADD     HL,BC
   \   03A6  7E                LD      A,(HL)
   \   03A7  B7                OR      A
   \   03A8  285C              JR      Z,?0092
   \   03AA            ?0088:
    265                                          {
    266                                                  fselEntCurrentDir(temp_record.name);
   \   03AA  110D00            LD      DE,temp_record+13
   \   03AD  3E00              LD      A,BYTE3 fselEntCurrentDir
   \   03AF  210000            LD      HL,LWRD fselEntCurrentDir
   \   03B2  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    267          
    268                                          init_dir_buf();
   \   03B5  CD8404            CALL    LWRD ?0117
    269                                          list_active=0;
   \   03B8  68                LD      L,B
   \   03B9  60                LD      H,B
   \   03BA  220000            LD      (list_active),HL
    270                                          cur_group=0;
   \   03BD  220000            LD      (cur_group),HL
    271                                          top=0; //顶的序号
    272                                          bottom=top+GroupDefine-1;                  //底的序号
   \   03C0  FD210500          LD      IY,5
    273                                          if(bottom>(list_total_num-1))
   \   03C4  AF                XOR     A
   \   03C5  DD77EC            LD      (IX-20),A
   \   03C8  DD77ED            LD      (IX-19),A
   \   03CB  2B                DEC     HL
   \   03CC  ED4B0000          LD      BC,(list_total_num)
   \   03D0  09                ADD     HL,BC
   \   03D1  FDE5              PUSH    IY
   \   03D3  C1                POP     BC
   \   03D4  A7                AND     A
   \   03D5  ED42              SBC     HL,BC
   \   03D7  302D              JR      NC,?0092
   \   03D9            ?0090:
    274                                                  bottom=list_total_num-1;
   \   03D9  21FFFF            LD      HL,65535
   \   03DC  ED4B0000          LD      BC,(list_total_num)
   \   03E0  09                ADD     HL,BC
   \   03E1  E5                PUSH    HL
   \   03E2  FDE1              POP     IY
   \   03E4            ?0091:
   \   03E4            ?0089:
    275                                      }
    276                                  }
    277                                  else
   \   03E4  1820              JR      ?0092
   \   03E6            ?0085:
    278                                  {
    279                                          if(fselDirLayer==0)
   \   03E6  B7                OR      A
   \   03E7  2009              JR      NZ,?0094
   \   03E9            ?0093:
    280                                              fselDirNo[fselDirLayer] = 0;
   \   03E9  4F                LD      C,A
   \   03EA  41                LD      B,C
   \   03EB  210000            LD      HL,fselDirNo
   \   03EE  09                ADD     HL,BC
   \   03EF  70                LD      (HL),B
    281                                          else
   \   03F0  1804              JR      ?0095
   \   03F2            ?0094:
    282                                              fselDirLayer--;
   \   03F2  210000            LD      HL,fselDirLayer
   \   03F5  35                DEC     (HL)
   \   03F6            ?0095:
    283          
    284                                          fselGetLocation(location);    //更新location
   \   03F6  DD5E02            LD      E,(IX+2)
   \   03F9  DD5603            LD      D,(IX+3)
   \   03FC  3E00              LD      A,BYTE3 fselGetLocation
   \   03FE  210000            LD      HL,LWRD fselGetLocation
   \   0401  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    285                                          return RESULT_NULL;
   \   0404  185E              JR      ?0109
    286                                      }
   \   0406            ?0092:
   \   0406            ?0083:
    287                              }
    288                              DecodeOnePage(top,bottom,type,string_id);
   \   0406  DD6E0A            LD      L,(IX+10)
   \   0409  E5                PUSH    HL
   \   040A  DD6E04            LD      L,(IX+4)
   \   040D  E5                PUSH    HL
   \   040E  CD8C04            CALL    LWRD ?0119
   \   0411  E1                POP     HL
   \   0412  E1                POP     HL
    289                              ap_message_init(NULL);
   \   0413  110000            LD      DE,0
   \   0416  3E00              LD      A,BYTE3 ap_message_init
   \   0418  210000            LD      HL,LWRD ap_message_init
   \   041B  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    290                              ShowDirectory(top,bottom,list_active,list_active,string_id,DiskFlag);
   \   041E  DD6EEE            LD      L,(IX-18)
   \   0421  E5                PUSH    HL
   \   0422  DD6E0A            LD      L,(IX+10)
   \   0425  E5                PUSH    HL
   \   0426  2A0000            LD      HL,(list_active)
   \   0429  E5                PUSH    HL
   \   042A  E5                PUSH    HL
   \   042B  FDE5              PUSH    IY
   \   042D  C1                POP     BC
   \   042E  DD5EEC            LD      E,(IX-20)
   \   0431  DD56ED            LD      D,(IX-19)
   \   0434  3E00              LD      A,BYTE3 ShowDirectory
   \   0436  210000            LD      HL,LWRD ShowDirectory
   \   0439  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   043C  E1                POP     HL
   \   043D  E1                POP     HL
   \   043E  E1                POP     HL
   \   043F  E1                POP     HL
    291                          break;
   \   0440  1831              JR      ?0027
   \   0442            ?0096:
    292          
    293                      case AP_MSG_WAIT_TIMEOUT:
    294                          fselSetLocationC(location);
   \   0442  CD7604            CALL    LWRD ?0116
    295                      return RESULT_IGNORE;
   \   0445  213400            LD      HL,52
    296                      case AP_MSG_SD_OUT:
   \   0448  181D              JR      ?0106
   \   044A            ?0097:
    297                          //如在游览SD卡,但SD卡又被拔出,就返回拔出信号
    298                          if (location->disk == 'H')
   \   044A  DD6E02            LD      L,(IX+2)
   \   044D  DD6603            LD      H,(IX+3)
   \   0450  7E                LD      A,(HL)
   \   0451  FE48              CP      72
   \   0453  201E              JR      NZ,?0027
   \   0455            ?0098:
    299                          {
    300                              return RESULT_SD_OUT;
   \   0455  213600            LD      HL,54
    301                          }
   \   0458  180D              JR      ?0106
   \   045A            ?0099:
    302                      break;
   \   045A            ?0100:
    303          
    304                      case AP_MSG_SD_IN:
    305                      break;
   \   045A            ?0101:
    306          
    307                      default:
    308                          key=ap_handle_hotkey(key);
   \   045A  CD0000            CALL    LWRD ap_handle_hotkey
   \   045D  DD77EF            LD      (IX-17),A
    309                          if(key == RESULT_REDRAW)
   \   0460  FE32              CP      50
   \   0462  2008              JR      NZ,?0103
   \   0464            ?0102:
    310                          {
    311                             return 0;            //界面不能重画直接返回
   \   0464            ?0109:
   \   0464  210000            LD      HL,0
    312                          }
   \   0467            ?0106:
   \   0467  FDE1              POP     IY
   \   0469  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   046C            ?0103:
    313                          else if(key != 0)
   \   046C  AF                XOR     A
   \   046D  DDB6EF            OR      (IX-17)
   \   0470  C2AC02            JP      NZ,?0058
   \   0473            ?0104:
    314                          {
    315                              goto  LongTime;
   \   0473            ?0105:
    316                          }
    317                      break;
   \   0473            ?0027:
    318                  } //switch() end
    319              }//while(1) end
    320          }
   \   0473  C3F800            JP      LWRD ?0025
   \   0476            ?0116:
   \   0476  DD5E02            LD      E,(IX+2)
   \   0479  DD5603            LD      D,(IX+3)
   \   047C  3E00              LD      A,BYTE3 fselSetLocationC
   \   047E  210000            LD      HL,LWRD fselSetLocationC
   \   0481  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   0484            ?0117:
   \   0484  3E00              LD      A,BYTE3 init_dir_buf
   \   0486  210000            LD      HL,LWRD init_dir_buf
   \   0489  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   048C            ?0119:
   \   048C  FDE5              PUSH    IY
   \   048E  C1                POP     BC
   \   048F  DD5EEC            LD      E,(IX-20)
   \   0492  DD56ED            LD      D,(IX-19)
   \   0495            ?0118:
   \   0495  3E00              LD      A,BYTE3 DecodeOnePage
   \   0497  210000            LD      HL,LWRD DecodeOnePage
   \   049A  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   049D            ?0120:
   \   049D  ED4B0000          LD      BC,(cur_group)
   \   04A1  09                ADD     HL,BC
   \   04A2  220000            LD      (cur_group),HL
   \   04A5  010600            LD      BC,6
   \   04A8  ED5B0000          LD      DE,(list_active)
   \   04AC  CD0000            CALL    LWRD ?US_DIV_L02
   \   04AF  EB                EX      DE,HL
   \   04B0  29                ADD     HL,HL
   \   04B1  4D                LD      C,L
   \   04B2  44                LD      B,H
   \   04B3  29                ADD     HL,HL
   \   04B4  09                ADD     HL,BC
   \   04B5  DD75EC            LD      (IX-20),L
   \   04B8  DD74ED            LD      (IX-19),H
   \   04BB  010500            LD      BC,5
   \   04BE  09                ADD     HL,BC
   \   04BF  E5                PUSH    HL
   \   04C0  FDE1              POP     IY
   \   04C2  21FFFF            LD      HL,65535
   \   04C5  ED4B0000          LD      BC,(list_total_num)
   \   04C9  09                ADD     HL,BC
   \   04CA  FDE5              PUSH    IY
   \   04CC  C1                POP     BC
   \   04CD  A7                AND     A
   \   04CE  ED42              SBC     HL,BC
   \   04D0  C9                RET
   \   04D1            ?0121:
   \   04D1  EB                EX      DE,HL
   \   04D2  CD0000            CALL    LWRD ?US_DIV_L02
   \   04D5  ED530000          LD      (cur_group),DE
   \   04D9  EB                EX      DE,HL
   \   04DA  29                ADD     HL,HL
   \   04DB  4D                LD      C,L
   \   04DC  44                LD      B,H
   \   04DD  29                ADD     HL,HL
   \   04DE  09                ADD     HL,BC
   \   04DF  DD75EC            LD      (IX-20),L
   \   04E2  DD74ED            LD      (IX-19),H
   \   04E5  010500            LD      BC,5
   \   04E8  09                ADD     HL,BC
   \   04E9  E5                PUSH    HL
   \   04EA  FDE1              POP     IY
   \   04EC  C9                RET
   \   04ED            ?0122:
   \   04ED  DB4E              IN      A,(78)
   \   04EF  CBDF              SET     3,A
   \   04F1  D34E              OUT     (78),A
   \   04F3  010600            LD      BC,6
   \   04F6  ED5B0000          LD      DE,(list_active)
   \   04FA  CD0000            CALL    LWRD ?US_MOD_L02
   \   04FD  0E4B              LD      C,75
   \   04FF  CD0000            CALL    LWRD ?S_MUL_L02
   \   0502  210000            LD      HL,OnePageRecord
   \   0505  19                ADD     HL,DE
   \   0506  4D                LD      C,L
   \   0507  44                LD      B,H
   \   0508  110000            LD      DE,temp_record
   \   050B  3E00              LD      A,BYTE3 TransOneRecord
   \   050D  210000            LD      HL,LWRD TransOneRecord
   \   0510  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0513  3A0B00            LD      A,(temp_record+11)
   \   0516  320000            LD      (fselDirLayer),A
   \   0519  210100            LD      HL,temp_record+1
   \   051C  4F                LD      C,A
   \   051D  0600              LD      B,0
   \   051F  09                ADD     HL,BC
   \   0520  46                LD      B,(HL)
   \   0521  C9                RET
   \   0000                    RSEG    CSTR
   \   0000            ?0011:
   \   0000  3A                DEFB    ':'
   \   0001  00                DEFB    0
   \   0002                    END

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

⌨️ 快捷键说明

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