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

📄 sub_function3.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 4 页
字号:
   \   02B9  320700            LD      (g_music_vars+7),A
    284                          if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'H'))
   \   02BC  4F                LD      C,A
   \   02BD  C5                PUSH    BC
   \   02BE  214F00            LD      HL,g_music_vars+79
   \   02C1  4E                LD      C,(HL)
   \   02C2  C5                PUSH    BC
   \   02C3  CD8401            CALL    LWRD ?0205
   \   02C6  F1                POP     AF
   \   02C7  F1                POP     AF
   \   02C8  2C                INC     L
   \   02C9  2D                DEC     L
   \   02CA  2805              JR      Z,?0088
   \   02CC            ?0085:
    285                          {
    286                              if (FSELGetNext(g_music_vars.location.filename) != 0)
   \   02CC  CD3702            CALL    LWRD ?0204
   \   02CF  2033              JR      NZ,?0172
   \   02D1            ?0087:
    287                              {
    288                                  return 1;
    289                              }                                    
   \   02D1            ?0088:
   \   02D1            ?0086:
    290                          }
    291                          result = FSELGetErrID();
   \   02D1  CD8F01            CALL    LWRD ?0206
    292                          if (FSELGetErrID() != 0)
   \   02D4  CD8F01            CALL    LWRD ?0206
   \   02D7  2C                INC     L
   \   02D8  2D                DEC     L
   \   02D9  2805              JR      Z,?0090
   \   02DB            ?0089:
    293                          {
    294                              DisplayErrInfor(CFILEOUT);//显示卡无文件
   \   02DB  119301            LD      DE,403
   \   02DE  1851              JR      ?0177
    295                              return 0;
    296                          }
   \   02E0            ?0090:
    297                          return 0;//非法
   \   02E0  1879              JR      ?0114
    298                      }
   \   02E2            ?0082:
    299                      else
    300                      {   
    301                         g_music_vars.location.disk = 'C';
   \   02E2  3E43              LD      A,67
   \   02E4  320700            LD      (g_music_vars+7),A
    302                          return 0;//没卡退出
   \   02E7  1872              JR      ?0114
    303                      }                                                        
    304                  }
    305                  return 0;            
    306              }
   \   02E9            ?0065:
    307              else //g_music_vars.location.disk == 'H'
    308              {
    309                  if (FSELGetNext(g_music_vars.location.filename) != 0)
   \   02E9  CD3F02            CALL    LWRD ?0203
   \   02EC  2016              JR      NZ,?0172
   \   02EE            ?0091:
    310                  {
    311                      return 1;//找到文件                                
    312                  }
   \   02EE            ?0092:
    313                      
    314                  if (FSELGetErrID() == 0)
   \   02EE  CD8F01            CALL    LWRD ?0206
   \   02F1  2C                INC     L
   \   02F2  2D                DEC     L
   \   02F3  2866              JR      Z,?0114
   \   02F5            ?0093:
    315                  {
    316                      return 0;//非法                        
    317                  }
   \   02F5            ?0094:
    318          
    319                  //再查一次,因为可能这目录前面还有文件(虽然后面已无文件)
    320                  if (InitFileSelector() == 0)
   \   02F5  3E00              LD      A,BYTE3 InitFileSelector
   \   02F7  219D00            LD      HL,LWRD InitFileSelector
   \   02FA  CD4A02            CALL    LWRD ?0211
   \   02FD  285C              JR      Z,?0114
   \   02FF            ?0095:
    321                  {
    322                      return 0;
    323                  }            
   \   02FF            ?0096:
    324          
    325                  if (FSELGetNext(g_music_vars.location.filename) != 0)                
   \   02FF  CD3702            CALL    LWRD ?0204
   \   0302  2802              JR      Z,?0098
   \   0304            ?0097:
    326                  {
    327                      return 1;//找到文件                        
   \   0304            ?0172:
   \   0304  1846              JR      ?0173
    328                  }
   \   0306            ?0098:
    329                          
    330                  if (FSELGetErrID() == 0)
   \   0306  CD8F01            CALL    LWRD ?0206
   \   0309  2C                INC     L
   \   030A  2D                DEC     L
   \   030B  284E              JR      Z,?0114
   \   030D            ?0099:
    331                  {
    332                      return 0;//非法                        
    333                  }
   \   030D            ?0100:
    334                  
    335                  if (g_music_vars.location.disk == 'C')
   \   030D  3A0700            LD      A,(g_music_vars+7)
   \   0310  FE43              CP      67
   \   0312  281A              JR      Z,?0178
   \   0314            ?0101:
    336                  {
    337                      DisplayErrInfor(DFILEOUT);//显示磁盘无文件
    338                      return 0; //因为前面已从 'H' 查到 'C' 了,已查完,未找到文件            
    339                  } 
   \   0314            ?0102:
    340              
    341                  if((g_DiskStateFlag & SetCardOKFlag_def)!=0)       
   \   0314  3A0000            LD      A,(g_DiskStateFlag)
   \   0317  CB5F              BIT     3,A
   \   0319  2803              JR      Z,?0104
   \   031B            ?0103:
    342                  DisplayErrInfor(CFILEOUT);//显示卡无文件
   \   031B  CDA801            CALL    LWRD ?0208
   \   031E            ?0104:
    343          
    344                  g_music_vars.location.disk = 'C';
   \   031E  3E43              LD      A,67
   \   0320  320700            LD      (g_music_vars+7),A
    345                  if ((g_DiskStateFlag & SetDiskOKFlag_def) == 0)
   \   0323  3A0000            LD      A,(g_DiskStateFlag)
   \   0326  CB7F              BIT     7,A
   \   0328  2831              JR      Z,?0114
   \   032A            ?0105:
    346                  {
    347                      return 0;
    348                  }
   \   032A            ?0106:
    349                  
    350                  if ((g_DiskStateFlag & SetDiskNoFile_def) != 0)
   \   032A  CB77              BIT     6,A
   \   032C  2808              JR      Z,?0108
   \   032E            ?0107:
    351                  {
    352                      DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   032E            ?0178:
   \   032E  119201            LD      DE,402
   \   0331            ?0177:
   \   0331  CDAB01            CALL    LWRD ?0209
    353                      return 0;
   \   0334  1825              JR      ?0114
    354                  }
   \   0336            ?0108:
    355                  
    356                  if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'C'))
   \   0336  0E43              LD      C,67
   \   0338  C5                PUSH    BC
   \   0339  214F00            LD      HL,g_music_vars+79
   \   033C  4E                LD      C,(HL)
   \   033D  C5                PUSH    BC
   \   033E  CD8401            CALL    LWRD ?0205
   \   0341  F1                POP     AF
   \   0342  F1                POP     AF
   \   0343  2C                INC     L
   \   0344  2D                DEC     L
   \   0345  280A              JR      Z,?0112
   \   0347            ?0109:
    357                  {
    358                      if (FSELGetNext(g_music_vars.location.filename) != 0)                
   \   0347  CD3702            CALL    LWRD ?0204
   \   034A  2805              JR      Z,?0112
   \   034C            ?0111:
    359                      {
    360                          return 1;//找到文件                        
   \   034C            ?0173:
   \   034C  210100            LD      HL,1
    361                      }                        
   \   034F  180D              JR      ?0115
   \   0351            ?0112:
   \   0351            ?0110:
    362                  }
    363                  result = FSELGetErrID();
   \   0351  CD8F01            CALL    LWRD ?0206
    364                  
    365                  if (result != 0)
   \   0354  7D                LD      A,L
   \   0355  B7                OR      A
   \   0356  2803              JR      Z,?0114
   \   0358            ?0113:
    366                  {
    367                      DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   0358  CD9701            CALL    LWRD ?0207
    368                      g_DiskStateFlag |= SetDiskNoFile_def;//标志磁盘无文件
    369                      return 0;//
    370                  }
   \   035B            ?0114:
    371                  return 0;                            
   \   035B  210000            LD      HL,0
    372              }
   \   035E            ?0115:
   \   035E  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
    373          }
    374          
    375          
    376          /*
    377          // error information defines in file selector
    378          #define FSEL_ERR_OUTOF          1
    379          #define FSEL_ERR_EMPTY          2
    380          #define FSEL_ERR_SETDIR         3
    381          #define FSEL_ERR_SETFILE        4
    382          #define FSEL_ERR_EXCEPTION      5
    383          
    384          
    385          #define FSEL_ERR_FS             20
    386          #define FSEL_ERR_FAIL           21
    387          #define FSEL_ERR_DISK           22
    388          #define FSEL_ERR_PLAYLIST       23
    389          */
    390          
    391          /*
    392          //error information display
    393          1) 磁盘错  : 在 main.c 中已报
    394          2) 卡错    : 在 main.c 中已报
    395          
    396          3) 磁盘无文件
    397          4) 卡无文件
    398          
    399          5) 空间满    :在 ui_follow.c 文件中已报
    400          7) 目录已满     :在 ui_follow.c 文件中已报
    401          
    402          6) 电量不足!:
    403          8) 格式错误
    404          9) 卡已拔出      
    405          
    406          */
   \   0361                    END

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

⌨️ 快捷键说明

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