big changes

This commit is contained in:
milangames-art 2019-11-20 15:33:34 +01:00
parent 3f24a0c911
commit 86fc086bc6
17 changed files with 540 additions and 366 deletions

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 695 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 629 B

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

View File

@ -1,13 +1,15 @@
Archive member included to satisfy reference by file (symbol)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
build-fx/src/world.o (memcpy)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
build-fx/src/main.o (dupdate)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
build-fx/src/tile.o (dsubimage)
build-fx/src/world.o (dimage)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
build-fx/src/main.o (dclear)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
build-fx/src/main.o (keydown)
build-fx/src/mario.o (pollevent)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) (iokbd_scan)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
@ -32,8 +34,6 @@ Archive member included to satisfy reference by file (symbol)
build-fx/src/main.o (timer_setup)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o) (vsnprintf)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) (memcpy)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) (t6k11_display)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
@ -79,7 +79,9 @@ Discarded input sections
.comment 0x0000000000000000 0x12 build-fx/src/tile.o
.comment 0x0000000000000000 0x12 build-fx/src/world.o
.comment 0x0000000000000000 0x12 build-fx/src/mario.o
.comment 0x0000000000000000 0x12 build-fx/src/main.o
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
@ -95,7 +97,6 @@ Discarded input sections
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
@ -123,16 +124,22 @@ Linker script and memory map
LOAD build-fx/src/tile.o
LOAD build-fx/src/world.o
LOAD build-fx/src/mario.o
LOAD build-fx/src/main.o
LOAD build-fx/assets/img/mario.png.o
LOAD build-fx/assets/img/main.png.o
LOAD build-fx/assets/img/tuyau.png.o
LOAD build-fx/assets/img/level.png.o
LOAD build-fx/assets/img/sprites.png.o
LOAD build-fx/assets/img/mario.png.o
LOAD build-fx/assets/img/death.png.o
LOAD build-fx/assets/img/brick.png.o
LOAD build-fx/assets/img/main.png.o
LOAD build-fx/assets/img/mariosmall.png.o
LOAD build-fx/assets/img/gift.png.o
LOAD build-fx/assets/img/tuyau.png.o
LOAD build-fx/assets/img/coin.png.o
LOAD build-fx/assets/img/stone.png.o
LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a
LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
0x0000000000300000 _brom = 0x300000
0x000000000000bd9c _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks))
0x0000000000004a4c _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks))
.pretext 0x0000000000300200 0x8d0
*(.pretext.entry)
@ -172,7 +179,7 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
*(.dtors .dtors.*)
0x0000000000300ad0 _etors = .
.text 0x0000000000300ad0 0x3218
.text 0x0000000000300ad0 0x34f0
0x0000000000300ad0 _gint_exch_tlbh_start = .
*(.gint.exch_tlbh)
.gint.exch_tlbh
@ -180,240 +187,261 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
0x0000000000300ad0 gint_exch_tlbh
0x000000000000004c _gint_exch_tlbh_size = ABSOLUTE ((. - _gint_exch_tlbh_start))
*(.text .text.*)
.text 0x0000000000300b1c 0x34 build-fx/src/tile.o
0x0000000000300b1c tuyau_draw
.text 0x0000000000300b50 0x124 build-fx/src/world.o
0x0000000000300b50 world_get
0x0000000000300b98 display_cell
0x0000000000300bd4 world_draw
.text 0x0000000000300c74 0x8 build-fx/src/main.o
0x0000000000300c74 callback
.text.startup 0x0000000000300c7c 0x90 build-fx/src/main.o
0x0000000000300c7c main
.text 0x0000000000300d0c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
0x0000000000300d0c dupdate
0x0000000000300d24 dupdate_noint
.text 0x0000000000300d30 0xc8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
0x0000000000300d30 dimage
0x0000000000300d84 dsubimage
.text 0x0000000000300df8 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
0x0000000000300df8 dclear
.text 0x0000000000300e44 0x3fc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x0000000000300fec pollevent
0x0000000000301130 waitevent
0x000000000030117c clearevents
0x000000000030119c keydown
0x00000000003011c8 keydown_all
0x0000000000301204 keydown_any
.text 0x0000000000301240 0x124 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
0x000000000030124c iokbd_row
0x0000000000301334 iokbd_scan
.text 0x0000000000301364 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
0x0000000000301364 getkey_opt
0x0000000000301510 getkey
0x000000000030151c getkey_repeat
.text 0x0000000000301558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.text 0x0000000000301558 0x1c4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
0x00000000003016e8 gint_panic
0x00000000003016f8 gint_panic_set
0x0000000000301704 gint_exc_catch
0x0000000000301710 gint_exc_skip
.text 0x000000000030171c 0x17c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
0x00000000003017d0 gint_install
0x0000000000301880 gint_unload
.text 0x0000000000301898 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.text 0x0000000000301898 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.text 0x0000000000301898 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
0x0000000000301898 tlb_addr
0x00000000003018ac tlb_data
0x00000000003018c0 tlb_mapped_memory
0x0000000000301994 utlb_addr
0x00000000003019a4 utlb_data
0x00000000003019b4 utlb_mapped_memory
.text 0x0000000000301a8c 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000000301a8c dsize
.text 0x0000000000301b28 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
0x0000000000301b28 dprint
.text 0x0000000000301b80 0x56c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x0000000000301ea0 timer_setup
0x0000000000301f30 timer_delay
0x0000000000301f90 timer_start
0x0000000000301fc4 timer_reload
0x0000000000301fe4 timer_pause
0x0000000000302018 timer_stop
0x0000000000302074 timer_timeout
0x0000000000302080 timer_address
0x00000000003020bc timer_clear
.text 0x00000000003020ec 0xce4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
0x0000000000302ae8 kprint_opt
0x0000000000302c30 kprint
0x0000000000302d08 kvsprint
0x0000000000302d50 sprintf
0x0000000000302d78 vsprintf
0x0000000000302d98 snprintf
0x0000000000302db8 vsnprintf
.text 0x0000000000302dd0 0xdc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
0x0000000000302dd0 memcpy
0x0000000000302e8a _memmove
0x0000000000302e8e _memcmp
0x0000000000302e92 memset
.text 0x0000000000302eac 0x1d8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x0000000000302f44 t6k11_display
0x0000000000303018 t6k11_contrast
0x0000000000303044 t6k11_backlight
.text 0x0000000000303084 0x150 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x00000000003031c8 clock_freq
.text 0x00000000003031d4 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.text 0x00000000003031d4 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
0x00000000003031d4 bopti_asm_mono
0x00000000003031fa bopti_asm_mono_alpha
.text 0x000000000030322c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.text 0x000000000030322c 0x410 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
0x000000000030322c bopti_grid
0x00000000003033a0 bopti_render
0x00000000003034d0 bopti_render_clip
0x00000000003035e4 bopti_render_noclip
.text 0x000000000030363c 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
0x000000000030363c masks
.text 0x00000000003036d8 0x2c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
0x00000000003036d8 gint_setvbr
.text 0x0000000000303704 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.text 0x0000000000303704 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x0000000000303704 gint_intlevel
0x0000000000303758 gint_inthandler
.text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.text 0x000000000030377c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.text 0x000000000030377c 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
0x000000000030377c __movstr
0x000000000030377c __movmem
0x00000000003037b0 __movmemSI64
0x00000000003037b0 __movstrSI64
0x00000000003037b4 __movstrSI60
0x00000000003037b4 __movmemSI60
0x00000000003037b8 __movmemSI56
0x00000000003037b8 __movstrSI56
0x00000000003037bc __movstrSI52
0x00000000003037bc __movmemSI52
0x00000000003037c0 __movstrSI48
0x00000000003037c0 __movmemSI48
0x00000000003037c4 __movstrSI44
0x00000000003037c4 __movmemSI44
0x00000000003037c8 __movstrSI40
0x00000000003037c8 __movmemSI40
0x00000000003037cc __movstrSI36
0x00000000003037cc __movmemSI36
0x00000000003037d0 __movmemSI32
0x00000000003037d0 __movstrSI32
0x00000000003037d4 __movmemSI28
0x00000000003037d4 __movstrSI28
0x00000000003037d8 __movstrSI24
0x00000000003037d8 __movmemSI24
0x00000000003037dc __movmemSI20
0x00000000003037dc __movstrSI20
0x00000000003037e0 __movstrSI16
0x00000000003037e0 __movmemSI16
0x00000000003037e4 __movmemSI12
0x00000000003037e4 __movstrSI12
0x00000000003037e8 __movmemSI8
0x00000000003037e8 __movstrSI8
0x00000000003037ec __movmemSI4
0x00000000003037ec __movstrSI4
.text 0x00000000003037f4 0x1f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
0x00000000003037f4 __udivdi3
.text 0x00000000003039e4 0x234 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
0x00000000003039e4 __umoddi3
.text 0x0000000000303c18 0x6c /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
0x0000000000303c3a __udivsi3
*fill* 0x0000000000303c84 0x4
.text 0x0000000000303c88 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
0x0000000000303c88 __udiv_qrnnd_16
.text 0x0000000000303ce8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
.text 0x0000000000300b1c 0x40 build-fx/src/tile.o
0x0000000000300b1c draw_tile
.text 0x0000000000300b5c 0x1e4 build-fx/src/world.o
0x0000000000300b5c world_get
0x0000000000300bc0 display_cell
0x0000000000300c68 world_get_ctg
0x0000000000300ca8 world_get_real_x0
0x0000000000300cb6 world_get_real_y0
0x0000000000300cc4 world_draw
.text 0x0000000000300d40 0x1c0 build-fx/src/mario.o
0x0000000000300d40 mario_draw
0x0000000000300d98 test_sol_le_plus_proche
0x0000000000300e08 mario_move
.text 0x0000000000300f00 0x30 build-fx/src/main.o
0x0000000000300f00 callback
.text.startup 0x0000000000300f30 0xb4 build-fx/src/main.o
0x0000000000300f30 main
.text 0x0000000000300fe4 0xdc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
0x0000000000300fe4 memcpy
0x000000000030109e _memmove
0x00000000003010a2 _memcmp
0x00000000003010a6 memset
.text 0x00000000003010c0 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
0x00000000003010c0 dupdate
0x00000000003010d8 dupdate_noint
.text 0x00000000003010e4 0xc8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
0x00000000003010e4 dimage
0x0000000000301138 dsubimage
.text 0x00000000003011ac 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
0x00000000003011ac dclear
.text 0x00000000003011f8 0x3fc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x00000000003013a0 pollevent
0x00000000003014e4 waitevent
0x0000000000301530 clearevents
0x0000000000301550 keydown
0x000000000030157c keydown_all
0x00000000003015b8 keydown_any
.text 0x00000000003015f4 0x124 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
0x0000000000301600 iokbd_row
0x00000000003016e8 iokbd_scan
.text 0x0000000000301718 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
0x0000000000301718 getkey_opt
0x00000000003018c4 getkey
0x00000000003018d0 getkey_repeat
.text 0x000000000030190c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.text 0x000000000030190c 0x1c4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
0x0000000000301a9c gint_panic
0x0000000000301aac gint_panic_set
0x0000000000301ab8 gint_exc_catch
0x0000000000301ac4 gint_exc_skip
.text 0x0000000000301ad0 0x17c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
0x0000000000301b84 gint_install
0x0000000000301c34 gint_unload
.text 0x0000000000301c4c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.text 0x0000000000301c4c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.text 0x0000000000301c4c 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
0x0000000000301c4c tlb_addr
0x0000000000301c60 tlb_data
0x0000000000301c74 tlb_mapped_memory
0x0000000000301d48 utlb_addr
0x0000000000301d58 utlb_data
0x0000000000301d68 utlb_mapped_memory
.text 0x0000000000301e40 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000000301e40 dsize
.text 0x0000000000301edc 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
0x0000000000301edc dprint
.text 0x0000000000301f34 0x56c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x0000000000302254 timer_setup
0x00000000003022e4 timer_delay
0x0000000000302344 timer_start
0x0000000000302378 timer_reload
0x0000000000302398 timer_pause
0x00000000003023cc timer_stop
0x0000000000302428 timer_timeout
0x0000000000302434 timer_address
0x0000000000302470 timer_clear
.text 0x00000000003024a0 0xce4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
0x0000000000302e9c kprint_opt
0x0000000000302fe4 kprint
0x00000000003030bc kvsprint
0x0000000000303104 sprintf
0x000000000030312c vsprintf
0x000000000030314c snprintf
0x000000000030316c vsnprintf
.text 0x0000000000303184 0x1d8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x000000000030321c t6k11_display
0x00000000003032f0 t6k11_contrast
0x000000000030331c t6k11_backlight
.text 0x000000000030335c 0x150 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x00000000003034a0 clock_freq
.text 0x00000000003034ac 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.text 0x00000000003034ac 0x58 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
0x00000000003034ac bopti_asm_mono
0x00000000003034d2 bopti_asm_mono_alpha
.text 0x0000000000303504 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.text 0x0000000000303504 0x410 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
0x0000000000303504 bopti_grid
0x0000000000303678 bopti_render
0x00000000003037a8 bopti_render_clip
0x00000000003038bc bopti_render_noclip
.text 0x0000000000303914 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
0x0000000000303914 masks
.text 0x00000000003039b0 0x2c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
0x00000000003039b0 gint_setvbr
.text 0x00000000003039dc 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.text 0x00000000003039dc 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x00000000003039dc gint_intlevel
0x0000000000303a30 gint_inthandler
.text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.text 0x0000000000303a54 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.text 0x0000000000303a54 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
0x0000000000303a54 __movstr
0x0000000000303a54 __movmem
0x0000000000303a88 __movmemSI64
0x0000000000303a88 __movstrSI64
0x0000000000303a8c __movstrSI60
0x0000000000303a8c __movmemSI60
0x0000000000303a90 __movmemSI56
0x0000000000303a90 __movstrSI56
0x0000000000303a94 __movstrSI52
0x0000000000303a94 __movmemSI52
0x0000000000303a98 __movstrSI48
0x0000000000303a98 __movmemSI48
0x0000000000303a9c __movstrSI44
0x0000000000303a9c __movmemSI44
0x0000000000303aa0 __movstrSI40
0x0000000000303aa0 __movmemSI40
0x0000000000303aa4 __movstrSI36
0x0000000000303aa4 __movmemSI36
0x0000000000303aa8 __movmemSI32
0x0000000000303aa8 __movstrSI32
0x0000000000303aac __movmemSI28
0x0000000000303aac __movstrSI28
0x0000000000303ab0 __movstrSI24
0x0000000000303ab0 __movmemSI24
0x0000000000303ab4 __movmemSI20
0x0000000000303ab4 __movstrSI20
0x0000000000303ab8 __movstrSI16
0x0000000000303ab8 __movmemSI16
0x0000000000303abc __movmemSI12
0x0000000000303abc __movstrSI12
0x0000000000303ac0 __movmemSI8
0x0000000000303ac0 __movstrSI8
0x0000000000303ac4 __movmemSI4
0x0000000000303ac4 __movstrSI4
.text 0x0000000000303acc 0x1f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
0x0000000000303acc __udivdi3
.text 0x0000000000303cbc 0x234 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
0x0000000000303cbc __umoddi3
.text 0x0000000000303ef0 0x6c /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
0x0000000000303f12 __udivsi3
*fill* 0x0000000000303f5c 0x4
.text 0x0000000000303f60 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
0x0000000000303f60 __udiv_qrnnd_16
.text 0x0000000000303fc0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(C P)
.gint.blocks 0x0000000000303cf0 0x120
.gint.blocks 0x0000000000303fc0 0x120
*(.gint.blocks)
.gint.blocks 0x0000000000303cf0 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
0x0000000000303cf0 gint_inth_7305
0x0000000000303d10 gint_inth_7705
.gint.blocks 0x0000000000303d30 0xe0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
0x0000000000303d30 inth_tmu
0x0000000000303db0 inth_etmu2
0x0000000000303dd0 inth_etmu_help
0x0000000000303df0 inth_etmux
.gint.blocks 0x0000000000303fc0 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
0x0000000000303fc0 gint_inth_7305
0x0000000000303fe0 gint_inth_7705
.gint.blocks 0x0000000000304000 0xe0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
0x0000000000304000 inth_tmu
0x0000000000304080 inth_etmu2
0x00000000003040a0 inth_etmu_help
0x00000000003040c0 inth_etmux
.gint.drivers 0x0000000000303e10 0x90
0x0000000000303e10 _bdrv = .
.gint.drivers 0x00000000003040e0 0x90
0x00000000003040e0 _bdrv = .
*(.gint.drivers.0)
*(.gint.drivers.1)
.gint.drivers.1
0x0000000000303e10 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x0000000000303e10 drv_cpg
0x00000000003040e0 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x00000000003040e0 drv_cpg
*(.gint.drivers.2)
.gint.drivers.2
0x0000000000303e34 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x0000000000303e34 drv_tmu
0x0000000000304104 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x0000000000304104 drv_tmu
*(.gint.drivers.3)
*(.gint.drivers.4)
.gint.drivers.4
0x0000000000303e58 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x0000000000303e58 drv_keysc
0x0000000000304128 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x0000000000304128 drv_keysc
*(.gint.drivers.5)
.gint.drivers.5
0x0000000000303e7c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x0000000000303e7c drv_t6k11
0x000000000030414c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x000000000030414c drv_t6k11
*(.gint.drivers.6)
0x0000000000303ea0 _edrv = .
0x0000000000304170 _edrv = .
.rodata 0x0000000000303ea0 0x87d4
.rodata 0x0000000000304170 0x11ac
*(.rodata.4)
*(.rodata .rodata.*)
.rodata 0x0000000000303ea0 0x7800 build-fx/src/world.o
.rodata 0x000000000030b6a0 0x64 build-fx/assets/img/mario.png.o
0x000000000030b6a0 img_mario
0x000000000030b704 img_mario_end
.rodata 0x000000000030b704 0x404 build-fx/assets/img/main.png.o
0x000000000030b704 img_main
0x000000000030bb08 img_main_end
.rodata 0x000000000030bb08 0x44 build-fx/assets/img/tuyau.png.o
0x000000000030bb08 img_tuyau
0x000000000030bb4c img_tuyau_end
.rodata 0x000000000030bb4c 0x404 build-fx/assets/img/level.png.o
0x000000000030bb4c img_level
0x000000000030bf50 img_level_end
.rodata 0x000000000030bf50 0x84 build-fx/assets/img/sprites.png.o
0x000000000030bf50 img_sprites
0x000000000030bfd4 img_sprites_end
.rodata 0x000000000030bfd4 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.rodata 0x0000000000304170 0x404 build-fx/assets/img/level.png.o
0x0000000000304170 img_level
0x0000000000304574 img_level_end
.rodata 0x0000000000304574 0x64 build-fx/assets/img/mario.png.o
0x0000000000304574 img_mario
0x00000000003045d8 img_mario_end
.rodata 0x00000000003045d8 0x24 build-fx/assets/img/death.png.o
0x00000000003045d8 img_death
0x00000000003045fc img_death_end
.rodata 0x00000000003045fc 0x4c build-fx/assets/img/brick.png.o
0x00000000003045fc img_brick
0x0000000000304648 img_brick_end
.rodata 0x0000000000304648 0x404 build-fx/assets/img/main.png.o
0x0000000000304648 img_main
0x0000000000304a4c img_main_end
.rodata 0x0000000000304a4c 0xdc build-fx/assets/img/mariosmall.png.o
0x0000000000304a4c img_mariosmall
0x0000000000304b28 img_mariosmall_end
.rodata 0x0000000000304b28 0x28 build-fx/assets/img/gift.png.o
0x0000000000304b28 img_gift
0x0000000000304b50 img_gift_end
.rodata 0x0000000000304b50 0xb8 build-fx/assets/img/tuyau.png.o
0x0000000000304b50 img_tuyau
0x0000000000304c08 img_tuyau_end
.rodata 0x0000000000304c08 0x28 build-fx/assets/img/coin.png.o
0x0000000000304c08 img_coin
0x0000000000304c30 img_coin_end
.rodata 0x0000000000304c30 0x4c build-fx/assets/img/stone.png.o
0x0000000000304c30 img_stone
0x0000000000304c7c img_stone_end
.rodata 0x0000000000304c7c 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.rodata.str1.4
0x000000000030bfdc 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
*fill* 0x000000000030bfe2 0x2
0x0000000000304c84 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
*fill* 0x0000000000304c8a 0x2
.rodata.str1.4
0x000000000030bfe4 0x11a /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
0x0000000000304c8c 0x11a /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
0x11e (size before relaxing)
*fill* 0x000000000030c0fe 0x2
.rodata 0x000000000030c100 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
*fill* 0x0000000000304da6 0x2
.rodata 0x0000000000304da8 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.rodata.str1.4
0x000000000030c118 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x0000000000304dc0 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.rodata.str1.4
0x000000000030c11c 0x31 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
*fill* 0x000000000030c14d 0x3
0x0000000000304dc4 0x31 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
*fill* 0x0000000000304df5 0x3
.rodata.str1.4
0x000000000030c150 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
*fill* 0x000000000030c156 0x2
0x0000000000304df8 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
*fill* 0x0000000000304dfe 0x2
.rodata.str1.4
0x000000000030c158 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.rodata 0x000000000030c15c 0x10 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.rodata 0x000000000030c16c 0x408 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o)
0x000000000030c16c gint_font5x7
0x000000000030c574 gint_font5x7_end
.rodata 0x000000000030c574 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
0x000000000030c574 __clz_tab
0x0000000000304e00 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.rodata 0x0000000000304e04 0x10 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.rodata 0x0000000000304e14 0x408 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o)
0x0000000000304e14 gint_font5x7
0x000000000030521c gint_font5x7_end
.rodata 0x000000000030521c 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
0x000000000030521c __clz_tab
.rela.dyn 0x000000000030c674 0x0
.rela.dyn 0x000000000030531c 0x0
.rela.pretext.entry
0x000000000030c674 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.rela.text 0x000000000030c674 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
0x000000000030531c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.rela.text 0x000000000030531c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
0x0000000008100000 . = ORIGIN (ram)
.bss 0x0000000008100000 0x550
@ -421,120 +449,131 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
*(.bss COMMON)
.bss 0x0000000008100000 0x0 build-fx/src/tile.o
.bss 0x0000000008100000 0x0 build-fx/src/world.o
.bss 0x0000000008100000 0x0 build-fx/src/main.o
.bss 0x0000000008100000 0x400 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.bss 0x0000000008100400 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.bss 0x0000000008100400 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.bss 0x0000000008100400 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.bss 0x0000000008100424 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.bss 0x0000000008100424 0xc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.bss 0x0000000008100430 0x114 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.bss 0x0000000008100544 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
.bss 0x0000000008100000 0x8 build-fx/src/mario.o
0x0000000008100000 global_quit
0x0000000008100004 numero_frame
.bss 0x0000000008100008 0x0 build-fx/src/main.o
.bss 0x0000000008100008 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.bss 0x0000000008100008 0x400 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.bss 0x0000000008100408 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.bss 0x0000000008100408 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.bss 0x0000000008100408 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.bss 0x000000000810042c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.bss 0x000000000810042c 0xc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
.bss 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.bss 0x0000000008100438 0x114 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.bss 0x000000000810054c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(B R)
0x0000000008100550 . = ALIGN (0x10)
*fill* 0x0000000008100544 0xc
*fill* 0x000000000810054c 0x4
0x0000000000000550 _sbss = SIZEOF (.bss)
.data 0x0000000008100550 0x80 load address 0x000000000030c674
0x000000000030c674 _ldata = LOADADDR (.data)
.data 0x0000000008100550 0x1c0 load address 0x000000000030531c
0x000000000030531c _ldata = LOADADDR (.data)
0x0000000008100550 _rdata = .
*(.data .data.*)
.data 0x0000000008100550 0x0 build-fx/src/tile.o
.data 0x0000000008100550 0x0 build-fx/src/world.o
.data 0x0000000008100550 0x0 build-fx/src/main.o
.data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.data 0x0000000008100550 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.data 0x0000000008100550 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
.data 0x0000000008100558 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.data 0x0000000008100558 0x68 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
0x0000000008100558 kprint_formatters
.data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.data 0x00000000081005c0 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
.data 0x00000000081005c0 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x00000000081005c0 topti_font
0x00000000081005c4 gint_default_font
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.data 0x00000000081005c8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
.data 0x0000000008100550 0x50 build-fx/src/tile.o
0x0000000008100550 coin
0x0000000008100560 gift
0x0000000008100570 earth
0x0000000008100580 brick
0x0000000008100590 tuyau
.data 0x00000000081005a0 0xc0 build-fx/src/world.o
.data 0x0000000008100660 0x30 build-fx/src/mario.o
0x0000000008100660 mario
0x0000000008100680 mario_small
.data 0x0000000008100690 0x0 build-fx/src/main.o
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dimage.c.o)
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.data 0x0000000008100690 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.data 0x0000000008100690 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.s.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dprint.c.o)
.data 0x0000000008100698 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.data 0x0000000008100698 0x68 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(stdio.c.o)
0x0000000008100698 kprint_formatters
.data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.data 0x0000000008100700 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti-asm.s.o)
.data 0x0000000008100700 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000008100700 topti_font
0x0000000008100704 gint_default_font
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(bopti.c.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(masks.c.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_umoddi3.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.data 0x0000000008100708 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(D)
0x00000000081005d0 . = ALIGN (0x10)
*fill* 0x00000000081005c8 0x8
0x0000000008100710 . = ALIGN (0x10)
*fill* 0x0000000008100708 0x8
.data.4 0x00000000081005d0 0x0 load address 0x000000000030c6f4
.data.4 0x0000000008100710 0x0 load address 0x00000000003054dc
*(.data.4)
0x00000000081005d0 . = ALIGN (0x10)
0x0000000000000080 _sdata = (SIZEOF (.data) + SIZEOF (.data.4))
0x0000000008100710 . = ALIGN (0x10)
0x00000000000001c0 _sdata = (SIZEOF (.data) + SIZEOF (.data.4))
0x00000000e5200000 . = ORIGIN (ilram)
.ilram 0x00000000e5200000 0x0 load address 0x000000000030c6f4
0x000000000030c6f4 _lilram = LOADADDR (.ilram)
.ilram 0x00000000e5200000 0x0 load address 0x00000000003054dc
0x00000000003054dc _lilram = LOADADDR (.ilram)
0x00000000e5200000 _rilram = .
*(.ilram)
0x00000000e5200000 . = ALIGN (0x10)
0x00000000e5007000 . = ORIGIN (xram)
.xram 0x00000000e5007000 0x0 load address 0x000000000030c6f4
0x000000000030c6f4 _lxram = LOADADDR (.xram)
.xram 0x00000000e5007000 0x0 load address 0x00000000003054dc
0x00000000003054dc _lxram = LOADADDR (.xram)
0x00000000e5007000 _rxram = .
*(.xram)
0x00000000e5007000 . = ALIGN (0x10)
0x00000000e5017000 . = ORIGIN (yram)
.yram 0x00000000e5017000 0x0 load address 0x000000000030c6f4
0x000000000030c6f4 _lyram = LOADADDR (.yram)
.yram 0x00000000e5017000 0x0 load address 0x00000000003054dc
0x00000000003054dc _lyram = LOADADDR (.yram)
0x00000000e5017000 _ryram = .
*(.yram)
0x00000000e5017000 . = ALIGN (0x10)
@ -544,8 +583,8 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
0x000000008800df00 _gint_vbr = 0x8800df00
0x000000008800f400 . = ORIGIN (rram)
.gint.data 0x000000008800f400 0x140 load address 0x000000000030c6f4
0x000000000030c6f4 _lgdata = LOADADDR (.gint.data)
.gint.data 0x000000008800f400 0x140 load address 0x00000000003054dc
0x00000000003054dc _lgdata = LOADADDR (.gint.data)
0x000000008800f400 _rgdata = .
*(.gint.data .gint.data.*)
.gint.data 0x000000008800f400 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
@ -566,7 +605,7 @@ LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
0x000000008800f540 . = ALIGN (0x10)
0x0000000000000140 _sgdata = SIZEOF (.gint.data)
.gint.bss 0x000000008800f540 0x290 load address 0x000000000030c834
.gint.bss 0x000000008800f540 0x290 load address 0x000000000030561c
*(.gint.bss .gint.bss.*)
.gint.bss 0x000000008800f540 0x180 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.gint.bss 0x000000008800f6c0 0x1c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)

Binary file not shown.

View File

@ -1,3 +1,5 @@
build-fx/src/main.o: src/main.c src/world.h
build-fx/src/main.o: src/main.c src/world.h src/mario.h
src/world.h:
src/mario.h:

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -5,7 +5,7 @@
# Project name, should be at most 8 bytes long.
NAME = MARIOBRS
# Internal name, should be '@' followed by at most 7 uppercase letters.
INTERNAL = MARIOBR
INTERNAL = @MARIOBR
# fx-9860G icon location
ICON_FX = assets-fx/icon-fx.png

View File

@ -3,40 +3,40 @@
#include <gint/timer.h>
#include "world.h"
#include "mario.h"
int callback(volatile void *arg)
{
volatile int *has_ticked = arg;
*has_ticked = 1;
numero_frame=(numero_frame+1)%6;
return 0;
}
int main(void)
{
volatile int has_ticked = 1;
int game_running = 1;
timer_setup(0, timer_delay(0, 16667), timer_Po_4, callback, &has_ticked);
timer_setup(0, timer_delay(0, 10000), timer_Po_4, callback, &has_ticked);
timer_start(0);
while(game_running)
while(global_quit==0)
{
has_ticked=0;
dclear(C_WHITE);
world_draw(0,0);
world_draw(mario.x,mario.y);
//ennemies_draw();
//mario_draw();
mario_draw();
//ingame_draw();
dupdate();
//keyboard_reload();
//ennemies_move();
mario_move();
if(keydown(KEY_EXIT)) game_running = 0;
if(keydown(KEY_EXIT)) global_quit = 1;
}
timer_stop(0);

View File

@ -2,8 +2,27 @@
#include <gint/display.h>
void tuyau_draw(int state, int x, int y)
extern image_t img_tuyau;
tileset_t tuyau={&img_tuyau, 8, 8, 1};
extern image_t img_brick;
tileset_t brick={&img_brick, 8, 8, 1};
extern image_t img_stone;
tileset_t earth={&img_stone, 8, 8, 1};
extern image_t img_gift;
tileset_t gift={&img_gift, 8, 8, 1};
extern image_t img_coin;
tileset_t coin={&img_coin, 8, 8, 1};
void draw_tile(int sx, int sy, tileset_t const * const set, int x, int y)
{
extern image_t img_tuyau;
dsubimage(x,y, &img_tuyau, 8*state, 0, 8*(state+1), 8,0);
dsubimage(sx, 63-sy-set->height,
set->sheet,
x*(set->width+set->padding), y*(set->height+set->padding),
set->width,set->height,
DIMAGE_NONE);
}

View File

@ -1,17 +1,22 @@
#ifndef TILE_H
#define TILE_H
#define TUYAU_H_TOP_LE 0
#define TUYAU_H_TOP_RI 1
#define TUYAU_H_MID_LE 2
#define TUYAU_H_MID_RI 3
#define TUYAU_L_TOP_DO 4
#define TUYAU_L_TOP_UP 5
#define TUYAU_L_MID_UP 6
#define TUYAU_L_MID_DO 7
#include <gint/display.h>
void tuyau_draw(int state, int x, int y);
typedef struct
{
image_t * sheet;
int width;
int height;
int padding;
} tileset_t;
extern tileset_t tuyau;
extern tileset_t brick;
extern tileset_t earth;
extern tileset_t gift;
extern tileset_t coin;
void draw_tile(int sx, int sy, tileset_t const * const set, int x, int y);
#endif

View File

@ -1,41 +1,142 @@
#include "world.h"
#include "tile.h"
#include <gint/display.h>
#define min(x,y) (x>y?y:x)
#define max(x,y) (x<y?y:x)
static world global = {0};
static world_t tuyau_sample[]=
{
{EARTH,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0},
{EARTH,1,0,0}, {TUYAU, 0, 3, 0}, {TUYAU, 0, 3, 0}, {TUYAU, 0, 2, 0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0},
{EARTH,1,0,0}, {TUYAU, 1, 3, 0}, {TUYAU, 1, 3, 0}, {TUYAU, 1, 2, 0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0},
{EARTH,1,1,0}, {EARTH,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {BRICK,0,0,0}, {0,0,0,0}, {0,0,0,0},
{EARTH,1,1,0}, {EARTH,1,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {GIFT,0,0,0}, {COIN,0,0,0}, {COIN,0,0,0},
{EARTH,2,1,0}, {EARTH,2,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {BRICK,0,0,0}, {0,0,0,0}, {0,0,0,0}
};
static world_t * current = tuyau_sample;
static int current_x=6;
static int current_y=8;
world_t world_get(int x, int y)
{
if (0<=x && x<=W_SIZE_X && 0<=y && y<=W_SIZE_Y)
return global[x][y];
x/=8;
y/=8;
if (0<=x && x<current_x && 0<=y && y<current_y)
return current[x*current_y+y];
else
{
world_t cell = {W_DEATH,0,0};
world_t cell={DEATH,0,0,0};
return cell;
}
}
void display_cell(int cx, int cy, int sx, int sy)
{
world_t cell=world_get(cx,cy);
if (cell.type==W_TUYAU)
tuyau_draw(cell.state, sx, sy);
if (cell.type==DEATH)
{
extern image_t img_death;
dimage(sx, sy, &img_death);
return;
}
if (cell.type==TUYAU)
draw_tile(sx, sy, &tuyau, cell.p1, cell.p2);
if (cell.type==EARTH)
draw_tile(sx, sy, &earth, cell.p1, cell.p2);
if (cell.type==BRICK)
draw_tile(sx, sy, &brick, 0, cell.p1);
if (cell.type==GIFT)
draw_tile(sx, sy, &gift, cell.p1, 0);
if (cell.type==COIN)
draw_tile(sx, sy, &coin, cell.p1, 0);
}
int world_get_ctg(int x, int y)
{
world_t c=world_get(x,y);
if (c.type==DEATH)
{
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 world_get_leftx(int x)
{
int r = max(x-63,0)%8;// if (r>0) r-=8;
return r;
}
static world_get_bottomy(int x)
{
int r = max(x-31,0)%8;// if (r>0) r-=8;
return r;
}
*/
int world_get_real_x0(int x) //mario delta en 0,0
{return max(x-63,0);}
int world_get_real_y0(int x) //mario delta en 0,0
{return max(x-31,0);}
/*
static int get_cleft(int c)
{return max(0, max(c-63,0)/8);}
static int get_ctop(int c)
{return max(0, max(c-31,0)/8);;}
*/
void world_draw(int x, int y)
{
int c_top, c_left;
int s_top, s_left;
int s_left = world_get_real_x0(x)%8-8;
int s_top = world_get_real_y0(y)%8-8;
c_left = max(0, x/8-8);
c_top = max(0, y/8-4);
s_left = (x+1)%8 - 8;
s_top = (y+1)%8 - 8;
for (int t=s_left, cx=c_left; t<128; t+=8, cx++)
for (int u=s_top, cy=c_top; u<64; u+=8, cy++)
display_cell(cx,cy, t,u);
int tx, ty, rx, ry;
tx=s_left;
rx=world_get_real_x0(x)-8;
while (tx<128)
{
ry=world_get_real_y0(y)-8;
ty=s_top;
while (ty<64)
{
display_cell(rx,ry, tx, ty);
ty+=8;
ry+=8;
}
tx+=8;
rx+=8;
}
}

View File

@ -6,32 +6,40 @@
#define W_CELL_SIZEPX 8
#define W_SIZE_X 160
#define W_SIZE_Y 16
// p1 p2 p3
#define DEATH -1
#define EMPTY 0 // _, _, _
#define EARTH 1 // X, Y, _ (XY tileset)
#define BRICK 2
#define W_DEATH -1
#define W_EMPTY 0
#define W_FLOOR 1
#define W_EARTH 2
#define W_STONE 3
#define W_BRICK 4
#define W_BOX 5
#define W_PLATEFORM 6
#define W_TUYAU 7
#define PLATEFORM 4
#define TUYAU 5 // X, Y, _ (XY tileset)
#define GIFT 6 // s, t, n (state, type, number) [if number=0 state=1]
#define COIN 7 // s, _, _ (state)
typedef struct
{
char type;
int state; // numéro de tile
int state2; // visible, invisible, téléporteur/en train de tirer (canon par exemple)
char p1; // numéro de tile
char p2; // visible, invisible, téléporteur/en train de tirer (canon par exemple)
char p3;
} world_t;
typedef world_t world[W_SIZE_X][W_SIZE_Y];
world_t world_get(int x, int y);
void display_cell(int cx, int cy, int sx, int sy);
void world_set(world const * const w);
void world_set(world_t * w);
void world_draw(int x, int y);
int world_get_real_x0(int x);
int world_get_real_y0(int y);
#define CTG_SOIL 1
#define CTG_EMPTY 2
#define CTG_DEATH 3
int world_get_ctg(int x, int y);
#endif