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

📄 ui_director2.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
    246          
    247              FS_Backup(Backbuf,FS_BACKUP_DIRINFO,0);//目录项备份
   \   03A6  210000            LD      HL,0
   \   03A9  E5                PUSH    HL
   \   03AA  0E02              LD      C,2
   \   03AC  2E06              LD      L,6
   \   03AE  39                ADD     HL,SP
   \   03AF  EB                EX      DE,HL
   \   03B0  CD0000            CALL    LWRD FS_Backup
   \   03B3  E1                POP     HL
    248              dir_total_num=count_dir_num();
   \   03B4  3E00              LD      A,BYTE3 count_dir_num
   \   03B6  210000            LD      HL,LWRD count_dir_num
   \   03B9  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   03BC  224B00            LD      (dir_total_num),HL
    249              file_total_num=GetFileTotalCur(FALSE);
   \   03BF  1E00              LD      E,0
   \   03C1  3E00              LD      A,BYTE3 GetFileTotalCur
   \   03C3  210000            LD      HL,LWRD GetFileTotalCur
   \   03C6  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   03C9  224D00            LD      (file_total_num),HL
    250              list_total_num=dir_total_num+file_total_num+1;
   \   03CC  ED4B4B00          LD      BC,(dir_total_num)
   \   03D0  09                ADD     HL,BC
   \   03D1  23                INC     HL
   \   03D2  224F00            LD      (list_total_num),HL
    251              fselTotal=file_total_num;
   \   03D5  2A4D00            LD      HL,(file_total_num)
   \   03D8  220000            LD      (fselTotal),HL
    252          
    253              for(i = 1; i <= dir_total_num; i++)
   \   03DB  DD210100          LD      IX,1
   \   03DF  210000            LD      HL,0
   \   03E2  39                ADD     HL,SP
   \   03E3  3601              LD      (HL),1
   \   03E5  23                INC     HL
   \   03E6  3600              LD      (HL),0
   \   03E8            ?0034:
   \   03E8  2B                DEC     HL
   \   03E9  4E                LD      C,(HL)
   \   03EA  23                INC     HL
   \   03EB  46                LD      B,(HL)
   \   03EC  2A4B00            LD      HL,(dir_total_num)
   \   03EF  A7                AND     A
   \   03F0  ED42              SBC     HL,BC
   \   03F2  DAB104            JP      C,?0033
   \   03F5            ?0035:
   \   03F5            ?0038:
    254              {
    255                  while(1)
    256                  {
    257                      if(tmp == 1)
   \   03F5  DDE5              PUSH    IX
   \   03F7  E1                POP     HL
   \   03F8  3E01              LD      A,1
   \   03FA  AD                XOR     L
   \   03FB  B4                OR      H
   \   03FC  200D              JR      NZ,?0041
   \   03FE            ?0040:
    258                          FS_Dir(file_name,  Ui_IgnoreExt, FS_DIR_DIR);
   \   03FE  0E81              LD      C,129
   \   0400  C5                PUSH    BC
   \   0401  010000            LD      BC,Ui_IgnoreExt
   \   0404  110000            LD      DE,file_name
   \   0407  CD0000            CALL    LWRD FS_Dir
   \   040A  E1                POP     HL
   \   040B            ?0041:
    259                      if(tmp > 1)
   \   040B  DDE5              PUSH    IX
   \   040D  C1                POP     BC
   \   040E  210100            LD      HL,1
   \   0411  A7                AND     A
   \   0412  ED42              SBC     HL,BC
   \   0414  300D              JR      NC,?0043
   \   0416            ?0042:
    260                          FS_Dir(file_name,  Ui_IgnoreExt, FS_DIR_DIR_CONT);
   \   0416  0E01              LD      C,1
   \   0418  C5                PUSH    BC
   \   0419  010000            LD      BC,Ui_IgnoreExt
   \   041C  110000            LD      DE,file_name
   \   041F  CD0000            CALL    LWRD FS_Dir
   \   0422  E1                POP     HL
   \   0423            ?0043:
    261                      tmp++;
    262                      FS_Backup(Backbuf,FS_BACKUP_DIRINFO,0);//目录项备份
   \   0423  210000            LD      HL,0
   \   0426  E5                PUSH    HL
   \   0427  0E02              LD      C,2
   \   0429  2E06              LD      L,6
   \   042B  39                ADD     HL,SP
   \   042C  EB                EX      DE,HL
   \   042D  CD0000            CALL    LWRD FS_Backup
   \   0430  E1                POP     HL
    263                      total = GetFileTotal(file_name, TRUE);
   \   0431  0E01              LD      C,1
   \   0433  110000            LD      DE,file_name
   \   0436  3E00              LD      A,BYTE3 GetFileTotal
   \   0438  210000            LD      HL,LWRD GetFileTotal
   \   043B  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   043E  E5                PUSH    HL
   \   043F  FDE1              POP     IY
    264                      FS_CD(file_name);
   \   0441  110000            LD      DE,file_name
   \   0444  CD0000            CALL    LWRD FS_CD
    265                      if (ToDirEntry(file_name,1))
   \   0447  010100            LD      BC,1
   \   044A  110000            LD      DE,file_name
   \   044D  3E00              LD      A,BYTE3 ToDirEntry
   \   044F  210000            LD      HL,LWRD ToDirEntry
   \   0452  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0455  2C                INC     L
   \   0456  2D                DEC     L
   \   0457  210200            LD      HL,2
   \   045A  39                ADD     HL,SP
   \   045B  DD23              INC     IX
   \   045D  2804              JR      Z,?0045
   \   045F            ?0044:
    266                      {
    267                          direxist=1;
   \   045F  3601              LD      (HL),1
    268                      }
    269                      else
   \   0461  1802              JR      ?0046
   \   0463            ?0045:
    270                      {
    271                          direxist=0;
   \   0463  3600              LD      (HL),0
   \   0465            ?0046:
    272                      }
    273                      output8(0x4e,input8(0x4e)|0x8);
   \   0465  DB4E              IN      A,(78)
   \   0467  CBDF              SET     3,A
   \   0469  D34E              OUT     (78),A
    274                      FS_CD("\\");
   \   046B  110000            LD      DE,?0047
   \   046E  CD0000            CALL    LWRD FS_CD
    275          
    276                      FS_Restore(Backbuf,FS_RESTORE_DIRINFO,0);//目录项恢复
   \   0471  210000            LD      HL,0
   \   0474  E5                PUSH    HL
   \   0475  0E02              LD      C,2
   \   0477  2E06              LD      L,6
   \   0479  39                ADD     HL,SP
   \   047A  EB                EX      DE,HL
   \   047B  CD0000            CALL    LWRD FS_Restore
   \   047E  E1                POP     HL
    277                      output8(0x4e,input8(0x4e)|0x08);        //清WATCH DOG
   \   047F  DB4E              IN      A,(78)
   \   0481  CBDF              SET     3,A
   \   0483  D34E              OUT     (78),A
    278                      if((total != 0)||(direxist))
   \   0485  FDE5              PUSH    IY
   \   0487  E1                POP     HL
   \   0488  7D                LD      A,L
   \   0489  B4                OR      H
   \   048A  2008              JR      NZ,?0050
   \   048C  210200            LD      HL,2
   \   048F  39                ADD     HL,SP
   \   0490  B6                OR      (HL)
   \   0491  CAF503            JP      Z,?0035
   \   0494            ?0050:
   \   0494            ?0051:
   \   0494            ?0048:
    279                      {
    280                              break;
   \   0494            ?0049:
   \   0494            ?0037:
    281                      }
    282                  }
    283                  Setdirbuf( tmp - 1 );
   \   0494  21FFFF            LD      HL,65535
   \   0497  DDE5              PUSH    IX
   \   0499  C1                POP     BC
   \   049A  09                ADD     HL,BC
   \   049B  EB                EX      DE,HL
   \   049C  3E00              LD      A,BYTE3 Setdirbuf
   \   049E  210000            LD      HL,LWRD Setdirbuf
   \   04A1  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   04A4  210000            LD      HL,0
   \   04A7  39                ADD     HL,SP
   \   04A8  34                INC     (HL)
   \   04A9  23                INC     HL
   \   04AA  C2E803            JP      NZ,?0034
   \   04AD  34                INC     (HL)
   \   04AE  C3E803            JP      LWRD ?0034
   \   04B1            ?0033:
    284              }
    285              FS_Restore(Backbuf,FS_RESTORE_DIRINFO,0);//目录项恢复
   \   04B1  210000            LD      HL,0
   \   04B4  E5                PUSH    HL
   \   04B5  0E02              LD      C,2
   \   04B7  2E06              LD      L,6
   \   04B9  39                ADD     HL,SP
   \   04BA  EB                EX      DE,HL
   \   04BB  CD0000            CALL    LWRD FS_Restore
   \   04BE  E1                POP     HL
    286          }
   \   04BF  212400            LD      HL,36
   \   04C2  39                ADD     HL,SP
   \   04C3  F9                LD      SP,HL
   \   04C4  DDE1              POP     IX
   \   04C6  FDE1              POP     IY
   \   04C8  D1                POP     DE
   \   04C9  C1                POP     BC
   \   04CA  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   04CD            get_dir_name:
    287          
    288          /********************************************************************************
    289          * Description : 获取第N个有效的目录
    290          *
    291          * Arguments   :
    292          *
    293          * Returns     :
    294          *
    295          * Notes       :
    296          *
    297          ********************************************************************************
    298          */
    299          bool get_dir_name(char *file, WORD num)
    300          {
   \   04CD  FDE5              PUSH    IY
   \   04CF  DDE5              PUSH    IX
   \   04D1  C5                PUSH    BC
   \   04D2  F5                PUSH    AF
   \   04D3  D5                PUSH    DE
   \   04D4  DDE1              POP     IX
    301          
    302              WORD m, tmp,total_file;
    303              if(num>dir_total_num)
   \   04D6  2A4B00            LD      HL,(dir_total_num)
   \   04D9  A7                AND     A
   \   04DA  ED42              SBC     HL,BC
   \   04DC  3005              JR      NC,?0053
   \   04DE            ?0052:
    304                  return 0;
   \   04DE  2E00              LD      L,0
   \   04E0  C37B05            JP      LWRD ?0065
   \   04E3            ?0053:
    305              if(num == 0)    //根目录或目录首
   \   04E3  79                LD      A,C
   \   04E4  B0                OR      B
   \   04E5  2030              JR      NZ,?0055
   \   04E7            ?0054:
    306              {
    307                  if(fselDirLayer==0)
   \   04E7  3A0000            LD      A,(fselDirLayer)
   \   04EA  B7                OR      A
   \   04EB  2015              JR      NZ,?0057
   \   04ED            ?0056:
    308                  {
    309                      file[0] = 'R';
   \   04ED  DD360052          LD      (IX+0),82
    310                      file[1] = 'O';
   \   04F1  DD36014F          LD      (IX+1),79
    311                      file[2] = 'O';
   \   04F5  DD36024F          LD      (IX+2),79
    312                      file[3] = 'T';
   \   04F9  DD360354          LD      (IX+3),84
    313                      file[4] = 0;
   \   04FD  DD7704            LD      (IX+4),A
    314                  }
    315                  else
   \   0500  1808              JR      ?0058
   \   0502            ?0057:
    316                  {
    317                      file[0] = '\\';
   \   0502  DD36005C          LD      (IX+0),92
    318                      file[1] = 0;
   \   0506  DD360100          LD      (IX+1),0
   \   050A            ?0058:
    319                  }
    320                  fselDirNo[fselDirLayer]=0;
   \   050A  ED4B0000          LD      BC,(fselDirLayer)
   \   050E  0600              LD      B,0
   \   0510  210000            LD      HL,fselDirNo

⌨️ 快捷键说明

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