ui_stop.lst

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

LST
1,055
字号
   \   0213  212000            LD      HL,32
   \   0216  E5                PUSH    HL
   \   0217  010002            LD      BC,512
   \   021A  110000            LD      DE,g_comval
   \   021D  CD0000            CALL    LWRD VMRead
   \   0220  E1                POP     HL
    154                         g_comval.LightTime = 0;
   \   0221  AF                XOR     A
   \   0222  320900            LD      (g_comval+9),A
    155                         SetContrast(g_comval.DisplayContrast);
   \   0225  ED5B0800          LD      DE,(g_comval+8)
   \   0229  CD0000            CALL    LWRD SetContrast
    156                         ap_message_init(&g_comval);
   \   022C  110000            LD      DE,g_comval
   \   022F  CD2C01            CALL    LWRD ?0123
    157                         SetBackgdColor(Color_BLACK_def);
   \   0232  010000            LD      BC,0
   \   0235  59                LD      E,C
   \   0236  50                LD      D,B
   \   0237  CD0000            CALL    LWRD SetBackgdColor
    158                         /*
    159                        // tempReg4f = input8(0x4f);
    160                         output8(0x4f,0x47);  //VDD 1.8V 
    161                         ap_sleep(1);   */
    162                         g_result = ui_play();
   \   023A  3E00              LD      A,BYTE3 ui_play
   \   023C  210000            LD      HL,LWRD ui_play
   \   023F  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0242  220000            LD      (g_result),HL
    163                         /*
    164                         output8(0xf4, input8(0xf4) & 0xf7);   //SRAM CE2 Disable    
    165                         output8(0x4f, 0x43); 
    166                         ap_sleep(1);*/
    167          ///-               SetBackgdColor(Color_MENU_def);
    168                         VMRead(& g_comval, VM_SYSTEM, sizeof(g_comval));
   \   0245  012000            LD      BC,32
   \   0248  C5                PUSH    BC
   \   0249  010002            LD      BC,512
   \   024C  110000            LD      DE,g_comval
   \   024F  CD0000            CALL    LWRD VMRead
   \   0252  E1                POP     HL
    169                         ap_message_init(&g_comval);
   \   0253  110000            LD      DE,g_comval
   \   0256  CD2C01            CALL    LWRD ?0123
    170          /////////////////////////////////////////////               
    171          
    172                          ap_message_init(NULL);//开始算STANDBY 时间
   \   0259  CD2901            CALL    LWRD ?0122
    173                          ui_run_realtime = FALSE;
   \   025C  AF                XOR     A
   \   025D  320000            LD      (ui_run_realtime),A
    174                          if(g_result==0)  
   \   0260  2A0000            LD      HL,(g_result)
   \   0263  7D                LD      A,L
   \   0264  B4                OR      H
   \   0265  2832              JR      Z,?0114
   \   0267            ?0038:
    175                          { 
    176                             need_draw=TRUE;                   
    177                             return g_result;
    178                          }
   \   0267            ?0039:
    179                          else if(g_result==RESULT_UI_STOP2)   
   \   0267  3E67              LD      A,103
   \   0269  AD                XOR     L
   \   026A  B4                OR      H
   \   026B  2056              JR      NZ,?0052
   \   026D            ?0040:
    180                          {
    181                             //byte Reg_27h=input8(0x27);
    182                             output8(0x27,input8(0x27)&0xfe);            //关Dsp中断 防止花屏  zxs add
   \   026D  DB27              IN      A,(39)
   \   026F  CB87              RES     0,A
   \   0271  D327              OUT     (39),A
    183                             ui_show_msg (CARDPULL, CARDPULL, g_langid);                            
   \   0273  ED4B0000          LD      BC,(g_langid)
   \   0277  0600              LD      B,0
   \   0279  C5                PUSH    BC
   \   027A  018A01            LD      BC,394
   \   027D  59                LD      E,C
   \   027E  50                LD      D,B
   \   027F  3E00              LD      A,BYTE3 ui_show_msg
   \   0281  210000            LD      HL,LWRD ui_show_msg
   \   0284  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0287  F1                POP     AF
   \   0288            ?0043:
    184                             while( ap_get_message() != NULL ); //清空消息池
   \   0288  CD0000            CALL    LWRD ap_get_message
   \   028B  B7                OR      A
   \   028C  20FA              JR      NZ,?0043
   \   028E            ?0044:
   \   028E            ?0042:
    185                             ap_sleep(4);
   \   028E  110400            LD      DE,4
   \   0291  3E00              LD      A,BYTE3 ap_sleep
   \   0293  210000            LD      HL,LWRD ap_sleep
   \   0296  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    186                             need_draw = TRUE;  
   \   0299            ?0114:
   \   0299  3E01              LD      A,1
   \   029B  320000            LD      (need_draw),A
    187                             return g_result; 
   \   029E  1823              JR      ?0052
    188                          
    189                          }
   \   02A0            ?0041:
    190                          else return g_result;
    191                   
    192                   case  AP_KEY_MODE: 
   \   02A0            ?0045:
    193                         g_menu_active=TRUE;   
    194                         break;     
   \   02A0            ?0046:
    195                   case AP_KEY_MODE | AP_KEY_UP: //短按MODE
    196                        if(g_menu_active)
   \   02A0  3A0000            LD      A,(g_menu_active)
   \   02A3  B7                OR      A
   \   02A4  2823              JR      Z,?0048
   \   02A6            ?0047:
    197                         {
    198                           g_result = ui_stop_menu();
   \   02A6  3E00              LD      A,BYTE3 ui_stop_menu
   \   02A8  210000            LD      HL,LWRD ui_stop_menu
   \   02AB  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02AE  220000            LD      (g_result),HL
    199          
    200                           if (g_result == RESULT_SD_OUT)
   \   02B1  3E36              LD      A,54
   \   02B3  AD                XOR     L
   \   02B4  B4                OR      H
   \   02B5  2005              JR      NZ,?0050
   \   02B7            ?0049:
    201                           {
    202                               return RESULT_CURR_UI;
   \   02B7  6F                LD      L,A
   \   02B8  67                LD      H,A
    203                           }
   \   02B9  C3F203            JP      LWRD ?0094
   \   02BC            ?0050:
    204                           if (g_result == RESULT_IGNORE)
   \   02BC  3E34              LD      A,52
   \   02BE  AD                XOR     L
   \   02BF  B4                OR      H
   \   02C0  CAE203            JP      Z,?0120
   \   02C3            ?0051:
    205                           {
    206                              need_draw = TRUE;
    207                              break;
   \   02C3            ?0052:
    208                           }
    209                          return g_result;//热键或等于0时返回
   \   02C3  2A0000            LD      HL,(g_result)
    210                        }
   \   02C6  C3F203            JP      LWRD ?0094
   \   02C9            ?0048:
    211                     else
    212                         g_menu_active=TRUE;
   \   02C9  3E01              LD      A,1
   \   02CB  320000            LD      (g_menu_active),A
    213                         break;
   \   02CE  C39A01            JP      LWRD ?0025
   \   02D1            ?0053:
   \   02D1            ?0055:
    214          
    215                  //break;
    216                 //     case AP_KEY_MODE | AP_KEY_HOLD: //长按MODE
    217                 //         return RESULT_MAIN;         //返回main ap
    218          
    219                      case AP_KEY_PREV | AP_KEY_UP:
    220                          while(ap_get_message() != 0);
   \   02D1  CD0000            CALL    LWRD ap_get_message
   \   02D4  B7                OR      A
   \   02D5  CA9A01            JP      Z,?0025
   \   02D8            ?0056:
    221                          break;
   \   02D8  18F7              JR      ?0053
   \   02DA            ?0054:
   \   02DA            ?0057:
    222          
    223                      case AP_KEY_PREV:
    224                      case AP_KEY_PREV | AP_KEY_HOLD:
    225          #ifndef __6KEYMODE__
    226                          if(g_volcounter>0)
    227                          {
    228                                  g_volcounter = 6;
    229                                                  
    230                                                  if(g_amv_vars.volume>0)
    231                                                  {
    232                                                          vol_callback(--g_amv_vars.volume);
    233                                                          ui_show_vol(g_amv_vars.volume);
    234                                                  }
    235                          }
    236                          else
    237          #endif
    238                          {
    239                                  if (g_changevolume&0x01)
   \   02DA  3A0000            LD      A,(g_changevolume)
   \   02DD  CB47              BIT     0,A
   \   02DF  2805              JR      Z,?0059
   \   02E1            ?0058:
    240                                  {
    241                                          g_changevolume|=0x3f;
   \   02E1  F63F              OR      63
   \   02E3  320000            LD      (g_changevolume),A
   \   02E6            ?0059:
    242                                          // goto vol_sub_lzd;
    243                                                  }
    244                          memcpy(g_TagInfoBuf1, g_TagInfoBuf, 20);
   \   02E6  011400            LD      BC,20
   \   02E9  110000            LD      DE,g_TagInfoBuf1
   \   02EC  210000            LD      HL,g_TagInfoBuf
   \   02EF  EDB0              LDIR
    245                          //g_TagInfoBuf1[18]=0;
    246                          g_TagInfoBuf1[20]=0;
   \   02F1  AF                XOR     A
   \   02F2  321400            LD      (g_TagInfoBuf1+20),A
    247                          g_result = ChangeMusic(Music_Prev, Stop_key);
    248                          GetInformation(); //取文件信息
   \   02F5  CD4C01            CALL    LWRD ?0126
    249                          need_draw = TRUE;
   \   02F8  3E01              LD      A,1
   \   02FA  320000            LD      (need_draw),A
   \   02FD            ?0061:
    250                       }
    251                       //清除多出的HOLD消息,防止按键停了还跳几曲
    252                       while(ap_get_message() != 0);
   \   02FD  CD0000            CALL    LWRD ap_get_message
   \   0300  B7                OR      A
   \   0301  CA9A01            JP      Z,?0025
   \   0304            ?0062:
    253                       break;
   \   0304  18F7              JR      ?0061
   \   0306            ?0060:
   \   0306            ?0063:
   \   0306            ?0065:
    254          
    255                      case AP_KEY_NEXT | AP_KEY_UP:
    256                          while(ap_get_message() != 0);
   \   0306  CD0000            CALL    LWRD ap_get_message
   \   0309  B7                OR      A
   \   030A  CA9A01            JP      Z,?0025
   \   030D            ?0066:
    257                          break;
   \   030D  18F7              JR      ?0063
   \   030F            ?0064:
   \   030F            ?0067:
    258          
    259                      case AP_KEY_NEXT:
    260                      case AP_KEY_NEXT | AP_KEY_HOLD:
    261          #ifndef __6KEYMODE__
    262                                                                  if(g_volcounter>0)
    263                          {
    264                                  g_volcounter = 6;
    265                                                  
    266                                                  if(g_amv_vars.volume<31)
    267                                                  {
    268                                                          vol_callback(++g_amv_vars.volume);
    269                                                          ui_show_vol(g_amv_vars.volume);
    270                                                  }
    271                          }
    272                          else
    273          #endif
    274                        {
    275                          g_result = ChangeMusic(Music_Next, Stop_key);

⌨️ 快捷键说明

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