📄 main.lst
字号:
\ 018B ?0072:
\ 018B ?0073:
\ 018B ?0070:
277 {
278 //no ap for bakup
279 result_bak = RESULT_NULL;
\ 018B AF XOR A
\ 018C DD77F2 LD (IX-14),A
\ 018F DD77F3 LD (IX-13),A
280 // result_bak=RESULT_MAIN; //Start whith main
281 //show icons
282 if(need_draw)
\ 0192 DDB6F4 OR (IX-12)
\ 0195 CA8C02 JP Z,?0075
\ 0198 ?0074:
283 {
284 ui_auto_update = FALSE;
\ 0198 AF XOR A
\ 0199 320000 LD (ui_auto_update),A
285
286 //show main logos
287 ClearScreen(NULL);
\ 019C 5F LD E,A
\ 019D 57 LD D,A
\ 019E CD0000 CALL LWRD ClearScreen
288 item_index = active - active % 5;
\ 01A1 010500 LD BC,5
\ 01A4 DD5EEA LD E,(IX-22)
\ 01A7 DD56EB LD D,(IX-21)
\ 01AA CD0000 CALL LWRD ?SS_MOD_L02
\ 01AD DD7EEA LD A,(IX-22)
\ 01B0 93 SUB E
\ 01B1 DD77F8 LD (IX-8),A
289
290 for(i=0; i<5 ; i++)
\ 01B4 AF XOR A
\ 01B5 DD77EC LD (IX-20),A
\ 01B8 DD77ED LD (IX-19),A
\ 01BB ?0077:
\ 01BB 010580 LD BC,32773
\ 01BE DD6EEC LD L,(IX-20)
\ 01C1 DD66ED LD H,(IX-19)
\ 01C4 78 LD A,B
\ 01C5 AC XOR H
\ 01C6 67 LD H,A
\ 01C7 ED42 SBC HL,BC
\ 01C9 3064 JR NC,?0076
\ 01CB ?0078:
291 {
292 if ( item_index + i >= item_count )
\ 01CB DD4EF7 LD C,(IX-9)
\ 01CE 0600 LD B,0
\ 01D0 50 LD D,B
\ 01D1 DD5EF8 LD E,(IX-8)
\ 01D4 DD6EEC LD L,(IX-20)
\ 01D7 DD66ED LD H,(IX-19)
\ 01DA 19 ADD HL,DE
\ 01DB F680 OR 128
\ 01DD ED42 SBC HL,BC
\ 01DF E2E301 JP PO,?0250
\ 01E2 AC XOR H
\ 01E3 ?0250:
\ 01E3 F22F02 JP P,?0076
\ 01E6 ?0080:
293 {
294 break;
\ 01E6 ?0081:
295 }
296 if(with_fm)
\ 01E6 AF XOR A
\ 01E7 DDB6F9 OR (IX-7)
\ 01EA 48 LD C,B
\ 01EB C5 PUSH BC
\ 01EC 2816 JR Z,?0083
\ 01EE ?0082:
297 {
298 ResShowPic(inactive_id[item_index + i], inactive_pos[i], 0);
\ 01EE 213600 LD HL,inactive_pos
\ 01F1 DD4EEC LD C,(IX-20)
\ 01F4 DD46ED LD B,(IX-19)
\ 01F7 09 ADD HL,BC
\ 01F8 4E LD C,(HL)
\ 01F9 DD6EEC LD L,(IX-20)
\ 01FC 60 LD H,B
\ 01FD 19 ADD HL,DE
\ 01FE 29 ADD HL,HL
\ 01FF 110A00 LD DE,inactive_id
\ 0202 1814 JR ?0255
299 }
300 else
\ 0204 ?0083:
301 {
302 ResShowPic(inactive_id_nofm[item_index + i], inactive_pos_nofm[i], 0);
\ 0204 213B00 LD HL,inactive_pos_nofm
\ 0207 DD4EEC LD C,(IX-20)
\ 020A DD46ED LD B,(IX-19)
\ 020D 09 ADD HL,BC
\ 020E 4E LD C,(HL)
\ 020F DD6EEC LD L,(IX-20)
\ 0212 60 LD H,B
\ 0213 19 ADD HL,DE
\ 0214 29 ADD HL,HL
\ 0215 112200 LD DE,inactive_id_nofm
\ 0218 ?0255:
\ 0218 19 ADD HL,DE
\ 0219 5E LD E,(HL)
\ 021A 23 INC HL
\ 021B 56 LD D,(HL)
\ 021C 3E00 LD A,BYTE3 ResShowPic
\ 021E 210000 LD HL,LWRD ResShowPic
\ 0221 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0224 F1 POP AF
\ 0225 ?0084:
\ 0225 DD34EC INC (IX-20)
\ 0228 2091 JR NZ,?0077
\ 022A DD34ED INC (IX-19)
\ 022D 188C JR ?0077
\ 022F ?0076:
303 }
304 }
305
306 //show active logo
307 if(with_fm)
\ 022F AF XOR A
\ 0230 DDB6F9 OR (IX-7)
\ 0233 2823 JR Z,?0086
\ 0235 ?0085:
308 {
309 ResShowPic(active_id[active], inactive_pos[active % 5]-2, 0);
\ 0235 0E00 LD C,0
\ 0237 C5 PUSH BC
\ 0238 010500 LD BC,5
\ 023B DD5EEA LD E,(IX-22)
\ 023E DD56EB LD D,(IX-21)
\ 0241 CD0000 CALL LWRD ?SS_MOD_L02
\ 0244 213600 LD HL,inactive_pos
\ 0247 19 ADD HL,DE
\ 0248 7E LD A,(HL)
\ 0249 C6FE ADD A,254
\ 024B 4F LD C,A
\ 024C DD6EEA LD L,(IX-22)
\ 024F DD66EB LD H,(IX-21)
\ 0252 29 ADD HL,HL
\ 0253 111600 LD DE,active_id
\ 0256 1818 JR ?0256
310 }
311 else
\ 0258 ?0086:
312 {
313 ResShowPic(active_id_nofm[active], inactive_pos_nofm[active]-2, 0);
\ 0258 4F LD C,A
\ 0259 C5 PUSH BC
\ 025A 213B00 LD HL,inactive_pos_nofm
\ 025D DD4EEA LD C,(IX-22)
\ 0260 DD46EB LD B,(IX-21)
\ 0263 09 ADD HL,BC
\ 0264 7E LD A,(HL)
\ 0265 C6FE ADD A,254
\ 0267 4F LD C,A
\ 0268 DD6EEA LD L,(IX-22)
\ 026B 60 LD H,B
\ 026C 29 ADD HL,HL
\ 026D 112C00 LD DE,active_id_nofm
\ 0270 ?0256:
\ 0270 19 ADD HL,DE
\ 0271 5E LD E,(HL)
\ 0272 23 INC HL
\ 0273 56 LD D,(HL)
\ 0274 3E00 LD A,BYTE3 ResShowPic
\ 0276 210000 LD HL,LWRD ResShowPic
\ 0279 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 027C F1 POP AF
\ 027D ?0087:
314 }
315
316 UpdateScreen(NULL);
\ 027D 110000 LD DE,0
\ 0280 CD0000 CALL LWRD UpdateScreen
317
318 ui_auto_update = TRUE;
\ 0283 3E01 LD A,1
\ 0285 320000 LD (ui_auto_update),A
319 need_draw= FALSE;
\ 0288 DD36F400 LD (IX-12),0
\ 028C ?0075:
320 }//need draw
321
322 if(result == RESULT_MAIN)
\ 028C FDE5 PUSH IY
\ 028E E1 POP HL
\ 028F 3E0A LD A,10
\ 0291 AD XOR L
\ 0292 B4 OR H
\ 0293 202B JR NZ,?0090
\ 0295 ?0088:
323 {
324 char rtc_count=0;
\ 0295 DD77FB LD (IX-5),A
\ 0298 ?0092:
325
326 //start from other ap (user hold mode key)?
327 do
328 {
329 key = ap_get_message();
\ 0298 CD0000 CALL LWRD ap_get_message
\ 029B DD77EE LD (IX-18),A
330 if(key == AP_KEY_NULL)
\ 029E B7 OR A
\ 029F 2811 JR Z,?0100
\ 02A1 ?0093:
\ 02A1 ?0094:
331 {
332 }
333 else if((key == AP_MSG_RTC) || (key == AP_MSG_CHARGING))
\ 02A1 FE1C CP 28
\ 02A3 2804 JR Z,?0098
\ 02A5 FE1B CP 27
\ 02A7 2005 JR NZ,?0097
\ 02A9 ?0098:
\ 02A9 ?0099:
\ 02A9 ?0096:
334 {
335 rtc_count++;
\ 02A9 DD34FB INC (IX-5)
\ 02AC 1804 JR ?0100
\ 02AE ?0097:
336 }
337 else rtc_count = 0;
\ 02AE DD36FB00 LD (IX-5),0
\ 02B2 ?0100:
\ 02B2 ?0095:
338
339 //check time out
340 if(rtc_count >= 2) break;
\ 02B2 DD7EFB LD A,(IX-5)
\ 02B5 FE02 CP 2
\ 02B7 3007 JR NC,?0090
\ 02B9 ?0101:
\ 02B9 ?0102:
341 }
342 while(key != (AP_KEY_MODE|AP_KEY_UP) );
\ 02B9 DD7EEE LD A,(IX-18)
\ 02BC FE30 CP 48
\ 02BE 20D8 JR NZ,?0092
\ 02C0 ?0090:
343 }
344 else ASSERT(result == RESULT_NULL); //start form first boot
\ 02C0 ?0089:
\ 02C0 ?0103:
345
346 key = ap_get_message();
\ 02C0 CD0000 CALL LWRD ap_get_message
\ 02C3 DD77EE LD (IX-18),A
347
348 //check sec key squence, just check key_up
349 if(key != AP_MSG_RTC && key != AP_MSG_CHARGING &&
350 (key & AP_KEY_UP) != 0)
\ 02C6 FE1C CP 28
\ 02C8 2836 JR Z,?0113
\ 02CA FE1B CP 27
\ 02CC 2832 JR Z,?0113
\ 02CE DDCBEE6E BIT 5,(IX-18)
\ 02D2 282C JR Z,?0113
\ 02D4 ?0107:
\ 02D4 ?0106:
\ 02D4 ?0104:
351 {
352 //tester
353 if(key == sec_tester[sec_tester_count])
\ 02D4 DD4EF5 LD C,(IX-11)
\ 02D7 0600 LD B,0
\ 02D9 210000 LD HL,sec_tester
\ 02DC 09 ADD HL,BC
\ 02DD 7E LD A,(HL)
\ 02DE DDBEEE CP (IX-18)
\ 02E1 2005 JR NZ,?0109
\ 02E3 ?0108:
354 {
355 sec_tester_count++;
\ 02E3 DD34F5 INC (IX-11)
356 }
357 else
\ 02E6 1803 JR ?0110
\ 02E8 ?0109:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -