📄 ui_compare.lst
字号:
122 SetFullInterface();
\ 00C2 AF XOR A
\ 00C3 180A JR ?0059
123 return NULL;
124
125 case AP_KEY_MODE | AP_KEY_UP:
\ 00C5 ?0015:
126 //fade_out();
127 wavpSendCommand(MC_STOP, NULL);
\ 00C5 CD6A01 CALL LWRD ?0073
128 wavpSendCommand(MC_CLOSE, NULL);
\ 00C8 CD8001 CALL LWRD ?0075
129 OpenMusic();
130 RePlayStatus = NormalPlay;
\ 00CB AF XOR A
\ 00CC 320000 LD (RePlayStatus),A
131 SetFullInterface();
\ 00CF ?0059:
\ 00CF 320000 LD (ui_auto_update),A
\ 00D2 210000 LD HL,UpDisplayFlag
\ 00D5 7E LD A,(HL)
\ 00D6 F6C1 OR 193
\ 00D8 77 LD (HL),A
\ 00D9 23 INC HL
\ 00DA 36FF LD (HL),255
132 return NULL;
\ 00DC C36101 JP LWRD ?0055
133
134 case AP_KEY_PREV | AP_KEY_UP:
\ 00DF ?0016:
135 //fade_out();
136 wavpSendCommand(MC_STOP, NULL);
\ 00DF CD6A01 CALL LWRD ?0073
137 wavpSendCommand(MC_CLOSE, NULL);
\ 00E2 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
138 Replaytimes_CNT = 0; //重新开始计复读次数
\ 00E5 AF XOR A
\ 00E6 320000 LD (Replaytimes_CNT),A
139 RePlayStatus = FollowAB;
\ 00E9 3E05 LD A,5
\ 00EB 1871 JR ?0058
140 return NULL;
141
142 case AP_MSG_RTC:
\ 00ED ?0017:
143
144
145 UpDisplayFlag = UpDisplayFlag | up_musiccurrenttime;
\ 00ED 210000 LD HL,UpDisplayFlag
\ 00F0 23 INC HL
\ 00F1 CBCE SET 1,(HL)
146 Show_time_FC();
\ 00F3 CDB901 CALL LWRD ?0080
147 ui_show_batt( GetBattery(), g_comval.BatteryType,0);
\ 00F6 48 LD C,B
\ 00F7 C5 PUSH BC
\ 00F8 ED4B0F00 LD BC,(g_comval+15)
\ 00FC CD0000 CALL LWRD GetBattery
\ 00FF 5F LD E,A
\ 0100 3E00 LD A,BYTE3 ui_show_batt
\ 0102 210000 LD HL,LWRD ui_show_batt
\ 0105 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0108 E1 POP HL
148 break;
\ 0109 1836 JR ?0011
\ 010B ?0018:
149
150
151 default:
152 key = ap_handle_hotkey(key);
\ 010B 59 LD E,C
\ 010C CD0000 CALL LWRD ap_handle_hotkey
\ 010F 4F LD C,A
\ 0110 DD71F6 LD (IX-10),C
153 if (key == RESULT_REDRAW)
\ 0113 3E32 LD A,50
\ 0115 A9 XOR C
\ 0116 2014 JR NZ,?0020
\ 0118 ?0019:
154 {
155 //ui_auto_update = TRUE;
156 SetFullInterface();
\ 0118 320000 LD (ui_auto_update),A
\ 011B 210000 LD HL,UpDisplayFlag
\ 011E 7E LD A,(HL)
\ 011F F6C1 OR 193
\ 0121 77 LD (HL),A
\ 0122 23 INC HL
\ 0123 36FF LD (HL),255
157 need_draw = TRUE;
\ 0125 3E01 LD A,1
\ 0127 320000 LD (need_draw),A
\ 012A 1815 JR ?0011
\ 012C ?0020:
158 // return_to_play=1;
159 }
160 else if (key != 0)
\ 012C 79 LD A,C
\ 012D B7 OR A
\ 012E 2811 JR Z,?0011
\ 0130 ?0022:
161 {
162 // fade_out();
163 wavpSendCommand(MC_STOP, NULL);
\ 0130 CD6A01 CALL LWRD ?0073
164 wavpSendCommand(MC_CLOSE, NULL);
\ 0133 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
165
166 /*
167 //************
168 //注:因为这里退出时外面要淡出,所以会发出声音,
169 //这里把音量设为0就相当于不淡出,这只是权余之计
170 //以后希望能改掉
171 SetPAVolume(0);
172
173 //由于在MC_PLAY命令中用这个标志来判断是否要设音量,这里送
174 //个非0就是为了认音量为0,从而在开始放MUSIC后不送出声音
175 g_FadeInStatusFlag = 2;
176 OpenMusic();
177 g_FadeInStatusFlag = 0;
178
179 ClosePA();
180 //!!!!!!!!!!!!!!!
181 */
182 g_FCexitflag = TRUE;
183 OpenMusic();
\ 0136 CD9801 CALL LWRD ?0079
184 //musicpSendCommand(MC_SETVOLUME, 0); //让音量为0,这可在淡出时没声
185
186 SetFullInterface();
187 need_draw = TRUE;
188 return key;
\ 0139 DD6EF6 LD L,(IX-10)
\ 013C DD66F7 LD H,(IX-9)
189 }
\ 013F 1823 JR ?0026
\ 0141 ?0023:
\ 0141 ?0021:
190 break;
\ 0141 ?0011:
191 } //switch(key)
192
193 wavpSendCommand(MC_GETSTATUS, (int)& status_buf);
\ 0141 210200 LD HL,2
\ 0144 39 ADD HL,SP
\ 0145 4D LD C,L
\ 0146 44 LD B,H
\ 0147 1E83 LD E,131
\ 0149 CD1E00 CALL LWRD ?0078
194
195 if (status_buf.status == PLAYING_REACH_END)
\ 014C DD7EF8 LD A,(IX-8)
\ 014F FE06 CP 6
\ 0151 2014 JR NZ,?0025
\ 0153 ?0024:
196 {
197 wavpSendCommand(MC_STOP, NULL);
\ 0153 010000 LD BC,0
\ 0156 CD6B01 CALL LWRD ?0074
198 wavpSendCommand(MC_CLOSE, NULL);
\ 0159 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
199 RePlayStatus = CompareAB;
\ 015C 3E07 LD A,7
\ 015E ?0058:
\ 015E 320000 LD (RePlayStatus),A
200 return NULL;
\ 0161 ?0055:
\ 0161 210000 LD HL,0
201 }
\ 0164 ?0026:
\ 0164 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 0167 ?0025:
202 } //while(1)
203 } //ui_comparePlay(int)
\ 0167 C36200 JP LWRD ?0007
\ 016A ?0073:
\ 016A 48 LD C,B
\ 016B ?0074:
\ 016B 1E06 LD E,6
\ 016D 3E00 LD A,BYTE3 wavpSendCommand
\ 016F 210000 LD HL,LWRD wavpSendCommand
\ 0172 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0175 010000 LD BC,0
\ 0178 1E02 LD E,2
\ 017A 3E00 LD A,BYTE3 wavpSendCommand
\ 017C 210000 LD HL,LWRD wavpSendCommand
\ 017F C9 RET
\ 0180 ?0075:
\ 0180 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0183 3E00 LD A,BYTE3 OpenMusic
\ 0185 210000 LD HL,LWRD OpenMusic
\ 0188 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 018B C9 RET
\ 018C ?0076:
\ 018C 3E00 LD A,BYTE3 wavpSendCommand
\ 018E 210000 LD HL,LWRD wavpSendCommand
\ 0191 ?0077:
\ 0191 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0194 010000 LD BC,0
\ 0197 C9 RET
\ 0198 ?0079:
\ 0198 3E01 LD A,1
\ 019A 320000 LD (g_FCexitflag),A
\ 019D 3E00 LD A,BYTE3 OpenMusic
\ 019F 210000 LD HL,LWRD OpenMusic
\ 01A2 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01A5 AF XOR A
\ 01A6 320000 LD (ui_auto_update),A
\ 01A9 210000 LD HL,UpDisplayFlag
\ 01AC 7E LD A,(HL)
\ 01AD F6C1 OR 193
\ 01AF 77 LD (HL),A
\ 01B0 23 INC HL
\ 01B1 36FF LD (HL),255
\ 01B3 3E01 LD A,1
\ 01B5 320000 LD (need_draw),A
\ 01B8 C9 RET
\ 01B9 ?0080:
\ 01B9 3E00 LD A,BYTE3 Show_time_FC
\ 01BB 210000 LD HL,LWRD Show_time_FC
\ 01BE C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 01C1 ?0081:
\ 01C1 3E00 LD A,BYTE3 RefreshMainScreen
\ 01C3 210000 LD HL,LWRD RefreshMainScreen
\ 01C6 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 01C9 ui_compareAB:
204
205 /*
206 ********************************************************************************
207 * int ui_compareAB( void )
208 *
209 * Description : 对比--------对比音乐播放子状态
210 *
211 * Arguments : void
212 *
213 * Returns : int
214 *
215 * Notes : 在此状态下,按play到stop状态;按mode到play;按PREV到跟读状态;
216 *
217 ********************************************************************************
218 */
219 int ui_compareAB( void )
220 {
\ 01C9 CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 01CC F0FF DEFW 65520
\ 01CE FDE5 PUSH IY
221 int key;
222 wma_play_status_t status_buf;
223
224 if (!ReturnNotInit)
\ 01D0 3A0000 LD A,(ReturnNotInit)
\ 01D3 B7 OR A
\ 01D4 2008 JR NZ,?0028
\ 01D6 ?0027:
225 {
226 OpenMusic();
\ 01D6 3E00 LD A,BYTE3 OpenMusic
\ 01D8 210000 LD HL,LWRD OpenMusic
\ 01DB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01DE ?0028:
227 }
228 ReturnNotInit = FALSE;
\ 01DE AF XOR A
\ 01DF 320000 LD (ReturnNotInit),A
229 UpDisplayFlag = UpDisplayFlag | up_MPRLmode;
\ 01E2 210000 LD HL,UpDisplayFlag
\ 01E5 23 INC HL
\ 01E6 CBDE SET 3,(HL)
230 need_draw = TRUE;
\ 01E8 3E01 LD A,1
\ 01EA 320000 LD (need_draw),A
\ 01ED ?0030:
231
232 while (1)
233 {
234 if (need_draw)
\ 01ED 3A0000 LD A,(need_draw)
\ 01F0 B7 OR A
\ 01F1 280A JR Z,?0033
\ 01F3 ?0032:
235 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -