📄 main.lss
字号:
818: 20 97 sbiw r28, 0x00 ; 0
81a: c1 f7 brne .-16 ; 0x80c <read_rom+0x18>
*__tmp++ = pgm_read_byte(__data++);
return __p;
}
81c: ca 01 movw r24, r20
81e: df 91 pop r29
820: cf 91 pop r28
822: 1f 91 pop r17
824: 0f 91 pop r16
826: 08 95 ret
00000828 <write>:
void write(uint8_t __x, uint8_t __y,
const prog_uchar *__data, uint16_t __size)
{
828: df 92 push r13
82a: ef 92 push r14
82c: ff 92 push r15
82e: 0f 93 push r16
830: 1f 93 push r17
832: d8 2e mov r13, r24
834: e6 2e mov r14, r22
836: ca 01 movw r24, r20
838: f2 2e mov r15, r18
uint8_t *__p = read_rom(__data, __size);
83a: 62 2f mov r22, r18
83c: 73 2f mov r23, r19
83e: 0e 94 fa 03 call 0x7f4 ; 0x7f4 <read_rom>
842: 8c 01 movw r16, r24
lcd_write_data(__x, __y, __p, __size);
844: 2f 2d mov r18, r15
846: ac 01 movw r20, r24
848: 6e 2d mov r22, r14
84a: 8d 2d mov r24, r13
84c: 0e 94 d2 03 call 0x7a4 ; 0x7a4 <lcd_write_data>
free(__p);
850: c8 01 movw r24, r16
852: 0e 94 db 04 call 0x9b6 ; 0x9b6 <free>
}
856: 1f 91 pop r17
858: 0f 91 pop r16
85a: ff 90 pop r15
85c: ef 90 pop r14
85e: df 90 pop r13
860: 08 95 ret
00000862 <malloc>:
862: cf 93 push r28
864: df 93 push r29
866: bc 01 movw r22, r24
868: 82 30 cpi r24, 0x02 ; 2
86a: 91 05 cpc r25, r1
86c: 10 f4 brcc .+4 ; 0x872 <malloc+0x10>
86e: 62 e0 ldi r22, 0x02 ; 2
870: 70 e0 ldi r23, 0x00 ; 0
872: a0 91 68 00 lds r26, 0x0068
876: b0 91 69 00 lds r27, 0x0069
87a: ed 01 movw r28, r26
87c: e0 e0 ldi r30, 0x00 ; 0
87e: f0 e0 ldi r31, 0x00 ; 0
880: 40 e0 ldi r20, 0x00 ; 0
882: 50 e0 ldi r21, 0x00 ; 0
884: 21 c0 rjmp .+66 ; 0x8c8 <malloc+0x66>
886: 88 81 ld r24, Y
888: 99 81 ldd r25, Y+1 ; 0x01
88a: 86 17 cp r24, r22
88c: 97 07 cpc r25, r23
88e: 69 f4 brne .+26 ; 0x8aa <malloc+0x48>
890: 8a 81 ldd r24, Y+2 ; 0x02
892: 9b 81 ldd r25, Y+3 ; 0x03
894: 30 97 sbiw r30, 0x00 ; 0
896: 19 f0 breq .+6 ; 0x89e <malloc+0x3c>
898: 93 83 std Z+3, r25 ; 0x03
89a: 82 83 std Z+2, r24 ; 0x02
89c: 04 c0 rjmp .+8 ; 0x8a6 <malloc+0x44>
89e: 90 93 69 00 sts 0x0069, r25
8a2: 80 93 68 00 sts 0x0068, r24
8a6: fe 01 movw r30, r28
8a8: 34 c0 rjmp .+104 ; 0x912 <malloc+0xb0>
8aa: 68 17 cp r22, r24
8ac: 79 07 cpc r23, r25
8ae: 38 f4 brcc .+14 ; 0x8be <malloc+0x5c>
8b0: 41 15 cp r20, r1
8b2: 51 05 cpc r21, r1
8b4: 19 f0 breq .+6 ; 0x8bc <malloc+0x5a>
8b6: 84 17 cp r24, r20
8b8: 95 07 cpc r25, r21
8ba: 08 f4 brcc .+2 ; 0x8be <malloc+0x5c>
8bc: ac 01 movw r20, r24
8be: fe 01 movw r30, r28
8c0: 8a 81 ldd r24, Y+2 ; 0x02
8c2: 9b 81 ldd r25, Y+3 ; 0x03
8c4: 9c 01 movw r18, r24
8c6: e9 01 movw r28, r18
8c8: 20 97 sbiw r28, 0x00 ; 0
8ca: e9 f6 brne .-70 ; 0x886 <malloc+0x24>
8cc: 41 15 cp r20, r1
8ce: 51 05 cpc r21, r1
8d0: a9 f1 breq .+106 ; 0x93c <malloc+0xda>
8d2: ca 01 movw r24, r20
8d4: 86 1b sub r24, r22
8d6: 97 0b sbc r25, r23
8d8: 04 97 sbiw r24, 0x04 ; 4
8da: 08 f4 brcc .+2 ; 0x8de <malloc+0x7c>
8dc: ba 01 movw r22, r20
8de: e0 e0 ldi r30, 0x00 ; 0
8e0: f0 e0 ldi r31, 0x00 ; 0
8e2: 2a c0 rjmp .+84 ; 0x938 <malloc+0xd6>
8e4: 8d 91 ld r24, X+
8e6: 9c 91 ld r25, X
8e8: 11 97 sbiw r26, 0x01 ; 1
8ea: 84 17 cp r24, r20
8ec: 95 07 cpc r25, r21
8ee: f9 f4 brne .+62 ; 0x92e <malloc+0xcc>
8f0: 64 17 cp r22, r20
8f2: 75 07 cpc r23, r21
8f4: 81 f4 brne .+32 ; 0x916 <malloc+0xb4>
8f6: 12 96 adiw r26, 0x02 ; 2
8f8: 8d 91 ld r24, X+
8fa: 9c 91 ld r25, X
8fc: 13 97 sbiw r26, 0x03 ; 3
8fe: 30 97 sbiw r30, 0x00 ; 0
900: 19 f0 breq .+6 ; 0x908 <malloc+0xa6>
902: 93 83 std Z+3, r25 ; 0x03
904: 82 83 std Z+2, r24 ; 0x02
906: 04 c0 rjmp .+8 ; 0x910 <malloc+0xae>
908: 90 93 69 00 sts 0x0069, r25
90c: 80 93 68 00 sts 0x0068, r24
910: fd 01 movw r30, r26
912: 32 96 adiw r30, 0x02 ; 2
914: 4c c0 rjmp .+152 ; 0x9ae <malloc+0x14c>
916: ca 01 movw r24, r20
918: 86 1b sub r24, r22
91a: 97 0b sbc r25, r23
91c: fd 01 movw r30, r26
91e: e8 0f add r30, r24
920: f9 1f adc r31, r25
922: 61 93 st Z+, r22
924: 71 93 st Z+, r23
926: 02 97 sbiw r24, 0x02 ; 2
928: 8d 93 st X+, r24
92a: 9c 93 st X, r25
92c: 40 c0 rjmp .+128 ; 0x9ae <malloc+0x14c>
92e: fd 01 movw r30, r26
930: 82 81 ldd r24, Z+2 ; 0x02
932: 93 81 ldd r25, Z+3 ; 0x03
934: 9c 01 movw r18, r24
936: d9 01 movw r26, r18
938: 10 97 sbiw r26, 0x00 ; 0
93a: a1 f6 brne .-88 ; 0x8e4 <malloc+0x82>
93c: 80 91 66 00 lds r24, 0x0066
940: 90 91 67 00 lds r25, 0x0067
944: 89 2b or r24, r25
946: 41 f4 brne .+16 ; 0x958 <malloc+0xf6>
948: 80 91 62 00 lds r24, 0x0062
94c: 90 91 63 00 lds r25, 0x0063
950: 90 93 67 00 sts 0x0067, r25
954: 80 93 66 00 sts 0x0066, r24
958: 40 91 64 00 lds r20, 0x0064
95c: 50 91 65 00 lds r21, 0x0065
960: 41 15 cp r20, r1
962: 51 05 cpc r21, r1
964: 41 f4 brne .+16 ; 0x976 <malloc+0x114>
966: 4d b7 in r20, 0x3d ; 61
968: 5e b7 in r21, 0x3e ; 62
96a: 80 91 60 00 lds r24, 0x0060
96e: 90 91 61 00 lds r25, 0x0061
972: 48 1b sub r20, r24
974: 59 0b sbc r21, r25
976: 20 91 66 00 lds r18, 0x0066
97a: 30 91 67 00 lds r19, 0x0067
97e: ca 01 movw r24, r20
980: 82 1b sub r24, r18
982: 93 0b sbc r25, r19
984: 86 17 cp r24, r22
986: 97 07 cpc r25, r23
988: 80 f0 brcs .+32 ; 0x9aa <malloc+0x148>
98a: ab 01 movw r20, r22
98c: 4e 5f subi r20, 0xFE ; 254
98e: 5f 4f sbci r21, 0xFF ; 255
990: 84 17 cp r24, r20
992: 95 07 cpc r25, r21
994: 50 f0 brcs .+20 ; 0x9aa <malloc+0x148>
996: 42 0f add r20, r18
998: 53 1f adc r21, r19
99a: 50 93 67 00 sts 0x0067, r21
99e: 40 93 66 00 sts 0x0066, r20
9a2: f9 01 movw r30, r18
9a4: 61 93 st Z+, r22
9a6: 71 93 st Z+, r23
9a8: 02 c0 rjmp .+4 ; 0x9ae <malloc+0x14c>
9aa: e0 e0 ldi r30, 0x00 ; 0
9ac: f0 e0 ldi r31, 0x00 ; 0
9ae: cf 01 movw r24, r30
9b0: df 91 pop r29
9b2: cf 91 pop r28
9b4: 08 95 ret
000009b6 <free>:
9b6: cf 93 push r28
9b8: df 93 push r29
9ba: 00 97 sbiw r24, 0x00 ; 0
9bc: 09 f4 brne .+2 ; 0x9c0 <free+0xa>
9be: 50 c0 rjmp .+160 ; 0xa60 <free+0xaa>
9c0: ec 01 movw r28, r24
9c2: 22 97 sbiw r28, 0x02 ; 2
9c4: 1b 82 std Y+3, r1 ; 0x03
9c6: 1a 82 std Y+2, r1 ; 0x02
9c8: a0 91 68 00 lds r26, 0x0068
9cc: b0 91 69 00 lds r27, 0x0069
9d0: 10 97 sbiw r26, 0x00 ; 0
9d2: 09 f1 breq .+66 ; 0xa16 <free+0x60>
9d4: 40 e0 ldi r20, 0x00 ; 0
9d6: 50 e0 ldi r21, 0x00 ; 0
9d8: ac 17 cp r26, r28
9da: bd 07 cpc r27, r29
9dc: 08 f1 brcs .+66 ; 0xa20 <free+0x6a>
9de: bb 83 std Y+3, r27 ; 0x03
9e0: aa 83 std Y+2, r26 ; 0x02
9e2: fe 01 movw r30, r28
9e4: 21 91 ld r18, Z+
9e6: 31 91 ld r19, Z+
9e8: e2 0f add r30, r18
9ea: f3 1f adc r31, r19
9ec: ae 17 cp r26, r30
9ee: bf 07 cpc r27, r31
9f0: 79 f4 brne .+30 ; 0xa10 <free+0x5a>
9f2: 8d 91 ld r24, X+
9f4: 9c 91 ld r25, X
9f6: 11 97 sbiw r26, 0x01 ; 1
9f8: 28 0f add r18, r24
9fa: 39 1f adc r19, r25
9fc: 2e 5f subi r18, 0xFE ; 254
9fe: 3f 4f sbci r19, 0xFF ; 255
a00: 39 83 std Y+1, r19 ; 0x01
a02: 28 83 st Y, r18
a04: 12 96 adiw r26, 0x02 ; 2
a06: 8d 91 ld r24, X+
a08: 9c 91 ld r25, X
a0a: 13 97 sbiw r26, 0x03 ; 3
a0c: 9b 83 std Y+3, r25 ; 0x03
a0e: 8a 83 std Y+2, r24 ; 0x02
a10: 41 15 cp r20, r1
a12: 51 05 cpc r21, r1
a14: 71 f4 brne .+28 ; 0xa32 <free+0x7c>
a16: d0 93 69 00 sts 0x0069, r29
a1a: c0 93 68 00 sts 0x0068, r28
a1e: 20 c0 rjmp .+64 ; 0xa60 <free+0xaa>
a20: 12 96 adiw r26, 0x02 ; 2
a22: 8d 91 ld r24, X+
a24: 9c 91 ld r25, X
a26: 13 97 sbiw r26, 0x03 ; 3
a28: ad 01 movw r20, r26
a2a: 00 97 sbiw r24, 0x00 ; 0
a2c: 11 f0 breq .+4 ; 0xa32 <free+0x7c>
a2e: dc 01 movw r26, r24
a30: d3 cf rjmp .-90 ; 0x9d8 <free+0x22>
a32: fa 01 movw r30, r20
a34: d3 83 std Z+3, r29 ; 0x03
a36: c2 83 std Z+2, r28 ; 0x02
a38: 21 91 ld r18, Z+
a3a: 31 91 ld r19, Z+
a3c: e2 0f add r30, r18
a3e: f3 1f adc r31, r19
a40: ce 17 cp r28, r30
a42: df 07 cpc r29, r31
a44: 69 f4 brne .+26 ; 0xa60 <free+0xaa>
a46: 88 81 ld r24, Y
a48: 99 81 ldd r25, Y+1 ; 0x01
a4a: 28 0f add r18, r24
a4c: 39 1f adc r19, r25
a4e: 2e 5f subi r18, 0xFE ; 254
a50: 3f 4f sbci r19, 0xFF ; 255
a52: fa 01 movw r30, r20
a54: 31 83 std Z+1, r19 ; 0x01
a56: 20 83 st Z, r18
a58: 8a 81 ldd r24, Y+2 ; 0x02
a5a: 9b 81 ldd r25, Y+3 ; 0x03
a5c: 93 83 std Z+3, r25 ; 0x03
a5e: 82 83 std Z+2, r24 ; 0x02
a60: df 91 pop r29
a62: cf 91 pop r28
a64: 08 95 ret
00000a66 <_exit>:
a66: f8 94 cli
00000a68 <__stop_program>:
a68: ff cf rjmp .-2 ; 0xa68 <__stop_program>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -