From c6c049d0d34d9c1c17958c8bc27534e7cffbc0a5 Mon Sep 17 00:00:00 2001 From: Jean-Paul NOEL Date: Sat, 18 Apr 2020 23:33:56 +0200 Subject: [PATCH] first commit --- .vscode/c_cpp_properties.json | 16 + Makefile | 194 ++++++++++ README.md | 2 +- assets-cg/icon-cg-sel.png | Bin 0 -> 8388 bytes assets-cg/icon-cg-uns.png | Bin 0 -> 4629 bytes assets-cg/img/player.png | Bin 0 -> 240 bytes assets-fx/icon-fx.png | Bin 0 -> 7429 bytes build-cg/Test01.bin | Bin 0 -> 26084 bytes build-cg/assets/fonts/island.png.o | Bin 0 -> 1004 bytes build-cg/assets/img/player.png.o | Bin 0 -> 2472 bytes build-cg/assets/img/title.png.o | Bin 0 -> 6564 bytes build-cg/map | 597 +++++++++++++++++++++++++++++ build-cg/src/main.c.d | 1 + build-cg/src/main.c.o | Bin 0 -> 1332 bytes project.cfg | 85 ++++ src/main.c | 47 +++ 16 files changed, 941 insertions(+), 1 deletion(-) create mode 100644 .vscode/c_cpp_properties.json create mode 100644 Makefile create mode 100644 assets-cg/icon-cg-sel.png create mode 100644 assets-cg/icon-cg-uns.png create mode 100644 assets-cg/img/player.png create mode 100644 assets-fx/icon-fx.png create mode 100755 build-cg/Test01.bin create mode 100644 build-cg/assets/fonts/island.png.o create mode 100644 build-cg/assets/img/player.png.o create mode 100644 build-cg/assets/img/title.png.o create mode 100644 build-cg/map create mode 100644 build-cg/src/main.c.d create mode 100644 build-cg/src/main.c.o create mode 100644 project.cfg create mode 100644 src/main.c diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json new file mode 100644 index 0000000..0b0eed0 --- /dev/null +++ b/.vscode/c_cpp_properties.json @@ -0,0 +1,16 @@ +{ + "configurations": [ + { + "name": "Linux", + "includePath": [ + "${workspaceFolder}/**" + ], + "defines": [], + "compilerPath": "/usr/bin/gcc", + "cStandard": "c11", + "cppStandard": "c++17", + "intelliSenseMode": "clang-x64" + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1106c98 --- /dev/null +++ b/Makefile @@ -0,0 +1,194 @@ +#! /usr/bin/make -f +# Default Makefile for fxSDK add-ins. This file was probably copied there by +# the [fxsdk] program. +#--- + +# +# Configuration +# + +include project.cfg + +# Compiler flags +CFLAGSFX := $(CFLAGS) $(CFLAGS_FX) $(INCLUDE) +CFLAGSCG := $(CFLAGS) $(CFLAGS_CG) $(INCLUDE) + +# Linker flags +LDFLAGSFX := $(LDFLAGS) $(LDFLAGS_FX) +LDFLAGSCG := $(LDFLAGS) $(LDFLAGS_CG) + +# Dependency list generation flags +depflags = -MMD -MT $@ -MF $(@:.o=.d) -MP +# ELF to binary flags +BINFLAGS := -R .bss -R .gint_bss + +# G1A and G3A generation flags +NAME_G1A ?= $(NAME) +NAME_G3A ?= $(NAME) +G1AF := -i "$(ICON_FX)" -n "$(NAME_G1A)" --internal="$(INTERNAL)" +G3AF := -n basic:"$(NAME_G3A)" -i uns:"$(ICON_CG_UNS)" -i sel:"$(ICON_CG_SEL)" + +ifeq "$(TOOLCHAIN_FX)" "" +TOOLCHAIN_FX := sh3eb-elf +endif + +ifeq "$(TOOLCHAIN_CG)" "" +TOOLCHAIN_CG := sh4eb-elf +endif + +# fxconv flags +FXCONVFX := --fx --toolchain=$(TOOLCHAIN_FX) +FXCONVCG := --cg --toolchain=$(TOOLCHAIN_CG) + +# +# File listings +# + +NULL := +TARGET := $(subst $(NULL) $(NULL),-,$(NAME)) + +ifeq "$(TARGET_FX)" "" +TARGET_FX := $(TARGET).g1a +endif + +ifeq "$(TARGET_CG)" "" +TARGET_CG := $(TARGET).g3a +endif + +ELF_FX := build-fx/$(shell basename -s .g1a $(TARGET_FX)).elf +BIN_FX := $(ELF_FX:.elf=.bin) + +ELF_CG := build-cg/$(shell basename -s .g3a $(TARGET_CG)).elf +BIN_CG := $(ELF_CG:.elf=.bin) + +# Source files +src := $(wildcard src/*.[csS] \ + src/*/*.[csS] \ + src/*/*/*.[csS] \ + src/*/*/*/*.[csS]) +assets-fx := $(wildcard assets-fx/*/*) +assets-cg := $(wildcard assets-cg/*/*) + +# Object files +obj-fx := $(src:%=build-fx/%.o) \ + $(assets-fx:assets-fx/%=build-fx/assets/%.o) +obj-cg := $(src:%=build-cg/%.o) \ + $(assets-cg:assets-cg/%=build-cg/assets/%.o) + +# Additional dependencies +deps-fx := $(ICON_FX) +deps-cg := $(ICON_CG_UNS) $(ICON_CG_SEL) + +# All targets +all := +ifneq "$(wildcard build-fx)" "" +all += all-fx +endif +ifneq "$(wildcard build-cg)" "" +all += all-cg +endif + +# +# Build rules +# + +all: $(all) + +all-fx: $(TARGET_FX) +all-cg: $(TARGET_CG) + +$(TARGET_FX): $(obj-fx) $(deps-fx) + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -o $(ELF_FX) $(obj-fx) $(CFLAGSFX) $(LDFLAGSFX) + $(TOOLCHAIN_FX)-objcopy -O binary $(BINFLAGS) $(ELF_FX) $(BIN_FX) + fxg1a $(BIN_FX) -o $@ $(G1AF) + +$(TARGET_CG): $(obj-cg) $(deps-cg) + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -o $(ELF_CG) $(obj-cg) $(CFLAGSCG) $(LDFLAGSCG) + $(TOOLCHAIN_CG)-objcopy -O binary $(BINFLAGS) $(ELF_CG) $(BIN_CG) + mkg3a $(G3AF) $(BIN_CG) $@ + +# C sources +build-fx/%.c.o: %.c + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ $(CFLAGSFX) $(depflags) +build-cg/%.c.o: %.c + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ $(CFLAGSCG) $(depflags) + +# Assembler sources +build-fx/%.s.o: %.s + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ +build-cg/%.s.o: %.s + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ + +# Preprocessed assembler sources +build-fx/%.S.o: %.S + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ $(INCLUDE) +build-cg/%.S.o: %.S + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ $(INCLUDE) + +# Images +build-fx/assets/img/%.o: assets-fx/img/% + @ mkdir -p $(dir $@) + fxconv --bopti-image $< -o $@ $(FXCONVFX) name:img_$(basename $*) $(IMG.$*) +build-cg/assets/img/%.o: assets-cg/img/% + @ mkdir -p $(dir $@) + fxconv --bopti-image $< -o $@ $(FXCONVCG) name:img_$(basename $*) $(IMG.$*) + +# Fonts +build-fx/assets/fonts/%.o: assets-fx/fonts/% + @ mkdir -p $(dir $@) + fxconv -f $< -o $@ $(FXCONVFX) name:font_$(basename $*) $(FONT.$*) +build-cg/assets/fonts/%.o: assets-cg/fonts/% + @ mkdir -p $(dir $@) + fxconv -f $< -o $@ $(FXCONVCG) name:font_$(basename $*) $(FONT.$*) + +# Binaries +build-fx/assets/bin/%.o: assets-fx/bin/% + @ mkdir -p $(dir $@) + fxconv -b $< -o $@ $(FXCONVFX) name:bin_$(basename $*) $(BIN.$*) +build-cg/assets/bin/%.o: assets-cg/bin/% + @ mkdir -p $(dir $@) + fxconv -b $< -o $@ $(FXCONVCG) name:bin_$(basename $*) $(BIN.$*) + +# +# Cleaning and utilities +# + +# Dependency information +-include $(shell find build* -name *.d 2> /dev/null) +build-fx/%.d: ; +build-cg/%.d: ; +.PRECIOUS: build-fx build-cg build-fx/%.d build-cg/%.d %/ + +clean-fx: + @ rm -rf build-fx/ +clean-cg: + @ rm -rf build-cg/ + +distclean-fx: clean-fx + @ rm -f $(TARGET_FX) +distclean-cg: clean-cg + @ rm -f $(TARGET_CG) + +clean: clean-fx clean-cg + +distclean: distclean-fx distclean-cg + +install-fx: $(TARGET_FX) + p7 send -f $< +install-cg: $(TARGET_CG) + @ while [[ ! -h /dev/Prizm1 ]]; do sleep 0.25; done + @ while ! mount /dev/Prizm1; do sleep 0.25; done + @ rm -f /mnt/prizm/$< + @ cp $< /mnt/prizm + @ umount /dev/Prizm1 + @- eject /dev/Prizm1 + +.PHONY: all all-fx all-cg clean distclean install-fx install-cg diff --git a/README.md b/README.md index 6e52294..e76d217 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # test01 -Petit projet perso d'add-in pour découvrir toutes les possibilités de gint. \ No newline at end of file +Petit projet perso d'add-in pour découvrir toutes les possibilités de gint. diff --git a/assets-cg/icon-cg-sel.png b/assets-cg/icon-cg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..7137b504cfd44f62f3105ce7a203b9100a557d0f GIT binary patch literal 8388 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 ag#Q8hHNm}t`+-sb0000 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 LNkvXXu0mjfMjhGA literal 0 HcmV?d00001 diff --git a/assets-cg/img/player.png b/assets-cg/img/player.png new file mode 100644 index 0000000000000000000000000000000000000000..bad6c0cea3bf87d0a55219f7ccf674819af4152b GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?31We{epSZZGe6kO!# z;usRa`F46DSAzmitLd(#(?1%`%WBtD=P1^=*>rC{>!iyi=il=#lyKUS)oiPte$LXF zrQja(q)3%gM!y4`7K|2+Wun3pcg+6x_7LX|28+h9md%^Am+~CeT&h^dRd)R_=K)q7 z-HPs*=uNxj{225SG8^5rl4Bp%=80GTpLf52NsV#ybfH+1(gO3J jLc4)RMf`34H}5{%DKY&|m)>RrUCZF<>gTe~DWM4fP~=vg literal 0 HcmV?d00001 diff --git a/assets-fx/icon-fx.png b/assets-fx/icon-fx.png new file mode 100644 index 0000000000000000000000000000000000000000..c92f12afab0af9f7b3d8e2bec76a1dc5cc9c08a1 GIT binary patch literal 7429 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 DnD~u1 literal 0 HcmV?d00001 diff --git a/build-cg/assets/fonts/island.png.o b/build-cg/assets/fonts/island.png.o new file mode 100644 index 0000000000000000000000000000000000000000..327cdee097add5b3a3cff88d5d5f63a7f770129d GIT binary patch literal 1004 zcmZ`%O=uHQ5dO0JHZioMji42Z72Aze53PlYw^Cx_ss0=))e0u5sbr(J+T>8Zm{VD$ zChftEPa%Oq!Kw#OqTnG157mad3kMc@VeCAGwO9v^6#b~ISxDFx%6bTf zVZq4nMso>hCVubtL11$e4}TI@XGotPeIaf%iX66GfMHs&c>$G;932zWFZ1A4jvqAB z=eO|SEr)65ko~gfwcznpE;ZN%lj23#g(Xarj_QtJtL&4$*|9~L-%Wm!JKr%MN$%`$ zZKkZ}@c9`q-#LhtYe46MUE0I7 zl+;Ud@8!h|&>j^nRC!Ux?VMWshmF5Ti;LU`C_{qd;C+AauQDQ+CMVJnBXuP<5&sKB z#{Vs(jGN;?PwK|ibZm@bda4!^^=xV~9!tlzllQ-RI~9dS#c9$XtZ8*{eV45>Vmw3c oG#y%5av4Qh4_>E6L74K6T%Sy9u701Npx`>Dih5TaQIvDP0oNz1_5c6? literal 0 HcmV?d00001 diff --git a/build-cg/assets/img/player.png.o b/build-cg/assets/img/player.png.o new file mode 100644 index 0000000000000000000000000000000000000000..3012157f2728813ac14520e559259ab4b56e77be GIT binary patch literal 2472 zcmb<-^>JflVq|~=Mg}b)8%coU0a(riOlmN&GO&PI3JeNhnj)e_fP4tDn0(zW0;Bpz z!;jMR6Lp$=2ugqC>yA1-y!3;70|K~01R{$pkE$9|9@QjFdFtv%wT&1as{O?1KvhFa z{jku&X9poUm>H<9M)2_Ihoo-8DiEfT&cbgxVe^KAevlt%1DGLg2zWaJSlxoyybKH+ z93UH^d|3ql|3`-S%-r<&f}F(4)FNbdd}>|_3conBDwTmjuedU|Bryp{mlQ$h3>d2@ zKP9mwkwl+K1J#4v$OP2~Z1F(c3gyH6f~*E8#bE;^0)QCkWw2gQ`v}y!;Dm|+DG=c3 d0TOy(CWL^QCkW(%^g;p0E+9i0#skt|bpY_(LiPXv literal 0 HcmV?d00001 diff --git a/build-cg/assets/img/title.png.o b/build-cg/assets/img/title.png.o new file mode 100644 index 0000000000000000000000000000000000000000..d4ee4ef69001d5013523c1aceb89a254a20f0ba2 GIT binary patch literal 6564 zcmeHMF>Vw=5S%+e0*L^!l?a_6BM}igg@}M3oDSW|oMaox-UKJ`0RF>g_yjLlrnk0S z-7|YQg4N!!lBc_?tE;Mh#4WvLmKfthv)r$?wyB}8+?xpFdE0txk7$3~0dn)+ z*iWxrwW%;}TO!20(mZ|suCwX=Z~yU)YjmDl$Ej^AkJMZ8mXt9*B40UwUmJQ4dvRad zzq_q}C-i-1V&ngB`F6O4kE8FmARF3>6vvyeNICL}d9LNehG&Rsz}CqMa99C8Be21w zQXTm|(Fd13qXK7R|HzGKtn^HuVej#&IRz~$%PA}iedc}4T3Rqw1AH7Ub)-+VF$*mz z-q%a2u`()91?md9NxzGRb0|R{G?Z%orQX z9`;p41d6~*9xK(AUeqC4TPjfBIuJ9qaG*Nnkr&mGS8iWyxPMPRk}ogL6niQ%zE@Qy zdXa}3Ux_?V-3^c!*UCVsM-{zApI26Mv(oPzdx~3k-GjQ*%Xa-S+x8mv6TR!tn{~UcNBR?z=jgwAEC*8l+JQNTn0uHd wC%esAK0f51yl#)%w~@SBdNN?y*wcK^$E)7OLA~cWwA$fmeq`r_QMNtrH?lR$Hvj+t literal 0 HcmV?d00001 diff --git a/build-cg/map b/build-cg/map new file mode 100644 index 0000000..dd160eb --- /dev/null +++ b/build-cg/map @@ -0,0 +1,597 @@ +Archive member included to satisfy reference by file (symbol) + +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) + build-cg/src/main.c.o (_getkey) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) (_pollevent) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) (_timer_setup) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) (_inth_tmu) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) + build-cg/src/main.c.o (_dimage) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) + build-cg/src/main.c.o (_dclear) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) (_bopti_render_clip) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) + build-cg/src/main.c.o (_dupdate) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dvram.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) (_gint_vram) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) (_gint) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + (_start) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) (_gint_install) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) (_gint_intlevel) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) (_r61524_display) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) (_clock_freq) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memory.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) (_memcpy) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) (_dma_memset) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) (_dma_transfer) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) (_inth_dma_te) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti-asm.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) (_bopti_r5g6b5) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(mmu.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) (_utlb_mapped_memory) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) (_gint_panic) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) (_gint_exch_tlbh) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.S.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) (_gint_inth_7305) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(vbr.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) (_gint_setvbr) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) (_dfont) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) (_dprint) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) (_dtext) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(drect.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) (_drect) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti-asm.s.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) (_topti_glyph_fg_bg) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(font8x9.png.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) (_gint_font8x9) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) (_vsnprintf) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(string.c.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) (_strlen) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_movmem.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) (___movmemSI24) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) (___udivdi3) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) (___umoddi3) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) (___udiv_qrnnd_16) +/home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) (___clz_tab) + +Discarded input sections + + .comment 0x0000000000000000 0x12 build-cg/src/main.c.o + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dvram.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memory.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(mmu.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(drect.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(string.c.o) + .debug_info 0x0000000000000000 0x737 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_abbrev 0x0000000000000000 0x218 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_loc 0x0000000000000000 0x6d5 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_aranges + 0x0000000000000000 0x20 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_ranges 0x0000000000000000 0xf0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_line 0x0000000000000000 0x28f /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_str 0x0000000000000000 0x5a6 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .eh_frame 0x0000000000000000 0x80 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .debug_info 0x0000000000000000 0x746 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_abbrev 0x0000000000000000 0x229 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_loc 0x0000000000000000 0x6ef /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_aranges + 0x0000000000000000 0x20 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_ranges 0x0000000000000000 0x108 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_line 0x0000000000000000 0x2e5 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_str 0x0000000000000000 0x5a6 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .eh_frame 0x0000000000000000 0x90 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .debug_info 0x0000000000000000 0x371 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + .debug_abbrev 0x0000000000000000 0xcf /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + .debug_aranges + 0x0000000000000000 0x18 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + .debug_line 0x0000000000000000 0xe2 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + .debug_str 0x0000000000000000 0x523 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + .comment 0x0000000000000000 0x12 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + +Memory Configuration + +Name Origin Length Attributes +rom 0x0000000000300000 0x0000000000037000 xr +ram 0x0000000008102000 0x000000000007e000 rw +vbr 0x000000008c160000 0x0000000000001400 xrw +rram 0x000000008c161400 0x0000000000000c00 xrw +ilram 0x00000000e5200000 0x0000000000001000 xrw +xram 0x00000000e5007000 0x0000000000002000 xrw +yram 0x00000000e5017000 0x0000000000002000 xrw +*default* 0x0000000000000000 0xffffffffffffffff + +Linker script and memory map + +LOAD build-cg/src/main.c.o +LOAD build-cg/assets/fonts/island.png.o +LOAD build-cg/assets/img/title.png.o +LOAD build-cg/assets/img/player.png.o +LOAD /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a +LOAD /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a +LOAD /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a + 0x0000000000300000 _brom = 0x300000 + 0x00000000000064d4 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) + +.text 0x0000000000300000 0x37b0 + *(.pretext.entry) + .pretext.entry + 0x0000000000300000 0x1a4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + 0x0000000000300000 _start + *(.pretext) + .pretext 0x00000000003001a4 0x40 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + 0x00000000003001a4 _hw_detect + .pretext 0x00000000003001e4 0x30 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + .pretext 0x0000000000300214 0x110 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + 0x0000000000300214 _dfont + 0x000000000030022c _charset_size + 0x0000000000300258 _charset_decode + 0x00000000003002c6 _topti_offset + .pretext 0x0000000000300324 0x23c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + 0x0000000000300324 _topti_render + 0x0000000000300514 _dtext + .pretext 0x0000000000300560 0xc4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti-asm.s.o) + 0x0000000000300560 _topti_glyph_fg_bg + 0x000000000030059e _topti_glyph_fg + 0x00000000003005d8 _topti_glyph_bg + 0x0000000000300624 _btors = . + *(.ctors .ctors.*) + 0x0000000000300624 _mtors = . + *(.dtors .dtors.*) + 0x0000000000300624 _etors = . + 0x0000000000300624 _gint_exch_tlbh_start = . + *(.gint.exch_tlbh) + *fill* 0x0000000000300624 0xc + .gint.exch_tlbh + 0x0000000000300630 0x4c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.s.o) + 0x0000000000300630 _gint_exch_tlbh + 0x0000000000000058 _gint_exch_tlbh_size = ABSOLUTE ((. - _gint_exch_tlbh_start)) + *(.text .text.*) + .text 0x000000000030067c 0x0 build-cg/src/main.c.o + .text.startup 0x000000000030067c 0x108 build-cg/src/main.c.o + 0x000000000030067c _main + .text 0x0000000000300784 0x1f0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) + 0x0000000000300784 _getkey_opt + 0x000000000030092c _getkey + 0x0000000000300938 _getkey_repeat + .text 0x0000000000300974 0x3ac /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + 0x0000000000300acc _pollevent + 0x0000000000300c10 _waitevent + 0x0000000000300c5c _clearevents + 0x0000000000300c7c _keydown + 0x0000000000300ca8 _keydown_all + 0x0000000000300ce4 _keydown_any + .text 0x0000000000300d20 0x4cc /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + 0x0000000000300fa8 _timer_setup + 0x0000000000301038 _timer_delay + 0x0000000000301098 _timer_start + 0x00000000003010cc _timer_reload + 0x00000000003010ec _timer_pause + 0x0000000000301120 _timer_stop + 0x000000000030117c _timer_timeout + 0x0000000000301188 _timer_address + 0x00000000003011bc _timer_clear + .text 0x00000000003011ec 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .text 0x00000000003011ec 0x40 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) + 0x00000000003011ec _dimage + 0x0000000000301214 _dsubimage + .text 0x000000000030122c 0x1c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) + 0x000000000030122c _dclear + .text 0x0000000000301248 0x1e4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) + 0x0000000000301248 _bopti_render + 0x0000000000301338 _bopti_render_clip + 0x0000000000301400 _bopti_render_noclip + .text 0x000000000030142c 0x3c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) + 0x000000000030142c _dupdate + 0x0000000000301450 _dupdate_noint + .text 0x0000000000301468 0x4c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dvram.c.o) + 0x0000000000301468 _dvram + 0x0000000000301494 _dvram_switch + .text 0x00000000003014b4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + .text 0x00000000003014b4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + .text 0x00000000003014b4 0x104 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + 0x0000000000301520 _gint_install + 0x00000000003015a0 _gint_unload + .text 0x00000000003015b8 0x5c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + 0x00000000003015b8 _gint_intlevel + 0x00000000003015f0 _gint_inthandler + .text 0x0000000000301614 0x2d4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + 0x0000000000301664 _r61524_win_get + 0x000000000030171c _r61524_win_set + 0x00000000003017dc _r61524_display + .text 0x00000000003018e8 0xc8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + 0x00000000003019a4 _clock_freq + .text 0x00000000003019b0 0xdc /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memory.c.o) + 0x00000000003019b0 _memcpy + 0x0000000000301a6a __memmove + 0x0000000000301a6e __memcmp + 0x0000000000301a72 _memset + .text 0x0000000000301a8c 0x4c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + 0x0000000000301a8c _dma_memset + .text 0x0000000000301ad8 0x3f8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + 0x0000000000301dac _dma_transfer + 0x0000000000301dec _dma_transfer_wait + 0x0000000000301e64 _dma_transfer_noint + .text 0x0000000000301ed0 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .text 0x0000000000301ed0 0x100 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti-asm.s.o) + 0x0000000000301ed0 _bopti_r5g6b5 + 0x0000000000301f20 _bopti_r5g6b5a + 0x0000000000301f50 _bopti_p8 + 0x0000000000301f80 _bopti_p4 + .text 0x0000000000301fd0 0xf8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(mmu.c.o) + 0x0000000000301fd0 _utlb_addr + 0x0000000000301fe0 _utlb_data + 0x0000000000301ff0 _utlb_mapped_memory + .text 0x00000000003020c8 0x2e4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + 0x0000000000302370 _gint_panic + 0x0000000000302380 _gint_panic_set + 0x0000000000302394 _gint_exc_catch + 0x00000000003023a0 _gint_exc_skip + .text 0x00000000003023ac 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.s.o) + .text 0x00000000003023ac 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.S.o) + .text 0x00000000003023ac 0x2c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(vbr.s.o) + 0x00000000003023ac _gint_setvbr + .text 0x00000000003023d8 0x9c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + 0x00000000003023d8 _dsize + .text 0x0000000000302474 0x58 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) + 0x0000000000302474 _dprint + .text 0x00000000003024cc 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .text 0x00000000003024cc 0xc0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(drect.c.o) + 0x00000000003024cc _drect + .text 0x000000000030258c 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti-asm.s.o) + .text 0x000000000030258c 0xce4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + 0x0000000000302f88 _kprint_opt + 0x00000000003030d0 _kprint + 0x00000000003031a8 _kvsprint + 0x00000000003031f0 _sprintf + 0x0000000000303218 _vsprintf + 0x0000000000303238 _snprintf + 0x0000000000303258 _vsnprintf + .text 0x0000000000303270 0x7c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(string.c.o) + 0x0000000000303270 _strlen + 0x0000000000303280 _strncpy + 0x0000000000303298 _strcat + 0x00000000003032dc _strcmp + .text 0x00000000003032ec 0x78 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_movmem.o) + 0x00000000003032ec ___movstr + 0x00000000003032ec ___movmem + 0x0000000000303320 ___movmemSI64 + 0x0000000000303320 ___movstrSI64 + 0x0000000000303324 ___movstrSI60 + 0x0000000000303324 ___movmemSI60 + 0x0000000000303328 ___movmemSI56 + 0x0000000000303328 ___movstrSI56 + 0x000000000030332c ___movstrSI52 + 0x000000000030332c ___movmemSI52 + 0x0000000000303330 ___movstrSI48 + 0x0000000000303330 ___movmemSI48 + 0x0000000000303334 ___movstrSI44 + 0x0000000000303334 ___movmemSI44 + 0x0000000000303338 ___movstrSI40 + 0x0000000000303338 ___movmemSI40 + 0x000000000030333c ___movstrSI36 + 0x000000000030333c ___movmemSI36 + 0x0000000000303340 ___movmemSI32 + 0x0000000000303340 ___movstrSI32 + 0x0000000000303344 ___movmemSI28 + 0x0000000000303344 ___movstrSI28 + 0x0000000000303348 ___movstrSI24 + 0x0000000000303348 ___movmemSI24 + 0x000000000030334c ___movmemSI20 + 0x000000000030334c ___movstrSI20 + 0x0000000000303350 ___movstrSI16 + 0x0000000000303350 ___movmemSI16 + 0x0000000000303354 ___movmemSI12 + 0x0000000000303354 ___movstrSI12 + 0x0000000000303358 ___movmemSI8 + 0x0000000000303358 ___movstrSI8 + 0x000000000030335c ___movmemSI4 + 0x000000000030335c ___movstrSI4 + .text 0x0000000000303364 0x1e0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + 0x0000000000303364 ___udivdi3 + .text 0x0000000000303544 0x208 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + 0x0000000000303544 ___umoddi3 + *fill* 0x000000000030374c 0x4 + .text 0x0000000000303750 0x60 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) + 0x0000000000303750 ___udiv_qrnnd_16 + .text 0x00000000003037b0 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + +.gint.blocks 0x00000000003037b0 0x140 + *(.gint.blocks) + .gint.blocks 0x00000000003037b0 0xe0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + 0x00000000003037b0 _inth_tmu + 0x0000000000303830 _inth_etmu2 + 0x0000000000303850 _inth_etmu_help + 0x0000000000303870 _inth_etmux + .gint.blocks 0x0000000000303890 0x40 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + 0x0000000000303890 _inth_dma_te + 0x00000000003038b0 _inth_dma_ae + .gint.blocks 0x00000000003038d0 0x20 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.S.o) + 0x00000000003038d0 _gint_inth_7305 + +.gint.drivers 0x00000000003038f0 0xc8 + 0x00000000003038f0 _bdrv = . + *(.gint.drivers.0) + *(.gint.drivers.1) + .gint.drivers.1 + 0x00000000003038f0 0x28 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + 0x00000000003038f0 _drv_cpg + *(.gint.drivers.2) + .gint.drivers.2 + 0x0000000000303918 0x28 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + 0x0000000000303918 _drv_tmu + .gint.drivers.2 + 0x0000000000303940 0x28 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + 0x0000000000303940 _drv_dma0 + *(.gint.drivers.3) + *(.gint.drivers.4) + .gint.drivers.4 + 0x0000000000303968 0x28 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + 0x0000000000303968 _drv_keysc + *(.gint.drivers.5) + .gint.drivers.5 + 0x0000000000303990 0x28 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + 0x0000000000303990 _drv_r61524 + *(.gint.drivers.6) + 0x00000000003039b8 _edrv = . + +.rodata 0x00000000003039b8 0x2b1c + *(.rodata.4) + *(.rodata .rodata.*) + .rodata 0x00000000003039b8 0x24c build-cg/assets/fonts/island.png.o + 0x00000000003039b8 _font_island + 0x0000000000303c04 _font_island_end + .rodata 0x0000000000303c04 0x1808 build-cg/assets/img/title.png.o + 0x0000000000303c04 _img_title + 0x000000000030540c _img_title_end + .rodata 0x000000000030540c 0x808 build-cg/assets/img/player.png.o + 0x000000000030540c _img_player + 0x0000000000305c14 _img_player_end + .rodata.str1.4 + 0x0000000000305c14 0x6 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + *fill* 0x0000000000305c1a 0x2 + .rodata.str1.4 + 0x0000000000305c1c 0x4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .rodata.str1.4 + 0x0000000000305c20 0x7 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + *fill* 0x0000000000305c27 0x1 + .rodata.str1.4 + 0x0000000000305c28 0x4 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + .rodata 0x0000000000305c2c 0x30 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + .rodata.str1.4 + 0x0000000000305c5c 0x5 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + *fill* 0x0000000000305c61 0x3 + .rodata.str1.4 + 0x0000000000305c64 0x288 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + 0x28c (size before relaxing) + .rodata 0x0000000000305eec 0x18 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .rodata 0x0000000000305f04 0x49c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(font8x9.png.o) + 0x0000000000305f04 _gint_font8x9 + 0x00000000003063a0 _gint_font8x9_end + .rodata.str1.4 + 0x00000000003063a0 0x31 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + *fill* 0x00000000003063d1 0x3 + .rodata 0x00000000003063d4 0x100 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + 0x00000000003063d4 ___clz_tab + +.rela.dyn 0x00000000003064d4 0x0 + .rela.text.startup + 0x00000000003064d4 0x0 build-cg/src/main.c.o + .rela.pretext.entry + 0x00000000003064d4 0x0 build-cg/src/main.c.o + .rela.text 0x00000000003064d4 0x0 build-cg/src/main.c.o + .rela.pretext 0x00000000003064d4 0x0 build-cg/src/main.c.o + 0x0000000008102000 . = ORIGIN (ram) + +.bss 0x0000000008102000 0x150 + 0x0000000008102000 _rbss = . + *(.bss COMMON) + .bss 0x0000000008102000 0x0 build-cg/src/main.c.o + .bss 0x0000000008102000 0xc /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) + .bss 0x000000000810200c 0x24 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dvram.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memory.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti-asm.s.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(mmu.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.s.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.S.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(vbr.s.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(drect.c.o) + .bss 0x0000000008102030 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti-asm.s.o) + .bss 0x0000000008102030 0x114 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(string.c.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_movmem.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) + .bss 0x0000000008102144 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + 0x0000000008102150 . = ALIGN (0x10) + *fill* 0x0000000008102144 0xc + 0x0000000000000150 _sbss = SIZEOF (.bss) + +.data 0x0000000008102150 0x90 load address 0x00000000003064d4 + 0x00000000003064d4 _ldata = LOADADDR (.data) + 0x0000000008102150 _rdata = . + *(.data .data.*) + .data 0x0000000008102150 0x0 build-cg/src/main.c.o + .data 0x0000000008102150 0x8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(getkey.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dimage.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dclear.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti.c.o) + .data 0x0000000008102158 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dupdate.c.o) + .data 0x0000000008102158 0xc /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dvram.c.o) + 0x0000000008102158 _gint_vram + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(start.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memory.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.s.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(bopti-asm.s.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(mmu.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.s.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(inth.S.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(vbr.s.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + .data 0x0000000008102164 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dprint.c.o) + .data 0x0000000008102164 0x8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti.c.o) + 0x0000000008102164 _topti_font + 0x0000000008102168 _gint_default_font + .data 0x000000000810216c 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(drect.c.o) + .data 0x000000000810216c 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(topti-asm.s.o) + .data 0x000000000810216c 0x68 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(stdio.c.o) + 0x000000000810216c _kprint_formatters + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(string.c.o) + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_movmem.o) + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udivdi3.o) + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_umoddi3.o) + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_udiv_qrnnd_16.o) + .data 0x00000000081021d4 0x0 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/m4-nofpu/libgcc.a(_clz.o) + 0x00000000081021e0 . = ALIGN (0x10) + *fill* 0x00000000081021d4 0xc + +.data.4 0x00000000081021e0 0x0 load address 0x0000000000306564 + *(.data.4) + 0x00000000081021e0 . = ALIGN (0x10) + 0x0000000000000090 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) + 0x00000000e5200000 . = ORIGIN (ilram) + +.ilram 0x00000000e5200000 0x20 load address 0x0000000000306564 + 0x0000000000306564 _lilram = LOADADDR (.ilram) + 0x00000000e5200000 _rilram = . + *(.ilram) + .ilram 0x00000000e5200000 0x20 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(memset.c.o) + 0x00000000e5200020 . = ALIGN (0x10) + 0x00000000e5007000 . = ORIGIN (xram) + +.xram 0x00000000e5007000 0x0 load address 0x0000000000306584 + 0x0000000000306584 _lxram = LOADADDR (.xram) + 0x00000000e5007000 _rxram = . + *(.xram) + 0x00000000e5007000 . = ALIGN (0x10) + 0x00000000e5017000 . = ORIGIN (yram) + +.yram 0x00000000e5017000 0x0 load address 0x0000000000306584 + 0x0000000000306584 _lyram = LOADADDR (.yram) + 0x00000000e5017000 _ryram = . + *(.yram) + 0x00000000e5017000 . = ALIGN (0x10) + 0x0000000000000020 _silram = SIZEOF (.ilram) + 0x0000000000000000 _sxram = SIZEOF (.xram) + 0x0000000000000000 _syram = SIZEOF (.yram) + 0x000000008c15ff00 _gint_vbr = (ORIGIN (vbr) - 0x100) + 0x000000008c161400 . = ORIGIN (rram) + +.gint.data 0x000000008c161400 0xe0 load address 0x0000000000306584 + 0x0000000000306584 _lgdata = LOADADDR (.gint.data) + 0x000000008c161400 _rgdata = . + *(.gint.data .gint.data.*) + .gint.data 0x000000008c161400 0x24 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + .gint.data 0x000000008c161424 0x70 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .gint.data 0x000000008c161494 0x10 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + 0x000000008c161494 _SH7305_INTC + .gint.data.sh3 + 0x000000008c1614a4 0x24 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(gint.c.o) + 0x000000008c1614a4 _SH7705_INTC + .gint.data 0x000000008c1614c8 0x8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + .gint.data 0x000000008c1614d0 0x8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(exch.c.o) + 0x000000008c1614d0 _gint_exc_catcher + 0x000000008c1614d4 _gint_exc_panic + 0x000000008c1614e0 . = ALIGN (0x10) + *fill* 0x000000008c1614d8 0x8 + 0x00000000000000e0 _sgdata = SIZEOF (.gint.data) + +.gint.bss 0x000000008c1614e0 0x300 load address 0x0000000000306664 + *(.gint.bss .gint.bss.*) + .gint.bss 0x000000008c1614e0 0x180 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(keysc.c.o) + .gint.bss 0x000000008c161660 0x88 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(tmu.c.o) + .gint.bss 0x000000008c1616e8 0x40 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(hardware.c.o) + 0x000000008c1616e8 _gint + .gint.bss 0x000000008c161728 0x1c /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(setup.c.o) + .gint.bss 0x000000008c161744 0x8 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(r61524.c.o) + .gint.bss 0x000000008c16174c 0x24 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(cpg.c.o) + .gint.bss 0x000000008c161770 0x68 /home/leno/opt/sh-elf-2.34-9.3.0/lib/gcc/sh3eb-elf/9.3.0/libgint-cg.a(dma.c.o) + 0x000000008c1617e0 . = ALIGN (0x10) + *fill* 0x000000008c1617d8 0x8 + 0x0000000000000300 _sgbss = SIZEOF (.gint.bss) + +/DISCARD/ + *(.gint.bss.sh3) + *(.gint.data.sh3) + *(.debug_info .debug_abbrev .debug_loc .debug_aranges .debug_ranges .debug_line .debug_str) + *(.jcr) + *(.eh_frame_hdr) + *(.eh_frame) + *(.comment) +OUTPUT(build-cg/Test01.elf elf32-sh) diff --git a/build-cg/src/main.c.d b/build-cg/src/main.c.d new file mode 100644 index 0000000..f82d9f9 --- /dev/null +++ b/build-cg/src/main.c.d @@ -0,0 +1 @@ +build-cg/src/main.c.o: src/main.c diff --git a/build-cg/src/main.c.o b/build-cg/src/main.c.o new file mode 100644 index 0000000000000000000000000000000000000000..ca0f1bab9d7457bceb2e13453e3fda2ce5114af6 GIT binary patch literal 1332 zcmb7DO=uHA6n>M|nl!Oyw^aN&G^?Pst-BlbP;J0U)%H-V9t01(g69T`sHX}Q1bY!Aco5>7-JK>`5b?px`@ZkJ`PsK`?pz$Z zL_!31j6g5q2BGCKasf`e89mSr5oP%+C=a%X@^t;Avi2R6_v43$qTBFE`K*3a(~C&I`T5|=CX64=Ri~@Bszw!}Q&qSJ5%=rJ@}qLO{LIBo zQ?1rSIT;xqKAY$nxqR(-;*5MsR=M8ncWT)RwI7Y4mZmxbAP)uNDAf%~Yn{3IZOFr( zM#7>O@8CIc4;%>aBLOZ4cq+gz1o&8hUk`8^;JGGlQX?;CKw};>%bvNZ8F|C;p{--c z6`f3;i+YY)1w9K|Hj~q-jovWnqz;;4PHI+;F6c~~wX)Pf(OYep2q$%CT3=wtZ(y1D zf7k?waJ&W3&ha;ZD976XF^+!%?BVzqKnKUa0rvWsxj4u8j|30Pg$2{0X^;z!?fEH= z9DUva8E;HMP8SLw+xV3-Q!$y^&a4G;X2vvitipfTA, replace spaces with dashes, +# and add .g1a (or .g3a). You can specify a different folder if you want. +TARGET_FX := +TARGET_CG := + +# fx-9860G icon location +ICON_FX = assets-fx/icon-fx.png +# fx-CG 50 icon locations +ICON_CG_UNS = assets-cg/icon-cg-uns.png +ICON_CG_SEL = assets-cg/icon-cg-sel.png + +#--- +# Toolchain selection +#--- + +# Toolchain for fx9860g. Please see also CFLAGS_FX below. +TOOLCHAIN_FX := sh-elf + +# Toolchain for fxcg50. Please see also CFLAGS_CG below. +TOOLCHAIN_CG := sh-elf + +#--- +# Compiler flags +#--- + +# Base compiler flags for the fxSDK, you usually want to keep these. +CFLAGS := -mb -ffreestanding -nostdlib -fstrict-volatile-bitfields + +# Platform-specific compiler flags. +# <> If you are using sh3eb-elf, use -m3. (You can do this on both FX and CG.) +# <> If you are using sh4eb-elf, use -m4-nofpu. (Not ideal on FX but works.) +# <> If you are using sh4eb-nofpu-elf, then your compiler will likely use the +# FPU and cause problems on the calculator. Consider another configuration. +# <> If you are using an sh-elf with several targets, specify whichever you +# support. I recommend -m3 on FX and -m4-nofpu on CG. +# Please see also TOOLCHAIN_FX and TOOLCHAIN_CG above. +CFLAGS_FX := -D FX9860G -m3 +CFLAGS_CG := -D FXCG50 -m4-nofpu + +# Additional compiler flags, change to your own taste! +CFLAGS += -Wall -Wextra -Os + +# Include paths. Add one -I option for each folder from which you want to +# be able to include files with #include<>. +INCLUDE := -I include + +# Libraries. Add one -l option for each library you are using, and also +# suitable -L options if you have library files in custom folders. To use +# fxlib, add libfx.a to the project directory and use "-L . -lfx". +LIBS_FX := +LIBS_CG := + +# Base linker flags for the fxSDK, you usually want to keep these. +LDFLAGS_FX := -T fx9860g.ld -lgint-fx $(LIBS_FX) -lgint-fx -lgcc +LDFLAGS_CG := -T fxcg50.ld -lgint-cg $(LIBS_CG) -lgint-cg -lgcc + +# Additional linker flags, if you need any. +LDFLAGS := + +# Additional platform-specific linker flags. +LDFLAGS_FX += -Wl,-Map=build-fx/map +LDFLAGS_CG += -Wl,-Map=build-cg/map + +#--- +# File conversion parameters +#--- + +# Here you can add fxconv options for each converted file, individually. +# The syntax is ".". For example, to specify the parameters for a +# font named "hexa.png", you might write: +# +# FONT.hexa.png = charset:print grid.size:3x5 grid.padding:1 \ No newline at end of file diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..7b7a3bb --- /dev/null +++ b/src/main.c @@ -0,0 +1,47 @@ +#include +#include +//#include + +int main(void) +{ + extern image_t img_player; + int x = 0; + int y = 0; + int speed = 2; + + //prof_init(1, 0); + //uint32_t delta = 0; + int delta = 1; + + while(1) + { + ///prof_enter(1); + dclear(C_WHITE); + dimage(x, y, &img_player); + dupdate(); + //prof_leave(1); + //delta = prof_time(1) * 100000/3;*/ + + switch(getkey().key) + { + case KEY_UP: + y -= speed * delta; + break; + case KEY_DOWN: + y += speed * delta; + break; + case KEY_LEFT: + x -= speed * delta; + break; + case KEY_RIGHT: + x += speed * delta; + break; + case KEY_EXE: + return 0; + } + + } + + //prof_quit(); + return 0; +} \ No newline at end of file