Files
SyncHome/trunk/AVRProjects/ATTiny88/main.lss
2023-03-13 09:01:12 +00:00

113 lines
4.3 KiB
Plaintext

main.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .data 00000000 00800100 0000005e 000000d2 2**0
CONTENTS, ALLOC, LOAD, DATA
1 .text 0000005e 00000000 00000000 00000074 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .comment 00000011 00000000 00000000 000000d2 2**0
CONTENTS, READONLY
3 .debug_aranges 00000020 00000000 00000000 000000e3 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_info 00000119 00000000 00000000 00000103 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_abbrev 000000d1 00000000 00000000 0000021c 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_line 000000d7 00000000 00000000 000002ed 2**0
CONTENTS, READONLY, DEBUGGING
7 .debug_frame 00000024 00000000 00000000 000003c4 2**2
CONTENTS, READONLY, DEBUGGING
8 .debug_str 00000132 00000000 00000000 000003e8 2**0
CONTENTS, READONLY, DEBUGGING
9 .debug_loc 0000001f 00000000 00000000 0000051a 2**0
CONTENTS, READONLY, DEBUGGING
10 .debug_ranges 00000010 00000000 00000000 00000539 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 13 c0 rjmp .+38 ; 0x28 <__ctors_end>
2: 1a c0 rjmp .+52 ; 0x38 <__bad_interrupt>
4: 19 c0 rjmp .+50 ; 0x38 <__bad_interrupt>
6: 18 c0 rjmp .+48 ; 0x38 <__bad_interrupt>
8: 17 c0 rjmp .+46 ; 0x38 <__bad_interrupt>
a: 16 c0 rjmp .+44 ; 0x38 <__bad_interrupt>
c: 15 c0 rjmp .+42 ; 0x38 <__bad_interrupt>
e: 14 c0 rjmp .+40 ; 0x38 <__bad_interrupt>
10: 13 c0 rjmp .+38 ; 0x38 <__bad_interrupt>
12: 12 c0 rjmp .+36 ; 0x38 <__bad_interrupt>
14: 11 c0 rjmp .+34 ; 0x38 <__bad_interrupt>
16: 10 c0 rjmp .+32 ; 0x38 <__bad_interrupt>
18: 0f c0 rjmp .+30 ; 0x38 <__bad_interrupt>
1a: 0e c0 rjmp .+28 ; 0x38 <__bad_interrupt>
1c: 0d c0 rjmp .+26 ; 0x38 <__bad_interrupt>
1e: 0c c0 rjmp .+24 ; 0x38 <__bad_interrupt>
20: 0b c0 rjmp .+22 ; 0x38 <__bad_interrupt>
22: 0a c0 rjmp .+20 ; 0x38 <__bad_interrupt>
24: 09 c0 rjmp .+18 ; 0x38 <__bad_interrupt>
26: 08 c0 rjmp .+16 ; 0x38 <__bad_interrupt>
00000028 <__ctors_end>:
28: 11 24 eor r1, r1
2a: 1f be out 0x3f, r1 ; 63
2c: cf ef ldi r28, 0xFF ; 255
2e: d2 e0 ldi r29, 0x02 ; 2
30: de bf out 0x3e, r29 ; 62
32: cd bf out 0x3d, r28 ; 61
34: 02 d0 rcall .+4 ; 0x3a <main>
36: 11 c0 rjmp .+34 ; 0x5a <_exit>
00000038 <__bad_interrupt>:
38: e3 cf rjmp .-58 ; 0x0 <__vectors>
0000003a <main>:
#include <util/delay.h>
int main (void)
{
unsigned char zwischenspeicher;
DDRB = 0b00000100;
3a: 84 e0 ldi r24, 0x04 ; 4
3c: 84 b9 out 0x04, r24 ; 4
while(1)
{
zwischenspeicher = PORTB;
zwischenspeicher = zwischenspeicher ^ 0b00000100;
3e: 94 e0 ldi r25, 0x04 ; 4
{
unsigned char zwischenspeicher;
DDRB = 0b00000100;
while(1)
{
zwischenspeicher = PORTB;
40: 85 b1 in r24, 0x05 ; 5
zwischenspeicher = zwischenspeicher ^ 0b00000100;
42: 89 27 eor r24, r25
PORTB = zwischenspeicher;
44: 85 b9 out 0x05, r24 ; 5
#else
//round up by default
__ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
#endif
__builtin_avr_delay_cycles(__ticks_dc);
46: 2f e9 ldi r18, 0x9F ; 159
48: 36 e8 ldi r19, 0x86 ; 134
4a: 81 e0 ldi r24, 0x01 ; 1
4c: 21 50 subi r18, 0x01 ; 1
4e: 30 40 sbci r19, 0x00 ; 0
50: 80 40 sbci r24, 0x00 ; 0
52: e1 f7 brne .-8 ; 0x4c <__SREG__+0xd>
54: 00 c0 rjmp .+0 ; 0x56 <__SREG__+0x17>
56: 00 00 nop
58: f3 cf rjmp .-26 ; 0x40 <__SREG__+0x1>
0000005a <_exit>:
5a: f8 94 cli
0000005c <__stop_program>:
5c: ff cf rjmp .-2 ; 0x5c <__stop_program>