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

📄 main.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   0048  111000            LD      DE,g_dir_voice
   \   004B  213800            LD      HL,g_record_vars+24
   \   004E  CD0000            CALL    LWRD ?STRCPY_L11
    148              g_record_vars.location.path[11] = 0x00;
   \   0051  AF                XOR     A
   \   0052  324300            LD      (g_record_vars+35),A
    149              //g_record_vars.location.disk = 'C';
    150              g_record_vars.location.filename[0] = 0;
   \   0055  324400            LD      (g_record_vars+36),A
    151          
    152              FS_CD(FS_CD_ROOT);
   \   0058  110000            LD      DE,?0005
   \   005B  CD0000            CALL    LWRD FS_CD
    153              status = FS_CD(g_dir_record);
   \   005E  110400            LD      DE,g_dir_record
   \   0061  CD0000            CALL    LWRD FS_CD
    154              if(!status)
   \   0064  B7                OR      A
   \   0065  200C              JR      NZ,?0007
   \   0067            ?0006:
    155              {
    156              status = FS_MakeDir(g_dir_record);
   \   0067  110400            LD      DE,g_dir_record
   \   006A  CD0000            CALL    LWRD FS_MakeDir
    157              if(!status)return FALSE;          // 创建目录失败//create directory fail
   \   006D  B7                OR      A
   \   006E  2009              JR      NZ,?0010
   \   0070            ?0008:
   \   0070  C32801            JP      LWRD ?0126
    158              }
   \   0073            ?0009:
    159              else
   \   0073            ?0007:
    160              FS_CD("\\");
   \   0073  110200            LD      DE,?0011
   \   0076  CD0000            CALL    LWRD FS_CD
   \   0079            ?0010:
    161              ASSERT(status);
    162          
    163              i = 1;
    164              status = FS_Dir(file,  g_dir_ext, FS_DIR_DIR);
   \   0079  0E81              LD      C,129
   \   007B  C5                PUSH    BC
   \   007C  011C00            LD      BC,g_dir_ext
   \   007F  210A00            LD      HL,10
   \   0082  39                ADD     HL,SP
   \   0083  EB                EX      DE,HL
   \   0084  CD0000            CALL    LWRD FS_Dir
   \   0087  E1                POP     HL
   \   0088  DD77EC            LD      (IX-20),A
   \   008B  FD210100          LD      IY,1
   \   008F            ?0014:
    165              ASSERT(status);
    166              do
    167              {
    168                    result = memcmp(file, g_dir_record, 8);
   \   008F  010800            LD      BC,8
   \   0092  69                LD      L,C
   \   0093  60                LD      H,B
   \   0094  39                ADD     HL,SP
   \   0095  EB                EX      DE,HL
   \   0096  210400            LD      HL,g_dir_record
   \   0099  CD0000            CALL    LWRD ?MEMCMP_L11
    169                    if(result == 0)break;
   \   009C  7D                LD      A,L
   \   009D  B4                OR      H
   \   009E  2817              JR      Z,?0012
   \   00A0            ?0015:
   \   00A0            ?0016:
    170                    i++;
    171              }
    172              while((status = FS_Dir(file,  g_dir_ext, FS_DIR_DIR_CONT)));
   \   00A0  0E01              LD      C,1
   \   00A2  C5                PUSH    BC
   \   00A3  011C00            LD      BC,g_dir_ext
   \   00A6  210A00            LD      HL,10
   \   00A9  39                ADD     HL,SP
   \   00AA  EB                EX      DE,HL
   \   00AB  CD0000            CALL    LWRD FS_Dir
   \   00AE  E1                POP     HL
   \   00AF  DD77EC            LD      (IX-20),A
   \   00B2  B7                OR      A
   \   00B3  FD23              INC     IY
   \   00B5  20D8              JR      NZ,?0014
   \   00B7            ?0012:
    173              if(!status)
   \   00B7  AF                XOR     A
   \   00B8  DDB6EC            OR      (IX-20)
   \   00BB  286B              JR      Z,?0126
   \   00BD            ?0017:
    174                   return FALSE;
   \   00BD            ?0018:
    175          
    176              g_record_vars.location.DirNo[0] = i;
   \   00BD  FDE5              PUSH    IY
   \   00BF  E1                POP     HL
   \   00C0  7D                LD      A,L
   \   00C1  322B00            LD      (g_record_vars+11),A
    177          
    178              FS_CD(g_dir_record);
   \   00C4  110400            LD      DE,g_dir_record
   \   00C7  CD0000            CALL    LWRD FS_CD
    179              status = FS_CD(g_dir_voice);
   \   00CA  111000            LD      DE,g_dir_voice
   \   00CD  CD0000            CALL    LWRD FS_CD
    180              if(!status)
   \   00D0  B7                OR      A
   \   00D1  200B              JR      NZ,?0020
   \   00D3            ?0019:
    181              {
    182                  status = FS_MakeDir(g_dir_voice);
   \   00D3  111000            LD      DE,g_dir_voice
   \   00D6  CD0000            CALL    LWRD FS_MakeDir
    183                  if(!status)return FALSE;          // 创建目录失败
   \   00D9  B7                OR      A
   \   00DA  2008              JR      NZ,?0023
   \   00DC            ?0021:
   \   00DC  184A              JR      ?0126
    184              }
   \   00DE            ?0022:
    185              else
   \   00DE            ?0020:
    186                  FS_CD("\\");
   \   00DE  110200            LD      DE,?0011
   \   00E1  CD0000            CALL    LWRD FS_CD
   \   00E4            ?0023:
    187              ASSERT(status);
    188          
    189              i = 1;
    190              status = FS_Dir(file,  g_dir_ext, FS_DIR_DIR);
   \   00E4  0E81              LD      C,129
   \   00E6  C5                PUSH    BC
   \   00E7  011C00            LD      BC,g_dir_ext
   \   00EA  210A00            LD      HL,10
   \   00ED  39                ADD     HL,SP
   \   00EE  EB                EX      DE,HL
   \   00EF  CD0000            CALL    LWRD FS_Dir
   \   00F2  E1                POP     HL
   \   00F3  DD77EC            LD      (IX-20),A
   \   00F6  FD210100          LD      IY,1
   \   00FA            ?0026:
    191              ASSERT(status);
    192              do
    193              {
    194                    result = memcmp(file, g_dir_voice, 8);
   \   00FA  010800            LD      BC,8
   \   00FD  69                LD      L,C
   \   00FE  60                LD      H,B
   \   00FF  39                ADD     HL,SP
   \   0100  EB                EX      DE,HL
   \   0101  211000            LD      HL,g_dir_voice
   \   0104  CD0000            CALL    LWRD ?MEMCMP_L11
    195                    if(result == 0)break;
   \   0107  7D                LD      A,L
   \   0108  B4                OR      H
   \   0109  2817              JR      Z,?0024
   \   010B            ?0027:
   \   010B            ?0028:
    196                    i++;
    197              }
    198              while((status = FS_Dir(file,  g_dir_ext, FS_DIR_DIR_CONT)));
   \   010B  0E01              LD      C,1
   \   010D  C5                PUSH    BC
   \   010E  011C00            LD      BC,g_dir_ext
   \   0111  210A00            LD      HL,10
   \   0114  39                ADD     HL,SP
   \   0115  EB                EX      DE,HL
   \   0116  CD0000            CALL    LWRD FS_Dir
   \   0119  E1                POP     HL
   \   011A  DD77EC            LD      (IX-20),A
   \   011D  B7                OR      A
   \   011E  FD23              INC     IY
   \   0120  20D8              JR      NZ,?0026
   \   0122            ?0024:
    199              if(!status)
   \   0122  AF                XOR     A
   \   0123  DDB6EC            OR      (IX-20)
   \   0126  2004              JR      NZ,?0030
   \   0128            ?0029:
    200                  return FALSE;
   \   0128            ?0126:
   \   0128  2E00              LD      L,0
   \   012A  1824              JR      ?0031
   \   012C            ?0030:
    201          
    202              g_record_vars.location.DirNo[1] = i;
   \   012C  FDE5              PUSH    IY
   \   012E  E1                POP     HL
   \   012F  7D                LD      A,L
   \   0130  322C00            LD      (g_record_vars+12),A
    203              g_record_vars.location.dirLayer = 1;
   \   0133  3E01              LD      A,1
   \   0135  323700            LD      (g_record_vars+23),A
    204              g_record_vars.location.ID3buffer = NULL;
   \   0138  210000            LD      HL,0
   \   013B  225000            LD      (g_record_vars+48),HL
    205              status = FS_CD(g_dir_voice);
   \   013E  111000            LD      DE,g_dir_voice
   \   0141  CD0000            CALL    LWRD FS_CD
    206              tmp = FS_GetCurDir();
   \   0144  CD0000            CALL    LWRD FS_GetCurDir
    207              g_record_vars.location.ClusterNo = tmp;
   \   0147  223300            LD      (g_record_vars+19),HL
   \   014A  ED433500          LD      (g_record_vars+21),BC
    208              //g_record_vars.location.filename[0] = '\0';
    209          
    210              return TRUE;
   \   014E  2E01              LD      L,1
    211          }
   \   0150            ?0031:
   \   0150  DDF9              LD      SP,IX
   \   0152  DDE1              POP     IX
   \   0154  FDE1              POP     IY
   \   0156  D1                POP     DE
   \   0157  C1                POP     BC
   \   0158  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   015B            make_dirname:
    212          
    213          /*
    214          ********************************************************************************
    215          * Description : 初始化系统设定变量
    216          *
    217          * Arguments   :
    218          *
    219          * Returns     :
    220          *
    221          * Notes       :
    222          *
    223          ********************************************************************************
    224          */
    225          void make_dirname(void)
    226          {
   \   015B  C5                PUSH    BC
   \   015C  D5                PUSH    DE
   \   015D  DDE5              PUSH    IX
   \   015F  21E0FF            LD      HL,65504
   \   0162  39                ADD     HL,SP
   \   0163  F9                LD      SP,HL
    227              int result;
    228              char Backbuf[32];
    229              //fselGetLocation(&g_record_vars.location);
    230              if(g_record_vars.location.path[0]==':')
   \   0164  3A3800            LD      A,(g_record_vars+24)
   \   0167  FE3A              CP      58
   \   0169  200B              JR      NZ,?0033
   \   016B            ?0032:
    231                  {
    232                      strcpy(dir_name,"ROOT");
   \   016B  110400            LD      DE,?0034
   \   016E  210000            LD      HL,dir_name
   \   0171  CD0000            CALL    LWRD ?STRCPY_L11
    233                  }
    234              else
   \   0174  185F              JR      ?0035
   \   0176            ?0033:
    235                  {
    236          
    237                          FS_Backup(Backbuf,FS_BACKUP_DIRINFO,0);//目录项备份
   \   0176  210000            LD      HL,0
   \   0179  E5                PUSH    HL
   \   017A  0E02              LD      C,2
   \   017C  23                INC     HL
   \   017D  23                INC     HL
   \   017E  39                ADD     HL,SP
   \   017F  EB                EX      DE,HL
   \   0180  CD0000            CALL    LWRD FS_Backup
   \   0183  E1                POP     HL
    238          //        dir_name[0] = ':';
    239          //            FS_CD(dir_name);
    240                      FS_CD("\\");
   \   0184  110200            LD      DE,?0011
   \   0187  CD0000            CALL    LWRD FS_CD
    241                  memcpy(dir_name, g_record_vars.location.path, 12);
   \   018A  010C00            LD      BC,12
   \   018D  110000            LD      DE,dir_name
   \   0190  213800            LD      HL,g_record_vars+24
   \   0193  EDB0              LDIR
    242                      result = FS_GetName(dir_name, 14); //取出长名
   \   0195  0E0E              LD      C,14
   \   0197  110000            LD      DE,dir_name

⌨️ 快捷键说明

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