📄 pelikon.lst
字号:
326 0074 F1F7 brne 1b
327 /* #NOAPP */
328 .LBE4:
329 .LBE3:
330 .LM20:
331 0076 DA9A sbi 59-0x20,2
332 .LM21:
333 0078 9150 subi r25,lo8(-(-1))
334 007a 3196 adiw r30,1
335 007c 97FF sbrs r25,7
336 007e F1CF rjmp .L21
337 .LM22:
338 0080 D998 cbi 59-0x20,1
339 .LM23:
340 0082 DA98 cbi 59-0x20,2
341 .LBB5:
342 .LM24:
343 0084 84E0 ldi r24,lo8(4)
344 .LBB6:
345 .LM25:
346 /* #APP */
347 0086 8A95 1: dec r24
348 0088 F1F7 brne 1b
349 /* #NOAPP */
350 .LBE6:
351 .LBE5:
352 .LM26:
353 008a D898 cbi 59-0x20,0
354 .LBB7:
355 .LM27:
356 008c 84E0 ldi r24,lo8(4100)
357 008e 90E1 ldi r25,hi8(4100)
358 .LBB8:
359 .LM28:
360 /* #APP */
361 0090 0197 1: sbiw r24,1
362 0092 F1F7 brne 1b
363 /* #NOAPP */
364 .LBE8:
365 .LBE7:
366 .LM29:
367 0094 D89A sbi 59-0x20,0
368 /* epilogue: frame size=0 */
369 0096 0895 ret
370 /* epilogue end (size=1) */
371 /* function write_segments size 46 (45) */
372 .LFE9:
374 .global init_pelikon
376 init_pelikon:
377 .LFB10:
378 .LM30:
379 /* prologue: frame size=0 */
380 0098 1F93 push r17
381 /* prologue end (size=1) */
382 .LM31:
383 009a 8FEF ldi r24,lo8(-1)
384 009c 8ABB out 58-0x20,r24
385 .LM32:
386 009e 11E0 ldi r17,lo8(1)
387 00a0 1BBB out 59-0x20,r17
388 .LM33:
389 00a2 80E0 ldi r24,lo8(0)
390 00a4 0E94 0000 call write_segments
391 .LM34:
392 00a8 13BF out 83-0x20,r17
393 .LM35:
394 00aa 12BE out 82-0x20,__zero_reg__
395 .LM36:
396 00ac 89B7 in r24,89-0x20
397 00ae 812B or r24,r17
398 00b0 89BF out 89-0x20,r24
399 .LM37:
400 /* #APP */
401 00b2 7894 sei
402 /* #NOAPP */
403 /* epilogue: frame size=0 */
404 00b4 1F91 pop r17
405 00b6 0895 ret
406 /* epilogue end (size=2) */
407 /* function init_pelikon size 17 (14) */
408 .LFE10:
410 .global main
412 main:
413 .LFB11:
414 .LM38:
415 /* prologue: frame size=0 */
416 00b8 C0E0 ldi r28,lo8(__stack - 0)
417 00ba D0E0 ldi r29,hi8(__stack - 0)
418 00bc DEBF out __SP_H__,r29
419 00be CDBF out __SP_L__,r28
420 /* prologue end (size=4) */
421 .LM39:
422 00c0 0E94 0000 call init_pelikon
423 .L41:
424 .LM40:
425 00c4 8091 0000 lds r24,screen_flag
426 00c8 0E94 0000 call write_segments
427 .L30:
428 .LM41:
429 00cc 8091 0000 lds r24,key_value
430 00d0 8823 tst r24
431 00d2 E1F3 breq .L30
432 .LM42:
433 00d4 C091 0000 lds r28,key_value
434 00d8 C130 cpi r28,lo8(1)
435 00da 71F4 brne .L33
436 .LM43:
437 00dc 0E94 0000 call disbouncing
438 .LM44:
439 00e0 8091 0000 lds r24,screen_flag
440 00e4 8F5F subi r24,lo8(-(1))
441 00e6 8093 0000 sts screen_flag,r24
442 .LM45:
443 00ea 8091 0000 lds r24,screen_flag
444 00ee 8730 cpi r24,lo8(7)
445 00f0 49F7 brne .L41
446 .LM46:
447 00f2 C093 0000 sts screen_flag,r28
448 00f6 E6CF rjmp .L41
449 .L33:
450 .LM47:
451 00f8 8091 0000 lds r24,key_value
452 00fc 8230 cpi r24,lo8(2)
453 00fe 11F7 brne .L41
454 .LM48:
455 0100 0E94 0000 call disbouncing
456 .LM49:
457 0104 8091 0000 lds r24,screen_flag
458 0108 8150 subi r24,lo8(-(-1))
459 010a 8093 0000 sts screen_flag,r24
460 .LM50:
461 010e 8091 0000 lds r24,screen_flag
462 0112 8823 tst r24
463 0114 B9F6 brne .L41
464 .LM51:
465 0116 86E0 ldi r24,lo8(6)
466 0118 8093 0000 sts screen_flag,r24
467 .LM52:
468 011c D3CF rjmp .L41
469 /* epilogue: frame size=0 */
470 /* epilogue: noreturn */
471 /* epilogue end (size=0) */
472 /* function main size 51 (47) */
473 .LFE11:
475 .global __vector_9
477 __vector_9:
478 .LFB12:
479 .LM53:
480 /* prologue: frame size=0 */
481 011e 1F92 push __zero_reg__
482 0120 0F92 push __tmp_reg__
483 0122 0FB6 in __tmp_reg__,__SREG__
484 0124 0F92 push __tmp_reg__
485 0126 1124 clr __zero_reg__
486 0128 2F93 push r18
487 012a 3F93 push r19
488 012c 4F93 push r20
489 012e 5F93 push r21
490 0130 6F93 push r22
491 0132 7F93 push r23
492 0134 8F93 push r24
493 0136 9F93 push r25
494 0138 AF93 push r26
495 013a BF93 push r27
496 013c EF93 push r30
497 013e FF93 push r31
498 /* prologue end (size=17) */
499 .LM54:
500 0140 8091 0000 lds r24,timer_ov_num1
501 0144 8F5F subi r24,lo8(-(1))
502 0146 8093 0000 sts timer_ov_num1,r24
503 .LM55:
504 014a 8091 0000 lds r24,timer_ov_num1
505 014e 8431 cpi r24,lo8(20)
506 0150 E9F5 brne .L42
507 .LM56:
508 0152 1092 0000 sts timer_ov_num1,__zero_reg__
509 .LM57:
510 0156 8091 0000 lds r24,timer_ov_num2
511 015a 8F5F subi r24,lo8(-(1))
512 015c 8093 0000 sts timer_ov_num2,r24
513 .LM58:
514 0160 8091 0000 lds r24,timer_ov_num2
515 0164 8D39 cpi r24,lo8(-99)
516 0166 91F5 brne .L42
517 .LM59:
518 0168 1092 0000 sts timer_ov_num2,__zero_reg__
519 .LM60:
520 016c 9091 0000 lds r25,first_keyscan
521 0170 9923 tst r25
522 0172 29F4 brne .L45
523 .LM61:
524 0174 81E0 ldi r24,lo8(1)
525 0176 8093 0000 sts first_keyscan,r24
526 .LM62:
527 017a 9093 0000 sts key_valueold,r25
528 .L45:
529 .LM63:
530 017e 8091 0000 lds r24,key_value
531 0182 8823 tst r24
532 0184 21F0 breq .L46
533 .LM64:
534 0186 8091 0000 lds r24,key_value
535 018a 8093 0000 sts key_valueold,r24
536 .L46:
537 .LM65:
538 018e 0E94 0000 call keyscan
539 0192 8093 0000 sts key_value,r24
540 .LM66:
541 0196 9091 0000 lds r25,key_value
542 019a 8091 0000 lds r24,key_valueold
543 019e 9817 cp r25,r24
544 01a0 49F4 brne .L47
545 01a2 8091 0000 lds r24,key_value
546 01a6 8823 tst r24
547 01a8 29F0 breq .L47
548 .LM67:
549 01aa 8091 0000 lds r24,key
550 01ae 8F5F subi r24,lo8(-(1))
551 01b0 8093 0000 sts key,r24
552 .L47:
553 .LM68:
554 01b4 9091 0000 lds r25,key_valueold
555 01b8 8091 0000 lds r24,key_value
556 01bc 9817 cp r25,r24
557 01be 31F0 breq .L42
558 01c0 8091 0000 lds r24,key
559 01c4 8A30 cpi r24,lo8(10)
560 01c6 10F4 brsh .L42
561 .LM69:
562 01c8 1092 0000 sts key,__zero_reg__
563 .L42:
564 /* epilogue: frame size=0 */
565 01cc FF91 pop r31
566 01ce EF91 pop r30
567 01d0 BF91 pop r27
568 01d2 AF91 pop r26
569 01d4 9F91 pop r25
570 01d6 8F91 pop r24
571 01d8 7F91 pop r23
572 01da 6F91 pop r22
573 01dc 5F91 pop r21
574 01de 4F91 pop r20
575 01e0 3F91 pop r19
576 01e2 2F91 pop r18
577 01e4 0F90 pop __tmp_reg__
578 01e6 0FBE out __SREG__,__tmp_reg__
579 01e8 0F90 pop __tmp_reg__
580 01ea 1F90 pop __zero_reg__
581 01ec 1895 reti
582 /* epilogue end (size=17) */
583 /* function __vector_9 size 104 (70) */
584 .LFE12:
586 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 pelikon.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:22 .data:00000000 screen_flag
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:29 .bss:00000000 num
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:35 .bss:00000001 T1_num2
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:41 .bss:00000002 T1_num
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:47 .bss:00000003 timer_flag
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:53 .bss:00000004 T1_flag
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:59 .bss:00000005 key
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:65 .bss:00000006 key_valueold
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:71 .bss:00000007 key_value
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:77 .bss:00000008 first_keyscan
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:83 .bss:00000009 timer_ov_num2
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:89 .bss:0000000a timer_ov_num1
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:94 .progmem.data:00000000 rcBuffer
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:210 .text:00000000 keyscan
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:260 .text:0000003a disbouncing
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:285 .text:0000004e write_segments
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:376 .text:00000098 init_pelikon
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:412 .text:000000b8 main
C:\DOCUME~1\san\LOCALS~1\Temp/ccOcpaaa.s:477 .text:0000011e __vector_9
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -