diff --git a/15cmZahl/15cmZahl.aps b/15cmZahl/15cmZahl.aps
index 046d214..8f27914 100644
--- a/15cmZahl/15cmZahl.aps
+++ b/15cmZahl/15cmZahl.aps
@@ -1 +1 @@
-15cmZahl09-Oct-2012 22:20:3309-Oct-2012 23:22:40241009-Oct-2012 22:20:3344, 19, 0, 730AVR GCCdefault\15cmZahl.elfD:\Doc's\Basteleien\Uhr\15cmZahl\JTAGICE mkIIATtiny2313.xmlfalseR00R01R02R03R04R05R06R07R08R09R10R11R12R13R14R15R16R17R18R19R20R21R22R23R24R25R26R27R28R29R30R31Auto00015cmZahl.cdefault\15cmZahl.lssdefault\15cmZahl.mapdefaultNOattiny231311
15cmZahl.elfdefault\0-Wall -gdwarf-2 -std=gnu99 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enumsdefault1E:\Programme\AVR Toolchain\bin\avr-gcc.exeE:\Programme\AVR Toolchain\bin\make.exe0000015cmZahl.c1
+15cmZahl09-Oct-2012 22:20:3312-Oct-2012 23:37:41241009-Oct-2012 22:20:3344, 19, 0, 730AVR GCCdefault\15cmZahl.elfD:\Doc's\Basteleien\Uhr\15cmZahl\JTAGICE mkIIATtiny2313.xmlfalseR00R01R02R03R04R05R06R07R08R09R10R11R12R13R14R15R16R17R18R19R20R21R22R23R24R25R26R27R28R29R30R31Auto00015cmZahl.cdefault\15cmZahl.lssdefault\15cmZahl.mapdefaultNOattiny231311
15cmZahl.elfdefault\0-Wall -gdwarf-2 -std=gnu99 -DF_CPU=20000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enumsdefault1E:\Programme\AVR Toolchain\bin\avr-gcc.exeE:\Programme\AVR Toolchain\bin\make.exe0000015cmZahl.c1
diff --git a/15cmZahl/15cmZahl.c b/15cmZahl/15cmZahl.c
index 352f323..b682241 100644
--- a/15cmZahl/15cmZahl.c
+++ b/15cmZahl/15cmZahl.c
@@ -11,16 +11,59 @@
#define S7 0b00001011
#define S8 0b01111111
#define S9 0b01011111
-#define SA 0b00111111
-#define SB 0b01110101
-#define SC 0b01111000
+#define Sa 0b00111111
+#define Sb 0b01110101
+#define Sc 0b01111000
+#define Sd 0b01100111
+#define Se 0b01111100
+#define Sf 0b00111100
+
+volatile uint8_t segs[16] = {S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,Sa,Sb,Sc,Sd,Se,Sf};
+volatile uint8_t ind = 0;
+volatile uint8_t dim = 0;
+
+void show() {
+ uint8_t i = ind;
+ uint8_t j = dim;
+ for(uint8_t l=0;l<20;l++) {
+ for(uint8_t k=0;k0;i--) {
+ dim = i;
+ show();
+ }
+}
+
int main(void) {
DDRB = 0b01111111;
+ //dim = 1;
while(1){
- PORTB = SC;
- _delay_ms(500);
- PORTB = 0;
- _delay_ms(500);
+ for(uint8_t i=0;i<16;i++) {
+ ind = i;
+ dimup();
+ dimdown();
+ //show();
+ //_delay_ms(500);
+ }
+
}
}
diff --git a/15cmZahl/15cmzahl.aws b/15cmZahl/15cmzahl.aws
index 8f29bf9..419680f 100644
--- a/15cmZahl/15cmzahl.aws
+++ b/15cmZahl/15cmzahl.aws
@@ -1 +1 @@
-
+
diff --git a/15cmZahl/default/15cmZahl.elf b/15cmZahl/default/15cmZahl.elf
index 8a926d5..1367ba1 100644
Binary files a/15cmZahl/default/15cmZahl.elf and b/15cmZahl/default/15cmZahl.elf differ
diff --git a/15cmZahl/default/15cmZahl.hex b/15cmZahl/default/15cmZahl.hex
index bb813de..9998e90 100644
--- a/15cmZahl/default/15cmZahl.hex
+++ b/15cmZahl/default/15cmZahl.hex
@@ -1,8 +1,17 @@
-:1000000012C017C016C015C014C013C012C011C052
-:1000100010C00FC00EC00DC00CC00BC00AC009C07C
-:1000200008C007C006C011241FBECFEDCDBF02D04F
-:1000300019C0E6CF8FE787BB88E788BB2FEF34E393
-:100040004CE0215030404040E1F700C0000018BAB9
-:100050002FEF34E34CE0215030404040E1F700C046
-:080060000000EBCFF894FFCF84
+:1000000012C02AC029C028C027C026C025C024C0CD
+:1000100023C022C021C020C01FC01EC01DC01CC0E4
+:100020001BC01AC019C011241FBECFEDCDBF10E0F8
+:10003000A0E6B0E0ECEEF0E002C005900D92A03733
+:10004000B107D9F710E0A0E7B0E001C01D92A237D8
+:10005000B107E1F73DD048C0D3CFE0917000609187
+:10006000710044E1F0E0E05AFF4F8FEF90E0861B13
+:10007000910918C0308138BB36E03A95F1F700C0DD
+:100080002F5F2617B8F350E006C018BA26E02A956D
+:10009000F1F700C05F5F252F30E028173907ACF378
+:1000A000415011F020E0EDCF08951F9310E0109320
+:1000B0007100D3DF1F5F1A3FD1F71F9108951F937F
+:1000C0001AEF10937100C9DF1150D9F71F910895ED
+:1000D0001F938FE787BB10E010937000E6DFEFDF20
+:0C00E0001F5F1031C0F7F8CFF894FFCF7D
+:1000EC007B036E4F175D7D0B7F5F3F7578677C3CA4
:00000001FF
diff --git a/15cmZahl/default/15cmZahl.lss b/15cmZahl/default/15cmZahl.lss
index 42685fe..e175ef8 100644
--- a/15cmZahl/default/15cmZahl.lss
+++ b/15cmZahl/default/15cmZahl.lss
@@ -3,107 +3,279 @@
Sections:
Idx Name Size VMA LMA File off Algn
- 0 .text 00000068 00000000 00000000 00000054 2**1
+ 0 .text 000000ec 00000000 00000000 00000094 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 1 .stab 000006b4 00000000 00000000 000000bc 2**2
+ 1 .data 00000010 00800060 000000ec 00000180 2**0
+ CONTENTS, ALLOC, LOAD, DATA
+ 2 .bss 00000002 00800070 00800070 00000190 2**0
+ ALLOC
+ 3 .stab 000006b4 00000000 00000000 00000190 2**2
CONTENTS, READONLY, DEBUGGING
- 2 .stabstr 00000085 00000000 00000000 00000770 2**0
+ 4 .stabstr 00000085 00000000 00000000 00000844 2**0
CONTENTS, READONLY, DEBUGGING
- 3 .debug_aranges 00000020 00000000 00000000 000007f5 2**0
+ 5 .debug_aranges 00000020 00000000 00000000 000008c9 2**0
CONTENTS, READONLY, DEBUGGING
- 4 .debug_pubnames 0000001b 00000000 00000000 00000815 2**0
+ 6 .debug_pubnames 00000053 00000000 00000000 000008e9 2**0
CONTENTS, READONLY, DEBUGGING
- 5 .debug_info 00000196 00000000 00000000 00000830 2**0
+ 7 .debug_info 000002ec 00000000 00000000 0000093c 2**0
CONTENTS, READONLY, DEBUGGING
- 6 .debug_abbrev 00000106 00000000 00000000 000009c6 2**0
+ 8 .debug_abbrev 0000018e 00000000 00000000 00000c28 2**0
CONTENTS, READONLY, DEBUGGING
- 7 .debug_line 00000157 00000000 00000000 00000acc 2**0
+ 9 .debug_line 0000023c 00000000 00000000 00000db6 2**0
CONTENTS, READONLY, DEBUGGING
- 8 .debug_frame 00000020 00000000 00000000 00000c24 2**2
+ 10 .debug_frame 00000050 00000000 00000000 00000ff4 2**2
CONTENTS, READONLY, DEBUGGING
- 9 .debug_str 000000e9 00000000 00000000 00000c44 2**0
+ 11 .debug_str 000000f8 00000000 00000000 00001044 2**0
CONTENTS, READONLY, DEBUGGING
- 10 .debug_pubtypes 00000038 00000000 00000000 00000d2d 2**0
+ 12 .debug_loc 0000015f 00000000 00000000 0000113c 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 13 .debug_pubtypes 0000002b 00000000 00000000 0000129b 2**0
+ CONTENTS, READONLY, DEBUGGING
+ 14 .debug_ranges 00000030 00000000 00000000 000012c6 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 12 c0 rjmp .+36 ; 0x26 <__ctors_end>
- 2: 17 c0 rjmp .+46 ; 0x32 <__bad_interrupt>
- 4: 16 c0 rjmp .+44 ; 0x32 <__bad_interrupt>
- 6: 15 c0 rjmp .+42 ; 0x32 <__bad_interrupt>
- 8: 14 c0 rjmp .+40 ; 0x32 <__bad_interrupt>
- a: 13 c0 rjmp .+38 ; 0x32 <__bad_interrupt>
- c: 12 c0 rjmp .+36 ; 0x32 <__bad_interrupt>
- e: 11 c0 rjmp .+34 ; 0x32 <__bad_interrupt>
- 10: 10 c0 rjmp .+32 ; 0x32 <__bad_interrupt>
- 12: 0f c0 rjmp .+30 ; 0x32 <__bad_interrupt>
- 14: 0e c0 rjmp .+28 ; 0x32 <__bad_interrupt>
- 16: 0d c0 rjmp .+26 ; 0x32 <__bad_interrupt>
- 18: 0c c0 rjmp .+24 ; 0x32 <__bad_interrupt>
- 1a: 0b c0 rjmp .+22 ; 0x32 <__bad_interrupt>
- 1c: 0a c0 rjmp .+20 ; 0x32 <__bad_interrupt>
- 1e: 09 c0 rjmp .+18 ; 0x32 <__bad_interrupt>
- 20: 08 c0 rjmp .+16 ; 0x32 <__bad_interrupt>
- 22: 07 c0 rjmp .+14 ; 0x32 <__bad_interrupt>
- 24: 06 c0 rjmp .+12 ; 0x32 <__bad_interrupt>
+ 2: 2a c0 rjmp .+84 ; 0x58 <__bad_interrupt>
+ 4: 29 c0 rjmp .+82 ; 0x58 <__bad_interrupt>
+ 6: 28 c0 rjmp .+80 ; 0x58 <__bad_interrupt>
+ 8: 27 c0 rjmp .+78 ; 0x58 <__bad_interrupt>
+ a: 26 c0 rjmp .+76 ; 0x58 <__bad_interrupt>
+ c: 25 c0 rjmp .+74 ; 0x58 <__bad_interrupt>
+ e: 24 c0 rjmp .+72 ; 0x58 <__bad_interrupt>
+ 10: 23 c0 rjmp .+70 ; 0x58 <__bad_interrupt>
+ 12: 22 c0 rjmp .+68 ; 0x58 <__bad_interrupt>
+ 14: 21 c0 rjmp .+66 ; 0x58 <__bad_interrupt>
+ 16: 20 c0 rjmp .+64 ; 0x58 <__bad_interrupt>
+ 18: 1f c0 rjmp .+62 ; 0x58 <__bad_interrupt>
+ 1a: 1e c0 rjmp .+60 ; 0x58 <__bad_interrupt>
+ 1c: 1d c0 rjmp .+58 ; 0x58 <__bad_interrupt>
+ 1e: 1c c0 rjmp .+56 ; 0x58 <__bad_interrupt>
+ 20: 1b c0 rjmp .+54 ; 0x58 <__bad_interrupt>
+ 22: 1a c0 rjmp .+52 ; 0x58 <__bad_interrupt>
+ 24: 19 c0 rjmp .+50 ; 0x58 <__bad_interrupt>
00000026 <__ctors_end>:
26: 11 24 eor r1, r1
28: 1f be out 0x3f, r1 ; 63
2a: cf ed ldi r28, 0xDF ; 223
2c: cd bf out 0x3d, r28 ; 61
- 2e: 02 d0 rcall .+4 ; 0x34
- 30: 19 c0 rjmp .+50 ; 0x64 <_exit>
-00000032 <__bad_interrupt>:
- 32: e6 cf rjmp .-52 ; 0x0 <__vectors>
+0000002e <__do_copy_data>:
+ 2e: 10 e0 ldi r17, 0x00 ; 0
+ 30: a0 e6 ldi r26, 0x60 ; 96
+ 32: b0 e0 ldi r27, 0x00 ; 0
+ 34: ec ee ldi r30, 0xEC ; 236
+ 36: f0 e0 ldi r31, 0x00 ; 0
+ 38: 02 c0 rjmp .+4 ; 0x3e <__SP_H__>
+ 3a: 05 90 lpm r0, Z+
+ 3c: 0d 92 st X+, r0
+ 3e: a0 37 cpi r26, 0x70 ; 112
+ 40: b1 07 cpc r27, r17
+ 42: d9 f7 brne .-10 ; 0x3a <__CCP__+0x6>
-00000034 :
-#define SA 0b00111111
-#define SB 0b01110101
-#define SC 0b01111000
+00000044 <__do_clear_bss>:
+ 44: 10 e0 ldi r17, 0x00 ; 0
+ 46: a0 e7 ldi r26, 0x70 ; 112
+ 48: b0 e0 ldi r27, 0x00 ; 0
+ 4a: 01 c0 rjmp .+2 ; 0x4e <.do_clear_bss_start>
-int main(void) {
- DDRB = 0b01111111;
- 34: 8f e7 ldi r24, 0x7F ; 127
- 36: 87 bb out 0x17, r24 ; 23
- while(1){
- PORTB = SC;
- 38: 88 e7 ldi r24, 0x78 ; 120
- 3a: 88 bb out 0x18, r24 ; 24
+0000004c <.do_clear_bss_loop>:
+ 4c: 1d 92 st X+, r1
+
+0000004e <.do_clear_bss_start>:
+ 4e: a2 37 cpi r26, 0x72 ; 114
+ 50: b1 07 cpc r27, r17
+ 52: e1 f7 brne .-8 ; 0x4c <.do_clear_bss_loop>
+ 54: 3d d0 rcall .+122 ; 0xd0
+ 56: 48 c0 rjmp .+144 ; 0xe8 <_exit>
+
+00000058 <__bad_interrupt>:
+ 58: d3 cf rjmp .-90 ; 0x0 <__vectors>
+
+0000005a :
+volatile uint8_t segs[16] = {S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,Sa,Sb,Sc,Sd,Se,Sf};
+volatile uint8_t ind = 0;
+volatile uint8_t dim = 0;
+
+void show() {
+ uint8_t i = ind;
+ 5a: e0 91 70 00 lds r30, 0x0070
+ uint8_t j = dim;
+ 5e: 60 91 71 00 lds r22, 0x0071
+ 62: 44 e1 ldi r20, 0x14 ; 20
+ for(uint8_t l=0;l<20;l++) {
+ for(uint8_t k=0;k
+void show() {
+ uint8_t i = ind;
+ uint8_t j = dim;
+ for(uint8_t l=0;l<20;l++) {
+ for(uint8_t k=0;k
- 4a: 00 c0 rjmp .+0 ; 0x4c <__SREG__+0xd>
- 4c: 00 00 nop
- _delay_ms(500);
- PORTB = 0;
- 4e: 18 ba out 0x18, r1 ; 24
- 50: 2f ef ldi r18, 0xFF ; 255
- 52: 34 e3 ldi r19, 0x34 ; 52
- 54: 4c e0 ldi r20, 0x0C ; 12
- 56: 21 50 subi r18, 0x01 ; 1
- 58: 30 40 sbci r19, 0x00 ; 0
- 5a: 40 40 sbci r20, 0x00 ; 0
- 5c: e1 f7 brne .-8 ; 0x56 <__SREG__+0x17>
- 5e: 00 c0 rjmp .+0 ; 0x60 <__SREG__+0x21>
- 60: 00 00 nop
- 62: eb cf rjmp .-42 ; 0x3a
+ 78: 36 e0 ldi r19, 0x06 ; 6
+ 7a: 3a 95 dec r19
+ 7c: f1 f7 brne .-4 ; 0x7a
+ 7e: 00 c0 rjmp .+0 ; 0x80
-00000064 <_exit>:
- 64: f8 94 cli
+void show() {
+ uint8_t i = ind;
+ uint8_t j = dim;
+ for(uint8_t l=0;l<20;l++) {
+ for(uint8_t k=0;k
+ 86: 50 e0 ldi r21, 0x00 ; 0
+ 88: 06 c0 rjmp .+12 ; 0x96
+ PORTB = segs[i];
+ _delay_us(1);
+ }
+ for(uint8_t k=0;k<255-j;k++) {
+ PORTB = 0;
+ 8a: 18 ba out 0x18, r1 ; 24
+ 8c: 26 e0 ldi r18, 0x06 ; 6
+ 8e: 2a 95 dec r18
+ 90: f1 f7 brne .-4 ; 0x8e
+ 92: 00 c0 rjmp .+0 ; 0x94
+ for(uint8_t l=0;l<20;l++) {
+ for(uint8_t k=0;k
+ a0: 41 50 subi r20, 0x01 ; 1
+volatile uint8_t dim = 0;
-00000066 <__stop_program>:
- 66: ff cf rjmp .-2 ; 0x66 <__stop_program>
+void show() {
+ uint8_t i = ind;
+ uint8_t j = dim;
+ for(uint8_t l=0;l<20;l++) {
+ a2: 11 f0 breq .+4 ; 0xa8
+
+volatile uint8_t segs[16] = {S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,Sa,Sb,Sc,Sd,Se,Sf};
+volatile uint8_t ind = 0;
+volatile uint8_t dim = 0;
+
+void show() {
+ a4: 20 e0 ldi r18, 0x00 ; 0
+ a6: ed cf rjmp .-38 ; 0x82
+ a8: 08 95 ret
+
+000000aa :
+ _delay_us(1);
+ }
+ }
+}
+
+void dimup() {
+ aa: 1f 93 push r17
+
+ for(uint8_t j=0;j<250;j++) {
+ ac: 10 e0 ldi r17, 0x00 ; 0
+ dim = j;
+ ae: 10 93 71 00 sts 0x0071, r17
+ show();
+ b2: d3 df rcall .-90 ; 0x5a
+ }
+}
+
+void dimup() {
+
+ for(uint8_t j=0;j<250;j++) {
+ b4: 1f 5f subi r17, 0xFF ; 255
+ b6: 1a 3f cpi r17, 0xFA ; 250
+ b8: d1 f7 brne .-12 ; 0xae
+ dim = j;
+ show();
+ }
+}
+ ba: 1f 91 pop r17
+ bc: 08 95 ret
+
+000000be :
+
+void dimdown() {
+ be: 1f 93 push r17
+ for(uint8_t i=250;i>0;i--) {
+ c0: 1a ef ldi r17, 0xFA ; 250
+ dim = i;
+ c2: 10 93 71 00 sts 0x0071, r17
+ show();
+ c6: c9 df rcall .-110 ; 0x5a
+ show();
+ }
+}
+
+void dimdown() {
+ for(uint8_t i=250;i>0;i--) {
+ c8: 11 50 subi r17, 0x01 ; 1
+ ca: d9 f7 brne .-10 ; 0xc2
+ dim = i;
+ show();
+ }
+}
+ cc: 1f 91 pop r17
+ ce: 08 95 ret
+
+000000d0 :
+
+
+int main(void) {
+ d0: 1f 93 push r17
+ DDRB = 0b01111111;
+ d2: 8f e7 ldi r24, 0x7F ; 127
+ d4: 87 bb out 0x17, r24 ; 23
+ //dim = 1;
+ while(1){
+ for(uint8_t i=0;i<16;i++) {
+ d6: 10 e0 ldi r17, 0x00 ; 0
+ ind = i;
+ d8: 10 93 70 00 sts 0x0070, r17
+ dimup();
+ dc: e6 df rcall .-52 ; 0xaa
+ dimdown();
+ de: ef df rcall .-34 ; 0xbe
+
+int main(void) {
+ DDRB = 0b01111111;
+ //dim = 1;
+ while(1){
+ for(uint8_t i=0;i<16;i++) {
+ e0: 1f 5f subi r17, 0xFF ; 255
+ e2: 10 31 cpi r17, 0x10 ; 16
+ e4: c0 f7 brcc .-16 ; 0xd6
+ e6: f8 cf rjmp .-16 ; 0xd8
+
+000000e8 <_exit>:
+ e8: f8 94 cli
+
+000000ea <__stop_program>:
+ ea: ff cf rjmp .-2 ; 0xea <__stop_program>
diff --git a/15cmZahl/default/15cmZahl.map b/15cmZahl/default/15cmZahl.map
index 0afaed1..291c00b 100644
--- a/15cmZahl/default/15cmZahl.map
+++ b/15cmZahl/default/15cmZahl.map
@@ -2,6 +2,10 @@ Archive member included because of file (symbol)
e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o (exit)
+e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ 15cmZahl.o (__do_copy_data)
+e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
+ 15cmZahl.o (__do_clear_bss)
Memory Configuration
@@ -112,7 +116,7 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a
.rela.plt
*(.rela.plt)
-.text 0x00000000 0x68
+.text 0x00000000 0xec
*(.vectors)
.vectors 0x00000000 0x26 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
0x00000000 __vector_default
@@ -150,6 +154,10 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a
*(.init3)
*(.init3)
*(.init4)
+ .init4 0x0000002e 0x16 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ 0x0000002e __do_copy_data
+ .init4 0x00000044 0x10 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
+ 0x00000044 __do_clear_bss
*(.init4)
*(.init5)
*(.init5)
@@ -160,40 +168,47 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a
*(.init8)
*(.init8)
*(.init9)
- .init9 0x0000002e 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
+ .init9 0x00000054 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
*(.init9)
*(.text)
- .text 0x00000032 0x2 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
- 0x00000032 __vector_1
- 0x00000032 __vector_12
- 0x00000032 __bad_interrupt
- 0x00000032 __vector_6
- 0x00000032 __vector_3
- 0x00000032 __vector_11
- 0x00000032 __vector_13
- 0x00000032 __vector_17
- 0x00000032 __vector_7
- 0x00000032 __vector_5
- 0x00000032 __vector_4
- 0x00000032 __vector_9
- 0x00000032 __vector_2
- 0x00000032 __vector_15
- 0x00000032 __vector_8
- 0x00000032 __vector_14
- 0x00000032 __vector_10
- 0x00000032 __vector_16
- 0x00000032 __vector_18
- .text 0x00000034 0x30 15cmZahl.o
- 0x00000034 main
- .text 0x00000064 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
- 0x00000064 . = ALIGN (0x2)
+ .text 0x00000058 0x2 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
+ 0x00000058 __vector_1
+ 0x00000058 __vector_12
+ 0x00000058 __bad_interrupt
+ 0x00000058 __vector_6
+ 0x00000058 __vector_3
+ 0x00000058 __vector_11
+ 0x00000058 __vector_13
+ 0x00000058 __vector_17
+ 0x00000058 __vector_7
+ 0x00000058 __vector_5
+ 0x00000058 __vector_4
+ 0x00000058 __vector_9
+ 0x00000058 __vector_2
+ 0x00000058 __vector_15
+ 0x00000058 __vector_8
+ 0x00000058 __vector_14
+ 0x00000058 __vector_10
+ 0x00000058 __vector_16
+ 0x00000058 __vector_18
+ .text 0x0000005a 0x8e 15cmZahl.o
+ 0x0000005a show
+ 0x000000aa dimup
+ 0x000000be dimdown
+ 0x000000d0 main
+ .text 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .text 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ .text 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
+ 0x000000e8 . = ALIGN (0x2)
*(.text.*)
- .text.libgcc 0x00000064 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
- 0x00000064 . = ALIGN (0x2)
+ .text.libgcc 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .text.libgcc 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ .text.libgcc 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
+ 0x000000e8 . = ALIGN (0x2)
*(.fini9)
- .fini9 0x00000064 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
- 0x00000064 _exit
- 0x00000064 exit
+ .fini9 0x000000e8 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ 0x000000e8 _exit
+ 0x000000e8 exit
*(.fini9)
*(.fini8)
*(.fini8)
@@ -212,42 +227,49 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a
*(.fini1)
*(.fini1)
*(.fini0)
- .fini0 0x00000064 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .fini0 0x000000e8 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
*(.fini0)
- 0x00000068 _etext = .
+ 0x000000ec _etext = .
-.data 0x00800060 0x0 load address 0x00000068
+.data 0x00800060 0x10 load address 0x000000ec
0x00800060 PROVIDE (__data_start, .)
*(.data)
.data 0x00800060 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
- .data 0x00800060 0x0 15cmZahl.o
- .data 0x00800060 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .data 0x00800060 0x10 15cmZahl.o
+ 0x00800060 segs
+ .data 0x00800070 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .data 0x00800070 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ .data 0x00800070 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
*(.data*)
*(.rodata)
*(.rodata*)
*(.gnu.linkonce.d*)
- 0x00800060 . = ALIGN (0x2)
- 0x00800060 _edata = .
- 0x00800060 PROVIDE (__data_end, .)
+ 0x00800070 . = ALIGN (0x2)
+ 0x00800070 _edata = .
+ 0x00800070 PROVIDE (__data_end, .)
-.bss 0x00800060 0x0
- 0x00800060 PROVIDE (__bss_start, .)
+.bss 0x00800070 0x2
+ 0x00800070 PROVIDE (__bss_start, .)
*(.bss)
- .bss 0x00800060 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
- .bss 0x00800060 0x0 15cmZahl.o
- .bss 0x00800060 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .bss 0x00800070 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o
+ .bss 0x00800070 0x2 15cmZahl.o
+ 0x00800070 ind
+ 0x00800071 dim
+ .bss 0x00800072 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o)
+ .bss 0x00800072 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o)
+ .bss 0x00800072 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o)
*(.bss*)
*(COMMON)
- 0x00800060 PROVIDE (__bss_end, .)
- 0x00000068 __data_load_start = LOADADDR (.data)
- 0x00000068 __data_load_end = (__data_load_start + SIZEOF (.data))
+ 0x00800072 PROVIDE (__bss_end, .)
+ 0x000000ec __data_load_start = LOADADDR (.data)
+ 0x000000fc __data_load_end = (__data_load_start + SIZEOF (.data))
-.noinit 0x00800060 0x0
- 0x00800060 PROVIDE (__noinit_start, .)
+.noinit 0x00800072 0x0
+ 0x00800072 PROVIDE (__noinit_start, .)
*(.noinit*)
- 0x00800060 PROVIDE (__noinit_end, .)
- 0x00800060 _end = .
- 0x00800060 PROVIDE (__heap_start, .)
+ 0x00800072 PROVIDE (__noinit_end, .)
+ 0x00800072 _end = .
+ 0x00800072 PROVIDE (__heap_start, .)
.eeprom 0x00810000 0x0
*(.eeprom*)
@@ -306,35 +328,36 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a
0x00000000 0x20 15cmZahl.o
.debug_pubnames
- 0x00000000 0x1b
+ 0x00000000 0x53
*(.debug_pubnames)
.debug_pubnames
- 0x00000000 0x1b 15cmZahl.o
+ 0x00000000 0x53 15cmZahl.o
-.debug_info 0x00000000 0x196
+.debug_info 0x00000000 0x2ec
*(.debug_info)
- .debug_info 0x00000000 0x196 15cmZahl.o
+ .debug_info 0x00000000 0x2ec 15cmZahl.o
*(.gnu.linkonce.wi.*)
-.debug_abbrev 0x00000000 0x106
+.debug_abbrev 0x00000000 0x18e
*(.debug_abbrev)
- .debug_abbrev 0x00000000 0x106 15cmZahl.o
+ .debug_abbrev 0x00000000 0x18e 15cmZahl.o
-.debug_line 0x00000000 0x157
+.debug_line 0x00000000 0x23c
*(.debug_line)
- .debug_line 0x00000000 0x157 15cmZahl.o
+ .debug_line 0x00000000 0x23c 15cmZahl.o
-.debug_frame 0x00000000 0x20
+.debug_frame 0x00000000 0x50
*(.debug_frame)
- .debug_frame 0x00000000 0x20 15cmZahl.o
+ .debug_frame 0x00000000 0x50 15cmZahl.o
-.debug_str 0x00000000 0xe9
+.debug_str 0x00000000 0xf8
*(.debug_str)
- .debug_str 0x00000000 0xe9 15cmZahl.o
- 0x11d (size before relaxing)
+ .debug_str 0x00000000 0xf8 15cmZahl.o
+ 0x12c (size before relaxing)
-.debug_loc
+.debug_loc 0x00000000 0x15f
*(.debug_loc)
+ .debug_loc 0x00000000 0x15f 15cmZahl.o
.debug_macinfo
*(.debug_macinfo)
@@ -342,6 +365,9 @@ OUTPUT(15cmZahl.elf elf32-avr)
LOAD linker stubs
.debug_pubtypes
- 0x00000000 0x38
+ 0x00000000 0x2b
.debug_pubtypes
- 0x00000000 0x38 15cmZahl.o
+ 0x00000000 0x2b 15cmZahl.o
+
+.debug_ranges 0x00000000 0x30
+ .debug_ranges 0x00000000 0x30 15cmZahl.o
diff --git a/15cmZahl/default/Makefile b/15cmZahl/default/Makefile
index c5118cc..1f698cc 100644
--- a/15cmZahl/default/Makefile
+++ b/15cmZahl/default/Makefile
@@ -15,7 +15,7 @@ COMMON = -mmcu=$(MCU)
## Compile options common for all C compilation units.
CFLAGS = $(COMMON)
-CFLAGS += -Wall -gdwarf-2 -std=gnu99 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
+CFLAGS += -Wall -gdwarf-2 -std=gnu99 -DF_CPU=20000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d
## Assembly specific flags