From 43c6607fc5825340761462469a31bb8eaf42e655 Mon Sep 17 00:00:00 2001 From: milangames-art Date: Wed, 4 Dec 2019 19:27:27 +0100 Subject: [PATCH] add box --- SuperCbr.g1a | Bin 31884 -> 32812 bytes assets-fx/img/lvl0.png | Bin 945 -> 3555 bytes build-fx/SuperCbr.bin | Bin 31372 -> 32300 bytes build-fx/SuperCbr.elf | Bin 44608 -> 45688 bytes build-fx/assets/img/lvl0.png.o | Bin 1436 -> 1436 bytes build-fx/map | 856 +++++++++++++++++---------------- build-fx/src/ennemi.c.o | Bin 1764 -> 2144 bytes build-fx/src/level.c.o | Bin 2764 -> 2672 bytes build-fx/src/main.c.o | Bin 2500 -> 2444 bytes build-fx/src/mario.c.o | Bin 2828 -> 3228 bytes build-fx/src/world.c.d | 4 +- build-fx/src/world.c.o | Bin 1988 -> 2544 bytes src/ennemi.c | 91 ++-- src/ennemi.h | 4 +- src/level.c | 54 +-- src/main.c | 2 - src/mario.c | 67 ++- src/world.c | 190 +++++--- src/world.h | 66 ++- 19 files changed, 750 insertions(+), 584 deletions(-) diff --git a/SuperCbr.g1a b/SuperCbr.g1a index 721626311ff169071d996543678651208072c396..362474568a3924673ab72e1626e390f2c41a09b5 100644 GIT binary patch delta 5532 zcmZ`d4Ny~Ow%@&pkPw!H8wd#oNG=oziRR`935u8i3TiArBJNY$y@3dbKZ|0YSXqN; z+pw5MxvuN_>^@t4UEU5;+Lu1ZnfAT$ZJjsRva`9t`qR=5K@{IUXO^~%Yp3bvoi70` zowql0a=!0;=ljn2&OPUR=esArC5C&+^xqHv$H*z~d0%q$FYp`uTQuq!UwS&-m|$IQ zvK3q3+b~3sy@tRX(M))bJ`%~6TtkS^Am$fi_cbW~Fh?KVN1e~w#IrU+ORkAzc&Ph3 zgbqd!gOC?Jowz?(U%2GDNR}|l4T?ik;U2@RS@ZCKdzt0l+bRVtyY#+TnM?Z5gw6`R3ckcs(yl_QC z{;&VoBR?PP7~g$!cgB*8yo_}jYqqw0zN~NPy3@RACe&I}6L|v@T-?10^A1MB~VntZlKtjCV<1UJ!{X|11lmg zu*+1-K2QW-Xa;;l5z4k?=e@8u*8bv+mhAG?k!)krt$dY!chjA$EBUH|-C5ng{%J`h zqm*mP_}CJW=gEzO4f206N91R@S_)Yrl*9cE^>IVFR;S%QSS`;sM|jgc38kPiC?%z$ zGO4AMn#%G}*;LM8sX0Q)czsB(rKeOp`~#Q)`fz(nma6589AIc(H${A^gHfGB;{FEz zBk`}rYkF$)_dVYGc+cbAk2@akdWYrC-D%yj~AcuA;U`hjHod7IC=|Ix}5a3CLi0LZC z9)-ONpaxtMyiC#vZSbc?@W)NV+*ryH;yPC&%_XjJd!%~DD2$2#WB|z!R@Xs|xsbp` z?K);+<(@$a=5+m3w{D8*Ykv`sF1V<(y?$2Q>r;xe&Hf7xqPRvua9k3>czpql4RQuD4Eq=!NnjFvn2oXP^VUG(hNx21pK}m(rU4htQJp7Z|x}%@8rNaF0p-l zYp4VB_$6U!o1j`;EiO>;EjOgMcJAbiB<6ATghR*5*^Q@{r4}(&%op zorFiDYZg=}wTHF(X2F37n`?)(bVI-x1~1sPc5SYzlPshx8b4W@tUX*vv3;LAM`wMa zFyb4U1sbKFq*WJ>%@AR9t9Aw%sh!+L5ZT;!`lwdN%Du9IRDLb3^rf)5d=-dPg@ug5 zml#Gnxm#73|0RzIPXHZ@#~m>p*N&IY>u8JVXzL{Yu8JG~KNXw%ctcC>=eZ!(ma7Vb zkQsDK|5P#aQ^j(yVjj>e`$w8($25y6*4D>MLs{CxU|`s@kqS$}yvd+_IyS9GSeySW z8gEe}y++z-9vPh>LM)o0uO)_>;@Ww|Pzz~iIdEg(IqJX3@5CIrt z<4hBsfP+85eu2aqkxSr9o)oZDc-pQGlWYo;0fr>(>61}5sgtP9$C1-1xgli~BY#CY zESyhd!6`duu`BNX*pccZnB*{GG6oPU$K2Q%J@8kw>QV5*#F z(imTD-)ua49~s}?RcX93jp7Fe|6DEIO7VFPiDxdDXP3CS4uSi4kiL^^m+ZQv>tCPh z6Ydclj)tG;mL4VwZ`7pv1mP#$(ZZ$O1i$nR$ZNa*iC>ku`kX^jIy|oG7-;5Pm-c;R z{&0U?`N^I4a;UaTIojf3quHHXDQOMVfBmwk;j5K0|5q(v9}%qz4m{vw+B6!Sf*nAL z!pCB|8{lLwLWzi>;doSd5hE9In)KUR4fMM4DCUAU0Y@W#BghHdkmM4aoKn%jrWYSW!ByElK!TtCI4{32}Tenl9^%B zoDp2@BkqgtC*CZ@@6R>W7`|J|O)7Fd?Ry27kGU8!`Yo;V8L@@t4cbz8M?%)JKROf9 z9@$Tf3j7RB)lX}czURchV*_5oCt%0Dgg=MO6t{sCp*h1xZb&a3R-PFk-aL%N7ilE+ z4Tp)5-__mQ{EDT(|GtCh|F@C%l+U>&ri=cuFdF&TLsKx7fT@D`)D7u=k`27sj|(mb>~0<6B2*+Ti07!$O^kJ zy{Sdw&;|YiOLr1lG2YmyV1M*pM9baHPzz2y#nHKclJcVt<``vxbl(k?0 zX)CrITbt@5rwD#POV^*!DhG(rahkf@zaIEPUKgp=g}gW@I|Te|_^q&Sg=aOYPlzJ2 zzR%sa<(O5yUUD!RIvV5r#XM)v0;gx5_4t-!?!IDReJL91im`UhvmRJrUCdeE_fm9z z>9!bu+dO~kV*VM_*f*8vs&t?*vSz#bsicG8*^2bPJddnAh=nh^2+>DR(?-9D)mWnRjh?O+9|yu)vOxd zq%GAf<*OYMnr!TwL6eIFPJRDFky;3)P`u1vMuQwjA7P87SK2#?p# z##bMrA6CIZXDxlx2`BMG-g(oBl@2`(?M+KY-%^Q}~*@ zH4eaE)_h*G9&pE0(NKRf54mC*d6bKaw&GaTRzIgz_P@xlnXuF_&cV4CDpH$pC&6SQW=O zHck34ShNRQ8COpLqjA%*jZmCHO__wtGF+ZD4s*7pf6lhRIzPLL7%SYNaK6B1W`Ty+ zsw(5`>Mxy^viMNelelQ>BRE(po$0!zAc_d+Z^?k)99{Yy=0|wW#WJn+jQHp z&ZEpF|GF^2_CfxuP^!4rtTP_$5t~4-#<95G=_g@fVQXt^8*G@s8J?FnI9e!6LBDV- zRZ?c|@{1>lt(E2;ORi5iiMCRf9!mkzZBA{di1EndJTt`BsyNRKs+U{TmV!hbl4u~o zVmVKh_FSo@@2-jK8`st^o<>;TdaSS9PfnvSp;T=wwq{8!5@~|F8RaI65+;%v|6`Zn%PAcf$uN z65`-QjAkPKDx~02IoK8K3lVlV=`#tOrh}%}`k`!ExWc&K3L8WjM5a~E3muYfV&pHb z!Pv3W4s-V)MjMD`TZn{OaJEeooJ~`$>J`a|g8<#Y&lakhjVoLX;5 zpWhkYCEhJwf7vAG*3;zjtDIM#jnR;v&Rl-AmJSL%5#s^7r0pAAl;Xk-F)%!>|2k!@ zfhQb#d;`JJ$W0qIBpqVCXbvG}!&T07yT;eB}A;{K14GZaY$q6pVY$GjYoWVq6RA*`>t&g~?rj;1YnI4eE zr??68O0xJuKxuiMD8jj530&fq3;_&-&)^Ua;?)qd&JZNvn}dEj2Qe$&=YrOfB|*#) zNG@JUG?{ARSHf;}d=KSNkQ~BxJ_T?Y0FuxlNIKn+e7b?R8|>fB0zlHj$>>lgv_*g? z0bs+2=AduoF0A-6p%IqZJj?Z#9Hkn9@EPYCVj5;a3akj%O1%H`Q##@4@R-;e@%J7)dL>)86-6Z`XI)n%^6QI3(<5dsw0QSrI}d@1l~ zEls32;Wgoe*z+M`YSIGgYKkD&dpV}22~faWQ%;b^-oWVk7s;d^*m?t)qJa)D&Y~ao zIrsB>1)yIb_5!L{=qpOdXxna}{e2uV~Nd(<%$o4fZY%BE}B)o!H~`qQ9zv z7D3FK6EO;Ns6CENuuIdK)2Gv`nVxs!q^dJ947nPn!BSPQ&#H$DG{D^eG61~12)zBxXlUci^v0~0!;l_PALS(qKB|A>LNn3xF7ovf=S%PZAy`Feh@kt=BGpRL_#y) zSm@h-)bD-oG)b8LwwNmTkw(cHb`gV2!|?~cN~nf6RXr6L?K+T9(cTLjv8@7z<7?N@ z;{Jh&#r>b{S=`@ylk0i8+|xd`hzy&!xX>^(_ec^WuA*$ m3DXyzMeXh(2&5sD5#NJ-fd^wqUMEhU)(IHfP@w0CjQBr^*EypA delta 4531 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 delta 844 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 delta 4494 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 ODhazLE~x*Bn))Bpt@|?o diff --git a/build-fx/SuperCbr.elf b/build-fx/SuperCbr.elf index 2c58af07402560ffcdb4e44e04c6c5420ce48172..6a6b9737e18dd7917fc3d884ccd4493293b22ffb 100755 GIT binary patch delta 10311 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 diff --git a/build-fx/assets/img/lvl0.png.o b/build-fx/assets/img/lvl0.png.o index cb8866b56a760e8edc2369303d54c029bb065312..80ddfd58fa1b37f17e293ec24bf13c45a1406b54 100644 GIT binary patch delta 231 zcmbQkJ%@Y43dVZI1_l(s=zzjyU{pZm{}({zGjO2sS%85k8%HDEZPVY4D5 a6QkijRAtO)4(CxwKv5u|u(_65o(TY_s|(!# delta 151 zcmbQkJ%@Y43dYF^Om8L|FlN*XFrWerR4#)H8ovpZ&&Y_%XJTkT5nxepK;d&JD4_6} M1Q<5gGRrdo02P%9$N&HU diff --git a/build-fx/map b/build-fx/map index f7f8d0b..afe5190 100644 --- a/build-fx/map +++ b/build-fx/map @@ -187,7 +187,7 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a 0x0000000000300000 _brom = 0x300000 - 0x000000000000715c _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) + 0x00000000000074fc _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) .pretext 0x0000000000300200 0x8d0 *(.pretext.entry) @@ -227,7 +227,7 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a *(.dtors .dtors.*) 0x0000000000300ad0 _etors = . -.text 0x0000000000300ad0 0x4460 +.text 0x0000000000300ad0 0x4800 0x0000000000300ad0 _gint_exch_tlbh_start = . *(.gint.exch_tlbh) .gint.exch_tlbh @@ -235,329 +235,331 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a 0x0000000000300ad0 _gint_exch_tlbh 0x000000000000004c _gint_exch_tlbh_size = ABSOLUTE ((. - _gint_exch_tlbh_start)) *(.text .text.*) - .text 0x0000000000300b1c 0x3e4 build-fx/src/level.c.o + .text 0x0000000000300b1c 0x388 build-fx/src/level.c.o 0x0000000000300b1c _malloc_error 0x0000000000300b54 _init_level 0x0000000000300bc8 _init_ennemies 0x0000000000300c28 _set_level - 0x0000000000300ed0 _get_lvl_id - .text 0x0000000000300f00 0x218 build-fx/src/score.c.o - 0x0000000000300f50 _new_level - 0x0000000000300f74 _new_game - 0x0000000000300fac _score_add_coin - 0x0000000000300fc4 _score_add - 0x0000000000300fd8 _score_display - .text 0x0000000000301118 0x40 build-fx/src/tile.c.o - 0x0000000000301118 _draw_tile - .text 0x0000000000301158 0x198 build-fx/src/box.c.o - 0x0000000000301158 _sgn - 0x000000000030116a _box_move - 0x0000000000301290 _box_jump - .text 0x00000000003012f0 0x230 build-fx/src/world.c.o - 0x00000000003012f0 _world_get_width - 0x0000000000301300 _world_get - 0x000000000030135c _display_cell - 0x0000000000301418 _world_get_ctg - 0x0000000000301458 _world_get_real_x0 - 0x000000000030146c _world_get_real_y0 - 0x000000000030147a _world_draw - .text 0x0000000000301520 0x41c build-fx/src/mario.c.o - 0x0000000000301530 _mario_draw - 0x0000000000301618 _test_sol_le_plus_proche - 0x0000000000301684 _mario_move - .text 0x000000000030193c 0x40 build-fx/src/main.c.o - 0x000000000030193c _callback - 0x0000000000301944 _system_error - .text.startup 0x000000000030197c 0x1c0 build-fx/src/main.c.o - 0x000000000030197c _main - .text 0x0000000000301b3c 0x1f4 build-fx/src/keyboard.c.o - 0x0000000000301b3c _menu_pause - 0x0000000000301c40 _update_keyboard - .text 0x0000000000301d30 0x1d0 build-fx/src/ennemi.c.o - 0x0000000000301d30 _display_ennemi - 0x0000000000301e1c _move_ennemi - 0x0000000000301eb0 _display_ennemi_table - .text 0x0000000000301f00 0xce4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) - 0x00000000003028fc _kprint_opt - 0x0000000000302a44 _kprint - 0x0000000000302b1c _kvsprint - 0x0000000000302b64 _sprintf - 0x0000000000302b8c _vsprintf - 0x0000000000302bac _snprintf - 0x0000000000302bcc _vsnprintf - .text 0x0000000000302be4 0xdc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) - 0x0000000000302be4 _memcpy - 0x0000000000302c9e __memmove - 0x0000000000302ca2 __memcmp - 0x0000000000302ca6 _memset - .text 0x0000000000302cc0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) - .text 0x0000000000302cc0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - .text 0x0000000000302cc0 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) - 0x0000000000302cc0 _dupdate - 0x0000000000302cd8 _dupdate_noint - .text 0x0000000000302ce4 0xc8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) - 0x0000000000302ce4 _dimage - 0x0000000000302d38 _dsubimage - .text 0x0000000000302dac 0x4c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) - 0x0000000000302dac _dclear - .text 0x0000000000302df8 0x3fc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) - 0x0000000000302fa0 _pollevent - 0x00000000003030e4 _waitevent - 0x0000000000303130 _clearevents - 0x0000000000303150 _keydown - 0x000000000030317c _keydown_all - 0x00000000003031b8 _keydown_any - .text 0x00000000003031f4 0x124 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) - 0x0000000000303200 _iokbd_row - 0x00000000003032e8 _iokbd_scan - .text 0x0000000000303318 0x1f4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) - 0x0000000000303318 _getkey_opt - 0x00000000003034c4 _getkey - 0x00000000003034d0 _getkey_repeat - .text 0x000000000030350c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) - .text 0x000000000030350c 0x1c4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) - 0x000000000030369c _gint_panic - 0x00000000003036ac _gint_panic_set - 0x00000000003036b8 _gint_exc_catch - 0x00000000003036c4 _gint_exc_skip - .text 0x00000000003036d0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) - .text 0x00000000003036d0 0x17c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) - 0x0000000000303784 _gint_install - 0x0000000000303834 _gint_unload - .text 0x000000000030384c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) - .text 0x000000000030384c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) - .text 0x000000000030384c 0x1f4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) - 0x000000000030384c _tlb_addr - 0x0000000000303860 _tlb_data - 0x0000000000303874 _tlb_mapped_memory - 0x0000000000303948 _utlb_addr - 0x0000000000303958 _utlb_data - 0x0000000000303968 _utlb_mapped_memory - .text 0x0000000000303a40 0x9c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - 0x0000000000303a40 _dsize - .text 0x0000000000303adc 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) - 0x0000000000303adc _dprint - .text 0x0000000000303b34 0x56c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) - 0x0000000000303e54 _timer_setup - 0x0000000000303ee4 _timer_delay - 0x0000000000303f44 _timer_start - 0x0000000000303f78 _timer_reload - 0x0000000000303f98 _timer_pause - 0x0000000000303fcc _timer_stop - 0x0000000000304028 _timer_timeout - 0x0000000000304034 _timer_address - 0x0000000000304070 _timer_clear - .text 0x00000000003040a0 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) - 0x00000000003040a0 _sleep_us - .text 0x00000000003040f8 0x1d8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) - 0x0000000000304190 _t6k11_display - 0x0000000000304264 _t6k11_contrast - 0x0000000000304290 _t6k11_backlight - .text 0x00000000003042d0 0x150 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) - 0x0000000000304414 _clock_freq - .text 0x0000000000304420 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) - .text 0x0000000000304420 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) - 0x0000000000304420 _bopti_asm_mono - 0x0000000000304446 _bopti_asm_mono_alpha - .text 0x0000000000304478 0x410 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) - 0x0000000000304478 _bopti_grid - 0x00000000003045ec _bopti_render - 0x000000000030471c _bopti_render_clip - 0x0000000000304830 _bopti_render_noclip - .text 0x0000000000304888 0x9c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) - 0x0000000000304888 _masks - .text 0x0000000000304924 0x2c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) - 0x0000000000304924 _gint_setvbr - .text 0x0000000000304950 0x78 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) - 0x0000000000304950 _gint_intlevel - 0x00000000003049a4 _gint_inthandler - .text 0x00000000003049c8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) - .text 0x00000000003049c8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) - .text 0x00000000003049c8 0x78 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) - 0x00000000003049c8 ___movstr - 0x00000000003049c8 ___movmem - 0x00000000003049fc ___movmemSI64 - 0x00000000003049fc ___movstrSI64 - 0x0000000000304a00 ___movstrSI60 - 0x0000000000304a00 ___movmemSI60 - 0x0000000000304a04 ___movmemSI56 - 0x0000000000304a04 ___movstrSI56 - 0x0000000000304a08 ___movstrSI52 - 0x0000000000304a08 ___movmemSI52 - 0x0000000000304a0c ___movstrSI48 - 0x0000000000304a0c ___movmemSI48 - 0x0000000000304a10 ___movstrSI44 - 0x0000000000304a10 ___movmemSI44 - 0x0000000000304a14 ___movstrSI40 - 0x0000000000304a14 ___movmemSI40 - 0x0000000000304a18 ___movstrSI36 - 0x0000000000304a18 ___movmemSI36 - 0x0000000000304a1c ___movmemSI32 - 0x0000000000304a1c ___movstrSI32 - 0x0000000000304a20 ___movmemSI28 - 0x0000000000304a20 ___movstrSI28 - 0x0000000000304a24 ___movstrSI24 - 0x0000000000304a24 ___movmemSI24 - 0x0000000000304a28 ___movmemSI20 - 0x0000000000304a28 ___movstrSI20 - 0x0000000000304a2c ___movstrSI16 - 0x0000000000304a2c ___movmemSI16 - 0x0000000000304a30 ___movmemSI12 - 0x0000000000304a30 ___movstrSI12 - 0x0000000000304a34 ___movmemSI8 - 0x0000000000304a34 ___movstrSI8 - 0x0000000000304a38 ___movmemSI4 - 0x0000000000304a38 ___movstrSI4 - .text 0x0000000000304a40 0x1f0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) - 0x0000000000304a40 ___udivdi3 - .text 0x0000000000304c30 0x234 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) - 0x0000000000304c30 ___umoddi3 - .text 0x0000000000304e64 0x6c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) - 0x0000000000304e86 ___udivsi3 - .text 0x0000000000304ed0 0x60 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) - 0x0000000000304ed0 ___udiv_qrnnd_16 - .text 0x0000000000304f30 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) + 0x0000000000300e74 _get_lvl_id + .text 0x0000000000300ea4 0x218 build-fx/src/score.c.o + 0x0000000000300ef4 _new_level + 0x0000000000300f18 _new_game + 0x0000000000300f50 _score_add_coin + 0x0000000000300f68 _score_add + 0x0000000000300f7c _score_display + .text 0x00000000003010bc 0x40 build-fx/src/tile.c.o + 0x00000000003010bc _draw_tile + .text 0x00000000003010fc 0x198 build-fx/src/box.c.o + 0x00000000003010fc _sgn + 0x000000000030110e _box_move + 0x0000000000301234 _box_jump + .text 0x0000000000301294 0x3e4 build-fx/src/world.c.o + 0x0000000000301294 _world_get_width + 0x00000000003012a4 _world_get + 0x0000000000301308 _display_cell + 0x0000000000301528 _world_get_ctg + 0x0000000000301564 _world_get_real_x0 + 0x000000000030158c _world_get_real_y0 + 0x00000000003015ac _world_draw + .text 0x0000000000301678 0x588 build-fx/src/mario.c.o + 0x0000000000301688 _mario_draw + 0x0000000000301770 _test_sol_le_plus_proche + 0x00000000003017dc _mario_move + .text 0x0000000000301c00 0x40 build-fx/src/main.c.o + 0x0000000000301c00 _callback + 0x0000000000301c08 _system_error + .text.startup 0x0000000000301c40 0x1b8 build-fx/src/main.c.o + 0x0000000000301c40 _main + .text 0x0000000000301df8 0x1f4 build-fx/src/keyboard.c.o + 0x0000000000301df8 _menu_pause + 0x0000000000301efc _update_keyboard + .text 0x0000000000301fec 0x2b0 build-fx/src/ennemi.c.o + 0x0000000000301fec _display_ennemi + 0x00000000003020dc _ennemi_check_collision + 0x0000000000302130 _move_ennemi + 0x000000000030225c _display_ennemi_table + .text 0x000000000030229c 0xce4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) + 0x0000000000302c98 _kprint_opt + 0x0000000000302de0 _kprint + 0x0000000000302eb8 _kvsprint + 0x0000000000302f00 _sprintf + 0x0000000000302f28 _vsprintf + 0x0000000000302f48 _snprintf + 0x0000000000302f68 _vsnprintf + .text 0x0000000000302f80 0xdc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) + 0x0000000000302f80 _memcpy + 0x000000000030303a __memmove + 0x000000000030303e __memcmp + 0x0000000000303042 _memset + .text 0x000000000030305c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) + .text 0x000000000030305c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + .text 0x000000000030305c 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) + 0x000000000030305c _dupdate + 0x0000000000303074 _dupdate_noint + .text 0x0000000000303080 0xc8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) + 0x0000000000303080 _dimage + 0x00000000003030d4 _dsubimage + .text 0x0000000000303148 0x4c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) + 0x0000000000303148 _dclear + .text 0x0000000000303194 0x3fc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) + 0x000000000030333c _pollevent + 0x0000000000303480 _waitevent + 0x00000000003034cc _clearevents + 0x00000000003034ec _keydown + 0x0000000000303518 _keydown_all + 0x0000000000303554 _keydown_any + .text 0x0000000000303590 0x124 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) + 0x000000000030359c _iokbd_row + 0x0000000000303684 _iokbd_scan + .text 0x00000000003036b4 0x1f4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) + 0x00000000003036b4 _getkey_opt + 0x0000000000303860 _getkey + 0x000000000030386c _getkey_repeat + .text 0x00000000003038a8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) + .text 0x00000000003038a8 0x1c4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) + 0x0000000000303a38 _gint_panic + 0x0000000000303a48 _gint_panic_set + 0x0000000000303a54 _gint_exc_catch + 0x0000000000303a60 _gint_exc_skip + .text 0x0000000000303a6c 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) + .text 0x0000000000303a6c 0x17c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) + 0x0000000000303b20 _gint_install + 0x0000000000303bd0 _gint_unload + .text 0x0000000000303be8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) + .text 0x0000000000303be8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) + .text 0x0000000000303be8 0x1f4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) + 0x0000000000303be8 _tlb_addr + 0x0000000000303bfc _tlb_data + 0x0000000000303c10 _tlb_mapped_memory + 0x0000000000303ce4 _utlb_addr + 0x0000000000303cf4 _utlb_data + 0x0000000000303d04 _utlb_mapped_memory + .text 0x0000000000303ddc 0x9c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + 0x0000000000303ddc _dsize + .text 0x0000000000303e78 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) + 0x0000000000303e78 _dprint + .text 0x0000000000303ed0 0x56c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) + 0x00000000003041f0 _timer_setup + 0x0000000000304280 _timer_delay + 0x00000000003042e0 _timer_start + 0x0000000000304314 _timer_reload + 0x0000000000304334 _timer_pause + 0x0000000000304368 _timer_stop + 0x00000000003043c4 _timer_timeout + 0x00000000003043d0 _timer_address + 0x000000000030440c _timer_clear + .text 0x000000000030443c 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) + 0x000000000030443c _sleep_us + .text 0x0000000000304494 0x1d8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) + 0x000000000030452c _t6k11_display + 0x0000000000304600 _t6k11_contrast + 0x000000000030462c _t6k11_backlight + .text 0x000000000030466c 0x150 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) + 0x00000000003047b0 _clock_freq + .text 0x00000000003047bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) + .text 0x00000000003047bc 0x58 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) + 0x00000000003047bc _bopti_asm_mono + 0x00000000003047e2 _bopti_asm_mono_alpha + .text 0x0000000000304814 0x410 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) + 0x0000000000304814 _bopti_grid + 0x0000000000304988 _bopti_render + 0x0000000000304ab8 _bopti_render_clip + 0x0000000000304bcc _bopti_render_noclip + .text 0x0000000000304c24 0x9c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) + 0x0000000000304c24 _masks + .text 0x0000000000304cc0 0x2c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) + 0x0000000000304cc0 _gint_setvbr + .text 0x0000000000304cec 0x78 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) + 0x0000000000304cec _gint_intlevel + 0x0000000000304d40 _gint_inthandler + .text 0x0000000000304d64 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) + .text 0x0000000000304d64 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) + .text 0x0000000000304d64 0x78 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) + 0x0000000000304d64 ___movstr + 0x0000000000304d64 ___movmem + 0x0000000000304d98 ___movmemSI64 + 0x0000000000304d98 ___movstrSI64 + 0x0000000000304d9c ___movstrSI60 + 0x0000000000304d9c ___movmemSI60 + 0x0000000000304da0 ___movmemSI56 + 0x0000000000304da0 ___movstrSI56 + 0x0000000000304da4 ___movstrSI52 + 0x0000000000304da4 ___movmemSI52 + 0x0000000000304da8 ___movstrSI48 + 0x0000000000304da8 ___movmemSI48 + 0x0000000000304dac ___movstrSI44 + 0x0000000000304dac ___movmemSI44 + 0x0000000000304db0 ___movstrSI40 + 0x0000000000304db0 ___movmemSI40 + 0x0000000000304db4 ___movstrSI36 + 0x0000000000304db4 ___movmemSI36 + 0x0000000000304db8 ___movmemSI32 + 0x0000000000304db8 ___movstrSI32 + 0x0000000000304dbc ___movmemSI28 + 0x0000000000304dbc ___movstrSI28 + 0x0000000000304dc0 ___movstrSI24 + 0x0000000000304dc0 ___movmemSI24 + 0x0000000000304dc4 ___movmemSI20 + 0x0000000000304dc4 ___movstrSI20 + 0x0000000000304dc8 ___movstrSI16 + 0x0000000000304dc8 ___movmemSI16 + 0x0000000000304dcc ___movmemSI12 + 0x0000000000304dcc ___movstrSI12 + 0x0000000000304dd0 ___movmemSI8 + 0x0000000000304dd0 ___movstrSI8 + 0x0000000000304dd4 ___movmemSI4 + 0x0000000000304dd4 ___movstrSI4 + .text 0x0000000000304ddc 0x1f0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) + 0x0000000000304ddc ___udivdi3 + .text 0x0000000000304fcc 0x234 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) + 0x0000000000304fcc ___umoddi3 + .text 0x0000000000305200 0x6c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) + 0x0000000000305222 ___udivsi3 + *fill* 0x000000000030526c 0x4 + .text 0x0000000000305270 0x60 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) + 0x0000000000305270 ___udiv_qrnnd_16 + .text 0x00000000003052d0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) *(C P) -.gint.blocks 0x0000000000304f30 0x120 +.gint.blocks 0x00000000003052d0 0x120 *(.gint.blocks) - .gint.blocks 0x0000000000304f30 0x40 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) - 0x0000000000304f30 _gint_inth_7305 - 0x0000000000304f50 _gint_inth_7705 - .gint.blocks 0x0000000000304f70 0xe0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) - 0x0000000000304f70 _inth_tmu - 0x0000000000304ff0 _inth_etmu2 - 0x0000000000305010 _inth_etmu_help - 0x0000000000305030 _inth_etmux + .gint.blocks 0x00000000003052d0 0x40 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) + 0x00000000003052d0 _gint_inth_7305 + 0x00000000003052f0 _gint_inth_7705 + .gint.blocks 0x0000000000305310 0xe0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) + 0x0000000000305310 _inth_tmu + 0x0000000000305390 _inth_etmu2 + 0x00000000003053b0 _inth_etmu_help + 0x00000000003053d0 _inth_etmux -.gint.drivers 0x0000000000305050 0x90 - 0x0000000000305050 _bdrv = . +.gint.drivers 0x00000000003053f0 0x90 + 0x00000000003053f0 _bdrv = . *(.gint.drivers.0) *(.gint.drivers.1) .gint.drivers.1 - 0x0000000000305050 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) - 0x0000000000305050 _drv_cpg + 0x00000000003053f0 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) + 0x00000000003053f0 _drv_cpg *(.gint.drivers.2) .gint.drivers.2 - 0x0000000000305074 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) - 0x0000000000305074 _drv_tmu + 0x0000000000305414 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) + 0x0000000000305414 _drv_tmu *(.gint.drivers.3) *(.gint.drivers.4) .gint.drivers.4 - 0x0000000000305098 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) - 0x0000000000305098 _drv_keysc + 0x0000000000305438 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) + 0x0000000000305438 _drv_keysc *(.gint.drivers.5) .gint.drivers.5 - 0x00000000003050bc 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) - 0x00000000003050bc _drv_t6k11 + 0x000000000030545c 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) + 0x000000000030545c _drv_t6k11 *(.gint.drivers.6) - 0x00000000003050e0 _edrv = . + 0x0000000000305480 _edrv = . -.rodata 0x00000000003050e0 0x294c +.rodata 0x0000000000305480 0x294c *(.rodata.4) *(.rodata .rodata.*) - .rodata 0x00000000003050e0 0x2c build-fx/src/level.c.o + .rodata 0x0000000000305480 0x2c build-fx/src/level.c.o .rodata.str1.4 - 0x000000000030510c 0x1e build-fx/src/score.c.o + 0x00000000003054ac 0x1e build-fx/src/score.c.o .rodata.str1.4 - 0x000000000030512a 0x3 build-fx/src/main.c.o - *fill* 0x000000000030512a 0x2 - .rodata 0x000000000030512c 0x10 build-fx/src/ennemi.c.o - .rodata 0x000000000030513c 0x204 build-fx/assets/fonts/mario.png.o - 0x000000000030513c _font_mario - 0x0000000000305340 _font_mario_end - .rodata 0x0000000000305340 0x20 build-fx/assets/img/bonus.png.o - 0x0000000000305340 _img_bonus - 0x0000000000305360 _img_bonus_end - .rodata 0x0000000000305360 0x404 build-fx/assets/img/ram.png.o - 0x0000000000305360 _img_ram - 0x0000000000305764 _img_ram_end - .rodata 0x0000000000305764 0x64 build-fx/assets/img/mario.png.o - 0x0000000000305764 _img_mario - 0x00000000003057c8 _img_mario_end - .rodata 0x00000000003057c8 0x404 build-fx/assets/img/main.png.o - 0x00000000003057c8 _img_main - 0x0000000000305bcc _img_main_end - .rodata 0x0000000000305bcc 0x4c build-fx/assets/img/brick.png.o - 0x0000000000305bcc _img_brick - 0x0000000000305c18 _img_brick_end - .rodata 0x0000000000305c18 0x84 build-fx/assets/img/menu_pause.png.o - 0x0000000000305c18 _img_menu_pause - 0x0000000000305c9c _img_menu_pause_end - .rodata 0x0000000000305c9c 0x18 build-fx/assets/img/select_arrow.png.o - 0x0000000000305c9c _img_select_arrow - 0x0000000000305cb4 _img_select_arrow_end - .rodata 0x0000000000305cb4 0x404 build-fx/assets/img/new_level.png.o - 0x0000000000305cb4 _img_new_level - 0x00000000003060b8 _img_new_level_end - .rodata 0x00000000003060b8 0x24 build-fx/assets/img/death.png.o - 0x00000000003060b8 _img_death - 0x00000000003060dc _img_death_end - .rodata 0x00000000003060dc 0x404 build-fx/assets/img/time_over.png.o - 0x00000000003060dc _img_time_over - 0x00000000003064e0 _img_time_over_end - .rodata 0x00000000003064e0 0x4c build-fx/assets/img/coin.png.o - 0x00000000003064e0 _img_coin - 0x000000000030652c _img_coin_end - .rodata 0x000000000030652c 0xdc build-fx/assets/img/mariosmall.png.o - 0x000000000030652c _img_mariosmall - 0x0000000000306608 _img_mariosmall_end - .rodata 0x0000000000306608 0x28 build-fx/assets/img/gift.png.o - 0x0000000000306608 _img_gift - 0x0000000000306630 _img_gift_end - .rodata 0x0000000000306630 0x404 build-fx/assets/img/error.png.o - 0x0000000000306630 _img_error - 0x0000000000306a34 _img_error_end - .rodata 0x0000000000306a34 0xb8 build-fx/assets/img/tuyau.png.o - 0x0000000000306a34 _img_tuyau - 0x0000000000306aec _img_tuyau_end - .rodata 0x0000000000306aec 0x404 build-fx/assets/img/level.png.o - 0x0000000000306aec _img_level - 0x0000000000306ef0 _img_level_end - .rodata 0x0000000000306ef0 0x4c build-fx/assets/img/goomba.png.o - 0x0000000000306ef0 _img_goomba - 0x0000000000306f3c _img_goomba_end - .rodata 0x0000000000306f3c 0x4c build-fx/assets/img/stone.png.o - 0x0000000000306f3c _img_stone - 0x0000000000306f88 _img_stone_end - .rodata 0x0000000000306f88 0x404 build-fx/assets/img/lvl0.png.o - 0x0000000000306f88 _img_lvl0 - 0x000000000030738c _img_lvl0_end + 0x00000000003054ca 0x3 build-fx/src/main.c.o + *fill* 0x00000000003054ca 0x2 + .rodata 0x00000000003054cc 0x10 build-fx/src/ennemi.c.o + .rodata 0x00000000003054dc 0x204 build-fx/assets/fonts/mario.png.o + 0x00000000003054dc _font_mario + 0x00000000003056e0 _font_mario_end + .rodata 0x00000000003056e0 0x20 build-fx/assets/img/bonus.png.o + 0x00000000003056e0 _img_bonus + 0x0000000000305700 _img_bonus_end + .rodata 0x0000000000305700 0x404 build-fx/assets/img/ram.png.o + 0x0000000000305700 _img_ram + 0x0000000000305b04 _img_ram_end + .rodata 0x0000000000305b04 0x64 build-fx/assets/img/mario.png.o + 0x0000000000305b04 _img_mario + 0x0000000000305b68 _img_mario_end + .rodata 0x0000000000305b68 0x404 build-fx/assets/img/main.png.o + 0x0000000000305b68 _img_main + 0x0000000000305f6c _img_main_end + .rodata 0x0000000000305f6c 0x4c build-fx/assets/img/brick.png.o + 0x0000000000305f6c _img_brick + 0x0000000000305fb8 _img_brick_end + .rodata 0x0000000000305fb8 0x84 build-fx/assets/img/menu_pause.png.o + 0x0000000000305fb8 _img_menu_pause + 0x000000000030603c _img_menu_pause_end + .rodata 0x000000000030603c 0x18 build-fx/assets/img/select_arrow.png.o + 0x000000000030603c _img_select_arrow + 0x0000000000306054 _img_select_arrow_end + .rodata 0x0000000000306054 0x404 build-fx/assets/img/new_level.png.o + 0x0000000000306054 _img_new_level + 0x0000000000306458 _img_new_level_end + .rodata 0x0000000000306458 0x24 build-fx/assets/img/death.png.o + 0x0000000000306458 _img_death + 0x000000000030647c _img_death_end + .rodata 0x000000000030647c 0x404 build-fx/assets/img/time_over.png.o + 0x000000000030647c _img_time_over + 0x0000000000306880 _img_time_over_end + .rodata 0x0000000000306880 0x4c build-fx/assets/img/coin.png.o + 0x0000000000306880 _img_coin + 0x00000000003068cc _img_coin_end + .rodata 0x00000000003068cc 0xdc build-fx/assets/img/mariosmall.png.o + 0x00000000003068cc _img_mariosmall + 0x00000000003069a8 _img_mariosmall_end + .rodata 0x00000000003069a8 0x28 build-fx/assets/img/gift.png.o + 0x00000000003069a8 _img_gift + 0x00000000003069d0 _img_gift_end + .rodata 0x00000000003069d0 0x404 build-fx/assets/img/error.png.o + 0x00000000003069d0 _img_error + 0x0000000000306dd4 _img_error_end + .rodata 0x0000000000306dd4 0xb8 build-fx/assets/img/tuyau.png.o + 0x0000000000306dd4 _img_tuyau + 0x0000000000306e8c _img_tuyau_end + .rodata 0x0000000000306e8c 0x404 build-fx/assets/img/level.png.o + 0x0000000000306e8c _img_level + 0x0000000000307290 _img_level_end + .rodata 0x0000000000307290 0x4c build-fx/assets/img/goomba.png.o + 0x0000000000307290 _img_goomba + 0x00000000003072dc _img_goomba_end + .rodata 0x00000000003072dc 0x4c build-fx/assets/img/stone.png.o + 0x00000000003072dc _img_stone + 0x0000000000307328 _img_stone_end + .rodata 0x0000000000307328 0x404 build-fx/assets/img/lvl0.png.o + 0x0000000000307328 _img_lvl0 + 0x000000000030772c _img_lvl0_end .rodata.str1.4 - 0x000000000030738c 0x31 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) - *fill* 0x00000000003073bd 0x3 - .rodata 0x00000000003073c0 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) + 0x000000000030772c 0x31 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) + *fill* 0x000000000030775d 0x3 + .rodata 0x0000000000307760 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) .rodata.str1.4 - 0x00000000003073c8 0x6 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) - *fill* 0x00000000003073ce 0x2 + 0x0000000000307768 0x6 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) + *fill* 0x000000000030776e 0x2 .rodata.str1.4 - 0x00000000003073d0 0x11a /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) + 0x0000000000307770 0x11a /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) 0x11e (size before relaxing) - *fill* 0x00000000003074ea 0x2 - .rodata 0x00000000003074ec 0x18 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + *fill* 0x000000000030788a 0x2 + .rodata 0x000000000030788c 0x18 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) .rodata.str1.4 - 0x0000000000307504 0x4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) - .rodata 0x0000000000307508 0x408 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(font5x7.png.o) - 0x0000000000307508 _gint_font5x7 - 0x0000000000307910 _gint_font5x7_end + 0x00000000003078a4 0x4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) + .rodata 0x00000000003078a8 0x408 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(font5x7.png.o) + 0x00000000003078a8 _gint_font5x7 + 0x0000000000307cb0 _gint_font5x7_end .rodata.str1.4 - 0x0000000000307910 0x6 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) - *fill* 0x0000000000307916 0x2 + 0x0000000000307cb0 0x6 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) + *fill* 0x0000000000307cb6 0x2 .rodata.str1.4 - 0x0000000000307918 0x4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) - .rodata 0x000000000030791c 0x10 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) - .rodata 0x000000000030792c 0x100 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) - 0x000000000030792c ___clz_tab + 0x0000000000307cb8 0x4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) + .rodata 0x0000000000307cbc 0x10 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) + .rodata 0x0000000000307ccc 0x100 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) + 0x0000000000307ccc ___clz_tab -.rela.dyn 0x0000000000307a2c 0x0 - .rela.text 0x0000000000307a2c 0x0 build-fx/src/score.c.o +.rela.dyn 0x0000000000307dcc 0x0 + .rela.text 0x0000000000307dcc 0x0 build-fx/src/score.c.o .rela.text.startup - 0x0000000000307a2c 0x0 build-fx/src/score.c.o + 0x0000000000307dcc 0x0 build-fx/src/score.c.o .rela.pretext.entry - 0x0000000000307a2c 0x0 build-fx/src/score.c.o + 0x0000000000307dcc 0x0 build-fx/src/score.c.o 0x0000000008100000 . = ORIGIN (ram) -.bss 0x0000000008100000 0x5b0 +.bss 0x0000000008100000 0x5c0 0x0000000008100000 _rbss = . *(.bss COMMON) .bss 0x0000000008100000 0x0 build-fx/src/level.c.o @@ -569,159 +571,161 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a 0x0000000008100010 _score .bss 0x0000000008100014 0x0 build-fx/src/tile.c.o .bss 0x0000000008100014 0x0 build-fx/src/box.c.o - .bss 0x0000000008100014 0x18 build-fx/src/world.c.o - 0x0000000008100014 _w_mario_starty - 0x0000000008100018 _w_mario_startx - 0x000000000810001c _w_current_y - 0x0000000008100020 _w_current_x - 0x0000000008100024 _w_fond - 0x0000000008100028 _w_current - .bss 0x000000000810002c 0x20 build-fx/src/mario.c.o - 0x000000000810002c _global_quit - 0x0000000008100030 _mario_accel - 0x0000000008100034 _last_bonus - 0x0000000008100038 _mario_coins - 0x000000000810003c _mario_dead - 0x0000000008100040 _mario_time_accel - 0x0000000008100044 _mario_x_max - 0x0000000008100048 _id_frame - .bss 0x000000000810004c 0x0 build-fx/src/main.c.o - .bss 0x000000000810004c 0x18 build-fx/src/keyboard.c.o - 0x000000000810004c _keys - .bss 0x0000000008100064 0x8 build-fx/src/ennemi.c.o - 0x0000000008100064 _ennemis_global_size - 0x0000000008100068 _ennemis_global - .bss 0x000000000810006c 0x114 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) - .bss 0x0000000008100180 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) - .bss 0x0000000008100180 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) - .bss 0x0000000008100180 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - .bss 0x0000000008100180 0x400 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) - .bss 0x0000000008100580 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) - .bss 0x0000000008100580 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) - .bss 0x0000000008100580 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) - .bss 0x00000000081005a4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) - .bss 0x00000000081005a4 0xc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) - .bss 0x00000000081005b0 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) + .bss 0x0000000008100014 0x1c build-fx/src/world.c.o + 0x0000000008100014 _death + 0x0000000008100018 _w_mario_starty + 0x000000000810001c _w_mario_startx + 0x0000000008100020 _w_current_y + 0x0000000008100024 _w_current_x + 0x0000000008100028 _w_fond + 0x000000000810002c _w_current + .bss 0x0000000008100030 0x20 build-fx/src/mario.c.o + 0x0000000008100030 _global_quit + 0x0000000008100034 _mario_accel + 0x0000000008100038 _last_bonus + 0x000000000810003c _mario_coins + 0x0000000008100040 _mario_dead + 0x0000000008100044 _mario_time_accel + 0x0000000008100048 _mario_x_max + 0x000000000810004c _id_frame + .bss 0x0000000008100050 0x0 build-fx/src/main.c.o + .bss 0x0000000008100050 0x18 build-fx/src/keyboard.c.o + 0x0000000008100050 _keys + .bss 0x0000000008100068 0x8 build-fx/src/ennemi.c.o + 0x0000000008100068 _ennemis_global_size + 0x000000000810006c _ennemis_global + .bss 0x0000000008100070 0x114 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) + .bss 0x0000000008100184 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) + .bss 0x0000000008100184 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) + .bss 0x0000000008100184 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + .bss 0x0000000008100184 0x400 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) + .bss 0x0000000008100584 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) + .bss 0x0000000008100584 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) + .bss 0x0000000008100584 0x24 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) + .bss 0x00000000081005a8 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) + .bss 0x00000000081005a8 0xc /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) + .bss 0x00000000081005b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) *(B R) - 0x00000000081005b0 . = ALIGN (0x10) - 0x00000000000005b0 _sbss = SIZEOF (.bss) + 0x00000000081005c0 . = ALIGN (0x10) + *fill* 0x00000000081005b4 0xc + 0x00000000000005c0 _sbss = SIZEOF (.bss) -.data 0x00000000081005b0 0x120 load address 0x0000000000307a2c - 0x0000000000307a2c _ldata = LOADADDR (.data) - 0x00000000081005b0 _rdata = . +.data 0x00000000081005c0 0x120 load address 0x0000000000307dcc + 0x0000000000307dcc _ldata = LOADADDR (.data) + 0x00000000081005c0 _rdata = . *(.data .data.*) - .data 0x00000000081005b0 0x0 build-fx/src/level.c.o - .data 0x00000000081005b0 0xc build-fx/src/score.c.o - 0x00000000081005b0 _end_level - 0x00000000081005b4 _combo_id - 0x00000000081005b8 _lifes - .data 0x00000000081005bc 0x50 build-fx/src/tile.c.o - 0x00000000081005bc _coin - 0x00000000081005cc _gift - 0x00000000081005dc _earth - 0x00000000081005ec _brick - 0x00000000081005fc _tuyau - .data 0x000000000810060c 0x0 build-fx/src/box.c.o - .data 0x000000000810060c 0x0 build-fx/src/world.c.o - .data 0x000000000810060c 0x40 build-fx/src/mario.c.o - 0x000000000810060c _last_vx_sign - 0x0000000008100610 _mario - 0x000000000810063c _mario_small - .data 0x000000000810064c 0x0 build-fx/src/main.c.o - .data 0x000000000810064c 0x0 build-fx/src/keyboard.c.o - .data 0x000000000810064c 0x0 build-fx/src/ennemi.c.o - .data 0x000000000810064c 0x68 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) - 0x000000000810064c _kprint_formatters - .data 0x00000000081006b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) - .data 0x00000000081006b4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) - .data 0x00000000081006b4 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - 0x00000000081006b4 _topti_font - 0x00000000081006b8 _gint_default_font - .data 0x00000000081006bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) - .data 0x00000000081006bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) - .data 0x00000000081006bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) - .data 0x00000000081006bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) - .data 0x00000000081006bc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) - .data 0x00000000081006bc 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) - .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) + .data 0x00000000081005c0 0x0 build-fx/src/level.c.o + .data 0x00000000081005c0 0xc build-fx/src/score.c.o + 0x00000000081005c0 _end_level + 0x00000000081005c4 _combo_id + 0x00000000081005c8 _lifes + .data 0x00000000081005cc 0x50 build-fx/src/tile.c.o + 0x00000000081005cc _coin + 0x00000000081005dc _gift + 0x00000000081005ec _earth + 0x00000000081005fc _brick + 0x000000000810060c _tuyau + .data 0x000000000810061c 0x0 build-fx/src/box.c.o + .data 0x000000000810061c 0x0 build-fx/src/world.c.o + .data 0x000000000810061c 0x40 build-fx/src/mario.c.o + 0x000000000810061c _last_vx_sign + 0x0000000008100620 _mario + 0x000000000810064c _mario_small + .data 0x000000000810065c 0x0 build-fx/src/main.c.o + .data 0x000000000810065c 0x0 build-fx/src/keyboard.c.o + .data 0x000000000810065c 0x0 build-fx/src/ennemi.c.o + .data 0x000000000810065c 0x68 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(stdio.c.o) + 0x000000000810065c _kprint_formatters + .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(memory.c.o) + .data 0x00000000081006c4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dtext.c.o) + .data 0x00000000081006c4 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + 0x00000000081006c4 _topti_font + 0x00000000081006c8 _gint_default_font + .data 0x00000000081006cc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) + .data 0x00000000081006cc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dimage.c.o) + .data 0x00000000081006cc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dclear.c.o) + .data 0x00000000081006cc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) + .data 0x00000000081006cc 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(iokbd.c.o) + .data 0x00000000081006cc 0x8 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(getkey.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(start.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(syscalls.S.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(hardware.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(exch.s.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(mmu.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dprint.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(tmu.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(sleep.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(t6k11.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(cpg.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(topti-asm.s.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti-asm.s.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(bopti.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(masks.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(vbr.s.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(gint.c.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.S.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(inth.s.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_movmem.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivdi3.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_umoddi3.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udivsi3.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_udiv_qrnnd_16.o) + .data 0x00000000081006d4 0x0 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a(_clz.o) *(D) - 0x00000000081006d0 . = ALIGN (0x10) - *fill* 0x00000000081006c4 0xc + 0x00000000081006e0 . = ALIGN (0x10) + *fill* 0x00000000081006d4 0xc -.data.4 0x00000000081006d0 0x0 load address 0x0000000000307b4c +.data.4 0x00000000081006e0 0x0 load address 0x0000000000307eec *(.data.4) - 0x00000000081006d0 . = ALIGN (0x10) + 0x00000000081006e0 . = ALIGN (0x10) 0x0000000000000120 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) 0x00000000e5200000 . = ORIGIN (ilram) -.ilram 0x00000000e5200000 0x0 load address 0x0000000000307b4c - 0x0000000000307b4c _lilram = LOADADDR (.ilram) +.ilram 0x00000000e5200000 0x0 load address 0x0000000000307eec + 0x0000000000307eec _lilram = LOADADDR (.ilram) 0x00000000e5200000 _rilram = . *(.ilram) 0x00000000e5200000 . = ALIGN (0x10) 0x00000000e5007000 . = ORIGIN (xram) -.xram 0x00000000e5007000 0x0 load address 0x0000000000307b4c - 0x0000000000307b4c _lxram = LOADADDR (.xram) +.xram 0x00000000e5007000 0x0 load address 0x0000000000307eec + 0x0000000000307eec _lxram = LOADADDR (.xram) 0x00000000e5007000 _rxram = . *(.xram) 0x00000000e5007000 . = ALIGN (0x10) 0x00000000e5017000 . = ORIGIN (yram) -.yram 0x00000000e5017000 0x0 load address 0x0000000000307b4c - 0x0000000000307b4c _lyram = LOADADDR (.yram) +.yram 0x00000000e5017000 0x0 load address 0x0000000000307eec + 0x0000000000307eec _lyram = LOADADDR (.yram) 0x00000000e5017000 _ryram = . *(.yram) 0x00000000e5017000 . = ALIGN (0x10) @@ -731,8 +735,8 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a 0x000000008800df00 _gint_vbr = 0x8800df00 0x000000008800f400 . = ORIGIN (rram) -.gint.data 0x000000008800f400 0x140 load address 0x0000000000307b4c - 0x0000000000307b4c _lgdata = LOADADDR (.gint.data) +.gint.data 0x000000008800f400 0x140 load address 0x0000000000307eec + 0x0000000000307eec _lgdata = LOADADDR (.gint.data) 0x000000008800f400 _rgdata = . *(.gint.data .gint.data.*) .gint.data 0x000000008800f400 0x4 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(dupdate.c.o) @@ -753,7 +757,7 @@ LOAD /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgcc.a 0x000000008800f540 . = ALIGN (0x10) 0x0000000000000140 _sgdata = SIZEOF (.gint.data) -.gint.bss 0x000000008800f540 0x290 load address 0x0000000000307c8c +.gint.bss 0x000000008800f540 0x290 load address 0x000000000030802c *(.gint.bss .gint.bss.*) .gint.bss 0x000000008800f540 0x180 /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(keysc.c.o) .gint.bss 0x000000008800f6c0 0x1c /home/gmilan/opt/sh-elf-2.33-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-fx.a(setup.c.o) diff --git a/build-fx/src/ennemi.c.o b/build-fx/src/ennemi.c.o index b23bf7aeb69e8fe222c4923f97c9439110634836..4c98a2551944e384974a230023f0c81dd3c7c154 100644 GIT binary patch delta 1006 zcmZ9L(MwZd6u{4ScX!>qX>Paar}^Nv*pdcQCm0gwR01KeYlfo1Hg|`c&TY6JETo}J zbIG{stsZ*J2p@#?P!jYH_|U@!Jv1@cVq}nzRP5Eh>)p-h!1tZsIo~Zoa<+dB-5zjk~MXZVa*|7+;J%XxkF67m;^q6^VVgabtQnk>iHl zexu8tqDPHg*E-^&zJNyiI~H8lG+lsEqiexsht^w$;l9%tPKh~0qXSCJA@H25*=4V4 z1-9iL=z)lHCD`wL=6vPc9kS$mlwOohM12Y5UU<0|PNYf+C?ecAzQ`w)fHW$?Wh0+5 zB;*?0 zEZ#2CjihYOG-R78PnSbw_myB7uIU z2FswA+O;j6&XsQM|LpewRE+p~EBU#~Ic)%- z34bL^)`}g7L;|x?L=&q&rI5!T4ESd}{%ANHiie^R=|IzHiuH;rTK!819u5a!lV<7oeUC716vg(x_JXS6gc|XIv5}RmymeKC?UFl zMM9$Y_d`aYIX?oM90hwBA2MhN`G=}yearmDz@71p0SV~0y!{^CTrHeO5DW2Ihm1BeDZ6i6^w5t zPhrk>d;>IkiVy<>Bam)_St9^p^Z{30Nm1%w45^d=yiVR8XWooH@;S!#T0 zUS4W$CPREuenmV;V6qXbT0H|)xHvvNCqF4MC%!ndDix%U;RFK%C&*S1IK#le1!G@e zU|@x@uP`uh!`L?%7@fzV+BZ!HNvW z5e5cf7#rvyei$3*AdboYY}1(-FHC;Hro_f#05oXDWC3<%MwZDY?CL-=228fFt1+?M tn7jta5t)32U5$-N0~l%!lQ@*vm@|NSj!)L$P!eN#0%W=aF${q10RS1~m{kA( diff --git a/build-fx/src/level.c.o b/build-fx/src/level.c.o index 485f18307c6a73bd33e393663e4cbfa90dad8d33..04fbd297f154be34c3896c74d5ef7cec966cb3dd 100644 GIT binary patch delta 876 zcmXw#Ur19?9LIn6-mRP?o%iOsUfrf!V{>gXbIU*B--_x%nn+Axijph;%+1Q71BFRX zN-ye_38E!M{~kl}#a^Tc(n4oxWk#W8dnp8EFCDP6={@lKeLuhN@0{N`_r6QtJvpqW zlYYD~TKmx3G8_&)*la1p$by#9x$wmOi9+1qDaTfUv|mq-m16Z-wXwlR z>Us3Op)27phle)n$eDb!fRRvNDp?L(_tdq`_&^d*XKQ!U!^GOV?^){TP2>-wyjGYTfJCOBSSg!vND z#V^`1XW(q3wcO(Z%!NfK3wF#_dG^@F+H##)=N`SxX$x@V%(jw6EYD`J0-MQZv1(Ss zYT4}3k^;=CB9>K)PQN8YNG1^~An9(r*ixnGBB!g!kB*qPs5LWbo2!(by?6%2xT2!p zY4pc@vCfz`))8xufwC?uW6i$CQ>)E`lO%udydHOKy{dYf)``909o?rUx8?CH#(xq4hhh3H)XfjT@+ z?*n8WF=GYDk~kkgEwO{VQ{rOsUWrQqG!j<=q)2=b;Dp3i0CLDhajASBFu`(`LY$GDa;&8GleUgkkfA~R( HoS6F`ZW8r2 delta 983 zcmZvY&rcIk5Xa~3YmrhZTMP0-sNHQrOfa;ifFcRyN8(LLxNz$uZ3H4J$r|xs(iaa3 zk;ArwzY-6aXe5zC6)z?p_yasp6Yq#%;zfuU;-LrM+jg-gZZf;yH=pm!o7w%^k9DT5 zxcc9O0wkR&jOqgo`Ncu^^lm;tWd^c{dv`apV`IXQ#sQFyV>u2#?BKGHn=hqFIvn zGsO2@g(3=?qI?+NrVN=W(KVq(8IM`ihcC<6ip65Zro0=Ub`^vxB6>cQ3Q_Xn*nfxS zeGJoh{|NnOW@*9sBZs|_nA{>)i$t7aVyn`|*-7zFtev9;>EfZUmAc6_uJcyr%Z`g| zNUYSsFnc+g7Kbu;sSFNDUB)h!u^ypi!w~ZcM{Bk-(-|%3W<+EeYG&r_r+T4JXeO`a zCwT*J;?3NjIsI>L#m}45bc_Zd2OF>nTd+@5Vv-!$B>Rf0gq655rZ8nr;fkr`s7k{$ z4rLGb=T%MLZp_zcx`?QVyHanfUM=q#bb~AJNgaIlXjyr>>Bv{h++)YUozb?LLvT+Y zQZj~lgdZ%a^gRz*~n!oG+|vA#uL5weO4&R(*I8_q8B4u3g+s595560^5v!;qLy zT)A;Qwf?h0C286Z&}h{G$dQ|DJpypb)=L1*wl)ELwq6GC+WHAVi>;plcx=4_P;KiM z0QI(B1#lAZ$%%ok0r+i@!{y2cWCsJTAi0ert~SNdkag61JA_d#Ol1XtmBiPs8iDbH fbdBJS{7m5Ssy3x!0%KKY>V6C7kmWDFtV{j?$EX-c diff --git a/build-fx/src/main.c.o b/build-fx/src/main.c.o index 53ff1de1d7b7a344f544c138f7ad338b1a81bd65..29be9f23d2e5a33e389de22fc4144ec3b5ce56ea 100644 GIT binary patch delta 676 zcmZ9|&r1|x7zgn0yW`+aW3)deU2AQ0Mv}a27L|o9Loh-e zG8VF)f({*mI(QHi>d+q$blnj#!V28h^3ZK#Zbt7^&&3zs_xZfv_vL+G-uLNhdd3!W zk9*6$J8mtx1>Ii{+$DEdhgNe}#j?8w($YL;U(1f@jl;D8@N@!sN|6Ag374c2; zZB%M8ll`000eac;o8GEpw4vtxQ6M4y?GO%-WV=9$T>>=rX&}u$2N>)NK%DIX+u0L9 zJ9`r7U|$C^(tdQcxCw0Gg*!ke`!2A9Jq7G!-v_p`9{^c)73gBm0K3>v0h9e4=w`n_ z3_9gnJ1mQ%S-@t`0ln-6nri(ZYUIRU$?yLex79ZJ@KG`}TkNGltxuId87q;e*{Zxw N9HFXQDba#v`~ki$gpU9K delta 754 zcmZ9~K}Zx)7zgnGb9UL?CSjf3wbiVt9ZiuUih?D~ojvKKg9-*hl8)?xyRFMc9twg9 z5^`xF?G<$BAk@J_V33E7K|xo?%!n*-S;K1-bBgGV`4Q|pyzlpY@69*!W~LH(7g^9) zZLvLTn?s2WQs$J{W}GD2(SHrq6Jphk7MhOD$UVEw!v{&eX(PAgu;F+Lk<5x*H< z3`4|xwR^dI(CPDPc6{hW(VcM%?lm{>=3L0r?#Qp>@v`OUTWR&V*MHFKk@}jt+>}wA zRNN~$z5i!Zo|Sv~sI4wL7BMsfvc zBQF3)$d7=d^EEoq9{Xl!f7XjhbpM5KsK(_}+L*``S? z9fxTfp=l>lWtOX$1BVK=Y!V!*R#1){IJO&y*hLy3G!Yk6A#uoImr0=PCCwA7CHwc$ z^XK=zKmYl)ZNWb;Vd1S?-81O;$Z<)L{vMu0lE)Z+I2;#%Pg+loical|JWg#9U%9FT zl3RJKowV$q&nAS7&O30RjQiS4AE@ZL^SR?eY>0L#R=WHsrvHPwvgf|zYF>EJd{2v> zh>%0<0M+=w6Nq!JtIDKKYv4B%OjPOH}go_hXedLO|kX0 ztN2)JY}t3EfR=s$eo+EmT`r^58_BH`zeEpecj9R7_UbL)enp5ZYWK^q`bS9e&{jlS zxt-Qyts0ismQLmo4ZyX4!l2<=N?QQD9*b2*{}c7#R4$Vno9^!z6~3>U7whKF4f7{vW*h3v z*mNd$h^iN==2TssYN+R#y4y_UE>s&^kJtV2hJSXqzYXb}A>h0YWmW>h%Tq2SH*U+FG?bVBo<=1M0-f4)g` z%Pm{(b+;;X`Q@m7al*af7T@3ejKsvf#z}cum2xO_^@lk!Sb>+@WVHO z=HTX_-mkgR01LG0fs$YDDh}5Jd(8+5(!k!h5X5rP=rP|Vd_*kx*DESoch9w^ zF4GU?p<}wNic*wYYF#8qgrLXhti2zlXi6kl+()?HphqupV$aIU9&9*BapgrO*Z7zI zHM|yDc}gS%?6?HL>CHA@cLl&b(O9JnGCkeZYK3w|q)cmdEnz#4u&sOTp8Yn?;(36# z8$01E03OCy0a_R@05};h0$|3!19%zV1ZZNs4A9E>4uH^L`(c1K#zS@ID>@W_{ZjxJ zyO98BXPkT!Y)=FD*!n2|KjSX}0*ucA>}5PlgY{ls!}h#>mzVbN696cwKjS5AzpFc4 q2e9j&9;U_qN+x4z#)M)A2s454m%x@BSY&woU^8 delta 859 zcmZ9JUr19?9LIm>+^gI5F3{!ly7sVpjYVakHlazO6N_34w{j0g4_l4W%s@~G64s`| z;Ci{*En3jSNTVKvRqG+>p&pZ7yyk<6gm)_W&_fS#ArRKt=6UfvoZshgzQ6DH{CUwd z(=aPxZsOh1Np$6TpA?gRW=4@@*E4GwKM!1}u<^`oRR_{Iyd?@oG3E?yrLi0tmcPy)NH|dEL`i&nmnu(ed{Uc0C*P2~Ps@~g7Oe%TblJtb=^VcbC z^z>-)*Pi%r6n$mXHpw2|76rw_y^iM7NMWMi(@1q=CwGUWufq<-Gy9w}K`sGWjU8Sq) z7vrg$cJDD6#GXjgP&NyNMpn z#Z%!_BNW4^`m9w(SJfI|q%gV_MEQ{DtPOnDo?N_iImQ~nK5Px%i(E#<_x~WLYLk>x6pcQG05I;q`YkT83bsX2; zs4+;S1gMHq%Ro?tcu18Z^{Xf!Nc}+kflz~rrv!0lXv&CGCo`uXFmo(MGB&UT5WngZIP}kJUSouca>U%hB-0n^#yMVIm#D|)6X~hi~hZFI{#1zL;-h1 zhxdK-dDI{E2fR632YbL*wspJx#ST`OxP9#UO3A5$axzZ)8q2me@8!3bDHRs_mw{uY zsiU}JeB#5m{6V4NLfvG&a=5Lrv{eWweYm1mwTE|<94bgt3w@vli& zXJ8-pp7nL@gE{MnJw^xw1LUx;Y#}uPE}v7ROYTKlVAZ8)i)s_LhIisAQqk>;>q2dg z>Td_k$}zK^@Q#^3AV{WA90Jy3ZiQ6gnIC%UOH|mcLU`vS2n{5g0a*I5^&#h3*24hiT<_$R@vRdj6bOCjxx!qAv*a^ zrR`QA%A}`*@4r}IvS;Yxy1Eu@E>az{FVvT4b!}|Dqj`){n!gD4FsDCLnx6fnhv~jL z?;V_U?CS7pW_9Bazz6z{HooTo92*Q#the`&uOs&It3h9PC=v=k60DNyJ7I_QdsQz2 z`jIz86ok8eU>9X5Ntp1;T7Nh2OXPRxvVBX(Q(5yXuaegd%! zVDlN{dE}arMbL)yu3CR*Hu14de0&psZxf%ywLV7QGsb$KBCjCtF!-07^1sIT8v0Cq zKjO&{{WpyKpAc`uX6{!-teK(z_e~rxj&6FKVvvz@H^x)Vi17*<{Om|RlME$**8rcA zWd3YADG#E9PmJdCQdZ{2EK%T-lK5!2XvxKJx{%9=MLr>AGRX4cSzbO+0AvX8>wV ze-3~#uB|A+Z7m#kM~jOoNXvSeV=*$qr;o8YL<9bGsK_pgm3 z<4MeotsNWT#`|O^_sweh-T?NYliU?+UW+BsTz5bE$e6Gm)8@nLTQw3ho2}{vJI+rn qA}8-K*&CU!4jXwBEpKNHYNqz0&oomXK9SZu=P~4m%p~l!yng_^YThmY delta 1055 zcmZ8fUr1A76hFInyZ3H)ZaQakLv-G3{*61WuyW-_pccV`9_qnpb5l19o796rbhC!2 zFlK!q1U&@82nu`%q6di{Ldqwv!HDW%tx^jLA7T*MpL5;4H9Bzke!t&2-#OVaV{PaGb0yQb_E4LFKxNG)S(z1 zf+<6q8=Oy0$dY@QPF|0aY+ZmCsnE44U7DYwk`sgTvQv#X)d-bl*Fm-`v20b8s49c` z>^o3Y(KbxW=BzcqM+sJ9(_D$pWKD`L>4Tn;Lc9Qcte^}_2#0n8cu5w6MW+C9*`P)O*C@0ID0EwSvcn1&oEIm!w` zM-m(V6mjwch;y-%V&)@=kHjT0E3V0PL1D-y*9N+H>6=^|w_RR7iX}e5_(mU|8z8&x zv`Q0M?Jw-^>2vpe_YOQ5c{4!5^P@L97ROE;eoLOv^}44dM>mnXoPjv?GiS`$ zU0;EYXCrz!dcO@ohi3;mhpxrD5!*}nF~sN57uEdJh__8Cf)=@D=$5V)aj`PuB-U=i z)3074$YaRuD$o3v{}AI>P_wA6Gb&$2tn|}{e2sY9ibHq+|5>R3UsbAI_=Q|g z^h_7&VR}r%@u5p_HgX|8O6HglF|(ota7V1N55+>n$GRkwN_80GG>i?+8pbu1X}B7P z*KiGhRl{x^T*D0j6&j9~)Evjfs5*sr9Yx#%6ke{@0(kjv60X*%>23JGNG~T*l$Si` z1jf*Z4|qj3If0_0#H)9ZR-=`nupd+tzj0fQ8a)h!UGbaD8U;qbAEAXjHVQi!YzYU^ IHQR3U2XH0J5&!@I diff --git a/src/ennemi.c b/src/ennemi.c index e3689f0..75c1f5f 100644 --- a/src/ennemi.c +++ b/src/ennemi.c @@ -5,13 +5,17 @@ #include "world.h" #include "score.h" +#include -void display_ennemi(ennemi_t const * e) +void display_ennemi(ennemi_t * e) { if (e->life==DEAD) return; if (e->b.x-e->b.w<=world_get_real_x0(0) || e->b.x>=world_get_real_x0(0)+127) return; + else + e->discovered=1; + if (e->type==GOOMBA) { extern image_t img_goomba; @@ -22,49 +26,81 @@ void display_ennemi(ennemi_t const * e) draw_tile(e->b.x-world_get_real_x0(0), e->b.y-world_get_real_y0(mario.p.y), &goomba, 0, 0); } } + +bool ennemi_check_collision(ennemi_t *e) +{ + bool x_collide= (mario.p.x<=e->b.x && e->b.xb.x+e->b.w-1 && e->b.x+e->b.wb.y && e->b.yb.y+e->b.h-1 && e->b.y+e->b.hb.x-e->b.w<=world_get_real_x0(0) || e->b.x>=world_get_real_x0(0)+127) + if (e->b.x-e->b.w>world_get_real_x0(0) && e->b.xdiscovered=1; + if (e->b.x-e->b.w<=world_get_real_x0(0)) + e->type=NONE; + if (e->discovered==0) return; if (e->life==DEAD) - return; + e->type=NONE; if (e->type==NONE) return; + if (e->type==GOOMBA) { - int old_vx=e->b.vx; - if (time_id%2) - e->b.vx=0; - - box_move(&e->b); - - if (time_id%2) - e->b.vx=old_vx; - - if (e->b.vx==0) + if (e->life==1) { - if (e->p1==0) + int old_vx=e->b.vx; + if (time_id%2) + e->b.vx=0; + + box_move(&e->b); + + if (time_id%2) + e->b.vx=old_vx; + + if (e->b.vx==0) { - e->b.vx=-1; - e->p1=-1; + if (e->p1==0) + { + e->b.vx=-1; + e->p1=-1; + } + else + { + e->p1*=-1; + e->b.vx=e->p1; + } } - if (e->p1==1) + if (e->b.y<0) + e->type=NONE; + if (ennemi_check_collision(e)) { - e->b.vx=-1; - e->p1=-1; - } - if (e->p1==-1) - { - e->b.vx=1; - e->p1=1; + if (mario.p.vy<0) + { + e->life=0; + e->p1=time_id; + score_add(100); + mario.p.vy=4; + } + else + mario_dead=1; } } - if (e->b.y<0) - e->type=NONE; + else + { + if (e->p1>=time_id+10 || e->p1life=DEAD; + } } + display_ennemi(e); } -void ennemi_collision(ennemi_t *e); + + + ennemi_t * ennemis_global=0; int ennemis_global_size=0; @@ -73,6 +109,5 @@ void display_ennemi_table() for (int i=0; i0 && jump==0) - mario.p.vy=0; + else if (mario.p.vy>=6 && jump==0) + mario.p.vy=5; int vx=sgn(keys[MK_RIGHT] - keys[MK_LEFT]); @@ -161,19 +161,62 @@ void mario_move() mario_time_accel=0; // coins - world_t* c; - c=world_get(mario.p.x, mario.p.y); - if (c->type==COIN && c->p1==0) - {score_add_coin();c->p1=1;} + coin_t* c; + c=(coin_t*)world_get(mario.p.x, mario.p.y); + if (c->type==COIN && c->taken==0) + {score_add_coin();c->taken=1;} c=world_get(mario.p.x+mario.p.w-1, mario.p.y); - if (c->type==COIN && c->p1==0) - {score_add_coin();c->p1=1;} + if (c->type==COIN && c->taken==0) + {score_add_coin();c->taken=1;} c=world_get(mario.p.x, mario.p.y+mario.p.h-1); - if (c->type==COIN && c->p1==0) - {score_add_coin();c->p1=1;} + if (c->type==COIN && c->taken==0) + {score_add_coin();c->taken=1;} c=world_get(mario.p.x+mario.p.w-1, mario.p.y+mario.p.h-1); - if (c->type==COIN && c->p1==0) - {score_add_coin();c->p1=1;} + if (c->type==COIN && c->taken==0) + {score_add_coin();c->taken=1;} + + // box + if ((mario.p.x+mario.p.w/2)/8==(mario.p.x+mario.p.w/2-1)/8) + { + gift_t* c=(gift_t*)world_get((mario.p.x+mario.p.w/2),mario.p.y+mario.p.h); + if (c->type==GIFT) + { + if (c->time_hit_id==0 && c->content==1 && c->number!=0) // piece + { + c->number--; + c->time_hit_id=1; + score_add_coin(); + } + } + } + + if ((mario.p.x+mario.p.w/2)/8==(mario.p.x+mario.p.w/2-1)/8) + { + world_t* t=(gift_t*)world_get((mario.p.x+mario.p.w/2),mario.p.y+mario.p.h); + if (t->type==GIFT) + { + gift_t *c=(gift_t*)t; + if (c->time_hit_id==0 && c->content==1 && c->number!=0) // piece + { + c->number--; + c->time_hit_id=1; + score_add_coin(); + } + } + if (t->type==BRICK) + { + brick_t *c=(brick_t*)t; + if ((c->content==0 || c->number) && mario.size==M_SMALL) // piece + { + if (c->number) + { + c->number--; + score_add_coin(); + } + c->time_hit_id=1; + } + } + } } diff --git a/src/world.c b/src/world.c index 6f0dfa1..9a47a4e 100755 --- a/src/world.c +++ b/src/world.c @@ -1,6 +1,7 @@ #include "world.h" #include "tile.h" #include "mario.h" +#include "ennemi.h" #include world_t * w_current=0; @@ -12,106 +13,151 @@ int w_mario_starty=0; int world_get_width() { - return w_current_x*8; + return w_current_x*8; } +world_t death={0,0}; + world_t* world_get(int x, int y) { - x/=8; - y/=8; - if (0<=x && xtype==TUYAU) - draw_tile(sx, sy, &tuyau, cell->p1, cell->p2); + if (cell->type==TUYAU) + { + tuyau_t* i=(tuyau_t*)cell; + draw_tile(sx, sy, &tuyau, i->x, i->y); + } - if (cell->type==EARTH) - draw_tile(sx, sy, &earth, cell->p1, cell->p2); + if (cell->type==EARTH) + { + earth_t* i=(earth_t*)cell; + draw_tile(sx, sy, &earth, i->x, i->y); + } + if (cell->type==BRICK) + { + brick_t* i=(brick_t*)cell; + if (i->time_hit_id) + { + i->time_hit_id++; + sy+=2+(i->time_hit_id-4)/4; + if (i->time_hit_id==8) + i->time_hit_id=0; + } + if (i->time_hit_id || i->content==0 || i->number) + draw_tile(sx, sy, &brick, 0, 0); + else + draw_tile(sx, sy, &gift, 1, 0); + if (i->content==1 && i->time_hit_id && i->time_hit_id<=4) + draw_tile(sx, sy+8, &coin, 0, 0); + } - if (cell->type==BRICK) - draw_tile(sx, sy, &brick, 0, cell->p1); + if (cell->type==GIFT) + { + gift_t* i=(gift_t*)cell; + if (i->time_hit_id) + { + i->time_hit_id++; + sy+=2+(i->time_hit_id-4)/4; + if (i->time_hit_id==8) + i->time_hit_id=0; + } + if (i->time_hit_id || i->number) + draw_tile(sx, sy, &gift, 0, 0); + else + draw_tile(sx, sy, &gift, 1, 0); + if (i->content==1 && i->time_hit_id && i->time_hit_id<=4) + draw_tile(sx, sy+8, &coin, 0, 0); + } - if (cell->type==GIFT) - draw_tile(sx, sy, &gift, cell->p1, 0); - - if (cell->type==COIN) - draw_tile(sx, sy, &coin, cell->p1, 0); - + if (cell->type==COIN) + { + coin_t* i=cell; + draw_tile(sx, sy, &coin, i->taken, 0); + } + } int world_get_ctg(int x, int y) { - world_t *c=world_get(x,y); - if (c==0) - { - return CTG_DEATH; - } - switch (c->type) - { - case COIN: - case EMPTY: - return CTG_EMPTY; - case DEATH: - return CTG_DEATH; - case TUYAU: - case GIFT: - case BRICK: - case EARTH: - return CTG_SOIL; - default: - return CTG_EMPTY; - } + world_t *c=world_get(x,y); + if (c==0) + { + return CTG_DEATH; + } + switch (c->type) + { + case COIN: + case EMPTY: + return CTG_EMPTY; + //case DEATH: + return CTG_DEATH; + case TUYAU: + case GIFT: + case BRICK: + case EARTH: + return CTG_SOIL; + default: + return CTG_EMPTY; + } } static int max(const int x, const int y) { - return (xy?y:x); } int world_get_real_x0(int x) //mario delta en 0,0 -{return max(mario_x_max-54,0);} +{return min(max(mario_x_max-54,0),w_current_x*8-128);} int world_get_real_y0(int y) //mario delta en 0,0 -{return max(y-24,0);} +{return min(max(y-24,0),w_current_y*8-64);} void world_draw(int x, int y) { - dimage(0,0,w_fond); - int mx0=world_get_real_x0(x); - int my0=world_get_real_y0(y); - int sx0=mx0%8; - int sy0=my0%8; - mario_draw(); - //int mx, my; - - int mx=mx0; - for (int i=0; i<=17; i++) - { - int my=my0; - for (int j=0; j<=9; j++) - { - display_cell(mx, my, 8*i-sx0, 8*j-sy0); - my+=8; - } - mx+=8; - - } + dimage(0,0,w_fond); + int mx0=world_get_real_x0(x); + int my0=world_get_real_y0(y); + int sx0=mx0%8; + int sy0=my0%8; + display_ennemi_table(); + mario_draw(); + //int mx, my; + + int mx=mx0; + for (int i=0; i<=17; i++) + { + int my=my0; + for (int j=0; j<=9; j++) + { + display_cell(mx, my, 8*i-sx0, 8*j-sy0); + my+=8; + } + mx+=8; + + } } \ No newline at end of file diff --git a/src/world.h b/src/world.h index 8ad94bb..acd10ab 100755 --- a/src/world.h +++ b/src/world.h @@ -7,23 +7,61 @@ #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 EMPTY 0 + #define EARTH 1 // X, Y, _ (XY tileset) -#define BRICK 2 - -#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; - char p1; // numéro de tile - char p2; // visible, invisible, téléporteur/en train de tirer (canon par exemple) - char p3; + int type :4; + unsigned empty :20; + unsigned x :4; + unsigned y :4; +} earth_t; + +#define BRICK 2 +typedef struct +{ + int type :4; + unsigned time_hit_id :20; + unsigned content :4; + unsigned number :4; +} brick_t; + +//#define PLATEFORM 4 +#define TUYAU 5 // X, Y, _ (XY tileset) +typedef struct +{ + int type :4; + unsigned empty :20; + unsigned x :4; + unsigned y :4; + +} tuyau_t; + +#define GIFT 6 // s, t, n (state[hit time], type[vide=0, piece=1, ...], qté) +typedef struct +{ + int type :4; + unsigned time_hit_id :20; + unsigned content :4; + unsigned number :4; +} gift_t; + +#define COIN 7 // s, _, _ (state) +typedef struct +{ + int type :4; + int empty :24; + unsigned taken :4; +} coin_t; + +// Generic container +typedef struct +{ + int type :4; + unsigned data :28; // raw binary format } world_t; int world_get_width();