234 lines
8.7 KiB
Plaintext
234 lines
8.7 KiB
Plaintext
|
|
opdracht 1.6.elf: file format elf32-avr
|
|
|
|
Sections:
|
|
Idx Name Size VMA LMA File off Algn
|
|
0 .data 00000000 00800100 00800100 000001bc 2**0
|
|
ALLOC, LOAD, DATA
|
|
1 .text 000000a4 00000000 00000000 00000054 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
2 .comment 0000002f 00000000 00000000 000001bc 2**0
|
|
CONTENTS, READONLY
|
|
3 .debug_aranges 00000050 00000000 00000000 000001eb 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
4 .debug_info 00000cfe 00000000 00000000 0000023b 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
5 .debug_abbrev 000008c5 00000000 00000000 00000f39 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
6 .debug_line 0000036f 00000000 00000000 000017fe 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
7 .debug_frame 0000008c 00000000 00000000 00001b70 2**2
|
|
CONTENTS, READONLY, DEBUGGING
|
|
8 .debug_str 0000027d 00000000 00000000 00001bfc 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
9 .debug_loc 000001dc 00000000 00000000 00001e79 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
10 .debug_ranges 00000040 00000000 00000000 00002055 2**0
|
|
CONTENTS, READONLY, DEBUGGING
|
|
11 .text 00000004 00000164 00000164 000001b8 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00002098 2**2
|
|
CONTENTS, READONLY, DEBUGGING
|
|
13 .text.wait 0000001e 0000010e 0000010e 00000162 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
14 .text.tbi 00000014 0000014a 0000014a 0000019e 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
15 .text.checkButton 00000006 0000015e 0000015e 000001b2 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
16 .text.checkButtonToggle 0000001e 0000012c 0000012c 00000180 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
17 .text.main 0000006a 000000a4 000000a4 000000f8 2**1
|
|
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
|
|
Disassembly of section .text:
|
|
|
|
00000000 <__vectors>:
|
|
0: 0c 94 46 00 jmp 0x8c ; 0x8c <__ctors_end>
|
|
4: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
8: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
10: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
14: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
18: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
1c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
20: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
24: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
28: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
2c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
30: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
34: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
38: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
3c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
40: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
44: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
48: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
4c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
50: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
54: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
58: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
5c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
60: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
64: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
68: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
6c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
70: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
74: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
78: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
7c: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
80: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
84: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
88: 0c 94 b2 00 jmp 0x164 ; 0x164 <__bad_interrupt>
|
|
|
|
0000008c <__ctors_end>:
|
|
8c: 11 24 eor r1, r1
|
|
8e: 1f be out 0x3f, r1 ; 63
|
|
90: cf ef ldi r28, 0xFF ; 255
|
|
92: d0 e1 ldi r29, 0x10 ; 16
|
|
94: de bf out 0x3e, r29 ; 62
|
|
96: cd bf out 0x3d, r28 ; 61
|
|
98: 0e 94 52 00 call 0xa4 ; 0xa4 <_etext>
|
|
9c: 0c 94 50 00 jmp 0xa0 ; 0xa0 <_exit>
|
|
|
|
000000a0 <_exit>:
|
|
a0: f8 94 cli
|
|
|
|
000000a2 <__stop_program>:
|
|
a2: ff cf rjmp .-2 ; 0xa2 <__stop_program>
|
|
|
|
Disassembly of section .text:
|
|
|
|
00000164 <__bad_interrupt>:
|
|
164: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
|
|
|
|
Disassembly of section .text.wait:
|
|
|
|
0000010e <wait>:
|
|
|
|
void sbi(int REG, int index){
|
|
REG |= (1<<index);
|
|
}
|
|
|
|
void cbi(int REG, int index){
|
|
10e: 20 e0 ldi r18, 0x00 ; 0
|
|
110: 30 e0 ldi r19, 0x00 ; 0
|
|
112: 08 c0 rjmp .+16 ; 0x124 <wait+0x16>
|
|
114: e3 ec ldi r30, 0xC3 ; 195
|
|
116: f9 e0 ldi r31, 0x09 ; 9
|
|
118: 31 97 sbiw r30, 0x01 ; 1
|
|
11a: f1 f7 brne .-4 ; 0x118 <wait+0xa>
|
|
11c: 00 c0 rjmp .+0 ; 0x11e <wait+0x10>
|
|
11e: 00 00 nop
|
|
120: 2f 5f subi r18, 0xFF ; 255
|
|
122: 3f 4f sbci r19, 0xFF ; 255
|
|
124: 28 17 cp r18, r24
|
|
126: 39 07 cpc r19, r25
|
|
128: ac f3 brlt .-22 ; 0x114 <wait+0x6>
|
|
12a: 08 95 ret
|
|
|
|
Disassembly of section .text.tbi:
|
|
|
|
0000014a <tbi>:
|
|
REG &= ~(1<<index);
|
|
}
|
|
|
|
int tbi(int REG, int index){
|
|
REG ^= (1<<index);
|
|
14a: 21 e0 ldi r18, 0x01 ; 1
|
|
14c: 30 e0 ldi r19, 0x00 ; 0
|
|
14e: 02 c0 rjmp .+4 ; 0x154 <tbi+0xa>
|
|
150: 22 0f add r18, r18
|
|
152: 33 1f adc r19, r19
|
|
154: 6a 95 dec r22
|
|
156: e2 f7 brpl .-8 ; 0x150 <tbi+0x6>
|
|
return REG;
|
|
}
|
|
158: 82 27 eor r24, r18
|
|
15a: 93 27 eor r25, r19
|
|
15c: 08 95 ret
|
|
|
|
Disassembly of section .text.checkButton:
|
|
|
|
0000015e <checkButton>:
|
|
|
|
bool checkButton(){
|
|
return (PINC & 1);
|
|
15e: 83 b3 in r24, 0x13 ; 19
|
|
}
|
|
160: 81 70 andi r24, 0x01 ; 1
|
|
162: 08 95 ret
|
|
|
|
Disassembly of section .text.checkButtonToggle:
|
|
|
|
0000012c <checkButtonToggle>:
|
|
|
|
void sbi(int REG, int index){
|
|
REG |= (1<<index);
|
|
}
|
|
|
|
void cbi(int REG, int index){
|
|
12c: cf 93 push r28
|
|
12e: c8 2f mov r28, r24
|
|
130: 0e 94 af 00 call 0x15e ; 0x15e <checkButton>
|
|
134: 81 30 cpi r24, 0x01 ; 1
|
|
136: 21 f4 brne .+8 ; 0x140 <checkButtonToggle+0x14>
|
|
138: cc 23 and r28, r28
|
|
13a: 21 f0 breq .+8 ; 0x144 <checkButtonToggle+0x18>
|
|
13c: 80 e0 ldi r24, 0x00 ; 0
|
|
13e: 03 c0 rjmp .+6 ; 0x146 <checkButtonToggle+0x1a>
|
|
140: 80 e0 ldi r24, 0x00 ; 0
|
|
142: 01 c0 rjmp .+2 ; 0x146 <checkButtonToggle+0x1a>
|
|
144: 81 e0 ldi r24, 0x01 ; 1
|
|
146: cf 91 pop r28
|
|
148: 08 95 ret
|
|
|
|
Disassembly of section .text.main:
|
|
|
|
000000a4 <main>:
|
|
a4: 0e 94 af 00 call 0x15e ; 0x15e <checkButton>
|
|
a8: 18 2f mov r17, r24
|
|
aa: 8f ef ldi r24, 0xFF ; 255
|
|
ac: 81 bb out 0x11, r24 ; 17
|
|
ae: 14 ba out 0x14, r1 ; 20
|
|
b0: c0 e0 ldi r28, 0x00 ; 0
|
|
b2: d0 e0 ldi r29, 0x00 ; 0
|
|
b4: 00 e0 ldi r16, 0x00 ; 0
|
|
b6: 81 2f mov r24, r17
|
|
b8: 0e 94 96 00 call 0x12c ; 0x12c <checkButtonToggle>
|
|
bc: 88 23 and r24, r24
|
|
be: 39 f0 breq .+14 ; 0xce <main+0x2a>
|
|
c0: 0e 94 af 00 call 0x15e ; 0x15e <checkButton>
|
|
c4: 18 2f mov r17, r24
|
|
c6: 81 e0 ldi r24, 0x01 ; 1
|
|
c8: 01 11 cpse r16, r1
|
|
ca: 80 e0 ldi r24, 0x00 ; 0
|
|
cc: 08 2f mov r16, r24
|
|
ce: 11 23 and r17, r17
|
|
d0: 29 f0 breq .+10 ; 0xdc <main+0x38>
|
|
d2: 0e 94 af 00 call 0x15e ; 0x15e <checkButton>
|
|
d6: 81 11 cpse r24, r1
|
|
d8: 01 c0 rjmp .+2 ; 0xdc <main+0x38>
|
|
da: 10 e0 ldi r17, 0x00 ; 0
|
|
dc: 00 23 and r16, r16
|
|
de: 19 f0 breq .+6 ; 0xe6 <main+0x42>
|
|
e0: 8a ef ldi r24, 0xFA ; 250
|
|
e2: 90 e0 ldi r25, 0x00 ; 0
|
|
e4: 02 c0 rjmp .+4 ; 0xea <main+0x46>
|
|
e6: 88 ee ldi r24, 0xE8 ; 232
|
|
e8: 93 e0 ldi r25, 0x03 ; 3
|
|
ea: c8 17 cp r28, r24
|
|
ec: d9 07 cpc r29, r25
|
|
ee: 4c f0 brlt .+18 ; 0x102 <main+0x5e>
|
|
f0: 82 b3 in r24, 0x12 ; 18
|
|
f2: 60 e0 ldi r22, 0x00 ; 0
|
|
f4: 70 e0 ldi r23, 0x00 ; 0
|
|
f6: 90 e0 ldi r25, 0x00 ; 0
|
|
f8: 0e 94 a5 00 call 0x14a ; 0x14a <tbi>
|
|
fc: 82 bb out 0x12, r24 ; 18
|
|
fe: c0 e0 ldi r28, 0x00 ; 0
|
|
100: d0 e0 ldi r29, 0x00 ; 0
|
|
102: 81 e0 ldi r24, 0x01 ; 1
|
|
104: 90 e0 ldi r25, 0x00 ; 0
|
|
106: 0e 94 87 00 call 0x10e ; 0x10e <wait>
|
|
10a: 21 96 adiw r28, 0x01 ; 1
|
|
10c: d4 cf rjmp .-88 ; 0xb6 <main+0x12>
|