Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
93 salvo 1
   1               		.file	"uart.c"
2
   2               		.arch atmega644
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
  10               		.text
11
  11               	.global	__vector_22
12
  13               	__vector_22:
13
  14               	/* prologue: frame size=0 */
14
  15 0000 1F92      		push __zero_reg__
15
  16 0002 0F92      		push __tmp_reg__
16
  17 0004 0FB6      		in __tmp_reg__,__SREG__
17
  18 0006 0F92      		push __tmp_reg__
18
  19 0008 1124      		clr __zero_reg__
19
  20 000a 8F93      		push r24
20
  21 000c 9F93      		push r25
21
  22 000e EF93      		push r30
22
  23 0010 FF93      		push r31
23
  24               	/* prologue end (size=9) */
24
  25 0012 8091 0000 		lds r24,UebertragungAbgeschlossen
25
  26 0016 8823      		tst r24
26
  27 0018 01F4      		brne .L2
27
  28 001a 8091 0000 		lds r24,ptr.1956
28
  29 001e 9091 0000 		lds r25,(ptr.1956)+1
29
  30 0022 0196      		adiw r24,1
30
  31 0024 9093 0000 		sts (ptr.1956)+1,r25
31
  32 0028 8093 0000 		sts ptr.1956,r24
32
  33 002c FC01      		movw r30,r24
33
  34 002e E050      		subi r30,lo8(-(SendeBuffer))
34
  35 0030 F040      		sbci r31,hi8(-(SendeBuffer))
35
  36 0032 E081      		ld r30,Z
36
  37 0034 ED30      		cpi r30,lo8(13)
37
  38 0036 01F0      		breq .L4
38
  39 0038 8639      		cpi r24,150
39
  40 003a 9105      		cpc r25,__zero_reg__
40
  41 003c 01F4      		brne .L6
41
  42               	.L4:
42
  43 003e 1092 0000 		sts (ptr.1956)+1,__zero_reg__
43
  44 0042 1092 0000 		sts ptr.1956,__zero_reg__
44
  45 0046 81E0      		ldi r24,lo8(1)
45
  46 0048 8093 0000 		sts UebertragungAbgeschlossen,r24
46
  47               	.L6:
47
  48 004c E093 C600 		sts 198,r30
48
  49 0050 00C0      		rjmp .L8
49
  50               	.L2:
50
  51 0052 1092 0000 		sts (ptr.1956)+1,__zero_reg__
51
  52 0056 1092 0000 		sts ptr.1956,__zero_reg__
52
  53               	.L8:
53
  54               	/* epilogue: frame size=0 */
54
  55 005a FF91      		pop r31
55
  56 005c EF91      		pop r30
56
  57 005e 9F91      		pop r25
57
  58 0060 8F91      		pop r24
58
  59 0062 0F90      		pop __tmp_reg__
59
  60 0064 0FBE      		out __SREG__,__tmp_reg__
60
  61 0066 0F90      		pop __tmp_reg__
61
  62 0068 1F90      		pop __zero_reg__
62
  63 006a 1895      		reti
63
  64               	/* epilogue end (size=9) */
64
  65               	/* function __vector_22 size 54 (36) */
65
  67               	.global	__vector_20
66
  69               	__vector_20:
67
  70               	/* prologue: frame size=0 */
68
  71 006c 1F92      		push __zero_reg__
69
  72 006e 0F92      		push __tmp_reg__
70
  73 0070 0FB6      		in __tmp_reg__,__SREG__
71
  74 0072 0F92      		push __tmp_reg__
72
  75 0074 1124      		clr __zero_reg__
73
  76 0076 2F93      		push r18
74
  77 0078 3F93      		push r19
75
  78 007a 4F93      		push r20
76
  79 007c 8F93      		push r24
77
  80 007e 9F93      		push r25
78
  81 0080 AF93      		push r26
79
  82 0082 BF93      		push r27
80
  83 0084 CF93      		push r28
81
  84 0086 DF93      		push r29
82
  85 0088 EF93      		push r30
83
  86 008a FF93      		push r31
84
  87               	/* prologue end (size=16) */
85
  88 008c 8091 C600 		lds r24,198
86
  89 0090 8093 0000 		sts SioTmp,r24
87
  90 0094 4091 0000 		lds r20,buf_ptr.1972
88
  91 0098 4639      		cpi r20,lo8(-106)
89
  92 009a 00F0      		brlo .L10
90
  93 009c 1092 0000 		sts UartState.1973,__zero_reg__
91
  94               	.L10:
92
  95 00a0 8091 0000 		lds r24,SioTmp
93
  96 00a4 8D30      		cpi r24,lo8(13)
94
  97 00a6 01F0      		breq .+2
95
  98 00a8 00C0      		rjmp .L12
96
  99 00aa 8091 0000 		lds r24,UartState.1973
97
 100 00ae 8230      		cpi r24,lo8(2)
98
 101 00b0 01F0      		breq .+2
99
 102 00b2 00C0      		rjmp .L12
100
 103 00b4 1092 0000 		sts UartState.1973,__zero_reg__
101
 104 00b8 A42F      		mov r26,r20
102
 105 00ba BB27      		clr r27
103
 106 00bc FD01      		movw r30,r26
104
 107 00be E050      		subi r30,lo8(-(RxdBuffer-2))
105
 108 00c0 F040      		sbci r31,hi8(-(RxdBuffer-2))
106
 109 00c2 3081      		ld r19,Z
107
 110 00c4 ED01      		movw r28,r26
108
 111 00c6 C050      		subi r28,lo8(-(RxdBuffer-1))
109
 112 00c8 D040      		sbci r29,hi8(-(RxdBuffer-1))
110
 113 00ca 2881      		ld r18,Y
111
 114 00cc 8091 0000 		lds r24,crc.1969
112
 115 00d0 9091 0000 		lds r25,(crc.1969)+1
113
 116 00d4 831B      		sub r24,r19
114
 117 00d6 9109      		sbc r25,__zero_reg__
115
 118 00d8 821B      		sub r24,r18
116
 119 00da 9109      		sbc r25,__zero_reg__
117
 120 00dc 9F70      		andi r25,hi8(4095)
118
 121 00de 9093 0000 		sts (crc.1969)+1,r25
119
 122 00e2 8093 0000 		sts crc.1969,r24
120
 123 00e6 9C01      		movw r18,r24
121
 124 00e8 96E0      		ldi r25,6
122
 125 00ea 3695      	1:	lsr r19
123
 126 00ec 2795      		ror r18
124
 127 00ee 9A95      		dec r25
125
 128 00f0 01F4      		brne 1b
126
 129 00f2 235C      		subi r18,lo8(-(61))
127
 130 00f4 2093 0000 		sts crc1.1970,r18
128
 131 00f8 982F      		mov r25,r24
129
 132 00fa 9F73      		andi r25,lo8(63)
130
 133 00fc 935C      		subi r25,lo8(-(61))
131
 134 00fe 9093 0000 		sts crc2.1971,r25
132
 135 0102 8081      		ld r24,Z
133
 136 0104 2817      		cp r18,r24
134
 137 0106 01F4      		brne .L15
135
 138 0108 8881      		ld r24,Y
136
 139 010a 9817      		cp r25,r24
137
 140 010c 01F4      		brne .L15
138
 141 010e 91E0      		ldi r25,lo8(1)
139
 142 0110 00C0      		rjmp .L18
140
 143               	.L15:
141
 144 0112 8091 0000 		lds r24,CntCrcError
142
 145 0116 8F5F      		subi r24,lo8(-(1))
143
 146 0118 8093 0000 		sts CntCrcError,r24
144
 147 011c 90E0      		ldi r25,lo8(0)
145
 148               	.L18:
146
 149 011e 8091 0000 		lds r24,NeuerDatensatzEmpfangen
147
 150 0122 8823      		tst r24
148
 151 0124 01F0      		breq .+2
149
 152 0126 00C0      		rjmp .L33
150
 153 0128 9923      		tst r25
151
 154 012a 01F4      		brne .+2
152
 155 012c 00C0      		rjmp .L33
153
 156 012e 81E0      		ldi r24,lo8(1)
154
 157 0130 8093 0000 		sts NeuerDatensatzEmpfangen,r24
155
 158 0134 4093 0000 		sts AnzahlEmpfangsBytes,r20
156
 159 0138 A050      		subi r26,lo8(-(RxdBuffer))
157
 160 013a B040      		sbci r27,hi8(-(RxdBuffer))
158
 161 013c 8DE0      		ldi r24,lo8(13)
159
 162 013e 8C93      		st X,r24
160
 163 0140 8091 0000 		lds r24,RxdBuffer+2
161
 164 0144 8235      		cpi r24,lo8(82)
162
 165 0146 01F0      		breq .+2
163
 166 0148 00C0      		rjmp .L33
164
 167 014a 88E1      		ldi r24,lo8(24)
165
 168 014c 90E0      		ldi r25,hi8(24)
166
 169 014e 2CE0      		ldi r18,lo8(12)
167
 170               	/* #APP */
168
 171 0150 0FB6      		in __tmp_reg__,__SREG__
169
 172 0152 F894      		cli
170
 173 0154 A895      		wdr
171
 174 0156 8093 6000 		sts 96,r24
172
 175 015a 0FBE      		out __SREG__,__tmp_reg__
173
 176 015c 2093 6000 		sts 96,r18
174
 177               	/* #NOAPP */
175
 178 0160 00C0      		rjmp .L33
176
 179               	.L12:
177
 180 0162 8091 0000 		lds r24,UartState.1973
178
 181 0166 8130      		cpi r24,lo8(1)
179
 182 0168 01F0      		breq .L25
180
 183 016a 8130      		cpi r24,lo8(1)
181
 184 016c 00F0      		brlo .L24
182
 185 016e 8230      		cpi r24,lo8(2)
183
 186 0170 01F4      		brne .L34
184
 187 0172 00C0      		rjmp .L26
185
 188               	.L24:
186
 189 0174 8091 0000 		lds r24,SioTmp
187
 190 0178 8332      		cpi r24,lo8(35)
188
 191 017a 01F4      		brne .L27
189
 192 017c 8091 0000 		lds r24,NeuerDatensatzEmpfangen
190
 193 0180 8823      		tst r24
191
 194 0182 01F4      		brne .L27
192
 195 0184 81E0      		ldi r24,lo8(1)
193
 196 0186 8093 0000 		sts UartState.1973,r24
194
 197               	.L27:
195
 198 018a 8091 0000 		lds r24,SioTmp
196
 199 018e 8093 0000 		sts RxdBuffer,r24
197
 200 0192 81E0      		ldi r24,lo8(1)
198
 201 0194 8093 0000 		sts buf_ptr.1972,r24
199
 202 0198 8091 0000 		lds r24,SioTmp
200
 203 019c 9927      		clr r25
201
 204 019e 00C0      		rjmp .L35
202
 205               	.L25:
203
 206 01a0 82E0      		ldi r24,lo8(2)
204
 207 01a2 8093 0000 		sts UartState.1973,r24
205
 208 01a6 E42F      		mov r30,r20
206
 209 01a8 FF27      		clr r31
207
 210 01aa 8091 0000 		lds r24,SioTmp
208
 211 01ae E050      		subi r30,lo8(-(RxdBuffer))
209
 212 01b0 F040      		sbci r31,hi8(-(RxdBuffer))
210
 213 01b2 8083      		st Z,r24
211
 214               	.L37:
212
 215 01b4 4F5F      		subi r20,lo8(-(1))
213
 216 01b6 4093 0000 		sts buf_ptr.1972,r20
214
 217               	.L36:
215
 218 01ba 2091 0000 		lds r18,SioTmp
216
 219 01be 8091 0000 		lds r24,crc.1969
217
 220 01c2 9091 0000 		lds r25,(crc.1969)+1
218
 221 01c6 820F      		add r24,r18
219
 222 01c8 911D      		adc r25,__zero_reg__
220
 223               	.L35:
221
 224 01ca 9093 0000 		sts (crc.1969)+1,r25
222
 225 01ce 8093 0000 		sts crc.1969,r24
223
 226 01d2 00C0      		rjmp .L33
224
 227               	.L26:
225
 228 01d4 E42F      		mov r30,r20
226
 229 01d6 FF27      		clr r31
227
 230 01d8 8091 0000 		lds r24,SioTmp
228
 231 01dc E050      		subi r30,lo8(-(RxdBuffer))
229
 232 01de F040      		sbci r31,hi8(-(RxdBuffer))
230
 233 01e0 8083      		st Z,r24
231
 234 01e2 4639      		cpi r20,lo8(-106)
232
 235 01e4 00F0      		brlo .L37
233
 236 01e6 1092 0000 		sts UartState.1973,__zero_reg__
234
 237 01ea 00C0      		rjmp .L36
235
 238               	.L34:
236
 239 01ec 1092 0000 		sts UartState.1973,__zero_reg__
237
 240               	.L33:
238
 241               	/* epilogue: frame size=0 */
239
 242 01f0 FF91      		pop r31
240
 243 01f2 EF91      		pop r30
241
 244 01f4 DF91      		pop r29
242
 245 01f6 CF91      		pop r28
243
 246 01f8 BF91      		pop r27
244
 247 01fa AF91      		pop r26
245
 248 01fc 9F91      		pop r25
246
 249 01fe 8F91      		pop r24
247
 250 0200 4F91      		pop r20
248
 251 0202 3F91      		pop r19
249
 252 0204 2F91      		pop r18
250
 253 0206 0F90      		pop __tmp_reg__
251
 254 0208 0FBE      		out __SREG__,__tmp_reg__
252
 255 020a 0F90      		pop __tmp_reg__
253
 256 020c 1F90      		pop __zero_reg__
254
 257 020e 1895      		reti
255
 258               	/* epilogue end (size=16) */
256
 259               	/* function __vector_20 size 215 (183) */
257
 261               	.global	AddCRC
258
 263               	AddCRC:
259
 264               	/* prologue: frame size=0 */
260
 265               	/* prologue end (size=0) */
261
 266 0210 DC01      		movw r26,r24
262
 267 0212 20E0      		ldi r18,lo8(0)
263
 268 0214 30E0      		ldi r19,hi8(0)
264
 269 0216 40E0      		ldi r20,lo8(0)
265
 270 0218 50E0      		ldi r21,hi8(0)
266
 271 021a E0E0      		ldi r30,lo8(SendeBuffer)
267
 272 021c F0E0      		ldi r31,hi8(SendeBuffer)
268
 273 021e 00C0      		rjmp .L39
269
 274               	.L40:
270
 275 0220 8191      		ld r24,Z+
271
 276 0222 280F      		add r18,r24
272
 277 0224 311D      		adc r19,__zero_reg__
273
 278 0226 4F5F      		subi r20,lo8(-(1))
274
 279 0228 5F4F      		sbci r21,hi8(-(1))
275
 280               	.L39:
276
 281 022a 4A17      		cp r20,r26
277
 282 022c 5B07      		cpc r21,r27
278
 283 022e 01F4      		brne .L40
279
 284 0230 3F70      		andi r19,hi8(4095)
280
 285 0232 C901      		movw r24,r18
281
 286 0234 36E0      		ldi r19,6
282
 287 0236 9695      	1:	lsr r25
283
 288 0238 8795      		ror r24
284
 289 023a 3A95      		dec r19
285
 290 023c 01F4      		brne 1b
286
 291 023e 835C      		subi r24,lo8(-(61))
287
 292 0240 FD01      		movw r30,r26
288
 293 0242 E050      		subi r30,lo8(-(SendeBuffer))
289
 294 0244 F040      		sbci r31,hi8(-(SendeBuffer))
290
 295 0246 8083      		st Z,r24
291
 296 0248 1196      		adiw r26,1
292
 297 024a 2F73      		andi r18,lo8(63)
293
 298 024c 235C      		subi r18,lo8(-(61))
294
 299 024e FD01      		movw r30,r26
295
 300 0250 E050      		subi r30,lo8(-(SendeBuffer))
296
 301 0252 F040      		sbci r31,hi8(-(SendeBuffer))
297
 302 0254 2083      		st Z,r18
298
 303 0256 A050      		subi r26,lo8(-(SendeBuffer+1))
299
 304 0258 B040      		sbci r27,hi8(-(SendeBuffer+1))
300
 305 025a 8DE0      		ldi r24,lo8(13)
301
 306 025c 8C93      		st X,r24
302
 307 025e 1092 0000 		sts UebertragungAbgeschlossen,__zero_reg__
303
 308 0262 8091 0000 		lds r24,SendeBuffer
304
 309 0266 8093 C600 		sts 198,r24
305
 310               	/* epilogue: frame size=0 */
306
 311 026a 0895      		ret
307
 312               	/* epilogue end (size=1) */
308
 313               	/* function AddCRC size 47 (46) */
309
 315               	.global	SendOutData
310
 317               	SendOutData:
311
 318               	/* prologue: frame size=0 */
312
 319 026c EF92      		push r14
313
 320 026e FF92      		push r15
314
 321 0270 0F93      		push r16
315
 322 0272 1F93      		push r17
316
 323 0274 CF93      		push r28
317
 324 0276 DF93      		push r29
318
 325               	/* prologue end (size=6) */
319
 326 0278 7A01      		movw r14,r20
320
 327 027a 722F      		mov r23,r18
321
 328 027c 93E2      		ldi r25,lo8(35)
322
 329 027e 9093 0000 		sts SendeBuffer,r25
323
 330 0282 6093 0000 		sts SendeBuffer+1,r22
324
 331 0286 8093 0000 		sts SendeBuffer+2,r24
325
 332 028a 03E0      		ldi r16,lo8(3)
326
 333 028c 10E0      		ldi r17,hi8(3)
327
 334 028e 60E0      		ldi r22,lo8(0)
328
 335 0290 A0E0      		ldi r26,lo8(SendeBuffer+3)
329
 336 0292 B0E0      		ldi r27,hi8(SendeBuffer+3)
330
 337 0294 00C0      		rjmp .L44
331
 338               	.L45:
332
 339 0296 F701      		movw r30,r14
333
 340 0298 E60F      		add r30,r22
334
 341 029a F11D      		adc r31,__zero_reg__
335
 342 029c 9081      		ld r25,Z
336
 343 029e 6F5F      		subi r22,lo8(-(1))
337
 344 02a0 7150      		subi r23,lo8(-(-1))
338
 345 02a2 01F4      		brne .L46
339
 346 02a4 E0E0      		ldi r30,lo8(0)
340
 347 02a6 40E0      		ldi r20,lo8(0)
341
 348 02a8 00C0      		rjmp .L48
342
 349               	.L46:
343
 350 02aa F701      		movw r30,r14
344
 351 02ac E60F      		add r30,r22
345
 352 02ae F11D      		adc r31,__zero_reg__
346
 353 02b0 4081      		ld r20,Z
347
 354 02b2 6F5F      		subi r22,lo8(-(1))
348
 355 02b4 7150      		subi r23,lo8(-(-1))
349
 356 02b6 01F4      		brne .L49
350
 357 02b8 E0E0      		ldi r30,lo8(0)
351
 358 02ba 00C0      		rjmp .L48
352
 359               	.L49:
353
 360 02bc F701      		movw r30,r14
354
 361 02be E60F      		add r30,r22
355
 362 02c0 F11D      		adc r31,__zero_reg__
356
 363 02c2 E081      		ld r30,Z
357
 364 02c4 6F5F      		subi r22,lo8(-(1))
358
 365 02c6 7150      		subi r23,lo8(-(-1))
359
 366               	.L48:
360
 367 02c8 892F      		mov r24,r25
361
 368 02ca 8695      		lsr r24
362
 369 02cc 8695      		lsr r24
363
 370 02ce 835C      		subi r24,lo8(-(61))
364
 371 02d0 8C93      		st X,r24
365
 372 02d2 5527      		clr r21
366
 373 02d4 892F      		mov r24,r25
367
 374 02d6 9927      		clr r25
368
 375 02d8 8370      		andi r24,lo8(3)
369
 376 02da 9070      		andi r25,hi8(3)
370
 377 02dc 24E0      		ldi r18,4
371
 378 02de 880F      	1:	lsl r24
372
 379 02e0 991F      		rol r25
373
 380 02e2 2A95      		dec r18
374
 381 02e4 01F4      		brne 1b
375
 382 02e6 9A01      		movw r18,r20
376
 383 02e8 94E0      		ldi r25,4
377
 384 02ea 3695      	1:	lsr r19
378
 385 02ec 2795      		ror r18
379
 386 02ee 9A95      		dec r25
380
 387 02f0 01F4      		brne 1b
381
 388 02f2 822B      		or r24,r18
382
 389 02f4 835C      		subi r24,lo8(-(61))
383
 390 02f6 ED01      		movw r28,r26
384
 391 02f8 8983      		std Y+1,r24
385
 392 02fa 4F70      		andi r20,lo8(15)
386
 393 02fc 5070      		andi r21,hi8(15)
387
 394 02fe 440F      		lsl r20
388
 395 0300 551F      		rol r21
389
 396 0302 440F      		lsl r20
390
 397 0304 551F      		rol r21
391
 398 0306 8E2F      		mov r24,r30
392
 399 0308 8295      		swap r24
393
 400 030a 8695      		lsr r24
394
 401 030c 8695      		lsr r24
395
 402 030e 8370      		andi r24,0x3
396
 403 0310 842B      		or r24,r20
397
 404 0312 835C      		subi r24,lo8(-(61))
398
 405 0314 8A83      		std Y+2,r24
399
 406 0316 EF73      		andi r30,lo8(63)
400
 407 0318 E35C      		subi r30,lo8(-(61))
401
 408 031a EB83      		std Y+3,r30
402
 409 031c 0C5F      		subi r16,lo8(-(4))
403
 410 031e 1F4F      		sbci r17,hi8(-(4))
404
 411 0320 1496      		adiw r26,4
405
 412               	.L44:
406
 413 0322 7723      		tst r23
407
 414 0324 01F0      		breq .+2
408
 415 0326 00C0      		rjmp .L45
409
 416 0328 C801      		movw r24,r16
410
 417 032a 0E94 0000 		call AddCRC
411
 418               	/* epilogue: frame size=0 */
412
 419 032e DF91      		pop r29
413
 420 0330 CF91      		pop r28
414
 421 0332 1F91      		pop r17
415
 422 0334 0F91      		pop r16
416
 423 0336 FF90      		pop r15
417
 424 0338 EF90      		pop r14
418
 425 033a 0895      		ret
419
 426               	/* epilogue end (size=7) */
420
 427               	/* function SendOutData size 106 (93) */
421
 429               	.global	Decode64
422
 431               	Decode64:
423
 432               	/* prologue: frame size=0 */
424
 433 033c 1F93      		push r17
425
 434 033e CF93      		push r28
426
 435 0340 DF93      		push r29
427
 436               	/* prologue end (size=3) */
428
 437 0342 EC01      		movw r28,r24
429
 438 0344 70E0      		ldi r23,lo8(0)
430
 439 0346 A22F      		mov r26,r18
431
 440 0348 BB27      		clr r27
432
 441 034a 1297      		sbiw r26,2
433
 442 034c 00C0      		rjmp .L54
434
 443               	.L55:
435
 444 034e E42F      		mov r30,r20
436
 445 0350 FF27      		clr r31
437
 446 0352 E050      		subi r30,lo8(-(RxdBuffer))
438
 447 0354 F040      		sbci r31,hi8(-(RxdBuffer))
439
 448 0356 3081      		ld r19,Z
440
 449 0358 4F5F      		subi r20,lo8(-(1))
441
 450 035a E42F      		mov r30,r20
442
 451 035c FF27      		clr r31
443
 452 035e E050      		subi r30,lo8(-(RxdBuffer))
444
 453 0360 F040      		sbci r31,hi8(-(RxdBuffer))
445
 454 0362 5081      		ld r21,Z
446
 455 0364 4F5F      		subi r20,lo8(-(1))
447
 456 0366 E42F      		mov r30,r20
448
 457 0368 FF27      		clr r31
449
 458 036a E050      		subi r30,lo8(-(RxdBuffer))
450
 459 036c F040      		sbci r31,hi8(-(RxdBuffer))
451
 460 036e 1081      		ld r17,Z
452
 461 0370 4F5F      		subi r20,lo8(-(1))
453
 462 0372 E42F      		mov r30,r20
454
 463 0374 FF27      		clr r31
455
 464 0376 E050      		subi r30,lo8(-(RxdBuffer))
456
 465 0378 F040      		sbci r31,hi8(-(RxdBuffer))
457
 466 037a 2081      		ld r18,Z
458
 467 037c 4F5F      		subi r20,lo8(-(1))
459
 468 037e 842F      		mov r24,r20
460
 469 0380 9927      		clr r25
461
 470 0382 A817      		cp r26,r24
462
 471 0384 B907      		cpc r27,r25
463
 472 0386 04F0      		brlt .L60
464
 473 0388 5D53      		subi r21,lo8(-(-61))
465
 474 038a FE01      		movw r30,r28
466
 475 038c E70F      		add r30,r23
467
 476 038e F11D      		adc r31,__zero_reg__
468
 477 0390 3D53      		subi r19,lo8(-(-61))
469
 478 0392 330F      		lsl r19
470
 479 0394 330F      		lsl r19
471
 480 0396 852F      		mov r24,r21
472
 481 0398 8295      		swap r24
473
 482 039a 8F70      		andi r24,0x0f
474
 483 039c 382B      		or r19,r24
475
 484 039e 3083      		st Z,r19
476
 485 03a0 6130      		cpi r22,lo8(1)
477
 486 03a2 01F0      		breq .L60
478
 487 03a4 912F      		mov r25,r17
479
 488 03a6 9D53      		subi r25,lo8(-(-61))
480
 489 03a8 7F5F      		subi r23,lo8(-(1))
481
 490 03aa FE01      		movw r30,r28
482
 491 03ac E70F      		add r30,r23
483
 492 03ae F11D      		adc r31,__zero_reg__
484
 493 03b0 7150      		subi r23,lo8(-(-1))
485
 494 03b2 5295      		swap r21
486
 495 03b4 507F      		andi r21,0xf0
487
 496 03b6 892F      		mov r24,r25
488
 497 03b8 8695      		lsr r24
489
 498 03ba 8695      		lsr r24
490
 499 03bc 582B      		or r21,r24
491
 500 03be 5083      		st Z,r21
492
 501 03c0 6350      		subi r22,lo8(-(-3))
493
 502 03c2 6F3F      		cpi r22,lo8(-1)
494
 503 03c4 01F0      		breq .L60
495
 504 03c6 7E5F      		subi r23,lo8(-(2))
496
 505 03c8 FE01      		movw r30,r28
497
 506 03ca E70F      		add r30,r23
498
 507 03cc F11D      		adc r31,__zero_reg__
499
 508 03ce 9295      		swap r25
500
 509 03d0 990F      		lsl r25
501
 510 03d2 990F      		lsl r25
502
 511 03d4 907C      		andi r25,0xc0
503
 512 03d6 2D53      		subi r18,lo8(-(-61))
504
 513 03d8 922B      		or r25,r18
505
 514 03da 9083      		st Z,r25
506
 515 03dc 7F5F      		subi r23,lo8(-(1))
507
 516               	.L54:
508
 517 03de 6623      		tst r22
509
 518 03e0 01F0      		breq .+2
510
 519 03e2 00C0      		rjmp .L55
511
 520               	.L60:
512
 521               	/* epilogue: frame size=0 */
513
 522 03e4 DF91      		pop r29
514
 523 03e6 CF91      		pop r28
515
 524 03e8 1F91      		pop r17
516
 525 03ea 0895      		ret
517
 526               	/* epilogue end (size=4) */
518
 527               	/* function Decode64 size 88 (81) */
519
 529               	.global	uart_putchar
520
 531               	uart_putchar:
521
 532               	/* prologue: frame size=0 */
522
 533 03ec 1F93      		push r17
523
 534               	/* prologue end (size=1) */
524
 535 03ee 182F      		mov r17,r24
525
 536 03f0 8A30      		cpi r24,lo8(10)
526
 537 03f2 01F4      		brne .L66
527
 538 03f4 8DE0      		ldi r24,lo8(13)
528
 539 03f6 0E94 0000 		call uart_putchar
529
 540               	.L66:
530
 541 03fa 8091 C000 		lds r24,192
531
 542 03fe 85FF      		sbrs r24,5
532
 543 0400 00C0      		rjmp .L66
533
 544 0402 1093 C600 		sts 198,r17
534
 545 0406 80E0      		ldi r24,lo8(0)
535
 546 0408 90E0      		ldi r25,hi8(0)
536
 547               	/* epilogue: frame size=0 */
537
 548 040a 1F91      		pop r17
538
 549 040c 0895      		ret
539
 550               	/* epilogue end (size=2) */
540
 551               	/* function uart_putchar size 17 (14) */
541
 553               	.global	WriteProgramData
542
 555               	WriteProgramData:
543
 556               	/* prologue: frame size=0 */
544
 557               	/* prologue end (size=0) */
545
 558               	/* epilogue: frame size=0 */
546
 559 040e 0895      		ret
547
 560               	/* epilogue end (size=1) */
548
 561               	/* function WriteProgramData size 1 (0) */
549
 563               	.global	UART_Init
550
 565               	UART_Init:
551
 566               	/* prologue: frame size=0 */
552
 567               	/* prologue end (size=0) */
553
 568 0410 E1EC      		ldi r30,lo8(193)
554
 569 0412 F0E0      		ldi r31,hi8(193)
555
 570 0414 88E1      		ldi r24,lo8(24)
556
 571 0416 8083      		st Z,r24
557
 572 0418 A0EC      		ldi r26,lo8(192)
558
 573 041a B0E0      		ldi r27,hi8(192)
559
 574 041c 8C91      		ld r24,X
560
 575 041e 8260      		ori r24,lo8(2)
561
 576 0420 8C93      		st X,r24
562
 577 0422 8081      		ld r24,Z
563
 578 0424 8068      		ori r24,lo8(-128)
564
 579 0426 8083      		st Z,r24
565
 580 0428 8081      		ld r24,Z
566
 581 042a 8064      		ori r24,lo8(64)
567
 582 042c 8083      		st Z,r24
568
 583 042e 8AE2      		ldi r24,lo8(42)
569
 584 0430 8093 C400 		sts 196,r24
570
 585 0434 88EC      		ldi r24,lo8(200)
571
 586 0436 90E0      		ldi r25,hi8(200)
572
 587 0438 0E94 0000 		call SetDelay
573
 588 043c 9093 0000 		sts (Debug_Timer)+1,r25
574
 589 0440 8093 0000 		sts Debug_Timer,r24
575
 590               	/* epilogue: frame size=0 */
576
 591 0444 0895      		ret
577
 592               	/* epilogue end (size=1) */
578
 593               	/* function UART_Init size 27 (26) */
579
 595               	.global	DatenUebertragung
580
 597               	DatenUebertragung:
581
 598               	/* prologue: frame size=0 */
582
 599               	/* prologue end (size=0) */
583
 600 0446 8091 0000 		lds r24,UebertragungAbgeschlossen
584
 601 044a 8823      		tst r24
585
 602 044c 01F4      		brne .+2
586
 603 044e 00C0      		rjmp .L90
587
 604 0450 8091 0000 		lds r24,DebugGetAnforderung
588
 605 0454 8823      		tst r24
589
 606 0456 01F0      		breq .L76
590
 607 0458 8091 0000 		lds r24,UebertragungAbgeschlossen
591
 608 045c 8823      		tst r24
592
 609 045e 01F0      		breq .L76
593
 610 0460 2BE0      		ldi r18,lo8(11)
594
 611 0462 40E0      		ldi r20,lo8(DebugIn)
595
 612 0464 50E0      		ldi r21,hi8(DebugIn)
596
 613 0466 6091 0000 		lds r22,MeineSlaveAdresse
597
 614 046a 87E4      		ldi r24,lo8(71)
598
 615 046c 0E94 0000 		call SendOutData
599
 616 0470 1092 0000 		sts DebugGetAnforderung,__zero_reg__
600
 617               	.L76:
601
 618 0474 8091 0000 		lds r24,Debug_Timer
602
 619 0478 9091 0000 		lds r25,(Debug_Timer)+1
603
 620 047c 0E94 0000 		call CheckDelay
604
 621 0480 8823      		tst r24
605
 622 0482 01F4      		brne .L79
606
 623 0484 8091 0000 		lds r24,DebugDataAnforderung
607
 624 0488 8823      		tst r24
608
 625 048a 01F0      		breq .L81
609
 626               	.L79:
610
 627 048c 8091 0000 		lds r24,UebertragungAbgeschlossen
611
 628 0490 8823      		tst r24
612
 629 0492 01F0      		breq .L81
613
 630 0494 22E3      		ldi r18,lo8(50)
614
 631 0496 40E0      		ldi r20,lo8(DebugOut)
615
 632 0498 50E0      		ldi r21,hi8(DebugOut)
616
 633 049a 6091 0000 		lds r22,MeineSlaveAdresse
617
 634 049e 84E4      		ldi r24,lo8(68)
618
 635 04a0 0E94 0000 		call SendOutData
619
 636 04a4 1092 0000 		sts DebugDataAnforderung,__zero_reg__
620
 637 04a8 8AEF      		ldi r24,lo8(250)
621
 638 04aa 90E0      		ldi r25,hi8(250)
622
 639 04ac 0E94 0000 		call SetDelay
623
 640 04b0 9093 0000 		sts (Debug_Timer)+1,r25
624
 641 04b4 8093 0000 		sts Debug_Timer,r24
625
 642               	.L81:
626
 643 04b8 8091 0000 		lds r24,DebugDisplayAnforderung
627
 644 04bc 8823      		tst r24
628
 645 04be 01F0      		breq .L83
629
 646 04c0 8091 0000 		lds r24,UebertragungAbgeschlossen
630
 647 04c4 8823      		tst r24
631
 648 04c6 01F0      		breq .L83
632
 649 04c8 0E94 0000 		call Menu
633
 650 04cc 1092 0000 		sts DebugDisplayAnforderung,__zero_reg__
634
 651 04d0 8091 0000 		lds r24,dis_zeile.2217
635
 652 04d4 8F5F      		subi r24,lo8(-(1))
636
 653 04d6 8093 0000 		sts dis_zeile.2217,r24
637
 654 04da 8430      		cpi r24,lo8(4)
638
 655 04dc 01F4      		brne .L86
639
 656 04de 1092 0000 		sts dis_zeile.2217,__zero_reg__
640
 657               	.L86:
641
 658 04e2 8091 0000 		lds r24,dis_zeile.2217
642
 659 04e6 44E1      		ldi r20,lo8(20)
643
 660 04e8 849F      		mul r24,r20
644
 661 04ea A001      		movw r20,r0
645
 662 04ec 1124      		clr r1
646
 663 04ee 4050      		subi r20,lo8(-(DisplayBuff))
647
 664 04f0 5040      		sbci r21,hi8(-(DisplayBuff))
648
 665 04f2 24E1      		ldi r18,lo8(20)
649
 666 04f4 60E0      		ldi r22,lo8(0)
650
 667 04f6 805D      		subi r24,lo8(-(48))
651
 668 04f8 0E94 0000 		call SendOutData
652
 669               	.L83:
653
 670 04fc 8091 0000 		lds r24,GetVersionAnforderung
654
 671 0500 8823      		tst r24
655
 672 0502 01F0      		breq .L90
656
 673 0504 8091 0000 		lds r24,UebertragungAbgeschlossen
657
 674 0508 8823      		tst r24
658
 675 050a 01F0      		breq .L90
659
 676 050c 2AE0      		ldi r18,lo8(10)
660
 677 050e 40E0      		ldi r20,lo8(VersionInfo)
661
 678 0510 50E0      		ldi r21,hi8(VersionInfo)
662
 679 0512 6091 0000 		lds r22,MeineSlaveAdresse
663
 680 0516 86E5      		ldi r24,lo8(86)
664
 681 0518 0E94 0000 		call SendOutData
665
 682 051c 1092 0000 		sts GetVersionAnforderung,__zero_reg__
666
 683               	.L90:
667
 684 0520 0895      		ret
668
 685               	/* epilogue: frame size=0 */
669
 686               	/* epilogue: noreturn */
670
 687               	/* epilogue end (size=0) */
671
 688               	/* function DatenUebertragung size 110 (110) */
672
 690               	.global	BearbeiteRxDaten
673
 692               	BearbeiteRxDaten:
674
 693               	/* prologue: frame size=2 */
675
 694 0522 1F93      		push r17
676
 695 0524 CF93      		push r28
677
 696 0526 DF93      		push r29
678
 697 0528 CDB7      		in r28,__SP_L__
679
 698 052a DEB7      		in r29,__SP_H__
680
 699 052c 2297      		sbiw r28,2
681
 700 052e 0FB6      		in __tmp_reg__,__SREG__
682
 701 0530 F894      		cli
683
 702 0532 DEBF      		out __SP_H__,r29
684
 703 0534 0FBE      		out __SREG__,__tmp_reg__
685
 704 0536 CDBF      		out __SP_L__,r28
686
 705               	/* prologue end (size=11) */
687
 706 0538 8091 0000 		lds r24,NeuerDatensatzEmpfangen
688
 707 053c 8823      		tst r24
689
 708 053e 01F4      		brne .+2
690
 709 0540 00C0      		rjmp .L107
691
 710 0542 8FEF      		ldi r24,lo8(-1)
692
 711 0544 8093 0000 		sts PcZugriff,r24
693
 712 0548 8091 0000 		lds r24,RxdBuffer+2
694
 713 054c 8137      		cpi r24,lo8(113)
695
 714 054e 00F4      		brsh .L102
696
 715 0550 8C36      		cpi r24,lo8(108)
697
 716 0552 00F0      		brlo .+2
698
 717 0554 00C0      		rjmp .L98
699
 718 0556 8736      		cpi r24,lo8(103)
700
 719 0558 01F4      		brne .+2
701
 720 055a 00C0      		rjmp .L96
702
 721 055c 8836      		cpi r24,lo8(104)
703
 722 055e 01F0      		breq .L97
704
 723 0560 8336      		cpi r24,lo8(99)
705
 724 0562 01F0      		breq .+2
706
 725 0564 00C0      		rjmp .L94
707
 726 0566 00C0      		rjmp .L95
708
 727               	.L102:
709
 728 0568 8437      		cpi r24,lo8(116)
710
 729 056a 01F0      		breq .L100
711
 730 056c 8637      		cpi r24,lo8(118)
712
 731 056e 01F0      		breq .L101
713
 732 0570 8137      		cpi r24,lo8(113)
714
 733 0572 01F0      		breq .+2
715
 734 0574 00C0      		rjmp .L94
716
 735 0576 00C0      		rjmp .L99
717
 736               	.L95:
718
 737 0578 2091 0000 		lds r18,AnzahlEmpfangsBytes
719
 738 057c 43E0      		ldi r20,lo8(3)
720
 739 057e 6BE0      		ldi r22,lo8(11)
721
 740 0580 80E0      		ldi r24,lo8(DebugIn)
722
 741 0582 90E0      		ldi r25,hi8(DebugIn)
723
 742 0584 0E94 0000 		call Decode64
724
 743 0588 8091 0000 		lds r24,RemoteTasten
725
 744 058c 9091 0000 		lds r25,DebugIn+2
726
 745 0590 892B      		or r24,r25
727
 746 0592 8093 0000 		sts RemoteTasten,r24
728
 747 0596 81E0      		ldi r24,lo8(1)
729
 748 0598 8093 0000 		sts DebugDataAnforderung,r24
730
 749 059c 00C0      		rjmp .L94
731
 750               	.L97:
732
 751 059e 2091 0000 		lds r18,AnzahlEmpfangsBytes
733
 752 05a2 43E0      		ldi r20,lo8(3)
734
 753 05a4 62E0      		ldi r22,lo8(2)
735
 754 05a6 CE01      		movw r24,r28
736
 755 05a8 0196      		adiw r24,1
737
 756 05aa 0E94 0000 		call Decode64
738
 757 05ae 8091 0000 		lds r24,RemoteTasten
739
 758 05b2 9981      		ldd r25,Y+1
740
 759 05b4 892B      		or r24,r25
741
 760 05b6 8093 0000 		sts RemoteTasten,r24
742
 761 05ba 81E0      		ldi r24,lo8(1)
743
 762 05bc 8093 0000 		sts DebugDisplayAnforderung,r24
744
 763 05c0 00C0      		rjmp .L94
745
 764               	.L100:
746
 765 05c2 2091 0000 		lds r18,AnzahlEmpfangsBytes
747
 766 05c6 43E0      		ldi r20,lo8(3)
748
 767 05c8 64E0      		ldi r22,lo8(4)
749
 768 05ca 80E0      		ldi r24,lo8(MotorTest)
750
 769 05cc 90E0      		ldi r25,hi8(MotorTest)
751
 770 05ce 0E94 0000 		call Decode64
752
 771 05d2 00C0      		rjmp .L94
753
 772               	.L101:
754
 773 05d4 81E0      		ldi r24,lo8(1)
755
 774 05d6 8093 0000 		sts GetVersionAnforderung,r24
756
 775 05da 00C0      		rjmp .L94
757
 776               	.L96:
758
 777 05dc 81E0      		ldi r24,lo8(1)
759
 778 05de 8093 0000 		sts DebugGetAnforderung,r24
760
 779 05e2 00C0      		rjmp .L94
761
 780               	.L99:
762
 781 05e4 2091 0000 		lds r18,AnzahlEmpfangsBytes
763
 782 05e8 43E0      		ldi r20,lo8(3)
764
 783 05ea 62E0      		ldi r22,lo8(2)
765
 784 05ec CE01      		movw r24,r28
766
 785 05ee 0196      		adiw r24,1
767
 786 05f0 0E94 0000 		call Decode64
768
 787 05f4 8981      		ldd r24,Y+1
769
 788 05f6 8F3F      		cpi r24,lo8(-1)
770
 789 05f8 01F0      		breq .L103
771
 790 05fa 8630      		cpi r24,lo8(6)
772
 791 05fc 00F0      		brlo .L105
773
 792 05fe 85E0      		ldi r24,lo8(5)
774
 793 0600 8983      		std Y+1,r24
775
 794               	.L105:
776
 795 0602 4AE3      		ldi r20,lo8(58)
777
 796 0604 60E0      		ldi r22,lo8(EE_Parameter)
778
 797 0606 70E0      		ldi r23,hi8(EE_Parameter)
779
 798 0608 8981      		ldd r24,Y+1
780
 799 060a 0E94 0000 		call ReadParameterSet
781
 800 060e 8981      		ldd r24,Y+1
782
 801 0610 2AE3      		ldi r18,lo8(58)
783
 802 0612 40E0      		ldi r20,lo8(EE_Parameter)
784
 803 0614 50E0      		ldi r21,hi8(EE_Parameter)
785
 804 0616 6091 0000 		lds r22,MeineSlaveAdresse
786
 805 061a 00C0      		rjmp .L108
787
 806               	.L103:
788
 807 061c 1091 0000 		lds r17,MeineSlaveAdresse
789
 808 0620 0E94 0000 		call GetActiveParamSetNumber
790
 809 0624 2AE3      		ldi r18,lo8(58)
791
 810 0626 40E0      		ldi r20,lo8(EE_Parameter)
792
 811 0628 50E0      		ldi r21,hi8(EE_Parameter)
793
 812 062a 612F      		mov r22,r17
794
 813               	.L108:
795
 814 062c 855B      		subi r24,lo8(-(75))
796
 815 062e 0E94 0000 		call SendOutData
797
 816 0632 00C0      		rjmp .L94
798
 817               	.L98:
799
 818 0634 2091 0000 		lds r18,AnzahlEmpfangsBytes
800
 819 0638 43E0      		ldi r20,lo8(3)
801
 820 063a 6AE3      		ldi r22,lo8(58)
802
 821 063c 80E0      		ldi r24,lo8(EE_Parameter)
803
 822 063e 90E0      		ldi r25,hi8(EE_Parameter)
804
 823 0640 0E94 0000 		call Decode64
805
 824 0644 8091 0000 		lds r24,RxdBuffer+2
806
 825 0648 4AE3      		ldi r20,lo8(58)
807
 826 064a 60E0      		ldi r22,lo8(EE_Parameter)
808
 827 064c 70E0      		ldi r23,hi8(EE_Parameter)
809
 828 064e 8B56      		subi r24,lo8(-(-107))
810
 829 0650 0E94 0000 		call WriteParameterSet
811
 830 0654 8091 0000 		lds r24,RxdBuffer+2
812
 831 0658 8B56      		subi r24,lo8(-(-107))
813
 832 065a A0E0      		ldi r26,lo8(EEPromArray+2)
814
 833 065c B0E0      		ldi r27,hi8(EEPromArray+2)
815
 834               	/* #APP */
816
 835 065e 082E      		mov __tmp_reg__,r24
817
 836 0660 0E94 0000 		call __eeprom_write_byte_1F2021
818
 837               	/* #NOAPP */
819
 838 0664 0E94 0000 		call GetActiveParamSetNumber
820
 839 0668 9927      		clr r25
821
 840 066a 0E94 0000 		call Piep
822
 841               	.L94:
823
 842 066e 1092 0000 		sts NeuerDatensatzEmpfangen,__zero_reg__
824
 843               	.L107:
825
 844               	/* epilogue: frame size=2 */
826
 845 0672 2296      		adiw r28,2
827
 846 0674 0FB6      		in __tmp_reg__,__SREG__
828
 847 0676 F894      		cli
829
 848 0678 DEBF      		out __SP_H__,r29
830
 849 067a 0FBE      		out __SREG__,__tmp_reg__
831
 850 067c CDBF      		out __SP_L__,r28
832
 851 067e DF91      		pop r29
833
 852 0680 CF91      		pop r28
834
 853 0682 1F91      		pop r17
835
 854 0684 0895      		ret
836
 855               	/* epilogue end (size=10) */
837
 856               	/* function BearbeiteRxDaten size 179 (158) */
838
 858               	.global	DebugGetAnforderung
839
 859               	.global	DebugGetAnforderung
840
 860               		.section .bss
841
 863               	DebugGetAnforderung:
842
 864 0000 00        		.skip 1,0
843
 865               	.global	DebugDisplayAnforderung
844
 866               	.global	DebugDisplayAnforderung
845
 869               	DebugDisplayAnforderung:
846
 870 0001 00        		.skip 1,0
847
 871               	.global	DebugDataAnforderung
848
 872               	.global	DebugDataAnforderung
849
 875               	DebugDataAnforderung:
850
 876 0002 00        		.skip 1,0
851
 877               	.global	GetVersionAnforderung
852
 878               	.global	GetVersionAnforderung
853
 881               	GetVersionAnforderung:
854
 882 0003 00        		.skip 1,0
855
 883               	.global	SioTmp
856
 884               	.global	SioTmp
857
 887               	SioTmp:
858
 888 0004 00        		.skip 1,0
859
 889               	.global	NeuerDatensatzEmpfangen
860
 890               	.global	NeuerDatensatzEmpfangen
861
 893               	NeuerDatensatzEmpfangen:
862
 894 0005 00        		.skip 1,0
863
 895               	.global	NeueKoordinateEmpfangen
864
 896               	.global	NeueKoordinateEmpfangen
865
 899               	NeueKoordinateEmpfangen:
866
 900 0006 00        		.skip 1,0
867
 901               	.global	UebertragungAbgeschlossen
868
 902               		.data
869
 905               	UebertragungAbgeschlossen:
870
 906 0000 01        		.byte	1
871
 907               	.global	CntCrcError
872
 908               	.global	CntCrcError
873
 909               		.section .bss
874
 912               	CntCrcError:
875
 913 0007 00        		.skip 1,0
876
 914               	.global	AnzahlEmpfangsBytes
877
 915               	.global	AnzahlEmpfangsBytes
878
 918               	AnzahlEmpfangsBytes:
879
 919 0008 00        		.skip 1,0
880
 920               	.global	PC_DebugTimeout
881
 921               	.global	PC_DebugTimeout
882
 924               	PC_DebugTimeout:
883
 925 0009 00        		.skip 1,0
884
 926               	.global	PcZugriff
885
 927               		.data
886
 930               	PcZugriff:
887
 931 0001 64        		.byte	100
888
 932               	.global	MotorTest
889
 933               	.global	MotorTest
890
 934               		.section .bss
891
 937               	MotorTest:
892
 938 000a 0000 0000 		.skip 4,0
893
 939               		.lcomm dis_zeile.2217,1
894
 940               		.lcomm UartState.1973,1
895
 941               		.lcomm buf_ptr.1972,1
896
 942               		.lcomm crc2.1971,1
897
 943               		.lcomm crc1.1970,1
898
 944               		.lcomm crc.1969,2
899
 945               		.lcomm ptr.1956,2
900
 946               		.comm DiffNick,2,1
901
 947               		.comm DiffRoll,2,1
902
 948               		.comm SenderOkay,1,1
903
 949               		.comm CosinusNickWinkel,1,1
904
 950               		.comm CosinusRollWinkel,1,1
905
 951               		.comm SendeBuffer,150,1
906
 952               		.comm RxdBuffer,150,1
907
 953               		.comm MeineSlaveAdresse,1,1
908
 954               		.comm Debug_Timer,2,1
909
 955               		.comm DebugOut,50,1
910
 956               		.comm DebugIn,11,1
911
 957               		.comm VersionInfo,10,1
912
 958               		.comm RemoteTasten,1,1
913
 959               		.comm Timeout,1,1
914
 960               		.comm IntegralNick,4,1
915
 961               		.comm IntegralNick2,4,1
916
 962               		.comm IntegralRoll,4,1
917
 963               		.comm IntegralRoll2,4,1
918
 964               		.comm Mess_IntegralNick,4,1
919
 965               		.comm Mess_IntegralNick2,4,1
920
 966               		.comm Mess_IntegralRoll,4,1
921
 967               		.comm Mess_IntegralRoll2,4,1
922
 968               		.comm Integral_Gier,4,1
923
 969               		.comm Mess_Integral_Gier,4,1
924
 970               		.comm h,1,1
925
 971               		.comm m,1,1
926
 972               		.comm s,1,1
927
 973               		.comm Motor_Vorne,1,1
928
 974               		.comm Motor_Hinten,1,1
929
 975               		.comm Motor_Rechts,1,1
930
 976               		.comm Motor_Links,1,1
931
 977               		.comm Count,1,1
932
 978               		.comm MotorWert,5,1
933
 979               		.comm StickNick,2,1
934
 980               		.comm StickRoll,2,1
935
 981               		.comm StickGier,2,1
936
 982               		.comm MotorenEin,1,1
937
 983               		.comm NMEABuffer,150,1
938
 984               	/* File "uart.c": code  844 = 0x034c ( 747), prologues  46, epilogues  51 */
939
DEFINED SYMBOLS
940
                            *ABS*:00000000 uart.c
941
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:3      *ABS*:0000003f __SREG__
942
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:4      *ABS*:0000003e __SP_H__
943
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:5      *ABS*:0000003d __SP_L__
944
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:6      *ABS*:00000000 __tmp_reg__
945
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:7      *ABS*:00000001 __zero_reg__
946
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:13     .text:00000000 __vector_22
947
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:905    .data:00000000 UebertragungAbgeschlossen
948
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:944    .bss:00000015 ptr.1956
949
                            *COM*:00000096 SendeBuffer
950
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:69     .text:0000006c __vector_20
951
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:887    .bss:00000004 SioTmp
952
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:940    .bss:00000010 buf_ptr.1972
953
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:939    .bss:0000000f UartState.1973
954
                            *COM*:00000096 RxdBuffer
955
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:943    .bss:00000013 crc.1969
956
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:942    .bss:00000012 crc1.1970
957
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:941    .bss:00000011 crc2.1971
958
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:912    .bss:00000007 CntCrcError
959
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:893    .bss:00000005 NeuerDatensatzEmpfangen
960
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:918    .bss:00000008 AnzahlEmpfangsBytes
961
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:263    .text:00000210 AddCRC
962
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:317    .text:0000026c SendOutData
963
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:431    .text:0000033c Decode64
964
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:531    .text:000003ec uart_putchar
965
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:555    .text:0000040e WriteProgramData
966
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:565    .text:00000410 UART_Init
967
                            *COM*:00000002 Debug_Timer
968
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:597    .text:00000446 DatenUebertragung
969
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:863    .bss:00000000 DebugGetAnforderung
970
                            *COM*:0000000b DebugIn
971
                            *COM*:00000001 MeineSlaveAdresse
972
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:875    .bss:00000002 DebugDataAnforderung
973
                            *COM*:00000032 DebugOut
974
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:869    .bss:00000001 DebugDisplayAnforderung
975
                             .bss:0000000e dis_zeile.2217
976
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:881    .bss:00000003 GetVersionAnforderung
977
                            *COM*:0000000a VersionInfo
978
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:692    .text:00000522 BearbeiteRxDaten
979
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:930    .data:00000001 PcZugriff
980
                            *COM*:00000001 RemoteTasten
981
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:937    .bss:0000000a MotorTest
982
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:899    .bss:00000006 NeueKoordinateEmpfangen
983
C:\DOKUME~1\peter\LOKALE~1\Temp/ccLlXWfC.s:924    .bss:00000009 PC_DebugTimeout
984
                            *COM*:00000002 DiffNick
985
                            *COM*:00000002 DiffRoll
986
                            *COM*:00000001 SenderOkay
987
                            *COM*:00000001 CosinusNickWinkel
988
                            *COM*:00000001 CosinusRollWinkel
989
                            *COM*:00000001 Timeout
990
                            *COM*:00000004 IntegralNick
991
                            *COM*:00000004 IntegralNick2
992
                            *COM*:00000004 IntegralRoll
993
                            *COM*:00000004 IntegralRoll2
994
                            *COM*:00000004 Mess_IntegralNick
995
                            *COM*:00000004 Mess_IntegralNick2
996
                            *COM*:00000004 Mess_IntegralRoll
997
                            *COM*:00000004 Mess_IntegralRoll2
998
                            *COM*:00000004 Integral_Gier
999
                            *COM*:00000004 Mess_Integral_Gier
1000
                            *COM*:00000001 h
1001
                            *COM*:00000001 m
1002
                            *COM*:00000001 s
1003
                            *COM*:00000001 Motor_Vorne
1004
                            *COM*:00000001 Motor_Hinten
1005
                            *COM*:00000001 Motor_Rechts
1006
                            *COM*:00000001 Motor_Links
1007
                            *COM*:00000001 Count
1008
                            *COM*:00000005 MotorWert
1009
                            *COM*:00000002 StickNick
1010
                            *COM*:00000002 StickRoll
1011
                            *COM*:00000002 StickGier
1012
                            *COM*:00000001 MotorenEin
1013
                            *COM*:00000096 NMEABuffer
1014
 
1015
UNDEFINED SYMBOLS
1016
__do_copy_data
1017
__do_clear_bss
1018
SetDelay
1019
CheckDelay
1020
Menu
1021
DisplayBuff
1022
EE_Parameter
1023
ReadParameterSet
1024
GetActiveParamSetNumber
1025
WriteParameterSet
1026
EEPromArray
1027
__eeprom_write_byte_1F2021
1028
Piep