diff options
| author | Tim Redfern <tim@eclectronics.org> | 2011-12-19 18:20:33 +0000 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2011-12-19 18:20:33 +0000 |
| commit | e9a73bbb3c14af340999f70146747787785f4fee (patch) | |
| tree | a125452f7d641673286542497da051b810427880 /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.lss | 672 |
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> |
