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

📄 sub_function1.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
    185              //确保选择器与AP的目录对应
    186              fselGetLocation(& g_music_vars.location);
   \   01E0  CD1102            CALL    LWRD ?0178
    187              //检测Music的类型
    188               make_dirname();  //取目录名
   \   01E3  3E00              LD      A,BYTE3 make_dirname
   \   01E5  210000            LD      HL,LWRD make_dirname
   \   01E8  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    189              g_currentMusicType = CheckMusicType(g_music_vars.location.filename);
   \   01EB  112100            LD      DE,g_music_vars+33
   \   01EE  3E00              LD      A,BYTE3 CheckMusicType
   \   01F0  210000            LD      HL,LWRD CheckMusicType
   \   01F3  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01F6  7D                LD      A,L
   \   01F7  320000            LD      (g_currentMusicType),A
    190              //找歌词文件并打开
    191             //清 WATCH_DOG
    192              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   01FA  DB4E              IN      A,(78)
   \   01FC  CBDF              SET     3,A
   \   01FE  D34E              OUT     (78),A
    193              return TRUE;
   \   0200  2E01              LD      L,1
    194          }
   \   0202            ?0047:
   \   0202  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   0205            ?0174:
   \   0205  ED5B0100          LD      DE,(g_music_vars+1)
   \   0209            ?0173:
   \   0209  3E00              LD      A,BYTE3 fselSetMode
   \   020B  210000            LD      HL,LWRD fselSetMode
   \   020E  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   0211            ?0178:
   \   0211  110700            LD      DE,g_music_vars+7
   \   0214  3E00              LD      A,BYTE3 fselGetLocation
   \   0216  210000            LD      HL,LWRD fselGetLocation
   \   0219  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   021C            musicpSendCommand_bank:
    195          
    196          //==================================================================
    197          bool musicpSendCommand_bank( BYTE cmd, int param )
    198          {
   \   021C  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   021F  FEFF              DEFW    65534
   \   0221  FDE5              PUSH    IY
   \   0223  C5                PUSH    BC
   \   0224  FDE1              POP     IY
    199              bool result = FALSE;
    200              //根据不同的音乐类型发不同的命令
    201              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   0226  DB4E              IN      A,(78)
   \   0228  CBDF              SET     3,A
   \   022A  D34E              OUT     (78),A
    202              switch (cmd)
   \   022C  DD7E02            LD      A,(IX+2)
   \   022F  FE04              CP      4
   \   0231  202B              JR      NZ,?0056
   \   0233            ?0049:
    203              {
    204              case MC_PLAY:
    205          
    206                  if (!g_PAOpenFlag)
   \   0233  3A0000            LD      A,(g_PAOpenFlag)
   \   0236  B7                OR      A
   \   0237  2003              JR      NZ,?0051
   \   0239            ?0050:
    207                  {
    208                      //第一次进入AP时由于要开PA,为了减少噪音,要进行淡入。
    209                     #ifdef OPT_Sup_FadeIn_fun
    210                      musicpSendCommand(MC_FADEINOUT, FadeIn_def);
   \   0239  CD9400            CALL    LWRD ?0170
   \   023C            ?0051:
    211                     #endif //OPT_Sup_FadeIn_fun
    212                  }
    213                  if (g_FCexitflag)
   \   023C  3A0000            LD      A,(g_FCexitflag)
   \   023F  B7                OR      A
   \   0240  2804              JR      Z,?0053
   \   0242            ?0052:
    214                  {
    215                      openPA(0);
   \   0242  1E00              LD      E,0
   \   0244  1804              JR      ?0153
    216                  }
    217                  else
   \   0246            ?0053:
    218                  {
    219                      openPA(g_music_vars.volume);
   \   0246  ED5B0000          LD      DE,(g_music_vars)
   \   024A            ?0153:
   \   024A  3E00              LD      A,BYTE3 openPA
   \   024C  210000            LD      HL,LWRD openPA
   \   024F  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0252            ?0054:
    220                  }
    221          
    222                  if (param == Nor_Break_open)
   \   0252  FDE5              PUSH    IY
   \   0254  E1                POP     HL
   \   0255  3E01              LD      A,1
   \   0257  AD                XOR     L
   \   0258  B4                OR      H
   \   0259  2003              JR      NZ,?0056
   \   025B            ?0055:
    223                  {
    224                      //断点播放时要淡入
    225                     #ifdef OPT_Sup_FadeIn_fun
    226                      musicpSendCommand(MC_FADEINOUT, FadeIn_def);
   \   025B  CD9400            CALL    LWRD ?0170
   \   025E            ?0056:
    227                     #endif //OPT_Sup_FadeIn_fun
    228                  }
    229                  break;
   \   025E            ?0057:
    230          
    231              default:
    232                  break;
   \   025E            ?0048:
    233              }
    234              switch (g_currentMusicType)
   \   025E  ED5B0000          LD      DE,(g_currentMusicType)
   \   0262  CD0000            CALL    LWRD ?C_S_SWITCH_L06
   \   0265  01                DEFB    1
   \   0266  0600              DEFW    6
   \   0268  9A03              DEFW    ?0091
   \   026A  7602              DEFW    ?0059
   \   026C  C902              DEFW    ?0068
   \   026E  C902              DEFW    ?0068
   \   0270  C902              DEFW    ?0068
   \   0272  5B03              DEFW    ?0084
   \   0274  1C03              DEFW    ?0077
   \   0276            ?0059:
    235              {
    236              case Music_MP3: //mp3
    237                  BankSwitch((unsigned long)mp3pSendCommand >> 16);
   \   0276  1E00              LD      E,BYTE3 mp3pSendCommand
   \   0278  CD5204            CALL    LWRD ?0172
    238                  result = mp3pSendCommand(cmd, param);
   \   027B  3E00              LD      A,BYTE3 mp3pSendCommand
   \   027D  210000            LD      HL,LWRD mp3pSendCommand
   \   0280  CD2404            CALL    LWRD ?0164
    239                  switch(cmd)
   \   0283  2041              JR      NZ,?0066
   \   0285            ?0061:
    240                  {
    241                  case MC_LOAD:
    242                      mp3pSendCommand(MC_SETVOLUME, g_music_vars.volume);
   \   0285  ED4B0000          LD      BC,(g_music_vars)
   \   0289  79                LD      A,C
   \   028A  07                RLCA
   \   028B  9F                SBC     A,A
   \   028C  47                LD      B,A
   \   028D  1E40              LD      E,64
   \   028F  3E00              LD      A,BYTE3 mp3pSendCommand
   \   0291  210000            LD      HL,LWRD mp3pSendCommand
   \   0294  CD1604            CALL    LWRD ?0163
    243                      mp3pSendCommand(MC_SETSPEED, g_music_vars.play_rate);
   \   0297  3E00              LD      A,BYTE3 mp3pSendCommand
   \   0299  210000            LD      HL,LWRD mp3pSendCommand
   \   029C  CD3004            CALL    LWRD ?0165
    244                      mp3pSendCommand(MC_SETEQ, g_music_vars.eq_type);
   \   029F  3E00              LD      A,BYTE3 mp3pSendCommand
   \   02A1  210000            LD      HL,LWRD mp3pSendCommand
   \   02A4  CD3C04            CALL    LWRD ?0166
    245                      if(g_music_vars.eq_type>8)  
   \   02A7  301D              JR      NC,?0066
   \   02A9            ?0062:
    246                      { 
    247                       if(SRSModeFlag)
   \   02A9  3A0000            LD      A,(SRSModeFlag)
   \   02AC  B7                OR      A
   \   02AD  280F              JR      Z,?0065
   \   02AF            ?0064:
    248                       { 
    249                        mp3pSendCommand(MC_SETUSEREQ, (int)&(g_music_vars.SRSMod));
   \   02AF  015100            LD      BC,g_music_vars+81
   \   02B2  1E42              LD      E,66
   \   02B4  3E00              LD      A,BYTE3 mp3pSendCommand
   \   02B6  210000            LD      HL,LWRD mp3pSendCommand
   \   02B9  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    250                       }
    251                       else 
   \   02BC  1808              JR      ?0066
   \   02BE            ?0065:
    252                       {  
    253                         srs_default_set();
   \   02BE  3E00              LD      A,BYTE3 srs_default_set
   \   02C0  210000            LD      HL,LWRD srs_default_set
   \   02C3  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02C6            ?0066:
   \   02C6            ?0063:
    254                       }
    255                      }
    256                      break;
   \   02C6            ?0067:
    257          
    258                  default:
    259                      break;
   \   02C6            ?0060:
    260                  }
    261                  break;
   \   02C6  C39E03            JP      LWRD ?0058
   \   02C9            ?0068:
    262          
    263              case Music_WMA: //wma
    264              case Music_ASF: //asf
    265              case Music_WMV: //wmv
    266                  BankSwitch((unsigned long)wmapSendCommand >> 16);
   \   02C9  1E00              LD      E,BYTE3 wmapSendCommand
   \   02CB  CD5204            CALL    LWRD ?0172
    267                  result = wmapSendCommand(cmd, param);
   \   02CE  3E00              LD      A,BYTE3 wmapSendCommand
   \   02D0  210000            LD      HL,LWRD wmapSendCommand
   \   02D3  CD2404            CALL    LWRD ?0164
    268          
    269                  switch(cmd)
   \   02D6  2041              JR      NZ,?0075
   \   02D8            ?0070:
    270                  {
    271                  case MC_LOAD:
    272                      wmapSendCommand(MC_SETVOLUME, g_music_vars.volume);
   \   02D8  ED4B0000          LD      BC,(g_music_vars)
   \   02DC  79                LD      A,C
   \   02DD  07                RLCA
   \   02DE  9F                SBC     A,A
   \   02DF  47                LD      B,A
   \   02E0  1E40              LD      E,64
   \   02E2  3E00              LD      A,BYTE3 wmapSendCommand
   \   02E4  210000            LD      HL,LWRD wmapSendCommand
   \   02E7  CD1604            CALL    LWRD ?0163
    273                      wmapSendCommand(MC_SETSPEED, g_music_vars.play_rate);
   \   02EA  3E00              LD      A,BYTE3 wmapSendCommand
   \   02EC  210000            LD      HL,LWRD wmapSendCommand
   \   02EF  CD3004            CALL    LWRD ?0165
    274                      wmapSendCommand(MC_SETEQ, g_music_vars.eq_type);
   \   02F2  3E00              LD      A,BYTE3 wmapSendCommand
   \   02F4  210000            LD      HL,LWRD wmapSendCommand
   \   02F7  CD3C04            CALL    LWRD ?0166
    275                      if(g_music_vars.eq_type>8)  
   \   02FA  301D              JR      NC,?0075
   \   02FC            ?0071:
    276                      { 
    277                       if(SRSModeFlag)
   \   02FC  3A0000            LD      A,(SRSModeFlag)
   \   02FF  B7                OR      A
   \   0300  280F              JR      Z,?0074
   \   0302            ?0073:
    278                       { 
    279                        wmapSendCommand(MC_SETUSEREQ, (int)&(g_music_vars.SRSMod));
   \   0302  015100            LD      BC,g_music_vars+81
   \   0305  1E42              LD      E,66
   \   0307  3E00              LD      A,BYTE3 wmapSendCommand
   \   0309  210000            LD      HL,LWRD wmapSendCommand
   \   030C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    280                       }
    281                       else 
   \   030F  1808              JR      ?0075
   \   0311            ?0074:
    282                       {  
    283                         srs_default_set();
   \   0311  3E00              LD      A,BYTE3 srs_default_set
   \   0313  210000            LD      HL,LWRD srs_default_set
   \   0316  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0319            ?0075:
   \   0319            ?0072:
    284                       }
    285                      }
    286                      break;
   \   0319            ?0076:
    287          
    288                  default:
    289                      break;
   \   0319            ?0069:
    290                  }
    291                  break;
   \   0319  C39E03            JP      LWRD ?0058
   \   031C            ?0077:

⌨️ 快捷键说明

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