Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1379 Arthur 1
   1               		.file	"mymath.c"
2
   2               	__SREG__ = 0x3f
3
   3               	__SP_H__ = 0x3e
4
   4               	__SP_L__ = 0x3d
5
   5               	__CCP__  = 0x34
6
   6               	__tmp_reg__ = 0
7
   7               	__zero_reg__ = 1
8
   8               		.text
9
   9               	.global	c_sin_8192
10
  11               	c_sin_8192:
11
  12 0000 CF93      		push r28
12
  13 0002 DF93      		push r29
13
  14               	/* prologue: function */
14
  15               	/* frame size = 0 */
15
  16 0004 97FD      		sbrc r25,7
16
  17 0006 00C0      		rjmp .L2
17
  18 0008 C1E0      		ldi r28,lo8(1)
18
  19 000a D0E0      		ldi r29,hi8(1)
19
  20               	.L3:
20
  21 000c 68E6      		ldi r22,lo8(360)
21
  22 000e 71E0      		ldi r23,hi8(360)
22
  23 0010 0E94 0000 		call __divmodhi4
23
  24 0014 9C01      		movw r18,r24
24
  25 0016 8B35      		cpi r24,91
25
  26 0018 9105      		cpc r25,__zero_reg__
26
  27 001a 04F0      		brlt .L9
27
  28 001c 8B55      		subi r24,lo8(-(-91))
28
  29 001e 9040      		sbci r25,hi8(-(-91))
29
  30 0020 8A35      		cpi r24,90
30
  31 0022 9105      		cpc r25,__zero_reg__
31
  32 0024 00F0      		brlo .L11
32
  33 0026 C901      		movw r24,r18
33
  34 0028 855B      		subi r24,lo8(-(-181))
34
  35 002a 9040      		sbci r25,hi8(-(-181))
35
  36 002c 8A35      		cpi r24,90
36
  37 002e 9105      		cpc r25,__zero_reg__
37
  38 0030 00F0      		brlo .L12
38
  39 0032 88E6      		ldi r24,lo8(360)
39
  40 0034 91E0      		ldi r25,hi8(360)
40
  41 0036 AC01      		movw r20,r24
41
  42 0038 421B      		sub r20,r18
42
  43 003a 530B      		sbc r21,r19
43
  44 003c 9A01      		movw r18,r20
44
  45 003e 4FEF      		ldi r20,lo8(-1)
45
  46 0040 5FEF      		ldi r21,hi8(-1)
46
  47 0042 00C0      		rjmp .L5
47
  48               	.L11:
48
  49 0044 84EB      		ldi r24,lo8(180)
49
  50 0046 90E0      		ldi r25,hi8(180)
50
  51 0048 AC01      		movw r20,r24
51
  52 004a 421B      		sub r20,r18
52
  53 004c 530B      		sbc r21,r19
53
  54 004e 9A01      		movw r18,r20
54
  55               	.L9:
55
  56 0050 41E0      		ldi r20,lo8(1)
56
  57 0052 50E0      		ldi r21,hi8(1)
57
  58               	.L5:
58
  59 0054 F901      		movw r30,r18
59
  60 0056 EE0F      		lsl r30
60
  61 0058 FF1F      		rol r31
61
  62 005a E050      		subi r30,lo8(-(pgm_sinlookup))
62
  63 005c F040      		sbci r31,hi8(-(pgm_sinlookup))
63
  64               	/* #APP */
64
  65               	 ;  32 "mymath.c" 1
65
  66 005e 8591      		lpm r24, Z+
66
  67 0060 9491      		lpm r25, Z
67
  68
68
  69               	 ;  0 "" 2
69
  70               	/* #NOAPP */
70
  71 0062 4C9F      		mul r20,r28
71
  72 0064 9001      		movw r18,r0
72
  73 0066 4D9F      		mul r20,r29
73
  74 0068 300D      		add r19,r0
74
  75 006a 5C9F      		mul r21,r28
75
  76 006c 300D      		add r19,r0
76
  77 006e 1124      		clr r1
77
  78 0070 A901      		movw r20,r18
78
  79 0072 489F      		mul r20,r24
79
  80 0074 9001      		movw r18,r0
80
  81 0076 499F      		mul r20,r25
81
  82 0078 300D      		add r19,r0
82
  83 007a 589F      		mul r21,r24
83
  84 007c 300D      		add r19,r0
84
  85 007e 1124      		clr r1
85
  86 0080 C901      		movw r24,r18
86
  87               	/* epilogue start */
87
  88 0082 DF91      		pop r29
88
  89 0084 CF91      		pop r28
89
  90 0086 0895      		ret
90
  91               	.L2:
91
  92 0088 9095      		com r25
92
  93 008a 8195      		neg r24
93
  94 008c 9F4F      		sbci r25,lo8(-1)
94
  95 008e CFEF      		ldi r28,lo8(-1)
95
  96 0090 DFEF      		ldi r29,hi8(-1)
96
  97 0092 00C0      		rjmp .L3
97
  98               	.L12:
98
  99 0094 245B      		subi r18,lo8(-(-180))
99
 100 0096 3040      		sbci r19,hi8(-(-180))
100
 101 0098 4FEF      		ldi r20,lo8(-1)
101
 102 009a 5FEF      		ldi r21,hi8(-1)
102
 103 009c 00C0      		rjmp .L5
103
 105               	.global	c_cos_8192
104
 107               	c_cos_8192:
105
 108               	/* prologue: function */
106
 109               	/* frame size = 0 */
107
 110 009e 2AE5      		ldi r18,lo8(90)
108
 111 00a0 30E0      		ldi r19,hi8(90)
109
 112 00a2 A901      		movw r20,r18
110
 113 00a4 481B      		sub r20,r24
111
 114 00a6 590B      		sbc r21,r25
112
 115 00a8 CA01      		movw r24,r20
113
 116 00aa 0E94 0000 		call c_sin_8192
114
 117               	/* epilogue start */
115
 118 00ae 0895      		ret
116
 120               	.global	c_atan2
117
 122               	c_atan2:
118
 123 00b0 1F93      		push r17
119
 124 00b2 CF93      		push r28
120
 125 00b4 DF93      		push r29
121
 126               	/* prologue: function */
122
 127               	/* frame size = 0 */
123
 128 00b6 9C01      		movw r18,r24
124
 129 00b8 EB01      		movw r28,r22
125
 130 00ba 6115      		cp r22,__zero_reg__
126
 131 00bc 7105      		cpc r23,__zero_reg__
127
 132 00be 01F4      		brne .L16
128
 133 00c0 0097      		sbiw r24,0
129
 134 00c2 01F4      		brne .+2
130
 135 00c4 00C0      		rjmp .L37
131
 136               	.L16:
132
 137 00c6 37FD      		sbrc r19,7
133
 138 00c8 00C0      		rjmp .L18
134
 139 00ca 11E0      		ldi r17,lo8(1)
135
 140               	.L19:
136
 141 00cc 2097      		sbiw r28,0
137
 142 00ce 01F4      		brne .+2
138
 143 00d0 00C0      		rjmp .L38
139
 144 00d2 B901      		movw r22,r18
140
 145 00d4 8827      		clr r24
141
 146 00d6 77FD      		sbrc r23,7
142
 147 00d8 8095      		com r24
143
 148 00da 982F      		mov r25,r24
144
 149 00dc 660F      		lsl r22
145
 150 00de 771F      		rol r23
146
 151 00e0 881F      		rol r24
147
 152 00e2 991F      		rol r25
148
 153 00e4 660F      		lsl r22
149
 154 00e6 771F      		rol r23
150
 155 00e8 881F      		rol r24
151
 156 00ea 991F      		rol r25
152
 157 00ec 660F      		lsl r22
153
 158 00ee 771F      		rol r23
154
 159 00f0 881F      		rol r24
155
 160 00f2 991F      		rol r25
156
 161 00f4 660F      		lsl r22
157
 162 00f6 771F      		rol r23
158
 163 00f8 881F      		rol r24
159
 164 00fa 991F      		rol r25
160
 165 00fc 660F      		lsl r22
161
 166 00fe 771F      		rol r23
162
 167 0100 881F      		rol r24
163
 168 0102 991F      		rol r25
164
 169 0104 660F      		lsl r22
165
 170 0106 771F      		rol r23
166
 171 0108 881F      		rol r24
167
 172 010a 991F      		rol r25
168
 173 010c 9E01      		movw r18,r28
169
 174 010e 4427      		clr r20
170
 175 0110 37FD      		sbrc r19,7
171
 176 0112 4095      		com r20
172
 177 0114 542F      		mov r21,r20
173
 178 0116 0E94 0000 		call __divmodsi4
174
 179 011a F901      		movw r30,r18
175
 180 011c 37FD      		sbrc r19,7
176
 181 011e 00C0      		rjmp .L39
177
 182               	.L21:
178
 183 0120 81E0      		ldi r24,hi8(346)
179
 184 0122 EA35      		cpi r30,lo8(346)
180
 185 0124 F807      		cpc r31,r24
181
 186 0126 04F4      		brge .L22
182
 187 0128 E050      		subi r30,lo8(-(pgm_atanlookup))
183
 188 012a F040      		sbci r31,hi8(-(pgm_atanlookup))
184
 189               	/* #APP */
185
 190               	 ;  62 "mymath.c" 1
186
 191 012c 8491      		lpm r24, Z
187
 192
188
 193               	 ;  0 "" 2
189
 194               	/* #NOAPP */
190
 195 012e E82F      		mov r30,r24
191
 196 0130 F0E0      		ldi r31,lo8(0)
192
 197               	.L23:
193
 198 0132 1C16      		cp __zero_reg__,r28
194
 199 0134 1D06      		cpc __zero_reg__,r29
195
 200 0136 04F4      		brge .L34
196
 201               	.L41:
197
 202 0138 812F      		mov r24,r17
198
 203 013a 9927      		clr r25
199
 204 013c 87FD      		sbrc r24,7
200
 205 013e 9095      		com r25
201
 206 0140 E89F      		mul r30,r24
202
 207 0142 9001      		movw r18,r0
203
 208 0144 E99F      		mul r30,r25
204
 209 0146 300D      		add r19,r0
205
 210 0148 F89F      		mul r31,r24
206
 211 014a 300D      		add r19,r0
207
 212 014c 1124      		clr r1
208
 213               	.L17:
209
 214 014e C901      		movw r24,r18
210
 215               	/* epilogue start */
211
 216 0150 DF91      		pop r29
212
 217 0152 CF91      		pop r28
213
 218 0154 1F91      		pop r17
214
 219 0156 0895      		ret
215
 220               	.L38:
216
 221 0158 8AE5      		ldi r24,lo8(90)
217
 222 015a 1802      		muls r17,r24
218
 223 015c 9001      		movw r18,r0
219
 224 015e 1124      		clr r1
220
 225 0160 C901      		movw r24,r18
221
 226 0162 DF91      		pop r29
222
 227 0164 CF91      		pop r28
223
 228 0166 1F91      		pop r17
224
 229 0168 0895      		ret
225
 230               	.L37:
226
 231 016a 20E0      		ldi r18,lo8(0)
227
 232 016c 30E0      		ldi r19,hi8(0)
228
 233 016e C901      		movw r24,r18
229
 234 0170 DF91      		pop r29
230
 235 0172 CF91      		pop r28
231
 236 0174 1F91      		pop r17
232
 237 0176 0895      		ret
233
 238               	.L18:
234
 239 0178 1FEF      		ldi r17,lo8(-1)
235
 240 017a 00C0      		rjmp .L19
236
 241               	.L22:
237
 242 017c 8CE1      		ldi r24,hi8(7335)
238
 243 017e E73A      		cpi r30,lo8(7335)
239
 244 0180 F807      		cpc r31,r24
240
 245 0182 04F4      		brge .L40
241
 246 0184 89E0      		ldi r24,hi8(2445)
242
 247 0186 ED38      		cpi r30,lo8(2445)
243
 248 0188 F807      		cpc r31,r24
244
 249 018a 04F0      		brlt .L25
245
 250 018c E9E5      		ldi r30,lo8(89)
246
 251 018e F0E0      		ldi r31,hi8(89)
247
 252 0190 00C0      		rjmp .L23
248
 253               	.L40:
249
 254 0192 EAE5      		ldi r30,lo8(90)
250
 255 0194 F0E0      		ldi r31,hi8(90)
251
 256 0196 1C16      		cp __zero_reg__,r28
252
 257 0198 1D06      		cpc __zero_reg__,r29
253
 258 019a 04F0      		brlt .L41
254
 259               	.L34:
255
 260 019c 1130      		cpi r17,lo8(1)
256
 261 019e 01F4      		brne .L35
257
 262 01a0 24EB      		ldi r18,lo8(180)
258
 263 01a2 30E0      		ldi r19,hi8(180)
259
 264 01a4 2E1B      		sub r18,r30
260
 265 01a6 3F0B      		sbc r19,r31
261
 266 01a8 00C0      		rjmp .L17
262
 267               	.L39:
263
 268 01aa F095      		com r31
264
 269 01ac E195      		neg r30
265
 270 01ae FF4F      		sbci r31,lo8(-1)
266
 271 01b0 00C0      		rjmp .L21
267
 272               	.L25:
268
 273 01b2 85E0      		ldi r24,hi8(1466)
269
 274 01b4 EA3B      		cpi r30,lo8(1466)
270
 275 01b6 F807      		cpc r31,r24
271
 276 01b8 04F4      		brge .L42
272
 277 01ba 84E0      		ldi r24,hi8(1047)
273
 278 01bc E731      		cpi r30,lo8(1047)
274
 279 01be F807      		cpc r31,r24
275
 280 01c0 04F0      		brlt .L27
276
 281 01c2 E7E5      		ldi r30,lo8(87)
277
 282 01c4 F0E0      		ldi r31,hi8(87)
278
 283 01c6 00C0      		rjmp .L23
279
 284               	.L42:
280
 285 01c8 E8E5      		ldi r30,lo8(88)
281
 286 01ca F0E0      		ldi r31,hi8(88)
282
 287 01cc 00C0      		rjmp .L23
283
 288               	.L35:
284
 289 01ce 9F01      		movw r18,r30
285
 290 01d0 245B      		subi r18,lo8(-(-180))
286
 291 01d2 3040      		sbci r19,hi8(-(-180))
287
 292 01d4 C901      		movw r24,r18
288
 293 01d6 DF91      		pop r29
289
 294 01d8 CF91      		pop r28
290
 295 01da 1F91      		pop r17
291
 296 01dc 0895      		ret
292
 297               	.L27:
293
 298 01de 83E0      		ldi r24,hi8(814)
294
 299 01e0 EE32      		cpi r30,lo8(814)
295
 300 01e2 F807      		cpc r31,r24
296
 301 01e4 04F0      		brlt .L28
297
 302 01e6 E6E5      		ldi r30,lo8(86)
298
 303 01e8 F0E0      		ldi r31,hi8(86)
299
 304 01ea 00C0      		rjmp .L23
300
 305               	.L28:
301
 306 01ec 82E0      		ldi r24,hi8(665)
302
 307 01ee E939      		cpi r30,lo8(665)
303
 308 01f0 F807      		cpc r31,r24
304
 309 01f2 04F0      		brlt .L29
305
 310 01f4 E5E5      		ldi r30,lo8(85)
306
 311 01f6 F0E0      		ldi r31,hi8(85)
307
 312 01f8 00C0      		rjmp .L23
308
 313               	.L29:
309
 314 01fa 82E0      		ldi r24,hi8(562)
310
 315 01fc E233      		cpi r30,lo8(562)
311
 316 01fe F807      		cpc r31,r24
312
 317 0200 04F0      		brlt .L30
313
 318 0202 E4E5      		ldi r30,lo8(84)
314
 319 0204 F0E0      		ldi r31,hi8(84)
315
 320 0206 00C0      		rjmp .L23
316
 321               	.L30:
317
 322 0208 81E0      		ldi r24,hi8(487)
318
 323 020a E73E      		cpi r30,lo8(487)
319
 324 020c F807      		cpc r31,r24
320
 325 020e 04F0      		brlt .L31
321
 326 0210 E3E5      		ldi r30,lo8(83)
322
 327 0212 F0E0      		ldi r31,hi8(83)
323
 328 0214 00C0      		rjmp .L23
324
 329               	.L31:
325
 330 0216 81E0      		ldi r24,hi8(429)
326
 331 0218 ED3A      		cpi r30,lo8(429)
327
 332 021a F807      		cpc r31,r24
328
 333 021c 04F0      		brlt .L32
329
 334 021e E2E5      		ldi r30,lo8(82)
330
 335 0220 F0E0      		ldi r31,hi8(82)
331
 336 0222 00C0      		rjmp .L23
332
 337               	.L32:
333
 338 0224 EF57      		subi r30,lo8(383)
334
 339 0226 F140      		sbci r31,hi8(383)
335
 340 0228 04F4      		brge .L33
336
 341 022a E0E5      		ldi r30,lo8(80)
337
 342 022c F0E0      		ldi r31,hi8(80)
338
 343 022e 00C0      		rjmp .L23
339
 344               	.L33:
340
 345 0230 E1E5      		ldi r30,lo8(81)
341
 346 0232 F0E0      		ldi r31,hi8(81)
342
 347 0234 00C0      		rjmp .L23
343
 349               	.global	c_sqrt
344
 351               	c_sqrt:
345
 352 0236 AF92      		push r10
346
 353 0238 BF92      		push r11
347
 354 023a CF92      		push r12
348
 355 023c DF92      		push r13
349
 356 023e EF92      		push r14
350
 357 0240 FF92      		push r15
351
 358 0242 0F93      		push r16
352
 359 0244 1F93      		push r17
353
 360               	/* prologue: function */
354
 361               	/* frame size = 0 */
355
 362 0246 5B01      		movw r10,r22
356
 363 0248 6C01      		movw r12,r24
357
 364 024a 20E0      		ldi r18,lo8(0)
358
 365 024c 30E0      		ldi r19,hi8(0)
359
 366 024e 40E0      		ldi r20,hlo8(0)
360
 367 0250 50E0      		ldi r21,hhi8(0)
361
 368 0252 EE24      		clr r14
362
 369 0254 FF24      		clr r15
363
 370 0256 8701      		movw r16,r14
364
 371 0258 60E0      		ldi r22,lo8(0)
365
 372               	.L45:
366
 373 025a EE0C      		lsl r14
367
 374 025c FF1C      		rol r15
368
 375 025e 001F      		rol r16
369
 376 0260 111F      		rol r17
370
 377 0262 DA01      		movw r26,r20
371
 378 0264 C901      		movw r24,r18
372
 379 0266 880F      		lsl r24
373
 380 0268 991F      		rol r25
374
 381 026a AA1F      		rol r26
375
 382 026c BB1F      		rol r27
376
 383 026e 880F      		lsl r24
377
 384 0270 991F      		rol r25
378
 385 0272 AA1F      		rol r26
379
 386 0274 BB1F      		rol r27
380
 387 0276 A601      		movw r20,r12
381
 388 0278 9501      		movw r18,r10
382
 389 027a EEE1      		ldi r30,30
383
 390 027c 5695      	1:	lsr r21
384
 391 027e 4795      		ror r20
385
 392 0280 3795      		ror r19
386
 393 0282 2795      		ror r18
387
 394 0284 EA95      		dec r30
388
 395 0286 01F4      		brne 1b
389
 396 0288 280F      		add r18,r24
390
 397 028a 391F      		adc r19,r25
391
 398 028c 4A1F      		adc r20,r26
392
 399 028e 5B1F      		adc r21,r27
393
 400 0290 AA0C      		lsl r10
394
 401 0292 BB1C      		rol r11
395
 402 0294 CC1C      		rol r12
396
 403 0296 DD1C      		rol r13
397
 404 0298 AA0C      		lsl r10
398
 405 029a BB1C      		rol r11
399
 406 029c CC1C      		rol r12
400
 407 029e DD1C      		rol r13
401
 408 02a0 D801      		movw r26,r16
402
 409 02a2 C701      		movw r24,r14
403
 410 02a4 0196      		adiw r24,1
404
 411 02a6 A11D      		adc r26,__zero_reg__
405
 412 02a8 B11D      		adc r27,__zero_reg__
406
 413 02aa 2817      		cp r18,r24
407
 414 02ac 3907      		cpc r19,r25
408
 415 02ae 4A07      		cpc r20,r26
409
 416 02b0 5B07      		cpc r21,r27
410
 417 02b2 00F0      		brlo .L44
411
 418 02b4 281B      		sub r18,r24
412
 419 02b6 390B      		sbc r19,r25
413
 420 02b8 4A0B      		sbc r20,r26
414
 421 02ba 5B0B      		sbc r21,r27
415
 422 02bc 7C01      		movw r14,r24
416
 423 02be 8D01      		movw r16,r26
417
 424 02c0 0894      		sec
418
 425 02c2 E11C      		adc r14,__zero_reg__
419
 426 02c4 F11C      		adc r15,__zero_reg__
420
 427 02c6 011D      		adc r16,__zero_reg__
421
 428 02c8 111D      		adc r17,__zero_reg__
422
 429               	.L44:
423
 430 02ca 6F5F      		subi r22,lo8(-(1))
424
 431 02cc 6031      		cpi r22,lo8(16)
425
 432 02ce 01F4      		brne .L45
426
 433 02d0 A801      		movw r20,r16
427
 434 02d2 9701      		movw r18,r14
428
 435 02d4 5695      		lsr r21
429
 436 02d6 4795      		ror r20
430
 437 02d8 3795      		ror r19
431
 438 02da 2795      		ror r18
432
 439 02dc B901      		movw r22,r18
433
 440 02de CA01      		movw r24,r20
434
 441               	/* epilogue start */
435
 442 02e0 1F91      		pop r17
436
 443 02e2 0F91      		pop r16
437
 444 02e4 FF90      		pop r15
438
 445 02e6 EF90      		pop r14
439
 446 02e8 DF90      		pop r13
440
 447 02ea CF90      		pop r12
441
 448 02ec BF90      		pop r11
442
 449 02ee AF90      		pop r10
443
 450 02f0 0895      		ret
444
 452               	.global	pgm_sinlookup
445
 453               		.section	.progmem.data,"a",@progbits
446
 456               	pgm_sinlookup:
447
 457 0000 0000      		.word	0
448
 458 0002 8F00      		.word	143
449
 459 0004 1E01      		.word	286
450
 460 0006 AD01      		.word	429
451
 461 0008 3B02      		.word	571
452
 462 000a CA02      		.word	714
453
 463 000c 5803      		.word	856
454
 464 000e E603      		.word	998
455
 465 0010 7404      		.word	1140
456
 466 0012 0205      		.word	1282
457
 467 0014 8F05      		.word	1423
458
 468 0016 1B06      		.word	1563
459
 469 0018 A706      		.word	1703
460
 470 001a 3307      		.word	1843
461
 471 001c BE07      		.word	1982
462
 472 001e 4808      		.word	2120
463
 473 0020 D208      		.word	2258
464
 474 0022 5B09      		.word	2395
465
 475 0024 E309      		.word	2531
466
 476 0026 6B0A      		.word	2667
467
 477 0028 F20A      		.word	2802
468
 478 002a 780B      		.word	2936
469
 479 002c FD0B      		.word	3069
470
 480 002e 810C      		.word	3201
471
 481 0030 040D      		.word	3332
472
 482 0032 860D      		.word	3462
473
 483 0034 070E      		.word	3591
474
 484 0036 870E      		.word	3719
475
 485 0038 060F      		.word	3846
476
 486 003a 840F      		.word	3972
477
 487 003c 0010      		.word	4096
478
 488 003e 7B10      		.word	4219
479
 489 0040 F510      		.word	4341
480
 490 0042 6E11      		.word	4462
481
 491 0044 E511      		.word	4581
482
 492 0046 5B12      		.word	4699
483
 493 0048 CF12      		.word	4815
484
 494 004a 4213      		.word	4930
485
 495 004c B313      		.word	5043
486
 496 004e 2314      		.word	5155
487
 497 0050 9214      		.word	5266
488
 498 0052 FE14      		.word	5374
489
 499 0054 6A15      		.word	5482
490
 500 0056 D315      		.word	5587
491
 501 0058 3B16      		.word	5691
492
 502 005a A116      		.word	5793
493
 503 005c 0517      		.word	5893
494
 504 005e 6717      		.word	5991
495
 505 0060 C817      		.word	6088
496
 506 0062 2718      		.word	6183
497
 507 0064 8318      		.word	6275
498
 508 0066 DE18      		.word	6366
499
 509 0068 3719      		.word	6455
500
 510 006a 8E19      		.word	6542
501
 511 006c E319      		.word	6627
502
 512 006e 361A      		.word	6710
503
 513 0070 871A      		.word	6791
504
 514 0072 D61A      		.word	6870
505
 515 0074 231B      		.word	6947
506
 516 0076 6E1B      		.word	7022
507
 517 0078 B61B      		.word	7094
508
 518 007a FD1B      		.word	7165
509
 519 007c 411C      		.word	7233
510
 520 007e 831C      		.word	7299
511
 521 0080 C31C      		.word	7363
512
 522 0082 001D      		.word	7424
513
 523 0084 3C1D      		.word	7484
514
 524 0086 751D      		.word	7541
515
 525 0088 AB1D      		.word	7595
516
 526 008a E01D      		.word	7648
517
 527 008c 121E      		.word	7698
518
 528 008e 421E      		.word	7746
519
 529 0090 6F1E      		.word	7791
520
 530 0092 9A1E      		.word	7834
521
 531 0094 C31E      		.word	7875
522
 532 0096 E91E      		.word	7913
523
 533 0098 0D1F      		.word	7949
524
 534 009a 2E1F      		.word	7982
525
 535 009c 4D1F      		.word	8013
526
 536 009e 691F      		.word	8041
527
 537 00a0 841F      		.word	8068
528
 538 00a2 9B1F      		.word	8091
529
 539 00a4 B01F      		.word	8112
530
 540 00a6 C31F      		.word	8131
531
 541 00a8 D31F      		.word	8147
532
 542 00aa E11F      		.word	8161
533
 543 00ac EC1F      		.word	8172
534
 544 00ae F51F      		.word	8181
535
 545 00b0 FB1F      		.word	8187
536
 546 00b2 FF1F      		.word	8191
537
 547 00b4 0020      		.word	8192
538
 548               	.global	pgm_atanlookup
539
 551               	pgm_atanlookup:
540
 552 00b6 00        		.byte	0
541
 553 00b7 01        		.byte	1
542
 554 00b8 02        		.byte	2
543
 555 00b9 03        		.byte	3
544
 556 00ba 04        		.byte	4
545
 557 00bb 04        		.byte	4
546
 558 00bc 05        		.byte	5
547
 559 00bd 06        		.byte	6
548
 560 00be 07        		.byte	7
549
 561 00bf 08        		.byte	8
550
 562 00c0 09        		.byte	9
551
 563 00c1 0A        		.byte	10
552
 564 00c2 0B        		.byte	11
553
 565 00c3 0B        		.byte	11
554
 566 00c4 0C        		.byte	12
555
 567 00c5 0D        		.byte	13
556
 568 00c6 0E        		.byte	14
557
 569 00c7 0F        		.byte	15
558
 570 00c8 10        		.byte	16
559
 571 00c9 11        		.byte	17
560
 572 00ca 11        		.byte	17
561
 573 00cb 12        		.byte	18
562
 574 00cc 13        		.byte	19
563
 575 00cd 14        		.byte	20
564
 576 00ce 15        		.byte	21
565
 577 00cf 15        		.byte	21
566
 578 00d0 16        		.byte	22
567
 579 00d1 17        		.byte	23
568
 580 00d2 18        		.byte	24
569
 581 00d3 18        		.byte	24
570
 582 00d4 19        		.byte	25
571
 583 00d5 1A        		.byte	26
572
 584 00d6 1B        		.byte	27
573
 585 00d7 1B        		.byte	27
574
 586 00d8 1C        		.byte	28
575
 587 00d9 1D        		.byte	29
576
 588 00da 1D        		.byte	29
577
 589 00db 1E        		.byte	30
578
 590 00dc 1F        		.byte	31
579
 591 00dd 1F        		.byte	31
580
 592 00de 20        		.byte	32
581
 593 00df 21        		.byte	33
582
 594 00e0 21        		.byte	33
583
 595 00e1 22        		.byte	34
584
 596 00e2 23        		.byte	35
585
 597 00e3 23        		.byte	35
586
 598 00e4 24        		.byte	36
587
 599 00e5 24        		.byte	36
588
 600 00e6 25        		.byte	37
589
 601 00e7 25        		.byte	37
590
 602 00e8 26        		.byte	38
591
 603 00e9 27        		.byte	39
592
 604 00ea 27        		.byte	39
593
 605 00eb 28        		.byte	40
594
 606 00ec 28        		.byte	40
595
 607 00ed 29        		.byte	41
596
 608 00ee 29        		.byte	41
597
 609 00ef 2A        		.byte	42
598
 610 00f0 2A        		.byte	42
599
 611 00f1 2B        		.byte	43
600
 612 00f2 2B        		.byte	43
601
 613 00f3 2C        		.byte	44
602
 614 00f4 2C        		.byte	44
603
 615 00f5 2D        		.byte	45
604
 616 00f6 2D        		.byte	45
605
 617 00f7 2D        		.byte	45
606
 618 00f8 2E        		.byte	46
607
 619 00f9 2E        		.byte	46
608
 620 00fa 2F        		.byte	47
609
 621 00fb 2F        		.byte	47
610
 622 00fc 30        		.byte	48
611
 623 00fd 30        		.byte	48
612
 624 00fe 30        		.byte	48
613
 625 00ff 31        		.byte	49
614
 626 0100 31        		.byte	49
615
 627 0101 32        		.byte	50
616
 628 0102 32        		.byte	50
617
 629 0103 32        		.byte	50
618
 630 0104 33        		.byte	51
619
 631 0105 33        		.byte	51
620
 632 0106 33        		.byte	51
621
 633 0107 34        		.byte	52
622
 634 0108 34        		.byte	52
623
 635 0109 34        		.byte	52
624
 636 010a 35        		.byte	53
625
 637 010b 35        		.byte	53
626
 638 010c 35        		.byte	53
627
 639 010d 36        		.byte	54
628
 640 010e 36        		.byte	54
629
 641 010f 36        		.byte	54
630
 642 0110 37        		.byte	55
631
 643 0111 37        		.byte	55
632
 644 0112 37        		.byte	55
633
 645 0113 37        		.byte	55
634
 646 0114 38        		.byte	56
635
 647 0115 38        		.byte	56
636
 648 0116 38        		.byte	56
637
 649 0117 39        		.byte	57
638
 650 0118 39        		.byte	57
639
 651 0119 39        		.byte	57
640
 652 011a 39        		.byte	57
641
 653 011b 3A        		.byte	58
642
 654 011c 3A        		.byte	58
643
 655 011d 3A        		.byte	58
644
 656 011e 3A        		.byte	58
645
 657 011f 3B        		.byte	59
646
 658 0120 3B        		.byte	59
647
 659 0121 3B        		.byte	59
648
 660 0122 3B        		.byte	59
649
 661 0123 3C        		.byte	60
650
 662 0124 3C        		.byte	60
651
 663 0125 3C        		.byte	60
652
 664 0126 3C        		.byte	60
653
 665 0127 3C        		.byte	60
654
 666 0128 3D        		.byte	61
655
 667 0129 3D        		.byte	61
656
 668 012a 3D        		.byte	61
657
 669 012b 3D        		.byte	61
658
 670 012c 3E        		.byte	62
659
 671 012d 3E        		.byte	62
660
 672 012e 3E        		.byte	62
661
 673 012f 3E        		.byte	62
662
 674 0130 3E        		.byte	62
663
 675 0131 3F        		.byte	63
664
 676 0132 3F        		.byte	63
665
 677 0133 3F        		.byte	63
666
 678 0134 3F        		.byte	63
667
 679 0135 3F        		.byte	63
668
 680 0136 3F        		.byte	63
669
 681 0137 40        		.byte	64
670
 682 0138 40        		.byte	64
671
 683 0139 40        		.byte	64
672
 684 013a 40        		.byte	64
673
 685 013b 40        		.byte	64
674
 686 013c 40        		.byte	64
675
 687 013d 41        		.byte	65
676
 688 013e 41        		.byte	65
677
 689 013f 41        		.byte	65
678
 690 0140 41        		.byte	65
679
 691 0141 41        		.byte	65
680
 692 0142 41        		.byte	65
681
 693 0143 42        		.byte	66
682
 694 0144 42        		.byte	66
683
 695 0145 42        		.byte	66
684
 696 0146 42        		.byte	66
685
 697 0147 42        		.byte	66
686
 698 0148 42        		.byte	66
687
 699 0149 42        		.byte	66
688
 700 014a 43        		.byte	67
689
 701 014b 43        		.byte	67
690
 702 014c 43        		.byte	67
691
 703 014d 43        		.byte	67
692
 704 014e 43        		.byte	67
693
 705 014f 43        		.byte	67
694
 706 0150 43        		.byte	67
695
 707 0151 44        		.byte	68
696
 708 0152 44        		.byte	68
697
 709 0153 44        		.byte	68
698
 710 0154 44        		.byte	68
699
 711 0155 44        		.byte	68
700
 712 0156 44        		.byte	68
701
 713 0157 44        		.byte	68
702
 714 0158 44        		.byte	68
703
 715 0159 45        		.byte	69
704
 716 015a 45        		.byte	69
705
 717 015b 45        		.byte	69
706
 718 015c 45        		.byte	69
707
 719 015d 45        		.byte	69
708
 720 015e 45        		.byte	69
709
 721 015f 45        		.byte	69
710
 722 0160 45        		.byte	69
711
 723 0161 45        		.byte	69
712
 724 0162 46        		.byte	70
713
 725 0163 46        		.byte	70
714
 726 0164 46        		.byte	70
715
 727 0165 46        		.byte	70
716
 728 0166 46        		.byte	70
717
 729 0167 46        		.byte	70
718
 730 0168 46        		.byte	70
719
 731 0169 46        		.byte	70
720
 732 016a 46        		.byte	70
721
 733 016b 47        		.byte	71
722
 734 016c 47        		.byte	71
723
 735 016d 47        		.byte	71
724
 736 016e 47        		.byte	71
725
 737 016f 47        		.byte	71
726
 738 0170 47        		.byte	71
727
 739 0171 47        		.byte	71
728
 740 0172 47        		.byte	71
729
 741 0173 47        		.byte	71
730
 742 0174 47        		.byte	71
731
 743 0175 47        		.byte	71
732
 744 0176 48        		.byte	72
733
 745 0177 48        		.byte	72
734
 746 0178 48        		.byte	72
735
 747 0179 48        		.byte	72
736
 748 017a 48        		.byte	72
737
 749 017b 48        		.byte	72
738
 750 017c 48        		.byte	72
739
 751 017d 48        		.byte	72
740
 752 017e 48        		.byte	72
741
 753 017f 48        		.byte	72
742
 754 0180 48        		.byte	72
743
 755 0181 49        		.byte	73
744
 756 0182 49        		.byte	73
745
 757 0183 49        		.byte	73
746
 758 0184 49        		.byte	73
747
 759 0185 49        		.byte	73
748
 760 0186 49        		.byte	73
749
 761 0187 49        		.byte	73
750
 762 0188 49        		.byte	73
751
 763 0189 49        		.byte	73
752
 764 018a 49        		.byte	73
753
 765 018b 49        		.byte	73
754
 766 018c 49        		.byte	73
755
 767 018d 49        		.byte	73
756
 768 018e 49        		.byte	73
757
 769 018f 4A        		.byte	74
758
 770 0190 4A        		.byte	74
759
 771 0191 4A        		.byte	74
760
 772 0192 4A        		.byte	74
761
 773 0193 4A        		.byte	74
762
 774 0194 4A        		.byte	74
763
 775 0195 4A        		.byte	74
764
 776 0196 4A        		.byte	74
765
 777 0197 4A        		.byte	74
766
 778 0198 4A        		.byte	74
767
 779 0199 4A        		.byte	74
768
 780 019a 4A        		.byte	74
769
 781 019b 4A        		.byte	74
770
 782 019c 4A        		.byte	74
771
 783 019d 4B        		.byte	75
772
 784 019e 4B        		.byte	75
773
 785 019f 4B        		.byte	75
774
 786 01a0 4B        		.byte	75
775
 787 01a1 4B        		.byte	75
776
 788 01a2 4B        		.byte	75
777
 789 01a3 4B        		.byte	75
778
 790 01a4 4B        		.byte	75
779
 791 01a5 4B        		.byte	75
780
 792 01a6 4B        		.byte	75
781
 793 01a7 4B        		.byte	75
782
 794 01a8 4B        		.byte	75
783
 795 01a9 4B        		.byte	75
784
 796 01aa 4B        		.byte	75
785
 797 01ab 4B        		.byte	75
786
 798 01ac 4B        		.byte	75
787
 799 01ad 4B        		.byte	75
788
 800 01ae 4C        		.byte	76
789
 801 01af 4C        		.byte	76
790
 802 01b0 4C        		.byte	76
791
 803 01b1 4C        		.byte	76
792
 804 01b2 4C        		.byte	76
793
 805 01b3 4C        		.byte	76
794
 806 01b4 4C        		.byte	76
795
 807 01b5 4C        		.byte	76
796
 808 01b6 4C        		.byte	76
797
 809 01b7 4C        		.byte	76
798
 810 01b8 4C        		.byte	76
799
 811 01b9 4C        		.byte	76
800
 812 01ba 4C        		.byte	76
801
 813 01bb 4C        		.byte	76
802
 814 01bc 4C        		.byte	76
803
 815 01bd 4C        		.byte	76
804
 816 01be 4C        		.byte	76
805
 817 01bf 4C        		.byte	76
806
 818 01c0 4C        		.byte	76
807
 819 01c1 4D        		.byte	77
808
 820 01c2 4D        		.byte	77
809
 821 01c3 4D        		.byte	77
810
 822 01c4 4D        		.byte	77
811
 823 01c5 4D        		.byte	77
812
 824 01c6 4D        		.byte	77
813
 825 01c7 4D        		.byte	77
814
 826 01c8 4D        		.byte	77
815
 827 01c9 4D        		.byte	77
816
 828 01ca 4D        		.byte	77
817
 829 01cb 4D        		.byte	77
818
 830 01cc 4D        		.byte	77
819
 831 01cd 4D        		.byte	77
820
 832 01ce 4D        		.byte	77
821
 833 01cf 4D        		.byte	77
822
 834 01d0 4D        		.byte	77
823
 835 01d1 4D        		.byte	77
824
 836 01d2 4D        		.byte	77
825
 837 01d3 4D        		.byte	77
826
 838 01d4 4D        		.byte	77
827
 839 01d5 4D        		.byte	77
828
 840 01d6 4D        		.byte	77
829
 841 01d7 4E        		.byte	78
830
 842 01d8 4E        		.byte	78
831
 843 01d9 4E        		.byte	78
832
 844 01da 4E        		.byte	78
833
 845 01db 4E        		.byte	78
834
 846 01dc 4E        		.byte	78
835
 847 01dd 4E        		.byte	78
836
 848 01de 4E        		.byte	78
837
 849 01df 4E        		.byte	78
838
 850 01e0 4E        		.byte	78
839
 851 01e1 4E        		.byte	78
840
 852 01e2 4E        		.byte	78
841
 853 01e3 4E        		.byte	78
842
 854 01e4 4E        		.byte	78
843
 855 01e5 4E        		.byte	78
844
 856 01e6 4E        		.byte	78
845
 857 01e7 4E        		.byte	78
846
 858 01e8 4E        		.byte	78
847
 859 01e9 4E        		.byte	78
848
 860 01ea 4E        		.byte	78
849
 861 01eb 4E        		.byte	78
850
 862 01ec 4E        		.byte	78
851
 863 01ed 4E        		.byte	78
852
 864 01ee 4E        		.byte	78
853
 865 01ef 4E        		.byte	78
854
 866 01f0 4E        		.byte	78
855
 867 01f1 4F        		.byte	79
856
 868 01f2 4F        		.byte	79
857
 869 01f3 4F        		.byte	79
858
 870 01f4 4F        		.byte	79
859
 871 01f5 4F        		.byte	79
860
 872 01f6 4F        		.byte	79
861
 873 01f7 4F        		.byte	79
862
 874 01f8 4F        		.byte	79
863
 875 01f9 4F        		.byte	79
864
 876 01fa 4F        		.byte	79
865
 877 01fb 4F        		.byte	79
866
 878 01fc 4F        		.byte	79
867
 879 01fd 4F        		.byte	79
868
 880 01fe 4F        		.byte	79
869
 881 01ff 4F        		.byte	79
870
 882 0200 4F        		.byte	79
871
 883 0201 4F        		.byte	79
872
 884 0202 4F        		.byte	79
873
 885 0203 4F        		.byte	79
874
 886 0204 4F        		.byte	79
875
 887 0205 4F        		.byte	79
876
 888 0206 4F        		.byte	79
877
 889 0207 4F        		.byte	79
878
 890 0208 4F        		.byte	79
879
 891 0209 4F        		.byte	79
880
 892 020a 4F        		.byte	79
881
 893 020b 4F        		.byte	79
882
 894 020c 4F        		.byte	79
883
 895 020d 4F        		.byte	79
884
 896 020e 4F        		.byte	79
885
 897 020f 4F        		.byte	79
886
DEFINED SYMBOLS
887
                            *ABS*:00000000 mymath.c
888
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:2      *ABS*:0000003f __SREG__
889
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:3      *ABS*:0000003e __SP_H__
890
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:4      *ABS*:0000003d __SP_L__
891
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:5      *ABS*:00000034 __CCP__
892
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:6      *ABS*:00000000 __tmp_reg__
893
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:7      *ABS*:00000001 __zero_reg__
894
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:11     .text:00000000 c_sin_8192
895
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:456    .progmem.data:00000000 pgm_sinlookup
896
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:107    .text:0000009e c_cos_8192
897
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:122    .text:000000b0 c_atan2
898
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:551    .progmem.data:000000b6 pgm_atanlookup
899
C:\Users\Arthur\AppData\Local\Temp/ccNJL6tZ.s:351    .text:00000236 c_sqrt
900
901
UNDEFINED SYMBOLS
902
__divmodhi4
903
__divmodsi4