summaryrefslogtreecommitdiff
path: root/arm9
diff options
context:
space:
mode:
Diffstat (limited to 'arm9')
-rw-r--r--arm9/Makefile4
-rw-r--r--arm9/arm9.lsf56
-rw-r--r--arm9/asm/FX_arm9.s1
-rw-r--r--arm9/asm/secure.s6
-rw-r--r--arm9/asm/unk_02046030.s2
-rw-r--r--arm9/global.inc2
6 files changed, 65 insertions, 6 deletions
diff --git a/arm9/Makefile b/arm9/Makefile
index 9f61364b..0cff252a 100644
--- a/arm9/Makefile
+++ b/arm9/Makefile
@@ -75,6 +75,8 @@ MWCCARM := $(TOOLS_DIR)/mwccarm/$(MWCCVERSION)/mwccarm.exe
# only dependency should be MWCCARM.
MWLDARM := $(TOOLS_DIR)/mwccarm/$(MWCCVERSION)/mwldarm.exe
MWASMARM := $(TOOLS_DIR)/mwccarm/$(MWCCVERSION)/mwasmarm.exe
+MAKELSF := $(WINE) $(TOOLS_DIR)/bin/makelcf.exe
+MAKELSF_FLAGS := -DCONST_34=0x34 -DCONST_3F=0x3F $(foreach module,$(wildcard files/OVERLAY_*.bin.__AT_*),-M${module})
AS := $(WINE) $(MWASMARM)
CC := $(WINE) $(MWCCARM)
@@ -148,7 +150,7 @@ $(BUILD_DIR)/%.o: %.s
$(AS) $(ASFLAGS) $< -o $@
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT) $(LD_TEMPLATE) undefined_syms.txt macros.lcf.inc
- # $(MAKELSF) $< $(LD_TEMPLATE) | $(CPP) $(VERSION_CFLAGS) -MMD -MP -MT $@ -MF $@.d -I include/ -I . -DBUILD_DIR=$(BUILD_DIR) -o $@
+ # $(MAKELSF) $(MAKELSF_FLAGS) $< $(LD_TEMPLATE) $@
$(CPP) $(VERSION_CFLAGS) -MMD -MP -MT $@ -MF $@.d -I include/ -I . -DBUILD_DIR=$(BUILD_DIR) -o $@ $<
$(ELF): $(O_FILES) $(BUILD_DIR)/$(LD_SCRIPT) $(BIN_FILES)
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index e69de29b..da885c0e 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -0,0 +1,56 @@
+
+Static arm9
+{
+ Address 0x02000000
+ Object main.o
+ Object FUN_02000DF4.o
+ Object unk_02000E0C.o
+ Object rom2.o
+ Object string_util.o
+ Object unk_020023C0.o
+ Object filesystem.o
+ Object unk_02006864.o
+ Object script.o
+ Object unk_02038C78.o
+ Object scrcmd.o
+ Object unk_02046030.o
+ Object unk_0208AC14.o
+ Object unk_020AF030.o
+ Object FX_arm9.o
+ Object GX_arm9.o
+ Object OS_arm9.o (.text)
+ Object MI_arm9.o
+ Object SND_arm9.o
+ Object PXI_arm9.o
+ Object FS_arm9.o
+ Object DGT_arm9.o
+ Object CP_arm9.o
+ Object SPI_arm9.o
+ Object PM_arm9.o
+ Object RTC_arm9.o
+ Object CARD_arm9.o
+ Object WM_arm9.o
+ Object CTRDG_arm9.o
+ Object MATH_arm9.o
+ Object STD_arm9.o
+ Object libc.o
+ Object libmwcc.o
+ Object rom2_2.o
+}
+
+Autoload ITCM
+{
+ Address 0x01FF8000
+ Object arm9_itcm.o (.itcm)
+}
+
+Autoload DTCM
+{
+ Address 0x027E0000
+ Object OS_arm9.o (.dtcm)
+}
+
+Autoload EXT
+{
+ Address 0x023E0000
+}
diff --git a/arm9/asm/FX_arm9.s b/arm9/asm/FX_arm9.s
index 68dec58c..61f797b2 100644
--- a/arm9/asm/FX_arm9.s
+++ b/arm9/asm/FX_arm9.s
@@ -1989,3 +1989,4 @@ _020C5970: .word 0x00000FFF
arm_func_start FX_Init
FX_Init: ; 0x020C5974
bx lr
+
diff --git a/arm9/asm/secure.s b/arm9/asm/secure.s
index f9d8f159..88ced857 100644
--- a/arm9/asm/secure.s
+++ b/arm9/asm/secure.s
@@ -5,11 +5,11 @@
.incbin "baserom.nds", 0x4000, 0x19E
- non_word_aligned_thumb_func_start FUN_0200019E
-FUN_0200019E: ; 0x0200019E
+ non_word_aligned_thumb_func_start SVC_Sqrt
+SVC_Sqrt: ; 0x0200019E
swi 13
bx lr
- thumb_func_end FUN_0200019E
+ thumb_func_end SVC_Sqrt
.incbin "baserom.nds", 0x41A2, 0x15C
diff --git a/arm9/asm/unk_02046030.s b/arm9/asm/unk_02046030.s
index 30b8ee4c..b70ef94e 100644
--- a/arm9/asm/unk_02046030.s
+++ b/arm9/asm/unk_02046030.s
@@ -107533,7 +107533,7 @@ FUN_020799F4: ; 0x020799F4
mul r0, r1
add r0, r2, r0
lsl r0, r0, #0x4
- bl FUN_0200019E
+ bl SVC_Sqrt
lsr r0, r0, #0x2
pop {r3, pc}
.balign 4
diff --git a/arm9/global.inc b/arm9/global.inc
index 9791c8f8..a3c04f6c 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -50,7 +50,7 @@
.extern FS_UnloadOverlay
.extern FS_WaitAsync
.extern FUNRTC_Init
-.extern FUN_0200019E
+.extern SVC_Sqrt
.extern FUN_020002FE
.extern FUN_02000DF4
.extern FUN_02000E7C