From 592304922cc8a5455fc75ab44092c335a171b192 Mon Sep 17 00:00:00 2001 From: KikooDX Date: Tue, 11 Feb 2020 13:55:57 +0100 Subject: [PATCH] Level loading completed --- build-cg/map | 449 ++++++++++++++++++++------------------- build-cg/platform.bin | Bin 19588 -> 19600 bytes build-cg/platform.elf | Bin 0 -> 29656 bytes build-cg/src/collide.c.o | Bin 792 -> 788 bytes build-cg/src/draw.c.o | Bin 1024 -> 1024 bytes build-cg/src/levels.c.o | Bin 584 -> 976 bytes build-cg/src/main.c.o | Bin 1380 -> 1376 bytes levels.lua | 29 +-- platform.g3a | Bin 48264 -> 48276 bytes src/collide.c | 19 +- src/collide.h | 2 +- src/draw.c | 5 +- src/levels.c | 5 +- src/levels.h | 2 +- src/main.c | 16 +- transfer.sh | 1 - 16 files changed, 268 insertions(+), 260 deletions(-) create mode 100755 build-cg/platform.elf diff --git a/build-cg/map b/build-cg/map index ffc35ae..507d1ab 100644 --- a/build-cg/map +++ b/build-cg/map @@ -1,5 +1,7 @@ Archive member included to satisfy reference by file (symbol) +/home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) + build-cg/src/levels.c.o (_memcpy) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) (_start) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) @@ -50,8 +52,6 @@ Archive member included to satisfy reference by file (symbol) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) (_strlen) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dprint.c.o) (_vsnprintf) -/home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) - /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) (_memcpy) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) (_gint_inth_7305) /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti-asm.s.o) @@ -83,6 +83,7 @@ Discarded input sections .comment 0x0000000000000000 0x12 build-cg/src/draw.c.o .comment 0x0000000000000000 0x12 build-cg/src/levels.c.o .comment 0x0000000000000000 0x12 build-cg/src/main.c.o + .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(mmu.c.o) @@ -104,7 +105,6 @@ Discarded input sections .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(string.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) - .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(getkey.c.o) .comment 0x0000000000000000 0x12 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) @@ -160,9 +160,9 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a 0x0000000000300000 _brom = 0x300000 - 0x0000000000004a34 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) + 0x0000000000004b10 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) -.text 0x0000000000300000 0x38f0 +.text 0x0000000000300000 0x3910 *(.pretext.entry) .pretext.entry 0x0000000000300000 0x1a4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) @@ -197,243 +197,246 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a 0x0000000000000058 _gint_exch_tlbh_size = ABSOLUTE ((. - _gint_exch_tlbh_start)) *(.text .text.*) .text 0x000000000030067c 0xd2 build-cg/src/collide.c.o - 0x000000000030067c _collide_with + 0x000000000030067c _collide *fill* 0x000000000030074e 0x2 .text 0x0000000000300750 0xd0 build-cg/src/draw.c.o 0x0000000000300750 _draw_player 0x00000000003007a4 _draw_level - .text 0x0000000000300820 0x4 build-cg/src/levels.c.o - 0x0000000000300820 _get_level - .text 0x0000000000300824 0x34 build-cg/src/main.c.o - 0x0000000000300824 _jump_test - .text.startup 0x0000000000300858 0xec build-cg/src/main.c.o - 0x0000000000300858 _main - .text 0x0000000000300944 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) - .text 0x0000000000300944 0x104 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) - 0x00000000003009b0 _gint_install - 0x0000000000300a30 _gint_unload - .text 0x0000000000300a48 0xf8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(mmu.c.o) - 0x0000000000300a48 _utlb_addr - 0x0000000000300a58 _utlb_data - 0x0000000000300a68 _utlb_mapped_memory - .text 0x0000000000300b40 0x2dc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.c.o) - 0x0000000000300de8 _gint_panic - 0x0000000000300df8 _gint_panic_set - 0x0000000000300e04 _gint_exc_catch - 0x0000000000300e10 _gint_exc_skip - .text 0x0000000000300e1c 0x5c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(gint.c.o) - 0x0000000000300e1c _gint_intlevel - 0x0000000000300e54 _gint_inthandler - .text 0x0000000000300e78 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.s.o) - .text 0x0000000000300e78 0x2c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(vbr.s.o) - 0x0000000000300e78 _gint_setvbr - .text 0x0000000000300ea4 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(hardware.c.o) - .text 0x0000000000300ea4 0x9c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) - 0x0000000000300ea4 _dsize - .text 0x0000000000300f40 0x58 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dprint.c.o) - 0x0000000000300f40 _dprint - .text 0x0000000000300f98 0x40 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dimage.c.o) - 0x0000000000300f98 _dimage - 0x0000000000300fc0 _dsubimage - .text 0x0000000000300fd8 0x1c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dclear.c.o) - 0x0000000000300fd8 _dclear - .text 0x0000000000300ff4 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dvram.c.o) - 0x0000000000300ff4 _dvram - .text 0x0000000000300ff8 0xc0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(drect.c.o) - 0x0000000000300ff8 _drect - .text 0x00000000003010b8 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) - .text 0x00000000003010b8 0x30 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dupdate.c.o) - 0x00000000003010b8 _dupdate - 0x00000000003010d0 _dupdate_noint - .text 0x00000000003010e8 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti-asm.s.o) - .text 0x00000000003010e8 0x1e4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti.c.o) - 0x00000000003010e8 _bopti_render - 0x00000000003011d8 _bopti_render_clip - 0x00000000003012a0 _bopti_render_noclip - .text 0x00000000003012cc 0x3ac /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) - 0x0000000000301424 _pollevent - 0x0000000000301568 _waitevent - 0x00000000003015b4 _clearevents - 0x00000000003015d4 _keydown - 0x0000000000301600 _keydown_all - 0x000000000030163c _keydown_any - .text 0x0000000000301678 0x4cc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) - 0x0000000000301900 _timer_setup - 0x0000000000301990 _timer_delay - 0x00000000003019f0 _timer_start - 0x0000000000301a24 _timer_reload - 0x0000000000301a44 _timer_pause - 0x0000000000301a78 _timer_stop - 0x0000000000301ad4 _timer_timeout - 0x0000000000301ae0 _timer_address - 0x0000000000301b14 _timer_clear - .text 0x0000000000301b44 0x4c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memset.c.o) - 0x0000000000301b44 _dma_memset - .text 0x0000000000301b90 0x2d4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) - 0x0000000000301be0 _r61524_win_get - 0x0000000000301c98 _r61524_win_set - 0x0000000000301d58 _r61524_display - .text 0x0000000000301e64 0x7c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(string.c.o) - 0x0000000000301e64 _strlen - 0x0000000000301e74 _strncpy - 0x0000000000301e8c _strcat - 0x0000000000301ed0 _strcmp - .text 0x0000000000301ee0 0xce4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) - 0x00000000003028dc _kprint_opt - 0x0000000000302a24 _kprint - 0x0000000000302afc _kvsprint - 0x0000000000302b44 _sprintf - 0x0000000000302b6c _vsprintf - 0x0000000000302b8c _snprintf - 0x0000000000302bac _vsnprintf - .text 0x0000000000302bc4 0xdc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) - 0x0000000000302bc4 _memcpy - 0x0000000000302c7e __memmove - 0x0000000000302c82 __memcmp - 0x0000000000302c86 _memset - .text 0x0000000000302ca0 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) - .text 0x0000000000302ca0 0x100 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti-asm.s.o) - 0x0000000000302ca0 _bopti_r5g6b5 - 0x0000000000302cf0 _bopti_r5g6b5a - 0x0000000000302d20 _bopti_p8 - 0x0000000000302d50 _bopti_p4 - .text 0x0000000000302da0 0xc8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) - 0x0000000000302e5c _clock_freq - .text 0x0000000000302e68 0x1d0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(getkey.c.o) - 0x0000000000302e68 _getkey_opt - 0x0000000000302ff0 _getkey - 0x0000000000302ffc _getkey_repeat - .text 0x0000000000303038 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) - .text 0x0000000000303038 0x3f8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) - 0x000000000030330c _dma_transfer - 0x000000000030334c _dma_transfer_wait - 0x00000000003033c4 _dma_transfer_noint - .text 0x0000000000303430 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) - .text 0x0000000000303430 0x78 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_movmem.o) - 0x0000000000303430 ___movstr - 0x0000000000303430 ___movmem - 0x0000000000303464 ___movmemSI64 - 0x0000000000303464 ___movstrSI64 - 0x0000000000303468 ___movstrSI60 - 0x0000000000303468 ___movmemSI60 - 0x000000000030346c ___movmemSI56 - 0x000000000030346c ___movstrSI56 - 0x0000000000303470 ___movstrSI52 - 0x0000000000303470 ___movmemSI52 - 0x0000000000303474 ___movstrSI48 - 0x0000000000303474 ___movmemSI48 - 0x0000000000303478 ___movstrSI44 - 0x0000000000303478 ___movmemSI44 - 0x000000000030347c ___movstrSI40 - 0x000000000030347c ___movmemSI40 - 0x0000000000303480 ___movstrSI36 - 0x0000000000303480 ___movmemSI36 - 0x0000000000303484 ___movmemSI32 - 0x0000000000303484 ___movstrSI32 - 0x0000000000303488 ___movmemSI28 - 0x0000000000303488 ___movstrSI28 - 0x000000000030348c ___movstrSI24 - 0x000000000030348c ___movmemSI24 - 0x0000000000303490 ___movmemSI20 - 0x0000000000303490 ___movstrSI20 - 0x0000000000303494 ___movstrSI16 - 0x0000000000303494 ___movmemSI16 - 0x0000000000303498 ___movmemSI12 - 0x0000000000303498 ___movstrSI12 - 0x000000000030349c ___movmemSI8 - 0x000000000030349c ___movstrSI8 - 0x00000000003034a0 ___movmemSI4 - 0x00000000003034a0 ___movstrSI4 - .text 0x00000000003034a8 0x1e0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_udivdi3.o) - 0x00000000003034a8 ___udivdi3 - .text 0x0000000000303688 0x208 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_umoddi3.o) - 0x0000000000303688 ___umoddi3 - .text 0x0000000000303890 0x60 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) - 0x0000000000303890 ___udiv_qrnnd_16 - .text 0x00000000003038f0 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_clz.o) + .text 0x0000000000300820 0x20 build-cg/src/levels.c.o + 0x0000000000300820 _set_level + .text 0x0000000000300840 0x34 build-cg/src/main.c.o + 0x0000000000300840 _jump_test + .text.startup 0x0000000000300874 0xe8 build-cg/src/main.c.o + 0x0000000000300874 _main + .text 0x000000000030095c 0xdc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) + 0x000000000030095c _memcpy + 0x0000000000300a16 __memmove + 0x0000000000300a1a __memcmp + 0x0000000000300a1e _memset + .text 0x0000000000300a38 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) + .text 0x0000000000300a38 0x104 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) + 0x0000000000300aa4 _gint_install + 0x0000000000300b24 _gint_unload + .text 0x0000000000300b3c 0xf8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(mmu.c.o) + 0x0000000000300b3c _utlb_addr + 0x0000000000300b4c _utlb_data + 0x0000000000300b5c _utlb_mapped_memory + .text 0x0000000000300c34 0x2dc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.c.o) + 0x0000000000300edc _gint_panic + 0x0000000000300eec _gint_panic_set + 0x0000000000300ef8 _gint_exc_catch + 0x0000000000300f04 _gint_exc_skip + .text 0x0000000000300f10 0x5c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(gint.c.o) + 0x0000000000300f10 _gint_intlevel + 0x0000000000300f48 _gint_inthandler + .text 0x0000000000300f6c 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.s.o) + .text 0x0000000000300f6c 0x2c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(vbr.s.o) + 0x0000000000300f6c _gint_setvbr + .text 0x0000000000300f98 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(hardware.c.o) + .text 0x0000000000300f98 0x9c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) + 0x0000000000300f98 _dsize + .text 0x0000000000301034 0x58 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dprint.c.o) + 0x0000000000301034 _dprint + .text 0x000000000030108c 0x40 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dimage.c.o) + 0x000000000030108c _dimage + 0x00000000003010b4 _dsubimage + .text 0x00000000003010cc 0x1c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dclear.c.o) + 0x00000000003010cc _dclear + .text 0x00000000003010e8 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dvram.c.o) + 0x00000000003010e8 _dvram + .text 0x00000000003010ec 0xc0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(drect.c.o) + 0x00000000003010ec _drect + .text 0x00000000003011ac 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) + .text 0x00000000003011ac 0x30 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dupdate.c.o) + 0x00000000003011ac _dupdate + 0x00000000003011c4 _dupdate_noint + .text 0x00000000003011dc 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti-asm.s.o) + .text 0x00000000003011dc 0x1e4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti.c.o) + 0x00000000003011dc _bopti_render + 0x00000000003012cc _bopti_render_clip + 0x0000000000301394 _bopti_render_noclip + .text 0x00000000003013c0 0x3ac /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) + 0x0000000000301518 _pollevent + 0x000000000030165c _waitevent + 0x00000000003016a8 _clearevents + 0x00000000003016c8 _keydown + 0x00000000003016f4 _keydown_all + 0x0000000000301730 _keydown_any + .text 0x000000000030176c 0x4cc /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) + 0x00000000003019f4 _timer_setup + 0x0000000000301a84 _timer_delay + 0x0000000000301ae4 _timer_start + 0x0000000000301b18 _timer_reload + 0x0000000000301b38 _timer_pause + 0x0000000000301b6c _timer_stop + 0x0000000000301bc8 _timer_timeout + 0x0000000000301bd4 _timer_address + 0x0000000000301c08 _timer_clear + .text 0x0000000000301c38 0x4c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memset.c.o) + 0x0000000000301c38 _dma_memset + .text 0x0000000000301c84 0x2d4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) + 0x0000000000301cd4 _r61524_win_get + 0x0000000000301d8c _r61524_win_set + 0x0000000000301e4c _r61524_display + .text 0x0000000000301f58 0x7c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(string.c.o) + 0x0000000000301f58 _strlen + 0x0000000000301f68 _strncpy + 0x0000000000301f80 _strcat + 0x0000000000301fc4 _strcmp + .text 0x0000000000301fd4 0xce4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) + 0x00000000003029d0 _kprint_opt + 0x0000000000302b18 _kprint + 0x0000000000302bf0 _kvsprint + 0x0000000000302c38 _sprintf + 0x0000000000302c60 _vsprintf + 0x0000000000302c80 _snprintf + 0x0000000000302ca0 _vsnprintf + .text 0x0000000000302cb8 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) + *fill* 0x0000000000302cb8 0x8 + .text 0x0000000000302cc0 0x100 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti-asm.s.o) + 0x0000000000302cc0 _bopti_r5g6b5 + 0x0000000000302d10 _bopti_r5g6b5a + 0x0000000000302d40 _bopti_p8 + 0x0000000000302d70 _bopti_p4 + .text 0x0000000000302dc0 0xc8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) + 0x0000000000302e7c _clock_freq + .text 0x0000000000302e88 0x1d0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(getkey.c.o) + 0x0000000000302e88 _getkey_opt + 0x0000000000303010 _getkey + 0x000000000030301c _getkey_repeat + .text 0x0000000000303058 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) + .text 0x0000000000303058 0x3f8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) + 0x000000000030332c _dma_transfer + 0x000000000030336c _dma_transfer_wait + 0x00000000003033e4 _dma_transfer_noint + .text 0x0000000000303450 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) + .text 0x0000000000303450 0x78 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_movmem.o) + 0x0000000000303450 ___movstr + 0x0000000000303450 ___movmem + 0x0000000000303484 ___movmemSI64 + 0x0000000000303484 ___movstrSI64 + 0x0000000000303488 ___movstrSI60 + 0x0000000000303488 ___movmemSI60 + 0x000000000030348c ___movmemSI56 + 0x000000000030348c ___movstrSI56 + 0x0000000000303490 ___movstrSI52 + 0x0000000000303490 ___movmemSI52 + 0x0000000000303494 ___movstrSI48 + 0x0000000000303494 ___movmemSI48 + 0x0000000000303498 ___movstrSI44 + 0x0000000000303498 ___movmemSI44 + 0x000000000030349c ___movstrSI40 + 0x000000000030349c ___movmemSI40 + 0x00000000003034a0 ___movstrSI36 + 0x00000000003034a0 ___movmemSI36 + 0x00000000003034a4 ___movmemSI32 + 0x00000000003034a4 ___movstrSI32 + 0x00000000003034a8 ___movmemSI28 + 0x00000000003034a8 ___movstrSI28 + 0x00000000003034ac ___movstrSI24 + 0x00000000003034ac ___movmemSI24 + 0x00000000003034b0 ___movmemSI20 + 0x00000000003034b0 ___movstrSI20 + 0x00000000003034b4 ___movstrSI16 + 0x00000000003034b4 ___movmemSI16 + 0x00000000003034b8 ___movmemSI12 + 0x00000000003034b8 ___movstrSI12 + 0x00000000003034bc ___movmemSI8 + 0x00000000003034bc ___movstrSI8 + 0x00000000003034c0 ___movmemSI4 + 0x00000000003034c0 ___movstrSI4 + .text 0x00000000003034c8 0x1e0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_udivdi3.o) + 0x00000000003034c8 ___udivdi3 + .text 0x00000000003036a8 0x208 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_umoddi3.o) + 0x00000000003036a8 ___umoddi3 + .text 0x00000000003038b0 0x60 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) + 0x00000000003038b0 ___udiv_qrnnd_16 + .text 0x0000000000303910 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_clz.o) -.gint.blocks 0x00000000003038f0 0x140 +.gint.blocks 0x0000000000303910 0x140 *(.gint.blocks) - .gint.blocks 0x00000000003038f0 0x20 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) - 0x00000000003038f0 _gint_inth_7305 - .gint.blocks 0x0000000000303910 0xe0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) - 0x0000000000303910 _inth_tmu - 0x0000000000303990 _inth_etmu2 - 0x00000000003039b0 _inth_etmu_help - 0x00000000003039d0 _inth_etmux - .gint.blocks 0x00000000003039f0 0x40 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) - 0x00000000003039f0 _inth_dma_te - 0x0000000000303a10 _inth_dma_ae + .gint.blocks 0x0000000000303910 0x20 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) + 0x0000000000303910 _gint_inth_7305 + .gint.blocks 0x0000000000303930 0xe0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) + 0x0000000000303930 _inth_tmu + 0x00000000003039b0 _inth_etmu2 + 0x00000000003039d0 _inth_etmu_help + 0x00000000003039f0 _inth_etmux + .gint.blocks 0x0000000000303a10 0x40 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.s.o) + 0x0000000000303a10 _inth_dma_te + 0x0000000000303a30 _inth_dma_ae -.gint.drivers 0x0000000000303a30 0xb4 - 0x0000000000303a30 _bdrv = . +.gint.drivers 0x0000000000303a50 0xb4 + 0x0000000000303a50 _bdrv = . *(.gint.drivers.0) *(.gint.drivers.1) .gint.drivers.1 - 0x0000000000303a30 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) - 0x0000000000303a30 _drv_cpg + 0x0000000000303a50 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) + 0x0000000000303a50 _drv_cpg *(.gint.drivers.2) .gint.drivers.2 - 0x0000000000303a54 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) - 0x0000000000303a54 _drv_tmu + 0x0000000000303a74 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) + 0x0000000000303a74 _drv_tmu .gint.drivers.2 - 0x0000000000303a78 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) - 0x0000000000303a78 _drv_dma0 + 0x0000000000303a98 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) + 0x0000000000303a98 _drv_dma0 *(.gint.drivers.3) *(.gint.drivers.4) .gint.drivers.4 - 0x0000000000303a9c 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) - 0x0000000000303a9c _drv_keysc + 0x0000000000303abc 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) + 0x0000000000303abc _drv_keysc *(.gint.drivers.5) .gint.drivers.5 - 0x0000000000303ac0 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) - 0x0000000000303ac0 _drv_r61524 + 0x0000000000303ae0 0x24 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) + 0x0000000000303ae0 _drv_r61524 *(.gint.drivers.6) - 0x0000000000303ae4 _edrv = . + 0x0000000000303b04 _edrv = . -.rodata 0x0000000000303ae4 0xf50 +.rodata 0x0000000000303b04 0x100c *(.rodata.4) *(.rodata .rodata.*) - .rodata 0x0000000000303ae4 0x208 build-cg/assets/img/ground.png.o - 0x0000000000303ae4 _img_ground - 0x0000000000303cec _img_ground_end - .rodata 0x0000000000303cec 0x488 build-cg/assets/img/player.png.o - 0x0000000000303cec _img_player - 0x0000000000304174 _img_player_end .rodata.str1.4 - 0x0000000000304174 0x288 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.c.o) + 0x0000000000303b04 0xc5 build-cg/src/levels.c.o + *fill* 0x0000000000303bc9 0x3 + .rodata 0x0000000000303bcc 0x208 build-cg/assets/img/ground.png.o + 0x0000000000303bcc _img_ground + 0x0000000000303dd4 _img_ground_end + .rodata 0x0000000000303dd4 0x488 build-cg/assets/img/player.png.o + 0x0000000000303dd4 _img_player + 0x000000000030425c _img_player_end + .rodata.str1.4 + 0x000000000030425c 0x288 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.c.o) 0x28c (size before relaxing) - .rodata 0x00000000003043fc 0x18 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) + .rodata 0x00000000003044e4 0x18 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(topti.c.o) .rodata.str1.4 - 0x0000000000304414 0x6 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) - *fill* 0x000000000030441a 0x2 + 0x00000000003044fc 0x6 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(keysc.c.o) + *fill* 0x0000000000304502 0x2 .rodata.str1.4 - 0x000000000030441c 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) - .rodata 0x0000000000304420 0x49c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(font8x9.png.o) - 0x0000000000304420 _gint_font8x9 - 0x00000000003048bc _gint_font8x9_end + 0x0000000000304504 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(tmu.c.o) + .rodata 0x0000000000304508 0x49c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(font8x9.png.o) + 0x0000000000304508 _gint_font8x9 + 0x00000000003049a4 _gint_font8x9_end .rodata.str1.4 - 0x00000000003048bc 0x7 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) - *fill* 0x00000000003048c3 0x1 + 0x00000000003049a4 0x7 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) + *fill* 0x00000000003049ab 0x1 .rodata.str1.4 - 0x00000000003048c4 0x31 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) - *fill* 0x00000000003048f5 0x3 + 0x00000000003049ac 0x25 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) + 0x31 (size before relaxing) + *fill* 0x00000000003049d1 0x3 .rodata.str1.4 - 0x00000000003048f8 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) - .rodata 0x00000000003048fc 0x30 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) + 0x00000000003049d4 0x4 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) + .rodata 0x00000000003049d8 0x30 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) .rodata.str1.4 - 0x000000000030492c 0x8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) + 0x0000000000304a08 0x8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(dma.c.o) 0x5 (size before relaxing) - .rodata 0x0000000000304934 0x100 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_clz.o) - 0x0000000000304934 ___clz_tab + .rodata 0x0000000000304a10 0x100 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a(_clz.o) + 0x0000000000304a10 ___clz_tab -.rela.dyn 0x0000000000304a34 0x0 - .rela.text.startup - 0x0000000000304a34 0x0 build-cg/src/main.c.o +.rela.dyn 0x0000000000304b10 0x0 .rela.pretext.entry - 0x0000000000304a34 0x0 build-cg/src/main.c.o - .rela.text 0x0000000000304a34 0x0 build-cg/src/main.c.o - .rela.pretext 0x0000000000304a34 0x0 build-cg/src/main.c.o + 0x0000000000304b10 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) + .rela.text 0x0000000000304b10 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) + .rela.pretext 0x0000000000304b10 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) 0x0000000008102000 . = ORIGIN (ram) .bss 0x0000000008102000 0x150 @@ -443,6 +446,7 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a .bss 0x0000000008102000 0x0 build-cg/src/draw.c.o .bss 0x0000000008102000 0x0 build-cg/src/levels.c.o .bss 0x0000000008102000 0x0 build-cg/src/main.c.o + .bss 0x0000000008102000 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .bss 0x0000000008102000 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) .bss 0x0000000008102000 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) .bss 0x0000000008102000 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(mmu.c.o) @@ -467,7 +471,6 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a .bss 0x0000000008102024 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(r61524.c.o) .bss 0x0000000008102024 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(string.c.o) .bss 0x0000000008102024 0x114 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) - .bss 0x0000000008102138 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .bss 0x0000000008102138 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) .bss 0x0000000008102138 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti-asm.s.o) .bss 0x0000000008102138 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) @@ -484,14 +487,15 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a *fill* 0x0000000008102144 0xc 0x0000000000000150 _sbss = SIZEOF (.bss) -.data 0x0000000008102150 0x80 load address 0x0000000000304a34 - 0x0000000000304a34 _ldata = LOADADDR (.data) +.data 0x0000000008102150 0x80 load address 0x0000000000304b10 + 0x0000000000304b10 _ldata = LOADADDR (.data) 0x0000000008102150 _rdata = . *(.data .data.*) .data 0x0000000008102150 0x0 build-cg/src/collide.c.o .data 0x0000000008102150 0x0 build-cg/src/draw.c.o .data 0x0000000008102150 0x0 build-cg/src/levels.c.o .data 0x0000000008102150 0x0 build-cg/src/main.c.o + .data 0x0000000008102150 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .data 0x0000000008102150 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(start.c.o) .data 0x0000000008102150 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) .data 0x0000000008102150 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(mmu.c.o) @@ -520,7 +524,6 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a .data 0x000000000810215c 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(string.c.o) .data 0x000000000810215c 0x68 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(stdio.c.o) 0x000000000810215c _kprint_formatters - .data 0x00000000081021c4 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memory.c.o) .data 0x00000000081021c4 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(inth.S.o) .data 0x00000000081021c4 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(bopti-asm.s.o) .data 0x00000000081021c4 0x0 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(cpg.c.o) @@ -536,29 +539,29 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a 0x00000000081021d0 . = ALIGN (0x10) *fill* 0x00000000081021cc 0x4 -.data.4 0x00000000081021d0 0x0 load address 0x0000000000304ab4 +.data.4 0x00000000081021d0 0x0 load address 0x0000000000304b90 *(.data.4) 0x00000000081021d0 . = ALIGN (0x10) 0x0000000000000080 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) 0x00000000e5200000 . = ORIGIN (ilram) -.ilram 0x00000000e5200000 0x20 load address 0x0000000000304ab4 - 0x0000000000304ab4 _lilram = LOADADDR (.ilram) +.ilram 0x00000000e5200000 0x20 load address 0x0000000000304b90 + 0x0000000000304b90 _lilram = LOADADDR (.ilram) 0x00000000e5200000 _rilram = . *(.ilram) .ilram 0x00000000e5200000 0x20 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(memset.c.o) 0x00000000e5200020 . = ALIGN (0x10) 0x00000000e5007000 . = ORIGIN (xram) -.xram 0x00000000e5007000 0x0 load address 0x0000000000304ad4 - 0x0000000000304ad4 _lxram = LOADADDR (.xram) +.xram 0x00000000e5007000 0x0 load address 0x0000000000304bb0 + 0x0000000000304bb0 _lxram = LOADADDR (.xram) 0x00000000e5007000 _rxram = . *(.xram) 0x00000000e5007000 . = ALIGN (0x10) 0x00000000e5017000 . = ORIGIN (yram) -.yram 0x00000000e5017000 0x0 load address 0x0000000000304ad4 - 0x0000000000304ad4 _lyram = LOADADDR (.yram) +.yram 0x00000000e5017000 0x0 load address 0x0000000000304bb0 + 0x0000000000304bb0 _lyram = LOADADDR (.yram) 0x00000000e5017000 _ryram = . *(.yram) 0x00000000e5017000 . = ALIGN (0x10) @@ -568,8 +571,8 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a 0x000000008c15ff00 _gint_vbr = (ORIGIN (vbr) - 0x100) 0x000000008c161400 . = ORIGIN (rram) -.gint.data 0x000000008c161400 0xe0 load address 0x0000000000304ad4 - 0x0000000000304ad4 _lgdata = LOADADDR (.gint.data) +.gint.data 0x000000008c161400 0xe0 load address 0x0000000000304bb0 + 0x0000000000304bb0 _lgdata = LOADADDR (.gint.data) 0x000000008c161400 _rgdata = . *(.gint.data .gint.data.*) .gint.data 0x000000008c161400 0x8 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(exch.c.o) @@ -587,7 +590,7 @@ LOAD /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/m4-nofpu/libgcc.a *fill* 0x000000008c1614d8 0x8 0x00000000000000e0 _sgdata = SIZEOF (.gint.data) -.gint.bss 0x000000008c1614e0 0x300 load address 0x0000000000304bb4 +.gint.bss 0x000000008c1614e0 0x300 load address 0x0000000000304c90 *(.gint.bss .gint.bss.*) .gint.bss 0x000000008c1614e0 0x1c /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(setup.c.o) .gint.bss 0x000000008c1614fc 0x40 /home/user/opt/sh-elf-2.32-9.2.0/lib/gcc/sh3eb-elf/9.2.0/libgint-cg.a(hardware.c.o) diff --git a/build-cg/platform.bin b/build-cg/platform.bin index 4f7d4d67b649ee9850ac835874db9dda155a4577..bc98319d62c0f98e6f9f38f1bb37056e57e0cd25 100755 GIT binary patch delta 2053 zcmbVNZ%k8H6hF76@=8&PEd>ff3n(S6_EyTqKWCveQriUQNs_+8c5(Anx3beWjXiW;xO(i0@UXdzFjy0dosFTnCT_>+79wev9Z-m_@*JQVV zI^w)Xa#2E-Sv;kOczBPjngq-b^kwE5i??p%@fI@iFqOJ(Bi+(HKG2^0nA4J&#Xo4D zC&!!LS5%iiO0{V9RTfj-2$`5CAZo2r?Qy%HT^6(t1#P*nRVAt2?H}ARPbz(q5OVtD z8M5lqiX+<}R+#pU$R_fq@(9^HX>FtV#B1?O%DPuu zi+!tItL&}RLwlEj?ui0bhRhc_?dIV>z}lI&P>SUQ~YlhkHxSAhcLfOJgG~{Kh#?Lgi8{rZ z^vI4AiH^is?o3KM?t9aZ^m~IJl1NdyGr>6yD&_PABek zT>Pw4QS(jLgpM1Obbs5;e?-DLrxxkK{u7Bq!L#W$g*B$*E=u0%x5RQ(5miT`J#j{g zAtX*kyceB*n1g^f;BDN|y($#!)atvdpy*tM&oC*foCeC_0H%&2aF8-_I5bm0vvP2V z&ZEx8yXEy{lQ3Y_O>8KwMeoG{^q`i8Gyoxu6vwej8Pdp*X83RXg!9i$FAAY(T?GjR-`u(V~BCYT|^im*eoHI5l?V-@hT3q zb+rEreRy?;A8`eNXE>%&){1miOr;(>rm?Hh(ST@(kgou<#=PxbHofH%@$%k`JVLIs zb4sISx+xKnPLYcck<=MQGu05#tyAhlAuL^h zVIt^YPSh5-*>vWk&67ZPDiJn>pWWU1J&CcP%1C1Tm`X~BkBzJMZq5gqi;1bwSR4O3 zixHB;hBU?ayrVfurkF0fhD`C^?4uHWLr9};$AV+=)tG113epf#tXT%esS2~%+`nYl zIO`Of)-IAtHlEjmVGQ~EWhS8IKE5|Um5?YqzwJ8`VzmW{+z=iSMnuQ4v1pPsLmFod zgzn09tbVk- zO_cJr))t8jO)JOvD{n|&uF!SK;Uw~%Ax*X)s3nAWBI+E^M5?|IRDB1}&I(ZH zs3^-1CMf`ieh#49&H*hDema=dD{I$=Md^mkuGiT4lK!vZ_`? z0~sgwaX=Aki|Vn6#g%K@bt=ec=~}_p#Xw7zfEu2z3usYok{9G_3wh>u)etMY<(mBu D`%M;^ delta 2055 zcmb7EUrbYH6hB`}$1O$qSBgNf<=-r!+OLAFEf@=}v#d3+pn{_hRf;mHP6s+o*vbPl zHJ0G=5u+JPNJiA`VI#T5^nqj~62}rA+Qb>Mu&rVdwwX-m((yp%&h6!o4}0;u`Q3BA z^Y@mLNHdqIMO~8= zz?lLRS*maW-97^}Z5XJgDsx_40kCgX98vO4tMPm23p4 zeU@*NT$hkJ7E9?N4!%uhA^zeDqq}~DeDY%|by-KcrL{gN;0j(8>jEmCus{b?B*^CnkXp2FSG%j3E=O_I*$;-={w~ zBHN0gOx<13E3+J;X+ru=>A?|COVWu$ih-`Bcsi&W`T|5!(Vg&=vUgLD9+(5Ve;R0J zpW$kk&2aN~Fx>eA3=g_n43B&rh9_rjhUcGpn@WDo^{+*8Jp%zcs0{QB7M^5RI1dXn zv!7G<7s&;GptX};SDE8FiAc(`K>>1nu&d0BXx0ewh+Gb+DuhGR2b9x4)fleUsJdE)%1_v8T%Mc`{;b?c z-V!FvVr64#t;H^!z&13eK@~tyg=0z0NM%Sf+&GgurdAZn1kTFWDHKxw1W=h0;MFUj zw%+6qKpQRtZ5T!1@iky*+b#Si9AMiBVhnK)F^-r*pp9(~5k)K^R&juJh_-*BUyIa> z2qG|seG+9Jr1*0P^))nOZ8i>_)QGwW`3}UhwKcQ3?L)-H`!Wg%xxoUNmBxwYctko) zu0uppUn!d93;@lZh)6pRhoyF1x$}wCTItOeYf$T0Ec3Vgx`=cU!qNq}Ndz54MeWWy zHkb8m8`iKJ5ES8IGuc0o88)0#NoM%T94R4gHl;kUEgfin3}_A-7d+-Oa~UBV8&j3y zds=mxgc!}MB_ZCI*DfhG1yxEc*sMj0g_@&Cv3T<+b{`X&C)rZ|Uos!i>JXbNSR^_& zRoH`hOzJ~2>_L^AA5fZMOb#F0^m@=7eRrfI0g~Qw|7{2}?e7NEeA=}xG%7^kvapLjoVwEk} zNt3>mM44N!!FOMhAJylPC?C=vkfM6kP)aT{HSG}Y$Ho~pK>v|D#9^YnY`}P$IM@s0 zNBDN{y_=6V8783Afwp*Z7Hpf)eT$Z@Ybh|)54M9?2NN7ocXQPzAEl_*pn0>5LBrq zfabXoVNut(Cepoac!uN1cLh~>=Ybmg5HV3_e<@PseW1#F7(3Tb8*hm+b#IaaaOh_T zTGRz}r&f^Bt+i);QTpaw&;R&RHc`uU2}#J-61Ku3M5J%RdDmTD_uY)l&(yw`amv1i z7lqg?!I&0f6H9d)sWzz~qq{a5z9|M;HVag@v?-t^`Xn#NHx}}&&sj^#Sjaj1A35C# A#Q*>R diff --git a/build-cg/platform.elf b/build-cg/platform.elf new file mode 100755 index 0000000000000000000000000000000000000000..413d3956c9016dd68eecb7ee1b093fa26a2683fb GIT binary patch literal 29656 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 literal 0 HcmV?d00001 diff --git a/build-cg/src/collide.c.o b/build-cg/src/collide.c.o index d75da40d636a11e9d0ea1640e4aeaa627d15695f..c73be1324cb109cf7fa1bb5d0dbca31c799b526e 100644 GIT binary patch delta 66 zcmbQiHid11GUJtrDk^-2Qu@afHTAC<#yHM-&9^bkm2vU{#^lLNOm`VYCO=?O7M;Vu Nz+ei*Fu(|6005ZS4~75$ delta 55 zcmV-70LcH82ABqrBLUcvBqR-oX>@3ln*n2!{{h?q N8I#-sBLSh30~8t06I}oR diff --git a/build-cg/src/draw.c.o b/build-cg/src/draw.c.o index f2de1b884425231f7c4874ca94f7ef96b0d53418..7515fe0736ac8dccd8f71ebb138ee0f320fbf6e0 100644 GIT binary patch delta 48 zcmZqRXyBMIPeK3LTy1})d!qG!E{fXvB(!uG^on#8_ev*CuH;CV+)*%bpDp8&jel5} E0o+>?&;S4c delta 48 zcmZqRXyBMIPa)S?|5ld!>^mS8^mw?g*H;&z6yM;~y4g E0Nh9uH2?qr diff --git a/build-cg/src/levels.c.o b/build-cg/src/levels.c.o index d0016ed0dd7364ae59514e21eed17b30b20b3ff8..b299fefc1affb6f0c08750f205de60e729839dc9 100644 GIT binary patch literal 976 zcmcgqJxc>Y5Ph2uO`?S#2#N|?5 zvGY#|_BwO7d)Z5)m5-a9c{A^JXZG&?sC_JQ0x1M`DYg z`CI;}@SgYf`pcL@885Md7B>rN!F4Sn|DT1{@zbYgx&~U!=AlzRxxZq*=^J#<19bz+82pn~4b zSnF1SlId{+C?>HC$3f(GA;V~t_$w2Q)WDaKx{DzDe&j=T!w_;bWWw^AY(VygL7=W9 z)5{;dLpna6=VI_5<#3>3?qi)e$6k^bALMBc%#!i@T$?A`*4*6d1#uh6tiV1cOJu+4 zYNX+J>SPSw?=_B+h0o=>r@j6o#2Rt>JSkXXESF{>xQ|CN?uBRJ{rEGM$xLq)if39j U$qaZe#v+-m`yzhI1&vtu1LOK#9smFU literal 584 zcma)2u}%U(5PgRi0d0VU$_6XZm<=J404+h9iyiglz>OB15^h7J;>Y+2KgBP=H|Nc9 z*uW$&GjHbY%GU1ypE?-(MAPjT%(G~Xf$lKCoj|c*1&X4CvR{R z0h0xgOT`TS6Rky$oqv|+eKpL2;Zy=QwEr16T4_e?^b{QT_b0| z9L#IvBA8i{z|246*nYUfm~)~VisWCHnOH6(yQ%3vZkZ6B{-dvg%G$qJP_p6f^b>HMY715`p@2~gA72MqNw^)dcxljRtndcF{1U|?lnU{C^LFc5%HT2L+nly8d0 zcSPg+P4;05FiOrzO)O%FFHS9q&q*yy&0&a7DM~CyVHe~iR;B{gq?8t-7#IX#>?e~$ un0GTim@L3j&G=$+4~sJ6o5>qk)ENUN-vE*+lUUUmOD1ao$%x4TtRes=k8^?m delta 441 zcmaFB^@MAJGUJ+wDna%7&-|6@d+z8YewJry5Ni;ZXTG3ySKER63ByILw9l!Z%XmsT zQa(F!mk3-`f5H&?DfM$SkXI^D$(Xu1{BzhRAMTXNzT6C)7Zf8uIdDgRzM(M1zyruv z;CNEz!ELoFYqSkxIqCSL)P8I%72$%@G;tm>jMKs$Y59s$x|69Cdaci8{{ diff --git a/levels.lua b/levels.lua index 1654b51..0b871a4 100644 --- a/levels.lua +++ b/levels.lua @@ -1,14 +1,18 @@ levels = {[[ -0000000000 -0........0 -0........0 -0........0 -0........0 -0........0 -0........0 -0s.......0 -0........0 -0000000000 +00000000000000 +0............0 +0............0 +0............0 +0............0 +0............0 +0............0 +0............0 +0............0 +0............0 +0............0 +0s...........0 +0............0 +00000000000000 ]] } @@ -17,12 +21,13 @@ to_write = "" --remove all "\n" from level strings for i, v in ipairs(levels) do v = string.gsub(v, "\n", "") - to_write = to_write.." case "..(i-1)..":\n level = \""..v.."\";\n break;" + to_write = to_write.." case "..(i-1)..":\n memcpy(level, \""..v.."\", "..#v..");\n break;" end --finish and write to_write = [[#include "levels.h" -void get_level(unsigned char level_id, char level[]) { +#include +void set_level(unsigned char level_id, char *level) { switch (level_id) { ]]..to_write.."\n }\n}\n" diff --git a/platform.g3a b/platform.g3a index 3e42ba4664c87b1a13efd60aadd4c2378e753018..49398c8928340449b454f93740ac0dc3df5bb60c 100644 GIT binary patch delta 2137 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 ZljzYY+FvcyS;Os2636VfA4zHx{syGZLaP7( diff --git a/src/collide.c b/src/collide.c index cd93261..cba67db 100644 --- a/src/collide.c +++ b/src/collide.c @@ -1,14 +1,15 @@ #define PLAYER_SIDES 11 +#define LEVEL_WIDTH 14 -char collide_with(int x, int y, char level[], char tile, unsigned int level_width) +char collide(int x, int y, char level[], char tile) { - if ((level[(int)(x/8) + (int)(y/8) * level_width] == tile) || - (level[(int)(x/8) + (int)((y+PLAYER_SIDES)/8) * level_width] == tile) || - (level[(int)((x+PLAYER_SIDES)/8) + (int)((y+PLAYER_SIDES)/8) * level_width] == tile) || - (level[(int)((x+PLAYER_SIDES)/8) + (int)(y/8) * level_width] == tile) || - (level[(int)(x/8) + (int)((y+PLAYER_SIDES/2)/8) * level_width] == tile) || - (level[(int)((x+PLAYER_SIDES/2)/8) + (int)(y/8) * level_width] == tile) || - (level[(int)((x+PLAYER_SIDES/2)/8) + (int)((y+PLAYER_SIDES)/8) * level_width] == tile) || - (level[(int)((x+PLAYER_SIDES)/8) + (int)((y+PLAYER_SIDES/2)/8) * level_width] == tile)) return 1; + if ((level[(int)(x/8) + (int)(y/8) * LEVEL_WIDTH] == tile) || + (level[(int)(x/8) + (int)((y+PLAYER_SIDES)/8) * LEVEL_WIDTH] == tile) || + (level[(int)((x+PLAYER_SIDES)/8) + (int)((y+PLAYER_SIDES)/8) * LEVEL_WIDTH] == tile) || + (level[(int)((x+PLAYER_SIDES)/8) + (int)(y/8) * LEVEL_WIDTH] == tile) || + (level[(int)(x/8) + (int)((y+PLAYER_SIDES/2)/8) * LEVEL_WIDTH] == tile) || + (level[(int)((x+PLAYER_SIDES/2)/8) + (int)(y/8) * LEVEL_WIDTH] == tile) || + (level[(int)((x+PLAYER_SIDES/2)/8) + (int)((y+PLAYER_SIDES)/8) * LEVEL_WIDTH] == tile) || + (level[(int)((x+PLAYER_SIDES)/8) + (int)((y+PLAYER_SIDES/2)/8) * LEVEL_WIDTH] == tile)) return 1; else return 0; } diff --git a/src/collide.h b/src/collide.h index f90f289..67642f4 100644 --- a/src/collide.h +++ b/src/collide.h @@ -1 +1 @@ -char collide(int x, int y, char level[], char tile, unsigned int level_width); +char collide(int x, int y, char level[], char tile); diff --git a/src/draw.c b/src/draw.c index 779fc8b..a1a22b2 100644 --- a/src/draw.c +++ b/src/draw.c @@ -2,6 +2,7 @@ #define PLAYER_SIDES 11 #define BG_COLOR 0 +#define LEVEL_WIDTH 14 extern image_t img_player; //player texture, 24x24 @@ -21,7 +22,7 @@ void draw_level(char level[], int *player_x, int *player_y) unsigned int i = 0; unsigned int x = 0; unsigned int y = 0; - while (i != 100) + while (i != 14*14) { switch (level[i]) { @@ -34,7 +35,7 @@ void draw_level(char level[], int *player_x, int *player_y) break; } x += 8; - if (x == 80) + if (x == 8*LEVEL_WIDTH) { x = 0; y += 8; diff --git a/src/levels.c b/src/levels.c index 02694d9..3d05718 100644 --- a/src/levels.c +++ b/src/levels.c @@ -1,9 +1,10 @@ #include "levels.h" -void get_level(unsigned char level_id, char level[]) { +#include +void set_level(unsigned char level_id, char *level) { switch (level_id) { case 0: - level = "00000000000........00........00........00........00........00........00s.......00........00000000000"; + memcpy(level, "000000000000000............00............00............00............00............00............00............00............00............00............00s...........00............000000000000000", 196); break; } } diff --git a/src/levels.h b/src/levels.h index 9c051de..9beff74 100644 --- a/src/levels.h +++ b/src/levels.h @@ -1 +1 @@ -void get_level(unsigned char level_id, char level[]); +void set_level(unsigned char level_id, char level[]); diff --git a/src/main.c b/src/main.c index 2bec1c8..0c6c3af 100644 --- a/src/main.c +++ b/src/main.c @@ -7,25 +7,23 @@ void jump_test(char *jump_pressed, char *jump_buffer); //test if jump pressed int main(void) { - char level[100]; - char *level_ptr; - level_ptr = level; + char level[13*13]; unsigned char level_id = 0; char jump_pressed = 0; //avoid holding jump char jump_buffer = 0; //jump buffer, last 3 frames - double vspd = 0; //player vertical speed + //double vspd = 0; //player vertical speed char hspd = 0; //player horizontal speed - char on_ground = 6; //remember if player is on solid + //char on_ground = 6; //remember if player is on solid int player_x = 0; int player_y = 0; int old_x, old_y; - const double jump_spd = -4; //default jump speed - const double grav = 0.2; + //const double jump_spd = -4; //default jump speed + //const double grav = 0.2; dclear(0); //0 -> black + set_level(level_id, level); draw_level(level, &player_x, &player_y); old_x = player_x + 1; //offset to draw it on first cycle old_y = player_y; - get_level(level_id, level); while (1) { draw_player(old_x, old_y, player_x, player_y); dupdate(); @@ -36,7 +34,7 @@ int main(void) hspd = 0; if (keydown(KEY_LEFT)) hspd--; if (keydown(KEY_RIGHT)) hspd++; - if (!collide(player_x + hspd, player_y, level, '0', 10)) + if (!collide(player_x + hspd, player_y, level, '0')) { player_x += hspd; } diff --git a/transfer.sh b/transfer.sh index 515c56d..c02ecfd 100755 --- a/transfer.sh +++ b/transfer.sh @@ -1,3 +1,2 @@ #/bin/#!/usr/bin/env bash cp platform.g3a /media/user/disk/ -umount /media/user/disk/