ui_stop.lst

来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,317 行 · 第 1/5 页

LST
1,317
字号
   \   0322  AD                XOR     L
   \   0323  B4                OR      H
   \   0324  2007              JR      NZ,?0081
   \   0326            ?0080:
    252                                   g_music_vars.fselmod = FSEL_TYPE_USERPL;
   \   0326  3E02              LD      A,2
   \   0328  325100            LD      (g_music_vars+81),A
    253                                  else 
   \   032B  1807              JR      ?0082
   \   032D            ?0081:
    254                                  {
    255                                   g_music_vars.fselmod = FSEL_TYPE_COMMONDIR;                        
   \   032D  AF                XOR     A
   \   032E  325100            LD      (g_music_vars+81),A
    256                                   bList_Flag = 0;   
   \   0331  320000            LD      (bList_Flag),A
   \   0334            ?0082:
    257                                  }
    258                                  g_music_vars.file_list_type==0xff;  
    259                                  fsel_mode_change_flag = FALSE;                        //
   \   0334  AF                XOR     A
   \   0335  320000            LD      (fsel_mode_change_flag),A
    260                                  FSELInit(FSEL_TYPE_MUSIC, FSEL_ALL_REPEATALL, g_music_vars.fselmod ,g_music_vars.location.disk);//初始化文件选择器
   \   0338  210700            LD      HL,g_music_vars+7
   \   033B  4E                LD      C,(HL)
   \   033C  C5                PUSH    BC
   \   033D  215100            LD      HL,g_music_vars+81
   \   0340  4E                LD      C,(HL)
   \   0341  C5                PUSH    BC
   \   0342  0E04              LD      C,4
   \   0344  5F                LD      E,A
   \   0345  3E00              LD      A,BYTE3 fselInit
   \   0347  210000            LD      HL,LWRD fselInit
   \   034A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   034D  F1                POP     AF
   \   034E  F1                POP     AF
    261                                  if(!fselSetLocation(&g_music_vars.location))
   \   034F  110700            LD      DE,g_music_vars+7
   \   0352  3E00              LD      A,BYTE3 fselSetLocation
   \   0354  210000            LD      HL,LWRD fselSetLocation
   \   0357  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   035A  2C                INC     L
   \   035B  2D                DEC     L
   \   035C  2012              JR      NZ,?0084
   \   035E            ?0083:
    262                                  {
    263                                   DisplayErrMsg(MFILEOUT);   
   \   035E  111702            LD      DE,535
   \   0361  3E00              LD      A,BYTE3 DisplayErrMsg
   \   0363  210000            LD      HL,LWRD DisplayErrMsg
   \   0366  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    264                                   bList_Flag = 0;      
   \   0369  AF                XOR     A
   \   036A  320000            LD      (bList_Flag),A
    265                                   g_music_vars.fselmod = FSEL_TYPE_COMMONDIR;  
   \   036D  325100            LD      (g_music_vars+81),A
   \   0370            ?0084:
    266                                  }
    267                                  g_FCexitflag = FALSE;
   \   0370  AF                XOR     A
   \   0371  320000            LD      (g_FCexitflag),A
    268                                  ClearTimePara();
   \   0374  3E00              LD      A,BYTE3 ClearTimePara
   \   0376  210000            LD      HL,LWRD ClearTimePara
   \   0379  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    269                                  g_from_browser = TRUE;
   \   037C  3E01              LD      A,1
   \   037E  320000            LD      (g_from_browser),A
    270                                  return 0;      
   \   0381  C37404            JP      LWRD ?0170
    271                              }
   \   0384            ?0077:
    272                              if(PlayStatus != StopSta)
   \   0384  3A0000            LD      A,(PlayStatus)
   \   0387  B7                OR      A
   \   0388  2834              JR      Z,?0086
   \   038A            ?0085:
    273                              {
    274                                #ifdef OPT_Sup_FadeOut_fun
    275                                    if (!g_FCexitflag||g_currentMusicType==Music_WMA)
   \   038A  3A0000            LD      A,(g_FCexitflag)
   \   038D  B7                OR      A
   \   038E  2807              JR      Z,?0089
   \   0390  3A0000            LD      A,(g_currentMusicType)
   \   0393  3D                DEC     A
   \   0394  3D                DEC     A
   \   0395  200A              JR      NZ,?0088
   \   0397            ?0089:
   \   0397            ?0090:
   \   0397            ?0087:
    276                                    {    //如从跟读对录音或对比放音出,不淡出
    277                                      FadeOut(FALSE);
   \   0397  1E00              LD      E,0
   \   0399  3E00              LD      A,BYTE3 FadeOut
   \   039B  21E904            LD      HL,LWRD FadeOut
   \   039E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   03A1            ?0088:
    278                                  }
    279                                #endif
    280                                  BackupCurrentTime();
   \   03A1  3E00              LD      A,BYTE3 BackupCurrentTime
   \   03A3  210000            LD      HL,LWRD BackupCurrentTime
   \   03A6  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    281                                  musicpSendCommand(MC_STOP, NULL);
   \   03A9  010000            LD      BC,0
   \   03AC  1E06              LD      E,6
   \   03AE  CD5201            CALL    LWRD ?0177
    282                                  musicpSendCommand(MC_BACKUP, NULL);
   \   03B1  010000            LD      BC,0
   \   03B4  1E44              LD      E,68
   \   03B6  CD5201            CALL    LWRD ?0177
    283                                  g_music_vars.MusicOpenMod = Nor_Break_open;//保证退出后从断点进来
   \   03B9  3E01              LD      A,1
   \   03BB  320600            LD      (g_music_vars+6),A
   \   03BE            ?0086:
    284                              }
    285                              g_result = i;
   \   03BE  DD6EFE            LD      L,(IX-2)
   \   03C1  DD66FF            LD      H,(IX-1)
   \   03C4  220000            LD      (g_result),HL
    286                          }
    287                         else
   \   03C7  1806              JR      ?0092
   \   03C9            ?0075:
   \   03C9            ?0093:
    288                           while(ap_get_message() != 0);                   //清空消息池
   \   03C9  CD0000            CALL    LWRD ap_get_message
   \   03CC  B7                OR      A
   \   03CD  20FA              JR      NZ,?0075
   \   03CF            ?0094:
   \   03CF            ?0092:
   \   03CF            ?0091:
    289                          g_FCexitflag = FALSE;
   \   03CF  AF                XOR     A
   \   03D0  320000            LD      (g_FCexitflag),A
    290          
    291                          return g_result;
   \   03D3  184F              JR      ?0171
    292          
    293                      case AP_KEY_EQ | AP_KEY_UP:
   \   03D5            ?0095:
    294                          break;
   \   03D5            ?0096:
    295          
    296                      case AP_KEY_MODE:
    297                          modekeystore = key;
   \   03D5  DD73FA            LD      (IX-6),E
    298                          break;
   \   03D8  C3A604            JP      LWRD ?0042
   \   03DB            ?0097:
    299          
    300                      case AP_KEY_MODE | AP_KEY_UP: //短按MODE
    301                          if (modekeystore != AP_KEY_MODE)
   \   03DB  DD7EFA            LD      A,(IX-6)
   \   03DE  FE10              CP      16
   \   03E0  2807              JR      Z,?0099
   \   03E2            ?0098:
    302                          {    //要先按了AP_KEY_MODE 键后up才算有效
    303                              modekeystore = NULL;
   \   03E2  DD36FA00          LD      (IX-6),0
    304                              break;
   \   03E6  C3A604            JP      LWRD ?0042
   \   03E9            ?0099:
    305                          }
    306                          g_result = ui_stop_menu();
   \   03E9  3E00              LD      A,BYTE3 ui_stop_menu
   \   03EB  210000            LD      HL,LWRD ui_stop_menu
   \   03EE  CD4701            CALL    LWRD ?0176
    307          
    308          
    309                          if (g_result == RESULT_IGNORE)
   \   03F1  3E34              LD      A,52
   \   03F3  AD                XOR     L
   \   03F4  B4                OR      H
   \   03F5  CA8304            JP      Z,?0174
   \   03F8            ?0100:
    310                          {
    311                              SetFullInterface();
    312                              need_draw = TRUE;
    313                              break;
   \   03F8            ?0101:
    314                          }
    315                          CaltimeFlag = FALSE;
   \   03F8  AF                XOR     A
   \   03F9  320100            LD      (CaltimeFlag),A
    316                          ifSelBuffToltalTimeFlag = FALSE;
   \   03FC  320000            LD      (ifSelBuffToltalTimeFlag),A
    317          
    318                          if (g_result == RESULT_SD_OUT)
   \   03FF  3E36              LD      A,54
   \   0401  AD                XOR     L
   \   0402  B4                OR      H
   \   0403  286F              JR      Z,?0170
   \   0405            ?0102:
    319                          {
    320                              return RESULT_CURR_UI;
    321                          }
   \   0405            ?0103:
    322                          PlayStatus=StopSta;
   \   0405  AF                XOR     A
   \   0406  320000            LD      (PlayStatus),A
    323                          return g_result;//热键或等于0时返回
   \   0409  1819              JR      ?0171
    324          
    325          
    326          
    327                      case AP_KEY_PREV | AP_KEY_UP:
   \   040B            ?0104:
   \   040B            ?0106:
    328                          while(ap_get_message() != 0);
   \   040B  CD0000            CALL    LWRD ap_get_message
   \   040E  B7                OR      A
   \   040F  20FA              JR      NZ,?0104
   \   0411            ?0107:
    329                          break;
   \   0411            ?0105:
   \   0411  C3A604            JP      LWRD ?0042
   \   0414            ?0108:
    330          
    331                      case AP_KEY_PREV:
    332                      case AP_KEY_PREV | AP_KEY_HOLD:
    333                          musicpSendCommand(MC_CLOSE, NULL);
   \   0414  4F                LD      C,A
   \   0415  47                LD      B,A
   \   0416  1E02              LD      E,2
   \   0418  CD5201            CALL    LWRD ?0177
    334                          g_result = ChangeMusic(Music_Prev, Stop_key);
   \   041B  0E00              LD      C,0
   \   041D  1E04              LD      E,4
   \   041F  CDD904            CALL    LWRD ?0180
    335                          if(g_result==FALSE)             //选择文件错误   
   \   0422  2002              JR      NZ,?0110
   \   0424            ?0109:
    336                            return g_result; 
   \   0424            ?0171:
   \   0424  1823              JR      ?0172
   \   0426            ?0110:
    337                         GetInformation(); //取文件信息
   \   0426  CD0101            CALL    LWRD ?0175
    338                          musicpSendCommand( MC_OPEN, (int)& g_Openparam );//这个可不用
    339                          g_result = musicpSendCommand(MC_LOAD, NULL);
    340                          CaltimeFlag = FALSE;//等待计时间
    341                          WaitForCaltimeCNT = 0;
    342                          SetFullInterface();
    343                          UpDisplayFlag=UpDisplayFlag & clr_musicBackGDPic ;
    344                          need_draw = TRUE;
   \   0429            ?0112:
    345          
    346                          //清除多出的HOLD消息,防止按键停了还跳几曲
    347                          while(ap_get_message() != 0);
   \   0429  CD0000            CALL    LWRD ap_get_message
   \   042C  B7                OR      A
   \   042D  20FA              JR      NZ,?0112
   \   042F            ?0113:
    348                          break;
   \   042F            ?0111:
   \   042F  1875              JR      ?0042
   \   0431            ?0114:
   \   0431            ?0116:
    349          
    350                      case AP_KEY_NEXT | AP_KEY_UP:
    351                          while(ap_get_message() != 0);
   \   0431  CD0000            CALL    LWRD ap_get_message
   \   0434  B7                OR      A

⌨️ 快捷键说明

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