📄 glcd.lst
字号:
755 0322 092D mov r16,r9
756 0324 0A19 sub r16,r10
757 0326 602F mov r22,r16
758 0328 812F mov r24,r17
759 032a 0E94 0000 call glcd_set_dot
760 .LM119:
761 032e 1F2D mov r17,r15
762 0330 1519 sub r17,r5
763 0332 6E2D mov r22,r14
764 0334 812F mov r24,r17
765 0336 0E94 0000 call glcd_set_dot
766 033a 602F mov r22,r16
767 033c 812F mov r24,r17
768 033e 0E94 0000 call glcd_set_dot
769 .LM120:
770 0342 D7FE sbrs r13,7
771 0344 07C0 rjmp .L75
772 .LM121:
773 0346 C60C add r12,r6
774 0348 D71C adc r13,r7
775 034a 86E0 ldi r24,lo8(6)
776 034c 90E0 ldi r25,hi8(6)
777 034e C80E add r12,r24
778 0350 D91E adc r13,r25
779 0352 0EC0 rjmp .L76
780 .L75:
781 .LM122:
782 0354 C501 movw r24,r10
783 0356 8C1B sub r24,r28
784 0358 9D0B sbc r25,r29
785 035a 880F lsl r24
786 035c 991F rol r25
787 035e 880F lsl r24
788 0360 991F rol r25
789 0362 C80E add r12,r24
790 0364 D91E adc r13,r25
791 0366 8AE0 ldi r24,lo8(10)
792 0368 90E0 ldi r25,hi8(10)
793 036a C80E add r12,r24
794 036c D91E adc r13,r25
795 .LM123:
796 036e 2197 sbiw r28,1
797 .L76:
798 .LM124:
799 0370 0894 sec
800 0372 A11C adc r10,__zero_reg__
801 0374 B11C adc r11,__zero_reg__
802 0376 84E0 ldi r24,lo8(4)
803 0378 90E0 ldi r25,hi8(4)
804 037a 680E add r6,r24
805 037c 791E adc r7,r25
806 037e CA15 cp r28,r10
807 0380 DB05 cpc r29,r11
808 0382 0CF0 brlt .+2
809 0384 AECF rjmp .L77
810 .L79:
811 /* epilogue: frame size=0 */
812 0386 DF91 pop r29
813 0388 CF91 pop r28
814 038a 1F91 pop r17
815 038c 0F91 pop r16
816 038e FF90 pop r15
817 0390 EF90 pop r14
818 0392 DF90 pop r13
819 0394 CF90 pop r12
820 0396 BF90 pop r11
821 0398 AF90 pop r10
822 039a 9F90 pop r9
823 039c 8F90 pop r8
824 039e 7F90 pop r7
825 03a0 6F90 pop r6
826 03a2 5F90 pop r5
827 03a4 0895 ret
828 /* epilogue end (size=16) */
829 /* function glcd_circle size 134 (103) */
830 .LFE22:
832 .global glcd_putc
834 glcd_putc:
835 .LFB18:
836 .LM125:
837 /* prologue: frame size=0 */
838 03a6 1F93 push r17
839 03a8 CF93 push r28
840 /* prologue end (size=2) */
841 03aa 182F mov r17,r24
842 .LM126:
843 03ac C0E0 ldi r28,lo8(0)
844 .LM127:
845 03ae 8091 0000 lds r24,_xx
846 03b2 8C37 cpi r24,lo8(124)
847 03b4 58F0 brlo .L81
848 .LM128:
849 03b6 C093 0000 sts _xx,r28
850 .LM129:
851 03ba 8091 0000 lds r24,_yy
852 03be 8F5F subi r24,lo8(-(1))
853 03c0 8093 0000 sts _yy,r24
854 .LM130:
855 03c4 8830 cpi r24,lo8(8)
856 03c6 11F4 brne .L81
857 03c8 C093 0000 sts _yy,r28
858 .L81:
859 .LM131:
860 03cc 8091 0000 lds r24,_xx
861 03d0 8034 cpi r24,lo8(64)
862 03d2 10F4 brsh .L83
863 .LM132:
864 03d4 DC9A sbi 59-0x20,4
865 .LM133:
866 03d6 02C0 rjmp .L84
867 .L83:
868 .LM134:
869 03d8 DD9A sbi 59-0x20,5
870 .LM135:
871 03da 8054 subi r24,lo8(-(-64))
872 .L84:
873 .LBB34:
874 .LBB35:
875 .LM136:
876 03dc 8064 ori r24,lo8(64)
877 03de 0E94 0000 call glcd_wr_cmd
878 .LBE35:
879 .LBE34:
880 .LBB36:
881 .LM137:
882 03e2 8091 0000 lds r24,_yy
883 .LBB37:
884 .LM138:
885 03e6 886B ori r24,lo8(-72)
886 03e8 0E94 0000 call glcd_wr_cmd
887 .L87:
888 .LBE37:
889 .LBE36:
890 .LBB38:
891 .LM139:
892 03ec 85E0 ldi r24,lo8(5)
893 03ee 189F mul r17,r24
894 03f0 F001 movw r30,r0
895 03f2 1124 clr r1
896 03f4 EC0F add r30,r28
897 03f6 F11D adc r31,__zero_reg__
898 03f8 E050 subi r30,lo8(-(font5x7-160))
899 03fa F040 sbci r31,hi8(-(font5x7-160))
900 /* #APP */
901 03fc 8491 lpm r24, Z
902
903 /* #NOAPP */
904 .LBE38:
905 03fe 0E94 0000 call glcd_wr_data
906 .LM140:
907 0402 CF5F subi r28,lo8(-(1))
908 .LM141:
909 0404 8091 0000 lds r24,_xx
910 0408 8F5F subi r24,lo8(-(1))
911 040a 8093 0000 sts _xx,r24
912 .LM142:
913 040e 8034 cpi r24,lo8(64)
914 0410 19F4 brne .L90
915 .LM143:
916 0412 DC98 cbi 59-0x20,4
917 .LM144:
918 0414 DD9A sbi 59-0x20,5
919 0416 0FC0 rjmp .L91
920 .L90:
921 .LM145:
922 0418 8038 cpi r24,lo8(-128)
923 041a 69F4 brne .L91
924 .LM146:
925 041c DD98 cbi 59-0x20,5
926 .LM147:
927 041e DC9A sbi 59-0x20,4
928 .LM148:
929 0420 1092 0000 sts _xx,__zero_reg__
930 .LM149:
931 0424 8091 0000 lds r24,_yy
932 0428 8F5F subi r24,lo8(-(1))
933 042a 8093 0000 sts _yy,r24
934 .LM150:
935 042e 8830 cpi r24,lo8(8)
936 0430 11F4 brne .L91
937 0432 1092 0000 sts _yy,__zero_reg__
938 .L91:
939 .LM151:
940 0436 8091 0000 lds r24,_xx
941 043a 8034 cpi r24,lo8(64)
942 043c 08F0 brlo .L95
943 .LM152:
944 043e 8054 subi r24,lo8(-(-64))
945 .L95:
946 .LBB39:
947 .LBB40:
948 .LM153:
949 0440 8064 ori r24,lo8(64)
950 0442 0E94 0000 call glcd_wr_cmd
951 .LBE40:
952 .LBE39:
953 .LBB41:
954 .LM154:
955 0446 8091 0000 lds r24,_yy
956 .LBB42:
957 .LM155:
958 044a 886B ori r24,lo8(-72)
959 044c 0E94 0000 call glcd_wr_cmd
960 .LBE42:
961 .LBE41:
962 .LM156:
963 0450 C530 cpi r28,lo8(5)
964 0452 60F2 brlo .L87
965 .LM157:
966 0454 8091 0000 lds r24,_xx
967 0458 8F5F subi r24,lo8(-(1))
968 045a 8093 0000 sts _xx,r24
969 .LM158:
970 045e 8038 cpi r24,lo8(-128)
971 0460 19F4 brne .L98
972 .LM159:
973 0462 1092 0000 sts _xx,__zero_reg__
974 0466 03C0 rjmp .L99
975 .L98:
976 .LM160:
977 0468 80E0 ldi r24,lo8(0)
978 046a 0E94 0000 call glcd_wr_data
979 .L99:
980 .LM161:
981 046e DC98 cbi 59-0x20,4
982 .LM162:
983 0470 DD98 cbi 59-0x20,5
984 .LM163:
985 0472 80E0 ldi r24,lo8(0)
986 0474 0E94 0000 call glcd_start_line
987 /* epilogue: frame size=0 */
988 0478 CF91 pop r28
989 047a 1F91 pop r17
990 047c 0895 ret
991 /* epilogue end (size=3) */
992 /* function glcd_putc size 111 (106) */
993 .LFE18:
995 .global glcd_puts
997 glcd_puts:
998 .LFB17:
999 .LM164:
1000 /* prologue: frame size=0 */
1001 047e 1F93 push r17
1002 0480 CF93 push r28
1003 0482 DF93 push r29
1004 /* prologue end (size=3) */
1005 0484 EC01 movw r28,r24
1006 0486 162F mov r17,r22
1007 .LM165:
1008 0488 8881 ld r24,Y
1009 048a 8823 tst r24
1010 048c 39F0 breq .L105
1011 .L103:
1012 .LM166:
1013 048e 612F mov r22,r17
1014 0490 8991 ld r24,Y+
1015 0492 0E94 0000 call glcd_putc
1016 .LM167:
1017 0496 8881 ld r24,Y
1018 0498 8823 tst r24
1019 049a C9F7 brne .L103
1020 .L105:
1021 /* epilogue: frame size=0 */
1022 049c DF91 pop r29
1023 049e CF91 pop r28
1024 04a0 1F91 pop r17
1025 04a2 0895 ret
1026 /* epilogue end (size=4) */
1027 /* function glcd_puts size 19 (12) */
1028 .LFE17:
1030 .global glcd_init
1032 glcd_init:
1033 .LFB24:
1034 .LM168:
1035 /* prologue: frame size=0 */
1036 /* prologue end (size=0) */
1037 .LM169:
1038 04a4 17BA out 55-0x20,__zero_reg__
1039 .LM170:
1040 04a6 8EE7 ldi r24,lo8(126)
1041 04a8 8ABB out 58-0x20,r24
1042 .LM171:
1043 04aa 80E1 ldi r24,lo8(16)
1044 04ac 8BBB out 59-0x20,r24
1045 .LM172:
1046 04ae DE98 cbi 59-0x20,6
1047 .LM173:
1048 04b0 81E0 ldi r24,lo8(1)
1049 04b2 90E0 ldi r25,hi8(1)
1050 04b4 0E94 0000 call glcd_delay
1051 .LM174:
1052 04b8 DE9A sbi 59-0x20,6
1053 .LM175:
1054 04ba DC9A sbi 59-0x20,4
1055 .LM176:
1056 04bc 0E94 0000 call glcd_wait_for_reset
1057 .LM177:
1058 04c0 8FE3 ldi r24,lo8(63)
1059 04c2 0E94 0000 call glcd_wr_cmd
1060 .LM178:
1061 04c6 DC98 cbi 59-0x20,4
1062 .LM179:
1063 04c8 DD9A sbi 59-0x20,5
1064 .LM180:
1065 04ca 0E94 0000 call glcd_wait_for_reset
1066 .LM181:
1067 04ce 8FE3 ldi r24,lo8(63)
1068 04d0 0E94 0000 call glcd_wr_cmd
1069 .LM182:
1070 04d4 DD98 cbi 59-0x20,5
1071 .LM183:
1072 04d6 0E94 0000 call glcd_clrscr
1073 /* epilogue: frame size=0 */
1074 04da 0895 ret
1075 /* epilogue end (size=1) */
1076 /* function glcd_init size 28 (27) */
1077 .LFE24:
1079 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 glcd.c
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:3 *ABS*:0000003f __SREG__
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:4 *ABS*:0000003e __SP_H__
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:5 *ABS*:0000003d __SP_L__
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:23 .bss:00000000 _yy
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:29 .bss:00000001 _xx
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:35 .progmem.data:00000000 font5x7
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:54 .text:00000000 glcd_back_light_on
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:67 .text:00000002 glcd_back_light_off
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:80 .text:00000004 glcd_gotoxy
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:97 .text:0000000e glcd_line
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:110 .text:00000010 glcd_rd_data
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:143 .text:0000002c glcd_wr_data
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:178 .text:0000004e glcd_wr_cmd
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:213 .text:00000070 glcd_start_line
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:244 .text:0000008e glcd_set_y_addr
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:260 .text:00000096 glcd_set_x_addr
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:276 .text:0000009e glcd_clrscr
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:360 .text:000000f8 glcd_clr_dot
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:483 .text:00000196 glcd_set_dot
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:604 .text:00000230 glcd_rect
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:678 .text:0000029a glcd_circle
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:834 .text:000003a6 glcd_putc
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:997 .text:0000047e glcd_puts
C:\DOCUME~1\new\LOCALS~1\Temp/ccU7aaaa.s:1032 .text:000004a4 glcd_init
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
glcd_wait_for_busy
glcd_delay
glcd_wait_for_reset
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -