📄 ui_stop_menu.lst
字号:
96 else
\ 00DD 1822 JR ?0014
\ 00DF ?0011:
97 {
98 //无卡时的显示
99 list.total = sizeof(dir_string) / 2;
\ 00DF 3605 LD (HL),5
\ 00E1 23 INC HL
\ 00E2 77 LD (HL),A
100 list.strid = dir_string;
\ 00E3 2B DEC HL
\ 00E4 2B DEC HL
\ 00E5 2B DEC HL
\ 00E6 3600 LD (HL),LOW(dir_string)
\ 00E8 23 INC HL
\ 00E9 3600 LD (HL),HIGH(dir_string)
101 if (StopMenuactive >= list.total)
\ 00EB 23 INC HL
\ 00EC 4E LD C,(HL)
\ 00ED 47 LD B,A
\ 00EE 2A0100 LD HL,(?0009)
\ 00F1 60 LD H,B
\ 00F2 F680 OR 128
\ 00F4 ED42 SBC HL,BC
\ 00F6 E2FA00 JP PO,?0067
\ 00F9 AC XOR H
\ 00FA ?0067:
\ 00FA FA0101 JP M,?0014
\ 00FD ?0013:
102 {
103 StopMenuactive--;
\ 00FD 210100 LD HL,?0009
\ 0100 35 DEC (HL)
\ 0101 ?0014:
\ 0101 ?0012:
104 }
105
106 }
107 //无卡时的显示
108 list.string_id = g_langid;
\ 0101 210800 LD HL,8
\ 0104 39 ADD HL,SP
\ 0105 3A0000 LD A,(g_langid)
\ 0108 77 LD (HL),A
109 list.active = StopMenuactive;
\ 0109 210400 LD HL,4
\ 010C 39 ADD HL,SP
\ 010D ED4B0100 LD BC,(?0009)
\ 0111 0600 LD B,0
\ 0113 71 LD (HL),C
\ 0114 23 INC HL
\ 0115 70 LD (HL),B
110
111 result = ui_popup_list(&list, NULL);
\ 0116 48 LD C,B
\ 0117 C5 PUSH BC
\ 0118 60 LD H,B
\ 0119 C5 PUSH BC
\ 011A 2E04 LD L,4
\ 011C 39 ADD HL,SP
\ 011D EB EX DE,HL
\ 011E 3E00 LD A,BYTE3 ui_popup_list
\ 0120 210000 LD HL,LWRD ui_popup_list
\ 0123 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0126 F1 POP AF
\ 0127 F1 POP AF
\ 0128 E5 PUSH HL
\ 0129 DDE1 POP IX
112 StopMenuactive = list.active;
\ 012B 210400 LD HL,4
\ 012E 39 ADD HL,SP
\ 012F 7E LD A,(HL)
\ 0130 320100 LD (?0009),A
113
114 if (g_CardInFlag)
\ 0133 3A0000 LD A,(g_CardInFlag)
\ 0136 B7 OR A
\ 0137 282C JR Z,?0018
\ 0139 ?0015:
115 {
116
117 if (DRV_DetectUD(1) != 0x20)
\ 0139 1E01 LD E,1
\ 013B CD0000 CALL LWRD DRV_DetectUD
\ 013E FE20 CP 32
\ 0140 2823 JR Z,?0018
\ 0142 ?0017:
118 {
119 g_CardInFlag=0;
\ 0142 AF XOR A
\ 0143 320000 LD (g_CardInFlag),A
120 ui_err_msg(CARDPULL,CARDPULL,g_langid);//显示卡拔出
\ 0146 ED4B0000 LD BC,(g_langid)
\ 014A 47 LD B,A
\ 014B C5 PUSH BC
\ 014C 018A01 LD BC,394
\ 014F 59 LD E,C
\ 0150 50 LD D,B
\ 0151 3E00 LD A,BYTE3 ui_err_msg
\ 0153 210000 LD HL,LWRD ui_err_msg
\ 0156 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0159 F1 POP AF
121 g_amv_vars.location.disk = 'C';
\ 015A 3E43 LD A,67
\ 015C 320500 LD (g_amv_vars+5),A
122 //return RESULT_SD_OUT;
123 return RESULT_SD_OUT;
\ 015F 213600 LD HL,54
124 }
\ 0162 C30003 JP LWRD ?0055
\ 0165 ?0018:
\ 0165 ?0016:
125
126 }
127
128 if (result != 0)
\ 0165 DDE5 PUSH IX
\ 0167 E1 POP HL
\ 0168 7D LD A,L
\ 0169 B4 OR H
\ 016A C20003 JP NZ,?0055
\ 016D ?0019:
129 {
130 return result;
131 }
\ 016D ?0020:
132
133
134 BankSwitch((unsigned long)FSELInit >> 16);
\ 016D 41 LD B,C
\ 016E 1E00 LD E,BYTE3 fselInit
\ 0170 48 LD C,B
\ 0171 CD0000 CALL LWRD BankSwitch
135 fselGetLocation(& g_amv_vars.location);
\ 0174 CD4D00 CALL LWRD ?0076
136
137
138 if(!g_CardInFlag)
\ 0177 3A0000 LD A,(g_CardInFlag)
\ 017A B7 OR A
\ 017B 210400 LD HL,4
\ 017E 39 ADD HL,SP
\ 017F 5E LD E,(HL)
\ 0180 23 INC HL
\ 0181 56 LD D,(HL)
\ 0182 202D JR NZ,?0022
\ 0184 ?0021:
139 {
140 //无卡的情况
141 switch (list.active)
\ 0184 CD0000 CALL LWRD ?S_S_SWITCH_L06
\ 0187 0000 DEFW 0
\ 0189 0400 DEFW 4
\ 018B DD02 DEFW ?0050
\ 018D 9501 DEFW ?0024
\ 018F 9B02 DEFW ?0045
\ 0191 AA02 DEFW ?0046
\ 0193 9E01 DEFW ?0029
\ 0195 ?0024:
142 {
143 /*
144 case 0: //volset
145 slider.min = 0;
146 slider.max = 31;
147 slider.step = 1;
148 slider.value = g_amv_vars.volume;
149 slider.string_id = g_langid;
150 slider.title=VOLSET;
151 //在停止状态时调音量没必要实时改变IO号的值
152 result = ui_slider(& slider, NULL);
153
154 g_amv_vars.volume = slider.value;//退出时再改变音量的值
155 break;
156 */
157 case 0: //主目录
158 // result=ui_explore(&g_amv_vars.location, EXPLORE_DIR, g_langid);
159 if (g_amv_vars.location.disk == 'H')
\ 0195 3A0500 LD A,(g_amv_vars+5)
\ 0198 FE48 CP 72
\ 019A 2047 JR NZ,?0037
\ 019C ?0025:
160 {
161 g_amv_vars.location.disk = 'C';
\ 019C 182D JR ?0074
162 FSELInit(FSEL_TYPE_AMV, FSEL_ALL_SEQUENCE, FSEL_TYPE_COMMONDIR,g_amv_vars.location.disk);
163 fselGetLocation(&g_amv_vars.location);
\ 019E ?0026:
164 }
165 result=ui_directory(&g_amv_vars.location, FSEL_TYPE_AMV, g_langid);
166 FSELSetMode(FSEL_ALL_SEQUENCE);
167 BankSwitch((unsigned long)AmvDecStart>>16);
168 g_menu_active=FALSE;
169 break;
\ 019E ?0027:
170
171 case 1: //删除文件
172 result = ui_delete_amv(DELETE_FILE);
173 break;
\ 019E ?0028:
174
175 case 2: //删除全部
176 //result = ui_delete_amv(DELETE_FILE);
177 FSELSetMode(FSEL_ALL_REPEATALL);
178 result = ui_delete_all(&g_amv_vars.location, DELETE_AMV, g_comval.langid);
179 FSELSetMode(g_amv_vars.repeat_mode);
180 break;
\ 019E ?0029:
181
182 case 3:
183 result = ui_loop_menu();
\ 019E 3E00 LD A,BYTE3 ui_loop_menu
\ 01A0 215800 LD HL,LWRD ui_loop_menu
\ 01A3 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01A6 E5 PUSH HL
\ 01A7 DDE1 POP IX
184 if(result==0)result=RESULT_IGNORE;
\ 01A9 7D LD A,L
\ 01AA B4 OR H
\ 01AB C2E102 JP NZ,?0034
\ 01AE ?0030:
\ 01AE C3DD02 JP LWRD ?0050
\ 01B1 ?0031:
185 break;
\ 01B1 ?0032:
186 default://退出 case 3
187 result = RESULT_IGNORE;
188 break;
\ 01B1 ?0023:
189 }
190
191 }
192
193 else //有卡的情况
\ 01B1 ?0022:
194 {
195 switch (list.active)
\ 01B1 CD0000 CALL LWRD ?S_S_SWITCH_L06
\ 01B4 0000 DEFW 0
\ 01B6 0500 DEFW 5
\ 01B8 DD02 DEFW ?0050
\ 01BA C401 DEFW ?0035
\ 01BC 0502 DEFW ?0038
\ 01BE 9B02 DEFW ?0045
\ 01C0 AA02 DEFW ?0046
\ 01C2 CE02 DEFW ?0047
\ 01C4 ?0035:
196 {
197 case 0:
198 if (g_amv_vars.location.disk == 'H')
\ 01C4 3A0500 LD A,(g_amv_vars+5)
\ 01C7 FE48 CP 72
\ 01C9 2018 JR NZ,?0037
\ 01CB ?0036:
199 {
200 g_amv_vars.location.disk = 'C';
\ 01CB ?0074:
\ 01CB 3E43 LD A,67
\ 01CD 320500 LD (g_amv_vars+5),A
201 FSELInit(FSEL_TYPE_AMV, FSEL_ALL_SEQUENCE, FSEL_TYPE_COMMONDIR,g_amv_vars.location.disk);
\ 01D0 4F LD C,A
\ 01D1 C5 PUSH BC
\ 01D2 48 LD C,B
\ 01D3 C5 PUSH BC
\ 01D4 1E05 LD E,5
\ 01D6 3E00 LD A,BYTE3 fselInit
\ 01D8 210000 LD HL,LWRD fselInit
\ 01DB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01DE F1 POP AF
\ 01DF F1 POP AF
202 fselGetLocation(&g_amv_vars.location);
\ 01E0 CD4D00 CALL LWRD ?0076
\ 01E3 ?0037:
203 }
204 result=ui_directory(&g_amv_vars.location, FSEL_TYPE_AMV, g_langid);
\ 01E3 3A0000 LD A,(g_langid)
\ 01E6 4F LD C,A
\ 01E7 C5 PUSH BC
\ 01E8 0E05 LD C,5
\ 01EA 110500 LD DE,g_amv_vars+5
\ 01ED 3E00 LD A,BYTE3 ui_directory
\ 01EF 210000 LD HL,LWRD ui_directory
\ 01F2 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01F5 F1 POP AF
205 FSELSetMode(FSEL_ALL_SEQUENCE);
\ 01F6 CD0E03 CALL LWRD ?0077
206 BankSwitch((unsigned long)AmvDecStart>>16);
\ 01F9 1E00 LD E,BYTE3 AmvDecStart
\ 01FB CD0000 CALL LWRD BankSwitch
207 g_menu_active=FALSE;
\ 01FE AF XOR A
\ 01FF 320000 LD (g_menu_active),A
208 break;
\ 0202 C3E102 JP LWRD ?0034
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -