📄 ui_play.lst
字号:
\ 0254 ED433D00 LD (g_reader_vars+61),BC
169 g_reader_vars.g_txt.BufSector=0;
\ 0258 223F00 LD (g_reader_vars+63),HL
\ 025B ?0041:
170 while(ap_get_message() != 0);
\ 025B CD0000 CALL LWRD ap_get_message
\ 025E B7 OR A
\ 025F 285B JR Z,?0082
\ 0261 ?0042:
\ 0261 18F8 JR ?0041
\ 0263 ?0040:
171 return 0;
172 }
\ 0263 ?0039:
\ 0263 ?0044:
173 while(ap_get_message() != 0);
\ 0263 CD0000 CALL LWRD ap_get_message
\ 0266 B7 OR A
\ 0267 CA5703 JP Z,?0073
\ 026A ?0045:
174 break;
\ 026A 18F7 JR ?0039
\ 026C ?0043:
\ 026C ?0046:
175 case AP_KEY_PREV:
176 case AP_KEY_PREV| AP_KEY_HOLD:
177 {
178 bRedraw = ( 0 != view_page_up(&g_reader_vars.g_txt,NULL) );
\ 026C 010000 LD BC,0
\ 026F 113100 LD DE,g_reader_vars+49
\ 0272 3E00 LD A,BYTE3 view_page_up
\ 0274 210000 LD HL,LWRD view_page_up
\ 0277 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 027A 2C INC L
\ 027B 2D DEC L
\ 027C 2804 JR Z,?0079
\ 027E 3E01 LD A,1
\ 0280 1801 JR ?0080
\ 0282 ?0079:
\ 0282 AF XOR A
\ 0283 ?0080:
\ 0283 DD77EB LD (IX-21),A
179 if(bRedraw)
\ 0286 B7 OR A
\ 0287 2804 JR Z,?0048
\ 0289 ?0047:
180 {
181 bPageDownFlag = TRUE;
\ 0289 DD36F001 LD (IX-16),1
\ 028D ?0048:
\ 028D ?0050:
182 }
183 }
184 while(ap_get_message() != 0);
\ 028D CD0000 CALL LWRD ap_get_message
\ 0290 B7 OR A
\ 0291 CA5703 JP Z,?0073
\ 0294 ?0051:
185 break;
\ 0294 18F7 JR ?0048
\ 0296 ?0049:
\ 0296 ?0052:
186 case AP_MSG_SD_OUT:
187 if (g_reader_vars.location.disk == 'H')
\ 0296 3A0600 LD A,(g_reader_vars+6)
\ 0299 FE48 CP 72
\ 029B 2025 JR NZ,?0054
\ 029D ?0053:
188 {
189 g_reader_vars.location.disk = 'C';
\ 029D 3E43 LD A,67
\ 029F 320600 LD (g_reader_vars+6),A
190 ui_err_msg(CARDPULL,CARDPULL,g_comval.langid);//显示卡拔出
\ 02A2 ED4B0C00 LD BC,(g_comval+12)
\ 02A6 0600 LD B,0
\ 02A8 C5 PUSH BC
\ 02A9 018A01 LD BC,394
\ 02AC 59 LD E,C
\ 02AD 50 LD D,B
\ 02AE 3E00 LD A,BYTE3 ui_err_msg
\ 02B0 210000 LD HL,LWRD ui_err_msg
\ 02B3 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02B6 F1 POP AF
191 need_sel_file=TRUE;
\ 02B7 3E01 LD A,1
\ 02B9 320000 LD (need_sel_file),A
192 return 0;
\ 02BC ?0082:
\ 02BC 210000 LD HL,0
193 }
\ 02BF C34C03 JP LWRD ?0077
\ 02C2 ?0054:
\ 02C2 ?0056:
194 while(ap_get_message() != 0);
\ 02C2 CD0000 CALL LWRD ap_get_message
\ 02C5 B7 OR A
\ 02C6 CA5703 JP Z,?0073
\ 02C9 ?0057:
195 break;
\ 02C9 18F7 JR ?0054
\ 02CB ?0055:
\ 02CB ?0058:
196
197 case AP_KEY_MODE|AP_KEY_UP:
198 BankSwitch((unsigned long)LoadData >> 16);
\ 02CB 1E00 LD E,BYTE3 LoadData
\ 02CD CD0000 CALL LWRD BankSwitch
199 // ToPrevScreenPosition(&g_reader_vars.g_txt); //回上一屏
200 result=bookmark_op();
\ 02D0 3E00 LD A,BYTE3 bookmark_op
\ 02D2 210000 LD HL,LWRD bookmark_op
\ 02D5 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
201 if(result==0)
\ 02D8 7D LD A,L
\ 02D9 B4 OR H
\ 02DA 2828 JR Z,?0083
\ 02DC ?0059:
202 {
203 bRedraw = TRUE;
204 break;
\ 02DC ?0060:
205
206 }
207 if(result!=RESULT_IGNORE)
\ 02DC 3E34 LD A,52
\ 02DE AD XOR L
\ 02DF B4 OR H
\ 02E0 206A JR NZ,?0077
\ 02E2 ?0061:
208 {
209 return result;
210 }
\ 02E2 ?0062:
211 if(result==RESULT_IGNORE)
\ 02E2 3E34 LD A,52
\ 02E4 AD XOR L
\ 02E5 B4 OR H
\ 02E6 2003 JR NZ,?0064
\ 02E8 ?0063:
212 ToPrevScreenPosition(&g_reader_vars.g_txt); //回上一屏
\ 02E8 CD7703 CALL LWRD ?0084
\ 02EB ?0064:
213 bRedraw = TRUE; //重画
\ 02EB DD36EB01 LD (IX-21),1
\ 02EF ?0066:
214 while(ap_get_message() != 0);
\ 02EF CD0000 CALL LWRD ap_get_message
\ 02F2 B7 OR A
\ 02F3 2862 JR Z,?0073
\ 02F5 ?0067:
215 break;
\ 02F5 18F8 JR ?0066
\ 02F7 ?0065:
\ 02F7 ?0068:
216
217 default:
218 key = ap_handle_hotkey( key );
\ 02F7 CD0000 CALL LWRD ap_handle_hotkey
\ 02FA DD77EF LD (IX-17),A
219 if(key == RESULT_REDRAW)
\ 02FD FE32 CP 50
\ 02FF 2009 JR NZ,?0070
\ 0301 ?0069:
220 {
221 ToPrevScreenPosition(&g_reader_vars.g_txt);
\ 0301 CD7703 CALL LWRD ?0084
222 bRedraw = TRUE; //重画
\ 0304 ?0083:
\ 0304 DD36EB01 LD (IX-21),1
\ 0308 184D JR ?0073
\ 030A ?0070:
223 }
224 else if(key != 0)
\ 030A AF XOR A
\ 030B DDB6EF OR (IX-17)
\ 030E 2847 JR Z,?0073
\ 0310 ?0072:
225 {
226 FileLengthLeft= g_reader_vars.g_txt.FileLengthBytes - g_reader_vars.g_txt.CurrentSeek;
\ 0310 2A3300 LD HL,(g_reader_vars+51)
\ 0313 ED4B3B00 LD BC,(g_reader_vars+59)
\ 0317 ED42 SBC HL,BC
\ 0319 EB EX DE,HL
\ 031A 2A3500 LD HL,(g_reader_vars+53)
\ 031D ED4B3D00 LD BC,(g_reader_vars+61)
\ 0321 ED42 SBC HL,BC
\ 0323 4D LD C,L
\ 0324 44 LD B,H
\ 0325 EB EX DE,HL
227 if(FileLengthLeft<=0)
\ 0326 C5 PUSH BC
\ 0327 E5 PUSH HL
\ 0328 010000 LD BC,0
\ 032B 69 LD L,C
\ 032C 60 LD H,B
\ 032D CD0000 CALL LWRD ?SL_CMP_L03
\ 0330 3813 JR C,?0075
\ 0332 ?0074:
228 {
229 g_reader_vars.g_txt.PrevSeek=0;
\ 0332 223700 LD (g_reader_vars+55),HL
\ 0335 ED433900 LD (g_reader_vars+57),BC
230 g_reader_vars.g_txt.CurrentSeek=0;
\ 0339 223B00 LD (g_reader_vars+59),HL
\ 033C ED433D00 LD (g_reader_vars+61),BC
231 g_reader_vars.g_txt.BufSector=0;
\ 0340 223F00 LD (g_reader_vars+63),HL
232 }
233 else
\ 0343 1803 JR ?0076
\ 0345 ?0075:
234 {
235 ToPrevScreenPosition(&g_reader_vars.g_txt); //回上一屏
\ 0345 CD7703 CALL LWRD ?0084
\ 0348 ?0076:
236 }
237
238 return key;
\ 0348 DD6EEF LD L,(IX-17)
\ 034B 60 LD H,B
239 }
\ 034C ?0077:
\ 034C DDF9 LD SP,IX
\ 034E DDE1 POP IX
\ 0350 FDE1 POP IY
\ 0352 D1 POP DE
\ 0353 C1 POP BC
\ 0354 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0357 ?0073:
\ 0357 ?0071:
\ 0357 ?0014:
240 }
241 //恢复保存设备状态
242 SetPenColor(oldDC_sav.PenColor);
\ 0357 DD4EF7 LD C,(IX-9)
\ 035A DD46F8 LD B,(IX-8)
\ 035D DD5EF5 LD E,(IX-11)
\ 0360 DD56F6 LD D,(IX-10)
\ 0363 CD0000 CALL LWRD SetPenColor
243 SetBackgdColor(oldDC_sav.BackgdColor);
\ 0366 211300 LD HL,19
\ 0369 39 ADD HL,SP
\ 036A 5E LD E,(HL)
\ 036B 23 INC HL
\ 036C 56 LD D,(HL)
\ 036D 23 INC HL
\ 036E 4E LD C,(HL)
\ 036F 23 INC HL
\ 0370 46 LD B,(HL)
\ 0371 CD0000 CALL LWRD SetBackgdColor
244 }
245 }
\ 0374 C32901 JP LWRD ?0008
\ 0377 ?0084:
\ 0377 113100 LD DE,g_reader_vars+49
\ 037A 3E00 LD A,BYTE3 ToPrevScreenPosition
\ 037C 210000 LD HL,LWRD ToPrevScreenPosition
\ 037F C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 0000 RSEG UDATA0
\ 0000 Stop_display:
\ 0001 DEFS 1
\ 0001 count_autoplay:
\ 0002 DEFS 1
\ 0002 Delaytime:
\ 0003 DEFS 1
\ 0003 END
Errors: none
Warnings: none
Code size: 898
Constant size: 0
Static variable size: Data(3) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -