Eindopdracht.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn 0 .data 00000028 00800100 000013b6 0000144a 2**0 CONTENTS, ALLOC, LOAD, DATA 1 .text 000013b6 00000000 00000000 00000094 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 2 .bss 0000000c 00800128 00800128 00001472 2**0 ALLOC 3 .comment 0000005c 00000000 00000000 00001472 2**0 CONTENTS, READONLY 4 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 000014d0 2**2 CONTENTS, READONLY 5 .debug_aranges 00000158 00000000 00000000 0000150c 2**0 CONTENTS, READONLY, DEBUGGING 6 .debug_info 00001677 00000000 00000000 00001664 2**0 CONTENTS, READONLY, DEBUGGING 7 .debug_abbrev 00000d6a 00000000 00000000 00002cdb 2**0 CONTENTS, READONLY, DEBUGGING 8 .debug_line 00000b32 00000000 00000000 00003a45 2**0 CONTENTS, READONLY, DEBUGGING 9 .debug_frame 000003d8 00000000 00000000 00004578 2**2 CONTENTS, READONLY, DEBUGGING 10 .debug_str 00000794 00000000 00000000 00004950 2**0 CONTENTS, READONLY, DEBUGGING 11 .debug_loc 000009a3 00000000 00000000 000050e4 2**0 CONTENTS, READONLY, DEBUGGING 12 .debug_ranges 00000118 00000000 00000000 00005a87 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: 00000000 <__vectors>: 0: c2 c0 rjmp .+388 ; 0x186 <__ctors_end> 2: 00 00 nop 4: de c0 rjmp .+444 ; 0x1c2 <__bad_interrupt> 6: 00 00 nop 8: dc c0 rjmp .+440 ; 0x1c2 <__bad_interrupt> a: 00 00 nop c: e3 c1 rjmp .+966 ; 0x3d4 <__vector_3> e: 00 00 nop 10: d8 c0 rjmp .+432 ; 0x1c2 <__bad_interrupt> 12: 00 00 nop 14: d6 c0 rjmp .+428 ; 0x1c2 <__bad_interrupt> 16: 00 00 nop 18: d4 c0 rjmp .+424 ; 0x1c2 <__bad_interrupt> 1a: 00 00 nop 1c: d2 c0 rjmp .+420 ; 0x1c2 <__bad_interrupt> 1e: 00 00 nop 20: d0 c0 rjmp .+416 ; 0x1c2 <__bad_interrupt> 22: 00 00 nop 24: 30 c2 rjmp .+1120 ; 0x486 <__vector_9> 26: 00 00 nop 28: cc c0 rjmp .+408 ; 0x1c2 <__bad_interrupt> 2a: 00 00 nop 2c: ca c0 rjmp .+404 ; 0x1c2 <__bad_interrupt> 2e: 00 00 nop 30: c8 c0 rjmp .+400 ; 0x1c2 <__bad_interrupt> 32: 00 00 nop 34: c6 c0 rjmp .+396 ; 0x1c2 <__bad_interrupt> 36: 00 00 nop 38: c4 c0 rjmp .+392 ; 0x1c2 <__bad_interrupt> 3a: 00 00 nop 3c: c2 c0 rjmp .+388 ; 0x1c2 <__bad_interrupt> 3e: 00 00 nop 40: c0 c0 rjmp .+384 ; 0x1c2 <__bad_interrupt> 42: 00 00 nop 44: be c0 rjmp .+380 ; 0x1c2 <__bad_interrupt> 46: 00 00 nop 48: bc c0 rjmp .+376 ; 0x1c2 <__bad_interrupt> 4a: 00 00 nop 4c: ba c0 rjmp .+372 ; 0x1c2 <__bad_interrupt> 4e: 00 00 nop 50: b8 c0 rjmp .+368 ; 0x1c2 <__bad_interrupt> 52: 00 00 nop 54: b6 c0 rjmp .+364 ; 0x1c2 <__bad_interrupt> 56: 00 00 nop 58: b4 c0 rjmp .+360 ; 0x1c2 <__bad_interrupt> 5a: 00 00 nop 5c: b2 c0 rjmp .+356 ; 0x1c2 <__bad_interrupt> 5e: 00 00 nop 60: b0 c0 rjmp .+352 ; 0x1c2 <__bad_interrupt> 62: 00 00 nop 64: ae c0 rjmp .+348 ; 0x1c2 <__bad_interrupt> 66: 00 00 nop 68: ac c0 rjmp .+344 ; 0x1c2 <__bad_interrupt> 6a: 00 00 nop 6c: aa c0 rjmp .+340 ; 0x1c2 <__bad_interrupt> 6e: 00 00 nop 70: a8 c0 rjmp .+336 ; 0x1c2 <__bad_interrupt> 72: 00 00 nop 74: a6 c0 rjmp .+332 ; 0x1c2 <__bad_interrupt> 76: 00 00 nop 78: a4 c0 rjmp .+328 ; 0x1c2 <__bad_interrupt> 7a: 00 00 nop 7c: a2 c0 rjmp .+324 ; 0x1c2 <__bad_interrupt> 7e: 00 00 nop 80: a0 c0 rjmp .+320 ; 0x1c2 <__bad_interrupt> 82: 00 00 nop 84: 9e c0 rjmp .+316 ; 0x1c2 <__bad_interrupt> 86: 00 00 nop 88: 9c c0 rjmp .+312 ; 0x1c2 <__bad_interrupt> ... 0000008c <__trampolines_end>: 8c: 00 40 sbci r16, 0x00 ; 0 8e: 7a 10 cpse r7, r10 90: f3 5a subi r31, 0xA3 ; 163 92: 00 a0 ldd r0, Z+32 ; 0x20 94: 72 4e sbci r23, 0xE2 ; 226 96: 18 09 sbc r17, r8 98: 00 10 cpse r0, r0 9a: a5 d4 rcall .+2378 ; 0x9e6 9c: e8 00 .word 0x00e8 ; ???? 9e: 00 e8 ldi r16, 0x80 ; 128 a0: 76 48 sbci r23, 0x86 ; 134 a2: 17 00 .word 0x0017 ; ???? a4: 00 e4 ldi r16, 0x40 ; 64 a6: 0b 54 subi r16, 0x4B ; 75 a8: 02 00 .word 0x0002 ; ???? aa: 00 ca rjmp .-3072 ; 0xfffff4ac <__eeprom_end+0xff7ef4ac> ac: 9a 3b cpi r25, 0xBA ; 186 ae: 00 00 nop b0: 00 e1 ldi r16, 0x10 ; 16 b2: f5 05 cpc r31, r5 b4: 00 00 nop b6: 80 96 adiw r24, 0x20 ; 32 b8: 98 00 .word 0x0098 ; ???? ba: 00 00 nop bc: 40 42 sbci r20, 0x20 ; 32 be: 0f 00 .word 0x000f ; ???? c0: 00 00 nop c2: a0 86 std Z+8, r10 ; 0x08 c4: 01 00 .word 0x0001 ; ???? c6: 00 00 nop c8: 10 27 eor r17, r16 ca: 00 00 nop cc: 00 00 nop ce: e8 03 fmulsu r22, r16 d0: 00 00 nop d2: 00 00 nop d4: 64 00 .word 0x0064 ; ???? d6: 00 00 nop d8: 00 00 nop da: 0a 00 .word 0x000a ; ???? dc: 00 00 nop de: 00 00 nop e0: 01 00 .word 0x0001 ; ???? e2: 00 00 nop e4: 00 00 nop e6: 2c 76 andi r18, 0x6C ; 108 e8: d8 88 ldd r13, Y+16 ; 0x10 ea: dc 67 ori r29, 0x7C ; 124 ec: 4f 08 sbc r4, r15 ee: 23 df rcall .-442 ; 0xffffff36 <__eeprom_end+0xff7eff36> f0: c1 df rcall .-126 ; 0x74 <__SREG__+0x35> f2: ae 59 subi r26, 0x9E ; 158 f4: e1 b1 in r30, 0x01 ; 1 f6: b7 96 adiw r30, 0x27 ; 39 f8: e5 e3 ldi r30, 0x35 ; 53 fa: e4 53 subi r30, 0x34 ; 52 fc: c6 3a cpi r28, 0xA6 ; 166 fe: e6 51 subi r30, 0x16 ; 22 100: 99 76 andi r25, 0x69 ; 105 102: 96 e8 ldi r25, 0x86 ; 134 104: e6 c2 rjmp .+1484 ; 0x6d2 <__divsf3_pse+0x60> 106: 84 26 eor r8, r20 108: eb 89 ldd r30, Y+19 ; 0x13 10a: 8c 9b sbis 0x11, 4 ; 17 10c: 62 ed ldi r22, 0xD2 ; 210 10e: 40 7c andi r20, 0xC0 ; 192 110: 6f fc .word 0xfc6f ; ???? 112: ef bc out 0x2f, r14 ; 47 114: 9c 9f mul r25, r28 116: 40 f2 brcs .-112 ; 0xa8 <__trampolines_end+0x1c> 118: ba a5 ldd r27, Y+42 ; 0x2a 11a: 6f a5 ldd r22, Y+47 ; 0x2f 11c: f4 90 lpm r15, Z 11e: 05 5a subi r16, 0xA5 ; 165 120: 2a f7 brpl .-54 ; 0xec <__trampolines_end+0x60> 122: 5c 93 st X, r21 124: 6b 6c ori r22, 0xCB ; 203 126: f9 67 ori r31, 0x79 ; 121 128: 6d c1 rjmp .+730 ; 0x404 <__LOCK_REGION_LENGTH__+0x4> 12a: 1b fc .word 0xfc1b ; ???? 12c: e0 e4 ldi r30, 0x40 ; 64 12e: 0d 47 sbci r16, 0x7D ; 125 130: fe f5 brtc .+126 ; 0x1b0 <__do_clear_bss+0x4> 132: 20 e6 ldi r18, 0x60 ; 96 134: b5 00 .word 0x00b5 ; ???? 136: d0 ed ldi r29, 0xD0 ; 208 138: 90 2e mov r9, r16 13a: 03 00 .word 0x0003 ; ???? 13c: 94 35 cpi r25, 0x54 ; 84 13e: 77 05 cpc r23, r7 140: 00 80 ld r0, Z 142: 84 1e adc r8, r20 144: 08 00 .word 0x0008 ; ???? 146: 00 20 and r0, r0 148: 4e 0a sbc r4, r30 14a: 00 00 nop 14c: 00 c8 rjmp .-4096 ; 0xfffff14e <__eeprom_end+0xff7ef14e> 14e: 0c 33 cpi r16, 0x3C ; 60 150: 33 33 cpi r19, 0x33 ; 51 152: 33 0f add r19, r19 154: 98 6e ori r25, 0xE8 ; 232 156: 12 83 std Z+2, r17 ; 0x02 158: 11 41 sbci r17, 0x11 ; 17 15a: ef 8d ldd r30, Y+31 ; 0x1f 15c: 21 14 cp r2, r1 15e: 89 3b cpi r24, 0xB9 ; 185 160: e6 55 subi r30, 0x56 ; 86 162: 16 cf rjmp .-468 ; 0xffffff90 <__eeprom_end+0xff7eff90> 164: fe e6 ldi r31, 0x6E ; 110 166: db 18 sub r13, r11 168: d1 84 ldd r13, Z+9 ; 0x09 16a: 4b 38 cpi r20, 0x8B ; 139 16c: 1b f7 brvc .-58 ; 0x134 <__trampolines_end+0xa8> 16e: 7c 1d adc r23, r12 170: 90 1d adc r25, r0 172: a4 bb out 0x14, r26 ; 20 174: e4 24 eor r14, r4 176: 20 32 cpi r18, 0x20 ; 32 178: 84 72 andi r24, 0x24 ; 36 17a: 5e 22 and r5, r30 17c: 81 00 .word 0x0081 ; ???? 17e: c9 f1 breq .+114 ; 0x1f2 180: 24 ec ldi r18, 0xC4 ; 196 182: a1 e5 ldi r26, 0x51 ; 81 184: 3d 27 eor r19, r29 00000186 <__ctors_end>: 186: 11 24 eor r1, r1 188: 1f be out 0x3f, r1 ; 63 18a: cf ef ldi r28, 0xFF ; 255 18c: d0 e1 ldi r29, 0x10 ; 16 18e: de bf out 0x3e, r29 ; 62 190: cd bf out 0x3d, r28 ; 61 00000192 <__do_copy_data>: 192: 11 e0 ldi r17, 0x01 ; 1 194: a0 e0 ldi r26, 0x00 ; 0 196: b1 e0 ldi r27, 0x01 ; 1 198: e6 eb ldi r30, 0xB6 ; 182 19a: f3 e1 ldi r31, 0x13 ; 19 19c: 00 e0 ldi r16, 0x00 ; 0 19e: 0b bf out 0x3b, r16 ; 59 1a0: 02 c0 rjmp .+4 ; 0x1a6 <__do_copy_data+0x14> 1a2: 07 90 elpm r0, Z+ 1a4: 0d 92 st X+, r0 1a6: a8 32 cpi r26, 0x28 ; 40 1a8: b1 07 cpc r27, r17 1aa: d9 f7 brne .-10 ; 0x1a2 <__do_copy_data+0x10> 000001ac <__do_clear_bss>: 1ac: 21 e0 ldi r18, 0x01 ; 1 1ae: a8 e2 ldi r26, 0x28 ; 40 1b0: b1 e0 ldi r27, 0x01 ; 1 1b2: 01 c0 rjmp .+2 ; 0x1b6 <.do_clear_bss_start> 000001b4 <.do_clear_bss_loop>: 1b4: 1d 92 st X+, r1 000001b6 <.do_clear_bss_start>: 1b6: a4 33 cpi r26, 0x34 ; 52 1b8: b2 07 cpc r27, r18 1ba: e1 f7 brne .-8 ; 0x1b4 <.do_clear_bss_loop> 1bc: 32 d1 rcall .+612 ; 0x422
1be: 0c 94 d9 09 jmp 0x13b2 ; 0x13b2 <_exit> 000001c2 <__bad_interrupt>: 1c2: 1e cf rjmp .-452 ; 0x0 <__vectors> 000001c4 : { int length = snprintf(NULL, 0, "%s: %.3f %s", prefix, number, suffix); char str[length + 1]; snprintf(str, length + 1, "%s: %.3f %s", prefix, number, suffix); lcd_write_string(str); } 1c4: 9b b3 in r25, 0x1b ; 27 1c6: 21 e0 ldi r18, 0x01 ; 1 1c8: 30 e0 ldi r19, 0x00 ; 0 1ca: 02 c0 rjmp .+4 ; 0x1d0 1cc: 22 0f add r18, r18 1ce: 33 1f adc r19, r19 1d0: 8a 95 dec r24 1d2: e2 f7 brpl .-8 ; 0x1cc 1d4: 29 2b or r18, r25 1d6: 2b bb out 0x1b, r18 ; 27 1d8: 08 95 ret 000001da : 1da: 9b b3 in r25, 0x1b ; 27 1dc: 21 e0 ldi r18, 0x01 ; 1 1de: 30 e0 ldi r19, 0x00 ; 0 1e0: 02 c0 rjmp .+4 ; 0x1e6 1e2: 22 0f add r18, r18 1e4: 33 1f adc r19, r19 1e6: 8a 95 dec r24 1e8: e2 f7 brpl .-8 ; 0x1e2 1ea: 20 95 com r18 1ec: 29 23 and r18, r25 1ee: 2b bb out 0x1b, r18 ; 27 1f0: 08 95 ret 000001f2 : 1f2: 86 e0 ldi r24, 0x06 ; 6 1f4: 90 e0 ldi r25, 0x00 ; 0 1f6: e6 df rcall .-52 ; 0x1c4 1f8: 83 ec ldi r24, 0xC3 ; 195 1fa: 99 e0 ldi r25, 0x09 ; 9 1fc: 01 97 sbiw r24, 0x01 ; 1 1fe: f1 f7 brne .-4 ; 0x1fc 200: 00 c0 rjmp .+0 ; 0x202 202: 00 00 nop 204: 86 e0 ldi r24, 0x06 ; 6 206: 90 e0 ldi r25, 0x00 ; 0 208: e8 df rcall .-48 ; 0x1da 20a: 87 e8 ldi r24, 0x87 ; 135 20c: 93 e1 ldi r25, 0x13 ; 19 20e: 01 97 sbiw r24, 0x01 ; 1 210: f1 f7 brne .-4 ; 0x20e 212: 00 c0 rjmp .+0 ; 0x214 214: 00 00 nop 216: 08 95 ret 00000218 : 218: cf 93 push r28 21a: c8 2f mov r28, r24 21c: 85 bb out 0x15, r24 ; 21 21e: 84 e0 ldi r24, 0x04 ; 4 220: 90 e0 ldi r25, 0x00 ; 0 222: d0 df rcall .-96 ; 0x1c4 224: e6 df rcall .-52 ; 0x1f2 226: c2 95 swap r28 228: c0 7f andi r28, 0xF0 ; 240 22a: c5 bb out 0x15, r28 ; 21 22c: 84 e0 ldi r24, 0x04 ; 4 22e: 90 e0 ldi r25, 0x00 ; 0 230: c9 df rcall .-110 ; 0x1c4 232: df df rcall .-66 ; 0x1f2 234: cf 91 pop r28 236: 08 95 ret 00000238 : 238: cf 93 push r28 23a: c8 2f mov r28, r24 23c: 85 bb out 0x15, r24 ; 21 23e: 84 e0 ldi r24, 0x04 ; 4 240: 90 e0 ldi r25, 0x00 ; 0 242: cb df rcall .-106 ; 0x1da 244: d6 df rcall .-84 ; 0x1f2 246: c2 95 swap r28 248: c0 7f andi r28, 0xF0 ; 240 24a: c5 bb out 0x15, r28 ; 21 24c: 84 e0 ldi r24, 0x04 ; 4 24e: 90 e0 ldi r25, 0x00 ; 0 250: c4 df rcall .-120 ; 0x1da 252: cf df rcall .-98 ; 0x1f2 254: cf 91 pop r28 256: 08 95 ret 00000258 : 258: 81 e0 ldi r24, 0x01 ; 1 25a: ee df rcall .-36 ; 0x238 25c: 87 e8 ldi r24, 0x87 ; 135 25e: 93 e1 ldi r25, 0x13 ; 19 260: 01 97 sbiw r24, 0x01 ; 1 262: f1 f7 brne .-4 ; 0x260 264: 00 c0 rjmp .+0 ; 0x266 266: 00 00 nop 268: 80 e8 ldi r24, 0x80 ; 128 26a: e6 cf rjmp .-52 ; 0x238 26c: 08 95 ret 0000026e : 26e: cf 93 push r28 270: 8f ef ldi r24, 0xFF ; 255 272: 84 bb out 0x14, r24 ; 20 274: 85 bb out 0x15, r24 ; 21 276: 8a bb out 0x1a, r24 ; 26 278: 15 ba out 0x15, r1 ; 21 27a: 1b ba out 0x1b, r1 ; 27 27c: c0 e2 ldi r28, 0x20 ; 32 27e: c5 bb out 0x15, r28 ; 21 280: b8 df rcall .-144 ; 0x1f2 282: c5 bb out 0x15, r28 ; 21 284: b6 df rcall .-148 ; 0x1f2 286: 80 e8 ldi r24, 0x80 ; 128 288: 85 bb out 0x15, r24 ; 21 28a: b3 df rcall .-154 ; 0x1f2 28c: 15 ba out 0x15, r1 ; 21 28e: b1 df rcall .-158 ; 0x1f2 290: 80 ef ldi r24, 0xF0 ; 240 292: 85 bb out 0x15, r24 ; 21 294: ae df rcall .-164 ; 0x1f2 296: 15 ba out 0x15, r1 ; 21 298: ac df rcall .-168 ; 0x1f2 29a: 80 e6 ldi r24, 0x60 ; 96 29c: 85 bb out 0x15, r24 ; 21 29e: a9 df rcall .-174 ; 0x1f2 2a0: 82 e0 ldi r24, 0x02 ; 2 2a2: ca df rcall .-108 ; 0x238 2a4: a6 df rcall .-180 ; 0x1f2 2a6: cf 91 pop r28 2a8: 08 95 ret 000002aa : 2aa: cf 93 push r28 2ac: df 93 push r29 2ae: ec 01 movw r28, r24 2b0: 02 c0 rjmp .+4 ; 0x2b6 2b2: b2 df rcall .-156 ; 0x218 2b4: 21 96 adiw r28, 0x01 ; 1 2b6: 88 81 ld r24, Y 2b8: 81 11 cpse r24, r1 2ba: fb cf rjmp .-10 ; 0x2b2 2bc: df 91 pop r29 2be: cf 91 pop r28 2c0: 08 95 ret 000002c2 : void lcd_write_ultrasonic_value(float number) { 2c2: 4f 92 push r4 2c4: 5f 92 push r5 2c6: 6f 92 push r6 2c8: 7f 92 push r7 2ca: af 92 push r10 2cc: bf 92 push r11 2ce: cf 92 push r12 2d0: df 92 push r13 2d2: ef 92 push r14 2d4: ff 92 push r15 2d6: 0f 93 push r16 2d8: 1f 93 push r17 2da: cf 93 push r28 2dc: df 93 push r29 2de: 00 d0 rcall .+0 ; 0x2e0 2e0: 00 d0 rcall .+0 ; 0x2e2 2e2: 00 d0 rcall .+0 ; 0x2e4 2e4: cd b7 in r28, 0x3d ; 61 2e6: de b7 in r29, 0x3e ; 62 dtostrf(number , 2, 2, temp); char str[length + 1]; snprintf(str, length + 7, "%s cm", temp); lcd_write_string(str); } 2e8: cd b6 in r12, 0x3d ; 61 2ea: de b6 in r13, 0x3e ; 62 } void lcd_write_ultrasonic_value(float number) { //to cm number /= 1000; 2ec: 20 e0 ldi r18, 0x00 ; 0 2ee: 30 e0 ldi r19, 0x00 ; 0 2f0: 4a e7 ldi r20, 0x7A ; 122 2f2: 54 e4 ldi r21, 0x44 ; 68 2f4: af d1 rcall .+862 ; 0x654 <__divsf3> 2f6: 2b 01 movw r4, r22 2f8: 3c 01 movw r6, r24 int length = snprintf(NULL, 0, " cm"); 2fa: 83 e2 ldi r24, 0x23 ; 35 2fc: 91 e0 ldi r25, 0x01 ; 1 2fe: 9f 93 push r25 300: 8f 93 push r24 302: 1f 92 push r1 304: 1f 92 push r1 306: 1f 92 push r1 308: 1f 92 push r1 30a: 1c d3 rcall .+1592 ; 0x944 30c: 7c 01 movw r14, r24 char temp[6]; dtostrf(number , 2, 2, temp); 30e: 9e 01 movw r18, r28 310: 2f 5f subi r18, 0xFF ; 255 312: 3f 4f sbci r19, 0xFF ; 255 314: 59 01 movw r10, r18 316: 89 01 movw r16, r18 318: 22 e0 ldi r18, 0x02 ; 2 31a: 42 e0 ldi r20, 0x02 ; 2 31c: c3 01 movw r24, r6 31e: b2 01 movw r22, r4 320: f2 d2 rcall .+1508 ; 0x906 char str[length + 1]; 322: c7 01 movw r24, r14 324: 01 96 adiw r24, 0x01 ; 1 326: 0f 90 pop r0 328: 0f 90 pop r0 32a: 0f 90 pop r0 32c: 0f 90 pop r0 32e: 0f 90 pop r0 330: 0f 90 pop r0 332: 2d b7 in r18, 0x3d ; 61 334: 3e b7 in r19, 0x3e ; 62 336: 28 1b sub r18, r24 338: 39 0b sbc r19, r25 33a: 0f b6 in r0, 0x3f ; 63 33c: f8 94 cli 33e: 3e bf out 0x3e, r19 ; 62 340: 0f be out 0x3f, r0 ; 63 342: 2d bf out 0x3d, r18 ; 61 344: 0d b7 in r16, 0x3d ; 61 346: 1e b7 in r17, 0x3e ; 62 348: 0f 5f subi r16, 0xFF ; 255 34a: 1f 4f sbci r17, 0xFF ; 255 snprintf(str, length + 7, "%s cm", temp); 34c: 37 e0 ldi r19, 0x07 ; 7 34e: e3 0e add r14, r19 350: f1 1c adc r15, r1 352: bf 92 push r11 354: af 92 push r10 356: 81 e2 ldi r24, 0x21 ; 33 358: 91 e0 ldi r25, 0x01 ; 1 35a: 9f 93 push r25 35c: 8f 93 push r24 35e: ff 92 push r15 360: ef 92 push r14 362: 1f 93 push r17 364: 0f 93 push r16 lcd_write_string(str); 366: ee d2 rcall .+1500 ; 0x944 368: 80 2f mov r24, r16 36a: 91 2f mov r25, r17 36c: 9e df rcall .-196 ; 0x2aa } 36e: 8d b7 in r24, 0x3d ; 61 370: 9e b7 in r25, 0x3e ; 62 372: 08 96 adiw r24, 0x08 ; 8 374: 0f b6 in r0, 0x3f ; 63 376: f8 94 cli 378: 9e bf out 0x3e, r25 ; 62 37a: 0f be out 0x3f, r0 ; 63 37c: 8d bf out 0x3d, r24 ; 61 37e: 0f b6 in r0, 0x3f ; 63 380: f8 94 cli 382: de be out 0x3e, r13 ; 62 384: 0f be out 0x3f, r0 ; 63 386: cd be out 0x3d, r12 ; 61 388: 26 96 adiw r28, 0x06 ; 6 38a: 0f b6 in r0, 0x3f ; 63 38c: f8 94 cli 38e: de bf out 0x3e, r29 ; 62 390: 0f be out 0x3f, r0 ; 63 392: cd bf out 0x3d, r28 ; 61 394: df 91 pop r29 396: cf 91 pop r28 398: 1f 91 pop r17 39a: 0f 91 pop r16 39c: ff 90 pop r15 39e: ef 90 pop r14 3a0: df 90 pop r13 3a2: cf 90 pop r12 3a4: bf 90 pop r11 3a6: af 90 pop r10 3a8: 7f 90 pop r7 3aa: 6f 90 pop r6 3ac: 5f 90 pop r5 3ae: 4f 90 pop r4 3b0: 08 95 ret 000003b2 : ultrasonic_send_pulse(); } static void ultrasoon_value_set_event(uint16_t value){ // if the SODAR is initialising, then look for close start object. if(initialising){ 3b2: 20 91 00 01 lds r18, 0x0100 ; 0x800100 <__DATA_REGION_ORIGIN__> 3b6: 22 23 and r18, r18 3b8: 51 f0 breq .+20 ; 0x3ce if(value > 0 && value < MAX_DISTANCE_INIT){ 3ba: 01 97 sbiw r24, 0x01 ; 1 3bc: 43 97 sbiw r24, 0x13 ; 19 3be: 38 f4 brcc .+14 ; 0x3ce stepper_rotate_stop(); 3c0: d1 d0 rcall .+418 ; 0x564 initialising = false; 3c2: 10 92 00 01 sts 0x0100, r1 ; 0x800100 <__DATA_REGION_ORIGIN__> // when found, set the initial rotation. stepper_rotate_angle(ROTAITION_ANGLE, CounterClockWise); 3c6: 61 e0 ldi r22, 0x01 ; 1 3c8: 80 e0 ldi r24, 0x00 ; 0 3ca: 92 e0 ldi r25, 0x02 ; 2 3cc: be c0 rjmp .+380 ; 0x54a 3ce: 08 95 ret 000003d0 : ultrasonic_handle_interrupt(); } static void snap_event_trigger(uint8_t rotation){ // when X amount of steps are taken, do pulse. ultrasonic_send_pulse(); 3d0: 04 c1 rjmp .+520 ; 0x5da 3d2: 08 95 ret 000003d4 <__vector_3>: // if true: in init mode, looking for starting point. bool initialising = true; ISR(INT2_vect) { 3d4: 1f 92 push r1 3d6: 0f 92 push r0 3d8: 0f b6 in r0, 0x3f ; 63 3da: 0f 92 push r0 3dc: 11 24 eor r1, r1 3de: 0b b6 in r0, 0x3b ; 59 3e0: 0f 92 push r0 3e2: 2f 93 push r18 3e4: 3f 93 push r19 3e6: 4f 93 push r20 3e8: 5f 93 push r21 3ea: 6f 93 push r22 3ec: 7f 93 push r23 3ee: 8f 93 push r24 3f0: 9f 93 push r25 3f2: af 93 push r26 3f4: bf 93 push r27 3f6: ef 93 push r30 3f8: ff 93 push r31 ultrasonic_handle_interrupt(); 3fa: fc d0 rcall .+504 ; 0x5f4 } 3fc: ff 91 pop r31 3fe: ef 91 pop r30 400: bf 91 pop r27 402: af 91 pop r26 404: 9f 91 pop r25 406: 8f 91 pop r24 408: 7f 91 pop r23 40a: 6f 91 pop r22 40c: 5f 91 pop r21 40e: 4f 91 pop r20 410: 3f 91 pop r19 412: 2f 91 pop r18 414: 0f 90 pop r0 416: 0b be out 0x3b, r0 ; 59 418: 0f 90 pop r0 41a: 0f be out 0x3f, r0 ; 63 41c: 0f 90 pop r0 41e: 1f 90 pop r1 420: 18 95 reti 00000422
: } int main(void) { // initialize ultrasonic sensor driver. ultrasonic_init(); 422: cc d0 rcall .+408 ; 0x5bc // initialize LCD display in 4 bit mode. init_4bits_mode(); 424: 24 df rcall .-440 ; 0x26e // initialize stepper driver. init_stepper_driver(); 426: a0 d0 rcall .+320 ; 0x568 // set the event when a pulse must be sent. set_snap_event(&snap_event_trigger); 428: 88 ee ldi r24, 0xE8 ; 232 42a: 91 e0 ldi r25, 0x01 ; 1 42c: 27 d0 rcall .+78 ; 0x47c // set a event for when a value has been set from the ultrasonic sensor. set_value_trigger_event(&ultrasoon_value_set_event); 42e: 89 ed ldi r24, 0xD9 ; 217 430: 91 e0 ldi r25, 0x01 ; 1 432: fe d0 rcall .+508 ; 0x630 434: 87 ea ldi r24, 0xA7 ; 167 #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); 436: 91 e6 ldi r25, 0x61 ; 97 438: 01 97 sbiw r24, 0x01 ; 1 43a: f1 f7 brne .-4 ; 0x438 43c: 00 c0 rjmp .+0 ; 0x43e 43e: 00 00 nop _delay_ms(10); lcd_clear(); 440: 0b df rcall .-490 ; 0x258 stepper_rotate_angle(INIT_ROTAITION_ANGLE, ClockWise); 442: 60 e0 ldi r22, 0x00 ; 0 444: 88 e5 ldi r24, 0x58 ; 88 446: 92 e0 ldi r25, 0x02 ; 2 while (1) { lcd_clear(); 448: 80 d0 rcall .+256 ; 0x54a 44a: 06 df rcall .-500 ; 0x258 // set the ultrasonic value to the lcd. lcd_write_ultrasonic_value(ultrasonic_get_timer_dist()); 44c: f6 d0 rcall .+492 ; 0x63a 44e: 39 df rcall .-398 ; 0x2c2 450: 84 e6 ldi r24, 0x64 ; 100 452: 90 e0 ldi r25, 0x00 ; 0 wait_ms(LCD_SET_DELAY); 454: a4 d0 rcall .+328 ; 0x59e 456: f9 cf rjmp .-14 ; 0x44a 00000458 : void stepper_rotate_full_rotation_CW(); void stepper_rotate_full_rotation_CCW(); void set_stepper_state(uint8_t count){ if(rotation == ClockWise){ 458: 90 91 2f 01 lds r25, 0x012F ; 0x80012f 45c: 91 11 cpse r25, r1 45e: 07 c0 rjmp .+14 ; 0x46e PORTE = CW[count]; 460: e8 2f mov r30, r24 462: f0 e0 ldi r31, 0x00 ; 0 464: ef 5f subi r30, 0xFF ; 255 466: fe 4f sbci r31, 0xFE ; 254 468: 80 81 ld r24, Z 46a: 83 b9 out 0x03, r24 ; 3 46c: 08 95 ret } else { PORTE = CCW[count]; 46e: e8 2f mov r30, r24 470: f0 e0 ldi r31, 0x00 ; 0 472: e7 5f subi r30, 0xF7 ; 247 474: fe 4f sbci r31, 0xFE ; 254 476: 80 81 ld r24, Z 478: 83 b9 out 0x03, r24 ; 3 47a: 08 95 ret 0000047c : } void (*snap_event)(uint8_t); void set_snap_event(void (*snap_event_p)(uint8_t)){ snap_event = snap_event_p; 47c: 90 93 31 01 sts 0x0131, r25 ; 0x800131 480: 80 93 30 01 sts 0x0130, r24 ; 0x800130 484: 08 95 ret 00000486 <__vector_9>: } ISR( TIMER2_COMP_vect ){ 486: 1f 92 push r1 488: 0f 92 push r0 48a: 0f b6 in r0, 0x3f ; 63 48c: 0f 92 push r0 48e: 11 24 eor r1, r1 490: 0b b6 in r0, 0x3b ; 59 492: 0f 92 push r0 494: 2f 93 push r18 496: 3f 93 push r19 498: 4f 93 push r20 49a: 5f 93 push r21 49c: 6f 93 push r22 49e: 7f 93 push r23 4a0: 8f 93 push r24 4a2: 9f 93 push r25 4a4: af 93 push r26 4a6: bf 93 push r27 4a8: ef 93 push r30 4aa: ff 93 push r31 TCNT2 = 0; 4ac: 14 bc out 0x24, r1 ; 36 set_stepper_state(stepper_state); 4ae: 80 91 28 01 lds r24, 0x0128 ; 0x800128 <__data_end> 4b2: d2 df rcall .-92 ; 0x458 if(stepper_state < 7){ 4b4: 80 91 28 01 lds r24, 0x0128 ; 0x800128 <__data_end> 4b8: 87 30 cpi r24, 0x07 ; 7 4ba: 20 f4 brcc .+8 ; 0x4c4 <__vector_9+0x3e> stepper_state++; 4bc: 8f 5f subi r24, 0xFF ; 255 4be: 80 93 28 01 sts 0x0128, r24 ; 0x800128 <__data_end> 4c2: 30 c0 rjmp .+96 ; 0x524 <__vector_9+0x9e> } else { stepper_state = 0; 4c4: 10 92 28 01 sts 0x0128, r1 ; 0x800128 <__data_end> if(steps_to_do == 0){ 4c8: 80 91 29 01 lds r24, 0x0129 ; 0x800129 4cc: 90 91 2a 01 lds r25, 0x012A ; 0x80012a 4d0: 00 97 sbiw r24, 0x00 ; 0 4d2: 99 f4 brne .+38 ; 0x4fa <__vector_9+0x74> // change rotation if the steps todo is 0. if(rotation == ClockWise){ 4d4: 80 91 2f 01 lds r24, 0x012F ; 0x80012f 4d8: 81 11 cpse r24, r1 4da: 04 c0 rjmp .+8 ; 0x4e4 <__vector_9+0x5e> rotation = CounterClockWise; 4dc: 81 e0 ldi r24, 0x01 ; 1 4de: 80 93 2f 01 sts 0x012F, r24 ; 0x80012f 4e2: 02 c0 rjmp .+4 ; 0x4e8 <__vector_9+0x62> } else { rotation = ClockWise; 4e4: 10 92 2f 01 sts 0x012F, r1 ; 0x80012f } // set the steps to do again. steps_to_do = steps_each_turn; 4e8: 80 91 2b 01 lds r24, 0x012B ; 0x80012b 4ec: 90 91 2c 01 lds r25, 0x012C ; 0x80012c 4f0: 90 93 2a 01 sts 0x012A, r25 ; 0x80012a 4f4: 80 93 29 01 sts 0x0129, r24 ; 0x800129 4f8: 15 c0 rjmp .+42 ; 0x524 <__vector_9+0x9e> } else { // if the stepper step value is at a multiplier of 32 then make snap event. if(steps_to_do % STEPS_EACH_PULSE == 0){ 4fa: 9c 01 movw r18, r24 4fc: 2f 71 andi r18, 0x1F ; 31 4fe: 33 27 eor r19, r19 500: 23 2b or r18, r19 502: 39 f4 brne .+14 ; 0x512 <__vector_9+0x8c> if(snap_event != NULL) 504: e0 91 30 01 lds r30, 0x0130 ; 0x800130 508: f0 91 31 01 lds r31, 0x0131 ; 0x800131 50c: 30 97 sbiw r30, 0x00 ; 0 50e: 09 f0 breq .+2 ; 0x512 <__vector_9+0x8c> snap_event(steps_to_do); 510: 09 95 icall } steps_to_do--; 512: 80 91 29 01 lds r24, 0x0129 ; 0x800129 516: 90 91 2a 01 lds r25, 0x012A ; 0x80012a 51a: 01 97 sbiw r24, 0x01 ; 1 51c: 90 93 2a 01 sts 0x012A, r25 ; 0x80012a 520: 80 93 29 01 sts 0x0129, r24 ; 0x800129 } } } 524: ff 91 pop r31 526: ef 91 pop r30 528: bf 91 pop r27 52a: af 91 pop r26 52c: 9f 91 pop r25 52e: 8f 91 pop r24 530: 7f 91 pop r23 532: 6f 91 pop r22 534: 5f 91 pop r21 536: 4f 91 pop r20 538: 3f 91 pop r19 53a: 2f 91 pop r18 53c: 0f 90 pop r0 53e: 0b be out 0x3b, r0 ; 59 540: 0f 90 pop r0 542: 0f be out 0x3f, r0 ; 63 544: 0f 90 pop r0 546: 1f 90 pop r1 548: 18 95 reti 0000054a : void stepper_rotate_angle(uint16_t steps, enum rotation_wise rot){ steps_to_do = steps; 54a: 90 93 2a 01 sts 0x012A, r25 ; 0x80012a 54e: 80 93 29 01 sts 0x0129, r24 ; 0x800129 steps_each_turn = steps; 552: 90 93 2c 01 sts 0x012C, r25 ; 0x80012c 556: 80 93 2b 01 sts 0x012B, r24 ; 0x80012b rotation = rot; 55a: 60 93 2f 01 sts 0x012F, r22 ; 0x80012f TCCR2 = 0b00001100; 55e: 8c e0 ldi r24, 0x0C ; 12 560: 85 bd out 0x25, r24 ; 37 562: 08 95 ret 00000564 : } void stepper_rotate_stop(){ TCCR2 = 0b00000000; 564: 15 bc out 0x25, r1 ; 37 566: 08 95 ret 00000568 : } void init_stepper_driver(){ DDRE = 0xff; 568: 8f ef ldi r24, 0xFF ; 255 56a: 82 b9 out 0x02, r24 ; 2 DDRG = 0xff; 56c: 80 93 64 00 sts 0x0064, r24 ; 0x800064 <__TEXT_REGION_LENGTH__+0x7e0064> PORTG = 0x01; 570: 81 e0 ldi r24, 0x01 ; 1 572: 80 93 65 00 sts 0x0065, r24 ; 0x800065 <__TEXT_REGION_LENGTH__+0x7e0065> PORTE = 0x00; 576: 13 b8 out 0x03, r1 ; 3 OCR2 = COMPARE_VALUE; 578: 87 e3 ldi r24, 0x37 ; 55 57a: 83 bd out 0x23, r24 ; 35 TIMSK = BIT(7); 57c: 80 e8 ldi r24, 0x80 ; 128 57e: 87 bf out 0x37, r24 ; 55 sei(); 580: 78 94 sei 582: 08 95 ret 00000584 : void (*value_set_event)(uint16_t); void wait_us(unsigned int us) { for(int i = 0; i < us; i++) 584: 20 e0 ldi r18, 0x00 ; 0 586: 30 e0 ldi r19, 0x00 ; 0 588: 06 c0 rjmp .+12 ; 0x596 #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); 58a: 43 e0 ldi r20, 0x03 ; 3 58c: 4a 95 dec r20 58e: f1 f7 brne .-4 ; 0x58c 590: 00 00 nop 592: 2f 5f subi r18, 0xFF ; 255 594: 3f 4f sbci r19, 0xFF ; 255 596: 28 17 cp r18, r24 598: 39 07 cpc r19, r25 59a: b8 f3 brcs .-18 ; 0x58a { _delay_us(1); } } 59c: 08 95 ret 0000059e : void wait_ms(unsigned int ms) { for(int i = 0; i < ms; i++) 59e: 20 e0 ldi r18, 0x00 ; 0 5a0: 30 e0 ldi r19, 0x00 ; 0 5a2: 08 c0 rjmp .+16 ; 0x5b4 #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); 5a4: e3 ec ldi r30, 0xC3 ; 195 5a6: f9 e0 ldi r31, 0x09 ; 9 5a8: 31 97 sbiw r30, 0x01 ; 1 5aa: f1 f7 brne .-4 ; 0x5a8 5ac: 00 c0 rjmp .+0 ; 0x5ae 5ae: 00 00 nop 5b0: 2f 5f subi r18, 0xFF ; 255 5b2: 3f 4f sbci r19, 0xFF ; 255 5b4: 28 17 cp r18, r24 5b6: 39 07 cpc r19, r25 5b8: a8 f3 brcs .-22 ; 0x5a4 { _delay_ms(1); } } 5ba: 08 95 ret 000005bc : void ultrasonic_init() { DDRG = 0xFF; // port g all output. pin 0 is trig, the rest is for debug 5bc: 8f ef ldi r24, 0xFF ; 255 5be: 80 93 64 00 sts 0x0064, r24 ; 0x800064 <__TEXT_REGION_LENGTH__+0x7e0064> DDRD = 0x00; // port D pin 0 on input. 0 is echo and also interrupt 5c2: 11 ba out 0x11, r1 ; 17 EICRA = 0x30; // interrupt PORTD on pin 2, rising edge 5c4: 80 e3 ldi r24, 0x30 ; 48 5c6: 80 93 6a 00 sts 0x006A, r24 ; 0x80006a <__TEXT_REGION_LENGTH__+0x7e006a> EIMSK |= 0x04; // enable interrupt on pin 2 (INT2) 5ca: 89 b7 in r24, 0x39 ; 57 5cc: 84 60 ori r24, 0x04 ; 4 5ce: 89 bf out 0x39, r24 ; 57 TCCR1A = 0b00000000; // initialize timer1, prescaler=256 5d0: 1f bc out 0x2f, r1 ; 47 TCCR1B = 0b00001100; // CTC compare A, RUN 5d2: 8c e0 ldi r24, 0x0C ; 12 5d4: 8e bd out 0x2e, r24 ; 46 sei(); // turn on interrupt system 5d6: 78 94 sei 5d8: 08 95 ret 000005da : } void ultrasonic_send_pulse() { 5da: cf 93 push r28 5dc: df 93 push r29 PORTG = 0x00; // 10 us low pulse 5de: c5 e6 ldi r28, 0x65 ; 101 5e0: d0 e0 ldi r29, 0x00 ; 0 5e2: 18 82 st Y, r1 wait_us(10); 5e4: 8a e0 ldi r24, 0x0A ; 10 5e6: 90 e0 ldi r25, 0x00 ; 0 5e8: cd df rcall .-102 ; 0x584 PORTG = 0x01; 5ea: 81 e0 ldi r24, 0x01 ; 1 5ec: 88 83 st Y, r24 } 5ee: df 91 pop r29 5f0: cf 91 pop r28 5f2: 08 95 ret 000005f4 : void ultrasonic_handle_interrupt() { // if the interrupt was generated on a rising edge (start sending echo) if (int_stat == INTERRUPT_RISING) 5f4: 80 91 11 01 lds r24, 0x0111 ; 0x800111 5f8: 81 30 cpi r24, 0x01 ; 1 5fa: 41 f4 brne .+16 ; 0x60c { // set interrupt pin 2 on PORTD to falling edge EICRA = 0x20; 5fc: 80 e2 ldi r24, 0x20 ; 32 5fe: 80 93 6a 00 sts 0x006A, r24 ; 0x80006a <__TEXT_REGION_LENGTH__+0x7e006a> // reset the time in timer1 TCNT1 = 0x00; 602: 1d bc out 0x2d, r1 ; 45 604: 1c bc out 0x2c, r1 ; 44 // set interrupt status int_stat = INTERRUPT_FALLING; 606: 10 92 11 01 sts 0x0111, r1 ; 0x800111 60a: 08 95 ret } else // else if it was generated on a falling edge (end sending echo) { // set interrupt pin 0 on PORTD to rising edge EICRA = 0x30; // interrupt PORTD on pin 2, rising edge 60c: 80 e3 ldi r24, 0x30 ; 48 60e: 80 93 6a 00 sts 0x006A, r24 ; 0x80006a <__TEXT_REGION_LENGTH__+0x7e006a> // read timer1 into time_dist timer_dist = TCNT1; 612: 8c b5 in r24, 0x2c ; 44 614: 9d b5 in r25, 0x2d ; 45 616: 90 93 2e 01 sts 0x012E, r25 ; 0x80012e 61a: 80 93 2d 01 sts 0x012D, r24 ; 0x80012d //EVENT value_set_event(timer_dist); 61e: e0 91 32 01 lds r30, 0x0132 ; 0x800132 622: f0 91 33 01 lds r31, 0x0133 ; 0x800133 626: 09 95 icall // set interrupt status int_stat = INTERRUPT_RISING; 628: 81 e0 ldi r24, 0x01 ; 1 62a: 80 93 11 01 sts 0x0111, r24 ; 0x800111 62e: 08 95 ret 00000630 : } } void set_value_trigger_event(void (*value_set_event_p)(uint16_t)){ // event that is triggered when a value is set. value_set_event = value_set_event_p; 630: 90 93 33 01 sts 0x0133, r25 ; 0x800133 634: 80 93 32 01 sts 0x0132, r24 ; 0x800132 638: 08 95 ret 0000063a : } float ultrasonic_get_timer_dist() { return (float)(timer_dist * (340 / 2.0)); 63a: 60 91 2d 01 lds r22, 0x012D ; 0x80012d 63e: 70 91 2e 01 lds r23, 0x012E ; 0x80012e 642: 80 e0 ldi r24, 0x00 ; 0 644: 90 e0 ldi r25, 0x00 ; 0 646: 6e d0 rcall .+220 ; 0x724 <__floatunsisf> 648: 20 e0 ldi r18, 0x00 ; 0 64a: 30 e0 ldi r19, 0x00 ; 0 64c: 4a e2 ldi r20, 0x2A ; 42 64e: 53 e4 ldi r21, 0x43 ; 67 650: f7 c0 rjmp .+494 ; 0x840 <__mulsf3> } 652: 08 95 ret 00000654 <__divsf3>: 654: 0c d0 rcall .+24 ; 0x66e <__divsf3x> 656: ba c0 rjmp .+372 ; 0x7cc <__fp_round> 658: b2 d0 rcall .+356 ; 0x7be <__fp_pscB> 65a: 40 f0 brcs .+16 ; 0x66c <__divsf3+0x18> 65c: a9 d0 rcall .+338 ; 0x7b0 <__fp_pscA> 65e: 30 f0 brcs .+12 ; 0x66c <__divsf3+0x18> 660: 21 f4 brne .+8 ; 0x66a <__divsf3+0x16> 662: 5f 3f cpi r21, 0xFF ; 255 664: 19 f0 breq .+6 ; 0x66c <__divsf3+0x18> 666: 9b c0 rjmp .+310 ; 0x79e <__fp_inf> 668: 51 11 cpse r21, r1 66a: e4 c0 rjmp .+456 ; 0x834 <__fp_szero> 66c: 9e c0 rjmp .+316 ; 0x7aa <__fp_nan> 0000066e <__divsf3x>: 66e: bf d0 rcall .+382 ; 0x7ee <__fp_split3> 670: 98 f3 brcs .-26 ; 0x658 <__divsf3+0x4> 00000672 <__divsf3_pse>: 672: 99 23 and r25, r25 674: c9 f3 breq .-14 ; 0x668 <__divsf3+0x14> 676: 55 23 and r21, r21 678: b1 f3 breq .-20 ; 0x666 <__divsf3+0x12> 67a: 95 1b sub r25, r21 67c: 55 0b sbc r21, r21 67e: bb 27 eor r27, r27 680: aa 27 eor r26, r26 682: 62 17 cp r22, r18 684: 73 07 cpc r23, r19 686: 84 07 cpc r24, r20 688: 38 f0 brcs .+14 ; 0x698 <__divsf3_pse+0x26> 68a: 9f 5f subi r25, 0xFF ; 255 68c: 5f 4f sbci r21, 0xFF ; 255 68e: 22 0f add r18, r18 690: 33 1f adc r19, r19 692: 44 1f adc r20, r20 694: aa 1f adc r26, r26 696: a9 f3 breq .-22 ; 0x682 <__divsf3_pse+0x10> 698: 33 d0 rcall .+102 ; 0x700 <__divsf3_pse+0x8e> 69a: 0e 2e mov r0, r30 69c: 3a f0 brmi .+14 ; 0x6ac <__divsf3_pse+0x3a> 69e: e0 e8 ldi r30, 0x80 ; 128 6a0: 30 d0 rcall .+96 ; 0x702 <__divsf3_pse+0x90> 6a2: 91 50 subi r25, 0x01 ; 1 6a4: 50 40 sbci r21, 0x00 ; 0 6a6: e6 95 lsr r30 6a8: 00 1c adc r0, r0 6aa: ca f7 brpl .-14 ; 0x69e <__divsf3_pse+0x2c> 6ac: 29 d0 rcall .+82 ; 0x700 <__divsf3_pse+0x8e> 6ae: fe 2f mov r31, r30 6b0: 27 d0 rcall .+78 ; 0x700 <__divsf3_pse+0x8e> 6b2: 66 0f add r22, r22 6b4: 77 1f adc r23, r23 6b6: 88 1f adc r24, r24 6b8: bb 1f adc r27, r27 6ba: 26 17 cp r18, r22 6bc: 37 07 cpc r19, r23 6be: 48 07 cpc r20, r24 6c0: ab 07 cpc r26, r27 6c2: b0 e8 ldi r27, 0x80 ; 128 6c4: 09 f0 breq .+2 ; 0x6c8 <__divsf3_pse+0x56> 6c6: bb 0b sbc r27, r27 6c8: 80 2d mov r24, r0 6ca: bf 01 movw r22, r30 6cc: ff 27 eor r31, r31 6ce: 93 58 subi r25, 0x83 ; 131 6d0: 5f 4f sbci r21, 0xFF ; 255 6d2: 2a f0 brmi .+10 ; 0x6de <__divsf3_pse+0x6c> 6d4: 9e 3f cpi r25, 0xFE ; 254 6d6: 51 05 cpc r21, r1 6d8: 68 f0 brcs .+26 ; 0x6f4 <__divsf3_pse+0x82> 6da: 61 c0 rjmp .+194 ; 0x79e <__fp_inf> 6dc: ab c0 rjmp .+342 ; 0x834 <__fp_szero> 6de: 5f 3f cpi r21, 0xFF ; 255 6e0: ec f3 brlt .-6 ; 0x6dc <__divsf3_pse+0x6a> 6e2: 98 3e cpi r25, 0xE8 ; 232 6e4: dc f3 brlt .-10 ; 0x6dc <__divsf3_pse+0x6a> 6e6: 86 95 lsr r24 6e8: 77 95 ror r23 6ea: 67 95 ror r22 6ec: b7 95 ror r27 6ee: f7 95 ror r31 6f0: 9f 5f subi r25, 0xFF ; 255 6f2: c9 f7 brne .-14 ; 0x6e6 <__divsf3_pse+0x74> 6f4: 88 0f add r24, r24 6f6: 91 1d adc r25, r1 6f8: 96 95 lsr r25 6fa: 87 95 ror r24 6fc: 97 f9 bld r25, 7 6fe: 08 95 ret 700: e1 e0 ldi r30, 0x01 ; 1 702: 66 0f add r22, r22 704: 77 1f adc r23, r23 706: 88 1f adc r24, r24 708: bb 1f adc r27, r27 70a: 62 17 cp r22, r18 70c: 73 07 cpc r23, r19 70e: 84 07 cpc r24, r20 710: ba 07 cpc r27, r26 712: 20 f0 brcs .+8 ; 0x71c <__divsf3_pse+0xaa> 714: 62 1b sub r22, r18 716: 73 0b sbc r23, r19 718: 84 0b sbc r24, r20 71a: ba 0b sbc r27, r26 71c: ee 1f adc r30, r30 71e: 88 f7 brcc .-30 ; 0x702 <__divsf3_pse+0x90> 720: e0 95 com r30 722: 08 95 ret 00000724 <__floatunsisf>: 724: e8 94 clt 726: 09 c0 rjmp .+18 ; 0x73a <__floatsisf+0x12> 00000728 <__floatsisf>: 728: 97 fb bst r25, 7 72a: 3e f4 brtc .+14 ; 0x73a <__floatsisf+0x12> 72c: 90 95 com r25 72e: 80 95 com r24 730: 70 95 com r23 732: 61 95 neg r22 734: 7f 4f sbci r23, 0xFF ; 255 736: 8f 4f sbci r24, 0xFF ; 255 738: 9f 4f sbci r25, 0xFF ; 255 73a: 99 23 and r25, r25 73c: a9 f0 breq .+42 ; 0x768 <__floatsisf+0x40> 73e: f9 2f mov r31, r25 740: 96 e9 ldi r25, 0x96 ; 150 742: bb 27 eor r27, r27 744: 93 95 inc r25 746: f6 95 lsr r31 748: 87 95 ror r24 74a: 77 95 ror r23 74c: 67 95 ror r22 74e: b7 95 ror r27 750: f1 11 cpse r31, r1 752: f8 cf rjmp .-16 ; 0x744 <__floatsisf+0x1c> 754: fa f4 brpl .+62 ; 0x794 <__floatsisf+0x6c> 756: bb 0f add r27, r27 758: 11 f4 brne .+4 ; 0x75e <__floatsisf+0x36> 75a: 60 ff sbrs r22, 0 75c: 1b c0 rjmp .+54 ; 0x794 <__floatsisf+0x6c> 75e: 6f 5f subi r22, 0xFF ; 255 760: 7f 4f sbci r23, 0xFF ; 255 762: 8f 4f sbci r24, 0xFF ; 255 764: 9f 4f sbci r25, 0xFF ; 255 766: 16 c0 rjmp .+44 ; 0x794 <__floatsisf+0x6c> 768: 88 23 and r24, r24 76a: 11 f0 breq .+4 ; 0x770 <__floatsisf+0x48> 76c: 96 e9 ldi r25, 0x96 ; 150 76e: 11 c0 rjmp .+34 ; 0x792 <__floatsisf+0x6a> 770: 77 23 and r23, r23 772: 21 f0 breq .+8 ; 0x77c <__floatsisf+0x54> 774: 9e e8 ldi r25, 0x8E ; 142 776: 87 2f mov r24, r23 778: 76 2f mov r23, r22 77a: 05 c0 rjmp .+10 ; 0x786 <__floatsisf+0x5e> 77c: 66 23 and r22, r22 77e: 71 f0 breq .+28 ; 0x79c <__floatsisf+0x74> 780: 96 e8 ldi r25, 0x86 ; 134 782: 86 2f mov r24, r22 784: 70 e0 ldi r23, 0x00 ; 0 786: 60 e0 ldi r22, 0x00 ; 0 788: 2a f0 brmi .+10 ; 0x794 <__floatsisf+0x6c> 78a: 9a 95 dec r25 78c: 66 0f add r22, r22 78e: 77 1f adc r23, r23 790: 88 1f adc r24, r24 792: da f7 brpl .-10 ; 0x78a <__floatsisf+0x62> 794: 88 0f add r24, r24 796: 96 95 lsr r25 798: 87 95 ror r24 79a: 97 f9 bld r25, 7 79c: 08 95 ret 0000079e <__fp_inf>: 79e: 97 f9 bld r25, 7 7a0: 9f 67 ori r25, 0x7F ; 127 7a2: 80 e8 ldi r24, 0x80 ; 128 7a4: 70 e0 ldi r23, 0x00 ; 0 7a6: 60 e0 ldi r22, 0x00 ; 0 7a8: 08 95 ret 000007aa <__fp_nan>: 7aa: 9f ef ldi r25, 0xFF ; 255 7ac: 80 ec ldi r24, 0xC0 ; 192 7ae: 08 95 ret 000007b0 <__fp_pscA>: 7b0: 00 24 eor r0, r0 7b2: 0a 94 dec r0 7b4: 16 16 cp r1, r22 7b6: 17 06 cpc r1, r23 7b8: 18 06 cpc r1, r24 7ba: 09 06 cpc r0, r25 7bc: 08 95 ret 000007be <__fp_pscB>: 7be: 00 24 eor r0, r0 7c0: 0a 94 dec r0 7c2: 12 16 cp r1, r18 7c4: 13 06 cpc r1, r19 7c6: 14 06 cpc r1, r20 7c8: 05 06 cpc r0, r21 7ca: 08 95 ret 000007cc <__fp_round>: 7cc: 09 2e mov r0, r25 7ce: 03 94 inc r0 7d0: 00 0c add r0, r0 7d2: 11 f4 brne .+4 ; 0x7d8 <__fp_round+0xc> 7d4: 88 23 and r24, r24 7d6: 52 f0 brmi .+20 ; 0x7ec <__fp_round+0x20> 7d8: bb 0f add r27, r27 7da: 40 f4 brcc .+16 ; 0x7ec <__fp_round+0x20> 7dc: bf 2b or r27, r31 7de: 11 f4 brne .+4 ; 0x7e4 <__fp_round+0x18> 7e0: 60 ff sbrs r22, 0 7e2: 04 c0 rjmp .+8 ; 0x7ec <__fp_round+0x20> 7e4: 6f 5f subi r22, 0xFF ; 255 7e6: 7f 4f sbci r23, 0xFF ; 255 7e8: 8f 4f sbci r24, 0xFF ; 255 7ea: 9f 4f sbci r25, 0xFF ; 255 7ec: 08 95 ret 000007ee <__fp_split3>: 7ee: 57 fd sbrc r21, 7 7f0: 90 58 subi r25, 0x80 ; 128 7f2: 44 0f add r20, r20 7f4: 55 1f adc r21, r21 7f6: 59 f0 breq .+22 ; 0x80e <__fp_splitA+0x10> 7f8: 5f 3f cpi r21, 0xFF ; 255 7fa: 71 f0 breq .+28 ; 0x818 <__fp_splitA+0x1a> 7fc: 47 95 ror r20 000007fe <__fp_splitA>: 7fe: 88 0f add r24, r24 800: 97 fb bst r25, 7 802: 99 1f adc r25, r25 804: 61 f0 breq .+24 ; 0x81e <__fp_splitA+0x20> 806: 9f 3f cpi r25, 0xFF ; 255 808: 79 f0 breq .+30 ; 0x828 <__fp_splitA+0x2a> 80a: 87 95 ror r24 80c: 08 95 ret 80e: 12 16 cp r1, r18 810: 13 06 cpc r1, r19 812: 14 06 cpc r1, r20 814: 55 1f adc r21, r21 816: f2 cf rjmp .-28 ; 0x7fc <__fp_split3+0xe> 818: 46 95 lsr r20 81a: f1 df rcall .-30 ; 0x7fe <__fp_splitA> 81c: 08 c0 rjmp .+16 ; 0x82e <__fp_splitA+0x30> 81e: 16 16 cp r1, r22 820: 17 06 cpc r1, r23 822: 18 06 cpc r1, r24 824: 99 1f adc r25, r25 826: f1 cf rjmp .-30 ; 0x80a <__fp_splitA+0xc> 828: 86 95 lsr r24 82a: 71 05 cpc r23, r1 82c: 61 05 cpc r22, r1 82e: 08 94 sec 830: 08 95 ret 00000832 <__fp_zero>: 832: e8 94 clt 00000834 <__fp_szero>: 834: bb 27 eor r27, r27 836: 66 27 eor r22, r22 838: 77 27 eor r23, r23 83a: cb 01 movw r24, r22 83c: 97 f9 bld r25, 7 83e: 08 95 ret 00000840 <__mulsf3>: 840: 0b d0 rcall .+22 ; 0x858 <__mulsf3x> 842: c4 cf rjmp .-120 ; 0x7cc <__fp_round> 844: b5 df rcall .-150 ; 0x7b0 <__fp_pscA> 846: 28 f0 brcs .+10 ; 0x852 <__mulsf3+0x12> 848: ba df rcall .-140 ; 0x7be <__fp_pscB> 84a: 18 f0 brcs .+6 ; 0x852 <__mulsf3+0x12> 84c: 95 23 and r25, r21 84e: 09 f0 breq .+2 ; 0x852 <__mulsf3+0x12> 850: a6 cf rjmp .-180 ; 0x79e <__fp_inf> 852: ab cf rjmp .-170 ; 0x7aa <__fp_nan> 854: 11 24 eor r1, r1 856: ee cf rjmp .-36 ; 0x834 <__fp_szero> 00000858 <__mulsf3x>: 858: ca df rcall .-108 ; 0x7ee <__fp_split3> 85a: a0 f3 brcs .-24 ; 0x844 <__mulsf3+0x4> 0000085c <__mulsf3_pse>: 85c: 95 9f mul r25, r21 85e: d1 f3 breq .-12 ; 0x854 <__mulsf3+0x14> 860: 95 0f add r25, r21 862: 50 e0 ldi r21, 0x00 ; 0 864: 55 1f adc r21, r21 866: 62 9f mul r22, r18 868: f0 01 movw r30, r0 86a: 72 9f mul r23, r18 86c: bb 27 eor r27, r27 86e: f0 0d add r31, r0 870: b1 1d adc r27, r1 872: 63 9f mul r22, r19 874: aa 27 eor r26, r26 876: f0 0d add r31, r0 878: b1 1d adc r27, r1 87a: aa 1f adc r26, r26 87c: 64 9f mul r22, r20 87e: 66 27 eor r22, r22 880: b0 0d add r27, r0 882: a1 1d adc r26, r1 884: 66 1f adc r22, r22 886: 82 9f mul r24, r18 888: 22 27 eor r18, r18 88a: b0 0d add r27, r0 88c: a1 1d adc r26, r1 88e: 62 1f adc r22, r18 890: 73 9f mul r23, r19 892: b0 0d add r27, r0 894: a1 1d adc r26, r1 896: 62 1f adc r22, r18 898: 83 9f mul r24, r19 89a: a0 0d add r26, r0 89c: 61 1d adc r22, r1 89e: 22 1f adc r18, r18 8a0: 74 9f mul r23, r20 8a2: 33 27 eor r19, r19 8a4: a0 0d add r26, r0 8a6: 61 1d adc r22, r1 8a8: 23 1f adc r18, r19 8aa: 84 9f mul r24, r20 8ac: 60 0d add r22, r0 8ae: 21 1d adc r18, r1 8b0: 82 2f mov r24, r18 8b2: 76 2f mov r23, r22 8b4: 6a 2f mov r22, r26 8b6: 11 24 eor r1, r1 8b8: 9f 57 subi r25, 0x7F ; 127 8ba: 50 40 sbci r21, 0x00 ; 0 8bc: 8a f0 brmi .+34 ; 0x8e0 <__mulsf3_pse+0x84> 8be: e1 f0 breq .+56 ; 0x8f8 <__mulsf3_pse+0x9c> 8c0: 88 23 and r24, r24 8c2: 4a f0 brmi .+18 ; 0x8d6 <__mulsf3_pse+0x7a> 8c4: ee 0f add r30, r30 8c6: ff 1f adc r31, r31 8c8: bb 1f adc r27, r27 8ca: 66 1f adc r22, r22 8cc: 77 1f adc r23, r23 8ce: 88 1f adc r24, r24 8d0: 91 50 subi r25, 0x01 ; 1 8d2: 50 40 sbci r21, 0x00 ; 0 8d4: a9 f7 brne .-22 ; 0x8c0 <__mulsf3_pse+0x64> 8d6: 9e 3f cpi r25, 0xFE ; 254 8d8: 51 05 cpc r21, r1 8da: 70 f0 brcs .+28 ; 0x8f8 <__mulsf3_pse+0x9c> 8dc: 60 cf rjmp .-320 ; 0x79e <__fp_inf> 8de: aa cf rjmp .-172 ; 0x834 <__fp_szero> 8e0: 5f 3f cpi r21, 0xFF ; 255 8e2: ec f3 brlt .-6 ; 0x8de <__mulsf3_pse+0x82> 8e4: 98 3e cpi r25, 0xE8 ; 232 8e6: dc f3 brlt .-10 ; 0x8de <__mulsf3_pse+0x82> 8e8: 86 95 lsr r24 8ea: 77 95 ror r23 8ec: 67 95 ror r22 8ee: b7 95 ror r27 8f0: f7 95 ror r31 8f2: e7 95 ror r30 8f4: 9f 5f subi r25, 0xFF ; 255 8f6: c1 f7 brne .-16 ; 0x8e8 <__mulsf3_pse+0x8c> 8f8: fe 2b or r31, r30 8fa: 88 0f add r24, r24 8fc: 91 1d adc r25, r1 8fe: 96 95 lsr r25 900: 87 95 ror r24 902: 97 f9 bld r25, 7 904: 08 95 ret 00000906 : 906: ef 92 push r14 908: 0f 93 push r16 90a: 1f 93 push r17 90c: cf 93 push r28 90e: df 93 push r29 910: e8 01 movw r28, r16 912: 47 fd sbrc r20, 7 914: 02 c0 rjmp .+4 ; 0x91a 916: 34 e0 ldi r19, 0x04 ; 4 918: 01 c0 rjmp .+2 ; 0x91c 91a: 34 e1 ldi r19, 0x14 ; 20 91c: 04 2e mov r0, r20 91e: 00 0c add r0, r0 920: 55 0b sbc r21, r21 922: 57 ff sbrs r21, 7 924: 03 c0 rjmp .+6 ; 0x92c 926: 51 95 neg r21 928: 41 95 neg r20 92a: 51 09 sbc r21, r1 92c: e3 2e mov r14, r19 92e: 02 2f mov r16, r18 930: 24 2f mov r18, r20 932: ae 01 movw r20, r28 934: 40 d2 rcall .+1152 ; 0xdb6 936: ce 01 movw r24, r28 938: df 91 pop r29 93a: cf 91 pop r28 93c: 1f 91 pop r17 93e: 0f 91 pop r16 940: ef 90 pop r14 942: 08 95 ret 00000944 : 944: 0f 93 push r16 946: 1f 93 push r17 948: cf 93 push r28 94a: df 93 push r29 94c: cd b7 in r28, 0x3d ; 61 94e: de b7 in r29, 0x3e ; 62 950: 2e 97 sbiw r28, 0x0e ; 14 952: 0f b6 in r0, 0x3f ; 63 954: f8 94 cli 956: de bf out 0x3e, r29 ; 62 958: 0f be out 0x3f, r0 ; 63 95a: cd bf out 0x3d, r28 ; 61 95c: 0d 89 ldd r16, Y+21 ; 0x15 95e: 1e 89 ldd r17, Y+22 ; 0x16 960: 8f 89 ldd r24, Y+23 ; 0x17 962: 98 8d ldd r25, Y+24 ; 0x18 964: 26 e0 ldi r18, 0x06 ; 6 966: 2c 83 std Y+4, r18 ; 0x04 968: 1a 83 std Y+2, r17 ; 0x02 96a: 09 83 std Y+1, r16 ; 0x01 96c: 97 ff sbrs r25, 7 96e: 02 c0 rjmp .+4 ; 0x974 970: 80 e0 ldi r24, 0x00 ; 0 972: 90 e8 ldi r25, 0x80 ; 128 974: 01 97 sbiw r24, 0x01 ; 1 976: 9e 83 std Y+6, r25 ; 0x06 978: 8d 83 std Y+5, r24 ; 0x05 97a: ae 01 movw r20, r28 97c: 45 5e subi r20, 0xE5 ; 229 97e: 5f 4f sbci r21, 0xFF ; 255 980: 69 8d ldd r22, Y+25 ; 0x19 982: 7a 8d ldd r23, Y+26 ; 0x1a 984: ce 01 movw r24, r28 986: 01 96 adiw r24, 0x01 ; 1 988: 19 d0 rcall .+50 ; 0x9bc 98a: 4d 81 ldd r20, Y+5 ; 0x05 98c: 5e 81 ldd r21, Y+6 ; 0x06 98e: 57 fd sbrc r21, 7 990: 0a c0 rjmp .+20 ; 0x9a6 992: 2f 81 ldd r18, Y+7 ; 0x07 994: 38 85 ldd r19, Y+8 ; 0x08 996: 42 17 cp r20, r18 998: 53 07 cpc r21, r19 99a: 0c f4 brge .+2 ; 0x99e 99c: 9a 01 movw r18, r20 99e: f8 01 movw r30, r16 9a0: e2 0f add r30, r18 9a2: f3 1f adc r31, r19 9a4: 10 82 st Z, r1 9a6: 2e 96 adiw r28, 0x0e ; 14 9a8: 0f b6 in r0, 0x3f ; 63 9aa: f8 94 cli 9ac: de bf out 0x3e, r29 ; 62 9ae: 0f be out 0x3f, r0 ; 63 9b0: cd bf out 0x3d, r28 ; 61 9b2: df 91 pop r29 9b4: cf 91 pop r28 9b6: 1f 91 pop r17 9b8: 0f 91 pop r16 9ba: 08 95 ret 000009bc : 9bc: 2f 92 push r2 9be: 3f 92 push r3 9c0: 4f 92 push r4 9c2: 5f 92 push r5 9c4: 6f 92 push r6 9c6: 7f 92 push r7 9c8: 8f 92 push r8 9ca: 9f 92 push r9 9cc: af 92 push r10 9ce: bf 92 push r11 9d0: cf 92 push r12 9d2: df 92 push r13 9d4: ef 92 push r14 9d6: ff 92 push r15 9d8: 0f 93 push r16 9da: 1f 93 push r17 9dc: cf 93 push r28 9de: df 93 push r29 9e0: cd b7 in r28, 0x3d ; 61 9e2: de b7 in r29, 0x3e ; 62 9e4: 2b 97 sbiw r28, 0x0b ; 11 9e6: 0f b6 in r0, 0x3f ; 63 9e8: f8 94 cli 9ea: de bf out 0x3e, r29 ; 62 9ec: 0f be out 0x3f, r0 ; 63 9ee: cd bf out 0x3d, r28 ; 61 9f0: 6c 01 movw r12, r24 9f2: 7b 01 movw r14, r22 9f4: 8a 01 movw r16, r20 9f6: fc 01 movw r30, r24 9f8: 17 82 std Z+7, r1 ; 0x07 9fa: 16 82 std Z+6, r1 ; 0x06 9fc: 83 81 ldd r24, Z+3 ; 0x03 9fe: 81 ff sbrs r24, 1 a00: bf c1 rjmp .+894 ; 0xd80 a02: ce 01 movw r24, r28 a04: 01 96 adiw r24, 0x01 ; 1 a06: 3c 01 movw r6, r24 a08: f6 01 movw r30, r12 a0a: 93 81 ldd r25, Z+3 ; 0x03 a0c: f7 01 movw r30, r14 a0e: 93 fd sbrc r25, 3 a10: 85 91 lpm r24, Z+ a12: 93 ff sbrs r25, 3 a14: 81 91 ld r24, Z+ a16: 7f 01 movw r14, r30 a18: 88 23 and r24, r24 a1a: 09 f4 brne .+2 ; 0xa1e a1c: ad c1 rjmp .+858 ; 0xd78 a1e: 85 32 cpi r24, 0x25 ; 37 a20: 39 f4 brne .+14 ; 0xa30 a22: 93 fd sbrc r25, 3 a24: 85 91 lpm r24, Z+ a26: 93 ff sbrs r25, 3 a28: 81 91 ld r24, Z+ a2a: 7f 01 movw r14, r30 a2c: 85 32 cpi r24, 0x25 ; 37 a2e: 21 f4 brne .+8 ; 0xa38 a30: b6 01 movw r22, r12 a32: 90 e0 ldi r25, 0x00 ; 0 a34: 24 d4 rcall .+2120 ; 0x127e a36: e8 cf rjmp .-48 ; 0xa08 a38: 91 2c mov r9, r1 a3a: 21 2c mov r2, r1 a3c: 31 2c mov r3, r1 a3e: ff e1 ldi r31, 0x1F ; 31 a40: f3 15 cp r31, r3 a42: d8 f0 brcs .+54 ; 0xa7a a44: 8b 32 cpi r24, 0x2B ; 43 a46: 79 f0 breq .+30 ; 0xa66 a48: 38 f4 brcc .+14 ; 0xa58 a4a: 80 32 cpi r24, 0x20 ; 32 a4c: 79 f0 breq .+30 ; 0xa6c a4e: 83 32 cpi r24, 0x23 ; 35 a50: a1 f4 brne .+40 ; 0xa7a a52: 23 2d mov r18, r3 a54: 20 61 ori r18, 0x10 ; 16 a56: 1d c0 rjmp .+58 ; 0xa92 a58: 8d 32 cpi r24, 0x2D ; 45 a5a: 61 f0 breq .+24 ; 0xa74 a5c: 80 33 cpi r24, 0x30 ; 48 a5e: 69 f4 brne .+26 ; 0xa7a a60: 23 2d mov r18, r3 a62: 21 60 ori r18, 0x01 ; 1 a64: 16 c0 rjmp .+44 ; 0xa92 a66: 83 2d mov r24, r3 a68: 82 60 ori r24, 0x02 ; 2 a6a: 38 2e mov r3, r24 a6c: e3 2d mov r30, r3 a6e: e4 60 ori r30, 0x04 ; 4 a70: 3e 2e mov r3, r30 a72: 2a c0 rjmp .+84 ; 0xac8 a74: f3 2d mov r31, r3 a76: f8 60 ori r31, 0x08 ; 8 a78: 1d c0 rjmp .+58 ; 0xab4 a7a: 37 fc sbrc r3, 7 a7c: 2d c0 rjmp .+90 ; 0xad8 a7e: 20 ed ldi r18, 0xD0 ; 208 a80: 28 0f add r18, r24 a82: 2a 30 cpi r18, 0x0A ; 10 a84: 40 f0 brcs .+16 ; 0xa96 a86: 8e 32 cpi r24, 0x2E ; 46 a88: b9 f4 brne .+46 ; 0xab8 a8a: 36 fc sbrc r3, 6 a8c: 75 c1 rjmp .+746 ; 0xd78 a8e: 23 2d mov r18, r3 a90: 20 64 ori r18, 0x40 ; 64 a92: 32 2e mov r3, r18 a94: 19 c0 rjmp .+50 ; 0xac8 a96: 36 fe sbrs r3, 6 a98: 06 c0 rjmp .+12 ; 0xaa6 a9a: 8a e0 ldi r24, 0x0A ; 10 a9c: 98 9e mul r9, r24 a9e: 20 0d add r18, r0 aa0: 11 24 eor r1, r1 aa2: 92 2e mov r9, r18 aa4: 11 c0 rjmp .+34 ; 0xac8 aa6: ea e0 ldi r30, 0x0A ; 10 aa8: 2e 9e mul r2, r30 aaa: 20 0d add r18, r0 aac: 11 24 eor r1, r1 aae: 22 2e mov r2, r18 ab0: f3 2d mov r31, r3 ab2: f0 62 ori r31, 0x20 ; 32 ab4: 3f 2e mov r3, r31 ab6: 08 c0 rjmp .+16 ; 0xac8 ab8: 8c 36 cpi r24, 0x6C ; 108 aba: 21 f4 brne .+8 ; 0xac4 abc: 83 2d mov r24, r3 abe: 80 68 ori r24, 0x80 ; 128 ac0: 38 2e mov r3, r24 ac2: 02 c0 rjmp .+4 ; 0xac8 ac4: 88 36 cpi r24, 0x68 ; 104 ac6: 41 f4 brne .+16 ; 0xad8 ac8: f7 01 movw r30, r14 aca: 93 fd sbrc r25, 3 acc: 85 91 lpm r24, Z+ ace: 93 ff sbrs r25, 3 ad0: 81 91 ld r24, Z+ ad2: 7f 01 movw r14, r30 ad4: 81 11 cpse r24, r1 ad6: b3 cf rjmp .-154 ; 0xa3e ad8: 98 2f mov r25, r24 ada: 9f 7d andi r25, 0xDF ; 223 adc: 95 54 subi r25, 0x45 ; 69 ade: 93 30 cpi r25, 0x03 ; 3 ae0: 28 f4 brcc .+10 ; 0xaec ae2: 0c 5f subi r16, 0xFC ; 252 ae4: 1f 4f sbci r17, 0xFF ; 255 ae6: 9f e3 ldi r25, 0x3F ; 63 ae8: 99 83 std Y+1, r25 ; 0x01 aea: 0d c0 rjmp .+26 ; 0xb06 aec: 83 36 cpi r24, 0x63 ; 99 aee: 31 f0 breq .+12 ; 0xafc af0: 83 37 cpi r24, 0x73 ; 115 af2: 71 f0 breq .+28 ; 0xb10 af4: 83 35 cpi r24, 0x53 ; 83 af6: 09 f0 breq .+2 ; 0xafa af8: 55 c0 rjmp .+170 ; 0xba4 afa: 20 c0 rjmp .+64 ; 0xb3c afc: f8 01 movw r30, r16 afe: 80 81 ld r24, Z b00: 89 83 std Y+1, r24 ; 0x01 b02: 0e 5f subi r16, 0xFE ; 254 b04: 1f 4f sbci r17, 0xFF ; 255 b06: 88 24 eor r8, r8 b08: 83 94 inc r8 b0a: 91 2c mov r9, r1 b0c: 53 01 movw r10, r6 b0e: 12 c0 rjmp .+36 ; 0xb34 b10: 28 01 movw r4, r16 b12: f2 e0 ldi r31, 0x02 ; 2 b14: 4f 0e add r4, r31 b16: 51 1c adc r5, r1 b18: f8 01 movw r30, r16 b1a: a0 80 ld r10, Z b1c: b1 80 ldd r11, Z+1 ; 0x01 b1e: 36 fe sbrs r3, 6 b20: 03 c0 rjmp .+6 ; 0xb28 b22: 69 2d mov r22, r9 b24: 70 e0 ldi r23, 0x00 ; 0 b26: 02 c0 rjmp .+4 ; 0xb2c b28: 6f ef ldi r22, 0xFF ; 255 b2a: 7f ef ldi r23, 0xFF ; 255 b2c: c5 01 movw r24, r10 b2e: 9c d3 rcall .+1848 ; 0x1268 b30: 4c 01 movw r8, r24 b32: 82 01 movw r16, r4 b34: f3 2d mov r31, r3 b36: ff 77 andi r31, 0x7F ; 127 b38: 3f 2e mov r3, r31 b3a: 15 c0 rjmp .+42 ; 0xb66 b3c: 28 01 movw r4, r16 b3e: 22 e0 ldi r18, 0x02 ; 2 b40: 42 0e add r4, r18 b42: 51 1c adc r5, r1 b44: f8 01 movw r30, r16 b46: a0 80 ld r10, Z b48: b1 80 ldd r11, Z+1 ; 0x01 b4a: 36 fe sbrs r3, 6 b4c: 03 c0 rjmp .+6 ; 0xb54 b4e: 69 2d mov r22, r9 b50: 70 e0 ldi r23, 0x00 ; 0 b52: 02 c0 rjmp .+4 ; 0xb58 b54: 6f ef ldi r22, 0xFF ; 255 b56: 7f ef ldi r23, 0xFF ; 255 b58: c5 01 movw r24, r10 b5a: 7b d3 rcall .+1782 ; 0x1252 b5c: 4c 01 movw r8, r24 b5e: f3 2d mov r31, r3 b60: f0 68 ori r31, 0x80 ; 128 b62: 3f 2e mov r3, r31 b64: 82 01 movw r16, r4 b66: 33 fc sbrc r3, 3 b68: 19 c0 rjmp .+50 ; 0xb9c b6a: 82 2d mov r24, r2 b6c: 90 e0 ldi r25, 0x00 ; 0 b6e: 88 16 cp r8, r24 b70: 99 06 cpc r9, r25 b72: a0 f4 brcc .+40 ; 0xb9c b74: b6 01 movw r22, r12 b76: 80 e2 ldi r24, 0x20 ; 32 b78: 90 e0 ldi r25, 0x00 ; 0 b7a: 81 d3 rcall .+1794 ; 0x127e b7c: 2a 94 dec r2 b7e: f5 cf rjmp .-22 ; 0xb6a b80: f5 01 movw r30, r10 b82: 37 fc sbrc r3, 7 b84: 85 91 lpm r24, Z+ b86: 37 fe sbrs r3, 7 b88: 81 91 ld r24, Z+ b8a: 5f 01 movw r10, r30 b8c: b6 01 movw r22, r12 b8e: 90 e0 ldi r25, 0x00 ; 0 b90: 76 d3 rcall .+1772 ; 0x127e b92: 21 10 cpse r2, r1 b94: 2a 94 dec r2 b96: 21 e0 ldi r18, 0x01 ; 1 b98: 82 1a sub r8, r18 b9a: 91 08 sbc r9, r1 b9c: 81 14 cp r8, r1 b9e: 91 04 cpc r9, r1 ba0: 79 f7 brne .-34 ; 0xb80 ba2: e1 c0 rjmp .+450 ; 0xd66 ba4: 84 36 cpi r24, 0x64 ; 100 ba6: 11 f0 breq .+4 ; 0xbac ba8: 89 36 cpi r24, 0x69 ; 105 baa: 39 f5 brne .+78 ; 0xbfa bac: f8 01 movw r30, r16 bae: 37 fe sbrs r3, 7 bb0: 07 c0 rjmp .+14 ; 0xbc0 bb2: 60 81 ld r22, Z bb4: 71 81 ldd r23, Z+1 ; 0x01 bb6: 82 81 ldd r24, Z+2 ; 0x02 bb8: 93 81 ldd r25, Z+3 ; 0x03 bba: 0c 5f subi r16, 0xFC ; 252 bbc: 1f 4f sbci r17, 0xFF ; 255 bbe: 08 c0 rjmp .+16 ; 0xbd0 bc0: 60 81 ld r22, Z bc2: 71 81 ldd r23, Z+1 ; 0x01 bc4: 07 2e mov r0, r23 bc6: 00 0c add r0, r0 bc8: 88 0b sbc r24, r24 bca: 99 0b sbc r25, r25 bcc: 0e 5f subi r16, 0xFE ; 254 bce: 1f 4f sbci r17, 0xFF ; 255 bd0: f3 2d mov r31, r3 bd2: ff 76 andi r31, 0x6F ; 111 bd4: 3f 2e mov r3, r31 bd6: 97 ff sbrs r25, 7 bd8: 09 c0 rjmp .+18 ; 0xbec bda: 90 95 com r25 bdc: 80 95 com r24 bde: 70 95 com r23 be0: 61 95 neg r22 be2: 7f 4f sbci r23, 0xFF ; 255 be4: 8f 4f sbci r24, 0xFF ; 255 be6: 9f 4f sbci r25, 0xFF ; 255 be8: f0 68 ori r31, 0x80 ; 128 bea: 3f 2e mov r3, r31 bec: 2a e0 ldi r18, 0x0A ; 10 bee: 30 e0 ldi r19, 0x00 ; 0 bf0: a3 01 movw r20, r6 bf2: 81 d3 rcall .+1794 ; 0x12f6 <__ultoa_invert> bf4: 88 2e mov r8, r24 bf6: 86 18 sub r8, r6 bf8: 44 c0 rjmp .+136 ; 0xc82 bfa: 85 37 cpi r24, 0x75 ; 117 bfc: 31 f4 brne .+12 ; 0xc0a bfe: 23 2d mov r18, r3 c00: 2f 7e andi r18, 0xEF ; 239 c02: b2 2e mov r11, r18 c04: 2a e0 ldi r18, 0x0A ; 10 c06: 30 e0 ldi r19, 0x00 ; 0 c08: 25 c0 rjmp .+74 ; 0xc54 c0a: 93 2d mov r25, r3 c0c: 99 7f andi r25, 0xF9 ; 249 c0e: b9 2e mov r11, r25 c10: 8f 36 cpi r24, 0x6F ; 111 c12: c1 f0 breq .+48 ; 0xc44 c14: 18 f4 brcc .+6 ; 0xc1c c16: 88 35 cpi r24, 0x58 ; 88 c18: 79 f0 breq .+30 ; 0xc38 c1a: ae c0 rjmp .+348 ; 0xd78 c1c: 80 37 cpi r24, 0x70 ; 112 c1e: 19 f0 breq .+6 ; 0xc26 c20: 88 37 cpi r24, 0x78 ; 120 c22: 21 f0 breq .+8 ; 0xc2c c24: a9 c0 rjmp .+338 ; 0xd78 c26: e9 2f mov r30, r25 c28: e0 61 ori r30, 0x10 ; 16 c2a: be 2e mov r11, r30 c2c: b4 fe sbrs r11, 4 c2e: 0d c0 rjmp .+26 ; 0xc4a c30: fb 2d mov r31, r11 c32: f4 60 ori r31, 0x04 ; 4 c34: bf 2e mov r11, r31 c36: 09 c0 rjmp .+18 ; 0xc4a c38: 34 fe sbrs r3, 4 c3a: 0a c0 rjmp .+20 ; 0xc50 c3c: 29 2f mov r18, r25 c3e: 26 60 ori r18, 0x06 ; 6 c40: b2 2e mov r11, r18 c42: 06 c0 rjmp .+12 ; 0xc50 c44: 28 e0 ldi r18, 0x08 ; 8 c46: 30 e0 ldi r19, 0x00 ; 0 c48: 05 c0 rjmp .+10 ; 0xc54 c4a: 20 e1 ldi r18, 0x10 ; 16 c4c: 30 e0 ldi r19, 0x00 ; 0 c4e: 02 c0 rjmp .+4 ; 0xc54 c50: 20 e1 ldi r18, 0x10 ; 16 c52: 32 e0 ldi r19, 0x02 ; 2 c54: f8 01 movw r30, r16 c56: b7 fe sbrs r11, 7 c58: 07 c0 rjmp .+14 ; 0xc68 c5a: 60 81 ld r22, Z c5c: 71 81 ldd r23, Z+1 ; 0x01 c5e: 82 81 ldd r24, Z+2 ; 0x02 c60: 93 81 ldd r25, Z+3 ; 0x03 c62: 0c 5f subi r16, 0xFC ; 252 c64: 1f 4f sbci r17, 0xFF ; 255 c66: 06 c0 rjmp .+12 ; 0xc74 c68: 60 81 ld r22, Z c6a: 71 81 ldd r23, Z+1 ; 0x01 c6c: 80 e0 ldi r24, 0x00 ; 0 c6e: 90 e0 ldi r25, 0x00 ; 0 c70: 0e 5f subi r16, 0xFE ; 254 c72: 1f 4f sbci r17, 0xFF ; 255 c74: a3 01 movw r20, r6 c76: 3f d3 rcall .+1662 ; 0x12f6 <__ultoa_invert> c78: 88 2e mov r8, r24 c7a: 86 18 sub r8, r6 c7c: fb 2d mov r31, r11 c7e: ff 77 andi r31, 0x7F ; 127 c80: 3f 2e mov r3, r31 c82: 36 fe sbrs r3, 6 c84: 0d c0 rjmp .+26 ; 0xca0 c86: 23 2d mov r18, r3 c88: 2e 7f andi r18, 0xFE ; 254 c8a: a2 2e mov r10, r18 c8c: 89 14 cp r8, r9 c8e: 58 f4 brcc .+22 ; 0xca6 c90: 34 fe sbrs r3, 4 c92: 0b c0 rjmp .+22 ; 0xcaa c94: 32 fc sbrc r3, 2 c96: 09 c0 rjmp .+18 ; 0xcaa c98: 83 2d mov r24, r3 c9a: 8e 7e andi r24, 0xEE ; 238 c9c: a8 2e mov r10, r24 c9e: 05 c0 rjmp .+10 ; 0xcaa ca0: b8 2c mov r11, r8 ca2: a3 2c mov r10, r3 ca4: 03 c0 rjmp .+6 ; 0xcac ca6: b8 2c mov r11, r8 ca8: 01 c0 rjmp .+2 ; 0xcac caa: b9 2c mov r11, r9 cac: a4 fe sbrs r10, 4 cae: 0f c0 rjmp .+30 ; 0xcce cb0: fe 01 movw r30, r28 cb2: e8 0d add r30, r8 cb4: f1 1d adc r31, r1 cb6: 80 81 ld r24, Z cb8: 80 33 cpi r24, 0x30 ; 48 cba: 21 f4 brne .+8 ; 0xcc4 cbc: 9a 2d mov r25, r10 cbe: 99 7e andi r25, 0xE9 ; 233 cc0: a9 2e mov r10, r25 cc2: 09 c0 rjmp .+18 ; 0xcd6 cc4: a2 fe sbrs r10, 2 cc6: 06 c0 rjmp .+12 ; 0xcd4 cc8: b3 94 inc r11 cca: b3 94 inc r11 ccc: 04 c0 rjmp .+8 ; 0xcd6 cce: 8a 2d mov r24, r10 cd0: 86 78 andi r24, 0x86 ; 134 cd2: 09 f0 breq .+2 ; 0xcd6 cd4: b3 94 inc r11 cd6: a3 fc sbrc r10, 3 cd8: 10 c0 rjmp .+32 ; 0xcfa cda: a0 fe sbrs r10, 0 cdc: 06 c0 rjmp .+12 ; 0xcea cde: b2 14 cp r11, r2 ce0: 80 f4 brcc .+32 ; 0xd02 ce2: 28 0c add r2, r8 ce4: 92 2c mov r9, r2 ce6: 9b 18 sub r9, r11 ce8: 0d c0 rjmp .+26 ; 0xd04 cea: b2 14 cp r11, r2 cec: 58 f4 brcc .+22 ; 0xd04 cee: b6 01 movw r22, r12 cf0: 80 e2 ldi r24, 0x20 ; 32 cf2: 90 e0 ldi r25, 0x00 ; 0 cf4: c4 d2 rcall .+1416 ; 0x127e cf6: b3 94 inc r11 cf8: f8 cf rjmp .-16 ; 0xcea cfa: b2 14 cp r11, r2 cfc: 18 f4 brcc .+6 ; 0xd04 cfe: 2b 18 sub r2, r11 d00: 02 c0 rjmp .+4 ; 0xd06 d02: 98 2c mov r9, r8 d04: 21 2c mov r2, r1 d06: a4 fe sbrs r10, 4 d08: 0f c0 rjmp .+30 ; 0xd28 d0a: b6 01 movw r22, r12 d0c: 80 e3 ldi r24, 0x30 ; 48 d0e: 90 e0 ldi r25, 0x00 ; 0 d10: b6 d2 rcall .+1388 ; 0x127e d12: a2 fe sbrs r10, 2 d14: 16 c0 rjmp .+44 ; 0xd42 d16: a1 fc sbrc r10, 1 d18: 03 c0 rjmp .+6 ; 0xd20 d1a: 88 e7 ldi r24, 0x78 ; 120 d1c: 90 e0 ldi r25, 0x00 ; 0 d1e: 02 c0 rjmp .+4 ; 0xd24 d20: 88 e5 ldi r24, 0x58 ; 88 d22: 90 e0 ldi r25, 0x00 ; 0 d24: b6 01 movw r22, r12 d26: 0c c0 rjmp .+24 ; 0xd40 d28: 8a 2d mov r24, r10 d2a: 86 78 andi r24, 0x86 ; 134 d2c: 51 f0 breq .+20 ; 0xd42 d2e: a1 fe sbrs r10, 1 d30: 02 c0 rjmp .+4 ; 0xd36 d32: 8b e2 ldi r24, 0x2B ; 43 d34: 01 c0 rjmp .+2 ; 0xd38 d36: 80 e2 ldi r24, 0x20 ; 32 d38: a7 fc sbrc r10, 7 d3a: 8d e2 ldi r24, 0x2D ; 45 d3c: b6 01 movw r22, r12 d3e: 90 e0 ldi r25, 0x00 ; 0 d40: 9e d2 rcall .+1340 ; 0x127e d42: 89 14 cp r8, r9 d44: 30 f4 brcc .+12 ; 0xd52 d46: b6 01 movw r22, r12 d48: 80 e3 ldi r24, 0x30 ; 48 d4a: 90 e0 ldi r25, 0x00 ; 0 d4c: 98 d2 rcall .+1328 ; 0x127e d4e: 9a 94 dec r9 d50: f8 cf rjmp .-16 ; 0xd42 d52: 8a 94 dec r8 d54: f3 01 movw r30, r6 d56: e8 0d add r30, r8 d58: f1 1d adc r31, r1 d5a: 80 81 ld r24, Z d5c: b6 01 movw r22, r12 d5e: 90 e0 ldi r25, 0x00 ; 0 d60: 8e d2 rcall .+1308 ; 0x127e d62: 81 10 cpse r8, r1 d64: f6 cf rjmp .-20 ; 0xd52 d66: 22 20 and r2, r2 d68: 09 f4 brne .+2 ; 0xd6c d6a: 4e ce rjmp .-868 ; 0xa08 d6c: b6 01 movw r22, r12 d6e: 80 e2 ldi r24, 0x20 ; 32 d70: 90 e0 ldi r25, 0x00 ; 0 d72: 85 d2 rcall .+1290 ; 0x127e d74: 2a 94 dec r2 d76: f7 cf rjmp .-18 ; 0xd66 d78: f6 01 movw r30, r12 d7a: 86 81 ldd r24, Z+6 ; 0x06 d7c: 97 81 ldd r25, Z+7 ; 0x07 d7e: 02 c0 rjmp .+4 ; 0xd84 d80: 8f ef ldi r24, 0xFF ; 255 d82: 9f ef ldi r25, 0xFF ; 255 d84: 2b 96 adiw r28, 0x0b ; 11 d86: 0f b6 in r0, 0x3f ; 63 d88: f8 94 cli d8a: de bf out 0x3e, r29 ; 62 d8c: 0f be out 0x3f, r0 ; 63 d8e: cd bf out 0x3d, r28 ; 61 d90: df 91 pop r29 d92: cf 91 pop r28 d94: 1f 91 pop r17 d96: 0f 91 pop r16 d98: ff 90 pop r15 d9a: ef 90 pop r14 d9c: df 90 pop r13 d9e: cf 90 pop r12 da0: bf 90 pop r11 da2: af 90 pop r10 da4: 9f 90 pop r9 da6: 8f 90 pop r8 da8: 7f 90 pop r7 daa: 6f 90 pop r6 dac: 5f 90 pop r5 dae: 4f 90 pop r4 db0: 3f 90 pop r3 db2: 2f 90 pop r2 db4: 08 95 ret 00000db6 : db6: 8f 92 push r8 db8: 9f 92 push r9 dba: af 92 push r10 dbc: bf 92 push r11 dbe: cf 92 push r12 dc0: df 92 push r13 dc2: ef 92 push r14 dc4: ff 92 push r15 dc6: 0f 93 push r16 dc8: 1f 93 push r17 dca: cf 93 push r28 dcc: df 93 push r29 dce: cd b7 in r28, 0x3d ; 61 dd0: de b7 in r29, 0x3e ; 62 dd2: 29 97 sbiw r28, 0x09 ; 9 dd4: 0f b6 in r0, 0x3f ; 63 dd6: f8 94 cli dd8: de bf out 0x3e, r29 ; 62 dda: 0f be out 0x3f, r0 ; 63 ddc: cd bf out 0x3d, r28 ; 61 dde: 6a 01 movw r12, r20 de0: 12 2f mov r17, r18 de2: b0 2e mov r11, r16 de4: 2b e3 ldi r18, 0x3B ; 59 de6: 20 17 cp r18, r16 de8: 20 f0 brcs .+8 ; 0xdf2 dea: ff 24 eor r15, r15 dec: f3 94 inc r15 dee: f0 0e add r15, r16 df0: 02 c0 rjmp .+4 ; 0xdf6 df2: 2c e3 ldi r18, 0x3C ; 60 df4: f2 2e mov r15, r18 df6: 0f 2d mov r16, r15 df8: 27 e0 ldi r18, 0x07 ; 7 dfa: ae 01 movw r20, r28 dfc: 4f 5f subi r20, 0xFF ; 255 dfe: 5f 4f sbci r21, 0xFF ; 255 e00: 50 d1 rcall .+672 ; 0x10a2 <__ftoa_engine> e02: bc 01 movw r22, r24 e04: 49 81 ldd r20, Y+1 ; 0x01 e06: 84 2f mov r24, r20 e08: 89 70 andi r24, 0x09 ; 9 e0a: 81 30 cpi r24, 0x01 ; 1 e0c: 31 f0 breq .+12 ; 0xe1a e0e: e1 fc sbrc r14, 1 e10: 06 c0 rjmp .+12 ; 0xe1e e12: e0 fe sbrs r14, 0 e14: 06 c0 rjmp .+12 ; 0xe22 e16: 90 e2 ldi r25, 0x20 ; 32 e18: 05 c0 rjmp .+10 ; 0xe24 e1a: 9d e2 ldi r25, 0x2D ; 45 e1c: 03 c0 rjmp .+6 ; 0xe24 e1e: 9b e2 ldi r25, 0x2B ; 43 e20: 01 c0 rjmp .+2 ; 0xe24 e22: 90 e0 ldi r25, 0x00 ; 0 e24: 5e 2d mov r21, r14 e26: 50 71 andi r21, 0x10 ; 16 e28: 43 ff sbrs r20, 3 e2a: 3c c0 rjmp .+120 ; 0xea4 e2c: 91 11 cpse r25, r1 e2e: 02 c0 rjmp .+4 ; 0xe34 e30: 83 e0 ldi r24, 0x03 ; 3 e32: 01 c0 rjmp .+2 ; 0xe36 e34: 84 e0 ldi r24, 0x04 ; 4 e36: 81 17 cp r24, r17 e38: 18 f4 brcc .+6 ; 0xe40 e3a: 21 2f mov r18, r17 e3c: 28 1b sub r18, r24 e3e: 01 c0 rjmp .+2 ; 0xe42 e40: 20 e0 ldi r18, 0x00 ; 0 e42: 51 11 cpse r21, r1 e44: 0b c0 rjmp .+22 ; 0xe5c e46: f6 01 movw r30, r12 e48: 82 2f mov r24, r18 e4a: 30 e2 ldi r19, 0x20 ; 32 e4c: 88 23 and r24, r24 e4e: 19 f0 breq .+6 ; 0xe56 e50: 31 93 st Z+, r19 e52: 81 50 subi r24, 0x01 ; 1 e54: fb cf rjmp .-10 ; 0xe4c e56: c2 0e add r12, r18 e58: d1 1c adc r13, r1 e5a: 20 e0 ldi r18, 0x00 ; 0 e5c: 99 23 and r25, r25 e5e: 29 f0 breq .+10 ; 0xe6a e60: d6 01 movw r26, r12 e62: 9c 93 st X, r25 e64: f6 01 movw r30, r12 e66: 31 96 adiw r30, 0x01 ; 1 e68: 6f 01 movw r12, r30 e6a: c6 01 movw r24, r12 e6c: 03 96 adiw r24, 0x03 ; 3 e6e: e2 fe sbrs r14, 2 e70: 0a c0 rjmp .+20 ; 0xe86 e72: 3e e4 ldi r19, 0x4E ; 78 e74: d6 01 movw r26, r12 e76: 3c 93 st X, r19 e78: 41 e4 ldi r20, 0x41 ; 65 e7a: 11 96 adiw r26, 0x01 ; 1 e7c: 4c 93 st X, r20 e7e: 11 97 sbiw r26, 0x01 ; 1 e80: 12 96 adiw r26, 0x02 ; 2 e82: 3c 93 st X, r19 e84: 06 c0 rjmp .+12 ; 0xe92 e86: 3e e6 ldi r19, 0x6E ; 110 e88: f6 01 movw r30, r12 e8a: 30 83 st Z, r19 e8c: 41 e6 ldi r20, 0x61 ; 97 e8e: 41 83 std Z+1, r20 ; 0x01 e90: 32 83 std Z+2, r19 ; 0x02 e92: fc 01 movw r30, r24 e94: 32 2f mov r19, r18 e96: 40 e2 ldi r20, 0x20 ; 32 e98: 33 23 and r19, r19 e9a: 09 f4 brne .+2 ; 0xe9e e9c: 42 c0 rjmp .+132 ; 0xf22 e9e: 41 93 st Z+, r20 ea0: 31 50 subi r19, 0x01 ; 1 ea2: fa cf rjmp .-12 ; 0xe98 ea4: 42 ff sbrs r20, 2 ea6: 44 c0 rjmp .+136 ; 0xf30 ea8: 91 11 cpse r25, r1 eaa: 02 c0 rjmp .+4 ; 0xeb0 eac: 83 e0 ldi r24, 0x03 ; 3 eae: 01 c0 rjmp .+2 ; 0xeb2 eb0: 84 e0 ldi r24, 0x04 ; 4 eb2: 81 17 cp r24, r17 eb4: 18 f4 brcc .+6 ; 0xebc eb6: 21 2f mov r18, r17 eb8: 28 1b sub r18, r24 eba: 01 c0 rjmp .+2 ; 0xebe ebc: 20 e0 ldi r18, 0x00 ; 0 ebe: 51 11 cpse r21, r1 ec0: 0b c0 rjmp .+22 ; 0xed8 ec2: f6 01 movw r30, r12 ec4: 82 2f mov r24, r18 ec6: 30 e2 ldi r19, 0x20 ; 32 ec8: 88 23 and r24, r24 eca: 19 f0 breq .+6 ; 0xed2 ecc: 31 93 st Z+, r19 ece: 81 50 subi r24, 0x01 ; 1 ed0: fb cf rjmp .-10 ; 0xec8 ed2: c2 0e add r12, r18 ed4: d1 1c adc r13, r1 ed6: 20 e0 ldi r18, 0x00 ; 0 ed8: 99 23 and r25, r25 eda: 29 f0 breq .+10 ; 0xee6 edc: d6 01 movw r26, r12 ede: 9c 93 st X, r25 ee0: f6 01 movw r30, r12 ee2: 31 96 adiw r30, 0x01 ; 1 ee4: 6f 01 movw r12, r30 ee6: c6 01 movw r24, r12 ee8: 03 96 adiw r24, 0x03 ; 3 eea: e2 fe sbrs r14, 2 eec: 0b c0 rjmp .+22 ; 0xf04 eee: 39 e4 ldi r19, 0x49 ; 73 ef0: d6 01 movw r26, r12 ef2: 3c 93 st X, r19 ef4: 3e e4 ldi r19, 0x4E ; 78 ef6: 11 96 adiw r26, 0x01 ; 1 ef8: 3c 93 st X, r19 efa: 11 97 sbiw r26, 0x01 ; 1 efc: 36 e4 ldi r19, 0x46 ; 70 efe: 12 96 adiw r26, 0x02 ; 2 f00: 3c 93 st X, r19 f02: 07 c0 rjmp .+14 ; 0xf12 f04: 39 e6 ldi r19, 0x69 ; 105 f06: f6 01 movw r30, r12 f08: 30 83 st Z, r19 f0a: 3e e6 ldi r19, 0x6E ; 110 f0c: 31 83 std Z+1, r19 ; 0x01 f0e: 36 e6 ldi r19, 0x66 ; 102 f10: 32 83 std Z+2, r19 ; 0x02 f12: fc 01 movw r30, r24 f14: 32 2f mov r19, r18 f16: 40 e2 ldi r20, 0x20 ; 32 f18: 33 23 and r19, r19 f1a: 19 f0 breq .+6 ; 0xf22 f1c: 41 93 st Z+, r20 f1e: 31 50 subi r19, 0x01 ; 1 f20: fb cf rjmp .-10 ; 0xf18 f22: fc 01 movw r30, r24 f24: e2 0f add r30, r18 f26: f1 1d adc r31, r1 f28: 10 82 st Z, r1 f2a: 8e ef ldi r24, 0xFE ; 254 f2c: 9f ef ldi r25, 0xFF ; 255 f2e: a6 c0 rjmp .+332 ; 0x107c <__DATA_REGION_LENGTH__+0x7c> f30: 21 e0 ldi r18, 0x01 ; 1 f32: 30 e0 ldi r19, 0x00 ; 0 f34: 91 11 cpse r25, r1 f36: 02 c0 rjmp .+4 ; 0xf3c f38: 20 e0 ldi r18, 0x00 ; 0 f3a: 30 e0 ldi r19, 0x00 ; 0 f3c: 16 16 cp r1, r22 f3e: 17 06 cpc r1, r23 f40: 1c f4 brge .+6 ; 0xf48 f42: fb 01 movw r30, r22 f44: 31 96 adiw r30, 0x01 ; 1 f46: 02 c0 rjmp .+4 ; 0xf4c f48: e1 e0 ldi r30, 0x01 ; 1 f4a: f0 e0 ldi r31, 0x00 ; 0 f4c: 2e 0f add r18, r30 f4e: 3f 1f adc r19, r31 f50: bb 20 and r11, r11 f52: 21 f0 breq .+8 ; 0xf5c f54: eb 2d mov r30, r11 f56: f0 e0 ldi r31, 0x00 ; 0 f58: 31 96 adiw r30, 0x01 ; 1 f5a: 02 c0 rjmp .+4 ; 0xf60 f5c: e0 e0 ldi r30, 0x00 ; 0 f5e: f0 e0 ldi r31, 0x00 ; 0 f60: 2e 0f add r18, r30 f62: 3f 1f adc r19, r31 f64: e1 2f mov r30, r17 f66: f0 e0 ldi r31, 0x00 ; 0 f68: 2e 17 cp r18, r30 f6a: 3f 07 cpc r19, r31 f6c: 1c f4 brge .+6 ; 0xf74 f6e: 12 1b sub r17, r18 f70: 21 2f mov r18, r17 f72: 01 c0 rjmp .+2 ; 0xf76 f74: 20 e0 ldi r18, 0x00 ; 0 f76: 8e 2d mov r24, r14 f78: 88 71 andi r24, 0x18 ; 24 f7a: 59 f4 brne .+22 ; 0xf92 f7c: f6 01 movw r30, r12 f7e: 82 2f mov r24, r18 f80: 30 e2 ldi r19, 0x20 ; 32 f82: 88 23 and r24, r24 f84: 19 f0 breq .+6 ; 0xf8c f86: 31 93 st Z+, r19 f88: 81 50 subi r24, 0x01 ; 1 f8a: fb cf rjmp .-10 ; 0xf82 f8c: c2 0e add r12, r18 f8e: d1 1c adc r13, r1 f90: 20 e0 ldi r18, 0x00 ; 0 f92: 99 23 and r25, r25 f94: 29 f0 breq .+10 ; 0xfa0 f96: d6 01 movw r26, r12 f98: 9c 93 st X, r25 f9a: f6 01 movw r30, r12 f9c: 31 96 adiw r30, 0x01 ; 1 f9e: 6f 01 movw r12, r30 fa0: 51 11 cpse r21, r1 fa2: 0b c0 rjmp .+22 ; 0xfba fa4: f6 01 movw r30, r12 fa6: 82 2f mov r24, r18 fa8: 90 e3 ldi r25, 0x30 ; 48 faa: 88 23 and r24, r24 fac: 19 f0 breq .+6 ; 0xfb4 fae: 91 93 st Z+, r25 fb0: 81 50 subi r24, 0x01 ; 1 fb2: fb cf rjmp .-10 ; 0xfaa fb4: c2 0e add r12, r18 fb6: d1 1c adc r13, r1 fb8: 20 e0 ldi r18, 0x00 ; 0 fba: 0f 2d mov r16, r15 fbc: 06 0f add r16, r22 fbe: 9a 81 ldd r25, Y+2 ; 0x02 fc0: 34 2f mov r19, r20 fc2: 30 71 andi r19, 0x10 ; 16 fc4: 44 ff sbrs r20, 4 fc6: 03 c0 rjmp .+6 ; 0xfce fc8: 91 33 cpi r25, 0x31 ; 49 fca: 09 f4 brne .+2 ; 0xfce fcc: 01 50 subi r16, 0x01 ; 1 fce: 10 16 cp r1, r16 fd0: 24 f4 brge .+8 ; 0xfda fd2: 09 30 cpi r16, 0x09 ; 9 fd4: 18 f0 brcs .+6 ; 0xfdc fd6: 08 e0 ldi r16, 0x08 ; 8 fd8: 01 c0 rjmp .+2 ; 0xfdc fda: 01 e0 ldi r16, 0x01 ; 1 fdc: ab 01 movw r20, r22 fde: 77 ff sbrs r23, 7 fe0: 02 c0 rjmp .+4 ; 0xfe6 fe2: 40 e0 ldi r20, 0x00 ; 0 fe4: 50 e0 ldi r21, 0x00 ; 0 fe6: fb 01 movw r30, r22 fe8: e4 1b sub r30, r20 fea: f5 0b sbc r31, r21 fec: a1 e0 ldi r26, 0x01 ; 1 fee: b0 e0 ldi r27, 0x00 ; 0 ff0: ac 0f add r26, r28 ff2: bd 1f adc r27, r29 ff4: ea 0f add r30, r26 ff6: fb 1f adc r31, r27 ff8: 8e e2 ldi r24, 0x2E ; 46 ffa: a8 2e mov r10, r24 ffc: 4b 01 movw r8, r22 ffe: 80 1a sub r8, r16 1000: 91 08 sbc r9, r1 1002: 0b 2d mov r16, r11 1004: 10 e0 ldi r17, 0x00 ; 0 1006: 11 95 neg r17 1008: 01 95 neg r16 100a: 11 09 sbc r17, r1 100c: 4f 3f cpi r20, 0xFF ; 255 100e: bf ef ldi r27, 0xFF ; 255 1010: 5b 07 cpc r21, r27 1012: 21 f4 brne .+8 ; 0x101c <__DATA_REGION_LENGTH__+0x1c> 1014: d6 01 movw r26, r12 1016: ac 92 st X, r10 1018: 11 96 adiw r26, 0x01 ; 1 101a: 6d 01 movw r12, r26 101c: 64 17 cp r22, r20 101e: 75 07 cpc r23, r21 1020: 2c f0 brlt .+10 ; 0x102c <__DATA_REGION_LENGTH__+0x2c> 1022: 84 16 cp r8, r20 1024: 95 06 cpc r9, r21 1026: 14 f4 brge .+4 ; 0x102c <__DATA_REGION_LENGTH__+0x2c> 1028: 81 81 ldd r24, Z+1 ; 0x01 102a: 01 c0 rjmp .+2 ; 0x102e <__DATA_REGION_LENGTH__+0x2e> 102c: 80 e3 ldi r24, 0x30 ; 48 102e: 41 50 subi r20, 0x01 ; 1 1030: 51 09 sbc r21, r1 1032: 31 96 adiw r30, 0x01 ; 1 1034: d6 01 movw r26, r12 1036: 11 96 adiw r26, 0x01 ; 1 1038: 7d 01 movw r14, r26 103a: 40 17 cp r20, r16 103c: 51 07 cpc r21, r17 103e: 24 f0 brlt .+8 ; 0x1048 <__DATA_REGION_LENGTH__+0x48> 1040: d6 01 movw r26, r12 1042: 8c 93 st X, r24 1044: 67 01 movw r12, r14 1046: e2 cf rjmp .-60 ; 0x100c <__DATA_REGION_LENGTH__+0xc> 1048: 64 17 cp r22, r20 104a: 75 07 cpc r23, r21 104c: 39 f4 brne .+14 ; 0x105c <__DATA_REGION_LENGTH__+0x5c> 104e: 96 33 cpi r25, 0x36 ; 54 1050: 20 f4 brcc .+8 ; 0x105a <__DATA_REGION_LENGTH__+0x5a> 1052: 95 33 cpi r25, 0x35 ; 53 1054: 19 f4 brne .+6 ; 0x105c <__DATA_REGION_LENGTH__+0x5c> 1056: 31 11 cpse r19, r1 1058: 01 c0 rjmp .+2 ; 0x105c <__DATA_REGION_LENGTH__+0x5c> 105a: 81 e3 ldi r24, 0x31 ; 49 105c: f6 01 movw r30, r12 105e: 80 83 st Z, r24 1060: f7 01 movw r30, r14 1062: 82 2f mov r24, r18 1064: 90 e2 ldi r25, 0x20 ; 32 1066: 88 23 and r24, r24 1068: 19 f0 breq .+6 ; 0x1070 <__DATA_REGION_LENGTH__+0x70> 106a: 91 93 st Z+, r25 106c: 81 50 subi r24, 0x01 ; 1 106e: fb cf rjmp .-10 ; 0x1066 <__DATA_REGION_LENGTH__+0x66> 1070: f7 01 movw r30, r14 1072: e2 0f add r30, r18 1074: f1 1d adc r31, r1 1076: 10 82 st Z, r1 1078: 80 e0 ldi r24, 0x00 ; 0 107a: 90 e0 ldi r25, 0x00 ; 0 107c: 29 96 adiw r28, 0x09 ; 9 107e: 0f b6 in r0, 0x3f ; 63 1080: f8 94 cli 1082: de bf out 0x3e, r29 ; 62 1084: 0f be out 0x3f, r0 ; 63 1086: cd bf out 0x3d, r28 ; 61 1088: df 91 pop r29 108a: cf 91 pop r28 108c: 1f 91 pop r17 108e: 0f 91 pop r16 1090: ff 90 pop r15 1092: ef 90 pop r14 1094: df 90 pop r13 1096: cf 90 pop r12 1098: bf 90 pop r11 109a: af 90 pop r10 109c: 9f 90 pop r9 109e: 8f 90 pop r8 10a0: 08 95 ret 000010a2 <__ftoa_engine>: 10a2: 28 30 cpi r18, 0x08 ; 8 10a4: 08 f0 brcs .+2 ; 0x10a8 <__ftoa_engine+0x6> 10a6: 27 e0 ldi r18, 0x07 ; 7 10a8: 33 27 eor r19, r19 10aa: da 01 movw r26, r20 10ac: 99 0f add r25, r25 10ae: 31 1d adc r19, r1 10b0: 87 fd sbrc r24, 7 10b2: 91 60 ori r25, 0x01 ; 1 10b4: 00 96 adiw r24, 0x00 ; 0 10b6: 61 05 cpc r22, r1 10b8: 71 05 cpc r23, r1 10ba: 39 f4 brne .+14 ; 0x10ca <__ftoa_engine+0x28> 10bc: 32 60 ori r19, 0x02 ; 2 10be: 2e 5f subi r18, 0xFE ; 254 10c0: 3d 93 st X+, r19 10c2: 30 e3 ldi r19, 0x30 ; 48 10c4: 2a 95 dec r18 10c6: e1 f7 brne .-8 ; 0x10c0 <__ftoa_engine+0x1e> 10c8: 08 95 ret 10ca: 9f 3f cpi r25, 0xFF ; 255 10cc: 30 f0 brcs .+12 ; 0x10da <__ftoa_engine+0x38> 10ce: 80 38 cpi r24, 0x80 ; 128 10d0: 71 05 cpc r23, r1 10d2: 61 05 cpc r22, r1 10d4: 09 f0 breq .+2 ; 0x10d8 <__ftoa_engine+0x36> 10d6: 3c 5f subi r19, 0xFC ; 252 10d8: 3c 5f subi r19, 0xFC ; 252 10da: 3d 93 st X+, r19 10dc: 91 30 cpi r25, 0x01 ; 1 10de: 08 f0 brcs .+2 ; 0x10e2 <__ftoa_engine+0x40> 10e0: 80 68 ori r24, 0x80 ; 128 10e2: 91 1d adc r25, r1 10e4: df 93 push r29 10e6: cf 93 push r28 10e8: 1f 93 push r17 10ea: 0f 93 push r16 10ec: ff 92 push r15 10ee: ef 92 push r14 10f0: 19 2f mov r17, r25 10f2: 98 7f andi r25, 0xF8 ; 248 10f4: 96 95 lsr r25 10f6: e9 2f mov r30, r25 10f8: 96 95 lsr r25 10fa: 96 95 lsr r25 10fc: e9 0f add r30, r25 10fe: ff 27 eor r31, r31 1100: ea 51 subi r30, 0x1A ; 26 1102: ff 4f sbci r31, 0xFF ; 255 1104: 99 27 eor r25, r25 1106: 33 27 eor r19, r19 1108: ee 24 eor r14, r14 110a: ff 24 eor r15, r15 110c: a7 01 movw r20, r14 110e: e7 01 movw r28, r14 1110: 05 90 lpm r0, Z+ 1112: 08 94 sec 1114: 07 94 ror r0 1116: 28 f4 brcc .+10 ; 0x1122 <__stack+0x23> 1118: 36 0f add r19, r22 111a: e7 1e adc r14, r23 111c: f8 1e adc r15, r24 111e: 49 1f adc r20, r25 1120: 51 1d adc r21, r1 1122: 66 0f add r22, r22 1124: 77 1f adc r23, r23 1126: 88 1f adc r24, r24 1128: 99 1f adc r25, r25 112a: 06 94 lsr r0 112c: a1 f7 brne .-24 ; 0x1116 <__stack+0x17> 112e: 05 90 lpm r0, Z+ 1130: 07 94 ror r0 1132: 28 f4 brcc .+10 ; 0x113e <__stack+0x3f> 1134: e7 0e add r14, r23 1136: f8 1e adc r15, r24 1138: 49 1f adc r20, r25 113a: 56 1f adc r21, r22 113c: c1 1d adc r28, r1 113e: 77 0f add r23, r23 1140: 88 1f adc r24, r24 1142: 99 1f adc r25, r25 1144: 66 1f adc r22, r22 1146: 06 94 lsr r0 1148: a1 f7 brne .-24 ; 0x1132 <__stack+0x33> 114a: 05 90 lpm r0, Z+ 114c: 07 94 ror r0 114e: 28 f4 brcc .+10 ; 0x115a <__stack+0x5b> 1150: f8 0e add r15, r24 1152: 49 1f adc r20, r25 1154: 56 1f adc r21, r22 1156: c7 1f adc r28, r23 1158: d1 1d adc r29, r1 115a: 88 0f add r24, r24 115c: 99 1f adc r25, r25 115e: 66 1f adc r22, r22 1160: 77 1f adc r23, r23 1162: 06 94 lsr r0 1164: a1 f7 brne .-24 ; 0x114e <__stack+0x4f> 1166: 05 90 lpm r0, Z+ 1168: 07 94 ror r0 116a: 20 f4 brcc .+8 ; 0x1174 <__stack+0x75> 116c: 49 0f add r20, r25 116e: 56 1f adc r21, r22 1170: c7 1f adc r28, r23 1172: d8 1f adc r29, r24 1174: 99 0f add r25, r25 1176: 66 1f adc r22, r22 1178: 77 1f adc r23, r23 117a: 88 1f adc r24, r24 117c: 06 94 lsr r0 117e: a9 f7 brne .-22 ; 0x116a <__stack+0x6b> 1180: 84 91 lpm r24, Z 1182: 10 95 com r17 1184: 17 70 andi r17, 0x07 ; 7 1186: 41 f0 breq .+16 ; 0x1198 <__stack+0x99> 1188: d6 95 lsr r29 118a: c7 95 ror r28 118c: 57 95 ror r21 118e: 47 95 ror r20 1190: f7 94 ror r15 1192: e7 94 ror r14 1194: 1a 95 dec r17 1196: c1 f7 brne .-16 ; 0x1188 <__stack+0x89> 1198: ec e8 ldi r30, 0x8C ; 140 119a: f0 e0 ldi r31, 0x00 ; 0 119c: 68 94 set 119e: 15 90 lpm r1, Z+ 11a0: 15 91 lpm r17, Z+ 11a2: 35 91 lpm r19, Z+ 11a4: 65 91 lpm r22, Z+ 11a6: 95 91 lpm r25, Z+ 11a8: 05 90 lpm r0, Z+ 11aa: 7f e2 ldi r23, 0x2F ; 47 11ac: 73 95 inc r23 11ae: e1 18 sub r14, r1 11b0: f1 0a sbc r15, r17 11b2: 43 0b sbc r20, r19 11b4: 56 0b sbc r21, r22 11b6: c9 0b sbc r28, r25 11b8: d0 09 sbc r29, r0 11ba: c0 f7 brcc .-16 ; 0x11ac <__stack+0xad> 11bc: e1 0c add r14, r1 11be: f1 1e adc r15, r17 11c0: 43 1f adc r20, r19 11c2: 56 1f adc r21, r22 11c4: c9 1f adc r28, r25 11c6: d0 1d adc r29, r0 11c8: 7e f4 brtc .+30 ; 0x11e8 <__stack+0xe9> 11ca: 70 33 cpi r23, 0x30 ; 48 11cc: 11 f4 brne .+4 ; 0x11d2 <__stack+0xd3> 11ce: 8a 95 dec r24 11d0: e6 cf rjmp .-52 ; 0x119e <__stack+0x9f> 11d2: e8 94 clt 11d4: 01 50 subi r16, 0x01 ; 1 11d6: 30 f0 brcs .+12 ; 0x11e4 <__stack+0xe5> 11d8: 08 0f add r16, r24 11da: 0a f4 brpl .+2 ; 0x11de <__stack+0xdf> 11dc: 00 27 eor r16, r16 11de: 02 17 cp r16, r18 11e0: 08 f4 brcc .+2 ; 0x11e4 <__stack+0xe5> 11e2: 20 2f mov r18, r16 11e4: 23 95 inc r18 11e6: 02 2f mov r16, r18 11e8: 7a 33 cpi r23, 0x3A ; 58 11ea: 28 f0 brcs .+10 ; 0x11f6 <__stack+0xf7> 11ec: 79 e3 ldi r23, 0x39 ; 57 11ee: 7d 93 st X+, r23 11f0: 2a 95 dec r18 11f2: e9 f7 brne .-6 ; 0x11ee <__stack+0xef> 11f4: 10 c0 rjmp .+32 ; 0x1216 <__stack+0x117> 11f6: 7d 93 st X+, r23 11f8: 2a 95 dec r18 11fa: 89 f6 brne .-94 ; 0x119e <__stack+0x9f> 11fc: 06 94 lsr r0 11fe: 97 95 ror r25 1200: 67 95 ror r22 1202: 37 95 ror r19 1204: 17 95 ror r17 1206: 17 94 ror r1 1208: e1 18 sub r14, r1 120a: f1 0a sbc r15, r17 120c: 43 0b sbc r20, r19 120e: 56 0b sbc r21, r22 1210: c9 0b sbc r28, r25 1212: d0 09 sbc r29, r0 1214: 98 f0 brcs .+38 ; 0x123c <__stack+0x13d> 1216: 23 95 inc r18 1218: 7e 91 ld r23, -X 121a: 73 95 inc r23 121c: 7a 33 cpi r23, 0x3A ; 58 121e: 08 f0 brcs .+2 ; 0x1222 <__stack+0x123> 1220: 70 e3 ldi r23, 0x30 ; 48 1222: 7c 93 st X, r23 1224: 20 13 cpse r18, r16 1226: b8 f7 brcc .-18 ; 0x1216 <__stack+0x117> 1228: 7e 91 ld r23, -X 122a: 70 61 ori r23, 0x10 ; 16 122c: 7d 93 st X+, r23 122e: 30 f0 brcs .+12 ; 0x123c <__stack+0x13d> 1230: 83 95 inc r24 1232: 71 e3 ldi r23, 0x31 ; 49 1234: 7d 93 st X+, r23 1236: 70 e3 ldi r23, 0x30 ; 48 1238: 2a 95 dec r18 123a: e1 f7 brne .-8 ; 0x1234 <__stack+0x135> 123c: 11 24 eor r1, r1 123e: ef 90 pop r14 1240: ff 90 pop r15 1242: 0f 91 pop r16 1244: 1f 91 pop r17 1246: cf 91 pop r28 1248: df 91 pop r29 124a: 99 27 eor r25, r25 124c: 87 fd sbrc r24, 7 124e: 90 95 com r25 1250: 08 95 ret 00001252 : 1252: fc 01 movw r30, r24 1254: 05 90 lpm r0, Z+ 1256: 61 50 subi r22, 0x01 ; 1 1258: 70 40 sbci r23, 0x00 ; 0 125a: 01 10 cpse r0, r1 125c: d8 f7 brcc .-10 ; 0x1254 125e: 80 95 com r24 1260: 90 95 com r25 1262: 8e 0f add r24, r30 1264: 9f 1f adc r25, r31 1266: 08 95 ret 00001268 : 1268: fc 01 movw r30, r24 126a: 61 50 subi r22, 0x01 ; 1 126c: 70 40 sbci r23, 0x00 ; 0 126e: 01 90 ld r0, Z+ 1270: 01 10 cpse r0, r1 1272: d8 f7 brcc .-10 ; 0x126a 1274: 80 95 com r24 1276: 90 95 com r25 1278: 8e 0f add r24, r30 127a: 9f 1f adc r25, r31 127c: 08 95 ret 0000127e : 127e: 0f 93 push r16 1280: 1f 93 push r17 1282: cf 93 push r28 1284: df 93 push r29 1286: fb 01 movw r30, r22 1288: 23 81 ldd r18, Z+3 ; 0x03 128a: 21 fd sbrc r18, 1 128c: 03 c0 rjmp .+6 ; 0x1294 128e: 8f ef ldi r24, 0xFF ; 255 1290: 9f ef ldi r25, 0xFF ; 255 1292: 2c c0 rjmp .+88 ; 0x12ec 1294: 22 ff sbrs r18, 2 1296: 16 c0 rjmp .+44 ; 0x12c4 1298: 46 81 ldd r20, Z+6 ; 0x06 129a: 57 81 ldd r21, Z+7 ; 0x07 129c: 24 81 ldd r18, Z+4 ; 0x04 129e: 35 81 ldd r19, Z+5 ; 0x05 12a0: 42 17 cp r20, r18 12a2: 53 07 cpc r21, r19 12a4: 44 f4 brge .+16 ; 0x12b6 12a6: a0 81 ld r26, Z 12a8: b1 81 ldd r27, Z+1 ; 0x01 12aa: 9d 01 movw r18, r26 12ac: 2f 5f subi r18, 0xFF ; 255 12ae: 3f 4f sbci r19, 0xFF ; 255 12b0: 31 83 std Z+1, r19 ; 0x01 12b2: 20 83 st Z, r18 12b4: 8c 93 st X, r24 12b6: 26 81 ldd r18, Z+6 ; 0x06 12b8: 37 81 ldd r19, Z+7 ; 0x07 12ba: 2f 5f subi r18, 0xFF ; 255 12bc: 3f 4f sbci r19, 0xFF ; 255 12be: 37 83 std Z+7, r19 ; 0x07 12c0: 26 83 std Z+6, r18 ; 0x06 12c2: 14 c0 rjmp .+40 ; 0x12ec 12c4: 8b 01 movw r16, r22 12c6: ec 01 movw r28, r24 12c8: fb 01 movw r30, r22 12ca: 00 84 ldd r0, Z+8 ; 0x08 12cc: f1 85 ldd r31, Z+9 ; 0x09 12ce: e0 2d mov r30, r0 12d0: 09 95 icall 12d2: 89 2b or r24, r25 12d4: e1 f6 brne .-72 ; 0x128e 12d6: d8 01 movw r26, r16 12d8: 16 96 adiw r26, 0x06 ; 6 12da: 8d 91 ld r24, X+ 12dc: 9c 91 ld r25, X 12de: 17 97 sbiw r26, 0x07 ; 7 12e0: 01 96 adiw r24, 0x01 ; 1 12e2: 17 96 adiw r26, 0x07 ; 7 12e4: 9c 93 st X, r25 12e6: 8e 93 st -X, r24 12e8: 16 97 sbiw r26, 0x06 ; 6 12ea: ce 01 movw r24, r28 12ec: df 91 pop r29 12ee: cf 91 pop r28 12f0: 1f 91 pop r17 12f2: 0f 91 pop r16 12f4: 08 95 ret 000012f6 <__ultoa_invert>: 12f6: fa 01 movw r30, r20 12f8: aa 27 eor r26, r26 12fa: 28 30 cpi r18, 0x08 ; 8 12fc: 51 f1 breq .+84 ; 0x1352 <__ultoa_invert+0x5c> 12fe: 20 31 cpi r18, 0x10 ; 16 1300: 81 f1 breq .+96 ; 0x1362 <__ultoa_invert+0x6c> 1302: e8 94 clt 1304: 6f 93 push r22 1306: 6e 7f andi r22, 0xFE ; 254 1308: 6e 5f subi r22, 0xFE ; 254 130a: 7f 4f sbci r23, 0xFF ; 255 130c: 8f 4f sbci r24, 0xFF ; 255 130e: 9f 4f sbci r25, 0xFF ; 255 1310: af 4f sbci r26, 0xFF ; 255 1312: b1 e0 ldi r27, 0x01 ; 1 1314: 3e d0 rcall .+124 ; 0x1392 <__ultoa_invert+0x9c> 1316: b4 e0 ldi r27, 0x04 ; 4 1318: 3c d0 rcall .+120 ; 0x1392 <__ultoa_invert+0x9c> 131a: 67 0f add r22, r23 131c: 78 1f adc r23, r24 131e: 89 1f adc r24, r25 1320: 9a 1f adc r25, r26 1322: a1 1d adc r26, r1 1324: 68 0f add r22, r24 1326: 79 1f adc r23, r25 1328: 8a 1f adc r24, r26 132a: 91 1d adc r25, r1 132c: a1 1d adc r26, r1 132e: 6a 0f add r22, r26 1330: 71 1d adc r23, r1 1332: 81 1d adc r24, r1 1334: 91 1d adc r25, r1 1336: a1 1d adc r26, r1 1338: 20 d0 rcall .+64 ; 0x137a <__ultoa_invert+0x84> 133a: 09 f4 brne .+2 ; 0x133e <__ultoa_invert+0x48> 133c: 68 94 set 133e: 3f 91 pop r19 1340: 2a e0 ldi r18, 0x0A ; 10 1342: 26 9f mul r18, r22 1344: 11 24 eor r1, r1 1346: 30 19 sub r19, r0 1348: 30 5d subi r19, 0xD0 ; 208 134a: 31 93 st Z+, r19 134c: de f6 brtc .-74 ; 0x1304 <__ultoa_invert+0xe> 134e: cf 01 movw r24, r30 1350: 08 95 ret 1352: 46 2f mov r20, r22 1354: 47 70 andi r20, 0x07 ; 7 1356: 40 5d subi r20, 0xD0 ; 208 1358: 41 93 st Z+, r20 135a: b3 e0 ldi r27, 0x03 ; 3 135c: 0f d0 rcall .+30 ; 0x137c <__ultoa_invert+0x86> 135e: c9 f7 brne .-14 ; 0x1352 <__ultoa_invert+0x5c> 1360: f6 cf rjmp .-20 ; 0x134e <__ultoa_invert+0x58> 1362: 46 2f mov r20, r22 1364: 4f 70 andi r20, 0x0F ; 15 1366: 40 5d subi r20, 0xD0 ; 208 1368: 4a 33 cpi r20, 0x3A ; 58 136a: 18 f0 brcs .+6 ; 0x1372 <__ultoa_invert+0x7c> 136c: 49 5d subi r20, 0xD9 ; 217 136e: 31 fd sbrc r19, 1 1370: 40 52 subi r20, 0x20 ; 32 1372: 41 93 st Z+, r20 1374: 02 d0 rcall .+4 ; 0x137a <__ultoa_invert+0x84> 1376: a9 f7 brne .-22 ; 0x1362 <__ultoa_invert+0x6c> 1378: ea cf rjmp .-44 ; 0x134e <__ultoa_invert+0x58> 137a: b4 e0 ldi r27, 0x04 ; 4 137c: a6 95 lsr r26 137e: 97 95 ror r25 1380: 87 95 ror r24 1382: 77 95 ror r23 1384: 67 95 ror r22 1386: ba 95 dec r27 1388: c9 f7 brne .-14 ; 0x137c <__ultoa_invert+0x86> 138a: 00 97 sbiw r24, 0x00 ; 0 138c: 61 05 cpc r22, r1 138e: 71 05 cpc r23, r1 1390: 08 95 ret 1392: 9b 01 movw r18, r22 1394: ac 01 movw r20, r24 1396: 0a 2e mov r0, r26 1398: 06 94 lsr r0 139a: 57 95 ror r21 139c: 47 95 ror r20 139e: 37 95 ror r19 13a0: 27 95 ror r18 13a2: ba 95 dec r27 13a4: c9 f7 brne .-14 ; 0x1398 <__ultoa_invert+0xa2> 13a6: 62 0f add r22, r18 13a8: 73 1f adc r23, r19 13aa: 84 1f adc r24, r20 13ac: 95 1f adc r25, r21 13ae: a0 1d adc r26, r0 13b0: 08 95 ret 000013b2 <_exit>: 13b2: f8 94 cli 000013b4 <__stop_program>: 13b4: ff cf rjmp .-2 ; 0x13b4 <__stop_program>