From cd1215f33d6d9605d83cb82580865880c6ac5447 Mon Sep 17 00:00:00 2001 From: BlubbFish Date: Wed, 19 Dec 2012 11:48:06 +0000 Subject: [PATCH] 20121219-124859 --- Timer/Timer.c | 277 ++++---- Timer/default/Timer.eep | 1 + Timer/default/Timer.elf | Bin 10991 -> 11992 bytes Timer/default/Timer.hex | 121 ++-- Timer/default/Timer.lss | 1397 +++++++++++++++++++++------------------ Timer/default/Timer.map | 100 +-- Timer/timer.aws | 2 +- 7 files changed, 1020 insertions(+), 878 deletions(-) diff --git a/Timer/Timer.c b/Timer/Timer.c index 6e4e382..a7e5282 100644 --- a/Timer/Timer.c +++ b/Timer/Timer.c @@ -53,17 +53,17 @@ void render() { _delay_us(2000); } } - +/* //ISR// (TIMER1_//OVF_vect) ISR(TIMER0_COMPA_vect) { // TCNT1L = 250; - /* Interrupt Aktion alle - (8000000/256)/256 Hz = 122,0703125 Hz - 1/122,0703125 s = 8,192 ms - */ - /*DDRB = 0b10111011; - PORTB = 0b10110011;*/ + // Interrupt Aktion alle + // (8000000/256)/256 Hz = 122,0703125 Hz + // 1/122,0703125 s = 8,192 ms + + // DDRB = 0b10111011; + // PORTB = 0b10110011; if (var++ >= 100) //wenn Zustand mindestens 200x10ms = 2sec. andauert { if(frame[2] == 14) { @@ -77,14 +77,146 @@ ISR(TIMER0_COMPA_vect) } } +}*/ + +void timerdown(uint8_t min) { + frame[0] = 11; + for(uint8_t j=0;j<=min;j++) { + frame[2] = (uint8_t)((MIN-j)/10); + frame[3] = (uint8_t)((MIN-j)%10); + for(uint8_t i=0;i<=59;i++) { + frame[4] = (uint8_t)((59-i)/10); + frame[5] = (uint8_t)((59-i)%10); + frame[0] = (i%2==0)?11:14; + for(uint8_t k=0;k<82;k++) { + render(); + } + } + } } -int main(void) { - DDRB = 0; +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++) { + 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++) { + render(); + } + } + } +} + +void start() { DDRD |= (1<U1@h&js3e$)5uTQ3zScYnDz`PKJ_lD1fO=W*Q+&3ZETqru|j zLx0$tG-BhsABH?IIO5%lUU{$YEBAq9a>>xe9qTt2-Mo*-&HJuPo|RmboD`e#^v&+h zWJNO9WsA+|ozk1%vwzUI!#R`>%TdD?`>trHY)kL{LD#8M_7!C4`izd=4U=x(x6a!z z`uB$|k5m7l$Eg_}r^4g0I@9B3<#Ec>>yw>0zs*HE%dSNXQxU_RPj~d*GHLU^yxy|y zecKb;M<-*+{^Vbc?-uj?eC}Hk+rEw_jXMqwikJ`+cQ_U~D%KAsy861xy7GFrbw|5j z>h9}KbbsGH)Lpc_3?BNn7j?h&T>QB=T(>4Wwui*0<}y?H(B^Sbh;RZSdxujj3iyAKz2_H`u?QBl`W=l7k7&c4obkYA-f>ALtZ6{)#zJf{FPsP=DIHN$DXeT%e>>N zE*UKHX3aeEgEdxO?`^w!?(E&Q?fah39!suY)H!eWya72^H|_juUtVu|W=wCx_ODA0 zx+Wx-4}9RdWZ(#oROHFI6ZM%q8QQjcejbEL}kL0s7Sb>X%orr zc5zDL*W@yzkpb#sk8k+Dj+(#-kD!K&bj^Cn+&%^P^YG zzLP!dz%za39iXqbC*+D-hdCep!k^-|4_p^F67v%466=${jt}w@!I7qp8tvz8Ug!e^rpTg6Q{lGmdyMs=Wept6*rmWwLMr{cI#GV@R)pX3&wA@FFI zrAEvYSt&kCK7T3Jh|@$~N`Jb@Px0Aec#5AP3R8RzvVvJ^#F=75ivLWEO!2v5REp1& z`G8`LI7^I8>CYD9QhdIckm5DMnd0XNq$F8t!~&eN#m^O!Q~W%QpRe%?G=8DR7i#?H z8ox;67i)Zx#xK$Mr5e9X@vAhxSmRe~e2K=d(fCr0|3c%-H15^-a*g{m zUaRpsjn`}3ukjTcZ_s$7#seC^R^ux*-lXwnjkjn#sPR^fU#Ibq#={zqXuM71?HXUD z@zok%qw%#G{}+v4ukl}M{05D$(|Cu**K2%(#&6X4MvdR3@l6`PS>u~Eev8JpX#7@< z-=^`~HNI8j+ce&(@h**bYka%LdovaqY5X3IM>W1% zY{&b4- z8Odj32(=uWLFNvY8u6bd!I5p!dExh|zBS?_?E1}8BR&?VqN7b)dgDpSI?j23XAq&pni75bEZdlz3u+GNH7$hy}%>fjlpKWI}!{wh24#9_2FQP zdsQ&BGTiE`^SgcRq0^=}w6sm9y{^$0XmN)_byQDp3e?uQ>p~HayMag7WpG>TtM>+4 zBK}aQtu;dDOeW?@nQ3kbLM6nCiv_Fd1ku}Jz^?`6}lW&dq6g=c_srQG(xo8my zH2XvK!Bs8d-z}-FRZOxA5svsm5wRMKt($ypE1Cjzjo6uC7}?*~QZF7-LTyu^Wu?f$ zSj{*WQ3n$CH-yDnkQE_cvtM+9wflIXgm@5KMQ_Z6Y&7D)oXgYLs!qdZGAQzlpHuyzVf;667zYsf#*a8=34?8o&u|z< zCJK!8I9hsBhXAuWq0QcegKeW>=XJ?BoBlVZ1K4y9tY!c=rvtb}3t)?3EJUZj7eGDr z|2Tl*#&k3=CK#OP3Q&8uQ?7{P)V zsZ^gyHB@JCj7qv^I2?j2%`peUQqevGNH>kze3gdEW zZ>RQgXuhNtr*##z^z3*WnvbbnDU55V<+WxRZg7ig)EXR#9}zejZxnO1TDDD~I!3~_ z43(qRQ_Dr^m^wWaXpSP0Ff)MB)i)Xs*MWrT4yjz)+BZ9?T>ycbJ`pl*Sp z1J!6BiKyg!&39PJ<3~d^>O`q8k6bW@S6mE}*Jgyl0F4{yFbB@)l()0vPAHC|GUN`1 zaS=KdJqt|?^<^|=fH%=nOLs+YK>aT2C(5*irl+LoW2iqz9aN@mG})jKj&E>0f=XvS zRP)qPxQYDBbSRn$%{$YqVu4>6g8qu zduXCtQM3fddem*o^e9bN(&T8uk&{bjd#T<-HRE~=N8?$>v=-eM7oTyC$Dvq8KZxsj zb~p^h3GDK%^8RaT^C1WapUYP&wS2nFrCNxw#)CK-9~)fEbk8RrhbU!VH^v#qhnqu; zAI5gMbD%Md31tA;;u5PxwirJHGia19Gh3VmC^P%CQIl<7E;@wlSY|flH!P?_RI{~{ zPiAA>{id2X{oLz86!TBXv zhDwhYtZbKI>Zc5M78tN$*3u1gt2H6dWy~FJHJ&q^jfZ6m`pefX=a-naf=nfDOkKqw z=jGGOaTqesjLn9q3pEk1eMJR0vk?Xx79$+3p~JM`>Zkpty_SqOJS7wt7hGK+#K>&n zDH#WU$5(^kz9Uc`EeYmxj3fx)gaYG=9F8~ECDLbnzH~MZJxUGZ{1V#7O~mQD;e330 zp5_jpGhB!XGvvgS>3SQwI@4z`cQ_RykJm|j!3$^{{!>1V@=K`UatZ(JrLCc01CnyH zeFiosmtZY4g`A-xf^j;yJomNZYWcK=;98v)HSu$`~N?Ex!WRvCLu28 ze#BMBM=cd@?mX7G8gVk%kkljZn|w}fTc9a2J1hO5oA^S7UW!YW>V+PDJ>~G&dGZQ7lWomN+HvrjvvqGjc%J(UJOyT1SpI7*z z!qW|3yIhkx3B96v;T2sCG=GjE8xU?TPezt->aS%zjz6S+I1F8TREIWg|Fe zkqM8zJAv%Yd`J0iCEo+&MPqt70k{Wf57WaVs>S09pHj$lLk}^9uPQwgBlS#<#1E97 zS&{PR3cpf%rbOzQ7VRrJ;!&_^KxQpkih+!oxsdW$;Ar3kAY(mI;bfp0^C@8L;Zj(s zka?3Hm^+CzO3$Q8nTeCgq{#lvn3S0{iH%CnbV->h(~OxpnlUp`(y|*!56qL4pHlL( z3SR*79DV~F2Ydxs2z(uQ9PoEQ_J3R9y9z&0__4yz6@H`efWkuxk0|_$LR*#@PY#g& znV^Y<3P&g$1!R01<`G0dmDJ z0MfolA-4#2KQ-K0Q~|jsU=&39ydKDV;RYaQb%Vl<3O6a-tWds58OA6)sciByreXY8 zn9c=IBd3TV6l`tRl@E8OzJc;#`hl_o*M z%v|a%*6VEx^EH}DBhcbS3iHau;;ma#*W?ciBsVMZw6%l-4K4n9XI&%qL@Ru?=xDZW z4vYF=TWynHdujH1@iD-B=Vh$sYp`mMA)A6N4NiGTx#g>C8xE&=BN;E&>BekR=SMn} zZ|8U)$1s7qm0@pvo$TwGiOxzV6;+i`Sa0~|`?h+=_j(aF3wH&EU{;icvul1t@I;Bc zdWL8qunj1VvM_-@g9;Ua%R;k$0&zd8O;khyvgBiRoPvts2oFfQ)Uq-m@-2rwwgQ>K z4Dk!gyb$8$%FLw4#Ae9wWDDGkBBIPz7dClCHcOq}3uzTC7z|F96Y>;Qo%>;Z7nRW* zO||q{uD^ro2W7T&bKrsLOF!kMkeRBeBQBTR6D8J4UKu6UOI{Tvu8_PsN_iYPH8xhG1DNM0Ewwo6_WC9amdI!es+*8$xIX|IS9H%jh_5_xmlL}iq?S@NnV zaf{^DQDUaQZs>ZXy&_87A-N|?WOAiH;x5UnqC_TJo2ZTwGyS~?-J8;$UPhlljw>B8 zDY+*~+%I`$l=!*iRZ-%Xl2=EG)9_HSiS(R)2i*Z_uZR+VklYg`9+JE=N<1uiRg`!{ z^6Drt)1RP!IYvd4m?gOh%r<{EFoG^#b4Xj;Pr)kEe(9wn__EQZ3{k3rsP1& zilAll)z*gm?UsaZn|_O%4_DnDwgd6$QGyRC$zgqwINtG?nx|8{aweION*Sv zvaQfK^$YMy{hVdgY!QvK-A^O2v$G~$vvp`3RFvZa?Iuyhx-|Tz$YCm!{#CR)H)C9i zcdB-(nJ5@XNe~V8wA1zSJLO=hk*wv_9zbtk&GS{go>m$%^&9*c{ zMqpa8r|ufdo~v2epLasK*yUO1GPgB z13P(aA2fMtigRuc4srd=P3aB}oer+Pa)2EiIvYpxOFJ7K9J&xkK5Wf$aOg6NN<28^ z1*WgX!J#I|cc-S&5Z6QQ(d4a=U(salNnX(8y^v#?{4(Ujn%ob0za}Rkzpu&s8on5n z#fiv%0$Th35s-5c?3=1Re~~v5@?_bX>&_5UAzRNw%5KQIKmPZ@l4-vXaUY=WNwW*5Ch}uf}9@z;L!aU{hxrmMz&_WcJUvOt@kPRe;KkBAIE=7 z>ra_qW^{WpL*^G6-98AJ+YBo{-a<9nd=<%?dA-yWV}*@_yd150KReKPqO_YGIA5ni z=Eo|oDaKm~*}5N#(f&-WJ>$Iy@}8`8|0R(1`23Ld`3*yMna$<(+yL2npX7MAK~9fn zm)l9}eUSEF!LIv%2yzZ;t%`RqxK*6E-uocy?O)H3-+{~z;e7OSK0eH_e+Jq5pCspp zTSvx+DMEX@+&b##$E~0)7eY>`fEW+AbLsQ5iSdxr>m^H^2w9JJI^;uYemUQjkoEbV z1-TJ1@qL@~bEejw@y>^=`@1+pz9vI%fXwy5!s{K$uw$DO^y01A7xH4S`WTee80NqAy&n0- zu3qx3P|yrMBKV%(8stvVni8*HZcDA-1b96R<(PluL*||pgW%u$_u<1xmn zjPC}z7xQXB!(SmNpS((RV0|A*jpE^K1zO~kSZ7$34#G1l&1a=Q#lX3C{n5nl$5b}U zA>?No%YWGVoq-DQn3J%+)xah%usMq=iW%@Ke@CHKmpNpxb&Z^_V?Mv6m!SONfiM4JR#`nRtm3QzJ44#%xS`0 fa5zQlLzG&9)^u~}SiC~xTmW)ySR-1EP80tJ(LDz4 literal 10991 zcmb_idvsJqp03-SkdVZ50tiS#(qIH+p!4J@3SvY-S6=D>Mw&dDq$TN&-JS3lm4K*- zBZN+Zz^d(oWr1-OR#!a0I4yf-)^SD?9oJFDwHwqGJ&uw&2oBCn_WSDA?XKkPoc(9( zQ1|pa6SgjH-}sj#F9DCZOku?JWooWd?9h@m1!+B>ZVz}+ck zO$BFL)=3ani8g5)37K_}ve8}%`#RWJS*Ww@L!uL-S4SsA$4AFSuZk8$uZ)h3j)^*> zh0%S{(b4>9UUXFSifC?8;p^RheESzU@n`<~aQy6-=i|0$YWrp31JjPAeRMG=e&CD4 zaU(i9d=T>Ki!b#Qocvw)+2V8Y_=>)TZJV|_9y!kI*5miaua7T^Ul|?$@*~CV@sfC& z%NCu|HNGpO^UOu#31?phESC&h^czQC;kK?b7hOLZe>`)5uG?tq+I;0B$2Yp`M|^m} zia6o#Mw~Dp;siwOuQMZVRT0O(yeZy}`E7OVDZB?`n1C_tez~pd(JQwePwy)1=!Y_q?5$+Dh!rzAb!j6tYjI6uE5q|sVCr3vd`{~}! z-CcVh+Vi*W#}F$ZnojR`9htNu{<*7n(l3pp##QgGQaxmTniF@%--Ip?x>oeKRyg}? z7=sZt+s^&`eb?0wZi=1iyn54rIp4il>^2tV%$Zbv^~LngXVZ_Q@A&q>@Eza2HfYa< zZL+V7`0V(nu7bGp^hwvw(;vCwm|G6!l7r|uh+Y-DE4CuGJhm*BgE2(IEn;bGNo;X! zQEVYJEutsfDi*}%$8L_@6q^T4tB8l!itA%@VzXn{#jcGRi;i5#h!@0n#Lv18pZ<;O z+0&<7jAZpe?}@RiV-sTIW8=_%t?Xk=%o!_;6~sm-`WP7-5gQ)6JT@$5j<8iYV%f3F zVp*|F*~g%GPQ0?{j-tMJw<~`7Mc2KjkGg8(54%>z|I@V~-sy^BUe93khcVtL`uwKI z8Qng)Ve*=uJy-tvym@DrpKlKbVD0aj5$%Dt2ihLA=X`t6zUPxqJGW16kGGB3nfCFY z23pq^RbW+nCw-RnUA`@P?2};UBk(;t{Lh1ai~DeW{^I;>cj3Y>&fGS9amwIxN4h7* z&$#x+KXS3B-1w$q-{is`K2_~lVG(bGJOXknhK-t~QFU-#@mcP(7qbbs1L|D5J|tz!MOmD#dz?-F9WcnDYWI@D#Txu|WZ zEP1F!qFnL`xNecmyi{U$wMwO!B5X>i6jMb?f=`qCBgINFU8E=UGeky$&lFh+evQaZ z@LAZk%~C0@6+;sIIx#H4XN%zpK1c4?6f4E`VpKvuSL7%74Wb~yD}^(`Zxmw_d>-a( zmP&Dx7?ovYX<3G{(eHy=C;}2+jqsH4bzDeVoHU6N+ zw`lw!jX$jMM>M`w0@e22!{HNI2hVU2fayi?;{8sDYyCp5lW z<9jr|SL6Sv@h3I@l*XUdctqpRX#81?Kd15MHNH>d|D^H#8vkdFAJF(gjUUqZ&ousm z#{Wg*FKYZHjUU$d5sm+=#$Qfw?vdOZ1E@uKS!3>CsTBWi5?tw%%nKhT+E$8>@K$b? zN^wd|Oz@bPl;B0i?FoLBaVL3ksHwTQw$|J1S$@MbS5UP2y>&A~rPr1Ux4YF-8}bK& zGv}3x;s$?{r#R&IHwKFvTIzy+U-4RhU`?>Oy4F)%-5Quax!%_@nfBU-YOk+27^tOs za-+AVwzxJBDlM+()wL91YpUzqUSG%)2(&bZ7@Wz(oRpd7RzQB=&e54=Il#2n!r?rm zI&ZMKv3k8&hCCba`06|XaT3%Tvb(fg{2p=>h9btIP0&*x6f;0p2dbMqVi8ztHP;z! zz*XnQWXOgG7o182N8y5z#bykmxBW0L8>UH3dNUx!mWrten=S2mDpOK_PLI!cd0?f~ zq&-bYPkl{78V^yaJILQP?0*CfnjrIqa|OEpwK;A)gHe4Xlo_b7K3E>);GtA$Zc z|GQ9!264F=THaA(%CI(wSo=$rxt8+s$DkU%%hYd}H{w~aHZF%4Y48CtW*Y3~6;#gV z3S%3UOXP}C$y-UoTX?V>=b%`GyM8Td&OO3t;5huKxf#&RqZX4~LoL@UcOo=Xsa+!s zKef-HqBxd8c>*;`BLcP3_$n=}(6pfjXhE}|(DD|laBPJtjQY4Twb3*RLlTa?Q0+rK zpiB?ZbPr9rFF^I0Qg5UB7}dhT?#E$Lvr$K32-|6MoPzc<)Lzx1gIZ2bIKIa90%{f- zaAdn_S|Lq;!!;f1@yhfRO^0a8&4DUksh^|z64k=Nu0KZIg39jq)5h0a(WtzCM$G~U zm;>69u8wrg^^Z4 zU8;SRXcIEn7_;#$raC}1BaGD|q}t{08b+>hRrb(Kdv;!St}(>O8HB&#B9WPS9aMNI zhYNf5%*<;t=i~1wMd|TgpXxG9{rD_rrUBcaRLwE1LKD(m#_TN1c~%yk2d4_g%g`?&x|9)70J-!v*ycq=AcI<$ATv@ z)3{?0N0@II^M{g*9)p!BM!yBgC7hi#D@%yNDRRx6$@ZpxjP7W|z{ctxREWngN}Kqc z4~lW&y9`|Ak7B|I~$ngjlNB%UTu6>_38ktM5YyuK=zs~AZV=}{)k;tJOkS7|Yn ziGOHP?Df?)w$yq4KVucQguIPH-0p4i1YET|uu@T6=Rsa|HDEF#7^*{VGx@BV7H?x{ zvezefTs)jMrjAmDmjfFh6PYQ9%#I_0Az%)$Rq5Lm?gI{o{+P0#02+`_0tq0*mH__4xI6vlyL;P)Aj?UtJ<7wUkO_?~nBW+JNshQh>6zUqGs6*gDLqpgWu`YGQyk+kuTf@hv#()~%xIH= zuLDN_PXalnUnzVGXpZe2FvfUK;Rgzt{TP!Oka$+F!^)3 z1wi&FUj%@BP2l4#U)T*}I5rEL{ISb0e#lO4$512Jq4uE|!q`}ph-y?(YxjL>#kj2+vuUmJc02zgLGhR)h)iDx8CQebJjNCWo31B zO;FVNTWT6T=6OfOK1;N7_R2It~5fdK{Z4@fj*$P%EE;43My0t-T}?ZBheXD zn<$9@WNF93KZ&aA4naPwblg+9UmCJk+2prS^(eE7BK`t73vPOte8>e#M|4VF8X`o?_*-M{ zpo$L}k-5VVKPE6fsP)J*3orxNL}}!mgt^)>KMmD0(p(bZ9&WZ?Wtq9nN0r&qjR(Ov zQTW>oPhi&evQ%-oZP4LE_+@LL+|g7B zEqJ59)^b7M(E8?NVAXA6BL6qx!5G_4;u}sUIKP`)#av3hqM3eNCZ0I?9et$bq-+$q z{OPFl<5`p6(;43?7UzwzIBoQM1t&UyEF1#!Vi~G_Yre-h=^^Q1UaT0`K(sh5_oK0s zL>0@n0J6ntdJ2AbD<6VoWA3#$^_Sqs2g)jzZ8a1Yr|oWhT>Dg0STr=iZw?NA2d&9! zwl$b2=ODU zk!E{Y<22X7?|*v^_>EEPM%)L#H`qWGt6!q^jL|fGtPssumm%O|P&wZm)WN8FyaRa9 zZqgK1Jh=VcVpn&H&o7Hz^=$oL4|~5JXt!2dxyYb9dd@ZC7cYrvkGymCQnFku5E80pP$(YU2h+M z{8dM4u-?A8xSGG8(y6!a7F;VxW$EqXrkX6heQpTJd(qq12zgdw84YnCWd3kv76V_W z@hYatd{J4U$%i4Y(&RTF@6zNR$eT4e4mqUBe}cRWmBopX{T0}#?ED`?85rz1Y2|Zf zhyuvg{zv&L$a?!yO{V>N$cGd0dixe@cJ{|(ydK{-z`h=GvcKNG#|HR60eQV>lOxQ* z6ZI@)>s&Ad@ee}Q$M zT>kxNf4p)%A(z01&j|a=g>3zO<-j>#^XK>`L!OsdKSRubtk0(svc7(NKXl2_nD?t1 zax%VMG(on`LF_*OS&w%=WUDywJo9}|w|5MXpN7nzQu&w8`SN{D_dg8T`Y6Ns{~R*M z!)43G{dxnkKK||j@*g0_)POjiPgQ%WxL#jDPTv0%@hxP%|4WcN)%tNg`ylJxB^;Wn&JPT^F?8WUi z9U9=^^VIX3VLwG#KZR$VHv~m65W-KY&3?YZSqtIz z$oIwMxtRm#_qh==UnUV6A0hGK5V8tCbwI>^#`1pc%vDDuejQa&csJO@Iv*$EmU30R zJ~?%3CJblsX-Q71-%5xc4_2y4MwUM_SnYz=XHPYsextR1Yk*DOKdfc4lPRF`v#xr0 z%r5=S>*d10n0&6}=ToakH)Aw-s+;>S+l*x7GWB&e(V~=nC7&7j$ratnRkPO69Ev%7 t=xWypw@1G2_wQ!9FrOYw2oC0hWUZh!xzdv4a7uYc<;}MGvKmYm{{t?5Ec5^X diff --git a/Timer/default/Timer.hex b/Timer/default/Timer.hex index bcaec8e..4a8367b 100644 --- a/Timer/default/Timer.hex +++ b/Timer/default/Timer.hex @@ -1,9 +1,9 @@ :1000000012C02AC029C028C027C026C025C024C0CD -:1000100023C022C021C020C01FC0A4C01DC01CC05E +:1000100023C022C021C020C01FC01EC01DC01CC0E4 :100020001BC01AC019C011241FBECFEDCDBF10E0F8 -:10003000A0E6B0E0E8E9F4E002C005900D92A83730 +:10003000A0E6B0E0E8EFF4E002C005900D92A8372A :10004000B107D9F710E0A8E7B0E001C01D92A937C9 -:10005000B107E1F7AFD01EC2D3CFE82FF0E0E05AEE +:10005000B107E1F712D24EC2D3CFE82FF0E0E05A59 :10006000FF4F8081880F87BB8081880F88BB71E03C :1000700041E050E023C027B3872F90E030E0072E07 :1000800002C0359527950A94E2F7019720FF0AC030 @@ -20,58 +20,65 @@ :100130001F93CF93DF9317E0C0E0D0E0FE01EE58AD :10014000FF4F8081612F89DF8FE99FE00197F1F7F1 :1001500000C0000021961150113081F7DF91CF913E -:100160001F9108951F920F920FB60F9211248F9333 -:100170009F9380917800982F9F5F909378008436AA -:1001800090F0809174008E3039F41092740081E008 -:100190008093750082E005C08EE0809374008093A8 -:1001A0007500809376009F918F910F900FBE0F90F6 -:1001B0001F9018954F925F927F928F929F92AF926D -:1001C000BF92CF92DF92EF92FF920F931F93DF9334 -:1001D000CF930F92CDB7DEB717BA8C9A9498959AB1 -:1001E0008599FECF8BE0809372006DE1A62EB12C35 -:1001F0005AE0E52EF12CC501B70125D160937400BA -:10020000809375000BE310E020E0C801B7011BD11B -:10021000609376008093770020FF02C08EE001C0DB -:100220008BE08093720042E5D42E298381DFDA943B -:100230002981DD20D1F72F5F015010402C3329F7A1 -:100240000894A108B1088FEFA8168FEFB80699F6A9 -:100250008AE0809372000AE03FE0E32E1EE020E196 -:10026000C22E91E1D92EE092740010937500109384 -:100270007600109377005CDF5BDF5ADF59DF58DFD1 -:1002800010937400C092750053DF52DF51DF50DFCE -:100290004FDF10937500D09276004ADF49DF48DFC8 -:1002A00047DF46DF10937600E092770041DF40DFC2 -:1002B0003FDF3EDF3DDF0150B1F60AE01EE08FE098 -:1002C000E82EB0E1CB2EA1E1DA2E1093740010934A -:1002D000750010937600E09277002ADF29DF28DF8F -:1002E00027DF26DF10937700C092750021DF20DF23 -:1002F0001FDF1EDF1DDF10937500D092760018DF20 -:1003000017DF16DF15DF14DFE0927400109376001C -:100310000FDF0EDF0DDF0CDF0BDF0150B1F606E063 -:1003200010E044245524FFE0CF2EE0E1AE2E71E131 -:10033000B72E63E0862E5EE0D52E4AE0942EC09262 -:100340007400A0927500B0927600C0927700EE24FF -:1003500020C08E2D682D6BD09923C9F48091740034 -:100360008E3059F490927200C0927400A092750081 -:10037000B0927600C09277000AC0D0927200D092FC -:100380007400D0927500D0927600D0927700D0DEC3 -:10039000E3948E2D90E080179107DCF2D0927400E8 -:1003A000D0927500D0927600D0927700772434E016 -:1003B000E32EF12CE40CF51C02C0BADE7394872DF9 -:1003C00090E0E816F906CCF70894411C511C0E5F2A -:1003D0001F4FE7E24E16510409F0B1CF2AE0E22E9A -:1003E0009AE0D92ED092720011E0812F6E2D1FD08D -:1003F000809374009093750000E0802F6E2D17D0CD -:10040000809376009093770000FF02C08EE001C0D9 -:100410008AE08093720082E5C82E8ADECA94E9F7EA -:100420000F5F0C3351F71F5F1436F9F6DBCF991BC2 -:1004300079E004C0991F961708F0961B881F7A95DB -:10044000C9F78095089597FB092E07260AD077FDF6 -:1004500004D00CD006D000201AF4709561957F4F1F -:100460000895F6F7909581959F4F0895AA1BBB1BA1 -:1004700051E107C0AA1FBB1FA617B70710F0A61BA4 -:10048000B70B881F991F5A95A9F780959095BC01C5 -:08049000CD010895F894FFCF9F -:100498003F065B4F666D7D077F6F4070467600793B -:0804A800375E0E0E0E0E0E0E63 +:100160001F9108958F929F92BF92CF92DF92EF924C +:10017000FF920F931F93DF93CF930F92CDB7DEB70C +:10018000C82E8BE080937200DD242DE1E22EF12C4D +:100190000AE010E0C7018D199109B80184D160937C +:1001A0007400809375009BE3892E912C20E0C4019C +:1001B000B80179D1609376008093770020FF02C068 +:1001C0008EE001C08BE08093720082E5B82E298317 +:1001D000AFDFBA942981BB20D1F72F5F0894810843 +:1001E00091082C3321F7D394CD14A0F60F90CF9122 +:1001F000DF911F910F91FF90EF90DF90CF90BF9014 +:100200009F908F900895EF92FF920F931F939AE023 +:1002100090937200082F4AE0F42E1FC0802F6F2D9C +:1002200036D1809374009093750010E0812F6F2D6C +:100230002ED1809376009093770010FF02C08EE05D +:1002400001C08AE08093720032E5E32E71DFEA9408 +:10025000E9F71F5F1C3351F70F5F0436F8F21F9167 +:100260000F91FF90EF9008958C9A9498959A8FEF44 +:1002700094E3ACE081509040A040E1F700C0000062 +:100280008599FECF0895DF92EF92FF920F931F930F +:100290008AE08093720009E27FE0F72E1EE060E1C1 +:1002A000D62E51E1E52EF092740010937500109354 +:1002B0007600109377003CDF3BDF3ADF39DF38DF31 +:1002C00010937400D092750033DF32DF31DF30DFFE +:1002D0002FDF10937500E09276002ADF29DF28DFF8 +:1002E00027DF26DF10937600F092770021DF20DFF2 +:1002F0001FDF1EDF1DDF0150B1F61F910F91FF9030 +:10030000EF90DF900895DF92EF92FF920F931F938B +:100310008AE08093720009E21EE0AFE0FA2EF0E17D +:10032000DF2EE1E1EE2E1093740010937500109310 +:100330007600F0927700FCDEFBDEFADEF9DEF8DE16 +:1003400010937700D0927500F3DEF2DEF1DEF0DE7E +:10035000EFDE10937500E0927600EADEE9DEE8DE7B +:10036000E7DEE6DEF092740010937600E1DEE0DE78 +:10037000DFDEDEDEDDDE0150B1F61F910F91FF9072 +:10038000EF90DF9008957F928F929F92AF92BF92ED +:10039000CF92DF92EF92FF920F931F93CF93DF9351 +:1003A0008AE08093720006E010E0C0E0D0E05FE0F9 +:1003B000C52E40E1A42E31E1B32E23E0822E9EE033 +:1003C000D92E8AE0982EC0927400A0927500B09247 +:1003D0007600C0927700EE2420C08E2D682D57D075 +:1003E0009923C9F4809174008E3059F49092720070 +:1003F000C0927400A0927500B0927600C09277000F +:100400000AC0D0927200D0927400D0927500D0923F +:100410007600D09277008CDEE3948E2D90E08017EA +:100420009107DCF2D0927400D0927500D0927600E1 +:10043000D09277007724B4E0EB2EF12CEC0EFD1E69 +:1004400002C076DE7394872D90E0E816F906CCF7AB +:1004500021960E5F1F4FCC32D10509F0B4CFDF914A +:10046000CF911F910F91FF90EF90DF90CF90BF90B1 +:10047000AF909F908F907F90089517BAF5DE8DE131 +:1004800071DE01DF40DF7FDF81E0BDDEF7CF991B4A +:1004900079E004C0991F961708F0961B881F7A957B +:1004A000C9F78095089597FB092E07260AD077FD96 +:1004B00004D00CD006D000201AF4709561957F4FBF +:1004C0000895F6F7909581959F4F0895AA1BBB1B41 +:1004D00051E107C0AA1FBB1FA617B70710F0A61B44 +:1004E000B70B881F991F5A95A9F780959095BC0165 +:0804F000CD010895F894FFCF3F +:1004F8003F065B4F666D7D077F6F407046760079DB +:08050800375E0E0E0E0E0E0E02 +:04000003000002688F :00000001FF diff --git a/Timer/default/Timer.lss b/Timer/default/Timer.lss index f5ce1ae..035d09b 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 00000498 00000000 00000000 00000094 2**1 + 0 .text 000004f8 00000000 00000000 00000094 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE - 1 .data 00000018 00800060 00000498 0000052c 2**0 + 1 .data 00000018 00800060 000004f8 0000058c 2**0 CONTENTS, ALLOC, LOAD, DATA - 2 .bss 00000001 00800078 00800078 00000544 2**0 + 2 .bss 00000001 00800078 00800078 000005a4 2**0 ALLOC - 3 .stab 000006b4 00000000 00000000 00000544 2**2 + 3 .stab 000006b4 00000000 00000000 000005a4 2**2 CONTENTS, READONLY, DEBUGGING - 4 .stabstr 00000085 00000000 00000000 00000bf8 2**0 + 4 .stabstr 00000085 00000000 00000000 00000c58 2**0 CONTENTS, READONLY, DEBUGGING - 5 .debug_aranges 00000020 00000000 00000000 00000c7d 2**0 + 5 .debug_aranges 00000020 00000000 00000000 00000cdd 2**0 CONTENTS, READONLY, DEBUGGING - 6 .debug_pubnames 0000005d 00000000 00000000 00000c9d 2**0 + 6 .debug_pubnames 0000009e 00000000 00000000 00000cfd 2**0 CONTENTS, READONLY, DEBUGGING - 7 .debug_info 00000463 00000000 00000000 00000cfa 2**0 + 7 .debug_info 000005ab 00000000 00000000 00000d9b 2**0 CONTENTS, READONLY, DEBUGGING - 8 .debug_abbrev 000001e3 00000000 00000000 0000115d 2**0 + 8 .debug_abbrev 000001b7 00000000 00000000 00001346 2**0 CONTENTS, READONLY, DEBUGGING - 9 .debug_line 000005a9 00000000 00000000 00001340 2**0 + 9 .debug_line 00000626 00000000 00000000 000014fd 2**0 CONTENTS, READONLY, DEBUGGING - 10 .debug_frame 00000050 00000000 00000000 000018ec 2**2 + 10 .debug_frame 000000a0 00000000 00000000 00001b24 2**2 CONTENTS, READONLY, DEBUGGING - 11 .debug_str 00000102 00000000 00000000 0000193c 2**0 + 11 .debug_str 00000147 00000000 00000000 00001bc4 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_loc 000003fb 00000000 00000000 00001a3e 2**0 + 12 .debug_loc 00000474 00000000 00000000 00001d0b 2**0 CONTENTS, READONLY, DEBUGGING - 13 .debug_pubtypes 0000002b 00000000 00000000 00001e39 2**0 + 13 .debug_pubtypes 00000038 00000000 00000000 0000217f 2**0 CONTENTS, READONLY, DEBUGGING - 14 .debug_ranges 00000018 00000000 00000000 00001e64 2**0 + 14 .debug_ranges 00000018 00000000 00000000 000021b7 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: a4 c0 rjmp .+328 ; 0x164 <__vector_13> + 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> @@ -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: e8 e9 ldi r30, 0x98 ; 152 + 34: e8 ef ldi r30, 0xF8 ; 248 36: f4 e0 ldi r31, 0x04 ; 4 38: 02 c0 rjmp .+4 ; 0x3e <__SP_H__> 3a: 05 90 lpm r0, Z+ @@ -89,8 +89,8 @@ Disassembly of section .text: 4e: a9 37 cpi r26, 0x79 ; 121 50: b1 07 cpc r27, r17 52: e1 f7 brne .-8 ; 0x4c <.do_clear_bss_loop> - 54: af d0 rcall .+350 ; 0x1b4
- 56: 1e c2 rjmp .+1084 ; 0x494 <_exit> + 54: 12 d2 rcall .+1060 ; 0x47a
+ 56: 4e c2 rjmp .+1180 ; 0x4f4 <_exit> 00000058 <__bad_interrupt>: 58: d3 cf rjmp .-90 ; 0x0 <__vectors> @@ -308,672 +308,771 @@ void render() { 160: 1f 91 pop r17 162: 08 95 ret -00000164 <__vector_13>: - -//ISR// (TIMER1_//OVF_vect) -ISR(TIMER0_COMPA_vect) -{ - 164: 1f 92 push r1 - 166: 0f 92 push r0 - 168: 0f b6 in r0, 0x3f ; 63 - 16a: 0f 92 push r0 - 16c: 11 24 eor r1, r1 - 16e: 8f 93 push r24 - 170: 9f 93 push r25 - (8000000/256)/256 Hz = 122,0703125 Hz - 1/122,0703125 s = 8,192 ms - */ - /*DDRB = 0b10111011; - PORTB = 0b10110011;*/ - if (var++ >= 100) //wenn Zustand mindestens 200x10ms = 2sec. andauert - 172: 80 91 78 00 lds r24, 0x0078 - 176: 98 2f mov r25, r24 - 178: 9f 5f subi r25, 0xFF ; 255 - 17a: 90 93 78 00 sts 0x0078, r25 - 17e: 84 36 cpi r24, 0x64 ; 100 - 180: 90 f0 brcs .+36 ; 0x1a6 <__vector_13+0x42> - { - if(frame[2] == 14) { - 182: 80 91 74 00 lds r24, 0x0074 - 186: 8e 30 cpi r24, 0x0E ; 14 - 188: 39 f4 brne .+14 ; 0x198 <__vector_13+0x34> - frame[2] = 0; - 18a: 10 92 74 00 sts 0x0074, r1 - frame[3] = 1; - 18e: 81 e0 ldi r24, 0x01 ; 1 - 190: 80 93 75 00 sts 0x0075, r24 - frame[4] = 2; - 194: 82 e0 ldi r24, 0x02 ; 2 - 196: 05 c0 rjmp .+10 ; 0x1a2 <__vector_13+0x3e> - } else { - frame[2] = 14; - 198: 8e e0 ldi r24, 0x0E ; 14 - 19a: 80 93 74 00 sts 0x0074, r24 - frame[3] = 14; - 19e: 80 93 75 00 sts 0x0075, r24 - frame[4] = 14; - 1a2: 80 93 76 00 sts 0x0076, r24 +00000164 : } } +}*/ + +void timerdown(uint8_t min) { + 164: 8f 92 push r8 + 166: 9f 92 push r9 + 168: bf 92 push r11 + 16a: cf 92 push r12 + 16c: df 92 push r13 + 16e: ef 92 push r14 + 170: ff 92 push r15 + 172: 0f 93 push r16 + 174: 1f 93 push r17 + 176: df 93 push r29 + 178: cf 93 push r28 + 17a: 0f 92 push r0 + 17c: cd b7 in r28, 0x3d ; 61 + 17e: de b7 in r29, 0x3e ; 62 + 180: c8 2e mov r12, r24 + frame[0] = 11; + 182: 8b e0 ldi r24, 0x0B ; 11 + 184: 80 93 72 00 sts 0x0072, r24 + for(uint8_t j=0;j<=min;j++) { + 188: dd 24 eor r13, r13 + frame[2] = (uint8_t)((MIN-j)/10); + 18a: 2d e1 ldi r18, 0x1D ; 29 + 18c: e2 2e mov r14, r18 + 18e: f1 2c mov r15, r1 + 190: 0a e0 ldi r16, 0x0A ; 10 + 192: 10 e0 ldi r17, 0x00 ; 0 + 194: c7 01 movw r24, r14 + 196: 8d 19 sub r24, r13 + 198: 91 09 sbc r25, r1 + 19a: b8 01 movw r22, r16 + 19c: 84 d1 rcall .+776 ; 0x4a6 <__divmodhi4> + 19e: 60 93 74 00 sts 0x0074, r22 + frame[3] = (uint8_t)((MIN-j)%10); + 1a2: 80 93 75 00 sts 0x0075, r24 + 1a6: 9b e3 ldi r25, 0x3B ; 59 + 1a8: 89 2e mov r8, r25 + 1aa: 91 2c mov r9, r1 + for(uint8_t i=0;i<=59;i++) { + 1ac: 20 e0 ldi r18, 0x00 ; 0 + frame[4] = (uint8_t)((59-i)/10); + 1ae: c4 01 movw r24, r8 + 1b0: b8 01 movw r22, r16 + 1b2: 79 d1 rcall .+754 ; 0x4a6 <__divmodhi4> + 1b4: 60 93 76 00 sts 0x0076, r22 + frame[5] = (uint8_t)((59-i)%10); + 1b8: 80 93 77 00 sts 0x0077, r24 + frame[0] = (i%2==0)?11:14; + 1bc: 20 ff sbrs r18, 0 + 1be: 02 c0 rjmp .+4 ; 0x1c4 + 1c0: 8e e0 ldi r24, 0x0E ; 14 + 1c2: 01 c0 rjmp .+2 ; 0x1c6 + 1c4: 8b e0 ldi r24, 0x0B ; 11 + 1c6: 80 93 72 00 sts 0x0072, r24 + 1ca: 82 e5 ldi r24, 0x52 ; 82 + 1cc: b8 2e mov r11, r24 + for(uint8_t k=0;k<82;k++) { + render(); + 1ce: 29 83 std Y+1, r18 ; 0x01 + 1d0: af df rcall .-162 ; 0x130 + 1d2: ba 94 dec r11 + frame[3] = (uint8_t)((MIN-j)%10); + for(uint8_t i=0;i<=59;i++) { + frame[4] = (uint8_t)((59-i)/10); + frame[5] = (uint8_t)((59-i)%10); + frame[0] = (i%2==0)?11:14; + for(uint8_t k=0;k<82;k++) { + 1d4: 29 81 ldd r18, Y+1 ; 0x01 + 1d6: bb 20 and r11, r11 + 1d8: d1 f7 brne .-12 ; 0x1ce +void timerdown(uint8_t min) { + frame[0] = 11; + for(uint8_t j=0;j<=min;j++) { + frame[2] = (uint8_t)((MIN-j)/10); + frame[3] = (uint8_t)((MIN-j)%10); + for(uint8_t i=0;i<=59;i++) { + 1da: 2f 5f subi r18, 0xFF ; 255 + 1dc: 08 94 sec + 1de: 81 08 sbc r8, r1 + 1e0: 91 08 sbc r9, r1 + 1e2: 2c 33 cpi r18, 0x3C ; 60 + 1e4: 21 f7 brne .-56 ; 0x1ae + +}*/ + +void timerdown(uint8_t min) { + frame[0] = 11; + for(uint8_t j=0;j<=min;j++) { + 1e6: d3 94 inc r13 + 1e8: cd 14 cp r12, r13 + 1ea: a0 f6 brcc .-88 ; 0x194 + for(uint8_t k=0;k<82;k++) { + render(); + } + } + } } - 1a6: 9f 91 pop r25 - 1a8: 8f 91 pop r24 - 1aa: 0f 90 pop r0 - 1ac: 0f be out 0x3f, r0 ; 63 - 1ae: 0f 90 pop r0 - 1b0: 1f 90 pop r1 - 1b2: 18 95 reti + 1ec: 0f 90 pop r0 + 1ee: cf 91 pop r28 + 1f0: df 91 pop r29 + 1f2: 1f 91 pop r17 + 1f4: 0f 91 pop r16 + 1f6: ff 90 pop r15 + 1f8: ef 90 pop r14 + 1fa: df 90 pop r13 + 1fc: cf 90 pop r12 + 1fe: bf 90 pop r11 + 200: 9f 90 pop r9 + 202: 8f 90 pop r8 + 204: 08 95 ret -000001b4
: +00000206 : -int main(void) { - 1b4: 4f 92 push r4 - 1b6: 5f 92 push r5 - 1b8: 7f 92 push r7 - 1ba: 8f 92 push r8 - 1bc: 9f 92 push r9 - 1be: af 92 push r10 - 1c0: bf 92 push r11 - 1c2: cf 92 push r12 - 1c4: df 92 push r13 - 1c6: ef 92 push r14 - 1c8: ff 92 push r15 - 1ca: 0f 93 push r16 - 1cc: 1f 93 push r17 - 1ce: df 93 push r29 - 1d0: cf 93 push r28 - 1d2: 0f 92 push r0 - 1d4: cd b7 in r28, 0x3d ; 61 - 1d6: de b7 in r29, 0x3e ; 62 - DDRB = 0; - 1d8: 17 ba out 0x17, r1 ; 23 +void timerup(uint8_t min) { + 206: ef 92 push r14 + 208: ff 92 push r15 + 20a: 0f 93 push r16 + 20c: 1f 93 push r17 + frame[0] = 10; + 20e: 9a e0 ldi r25, 0x0A ; 10 + 210: 90 93 72 00 sts 0x0072, r25 + for(uint8_t j=min;j<=99;j++) { + 214: 08 2f mov r16, r24 + frame[2] = (uint8_t)(j/10); + 216: 4a e0 ldi r20, 0x0A ; 10 + 218: f4 2e mov r15, r20 + } +} + +void timerup(uint8_t min) { + frame[0] = 10; + for(uint8_t j=min;j<=99;j++) { + 21a: 1f c0 rjmp .+62 ; 0x25a + frame[2] = (uint8_t)(j/10); + 21c: 80 2f mov r24, r16 + 21e: 6f 2d mov r22, r15 + 220: 36 d1 rcall .+620 ; 0x48e <__udivmodqi4> + 222: 80 93 74 00 sts 0x0074, r24 + frame[3] = (uint8_t)(j%10); + 226: 90 93 75 00 sts 0x0075, r25 + for(uint8_t i=0;i<=59;i++) { + 22a: 10 e0 ldi r17, 0x00 ; 0 + frame[4] = (uint8_t)(i/10); + 22c: 81 2f mov r24, r17 + 22e: 6f 2d mov r22, r15 + 230: 2e d1 rcall .+604 ; 0x48e <__udivmodqi4> + 232: 80 93 76 00 sts 0x0076, r24 + frame[5] = (uint8_t)(i%10); + 236: 90 93 77 00 sts 0x0077, r25 + frame[0] = (i%2==0)?10:14; + 23a: 10 ff sbrs r17, 0 + 23c: 02 c0 rjmp .+4 ; 0x242 + 23e: 8e e0 ldi r24, 0x0E ; 14 + 240: 01 c0 rjmp .+2 ; 0x244 + 242: 8a e0 ldi r24, 0x0A ; 10 + 244: 80 93 72 00 sts 0x0072, r24 + 248: 32 e5 ldi r19, 0x52 ; 82 + 24a: e3 2e mov r14, r19 + for(uint8_t k=0;k<82;k++) { + render(); + 24c: 71 df rcall .-286 ; 0x130 + 24e: 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++) { + 250: e9 f7 brne .-6 ; 0x24c +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++) { + 252: 1f 5f subi r17, 0xFF ; 255 + 254: 1c 33 cpi r17, 0x3C ; 60 + 256: 51 f7 brne .-44 ; 0x22c + } +} + +void timerup(uint8_t min) { + frame[0] = 10; + for(uint8_t j=min;j<=99;j++) { + 258: 0f 5f subi r16, 0xFF ; 255 + 25a: 04 36 cpi r16, 0x64 ; 100 + 25c: f8 f2 brcs .-66 ; 0x21c + for(uint8_t k=0;k<82;k++) { + render(); + } + } + } +} + 25e: 1f 91 pop r17 + 260: 0f 91 pop r16 + 262: ff 90 pop r15 + 264: ef 90 pop r14 + 266: 08 95 ret + +00000268 : + +void start() { DDRD |= (1< - break; - } + 26c: 95 9a sbi 0x12, 5 ; 18 + #else + //round up by default + __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); + #endif + + __builtin_avr_delay_cycles(__ticks_dc); + 26e: 8f ef ldi r24, 0xFF ; 255 + 270: 94 e3 ldi r25, 0x34 ; 52 + 272: ac e0 ldi r26, 0x0C ; 12 + 274: 81 50 subi r24, 0x01 ; 1 + 276: 90 40 sbci r25, 0x00 ; 0 + 278: a0 40 sbci r26, 0x00 ; 0 + 27a: e1 f7 brne .-8 ; 0x274 + 27c: 00 c0 rjmp .+0 ; 0x27e + 27e: 00 00 nop + _delay_ms(500); + while(1) { + if (!(PIND & (1< + break; } - frame[0] = 11; - 1e4: 8b e0 ldi r24, 0x0B ; 11 - 1e6: 80 93 72 00 sts 0x0072, r24 - 1ea: 6d e1 ldi r22, 0x1D ; 29 - 1ec: a6 2e mov r10, r22 - 1ee: b1 2c mov r11, r1 - for(uint8_t j=0;j<=MIN;j++) { - frame[2] = (uint8_t)((MIN-j)/10); - 1f0: 5a e0 ldi r21, 0x0A ; 10 - 1f2: e5 2e mov r14, r21 - 1f4: f1 2c mov r15, r1 - 1f6: c5 01 movw r24, r10 - 1f8: b7 01 movw r22, r14 - 1fa: 25 d1 rcall .+586 ; 0x446 <__divmodhi4> - 1fc: 60 93 74 00 sts 0x0074, r22 - frame[3] = (uint8_t)((MIN-j)%10); - 200: 80 93 75 00 sts 0x0075, r24 - 204: 0b e3 ldi r16, 0x3B ; 59 - 206: 10 e0 ldi r17, 0x00 ; 0 - for(uint8_t i=0;i<=59;i++) { - 208: 20 e0 ldi r18, 0x00 ; 0 - frame[4] = (uint8_t)((59-i)/10); - 20a: c8 01 movw r24, r16 - 20c: b7 01 movw r22, r14 - 20e: 1b d1 rcall .+566 ; 0x446 <__divmodhi4> - 210: 60 93 76 00 sts 0x0076, r22 - frame[5] = (uint8_t)((59-i)%10); - 214: 80 93 77 00 sts 0x0077, r24 - frame[0] = (i%2==0)?11:14; - 218: 20 ff sbrs r18, 0 - 21a: 02 c0 rjmp .+4 ; 0x220 - 21c: 8e e0 ldi r24, 0x0E ; 14 - 21e: 01 c0 rjmp .+2 ; 0x222 - 220: 8b e0 ldi r24, 0x0B ; 11 - 222: 80 93 72 00 sts 0x0072, r24 - 226: 42 e5 ldi r20, 0x52 ; 82 - 228: d4 2e mov r13, r20 - for(uint8_t k=0;k<82;k++) { - render(); - 22a: 29 83 std Y+1, r18 ; 0x01 - 22c: 81 df rcall .-254 ; 0x130 - 22e: da 94 dec r13 - frame[3] = (uint8_t)((MIN-j)%10); - for(uint8_t i=0;i<=59;i++) { - frame[4] = (uint8_t)((59-i)/10); - frame[5] = (uint8_t)((59-i)%10); - frame[0] = (i%2==0)?11:14; - for(uint8_t k=0;k<82;k++) { - 230: 29 81 ldd r18, Y+1 ; 0x01 - 232: dd 20 and r13, r13 - 234: d1 f7 brne .-12 ; 0x22a + } +} + 284: 08 95 ret + +00000286 : + +void endelauflicht() { + 286: df 92 push r13 + 288: ef 92 push r14 + 28a: ff 92 push r15 + 28c: 0f 93 push r16 + 28e: 1f 93 push r17 + frame[0] = 10; + 290: 8a e0 ldi r24, 0x0A ; 10 + 292: 80 93 72 00 sts 0x0072, r24 + 296: 09 e2 ldi r16, 0x29 ; 41 + for(uint8_t j=0;j<41;j++) { + frame[2] = 15; + 298: 7f e0 ldi r23, 0x0F ; 15 + 29a: f7 2e mov r15, r23 + frame[3] = 14; + 29c: 1e e0 ldi r17, 0x0E ; 14 + frame[5] = 14; + for(uint8_t k=0;k<5;k++) { + render(); } - frame[0] = 11; - for(uint8_t j=0;j<=MIN;j++) { - frame[2] = (uint8_t)((MIN-j)/10); - frame[3] = (uint8_t)((MIN-j)%10); - for(uint8_t i=0;i<=59;i++) { - 236: 2f 5f subi r18, 0xFF ; 255 - 238: 01 50 subi r16, 0x01 ; 1 - 23a: 10 40 sbci r17, 0x00 ; 0 - 23c: 2c 33 cpi r18, 0x3C ; 60 - 23e: 29 f7 brne .-54 ; 0x20a - 240: 08 94 sec - 242: a1 08 sbc r10, r1 - 244: b1 08 sbc r11, r1 - if (!(PIND & (1< - render(); - } - } + frame[3] = 14; + frame[4] = 17; + 2a2: 51 e1 ldi r21, 0x11 ; 17 + 2a4: e5 2e mov r14, r21 +} + +void endelauflicht() { + frame[0] = 10; + for(uint8_t j=0;j<41;j++) { + frame[2] = 15; + 2a6: f0 92 74 00 sts 0x0074, r15 + frame[3] = 14; + 2aa: 10 93 75 00 sts 0x0075, r17 + frame[4] = 14; + 2ae: 10 93 76 00 sts 0x0076, r17 + frame[5] = 14; + 2b2: 10 93 77 00 sts 0x0077, r17 + for(uint8_t k=0;k<5;k++) { + render(); + 2b6: 3c df rcall .-392 ; 0x130 + 2b8: 3b df rcall .-394 ; 0x130 + 2ba: 3a df rcall .-396 ; 0x130 + 2bc: 39 df rcall .-398 ; 0x130 + 2be: 38 df rcall .-400 ; 0x130 } - while(1) { - frame[0] = 10; - 250: 8a e0 ldi r24, 0x0A ; 10 - 252: 80 93 72 00 sts 0x0072, r24 - 256: 0a e0 ldi r16, 0x0A ; 10 - for(uint8_t j=0;j<10;j++) { - frame[2] = 15; - 258: 3f e0 ldi r19, 0x0F ; 15 - 25a: e3 2e mov r14, r19 - frame[3] = 14; - 25c: 1e e0 ldi r17, 0x0E ; 14 - frame[5] = 14; - for(uint8_t k=0;k<5;k++) { - render(); - } - frame[2] = 14; - frame[3] = 16; - 25e: 20 e1 ldi r18, 0x10 ; 16 - 260: c2 2e mov r12, r18 - for(uint8_t k=0;k<5;k++) { - render(); - } - frame[3] = 14; - frame[4] = 17; - 262: 91 e1 ldi r25, 0x11 ; 17 - 264: d9 2e mov r13, r25 - } + frame[2] = 14; + 2c0: 10 93 74 00 sts 0x0074, r17 + frame[3] = 16; + 2c4: d0 92 75 00 sts 0x0075, r13 + for(uint8_t k=0;k<5;k++) { + render(); + 2c8: 33 df rcall .-410 ; 0x130 + 2ca: 32 df rcall .-412 ; 0x130 + 2cc: 31 df rcall .-414 ; 0x130 + 2ce: 30 df rcall .-416 ; 0x130 + 2d0: 2f df rcall .-418 ; 0x130 } - while(1) { - frame[0] = 10; - for(uint8_t j=0;j<10;j++) { - frame[2] = 15; - 266: e0 92 74 00 sts 0x0074, r14 - frame[3] = 14; - 26a: 10 93 75 00 sts 0x0075, r17 - frame[4] = 14; - 26e: 10 93 76 00 sts 0x0076, r17 - frame[5] = 14; - 272: 10 93 77 00 sts 0x0077, r17 - for(uint8_t k=0;k<5;k++) { - render(); - 276: 5c df rcall .-328 ; 0x130 - 278: 5b df rcall .-330 ; 0x130 - 27a: 5a df rcall .-332 ; 0x130 - 27c: 59 df rcall .-334 ; 0x130 - 27e: 58 df rcall .-336 ; 0x130 - } - frame[2] = 14; - 280: 10 93 74 00 sts 0x0074, r17 - frame[3] = 16; - 284: c0 92 75 00 sts 0x0075, r12 - for(uint8_t k=0;k<5;k++) { - render(); - 288: 53 df rcall .-346 ; 0x130 - 28a: 52 df rcall .-348 ; 0x130 - 28c: 51 df rcall .-350 ; 0x130 - 28e: 50 df rcall .-352 ; 0x130 - 290: 4f df rcall .-354 ; 0x130 - } - frame[3] = 14; - 292: 10 93 75 00 sts 0x0075, r17 - frame[4] = 17; - 296: d0 92 76 00 sts 0x0076, r13 - for(uint8_t k=0;k<5;k++) { - render(); - 29a: 4a df rcall .-364 ; 0x130 - 29c: 49 df rcall .-366 ; 0x130 - 29e: 48 df rcall .-368 ; 0x130 - 2a0: 47 df rcall .-370 ; 0x130 - 2a2: 46 df rcall .-372 ; 0x130 - } - frame[4] = 14; - 2a4: 10 93 76 00 sts 0x0076, r17 - frame[5] = 15; - 2a8: e0 92 77 00 sts 0x0077, r14 - for(uint8_t k=0;k<5;k++) { - render(); - 2ac: 41 df rcall .-382 ; 0x130 - 2ae: 40 df rcall .-384 ; 0x130 - 2b0: 3f df rcall .-386 ; 0x130 - 2b2: 3e df rcall .-388 ; 0x130 - 2b4: 3d df rcall .-390 ; 0x130 - 2b6: 01 50 subi r16, 0x01 ; 1 - } - } - } - while(1) { - frame[0] = 10; - for(uint8_t j=0;j<10;j++) { - 2b8: b1 f6 brne .-84 ; 0x266 - 2ba: 0a e0 ldi r16, 0x0A ; 10 - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<10;j++) { - frame[2] = 14; - 2bc: 1e e0 ldi r17, 0x0E ; 14 - frame[3] = 14; - frame[4] = 14; - frame[5] = 15; - 2be: 8f e0 ldi r24, 0x0F ; 15 - 2c0: e8 2e mov r14, r24 - for(uint8_t k=0;k<5;k++) { - render(); - } - frame[5] = 14; - frame[3] = 16; - 2c2: b0 e1 ldi r27, 0x10 ; 16 - 2c4: cb 2e mov r12, r27 - for(uint8_t k=0;k<5;k++) { - render(); - } - frame[3] = 14; - frame[4] = 17; - 2c6: a1 e1 ldi r26, 0x11 ; 17 - 2c8: da 2e mov r13, r26 - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<10;j++) { - frame[2] = 14; - 2ca: 10 93 74 00 sts 0x0074, r17 - frame[3] = 14; - 2ce: 10 93 75 00 sts 0x0075, r17 - frame[4] = 14; - 2d2: 10 93 76 00 sts 0x0076, r17 - frame[5] = 15; - 2d6: e0 92 77 00 sts 0x0077, r14 - for(uint8_t k=0;k<5;k++) { - render(); + frame[3] = 14; + 2d2: 10 93 75 00 sts 0x0075, r17 + frame[4] = 17; + 2d6: e0 92 76 00 sts 0x0076, r14 + for(uint8_t k=0;k<5;k++) { + render(); 2da: 2a df rcall .-428 ; 0x130 2dc: 29 df rcall .-430 ; 0x130 2de: 28 df rcall .-432 ; 0x130 2e0: 27 df rcall .-434 ; 0x130 2e2: 26 df rcall .-436 ; 0x130 - } - frame[5] = 14; - 2e4: 10 93 77 00 sts 0x0077, r17 - frame[3] = 16; - 2e8: c0 92 75 00 sts 0x0075, r12 - for(uint8_t k=0;k<5;k++) { - render(); + } + frame[4] = 14; + 2e4: 10 93 76 00 sts 0x0076, r17 + frame[5] = 15; + 2e8: f0 92 77 00 sts 0x0077, r15 + for(uint8_t k=0;k<5;k++) { + render(); 2ec: 21 df rcall .-446 ; 0x130 2ee: 20 df rcall .-448 ; 0x130 2f0: 1f df rcall .-450 ; 0x130 2f2: 1e df rcall .-452 ; 0x130 2f4: 1d df rcall .-454 ; 0x130 - } - frame[3] = 14; - 2f6: 10 93 75 00 sts 0x0075, r17 - frame[4] = 17; - 2fa: d0 92 76 00 sts 0x0076, r13 - for(uint8_t k=0;k<5;k++) { - render(); - 2fe: 18 df rcall .-464 ; 0x130 - 300: 17 df rcall .-466 ; 0x130 - 302: 16 df rcall .-468 ; 0x130 - 304: 15 df rcall .-470 ; 0x130 - 306: 14 df rcall .-472 ; 0x130 - } - frame[2] = 15; - 308: e0 92 74 00 sts 0x0074, r14 - frame[4] = 14; - 30c: 10 93 76 00 sts 0x0076, r17 - for(uint8_t k=0;k<5;k++) { - render(); - 310: 0f df rcall .-482 ; 0x130 - 312: 0e df rcall .-484 ; 0x130 - 314: 0d df rcall .-486 ; 0x130 - 316: 0c df rcall .-488 ; 0x130 - 318: 0b df rcall .-490 ; 0x130 - 31a: 01 50 subi r16, 0x01 ; 1 - frame[5] = 15; - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<10;j++) { - 31c: b1 f6 brne .-84 ; 0x2ca - 31e: 06 e0 ldi r16, 0x06 ; 6 - 320: 10 e0 ldi r17, 0x00 ; 0 - 322: 44 24 eor r4, r4 - 324: 55 24 eor r5, r5 - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<39;j++) { - frame[2] = 15; - 326: ff e0 ldi r31, 0x0F ; 15 - 328: cf 2e mov r12, r31 - frame[3] = 16; - 32a: e0 e1 ldi r30, 0x10 ; 16 - 32c: ae 2e mov r10, r30 - frame[4] = 17; - 32e: 71 e1 ldi r23, 0x11 ; 17 - 330: b7 2e mov r11, r23 - frame[5] = 15; - for(uint8_t k=0;k<6+(j*2);k++) { - if(k%3==0) { - 332: 63 e0 ldi r22, 0x03 ; 3 - 334: 86 2e mov r8, r22 - frame[2] = 15; - frame[3] = 16; - frame[4] = 17; - frame[5] = 15; - } else { - frame[0] = 14; - 336: 5e e0 ldi r21, 0x0E ; 14 - 338: d5 2e mov r13, r21 - 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; - 33a: 4a e0 ldi r20, 0x0A ; 10 - 33c: 94 2e mov r9, r20 - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<39;j++) { - frame[2] = 15; - 33e: c0 92 74 00 sts 0x0074, r12 - frame[3] = 16; - 342: a0 92 75 00 sts 0x0075, r10 - frame[4] = 17; - 346: b0 92 76 00 sts 0x0076, r11 - frame[5] = 15; - 34a: c0 92 77 00 sts 0x0077, r12 - for(uint8_t k=0;k<6+(j*2);k++) { - 34e: ee 24 eor r14, r14 - 350: 20 c0 rjmp .+64 ; 0x392 - if(k%3==0) { - 352: 8e 2d mov r24, r14 - 354: 68 2d mov r22, r8 - 356: 6b d0 rcall .+214 ; 0x42e <__udivmodqi4> - 358: 99 23 and r25, r25 - 35a: c9 f4 brne .+50 ; 0x38e - if(frame[2] == 14) { - 35c: 80 91 74 00 lds r24, 0x0074 - 360: 8e 30 cpi r24, 0x0E ; 14 - 362: 59 f4 brne .+22 ; 0x37a - frame[0] = 10; - 364: 90 92 72 00 sts 0x0072, r9 - frame[2] = 15; - 368: c0 92 74 00 sts 0x0074, r12 - frame[3] = 16; - 36c: a0 92 75 00 sts 0x0075, r10 - frame[4] = 17; - 370: b0 92 76 00 sts 0x0076, r11 - frame[5] = 15; - 374: c0 92 77 00 sts 0x0077, r12 - 378: 0a c0 rjmp .+20 ; 0x38e - } else { - frame[0] = 14; - 37a: d0 92 72 00 sts 0x0072, r13 - frame[2] = 14; - 37e: d0 92 74 00 sts 0x0074, r13 - frame[3] = 14; - 382: d0 92 75 00 sts 0x0075, r13 - frame[4] = 14; - 386: d0 92 76 00 sts 0x0076, r13 - frame[5] = 14; - 38a: d0 92 77 00 sts 0x0077, r13 - } - } - render(); - 38e: d0 de rcall .-608 ; 0x130 - for(uint8_t j=0;j<39;j++) { - frame[2] = 15; - frame[3] = 16; - frame[4] = 17; - frame[5] = 15; - for(uint8_t k=0;k<6+(j*2);k++) { - 390: e3 94 inc r14 - 392: 8e 2d mov r24, r14 - 394: 90 e0 ldi r25, 0x00 ; 0 - 396: 80 17 cp r24, r16 - 398: 91 07 cpc r25, r17 - 39a: dc f2 brlt .-74 ; 0x352 - frame[5] = 14; - } - } - render(); - } - frame[2] = 14; - 39c: d0 92 74 00 sts 0x0074, r13 - frame[3] = 14; - 3a0: d0 92 75 00 sts 0x0075, r13 - frame[4] = 14; - 3a4: d0 92 76 00 sts 0x0076, r13 - frame[5] = 14; - 3a8: d0 92 77 00 sts 0x0077, r13 - for(uint8_t k=0;k<5+j;k++) { - 3ac: 77 24 eor r7, r7 - } - } - + 2f6: 01 50 subi r16, 0x01 ; 1 + } } +void endelauflicht() { + frame[0] = 10; + for(uint8_t j=0;j<41;j++) { + 2f8: b1 f6 brne .-84 ; 0x2a6 + frame[5] = 15; + for(uint8_t k=0;k<5;k++) { + render(); + } + } +} + 2fa: 1f 91 pop r17 + 2fc: 0f 91 pop r16 + 2fe: ff 90 pop r15 + 300: ef 90 pop r14 + 302: df 90 pop r13 + 304: 08 95 ret + +00000306 : + +void enderand() { + 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 + frame[0] = 10; + 310: 8a e0 ldi r24, 0x0A ; 10 + 312: 80 93 72 00 sts 0x0072, r24 + 316: 09 e2 ldi r16, 0x29 ; 41 + for(uint8_t j=0;j<41;j++) { + frame[2] = 14; + 318: 1e e0 ldi r17, 0x0E ; 14 + frame[3] = 14; + frame[4] = 14; + frame[5] = 15; + 31a: af e0 ldi r26, 0x0F ; 15 + 31c: fa 2e mov r15, r26 + for(uint8_t k=0;k<5;k++) { + render(); + } + frame[5] = 14; + frame[3] = 16; + 31e: f0 e1 ldi r31, 0x10 ; 16 + 320: df 2e mov r13, r31 + for(uint8_t k=0;k<5;k++) { + render(); + } + frame[3] = 14; + frame[4] = 17; + 322: e1 e1 ldi r30, 0x11 ; 17 + 324: ee 2e mov r14, r30 +} + +void enderand() { + frame[0] = 10; + for(uint8_t j=0;j<41;j++) { + frame[2] = 14; + 326: 10 93 74 00 sts 0x0074, r17 + frame[3] = 14; + 32a: 10 93 75 00 sts 0x0075, r17 + frame[4] = 14; + 32e: 10 93 76 00 sts 0x0076, r17 + frame[5] = 15; + 332: f0 92 77 00 sts 0x0077, r15 + for(uint8_t k=0;k<5;k++) { + render(); + 336: fc de rcall .-520 ; 0x130 + 338: fb de rcall .-522 ; 0x130 + 33a: fa de rcall .-524 ; 0x130 + 33c: f9 de rcall .-526 ; 0x130 + 33e: f8 de rcall .-528 ; 0x130 + } + frame[5] = 14; + 340: 10 93 77 00 sts 0x0077, r17 + frame[3] = 16; + 344: d0 92 75 00 sts 0x0075, r13 + for(uint8_t k=0;k<5;k++) { + render(); + 348: f3 de rcall .-538 ; 0x130 + 34a: f2 de rcall .-540 ; 0x130 + 34c: f1 de rcall .-542 ; 0x130 + 34e: f0 de rcall .-544 ; 0x130 + 350: ef de rcall .-546 ; 0x130 + } + frame[3] = 14; + 352: 10 93 75 00 sts 0x0075, r17 + frame[4] = 17; + 356: e0 92 76 00 sts 0x0076, r14 + for(uint8_t k=0;k<5;k++) { + render(); + 35a: ea de rcall .-556 ; 0x130 + 35c: e9 de rcall .-558 ; 0x130 + 35e: e8 de rcall .-560 ; 0x130 + 360: e7 de rcall .-562 ; 0x130 + 362: e6 de rcall .-564 ; 0x130 + } + frame[2] = 15; + 364: f0 92 74 00 sts 0x0074, r15 + frame[4] = 14; + 368: 10 93 76 00 sts 0x0076, r17 + for(uint8_t k=0;k<5;k++) { + render(); + 36c: e1 de rcall .-574 ; 0x130 + 36e: e0 de rcall .-576 ; 0x130 + 370: df de rcall .-578 ; 0x130 + 372: de de rcall .-580 ; 0x130 + 374: dd de rcall .-582 ; 0x130 + 376: 01 50 subi r16, 0x01 ; 1 + } +} + +void enderand() { + frame[0] = 10; + for(uint8_t j=0;j<41;j++) { + 378: b1 f6 brne .-84 ; 0x326 + frame[4] = 14; + for(uint8_t k=0;k<5;k++) { + render(); + } + } +} + 37a: 1f 91 pop r17 + 37c: 0f 91 pop r16 + 37e: ff 90 pop r15 + 380: ef 90 pop r14 + 382: df 90 pop r13 + 384: 08 95 ret + +00000386 : + +void endeblink() { + 386: 7f 92 push r7 + 388: 8f 92 push r8 + 38a: 9f 92 push r9 + 38c: af 92 push r10 + 38e: bf 92 push r11 + 390: cf 92 push r12 + 392: df 92 push r13 + 394: ef 92 push r14 + 396: ff 92 push r15 + 398: 0f 93 push r16 + 39a: 1f 93 push r17 + 39c: cf 93 push r28 + 39e: df 93 push r29 + frame[0] = 10; + 3a0: 8a e0 ldi r24, 0x0A ; 10 + 3a2: 80 93 72 00 sts 0x0072, r24 + 3a6: 06 e0 ldi r16, 0x06 ; 6 + 3a8: 10 e0 ldi r17, 0x00 ; 0 + 3aa: c0 e0 ldi r28, 0x00 ; 0 + 3ac: d0 e0 ldi r29, 0x00 ; 0 + for(uint8_t j=0;j<44;j++) { + frame[2] = 15; + 3ae: 5f e0 ldi r21, 0x0F ; 15 + 3b0: c5 2e mov r12, r21 + frame[3] = 16; + 3b2: 40 e1 ldi r20, 0x10 ; 16 + 3b4: a4 2e mov r10, r20 + frame[4] = 17; + 3b6: 31 e1 ldi r19, 0x11 ; 17 + 3b8: b3 2e mov r11, r19 + frame[5] = 15; + for(uint8_t k=0;k<6+(j*2);k++) { + if(k%3==0) { + 3ba: 23 e0 ldi r18, 0x03 ; 3 + 3bc: 82 2e mov r8, r18 + frame[2] = 15; + frame[3] = 16; + frame[4] = 17; + frame[5] = 15; + } else { + frame[0] = 14; + 3be: 9e e0 ldi r25, 0x0E ; 14 + 3c0: d9 2e mov r13, r25 + 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; + 3c2: 8a e0 ldi r24, 0x0A ; 10 + 3c4: 98 2e mov r9, r24 +} + +void endeblink() { + frame[0] = 10; + for(uint8_t j=0;j<44;j++) { + frame[2] = 15; + 3c6: c0 92 74 00 sts 0x0074, r12 + frame[3] = 16; + 3ca: a0 92 75 00 sts 0x0075, r10 + frame[4] = 17; + 3ce: b0 92 76 00 sts 0x0076, r11 + frame[5] = 15; + 3d2: c0 92 77 00 sts 0x0077, r12 + for(uint8_t k=0;k<6+(j*2);k++) { + 3d6: ee 24 eor r14, r14 + 3d8: 20 c0 rjmp .+64 ; 0x41a + if(k%3==0) { + 3da: 8e 2d mov r24, r14 + 3dc: 68 2d mov r22, r8 + 3de: 57 d0 rcall .+174 ; 0x48e <__udivmodqi4> + 3e0: 99 23 and r25, r25 + 3e2: c9 f4 brne .+50 ; 0x416 + if(frame[2] == 14) { + 3e4: 80 91 74 00 lds r24, 0x0074 + 3e8: 8e 30 cpi r24, 0x0E ; 14 + 3ea: 59 f4 brne .+22 ; 0x402 + frame[0] = 10; + 3ec: 90 92 72 00 sts 0x0072, r9 + frame[2] = 15; + 3f0: c0 92 74 00 sts 0x0074, r12 + frame[3] = 16; + 3f4: a0 92 75 00 sts 0x0075, r10 + frame[4] = 17; + 3f8: b0 92 76 00 sts 0x0076, r11 + frame[5] = 15; + 3fc: c0 92 77 00 sts 0x0077, r12 + 400: 0a c0 rjmp .+20 ; 0x416 + } else { + frame[0] = 14; + 402: d0 92 72 00 sts 0x0072, r13 + frame[2] = 14; + 406: d0 92 74 00 sts 0x0074, r13 + frame[3] = 14; + 40a: d0 92 75 00 sts 0x0075, r13 + frame[4] = 14; + 40e: d0 92 76 00 sts 0x0076, r13 + frame[5] = 14; + 412: d0 92 77 00 sts 0x0077, r13 + } + } + render(); + 416: 8c de rcall .-744 ; 0x130 + 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++) { + 418: e3 94 inc r14 + 41a: 8e 2d mov r24, r14 + 41c: 90 e0 ldi r25, 0x00 ; 0 + 41e: 80 17 cp r24, r16 + 420: 91 07 cpc r25, r17 + 422: dc f2 brlt .-74 ; 0x3da + frame[5] = 14; + } + } + render(); + } + frame[2] = 14; + 424: d0 92 74 00 sts 0x0074, r13 + frame[3] = 14; + 428: d0 92 75 00 sts 0x0075, r13 + frame[4] = 14; + 42c: d0 92 76 00 sts 0x0076, r13 + frame[5] = 14; + 430: d0 92 77 00 sts 0x0077, r13 + for(uint8_t k=0;k<5+j;k++) { + 434: 77 24 eor r7, r7 + render(); + } + } +} + +void endeblink() { + 436: b4 e0 ldi r27, 0x04 ; 4 + 438: eb 2e mov r14, r27 + 43a: f1 2c mov r15, r1 + 43c: ec 0e add r14, r28 + 43e: 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++) { + 440: 02 c0 rjmp .+4 ; 0x446 + render(); + 442: 76 de rcall .-788 ; 0x130 + } + frame[2] = 14; + frame[3] = 14; + frame[4] = 14; + frame[5] = 14; + for(uint8_t k=0;k<5+j;k++) { + 444: 73 94 inc r7 + 446: 87 2d mov r24, r7 + 448: 90 e0 ldi r25, 0x00 ; 0 + 44a: e8 16 cp r14, r24 + 44c: f9 06 cpc r15, r25 + 44e: cc f7 brge .-14 ; 0x442 + 450: 21 96 adiw r28, 0x01 ; 1 + 452: 0e 5f subi r16, 0xFE ; 254 + 454: 1f 4f sbci r17, 0xFF ; 255 + } +} + +void endeblink() { + frame[0] = 10; + for(uint8_t j=0;j<44;j++) { + 456: cc 32 cpi r28, 0x2C ; 44 + 458: d1 05 cpc r29, r1 + 45a: 09 f0 breq .+2 ; 0x45e + 45c: b4 cf rjmp .-152 ; 0x3c6 + frame[5] = 14; + for(uint8_t k=0;k<5+j;k++) { + render(); + } + } +} + 45e: df 91 pop r29 + 460: cf 91 pop r28 + 462: 1f 91 pop r17 + 464: 0f 91 pop r16 + 466: ff 90 pop r15 + 468: ef 90 pop r14 + 46a: df 90 pop r13 + 46c: cf 90 pop r12 + 46e: bf 90 pop r11 + 470: af 90 pop r10 + 472: 9f 90 pop r9 + 474: 8f 90 pop r8 + 476: 7f 90 pop r7 + 478: 08 95 ret + +0000047a
: + + int main(void) { - 3ae: 34 e0 ldi r19, 0x04 ; 4 - 3b0: e3 2e mov r14, r19 - 3b2: f1 2c mov r15, r1 - 3b4: e4 0c add r14, r4 - 3b6: f5 1c adc r15, r5 - } - frame[2] = 14; - frame[3] = 14; - frame[4] = 14; - frame[5] = 14; - for(uint8_t k=0;k<5+j;k++) { - 3b8: 02 c0 rjmp .+4 ; 0x3be - render(); - 3ba: ba de rcall .-652 ; 0x130 - } - frame[2] = 14; - frame[3] = 14; - frame[4] = 14; - frame[5] = 14; - for(uint8_t k=0;k<5+j;k++) { - 3bc: 73 94 inc r7 - 3be: 87 2d mov r24, r7 - 3c0: 90 e0 ldi r25, 0x00 ; 0 - 3c2: e8 16 cp r14, r24 - 3c4: f9 06 cpc r15, r25 - 3c6: cc f7 brge .-14 ; 0x3ba - 3c8: 08 94 sec - 3ca: 41 1c adc r4, r1 - 3cc: 51 1c adc r5, r1 - 3ce: 0e 5f subi r16, 0xFE ; 254 - 3d0: 1f 4f sbci r17, 0xFF ; 255 - frame[4] = 14; - for(uint8_t k=0;k<5;k++) { - render(); - } - } - for(uint8_t j=0;j<39;j++) { - 3d2: e7 e2 ldi r30, 0x27 ; 39 - 3d4: 4e 16 cp r4, r30 - 3d6: 51 04 cpc r5, r1 - 3d8: 09 f0 breq .+2 ; 0x3dc - 3da: b1 cf rjmp .-158 ; 0x33e - for(uint8_t k=0;k<5+j;k++) { - render(); - } - } - while(1) { - frame[0] = 10; - 3dc: 2a e0 ldi r18, 0x0A ; 10 - 3de: e2 2e mov r14, r18 - 3e0: 9a e0 ldi r25, 0x0A ; 10 - 3e2: d9 2e mov r13, r25 - 3e4: d0 92 72 00 sts 0x0072, r13 - for(uint8_t j=1;j<=99;j++) { - 3e8: 11 e0 ldi r17, 0x01 ; 1 - frame[2] = (uint8_t)(j/10); - 3ea: 81 2f mov r24, r17 - 3ec: 6e 2d mov r22, r14 - 3ee: 1f d0 rcall .+62 ; 0x42e <__udivmodqi4> - 3f0: 80 93 74 00 sts 0x0074, r24 - frame[3] = (uint8_t)(j%10); - 3f4: 90 93 75 00 sts 0x0075, r25 - for(uint8_t i=0;i<=59;i++) { - 3f8: 00 e0 ldi r16, 0x00 ; 0 - frame[4] = (uint8_t)(i/10); - 3fa: 80 2f mov r24, r16 - 3fc: 6e 2d mov r22, r14 - 3fe: 17 d0 rcall .+46 ; 0x42e <__udivmodqi4> - 400: 80 93 76 00 sts 0x0076, r24 - frame[5] = (uint8_t)(i%10); - 404: 90 93 77 00 sts 0x0077, r25 - frame[0] = (i%2==0)?10:14; - 408: 00 ff sbrs r16, 0 - 40a: 02 c0 rjmp .+4 ; 0x410 - 40c: 8e e0 ldi r24, 0x0E ; 14 - 40e: 01 c0 rjmp .+2 ; 0x412 - 410: 8a e0 ldi r24, 0x0A ; 10 - 412: 80 93 72 00 sts 0x0072, r24 - 416: 82 e5 ldi r24, 0x52 ; 82 - 418: c8 2e mov r12, r24 - for(uint8_t k=0;k<82;k++) { - render(); - 41a: 8a de rcall .-748 ; 0x130 - 41c: ca 94 dec r12 - 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++) { - 41e: e9 f7 brne .-6 ; 0x41a - while(1) { - frame[0] = 10; - for(uint8_t j=1;j<=99;j++) { - frame[2] = (uint8_t)(j/10); - frame[3] = (uint8_t)(j%10); - for(uint8_t i=0;i<=59;i++) { - 420: 0f 5f subi r16, 0xFF ; 255 - 422: 0c 33 cpi r16, 0x3C ; 60 - 424: 51 f7 brne .-44 ; 0x3fa - render(); - } - } - while(1) { - frame[0] = 10; - for(uint8_t j=1;j<=99;j++) { - 426: 1f 5f subi r17, 0xFF ; 255 - 428: 14 36 cpi r17, 0x64 ; 100 - 42a: f9 f6 brne .-66 ; 0x3ea - 42c: db cf rjmp .-74 ; 0x3e4 + DDRB = 0; + 47a: 17 ba out 0x17, r1 ; 23 + OCR0A = 250; //geladen mit 10ms + TIMSK |= (1< + //Timer $MIN nach unten + timerdown(MIN); + 47e: 8d e1 ldi r24, 0x1D ; 29 + 480: 71 de rcall .-798 ; 0x164 + //Lauflicht 10s; + endelauflicht(); + 482: 01 df rcall .-510 ; 0x286 + //Lauflicht Rand 10s + enderand(); + 484: 40 df rcall .-384 ; 0x306 + //Blinklicht + endeblink(); + 486: 7f df rcall .-258 ; 0x386 + //Timer UP 1Min Start + timerup(1); + 488: 81 e0 ldi r24, 0x01 ; 1 + 48a: bd de rcall .-646 ; 0x206 + 48c: f7 cf rjmp .-18 ; 0x47c -0000042e <__udivmodqi4>: - 42e: 99 1b sub r25, r25 - 430: 79 e0 ldi r23, 0x09 ; 9 - 432: 04 c0 rjmp .+8 ; 0x43c <__udivmodqi4_ep> +0000048e <__udivmodqi4>: + 48e: 99 1b sub r25, r25 + 490: 79 e0 ldi r23, 0x09 ; 9 + 492: 04 c0 rjmp .+8 ; 0x49c <__udivmodqi4_ep> -00000434 <__udivmodqi4_loop>: - 434: 99 1f adc r25, r25 - 436: 96 17 cp r25, r22 - 438: 08 f0 brcs .+2 ; 0x43c <__udivmodqi4_ep> - 43a: 96 1b sub r25, r22 +00000494 <__udivmodqi4_loop>: + 494: 99 1f adc r25, r25 + 496: 96 17 cp r25, r22 + 498: 08 f0 brcs .+2 ; 0x49c <__udivmodqi4_ep> + 49a: 96 1b sub r25, r22 -0000043c <__udivmodqi4_ep>: - 43c: 88 1f adc r24, r24 - 43e: 7a 95 dec r23 - 440: c9 f7 brne .-14 ; 0x434 <__udivmodqi4_loop> - 442: 80 95 com r24 - 444: 08 95 ret +0000049c <__udivmodqi4_ep>: + 49c: 88 1f adc r24, r24 + 49e: 7a 95 dec r23 + 4a0: c9 f7 brne .-14 ; 0x494 <__udivmodqi4_loop> + 4a2: 80 95 com r24 + 4a4: 08 95 ret -00000446 <__divmodhi4>: - 446: 97 fb bst r25, 7 - 448: 09 2e mov r0, r25 - 44a: 07 26 eor r0, r23 - 44c: 0a d0 rcall .+20 ; 0x462 <__divmodhi4_neg1> - 44e: 77 fd sbrc r23, 7 - 450: 04 d0 rcall .+8 ; 0x45a <__divmodhi4_neg2> - 452: 0c d0 rcall .+24 ; 0x46c <__udivmodhi4> - 454: 06 d0 rcall .+12 ; 0x462 <__divmodhi4_neg1> - 456: 00 20 and r0, r0 - 458: 1a f4 brpl .+6 ; 0x460 <__divmodhi4_exit> +000004a6 <__divmodhi4>: + 4a6: 97 fb bst r25, 7 + 4a8: 09 2e mov r0, r25 + 4aa: 07 26 eor r0, r23 + 4ac: 0a d0 rcall .+20 ; 0x4c2 <__divmodhi4_neg1> + 4ae: 77 fd sbrc r23, 7 + 4b0: 04 d0 rcall .+8 ; 0x4ba <__divmodhi4_neg2> + 4b2: 0c d0 rcall .+24 ; 0x4cc <__udivmodhi4> + 4b4: 06 d0 rcall .+12 ; 0x4c2 <__divmodhi4_neg1> + 4b6: 00 20 and r0, r0 + 4b8: 1a f4 brpl .+6 ; 0x4c0 <__divmodhi4_exit> -0000045a <__divmodhi4_neg2>: - 45a: 70 95 com r23 - 45c: 61 95 neg r22 - 45e: 7f 4f sbci r23, 0xFF ; 255 +000004ba <__divmodhi4_neg2>: + 4ba: 70 95 com r23 + 4bc: 61 95 neg r22 + 4be: 7f 4f sbci r23, 0xFF ; 255 -00000460 <__divmodhi4_exit>: - 460: 08 95 ret +000004c0 <__divmodhi4_exit>: + 4c0: 08 95 ret -00000462 <__divmodhi4_neg1>: - 462: f6 f7 brtc .-4 ; 0x460 <__divmodhi4_exit> - 464: 90 95 com r25 - 466: 81 95 neg r24 - 468: 9f 4f sbci r25, 0xFF ; 255 - 46a: 08 95 ret +000004c2 <__divmodhi4_neg1>: + 4c2: f6 f7 brtc .-4 ; 0x4c0 <__divmodhi4_exit> + 4c4: 90 95 com r25 + 4c6: 81 95 neg r24 + 4c8: 9f 4f sbci r25, 0xFF ; 255 + 4ca: 08 95 ret -0000046c <__udivmodhi4>: - 46c: aa 1b sub r26, r26 - 46e: bb 1b sub r27, r27 - 470: 51 e1 ldi r21, 0x11 ; 17 - 472: 07 c0 rjmp .+14 ; 0x482 <__udivmodhi4_ep> +000004cc <__udivmodhi4>: + 4cc: aa 1b sub r26, r26 + 4ce: bb 1b sub r27, r27 + 4d0: 51 e1 ldi r21, 0x11 ; 17 + 4d2: 07 c0 rjmp .+14 ; 0x4e2 <__udivmodhi4_ep> -00000474 <__udivmodhi4_loop>: - 474: aa 1f adc r26, r26 - 476: bb 1f adc r27, r27 - 478: a6 17 cp r26, r22 - 47a: b7 07 cpc r27, r23 - 47c: 10 f0 brcs .+4 ; 0x482 <__udivmodhi4_ep> - 47e: a6 1b sub r26, r22 - 480: b7 0b sbc r27, r23 +000004d4 <__udivmodhi4_loop>: + 4d4: aa 1f adc r26, r26 + 4d6: bb 1f adc r27, r27 + 4d8: a6 17 cp r26, r22 + 4da: b7 07 cpc r27, r23 + 4dc: 10 f0 brcs .+4 ; 0x4e2 <__udivmodhi4_ep> + 4de: a6 1b sub r26, r22 + 4e0: b7 0b sbc r27, r23 -00000482 <__udivmodhi4_ep>: - 482: 88 1f adc r24, r24 - 484: 99 1f adc r25, r25 - 486: 5a 95 dec r21 - 488: a9 f7 brne .-22 ; 0x474 <__udivmodhi4_loop> - 48a: 80 95 com r24 - 48c: 90 95 com r25 - 48e: bc 01 movw r22, r24 - 490: cd 01 movw r24, r26 - 492: 08 95 ret +000004e2 <__udivmodhi4_ep>: + 4e2: 88 1f adc r24, r24 + 4e4: 99 1f adc r25, r25 + 4e6: 5a 95 dec r21 + 4e8: a9 f7 brne .-22 ; 0x4d4 <__udivmodhi4_loop> + 4ea: 80 95 com r24 + 4ec: 90 95 com r25 + 4ee: bc 01 movw r22, r24 + 4f0: cd 01 movw r24, r26 + 4f2: 08 95 ret -00000494 <_exit>: - 494: f8 94 cli +000004f4 <_exit>: + 4f4: f8 94 cli -00000496 <__stop_program>: - 496: ff cf rjmp .-2 ; 0x496 <__stop_program> +000004f6 <__stop_program>: + 4f6: ff cf rjmp .-2 ; 0x4f6 <__stop_program> diff --git a/Timer/default/Timer.map b/Timer/default/Timer.map index ddac2f6..9fc2867 100644 --- a/Timer/default/Timer.map +++ b/Timer/default/Timer.map @@ -122,7 +122,7 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a .rela.plt *(.rela.plt) -.text 0x00000000 0x498 +.text 0x00000000 0x4f8 *(.vectors) .vectors 0x00000000 0x26 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o 0x00000000 __vector_default @@ -184,6 +184,7 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a 0x00000058 __vector_6 0x00000058 __vector_3 0x00000058 __vector_11 + 0x00000058 __vector_13 0x00000058 __vector_17 0x00000058 __vector_7 0x00000058 __vector_5 @@ -196,34 +197,39 @@ 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 0x3d4 Timer.o + .text 0x0000005a 0x434 Timer.o 0x0000005a display 0x00000130 render - 0x00000164 __vector_13 - 0x000001b4 main - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_divmodhi4.o) - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) - .text 0x0000042e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodhi4.o) - 0x0000042e . = ALIGN (0x2) + 0x00000164 timerdown + 0x00000206 timerup + 0x00000268 start + 0x00000286 endelauflicht + 0x00000306 enderand + 0x00000386 endeblink + 0x0000047a main + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_divmodhi4.o) + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) + .text 0x0000048e 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodhi4.o) + 0x0000048e . = ALIGN (0x2) *(.text.*) - .text.libgcc 0x0000042e 0x18 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) - 0x0000042e __udivmodqi4 - .text.libgcc 0x00000446 0x26 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_divmodhi4.o) - 0x00000446 _div - 0x00000446 __divmodhi4 - .text.libgcc 0x0000046c 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - .text.libgcc 0x0000046c 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) - .text.libgcc 0x0000046c 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) - .text.libgcc 0x0000046c 0x28 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodhi4.o) - 0x0000046c __udivmodhi4 - 0x00000494 . = ALIGN (0x2) + .text.libgcc 0x0000048e 0x18 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodqi4.o) + 0x0000048e __udivmodqi4 + .text.libgcc 0x000004a6 0x26 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_divmodhi4.o) + 0x000004a6 _div + 0x000004a6 __divmodhi4 + .text.libgcc 0x000004cc 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .text.libgcc 0x000004cc 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_copy_data.o) + .text.libgcc 0x000004cc 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_clear_bss.o) + .text.libgcc 0x000004cc 0x28 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_udivmodhi4.o) + 0x000004cc __udivmodhi4 + 0x000004f4 . = ALIGN (0x2) *(.fini9) - .fini9 0x00000494 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) - 0x00000494 _exit - 0x00000494 exit + .fini9 0x000004f4 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + 0x000004f4 _exit + 0x000004f4 exit *(.fini9) *(.fini8) *(.fini8) @@ -242,11 +248,11 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a *(.fini1) *(.fini1) *(.fini0) - .fini0 0x00000494 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) + .fini0 0x000004f4 0x4 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a(_exit.o) *(.fini0) - 0x00000498 _etext = . + 0x000004f8 _etext = . -.data 0x00800060 0x18 load address 0x00000498 +.data 0x00800060 0x18 load address 0x000004f8 0x00800060 PROVIDE (__data_start, .) *(.data) .data 0x00800060 0x0 e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/../../../../avr/lib/avr25/crttn2313.o @@ -282,8 +288,8 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a *(.bss*) *(COMMON) 0x00800079 PROVIDE (__bss_end, .) - 0x00000498 __data_load_start = LOADADDR (.data) - 0x000004b0 __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x000004f8 __data_load_start = LOADADDR (.data) + 0x00000510 __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x00800079 0x0 0x00800079 PROVIDE (__noinit_start, .) @@ -349,36 +355,36 @@ LOAD e:/programme/avr toolchain/bin/../lib/gcc/avr/4.5.1/avr25\libgcc.a 0x00000000 0x20 Timer.o .debug_pubnames - 0x00000000 0x5d + 0x00000000 0x9e *(.debug_pubnames) .debug_pubnames - 0x00000000 0x5d Timer.o + 0x00000000 0x9e Timer.o -.debug_info 0x00000000 0x463 +.debug_info 0x00000000 0x5ab *(.debug_info) - .debug_info 0x00000000 0x463 Timer.o + .debug_info 0x00000000 0x5ab Timer.o *(.gnu.linkonce.wi.*) -.debug_abbrev 0x00000000 0x1e3 +.debug_abbrev 0x00000000 0x1b7 *(.debug_abbrev) - .debug_abbrev 0x00000000 0x1e3 Timer.o + .debug_abbrev 0x00000000 0x1b7 Timer.o -.debug_line 0x00000000 0x5a9 +.debug_line 0x00000000 0x626 *(.debug_line) - .debug_line 0x00000000 0x5a9 Timer.o + .debug_line 0x00000000 0x626 Timer.o -.debug_frame 0x00000000 0x50 +.debug_frame 0x00000000 0xa0 *(.debug_frame) - .debug_frame 0x00000000 0x50 Timer.o + .debug_frame 0x00000000 0xa0 Timer.o -.debug_str 0x00000000 0x102 +.debug_str 0x00000000 0x147 *(.debug_str) - .debug_str 0x00000000 0x102 Timer.o - 0x13b (size before relaxing) + .debug_str 0x00000000 0x147 Timer.o + 0x180 (size before relaxing) -.debug_loc 0x00000000 0x3fb +.debug_loc 0x00000000 0x474 *(.debug_loc) - .debug_loc 0x00000000 0x3fb Timer.o + .debug_loc 0x00000000 0x474 Timer.o .debug_macinfo *(.debug_macinfo) @@ -386,9 +392,9 @@ OUTPUT(Timer.elf elf32-avr) LOAD linker stubs .debug_pubtypes - 0x00000000 0x2b + 0x00000000 0x38 .debug_pubtypes - 0x00000000 0x2b Timer.o + 0x00000000 0x38 Timer.o .debug_ranges 0x00000000 0x18 .debug_ranges 0x00000000 0x18 Timer.o diff --git a/Timer/timer.aws b/Timer/timer.aws index f0d9ffa..06679ec 100644 --- a/Timer/timer.aws +++ b/Timer/timer.aws @@ -1 +1 @@ - +