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

📄 sub_function1.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   00C7            ?0009:
     77          
     78              }
     79              else if (PlayStatus == FFPlaySta)
   \   00C7  FE03              CP      3
   \   00C9  202F              JR      NZ,?0015
   \   00CB            ?0014:
     80              {
     81                  DisInFFEnd( DisMod );//到尾显示
   \   00CB  3E00              LD      A,BYTE3 DisInFFEnd
   \   00CD  213C00            LD      HL,LWRD DisInFFEnd
   \   00D0  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00D3            ?0017:
     82                  while ( ap_get_message() != (AP_KEY_NEXT | AP_KEY_UP) );
   \   00D3  CD0000            CALL    LWRD ap_get_message
   \   00D6  FE26              CP      38
   \   00D8  20F9              JR      NZ,?0017
   \   00DA            ?0018:
   \   00DA            ?0016:
     83                  g_result = ToNextMusic(Play_play);
   \   00DA  CD1F01            CALL    LWRD ?0171
     84                  if(DisMod == 0)
   \   00DD  39                ADD     HL,SP
   \   00DE  AF                XOR     A
   \   00DF  B6                OR      (HL)
   \   00E0  200D              JR      NZ,?0020
   \   00E2            ?0019:
     85                  {
     86                      SetFullInterface();
   \   00E2  320000            LD      (ui_auto_update),A
   \   00E5  210000            LD      HL,UpDisplayFlag
   \   00E8  7E                LD      A,(HL)
   \   00E9  F6C1              OR      193
   \   00EB  77                LD      (HL),A
   \   00EC  23                INC     HL
   \   00ED  36FF              LD      (HL),255
   \   00EF            ?0020:
     87                  }
     88                  if(g_result == RESULT_UI_STOP) return g_result;
   \   00EF  2A0000            LD      HL,(g_result)
   \   00F2  3E66              LD      A,102
   \   00F4  AD                XOR     L
   \   00F5  B4                OR      H
   \   00F6  2020              JR      NZ,?0027
   \   00F8            ?0021:
   \   00F8  1821              JR      ?0028
     89              }
   \   00FA            ?0022:
     90          
     91              else
   \   00FA            ?0015:
     92              {
     93                  g_result = ToNextMusic(Play_play);
   \   00FA  CD1F01            CALL    LWRD ?0171
     94                  if(DisMod == 0)
   \   00FD  39                ADD     HL,SP
   \   00FE  AF                XOR     A
   \   00FF  B6                OR      (HL)
   \   0100  200D              JR      NZ,?0025
   \   0102            ?0024:
     95                  {
     96                      SetFullInterface();
   \   0102  320000            LD      (ui_auto_update),A
   \   0105  210000            LD      HL,UpDisplayFlag
   \   0108  7E                LD      A,(HL)
   \   0109  F6C1              OR      193
   \   010B  77                LD      (HL),A
   \   010C  23                INC     HL
   \   010D  36FF              LD      (HL),255
   \   010F            ?0025:
     97                  }
     98                  if(g_result == RESULT_UI_STOP) return g_result;
   \   010F  2A0000            LD      HL,(g_result)
   \   0112  3E66              LD      A,102
   \   0114  AD                XOR     L
   \   0115  B4                OR      H
   \   0116  2803              JR      Z,?0028
   \   0118            ?0026:
     99              }
   \   0118            ?0027:
   \   0118            ?0023:
   \   0118            ?0013:
    100              return NULL;
   \   0118  210000            LD      HL,0
    101          }
   \   011B            ?0028:
   \   011B  F1                POP     AF
   \   011C  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   011F            ?0171:
   \   011F  1E01              LD      E,1
   \   0121  3E00              LD      A,BYTE3 ToNextMusic
   \   0123  210000            LD      HL,LWRD ToNextMusic
   \   0126  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0129  220000            LD      (g_result),HL
   \   012C  210000            LD      HL,0
   \   012F  C9                RET
   \   0130            ChangeMusic:
    102          //================================================
    103          
    104          
    105          /*
    106          *******************************************************************************
    107          * Description : 换曲时要做的选曲,初始化动作
    108          * Arguments  :
    109          * Returns     :真时表示可继续放,假时表示要停止放(播放状态)
    110          * Notes       :
    111          *******************************************************************************
    112          */
    113          bool ChangeMusic( BYTE Direct, Music_sel_mod_t mod )
    114          {
   \   0130  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0133  FEFF              DEFW    65534
    115              bool result;
    116          
    117              //清 WATCH_DOG
    118              output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
   \   0135  DB4E              IN      A,(78)
   \   0137  CBDF              SET     3,A
   \   0139  D34E              OUT     (78),A
    119          
    120              //选文件
    121              RePlayStatus = NormalPlay;
   \   013B  AF                XOR     A
   \   013C  320000            LD      (RePlayStatus),A
    122              ClearTimePara();
   \   013F  3E00              LD      A,BYTE3 ClearTimePara
   \   0141  210000            LD      HL,LWRD ClearTimePara
   \   0144  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    123              g_TagInfoBuf[0] = 0x0;
   \   0147  AF                XOR     A
   \   0148  320000            LD      (g_TagInfoBuf),A
    124              BankSwitch((unsigned long)FSELInit >> 16);
   \   014B  1E00              LD      E,BYTE3 fselInit
   \   014D  EB                EX      DE,HL
   \   014E  5D                LD      E,L
   \   014F  CD0000            CALL    LWRD BankSwitch
    125          
    126              if (mod == Play_key)
   \   0152  0D                DEC     C
   \   0153  0D                DEC     C
   \   0154  2009              JR      NZ,?0030
   \   0156            ?0029:
    127              {//play 按键的情况
    128                  switch (g_music_vars.repeat_mode)
   \   0156  3A0100            LD      A,(g_music_vars+1)
   \   0159  FE01              CP      1
   \   015B  200C              JR      NZ,?0036
   \   015D            ?0032:
    129                  {
    130                  case FSEL_ALL_REPEATONE:
    131                      FSELSetMode( FSEL_ALL_REPEATALL );//PLAY 时按键
   \   015D  1806              JR      ?0146
    132                      break;
   \   015F            ?0033:
    133          
    134          
    135                  default:
    136                      FSELSetMode(g_music_vars.repeat_mode);//
    137                      break;
   \   015F            ?0031:
   \   015F            ?0030:
    138                  }
    139              }
    140              else if (mod == Stop_key)
   \   015F  AF                XOR     A
   \   0160  DDB604            OR      (IX+4)
   \   0163  2004              JR      NZ,?0036
   \   0165            ?0035:
    141              {//
    142                  FSELSetMode(FSEL_ALL_REPEATALL);//STOP时按键
   \   0165            ?0146:
   \   0165  1E04              LD      E,4
   \   0167  1804              JR      ?0142
    143              }
    144              else
   \   0169            ?0036:
    145              {//正常播放的情况
    146                  FSELSetMode(g_music_vars.repeat_mode);
   \   0169  ED5B0100          LD      DE,(g_music_vars+1)
   \   016D            ?0142:
   \   016D  CD0902            CALL    LWRD ?0173
   \   0170            ?0037:
   \   0170            ?0034:
    147              }
    148          
    149              switch (Direct)
   \   0170  DD5E02            LD      E,(IX+2)
   \   0173  CD0000            CALL    LWRD ?C_S_SWITCH_L06
   \   0176  00                DEFB    0
   \   0177  0500              DEFW    5
   \   0179  AD01              DEFW    ?0044
   \   017B  B101              DEFW    ?0038
   \   017D  B101              DEFW    ?0038
   \   017F  8501              DEFW    ?0041
   \   0181  8B01              DEFW    ?0042
   \   0183  9901              DEFW    ?0043
   \   0185            ?0039:
    150              {
    151                  case Music_Reset_Head:
    152                      break;
   \   0185            ?0040:
    153          
    154                  case Music_Reset_End:
    155                      break;
   \   0185            ?0041:
    156          
    157                  case Music_Cur:
    158                      result = TRUE;
   \   0185  DD36FE01          LD      (IX-2),1
    159                      break;
   \   0189  1826              JR      ?0038
   \   018B            ?0042:
    160          
    161                  case Music_Next:
    162                      ifSelBuffToltalTimeFlag = FALSE;
   \   018B  AF                XOR     A
   \   018C  320000            LD      (ifSelBuffToltalTimeFlag),A
    163                      result = FSELGetNext(g_music_vars.location.filename);
   \   018F  112100            LD      DE,g_music_vars+33
   \   0192  3E00              LD      A,BYTE3 fselGetNextFile
   \   0194  210000            LD      HL,LWRD fselGetNextFile
   \   0197  180C              JR      ?0143
    164                      break;
   \   0199            ?0043:
    165          
    166                  case Music_Prev:
    167                      ifSelBuffToltalTimeFlag = FALSE;
   \   0199  AF                XOR     A
   \   019A  320000            LD      (ifSelBuffToltalTimeFlag),A
    168                      result = FSELGetPrev(g_music_vars.location.filename);
   \   019D  112100            LD      DE,g_music_vars+33
   \   01A0  3E00              LD      A,BYTE3 fselGetPrevFile
   \   01A2  210000            LD      HL,LWRD fselGetPrevFile
   \   01A5            ?0143:
   \   01A5  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01A8  DD75FE            LD      (IX-2),L
    169                      break;
   \   01AB  1804              JR      ?0038
   \   01AD            ?0044:
    170          
    171                  default:
    172                      return FALSE;
   \   01AD  2E00              LD      L,0
    173              }
   \   01AF  1851              JR      ?0047
   \   01B1            ?0038:
    174          
    175              if (!result)
   \   01B1  AF                XOR     A
   \   01B2  DDB6FE            OR      (IX-2)
   \   01B5  2010              JR      NZ,?0046
   \   01B7            ?0045:
    176              {
    177                  fselSetLocation(& g_music_vars.location);
   \   01B7  110700            LD      DE,g_music_vars+7
   \   01BA  3E00              LD      A,BYTE3 fselSetLocation
   \   01BC  210000            LD      HL,LWRD fselSetLocation
   \   01BF  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    178                  return result;
   \   01C2  DD6EFE            LD      L,(IX-2)
    179              }
   \   01C5  183B              JR      ?0047
   \   01C7            ?0046:
    180              //取当前歌曲数状态
    181              g_musicamount = FSELGetTotal();
   \   01C7  3E00              LD      A,BYTE3 fselGetTotal
   \   01C9  210000            LD      HL,LWRD fselGetTotal
   \   01CC  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01CF  220000            LD      (g_musicamount),HL
    182              g_musicsequence = FSELGetNo();
   \   01D2  3E00              LD      A,BYTE3 fselGetNo
   \   01D4  210000            LD      HL,LWRD fselGetNo
   \   01D7  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01DA  220000            LD      (g_musicsequence),HL
    183              FSELSetMode(g_music_vars.repeat_mode);
   \   01DD  CD0502            CALL    LWRD ?0174
    184          

⌨️ 快捷键说明

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