📄 ui_stop_menu.lst
字号:
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 18/Nov/107 22:57:50 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d913f\ap\ap_music\ui_stop_menu.c #
# List file = d:\case_i_d913f\ap\ap_music\list\ui_stop_menu.lst #
# Object file = d:\case_i_d913f\ap\ap_music\obj\ui_stop_menu.r01 #
# ASM file = d:\case_i_d913f\ap\ap_music\list\ui_stop_menu.s01 #
# Command line = -v0 -mb -OD:\case_i_d913f\ap\ap_music\Obj\ -e -K #
# -w -gA -z9 -RCODE -r0 -DNAPDEBUG #
# -LD:\case_i_d913f\ap\ap_music\List\ -q -t8 #
# -AD:\case_i_d913f\ap\ap_music\List\ #
# -ND:\case_i_d913f\ap\ap_music\List\ -X #
# -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\ #
# d:\case_i_d913f\AP\AP_MUSIC\ui_stop_menu.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME ui_stop_menu(17)
\ 0000 RSEG AP_UI_MNU_STOP(0)
\ 0000 RSEG IDATA0(0)
\ 0000 RSEG CDATA0(0)
\ 0000 RSEG APC_UI_MNU_STOP(0)
\ 0000 EXTERN BankSwitch
\ 0000 EXTERN ClearScreen
\ 0000 EXTERN ClearTimePara
\ 0000 EXTERN DRV_ActiveUD
\ 0000 EXTERN DRV_DetectUD
\ 0000 EXTERN DeleteAllSelSegment
\ 0000 EXTERN DisplayErrInfor
\ 0000 EXTERN DisplayErrMsg
\ 0000 EXTERN MusicEditEndTime
\ 0000 EXTERN MusicEditStartTime
\ 0000 EXTERN MusicEdit_SelSeg
\ 0000 EXTERN NoCardCaseInStopMenu
\ 0000 PUBLIC PLFileName
\ 0000 EXTERN ResShowMultiString
\ 0000 EXTERN ResShowPic
\ 0000 EXTERN SetDealCommamd
\ 0000 PUBLIC UI_DeleteAllSelSegment
\ 0000 PUBLIC UI_InsertRec
\ 0000 PUBLIC UI_InsertSeg
\ 0000 PUBLIC UI_SongComp
\ 0000 EXTERN ap_get_message
\ 0000 PUBLIC dir_string
\ 0000 PUBLIC dir_string_card
\ 0000 EXTERN fselGetLocation
\ 0000 EXTERN fselGetNextFile
\ 0000 EXTERN fselInit
\ 0000 EXTERN fselPlayListExit
\ 0000 EXTERN fselSetMode
\ 0000 EXTERN g_DiskStateFlag
\ 0000 EXTERN g_comval
\ 0000 EXTERN g_currentMusicType
\ 0000 EXTERN g_file_list_total
\ 0000 EXTERN g_music_vars
\ 0000 EXTERN list
\ 0000 EXTERN m_mp3deOpenparam
\ 0000 EXTERN musicpSendCommand
\ 0000 EXTERN ui_delete_Music
\ 0000 EXTERN ui_directory
\ 0000 EXTERN ui_licensinf
\ 0000 EXTERN ui_popup_list
\ 0000 PUBLIC ui_stop_menu
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?SS_CMP_L02
\ 0000 EXTERN ?S_S_SWITCH_L06
\ 0000 EXTERN ?C_V_SWITCH_L06
\ 0000 EXTERN ?S_V_SWITCH_L06
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?BANK_LEAVE_DIRECT_L08
\ 0000 EXTERN ?BANK_FAST_LEAVE_L08
\ 0000 EXTERN ?ENT_AUTO_DIRECT_L09
\ 0000 RSEG AP_UI_MNU_STOP
\ 0000 UI_InsertSeg:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * This program demostrates how to build an AP
5 *
6 * (c) Copyright Actions Co,Ld.
7 *
8 * $Id: ui_stop_menu.c,v 1.2 2006/07/14 06:46:20 tangwh Exp $
9 *******************************************************************************
10 */
11 #include "ap_music.h"
12
13
14 extern int test_cow1;
15
16 extern STRU_SelMusicSegment MusicEdit_SelSeg;
17 extern time_t MusicEditStartTime;
18 extern time_t MusicEditEndTime;
19 extern HANDLE m_Mp3deFileHandle;
20 extern Open_param_t* m_mp3deOpenparam;
21
22 #pragma memory=constseg(APC_UI_MNU_STOP)
23
24 const char PLFileName[5][12] = {"MYLIST A3L","ARTIST A3L","ALBUM A3L","GENRE A3L","COMPOSERA3L"
25 };
26
27 //const WORD dir_string_card[6+9] =
28 const WORD dir_string_card[5] =
29 {
30 /*MSTOP6, MSTOP7,MSTOP8, MSTOP9, MSTOP10, MSTOP11,*/ MSTOP1, MSTOP2, MSTOP3, MSTOP4, /*10 insseg*//*MPLAY9,*//*insrec*//*MPLAY11,SONGCOM,DELSELLS,*/MSTOP5
31 };
32
33 //const WORD dir_string[6+8] =
34 const WORD dir_string[4] =
35 {
36 /*MSTOP6, MSTOP7,MSTOP8, MSTOP9, MSTOP10, MSTOP11,*/ MSTOP1, MSTOP3, MSTOP4, /*9 insseg*//*MPLAY9,*//*insrec*//*MPLAY11,SONGCOM,DELSELLS,*/MSTOP5
37 };
38
39 #pragma memory=default
40 extern void make_dirname(void);
41 int ui_licensinf(int string_id);
42 int ui_delete_Music( int type );
43 int NoCardCaseInStopMenu(int active);
44 void UI_DeleteAllSelSegment(BYTE lang_id);
45 #pragma codeseg(AP_UI_MNU_STOP)
46
47 int UI_InsertSeg(void)
48 {
\ 0000 CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 0003 FEFF DEFW 65534
49 uchar IMK_Reg;
50
51 if(g_currentMusicType!=Music_MP3)
\ 0005 3A0000 LD A,(g_currentMusicType)
\ 0008 3D DEC A
\ 0009 204B JR NZ,?0005
\ 000B ?0002:
52 return RESULT_IGNORE;
\ 000B ?0003:
53
54 IMK_Reg=input8(0x27);
\ 000B DB27 IN A,(39)
\ 000D DD77FE LD (IX-2),A
55 output8(0x27,0);
\ 0010 AF XOR A
\ 0011 D327 OUT (39),A
56 MusicEdit_SelSeg.StartSec=m_mp3deOpenparam->BreakPTSave->breakPT;
\ 0013 2A0000 LD HL,(m_mp3deOpenparam)
\ 0016 23 INC HL
\ 0017 23 INC HL
\ 0018 7E LD A,(HL)
\ 0019 23 INC HL
\ 001A 66 LD H,(HL)
\ 001B 6F LD L,A
\ 001C 5E LD E,(HL)
\ 001D 23 INC HL
\ 001E 56 LD D,(HL)
\ 001F 23 INC HL
\ 0020 4E LD C,(HL)
\ 0021 23 INC HL
\ 0022 46 LD B,(HL)
\ 0023 EB EX DE,HL
\ 0024 220000 LD (MusicEdit_SelSeg),HL
\ 0027 ED430200 LD (MusicEdit_SelSeg+2),BC
57 MusicEdit_SelSeg.location=& g_music_vars.location;
\ 002B 210700 LD HL,g_music_vars+7
\ 002E 220800 LD (MusicEdit_SelSeg+8),HL
58 MusicEdit_SelSeg.StartTime=&MusicEditStartTime;
\ 0031 210000 LD HL,MusicEditStartTime
\ 0034 220A00 LD (MusicEdit_SelSeg+10),HL
59 MusicEdit_SelSeg.EndTime=&MusicEditEndTime;
\ 0037 210000 LD HL,MusicEditEndTime
\ 003A 220C00 LD (MusicEdit_SelSeg+12),HL
60 output8(0x27,IMK_Reg);
\ 003D DD7EFE LD A,(IX-2)
\ 0040 D327 OUT (39),A
61
62 if(SetDealCommamd(&MusicEdit_SelSeg,MUSICEDIT_CMD_INSSEL,NULL))
\ 0042 210000 LD HL,0
\ 0045 E5 PUSH HL
\ 0046 010400 LD BC,4
\ 0049 CD5C00 CALL LWRD ?0133
\ 004C F1 POP AF
\ 004D 2C INC L
\ 004E 2D DEC L
\ 004F 2805 JR Z,?0005
\ 0051 ?0004:
63 {
64 return RESULT_MUSICEDIT;// return to musicedit ap
\ 0051 210F00 LD HL,15
65 }
\ 0054 1803 JR ?0006
\ 0056 ?0005:
66 return RESULT_IGNORE;
\ 0056 213400 LD HL,52
67 }
\ 0059 ?0006:
\ 0059 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 005C ?0133:
\ 005C 110000 LD DE,MusicEdit_SelSeg
\ 005F ?0134:
\ 005F 3E00 LD A,BYTE3 SetDealCommamd
\ 0061 210000 LD HL,LWRD SetDealCommamd
\ 0064 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 0067 UI_InsertRec:
68
69 int UI_InsertRec(void)
70 {
\ 0067 CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 006A FEFF DEFW 65534
71 uchar IMK_Reg;
72
73 if(g_currentMusicType!=Music_MP3)
\ 006C 3A0000 LD A,(g_currentMusicType)
\ 006F 3D DEC A
\ 0070 204B JR NZ,?0010
\ 0072 ?0007:
74 return RESULT_IGNORE;
\ 0072 ?0008:
75
76 IMK_Reg=input8(0x27);
\ 0072 DB27 IN A,(39)
\ 0074 DD77FE LD (IX-2),A
77 output8(0x27,0);
\ 0077 AF XOR A
\ 0078 D327 OUT (39),A
78 MusicEdit_SelSeg.StartSec=m_mp3deOpenparam->BreakPTSave->breakPT;
\ 007A 2A0000 LD HL,(m_mp3deOpenparam)
\ 007D 23 INC HL
\ 007E 23 INC HL
\ 007F 7E LD A,(HL)
\ 0080 23 INC HL
\ 0081 66 LD H,(HL)
\ 0082 6F LD L,A
\ 0083 5E LD E,(HL)
\ 0084 23 INC HL
\ 0085 56 LD D,(HL)
\ 0086 23 INC HL
\ 0087 4E LD C,(HL)
\ 0088 23 INC HL
\ 0089 46 LD B,(HL)
\ 008A EB EX DE,HL
\ 008B 220000 LD (MusicEdit_SelSeg),HL
\ 008E ED430200 LD (MusicEdit_SelSeg+2),BC
79 MusicEdit_SelSeg.location=& g_music_vars.location;
\ 0092 210700 LD HL,g_music_vars+7
\ 0095 220800 LD (MusicEdit_SelSeg+8),HL
80 MusicEdit_SelSeg.StartTime=&MusicEditStartTime;
\ 0098 210000 LD HL,MusicEditStartTime
\ 009B 220A00 LD (MusicEdit_SelSeg+10),HL
81 MusicEdit_SelSeg.EndTime=&MusicEditEndTime;
\ 009E 210000 LD HL,MusicEditEndTime
\ 00A1 220C00 LD (MusicEdit_SelSeg+12),HL
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -