summaryrefslogtreecommitdiff
path: root/ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss
diff options
context:
space:
mode:
authorTim Redfern <tim@eclectronics.org>2011-12-19 18:20:33 +0000
committerTim Redfern <tim@eclectronics.org>2011-12-19 18:20:33 +0000
commite9a73bbb3c14af340999f70146747787785f4fee (patch)
treea125452f7d641673286542497da051b810427880 /ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss
initial commit
Diffstat (limited to 'ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss')
-rw-r--r--ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss672
1 files changed, 672 insertions, 0 deletions
diff --git a/ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss b/ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss
new file mode 100644
index 0000000..b9c4942
--- /dev/null
+++ b/ESS1995test_328p/bin/Debug/ESS1995test_328p.elf.lss
@@ -0,0 +1,672 @@
+
+bin/Debug/ESS1995test_328p.elf: file format elf32-avr
+
+Sections:
+Idx Name Size VMA LMA File off Algn
+ 0 .text 00000534 00000000 00000000 00000074 2**1
+ CONTENTS, ALLOC, LOAD, READONLY, CODE
+ 1 .bss 00000008 00800100 00800100 000005a8 2**0
+ ALLOC
+ 2 .stab 00000c9c 00000000 00000000 000005a8 2**2
+ CONTENTS, READONLY, DEBUGGING
+ 3 .stabstr 000018d2 00000000 00000000 00001244 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 4 .debug_aranges 00000040 00000000 00000000 00002b16 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 5 .debug_pubnames 0000016c 00000000 00000000 00002b56 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 6 .debug_info 000006f2 00000000 00000000 00002cc2 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 7 .debug_abbrev 000002e1 00000000 00000000 000033b4 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 8 .debug_line 00000551 00000000 00000000 00003695 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 9 .debug_frame 000000a0 00000000 00000000 00003be8 2**2
+ CONTENTS, READONLY, DEBUGGING
+ 10 .debug_str 00000227 00000000 00000000 00003c88 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 11 .debug_loc 000001fa 00000000 00000000 00003eaf 2**0
+ CONTENTS, READONLY, DEBUGGING
+
+Disassembly of section .text:
+
+00000000 <__vectors>:
+ 0: 0c 94 5a 00 jmp 0xb4 ; 0xb4 <__ctors_end>
+ 4: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 8: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 10: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 14: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 18: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 1c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 20: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 24: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 28: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 2c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 30: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 34: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 38: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 3c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 40: 0c 94 06 01 jmp 0x20c ; 0x20c <__vector_16>
+ 44: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 48: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 4c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 50: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 54: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 58: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 5c: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 60: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+ 64: 0c 94 77 00 jmp 0xee ; 0xee <__bad_interrupt>
+
+00000068 <port_to_mode_PGM>:
+ 68: 00 00 24 27 2a ..$'*
+
+0000006d <port_to_output_PGM>:
+ 6d: 00 00 25 28 2b ..%(+
+
+00000072 <port_to_input_PGM>:
+ 72: 00 00 23 26 29 ..#&)
+
+00000077 <digital_pin_to_port_PGM>:
+ 77: 04 04 04 04 04 04 04 04 02 02 02 02 02 02 03 03 ................
+ 87: 03 03 03 03 ....
+
+0000008b <digital_pin_to_bit_mask_PGM>:
+ 8b: 01 02 04 08 10 20 40 80 01 02 04 08 10 20 01 02 ..... @...... ..
+ 9b: 04 08 10 20 ...
+
+0000009f <digital_pin_to_timer_PGM>:
+ 9f: 00 00 00 07 00 02 01 00 00 03 04 06 00 00 00 00 ................
+ af: 00 00 00 00 00 .....
+
+000000b4 <__ctors_end>:
+ b4: 11 24 eor r1, r1
+ b6: 1f be out 0x3f, r1 ; 63
+ b8: cf ef ldi r28, 0xFF ; 255
+ ba: d8 e0 ldi r29, 0x08 ; 8
+ bc: de bf out 0x3e, r29 ; 62
+ be: cd bf out 0x3d, r28 ; 61
+
+000000c0 <__do_copy_data>:
+ c0: 11 e0 ldi r17, 0x01 ; 1
+ c2: a0 e0 ldi r26, 0x00 ; 0
+ c4: b1 e0 ldi r27, 0x01 ; 1
+ c6: e4 e3 ldi r30, 0x34 ; 52
+ c8: f5 e0 ldi r31, 0x05 ; 5
+ ca: 02 c0 rjmp .+4 ; 0xd0 <.do_copy_data_start>
+
+000000cc <.do_copy_data_loop>:
+ cc: 05 90 lpm r0, Z+
+ ce: 0d 92 st X+, r0
+
+000000d0 <.do_copy_data_start>:
+ d0: a0 30 cpi r26, 0x00 ; 0
+ d2: b1 07 cpc r27, r17
+ d4: d9 f7 brne .-10 ; 0xcc <.do_copy_data_loop>
+
+000000d6 <__do_clear_bss>:
+ d6: 11 e0 ldi r17, 0x01 ; 1
+ d8: a0 e0 ldi r26, 0x00 ; 0
+ da: b1 e0 ldi r27, 0x01 ; 1
+ dc: 01 c0 rjmp .+2 ; 0xe0 <.do_clear_bss_start>
+
+000000de <.do_clear_bss_loop>:
+ de: 1d 92 st X+, r1
+
+000000e0 <.do_clear_bss_start>:
+ e0: a8 30 cpi r26, 0x08 ; 8
+ e2: b1 07 cpc r27, r17
+ e4: e1 f7 brne .-8 ; 0xde <.do_clear_bss_loop>
+ e6: 0e 94 a3 00 call 0x146 ; 0x146 <main>
+ ea: 0c 94 98 02 jmp 0x530 ; 0x530 <_exit>
+
+000000ee <__bad_interrupt>:
+ ee: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
+
+000000f2 <_Z9writeByteh>:
+ digitalWrite(SCLK, HIGH);
+ delay(10);
+ digitalWrite(SCLK, LOW);
+ delay(10);
+}
+void writeByte(uint8_t data){
+ f2: df 93 push r29
+ f4: cf 93 push r28
+ f6: 00 d0 rcall .+0 ; 0xf8 <_Z9writeByteh+0x6>
+ f8: cd b7 in r28, 0x3d ; 61
+ fa: de b7 in r29, 0x3e ; 62
+ fc: 8a 83 std Y+2, r24 ; 0x02
+ pinMode(SDATA,OUTPUT);
+ fe: 84 e0 ldi r24, 0x04 ; 4
+ 100: 61 e0 ldi r22, 0x01 ; 1
+ 102: 0e 94 e3 01 call 0x3c6 ; 0x3c6 <pinMode>
+ for (uint8_t bit=0;bit<8;bit++) {
+ 106: 19 82 std Y+1, r1 ; 0x01
+ 108: 16 c0 rjmp .+44 ; 0x136 <_Z9writeByteh+0x44>
+ digitalWrite(SDATA,(data>>bit)&0b01);
+ 10a: 8a 81 ldd r24, Y+2 ; 0x02
+ 10c: 28 2f mov r18, r24
+ 10e: 30 e0 ldi r19, 0x00 ; 0
+ 110: 89 81 ldd r24, Y+1 ; 0x01
+ 112: 88 2f mov r24, r24
+ 114: 90 e0 ldi r25, 0x00 ; 0
+ 116: a9 01 movw r20, r18
+ 118: 02 c0 rjmp .+4 ; 0x11e <_Z9writeByteh+0x2c>
+ 11a: 55 95 asr r21
+ 11c: 47 95 ror r20
+ 11e: 8a 95 dec r24
+ 120: e2 f7 brpl .-8 ; 0x11a <_Z9writeByteh+0x28>
+ 122: ca 01 movw r24, r20
+ 124: 98 2f mov r25, r24
+ 126: 91 70 andi r25, 0x01 ; 1
+ 128: 84 e0 ldi r24, 0x04 ; 4
+ 12a: 69 2f mov r22, r25
+ 12c: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ digitalWrite(SCLK, LOW);
+ delay(10);
+}
+void writeByte(uint8_t data){
+ pinMode(SDATA,OUTPUT);
+ for (uint8_t bit=0;bit<8;bit++) {
+ 130: 89 81 ldd r24, Y+1 ; 0x01
+ 132: 8f 5f subi r24, 0xFF ; 255
+ 134: 89 83 std Y+1, r24 ; 0x01
+ 136: 89 81 ldd r24, Y+1 ; 0x01
+ 138: 88 30 cpi r24, 0x08 ; 8
+ 13a: 38 f3 brcs .-50 ; 0x10a <_Z9writeByteh+0x18>
+ digitalWrite(SDATA,(data>>bit)&0b01);
+ }
+}
+ 13c: 0f 90 pop r0
+ 13e: 0f 90 pop r0
+ 140: cf 91 pop r28
+ 142: df 91 pop r29
+ 144: 08 95 ret
+
+00000146 <main>:
+int main(){
+ 146: df 93 push r29
+ 148: cf 93 push r28
+ 14a: 00 d0 rcall .+0 ; 0x14c <main+0x6>
+ 14c: cd b7 in r28, 0x3d ; 61
+ 14e: de b7 in r29, 0x3e ; 62
+ pinMode(DATA_NEW,INPUT);
+ 150: 82 e0 ldi r24, 0x02 ; 2
+ 152: 60 e0 ldi r22, 0x00 ; 0
+ 154: 0e 94 e3 01 call 0x3c6 ; 0x3c6 <pinMode>
+ pinMode(SCLK,OUTPUT);
+ 158: 83 e0 ldi r24, 0x03 ; 3
+ 15a: 61 e0 ldi r22, 0x01 ; 1
+ 15c: 0e 94 e3 01 call 0x3c6 ; 0x3c6 <pinMode>
+
+ pinMode(OUTPUT1, OUTPUT);
+ 160: 8c e0 ldi r24, 0x0C ; 12
+ 162: 61 e0 ldi r22, 0x01 ; 1
+ 164: 0e 94 e3 01 call 0x3c6 ; 0x3c6 <pinMode>
+ pinMode(OUTPUT2, OUTPUT);
+ 168: 8d e0 ldi r24, 0x0D ; 13
+ 16a: 61 e0 ldi r22, 0x01 ; 1
+ 16c: 0e 94 e3 01 call 0x3c6 ; 0x3c6 <pinMode>
+
+ init(); //-- init Arduino library - delay, PWM setup messes with timers, millis(), micros() etc don't work without it
+ 170: 0e 94 a9 01 call 0x352 ; 0x352 <init>
+
+ while(1) {
+ if (digitalRead(DATA_NEW)==HIGH){ //DMM is ready to receive data
+ 174: 82 e0 ldi r24, 0x02 ; 2
+ 176: 0e 94 4c 02 call 0x498 ; 0x498 <digitalRead>
+ 17a: 1a 82 std Y+2, r1 ; 0x02
+ 17c: 81 30 cpi r24, 0x01 ; 1
+ 17e: 91 05 cpc r25, r1
+ 180: 11 f4 brne .+4 ; 0x186 <main+0x40>
+ 182: 81 e0 ldi r24, 0x01 ; 1
+ 184: 8a 83 std Y+2, r24 ; 0x02
+ 186: 8a 81 ldd r24, Y+2 ; 0x02
+ 188: 88 23 and r24, r24
+ 18a: b1 f0 breq .+44 ; 0x1b8 <main+0x72>
+ digitalWrite(OUTPUT1,HIGH);
+ 18c: 8c e0 ldi r24, 0x0C ; 12
+ 18e: 61 e0 ldi r22, 0x01 ; 1
+ 190: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ writeByte(WRITE_ID);
+ 194: 88 ec ldi r24, 0xC8 ; 200
+ 196: 0e 94 79 00 call 0xf2 ; 0xf2 <_Z9writeByteh>
+ if (digitalRead(DATA_NEW)==LOW){ //ACK
+ 19a: 82 e0 ldi r24, 0x02 ; 2
+ 19c: 0e 94 4c 02 call 0x498 ; 0x498 <digitalRead>
+ 1a0: 19 82 std Y+1, r1 ; 0x01
+ 1a2: 00 97 sbiw r24, 0x00 ; 0
+ 1a4: 11 f4 brne .+4 ; 0x1aa <main+0x64>
+ 1a6: 81 e0 ldi r24, 0x01 ; 1
+ 1a8: 89 83 std Y+1, r24 ; 0x01
+ 1aa: 89 81 ldd r24, Y+1 ; 0x01
+ 1ac: 88 23 and r24, r24
+ 1ae: 21 f0 breq .+8 ; 0x1b8 <main+0x72>
+ digitalWrite(OUTPUT2,HIGH);
+ 1b0: 8d e0 ldi r24, 0x0D ; 13
+ 1b2: 61 e0 ldi r22, 0x01 ; 1
+ 1b4: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ }
+ }
+ delay(500);
+ 1b8: 64 ef ldi r22, 0xF4 ; 244
+ 1ba: 71 e0 ldi r23, 0x01 ; 1
+ 1bc: 80 e0 ldi r24, 0x00 ; 0
+ 1be: 90 e0 ldi r25, 0x00 ; 0
+ 1c0: 0e 94 71 01 call 0x2e2 ; 0x2e2 <delay>
+ digitalWrite(OUTPUT1,LOW);
+ 1c4: 8c e0 ldi r24, 0x0C ; 12
+ 1c6: 60 e0 ldi r22, 0x00 ; 0
+ 1c8: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ digitalWrite(OUTPUT1,LOW);
+ 1cc: 8c e0 ldi r24, 0x0C ; 12
+ 1ce: 60 e0 ldi r22, 0x00 ; 0
+ 1d0: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ 1d4: cf cf rjmp .-98 ; 0x174 <main+0x2e>
+
+000001d6 <_Z9SCLKcyclev>:
+#define OUTPUT2 13
+
+#define WRITE_ID 0b11001000
+#define READ_ID 0b11001001
+
+void SCLKcycle() {
+ 1d6: df 93 push r29
+ 1d8: cf 93 push r28
+ 1da: cd b7 in r28, 0x3d ; 61
+ 1dc: de b7 in r29, 0x3e ; 62
+ digitalWrite(SCLK, HIGH);
+ 1de: 83 e0 ldi r24, 0x03 ; 3
+ 1e0: 61 e0 ldi r22, 0x01 ; 1
+ 1e2: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ delay(10);
+ 1e6: 6a e0 ldi r22, 0x0A ; 10
+ 1e8: 70 e0 ldi r23, 0x00 ; 0
+ 1ea: 80 e0 ldi r24, 0x00 ; 0
+ 1ec: 90 e0 ldi r25, 0x00 ; 0
+ 1ee: 0e 94 71 01 call 0x2e2 ; 0x2e2 <delay>
+ digitalWrite(SCLK, LOW);
+ 1f2: 83 e0 ldi r24, 0x03 ; 3
+ 1f4: 60 e0 ldi r22, 0x00 ; 0
+ 1f6: 0e 94 01 02 call 0x402 ; 0x402 <digitalWrite>
+ delay(10);
+ 1fa: 6a e0 ldi r22, 0x0A ; 10
+ 1fc: 70 e0 ldi r23, 0x00 ; 0
+ 1fe: 80 e0 ldi r24, 0x00 ; 0
+ 200: 90 e0 ldi r25, 0x00 ; 0
+ 202: 0e 94 71 01 call 0x2e2 ; 0x2e2 <delay>
+}
+ 206: cf 91 pop r28
+ 208: df 91 pop r29
+ 20a: 08 95 ret
+
+0000020c <__vector_16>:
+ 20c: 1f 92 push r1
+ 20e: 0f 92 push r0
+ 210: 0f b6 in r0, 0x3f ; 63
+ 212: 0f 92 push r0
+ 214: 11 24 eor r1, r1
+ 216: 2f 93 push r18
+ 218: 8f 93 push r24
+ 21a: 9f 93 push r25
+ 21c: af 93 push r26
+ 21e: bf 93 push r27
+ 220: 80 91 00 01 lds r24, 0x0100
+ 224: 90 91 01 01 lds r25, 0x0101
+ 228: a0 91 02 01 lds r26, 0x0102
+ 22c: b0 91 03 01 lds r27, 0x0103
+ 230: 80 50 subi r24, 0x00 ; 0
+ 232: 90 4c sbci r25, 0xC0 ; 192
+ 234: af 4f sbci r26, 0xFF ; 255
+ 236: bf 4f sbci r27, 0xFF ; 255
+ 238: 80 93 00 01 sts 0x0100, r24
+ 23c: 90 93 01 01 sts 0x0101, r25
+ 240: a0 93 02 01 sts 0x0102, r26
+ 244: b0 93 03 01 sts 0x0103, r27
+ 248: 27 c0 rjmp .+78 ; 0x298 <__vector_16+0x8c>
+ 24a: 80 91 00 01 lds r24, 0x0100
+ 24e: 90 91 01 01 lds r25, 0x0101
+ 252: a0 91 02 01 lds r26, 0x0102
+ 256: b0 91 03 01 lds r27, 0x0103
+ 25a: 80 58 subi r24, 0x80 ; 128
+ 25c: 9e 43 sbci r25, 0x3E ; 62
+ 25e: a0 40 sbci r26, 0x00 ; 0
+ 260: b0 40 sbci r27, 0x00 ; 0
+ 262: 80 93 00 01 sts 0x0100, r24
+ 266: 90 93 01 01 sts 0x0101, r25
+ 26a: a0 93 02 01 sts 0x0102, r26
+ 26e: b0 93 03 01 sts 0x0103, r27
+ 272: 80 91 04 01 lds r24, 0x0104
+ 276: 90 91 05 01 lds r25, 0x0105
+ 27a: a0 91 06 01 lds r26, 0x0106
+ 27e: b0 91 07 01 lds r27, 0x0107
+ 282: 01 96 adiw r24, 0x01 ; 1
+ 284: a1 1d adc r26, r1
+ 286: b1 1d adc r27, r1
+ 288: 80 93 04 01 sts 0x0104, r24
+ 28c: 90 93 05 01 sts 0x0105, r25
+ 290: a0 93 06 01 sts 0x0106, r26
+ 294: b0 93 07 01 sts 0x0107, r27
+ 298: 80 91 00 01 lds r24, 0x0100
+ 29c: 90 91 01 01 lds r25, 0x0101
+ 2a0: a0 91 02 01 lds r26, 0x0102
+ 2a4: b0 91 03 01 lds r27, 0x0103
+ 2a8: 81 58 subi r24, 0x81 ; 129
+ 2aa: 9e 43 sbci r25, 0x3E ; 62
+ 2ac: a0 40 sbci r26, 0x00 ; 0
+ 2ae: b0 40 sbci r27, 0x00 ; 0
+ 2b0: 60 f6 brcc .-104 ; 0x24a <__vector_16+0x3e>
+ 2b2: bf 91 pop r27
+ 2b4: af 91 pop r26
+ 2b6: 9f 91 pop r25
+ 2b8: 8f 91 pop r24
+ 2ba: 2f 91 pop r18
+ 2bc: 0f 90 pop r0
+ 2be: 0f be out 0x3f, r0 ; 63
+ 2c0: 0f 90 pop r0
+ 2c2: 1f 90 pop r1
+ 2c4: 18 95 reti
+
+000002c6 <millis>:
+ 2c6: 8f b7 in r24, 0x3f ; 63
+ 2c8: f8 94 cli
+ 2ca: 20 91 04 01 lds r18, 0x0104
+ 2ce: 30 91 05 01 lds r19, 0x0105
+ 2d2: 40 91 06 01 lds r20, 0x0106
+ 2d6: 50 91 07 01 lds r21, 0x0107
+ 2da: 8f bf out 0x3f, r24 ; 63
+ 2dc: b9 01 movw r22, r18
+ 2de: ca 01 movw r24, r20
+ 2e0: 08 95 ret
+
+000002e2 <delay>:
+ 2e2: ef 92 push r14
+ 2e4: ff 92 push r15
+ 2e6: 0f 93 push r16
+ 2e8: 1f 93 push r17
+ 2ea: 7b 01 movw r14, r22
+ 2ec: 8c 01 movw r16, r24
+ 2ee: 8f b7 in r24, 0x3f ; 63
+ 2f0: f8 94 cli
+ 2f2: 40 91 04 01 lds r20, 0x0104
+ 2f6: 50 91 05 01 lds r21, 0x0105
+ 2fa: 60 91 06 01 lds r22, 0x0106
+ 2fe: 70 91 07 01 lds r23, 0x0107
+ 302: 8f bf out 0x3f, r24 ; 63
+ 304: 2f b7 in r18, 0x3f ; 63
+ 306: f8 94 cli
+ 308: 80 91 04 01 lds r24, 0x0104
+ 30c: 90 91 05 01 lds r25, 0x0105
+ 310: a0 91 06 01 lds r26, 0x0106
+ 314: b0 91 07 01 lds r27, 0x0107
+ 318: 2f bf out 0x3f, r18 ; 63
+ 31a: 84 1b sub r24, r20
+ 31c: 95 0b sbc r25, r21
+ 31e: a6 0b sbc r26, r22
+ 320: b7 0b sbc r27, r23
+ 322: 8e 15 cp r24, r14
+ 324: 9f 05 cpc r25, r15
+ 326: a0 07 cpc r26, r16
+ 328: b1 07 cpc r27, r17
+ 32a: 60 f3 brcs .-40 ; 0x304 <delay+0x22>
+ 32c: 1f 91 pop r17
+ 32e: 0f 91 pop r16
+ 330: ff 90 pop r15
+ 332: ef 90 pop r14
+ 334: 08 95 ret
+
+00000336 <delayMicroseconds>:
+ 336: 01 97 sbiw r24, 0x01 ; 1
+ 338: 59 f0 breq .+22 ; 0x350 <delayMicroseconds+0x1a>
+ 33a: fc 01 movw r30, r24
+ 33c: ee 0f add r30, r30
+ 33e: ff 1f adc r31, r31
+ 340: ee 0f add r30, r30
+ 342: ff 1f adc r31, r31
+ 344: 32 97 sbiw r30, 0x02 ; 2
+ 346: 8f b7 in r24, 0x3f ; 63
+ 348: f8 94 cli
+ 34a: 31 97 sbiw r30, 0x01 ; 1
+ 34c: f1 f7 brne .-4 ; 0x34a <delayMicroseconds+0x14>
+ 34e: 8f bf out 0x3f, r24 ; 63
+ 350: 08 95 ret
+
+00000352 <init>:
+ 352: 78 94 sei
+ 354: 84 b5 in r24, 0x24 ; 36
+ 356: 82 60 ori r24, 0x02 ; 2
+ 358: 84 bd out 0x24, r24 ; 36
+ 35a: 84 b5 in r24, 0x24 ; 36
+ 35c: 81 60 ori r24, 0x01 ; 1
+ 35e: 84 bd out 0x24, r24 ; 36
+ 360: 85 b5 in r24, 0x25 ; 37
+ 362: 82 60 ori r24, 0x02 ; 2
+ 364: 85 bd out 0x25, r24 ; 37
+ 366: 85 b5 in r24, 0x25 ; 37
+ 368: 81 60 ori r24, 0x01 ; 1
+ 36a: 85 bd out 0x25, r24 ; 37
+ 36c: ee e6 ldi r30, 0x6E ; 110
+ 36e: f0 e0 ldi r31, 0x00 ; 0
+ 370: 80 81 ld r24, Z
+ 372: 81 60 ori r24, 0x01 ; 1
+ 374: 80 83 st Z, r24
+ 376: e1 e8 ldi r30, 0x81 ; 129
+ 378: f0 e0 ldi r31, 0x00 ; 0
+ 37a: 80 81 ld r24, Z
+ 37c: 82 60 ori r24, 0x02 ; 2
+ 37e: 80 83 st Z, r24
+ 380: 80 81 ld r24, Z
+ 382: 81 60 ori r24, 0x01 ; 1
+ 384: 80 83 st Z, r24
+ 386: e0 e8 ldi r30, 0x80 ; 128
+ 388: f0 e0 ldi r31, 0x00 ; 0
+ 38a: 80 81 ld r24, Z
+ 38c: 81 60 ori r24, 0x01 ; 1
+ 38e: 80 83 st Z, r24
+ 390: e1 eb ldi r30, 0xB1 ; 177
+ 392: f0 e0 ldi r31, 0x00 ; 0
+ 394: 80 81 ld r24, Z
+ 396: 84 60 ori r24, 0x04 ; 4
+ 398: 80 83 st Z, r24
+ 39a: e0 eb ldi r30, 0xB0 ; 176
+ 39c: f0 e0 ldi r31, 0x00 ; 0
+ 39e: 80 81 ld r24, Z
+ 3a0: 81 60 ori r24, 0x01 ; 1
+ 3a2: 80 83 st Z, r24
+ 3a4: ea e7 ldi r30, 0x7A ; 122
+ 3a6: f0 e0 ldi r31, 0x00 ; 0
+ 3a8: 80 81 ld r24, Z
+ 3aa: 84 60 ori r24, 0x04 ; 4
+ 3ac: 80 83 st Z, r24
+ 3ae: 80 81 ld r24, Z
+ 3b0: 82 60 ori r24, 0x02 ; 2
+ 3b2: 80 83 st Z, r24
+ 3b4: 80 81 ld r24, Z
+ 3b6: 81 60 ori r24, 0x01 ; 1
+ 3b8: 80 83 st Z, r24
+ 3ba: 80 81 ld r24, Z
+ 3bc: 80 68 ori r24, 0x80 ; 128
+ 3be: 80 83 st Z, r24
+ 3c0: 10 92 c1 00 sts 0x00C1, r1
+ 3c4: 08 95 ret
+
+000003c6 <pinMode>:
+ 3c6: 28 2f mov r18, r24
+ 3c8: 30 e0 ldi r19, 0x00 ; 0
+ 3ca: c9 01 movw r24, r18
+ 3cc: 85 57 subi r24, 0x75 ; 117
+ 3ce: 9f 4f sbci r25, 0xFF ; 255
+ 3d0: fc 01 movw r30, r24
+ 3d2: 94 91 lpm r25, Z+
+ 3d4: 29 58 subi r18, 0x89 ; 137
+ 3d6: 3f 4f sbci r19, 0xFF ; 255
+ 3d8: f9 01 movw r30, r18
+ 3da: 84 91 lpm r24, Z+
+ 3dc: 88 23 and r24, r24
+ 3de: 81 f0 breq .+32 ; 0x400 <pinMode+0x3a>
+ 3e0: e8 2f mov r30, r24
+ 3e2: f0 e0 ldi r31, 0x00 ; 0
+ 3e4: e8 59 subi r30, 0x98 ; 152
+ 3e6: ff 4f sbci r31, 0xFF ; 255
+ 3e8: e4 91 lpm r30, Z+
+ 3ea: f0 e0 ldi r31, 0x00 ; 0
+ 3ec: 66 23 and r22, r22
+ 3ee: 29 f4 brne .+10 ; 0x3fa <pinMode+0x34>
+ 3f0: 80 81 ld r24, Z
+ 3f2: 90 95 com r25
+ 3f4: 89 23 and r24, r25
+ 3f6: 80 83 st Z, r24
+ 3f8: 08 95 ret
+ 3fa: 80 81 ld r24, Z
+ 3fc: 89 2b or r24, r25
+ 3fe: 80 83 st Z, r24
+ 400: 08 95 ret
+
+00000402 <digitalWrite>:
+ 402: 48 2f mov r20, r24
+ 404: 50 e0 ldi r21, 0x00 ; 0
+ 406: ca 01 movw r24, r20
+ 408: 81 56 subi r24, 0x61 ; 97
+ 40a: 9f 4f sbci r25, 0xFF ; 255
+ 40c: fc 01 movw r30, r24
+ 40e: 24 91 lpm r18, Z+
+ 410: ca 01 movw r24, r20
+ 412: 85 57 subi r24, 0x75 ; 117
+ 414: 9f 4f sbci r25, 0xFF ; 255
+ 416: fc 01 movw r30, r24
+ 418: 94 91 lpm r25, Z+
+ 41a: 49 58 subi r20, 0x89 ; 137
+ 41c: 5f 4f sbci r21, 0xFF ; 255
+ 41e: fa 01 movw r30, r20
+ 420: 34 91 lpm r19, Z+
+ 422: 33 23 and r19, r19
+ 424: c1 f1 breq .+112 ; 0x496 <digitalWrite+0x94>
+ 426: 22 23 and r18, r18
+ 428: 31 f1 breq .+76 ; 0x476 <digitalWrite+0x74>
+ 42a: 23 30 cpi r18, 0x03 ; 3
+ 42c: 21 f4 brne .+8 ; 0x436 <digitalWrite+0x34>
+ 42e: 80 91 80 00 lds r24, 0x0080
+ 432: 8f 77 andi r24, 0x7F ; 127
+ 434: 05 c0 rjmp .+10 ; 0x440 <digitalWrite+0x3e>
+ 436: 24 30 cpi r18, 0x04 ; 4
+ 438: 31 f4 brne .+12 ; 0x446 <digitalWrite+0x44>
+ 43a: 80 91 80 00 lds r24, 0x0080
+ 43e: 8f 7d andi r24, 0xDF ; 223
+ 440: 80 93 80 00 sts 0x0080, r24
+ 444: 18 c0 rjmp .+48 ; 0x476 <digitalWrite+0x74>
+ 446: 21 30 cpi r18, 0x01 ; 1
+ 448: 19 f4 brne .+6 ; 0x450 <digitalWrite+0x4e>
+ 44a: 84 b5 in r24, 0x24 ; 36
+ 44c: 8f 77 andi r24, 0x7F ; 127
+ 44e: 04 c0 rjmp .+8 ; 0x458 <digitalWrite+0x56>
+ 450: 22 30 cpi r18, 0x02 ; 2
+ 452: 21 f4 brne .+8 ; 0x45c <digitalWrite+0x5a>
+ 454: 84 b5 in r24, 0x24 ; 36
+ 456: 8f 7d andi r24, 0xDF ; 223
+ 458: 84 bd out 0x24, r24 ; 36
+ 45a: 0d c0 rjmp .+26 ; 0x476 <digitalWrite+0x74>
+ 45c: 26 30 cpi r18, 0x06 ; 6
+ 45e: 21 f4 brne .+8 ; 0x468 <digitalWrite+0x66>
+ 460: 80 91 b0 00 lds r24, 0x00B0
+ 464: 8f 77 andi r24, 0x7F ; 127
+ 466: 05 c0 rjmp .+10 ; 0x472 <digitalWrite+0x70>
+ 468: 27 30 cpi r18, 0x07 ; 7
+ 46a: 29 f4 brne .+10 ; 0x476 <digitalWrite+0x74>
+ 46c: 80 91 b0 00 lds r24, 0x00B0
+ 470: 8f 7d andi r24, 0xDF ; 223
+ 472: 80 93 b0 00 sts 0x00B0, r24
+ 476: e3 2f mov r30, r19
+ 478: f0 e0 ldi r31, 0x00 ; 0
+ 47a: e3 59 subi r30, 0x93 ; 147
+ 47c: ff 4f sbci r31, 0xFF ; 255
+ 47e: e4 91 lpm r30, Z+
+ 480: f0 e0 ldi r31, 0x00 ; 0
+ 482: 66 23 and r22, r22
+ 484: 29 f4 brne .+10 ; 0x490 <digitalWrite+0x8e>
+ 486: 80 81 ld r24, Z
+ 488: 90 95 com r25
+ 48a: 89 23 and r24, r25
+ 48c: 80 83 st Z, r24
+ 48e: 08 95 ret
+ 490: 80 81 ld r24, Z
+ 492: 89 2b or r24, r25
+ 494: 80 83 st Z, r24
+ 496: 08 95 ret
+
+00000498 <digitalRead>:
+ 498: 48 2f mov r20, r24
+ 49a: 50 e0 ldi r21, 0x00 ; 0
+ 49c: ca 01 movw r24, r20
+ 49e: 81 56 subi r24, 0x61 ; 97
+ 4a0: 9f 4f sbci r25, 0xFF ; 255
+ 4a2: fc 01 movw r30, r24
+ 4a4: 24 91 lpm r18, Z+
+ 4a6: ca 01 movw r24, r20
+ 4a8: 85 57 subi r24, 0x75 ; 117
+ 4aa: 9f 4f sbci r25, 0xFF ; 255
+ 4ac: fc 01 movw r30, r24
+ 4ae: 94 91 lpm r25, Z+
+ 4b0: 49 58 subi r20, 0x89 ; 137
+ 4b2: 5f 4f sbci r21, 0xFF ; 255
+ 4b4: fa 01 movw r30, r20
+ 4b6: 34 91 lpm r19, Z+
+ 4b8: 33 23 and r19, r19
+ 4ba: 19 f4 brne .+6 ; 0x4c2 <digitalRead+0x2a>
+ 4bc: 20 e0 ldi r18, 0x00 ; 0
+ 4be: 30 e0 ldi r19, 0x00 ; 0
+ 4c0: 35 c0 rjmp .+106 ; 0x52c <digitalRead+0x94>
+ 4c2: 22 23 and r18, r18
+ 4c4: 31 f1 breq .+76 ; 0x512 <digitalRead+0x7a>
+ 4c6: 23 30 cpi r18, 0x03 ; 3
+ 4c8: 21 f4 brne .+8 ; 0x4d2 <digitalRead+0x3a>
+ 4ca: 80 91 80 00 lds r24, 0x0080
+ 4ce: 8f 77 andi r24, 0x7F ; 127
+ 4d0: 05 c0 rjmp .+10 ; 0x4dc <digitalRead+0x44>
+ 4d2: 24 30 cpi r18, 0x04 ; 4
+ 4d4: 31 f4 brne .+12 ; 0x4e2 <digitalRead+0x4a>
+ 4d6: 80 91 80 00 lds r24, 0x0080
+ 4da: 8f 7d andi r24, 0xDF ; 223
+ 4dc: 80 93 80 00 sts 0x0080, r24
+ 4e0: 18 c0 rjmp .+48 ; 0x512 <digitalRead+0x7a>
+ 4e2: 21 30 cpi r18, 0x01 ; 1
+ 4e4: 19 f4 brne .+6 ; 0x4ec <digitalRead+0x54>
+ 4e6: 84 b5 in r24, 0x24 ; 36
+ 4e8: 8f 77 andi r24, 0x7F ; 127
+ 4ea: 04 c0 rjmp .+8 ; 0x4f4 <digitalRead+0x5c>
+ 4ec: 22 30 cpi r18, 0x02 ; 2
+ 4ee: 21 f4 brne .+8 ; 0x4f8 <digitalRead+0x60>
+ 4f0: 84 b5 in r24, 0x24 ; 36
+ 4f2: 8f 7d andi r24, 0xDF ; 223
+ 4f4: 84 bd out 0x24, r24 ; 36
+ 4f6: 0d c0 rjmp .+26 ; 0x512 <digitalRead+0x7a>
+ 4f8: 26 30 cpi r18, 0x06 ; 6
+ 4fa: 21 f4 brne .+8 ; 0x504 <digitalRead+0x6c>
+ 4fc: 80 91 b0 00 lds r24, 0x00B0
+ 500: 8f 77 andi r24, 0x7F ; 127
+ 502: 05 c0 rjmp .+10 ; 0x50e <digitalRead+0x76>
+ 504: 27 30 cpi r18, 0x07 ; 7
+ 506: 29 f4 brne .+10 ; 0x512 <digitalRead+0x7a>
+ 508: 80 91 b0 00 lds r24, 0x00B0
+ 50c: 8f 7d andi r24, 0xDF ; 223
+ 50e: 80 93 b0 00 sts 0x00B0, r24
+ 512: e3 2f mov r30, r19
+ 514: f0 e0 ldi r31, 0x00 ; 0
+ 516: ee 58 subi r30, 0x8E ; 142
+ 518: ff 4f sbci r31, 0xFF ; 255
+ 51a: e4 91 lpm r30, Z+
+ 51c: f0 e0 ldi r31, 0x00 ; 0
+ 51e: 80 81 ld r24, Z
+ 520: 20 e0 ldi r18, 0x00 ; 0
+ 522: 30 e0 ldi r19, 0x00 ; 0
+ 524: 89 23 and r24, r25
+ 526: 11 f0 breq .+4 ; 0x52c <digitalRead+0x94>
+ 528: 21 e0 ldi r18, 0x01 ; 1
+ 52a: 30 e0 ldi r19, 0x00 ; 0
+ 52c: c9 01 movw r24, r18
+ 52e: 08 95 ret
+
+00000530 <_exit>:
+ 530: f8 94 cli
+
+00000532 <__stop_program>:
+ 532: ff cf rjmp .-2 ; 0x532 <__stop_program>