diff --git a/SuperCbr.g1a b/SuperCbr.g1a index 7216263..3624745 100644 Binary files a/SuperCbr.g1a and b/SuperCbr.g1a differ diff --git a/assets-fx/img/lvl0.png b/assets-fx/img/lvl0.png index f7a707a..45cb815 100644 Binary files a/assets-fx/img/lvl0.png and b/assets-fx/img/lvl0.png differ diff --git a/build-fx/SuperCbr.bin b/build-fx/SuperCbr.bin index e30e571..f4e14d8 100755 Binary files a/build-fx/SuperCbr.bin and b/build-fx/SuperCbr.bin differ diff --git a/build-fx/SuperCbr.elf b/build-fx/SuperCbr.elf index 2c58af0..6a6b973 100755 Binary files a/build-fx/SuperCbr.elf and b/build-fx/SuperCbr.elf differ diff --git a/build-fx/assets/img/lvl0.png.o b/build-fx/assets/img/lvl0.png.o index cb8866b..80ddfd5 100644 Binary files a/build-fx/assets/img/lvl0.png.o and b/build-fx/assets/img/lvl0.png.o differ 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 b23bf7a..4c98a25 100644 Binary files a/build-fx/src/ennemi.c.o and b/build-fx/src/ennemi.c.o differ diff --git a/build-fx/src/level.c.o b/build-fx/src/level.c.o index 485f183..04fbd29 100644 Binary files a/build-fx/src/level.c.o and b/build-fx/src/level.c.o differ diff --git a/build-fx/src/main.c.o b/build-fx/src/main.c.o index 53ff1de..29be9f2 100644 Binary files a/build-fx/src/main.c.o and b/build-fx/src/main.c.o differ diff --git a/build-fx/src/mario.c.o b/build-fx/src/mario.c.o index 2e560e9..d1686df 100644 Binary files a/build-fx/src/mario.c.o and b/build-fx/src/mario.c.o differ diff --git a/build-fx/src/world.c.d b/build-fx/src/world.c.d index e11ef09..9ed6b10 100644 --- a/build-fx/src/world.c.d +++ b/build-fx/src/world.c.d @@ -1,5 +1,5 @@ build-fx/src/world.c.o: src/world.c src/world.h src/tile.h src/mario.h \ - src/box.h + src/box.h src/ennemi.h src/world.h: @@ -8,3 +8,5 @@ src/tile.h: src/mario.h: src/box.h: + +src/ennemi.h: diff --git a/build-fx/src/world.c.o b/build-fx/src/world.c.o index 6b3da4b..1a46236 100644 Binary files a/build-fx/src/world.c.o and b/build-fx/src/world.c.o differ 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();