📄 ks0108.lst
字号:
398 0180 812F mov r24,r17
399 0182 00D0 rcall ks0108WriteCommand
400 .LM54:
401 0184 61E0 ldi r22,lo8(1)
402 0186 812F mov r24,r17
403 0188 00D0 rcall ks0108WriteCommand
404 /* epilogue: frame size=0 */
405 018a 1F91 pop r17
406 018c 0895 ret
407 /* epilogue end (size=2) */
408 /* function ks0108GotoXY size 35 (32) */
409 .LFE17:
411 .global ks0108DoReadData
413 ks0108DoReadData:
414 .LFB20:
415 .LM55:
416 /* prologue: frame size=1 */
417 018e 1F93 push r17
418 0190 CF93 push r28
419 0192 DF93 push r29
420 0194 CDB7 in r28,__SP_L__
421 0196 DEB7 in r29,__SP_H__
422 0198 2197 sbiw r28,1
423 019a 0FB6 in __tmp_reg__,__SREG__
424 019c F894 cli
425 019e DEBF out __SP_H__,r29
426 01a0 0FBE out __SREG__,__tmp_reg__
427 01a2 CDBF out __SP_L__,r28
428 /* prologue end (size=11) */
429 .LVL39:
430 .LM56:
431 01a4 12BA out 50-0x20,__zero_reg__
432 .LM57:
433 01a6 11BA out 49-0x20,__zero_reg__
434 .LM58:
435 01a8 9091 0000 lds r25,ks0108Coord
436 01ac 9034 cpi r25,lo8(64)
437 01ae 00F4 brsh .L42
438 .LM59:
439 01b0 AC98 cbi 53-0x20,4
440 .LM60:
441 01b2 AB9A sbi 53-0x20,3
442 01b4 00C0 rjmp .L44
443 .L42:
444 .LM61:
445 01b6 AB98 cbi 53-0x20,3
446 .LM62:
447 01b8 AC9A sbi 53-0x20,4
448 .LM63:
449 01ba 9034 cpi r25,lo8(64)
450 01bc 01F4 brne .L44
451 01be 8823 tst r24
452 01c0 01F0 breq .L44
453 .LM64:
454 01c2 61E0 ldi r22,lo8(1)
455 01c4 80E4 ldi r24,lo8(64)
456 .LVL40:
457 01c6 00D0 rcall ks0108WriteCommand
458 .LVL41:
459 .L44:
460 .LM65:
461 01c8 A89A sbi 53-0x20,0
462 .LM66:
463 01ca A99A sbi 53-0x20,1
464 .LM67:
465 01cc AA9A sbi 53-0x20,2
466 .LM68:
467 /* #APP */
468 01ce 0000 nop
469 01d0 0000 nop
470 01d2 0000 nop
471
472 .LM69:
473 /* #NOAPP */
474 01d4 10B3 in r17,48-0x20
475 .LVL42:
476 .LM70:
477 01d6 AA98 cbi 53-0x20,2
478 .LM71:
479 01d8 1982 std Y+1,__zero_reg__
480 .LVL43:
481 01da 00C0 rjmp .L47
482 .LVL44:
483 .L48:
484 01dc 8981 ldd r24,Y+1
485 01de 8F5F subi r24,lo8(-(1))
486 01e0 8983 std Y+1,r24
487 .LVL45:
488 .L47:
489 01e2 8981 ldd r24,Y+1
490 .LVL46:
491 01e4 8830 cpi r24,lo8(8)
492 01e6 00F0 brlo .L48
493 .LM72:
494 01e8 8FEF ldi r24,lo8(-1)
495 01ea 81BB out 49-0x20,r24
496 .LM73:
497 01ec 6091 0000 lds r22,ks0108Coord+1
498 01f0 8091 0000 lds r24,ks0108Coord
499 01f4 00D0 rcall ks0108GotoXY
500 .LM74:
501 01f6 8091 0000 lds r24,ks0108Inverted
502 01fa 8111 cpse r24,__zero_reg__
503 .LM75:
504 01fc 1095 com r17
505 .L50:
506 .LM76:
507 01fe 812F mov r24,r17
508 0200 9927 clr r25
509 /* epilogue: frame size=1 */
510 0202 2196 adiw r28,1
511 0204 0FB6 in __tmp_reg__,__SREG__
512 0206 F894 cli
513 0208 DEBF out __SP_H__,r29
514 020a 0FBE out __SREG__,__tmp_reg__
515 020c CDBF out __SP_L__,r28
516 020e DF91 pop r29
517 0210 CF91 pop r28
518 0212 1F91 pop r17
519 0214 0895 ret
520 /* epilogue end (size=10) */
521 /* function ks0108DoReadData size 74 (53) */
522 .LFE20:
524 .global ks0108ReadData
526 ks0108ReadData:
527 .LFB21:
528 .LM77:
529 /* prologue: frame size=0 */
530 /* prologue end (size=0) */
531 .LM78:
532 0216 81E0 ldi r24,lo8(1)
533 0218 00D0 rcall ks0108DoReadData
534 .LM79:
535 021a 80E0 ldi r24,lo8(0)
536 021c 00D0 rcall ks0108DoReadData
537 .LM80:
538 021e 9927 clr r25
539 /* epilogue: frame size=0 */
540 0220 0895 ret
541 /* epilogue end (size=1) */
542 /* function ks0108ReadData size 6 (5) */
543 .LFE21:
545 .global ks0108WriteData
547 ks0108WriteData:
548 .LFB23:
549 .LM81:
550 /* prologue: frame size=0 */
551 0222 EF92 push r14
552 0224 FF92 push r15
553 0226 0F93 push r16
554 0228 1F93 push r17
555 022a CF93 push r28
556 022c DF93 push r29
557 /* prologue end (size=6) */
558 .LVL47:
559 022e 082F mov r16,r24
560 .LM82:
561 0230 8091 0000 lds r24,ks0108Coord
562 .LVL48:
563 0234 87FD sbrc r24,7
564 0236 00C0 rjmp .L71
565 .LM83:
566 0238 8034 cpi r24,lo8(64)
567 023a 00F4 brsh .L58
568 .LM84:
569 023c AC98 cbi 53-0x20,4
570 .LM85:
571 023e AB9A sbi 53-0x20,3
572 0240 00C0 rjmp .L60
573 .L58:
574 .LM86:
575 0242 AB98 cbi 53-0x20,3
576 .LM87:
577 0244 AC9A sbi 53-0x20,4
578 .LM88:
579 0246 8034 cpi r24,lo8(64)
580 0248 01F4 brne .L60
581 .LM89:
582 024a 61E0 ldi r22,lo8(1)
583 024c 00D0 rcall ks0108WriteCommand
584 .L60:
585 .LM90:
586 024e A89A sbi 53-0x20,0
587 .LM91:
588 0250 A998 cbi 53-0x20,1
589 .LM92:
590 0252 8FEF ldi r24,lo8(-1)
591 0254 E82E mov r14,r24
592 0256 E1BA out 49-0x20,r14
593 .LM93:
594 0258 1091 0000 lds r17,ks0108Coord+1
595 .LVL49:
596 025c 1770 andi r17,lo8(7)
597 .LM94:
598 025e 01F0 breq .L62
599 .LM95:
600 0260 F5B2 in r15,53-0x20
601 .LVL50:
602 .LM96:
603 0262 00D0 rcall ks0108ReadData
604 .LM97:
605 0264 F5BA out 53-0x20,r15
606 .LM98:
607 0266 E1BA out 49-0x20,r14
608 .LM99:
609 0268 C02F mov r28,r16
610 026a DD27 clr r29
611 026c 012F mov r16,r17
612 026e 1127 clr r17
613 .LVL51:
614 0270 9E01 movw r18,r28
615 0272 002E mov r0,r16
616 0274 00C0 rjmp 2f
617 0276 220F 1: lsl r18
618 0278 331F rol r19
619 027a 0A94 2: dec r0
620 027c 02F4 brpl 1b
621 027e 982F mov r25,r24
622 .LVL52:
623 0280 922B or r25,r18
624 .LM100:
625 0282 8091 0000 lds r24,ks0108Inverted
626 0286 8111 cpse r24,__zero_reg__
627 .LM101:
628 0288 9095 com r25
629 .L64:
630 .LM102:
631 028a 92BB out 50-0x20,r25
632 .LM103:
633 028c 00D0 rcall ks0108Enable
634 .LVL53:
635 .LM104:
636 028e 6091 0000 lds r22,ks0108Coord+1
637 0292 685F subi r22,lo8(-(8))
638 0294 8091 0000 lds r24,ks0108Coord
639 0298 00D0 rcall ks0108GotoXY
640 .LM105:
641 029a 00D0 rcall ks0108ReadData
642 .LM106:
643 029c F5BA out 53-0x20,r15
644 .LM107:
645 029e E1BA out 49-0x20,r14
646 .LM108:
647 02a0 28E0 ldi r18,lo8(8)
648 02a2 30E0 ldi r19,hi8(8)
649 02a4 201B sub r18,r16
650 02a6 310B sbc r19,r17
651 02a8 00C0 rjmp 2f
652 02aa D595 1: asr r29
653 02ac C795 ror r28
654 02ae 2A95 2: dec r18
655 02b0 02F4 brpl 1b
656 02b2 282F mov r18,r24
657 .LVL54:
658 02b4 2C2B or r18,r28
659 .LM109:
660 02b6 8091 0000 lds r24,ks0108Inverted
661 02ba 8111 cpse r24,__zero_reg__
662 .LM110:
663 02bc 2095 com r18
664 .L66:
665 .LM111:
666 02be 22BB out 50-0x20,r18
667 .LM112:
668 02c0 00D0 rcall ks0108Enable
669 .LVL55:
670 .LM113:
671 02c2 6091 0000 lds r22,ks0108Coord+1
672 02c6 6850 subi r22,lo8(-(-8))
673 02c8 8091 0000 lds r24,ks0108Coord
674 02cc 8F5F subi r24,lo8(-(1))
675 02ce 00D0 rcall ks0108GotoXY
676 02d0 00C0 rjmp .L68
677 .LVL56:
678 .L62:
679 .LM114:
680 02d2 8091 0000 lds r24,ks0108Inverted
681 02d6 8111 cpse r24,__zero_reg__
682 .LM115:
683 02d8 0095 com r16
684 .L69:
685 .LM116:
686 02da 02BB out 50-0x20,r16
687 .LM117:
688 02dc 00D0 rcall ks0108Enable
689 .LM118:
690 02de 8091 0000 lds r24,ks0108Coord
691 02e2 8F5F subi r24,lo8(-(1))
692 02e4 8093 0000 sts ks0108Coord,r24
693 .LVL57:
694 .L68:
695 .LM119:
696 02e8 12BA out 50-0x20,__zero_reg__
697 .L71:
698 /* epilogue: frame size=0 */
699 02ea DF91 pop r29
700 02ec CF91 pop r28
701 02ee 1F91 pop r17
702 02f0 0F91 pop r16
703 02f2 FF90 pop r15
704 02f4 EF90 pop r14
705 02f6 0895 ret
706 /* epilogue end (size=7) */
707 /* function ks0108WriteData size 112 (99) */
708 .LFE23:
710 .global ks0108PutChar
712 ks0108PutChar:
713 .LFB11:
714 .LM120:
715 /* prologue: frame size=0 */
716 02f8 3F92 push r3
717 02fa 4F92 push r4
718 02fc 5F92 push r5
719 02fe 6F92 push r6
720 0300 7F92 push r7
721 0302 8F92 push r8
722 0304 9F92 push r9
723 0306 AF92 push r10
724 0308 BF92 push r11
725 030a CF92 push r12
726 030c DF92 push r13
727 030e EF92 push r14
728 0310 FF92 push r15
729 0312 0F93 push r16
730 0314 1F93 push r17
731 0316 CF93 push r28
732 0318 DF93 push r29
733 /* prologue end (size=17) */
734 .LVL58:
735 031a 082F mov r16,r24
736 .LM121:
737 031c 8091 0000 lds r24,ks0108Font
738 0320 9091 0000 lds r25,(ks0108Font)+1
739 .LVL59:
740 0324 E091 0000 lds r30,ks0108FontRead
741 0328 F091 0000 lds r31,(ks0108FontRead)+1
742 032c 0396 adiw r24,3
743 032e 0995 icall
744 0330 F82E mov r15,r24
745 .LVL60:
746 .LM122:
747 0332 8091 0000 lds r24,ks0108Font
748 0336 9091 0000 lds r25,(ks0108Font)+1
749 033a E091 0000 lds r30,ks0108FontRead
750 033e F091 0000 lds r31,(ks0108FontRead)+1
751 0342 0496 adiw r24,4
752 0344 0995 icall
753 0346 182F mov r17,r24
754 .LVL61:
755 .LM123:
756 0348 8091 0000 lds r24,ks0108Font
757 034c 9091 0000 lds r25,(ks0108Font)+1
758 0350 E091 0000 lds r30,ks0108FontRead
759 0354 F091 0000 lds r31,(ks0108FontRead)+1
760 0358 0596 adiw r24,5
761 035a 0995 icall
762 035c C82E mov r12,r24
763 .LVL62:
764 .LM124:
765 035e 7090 0000 lds r7,ks0108Coord
766 .LVL63:
767 0362 3090 0000 lds r3,ks0108Coord+1
768 .LVL64:
769 .LM125:
770 0366 0117 cp r16,r17
771 0368 00F4 brsh .+2
772 036a 00C0 rjmp .L73
773 .LM126:
774 036c 202F mov r18,r16
775 036e 3327 clr r19
776 0370 412F mov r20,r17
777 0372 480F add r20,r24
778 0374 512D mov r21,__zero_reg__
779 0376 511D adc r21,__zero_reg__
780 0378 2417 cp r18,r20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -