Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
111 | mikeljo | 1 | 1 .file "display.c" |
2 | 2 .arch atmega32 |
||
3 | 3 __SREG__ = 0x3f |
||
4 | 4 __SP_H__ = 0x3e |
||
5 | 5 __SP_L__ = 0x3d |
||
6 | 6 __tmp_reg__ = 0 |
||
7 | 7 __zero_reg__ = 1 |
||
8 | 8 .global __do_copy_data |
||
9 | 9 .global __do_clear_bss |
||
10 | 17 .Ltext0: |
||
11 | 18 .global read_display |
||
12 | 20 read_display: |
||
13 | 21 .LFB4: |
||
14 | 22 .LM1: |
||
15 | 23 /* prologue: frame size=0 */ |
||
16 | 24 0000 CF93 push r28 |
||
17 | 25 /* prologue end (size=1) */ |
||
18 | 26 .LM2: |
||
19 | 27 0002 C0E0 ldi r28,lo8(0) |
||
20 | 28 .LM3: |
||
21 | 29 0004 93E2 ldi r25,lo8(35) |
||
22 | 30 0006 9093 0000 sts p_buffer,r25 |
||
23 | 31 .LM4: |
||
24 | 32 000a 91E6 ldi r25,lo8(97) |
||
25 | 33 000c 9093 0000 sts p_buffer+1,r25 |
||
26 | 34 .LM5: |
||
27 | 35 0010 98E6 ldi r25,lo8(104) |
||
28 | 36 0012 9093 0000 sts p_buffer+2,r25 |
||
29 | 37 .LM6: |
||
30 | 38 0016 8093 0000 sts p_buffer+3,r24 |
||
31 | 39 .LM7: |
||
32 | 40 001a C093 0000 sts p_buffer+4,r28 |
||
33 | 41 .LM8: |
||
34 | 42 001e C093 0000 sts p_buffer+5,r28 |
||
35 | 43 .LM9: |
||
36 | 44 0022 86E0 ldi r24,lo8(6) |
||
37 | 45 0024 0E94 0000 call base64_send |
||
38 | 46 .L2: |
||
39 | 47 .LM10: |
||
40 | 48 0028 0E94 0000 call get_message |
||
41 | 49 002c 8130 cpi r24,lo8(1) |
||
42 | 50 002e 09F4 brne .L5 |
||
43 | 51 .LM11: |
||
44 | 52 0030 CAE0 ldi r28,lo8(10) |
||
45 | 53 .L5: |
||
46 | 54 .LM12: |
||
47 | 55 0032 CF5F subi r28,lo8(-(1)) |
||
48 | 56 .LM13: |
||
49 | 57 0034 8091 0000 lds r24,r_buffer+1 |
||
50 | 58 0038 8053 subi r24,lo8(-(-48)) |
||
51 | 59 003a 8530 cpi r24,lo8(5) |
||
52 | 60 003c 10F0 brlo .L3 |
||
53 | 61 003e CA30 cpi r28,lo8(10) |
||
54 | 62 0040 98F3 brlo .L2 |
||
55 | 63 .L3: |
||
56 | 64 .LM14: |
||
57 | 65 0042 CA30 cpi r28,lo8(10) |
||
58 | 66 0044 18F0 brlo .L6 |
||
59 | 67 .LM15: |
||
60 | 68 0046 81E0 ldi r24,lo8(1) |
||
61 | 69 0048 90E0 ldi r25,hi8(1) |
||
62 | 70 004a 02C0 rjmp .L1 |
||
63 | 71 .L6: |
||
64 | 72 .LM16: |
||
65 | 73 004c 80E0 ldi r24,lo8(0) |
||
66 | 74 004e 90E0 ldi r25,hi8(0) |
||
67 | 75 .L1: |
||
68 | 76 /* epilogue: frame size=0 */ |
||
69 | 77 0050 CF91 pop r28 |
||
70 | 78 0052 0895 ret |
||
71 | 79 /* epilogue end (size=2) */ |
||
72 | 80 /* function read_display size 42 (39) */ |
||
73 | 81 .LFE4: |
||
74 | 83 .section .progmem.data,"a",@progbits |
||
75 | 86 __c.0: |
||
76 | 87 0000 4469 7370 .string "Display" |
||
77 | 87 6C61 7900 |
||
78 | 90 __c.1: |
||
79 | 91 0008 0D0A 5469 .string "\r\nTimeout!" |
||
80 | 91 6D65 6F75 |
||
81 | 91 7421 00 |
||
82 | 92 .text |
||
83 | 93 .global display_data |
||
84 | 95 display_data: |
||
85 | 96 .LFB5: |
||
86 | 97 .LM17: |
||
87 | 98 /* prologue: frame size=10 */ |
||
88 | 99 0054 0F93 push r16 |
||
89 | 100 0056 1F93 push r17 |
||
90 | 101 0058 CF93 push r28 |
||
91 | 102 005a DF93 push r29 |
||
92 | 103 005c CDB7 in r28,__SP_L__ |
||
93 | 104 005e DEB7 in r29,__SP_H__ |
||
94 | 105 0060 2A97 sbiw r28,10 |
||
95 | 106 0062 0FB6 in __tmp_reg__,__SREG__ |
||
96 | 107 0064 F894 cli |
||
97 | 108 0066 DEBF out __SP_H__,r29 |
||
98 | 109 0068 0FBE out __SREG__,__tmp_reg__ |
||
99 | 110 006a CDBF out __SP_L__,r28 |
||
100 | 111 /* prologue end (size=12) */ |
||
101 | 112 .LM18: |
||
102 | 113 006c 0E94 0000 call lcd_cls |
||
103 | 114 .LM19: |
||
104 | 115 0070 60E0 ldi r22,lo8(0) |
||
105 | 116 0072 80E0 ldi r24,lo8(__c.0) |
||
106 | 117 0074 90E0 ldi r25,hi8(__c.0) |
||
107 | 118 0076 0E94 0000 call lcd_printp |
||
108 | 119 .L28: |
||
109 | 120 .LM20: |
||
110 | 121 007a 0091 0000 lds r16,key |
||
111 | 122 007e 0023 tst r16 |
||
112 | 123 0080 E1F7 brne .L28 |
||
113 | 124 .LM21: |
||
114 | 125 0082 802F mov r24,r16 |
||
115 | 126 0084 0E94 0000 call read_display |
||
116 | 127 0088 8130 cpi r24,lo8(1) |
||
117 | 128 008a 69F4 brne .L15 |
||
118 | 129 .LM22: |
||
119 | 130 008c 602F mov r22,r16 |
||
120 | 131 008e 80E0 ldi r24,lo8(__c.1) |
||
121 | 132 0090 90E0 ldi r25,hi8(__c.1) |
||
122 | 133 0092 0E94 0000 call lcd_printp |
||
123 | 134 .LM23: |
||
124 | 135 0096 88EC ldi r24,lo8(-56) |
||
125 | 136 0098 8093 0000 sts timer,r24 |
||
126 | 137 .L16: |
||
127 | 138 .LM24: |
||
128 | 139 009c 8091 0000 lds r24,timer |
||
129 | 140 00a0 8823 tst r24 |
||
130 | 141 00a2 E1F7 brne .L16 |
||
131 | 142 .LM25: |
||
132 | 143 00a4 2CC0 rjmp .L10 |
||
133 | 144 .L15: |
||
134 | 145 .LM26: |
||
135 | 146 00a6 1091 0000 lds r17,r_buffer+1 |
||
136 | 147 .LM27: |
||
137 | 148 00aa 1983 std Y+1,r17 |
||
138 | 149 .LM28: |
||
139 | 150 00ac 0A83 std Y+2,r16 |
||
140 | 151 .LM29: |
||
141 | 152 00ae 202F mov r18,r16 |
||
142 | 153 00b0 AE01 movw r20,r28 |
||
143 | 154 00b2 4F5F subi r20,lo8(-(1)) |
||
144 | 155 00b4 5F4F sbci r21,hi8(-(1)) |
||
145 | 156 00b6 602F mov r22,r16 |
||
146 | 157 00b8 8AE0 ldi r24,lo8(10) |
||
147 | 158 00ba 0E94 0000 call lcd_print_at |
||
148 | 159 .LM30: |
||
149 | 160 00be 1F5F subi r17,lo8(-(1)) |
||
150 | 161 00c0 202F mov r18,r16 |
||
151 | 162 00c2 40E0 ldi r20,lo8(p_buffer) |
||
152 | 163 00c4 50E0 ldi r21,hi8(p_buffer) |
||
153 | 164 00c6 612F mov r22,r17 |
||
154 | 165 00c8 802F mov r24,r16 |
||
155 | 166 00ca 0E94 0000 call lcd_print_at |
||
156 | 167 .LM31: |
||
157 | 168 00ce 8AE0 ldi r24,lo8(10) |
||
158 | 169 00d0 8093 0000 sts timer,r24 |
||
159 | 170 .L20: |
||
160 | 171 .LM32: |
||
161 | 172 00d4 8091 0000 lds r24,timer |
||
162 | 173 00d8 8823 tst r24 |
||
163 | 174 00da E1F7 brne .L20 |
||
164 | 175 .LM33: |
||
165 | 176 00dc 8091 0000 lds r24,key |
||
166 | 177 00e0 8130 cpi r24,lo8(1) |
||
167 | 178 00e2 11F4 brne .L23 |
||
168 | 179 .LM34: |
||
169 | 180 00e4 0E94 0000 call read_display |
||
170 | 181 .L23: |
||
171 | 182 .LM35: |
||
172 | 183 00e8 8091 0000 lds r24,key |
||
173 | 184 00ec 8230 cpi r24,lo8(2) |
||
174 | 185 00ee 11F4 brne .L11 |
||
175 | 186 .LM36: |
||
176 | 187 00f0 0E94 0000 call read_display |
||
177 | 188 .L11: |
||
178 | 189 .LM37: |
||
179 | 190 00f4 8091 0000 lds r24,key |
||
180 | 191 00f8 8430 cpi r24,lo8(4) |
||
181 | 192 00fa 09F0 breq .+2 |
||
182 | 193 00fc BECF rjmp .L28 |
||
183 | 194 .L10: |
||
184 | 195 /* epilogue: frame size=10 */ |
||
185 | 196 00fe 2A96 adiw r28,10 |
||
186 | 197 0100 0FB6 in __tmp_reg__,__SREG__ |
||
187 | 198 0102 F894 cli |
||
188 | 199 0104 DEBF out __SP_H__,r29 |
||
189 | 200 0106 0FBE out __SREG__,__tmp_reg__ |
||
190 | 201 0108 CDBF out __SP_L__,r28 |
||
191 | 202 010a DF91 pop r29 |
||
192 | 203 010c CF91 pop r28 |
||
193 | 204 010e 1F91 pop r17 |
||
194 | 205 0110 0F91 pop r16 |
||
195 | 206 0112 0895 ret |
||
196 | 207 /* epilogue end (size=11) */ |
||
197 | 208 /* function display_data size 96 (73) */ |
||
198 | 209 .LFE5: |
||
199 | 211 .comm r_buffer,128,1 |
||
200 | 212 .comm p_buffer,128,1 |
||
201 | 213 .comm display_buffer,1024,1 |
||
202 | 214 .comm display_buffer_pointer,2,1 |
||
203 | 215 .comm display_buffer_counter,1,1 |
||
204 | 216 .comm display_page_counter,1,1 |
||
205 | 217 .comm display_mode,1,1 |
||
206 | 218 .Letext0: |
||
207 | DEFINED SYMBOLS |
||
208 | *ABS*:00000000 display.c |
||
209 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:3 *ABS*:0000003f __SREG__ |
||
210 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:4 *ABS*:0000003e __SP_H__ |
||
211 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:5 *ABS*:0000003d __SP_L__ |
||
212 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:6 *ABS*:00000000 __tmp_reg__ |
||
213 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:7 *ABS*:00000001 __zero_reg__ |
||
214 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:20 .text:00000000 read_display |
||
215 | *COM*:00000080 p_buffer |
||
216 | *COM*:00000080 r_buffer |
||
217 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:86 .progmem.data:00000000 __c.0 |
||
218 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:90 .progmem.data:00000008 __c.1 |
||
219 | C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:95 .text:00000054 display_data |
||
220 | *COM*:00000400 display_buffer |
||
221 | *COM*:00000002 display_buffer_pointer |
||
222 | *COM*:00000001 display_buffer_counter |
||
223 | *COM*:00000001 display_page_counter |
||
224 | *COM*:00000001 display_mode |
||
225 | |||
226 | UNDEFINED SYMBOLS |
||
227 | __do_copy_data |
||
228 | __do_clear_bss |
||
229 | base64_send |
||
230 | get_message |
||
231 | lcd_cls |
||
232 | lcd_printp |
||
233 | key |
||
234 | timer |
||
235 | lcd_print_at |