From 86fc086bc62102404897234c353c4085117a8c2d Mon Sep 17 00:00:00 2001 From: milangames-art Date: Wed, 20 Nov 2019 15:33:34 +0100 Subject: [PATCH] big changes --- MARIOBRS.g1a | Bin 51252 -> 22044 bytes assets-fx/icon-fx.png | Bin 7429 -> 8173 bytes assets-fx/img/sprites.png | Bin 695 -> 0 bytes assets-fx/img/tuyau.png | Bin 629 -> 14268 bytes build-fx/assets/img/tuyau.png.o | Bin 480 -> 596 bytes build-fx/map | 667 +++++++++++++++++--------------- build-fx/src/MARIOBRS.bin | Bin 50740 -> 21532 bytes build-fx/src/main.d | 4 +- build-fx/src/main.o | Bin 1192 -> 1512 bytes build-fx/src/tile.o | Bin 756 -> 1132 bytes build-fx/src/world.o | Bin 31900 -> 1860 bytes project.cfg | 2 +- src/main.c | 16 +- src/tile.c | 25 +- src/tile.h | 23 +- src/world.c | 133 ++++++- src/world.h | 36 +- 17 files changed, 540 insertions(+), 366 deletions(-) delete mode 100644 assets-fx/img/sprites.png diff --git a/MARIOBRS.g1a b/MARIOBRS.g1a index dddd7ccce6716429a21b8d23e7ec569f33d0649e..5e5badf8fe618f667ce8be4dada7e49a4e7cb4eb 100644 GIT binary patch delta 3699 zcma)9ZBScP8h+1BNG>EmND2gqB!mgY*QbmHV+f&+o)`}DDI@bC9O#A1IqUk+nD%r|k+R?u2W zowduI&Pux6Swm|8+G0MnJ9NNr+!R=&5eFQ4ap)!3Bs<)pXU??64x9l{pMebR99aEo z$WNIAvVRUNC`y8wfdT|zW*n$xH_)59f#x3tTHpsNP5^azfu@BM$fOBr zscvi8mFY_T@?S3HBULKVXn{9q)$*jeL{oPP=!WBpA;m~IEhrAntXdL!r=iK-`OB6z z>GGy_Pu0e4k2YAH)Y3BJTxRVdD@nd!gvYIRZGJ>uQ|i)nwM&Mk63}(eKq}CzRohlS zqK&So%IPa=vg63w^S3)!^c9?ks&zE&eQoqVRd-kG*I1ZNw|1@;Es?afe9hJxeK>V3 z-%&gzsYP9lrCsGIW~7ih0nwP<;4AXkgWvgzv3$coGbe@K?rp;19gj5GBZbmz`xTe& zVRiczzoSj%U%Fl8FTwt%K&(GCkTROvDMxZUdL+K7WXFuFynCi!7a*f1!H#~DOP7qW z1@x-|oHUvl{8q5{s{WZ4^dz!70JmKaE;yFp4$6)#|naT{{NUFo_cz zK-+@Si|`>lh~`K}lUDsS&u6VEd^?_I)A5}#;n%kEeC1Q3o)|S7EcubNyv0Sh8 zZ;zhl1ivGkd_&sgFD{d(rAS=8e9u_0E27=w2;wd*1j*!vo*$Jhu0f?MmmnU2;cH zqwZJy&pwv=zu(J0!AGUq-2QL&@N8ZW%{(}>bLN4W`)78{B%iY`B=n9Mgu`w7gpne1 zlfB<0&HbV$tQU11axH(aKdeLT*v5TzeCIL2_$U|QJLFN`rMvrS#+YQ{4H^$n{c*&r ziRx)2pU^8DPORvG)oe`NK8h)j$!06%sCf~d`-+F9(l7rKsNT)So*Ez*4Ca+3hvPD<^$XzNw?YG z+ViM(H-86`qC>T@XVZS?GP9|vWbs4T*y}9rAKw)VernDM#136X3LR3!u*by&L-6z6 zF%`hmupg*tI8o~KBS5ng2MVtI1KffR;{>!-p5u3s?Ivf%I*?XA$)#29`AWk*&gDBx zL061B9Zw*2*@+V`^OhVWq%^t3?W{Eh>PE|O+?aD6o$9YpA7)9MAM9iO< zT`0%QZTpJM2epx0W+h%iwuh`)cd#tu<|VDBh|z@{k*xUtjR|33M%aK362N_a;IskIVk_u8gF)>NHSv&8By8#b;$t#(f#) zaAF?D0Go$$HlvVmIn&Ce%wm#W>H}zq#URET)VyrTx|cHz%X_lyOdQSXO3Q8*9*gRQ zt_hICSxaP_v5>=QipD7}`>I@Os^fA%=`cM@%GhI5S0k1oC@ydSF~pdGR$0R20*K|4 zR-n0N*^<3NqZwi;%01b2WJ}gbpecAwY*>|8P$BB>qX_i7u{Q1xF?JPk526F%MeIf3 zF~(}=eg<_1$~nX|>R9^?&GK~4=Nfj)h!gVJ+@~5FLURt{LFxZ)$S*Y+enG3AmC zBlV}_5r=(U-g-Qn>k%T>brpi?YnV^=+y81bi~x0D>Eo{TK$nimt;H9wxmj=AdP~QY zX2Z@tl%FPva zJ3S2q@MR9CNOMAaSIb9u_in$Eyo!L*)ACS-J)fS&6g8$i{G;&6<&B(kNS<4M8x!@y zITVV4KC8lcDZ^EEl2N+^i;g>^Q4O?4t%R%br^bps@?^~x6iWSy+X$CAsq9^OAD6bt zf*Z+$Fe;O^Ws7auTpyM%*N?E5@5rrNIEPohe5*aJkv({P^i^922lJ}vh7eFI?iAb3 zgdYL{_#Qc}$Z4HUq`LhHX~bz|%?=J`+vtYbgv*%-;jc67_7YI%D~K_W$!mFo!;dLr ze||zGzxZm03Vi(FpnctdF^2sZ_Rq@~Z?MsX8+|w0ppe&iwaAGDmW&K7>+w{BwLgS1 zN0*<@Y!4+qW@l(E8O*+CnWjfXSznl`^`YEZmDd{@95mJZzXZtv;sn@Hau`$9j43Hm zjklQe))y0~JuMD5+fe?z$Pf@wCPzj!(TFYeUC9T}i9T>_@_`AB)8sIaTok zSVKM1DRCbdl8};0T(ZQ4;ASd*T=qNh#OAsXlP^neh8O|Mi6N;k4UuxaWPZGo;!Vtk zxc*a;C5hQ9=gDp$V#JIr-f)FXvTueZNyyPRmb8#lMl4f^A)w~O0eqIwVY+oZJARHzv z?ty_DOx8E)Vvo_r91D%&7trEWCv@>zykr&7QuTtJRG5!$S!PSx3zFV~Z+XR;Yxd2o hrWe37C$qL-3fMJY-})KVKX=m%WJNQg9%HBP12-|XpI_(P*p{F5JH+{chf=@ zWwUEgXoad0aIVU3T0S84p@<^2(L`0GlEyUMs8ajEZqt_4vQ-=zwyh$SY%GUe(N52` zV<&&Ye%P^oKKH!OJ@=lOsafvwM4oeI_Uii+qi>8EwV&|!>Mxq+`@9GiM0oIoE6cl~ zk$AQ=cs!n_1`jR)Yz2uCcjxPZ=e0?piho^jEha|%00IO0rBU&pAp!XPLg7H^8t@0! ze19Ka1K@JF6yDC!uQ&()nO9A62f5IVq$ue+(R~QWje#X6uGm9vB$wb157*qoHGr;D zl$dJ%O@OOYKmbM|wFtx(0aAJyNb&bTN}@p8B*Zk3d|Wda&t#}==)j(ng@JXq?*`Pb z^VV^CT?C8xlqLkX-nRf`9#lzZ=6GF1b?H}yP*6UyJ+u;sU81ANcSbSa7GwI}Jr4Qs zp@T1eBfKC6435f>6m)|D)&W^R0^}nxZ1)zAS%Pw0+FU$lifeJBt|VNfD-%k%vd#9G z$Ph5}R_(9K_{B9@ii6qoe#&fyX~3PZ%6$ptmHyBnW%B5YK{=KmN(KxE@9ke1eQaFp zy4y!%`om{K#-RIXDp1>>%B;Z9p8{g&MA(&A;=7bdZ;A5mkDz?0+)%zzmV@%R5L%1> z{QUOa_S38Jjhjoxg*y=c`S_j=`XTa-CerVG?sUJ^(D<+`w|x#A>mMCy3zSnB!I(Nwy;bwdD;VS#^*b1pL&ZUGj`DU(YOloJpw39U}n`~VJ< zANzSYFB-BOxOY6Zd%)C$(K$-wY_z5(LNlU=^SYZIUXd&7RIK{CQl&oj+ zTM!aik67wJIXfZ;0aAhOH4fl<0*`DJi@Ax^2*iXJ%4v(`{YzT*_nKpTpq73iWdBmsywN}El61zC1;A}yLV_3=&{wV3x6SnZi~1(?Dyp$?fV zIKIfMP8U^i>z&w&ZJGv}C<#ELmS_3GJG9O!Gtz18<4sfainWE2q;;7$`{`nF3vcdF zZ6)Wpn!-EiRfljPs@WhRx>z(IWJi=+0)K770i>vxMr}=cT^BP^jioKzUbbZ&&P-$? zvx)L*AlH(}3kVyc4(Ff)=?928#AgVsKZ3Kx+H?(f899UKLiiE=h>LWp>^nWXxNQ<0 zD*v;&bp(q|u*|Jd>>c)h>j$bJH*$Ipmgq~;)~aRRk)STuY3#o`?Ly5K zEEY8j8+MiYu?1d4Gj@z1*t(U;XtVocbHjN&d~9l3gu9YmRNVOELoxGiWnxvReuFD! z=9So>v`bD$opmMZ=fCms6-<{4nbTuq?Fgbe>&|6kU|dX>Nu5snY5ga~^-(n2!Au{m zNS$if$?*;6X+rs=xCW1dnaOwqbmA!6WnaBCYmRF!F>) zE~^)Vaui<)$_swOk$Y@jGw(4}Ckp>bU-mr3H_XwSo;F4-jb9>Bzi&L3hb5?|nq;n^ z2|MDug=ONoG}fsXefa9!G)?E4_aad(TiQ6jKB{)L?BnzQHUOk`6w#v2wbne!)0MVp z?(;(<+umiv)9>HQJLhP`FXzwqu(QT%JrWL=ZX)w|MazeP*sr9;_yrh+``Fd;S(JG* zrq>oTv|vAwf*s+owSvrdW<(9M58OC(dm9gF5s1RRO_!#<|HuD855m*`po5S1(vtzJ zx^L%CdF=v-npWw>cN+{{sPqmGXQ`$!UK@ri&Fa%UvrGF8YwGU+vl^qHsjK?;r6Q*%*CGWZsU2E*8Yy=y$nAyW7Ayi$mjI%B(y)YpP9L! zA%8X-ue$%!;G5L*Uv;G8f<6Sm?!7+~8~=$s0>qWMs5v2%ql{D^e^iuS o6F2H=q@0{ob>-w)A+yOoWd1nLYAy~hO5t#A9 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 TPus6-00000NkvXXu0mjf1DEMT delta 7418 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 diff --git a/assets-fx/img/sprites.png b/assets-fx/img/sprites.png deleted file mode 100644 index c87747d6bb17eb6ce82e0a8b25f949e859684409..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 695 zcmV;o0!aOdP)EX>4Tx04R}tkv&MmKpe$iTSd`o5j%)DWT;LS#ELj-6^c+H)C#RSm|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfadlF3krMxx6k5c1aNLh~_a1le0DryARI_6OP&La) zCE`LRyDD_Oq8I%bKnO93nfjb4CgC~0?&0I>U6f~epZjz4DLIn?K7n|a>4rtTK|H-_ z>74h8!>lMN#OK8023?T&k?XR{Z=4Gb`*~*ANT=qB!^A?Njpa6GMMEW?B917kM*04X z%L?Z$&T6^Jn)l={4Cb_zWv~|df(QXJswklh3sG7%QcR?1KknflcKjl_WO9|j z$gzM5R7j2={11M2YvyBOtZfqbz*X;bQC`u00009a7bBm000XU000XU0RWnu7ytkO2XskI zMF-;x4iXa`)6*F zmD`+ijIp*hF<5KlW0kB@#H7DYKUgA1e9`goV#eg2+uj;-~aJ|J-{zB&s2Kd9fYLWi@ dv`EUI*&FPURs3GatRDaX002ovPDHLkV1jLbGg|-v diff --git a/assets-fx/img/tuyau.png b/assets-fx/img/tuyau.png index 74439f6b2af6541dc2899855b53e6415e4ef1572..a91fd1b811bc7757a88c187a0bf396fc33b52577 100644 GIT binary patch literal 14268 zcmeHtWmH^Swk{SdxVr~;FQ~$;fB?ZEIE8yrIE0`f!9BRULvRZ&2@-+@ch?Xc!Xr7S zyHCH@@7~vAy!)>iqoCGY-~8s>-=1^ry%_7Qnu4b02gg2uwr#u5(BbFLs=FNvZ#O6H;Yol&4G zV{*@F`jRA9XH_gNz`9(gN;6J97Waq&p5!x}XX?5CL+i-HiE)KM3XUsSpy17e6y}sb z2lLo{RfhN>{%F=E_5C^M_TFuMYo9zS8R&m|I~HeD#bxBtw%l$+UA50|6m86@IWv&a z;g{FWxiP$tTs5;S^!;LK#fzi&!%Rq<&mv&K|8gcngX4OiXo=i&cs~*9PkxW<>(0WM zhUkxcxslFlOne#qx%oK<3|r^C`AQ^@`oUqz$*p{d!|C4jCx%C2Cdbttx&Pdmm790p zsoRFmS=aKJ9|og2T6tT?s5^+d==#up$^T(X{7kjs9Qwv-tMa^+{5_XPZ6`G7gHhEj zb$PPbPqC^r>Q2-3su4f?8w**0@4~F#%NO;WujXObckP$#K2@!)M0hV%s-Cxdn2qpk zW*VwEizQtpUQ=F+WEm$Khd7g7&HDC#y%u2i=|&WxO9^>NNO?kRQ$gSvYTD*tE~f8E~}2Qu6fG`f=?-2O@j`1FY!Qgs>|O8 z#xpNve|B^^oV8`mgdki-v4?u1Ux26O(+=V@K21Yoo*)X`5^M+U>wfItVGM_L-3B|L zA~-r+DK~7lbGF=yFu#44t14zrE=6P>f^(Whfi5-~HiKiX%rk&zXFpVA5>}l6#an1N za2@0+N_QO+Xk1fbuE~#6VyXYISBes8{*1y7zU1Y4W+Yo9gzVUGvF3uUwbu=J@2P~Bwm{aUX6BleVByG72a}jcpO-2-pHMHM4Q); zhlqR~!1ufThHsC?w}D%0LqAKTeQt9$qIpv)TE~{=j^TPi(qdSXFp$h-pX`l-qBL0} zcGJu1vg^dRcR)&EvF@d-meV4ZHu8FFFpWHdOphKdsa?-+!zPDoAo*-J{_=K|Oz;(d zb==a4OPWvo3}sVMXEK8I>F4fi)48o=O8lp)$@E+fU+)*XE`V~Ylzt|WrSJ%vwqmG*vGdqZuy(30!aFpD$aD_j9SU>Rno-+UtZ{>ki8YD&gv ziNKK>@v;LB9Qmb&sDg@!KBYm|jmv0AkxOpfI>O=zsiLVLeB;MO%P^{2al5Kf&XR^`8NC2|;<@kd z6P{GBH7R}caHgluk!zBG*~#mub2_Yr@)f3pCGVtG)Z^C=8+_^wICEi9G5hxJVa^AA zdgP$7eBim9t+2W%6~AcapogN!F-24OMD+`2$<*luq?x7sraD-z4aNHWlJ?K}=S=}% z(rsbt6l_y>cTAFuPY&~`zRB44Fh=8OnHiyWs}nr=S1_;dY2kXi>=j01eZ$L+n`6)s zy<=?^@2X2L!|zm|8M1z)xa;2Pq2ZSck|)QXMgI8Qp}w=IUH4Ug*QNt5%PqugAc!7| zqGnU7?Ha3K!EWcWM{A~+Z|#V7rrGBS*J+EG2!q)+srtngO%uUTI+FC_*am(`<5j9_ z9scnJJ-$}WErtiO9=dKX4=7;a8%6-{`bF@oHDIm9r#aG3TOLmqw6)-%?-C1OJI`oP zob@=Ri$@LtxVfq;owH%x_??Mt@QOX4j5ZT#m~oK6&w zURU_?VYZSgx&d)yaN-9YHX=ROn%wx21P75y$UT4r;;5q=Lw&S6H91cYysl7subNfu z(vGu3aaQ+%{7^PIaOv}ct|KAuXP@4g^ee(+{@ZX6AjkZR&w%IaHH%3n#?8Fth~dm~ zfct%-mVdkp7=}cjxu-(pHO%;7@Q_iIn;B*2-BlkAkS)oBNZ6VaWl|>4v{8kK?qSZD zu{gqw3hLt14|#9%d;Y#%0@PY(Jhgn`$pzgi)WzeIpyc3iIRK8RM~K zL|eDLe_LaSj8yir&uxIE=eXbA$eu1?m&oZH?T2G%{sJGvWW3?vmw?x-h=-^=Q*XdE zo?palii`(n?y1E0s^5VOS;|y*T&k{l;a9FH*i!qSQw*cM^Vzp=VG^H~_%w!fTK;iF zL(fXgr+I1X`8Sm5A?#kHPXkuylOI%*f=+1=_HFp!E;q!#_rTP;TMEskH&_(dT#&Hk zCMh1|k)$j4bgx|Th-VLm*w9!4aG*plK4B(<^u?Q~Az+)^ z9%ke*?pCxhwvV{XKESk6xEO&*JveGC(cRJJAP08r6PMUz6_Uy1a|E7Ur@~E*becw~ zQ{9It6Z!GF#9wlN<^AbAs#=HX7UY+r(3%ZDgfI{dM5G)f)9W)d5%e5E-J;4wHt7g3 zZhO}0UMMA%e02wq60s+0q7a?$j&oRm@7Z5S1n>l;o<2XVDLG$JGl=CaZx3$%r7qRqJ^e_=?s7|)4bj3NcLl7xtSvB%4xu+Z7f#V{@+gthE?1ciZ0xeC&Z5mP0; zVO1d`QQud7MEaSCRv5Ueb&+Zz^K?n0R$ok5nZ2iobO7lT+M=J({GN2wzYM4%X$im% zIL{1Tz{bfMM~Qex@)OPPXi|rf4Tc{88+sb!qG%+6Xm!x!*Od@orex?`+A>Iy?IL&j zs?YGu4cT)Cp1L4u}j0EH(8I5VS6yqqak+{Ch+wXKrAt`A!TpuJpIRxfa zWdySqe6L~(D|&;{j+ue1w?Z#d+{#ZF;pOiaG`UfI0=&A#&p_oK88#(O}FAhDDg}k!tXO??@zF9Qp`;1GcurDyy_Z+gYkf zK^qZna3{nW4P{lC+AENN;Us#fabnmoUAaf%6>ct6e z`G7f)vrU+U5`NcDD@P)^ABilbu$#!)OQJ|zceA`&~`Dj1k_ih+@lODPR?W2P3 zBRn23*cGk`TCoo%mf=zO$buXH5lE{-l`gH$=}0fT|4EYmNv;92rvdYzoiQhpX^BCw zQduoxnS}csXF*UcVz`WZ#Q5h(DvE7qC>cS1Ow=Y)uLEKt4(YdekpY?)FtlxWp?9-m zc!0s``(B95ccvX)4MpMTMWefB!YX|vpw#N_8DGupJ7II_s=P+3kMot@ws?x(MB29o zpbcbo9Wp{PMkh&>7Ji3RbnU?>bU1i(_`S*WdfCB=mTkGOgz-l$GE41!XlBvNsy?%L zCqkk^mBB1-#$hfgckC|&LE*cU-(xYotmk27iP-uw4mJnzJ50#}x#Z~aQs1zOv&3W; zvfvosL^=kLv7sCGJ0i~xymW>_aPG#oG!%mqIgn71Ff3v~q&&LDZ1!&!g~>VKBEnm; z9p#i3^U~SGEJX)`%`YEYqqy(lN`s5>9wf*=QL0t`*obzbJmoRd~~GA4mu8rZ)<~E zo-X=2Y%a9onk}B0jr7b*zMdOcm8_GRV>n8b@Z*`MG>l(HUNJFiDUq;G;f(8fqriSt zdA26g-HCJcl_)OzH52IFT}|$reRDR+TMU=wl)KY2%BT;}G+dN{KP>_HFv zx8~(?SFtL4sM;C1HQ9aG_DB^7ZPIe1Qgp8~&xLY;(=HP*sV6VinxwyZvMd!ZjNc*- zqdIPLB73(Gc^zNv5D;2m4u&v4NJe`1$_I|Q@2bN@8g5QA`7(v`$?3i1eKEfv(`9GBy6Kz43i7Ew!7tf_H;TN z{Pns3Sd=?}cbw4>TC~6r@pAdNHsX40pI1E5f{LjBT^Mxev+Vcxht_IE>IJDHd%#;q z+VPTWCtga@?0zHzQ45k>>`yTm@Lq}VP?UO!&}tlVVGMn?1j(a7F0r_g_f;KI6iPsmQI9Wj@>iPjyob|EmL>(TqlyV%YFgG zrf<~mBxbedFMh6oMJmE>7Rtp{O;r<71soj#eP&!uC>zb2J*NsEObAyi4#Z_Xw?5I4 zK+WHM^};9Vpb;$O^d#5tS>Pz?4zHQbiovou<_p(}Q?V0HB3rAN<*0dgVZtEHh}rde z2K|W1oZb7vy}O$_D6U?Xnr<+ta!~2XcLfpzN^63$iRnNN-oj@%N1R+oCLplj-3i zkYxzLpnV65d^9pySivw{>98}ZxCH26L2HkBT5y}y<`oX7>X|CLM7P>GBoAQPd7)X7 zIfof8sb|fzHz{|%=XuN$=r#x;f1*MfbSV~69~LJfqMqIt;ngaVdut@Syq1gpIk}$l zm?gD10Jvxb{R=(TpF$X` zaYHagl>HqVPry6WOA2m;1?5tNz6@oAW11%NrRvH`&ttG`!c68-)T`O((k5zmR>m@P zA6}`Z<|hPV=P`uK@U>pI!CF~xU0-GmTH&E0J%;D7$=F1ZixWcKpybcbA`88IF(u&p z5>g7ahWw(%;s$nKv*y|qAH4;sUXh>NO?rc0R-KGBzW#~spE$POwu+rD3wR@-loB=F z!YCOwSkTbnFf^M;$YtK5_nQL?+BG^DnIrX&@&%A&ig!L0tH9KD!k>Up$X(V1$( zwh+99+Hk^F=MT(ljK#^06KGLVgHX=W{I&ZPlD9Rj1ATB;*4g#}mLcbIo*FMK>Epw0 zZgRTHcNN$VrDif03Y*^s=E^OKBlAmq zWtgO;z_HyH(PMrsDZS1;ev9Jx6&RZOWTyVkXKHsvw8)j$O_8_ty8QHPNCC^b(JgnU z`q?a2xV9vUR$|voS(&O8uj9E+dMJH@&GEA(4r-IFJcQ9qSU$WCoyV$J(}l%YXK7tZ zRYsquqHxDT>2j4QI_sw_;XC`LEce!LRgSH2kd8h2WwN6x_g3$GolFUraQ^gXfKqP+ zuHdXx4IYzk(mV!VU>np6aE#moB}Ju>EXf;0m+FKbLjCq1lO-}C6({!M)DP>t4|Q5g z4GDTg8pl(W9d8^K$p2ZA=Fir3& zvoG6jtLuwQjk@hU`0s};goa%k%I6<+Qt}odc6vp=Ccw{uD;MaT5jhA<`ABV~q-B}} z@l3jT@!p}mjZt_5bAZ@+aLx%Nw|Cmgb>}Fzp+ir%B|y)c`I2TTf5Xa4^YafSmxQO4 z*LqZkS({%L#9-bFh7|!PDSq1IF`v%nfa+#73R}pB3rwI5q#8V?_Xj`XXN{p z=7cy5$x8#L#x*9o`!vm1&$zQ(epJPv&AF4mQgz+B?`!P5#{)s%6Z!mD$v2Gd(&F{7 zF22`z`Q@&o>gwwhwsft>Yk7LQgY)S$ehHehPmG3Z(yORs*Dk)rz|!2&uuj1#mC?_` zzQbB+$BgvydA82H8VorbWk5~QfLy4$bYd0lZkMD*W#CBP^6jz6(pFY|+tjJ{OCBYT z8~o06F)U#rfL!z3tYUumD35v#gxcCLUGN#^7+@-lO3FL#aMhxSt0*d1aeKRbV!!u} zpBOibzHRfuK2Kht%k-tJw32YcJDnnmce?W28Jo3HGRj-HQ;Qtu+Hyf{YMH*G*r%GT z&K2eRlWfza=t1WM+sS)n)xJ~9%fY=0jCUTv5QSQ;v)qqHweXfDDV>t6{`}?`!1P%0 zZGEP&=~OL0`C2l;9u|Ryz(oE{oJcDDabod@`?K;WIrEd&Xgx~2;C_1eVj#|d@yquJ zgb4@@CYMy0E-BU=j3@&)=QIUu;q7}R z({1&Yt>Vi#z3O++!F^_EN9~2kkZ^RgU|nrPhpDFye#n&}Zs9M`y>To~DaJ|#913Xb zEeVX_s`fE^;>xKBEf<(m4SJuW&JMRZOC4uGGE;9h^R#5HIrcle4300*@2OY2RlZ zY-2xT2#OPp3|5(7k4)6|jI3GH!y$jhc!e_f#O8a9HidM^s~R&GfthFXxZS#WX>+qJ z(#}K8T^rBH;(S!`k9bWbn_`X+wewIhMA4BbKO{uc!^cA~sCn~UwK{q)?#etOTHZ8E ztR&!0(NJ;D-YIyo)-A>{bSIy^D|PA(a}Ykr@r_A{L~ct+E7g7TF>9@Z21J9$Yu7s% z`9q?*HFU(ctJ2ma3PolIndRZiYC1%{hOV=dC3k`Bo#HY#YVJ`&P@zb!qqJVK-k?#@ ztEUf4YHWo+B1q_yRU;|N2Vik~P%=Xq^s+*~vQ{HXCK4%2z8+gLeNBCi(zlbGn{xvd zuT4XX`H518&+Un8tu)dq7{mJV;vtEzX>J86+V#Gkel8Q0B9qW>ab4`M_QLt2v7M1+FC`7qQ5*@FQF}_X7?jK=K1k;Ey14dOGK=W z76`uo&CBE;=DAuz`<>tqlF@U;oa~GKS*$S=Ou52F2)f@T=GEoEXZ#vd#VTKD|8ifW#O)UU7Cd6gN}6xIYv((MIZxu>;i4{bBlSDqmZy1*3V1 zQ(C!b2#zib?I0_#_bz7gr(5;=G3)E&z&>BOPst{`R-t;*@Na&A&IROd99K6>y_Ho) zW5qw<|rMmhm9>p)ds@W$LKe2V8TuX3%bxt>*GEMT4{5|qA=_|1y zKmIs)c&ys*F6z?zDkE^@Td2&Fj@j~8EH`11(5vVP2RcdH_wUAm$f#tpXn0P$81c^T z#Um=HWjSBK%=0OwOAIDY!B4F&1d2PSMte*08J8#XI5xW7-wR-sY(b7i+%51y8dL_n zI0*?j&%oFl-MmRrs)RSNy%wYvMk=k+HzB!36J_yrG3HCsLKC|i!t2;GLq&-iSTiYS zx30wEK=&GU8eV?(9;dv2&N zk&xoXhTl-Jpm&C$ckWS|)nm{GXmr9;gpYTQNdiQZ{lri<#rjc3v(w@Ey`OrhA4Opu zIQL)3xGcpdjV)Vp4B2&3G-@t?crd89v1T|u)&`ugo`;g#Xu@dr1D1vgWYkvl|%>Hk9qus*7-goPPTE8-mjnnSP!}r2l=&q0r>yjF4eWb` z@2PObqso9_m{PO^`f!Y=5P~#|to9VrXXmuR(U}GBE4#gM$td0ri*Q@RV3P!~GL#*= znn4}8SWJ!wA<~Qo%Eg332z2@&;Porp?@8r@)VDs!RQo>2azE(VD64bi40UKR-+e?c zx^E2X*@~{bGf(+S9Qi=-yw6c9u0KQtX^LO+vlm<(RudN@ywdm8478L=MHjKea6#$< zzzIgb-@IC58O~rPTEjuMfP{lu)?6zAzzMvv{$|3@mh5NqJ&>y$H4| z=YkT{G+n=C&Rl3&M|kFb4|h@2?I9l};kYm!U>%fhwv7;x0074Hir%3yZPOuBPK+Zt z1J^?ZU-D&vF1pGKrV=9h&B?6$FUE4WW`d}#aX~I_!+dHcIjSead9##ppHlo;$Ry$5 z>52w%1DfPE2oDaW}A> zilR6MR<6Lt$2?r>lNBfTc|PZ^DuBM_@xK`xz!n!42R|czR%+tN(JJ$EB-GaR42U%o zb7YIK53erthH5(flBdcyGZt{*bwebQi<~hstx_|n^;5&YJM;|lX}y-}%d0+c2VdjV z@+zmU#5gcdBMn?$Po+5f;$MwGWuB`zLlL|DB!WO>(qn2mfpRX(Tdc-`72* zee?i9fpX`0qHVzI7uvgo!3WjFB?CWkR5c<8#8MTG{CuAo#VK`sServIer{)XC+hQ@ z#V$cD+CLS|hnkFoGTQPAv8cBbg{QqXGjNT5jKjNDW-5?C_crmo;CljU8rOF7K}D=} zWK!wCYhPqxIQFWdF#b+jHtfXXu!1v!FP!atUwd6=ZK>xR)w#mtK$4Ik^jD}+jIH># z&Q8qnEz;YjDuh+Kt&9@ixW1_X;{^CoD;*fkvyoTuk<0{_^e&N1seO9&i1-&WkW5ae z8DeB z!#63x*fFF@p^SwXSBbojO2!@>>kfKT1b=oo8t-N$wSG?V-u5c<02Q9^=d`9;oIQl8RymWVV+bNG~)aYHm`IP^4_3qYG@|#e~ z!g(iSvGkvg01Tu1#pzpPZQD_GpQ#Alz3n2lnsnLV{h~DG;KOoknksqF3u7t{)!C-v zy1rw_BX+PZd*cniSB`4C8Lfy|-(nONB zbczDL<1*jQ%9yVroQPj^)jqkcSkO0*maKOKm7O)2W{#7oPda(BV3sV5FX*NTLm-sfN)r)6fz z;v0FiHi8bX`6f>uPepJTiUSU+$b8D$A~(6eGBN-qHI(_JH74_OAtt5~SLN81?2X=ydEwDjK&XFY~V_lpH7^r#Vp zsA?$5vSA%&uf^nu=;08$OtKQ>NEH+6yK#H%QuEs=s2fl`nF$OM57$B=wlbtNcp`a% z(%Ux${vxZ`#>Md=?6hmsFa2_Kwc{2p$H+2uN&w5c#i0<-g(u#SFsN!r_Ps3*e2QLw zI>WQo=8mJ)^;^RTE3f5S*YgrUIJ{V_XA)`Q^EOFfyA65z}e&xoul3@j?duAfQ+{47%T zHG33HaFt?cq$CNSC79C7wW_=eA;=g2-APv((lm9(rr3 z&Wwd*M6qp-gnEP!nY!*vEvmAPbRv$Z<2`R&g2u*V{`KyI10* zcF-Wi?eJhYIBXf4$HQ{E&y_{Yog6q#Ax>r%oSqKOkCg!j2Nd^oHZ`}ifYF#)SlKv& z=#E=E>1b>qAUYj^=iJYor7f&&6uhAp8r~|J=H7PZ00^D97&_2X0s~Z zD&h&E`^_uz`2Clei;m_u1ZD@K(|xW+BkcsWpyB7_=j7&)^|W#4r4vJ^0YV{`BI+`7 ze^NY-Ky;7q6wV@CTpk`CoF06fPEac@9smHq#m&pb%ggbI;BfVFgqeDBIJ(mRqWFVD z#=_Mc`dH33PL4FcI8Du*++ZL&y2p8%KgoX;yR7G<@y`Ii#=q%ZVGu6x zyxiQv9NfGdya2Ah`ajM-fBtuGN7p}9eAJW6)6|)Zhm)Jj!Qr1gTw${A|A_Z5JzO;( z&n$AOTev#8LCq~>-7Oqp^nVTNZ13j!*O+du7Qalt^R|aray=&XJMv$BRyac7xjg#z4%uEbJ{D9uskWWajxN{G(PIU`dB?S4yINXT+WVGzb77Z7LkTp zn8KW(nodskAi7^U(fo4#-3v6pKdW3s*~#4WS2z3yTR?s_%Ac(wWopIsdkEzEufYEY zlZLgEhvWYn&p)7lXOV=$Je;6*s!&xkTMKj8f6eo+z<*~_e_W(oVNfsde{)g)8xHtK zSt>mGIzheu5?{l@<&V)HD~Y|$Z>eZ#es`~ksrfGzL3FOB?iPO()T54nOqpAoI$Bvg zE|Y)u$lvTX|Ds$4%!DC4{5%#MLV^GR4t`4^9u9yIgooqNWGcijC}_rGVe$J0|DD~{ z$r9#a3bl~5dTgS{`~28Kzwa{*^Y1ES`De6;wZ&tSY}`B|+}w13++G?W*RPfEZ{DsRqB6*{2|L<9vF`~|6zN45IsKExc>fN`?D;5btw-ord!2hYP|H$=kDe!NB|5IK6-{eC7$JW@w@$p5^ z<8kBLmL{t6xM@anR?u^WgX5(C^?~;+5O;qxqQJn=E0Y1HPk7147-g?Ohj6+1T#_o%FKZ?08VvmzIVN35?8d+wv%jdF~ bPbW{J0qTRKL@C>k7Xb&BRgtNbG70=&5)J@h delta 575 zcmV-F0>J&eZ}kL!iBL{Q4GJ0x0000DNk~Le0000$000082m$~A0LB1rhyVZqglR)V zP)S2WAaHVTW@&6?001bFeUUv#!$2IxUsJ`eih>{7DYuIwF*V35Nd^19ZW9$ zf+h_~ii@M*T5#}VvFhOBtgC~oAP9bdxVSngx=4xtOA0N2Vm&zS$GdxvyLW(4Ei%n& z8wWJqHWRU^m`bmT9k1v?Ke{l6u*@uDPLkqiIlk`Ufggz&*`b) zhIv{wPhJkt3Tg)L=83Hk6KOXAHJCqnyRhqDPk@D6`P%Fe)hPlKlVx N002ovPDHLkV1nFi_d);w diff --git a/build-fx/assets/img/tuyau.png.o b/build-fx/assets/img/tuyau.png.o index cb362c4d46235432361ffda6f0df3e08be544781..b860ff83b92a7846317e7b86a35d05e6c376df3b 100644 GIT binary patch literal 596 zcmb<-^>JflVq|~=Mg}b)8(E+SEN22HH5gbKSQr>L=>B7nKhRvi!J&yk04oNmhRcN- zI9%77>aZ%*>HvsdUBBx9NIyu;|M~`o1}-3GMWsRF4%{FW3=9sUKn!H#qG4*lW}%q_ zG8ZIH2rxtZ4EMJHgwF%iw*#aX%9lp)|9@nN&&*AaFDb1|EJb3*r{<*~bBi;pQW+TZ ziYs$V5|e;*NfCt3fU%15QxZ!OL6#5?K<)s!l?kc^6gyydLisR%AgcjMy#e9?AO?CD std|8y1HHz;2^9lUAi!t?B(%Xy2mv!s5Xc4Tg#yNOAVV3(1JYo103&2k!vFvP delta 147 zcmcb@@_>1Qa)<;22$+CL4F*;Q79iyK|6kGM|9=LChM9^cjg2t+|9=qwe8-9vIG;5 K`aIczNdy4P)GLYr diff --git a/build-fx/map b/build-fx/map index d82eab2..86eb2ce 100644 --- a/build-fx/map +++ b/build-fx/map @@ -1,13 +1,15 @@ Archive member included to satisfy reference by file (symbol) +/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) + build-fx/src/world.o (memcpy) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) build-fx/src/main.o (dupdate) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) - build-fx/src/tile.o (dsubimage) + build-fx/src/world.o (dimage) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) build-fx/src/main.o (dclear) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - build-fx/src/main.o (keydown) + build-fx/src/mario.o (pollevent) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) (iokbd_scan) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) @@ -32,8 +34,6 @@ Archive member included to satisfy reference by file (symbol) build-fx/src/main.o (timer_setup) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) (vsnprintf) -/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) - /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) (memcpy) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) (t6k11_display) /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) @@ -79,7 +79,9 @@ Discarded input sections .comment 0x0000000000000000 0x12 build-fx/src/tile.o .comment 0x0000000000000000 0x12 build-fx/src/world.o + .comment 0x0000000000000000 0x12 build-fx/src/mario.o .comment 0x0000000000000000 0x12 build-fx/src/main.o + .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) @@ -95,7 +97,6 @@ Discarded input sections .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) - .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) .comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) @@ -123,16 +124,22 @@ Linker script and memory map LOAD build-fx/src/tile.o LOAD build-fx/src/world.o +LOAD build-fx/src/mario.o LOAD build-fx/src/main.o -LOAD build-fx/assets/img/mario.png.o -LOAD build-fx/assets/img/main.png.o -LOAD build-fx/assets/img/tuyau.png.o LOAD build-fx/assets/img/level.png.o -LOAD build-fx/assets/img/sprites.png.o +LOAD build-fx/assets/img/mario.png.o +LOAD build-fx/assets/img/death.png.o +LOAD build-fx/assets/img/brick.png.o +LOAD build-fx/assets/img/main.png.o +LOAD build-fx/assets/img/mariosmall.png.o +LOAD build-fx/assets/img/gift.png.o +LOAD build-fx/assets/img/tuyau.png.o +LOAD build-fx/assets/img/coin.png.o +LOAD build-fx/assets/img/stone.png.o LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a 0x0000000000300000 _brom = 0x300000 - 0x000000000000bd9c _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) + 0x0000000000004a4c _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) .pretext 0x0000000000300200 0x8d0 *(.pretext.entry) @@ -172,7 +179,7 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a *(.dtors .dtors.*) 0x0000000000300ad0 _etors = . -.text 0x0000000000300ad0 0x3218 +.text 0x0000000000300ad0 0x34f0 0x0000000000300ad0 _gint_exch_tlbh_start = . *(.gint.exch_tlbh) .gint.exch_tlbh @@ -180,240 +187,261 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a 0x0000000000300ad0 gint_exch_tlbh 0x000000000000004c _gint_exch_tlbh_size = ABSOLUTE ((. - _gint_exch_tlbh_start)) *(.text .text.*) - .text 0x0000000000300b1c 0x34 build-fx/src/tile.o - 0x0000000000300b1c tuyau_draw - .text 0x0000000000300b50 0x124 build-fx/src/world.o - 0x0000000000300b50 world_get - 0x0000000000300b98 display_cell - 0x0000000000300bd4 world_draw - .text 0x0000000000300c74 0x8 build-fx/src/main.o - 0x0000000000300c74 callback - .text.startup 0x0000000000300c7c 0x90 build-fx/src/main.o - 0x0000000000300c7c main - .text 0x0000000000300d0c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) - 0x0000000000300d0c dupdate - 0x0000000000300d24 dupdate_noint - .text 0x0000000000300d30 0xc8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) - 0x0000000000300d30 dimage - 0x0000000000300d84 dsubimage - .text 0x0000000000300df8 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) - 0x0000000000300df8 dclear - .text 0x0000000000300e44 0x3fc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - 0x0000000000300fec pollevent - 0x0000000000301130 waitevent - 0x000000000030117c clearevents - 0x000000000030119c keydown - 0x00000000003011c8 keydown_all - 0x0000000000301204 keydown_any - .text 0x0000000000301240 0x124 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) - 0x000000000030124c iokbd_row - 0x0000000000301334 iokbd_scan - .text 0x0000000000301364 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) - 0x0000000000301364 getkey_opt - 0x0000000000301510 getkey - 0x000000000030151c getkey_repeat - .text 0x0000000000301558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) - .text 0x0000000000301558 0x1c4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) - 0x00000000003016e8 gint_panic - 0x00000000003016f8 gint_panic_set - 0x0000000000301704 gint_exc_catch - 0x0000000000301710 gint_exc_skip - .text 0x000000000030171c 0x17c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) - 0x00000000003017d0 gint_install - 0x0000000000301880 gint_unload - .text 0x0000000000301898 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) - .text 0x0000000000301898 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) - .text 0x0000000000301898 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) - 0x0000000000301898 tlb_addr - 0x00000000003018ac tlb_data - 0x00000000003018c0 tlb_mapped_memory - 0x0000000000301994 utlb_addr - 0x00000000003019a4 utlb_data - 0x00000000003019b4 utlb_mapped_memory - .text 0x0000000000301a8c 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - 0x0000000000301a8c dsize - .text 0x0000000000301b28 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) - 0x0000000000301b28 dprint - .text 0x0000000000301b80 0x56c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) - 0x0000000000301ea0 timer_setup - 0x0000000000301f30 timer_delay - 0x0000000000301f90 timer_start - 0x0000000000301fc4 timer_reload - 0x0000000000301fe4 timer_pause - 0x0000000000302018 timer_stop - 0x0000000000302074 timer_timeout - 0x0000000000302080 timer_address - 0x00000000003020bc timer_clear - .text 0x00000000003020ec 0xce4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) - 0x0000000000302ae8 kprint_opt - 0x0000000000302c30 kprint - 0x0000000000302d08 kvsprint - 0x0000000000302d50 sprintf - 0x0000000000302d78 vsprintf - 0x0000000000302d98 snprintf - 0x0000000000302db8 vsnprintf - .text 0x0000000000302dd0 0xdc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) - 0x0000000000302dd0 memcpy - 0x0000000000302e8a _memmove - 0x0000000000302e8e _memcmp - 0x0000000000302e92 memset - .text 0x0000000000302eac 0x1d8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) - 0x0000000000302f44 t6k11_display - 0x0000000000303018 t6k11_contrast - 0x0000000000303044 t6k11_backlight - .text 0x0000000000303084 0x150 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) - 0x00000000003031c8 clock_freq - .text 0x00000000003031d4 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) - .text 0x00000000003031d4 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) - 0x00000000003031d4 bopti_asm_mono - 0x00000000003031fa bopti_asm_mono_alpha - .text 0x000000000030322c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - .text 0x000000000030322c 0x410 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) - 0x000000000030322c bopti_grid - 0x00000000003033a0 bopti_render - 0x00000000003034d0 bopti_render_clip - 0x00000000003035e4 bopti_render_noclip - .text 0x000000000030363c 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) - 0x000000000030363c masks - .text 0x00000000003036d8 0x2c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) - 0x00000000003036d8 gint_setvbr - .text 0x0000000000303704 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) - .text 0x0000000000303704 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) - 0x0000000000303704 gint_intlevel - 0x0000000000303758 gint_inthandler - .text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) - .text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) - .text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) - .text 0x000000000030377c 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) - 0x000000000030377c __movstr - 0x000000000030377c __movmem - 0x00000000003037b0 __movmemSI64 - 0x00000000003037b0 __movstrSI64 - 0x00000000003037b4 __movstrSI60 - 0x00000000003037b4 __movmemSI60 - 0x00000000003037b8 __movmemSI56 - 0x00000000003037b8 __movstrSI56 - 0x00000000003037bc __movstrSI52 - 0x00000000003037bc __movmemSI52 - 0x00000000003037c0 __movstrSI48 - 0x00000000003037c0 __movmemSI48 - 0x00000000003037c4 __movstrSI44 - 0x00000000003037c4 __movmemSI44 - 0x00000000003037c8 __movstrSI40 - 0x00000000003037c8 __movmemSI40 - 0x00000000003037cc __movstrSI36 - 0x00000000003037cc __movmemSI36 - 0x00000000003037d0 __movmemSI32 - 0x00000000003037d0 __movstrSI32 - 0x00000000003037d4 __movmemSI28 - 0x00000000003037d4 __movstrSI28 - 0x00000000003037d8 __movstrSI24 - 0x00000000003037d8 __movmemSI24 - 0x00000000003037dc __movmemSI20 - 0x00000000003037dc __movstrSI20 - 0x00000000003037e0 __movstrSI16 - 0x00000000003037e0 __movmemSI16 - 0x00000000003037e4 __movmemSI12 - 0x00000000003037e4 __movstrSI12 - 0x00000000003037e8 __movmemSI8 - 0x00000000003037e8 __movstrSI8 - 0x00000000003037ec __movmemSI4 - 0x00000000003037ec __movstrSI4 - .text 0x00000000003037f4 0x1f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) - 0x00000000003037f4 __udivdi3 - .text 0x00000000003039e4 0x234 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) - 0x00000000003039e4 __umoddi3 - .text 0x0000000000303c18 0x6c /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) - 0x0000000000303c3a __udivsi3 - *fill* 0x0000000000303c84 0x4 - .text 0x0000000000303c88 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) - 0x0000000000303c88 __udiv_qrnnd_16 - .text 0x0000000000303ce8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) + .text 0x0000000000300b1c 0x40 build-fx/src/tile.o + 0x0000000000300b1c draw_tile + .text 0x0000000000300b5c 0x1e4 build-fx/src/world.o + 0x0000000000300b5c world_get + 0x0000000000300bc0 display_cell + 0x0000000000300c68 world_get_ctg + 0x0000000000300ca8 world_get_real_x0 + 0x0000000000300cb6 world_get_real_y0 + 0x0000000000300cc4 world_draw + .text 0x0000000000300d40 0x1c0 build-fx/src/mario.o + 0x0000000000300d40 mario_draw + 0x0000000000300d98 test_sol_le_plus_proche + 0x0000000000300e08 mario_move + .text 0x0000000000300f00 0x30 build-fx/src/main.o + 0x0000000000300f00 callback + .text.startup 0x0000000000300f30 0xb4 build-fx/src/main.o + 0x0000000000300f30 main + .text 0x0000000000300fe4 0xdc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) + 0x0000000000300fe4 memcpy + 0x000000000030109e _memmove + 0x00000000003010a2 _memcmp + 0x00000000003010a6 memset + .text 0x00000000003010c0 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) + 0x00000000003010c0 dupdate + 0x00000000003010d8 dupdate_noint + .text 0x00000000003010e4 0xc8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) + 0x00000000003010e4 dimage + 0x0000000000301138 dsubimage + .text 0x00000000003011ac 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) + 0x00000000003011ac dclear + .text 0x00000000003011f8 0x3fc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) + 0x00000000003013a0 pollevent + 0x00000000003014e4 waitevent + 0x0000000000301530 clearevents + 0x0000000000301550 keydown + 0x000000000030157c keydown_all + 0x00000000003015b8 keydown_any + .text 0x00000000003015f4 0x124 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) + 0x0000000000301600 iokbd_row + 0x00000000003016e8 iokbd_scan + .text 0x0000000000301718 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) + 0x0000000000301718 getkey_opt + 0x00000000003018c4 getkey + 0x00000000003018d0 getkey_repeat + .text 0x000000000030190c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) + .text 0x000000000030190c 0x1c4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) + 0x0000000000301a9c gint_panic + 0x0000000000301aac gint_panic_set + 0x0000000000301ab8 gint_exc_catch + 0x0000000000301ac4 gint_exc_skip + .text 0x0000000000301ad0 0x17c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) + 0x0000000000301b84 gint_install + 0x0000000000301c34 gint_unload + .text 0x0000000000301c4c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) + .text 0x0000000000301c4c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) + .text 0x0000000000301c4c 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) + 0x0000000000301c4c tlb_addr + 0x0000000000301c60 tlb_data + 0x0000000000301c74 tlb_mapped_memory + 0x0000000000301d48 utlb_addr + 0x0000000000301d58 utlb_data + 0x0000000000301d68 utlb_mapped_memory + .text 0x0000000000301e40 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + 0x0000000000301e40 dsize + .text 0x0000000000301edc 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) + 0x0000000000301edc dprint + .text 0x0000000000301f34 0x56c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) + 0x0000000000302254 timer_setup + 0x00000000003022e4 timer_delay + 0x0000000000302344 timer_start + 0x0000000000302378 timer_reload + 0x0000000000302398 timer_pause + 0x00000000003023cc timer_stop + 0x0000000000302428 timer_timeout + 0x0000000000302434 timer_address + 0x0000000000302470 timer_clear + .text 0x00000000003024a0 0xce4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) + 0x0000000000302e9c kprint_opt + 0x0000000000302fe4 kprint + 0x00000000003030bc kvsprint + 0x0000000000303104 sprintf + 0x000000000030312c vsprintf + 0x000000000030314c snprintf + 0x000000000030316c vsnprintf + .text 0x0000000000303184 0x1d8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) + 0x000000000030321c t6k11_display + 0x00000000003032f0 t6k11_contrast + 0x000000000030331c t6k11_backlight + .text 0x000000000030335c 0x150 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) + 0x00000000003034a0 clock_freq + .text 0x00000000003034ac 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) + .text 0x00000000003034ac 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) + 0x00000000003034ac bopti_asm_mono + 0x00000000003034d2 bopti_asm_mono_alpha + .text 0x0000000000303504 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + .text 0x0000000000303504 0x410 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) + 0x0000000000303504 bopti_grid + 0x0000000000303678 bopti_render + 0x00000000003037a8 bopti_render_clip + 0x00000000003038bc bopti_render_noclip + .text 0x0000000000303914 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) + 0x0000000000303914 masks + .text 0x00000000003039b0 0x2c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) + 0x00000000003039b0 gint_setvbr + .text 0x00000000003039dc 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) + .text 0x00000000003039dc 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) + 0x00000000003039dc gint_intlevel + 0x0000000000303a30 gint_inthandler + .text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) + .text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) + .text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) + .text 0x0000000000303a54 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) + 0x0000000000303a54 __movstr + 0x0000000000303a54 __movmem + 0x0000000000303a88 __movmemSI64 + 0x0000000000303a88 __movstrSI64 + 0x0000000000303a8c __movstrSI60 + 0x0000000000303a8c __movmemSI60 + 0x0000000000303a90 __movmemSI56 + 0x0000000000303a90 __movstrSI56 + 0x0000000000303a94 __movstrSI52 + 0x0000000000303a94 __movmemSI52 + 0x0000000000303a98 __movstrSI48 + 0x0000000000303a98 __movmemSI48 + 0x0000000000303a9c __movstrSI44 + 0x0000000000303a9c __movmemSI44 + 0x0000000000303aa0 __movstrSI40 + 0x0000000000303aa0 __movmemSI40 + 0x0000000000303aa4 __movstrSI36 + 0x0000000000303aa4 __movmemSI36 + 0x0000000000303aa8 __movmemSI32 + 0x0000000000303aa8 __movstrSI32 + 0x0000000000303aac __movmemSI28 + 0x0000000000303aac __movstrSI28 + 0x0000000000303ab0 __movstrSI24 + 0x0000000000303ab0 __movmemSI24 + 0x0000000000303ab4 __movmemSI20 + 0x0000000000303ab4 __movstrSI20 + 0x0000000000303ab8 __movstrSI16 + 0x0000000000303ab8 __movmemSI16 + 0x0000000000303abc __movmemSI12 + 0x0000000000303abc __movstrSI12 + 0x0000000000303ac0 __movmemSI8 + 0x0000000000303ac0 __movstrSI8 + 0x0000000000303ac4 __movmemSI4 + 0x0000000000303ac4 __movstrSI4 + .text 0x0000000000303acc 0x1f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) + 0x0000000000303acc __udivdi3 + .text 0x0000000000303cbc 0x234 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) + 0x0000000000303cbc __umoddi3 + .text 0x0000000000303ef0 0x6c /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) + 0x0000000000303f12 __udivsi3 + *fill* 0x0000000000303f5c 0x4 + .text 0x0000000000303f60 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) + 0x0000000000303f60 __udiv_qrnnd_16 + .text 0x0000000000303fc0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) *(C P) -.gint.blocks 0x0000000000303cf0 0x120 +.gint.blocks 0x0000000000303fc0 0x120 *(.gint.blocks) - .gint.blocks 0x0000000000303cf0 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) - 0x0000000000303cf0 gint_inth_7305 - 0x0000000000303d10 gint_inth_7705 - .gint.blocks 0x0000000000303d30 0xe0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) - 0x0000000000303d30 inth_tmu - 0x0000000000303db0 inth_etmu2 - 0x0000000000303dd0 inth_etmu_help - 0x0000000000303df0 inth_etmux + .gint.blocks 0x0000000000303fc0 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) + 0x0000000000303fc0 gint_inth_7305 + 0x0000000000303fe0 gint_inth_7705 + .gint.blocks 0x0000000000304000 0xe0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) + 0x0000000000304000 inth_tmu + 0x0000000000304080 inth_etmu2 + 0x00000000003040a0 inth_etmu_help + 0x00000000003040c0 inth_etmux -.gint.drivers 0x0000000000303e10 0x90 - 0x0000000000303e10 _bdrv = . +.gint.drivers 0x00000000003040e0 0x90 + 0x00000000003040e0 _bdrv = . *(.gint.drivers.0) *(.gint.drivers.1) .gint.drivers.1 - 0x0000000000303e10 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) - 0x0000000000303e10 drv_cpg + 0x00000000003040e0 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) + 0x00000000003040e0 drv_cpg *(.gint.drivers.2) .gint.drivers.2 - 0x0000000000303e34 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) - 0x0000000000303e34 drv_tmu + 0x0000000000304104 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) + 0x0000000000304104 drv_tmu *(.gint.drivers.3) *(.gint.drivers.4) .gint.drivers.4 - 0x0000000000303e58 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - 0x0000000000303e58 drv_keysc + 0x0000000000304128 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) + 0x0000000000304128 drv_keysc *(.gint.drivers.5) .gint.drivers.5 - 0x0000000000303e7c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) - 0x0000000000303e7c drv_t6k11 + 0x000000000030414c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) + 0x000000000030414c drv_t6k11 *(.gint.drivers.6) - 0x0000000000303ea0 _edrv = . + 0x0000000000304170 _edrv = . -.rodata 0x0000000000303ea0 0x87d4 +.rodata 0x0000000000304170 0x11ac *(.rodata.4) *(.rodata .rodata.*) - .rodata 0x0000000000303ea0 0x7800 build-fx/src/world.o - .rodata 0x000000000030b6a0 0x64 build-fx/assets/img/mario.png.o - 0x000000000030b6a0 img_mario - 0x000000000030b704 img_mario_end - .rodata 0x000000000030b704 0x404 build-fx/assets/img/main.png.o - 0x000000000030b704 img_main - 0x000000000030bb08 img_main_end - .rodata 0x000000000030bb08 0x44 build-fx/assets/img/tuyau.png.o - 0x000000000030bb08 img_tuyau - 0x000000000030bb4c img_tuyau_end - .rodata 0x000000000030bb4c 0x404 build-fx/assets/img/level.png.o - 0x000000000030bb4c img_level - 0x000000000030bf50 img_level_end - .rodata 0x000000000030bf50 0x84 build-fx/assets/img/sprites.png.o - 0x000000000030bf50 img_sprites - 0x000000000030bfd4 img_sprites_end - .rodata 0x000000000030bfd4 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) + .rodata 0x0000000000304170 0x404 build-fx/assets/img/level.png.o + 0x0000000000304170 img_level + 0x0000000000304574 img_level_end + .rodata 0x0000000000304574 0x64 build-fx/assets/img/mario.png.o + 0x0000000000304574 img_mario + 0x00000000003045d8 img_mario_end + .rodata 0x00000000003045d8 0x24 build-fx/assets/img/death.png.o + 0x00000000003045d8 img_death + 0x00000000003045fc img_death_end + .rodata 0x00000000003045fc 0x4c build-fx/assets/img/brick.png.o + 0x00000000003045fc img_brick + 0x0000000000304648 img_brick_end + .rodata 0x0000000000304648 0x404 build-fx/assets/img/main.png.o + 0x0000000000304648 img_main + 0x0000000000304a4c img_main_end + .rodata 0x0000000000304a4c 0xdc build-fx/assets/img/mariosmall.png.o + 0x0000000000304a4c img_mariosmall + 0x0000000000304b28 img_mariosmall_end + .rodata 0x0000000000304b28 0x28 build-fx/assets/img/gift.png.o + 0x0000000000304b28 img_gift + 0x0000000000304b50 img_gift_end + .rodata 0x0000000000304b50 0xb8 build-fx/assets/img/tuyau.png.o + 0x0000000000304b50 img_tuyau + 0x0000000000304c08 img_tuyau_end + .rodata 0x0000000000304c08 0x28 build-fx/assets/img/coin.png.o + 0x0000000000304c08 img_coin + 0x0000000000304c30 img_coin_end + .rodata 0x0000000000304c30 0x4c build-fx/assets/img/stone.png.o + 0x0000000000304c30 img_stone + 0x0000000000304c7c img_stone_end + .rodata 0x0000000000304c7c 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) .rodata.str1.4 - 0x000000000030bfdc 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - *fill* 0x000000000030bfe2 0x2 + 0x0000000000304c84 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) + *fill* 0x0000000000304c8a 0x2 .rodata.str1.4 - 0x000000000030bfe4 0x11a /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) + 0x0000000000304c8c 0x11a /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) 0x11e (size before relaxing) - *fill* 0x000000000030c0fe 0x2 - .rodata 0x000000000030c100 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + *fill* 0x0000000000304da6 0x2 + .rodata 0x0000000000304da8 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) .rodata.str1.4 - 0x000000000030c118 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) + 0x0000000000304dc0 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) .rodata.str1.4 - 0x000000000030c11c 0x31 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) - *fill* 0x000000000030c14d 0x3 + 0x0000000000304dc4 0x31 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) + *fill* 0x0000000000304df5 0x3 .rodata.str1.4 - 0x000000000030c150 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) - *fill* 0x000000000030c156 0x2 + 0x0000000000304df8 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) + *fill* 0x0000000000304dfe 0x2 .rodata.str1.4 - 0x000000000030c158 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) - .rodata 0x000000000030c15c 0x10 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) - .rodata 0x000000000030c16c 0x408 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o) - 0x000000000030c16c gint_font5x7 - 0x000000000030c574 gint_font5x7_end - .rodata 0x000000000030c574 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) - 0x000000000030c574 __clz_tab + 0x0000000000304e00 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) + .rodata 0x0000000000304e04 0x10 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) + .rodata 0x0000000000304e14 0x408 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o) + 0x0000000000304e14 gint_font5x7 + 0x000000000030521c gint_font5x7_end + .rodata 0x000000000030521c 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) + 0x000000000030521c __clz_tab -.rela.dyn 0x000000000030c674 0x0 +.rela.dyn 0x000000000030531c 0x0 .rela.pretext.entry - 0x000000000030c674 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) - .rela.text 0x000000000030c674 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) + 0x000000000030531c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) + .rela.text 0x000000000030531c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) 0x0000000008100000 . = ORIGIN (ram) .bss 0x0000000008100000 0x550 @@ -421,120 +449,131 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a *(.bss COMMON) .bss 0x0000000008100000 0x0 build-fx/src/tile.o .bss 0x0000000008100000 0x0 build-fx/src/world.o - .bss 0x0000000008100000 0x0 build-fx/src/main.o - .bss 0x0000000008100000 0x400 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) - .bss 0x0000000008100400 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) - .bss 0x0000000008100400 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) - .bss 0x0000000008100400 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - .bss 0x0000000008100424 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) - .bss 0x0000000008100424 0xc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) - .bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) - .bss 0x0000000008100430 0x114 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) - .bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) + .bss 0x0000000008100000 0x8 build-fx/src/mario.o + 0x0000000008100000 global_quit + 0x0000000008100004 numero_frame + .bss 0x0000000008100008 0x0 build-fx/src/main.o + .bss 0x0000000008100008 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) + .bss 0x0000000008100008 0x400 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) + .bss 0x0000000008100408 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) + .bss 0x0000000008100408 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) + .bss 0x0000000008100408 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) + .bss 0x000000000810042c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) + .bss 0x000000000810042c 0xc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) + .bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) + .bss 0x0000000008100438 0x114 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) + .bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) *(B R) 0x0000000008100550 . = ALIGN (0x10) - *fill* 0x0000000008100544 0xc + *fill* 0x000000000810054c 0x4 0x0000000000000550 _sbss = SIZEOF (.bss) -.data 0x0000000008100550 0x80 load address 0x000000000030c674 - 0x000000000030c674 _ldata = LOADADDR (.data) +.data 0x0000000008100550 0x1c0 load address 0x000000000030531c + 0x000000000030531c _ldata = LOADADDR (.data) 0x0000000008100550 _rdata = . *(.data .data.*) - .data 0x0000000008100550 0x0 build-fx/src/tile.o - .data 0x0000000008100550 0x0 build-fx/src/world.o - .data 0x0000000008100550 0x0 build-fx/src/main.o - .data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) - .data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) - .data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) - .data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) - .data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) - .data 0x0000000008100550 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) - .data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) - .data 0x0000000008100558 0x68 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) - 0x0000000008100558 kprint_formatters - .data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) - .data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) - .data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) - .data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) - .data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) - .data 0x00000000081005c0 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) - 0x00000000081005c0 topti_font - 0x00000000081005c4 gint_default_font - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) - .data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) + .data 0x0000000008100550 0x50 build-fx/src/tile.o + 0x0000000008100550 coin + 0x0000000008100560 gift + 0x0000000008100570 earth + 0x0000000008100580 brick + 0x0000000008100590 tuyau + .data 0x00000000081005a0 0xc0 build-fx/src/world.o + .data 0x0000000008100660 0x30 build-fx/src/mario.o + 0x0000000008100660 mario + 0x0000000008100680 mario_small + .data 0x0000000008100690 0x0 build-fx/src/main.o + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o) + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o) + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o) + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) + .data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o) + .data 0x0000000008100690 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) + .data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) + .data 0x0000000008100698 0x68 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o) + 0x0000000008100698 kprint_formatters + .data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) + .data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o) + .data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) + .data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o) + .data 0x0000000008100700 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) + 0x0000000008100700 topti_font + 0x0000000008100704 gint_default_font + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o) + .data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o) *(D) - 0x00000000081005d0 . = ALIGN (0x10) - *fill* 0x00000000081005c8 0x8 + 0x0000000008100710 . = ALIGN (0x10) + *fill* 0x0000000008100708 0x8 -.data.4 0x00000000081005d0 0x0 load address 0x000000000030c6f4 +.data.4 0x0000000008100710 0x0 load address 0x00000000003054dc *(.data.4) - 0x00000000081005d0 . = ALIGN (0x10) - 0x0000000000000080 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) + 0x0000000008100710 . = ALIGN (0x10) + 0x00000000000001c0 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) 0x00000000e5200000 . = ORIGIN (ilram) -.ilram 0x00000000e5200000 0x0 load address 0x000000000030c6f4 - 0x000000000030c6f4 _lilram = LOADADDR (.ilram) +.ilram 0x00000000e5200000 0x0 load address 0x00000000003054dc + 0x00000000003054dc _lilram = LOADADDR (.ilram) 0x00000000e5200000 _rilram = . *(.ilram) 0x00000000e5200000 . = ALIGN (0x10) 0x00000000e5007000 . = ORIGIN (xram) -.xram 0x00000000e5007000 0x0 load address 0x000000000030c6f4 - 0x000000000030c6f4 _lxram = LOADADDR (.xram) +.xram 0x00000000e5007000 0x0 load address 0x00000000003054dc + 0x00000000003054dc _lxram = LOADADDR (.xram) 0x00000000e5007000 _rxram = . *(.xram) 0x00000000e5007000 . = ALIGN (0x10) 0x00000000e5017000 . = ORIGIN (yram) -.yram 0x00000000e5017000 0x0 load address 0x000000000030c6f4 - 0x000000000030c6f4 _lyram = LOADADDR (.yram) +.yram 0x00000000e5017000 0x0 load address 0x00000000003054dc + 0x00000000003054dc _lyram = LOADADDR (.yram) 0x00000000e5017000 _ryram = . *(.yram) 0x00000000e5017000 . = ALIGN (0x10) @@ -544,8 +583,8 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a 0x000000008800df00 _gint_vbr = 0x8800df00 0x000000008800f400 . = ORIGIN (rram) -.gint.data 0x000000008800f400 0x140 load address 0x000000000030c6f4 - 0x000000000030c6f4 _lgdata = LOADADDR (.gint.data) +.gint.data 0x000000008800f400 0x140 load address 0x00000000003054dc + 0x00000000003054dc _lgdata = LOADADDR (.gint.data) 0x000000008800f400 _rgdata = . *(.gint.data .gint.data.*) .gint.data 0x000000008800f400 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) @@ -566,7 +605,7 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a 0x000000008800f540 . = ALIGN (0x10) 0x0000000000000140 _sgdata = SIZEOF (.gint.data) -.gint.bss 0x000000008800f540 0x290 load address 0x000000000030c834 +.gint.bss 0x000000008800f540 0x290 load address 0x000000000030561c *(.gint.bss .gint.bss.*) .gint.bss 0x000000008800f540 0x180 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) .gint.bss 0x000000008800f6c0 0x1c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) diff --git a/build-fx/src/MARIOBRS.bin b/build-fx/src/MARIOBRS.bin index aea9a7a3808d298e1b4e0defadfb8d86a6f73439..ffd046ad4324bc3fd08f57ccc2a891459f62e110 100755 GIT binary patch delta 3571 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 delta 3202 zcmeHJ|4&m_6hH6L)(0)+^$XuSS{@Y)-`-V=Fvgb_nL5K(GJ%j~F@6C=#ce7Wqi%)B z7P1UMZ^Gur4sOqbC5_K3?b+yC2*GB-ZYe(@o9_rgUE4Oh)V_Py;TxJm zf=6%9^@-km&_g1Sh%`gVI6IOY7SpKNfw_6_Bd)O-llYEOF{jNtl76w)g2~7_>Xi(RF z(r57I?~QnhIwP?a=sP1o^oC{*J9oco8q^$J>QO^W ztFwE!o~2tU_iE)g4_w{<&mN`yw~mu-U%sI~F1+&T(Bt>Hqrx3uMZwU*G0vy)=D!m; z5b28SkL-)=jYP{!>;+hb1%4LdoMzD91}v15N9MpQg&~mcTN)|62X>Pi``Mll@L6|0 zI;i=>IuEkhtq()cJZteF4TJsk7BmTpbHMmuiU+ws3fgo#guw-rBs2MK@CmF(EVU<_ z9g&>?$-(v-x^X>>N4A8;Tt{jEV!{jM$OtC6}KBxZLxGlOkp2Zdc_=$x44usQy!P> zz*f|%DyV{}0U9vB#iu-=#TJQ?MoR~88l@AKN=6nf^Ss$jZ(1vPbAytRdWtJdd4OKU z2q$6<8ze*%iw1<$2e>(K7lrLWENwK9wn3+DVkU|qy^?ETTh`*t_=jVg$X)|vY7u!2 zA_Gy3bI^eFB4QHp69Vh^<7}}uP2n#6ClE~tH=+}9o{nbR(y@zMBhuc?56o2yIGKJR z)goq@08$d5Vpf`N!z>P{jTUER#g?r~L)OPU&KsSzweTeq3VCUqFD!3GCl@*sqzE?R z)fjN`Z5#|NvpRsi!~R!aR5XrtoNg_aSiVTBa_4z_m^!6n*neeALe0xqENW)+HfOrA z1ujGdc8nm{x{AqYh4Tk<=@~qHY-&`5yONw#Sbcv*%)G0ZSkdHv&ZRN)Tx?L(Wm!iZ zh3U%A1?7AW(=CTw)?;IB2%GKsSqs5yzzVr+Y zmt09J#N%LQ65ar9Gy~FBI$63t_1VtYF4=Bb{9-~ivc#7Nbd8+D$QD`3DiOR=0G|Z; zkXyg!5u4Z8JBI3T@}KlW`E|Z@l3tf<7_pLHktlb`sRS%RIqH%);|ARSDU$>OyeER?ge6-h|2LNU;rLtTeB~q%oVepx*4O!9YBor z=$D#9rW<3j(hJZ0IQ07pkLe~58BLDU;o7bjc+rCwci_bx_#f^-0qxn?Mi17eD%s>psKkp{0WENv$?LmzBpA?#;bi0r*VChXLeD)K2>?QR;Td^7-#&ds;YIW_1QxQ z&1ao`eRb1uULAL;YG2)DE9PQfbF<-$Q?2{j`b~@K%-+ET(17Od)I~E)N5~&}EGxi!U3z-~cWKGxeqUf6B oqpna~mXo}uWqDl4Y~ml8?!up>y!U20^JZsfFI>K;gcQ_G zK`-eBM^is>7$<5ODMZosu60d0q^?2?yp2pLV;$*Z!#I5_)HX2vtvOT)b)_lmpo&%= z(Yv^~)OUYP>09`Mkpt^k**E)h;beC_6Gf{TUg;7)rkdXG`HDU@6J19&@i8$-{fC6O zyFc-;rMjDGHZsza-#~PHqdR_yv((YfYaLZ}kmjhy8=f)ND>0hMO-ANFuPLuTrPRZ* z+RFd;F+4PME}0s>I(j5|R!eJKgg;olPEGjry)ho%QbR5v|2B=FX_IQfZ2@i}j`+TQ z)tiqx&-_g#eO#shkMHpre*AcVGXcI5;L!kQ16&MnIly-UJRjhN06*WtmdF>i9Q2$h z6tW^W0liqZOvl!5IKncaa~!&xC!cPZ1u-L`WV+?aI=I4dp&Pk^DIDly1v@JW`cyej zPH$|>E?*nvNkh1`f2BO#vTu@}FlP+A;#DC<$0N`GHqa*Z zJs>Le1E59fIiOwYN5FQe9|Jq2egf>2`Y8~T`WX`7aHwUK+Bd&(CS_qL4~BcYB}4o%%UsL>L2?g9gLTFWgwIn?XH)wRzH=Po^|7Dl^Y^GENZ0SHALBT;5H;TvTCZ}QfWMb~=Xt)E e&vFlhp*eaiQIp2=u*Io0>-U;;E$=r~;jX9v literal 1192 zcma)5&ubG=5dJm^HtDt|jRl1s8pR*A$fhk`6v2d|=|Sv4ya~%ocA=r0Cf$7{4G8H$ z#DhY;^sn-eob;GNDtN01#hcD#Guw0#bzm~z_q{Lgz1f}ZK6&=kNEnF1z%t z68A@rB}^l8Y~0Ml9H992*eD*IVDrWhy{p}yN6X)^I9D=}ag)7y^R8g9jgYrraZ5zYTK|`fvxKe*S8(lQyn3J ztM^(F(aP7botoz=A9lOxdyeh+s!iHn%Td~ez3q0KW;@y}(9PEPY!ArDb0=+Dum+|C z?*pdb*T9V617KG08{o3wcR*I~dmtBLE9f+|s=^AiAJ#2F+TGW%=&A}Y^u+prljQ5I&ng2mz6{TZ@R5p$bsB4K1KnNHr=@21J0sQik-|brY*~BH1r0oiZTt zEBHD50X7DH03$3F8+_;Ib4@11Dd+pXyYt<>=gaiT^QV?=Q6U!H1}-`5Z{QbbBg<&h z6{@X%{7&6g_^zj>KVJL$>#u^zcC)i~qj%O>X@0OCSc|Lkbkb~97r#{QwI9_F{b{4S zO!eUz)rvkumw{QO*Z=d~ot-VGz5C+rEoam1xND^*B`AHULcf2O{5V`OL*@p@?_5AG zp0g}?37qF;@#f9@3x*Ok3~1%NF=y)CoQbc1bE?GKGx59NPAR@Q6MqKIN0s*<&%}G+ zUMb%FE3TvC&<&`6kf@VB6To!hN3j|JM)9B@jH8i3gXmCGKU9ex8b_+fqddz`qTtAQ z_2g7dOp}L1)#AR1YJzdzx?qRsnqZvcx?qoJ&R{n^jkWU0O?6`IP*4&cD_4i_HMto) zP+F1erzyF?IF7@Smec-|#Vpwl@ONe5ZTA@DQpxQSEMw1b`wi?>XcfvcbBy_&oXZ~Z zG%ukdQg0cKa=m?U++9|W-<5hDVBR;W_Zhe>a(DOPWXyZP!g*NFLO3RB7ha;Ta691K lgYSU*;#+0^SLq3A{la4pDk6Qc;>B!$_9r~HB?&gm`vdNS5T3NPjnqS}9t01mJ(Mc4S}3SJDMfn`D~RW?`JpW|3dsg76#4=ld^IoL z^$GL|bSB$Llame|X1e+icv49aP85M~AA`VuP%Pwsv4J!? zue_wwcJzjHf!|^mA?4?~Y@A};L8m#Ir``s7Yl-(^b diff --git a/build-fx/src/world.o b/build-fx/src/world.o index 6a4e839cdf5c33b4ceba646e0a80d0f814c5e256..e0b90e001b07fe51388a520982986168d4058daf 100644 GIT binary patch literal 1860 zcmb7EUufHA5I^}(Ek|yf#;hJ|SW;&T?KUKbBxTJW;^3tjEYz?v1|vh3Wz|+AC5o() zm<1eY2;PJ7L!mI(!=NzsFz~}*Y;P@tLf@7buZ1xxTCy@awl=LBScZ3>q%Tq3K5U0h z`u*b@@ArNsmf-D)%MhzrFMg>F|D|eM0WOt-j zmY7_;8gk#(_&XO%9c?~gPP+N+$+7rnaBnh~0nWH?4>)YVVYaYgPYPGY;=)%K&I#WM zH-wh3l}*-}>Mn^luH#t`sKJSNovG~nK9IX=*f%4_&ab_tj1XA);g8ArN7~iZ+r@8{ zAJ1PdTsq5r%D(e+|Lg{Qz^Kp5M? z)xdKxj-Nrlqc8F^{w8zQ`=c04Kyvuy0FsEOq-Pob0<=FvXEK?I!4orQKRh{jnjhg) z{zUtDZ-)?c9`2h-!#`Uda=i8hNeCJ3k!zT!+aE@M!dp@3bMqx>hF%wtSu3D^?fKvC z@@KmE`(6BlF8)auC%GN*_M7kGOI>^!%Z#Bd?bWk^d=~j3kAIH*V;}zpc?tQd<6mAh zwE{1LXkDyG7saxq8=3;5V-|~w1){F#vQYuCpq33ys)(|pX&|b4Q7kBuRU!^uD&iU^ z15#637A=)zQ6!TDl%ASej$MRtgKOgOd z8~{u4ee5`j9{}`F{1*U6@ne7(#XA58Dc;3n^DucFrWpICmtq#+2*vO1@5S7~)^hE9 zxuRQA9{93ly3Z0trlLu_rL0)M7bHspK3^^aFE8r4vS8tk|3d~bmh4AHj0pbinR_mD z?pU)U$M8;Y+F=kT_zP6Bj;tq~^v|%zy_pESjQkoZ74MzlEi~X6(Af#xq5xo8HxR&Y#^lgPe;cGeG74mFee)WcMgBc16}s;cH2C7eUm~ACrQ*c> E3nbAZ5dZ)H literal 31900 zcmeI*Ur19?90%~<)v22kauyDC5286O85uswmaR_m|#Q? z$&kQag`n3Sf}VpQdQ5^IgX=?3^q>{DJt*s(`$v~A(fjwX-@U)z{hfPu_t||vx#95< zp-iBoA<%i2mt0t>VRbom8#6knnp~T{?)r^0fflW{r+&ku6}6fQ@8;=>Mu%5u?D6e5 zc?`P4ty8T5Ke@@J6*{Em-WV&fgY+mGlD1;0K+8^b?$@Au`sdW%5Poyy31t|s7*>4Tk7-OR`x)sOGhMy0K8uk_*@Nw1}M(kJOlpe66f9cYJhLpOcP z1+Bfun|FLC?NFH<_pKi6G^oPNkiTKXvr)cVSSNhHuzhaojZ~pR6lc-($@gt25X4+4t0%3E%s9j77iI?>*7K&gzFO zwvGN$BB_MM5XrMjVmhdhY+R6MBPz+V98WC9Bk{=_U6)7>$5Qu|U{(%A6gEvwXM<@u zoD446w-`BFcYvtUHeui8vh!6Ur=716xvgAiCaN}bF_n$0!D$jxYSKJM?JOBlf}$G9 zs3eAiYLLX~REor8!Yo3Gcs#P8(ti#1y~ZBd+>{TtJGOAvOpT+%%A44k=L2TF{DhtR zS@1og`E&Cg-(TBr)z*J3++%g=uz&jncG1b=U-P=y9DYw33pV(A88bDH_Ve}eCJXEJ z%<}JLf9=uWJv*$mcrUB4!v_}pS$OdE_$$QU$CCGSng7;XEbPJ8;)B13rSsmi`WkOo H! #include "world.h" +#include "mario.h" int callback(volatile void *arg) { volatile int *has_ticked = arg; *has_ticked = 1; + numero_frame=(numero_frame+1)%6; return 0; } int main(void) { volatile int has_ticked = 1; - int game_running = 1; - timer_setup(0, timer_delay(0, 16667), timer_Po_4, callback, &has_ticked); + timer_setup(0, timer_delay(0, 10000), timer_Po_4, callback, &has_ticked); timer_start(0); - while(game_running) + while(global_quit==0) { has_ticked=0; dclear(C_WHITE); - world_draw(0,0); + world_draw(mario.x,mario.y); //ennemies_draw(); - //mario_draw(); + mario_draw(); //ingame_draw(); dupdate(); //keyboard_reload(); - //ennemies_move(); + mario_move(); - - if(keydown(KEY_EXIT)) game_running = 0; + if(keydown(KEY_EXIT)) global_quit = 1; } timer_stop(0); diff --git a/src/tile.c b/src/tile.c index 23be098..7a50457 100644 --- a/src/tile.c +++ b/src/tile.c @@ -2,8 +2,27 @@ #include -void tuyau_draw(int state, int x, int y) + +extern image_t img_tuyau; +tileset_t tuyau={&img_tuyau, 8, 8, 1}; + +extern image_t img_brick; +tileset_t brick={&img_brick, 8, 8, 1}; + +extern image_t img_stone; +tileset_t earth={&img_stone, 8, 8, 1}; + +extern image_t img_gift; +tileset_t gift={&img_gift, 8, 8, 1}; + +extern image_t img_coin; +tileset_t coin={&img_coin, 8, 8, 1}; + +void draw_tile(int sx, int sy, tileset_t const * const set, int x, int y) { - extern image_t img_tuyau; - dsubimage(x,y, &img_tuyau, 8*state, 0, 8*(state+1), 8,0); + dsubimage(sx, 63-sy-set->height, + set->sheet, + x*(set->width+set->padding), y*(set->height+set->padding), + set->width,set->height, + DIMAGE_NONE); } \ No newline at end of file diff --git a/src/tile.h b/src/tile.h index 6a0e72d..9904945 100644 --- a/src/tile.h +++ b/src/tile.h @@ -1,17 +1,22 @@ #ifndef TILE_H #define TILE_H -#define TUYAU_H_TOP_LE 0 -#define TUYAU_H_TOP_RI 1 -#define TUYAU_H_MID_LE 2 -#define TUYAU_H_MID_RI 3 -#define TUYAU_L_TOP_DO 4 -#define TUYAU_L_TOP_UP 5 -#define TUYAU_L_MID_UP 6 -#define TUYAU_L_MID_DO 7 +#include -void tuyau_draw(int state, int x, int y); +typedef struct +{ + image_t * sheet; + int width; + int height; + int padding; +} tileset_t; +extern tileset_t tuyau; +extern tileset_t brick; +extern tileset_t earth; +extern tileset_t gift; +extern tileset_t coin; +void draw_tile(int sx, int sy, tileset_t const * const set, int x, int y); #endif \ No newline at end of file diff --git a/src/world.c b/src/world.c index f6af187..b71e872 100644 --- a/src/world.c +++ b/src/world.c @@ -1,41 +1,142 @@ #include "world.h" #include "tile.h" +#include #define min(x,y) (x>y?y:x) #define max(x,y) (x0) r-=8; + return r; +} + +static world_get_bottomy(int x) +{ + int r = max(x-31,0)%8;// if (r>0) r-=8; + return r; +} +*/ + +int world_get_real_x0(int x) //mario delta en 0,0 +{return max(x-63,0);} + +int world_get_real_y0(int x) //mario delta en 0,0 +{return max(x-31,0);} +/* +static int get_cleft(int c) +{return max(0, max(c-63,0)/8);} + +static int get_ctop(int c) +{return max(0, max(c-31,0)/8);;} +*/ + + + + void world_draw(int x, int y) { - int c_top, c_left; - int s_top, s_left; + int s_left = world_get_real_x0(x)%8-8; + int s_top = world_get_real_y0(y)%8-8; - c_left = max(0, x/8-8); - c_top = max(0, y/8-4); - - s_left = (x+1)%8 - 8; - s_top = (y+1)%8 - 8; - for (int t=s_left, cx=c_left; t<128; t+=8, cx++) - for (int u=s_top, cy=c_top; u<64; u+=8, cy++) - display_cell(cx,cy, t,u); + + int tx, ty, rx, ry; + + tx=s_left; + rx=world_get_real_x0(x)-8; + while (tx<128) + { + ry=world_get_real_y0(y)-8; + ty=s_top; + while (ty<64) + { + display_cell(rx,ry, tx, ty); + ty+=8; + ry+=8; + } + tx+=8; + rx+=8; + } + } \ No newline at end of file diff --git a/src/world.h b/src/world.h index b4256b1..634ec73 100644 --- a/src/world.h +++ b/src/world.h @@ -6,32 +6,40 @@ #define W_CELL_SIZEPX 8 #define W_SIZE_X 160 #define W_SIZE_Y 16 + // p1 p2 p3 +#define DEATH -1 +#define EMPTY 0 // _, _, _ +#define EARTH 1 // X, Y, _ (XY tileset) +#define BRICK 2 -#define W_DEATH -1 -#define W_EMPTY 0 -#define W_FLOOR 1 -#define W_EARTH 2 -#define W_STONE 3 -#define W_BRICK 4 -#define W_BOX 5 -#define W_PLATEFORM 6 -#define W_TUYAU 7 +#define PLATEFORM 4 +#define TUYAU 5 // X, Y, _ (XY tileset) +#define GIFT 6 // s, t, n (state, type, number) [if number=0 state=1] +#define COIN 7 // s, _, _ (state) typedef struct { char type; - int state; // numéro de tile - int state2; // visible, invisible, téléporteur/en train de tirer (canon par exemple) + char p1; // numéro de tile + char p2; // visible, invisible, téléporteur/en train de tirer (canon par exemple) + char p3; } world_t; -typedef world_t world[W_SIZE_X][W_SIZE_Y]; - world_t world_get(int x, int y); void display_cell(int cx, int cy, int sx, int sy); -void world_set(world const * const w); +void world_set(world_t * w); void world_draw(int x, int y); +int world_get_real_x0(int x); +int world_get_real_y0(int y); + + +#define CTG_SOIL 1 +#define CTG_EMPTY 2 +#define CTG_DEATH 3 +int world_get_ctg(int x, int y); + #endif \ No newline at end of file