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

📄 sub_function1.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 2 页
字号:
     68                  {
     69                  case FSEL_ALL_REPEATONE:
     70                  case FSEL_ALL_SEQUENCE:
     71                  case FSEL_DIR_SEQUENCE:
     72                  case FSEL_DIR_INTRO:
     73                      FSELSetMode( FSEL_ALL_REPEATALL );//PLAY 时按键
   \   0083  1804              JR      ?0051
     74                      break;
   \   0085            ?0023:
     75          
     76          
     77                  default:
     78                      FSELSetMode(g_amv_vars.repeat_mode);//
     79                      break;
   \   0085            ?0021:
   \   0085            ?0020:
     80                  }
     81              }
     82              else if (mod == Stop_key)
   \   0085  AF                XOR     A
   \   0086  B6                OR      (HL)
   \   0087  2004              JR      NZ,?0026
   \   0089            ?0025:
     83              {//
     84                  FSELSetMode(FSEL_ALL_REPEATALL);//STOP时按键
   \   0089            ?0051:
   \   0089  1E04              LD      E,4
   \   008B  1804              JR      ?0047
     85              }
     86              else
   \   008D            ?0026:
     87              {//正常播放的情况
     88                  FSELSetMode(g_amv_vars.repeat_mode);
   \   008D  ED5B0300          LD      DE,(g_amv_vars+3)
   \   0091            ?0047:
   \   0091  3E00              LD      A,BYTE3 fselSetMode
   \   0093  210000            LD      HL,LWRD fselSetMode
   \   0096  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0099            ?0027:
   \   0099            ?0024:
     89              }
     90          
     91              switch (Direct)
   \   0099  210200            LD      HL,2
   \   009C  39                ADD     HL,SP
   \   009D  5E                LD      E,(HL)
   \   009E  CD0000            CALL    LWRD ?C_S_SWITCH_L06
   \   00A1  00                DEFB    0
   \   00A2  0500              DEFW    5
   \   00A4  D400              DEFW    ?0034
   \   00A6  D700              DEFW    ?0028
   \   00A8  D700              DEFW    ?0028
   \   00AA  B000              DEFW    ?0031
   \   00AC  B600              DEFW    ?0032
   \   00AE  C000              DEFW    ?0033
   \   00B0            ?0029:
     92              {
     93                  case Music_Reset_Head:
     94                      break;
   \   00B0            ?0030:
     95          
     96                  case Music_Reset_End:
     97                      break;
   \   00B0            ?0031:
     98          
     99                  case Music_Cur:
    100                      result = TRUE;
   \   00B0  2B                DEC     HL
   \   00B1  2B                DEC     HL
   \   00B2  3601              LD      (HL),1
    101                      break;
   \   00B4  1821              JR      ?0028
   \   00B6            ?0032:
    102          
    103                  case Music_Next:
    104                      result = FSELGetNext(g_amv_vars.location.filename);
   \   00B6  111F00            LD      DE,g_amv_vars+31
   \   00B9  3E00              LD      A,BYTE3 fselGetNextFile
   \   00BB  210000            LD      HL,LWRD fselGetNextFile
   \   00BE  1808              JR      ?0048
    105                      break;
   \   00C0            ?0033:
    106          
    107                  case Music_Prev:
    108                      result = FSELGetPrev(g_amv_vars.location.filename);
   \   00C0  111F00            LD      DE,g_amv_vars+31
   \   00C3  3E00              LD      A,BYTE3 fselGetPrevFile
   \   00C5  210000            LD      HL,LWRD fselGetPrevFile
   \   00C8            ?0048:
   \   00C8  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00CB  E5                PUSH    HL
   \   00CC  210200            LD      HL,2
   \   00CF  39                ADD     HL,SP
   \   00D0  C1                POP     BC
   \   00D1  71                LD      (HL),C
    109                      break;
   \   00D2  1803              JR      ?0028
   \   00D4            ?0034:
    110          
    111                  default:
    112                      return FALSE;
   \   00D4  69                LD      L,C
    113              }
   \   00D5  1859              JR      ?0037
   \   00D7            ?0028:
    114          
    115              if (!result)
   \   00D7  210000            LD      HL,0
   \   00DA  39                ADD     HL,SP
   \   00DB  AF                XOR     A
   \   00DC  B6                OR      (HL)
   \   00DD  2003              JR      NZ,?0036
   \   00DF            ?0035:
    116              {
    117                  return result;
   \   00DF  6F                LD      L,A
    118              }
   \   00E0  184E              JR      ?0037
   \   00E2            ?0036:
    119              //取当前歌曲数状态
    120              g_musicamount = (WORD)FSELGetTotal();
   \   00E2  3E00              LD      A,BYTE3 fselGetTotal
   \   00E4  210000            LD      HL,LWRD fselGetTotal
   \   00E7  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00EA  7D                LD      A,L
   \   00EB  320000            LD      (g_musicamount),A
    121              g_musicsequence = (WORD)FSELGetNo();
   \   00EE  3E00              LD      A,BYTE3 fselGetNo
   \   00F0  210000            LD      HL,LWRD fselGetNo
   \   00F3  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00F6  7D                LD      A,L
   \   00F7  320000            LD      (g_musicsequence),A
    122              FSELSetMode(g_amv_vars.repeat_mode);
   \   00FA  ED5B0300          LD      DE,(g_amv_vars+3)
   \   00FE  3E00              LD      A,BYTE3 fselSetMode
   \   0100  210000            LD      HL,LWRD fselSetMode
   \   0103  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    123          
    124              //确保选择器与AP的目录对应
    125              fselGetLocation(& g_amv_vars.location);
   \   0106  110500            LD      DE,g_amv_vars+5
   \   0109  3E00              LD      A,BYTE3 fselGetLocation
   \   010B  210000            LD      HL,LWRD fselGetLocation
   \   010E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    126              //获取目录的长名
    127              make_dirname();
   \   0111  3E00              LD      A,BYTE3 make_dirname
   \   0113  210000            LD      HL,LWRD make_dirname
   \   0116  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    128          
    129              //检测Music的类型
    130              g_currentMusicType = CheckMusicType(g_amv_vars.location.filename);
   \   0119  111F00            LD      DE,g_amv_vars+31
   \   011C  3E00              LD      A,BYTE3 CheckMusicType
   \   011E  210000            LD      HL,LWRD CheckMusicType
   \   0121  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0124  7D                LD      A,L
   \   0125  320000            LD      (g_currentMusicType),A
    131              //找歌词文件并打开
    132          
    133             //清 WATCH_DOG
    134              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   0128  DB4E              IN      A,(78)
   \   012A  CBDF              SET     3,A
   \   012C  D34E              OUT     (78),A
    135          
    136              return TRUE;
   \   012E  2E01              LD      L,1
    137          }
   \   0130            ?0037:
   \   0130  F1                POP     AF
   \   0131  F1                POP     AF
   \   0132  F1                POP     AF
   \   0133  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0136            SelectCurMusic:
    138          
    139          //===================重选当前歌曲=========================
    140          void SelectCurMusic(void)
    141          {
   \   0136  C5                PUSH    BC
   \   0137  D5                PUSH    DE
    142                  ChangeMusic(Music_Cur, Play_play); //播放当前歌曲
   \   0138  0E01              LD      C,1
   \   013A  1E02              LD      E,2
   \   013C  3E00              LD      A,BYTE3 ChangeMusic
   \   013E  215300            LD      HL,LWRD ChangeMusic
   \   0141  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    143                  GetInformation();          //取文件信息
   \   0144  3E00              LD      A,BYTE3 GetInformation
   \   0146  210000            LD      HL,LWRD GetInformation
   \   0149  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    144          }
   \   014C  D1                POP     DE
   \   014D  C1                POP     BC
   \   014E  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
    145          //========================================================
   \   0151                    END

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

⌨️ 快捷键说明

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