ui_follow.lst
来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,135 行 · 第 1/4 页
LST
1,135 行
\ 01E9 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
246 RePlayStatus = ABLoopPlay;
\ 01EC 3E03 LD A,3
\ 01EE 320000 LD (RePlayStatus),A
247 //UpDisplayFlag=UpDisplayFlag | up_MPRLmode |;
248 SetFullInterface();
\ 01F1 AF XOR A
\ 01F2 ?0101:
\ 01F2 320000 LD (ui_auto_update),A
\ 01F5 210000 LD HL,UpDisplayFlag
\ 01F8 7E LD A,(HL)
\ 01F9 F6C1 OR 193
\ 01FB 77 LD (HL),A
\ 01FC 23 INC HL
\ 01FD 36FF LD (HL),255
249 need_draw = TRUE;
\ 01FF 1828 JR ?0099
250 return NULL;
251
252 case AP_MSG_RTC:
\ 0201 ?0038:
253 g_result = GetBattery();
\ 0201 CD0000 CALL LWRD GetBattery
\ 0204 4F LD C,A
\ 0205 ED430000 LD (g_result),BC
254 if ( g_result <= DEF_RecLowBatt )
\ 0209 210500 LD HL,5
\ 020C CD0000 CALL LWRD ?SS_CMP_L02
\ 020F 381F JR C,?0040
\ 0211 ?0039:
255 {
256 if ( ++LowBatt_CNT > DEF_RecLowBatTime )
\ 0211 DD34FA INC (IX-6)
\ 0214 DD46FA LD B,(IX-6)
\ 0217 7D LD A,L
\ 0218 B8 CP B
\ 0219 3018 JR NC,?0043
\ 021B ?0041:
257 {
258 DealForExitRec();
\ 021B 3E00 LD A,BYTE3 DealForExitRec
\ 021D 210000 LD HL,LWRD DealForExitRec
\ 0220 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
259 DisplayErrMsg(MPWROUT);
\ 0223 111802 LD DE,536
\ 0226 ?0100:
\ 0226 CDE602 CALL LWRD ?0135
260 OpenMusic();
261 //RePlayStatus = ABLoopPlay;
262 RePlayStatus = NormalPlay;
263 UpDisplayFlag = UpDisplayFlag | up_MPRLmode;
264 need_draw = TRUE;
\ 0229 ?0099:
\ 0229 3E01 LD A,1
\ 022B 320000 LD (need_draw),A
265 return NULL;
\ 022E 1872 JR ?0080
266 }
\ 0230 ?0042:
267 }
268 else
\ 0230 ?0040:
269 {
270 LowBatt_CNT = 0;
\ 0230 DD70FA LD (IX-6),B
\ 0233 ?0043:
271 }
272
273 UpDisplayFlag = UpDisplayFlag | up_musiccurrenttime;
\ 0233 210000 LD HL,UpDisplayFlag
\ 0236 23 INC HL
\ 0237 CBCE SET 1,(HL)
274 Show_time_FC();
\ 0239 3E00 LD A,BYTE3 Show_time_FC
\ 023B 210000 LD HL,LWRD Show_time_FC
\ 023E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
275 //ShowNowTime(TRUE);
276 ui_show_batt( GetBattery(), g_comval.BatteryType,0);
\ 0241 4A LD C,D
\ 0242 C5 PUSH BC
\ 0243 ED4B0F00 LD BC,(g_comval+15)
\ 0247 CD0000 CALL LWRD GetBattery
\ 024A 5F LD E,A
\ 024B 3E00 LD A,BYTE3 ui_show_batt
\ 024D 210000 LD HL,LWRD ui_show_batt
\ 0250 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0253 E1 POP HL
277 break;
\ 0254 1833 JR ?0032
\ 0256 ?0044:
278
279 default:
280 key = ap_handle_hotkey(key);
\ 0256 CD2003 CALL LWRD ?0140
281 if (key == RESULT_REDRAW)
\ 0259 2017 JR NZ,?0046
\ 025B ?0045:
282 {
283 SetFullInterface();
\ 025B 320000 LD (ui_auto_update),A
\ 025E 210000 LD HL,UpDisplayFlag
\ 0261 7E LD A,(HL)
\ 0262 F6C1 OR 193
\ 0264 77 LD (HL),A
\ 0265 23 INC HL
\ 0266 36FF LD (HL),255
284 return_to_play=1;
\ 0268 3E01 LD A,1
\ 026A 320000 LD (return_to_play),A
285 need_draw = TRUE;
\ 026D 320000 LD (need_draw),A
\ 0270 1817 JR ?0032
\ 0272 ?0046:
286 }
287 else if (key != 0)
\ 0272 FDE5 PUSH IY
\ 0274 E1 POP HL
\ 0275 7D LD A,L
\ 0276 B4 OR H
\ 0277 2810 JR Z,?0032
\ 0279 ?0048:
288 {
289 DealForExitRec();
\ 0279 3E00 LD A,BYTE3 DealForExitRec
\ 027B 210000 LD HL,LWRD DealForExitRec
\ 027E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
290 RePlayStatus = NormalPlay;
291 /*
292 //************
293 //注:因为这里退出时外面要淡出,所以会发出声音,
294 //这里把音量设为0就相当于不淡出,这只是权余之计
295 //以后希望能改掉
296 SetPAVolume(0);
297 g_FadeInStatusFlag = 2;
298 OpenMusic();
299 g_FadeInStatusFlag = 0;
300 ClosePA();
301 //!!!!!!!!!!!!!!!
302 */
303 g_FCexitflag = TRUE;
304 OpenMusic();
\ 0281 CDAD02 CALL LWRD ?0133
305 //musicpSendCommand(MC_SETVOLUME, 0); //让音量为0,这可在淡出时没声
306
307 SetFullInterface();
308 need_draw = TRUE;
309 return key;
\ 0284 FDE5 PUSH IY
\ 0286 E1 POP HL
310 }
\ 0287 181C JR ?0052
\ 0289 ?0049:
\ 0289 ?0047:
311 break;
\ 0289 ?0032:
312 } //key
313 if (g_2HZ_CNT > ABPointTimeSize) //check if time out
\ 0289 ED4B0000 LD BC,(g_2HZ_CNT)
\ 028D 2A0000 LD HL,(ABPointTimeSize)
\ 0290 A7 AND A
\ 0291 ED42 SBC HL,BC
\ 0293 3015 JR NC,?0051
\ 0295 ?0050:
314 {
315 DealForExitRec();
\ 0295 3E00 LD A,BYTE3 DealForExitRec
\ 0297 210000 LD HL,LWRD DealForExitRec
\ 029A CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
316 RePlayStatus = FollowAB;
\ 029D 3E05 LD A,5
\ 029F ?0091:
\ 029F 320000 LD (RePlayStatus),A
317 //need_draw = TRUE;
318 return NULL;
\ 02A2 ?0080:
\ 02A2 210000 LD HL,0
319 }
\ 02A5 ?0052:
\ 02A5 FDE1 POP IY
\ 02A7 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 02AA ?0051:
320 } //while(1)
321 } //ui_followRec
\ 02AA C30801 JP LWRD ?0021
\ 02AD ?0133:
\ 02AD AF XOR A
\ 02AE 320000 LD (RePlayStatus),A
\ 02B1 3E01 LD A,1
\ 02B3 320000 LD (g_FCexitflag),A
\ 02B6 3E00 LD A,BYTE3 OpenMusic
\ 02B8 210000 LD HL,LWRD OpenMusic
\ 02BB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02BE AF XOR A
\ 02BF 320000 LD (ui_auto_update),A
\ 02C2 210000 LD HL,UpDisplayFlag
\ 02C5 7E LD A,(HL)
\ 02C6 F6C1 OR 193
\ 02C8 77 LD (HL),A
\ 02C9 23 INC HL
\ 02CA 36FF LD (HL),255
\ 02CC 3E01 LD A,1
\ 02CE 320000 LD (need_draw),A
\ 02D1 C9 RET
\ 02D2 ?0134:
\ 02D2 3E00 LD A,BYTE3 OpenMusic
\ 02D4 210000 LD HL,LWRD OpenMusic
\ 02D7 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02DA 3E03 LD A,3
\ 02DC 320000 LD (RePlayStatus),A
\ 02DF 210000 LD HL,UpDisplayFlag
\ 02E2 23 INC HL
\ 02E3 CBDE SET 3,(HL)
\ 02E5 C9 RET
\ 02E6 ?0135:
\ 02E6 3E00 LD A,BYTE3 DisplayErrMsg
\ 02E8 210000 LD HL,LWRD DisplayErrMsg
\ 02EB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02EE 3E00 LD A,BYTE3 OpenMusic
\ 02F0 210000 LD HL,LWRD OpenMusic
\ 02F3 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02F6 AF XOR A
\ 02F7 320000 LD (RePlayStatus),A
\ 02FA 210000 LD HL,UpDisplayFlag
\ 02FD 23 INC HL
\ 02FE CBDE SET 3,(HL)
\ 0300 C9 RET
\ 0301 ?0136:
\ 0301 11FF01 LD DE,511
\ 0304 ?0137:
\ 0304 3E00 LD A,BYTE3 DisplayErrMsg
\ 0306 210000 LD HL,LWRD DisplayErrMsg
\ 0309 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 030C ?0138:
\ 030C 3E00 LD A,BYTE3 wavrSendCommand
\ 030E 210000 LD HL,LWRD wavrSendCommand
\ 0311 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 0314 ?0139:
\ 0314 CD0000 CALL LWRD ap_get_message
\ 0317 4F LD C,A
\ 0318 0600 LD B,0
\ 031A C5 PUSH BC
\ 031B FDE1 POP IY
\ 031D 59 LD E,C
\ 031E 50 LD D,B
\ 031F C9 RET
\ 0320 ?0140:
\ 0320 FDE5 PUSH IY
\ 0322 E1 POP HL
\ 0323 5D LD E,L
\ 0324 CD0000 CALL LWRD ap_handle_hotkey
\ 0327 4F LD C,A
\ 0328 C5 PUSH BC
\ 0329 FDE1 POP IY
\ 032B 3E32 LD A,50
\ 032D A9 XOR C
\ 032E C9 RET
\ 032F ui_followAB:
322
323 /*
324 ********************************************************************************
325 * int ui_followAB( void )
326 *
327 * Description : 跟读--------A-B播放子状态
328 *
329 * Arguments : void
330 *
331 * Returns : int
332 * RESULT_UI_STOP: 表示要进入停止状态,此时所有module已关闭
333 * key: 热健消息
334 * NULL: 表示正常退出
335 *
336 * Notes : 在此状态下,按play到stop状态;按mode到play;按NEXT到对比状态;
337 *
338 ********************************************************************************
339 */
340
341
342 int ui_followAB( void )
343 {
\ 032F CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 0332 F8FF DEFW -8
\ 0334 FDE5 PUSH IY
344 int key;
345
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?