📄 ui_stop_menu.lst
字号:
428 //注,如 result != 0表示退出时一些时间参数不用清0
429 // 但如果 ==0 则表示退出时目录已改,时间要清0
430 if (result != 0)
\ 039D DD7EFC LD A,(IX-4)
\ 03A0 DDB6FD OR (IX-3)
\ 03A3 2808 JR Z,?0085
\ 03A5 ?0084:
431 {
432 return result;
\ 03A5 ?0111:
\ 03A5 DD6EFC LD L,(IX-4)
\ 03A8 DD66FD LD H,(IX-3)
433 }
\ 03AB 180B JR ?0086
\ 03AD ?0085:
434 ClearTimePara();//清0时间及断点
\ 03AD 3E00 LD A,BYTE3 ClearTimePara
\ 03AF 210000 LD HL,LWRD ClearTimePara
\ 03B2 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
435 return 0;
\ 03B5 210000 LD HL,0
436
437 }
\ 03B8 ?0086:
\ 03B8 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 03BB ?0136:
\ 03BB 1E01 LD E,1
\ 03BD ?0135:
\ 03BD CD0000 CALL LWRD DRV_DetectUD
\ 03C0 FE20 CP 32
\ 03C2 C9 RET
\ 03C3 ?0137:
\ 03C3 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 03C6 DD75FC LD (IX-4),L
\ 03C9 DD74FD LD (IX-3),H
\ 03CC C9 RET
\ 03CD ?0138:
\ 03CD ED5B0C00 LD DE,(g_comval+12)
\ 03D1 3E00 LD A,BYTE3 UI_DeleteAllSelSegment
\ 03D3 211C04 LD HL,LWRD UI_DeleteAllSelSegment
\ 03D6 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03D9 ?0139:
\ 03D9 110700 LD DE,g_music_vars+7
\ 03DC 3E00 LD A,BYTE3 fselGetLocation
\ 03DE 210000 LD HL,LWRD fselGetLocation
\ 03E1 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03E4 ?0140:
\ 03E4 118A01 LD DE,394
\ 03E7 3E00 LD A,BYTE3 DisplayErrMsg
\ 03E9 210000 LD HL,LWRD DisplayErrMsg
\ 03EC C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03EF ?0141:
\ 03EF 59 LD E,C
\ 03F0 ?0142:
\ 03F0 3E00 LD A,BYTE3 fselInit
\ 03F2 210000 LD HL,LWRD fselInit
\ 03F5 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03F8 ?0145:
\ 03F8 0E00 LD C,0
\ 03FA 110700 LD DE,g_music_vars+7
\ 03FD 3E00 LD A,BYTE3 ui_directory
\ 03FF 210000 LD HL,LWRD ui_directory
\ 0402 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 0405 ?0146:
\ 0405 DD75FC LD (IX-4),L
\ 0408 DD74FD LD (IX-3),H
\ 040B 1E00 LD E,0
\ 040D 3E00 LD A,BYTE3 fselSetMode
\ 040F 210000 LD HL,LWRD fselSetMode
\ 0412 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0415 DD7EFC LD A,(IX-4)
\ 0418 DDB6FD OR (IX-3)
\ 041B C9 RET
\ 041C UI_DeleteAllSelSegment:
438
439
440 void UI_DeleteAllSelSegment(BYTE lang_id)
441 {
\ 041C CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 041F FEFF DEFW 65534
442 char key;
443 char delete_flag=0;
444 ClearScreen(NULL);
\ 0421 110000 LD DE,0
\ 0424 CD0000 CALL LWRD ClearScreen
445 ResShowPic(DELNO,56,32);
\ 0427 0E20 LD C,32
\ 0429 C5 PUSH BC
\ 042A 0E38 LD C,56
\ 042C CD9804 CALL LWRD ?0143
\ 042F F1 POP AF
446 ResShowMultiString(DELSELLS,lang_id, 255, 100);
\ 0430 0E64 LD C,100
\ 0432 C5 PUSH BC
\ 0433 0EFF LD C,255
\ 0435 C5 PUSH BC
\ 0436 DD4E02 LD C,(IX+2)
\ 0439 11A201 LD DE,418
\ 043C 3E00 LD A,BYTE3 ResShowMultiString
\ 043E 210000 LD HL,LWRD ResShowMultiString
\ 0441 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0444 F1 POP AF
\ 0445 ?0131:
\ 0445 F1 POP AF
\ 0446 DD36FE00 LD (IX-2),0
\ 044A ?0088:
447 while(1)
448 {
449 key = ap_get_message(); //获取消息
\ 044A CD0000 CALL LWRD ap_get_message
450 switch(key)
\ 044D 5F LD E,A
\ 044E CD0000 CALL LWRD ?C_V_SWITCH_L06
\ 0451 0700 DEFW 7
\ 0453 05 DEFB 5
\ 0454 06 DEFB 6
\ 0455 1E DEFB 30
\ 0456 21 DEFB 33
\ 0457 30 DEFB 48
\ 0458 45 DEFB 69
\ 0459 46 DEFB 70
\ 045A 4A04 DEFW ?0088
\ 045C 6A04 DEFW ?0091
\ 045E 6A04 DEFW ?0091
\ 0460 8704 DEFW ?0095
\ 0462 0000 DEFW ?BANK_LEAVE_DIRECT_L08
\ 0464 0000 DEFW ?BANK_LEAVE_DIRECT_L08
\ 0466 6A04 DEFW ?0091
\ 0468 6A04 DEFW ?0091
\ 046A ?0091:
451 {
452 case AP_KEY_NEXT: //YES和NO之间切换
453 case AP_KEY_PREV:
454 case AP_KEY_NEXT | AP_KEY_HOLD:
455 case AP_KEY_PREV | AP_KEY_HOLD:
456 if(delete_flag==0)
\ 046A AF XOR A
\ 046B DDB6FE OR (IX-2)
\ 046E 0E20 LD C,32
\ 0470 C5 PUSH BC
\ 0471 0E38 LD C,56
\ 0473 200D JR NZ,?0093
\ 0475 ?0092:
457 {
458 delete_flag=1;
459 ResShowPic(DELYES,56,32);
\ 0475 110200 LD DE,2
\ 0478 CD9B04 CALL LWRD ?0144
\ 047B F1 POP AF
\ 047C DD36FE01 LD (IX-2),1
460 }
461 else
\ 0480 18C8 JR ?0088
\ 0482 ?0093:
462 {
463 delete_flag=0;
464 ResShowPic(DELNO,56,32);
\ 0482 CD9804 CALL LWRD ?0143
\ 0485 18BE JR ?0131
\ 0487 ?0094:
465 }
466 break;
\ 0487 ?0095:
467
468 case AP_KEY_MODE | AP_KEY_UP:
469 if(delete_flag==1)
\ 0487 DD46FE LD B,(IX-2)
\ 048A 05 DEC B
\ 048B 2008 JR NZ,?0099
\ 048D ?0096:
470 {
471 DeleteAllSelSegment();
\ 048D 3E00 LD A,BYTE3 DeleteAllSelSegment
\ 048F 210000 LD HL,LWRD DeleteAllSelSegment
\ 0492 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
472 return;
473 }
\ 0495 ?0097:
474 else
475 return;
476
477 case AP_MSG_WAIT_TIMEOUT: //8秒退出
\ 0495 ?0098:
478 return;
479
480 case AP_KEY_PLAY | AP_KEY_UP:
\ 0495 ?0099:
481 return;
482
483 default:
\ 0495 ?0101:
\ 0495 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 0498 ?0143:
\ 0498 110100 LD DE,1
\ 049B ?0144:
\ 049B 3E00 LD A,BYTE3 ResShowPic
\ 049D 210000 LD HL,LWRD ResShowPic
\ 04A0 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 04A3 ?0100:
484 break;
\ 04A3 ?0090:
485 } //swith
486 } //while
487 }
\ 0000 RSEG IDATA0
\ 0000 ?0015:
\ 0001 DEFS 1
\ 0000 RSEG CDATA0
\ 0000 00 DEFB 0
\ 0000 RSEG APC_UI_MNU_STOP
\ 0000 PLFileName:
\ 0000 4D594C49 DEFB 'MYLIST A3L'
\ 0004 53542020
\ 0008 41334C
\ 000B 00 DEFB 0
\ 000C 41525449 DEFB 'ARTIST A3L'
\ 0010 53542020
\ 0014 41334C
\ 0017 00 DEFB 0
\ 0018 414C4255 DEFB 'ALBUM A3L'
\ 001C 4D202020
\ 0020 41334C
\ 0023 00 DEFB 0
\ 0024 47454E52 DEFB 'GENRE A3L'
\ 0028 45202020
\ 002C 41334C
\ 002F 00 DEFB 0
\ 0030 434F4D50 DEFB 'COMPOSERA3L'
\ 0034 4F534552
\ 0038 41334C
\ 003B 00 DEFB 0
\ 003C dir_string_card:
\ 003C CD01 DEFW 461
\ 003E CE01 DEFW 462
\ 0040 CF01 DEFW 463
\ 0042 D001 DEFW 464
\ 0044 D101 DEFW 465
\ 0046 dir_string:
\ 0046 CD01 DEFW 461
\ 0048 CF01 DEFW 463
\ 004A D001 DEFW 464
\ 004C D101 DEFW 465
\ 004E END
Errors: none
Warnings: none
Code size: 1187
Constant size: 79
Static variable size: Data(1) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -