Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
653 Nick666 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.2041
28
  29 001e 9091 0000 		lds r25,(ptr.2041)+1
29
  30 0022 0196      		adiw r24,1
30
  31 0024 9093 0000 		sts (ptr.2041)+1,r25
31
  32 0028 8093 0000 		sts ptr.2041,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.2041)+1,__zero_reg__
43
  44 0042 1092 0000 		sts ptr.2041,__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.2041)+1,__zero_reg__
51
  52 0056 1092 0000 		sts ptr.2041,__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 5F93      		push r21
77
  80 007e 6F93      		push r22
78
  81 0080 7F93      		push r23
79
  82 0082 8F93      		push r24
80
  83 0084 9F93      		push r25
81
  84 0086 EF93      		push r30
82
  85 0088 FF93      		push r31
83
  86               	/* prologue end (size=15) */
84
  87 008a 9091 C600 		lds r25,198
85
  88 008e 6091 0000 		lds r22,buf_ptr.2057
86
  89 0092 6639      		cpi r22,lo8(-106)
87
  90 0094 00F0      		brlo .L10
88
  91 0096 1092 0000 		sts UartState.2058,__zero_reg__
89
  92 009a 00C0      		rjmp .L23
90
  93               	.L10:
91
  94 009c 6623      		tst r22
92
  95 009e 01F4      		brne .L13
93
  96 00a0 9332      		cpi r25,lo8(35)
94
  97 00a2 01F4      		brne .L15
95
  98 00a4 8091 0000 		lds r24,NeuerDatensatzEmpfangen
96
  99 00a8 8823      		tst r24
97
 100 00aa 01F4      		brne .L15
98
 101 00ac 81E0      		ldi r24,lo8(1)
99
 102 00ae 8093 0000 		sts buf_ptr.2057,r24
100
 103               	.L15:
101
 104 00b2 9093 0000 		sts RxdBuffer,r25
102
 105 00b6 892F      		mov r24,r25
103
 106 00b8 9927      		clr r25
104
 107 00ba 9093 0000 		sts (crc.2054)+1,r25
105
 108 00be 8093 0000 		sts crc.2054,r24
106
 109 00c2 00C0      		rjmp .L26
107
 110               	.L13:
108
 111 00c4 E62F      		mov r30,r22
109
 112 00c6 FF27      		clr r31
110
 113 00c8 2091 0000 		lds r18,crc.2054
111
 114 00cc 3091 0000 		lds r19,(crc.2054)+1
112
 115 00d0 9D30      		cpi r25,lo8(13)
113
 116 00d2 01F0      		breq .L18
114
 117 00d4 E050      		subi r30,lo8(-(RxdBuffer))
115
 118 00d6 F040      		sbci r31,hi8(-(RxdBuffer))
116
 119 00d8 9083      		st Z,r25
117
 120 00da 6F5F      		subi r22,lo8(-(1))
118
 121 00dc 6093 0000 		sts buf_ptr.2057,r22
119
 122 00e0 290F      		add r18,r25
120
 123 00e2 311D      		adc r19,__zero_reg__
121
 124 00e4 3093 0000 		sts (crc.2054)+1,r19
122
 125 00e8 2093 0000 		sts crc.2054,r18
123
 126 00ec 00C0      		rjmp .L26
124
 127               	.L18:
125
 128 00ee E050      		subi r30,lo8(-(RxdBuffer))
126
 129 00f0 F040      		sbci r31,hi8(-(RxdBuffer))
127
 130 00f2 3297      		sbiw r30,2
128
 131 00f4 8081      		ld r24,Z
129
 132 00f6 3296      		adiw r30,2
130
 133 00f8 7291      		ld r23,-Z
131
 134 00fa 3196      		adiw r30,1
132
 135 00fc 281B      		sub r18,r24
133
 136 00fe 3109      		sbc r19,__zero_reg__
134
 137 0100 271B      		sub r18,r23
135
 138 0102 3109      		sbc r19,__zero_reg__
136
 139 0104 3F70      		andi r19,hi8(4095)
137
 140 0106 3093 0000 		sts (crc.2054)+1,r19
138
 141 010a 2093 0000 		sts crc.2054,r18
139
 142 010e A901      		movw r20,r18
140
 143 0110 36E0      		ldi r19,6
141
 144 0112 5695      	1:	lsr r21
142
 145 0114 4795      		ror r20
143
 146 0116 3A95      		dec r19
144
 147 0118 01F4      		brne 1b
145
 148 011a 435C      		subi r20,lo8(-(61))
146
 149 011c 4093 0000 		sts crc1.2055,r20
147
 150 0120 2F73      		andi r18,lo8(63)
148
 151 0122 235C      		subi r18,lo8(-(61))
149
 152 0124 2093 0000 		sts crc2.2056,r18
150
 153 0128 4817      		cp r20,r24
151
 154 012a 01F4      		brne .L20
152
 155 012c 2717      		cp r18,r23
153
 156 012e 01F4      		brne .L20
154
 157 0130 8091 0000 		lds r24,NeuerDatensatzEmpfangen
155
 158 0134 8823      		tst r24
156
 159 0136 01F4      		brne .L23
157
 160 0138 81E0      		ldi r24,lo8(1)
158
 161 013a 8093 0000 		sts NeuerDatensatzEmpfangen,r24
159
 162 013e 6093 0000 		sts AnzahlEmpfangsBytes,r22
160
 163 0142 9083      		st Z,r25
161
 164 0144 8091 0000 		lds r24,RxdBuffer+2
162
 165 0148 8235      		cpi r24,lo8(82)
163
 166 014a 01F4      		brne .L23
164
 167 014c 88E1      		ldi r24,lo8(24)
165
 168 014e 90E0      		ldi r25,hi8(24)
166
 169 0150 2CE0      		ldi r18,lo8(12)
167
 170               	/* #APP */
168
 171 0152 0FB6      		in __tmp_reg__,__SREG__
169
 172 0154 F894      		cli
170
 173 0156 A895      		wdr
171
 174 0158 8093 6000 		sts 96,r24
172
 175 015c 0FBE      		out __SREG__,__tmp_reg__
173
 176 015e 2093 6000 		sts 96,r18
174
 177               	/* #NOAPP */
175
 178 0162 00C0      		rjmp .L23
176
 179               	.L20:
177
 180 0164 8091 0000 		lds r24,CntCrcError
178
 181 0168 8F5F      		subi r24,lo8(-(1))
179
 182 016a 8093 0000 		sts CntCrcError,r24
180
 183               	.L23:
181
 184 016e 1092 0000 		sts buf_ptr.2057,__zero_reg__
182
 185               	.L26:
183
 186               	/* epilogue: frame size=0 */
184
 187 0172 FF91      		pop r31
185
 188 0174 EF91      		pop r30
186
 189 0176 9F91      		pop r25
187
 190 0178 8F91      		pop r24
188
 191 017a 7F91      		pop r23
189
 192 017c 6F91      		pop r22
190
 193 017e 5F91      		pop r21
191
 194 0180 4F91      		pop r20
192
 195 0182 3F91      		pop r19
193
 196 0184 2F91      		pop r18
194
 197 0186 0F90      		pop __tmp_reg__
195
 198 0188 0FBE      		out __SREG__,__tmp_reg__
196
 199 018a 0F90      		pop __tmp_reg__
197
 200 018c 1F90      		pop __zero_reg__
198
 201 018e 1895      		reti
199
 202               	/* epilogue end (size=15) */
200
 203               	/* function __vector_20 size 151 (121) */
201
 205               	.global	AddCRC
202
 207               	AddCRC:
203
 208               	/* prologue: frame size=0 */
204
 209               	/* prologue end (size=0) */
205
 210 0190 AC01      		movw r20,r24
206
 211 0192 20E0      		ldi r18,lo8(0)
207
 212 0194 30E0      		ldi r19,hi8(0)
208
 213 0196 60E0      		ldi r22,lo8(0)
209
 214 0198 70E0      		ldi r23,hi8(0)
210
 215 019a E0E0      		ldi r30,lo8(SendeBuffer)
211
 216 019c F0E0      		ldi r31,hi8(SendeBuffer)
212
 217 019e 00C0      		rjmp .L28
213
 218               	.L29:
214
 219 01a0 8191      		ld r24,Z+
215
 220 01a2 280F      		add r18,r24
216
 221 01a4 311D      		adc r19,__zero_reg__
217
 222 01a6 6F5F      		subi r22,lo8(-(1))
218
 223 01a8 7F4F      		sbci r23,hi8(-(1))
219
 224               	.L28:
220
 225 01aa 6417      		cp r22,r20
221
 226 01ac 7507      		cpc r23,r21
222
 227 01ae 01F4      		brne .L29
223
 228 01b0 3F70      		andi r19,hi8(4095)
224
 229 01b2 FA01      		movw r30,r20
225
 230 01b4 E050      		subi r30,lo8(-(SendeBuffer))
226
 231 01b6 F040      		sbci r31,hi8(-(SendeBuffer))
227
 232 01b8 C901      		movw r24,r18
228
 233 01ba 66E0      		ldi r22,6
229
 234 01bc 9695      	1:	lsr r25
230
 235 01be 8795      		ror r24
231
 236 01c0 6A95      		dec r22
232
 237 01c2 01F4      		brne 1b
233
 238 01c4 835C      		subi r24,lo8(-(61))
234
 239 01c6 8083      		st Z,r24
235
 240 01c8 FA01      		movw r30,r20
236
 241 01ca E050      		subi r30,lo8(-(SendeBuffer+1))
237
 242 01cc F040      		sbci r31,hi8(-(SendeBuffer+1))
238
 243 01ce 2F73      		andi r18,lo8(63)
239
 244 01d0 235C      		subi r18,lo8(-(61))
240
 245 01d2 2083      		st Z,r18
241
 246 01d4 8DE0      		ldi r24,lo8(13)
242
 247 01d6 8183      		std Z+1,r24
243
 248 01d8 1092 0000 		sts UebertragungAbgeschlossen,__zero_reg__
244
 249 01dc 8091 0000 		lds r24,SendeBuffer
245
 250 01e0 8093 C600 		sts 198,r24
246
 251               	/* epilogue: frame size=0 */
247
 252 01e4 0895      		ret
248
 253               	/* epilogue end (size=1) */
249
 254               	/* function AddCRC size 44 (43) */
250
 256               	.global	SendOutData
251
 258               	SendOutData:
252
 259               	/* prologue: frame size=0 */
253
 260 01e6 0F93      		push r16
254
 261 01e8 1F93      		push r17
255
 262 01ea CF93      		push r28
256
 263 01ec DF93      		push r29
257
 264               	/* prologue end (size=4) */
258
 265 01ee 8A01      		movw r16,r20
259
 266 01f0 722F      		mov r23,r18
260
 267 01f2 93E2      		ldi r25,lo8(35)
261
 268 01f4 9093 0000 		sts SendeBuffer,r25
262
 269 01f8 6093 0000 		sts SendeBuffer+1,r22
263
 270 01fc 8093 0000 		sts SendeBuffer+2,r24
264
 271 0200 60E0      		ldi r22,lo8(0)
265
 272 0202 A0E0      		ldi r26,lo8(SendeBuffer+3)
266
 273 0204 B0E0      		ldi r27,hi8(SendeBuffer+3)
267
 274 0206 00C0      		rjmp .L33
268
 275               	.L34:
269
 276 0208 F801      		movw r30,r16
270
 277 020a E60F      		add r30,r22
271
 278 020c F11D      		adc r31,__zero_reg__
272
 279 020e 9081      		ld r25,Z
273
 280 0210 6F5F      		subi r22,lo8(-(1))
274
 281 0212 7150      		subi r23,lo8(-(-1))
275
 282 0214 01F4      		brne .L35
276
 283 0216 E0E0      		ldi r30,lo8(0)
277
 284 0218 40E0      		ldi r20,lo8(0)
278
 285 021a 00C0      		rjmp .L37
279
 286               	.L35:
280
 287 021c F801      		movw r30,r16
281
 288 021e E60F      		add r30,r22
282
 289 0220 F11D      		adc r31,__zero_reg__
283
 290 0222 4081      		ld r20,Z
284
 291 0224 6F5F      		subi r22,lo8(-(1))
285
 292 0226 7150      		subi r23,lo8(-(-1))
286
 293 0228 01F4      		brne .L38
287
 294 022a E0E0      		ldi r30,lo8(0)
288
 295 022c 00C0      		rjmp .L37
289
 296               	.L38:
290
 297 022e F801      		movw r30,r16
291
 298 0230 E60F      		add r30,r22
292
 299 0232 F11D      		adc r31,__zero_reg__
293
 300 0234 E081      		ld r30,Z
294
 301 0236 6F5F      		subi r22,lo8(-(1))
295
 302 0238 7150      		subi r23,lo8(-(-1))
296
 303               	.L37:
297
 304 023a 892F      		mov r24,r25
298
 305 023c 8695      		lsr r24
299
 306 023e 8695      		lsr r24
300
 307 0240 835C      		subi r24,lo8(-(61))
301
 308 0242 8C93      		st X,r24
302
 309 0244 5527      		clr r21
303
 310 0246 892F      		mov r24,r25
304
 311 0248 9927      		clr r25
305
 312 024a 8370      		andi r24,lo8(3)
306
 313 024c 9070      		andi r25,hi8(3)
307
 314 024e 24E0      		ldi r18,4
308
 315 0250 880F      	1:	lsl r24
309
 316 0252 991F      		rol r25
310
 317 0254 2A95      		dec r18
311
 318 0256 01F4      		brne 1b
312
 319 0258 9A01      		movw r18,r20
313
 320 025a 94E0      		ldi r25,4
314
 321 025c 3695      	1:	lsr r19
315
 322 025e 2795      		ror r18
316
 323 0260 9A95      		dec r25
317
 324 0262 01F4      		brne 1b
318
 325 0264 822B      		or r24,r18
319
 326 0266 835C      		subi r24,lo8(-(61))
320
 327 0268 ED01      		movw r28,r26
321
 328 026a 8983      		std Y+1,r24
322
 329 026c 4F70      		andi r20,lo8(15)
323
 330 026e 5070      		andi r21,hi8(15)
324
 331 0270 440F      		lsl r20
325
 332 0272 551F      		rol r21
326
 333 0274 440F      		lsl r20
327
 334 0276 551F      		rol r21
328
 335 0278 8E2F      		mov r24,r30
329
 336 027a 8295      		swap r24
330
 337 027c 8695      		lsr r24
331
 338 027e 8695      		lsr r24
332
 339 0280 8370      		andi r24,0x3
333
 340 0282 842B      		or r24,r20
334
 341 0284 835C      		subi r24,lo8(-(61))
335
 342 0286 8A83      		std Y+2,r24
336
 343 0288 EF73      		andi r30,lo8(63)
337
 344 028a E35C      		subi r30,lo8(-(61))
338
 345 028c EB83      		std Y+3,r30
339
 346 028e 1496      		adiw r26,4
340
 347               	.L33:
341
 348 0290 7723      		tst r23
342
 349 0292 01F0      		breq .+2
343
 350 0294 00C0      		rjmp .L34
344
 351 0296 CD01      		movw r24,r26
345
 352 0298 8050      		subi r24,lo8(SendeBuffer)
346
 353 029a 9040      		sbci r25,hi8(SendeBuffer)
347
 354 029c 0E94 0000 		call AddCRC
348
 355               	/* epilogue: frame size=0 */
349
 356 02a0 DF91      		pop r29
350
 357 02a2 CF91      		pop r28
351
 358 02a4 1F91      		pop r17
352
 359 02a6 0F91      		pop r16
353
 360 02a8 0895      		ret
354
 361               	/* epilogue end (size=5) */
355
 362               	/* function SendOutData size 100 (91) */
356
 364               	.global	Decode64
357
 366               	Decode64:
358
 367               	/* prologue: frame size=0 */
359
 368 02aa 1F93      		push r17
360
 369 02ac CF93      		push r28
361
 370 02ae DF93      		push r29
362
 371               	/* prologue end (size=3) */
363
 372 02b0 EC01      		movw r28,r24
364
 373 02b2 70E0      		ldi r23,lo8(0)
365
 374 02b4 A22F      		mov r26,r18
366
 375 02b6 BB27      		clr r27
367
 376 02b8 1297      		sbiw r26,2
368
 377 02ba 00C0      		rjmp .L43
369
 378               	.L44:
370
 379 02bc E42F      		mov r30,r20
371
 380 02be FF27      		clr r31
372
 381 02c0 E050      		subi r30,lo8(-(RxdBuffer))
373
 382 02c2 F040      		sbci r31,hi8(-(RxdBuffer))
374
 383 02c4 3081      		ld r19,Z
375
 384 02c6 4F5F      		subi r20,lo8(-(1))
376
 385 02c8 E42F      		mov r30,r20
377
 386 02ca FF27      		clr r31
378
 387 02cc E050      		subi r30,lo8(-(RxdBuffer))
379
 388 02ce F040      		sbci r31,hi8(-(RxdBuffer))
380
 389 02d0 5081      		ld r21,Z
381
 390 02d2 4F5F      		subi r20,lo8(-(1))
382
 391 02d4 E42F      		mov r30,r20
383
 392 02d6 FF27      		clr r31
384
 393 02d8 E050      		subi r30,lo8(-(RxdBuffer))
385
 394 02da F040      		sbci r31,hi8(-(RxdBuffer))
386
 395 02dc 1081      		ld r17,Z
387
 396 02de 4F5F      		subi r20,lo8(-(1))
388
 397 02e0 E42F      		mov r30,r20
389
 398 02e2 FF27      		clr r31
390
 399 02e4 E050      		subi r30,lo8(-(RxdBuffer))
391
 400 02e6 F040      		sbci r31,hi8(-(RxdBuffer))
392
 401 02e8 2081      		ld r18,Z
393
 402 02ea 4F5F      		subi r20,lo8(-(1))
394
 403 02ec 842F      		mov r24,r20
395
 404 02ee 9927      		clr r25
396
 405 02f0 A817      		cp r26,r24
397
 406 02f2 B907      		cpc r27,r25
398
 407 02f4 04F0      		brlt .L49
399
 408 02f6 5D53      		subi r21,lo8(-(-61))
400
 409 02f8 FE01      		movw r30,r28
401
 410 02fa E70F      		add r30,r23
402
 411 02fc F11D      		adc r31,__zero_reg__
403
 412 02fe 3D53      		subi r19,lo8(-(-61))
404
 413 0300 330F      		lsl r19
405
 414 0302 330F      		lsl r19
406
 415 0304 852F      		mov r24,r21
407
 416 0306 8295      		swap r24
408
 417 0308 8F70      		andi r24,0x0f
409
 418 030a 382B      		or r19,r24
410
 419 030c 3083      		st Z,r19
411
 420 030e 6130      		cpi r22,lo8(1)
412
 421 0310 01F0      		breq .L49
413
 422 0312 912F      		mov r25,r17
414
 423 0314 9D53      		subi r25,lo8(-(-61))
415
 424 0316 7F5F      		subi r23,lo8(-(1))
416
 425 0318 FE01      		movw r30,r28
417
 426 031a E70F      		add r30,r23
418
 427 031c F11D      		adc r31,__zero_reg__
419
 428 031e 7150      		subi r23,lo8(-(-1))
420
 429 0320 5295      		swap r21
421
 430 0322 507F      		andi r21,0xf0
422
 431 0324 892F      		mov r24,r25
423
 432 0326 8695      		lsr r24
424
 433 0328 8695      		lsr r24
425
 434 032a 582B      		or r21,r24
426
 435 032c 5083      		st Z,r21
427
 436 032e 6350      		subi r22,lo8(-(-3))
428
 437 0330 6F3F      		cpi r22,lo8(-1)
429
 438 0332 01F0      		breq .L49
430
 439 0334 7E5F      		subi r23,lo8(-(2))
431
 440 0336 FE01      		movw r30,r28
432
 441 0338 E70F      		add r30,r23
433
 442 033a F11D      		adc r31,__zero_reg__
434
 443 033c 9295      		swap r25
435
 444 033e 990F      		lsl r25
436
 445 0340 990F      		lsl r25
437
 446 0342 907C      		andi r25,0xc0
438
 447 0344 2D53      		subi r18,lo8(-(-61))
439
 448 0346 922B      		or r25,r18
440
 449 0348 9083      		st Z,r25
441
 450 034a 7F5F      		subi r23,lo8(-(1))
442
 451               	.L43:
443
 452 034c 6623      		tst r22
444
 453 034e 01F0      		breq .+2
445
 454 0350 00C0      		rjmp .L44
446
 455               	.L49:
447
 456               	/* epilogue: frame size=0 */
448
 457 0352 DF91      		pop r29
449
 458 0354 CF91      		pop r28
450
 459 0356 1F91      		pop r17
451
 460 0358 0895      		ret
452
 461               	/* epilogue end (size=4) */
453
 462               	/* function Decode64 size 88 (81) */
454
 464               	.global	uart_putchar
455
 466               	uart_putchar:
456
 467               	/* prologue: frame size=0 */
457
 468 035a 1F93      		push r17
458
 469               	/* prologue end (size=1) */
459
 470 035c 182F      		mov r17,r24
460
 471 035e 8A30      		cpi r24,lo8(10)
461
 472 0360 01F4      		brne .L55
462
 473 0362 8DE0      		ldi r24,lo8(13)
463
 474 0364 0E94 0000 		call uart_putchar
464
 475               	.L55:
465
 476 0368 8091 C000 		lds r24,192
466
 477 036c 85FF      		sbrs r24,5
467
 478 036e 00C0      		rjmp .L55
468
 479 0370 1093 C600 		sts 198,r17
469
 480 0374 80E0      		ldi r24,lo8(0)
470
 481 0376 90E0      		ldi r25,hi8(0)
471
 482               	/* epilogue: frame size=0 */
472
 483 0378 1F91      		pop r17
473
 484 037a 0895      		ret
474
 485               	/* epilogue end (size=2) */
475
 486               	/* function uart_putchar size 17 (14) */
476
 488               	.global	WriteProgramData
477
 490               	WriteProgramData:
478
 491               	/* prologue: frame size=0 */
479
 492               	/* prologue end (size=0) */
480
 493               	/* epilogue: frame size=0 */
481
 494 037c 0895      		ret
482
 495               	/* epilogue end (size=1) */
483
 496               	/* function WriteProgramData size 1 (0) */
484
 498               	.global	UART_Init
485
 500               	UART_Init:
486
 501               	/* prologue: frame size=0 */
487
 502               	/* prologue end (size=0) */
488
 503 037e E1EC      		ldi r30,lo8(193)
489
 504 0380 F0E0      		ldi r31,hi8(193)
490
 505 0382 88E1      		ldi r24,lo8(24)
491
 506 0384 8083      		st Z,r24
492
 507 0386 A0EC      		ldi r26,lo8(192)
493
 508 0388 B0E0      		ldi r27,hi8(192)
494
 509 038a 8C91      		ld r24,X
495
 510 038c 8260      		ori r24,lo8(2)
496
 511 038e 8C93      		st X,r24
497
 512 0390 8081      		ld r24,Z
498
 513 0392 8068      		ori r24,lo8(-128)
499
 514 0394 8083      		st Z,r24
500
 515 0396 8081      		ld r24,Z
501
 516 0398 8064      		ori r24,lo8(64)
502
 517 039a 8083      		st Z,r24
503
 518 039c 8AE2      		ldi r24,lo8(42)
504
 519 039e 8093 C400 		sts 196,r24
505
 520 03a2 88EC      		ldi r24,lo8(200)
506
 521 03a4 90E0      		ldi r25,hi8(200)
507
 522 03a6 0E94 0000 		call SetDelay
508
 523 03aa 9093 0000 		sts (Debug_Timer)+1,r25
509
 524 03ae 8093 0000 		sts Debug_Timer,r24
510
 525               	/* epilogue: frame size=0 */
511
 526 03b2 0895      		ret
512
 527               	/* epilogue end (size=1) */
513
 528               	/* function UART_Init size 27 (26) */
514
 530               	.global	DatenUebertragung
515
 532               	DatenUebertragung:
516
 533               	/* prologue: frame size=0 */
517
 534               	/* prologue end (size=0) */
518
 535 03b4 8091 0000 		lds r24,UebertragungAbgeschlossen
519
 536 03b8 8823      		tst r24
520
 537 03ba 01F4      		brne .+2
521
 538 03bc 00C0      		rjmp .L85
522
 539 03be 8091 0000 		lds r24,DebugGetAnforderung
523
 540 03c2 8823      		tst r24
524
 541 03c4 01F0      		breq .L65
525
 542 03c6 8091 0000 		lds r24,UebertragungAbgeschlossen
526
 543 03ca 8823      		tst r24
527
 544 03cc 01F0      		breq .L65
528
 545 03ce 2BE0      		ldi r18,lo8(11)
529
 546 03d0 40E0      		ldi r20,lo8(ExternControl)
530
 547 03d2 50E0      		ldi r21,hi8(ExternControl)
531
 548 03d4 6091 0000 		lds r22,MeineSlaveAdresse
532
 549 03d8 87E4      		ldi r24,lo8(71)
533
 550 03da 0E94 0000 		call SendOutData
534
 551 03de 1092 0000 		sts DebugGetAnforderung,__zero_reg__
535
 552               	.L65:
536
 553 03e2 8091 0000 		lds r24,Debug_Timer
537
 554 03e6 9091 0000 		lds r25,(Debug_Timer)+1
538
 555 03ea 0E94 0000 		call CheckDelay
539
 556 03ee 8823      		tst r24
540
 557 03f0 01F4      		brne .L68
541
 558 03f2 8091 0000 		lds r24,DebugDataAnforderung
542
 559 03f6 8823      		tst r24
543
 560 03f8 01F0      		breq .L70
544
 561               	.L68:
545
 562 03fa 8091 0000 		lds r24,UebertragungAbgeschlossen
546
 563 03fe 8823      		tst r24
547
 564 0400 01F0      		breq .L70
548
 565 0402 22E4      		ldi r18,lo8(66)
549
 566 0404 40E0      		ldi r20,lo8(DebugOut)
550
 567 0406 50E0      		ldi r21,hi8(DebugOut)
551
 568 0408 6091 0000 		lds r22,MeineSlaveAdresse
552
 569 040c 84E4      		ldi r24,lo8(68)
553
 570 040e 0E94 0000 		call SendOutData
554
 571 0412 1092 0000 		sts DebugDataAnforderung,__zero_reg__
555
 572 0416 84EF      		ldi r24,lo8(500)
556
 573 0418 91E0      		ldi r25,hi8(500)
557
 574 041a 0E94 0000 		call SetDelay
558
 575 041e 9093 0000 		sts (Debug_Timer)+1,r25
559
 576 0422 8093 0000 		sts Debug_Timer,r24
560
 577               	.L70:
561
 578 0426 6091 0000 		lds r22,DebugTextAnforderung
562
 579 042a 6F3F      		cpi r22,lo8(-1)
563
 580 042c 01F0      		breq .L72
564
 581 042e 462F      		mov r20,r22
565
 582 0430 5527      		clr r21
566
 583 0432 34E0      		ldi r19,4
567
 584 0434 440F      	1:	lsl r20
568
 585 0436 551F      		rol r21
569
 586 0438 3A95      		dec r19
570
 587 043a 01F4      		brne 1b
571
 588 043c 4050      		subi r20,lo8(-(ANALOG_TEXT))
572
 589 043e 5040      		sbci r21,hi8(-(ANALOG_TEXT))
573
 590 0440 605D      		subi r22,lo8(-(48))
574
 591 0442 20E1      		ldi r18,lo8(16)
575
 592 0444 81E4      		ldi r24,lo8(65)
576
 593 0446 0E94 0000 		call SendOutData
577
 594 044a 8FEF      		ldi r24,lo8(-1)
578
 595 044c 8093 0000 		sts DebugTextAnforderung,r24
579
 596               	.L72:
580
 597 0450 2091 0000 		lds r18,ConfirmFrame
581
 598 0454 2223      		tst r18
582
 599 0456 01F0      		breq .L74
583
 600 0458 8091 0000 		lds r24,UebertragungAbgeschlossen
584
 601 045c 8823      		tst r24
585
 602 045e 01F0      		breq .L74
586
 603 0460 93E2      		ldi r25,lo8(35)
587
 604 0462 9093 0000 		sts SendeBuffer,r25
588
 605 0466 2093 0000 		sts SendeBuffer+1,r18
589
 606 046a 8DE0      		ldi r24,lo8(13)
590
 607 046c 8093 0000 		sts SendeBuffer+2,r24
591
 608 0470 1092 0000 		sts UebertragungAbgeschlossen,__zero_reg__
592
 609 0474 1092 0000 		sts ConfirmFrame,__zero_reg__
593
 610 0478 9093 C600 		sts 198,r25
594
 611               	.L74:
595
 612 047c 8091 0000 		lds r24,DebugDisplayAnforderung
596
 613 0480 8823      		tst r24
597
 614 0482 01F0      		breq .L77
598
 615 0484 8091 0000 		lds r24,UebertragungAbgeschlossen
599
 616 0488 8823      		tst r24
600
 617 048a 01F0      		breq .L77
601
 618 048c 0E94 0000 		call Menu
602
 619 0490 1092 0000 		sts DebugDisplayAnforderung,__zero_reg__
603
 620 0494 3091 0000 		lds r19,RemotePollDisplayLine
604
 621 0498 932F      		mov r25,r19
605
 622 049a 9F5F      		subi r25,lo8(-(1))
606
 623 049c 9093 0000 		sts RemotePollDisplayLine,r25
607
 624 04a0 9430      		cpi r25,lo8(4)
608
 625 04a2 01F0      		breq .L80
609
 626 04a4 8091 0000 		lds r24,NurKanalAnforderung
610
 627 04a8 8823      		tst r24
611
 628 04aa 01F0      		breq .L82
612
 629               	.L80:
613
 630 04ac 26E1      		ldi r18,lo8(22)
614
 631 04ae 40E0      		ldi r20,lo8(PPM_in)
615
 632 04b0 50E0      		ldi r21,hi8(PPM_in)
616
 633 04b2 60E0      		ldi r22,lo8(0)
617
 634 04b4 84E3      		ldi r24,lo8(52)
618
 635 04b6 0E94 0000 		call SendOutData
619
 636 04ba 8FEF      		ldi r24,lo8(-1)
620
 637 04bc 8093 0000 		sts RemotePollDisplayLine,r24
621
 638 04c0 00C0      		rjmp .L77
622
 639               	.L82:
623
 640 04c2 44E1      		ldi r20,lo8(20)
624
 641 04c4 949F      		mul r25,r20
625
 642 04c6 A001      		movw r20,r0
626
 643 04c8 1124      		clr r1
627
 644 04ca 4050      		subi r20,lo8(-(DisplayBuff))
628
 645 04cc 5040      		sbci r21,hi8(-(DisplayBuff))
629
 646 04ce 24E1      		ldi r18,lo8(20)
630
 647 04d0 60E0      		ldi r22,lo8(0)
631
 648 04d2 832F      		mov r24,r19
632
 649 04d4 8F5C      		subi r24,lo8(-(49))
633
 650 04d6 0E94 0000 		call SendOutData
634
 651               	.L77:
635
 652 04da 8091 0000 		lds r24,GetVersionAnforderung
636
 653 04de 8823      		tst r24
637
 654 04e0 01F0      		breq .L85
638
 655 04e2 8091 0000 		lds r24,UebertragungAbgeschlossen
639
 656 04e6 8823      		tst r24
640
 657 04e8 01F0      		breq .L85
641
 658 04ea 2AE0      		ldi r18,lo8(10)
642
 659 04ec 40E0      		ldi r20,lo8(VersionInfo)
643
 660 04ee 50E0      		ldi r21,hi8(VersionInfo)
644
 661 04f0 6091 0000 		lds r22,MeineSlaveAdresse
645
 662 04f4 86E5      		ldi r24,lo8(86)
646
 663 04f6 0E94 0000 		call SendOutData
647
 664 04fa 1092 0000 		sts GetVersionAnforderung,__zero_reg__
648
 665               	.L85:
649
 666 04fe 0895      		ret
650
 667               	/* epilogue: frame size=0 */
651
 668               	/* epilogue: noreturn */
652
 669               	/* epilogue end (size=0) */
653
 670               	/* function DatenUebertragung size 166 (166) */
654
 672               	.global	BearbeiteRxDaten
655
 674               	BearbeiteRxDaten:
656
 675               	/* prologue: frame size=2 */
657
 676 0500 A2E0      		ldi r26,lo8(2)
658
 677 0502 B0E0      		ldi r27,hi8(2)
659
 678 0504 E0E0      		ldi r30,lo8(gs(1f))
660
 679 0506 F0E0      		ldi r31,hi8(gs(1f))
661
 680 0508 0C94 0000 		jmp __prologue_saves__+30
662
 681               	1:
663
 682               	/* prologue end (size=6) */
664
 683 050c 8091 0000 		lds r24,NeuerDatensatzEmpfangen
665
 684 0510 8823      		tst r24
666
 685 0512 01F4      		brne .+2
667
 686 0514 00C0      		rjmp .L108
668
 687 0516 8FEF      		ldi r24,lo8(-1)
669
 688 0518 8093 0000 		sts PcZugriff,r24
670
 689 051c 8091 0000 		lds r24,RxdBuffer+2
671
 690 0520 9927      		clr r25
672
 691 0522 AA27      		clr r26
673
 692 0524 BB27      		clr r27
674
 693 0526 FC01      		movw r30,r24
675
 694 0528 E156      		subi r30,lo8(-(-97))
676
 695 052a F040      		sbci r31,hi8(-(-97))
677
 696 052c E631      		cpi r30,22
678
 697 052e F105      		cpc r31,__zero_reg__
679
 698 0530 00F0      		brlo .+2
680
 699 0532 00C0      		rjmp .L89
681
 700 0534 E050      		subi r30,lo8(-(gs(.L100)))
682
 701 0536 F040      		sbci r31,hi8(-(gs(.L100)))
683
 702 0538 0C94 0000 		jmp __tablejump2__
684
 703               		.data
685
 704               		.section .progmem.gcc_sw_table, "a", @progbits
686
 705               		.p2align 1
687
 706               	.L100:
688
 707               		.data
689
 708               		.section .progmem.gcc_sw_table, "a", @progbits
690
 709               		.p2align 1
691
 710 0000 0000      		.word gs(.L90)
692
 711 0002 0000      		.word gs(.L91)
693
 712 0004 0000      		.word gs(.L92)
694
 713 0006 0000      		.word gs(.L89)
695
 714 0008 0000      		.word gs(.L89)
696
 715 000a 0000      		.word gs(.L89)
697
 716 000c 0000      		.word gs(.L93)
698
 717 000e 0000      		.word gs(.L94)
699
 718 0010 0000      		.word gs(.L89)
700
 719 0012 0000      		.word gs(.L89)
701
 720 0014 0000      		.word gs(.L95)
702
 721 0016 0000      		.word gs(.L96)
703
 722 0018 0000      		.word gs(.L96)
704
 723 001a 0000      		.word gs(.L96)
705
 724 001c 0000      		.word gs(.L96)
706
 725 001e 0000      		.word gs(.L96)
707
 726 0020 0000      		.word gs(.L97)
708
 727 0022 0000      		.word gs(.L89)
709
 728 0024 0000      		.word gs(.L89)
710
 729 0026 0000      		.word gs(.L98)
711
 730 0028 0000      		.word gs(.L89)
712
 731 002a 0000      		.word gs(.L99)
713
 732               		.text
714
 733               	.L90:
715
 734 053c 2091 0000 		lds r18,AnzahlEmpfangsBytes
716
 735 0540 43E0      		ldi r20,lo8(3)
717
 736 0542 62E0      		ldi r22,lo8(2)
718
 737 0544 CE01      		movw r24,r28
719
 738 0546 0196      		adiw r24,1
720
 739 0548 0E94 0000 		call Decode64
721
 740 054c 8981      		ldd r24,Y+1
722
 741 054e 8093 0000 		sts DebugTextAnforderung,r24
723
 742 0552 00C0      		rjmp .L89
724
 743               	.L91:
725
 744 0554 2091 0000 		lds r18,AnzahlEmpfangsBytes
726
 745 0558 43E0      		ldi r20,lo8(3)
727
 746 055a 6BE0      		ldi r22,lo8(11)
728
 747 055c 80E0      		ldi r24,lo8(ExternControl)
729
 748 055e 90E0      		ldi r25,hi8(ExternControl)
730
 749 0560 0E94 0000 		call Decode64
731
 750 0564 8091 0000 		lds r24,RemoteTasten
732
 751 0568 9091 0000 		lds r25,ExternControl+2
733
 752 056c 892B      		or r24,r25
734
 753 056e 8093 0000 		sts RemoteTasten,r24
735
 754 0572 8091 0000 		lds r24,ExternControl+9
736
 755 0576 00C0      		rjmp .L109
737
 756               	.L92:
738
 757 0578 2091 0000 		lds r18,AnzahlEmpfangsBytes
739
 758 057c 43E0      		ldi r20,lo8(3)
740
 759 057e 6BE0      		ldi r22,lo8(11)
741
 760 0580 80E0      		ldi r24,lo8(ExternControl)
742
 761 0582 90E0      		ldi r25,hi8(ExternControl)
743
 762 0584 0E94 0000 		call Decode64
744
 763 0588 8091 0000 		lds r24,RemoteTasten
745
 764 058c 9091 0000 		lds r25,ExternControl+2
746
 765 0590 892B      		or r24,r25
747
 766 0592 8093 0000 		sts RemoteTasten,r24
748
 767 0596 8091 0000 		lds r24,ExternControl+9
749
 768 059a 8093 0000 		sts ConfirmFrame,r24
750
 769 059e 81E0      		ldi r24,lo8(1)
751
 770 05a0 8093 0000 		sts DebugDataAnforderung,r24
752
 771 05a4 00C0      		rjmp .L89
753
 772               	.L94:
754
 773 05a6 2091 0000 		lds r18,AnzahlEmpfangsBytes
755
 774 05aa 43E0      		ldi r20,lo8(3)
756
 775 05ac 62E0      		ldi r22,lo8(2)
757
 776 05ae CE01      		movw r24,r28
758
 777 05b0 0196      		adiw r24,1
759
 778 05b2 0E94 0000 		call Decode64
760
 779 05b6 8091 0000 		lds r24,RemoteTasten
761
 780 05ba 9981      		ldd r25,Y+1
762
 781 05bc 892B      		or r24,r25
763
 782 05be 8093 0000 		sts RemoteTasten,r24
764
 783 05c2 8A81      		ldd r24,Y+2
765
 784 05c4 8F3F      		cpi r24,lo8(-1)
766
 785 05c6 01F4      		brne .L101
767
 786 05c8 81E0      		ldi r24,lo8(1)
768
 787 05ca 8093 0000 		sts NurKanalAnforderung,r24
769
 788 05ce 00C0      		rjmp .L103
770
 789               	.L101:
771
 790 05d0 1092 0000 		sts NurKanalAnforderung,__zero_reg__
772
 791               	.L103:
773
 792 05d4 81E0      		ldi r24,lo8(1)
774
 793 05d6 8093 0000 		sts DebugDisplayAnforderung,r24
775
 794 05da 00C0      		rjmp .L89
776
 795               	.L98:
777
 796 05dc 2091 0000 		lds r18,AnzahlEmpfangsBytes
778
 797 05e0 43E0      		ldi r20,lo8(3)
779
 798 05e2 64E0      		ldi r22,lo8(4)
780
 799 05e4 80E0      		ldi r24,lo8(MotorTest)
781
 800 05e6 90E0      		ldi r25,hi8(MotorTest)
782
 801 05e8 0E94 0000 		call Decode64
783
 802 05ec 00C0      		rjmp .L89
784
 803               	.L95:
785
 804 05ee 2091 0000 		lds r18,AnzahlEmpfangsBytes
786
 805 05f2 43E0      		ldi r20,lo8(3)
787
 806 05f4 64E0      		ldi r22,lo8(4)
788
 807 05f6 80E0      		ldi r24,lo8(DubWiseKeys)
789
 808 05f8 90E0      		ldi r25,hi8(DubWiseKeys)
790
 809 05fa 0E94 0000 		call Decode64
791
 810 05fe 8091 0000 		lds r24,DubWiseKeys+3
792
 811               	.L109:
793
 812 0602 8093 0000 		sts ConfirmFrame,r24
794
 813 0606 00C0      		rjmp .L89
795
 814               	.L99:
796
 815 0608 81E0      		ldi r24,lo8(1)
797
 816 060a 8093 0000 		sts GetVersionAnforderung,r24
798
 817 060e 00C0      		rjmp .L89
799
 818               	.L93:
800
 819 0610 81E0      		ldi r24,lo8(1)
801
 820 0612 8093 0000 		sts DebugGetAnforderung,r24
802
 821 0616 00C0      		rjmp .L89
803
 822               	.L97:
804
 823 0618 2091 0000 		lds r18,AnzahlEmpfangsBytes
805
 824 061c 43E0      		ldi r20,lo8(3)
806
 825 061e 62E0      		ldi r22,lo8(2)
807
 826 0620 CE01      		movw r24,r28
808
 827 0622 0196      		adiw r24,1
809
 828 0624 0E94 0000 		call Decode64
810
 829 0628 8981      		ldd r24,Y+1
811
 830 062a 8F3F      		cpi r24,lo8(-1)
812
 831 062c 01F0      		breq .L104
813
 832 062e 8630      		cpi r24,lo8(6)
814
 833 0630 00F0      		brlo .L106
815
 834 0632 85E0      		ldi r24,lo8(5)
816
 835 0634 8983      		std Y+1,r24
817
 836               	.L106:
818
 837 0636 46E4      		ldi r20,lo8(70)
819
 838 0638 60E0      		ldi r22,lo8(EE_Parameter)
820
 839 063a 70E0      		ldi r23,hi8(EE_Parameter)
821
 840 063c 8981      		ldd r24,Y+1
822
 841 063e 0E94 0000 		call ReadParameterSet
823
 842 0642 8981      		ldd r24,Y+1
824
 843 0644 26E4      		ldi r18,lo8(70)
825
 844 0646 40E0      		ldi r20,lo8(EE_Parameter)
826
 845 0648 50E0      		ldi r21,hi8(EE_Parameter)
827
 846 064a 6091 0000 		lds r22,MeineSlaveAdresse
828
 847 064e 00C0      		rjmp .L110
829
 848               	.L104:
830
 849 0650 1091 0000 		lds r17,MeineSlaveAdresse
831
 850 0654 0E94 0000 		call GetActiveParamSetNumber
832
 851 0658 26E4      		ldi r18,lo8(70)
833
 852 065a 40E0      		ldi r20,lo8(EE_Parameter)
834
 853 065c 50E0      		ldi r21,hi8(EE_Parameter)
835
 854 065e 612F      		mov r22,r17
836
 855               	.L110:
837
 856 0660 855B      		subi r24,lo8(-(75))
838
 857 0662 0E94 0000 		call SendOutData
839
 858 0666 00C0      		rjmp .L89
840
 859               	.L96:
841
 860 0668 2091 0000 		lds r18,AnzahlEmpfangsBytes
842
 861 066c 43E0      		ldi r20,lo8(3)
843
 862 066e 66E4      		ldi r22,lo8(70)
844
 863 0670 80E0      		ldi r24,lo8(EE_Parameter)
845
 864 0672 90E0      		ldi r25,hi8(EE_Parameter)
846
 865 0674 0E94 0000 		call Decode64
847
 866 0678 8091 0000 		lds r24,RxdBuffer+2
848
 867 067c 46E4      		ldi r20,lo8(70)
849
 868 067e 60E0      		ldi r22,lo8(EE_Parameter)
850
 869 0680 70E0      		ldi r23,hi8(EE_Parameter)
851
 870 0682 8B56      		subi r24,lo8(-(-107))
852
 871 0684 0E94 0000 		call WriteParameterSet
853
 872 0688 8091 0000 		lds r24,RxdBuffer+2
854
 873 068c 8B56      		subi r24,lo8(-(-107))
855
 874 068e A0E0      		ldi r26,lo8(EEPromArray+2)
856
 875 0690 B0E0      		ldi r27,hi8(EEPromArray+2)
857
 876               	/* #APP */
858
 877 0692 082E      		mov __tmp_reg__,r24
859
 878 0694 0E94 0000 		call __eeprom_write_byte_1F2021
860
 879               	/* #NOAPP */
861
 880 0698 6091 0000 		lds r22,EE_Parameter+43
862
 881 069c 7727      		clr r23
863
 882 069e 8827      		clr r24
864
 883 06a0 9927      		clr r25
865
 884 06a2 24EC      		ldi r18,lo8(2500)
866
 885 06a4 39E0      		ldi r19,hi8(2500)
867
 886 06a6 40E0      		ldi r20,hlo8(2500)
868
 887 06a8 50E0      		ldi r21,hhi8(2500)
869
 888 06aa 0E94 0000 		call __mulsi3
870
 889 06ae 6093 0000 		sts Umschlag180Nick,r22
871
 890 06b2 7093 0000 		sts (Umschlag180Nick)+1,r23
872
 891 06b6 8093 0000 		sts (Umschlag180Nick)+2,r24
873
 892 06ba 9093 0000 		sts (Umschlag180Nick)+3,r25
874
 893 06be 6091 0000 		lds r22,EE_Parameter+44
875
 894 06c2 7727      		clr r23
876
 895 06c4 8827      		clr r24
877
 896 06c6 9927      		clr r25
878
 897 06c8 0E94 0000 		call __mulsi3
879
 898 06cc 6093 0000 		sts Umschlag180Roll,r22
880
 899 06d0 7093 0000 		sts (Umschlag180Roll)+1,r23
881
 900 06d4 8093 0000 		sts (Umschlag180Roll)+2,r24
882
 901 06d8 9093 0000 		sts (Umschlag180Roll)+3,r25
883
 902 06dc 0E94 0000 		call GetActiveParamSetNumber
884
 903 06e0 0E94 0000 		call Piep
885
 904               	.L89:
886
 905 06e4 1092 0000 		sts NeuerDatensatzEmpfangen,__zero_reg__
887
 906               	.L108:
888
 907               	/* epilogue: frame size=2 */
889
 908 06e8 E3E0      		ldi r30,3
890
 909 06ea CE5F      		subi r28,-2
891
 910 06ec 0C94 0000 		jmp __epilogue_restores__+30
892
 911               	/* epilogue end (size=4) */
893
 912               	/* function BearbeiteRxDaten size 271 (261) */
894
 914               	.global	DebugGetAnforderung
895
 915               	.global	DebugGetAnforderung
896
 916               		.section .bss
897
 919               	DebugGetAnforderung:
898
 920 0000 00        		.skip 1,0
899
 921               	.global	DebugDisplayAnforderung
900
 922               	.global	DebugDisplayAnforderung
901
 925               	DebugDisplayAnforderung:
902
 926 0001 00        		.skip 1,0
903
 927               	.global	DebugDataAnforderung
904
 928               	.global	DebugDataAnforderung
905
 931               	DebugDataAnforderung:
906
 932 0002 00        		.skip 1,0
907
 933               	.global	GetVersionAnforderung
908
 934               	.global	GetVersionAnforderung
909
 937               	GetVersionAnforderung:
910
 938 0003 00        		.skip 1,0
911
 939               	.global	NeuerDatensatzEmpfangen
912
 940               	.global	NeuerDatensatzEmpfangen
913
 943               	NeuerDatensatzEmpfangen:
914
 944 0004 00        		.skip 1,0
915
 945               	.global	NeueKoordinateEmpfangen
916
 946               	.global	NeueKoordinateEmpfangen
917
 949               	NeueKoordinateEmpfangen:
918
 950 0005 00        		.skip 1,0
919
 951               	.global	UebertragungAbgeschlossen
920
 952               		.data
921
 955               	UebertragungAbgeschlossen:
922
 956 0000 01        		.byte	1
923
 957               	.global	CntCrcError
924
 958               	.global	CntCrcError
925
 959               		.section .bss
926
 962               	CntCrcError:
927
 963 0006 00        		.skip 1,0
928
 964               	.global	AnzahlEmpfangsBytes
929
 965               	.global	AnzahlEmpfangsBytes
930
 968               	AnzahlEmpfangsBytes:
931
 969 0007 00        		.skip 1,0
932
 970               	.global	PC_DebugTimeout
933
 971               	.global	PC_DebugTimeout
934
 974               	PC_DebugTimeout:
935
 975 0008 00        		.skip 1,0
936
 976               	.global	RemotePollDisplayLine
937
 977               	.global	RemotePollDisplayLine
938
 980               	RemotePollDisplayLine:
939
 981 0009 00        		.skip 1,0
940
 982               	.global	NurKanalAnforderung
941
 983               	.global	NurKanalAnforderung
942
 986               	NurKanalAnforderung:
943
 987 000a 00        		.skip 1,0
944
 988               	.global	DebugTextAnforderung
945
 989               		.data
946
 992               	DebugTextAnforderung:
947
 993 0001 FF        		.byte	-1
948
 994               	.global	PcZugriff
949
 997               	PcZugriff:
950
 998 0002 64        		.byte	100
951
 999               	.global	MotorTest
952
 1000               	.global	MotorTest
953
 1001               		.section .bss
954
 1004               	MotorTest:
955
 1005 000b 0000 0000 		.skip 4,0
956
 1006               	.global	DubWiseKeys
957
 1007               	.global	DubWiseKeys
958
 1010               	DubWiseKeys:
959
 1011 000f 0000 0000 		.skip 4,0
960
 1012               	.global	ANALOG_TEXT
961
 1013               		.data
962
 1016               	ANALOG_TEXT:
963
 1017 0003 496E 7465 		.ascii	"IntegralNick    "
964
 1017      6772 616C
965
 1017      4E69 636B
966
 1017      2020 2020
967
 1018 0013 496E 7465 		.ascii	"IntegralRoll    "
968
 1018      6772 616C
969
 1018      526F 6C6C
970
 1018      2020 2020
971
 1019 0023 4163 634E 		.ascii	"AccNick         "
972
 1019      6963 6B20
973
 1019      2020 2020
974
 1019      2020 2020
975
 1020 0033 4163 6352 		.ascii	"AccRoll         "
976
 1020      6F6C 6C20
977
 1020      2020 2020
978
 1020      2020 2020
979
 1021 0043 4779 726F 		.ascii	"GyroGier        "
980
 1021      4769 6572
981
 1021      2020 2020
982
 1021      2020 2020
983
 1022 0053 486F 6568 		.ascii	"HoehenWert      "
984
 1022      656E 5765
985
 1022      7274 2020
986
 1022      2020 2020
987
 1023 0063 4163 635A 		.ascii	"AccZ            "
988
 1023      2020 2020
989
 1023      2020 2020
990
 1023      2020 2020
991
 1024 0073 4761 7320 		.ascii	"Gas             "
992
 1024      2020 2020
993
 1024      2020 2020
994
 1024      2020 2020
995
 1025 0083 4B6F 6D70 		.ascii	"KompassValue    "
996
 1025      6173 7356
997
 1025      616C 7565
998
 1025      2020 2020
999
 1026 0093 5370 616E 		.ascii	"Spannung        "
1000
 1026      6E75 6E67
1001
 1026      2020 2020
1002
 1026      2020 2020
1003
 1027 00a3 456D 7066 		.ascii	"Empfang         "
1004
 1027      616E 6720
1005
 1027      2020 2020
1006
 1027      2020 2020
1007
 1028 00b3 416E 616C 		.ascii	"Analog11        "
1008
 1028      6F67 3131
1009
 1028      2020 2020
1010
 1028      2020 2020
1011
 1029 00c3 4D6F 746F 		.ascii	"Motor_Vorne     "
1012
 1029      725F 566F
1013
 1029      726E 6520
1014
 1029      2020 2020
1015
 1030 00d3 4D6F 746F 		.ascii	"Motor_Hinten    "
1016
 1030      725F 4869
1017
 1030      6E74 656E
1018
 1030      2020 2020
1019
 1031 00e3 4D6F 746F 		.ascii	"Motor_Links     "
1020
 1031      725F 4C69
1021
 1031      6E6B 7320
1022
 1031      2020 2020
1023
 1032 00f3 4D6F 746F 		.ascii	"Motor_Rechts    "
1024
 1032      725F 5265
1025
 1032      6368 7473
1026
 1032      2020 2020
1027
 1033 0103 4163 635F 		.ascii	"Acc_Z           "
1028
 1033      5A20 2020
1029
 1033      2020 2020
1030
 1033      2020 2020
1031
 1034 0113 4D69 7474 		.ascii	"MittelAccNick   "
1032
 1034      656C 4163
1033
 1034      634E 6963
1034
 1034      6B20 2020
1035
 1035 0123 4D69 7474 		.ascii	"MittelAccRoll   "
1036
 1035      656C 4163
1037
 1035      6352 6F6C
1038
 1035      6C20 2020
1039
 1036 0133 496E 7465 		.ascii	"IntegralErrNick "
1040
 1036      6772 616C
1041
 1036      4572 724E
1042
 1036      6963 6B20
1043
 1037 0143 496E 7465 		.ascii	"IntegralErrRoll "
1044
 1037      6772 616C
1045
 1037      4572 7252
1046
 1037      6F6C 6C20
1047
 1038 0153 4D69 7474 		.ascii	"MittelIntNick   "
1048
 1038      656C 496E
1049
 1038      744E 6963
1050
 1038      6B20 2020
1051
 1039 0163 4D69 7474 		.string	"MittelIntRoll\t "
1052
 1039      656C 496E
1053
 1039      7452 6F6C
1054
 1039      6C09 2000
1055
 1040 0173 4E65 7574 		.ascii	"NeutralNick     "
1056
 1040      7261 6C4E
1057
 1040      6963 6B20
1058
 1040      2020 2020
1059
 1041 0183 526F 6C6C 		.ascii	"RollOffset      "
1060
 1041      4F66 6673
1061
 1041      6574 2020
1062
 1041      2020 2020
1063
 1042 0193 496E 7452 		.ascii	"IntRoll*Faktor  "
1064
 1042      6F6C 6C2A
1065
 1042      4661 6B74
1066
 1042      6F72 2020
1067
 1043 01a3 416E 616C 		.ascii	"Analog26        "
1068
 1043      6F67 3236
1069
 1043      2020 2020
1070
 1043      2020 2020
1071
 1044 01b3 4469 7265 		.ascii	"DirektAusglRoll "
1072
 1044      6B74 4175
1073
 1044      7367 6C52
1074
 1044      6F6C 6C20
1075
 1045 01c3 4D65 7373 		.ascii	"MesswertRoll    "
1076
 1045      7765 7274
1077
 1045      526F 6C6C
1078
 1045      2020 2020
1079
 1046 01d3 4175 7367 		.ascii	"AusgleichRoll   "
1080
 1046      6C65 6963
1081
 1046      6852 6F6C
1082
 1046      6C20 2020
1083
 1047 01e3 492D 4C61 		.ascii	"I-LageRoll      "
1084
 1047      6765 526F
1085
 1047      6C6C 2020
1086
 1047      2020 2020
1087
 1048 01f3 5374 6963 		.ascii	"StickRoll       "
1088
 1048      6B52 6F6C
1089
 1048      6C20 2020
1090
 1048      2020 2020
1091
 1049               		.lcomm UartState.2058,1
1092
 1050               		.lcomm buf_ptr.2057,1
1093
 1051               		.lcomm crc2.2056,1
1094
 1052               		.lcomm crc1.2055,1
1095
 1053               		.lcomm crc.2054,2
1096
 1054               		.lcomm ptr.2041,2
1097
 1055               		.comm SendeBuffer,150,1
1098
 1056               		.comm RxdBuffer,150,1
1099
 1057               		.comm MeineSlaveAdresse,1,1
1100
 1058               		.comm Debug_Timer,2,1
1101
 1059               		.comm DebugOut,66,1
1102
 1060               		.comm ExternControl,11,1
1103
 1061               		.comm VersionInfo,10,1
1104
 1062               		.comm NMEABuffer,150,1
1105
 1063               		.comm ConfirmFrame,1,1
1106
 1064               	/* File "uart.c": code  919 = 0x0397 ( 839), prologues  38, epilogues  42 */
1107
DEFINED SYMBOLS
1108
                            *ABS*:00000000 uart.c
1109
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:3      *ABS*:0000003f __SREG__
1110
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:4      *ABS*:0000003e __SP_H__
1111
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:5      *ABS*:0000003d __SP_L__
1112
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:6      *ABS*:00000000 __tmp_reg__
1113
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:7      *ABS*:00000001 __zero_reg__
1114
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:13     .text:00000000 __vector_22
1115
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:955    .data:00000000 UebertragungAbgeschlossen
1116
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1053   .bss:00000019 ptr.2041
1117
                            *COM*:00000096 SendeBuffer
1118
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:69     .text:0000006c __vector_20
1119
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1049   .bss:00000014 buf_ptr.2057
1120
                             .bss:00000013 UartState.2058
1121
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:943    .bss:00000004 NeuerDatensatzEmpfangen
1122
                            *COM*:00000096 RxdBuffer
1123
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1052   .bss:00000017 crc.2054
1124
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1051   .bss:00000016 crc1.2055
1125
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1050   .bss:00000015 crc2.2056
1126
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:968    .bss:00000007 AnzahlEmpfangsBytes
1127
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:962    .bss:00000006 CntCrcError
1128
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:207    .text:00000190 AddCRC
1129
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:258    .text:000001e6 SendOutData
1130
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:366    .text:000002aa Decode64
1131
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:466    .text:0000035a uart_putchar
1132
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:490    .text:0000037c WriteProgramData
1133
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:500    .text:0000037e UART_Init
1134
                            *COM*:00000002 Debug_Timer
1135
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:532    .text:000003b4 DatenUebertragung
1136
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:919    .bss:00000000 DebugGetAnforderung
1137
                            *COM*:0000000b ExternControl
1138
                            *COM*:00000001 MeineSlaveAdresse
1139
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:931    .bss:00000002 DebugDataAnforderung
1140
                            *COM*:00000042 DebugOut
1141
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:992    .data:00000001 DebugTextAnforderung
1142
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1016   .data:00000003 ANALOG_TEXT
1143
                            *COM*:00000001 ConfirmFrame
1144
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:925    .bss:00000001 DebugDisplayAnforderung
1145
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:980    .bss:00000009 RemotePollDisplayLine
1146
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:986    .bss:0000000a NurKanalAnforderung
1147
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:937    .bss:00000003 GetVersionAnforderung
1148
                            *COM*:0000000a VersionInfo
1149
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:674    .text:00000500 BearbeiteRxDaten
1150
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:997    .data:00000002 PcZugriff
1151
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1004   .bss:0000000b MotorTest
1152
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:1010   .bss:0000000f DubWiseKeys
1153
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:949    .bss:00000005 NeueKoordinateEmpfangen
1154
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccvgt8J9.s:974    .bss:00000008 PC_DebugTimeout
1155
                            *COM*:00000096 NMEABuffer
1156
 
1157
UNDEFINED SYMBOLS
1158
__do_copy_data
1159
__do_clear_bss
1160
SetDelay
1161
CheckDelay
1162
Menu
1163
PPM_in
1164
DisplayBuff
1165
__prologue_saves__
1166
__tablejump2__
1167
RemoteTasten
1168
EE_Parameter
1169
ReadParameterSet
1170
GetActiveParamSetNumber
1171
WriteParameterSet
1172
EEPromArray
1173
__eeprom_write_byte_1F2021
1174
__mulsi3
1175
Umschlag180Nick
1176
Umschlag180Roll
1177
Piep
1178
__epilogue_restores__