diff --git a/Timer/Timer.c b/Timer/Timer.c index 3168ee0..79369ef 100644 --- a/Timer/Timer.c +++ b/Timer/Timer.c @@ -45,7 +45,7 @@ volatile uint8_t segs[] = { // 29,25,21,19,14, //Jahr // 2,0,1,3,14,2,0,1,3,14,2,0,1,3}; //2013 2013 2013 // 14,14,18,18,19,19,20,20}; -volatile uint8_t frame[6] = {14,14, 14,14, 14,14}; +volatile uint8_t frame[7] = {14,14, 14,14, 14,14,0}; uint8_t timer_delay = 0; void display(uint8_t z, uint8_t p) { @@ -71,11 +71,24 @@ void display(uint8_t z, uint8_t p) { DDRB = ddr; PORTB = port; } + +void beeb() { + DDRD |= (1 << PD0); //PD0- + PORTD &= ~(1<< PD0); + DDRA |= (1 << PA0); //PA0+ + PORTA |= (1 << PA0); + _delay_us(100); + PORTA &= ~(1 << PA0); +} + void render() { for(uint8_t f = 0;f<6;f++) { display(frame[f],(5-f)+2); _delay_us(50); } + if(frame[6] == 1) { + beeb(); + } } void timerdown(uint8_t min) { @@ -293,9 +306,12 @@ ISR(TIMER0_COMPA_vect) } else { timer_delay++; } - + if(timer_delay%3 == 0) + frame[6] = (frame[6]==0)?1:0; } + + int main(void) { DDRB = 0; @@ -303,7 +319,7 @@ int main(void) { //Warten bis Startknopf start(); //Timer 20 nach unten - timerdown(22); + timerdown(1); while(1) { render(); if(frame[2] == 0 && frame[3] == 0 && frame[4] == 0 && frame[5] == 0) { @@ -316,7 +332,7 @@ int main(void) { } blink2013();*/ //Lauflicht 10s; - endelauflicht(); + //endelauflicht(); //Lauflicht Rand 10s //enderand(); //Blinklicht diff --git a/Timer/default/Timer.eep b/Timer/default/Timer.eep index dd9802e..295202a 100644 --- a/Timer/default/Timer.eep +++ b/Timer/default/Timer.eep @@ -1,2 +1,2 @@ -:04000003000001DC1C +:04000003000001FEFA :00000001FF diff --git a/Timer/default/Timer.elf b/Timer/default/Timer.elf index 30ed925..9e3b810 100644 Binary files a/Timer/default/Timer.elf and b/Timer/default/Timer.elf differ diff --git a/Timer/default/Timer.hex b/Timer/default/Timer.hex index 47cb747..a1748b7 100644 --- a/Timer/default/Timer.hex +++ b/Timer/default/Timer.hex @@ -1,9 +1,9 @@ :1000000012C02AC029C028C027C026C025C024C0CD -:1000100023C022C021C020C01FC075C21DC01CC08B +:1000100023C022C021C020C01FC086C21DC01CC07A :100020001BC01AC019C011241FBECFEDCDBF10E0F8 -:10003000A0E6B0E0E4E3F6E002C005900D92A83936 +:10003000A0E6B0E0E6E7F6E002C005900D92A83930 :10004000B107D9F710E0A8E9B0E001C01D92A939C5 -:10005000B107E1F7B9D2ECC2D3CFE82FF0E0E05A14 +:10005000B107E1F7DBD20DC3D3CFE82FF0E0E05AD0 :10006000FF4FA081AA0F7081770FE1E041E050E0DF :100070001FC08E2F90E02A2F30E00E2E02C0359543 :1000800027950A94E2F7019720FF08C09A0102C061 @@ -15,92 +15,96 @@ :1000E000E2F7722B09C09A0102C0220F331F8A95D2 :1000F000E2F7C90180957823EF5F6E17F8F681E08B :1001000090E002C0880F991F6A95E2F7A82B8095AE -:10011000872318BAA7BB88BB08951F93CF93DF939B -:1001200017E0C0E0D0E0FE01E258FF4F8081612F70 -:1001300094DF85E88A95F1F700002196115011307F -:1001400091F7DF91CF911F9108956AE065D2809376 -:100150008000909381001092820010928300F894A6 -:1001600080B7826080BF83B7856083BF8EEF86BF14 -:1001700089B7816089BF78940895EF92FF920F93B9 -:100180001F939AE090937E00082F9AE0F92E1FC0EB -:10019000802F6F2D41D2809380009093810010E0DA -:1001A000812F6F2D39D2809382009093830010FFAE -:1001B00002C08EE001C08AE080937E0082E5E82ED6 -:1001C000ACDFEA94E9F71F5F1C3351F70F5F043689 -:1001D000F8F21F910F91FF90EF9008958C9A9498E8 -:1001E000959A8FEF94E3ACE081509040A040E1F706 -:1001F00000C000008599FECF0895DF92EF92FF9234 -:100200000F931F938AE080937E0009E24FE0F42E63 -:100210001EE030E1D32E21E1E22EF0928000109317 -:100220008100109382001093830077DF76DF75DF03 -:1002300074DF73DF10938000D09281006EDF6DDF7A -:100240006CDF6BDF6ADF10938100E092820065DF74 -:1002500064DF63DF62DF61DF10938200F09283006E -:100260005CDF5BDF5ADF59DF58DF0150B1F61F91C9 -:100270000F91FF90EF90DF900895DF92EF92FF9241 -:100280000F931F938AE080937E0009E21EE07FE0D7 -:10029000F72E60E1D62E51E1E52E109380001093E9 -:1002A000810010938200F092830037DF36DF35DF64 -:1002B00034DF33DF10938300D09281002EDF2DDFF7 -:1002C0002CDF2BDF2ADF10938100E092820025DFF4 -:1002D00024DF23DF22DF21DFF092800010938200F1 -:1002E0001CDF1BDF1ADF19DF18DF0150B1F61F9189 -:1002F0000F91FF90EF90DF9008957F928F929F92E1 -:10030000AF92BF92CF92DF92EF92FF920F931F9323 -:10031000CF93DF938AE080937E0006E010E0C0E098 -:10032000D0E02FE0C22E90E1A92E81E1B82EB3E0FB -:100330008B2EAEE0DA2EFAE09F2EC0928000A092C3 -:100340008100B0928200C0928300EE2420C08E2DE6 -:10035000682D62D19923C9F4809180008E3059F4C0 -:1003600090927E00C0928000A0928100B0928200A4 -:10037000C09283000AC0D0927E00D0928000D092BA -:100380008100D0928200D0928300C7DEE3948E2D4C -:1003900090E080179107DCF2D0928000D09281002B -:1003A000D0928200D09283007724E4E0EE2EF12CEC -:1003B000EC0EFD1E02C0B1DE7394872D90E0E816AE -:1003C000F906CCF721960E5F1F4FCC32D10509F00C -:1003D000B4CFDF91CF911F910F91FF90EF90DF90FD -:1003E000CF90BF90AF909F908F907F900895EF92A5 -:1003F000FF920F931F93DF93CF93CDB7DEB7C45116 -:10040000CDBFDE011196E4E8F0E083E101900D92AA -:100410008150E1F78EE080937E0080937F0080938F -:1004200080008093810080938200809383004CEF52 -:100430005EE0E52E8E010F5F1F4F22C09C012F5FF3 -:100440003F4F533148F4F801E50FF11D6081225808 -:100450003F4FF901608304C022583F4FF901E08209 -:1004600001965F5F8530910549F73EE1F32E4C8B95 -:1004700054DEFA944C89FF20D1F74F5F443121F0CC -:10048000542F80E090E0DACFCC5ECDBFCF91DF91EA -:100490001F910F91FF90EF900895CF92DF92EF920E -:1004A000FF920F931F938EE080937E0080937F00D6 -:1004B0000EE1F2E0CF2EDD24D394E3E0EE2E1EE039 -:1004C000C092800010928100D0928200E09283005E -:1004D00074E1F72E22DEFA94E9F71093800010936E -:1004E0008100109382001093830064E1F62E15DEE4 -:1004F000FA94E9F7015021F71F910F91FF90EF90C7 -:10050000DF90CF9008951F920F920FB60F92112493 -:100510008F939F93809198008E3111F481EC86BF68 -:10052000809198008F3109F045C0109298008EEFAD -:1005300086BF80918300882341F08091830080935F -:1005400083008150809383002BC089E080938300D7 -:1005500090918200992341F08091820080938200E3 -:100560008150809382001CC095E09093820090910E -:100570008100992341F08091810080938100815016 -:10058000809381000DC08093810090918000992319 -:1005900029F08091800080938000815080938000BA -:1005A00080917E008E3011F48BE001C08EE080934C -:1005B0007E0003C08F5F809398009F918F910F9072 -:1005C0000FBE0F901F90189517BA08DE86E1BDDDAB -:1005D000A4DD809180008823D9F780918100882351 -:1005E000B9F780918200882399F78091830088234E -:1005F00079F719BE02DE81DE8AE080937E008FE00B -:100600008093800090E19093810091E1909382002B -:100610008093830082DDFECF991B79E004C0991F8F -:10062000961708F0961B881F7A95C9F7809508954C -:04063000F894FFCF6C -:100634003F065B4F666D7D077F6F4070467600799D -:10064400375E71315C763C1E067739073E0F0E0E1D -:100654000E0E0E0E121314150F0E16170F1815107A -:08066400191A151B0F100E00FE -:04000003000001DC1C +:10011000872318BAA7BB88BB0895889A9098D09A6D +:10012000D89A87EC90E00197F1F700C00000D898CA +:1001300008951F93CF93DF9317E0C0E0D0E0FE0156 +:10014000E258FF4F8081612F88DF85E88A95F1F7BB +:10015000000021961150113091F780918400813078 +:1001600009F4DBDFDF91CF911F9108956AE075D22A +:1001700080938000909381001092820010928300FF +:10018000F89480B7826080BF83B7856083BF8EEFAD +:1001900086BF89B7816089BF78940895EF92FF92F6 +:1001A0000F931F939AE090937E00082F9AE0F92E08 +:1001B0001FC0802F6F2D51D28093800090938100BB +:1001C00010E0812F6F2D49D280938200909383009D +:1001D00010FF02C08EE001C08AE080937E0082E5BD +:1001E000E82EA7DFEA94E9F71F5F1C3351F70F5F92 +:1001F0000436F8F21F910F91FF90EF9008958C9ABA +:100200009498959A8FEF94E3ACE081509040A04091 +:10021000E1F700C000008599FECF0895DF92EF92CC +:10022000FF920F931F938AE080937E0009E24FE0D4 +:10023000F42E1EE030E1D32E21E1E22EF092800078 +:1002400010938100109382001093830072DF71DF9E +:1002500070DF6FDF6EDF10938000D092810069DF66 +:1002600068DF67DF66DF65DF10938100E092820060 +:1002700060DF5FDF5EDF5DDF5CDF10938200F092A6 +:10028000830057DF56DF55DF54DF53DF0150B1F6EF +:100290001F910F91FF90EF90DF900895DF92EF9202 +:1002A000FF920F931F938AE080937E0009E21EE085 +:1002B0007FE0F72E60E1D62E51E1E52E109380000D +:1002C0001093810010938200F092830032DF31DFBF +:1002D00030DF2FDF2EDF10938300D092810029DFE3 +:1002E00028DF27DF26DF25DF10938100E0928200E0 +:1002F00020DF1FDF1EDF1DDF1CDFF0928000109368 +:10030000820017DF16DF15DF14DF13DF0150B1F6AF +:100310001F910F91FF90EF90DF9008957F928F9241 +:100320009F92AF92BF92CF92DF92EF92FF920F9384 +:100330001F93CF93DF938AE080937E0006E010E066 +:10034000C0E0D0E02FE0C22E90E1A92E81E1B82ECE +:10035000B3E08B2EAEE0DA2EFAE09F2EC092800042 +:10036000A0928100B0928200C0928300EE2420C04F +:100370008E2D682D72D19923C9F4809180008E3022 +:1003800059F490927E00C0928000A0928100B092B9 +:100390008200C09283000AC0D0927E00D09280007A +:1003A000D0928100D0928200D0928300C2DEE3948A +:1003B0008E2D90E080179107DCF2D0928000D092D1 +:1003C0008100D0928200D09283007724E4E0EE2E68 +:1003D000F12CEC0EFD1E02C0ACDE7394872D90E074 +:1003E000E816F906CCF721960E5F1F4FCC32D105E7 +:1003F00009F0B4CFDF91CF911F910F91FF90EF9053 +:10040000DF90CF90BF90AF909F908F907F90089596 +:10041000EF92FF920F931F93DF93CF93CDB7DEB789 +:10042000C451CDBFDE011196E5E8F0E083E1019013 +:100430000D928150E1F78EE080937E0080937F00E3 +:10044000809380008093810080938200809383005A +:100450004CEF5EE0E52E8E010F5F1F4F22C09C0126 +:100460002F5F3F4F533148F4F801E50FF11D6081D4 +:1004700022583F4FF901608304C022583F4FF901D1 +:10048000E08201965F5F8530910549F73EE1F32EEA +:100490004C8B4FDEFA944C89FF20D1F74F5F4431EB +:1004A00021F0542F80E090E0DACFCC5ECDBFCF9129 +:1004B000DF911F910F91FF90EF900895CF92DF92FF +:1004C000EF92FF920F931F938EE080937E008093B4 +:1004D0007F000EE1F2E0CF2EDD24D394E3E0EE2E98 +:1004E0001EE0C092800010928100D0928200E092C3 +:1004F000830074E1F72E1DDEFA94E9F71093800073 +:1005000010938100109382001093830064E1F62E13 +:1005100010DEFA94E9F7015021F71F910F91FF9037 +:10052000EF90DF90CF9008951F920F920FB60F9229 +:1005300011246F937F938F939F93809198008E31B6 +:1005400011F481EC86BF809198008F3109F045C08D +:10055000109298008EEF86BF80918300882341F02F +:1005600080918300809383008150809383002BC00F +:1005700089E08093830090918200992341F08091DB +:100580008200809382008150809382001CC095E09D +:100590009093820090918100992341F08091810095 +:1005A000809381008150809381000DC080938100F1 +:1005B00090918000992329F08091800080938000A1 +:1005C00081508093800080917E008E3011F48BE00A +:1005D00001C08EE080937E0003C08F5F80939800FF +:1005E0008091980063E039D0992339F49091840088 +:1005F00081E0911180E0809384009F918F917F91A1 +:100600006F910F900FBE0F901F90189517BAF7DDDE +:1006100081E0ACDD8EDD809180008823D9F7809168 +:1006200081008823B9F780918200882399F780910F +:100630008300882379F719BE71DE8AE080937E00FB +:100640008FE08093800090E19093810091E19093FE +:100650008200809383006DDDFECF991B79E004C09A +:10066000991F961708F0961B881F7A95C9F78095F1 +:060670000895F894FFCF8D +:100676003F065B4F666D7D077F6F4070467600795B +:10068600375E71315C763C1E067739073E0F0E0EDB +:100696000E0E0E0E00121314150F0E16170F181548 +:0806A60010191A151B0F100EAC +:04000003000001FEFA :00000001FF diff --git a/Timer/default/Timer.lss b/Timer/default/Timer.lss index e8cae0e..f6ed1ab 100644 --- a/Timer/default/Timer.lss +++ b/Timer/default/Timer.lss @@ -3,35 +3,35 @@ Timer.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn - 0 .text 00000634 00000000 00000000 00000094 2**1 + 0 .text 00000676 00000000 00000000 00000094 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE - 1 .data 00000038 00800060 00000634 000006c8 2**0 + 1 .data 00000038 00800060 00000676 0000070a 2**0 CONTENTS, ALLOC, LOAD, DATA - 2 .bss 00000001 00800098 00800098 00000700 2**0 + 2 .bss 00000001 00800098 00800098 00000742 2**0 ALLOC - 3 .stab 000006b4 00000000 00000000 00000700 2**2 + 3 .stab 000006b4 00000000 00000000 00000744 2**2 CONTENTS, READONLY, DEBUGGING - 4 .stabstr 00000085 00000000 00000000 00000db4 2**0 + 4 .stabstr 00000085 00000000 00000000 00000df8 2**0 CONTENTS, READONLY, DEBUGGING - 5 .debug_aranges 00000020 00000000 00000000 00000e39 2**0 + 5 .debug_aranges 00000020 00000000 00000000 00000e7d 2**0 CONTENTS, READONLY, DEBUGGING - 6 .debug_pubnames 000000d4 00000000 00000000 00000e59 2**0 + 6 .debug_pubnames 000000dd 00000000 00000000 00000e9d 2**0 CONTENTS, READONLY, DEBUGGING - 7 .debug_info 00000696 00000000 00000000 00000f2d 2**0 + 7 .debug_info 000006eb 00000000 00000000 00000f7a 2**0 CONTENTS, READONLY, DEBUGGING - 8 .debug_abbrev 000001e6 00000000 00000000 000015c3 2**0 + 8 .debug_abbrev 000001f5 00000000 00000000 00001665 2**0 CONTENTS, READONLY, DEBUGGING - 9 .debug_line 00000878 00000000 00000000 000017a9 2**0 + 9 .debug_line 000008d7 00000000 00000000 0000185a 2**0 CONTENTS, READONLY, DEBUGGING - 10 .debug_frame 000000d0 00000000 00000000 00002024 2**2 + 10 .debug_frame 000000e0 00000000 00000000 00002134 2**2 CONTENTS, READONLY, DEBUGGING - 11 .debug_str 00000180 00000000 00000000 000020f4 2**0 + 11 .debug_str 00000185 00000000 00000000 00002214 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_loc 00000503 00000000 00000000 00002274 2**0 + 12 .debug_loc 00000503 00000000 00000000 00002399 2**0 CONTENTS, READONLY, DEBUGGING - 13 .debug_pubtypes 00000038 00000000 00000000 00002777 2**0 + 13 .debug_pubtypes 00000038 00000000 00000000 0000289c 2**0 CONTENTS, READONLY, DEBUGGING - 14 .debug_ranges 00000018 00000000 00000000 000027af 2**0 + 14 .debug_ranges 00000018 00000000 00000000 000028d4 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: @@ -50,7 +50,7 @@ Disassembly of section .text: 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: 75 c2 rjmp .+1258 ; 0x506 <__vector_13> + 1a: 86 c2 rjmp .+1292 ; 0x528 <__vector_13> 1c: 1d c0 rjmp .+58 ; 0x58 <__bad_interrupt> 1e: 1c c0 rjmp .+56 ; 0x58 <__bad_interrupt> 20: 1b c0 rjmp .+54 ; 0x58 <__bad_interrupt> @@ -67,7 +67,7 @@ Disassembly of section .text: 2e: 10 e0 ldi r17, 0x00 ; 0 30: a0 e6 ldi r26, 0x60 ; 96 32: b0 e0 ldi r27, 0x00 ; 0 - 34: e4 e3 ldi r30, 0x34 ; 52 + 34: e6 e7 ldi r30, 0x76 ; 118 36: f6 e0 ldi r31, 0x06 ; 6 38: 02 c0 rjmp .+4 ; 0x3e <__SP_H__> 3a: 05 90 lpm r0, Z+ @@ -89,15 +89,15 @@ Disassembly of section .text: 4e: a9 39 cpi r26, 0x99 ; 153 50: b1 07 cpc r27, r17 52: e1 f7 brne .-8 ; 0x4c <.do_clear_bss_loop> - 54: b9 d2 rcall .+1394 ; 0x5c8
- 56: ec c2 rjmp .+1496 ; 0x630 <_exit> + 54: db d2 rcall .+1462 ; 0x60c
+ 56: 0d c3 rjmp .+1562 ; 0x672 <_exit> 00000058 <__bad_interrupt>: 58: d3 cf rjmp .-90 ; 0x0 <__vectors> 0000005a : // 14,14,18,18,19,19,20,20}; -volatile uint8_t frame[6] = {14,14, 14,14, 14,14}; +volatile uint8_t frame[7] = {14,14, 14,14, 14,14,0}; uint8_t timer_delay = 0; void display(uint8_t z, uint8_t p) { @@ -253,1077 +253,1120 @@ void display(uint8_t z, uint8_t p) { } 118: 08 95 ret -0000011a : -void render() { - 11a: 1f 93 push r17 - 11c: cf 93 push r28 - 11e: df 93 push r29 - 120: 17 e0 ldi r17, 0x07 ; 7 - 122: c0 e0 ldi r28, 0x00 ; 0 - 124: d0 e0 ldi r29, 0x00 ; 0 - for(uint8_t f = 0;f<6;f++) { - display(frame[f],(5-f)+2); - 126: fe 01 movw r30, r28 - 128: e2 58 subi r30, 0x82 ; 130 - 12a: ff 4f sbci r31, 0xFF ; 255 - 12c: 80 81 ld r24, Z - 12e: 61 2f mov r22, r17 - 130: 94 df rcall .-216 ; 0x5a +0000011a : + +void beeb() { + DDRD |= (1 << PD0); //PD0- + 11a: 88 9a sbi 0x11, 0 ; 17 + PORTD &= ~(1<< PD0); + 11c: 90 98 cbi 0x12, 0 ; 18 + DDRA |= (1 << PA0); //PA0+ + 11e: d0 9a sbi 0x1a, 0 ; 26 + PORTA |= (1 << PA0); + 120: d8 9a sbi 0x1b, 0 ; 27 #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); - 132: 85 e8 ldi r24, 0x85 ; 133 - 134: 8a 95 dec r24 - 136: f1 f7 brne .-4 ; 0x134 - 138: 00 00 nop - 13a: 21 96 adiw r28, 0x01 ; 1 - 13c: 11 50 subi r17, 0x01 ; 1 - PORTB = 0; - DDRB = ddr; - PORTB = port; + 122: 87 ec ldi r24, 0xC7 ; 199 + 124: 90 e0 ldi r25, 0x00 ; 0 + 126: 01 97 sbiw r24, 0x01 ; 1 + 128: f1 f7 brne .-4 ; 0x126 + 12a: 00 c0 rjmp .+0 ; 0x12c + 12c: 00 00 nop + _delay_us(100); + PORTA &= ~(1 << PA0); + 12e: d8 98 cbi 0x1b, 0 ; 27 } + 130: 08 95 ret + +00000132 : + +void render() { + 132: 1f 93 push r17 + 134: cf 93 push r28 + 136: df 93 push r29 + 138: 17 e0 ldi r17, 0x07 ; 7 + 13a: c0 e0 ldi r28, 0x00 ; 0 + 13c: d0 e0 ldi r29, 0x00 ; 0 + for(uint8_t f = 0;f<6;f++) { + display(frame[f],(5-f)+2); + 13e: fe 01 movw r30, r28 + 140: e2 58 subi r30, 0x82 ; 130 + 142: ff 4f sbci r31, 0xFF ; 255 + 144: 80 81 ld r24, Z + 146: 61 2f mov r22, r17 + 148: 88 df rcall .-240 ; 0x5a + 14a: 85 e8 ldi r24, 0x85 ; 133 + 14c: 8a 95 dec r24 + 14e: f1 f7 brne .-4 ; 0x14c + 150: 00 00 nop + 152: 21 96 adiw r28, 0x01 ; 1 + 154: 11 50 subi r17, 0x01 ; 1 + _delay_us(100); + PORTA &= ~(1 << PA0); +} + void render() { for(uint8_t f = 0;f<6;f++) { - 13e: 11 30 cpi r17, 0x01 ; 1 - 140: 91 f7 brne .-28 ; 0x126 + 156: 11 30 cpi r17, 0x01 ; 1 + 158: 91 f7 brne .-28 ; 0x13e display(frame[f],(5-f)+2); _delay_us(50); } + if(frame[6] == 1) { + 15a: 80 91 84 00 lds r24, 0x0084 + 15e: 81 30 cpi r24, 0x01 ; 1 + 160: 09 f4 brne .+2 ; 0x164 + beeb(); + 162: db df rcall .-74 ; 0x11a + } } - 142: df 91 pop r29 - 144: cf 91 pop r28 - 146: 1f 91 pop r17 - 148: 08 95 ret + 164: df 91 pop r29 + 166: cf 91 pop r28 + 168: 1f 91 pop r17 + 16a: 08 95 ret -0000014a : +0000016c : void timerdown(uint8_t min) { frame[2] = min/10; - 14a: 6a e0 ldi r22, 0x0A ; 10 - 14c: 65 d2 rcall .+1226 ; 0x618 <__udivmodqi4> - 14e: 80 93 80 00 sts 0x0080, r24 + 16c: 6a e0 ldi r22, 0x0A ; 10 + 16e: 75 d2 rcall .+1258 ; 0x65a <__udivmodqi4> + 170: 80 93 80 00 sts 0x0080, r24 frame[3] = min%10; - 152: 90 93 81 00 sts 0x0081, r25 + 174: 90 93 81 00 sts 0x0081, r25 frame[4] = 0; - 156: 10 92 82 00 sts 0x0082, r1 + 178: 10 92 82 00 sts 0x0082, r1 frame[5] = 0; - 15a: 10 92 83 00 sts 0x0083, r1 + 17c: 10 92 83 00 sts 0x0083, r1 cli(); - 15e: f8 94 cli + 180: f8 94 cli TCCR0A |= (1<254 Zählen - 16c: 8e ef ldi r24, 0xFE ; 254 - 16e: 86 bf out 0x36, r24 ; 54 + 18e: 8e ef ldi r24, 0xFE ; 254 + 190: 86 bf out 0x36, r24 ; 54 TIMSK |= (1<: +0000019c : void timerup(uint8_t min) { - 17a: ef 92 push r14 - 17c: ff 92 push r15 - 17e: 0f 93 push r16 - 180: 1f 93 push r17 + 19c: ef 92 push r14 + 19e: ff 92 push r15 + 1a0: 0f 93 push r16 + 1a2: 1f 93 push r17 frame[0] = 10; - 182: 9a e0 ldi r25, 0x0A ; 10 - 184: 90 93 7e 00 sts 0x007E, r25 + 1a4: 9a e0 ldi r25, 0x0A ; 10 + 1a6: 90 93 7e 00 sts 0x007E, r25 for(uint8_t j=min;j<=99;j++) { - 188: 08 2f mov r16, r24 + 1aa: 08 2f mov r16, r24 frame[2] = (uint8_t)(j/10); - 18a: 9a e0 ldi r25, 0x0A ; 10 - 18c: f9 2e mov r15, r25 + 1ac: 9a e0 ldi r25, 0x0A ; 10 + 1ae: f9 2e mov r15, r25 sei(); } void timerup(uint8_t min) { frame[0] = 10; for(uint8_t j=min;j<=99;j++) { - 18e: 1f c0 rjmp .+62 ; 0x1ce + 1b0: 1f c0 rjmp .+62 ; 0x1f0 frame[2] = (uint8_t)(j/10); - 190: 80 2f mov r24, r16 - 192: 6f 2d mov r22, r15 - 194: 41 d2 rcall .+1154 ; 0x618 <__udivmodqi4> - 196: 80 93 80 00 sts 0x0080, r24 + 1b2: 80 2f mov r24, r16 + 1b4: 6f 2d mov r22, r15 + 1b6: 51 d2 rcall .+1186 ; 0x65a <__udivmodqi4> + 1b8: 80 93 80 00 sts 0x0080, r24 frame[3] = (uint8_t)(j%10); - 19a: 90 93 81 00 sts 0x0081, r25 + 1bc: 90 93 81 00 sts 0x0081, r25 for(uint8_t i=0;i<=59;i++) { - 19e: 10 e0 ldi r17, 0x00 ; 0 + 1c0: 10 e0 ldi r17, 0x00 ; 0 frame[4] = (uint8_t)(i/10); - 1a0: 81 2f mov r24, r17 - 1a2: 6f 2d mov r22, r15 - 1a4: 39 d2 rcall .+1138 ; 0x618 <__udivmodqi4> - 1a6: 80 93 82 00 sts 0x0082, r24 + 1c2: 81 2f mov r24, r17 + 1c4: 6f 2d mov r22, r15 + 1c6: 49 d2 rcall .+1170 ; 0x65a <__udivmodqi4> + 1c8: 80 93 82 00 sts 0x0082, r24 frame[5] = (uint8_t)(i%10); - 1aa: 90 93 83 00 sts 0x0083, r25 + 1cc: 90 93 83 00 sts 0x0083, r25 frame[0] = (i%2==0)?10:14; - 1ae: 10 ff sbrs r17, 0 - 1b0: 02 c0 rjmp .+4 ; 0x1b6 - 1b2: 8e e0 ldi r24, 0x0E ; 14 - 1b4: 01 c0 rjmp .+2 ; 0x1b8 - 1b6: 8a e0 ldi r24, 0x0A ; 10 - 1b8: 80 93 7e 00 sts 0x007E, r24 - 1bc: 82 e5 ldi r24, 0x52 ; 82 - 1be: e8 2e mov r14, r24 + 1d0: 10 ff sbrs r17, 0 + 1d2: 02 c0 rjmp .+4 ; 0x1d8 + 1d4: 8e e0 ldi r24, 0x0E ; 14 + 1d6: 01 c0 rjmp .+2 ; 0x1da + 1d8: 8a e0 ldi r24, 0x0A ; 10 + 1da: 80 93 7e 00 sts 0x007E, r24 + 1de: 82 e5 ldi r24, 0x52 ; 82 + 1e0: e8 2e mov r14, r24 for(uint8_t k=0;k<82;k++) { render(); - 1c0: ac df rcall .-168 ; 0x11a - 1c2: ea 94 dec r14 + 1e2: a7 df rcall .-178 ; 0x132 + 1e4: ea 94 dec r14 frame[3] = (uint8_t)(j%10); for(uint8_t i=0;i<=59;i++) { frame[4] = (uint8_t)(i/10); frame[5] = (uint8_t)(i%10); frame[0] = (i%2==0)?10:14; for(uint8_t k=0;k<82;k++) { - 1c4: e9 f7 brne .-6 ; 0x1c0 + 1e6: e9 f7 brne .-6 ; 0x1e2 void timerup(uint8_t min) { frame[0] = 10; for(uint8_t j=min;j<=99;j++) { frame[2] = (uint8_t)(j/10); frame[3] = (uint8_t)(j%10); for(uint8_t i=0;i<=59;i++) { - 1c6: 1f 5f subi r17, 0xFF ; 255 - 1c8: 1c 33 cpi r17, 0x3C ; 60 - 1ca: 51 f7 brne .-44 ; 0x1a0 + 1e8: 1f 5f subi r17, 0xFF ; 255 + 1ea: 1c 33 cpi r17, 0x3C ; 60 + 1ec: 51 f7 brne .-44 ; 0x1c2 sei(); } void timerup(uint8_t min) { frame[0] = 10; for(uint8_t j=min;j<=99;j++) { - 1cc: 0f 5f subi r16, 0xFF ; 255 - 1ce: 04 36 cpi r16, 0x64 ; 100 - 1d0: f8 f2 brcs .-66 ; 0x190 + 1ee: 0f 5f subi r16, 0xFF ; 255 + 1f0: 04 36 cpi r16, 0x64 ; 100 + 1f2: f8 f2 brcs .-66 ; 0x1b2 for(uint8_t k=0;k<82;k++) { render(); } } } } - 1d2: 1f 91 pop r17 - 1d4: 0f 91 pop r16 - 1d6: ff 90 pop r15 - 1d8: ef 90 pop r14 - 1da: 08 95 ret + 1f4: 1f 91 pop r17 + 1f6: 0f 91 pop r16 + 1f8: ff 90 pop r15 + 1fa: ef 90 pop r14 + 1fc: 08 95 ret -000001dc : +000001fe : void start() { DDRD |= (1< - 1f0: 00 c0 rjmp .+0 ; 0x1f2 - 1f2: 00 00 nop + 204: 8f ef ldi r24, 0xFF ; 255 + 206: 94 e3 ldi r25, 0x34 ; 52 + 208: ac e0 ldi r26, 0x0C ; 12 + 20a: 81 50 subi r24, 0x01 ; 1 + 20c: 90 40 sbci r25, 0x00 ; 0 + 20e: a0 40 sbci r26, 0x00 ; 0 + 210: e1 f7 brne .-8 ; 0x20a + 212: 00 c0 rjmp .+0 ; 0x214 + 214: 00 00 nop _delay_ms(500); while(1) { if (!(PIND & (1< + 216: 85 99 sbic 0x10, 5 ; 16 + 218: fe cf rjmp .-4 ; 0x216 break; } } } - 1f8: 08 95 ret + 21a: 08 95 ret -000001fa : +0000021c : void endelauflicht() { - 1fa: df 92 push r13 - 1fc: ef 92 push r14 - 1fe: ff 92 push r15 - 200: 0f 93 push r16 - 202: 1f 93 push r17 + 21c: df 92 push r13 + 21e: ef 92 push r14 + 220: ff 92 push r15 + 222: 0f 93 push r16 + 224: 1f 93 push r17 frame[0] = 10; - 204: 8a e0 ldi r24, 0x0A ; 10 - 206: 80 93 7e 00 sts 0x007E, r24 - 20a: 09 e2 ldi r16, 0x29 ; 41 + 226: 8a e0 ldi r24, 0x0A ; 10 + 228: 80 93 7e 00 sts 0x007E, r24 + 22c: 09 e2 ldi r16, 0x29 ; 41 for(uint8_t j=0;j<41;j++) { frame[2] = 15; - 20c: 4f e0 ldi r20, 0x0F ; 15 - 20e: f4 2e mov r15, r20 + 22e: 4f e0 ldi r20, 0x0F ; 15 + 230: f4 2e mov r15, r20 frame[3] = 14; - 210: 1e e0 ldi r17, 0x0E ; 14 + 232: 1e e0 ldi r17, 0x0E ; 14 frame[5] = 14; for(uint8_t k=0;k<5;k++) { render(); } frame[2] = 14; frame[3] = 16; - 212: 30 e1 ldi r19, 0x10 ; 16 - 214: d3 2e mov r13, r19 + 234: 30 e1 ldi r19, 0x10 ; 16 + 236: d3 2e mov r13, r19 for(uint8_t k=0;k<5;k++) { render(); } frame[3] = 14; frame[4] = 17; - 216: 21 e1 ldi r18, 0x11 ; 17 - 218: e2 2e mov r14, r18 + 238: 21 e1 ldi r18, 0x11 ; 17 + 23a: e2 2e mov r14, r18 } void endelauflicht() { frame[0] = 10; for(uint8_t j=0;j<41;j++) { frame[2] = 15; - 21a: f0 92 80 00 sts 0x0080, r15 + 23c: f0 92 80 00 sts 0x0080, r15 frame[3] = 14; - 21e: 10 93 81 00 sts 0x0081, r17 + 240: 10 93 81 00 sts 0x0081, r17 frame[4] = 14; - 222: 10 93 82 00 sts 0x0082, r17 + 244: 10 93 82 00 sts 0x0082, r17 frame[5] = 14; - 226: 10 93 83 00 sts 0x0083, r17 + 248: 10 93 83 00 sts 0x0083, r17 for(uint8_t k=0;k<5;k++) { render(); - 22a: 77 df rcall .-274 ; 0x11a - 22c: 76 df rcall .-276 ; 0x11a - 22e: 75 df rcall .-278 ; 0x11a - 230: 74 df rcall .-280 ; 0x11a - 232: 73 df rcall .-282 ; 0x11a + 24c: 72 df rcall .-284 ; 0x132 + 24e: 71 df rcall .-286 ; 0x132 + 250: 70 df rcall .-288 ; 0x132 + 252: 6f df rcall .-290 ; 0x132 + 254: 6e df rcall .-292 ; 0x132 } frame[2] = 14; - 234: 10 93 80 00 sts 0x0080, r17 + 256: 10 93 80 00 sts 0x0080, r17 frame[3] = 16; - 238: d0 92 81 00 sts 0x0081, r13 + 25a: d0 92 81 00 sts 0x0081, r13 for(uint8_t k=0;k<5;k++) { render(); - 23c: 6e df rcall .-292 ; 0x11a - 23e: 6d df rcall .-294 ; 0x11a - 240: 6c df rcall .-296 ; 0x11a - 242: 6b df rcall .-298 ; 0x11a - 244: 6a df rcall .-300 ; 0x11a + 25e: 69 df rcall .-302 ; 0x132 + 260: 68 df rcall .-304 ; 0x132 + 262: 67 df rcall .-306 ; 0x132 + 264: 66 df rcall .-308 ; 0x132 + 266: 65 df rcall .-310 ; 0x132 } frame[3] = 14; - 246: 10 93 81 00 sts 0x0081, r17 + 268: 10 93 81 00 sts 0x0081, r17 frame[4] = 17; - 24a: e0 92 82 00 sts 0x0082, r14 + 26c: e0 92 82 00 sts 0x0082, r14 for(uint8_t k=0;k<5;k++) { render(); - 24e: 65 df rcall .-310 ; 0x11a - 250: 64 df rcall .-312 ; 0x11a - 252: 63 df rcall .-314 ; 0x11a - 254: 62 df rcall .-316 ; 0x11a - 256: 61 df rcall .-318 ; 0x11a + 270: 60 df rcall .-320 ; 0x132 + 272: 5f df rcall .-322 ; 0x132 + 274: 5e df rcall .-324 ; 0x132 + 276: 5d df rcall .-326 ; 0x132 + 278: 5c df rcall .-328 ; 0x132 } frame[4] = 14; - 258: 10 93 82 00 sts 0x0082, r17 + 27a: 10 93 82 00 sts 0x0082, r17 frame[5] = 15; - 25c: f0 92 83 00 sts 0x0083, r15 + 27e: f0 92 83 00 sts 0x0083, r15 for(uint8_t k=0;k<5;k++) { render(); - 260: 5c df rcall .-328 ; 0x11a - 262: 5b df rcall .-330 ; 0x11a - 264: 5a df rcall .-332 ; 0x11a - 266: 59 df rcall .-334 ; 0x11a - 268: 58 df rcall .-336 ; 0x11a - 26a: 01 50 subi r16, 0x01 ; 1 + 282: 57 df rcall .-338 ; 0x132 + 284: 56 df rcall .-340 ; 0x132 + 286: 55 df rcall .-342 ; 0x132 + 288: 54 df rcall .-344 ; 0x132 + 28a: 53 df rcall .-346 ; 0x132 + 28c: 01 50 subi r16, 0x01 ; 1 } } void endelauflicht() { frame[0] = 10; for(uint8_t j=0;j<41;j++) { - 26c: b1 f6 brne .-84 ; 0x21a + 28e: b1 f6 brne .-84 ; 0x23c frame[5] = 15; for(uint8_t k=0;k<5;k++) { render(); } } } - 26e: 1f 91 pop r17 - 270: 0f 91 pop r16 - 272: ff 90 pop r15 - 274: ef 90 pop r14 - 276: df 90 pop r13 - 278: 08 95 ret + 290: 1f 91 pop r17 + 292: 0f 91 pop r16 + 294: ff 90 pop r15 + 296: ef 90 pop r14 + 298: df 90 pop r13 + 29a: 08 95 ret -0000027a : +0000029c : void enderand() { - 27a: df 92 push r13 - 27c: ef 92 push r14 - 27e: ff 92 push r15 - 280: 0f 93 push r16 - 282: 1f 93 push r17 + 29c: df 92 push r13 + 29e: ef 92 push r14 + 2a0: ff 92 push r15 + 2a2: 0f 93 push r16 + 2a4: 1f 93 push r17 frame[0] = 10; - 284: 8a e0 ldi r24, 0x0A ; 10 - 286: 80 93 7e 00 sts 0x007E, r24 - 28a: 09 e2 ldi r16, 0x29 ; 41 + 2a6: 8a e0 ldi r24, 0x0A ; 10 + 2a8: 80 93 7e 00 sts 0x007E, r24 + 2ac: 09 e2 ldi r16, 0x29 ; 41 for(uint8_t j=0;j<41;j++) { frame[2] = 14; - 28c: 1e e0 ldi r17, 0x0E ; 14 + 2ae: 1e e0 ldi r17, 0x0E ; 14 frame[3] = 14; frame[4] = 14; frame[5] = 15; - 28e: 7f e0 ldi r23, 0x0F ; 15 - 290: f7 2e mov r15, r23 + 2b0: 7f e0 ldi r23, 0x0F ; 15 + 2b2: f7 2e mov r15, r23 for(uint8_t k=0;k<5;k++) { render(); } frame[5] = 14; frame[3] = 16; - 292: 60 e1 ldi r22, 0x10 ; 16 - 294: d6 2e mov r13, r22 + 2b4: 60 e1 ldi r22, 0x10 ; 16 + 2b6: d6 2e mov r13, r22 for(uint8_t k=0;k<5;k++) { render(); } frame[3] = 14; frame[4] = 17; - 296: 51 e1 ldi r21, 0x11 ; 17 - 298: e5 2e mov r14, r21 + 2b8: 51 e1 ldi r21, 0x11 ; 17 + 2ba: e5 2e mov r14, r21 } void enderand() { frame[0] = 10; for(uint8_t j=0;j<41;j++) { frame[2] = 14; - 29a: 10 93 80 00 sts 0x0080, r17 + 2bc: 10 93 80 00 sts 0x0080, r17 frame[3] = 14; - 29e: 10 93 81 00 sts 0x0081, r17 + 2c0: 10 93 81 00 sts 0x0081, r17 frame[4] = 14; - 2a2: 10 93 82 00 sts 0x0082, r17 + 2c4: 10 93 82 00 sts 0x0082, r17 frame[5] = 15; - 2a6: f0 92 83 00 sts 0x0083, r15 + 2c8: f0 92 83 00 sts 0x0083, r15 for(uint8_t k=0;k<5;k++) { render(); - 2aa: 37 df rcall .-402 ; 0x11a - 2ac: 36 df rcall .-404 ; 0x11a - 2ae: 35 df rcall .-406 ; 0x11a - 2b0: 34 df rcall .-408 ; 0x11a - 2b2: 33 df rcall .-410 ; 0x11a + 2cc: 32 df rcall .-412 ; 0x132 + 2ce: 31 df rcall .-414 ; 0x132 + 2d0: 30 df rcall .-416 ; 0x132 + 2d2: 2f df rcall .-418 ; 0x132 + 2d4: 2e df rcall .-420 ; 0x132 } frame[5] = 14; - 2b4: 10 93 83 00 sts 0x0083, r17 + 2d6: 10 93 83 00 sts 0x0083, r17 frame[3] = 16; - 2b8: d0 92 81 00 sts 0x0081, r13 + 2da: d0 92 81 00 sts 0x0081, r13 for(uint8_t k=0;k<5;k++) { render(); - 2bc: 2e df rcall .-420 ; 0x11a - 2be: 2d df rcall .-422 ; 0x11a - 2c0: 2c df rcall .-424 ; 0x11a - 2c2: 2b df rcall .-426 ; 0x11a - 2c4: 2a df rcall .-428 ; 0x11a + 2de: 29 df rcall .-430 ; 0x132 + 2e0: 28 df rcall .-432 ; 0x132 + 2e2: 27 df rcall .-434 ; 0x132 + 2e4: 26 df rcall .-436 ; 0x132 + 2e6: 25 df rcall .-438 ; 0x132 } frame[3] = 14; - 2c6: 10 93 81 00 sts 0x0081, r17 + 2e8: 10 93 81 00 sts 0x0081, r17 frame[4] = 17; - 2ca: e0 92 82 00 sts 0x0082, r14 + 2ec: e0 92 82 00 sts 0x0082, r14 for(uint8_t k=0;k<5;k++) { render(); - 2ce: 25 df rcall .-438 ; 0x11a - 2d0: 24 df rcall .-440 ; 0x11a - 2d2: 23 df rcall .-442 ; 0x11a - 2d4: 22 df rcall .-444 ; 0x11a - 2d6: 21 df rcall .-446 ; 0x11a + 2f0: 20 df rcall .-448 ; 0x132 + 2f2: 1f df rcall .-450 ; 0x132 + 2f4: 1e df rcall .-452 ; 0x132 + 2f6: 1d df rcall .-454 ; 0x132 + 2f8: 1c df rcall .-456 ; 0x132 } frame[2] = 15; - 2d8: f0 92 80 00 sts 0x0080, r15 + 2fa: f0 92 80 00 sts 0x0080, r15 frame[4] = 14; - 2dc: 10 93 82 00 sts 0x0082, r17 + 2fe: 10 93 82 00 sts 0x0082, r17 for(uint8_t k=0;k<5;k++) { render(); - 2e0: 1c df rcall .-456 ; 0x11a - 2e2: 1b df rcall .-458 ; 0x11a - 2e4: 1a df rcall .-460 ; 0x11a - 2e6: 19 df rcall .-462 ; 0x11a - 2e8: 18 df rcall .-464 ; 0x11a - 2ea: 01 50 subi r16, 0x01 ; 1 + 302: 17 df rcall .-466 ; 0x132 + 304: 16 df rcall .-468 ; 0x132 + 306: 15 df rcall .-470 ; 0x132 + 308: 14 df rcall .-472 ; 0x132 + 30a: 13 df rcall .-474 ; 0x132 + 30c: 01 50 subi r16, 0x01 ; 1 } } void enderand() { frame[0] = 10; for(uint8_t j=0;j<41;j++) { - 2ec: b1 f6 brne .-84 ; 0x29a + 30e: b1 f6 brne .-84 ; 0x2bc frame[4] = 14; for(uint8_t k=0;k<5;k++) { render(); } } } - 2ee: 1f 91 pop r17 - 2f0: 0f 91 pop r16 - 2f2: ff 90 pop r15 - 2f4: ef 90 pop r14 - 2f6: df 90 pop r13 - 2f8: 08 95 ret + 310: 1f 91 pop r17 + 312: 0f 91 pop r16 + 314: ff 90 pop r15 + 316: ef 90 pop r14 + 318: df 90 pop r13 + 31a: 08 95 ret -000002fa : +0000031c : void endeblink() { - 2fa: 7f 92 push r7 - 2fc: 8f 92 push r8 - 2fe: 9f 92 push r9 - 300: af 92 push r10 - 302: bf 92 push r11 - 304: cf 92 push r12 - 306: df 92 push r13 - 308: ef 92 push r14 - 30a: ff 92 push r15 - 30c: 0f 93 push r16 - 30e: 1f 93 push r17 - 310: cf 93 push r28 - 312: df 93 push r29 + 31c: 7f 92 push r7 + 31e: 8f 92 push r8 + 320: 9f 92 push r9 + 322: af 92 push r10 + 324: bf 92 push r11 + 326: cf 92 push r12 + 328: df 92 push r13 + 32a: ef 92 push r14 + 32c: ff 92 push r15 + 32e: 0f 93 push r16 + 330: 1f 93 push r17 + 332: cf 93 push r28 + 334: df 93 push r29 frame[0] = 10; - 314: 8a e0 ldi r24, 0x0A ; 10 - 316: 80 93 7e 00 sts 0x007E, r24 - 31a: 06 e0 ldi r16, 0x06 ; 6 - 31c: 10 e0 ldi r17, 0x00 ; 0 - 31e: c0 e0 ldi r28, 0x00 ; 0 - 320: d0 e0 ldi r29, 0x00 ; 0 + 336: 8a e0 ldi r24, 0x0A ; 10 + 338: 80 93 7e 00 sts 0x007E, r24 + 33c: 06 e0 ldi r16, 0x06 ; 6 + 33e: 10 e0 ldi r17, 0x00 ; 0 + 340: c0 e0 ldi r28, 0x00 ; 0 + 342: d0 e0 ldi r29, 0x00 ; 0 for(uint8_t j=0;j<44;j++) { frame[2] = 15; - 322: 2f e0 ldi r18, 0x0F ; 15 - 324: c2 2e mov r12, r18 + 344: 2f e0 ldi r18, 0x0F ; 15 + 346: c2 2e mov r12, r18 frame[3] = 16; - 326: 90 e1 ldi r25, 0x10 ; 16 - 328: a9 2e mov r10, r25 + 348: 90 e1 ldi r25, 0x10 ; 16 + 34a: a9 2e mov r10, r25 frame[4] = 17; - 32a: 81 e1 ldi r24, 0x11 ; 17 - 32c: b8 2e mov r11, r24 + 34c: 81 e1 ldi r24, 0x11 ; 17 + 34e: b8 2e mov r11, r24 frame[5] = 15; for(uint8_t k=0;k<6+(j*2);k++) { if(k%3==0) { - 32e: b3 e0 ldi r27, 0x03 ; 3 - 330: 8b 2e mov r8, r27 + 350: b3 e0 ldi r27, 0x03 ; 3 + 352: 8b 2e mov r8, r27 frame[2] = 15; frame[3] = 16; frame[4] = 17; frame[5] = 15; } else { frame[0] = 14; - 332: ae e0 ldi r26, 0x0E ; 14 - 334: da 2e mov r13, r26 + 354: ae e0 ldi r26, 0x0E ; 14 + 356: da 2e mov r13, r26 frame[4] = 17; frame[5] = 15; for(uint8_t k=0;k<6+(j*2);k++) { if(k%3==0) { if(frame[2] == 14) { frame[0] = 10; - 336: fa e0 ldi r31, 0x0A ; 10 - 338: 9f 2e mov r9, r31 + 358: fa e0 ldi r31, 0x0A ; 10 + 35a: 9f 2e mov r9, r31 } void endeblink() { frame[0] = 10; for(uint8_t j=0;j<44;j++) { frame[2] = 15; - 33a: c0 92 80 00 sts 0x0080, r12 + 35c: c0 92 80 00 sts 0x0080, r12 frame[3] = 16; - 33e: a0 92 81 00 sts 0x0081, r10 + 360: a0 92 81 00 sts 0x0081, r10 frame[4] = 17; - 342: b0 92 82 00 sts 0x0082, r11 + 364: b0 92 82 00 sts 0x0082, r11 frame[5] = 15; - 346: c0 92 83 00 sts 0x0083, r12 + 368: c0 92 83 00 sts 0x0083, r12 for(uint8_t k=0;k<6+(j*2);k++) { - 34a: ee 24 eor r14, r14 - 34c: 20 c0 rjmp .+64 ; 0x38e + 36c: ee 24 eor r14, r14 + 36e: 20 c0 rjmp .+64 ; 0x3b0 if(k%3==0) { - 34e: 8e 2d mov r24, r14 - 350: 68 2d mov r22, r8 - 352: 62 d1 rcall .+708 ; 0x618 <__udivmodqi4> - 354: 99 23 and r25, r25 - 356: c9 f4 brne .+50 ; 0x38a + 370: 8e 2d mov r24, r14 + 372: 68 2d mov r22, r8 + 374: 72 d1 rcall .+740 ; 0x65a <__udivmodqi4> + 376: 99 23 and r25, r25 + 378: c9 f4 brne .+50 ; 0x3ac if(frame[2] == 14) { - 358: 80 91 80 00 lds r24, 0x0080 - 35c: 8e 30 cpi r24, 0x0E ; 14 - 35e: 59 f4 brne .+22 ; 0x376 + 37a: 80 91 80 00 lds r24, 0x0080 + 37e: 8e 30 cpi r24, 0x0E ; 14 + 380: 59 f4 brne .+22 ; 0x398 frame[0] = 10; - 360: 90 92 7e 00 sts 0x007E, r9 + 382: 90 92 7e 00 sts 0x007E, r9 frame[2] = 15; - 364: c0 92 80 00 sts 0x0080, r12 + 386: c0 92 80 00 sts 0x0080, r12 frame[3] = 16; - 368: a0 92 81 00 sts 0x0081, r10 + 38a: a0 92 81 00 sts 0x0081, r10 frame[4] = 17; - 36c: b0 92 82 00 sts 0x0082, r11 + 38e: b0 92 82 00 sts 0x0082, r11 frame[5] = 15; - 370: c0 92 83 00 sts 0x0083, r12 - 374: 0a c0 rjmp .+20 ; 0x38a + 392: c0 92 83 00 sts 0x0083, r12 + 396: 0a c0 rjmp .+20 ; 0x3ac } else { frame[0] = 14; - 376: d0 92 7e 00 sts 0x007E, r13 + 398: d0 92 7e 00 sts 0x007E, r13 frame[2] = 14; - 37a: d0 92 80 00 sts 0x0080, r13 + 39c: d0 92 80 00 sts 0x0080, r13 frame[3] = 14; - 37e: d0 92 81 00 sts 0x0081, r13 + 3a0: d0 92 81 00 sts 0x0081, r13 frame[4] = 14; - 382: d0 92 82 00 sts 0x0082, r13 + 3a4: d0 92 82 00 sts 0x0082, r13 frame[5] = 14; - 386: d0 92 83 00 sts 0x0083, r13 + 3a8: d0 92 83 00 sts 0x0083, r13 } } render(); - 38a: c7 de rcall .-626 ; 0x11a + 3ac: c2 de rcall .-636 ; 0x132 for(uint8_t j=0;j<44;j++) { frame[2] = 15; frame[3] = 16; frame[4] = 17; frame[5] = 15; for(uint8_t k=0;k<6+(j*2);k++) { - 38c: e3 94 inc r14 - 38e: 8e 2d mov r24, r14 - 390: 90 e0 ldi r25, 0x00 ; 0 - 392: 80 17 cp r24, r16 - 394: 91 07 cpc r25, r17 - 396: dc f2 brlt .-74 ; 0x34e + 3ae: e3 94 inc r14 + 3b0: 8e 2d mov r24, r14 + 3b2: 90 e0 ldi r25, 0x00 ; 0 + 3b4: 80 17 cp r24, r16 + 3b6: 91 07 cpc r25, r17 + 3b8: dc f2 brlt .-74 ; 0x370 frame[5] = 14; } } render(); } frame[2] = 14; - 398: d0 92 80 00 sts 0x0080, r13 + 3ba: d0 92 80 00 sts 0x0080, r13 frame[3] = 14; - 39c: d0 92 81 00 sts 0x0081, r13 + 3be: d0 92 81 00 sts 0x0081, r13 frame[4] = 14; - 3a0: d0 92 82 00 sts 0x0082, r13 + 3c2: d0 92 82 00 sts 0x0082, r13 frame[5] = 14; - 3a4: d0 92 83 00 sts 0x0083, r13 + 3c6: d0 92 83 00 sts 0x0083, r13 for(uint8_t k=0;k<5+j;k++) { - 3a8: 77 24 eor r7, r7 + 3ca: 77 24 eor r7, r7 render(); } } } void endeblink() { - 3aa: e4 e0 ldi r30, 0x04 ; 4 - 3ac: ee 2e mov r14, r30 - 3ae: f1 2c mov r15, r1 - 3b0: ec 0e add r14, r28 - 3b2: fd 1e adc r15, r29 + 3cc: e4 e0 ldi r30, 0x04 ; 4 + 3ce: ee 2e mov r14, r30 + 3d0: f1 2c mov r15, r1 + 3d2: ec 0e add r14, r28 + 3d4: fd 1e adc r15, r29 } frame[2] = 14; frame[3] = 14; frame[4] = 14; frame[5] = 14; for(uint8_t k=0;k<5+j;k++) { - 3b4: 02 c0 rjmp .+4 ; 0x3ba + 3d6: 02 c0 rjmp .+4 ; 0x3dc render(); - 3b6: b1 de rcall .-670 ; 0x11a + 3d8: ac de rcall .-680 ; 0x132 } frame[2] = 14; frame[3] = 14; frame[4] = 14; frame[5] = 14; for(uint8_t k=0;k<5+j;k++) { - 3b8: 73 94 inc r7 - 3ba: 87 2d mov r24, r7 - 3bc: 90 e0 ldi r25, 0x00 ; 0 - 3be: e8 16 cp r14, r24 - 3c0: f9 06 cpc r15, r25 - 3c2: cc f7 brge .-14 ; 0x3b6 - 3c4: 21 96 adiw r28, 0x01 ; 1 - 3c6: 0e 5f subi r16, 0xFE ; 254 - 3c8: 1f 4f sbci r17, 0xFF ; 255 + 3da: 73 94 inc r7 + 3dc: 87 2d mov r24, r7 + 3de: 90 e0 ldi r25, 0x00 ; 0 + 3e0: e8 16 cp r14, r24 + 3e2: f9 06 cpc r15, r25 + 3e4: cc f7 brge .-14 ; 0x3d8 + 3e6: 21 96 adiw r28, 0x01 ; 1 + 3e8: 0e 5f subi r16, 0xFE ; 254 + 3ea: 1f 4f sbci r17, 0xFF ; 255 } } void endeblink() { frame[0] = 10; for(uint8_t j=0;j<44;j++) { - 3ca: cc 32 cpi r28, 0x2C ; 44 - 3cc: d1 05 cpc r29, r1 - 3ce: 09 f0 breq .+2 ; 0x3d2 - 3d0: b4 cf rjmp .-152 ; 0x33a + 3ec: cc 32 cpi r28, 0x2C ; 44 + 3ee: d1 05 cpc r29, r1 + 3f0: 09 f0 breq .+2 ; 0x3f4 + 3f2: b4 cf rjmp .-152 ; 0x35c frame[5] = 14; for(uint8_t k=0;k<5+j;k++) { render(); } } } - 3d2: df 91 pop r29 - 3d4: cf 91 pop r28 - 3d6: 1f 91 pop r17 - 3d8: 0f 91 pop r16 - 3da: ff 90 pop r15 - 3dc: ef 90 pop r14 - 3de: df 90 pop r13 - 3e0: cf 90 pop r12 - 3e2: bf 90 pop r11 - 3e4: af 90 pop r10 - 3e6: 9f 90 pop r9 - 3e8: 8f 90 pop r8 - 3ea: 7f 90 pop r7 - 3ec: 08 95 ret + 3f4: df 91 pop r29 + 3f6: cf 91 pop r28 + 3f8: 1f 91 pop r17 + 3fa: 0f 91 pop r16 + 3fc: ff 90 pop r15 + 3fe: ef 90 pop r14 + 400: df 90 pop r13 + 402: cf 90 pop r12 + 404: bf 90 pop r11 + 406: af 90 pop r10 + 408: 9f 90 pop r9 + 40a: 8f 90 pop r8 + 40c: 7f 90 pop r7 + 40e: 08 95 ret -000003ee : +00000410 : void weihnachten() { - 3ee: ef 92 push r14 - 3f0: ff 92 push r15 - 3f2: 0f 93 push r16 - 3f4: 1f 93 push r17 - 3f6: df 93 push r29 - 3f8: cf 93 push r28 - 3fa: cd b7 in r28, 0x3d ; 61 - 3fc: de b7 in r29, 0x3e ; 62 - 3fe: c4 51 subi r28, 0x14 ; 20 - 400: cd bf out 0x3d, r28 ; 61 + 410: ef 92 push r14 + 412: ff 92 push r15 + 414: 0f 93 push r16 + 416: 1f 93 push r17 + 418: df 93 push r29 + 41a: cf 93 push r28 + 41c: cd b7 in r28, 0x3d ; 61 + 41e: de b7 in r29, 0x3e ; 62 + 420: c4 51 subi r28, 0x14 ; 20 + 422: cd bf out 0x3d, r28 ; 61 uint8_t text1[] = {18,19,20,21,15,14, //Frohe - 402: de 01 movw r26, r28 - 404: 11 96 adiw r26, 0x01 ; 1 - 406: e4 e8 ldi r30, 0x84 ; 132 - 408: f0 e0 ldi r31, 0x00 ; 0 - 40a: 83 e1 ldi r24, 0x13 ; 19 - 40c: 01 90 ld r0, Z+ - 40e: 0d 92 st X+, r0 - 410: 81 50 subi r24, 0x01 ; 1 - 412: e1 f7 brne .-8 ; 0x40c + 424: de 01 movw r26, r28 + 426: 11 96 adiw r26, 0x01 ; 1 + 428: e5 e8 ldi r30, 0x85 ; 133 + 42a: f0 e0 ldi r31, 0x00 ; 0 + 42c: 83 e1 ldi r24, 0x13 ; 19 + 42e: 01 90 ld r0, Z+ + 430: 0d 92 st X+, r0 + 432: 81 50 subi r24, 0x01 ; 1 + 434: e1 f7 brne .-8 ; 0x42e 22,23,15,24,21,16,25,26,21,27,15,16,14}; //Weihnachten frame[0] = 14; - 414: 8e e0 ldi r24, 0x0E ; 14 - 416: 80 93 7e 00 sts 0x007E, r24 + 436: 8e e0 ldi r24, 0x0E ; 14 + 438: 80 93 7e 00 sts 0x007E, r24 frame[1] = 14; - 41a: 80 93 7f 00 sts 0x007F, r24 + 43c: 80 93 7f 00 sts 0x007F, r24 frame[2] = 14; - 41e: 80 93 80 00 sts 0x0080, r24 + 440: 80 93 80 00 sts 0x0080, r24 frame[3] = 14; - 422: 80 93 81 00 sts 0x0081, r24 + 444: 80 93 81 00 sts 0x0081, r24 frame[4] = 14; - 426: 80 93 82 00 sts 0x0082, r24 + 448: 80 93 82 00 sts 0x0082, r24 frame[5] = 14; - 42a: 80 93 83 00 sts 0x0083, r24 - 42e: 4c ef ldi r20, 0xFC ; 252 + 44c: 80 93 83 00 sts 0x0083, r24 + 450: 4c ef ldi r20, 0xFC ; 252 for(uint8_t j=0;j<5;j++) { uint8_t z = i+j-4; if(z>=0 && z < sizeof(text1)) { frame[j+1] = text1[z]; } else { frame[j+1] = 14; - 430: 5e e0 ldi r21, 0x0E ; 14 - 432: e5 2e mov r14, r21 + 452: 5e e0 ldi r21, 0x0E ; 14 + 454: e5 2e mov r14, r21 frame[5] = 14; for(uint8_t i=0;i=0 && z < sizeof(text1)) { frame[j+1] = text1[z]; - 434: 8e 01 movw r16, r28 - 436: 0f 5f subi r16, 0xFF ; 255 - 438: 1f 4f sbci r17, 0xFF ; 255 - 43a: 22 c0 rjmp .+68 ; 0x480 - 43c: 9c 01 movw r18, r24 - 43e: 2f 5f subi r18, 0xFF ; 255 - 440: 3f 4f sbci r19, 0xFF ; 255 + 456: 8e 01 movw r16, r28 + 458: 0f 5f subi r16, 0xFF ; 255 + 45a: 1f 4f sbci r17, 0xFF ; 255 + 45c: 22 c0 rjmp .+68 ; 0x4a2 + 45e: 9c 01 movw r18, r24 + 460: 2f 5f subi r18, 0xFF ; 255 + 462: 3f 4f sbci r19, 0xFF ; 255 frame[4] = 14; frame[5] = 14; for(uint8_t i=0;i=0 && z < sizeof(text1)) { - 442: 53 31 cpi r21, 0x13 ; 19 - 444: 48 f4 brcc .+18 ; 0x458 + 464: 53 31 cpi r21, 0x13 ; 19 + 466: 48 f4 brcc .+18 ; 0x47a frame[j+1] = text1[z]; - 446: f8 01 movw r30, r16 - 448: e5 0f add r30, r21 - 44a: f1 1d adc r31, r1 - 44c: 60 81 ld r22, Z - 44e: 22 58 subi r18, 0x82 ; 130 - 450: 3f 4f sbci r19, 0xFF ; 255 - 452: f9 01 movw r30, r18 - 454: 60 83 st Z, r22 - 456: 04 c0 rjmp .+8 ; 0x460 + 468: f8 01 movw r30, r16 + 46a: e5 0f add r30, r21 + 46c: f1 1d adc r31, r1 + 46e: 60 81 ld r22, Z + 470: 22 58 subi r18, 0x82 ; 130 + 472: 3f 4f sbci r19, 0xFF ; 255 + 474: f9 01 movw r30, r18 + 476: 60 83 st Z, r22 + 478: 04 c0 rjmp .+8 ; 0x482 } else { frame[j+1] = 14; - 458: 22 58 subi r18, 0x82 ; 130 - 45a: 3f 4f sbci r19, 0xFF ; 255 - 45c: f9 01 movw r30, r18 - 45e: e0 82 st Z, r14 - 460: 01 96 adiw r24, 0x01 ; 1 - 462: 5f 5f subi r21, 0xFF ; 255 + 47a: 22 58 subi r18, 0x82 ; 130 + 47c: 3f 4f sbci r19, 0xFF ; 255 + 47e: f9 01 movw r30, r18 + 480: e0 82 st Z, r14 + 482: 01 96 adiw r24, 0x01 ; 1 + 484: 5f 5f subi r21, 0xFF ; 255 frame[2] = 14; frame[3] = 14; frame[4] = 14; frame[5] = 14; for(uint8_t i=0;i - 46a: 3e e1 ldi r19, 0x1E ; 30 - 46c: f3 2e mov r15, r19 + 486: 85 30 cpi r24, 0x05 ; 5 + 488: 91 05 cpc r25, r1 + 48a: 49 f7 brne .-46 ; 0x45e + 48c: 3e e1 ldi r19, 0x1E ; 30 + 48e: f3 2e mov r15, r19 } else { frame[j+1] = 14; } } for(uint8_t k=0;k<30;k++) { render(); - 46e: 4c 8b std Y+20, r20 ; 0x14 - 470: 54 de rcall .-856 ; 0x11a - 472: fa 94 dec r15 + 490: 4c 8b std Y+20, r20 ; 0x14 + 492: 4f de rcall .-866 ; 0x132 + 494: fa 94 dec r15 frame[j+1] = text1[z]; } else { frame[j+1] = 14; } } for(uint8_t k=0;k<30;k++) { - 474: 4c 89 ldd r20, Y+20 ; 0x14 - 476: ff 20 and r15, r15 - 478: d1 f7 brne .-12 ; 0x46e - 47a: 4f 5f subi r20, 0xFF ; 255 + 496: 4c 89 ldd r20, Y+20 ; 0x14 + 498: ff 20 and r15, r15 + 49a: d1 f7 brne .-12 ; 0x490 + 49c: 4f 5f subi r20, 0xFF ; 255 frame[1] = 14; frame[2] = 14; frame[3] = 14; frame[4] = 14; frame[5] = 14; for(uint8_t i=0;i + 49e: 44 31 cpi r20, 0x14 ; 20 + 4a0: 21 f0 breq .+8 ; 0x4aa render(); } } } void weihnachten() { - 480: 54 2f mov r21, r20 - 482: 80 e0 ldi r24, 0x00 ; 0 - 484: 90 e0 ldi r25, 0x00 ; 0 - 486: da cf rjmp .-76 ; 0x43c + 4a2: 54 2f mov r21, r20 + 4a4: 80 e0 ldi r24, 0x00 ; 0 + 4a6: 90 e0 ldi r25, 0x00 ; 0 + 4a8: da cf rjmp .-76 ; 0x45e } for(uint8_t k=0;k<30;k++) { render(); } } } - 488: cc 5e subi r28, 0xEC ; 236 - 48a: cd bf out 0x3d, r28 ; 61 - 48c: cf 91 pop r28 - 48e: df 91 pop r29 - 490: 1f 91 pop r17 - 492: 0f 91 pop r16 - 494: ff 90 pop r15 - 496: ef 90 pop r14 - 498: 08 95 ret + 4aa: cc 5e subi r28, 0xEC ; 236 + 4ac: cd bf out 0x3d, r28 ; 61 + 4ae: cf 91 pop r28 + 4b0: df 91 pop r29 + 4b2: 1f 91 pop r17 + 4b4: 0f 91 pop r16 + 4b6: ff 90 pop r15 + 4b8: ef 90 pop r14 + 4ba: 08 95 ret -0000049a : +000004bc : void blink2013() { - 49a: cf 92 push r12 - 49c: df 92 push r13 - 49e: ef 92 push r14 - 4a0: ff 92 push r15 - 4a2: 0f 93 push r16 - 4a4: 1f 93 push r17 + 4bc: cf 92 push r12 + 4be: df 92 push r13 + 4c0: ef 92 push r14 + 4c2: ff 92 push r15 + 4c4: 0f 93 push r16 + 4c6: 1f 93 push r17 frame[0] = 14; - 4a6: 8e e0 ldi r24, 0x0E ; 14 - 4a8: 80 93 7e 00 sts 0x007E, r24 + 4c8: 8e e0 ldi r24, 0x0E ; 14 + 4ca: 80 93 7e 00 sts 0x007E, r24 frame[1] = 14; - 4ac: 80 93 7f 00 sts 0x007F, r24 - 4b0: 0e e1 ldi r16, 0x1E ; 30 + 4ce: 80 93 7f 00 sts 0x007F, r24 + 4d2: 0e e1 ldi r16, 0x1E ; 30 for(uint8_t i=0;i<30;i++) { frame[2] = 2; - 4b2: f2 e0 ldi r31, 0x02 ; 2 - 4b4: cf 2e mov r12, r31 + 4d4: f2 e0 ldi r31, 0x02 ; 2 + 4d6: cf 2e mov r12, r31 frame[3] = 0; frame[4] = 1; - 4b6: dd 24 eor r13, r13 - 4b8: d3 94 inc r13 + 4d8: dd 24 eor r13, r13 + 4da: d3 94 inc r13 frame[5] = 3; - 4ba: e3 e0 ldi r30, 0x03 ; 3 - 4bc: ee 2e mov r14, r30 + 4dc: e3 e0 ldi r30, 0x03 ; 3 + 4de: ee 2e mov r14, r30 for(uint8_t k=0;k<20;k++) { render(); } frame[2] = 14; - 4be: 1e e0 ldi r17, 0x0E ; 14 + 4e0: 1e e0 ldi r17, 0x0E ; 14 void blink2013() { frame[0] = 14; frame[1] = 14; for(uint8_t i=0;i<30;i++) { frame[2] = 2; - 4c0: c0 92 80 00 sts 0x0080, r12 + 4e2: c0 92 80 00 sts 0x0080, r12 frame[3] = 0; - 4c4: 10 92 81 00 sts 0x0081, r1 + 4e6: 10 92 81 00 sts 0x0081, r1 frame[4] = 1; - 4c8: d0 92 82 00 sts 0x0082, r13 + 4ea: d0 92 82 00 sts 0x0082, r13 frame[5] = 3; - 4cc: e0 92 83 00 sts 0x0083, r14 - 4d0: 74 e1 ldi r23, 0x14 ; 20 - 4d2: f7 2e mov r15, r23 + 4ee: e0 92 83 00 sts 0x0083, r14 + 4f2: 74 e1 ldi r23, 0x14 ; 20 + 4f4: f7 2e mov r15, r23 for(uint8_t k=0;k<20;k++) { render(); - 4d4: 22 de rcall .-956 ; 0x11a - 4d6: fa 94 dec r15 + 4f6: 1d de rcall .-966 ; 0x132 + 4f8: fa 94 dec r15 for(uint8_t i=0;i<30;i++) { frame[2] = 2; frame[3] = 0; frame[4] = 1; frame[5] = 3; for(uint8_t k=0;k<20;k++) { - 4d8: e9 f7 brne .-6 ; 0x4d4 + 4fa: e9 f7 brne .-6 ; 0x4f6 render(); } frame[2] = 14; - 4da: 10 93 80 00 sts 0x0080, r17 + 4fc: 10 93 80 00 sts 0x0080, r17 frame[3] = 14; - 4de: 10 93 81 00 sts 0x0081, r17 + 500: 10 93 81 00 sts 0x0081, r17 frame[4] = 14; - 4e2: 10 93 82 00 sts 0x0082, r17 + 504: 10 93 82 00 sts 0x0082, r17 frame[5] = 14; - 4e6: 10 93 83 00 sts 0x0083, r17 - 4ea: 64 e1 ldi r22, 0x14 ; 20 - 4ec: f6 2e mov r15, r22 + 508: 10 93 83 00 sts 0x0083, r17 + 50c: 64 e1 ldi r22, 0x14 ; 20 + 50e: f6 2e mov r15, r22 for(uint8_t k=0;k<20;k++) { render(); - 4ee: 15 de rcall .-982 ; 0x11a - 4f0: fa 94 dec r15 + 510: 10 de rcall .-992 ; 0x132 + 512: fa 94 dec r15 } frame[2] = 14; frame[3] = 14; frame[4] = 14; frame[5] = 14; for(uint8_t k=0;k<20;k++) { - 4f2: e9 f7 brne .-6 ; 0x4ee - 4f4: 01 50 subi r16, 0x01 ; 1 + 514: e9 f7 brne .-6 ; 0x510 + 516: 01 50 subi r16, 0x01 ; 1 } void blink2013() { frame[0] = 14; frame[1] = 14; for(uint8_t i=0;i<30;i++) { - 4f6: 21 f7 brne .-56 ; 0x4c0 + 518: 21 f7 brne .-56 ; 0x4e2 frame[5] = 14; for(uint8_t k=0;k<20;k++) { render(); } } } - 4f8: 1f 91 pop r17 - 4fa: 0f 91 pop r16 - 4fc: ff 90 pop r15 - 4fe: ef 90 pop r14 - 500: df 90 pop r13 - 502: cf 90 pop r12 - 504: 08 95 ret + 51a: 1f 91 pop r17 + 51c: 0f 91 pop r16 + 51e: ff 90 pop r15 + 520: ef 90 pop r14 + 522: df 90 pop r13 + 524: cf 90 pop r12 + 526: 08 95 ret -00000506 <__vector_13>: +00000528 <__vector_13>: ISR(TIMER0_COMPA_vect) { - 506: 1f 92 push r1 - 508: 0f 92 push r0 - 50a: 0f b6 in r0, 0x3f ; 63 - 50c: 0f 92 push r0 - 50e: 11 24 eor r1, r1 - 510: 8f 93 push r24 - 512: 9f 93 push r25 + 528: 1f 92 push r1 + 52a: 0f 92 push r0 + 52c: 0f b6 in r0, 0x3f ; 63 + 52e: 0f 92 push r0 + 530: 11 24 eor r1, r1 + 532: 6f 93 push r22 + 534: 7f 93 push r23 + 536: 8f 93 push r24 + 538: 9f 93 push r25 if (timer_delay == 30) { //wenn Zustand mindestens 30x32,512ms = 0,97536sec. andauert - 514: 80 91 98 00 lds r24, 0x0098 - 518: 8e 31 cpi r24, 0x1E ; 30 - 51a: 11 f4 brne .+4 ; 0x520 <__vector_13+0x1a> + 53a: 80 91 98 00 lds r24, 0x0098 + 53e: 8e 31 cpi r24, 0x1E ; 30 + 540: 11 f4 brne .+4 ; 0x546 <__vector_13+0x1e> OCR0A = 193; //Restliche Sekunde abwarten - 51c: 81 ec ldi r24, 0xC1 ; 193 - 51e: 86 bf out 0x36, r24 ; 54 + 542: 81 ec ldi r24, 0xC1 ; 193 + 544: 86 bf out 0x36, r24 ; 54 } if(timer_delay == 31) { //wenn Zustand 1,00006400s gedauert hat ... 64µs Fehler! - 520: 80 91 98 00 lds r24, 0x0098 - 524: 8f 31 cpi r24, 0x1F ; 31 - 526: 09 f0 breq .+2 ; 0x52a <__vector_13+0x24> - 528: 45 c0 rjmp .+138 ; 0x5b4 <__vector_13+0xae> + 546: 80 91 98 00 lds r24, 0x0098 + 54a: 8f 31 cpi r24, 0x1F ; 31 + 54c: 09 f0 breq .+2 ; 0x550 <__vector_13+0x28> + 54e: 45 c0 rjmp .+138 ; 0x5da <__vector_13+0xb2> timer_delay = 0; - 52a: 10 92 98 00 sts 0x0098, r1 + 550: 10 92 98 00 sts 0x0098, r1 OCR0A = 254; - 52e: 8e ef ldi r24, 0xFE ; 254 - 530: 86 bf out 0x36, r24 ; 54 + 554: 8e ef ldi r24, 0xFE ; 254 + 556: 86 bf out 0x36, r24 ; 54 if(frame[5] > 0) { - 532: 80 91 83 00 lds r24, 0x0083 - 536: 88 23 and r24, r24 - 538: 41 f0 breq .+16 ; 0x54a <__vector_13+0x44> + 558: 80 91 83 00 lds r24, 0x0083 + 55c: 88 23 and r24, r24 + 55e: 41 f0 breq .+16 ; 0x570 <__vector_13+0x48> frame[5] = frame[5]--; - 53a: 80 91 83 00 lds r24, 0x0083 - 53e: 80 93 83 00 sts 0x0083, r24 - 542: 81 50 subi r24, 0x01 ; 1 - 544: 80 93 83 00 sts 0x0083, r24 - 548: 2b c0 rjmp .+86 ; 0x5a0 <__vector_13+0x9a> + 560: 80 91 83 00 lds r24, 0x0083 + 564: 80 93 83 00 sts 0x0083, r24 + 568: 81 50 subi r24, 0x01 ; 1 + 56a: 80 93 83 00 sts 0x0083, r24 + 56e: 2b c0 rjmp .+86 ; 0x5c6 <__vector_13+0x9e> } else { frame[5] = 9; - 54a: 89 e0 ldi r24, 0x09 ; 9 - 54c: 80 93 83 00 sts 0x0083, r24 + 570: 89 e0 ldi r24, 0x09 ; 9 + 572: 80 93 83 00 sts 0x0083, r24 if(frame[4] > 0) { - 550: 90 91 82 00 lds r25, 0x0082 - 554: 99 23 and r25, r25 - 556: 41 f0 breq .+16 ; 0x568 <__vector_13+0x62> + 576: 90 91 82 00 lds r25, 0x0082 + 57a: 99 23 and r25, r25 + 57c: 41 f0 breq .+16 ; 0x58e <__vector_13+0x66> frame[4] = frame[4]--; - 558: 80 91 82 00 lds r24, 0x0082 - 55c: 80 93 82 00 sts 0x0082, r24 - 560: 81 50 subi r24, 0x01 ; 1 - 562: 80 93 82 00 sts 0x0082, r24 - 566: 1c c0 rjmp .+56 ; 0x5a0 <__vector_13+0x9a> + 57e: 80 91 82 00 lds r24, 0x0082 + 582: 80 93 82 00 sts 0x0082, r24 + 586: 81 50 subi r24, 0x01 ; 1 + 588: 80 93 82 00 sts 0x0082, r24 + 58c: 1c c0 rjmp .+56 ; 0x5c6 <__vector_13+0x9e> } else { frame[4] = 5; - 568: 95 e0 ldi r25, 0x05 ; 5 - 56a: 90 93 82 00 sts 0x0082, r25 + 58e: 95 e0 ldi r25, 0x05 ; 5 + 590: 90 93 82 00 sts 0x0082, r25 if(frame[3] > 0) { - 56e: 90 91 81 00 lds r25, 0x0081 - 572: 99 23 and r25, r25 - 574: 41 f0 breq .+16 ; 0x586 <__vector_13+0x80> + 594: 90 91 81 00 lds r25, 0x0081 + 598: 99 23 and r25, r25 + 59a: 41 f0 breq .+16 ; 0x5ac <__vector_13+0x84> frame[3] = frame[3]--; - 576: 80 91 81 00 lds r24, 0x0081 - 57a: 80 93 81 00 sts 0x0081, r24 - 57e: 81 50 subi r24, 0x01 ; 1 - 580: 80 93 81 00 sts 0x0081, r24 - 584: 0d c0 rjmp .+26 ; 0x5a0 <__vector_13+0x9a> + 59c: 80 91 81 00 lds r24, 0x0081 + 5a0: 80 93 81 00 sts 0x0081, r24 + 5a4: 81 50 subi r24, 0x01 ; 1 + 5a6: 80 93 81 00 sts 0x0081, r24 + 5aa: 0d c0 rjmp .+26 ; 0x5c6 <__vector_13+0x9e> } else { frame[3] = 9; - 586: 80 93 81 00 sts 0x0081, r24 + 5ac: 80 93 81 00 sts 0x0081, r24 if(frame[2] > 0) { - 58a: 90 91 80 00 lds r25, 0x0080 - 58e: 99 23 and r25, r25 - 590: 29 f0 breq .+10 ; 0x59c <__vector_13+0x96> + 5b0: 90 91 80 00 lds r25, 0x0080 + 5b4: 99 23 and r25, r25 + 5b6: 29 f0 breq .+10 ; 0x5c2 <__vector_13+0x9a> frame[2] = frame[2]--; - 592: 80 91 80 00 lds r24, 0x0080 - 596: 80 93 80 00 sts 0x0080, r24 - 59a: 81 50 subi r24, 0x01 ; 1 + 5b8: 80 91 80 00 lds r24, 0x0080 + 5bc: 80 93 80 00 sts 0x0080, r24 + 5c0: 81 50 subi r24, 0x01 ; 1 } else { frame[2] = 9; - 59c: 80 93 80 00 sts 0x0080, r24 + 5c2: 80 93 80 00 sts 0x0080, r24 } } } } frame[0] = (frame[0]==14)?11:14; - 5a0: 80 91 7e 00 lds r24, 0x007E - 5a4: 8e 30 cpi r24, 0x0E ; 14 - 5a6: 11 f4 brne .+4 ; 0x5ac <__vector_13+0xa6> - 5a8: 8b e0 ldi r24, 0x0B ; 11 - 5aa: 01 c0 rjmp .+2 ; 0x5ae <__vector_13+0xa8> - 5ac: 8e e0 ldi r24, 0x0E ; 14 - 5ae: 80 93 7e 00 sts 0x007E, r24 - 5b2: 03 c0 rjmp .+6 ; 0x5ba <__vector_13+0xb4> + 5c6: 80 91 7e 00 lds r24, 0x007E + 5ca: 8e 30 cpi r24, 0x0E ; 14 + 5cc: 11 f4 brne .+4 ; 0x5d2 <__vector_13+0xaa> + 5ce: 8b e0 ldi r24, 0x0B ; 11 + 5d0: 01 c0 rjmp .+2 ; 0x5d4 <__vector_13+0xac> + 5d2: 8e e0 ldi r24, 0x0E ; 14 + 5d4: 80 93 7e 00 sts 0x007E, r24 + 5d8: 03 c0 rjmp .+6 ; 0x5e0 <__vector_13+0xb8> frame[3] = (uint8_t)((MIN-j)%10); frame[4] = (uint8_t)((59-i)/10); frame[5] = (uint8_t)((59-i)%10); frame[0] = (i%2==0)?11:14;*/ } else { timer_delay++; - 5b4: 8f 5f subi r24, 0xFF ; 255 - 5b6: 80 93 98 00 sts 0x0098, r24 + 5da: 8f 5f subi r24, 0xFF ; 255 + 5dc: 80 93 98 00 sts 0x0098, r24 } - + if(timer_delay%3 == 0) + 5e0: 80 91 98 00 lds r24, 0x0098 + 5e4: 63 e0 ldi r22, 0x03 ; 3 + 5e6: 39 d0 rcall .+114 ; 0x65a <__udivmodqi4> + 5e8: 99 23 and r25, r25 + 5ea: 39 f4 brne .+14 ; 0x5fa <__vector_13+0xd2> + frame[6] = (frame[6]==0)?1:0; + 5ec: 90 91 84 00 lds r25, 0x0084 + 5f0: 81 e0 ldi r24, 0x01 ; 1 + 5f2: 91 11 cpse r25, r1 + 5f4: 80 e0 ldi r24, 0x00 ; 0 + 5f6: 80 93 84 00 sts 0x0084, r24 } - 5ba: 9f 91 pop r25 - 5bc: 8f 91 pop r24 - 5be: 0f 90 pop r0 - 5c0: 0f be out 0x3f, r0 ; 63 - 5c2: 0f 90 pop r0 - 5c4: 1f 90 pop r1 - 5c6: 18 95 reti + 5fa: 9f 91 pop r25 + 5fc: 8f 91 pop r24 + 5fe: 7f 91 pop r23 + 600: 6f 91 pop r22 + 602: 0f 90 pop r0 + 604: 0f be out 0x3f, r0 ; 63 + 606: 0f 90 pop r0 + 608: 1f 90 pop r1 + 60a: 18 95 reti + +0000060c
: + -000005c8
: int main(void) { DDRB = 0; - 5c8: 17 ba out 0x17, r1 ; 23 + 60c: 17 ba out 0x17, r1 ; 23 while(1){ //Warten bis Startknopf start(); - 5ca: 08 de rcall .-1008 ; 0x1dc + 60e: f7 dd rcall .-1042 ; 0x1fe //Timer 20 nach unten - timerdown(22); - 5cc: 86 e1 ldi r24, 0x16 ; 22 - 5ce: bd dd rcall .-1158 ; 0x14a + timerdown(1); + 610: 81 e0 ldi r24, 0x01 ; 1 + 612: ac dd rcall .-1192 ; 0x16c while(1) { render(); - 5d0: a4 dd rcall .-1208 ; 0x11a + 614: 8e dd rcall .-1252 ; 0x132 if(frame[2] == 0 && frame[3] == 0 && frame[4] == 0 && frame[5] == 0) { - 5d2: 80 91 80 00 lds r24, 0x0080 - 5d6: 88 23 and r24, r24 - 5d8: d9 f7 brne .-10 ; 0x5d0 - 5da: 80 91 81 00 lds r24, 0x0081 - 5de: 88 23 and r24, r24 - 5e0: b9 f7 brne .-18 ; 0x5d0 - 5e2: 80 91 82 00 lds r24, 0x0082 - 5e6: 88 23 and r24, r24 - 5e8: 99 f7 brne .-26 ; 0x5d0 - 5ea: 80 91 83 00 lds r24, 0x0083 - 5ee: 88 23 and r24, r24 - 5f0: 79 f7 brne .-34 ; 0x5d0 + 616: 80 91 80 00 lds r24, 0x0080 + 61a: 88 23 and r24, r24 + 61c: d9 f7 brne .-10 ; 0x614 + 61e: 80 91 81 00 lds r24, 0x0081 + 622: 88 23 and r24, r24 + 624: b9 f7 brne .-18 ; 0x614 + 626: 80 91 82 00 lds r24, 0x0082 + 62a: 88 23 and r24, r24 + 62c: 99 f7 brne .-26 ; 0x614 + 62e: 80 91 83 00 lds r24, 0x0083 + 632: 88 23 and r24, r24 + 634: 79 f7 brne .-34 ; 0x614 TIMSK = 0; - 5f2: 19 be out 0x39, r1 ; 57 - /*for(int i=0;i<5;i++) { - weihnachten(); - } - blink2013();*/ + 636: 19 be out 0x39, r1 ; 57 //Lauflicht 10s; - endelauflicht(); - 5f4: 02 de rcall .-1020 ; 0x1fa + //endelauflicht(); //Lauflicht Rand 10s //enderand(); //Blinklicht endeblink(); - 5f6: 81 de rcall .-766 ; 0x2fa + 638: 71 de rcall .-798 ; 0x31c frame[0] = 10; - 5f8: 8a e0 ldi r24, 0x0A ; 10 - 5fa: 80 93 7e 00 sts 0x007E, r24 + 63a: 8a e0 ldi r24, 0x0A ; 10 + 63c: 80 93 7e 00 sts 0x007E, r24 frame[2] = 15; - 5fe: 8f e0 ldi r24, 0x0F ; 15 - 600: 80 93 80 00 sts 0x0080, r24 + 640: 8f e0 ldi r24, 0x0F ; 15 + 642: 80 93 80 00 sts 0x0080, r24 frame[3] = 16; - 604: 90 e1 ldi r25, 0x10 ; 16 - 606: 90 93 81 00 sts 0x0081, r25 + 646: 90 e1 ldi r25, 0x10 ; 16 + 648: 90 93 81 00 sts 0x0081, r25 frame[4] = 17; - 60a: 91 e1 ldi r25, 0x11 ; 17 - 60c: 90 93 82 00 sts 0x0082, r25 + 64c: 91 e1 ldi r25, 0x11 ; 17 + 64e: 90 93 82 00 sts 0x0082, r25 frame[5] = 15; - 610: 80 93 83 00 sts 0x0083, r24 + 652: 80 93 83 00 sts 0x0083, r24 while(1) { render(); - 614: 82 dd rcall .-1276 ; 0x11a - 616: fe cf rjmp .-4 ; 0x614 + 656: 6d dd rcall .-1318 ; 0x132 + 658: fe cf rjmp .-4 ; 0x656 -00000618 <__udivmodqi4>: - 618: 99 1b sub r25, r25 - 61a: 79 e0 ldi r23, 0x09 ; 9 - 61c: 04 c0 rjmp .+8 ; 0x626 <__udivmodqi4_ep> +0000065a <__udivmodqi4>: + 65a: 99 1b sub r25, r25 + 65c: 79 e0 ldi r23, 0x09 ; 9 + 65e: 04 c0 rjmp .+8 ; 0x668 <__udivmodqi4_ep> -0000061e <__udivmodqi4_loop>: - 61e: 99 1f adc r25, r25 - 620: 96 17 cp r25, r22 - 622: 08 f0 brcs .+2 ; 0x626 <__udivmodqi4_ep> - 624: 96 1b sub r25, r22 +00000660 <__udivmodqi4_loop>: + 660: 99 1f adc r25, r25 + 662: 96 17 cp r25, r22 + 664: 08 f0 brcs .+2 ; 0x668 <__udivmodqi4_ep> + 666: 96 1b sub r25, r22 -00000626 <__udivmodqi4_ep>: - 626: 88 1f adc r24, r24 - 628: 7a 95 dec r23 - 62a: c9 f7 brne .-14 ; 0x61e <__udivmodqi4_loop> - 62c: 80 95 com r24 - 62e: 08 95 ret +00000668 <__udivmodqi4_ep>: + 668: 88 1f adc r24, r24 + 66a: 7a 95 dec r23 + 66c: c9 f7 brne .-14 ; 0x660 <__udivmodqi4_loop> + 66e: 80 95 com r24 + 670: 08 95 ret -00000630 <_exit>: - 630: f8 94 cli +00000672 <_exit>: + 672: f8 94 cli -00000632 <__stop_program>: - 632: ff cf rjmp .-2 ; 0x632 <__stop_program> +00000674 <__stop_program>: + 674: ff cf rjmp .-2 ; 0x674 <__stop_program> diff --git a/Timer/default/Timer.map b/Timer/default/Timer.map index df4203b..aafb1a1 100644 --- a/Timer/default/Timer.map +++ b/Timer/default/Timer.map @@ -118,7 +118,7 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a .rela.plt *(.rela.plt) -.text 0x00000000 0x634 +.text 0x00000000 0x676 *(.vectors) .vectors 0x00000000 0x26 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o 0x00000000 __vector_default @@ -192,35 +192,36 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a 0x00000058 __vector_10 0x00000058 __vector_16 0x00000058 __vector_18 - .text 0x0000005a 0x5be Timer.o + .text 0x0000005a 0x600 Timer.o 0x0000005a display - 0x0000011a render - 0x0000014a timerdown - 0x0000017a timerup - 0x000001dc start - 0x000001fa endelauflicht - 0x0000027a enderand - 0x000002fa endeblink - 0x000003ee weihnachten - 0x0000049a blink2013 - 0x00000506 __vector_13 - 0x000005c8 main - .text 0x00000618 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) - .text 0x00000618 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - .text 0x00000618 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) - .text 0x00000618 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) - 0x00000618 . = ALIGN (0x2) + 0x0000011a beeb + 0x00000132 render + 0x0000016c timerdown + 0x0000019c timerup + 0x000001fe start + 0x0000021c endelauflicht + 0x0000029c enderand + 0x0000031c endeblink + 0x00000410 weihnachten + 0x000004bc blink2013 + 0x00000528 __vector_13 + 0x0000060c main + .text 0x0000065a 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) + .text 0x0000065a 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .text 0x0000065a 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) + .text 0x0000065a 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) + 0x0000065a . = ALIGN (0x2) *(.text.*) - .text.libgcc 0x00000618 0x18 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) - 0x00000618 __udivmodqi4 - .text.libgcc 0x00000630 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - .text.libgcc 0x00000630 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) - .text.libgcc 0x00000630 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) - 0x00000630 . = ALIGN (0x2) + .text.libgcc 0x0000065a 0x18 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) + 0x0000065a __udivmodqi4 + .text.libgcc 0x00000672 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .text.libgcc 0x00000672 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) + .text.libgcc 0x00000672 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) + 0x00000672 . = ALIGN (0x2) *(.fini9) - .fini9 0x00000630 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - 0x00000630 _exit - 0x00000630 exit + .fini9 0x00000672 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + 0x00000672 _exit + 0x00000672 exit *(.fini9) *(.fini8) *(.fini8) @@ -239,27 +240,26 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a *(.fini1) *(.fini1) *(.fini0) - .fini0 0x00000630 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .fini0 0x00000672 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) *(.fini0) - 0x00000634 _etext = . + 0x00000676 _etext = . -.data 0x00800060 0x38 load address 0x00000634 +.data 0x00800060 0x38 load address 0x00000676 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 0x37 Timer.o + .data 0x00800060 0x38 Timer.o 0x00800060 segs 0x0080007e frame - .data 0x00800097 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) - .data 0x00800097 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - .data 0x00800097 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) - .data 0x00800097 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) + .data 0x00800098 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) + .data 0x00800098 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .data 0x00800098 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) + .data 0x00800098 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) *(.data*) *(.rodata) *(.rodata*) *(.gnu.linkonce.d*) 0x00800098 . = ALIGN (0x2) - *fill* 0x00800097 0x1 00 0x00800098 _edata = . 0x00800098 PROVIDE (__data_end, .) @@ -276,8 +276,8 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a *(.bss*) *(COMMON) 0x00800099 PROVIDE (__bss_end, .) - 0x00000634 __data_load_start = LOADADDR (.data) - 0x0000066c __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x00000676 __data_load_start = LOADADDR (.data) + 0x000006ae __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x00800099 0x0 0x00800099 PROVIDE (__noinit_start, .) @@ -343,32 +343,32 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a 0x00000000 0x20 Timer.o .debug_pubnames - 0x00000000 0xd4 + 0x00000000 0xdd *(.debug_pubnames) .debug_pubnames - 0x00000000 0xd4 Timer.o + 0x00000000 0xdd Timer.o -.debug_info 0x00000000 0x696 +.debug_info 0x00000000 0x6eb *(.debug_info) - .debug_info 0x00000000 0x696 Timer.o + .debug_info 0x00000000 0x6eb Timer.o *(.gnu.linkonce.wi.*) -.debug_abbrev 0x00000000 0x1e6 +.debug_abbrev 0x00000000 0x1f5 *(.debug_abbrev) - .debug_abbrev 0x00000000 0x1e6 Timer.o + .debug_abbrev 0x00000000 0x1f5 Timer.o -.debug_line 0x00000000 0x878 +.debug_line 0x00000000 0x8d7 *(.debug_line) - .debug_line 0x00000000 0x878 Timer.o + .debug_line 0x00000000 0x8d7 Timer.o -.debug_frame 0x00000000 0xd0 +.debug_frame 0x00000000 0xe0 *(.debug_frame) - .debug_frame 0x00000000 0xd0 Timer.o + .debug_frame 0x00000000 0xe0 Timer.o -.debug_str 0x00000000 0x180 +.debug_str 0x00000000 0x185 *(.debug_str) - .debug_str 0x00000000 0x180 Timer.o - 0x1b4 (size before relaxing) + .debug_str 0x00000000 0x185 Timer.o + 0x1b9 (size before relaxing) .debug_loc 0x00000000 0x503 *(.debug_loc) diff --git a/Timer/timer.aws b/Timer/timer.aws index dacbc33..c84528e 100644 --- a/Timer/timer.aws +++ b/Timer/timer.aws @@ -1 +1 @@ - +