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

📄 sub_function3.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 4 页
字号:
     77                  {
     78                      return 0;
     79                  }
   \   00E2            ?0019:
     80                  
     81                  if ((g_DiskStateFlag & SetDiskNoFile_def) != 0)
   \   00E2  CB77              BIT     6,A
   \   00E4  2806              JR      Z,?0021
   \   00E6            ?0020:
     82                  {
     83                      DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   00E6  119201            LD      DE,402
   \   00E9  C37401            JP      LWRD ?0128
     84                      return 0;
     85                  }
   \   00EC            ?0021:
     86                  
     87                  if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'C'))
   \   00EC  0E43              LD      C,67
   \   00EE  C5                PUSH    BC
   \   00EF  214F00            LD      HL,g_music_vars+79
   \   00F2  4E                LD      C,(HL)
   \   00F3  C5                PUSH    BC
   \   00F4  CD8401            CALL    LWRD ?0205
   \   00F7  F1                POP     AF
   \   00F8  F1                POP     AF
   \   00F9  2C                INC     L
   \   00FA  2D                DEC     L
   \   00FB  2802              JR      Z,?0023
   \   00FD            ?0022:
     88                  {
     89                      return 1;
   \   00FD            ?0125:
   \   00FD  1832              JR      ?0126
     90                  }
   \   00FF            ?0023:
     91                  
     92                  if (FSELGetErrID() != 0)
   \   00FF  CD8F01            CALL    LWRD ?0206
   \   0102  2C                INC     L
   \   0103  2D                DEC     L
   \   0104  2805              JR      Z,?0025
   \   0106            ?0024:
     93                  {
     94                      DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   0106  CD9701            CALL    LWRD ?0207
     95                      g_DiskStateFlag |= SetDiskNoFile_def;//标志磁盘无文件
     96                      return 0;//要退出 ap
   \   0109  1873              JR      ?0118
     97                  }
   \   010B            ?0025:
     98                  return 0;
   \   010B  1871              JR      ?0118
     99                                  
    100              }
   \   010D            ?0009:
    101              
    102              else //g_music_vars.location.disk == 'C' 或其他
    103              {
    104                  if ((g_DiskStateFlag & SetDiskOKFlag_def) != 0)
   \   010D  3A0000            LD      A,(g_DiskStateFlag)
   \   0110  CB7F              BIT     7,A
   \   0112  2829              JR      Z,?0034
   \   0114            ?0026:
    105                  {                    
    106                      if ((g_DiskStateFlag & SetDiskNoFile_def) != 0)
   \   0114  CB77              BIT     6,A
   \   0116  2808              JR      Z,?0029
   \   0118            ?0028:
    107                      {
    108                          DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   0118  119201            LD      DE,402
   \   011B  CDAB01            CALL    LWRD ?0209
    109                      }
    110                      else
   \   011E  181D              JR      ?0034
   \   0120            ?0029:
    111                      {
    112                          if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'C'))
   \   0120  0E43              LD      C,67
   \   0122  C5                PUSH    BC
   \   0123  214F00            LD      HL,g_music_vars+79
   \   0126  4E                LD      C,(HL)
   \   0127  C5                PUSH    BC
   \   0128  CD8401            CALL    LWRD ?0205
   \   012B  F1                POP     AF
   \   012C  F1                POP     AF
   \   012D  2C                INC     L
   \   012E  2D                DEC     L
   \   012F  2802              JR      Z,?0032
   \   0131            ?0031:
    113                          {
    114                              return 1;                    
   \   0131            ?0126:
   \   0131  182F              JR      ?0127
    115                          }
   \   0133            ?0032:
    116                          if (FSELGetErrID() != 0)
   \   0133  CD8F01            CALL    LWRD ?0206
   \   0136  2C                INC     L
   \   0137  2D                DEC     L
   \   0138  2803              JR      Z,?0034
   \   013A            ?0033:
    117                          {
    118                              DisplayErrInfor(DFILEOUT);//显示磁盘无文件
   \   013A  CD9701            CALL    LWRD ?0207
    119                              g_DiskStateFlag |= SetDiskNoFile_def;//标志磁盘无文件
   \   013D            ?0034:
   \   013D            ?0030:
   \   013D            ?0027:
    120                          }
    121                      }
    122                  }
    123                  
    124                  //检测 sd 卡是否存在
    125                  if ((DRV_DetectUD(1) == 0x20)&&((g_DiskStateFlag & SetCardOKFlag_def)!=0))
   \   013D  1E01              LD      E,1
   \   013F  CD0000            CALL    LWRD DRV_DetectUD
   \   0142  FE20              CP      32
   \   0144  2033              JR      NZ,?0036
   \   0146  3A0000            LD      A,(g_DiskStateFlag)
   \   0149  CB5F              BIT     3,A
   \   014B  282C              JR      Z,?0036
   \   014D            ?0038:
   \   014D            ?0037:
   \   014D            ?0035:
    126                  {//有卡                
    127                      g_music_vars.location.disk = 'H';
   \   014D  3E48              LD      A,72
   \   014F  320700            LD      (g_music_vars+7),A
    128                      if (FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_SEQUENCE, g_music_vars.fselmod, 'H'))
   \   0152  4F                LD      C,A
   \   0153  C5                PUSH    BC
   \   0154  214F00            LD      HL,g_music_vars+79
   \   0157  4E                LD      C,(HL)
   \   0158  C5                PUSH    BC
   \   0159  CD8401            CALL    LWRD ?0205
   \   015C  F1                POP     AF
   \   015D  F1                POP     AF
   \   015E  2C                INC     L
   \   015F  2D                DEC     L
   \   0160  2805              JR      Z,?0040
   \   0162            ?0039:
    129                      {
    130                          return 1;
   \   0162            ?0127:
   \   0162  210100            LD      HL,1
    131                      }
   \   0165  181A              JR      ?0043
   \   0167            ?0040:
    132                      result = FSELGetErrID();
   \   0167  CD8F01            CALL    LWRD ?0206
    133                      if (FSELGetErrID() != 0)
   \   016A  CD8F01            CALL    LWRD ?0206
   \   016D  2C                INC     L
   \   016E  2D                DEC     L
   \   016F  280D              JR      Z,?0118
   \   0171            ?0041:
    134                      {
    135                          DisplayErrInfor(CFILEOUT);//显示卡无文件
   \   0171  119301            LD      DE,403
   \   0174            ?0128:
   \   0174  CDAB01            CALL    LWRD ?0209
    136                          return 0;
   \   0177  1805              JR      ?0118
    137                      }
   \   0179            ?0042:
    138                      return 0;//非法
    139                  }
   \   0179            ?0036:
    140                  else
    141                  {
    142                     g_music_vars.location.disk='C'; 
   \   0179  3E43              LD      A,67
   \   017B  320700            LD      (g_music_vars+7),A
    143                      return 0;//没卡退出
   \   017E            ?0118:
   \   017E  210000            LD      HL,0
    144                  }
   \   0181            ?0043:
   \   0181  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0184            ?0205:
   \   0184  0E00              LD      C,0
   \   0186  59                LD      E,C
   \   0187  3E00              LD      A,BYTE3 fselInit
   \   0189  210000            LD      HL,LWRD fselInit
   \   018C  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   018F            ?0206:
   \   018F  3E00              LD      A,BYTE3 fselGetErrID
   \   0191  210000            LD      HL,LWRD fselGetErrID
   \   0194  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   0197            ?0207:
   \   0197  119201            LD      DE,402
   \   019A  3E00              LD      A,BYTE3 DisplayErrInfor
   \   019C  210000            LD      HL,LWRD DisplayErrInfor
   \   019F  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01A2  210000            LD      HL,g_DiskStateFlag
   \   01A5  CBF6              SET     6,(HL)
   \   01A7  C9                RET
   \   01A8            ?0208:
   \   01A8  119301            LD      DE,403
   \   01AB            ?0209:
   \   01AB  3E00              LD      A,BYTE3 DisplayErrInfor
   \   01AD  210000            LD      HL,LWRD DisplayErrInfor
   \   01B0  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
    145                  
    146              }
    147                  
    148          }        
   \   01B3            UpdateFileSelector:
    149                  
    150                  
    151          /******************************************************************************
    152          ** 名字:
    153          ** 接口: int UpdateFileSelector(void)
    154          ** 描述: 更新文件选择器
    155          ** 输入参数: void
    156          ** 输出参数:
    157                      0: 更新不成功,要退出AP
    158                      1: 更新成功,已可用
    159          ** 使用说明:
    160          ********************************************************************************/                    
    161          int UpdateFileSelector(void)
    162          {
   \   01B3  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   01B6  FEFF              DEFW    65534
    163          
    164              BYTE result;
    165                          
    166              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   01B8  DB4E              IN      A,(78)
   \   01BA  CBDF              SET     3,A
   \   01BC  D34E              OUT     (78),A
    167              BankSwitch((unsigned long)FSELSetLocation >> 16);
   \   01BE  0600              LD      B,0
   \   01C0  1E00              LD      E,BYTE3 fselSetLocation
   \   01C2  48                LD      C,B
   \   01C3  CD0000            CALL    LWRD BankSwitch
    168          
    169              result = FSELSetLocation(& g_music_vars.location);
   \   01C6  110700            LD      DE,g_music_vars+7
   \   01C9  3E00              LD      A,BYTE3 fselSetLocation
   \   01CB  210000            LD      HL,LWRD fselSetLocation
   \   01CE  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01D1  DD75FE            LD      (IX-2),L
    170               
    171              if (result == 1)
   \   01D4  2D                DEC     L
   \   01D5  200D              JR      NZ,?0045
   \   01D7            ?0044:
    172              {
    173                  if (g_music_vars.location.filename[0] != '\0')
   \   01D7  3A2100            LD      A,(g_music_vars+33)

⌨️ 快捷键说明

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