Merge branch 'master' into master

This commit is contained in:
PikalaxALT
2020-05-13 20:13:53 -04:00
committed by GitHub
109 changed files with 97130 additions and 1160 deletions

View File

@@ -265,8 +265,10 @@ $(CXX_OBJS): $(BUILD_DIR)/%.o: %.cpp $$(dep)
$(S_OBJS): $(BUILD_DIR)/%.o: %.s $$(dep)
$(AS) $(ASFLAGS) -o $@ $<
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT) $(LD_TEMPLATE) undefined_syms.txt macros.lcf.inc
# $(MAKELSF) $(MAKELSF_FLAGS) $< $(LD_TEMPLATE) $@
# $(BUILD_DIR)/$(LD_SCRIPT): $(LD_SPEC) $(LD_TEMPLATE)
# $(MAKELSF) $(MAKELSF_FLAGS) $^ $@
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT)
$(CPP) $(VERSION_CFLAGS) -MMD -MP -MT $@ -MF $@.d -I include/ -I . -DBUILD_DIR=$(BUILD_DIR) -o $@ $<
$(ROM): $(O_FILES) $(BUILD_DIR)/$(LD_SCRIPT) $(BIN_FILES)

View File

@@ -1,4 +1,7 @@
#include "macros.lcf.inc"
/*
* Linker command file for Metrowerks ARM Linker 2.0
* TODO: Split .rodata, .data, .sbss, .bss sections in source
*/
MEMORY {
arm9 (RWX) : ORIGIN=0x02000000, LENGTH=0 > arm9.sbin
@@ -110,7 +113,6 @@ MEMORY {
}
SECTIONS {
#include "undefined_syms.txt"
.arm9 : {
ALIGNALL(4); . = ALIGN(32);
SDK_STATIC_START = .;
@@ -2940,7 +2942,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_76_ID = 76;
SDK_OVERLAY.MODULE_76.ID = 76;
SDK_OVERLAY.MODULE_76.START = .;
FILE_2D5C00.o (.text) /* 0x2D1C00 */
module_76.o (.text)
module_76.o (.rodata)
module_76.o (.init)
SDK_OVERLAY.MODULE_76.SINIT_START = .;
module_76.o (.ctor)
module_76.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_76.SINIT_END = .;
. = ALIGN(32);
module_76.o (.sdata)
module_76.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_76.END = .;
SDK_OVERLAY.MODULE_76.SIZE = SDK_OVERLAY.MODULE_76.END - SDK_OVERLAY.MODULE_76.START;
@@ -2950,7 +2962,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_76.BSS_START = .;
FILE_2D5C00.o (.bss)
module_76.o (.bss)
module_76.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_76.BSS_END = .;
SDK_OVERLAY.MODULE_76.BSS_SIZE = SDK_OVERLAY.MODULE_76.BSS_END - SDK_OVERLAY.MODULE_76.BSS_START;
@@ -2961,7 +2974,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_77_ID = 77;
SDK_OVERLAY.MODULE_77.ID = 77;
SDK_OVERLAY.MODULE_77.START = .;
FILE_2D7C00.o (.text) /* 0x2D3C00 */
module_77.o (.text)
module_77.o (.rodata)
module_77.o (.init)
SDK_OVERLAY.MODULE_77.SINIT_START = .;
module_77.o (.ctor)
module_77.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_77.SINIT_END = .;
. = ALIGN(32);
module_77.o (.sdata)
module_77.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_77.END = .;
SDK_OVERLAY.MODULE_77.SIZE = SDK_OVERLAY.MODULE_77.END - SDK_OVERLAY.MODULE_77.START;
@@ -2971,7 +2994,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_77.BSS_START = .;
FILE_2D7C00.o (.bss)
module_77.o (.bss)
module_77.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_77.BSS_END = .;
SDK_OVERLAY.MODULE_77.BSS_SIZE = SDK_OVERLAY.MODULE_77.BSS_END - SDK_OVERLAY.MODULE_77.BSS_START;
@@ -2982,7 +3006,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_78_ID = 78;
SDK_OVERLAY.MODULE_78.ID = 78;
SDK_OVERLAY.MODULE_78.START = .;
FILE_2D9800.o (.text) /* 0x2D5800 */
module_78.o (.text)
module_78.o (.rodata)
module_78.o (.init)
SDK_OVERLAY.MODULE_78.SINIT_START = .;
module_78.o (.ctor)
module_78.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_78.SINIT_END = .;
. = ALIGN(32);
module_78.o (.sdata)
module_78.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_78.END = .;
SDK_OVERLAY.MODULE_78.SIZE = SDK_OVERLAY.MODULE_78.END - SDK_OVERLAY.MODULE_78.START;
@@ -2992,7 +3026,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_78.BSS_START = .;
FILE_2D9800.o (.bss)
module_78.o (.bss)
module_78.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_78.BSS_END = .;
SDK_OVERLAY.MODULE_78.BSS_SIZE = SDK_OVERLAY.MODULE_78.BSS_END - SDK_OVERLAY.MODULE_78.BSS_START;
@@ -3003,7 +3038,24 @@ SECTIONS {
SDK_OVERLAY_MODULE_79_ID = 79;
SDK_OVERLAY.MODULE_79.ID = 79;
SDK_OVERLAY.MODULE_79.START = .;
FILE_2D9E00.o (.text) /* 0x2D5E00 */
module_79_thumb.o (.text)
module_79_arm.o (.text)
module_79_thumb.o (.rodata)
module_79_arm.o (.rodata)
module_79_thumb.o (.init)
module_79_arm.o (.init)
SDK_OVERLAY.MODULE_79.SINIT_START = .;
module_79_thumb.o (.ctor)
module_79_arm.o (.ctor)
module_79_thumb.o (.sinit)
module_79_arm.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_79.SINIT_END = .;
. = ALIGN(32);
module_79_thumb.o (.sdata)
module_79_arm.o (.sdata)
module_79_thumb.o (.data)
module_79_arm.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_79.END = .;
SDK_OVERLAY.MODULE_79.SIZE = SDK_OVERLAY.MODULE_79.END - SDK_OVERLAY.MODULE_79.START;
@@ -3013,7 +3065,10 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_79.BSS_START = .;
FILE_2D9E00.o (.bss)
module_79_thumb.o (.bss)
module_79_arm.o (.bss)
module_79_thumb.o (.sbss)
module_79_arm.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_79.BSS_END = .;
SDK_OVERLAY.MODULE_79.BSS_SIZE = SDK_OVERLAY.MODULE_79.BSS_END - SDK_OVERLAY.MODULE_79.BSS_START;
@@ -3024,7 +3079,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_80_ID = 80;
SDK_OVERLAY.MODULE_80.ID = 80;
SDK_OVERLAY.MODULE_80.START = .;
FILE_2DF200.o (.text) /* 0x2DB200 */
module_80.o (.text)
module_80.o (.rodata)
module_80.o (.init)
SDK_OVERLAY.MODULE_80.SINIT_START = .;
module_80.o (.ctor)
module_80.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_80.SINIT_END = .;
. = ALIGN(32);
module_80.o (.sdata)
module_80.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_80.END = .;
SDK_OVERLAY.MODULE_80.SIZE = SDK_OVERLAY.MODULE_80.END - SDK_OVERLAY.MODULE_80.START;
@@ -3034,7 +3099,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_80.BSS_START = .;
FILE_2DF200.o (.bss)
module_80.o (.bss)
module_80.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_80.BSS_END = .;
SDK_OVERLAY.MODULE_80.BSS_SIZE = SDK_OVERLAY.MODULE_80.BSS_END - SDK_OVERLAY.MODULE_80.BSS_START;
@@ -3045,7 +3111,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_81_ID = 81;
SDK_OVERLAY.MODULE_81.ID = 81;
SDK_OVERLAY.MODULE_81.START = .;
FILE_2E9A00.o (.text) /* 0x2E5A00 */
module_81.o (.text)
module_81.o (.rodata)
module_81.o (.init)
SDK_OVERLAY.MODULE_81.SINIT_START = .;
module_81.o (.ctor)
module_81.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_81.SINIT_END = .;
. = ALIGN(32);
module_81.o (.sdata)
module_81.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_81.END = .;
SDK_OVERLAY.MODULE_81.SIZE = SDK_OVERLAY.MODULE_81.END - SDK_OVERLAY.MODULE_81.START;
@@ -3055,7 +3131,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_81.BSS_START = .;
FILE_2E9A00.o (.bss)
module_81.o (.bss)
module_81.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_81.BSS_END = .;
SDK_OVERLAY.MODULE_81.BSS_SIZE = SDK_OVERLAY.MODULE_81.BSS_END - SDK_OVERLAY.MODULE_81.BSS_START;
@@ -3066,7 +3143,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_82_ID = 82;
SDK_OVERLAY.MODULE_82.ID = 82;
SDK_OVERLAY.MODULE_82.START = .;
FILE_2EF000.o (.text) /* 0x2EB000 */
module_82.o (.text)
module_82.o (.rodata)
module_82.o (.init)
SDK_OVERLAY.MODULE_82.SINIT_START = .;
module_82.o (.ctor)
module_82.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_82.SINIT_END = .;
. = ALIGN(32);
module_82.o (.sdata)
module_82.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_82.END = .;
SDK_OVERLAY.MODULE_82.SIZE = SDK_OVERLAY.MODULE_82.END - SDK_OVERLAY.MODULE_82.START;
@@ -3076,7 +3163,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_82.BSS_START = .;
FILE_2EF000.o (.bss)
module_82.o (.bss)
module_82.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_82.BSS_END = .;
SDK_OVERLAY.MODULE_82.BSS_SIZE = SDK_OVERLAY.MODULE_82.BSS_END - SDK_OVERLAY.MODULE_82.BSS_START;
@@ -3087,7 +3175,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_83_ID = 83;
SDK_OVERLAY.MODULE_83.ID = 83;
SDK_OVERLAY.MODULE_83.START = .;
FILE_2F1600.o (.text) /* 0x2ED600 */
module_83.o (.text)
module_83.o (.rodata)
module_83.o (.init)
SDK_OVERLAY.MODULE_83.SINIT_START = .;
module_83.o (.ctor)
module_83.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_83.SINIT_END = .;
. = ALIGN(32);
module_83.o (.sdata)
module_83.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_83.END = .;
SDK_OVERLAY.MODULE_83.SIZE = SDK_OVERLAY.MODULE_83.END - SDK_OVERLAY.MODULE_83.START;
@@ -3097,7 +3195,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_83.BSS_START = .;
FILE_2F1600.o (.bss)
module_83.o (.bss)
module_83.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_83.BSS_END = .;
SDK_OVERLAY.MODULE_83.BSS_SIZE = SDK_OVERLAY.MODULE_83.BSS_END - SDK_OVERLAY.MODULE_83.BSS_START;
@@ -3108,7 +3207,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_84_ID = 84;
SDK_OVERLAY.MODULE_84.ID = 84;
SDK_OVERLAY.MODULE_84.START = .;
FILE_2FFA00.o (.text) /* 0x2FBA00 */
module_84.o (.text)
module_84.o (.rodata)
module_84.o (.init)
SDK_OVERLAY.MODULE_84.SINIT_START = .;
module_84.o (.ctor)
module_84.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_84.SINIT_END = .;
. = ALIGN(32);
module_84.o (.sdata)
module_84.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_84.END = .;
SDK_OVERLAY.MODULE_84.SIZE = SDK_OVERLAY.MODULE_84.END - SDK_OVERLAY.MODULE_84.START;
@@ -3118,7 +3227,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_84.BSS_START = .;
FILE_2FFA00.o (.bss)
module_84.o (.bss)
module_84.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_84.BSS_END = .;
SDK_OVERLAY.MODULE_84.BSS_SIZE = SDK_OVERLAY.MODULE_84.BSS_END - SDK_OVERLAY.MODULE_84.BSS_START;
@@ -3129,7 +3239,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_85_ID = 85;
SDK_OVERLAY.MODULE_85.ID = 85;
SDK_OVERLAY.MODULE_85.START = .;
FILE_303400.o (.text) /* 0x2FF400 */
module_85.o (.text)
module_85.o (.rodata)
module_85.o (.init)
SDK_OVERLAY.MODULE_85.SINIT_START = .;
module_85.o (.ctor)
module_85.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_85.SINIT_END = .;
. = ALIGN(32);
module_85.o (.sdata)
module_85.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_85.END = .;
SDK_OVERLAY.MODULE_85.SIZE = SDK_OVERLAY.MODULE_85.END - SDK_OVERLAY.MODULE_85.START;
@@ -3139,7 +3259,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_85.BSS_START = .;
FILE_303400.o (.bss)
module_85.o (.bss)
module_85.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_85.BSS_END = .;
SDK_OVERLAY.MODULE_85.BSS_SIZE = SDK_OVERLAY.MODULE_85.BSS_END - SDK_OVERLAY.MODULE_85.BSS_START;
@@ -3150,7 +3271,17 @@ SECTIONS {
SDK_OVERLAY_MODULE_86_ID = 86;
SDK_OVERLAY.MODULE_86.ID = 86;
SDK_OVERLAY.MODULE_86.START = .;
FILE_30C600.o (.text) /* 0x308600 */
module_86.o (.text)
module_86.o (.rodata)
module_86.o (.init)
SDK_OVERLAY.MODULE_86.SINIT_START = .;
module_86.o (.ctor)
module_86.o (.sinit)
WRITEW 0;
SDK_OVERLAY.MODULE_86.SINIT_END = .;
. = ALIGN(32);
module_86.o (.sdata)
module_86.o (.data)
. = ALIGN(32);
SDK_OVERLAY.MODULE_86.END = .;
SDK_OVERLAY.MODULE_86.SIZE = SDK_OVERLAY.MODULE_86.END - SDK_OVERLAY.MODULE_86.START;
@@ -3160,7 +3291,8 @@ SECTIONS {
{
ALIGNALL(4); . = ALIGN(32);
SDK_OVERLAY.MODULE_86.BSS_START = .;
FILE_30C600.o (.bss)
module_86.o (.bss)
module_86.o (.sbss)
. = ALIGN(32);
SDK_OVERLAY.MODULE_86.BSS_END = .;
SDK_OVERLAY.MODULE_86.BSS_SIZE = SDK_OVERLAY.MODULE_86.BSS_END - SDK_OVERLAY.MODULE_86.BSS_START;
@@ -3975,17 +4107,105 @@ SECTIONS {
WRITEW 75;
WRITEW 0;
OVERLAY_TABLE(MODULE_76, 76)
OVERLAY_TABLE(MODULE_77, 77)
OVERLAY_TABLE(MODULE_78, 78)
OVERLAY_TABLE(MODULE_79, 79)
OVERLAY_TABLE(MODULE_80, 80)
OVERLAY_TABLE(MODULE_81, 81)
OVERLAY_TABLE(MODULE_82, 82)
OVERLAY_TABLE(MODULE_83, 83)
OVERLAY_TABLE(MODULE_84, 84)
OVERLAY_TABLE(MODULE_85, 85)
OVERLAY_TABLE(MODULE_86, 86)
WRITEW 76;
WRITEW ADDR(.MODULE_76);
WRITEW SDK_OVERLAY.MODULE_76.SIZE;
WRITEW SDK_OVERLAY.MODULE_76.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_76.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_76.SINIT_END;
WRITEW 76;
WRITEW 0;
WRITEW 77;
WRITEW ADDR(.MODULE_77);
WRITEW SDK_OVERLAY.MODULE_77.SIZE;
WRITEW SDK_OVERLAY.MODULE_77.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_77.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_77.SINIT_END;
WRITEW 77;
WRITEW 0;
WRITEW 78;
WRITEW ADDR(.MODULE_78);
WRITEW SDK_OVERLAY.MODULE_78.SIZE;
WRITEW SDK_OVERLAY.MODULE_78.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_78.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_78.SINIT_END;
WRITEW 78;
WRITEW 0;
WRITEW 79;
WRITEW ADDR(.MODULE_79);
WRITEW SDK_OVERLAY.MODULE_79.SIZE;
WRITEW SDK_OVERLAY.MODULE_79.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_79.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_79.SINIT_END;
WRITEW 79;
WRITEW 0;
WRITEW 80;
WRITEW ADDR(.MODULE_80);
WRITEW SDK_OVERLAY.MODULE_80.SIZE;
WRITEW SDK_OVERLAY.MODULE_80.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_80.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_80.SINIT_END;
WRITEW 80;
WRITEW 0;
WRITEW 81;
WRITEW ADDR(.MODULE_81);
WRITEW SDK_OVERLAY.MODULE_81.SIZE;
WRITEW SDK_OVERLAY.MODULE_81.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_81.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_81.SINIT_END;
WRITEW 81;
WRITEW 0;
WRITEW 82;
WRITEW ADDR(.MODULE_82);
WRITEW SDK_OVERLAY.MODULE_82.SIZE;
WRITEW SDK_OVERLAY.MODULE_82.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_82.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_82.SINIT_END;
WRITEW 82;
WRITEW 0;
WRITEW 83;
WRITEW ADDR(.MODULE_83);
WRITEW SDK_OVERLAY.MODULE_83.SIZE;
WRITEW SDK_OVERLAY.MODULE_83.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_83.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_83.SINIT_END;
WRITEW 83;
WRITEW 0;
WRITEW 84;
WRITEW ADDR(.MODULE_84);
WRITEW SDK_OVERLAY.MODULE_84.SIZE;
WRITEW SDK_OVERLAY.MODULE_84.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_84.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_84.SINIT_END;
WRITEW 84;
WRITEW 0;
WRITEW 85;
WRITEW ADDR(.MODULE_85);
WRITEW SDK_OVERLAY.MODULE_85.SIZE;
WRITEW SDK_OVERLAY.MODULE_85.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_85.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_85.SINIT_END;
WRITEW 85;
WRITEW 0;
WRITEW 86;
WRITEW ADDR(.MODULE_86);
WRITEW SDK_OVERLAY.MODULE_86.SIZE;
WRITEW SDK_OVERLAY.MODULE_86.BSS_SIZE;
WRITEW SDK_OVERLAY.MODULE_86.SINIT_START;
WRITEW SDK_OVERLAY.MODULE_86.SINIT_END;
WRITEW 86;
WRITEW 0;
} > arm9_table
SDK_MAIN_ARENA_LO = SDK_SECTION_ARENA_START;

View File

@@ -2,110 +2,112 @@
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 FUN_020910A4.o
Object unk_020910EC.o
Object unk_020AF030.o
Object FX_mtx22.o
Object FX_mtx33.o
Object FX_mtx43.o
Object FX_mtx44.o
Object FX_cp.o
Object FX_vec.o
Object FX_atan.o
Object FX.o
Object GX.o
Object GX_state.o
Object GX_vramcnt.o
Object GX_bgcnt.o
Object GX_g2.o
Object GX_g3b.o
Object GX_g3imm.o
Object GX_g3x.o
Object GX_g3_util.o
Object GX_load2d.o
Object GX_load3d.o
Object GX_g3.o
Object GX_asm.o
Object OS_irqHandler.o
Object OS_irqTable.o
Object OS_interrupt.o
Object OS_spinLock.o
Object OS_printf.o
Object OS_thread.o
Object OS_context.o
Object OS_emulator.o
Object OS_message.o
Object OS_mutex.o
Object OS_cache.o
Object OS_init.o
Object OS_arena.o
Object OS_alloc.o
Object OS_tcm.o
Object OS_protectionUnit.o
Object OS_protectionRegion.o
Object OS_exception.o
Object OS_timer.o
Object OS_tick.o
Object OS_alarm.o
Object OS_valarm.o
Object OS_system.o
Object OS_reset.o
Object OS_ownerInfo.o
Object OS_vramExclusive.o
Object OS_entropy.o
Object OS_terminate_proc.o
Object MI_wram.o
Object MI_dma.o
Object MI_dma_hblank.o
Object MI_dma_gxcommand.o
Object MI_memory.o
Object MI_swap.o
Object MI_uncompress.o
Object MI_dma_card.o
Object MI_init.o
Object SND_interface.o
Object SND_main.o
Object SND_command.o
Object SND_alarm.o
Object SND_work.o
Object SND_util.o
Object SND_bank.o
Object PXI_init.o
Object PXI_fifo.o
Object rom2_2.o
Object FS_command.o
Object FS_command_default.o
Object FS_archive.o
Object FS_file.o
Object FS_rom.o
Object FS_overlay.o
Object libdgt.o
Object libcp.o
Object libspi.o
Object libpm.o
Object librtc.o
Object libcard.o
Object libwm.o
Object libctrdg.o
Object libmath.o
Object libstd.o
Object libc.o
Object rom2_3.o
Object libmwcc.o
Object rom2_4.o
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 FUN_020910A4.o
Object unk_020910EC.o
Object unk_020AF030.o
Object FX_mtx22.o
Object FX_mtx33.o
Object FX_mtx43.o
Object FX_mtx44.o
Object FX_cp.o
Object FX_vec.o
Object FX_atan.o
Object FX.o
Object GX.o
Object GX_state.o
Object GX_vramcnt.o
Object GX_bgcnt.o
Object GX_g2.o
Object GX_g3b.o
Object GX_g3imm.o
Object GX_g3x.o
Object GX_g3_util.o
Object GX_load2d.o
Object GX_load3d.o
Object GX_g3.o
Object GX_asm.o
Object OS_irqHandler.o
Object OS_irqTable.o
Object OS_interrupt.o
Object OS_spinLock.o
Object OS_printf.o
Object OS_thread.o
Object OS_context.o
Object OS_emulator.o
Object OS_message.o
Object OS_mutex.o
Object OS_cache.o
Object OS_init.o
Object OS_arena.o
Object OS_alloc.o
Object OS_tcm.o
Object OS_protectionUnit.o
Object OS_protectionRegion.o
Object OS_exception.o
Object OS_timer.o
Object OS_tick.o
Object OS_alarm.o
Object OS_valarm.o
Object OS_system.o
Object OS_reset.o
Object OS_ownerInfo.o
Object OS_vramExclusive.o
Object OS_entropy.o
Object OS_terminate_proc.o
Object MI_wram.o
Object MI_dma.o
Object MI_dma_hblank.o
Object MI_dma_gxcommand.o
Object MI_memory.o
Object MI_swap.o
Object MI_uncompress.o
Object MI_dma_card.o
Object MI_init.o
Object SND_interface.o
Object SND_main.o
Object SND_command.o
Object SND_alarm.o
Object SND_work.o
Object SND_util.o
Object SND_bank.o
Object PXI_init.o
Object PXI_fifo.o
Object rom2_2.o
Object FS_command.o
Object FS_command_default.o
Object FS_archive.o
Object FS_file.o
Object FS_rom.o
Object FS_overlay.o
Object DGT_hash1.o
Object DGT_hash2.o
Object DGT_sha1s_arm4cw.o
Object libcp.o
Object libspi.o
Object libpm.o
Object librtc.o
Object libcard.o
Object libwm.o
Object libctrdg.o
Object libmath.o
Object libstd.o
Object libc.o
Object rom2_3.o
Object libmwcc.o
Object rom2_4.o
}
Autoload ITCM
@@ -297,270 +299,270 @@ Overlay MODULE_32
Overlay MODULE_33
{
Address 0x02254840
Object FILE_28DE00.o
Object module_33.o
}
Overlay MODULE_34
{
Address 0x02254840
Object FILE_28E200.o
Object module_34.o
}
Overlay MODULE_35
{
Address 0x02254840
Object FILE_28E800.o
Object module_35.o
}
Overlay MODULE_36
{
Address 0x02254840
Object FILE_28F200.o
Object module_36.o
}
Overlay MODULE_37
{
Address 0x02254840
Object FILE_290000.o
Object module_37.o
}
Overlay MODULE_38
{
Address 0x02254840
Object FILE_290600.o
Object module_38.o
}
Overlay MODULE_39
{
Address 0x02254840
Object FILE_291200.o
Object module_39.o
}
Overlay MODULE_40
{
Address 0x02254840
Object FILE_292000.o
Object module_40.o
}
Overlay MODULE_41
{
Address 0x02254840
Object FILE_292E00.o
Object module_41.o
}
Overlay MODULE_42
{
Address 0x02254840
Object FILE_294000.o
Object module_42.o
}
Overlay MODULE_43
{
Address 0x02254840
Object FILE_294A00.o
Object module_43.o
}
Overlay MODULE_44
{
Address 0x02254840
Object FILE_295400.o
Object module_44.o
}
Overlay MODULE_45
{
Address 0x02254840
Object FILE_295A00.o
Object module_45.o
}
Overlay MODULE_46
{
Address 0x02254840
Object FILE_296400.o
Object module_46.o
}
Overlay MODULE_47
{
Address 0x02254840
Object FILE_296800.o
Object module_47.o
}
Overlay MODULE_48
{
Address 0x02254840
Object FILE_297600.o
Object module_48.o
}
Overlay MODULE_49
{
Address 0x02254840
Object FILE_298000.o
Object module_49.o
}
Overlay MODULE_50
{
Address 0x02254840
Object FILE_298600.o
Object module_50.o
}
Overlay MODULE_51
{
Address 0x02254840
Object FILE_298A00.o
Object module_51.o
}
Overlay MODULE_52
{
Address 0x021D74E0
Object FILE_299A00.o
Object module_52.o
}
Overlay MODULE_53
{
Address 0x021D74E0
Object FILE_299E00.o
Object module_53.o
}
Overlay MODULE_54
{
Address 0x021D74E0
Object FILE_29C400.o
Object module_54.o
}
Overlay MODULE_55
{
Address 0x021D74E0
Object FILE_29E800.o
Object module_55.o
}
Overlay MODULE_56
{
Address 0x02211E60
Object FILE_2A1A00.o
Object module_56.o
}
Overlay MODULE_57
{
Address 0x021D74E0
Object FILE_2A6200.o
Object module_57.o
}
Overlay MODULE_58
{
Address 0x021D9A20
Object FILE_2A8800.o
Object module_58.o
}
Overlay MODULE_59
{
Address 0x021D74E0
Object FILE_2A9E00.o
Object module_59.o
}
Overlay MODULE_60
{
Address 0x021D74E0
Object FILE_2ACC00.o
Object module_60.o
}
Overlay MODULE_61
{
Address 0x021D74E0
Object FILE_2ADA00.o
Object module_61.o
}
Overlay MODULE_62
{
Address 0x0222D5C0
Object FILE_2AEC00.o
Object module_62.o
}
Overlay MODULE_63
{
Address 0x021D74E0
Object FILE_2B2A00.o
Object module_63.o
}
Overlay MODULE_64
{
Address 0x021D74E0
Object FILE_2B7600.o
Object module_64.o
}
Overlay MODULE_65
{
Address 0x021D74E0
Object FILE_2B9400.o
Object module_65.o
}
Overlay MODULE_66
{
Address 0x021D74E0
Object FILE_2BC400.o
Object module_66.o
}
Overlay MODULE_67
{
Address 0x021D74E0
Object FILE_2BEC00.o
Object module_67.o
}
Overlay MODULE_68
{
Address 0x021D74E0
Object FILE_2C1200.o
Object module_68.o
}
Overlay MODULE_69
{
Address 0x0222D5C0
Object FILE_2C2800.o
Object module_69.o
}
Overlay MODULE_70
{
Address 0x021D74E0
Object FILE_2C4C00.o
Object module_70.o
}
Overlay MODULE_71
{
Address 0x0222D5C0
Object FILE_2C5C00.o
Object module_71.o
}
Overlay MODULE_72
{
Address 0x021D74E0
Object FILE_2C9C00.o
Object module_72.o
}
Overlay MODULE_73
{
Address 0x021D74E0
Object FILE_2C9E00.o
Object module_73.o
}
Overlay MODULE_74
{
Address 0x021D74E0
Object FILE_2CEA00.o
Object module_74.o
}
Overlay MODULE_75
{
Address 0x021E6BA0
Object FILE_2CFE00.o
Object module_75.o
}
Overlay MODULE_76
{
Address 0x021D74E0
Object FILE_2D5C00.o
Object module_76.o
}
Overlay MODULE_77
{
Address 0x021D74E0
Object FILE_2D7C00.o
Object module_77.o
}
Overlay MODULE_78
{
Address 0x021D74E0
Object FILE_2D9800.o
Object module_78.o
}
Overlay MODULE_79
{
Address 0x02211E60
Object FILE_2D9E00.o
Object module_79.o
}
Overlay MODULE_80
{
Address 0x0222D5C0
Object FILE_2DF200.o
Object module_80.o
}
Overlay MODULE_81
{
Address 0x02237E40
Object FILE_2E9A00.o
Object module_81.o
}
Overlay MODULE_82
{
Address 0x0222D5C0
Object FILE_2EF000.o
Object module_82.o
}
Overlay MODULE_83
{
Address 0x0222D5C0
Object FILE_2F1600.o
Object module_83.o
}
Overlay MODULE_84
{
Address 0x021D74E0
Object FILE_2FFA00.o
Object module_84.o
}
Overlay MODULE_85
{
Address 0x021D74E0
Object FILE_303400.o
Object module_85.o
}
Overlay MODULE_86
{
Address 0x021D74E0
Object FILE_30C600.o
Object module_86.o
}

View File

@@ -3,7 +3,14 @@
.section .text
.incbin "baserom.nds", 0x4000, 0x19E
.incbin "baserom.nds", 0x4000, 0xC8
non_word_aligned_thumb_func_start SVC_GetCRC16
SVC_GetCRC16: ; 0x020000C8
swi 14
bx lr
thumb_func_end SVC_GetCRC16
.incbin "baserom.nds", 0x40CC, 0xD2
non_word_aligned_thumb_func_start SVC_Sqrt
SVC_Sqrt: ; 0x0200019E

View File

@@ -127956,21 +127956,21 @@ FUN_02083BAC: ; 0x02083BAC
add r0, r4, #0x0
mov r1, #0x1b
mov r2, #0x0
bl FUN_0222F440
bl MOD70_0222F440
b _02083C14
_02083BF6:
bl FUN_02031190
ldr r1, _02083C20 ; =0x00002218
ldr r2, [r4, #0x50]
ldr r1, [r4, r1]
bl FUN_0222F480
bl MOD70_0222F480
b _02083C14
_02083C06:
bl FUN_02031190
ldr r1, _02083C20 ; =0x00002218
ldr r2, [r4, #0x50]
ldr r1, [r4, r1]
bl FUN_0222F480
bl MOD70_0222F480
_02083C14:
ldr r0, [r4, #0x50]
add r0, r0, #0x1
@@ -131937,8 +131937,8 @@ FUN_020859C0: ; 0x020859C0
lsl r2, r2, #0x12
bl FUN_0201681C
mov r0, #0x35
bl FUN_02230F3C
bl FUN_0222F7E0
bl MOD62_02230F3C
bl MOD62_0222F7E0
ldr r1, _02085BA0 ; =0x0000042C
add r0, r5, #0x0
mov r2, #0x35
@@ -131947,7 +131947,7 @@ FUN_020859C0: ; 0x020859C0
mov r1, #0x0
add r4, r0, #0x0
bl Call_FillMemWithValue
bl FUN_0222E2BC
bl MOD62_0222E2BC
mov r1, #0x23
lsl r1, r1, #0x4
str r0, [r4, r1]
@@ -132083,8 +132083,8 @@ _02085A9A:
add r0, r4, #0x0
add r0, #0xe4
ldr r0, [r0, #0x0]
bl FUN_02230F80
bl FUN_0222E360
bl MOD62_02230F80
bl MOD62_0222E360
mov r0, #0x35
bl FUN_02006D98
mov r1, #0x69
@@ -132108,7 +132108,7 @@ _02085A9A:
ldr r0, [r0, #0x0]
ldr r1, [r1, #0x0]
add r2, r5, #0x0
bl FUN_0222ED34
bl MOD62_0222ED34
add r0, r4, #0x0
add r1, r4, #0x0
add r0, #0xe4
@@ -132116,20 +132116,20 @@ _02085A9A:
ldr r0, [r0, #0x0]
ldr r1, [r1, #0x0]
add r2, r5, #0x0
bl FUN_0222EDBC
bl MOD62_0222EDBC
add r0, r4, #0x0
add r0, #0xd4
bl FUN_0222E7E8
bl MOD62_0222E7E8
bl FUN_0201CC08
mov r0, #0x4
bl FUN_0201CC24
add r0, r4, #0x0
bl FUN_022300E4
bl MOD62_022300E4
ldr r0, _02085BAC ; =0x022310CD
add r1, r4, #0x0
bl FUN_02015F10
add r0, r4, #0x0
bl FUN_0222DD1C
bl MOD62_0222DD1C
mov r1, #0x0
mov r0, #0x3b
add r2, r1, #0x0
@@ -132175,7 +132175,7 @@ _02085BE6:
lsl r0, r0, #0x2
ldr r0, [r4, r0]
bl FUN_02006ED4
bl FUN_0222E3A0
bl MOD62_0222E3A0
b _02085C02
_02085BF6:
bl FUN_0200E308
@@ -132292,7 +132292,7 @@ FUN_02085C08: ; 0x02085C08
ldr r0, [r4, r0]
bl FUN_02016A18
add r0, r4, #0x0
bl FUN_0222DAEC
bl MOD62_0222DAEC
mov r0, #0x73
lsl r0, r0, #0x2
ldr r0, [r4, r0]
@@ -132306,17 +132306,17 @@ FUN_02085C08: ; 0x02085C08
ldr r0, [r4, r0]
bl FUN_02014C28
add r0, r4, #0x0
bl FUN_0222DD38
bl MOD62_0222DD38
add r0, r4, #0x0
add r0, #0xd4
bl FUN_0222E874
bl MOD62_0222E874
bl FUN_0201C29C
mov r0, #0x23
lsl r0, r0, #0x4
ldr r0, [r4, r0]
bl FUN_020223BC
mov r0, #0x35
bl FUN_02230F70
bl MOD62_02230F70
add r0, r5, #0x0
bl FUN_0200627C
bl FUN_0201CD04

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x10C400, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x10C600, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x10C800, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x10CA00, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x10CC00, 0x386E0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x145400, 0x261A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x16B600, 0x18D80

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x184400, 0x32E0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x187800, 0x1B760

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x1A3000, 0xA1A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x1AD200, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x1AD400, 0x329E0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x1DFE00, 0x19260

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x1F9200, 0x2EBE0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x227E00, 0xF520

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x237400, 0x4680

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x23BC00, 0x28500

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x264200, 0x6E80

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x26B200, 0x17CE0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x283000, 0x100

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x283200, 0x2400

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x285600, 0x5C0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x285C00, 0xF00

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x286C00, 0x1900

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x288600, 0x9A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x289000, 0x560

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x289600, 0x800

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x289E00, 0xBA0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28AA00, 0x1780

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28C200, 0x900

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28CC00, 0x600

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28D200, 0x600

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28D800, 0x4A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28DE00, 0x320

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28E200, 0x4C0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28E800, 0x9A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x28F200, 0xCC0

View File

@@ -1,5 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x290000, 0x560
.section .bss
.space 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x290600, 0xB40

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x291200, 0xCC0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x292000, 0xC60

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x292E00, 0x1140

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x294000, 0x900

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x294A00, 0x9C0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x295400, 0x4A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x295A00, 0x940

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x296400, 0x320

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x296800, 0xCA0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x297600, 0x8A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x298000, 0x600

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x298600, 0x320

View File

@@ -1,5 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x298A00, 0xFC0
.section .bss
.space 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x299A00, 0x400

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x299E00, 0x2480

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x29C400, 0x2380

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x29E800, 0x3040

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2A1A00, 0x47A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2A6200, 0x2540

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2A8800, 0x15A0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2A9E00, 0x2C20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2ACC00, 0xD00

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2ADA00, 0x1080

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2AEC00, 0x3DE0

View File

@@ -1,6 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2B2A00, 0x4AC0
.section .bss
.space 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2B7600, 0x1C40

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2B9400, 0x3000

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2BC400, 0x2660

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2BEC00, 0x2440

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C1200, 0x1600

View File

@@ -1,6 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C2800, 0x23A0
.section .bss
.space 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C4C00, 0xE20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C5C00, 0x3EC0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C9C00, 0x20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2C9E00, 0x4AE0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2CEA00, 0x1220

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2CFE00, 0x5DE0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2D5C00, 0x1E20

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2D7C00, 0x1BE0

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2D9800, 0x460

View File

@@ -1,5 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2D9E00, 0x52C0
.section .bss
.space 0x40

View File

@@ -1,6 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2DF200, 0xA720
.section .bss
.space 0x160

View File

@@ -1,5 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2E9A00, 0x5580
.section .bss
.space 0xa0

View File

@@ -1,6 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2EF000, 0x2540
.section .bss
.space 0x120

View File

@@ -1,5 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2F1600, 0xE2A0
.section .bss
.space 0x1980

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x2FFA00, 0x3920

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x303400, 0x9100

View File

@@ -1,4 +0,0 @@
.include "asm/macros.inc"
.section .text
.incbin "baserom.nds", 0x30C600, 0x820

View File

@@ -3011,38 +3011,38 @@
.extern MOD05_021F61DC
.extern MOD05_021F61E8
.extern MOD07_02211E60
.extern FUN_02213B08
.extern FUN_02213D80
.extern FUN_02213DBC
.extern FUN_02213E24
.extern MOD79_02213B08
.extern MOD79_02213D80
.extern MOD79_02213DBC
.extern MOD79_02213E24
.extern MOD11_0222D5C0
.extern FUN_0222DAEC
.extern FUN_0222DD1C
.extern FUN_0222DD38
.extern FUN_0222E2BC
.extern FUN_0222E360
.extern FUN_0222E3A0
.extern FUN_0222E7E8
.extern FUN_0222E874
.extern FUN_0222EC60
.extern FUN_0222ED34
.extern FUN_0222EDBC
.extern FUN_0222F440
.extern FUN_0222F480
.extern FUN_0222F7E0
.extern MOD62_0222DAEC
.extern MOD62_0222DD1C
.extern MOD62_0222DD38
.extern MOD62_0222E2BC
.extern MOD62_0222E360
.extern MOD62_0222E3A0
.extern MOD62_0222E7E8
.extern MOD62_0222E874
.extern MOD69_0222EC60
.extern MOD62_0222ED34
.extern MOD62_0222EDBC
.extern MOD70_0222F440
.extern MOD70_0222F480
.extern MOD62_0222F7E0
.extern MOD12_0222F990
.extern MOD11_022300D4
.extern MOD11_022300DC
.extern FUN_022300E4
.extern MOD62_022300E4
.extern MOD11_022300E8
.extern MOD11_022300F4
.extern MOD11_02230100
.extern MOD11_0223010C
.extern MOD11_02230118
.extern MOD11_02230124
.extern FUN_02230F3C
.extern FUN_02230F70
.extern FUN_02230F80
.extern MOD62_02230F3C
.extern MOD62_02230F70
.extern MOD62_02230F80
.extern MOD11_02231344
.extern MOD11_02231350
.extern MOD11_0223135C
@@ -5801,6 +5801,175 @@
.extern MOD04_021D861C
.extern MOD04_021D8640
.extern MOD04_021D8678
.extern FUN_02029B08
.extern MOD04_021EB550
.extern MOD04_021DD904
.extern MOD04_021DD944
.extern MOD04_021EB3B8
.extern MOD04_021EB524
.extern MOD04_021EB59C
.extern MOD04_021EF820
.extern strncat
.extern fclose
.extern fread
.extern fseek
.extern ftell
.extern MOD04_021DD82C
.extern MOD04_021DD844
.extern MOD04_021DD860
.extern MOD04_021EEFA8
.extern MOD04_021EEFFC
.extern MOD04_021EF06C
.extern MOD04_021EF074
.extern MOD04_021EF0E4
.extern MOD04_021EFB28
.extern MOD04_021EFB38
.extern MOD04_021EFC24
.extern MOD04_021EFC78
.extern MOD04_021EFCE4
.extern MOD04_021EFD80
.extern MOD04_021EFD9C
.extern MOD04_021EFDB8
.extern MOD04_021EFF5C
.extern MOD04_021F0130
.extern MOD04_021F017C
.extern MOD04_021F0208
.extern MOD04_021F024C
.extern MOD04_021F0250
.extern MOD04_021F025C
.extern rewind
.extern strspn
.extern FUN_0200B84C
.extern FUN_02022840
.extern FUN_02022854
.extern FUN_02023830
.extern FUN_02023834
.extern FUN_02023A6C
.extern FUN_02023A74
.extern FUN_0202952C
.extern FUN_0202ABDC
.extern FUN_0202ABE4
.extern FUN_0202ABEC
.extern FUN_0202ABF8
.extern FUN_0202AC08
.extern FUN_0202AC10
.extern FUN_0202AC18
.extern FUN_0202E4F0
.extern FUN_02033288
.extern FUN_020332DC
.extern FUN_020335E0
.extern FUN_020337C8
.extern FUN_02033EEC
.extern FUN_0206B384
.extern FUN_020888BC
.extern FUN_020888CC
.extern FUN_0200CA7C
.extern FUN_02033F04
.extern FUN_02068E1C
.extern FUN_0202A524
.extern FUN_0202A60C
.extern FUN_0202A6B4
.extern FUN_0202A754
.extern FUN_0202A784
.extern FUN_0202A838
.extern MOD79_022122E4
.extern MOD79_02212308
.extern MOD79_022123A8
.extern MOD79_02212474
.extern MOD79_02212480
.extern FUN_02015D88
.extern FUN_02016444
.extern FUN_02016454
.extern FUN_0201AB1C
.extern FUN_0201AB20
.extern FUN_020224D8
.extern FUN_0202251C
.extern FUN_02023820
.extern FUN_0202AC28
.extern FUN_0202AC64
.extern FUN_0202AC98
.extern FUN_0202AD08
.extern FUN_0202ADC8
.extern FUN_0202ADF0
.extern FUN_0202AE0C
.extern FUN_0202AE4C
.extern FUN_0202AE70
.extern FUN_0202AE90
.extern FUN_0202AEF4
.extern FUN_0202AF24
.extern FUN_0202AF50
.extern FUN_0202AF60
.extern FUN_0202BF7C
.extern FUN_0202BF90
.extern FUN_0202C028
.extern FUN_0202C060
.extern FUN_0202C094
.extern FUN_0202C0B8
.extern FUN_0202F10C
.extern FUN_0202F124
.extern FUN_02031C74
.extern FUN_02031CA8
.extern FUN_02032D44
.extern FUN_02032D80
.extern FUN_02032D9C
.extern FUN_02033310
.extern FUN_02033364
.extern FUN_02068800
.extern FUN_0206E6D8
.extern FUN_02089F24
.extern SetCustomAllocator
.extern FUN_02008D04
.extern FUN_02024DAC
.extern FUN_020910EC
.extern FUN_0209521C
.extern FUN_020952AC
.extern FUN_02009CDC
.extern FUN_0201C348
.extern CTRDG_CpuCopy16
.extern CTRDG_CpuCopy32
.extern CTRDG_CpuCopy8
.extern CTRDG_Enable
.extern CTRDG_GetAgbGameCode
.extern CTRDG_GetAgbMakerCode
.extern CTRDG_IdentifyAgbBackup
.extern CTRDG_IsAgbCartridge
.extern CTRDG_Read32
.extern CTRDG_ReadAgbFlash
.extern CTRDG_TerminateForPulledOut
.extern CTRDG_WriteAndVerifyAgbFlashAsync
.extern SVC_GetCRC16
.extern MOD04_021DE330
.extern MOD04_021DDB40
.extern MOD04_021DDF40
.extern MOD04_021DE2D0
.extern MOD04_021DE308
.extern MOD04_021DE364
.extern MOD04_021DE3AC
.extern MOD04_021DE3D0
.extern MOD04_021DE404
.extern MOD04_021DE45C
.extern RTC_ConvertDayToDate
.extern MOD04_021DD808
.extern MOD04_021DD984
.extern MOD04_021DD9DC
.extern MOD04_021DDF4C
.extern MOD04_021DE05C
.extern MOD04_021DE1F8
.extern MOD56_0221244C
.extern MOD79_022122E4
.extern MOD79_02212308
.extern MOD79_022123A8
.extern MOD79_02212474
.extern MOD79_02212480
.extern FUN_02029B40
.extern FUN_02029C00
.extern FUN_02088D1C
.extern FUN_02088D20
.extern FUN_02088D4C
.extern FUN_02088D68
.extern FUN_02088D84
.extern FUN_02088DA0
.extern FUN_02088DBC
.extern FUN_020294F4
.extern FUN_02021C38
.extern FUN_0202822C

View File

@@ -1,9 +0,0 @@
#define OVERLAY_TABLE(module, number) \
WRITEW number; \
WRITEW SDK_OVERLAY_##module##_START; \
WRITEW SDK_OVERLAY_##module##_SIZE; \
WRITEW SDK_OVERLAY_##module##_BSSSIZE; \
WRITEW SDK_OVERLAY_##module##_STATIC_INIT_START; \
WRITEW SDK_OVERLAY_##module##_STATIC_INIT_END; \
WRITEW number; \
WRITEW 0;

View File

@@ -6128,6 +6128,9 @@ MOD04_021DE308: ; 0x021DE308
bl MOD04_02207158
add sp, sp, #4
ldmfd sp!, {pc}
arm_func_start MOD04_021DE330
MOD04_021DE330: ; 0x021DE330
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
@@ -21204,7 +21207,7 @@ _021EB430:
mov r0, r5
mov r3, r4
mov r1, #0
bl FUN_02213D80
bl MOD79_02213D80
movs r5, r0
bpl _021EB46C
bl MOD04_021EB25C
@@ -21280,10 +21283,13 @@ MOD04_021EB524: ; 0x021EB524
addne sp, sp, #4
movne r0, #0
ldmneia sp!, {pc}
bl FUN_02213B08
bl MOD79_02213B08
mov r0, #1
add sp, sp, #4
ldmfd sp!, {pc}
arm_func_start MOD04_021EB550
MOD04_021EB550:
stmdb sp!, {lr}
sub sp, sp, #4
ldr r0, _021EB598 ; =0x02210E44
@@ -21292,7 +21298,7 @@ MOD04_021EB524: ; 0x021EB524
addle sp, sp, #4
movle r0, #1
ldmleia sp!, {pc}
bl FUN_02213DBC
bl MOD79_02213DBC
ldr r0, _021EB598 ; =0x02210E44
ldr r1, [r0]
subs r1, r1, #1
@@ -21310,7 +21316,7 @@ _021EB598: .word 0x02210E44
MOD04_021EB59C: ; 0x021EB59C
stmdb sp!, {lr}
sub sp, sp, #4
bl FUN_02213E24
bl MOD79_02213E24
ldr r1, _021EB5C4 ; =0x02210E44
mov r0, #1
ldr r2, [r1]

View File

@@ -586,7 +586,7 @@ _0222DA74:
b _0222DAD4
_0222DA90:
mov r1, #0
bl FUN_0222EC60
bl MOD69_0222EC60
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,444 @@
.include "asm/macros.inc"
.include "global.inc"
.section .text
.balign 4, 0
thumb_func_start MOD78_021D74E0
MOD78_021D74E0: ; 0x021D74E0
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x18
mov r2, #2
add r5, r0, #0
mov r0, #3
mov r1, #0x48
lsl r2, r2, #0x10
bl FUN_0201681C
add r0, r5, #0
mov r1, #0xa0
mov r2, #0x48
bl FUN_02006268
mov r1, #0
mov r2, #0xa0
add r4, r0, #0
bl Call_FillMemWithValue
add r0, r5, #0
bl FUN_0200628C
add r5, r0, #0
add r0, r4, #0
ldrb r1, [r5]
add r0, #0x9c
strb r1, [r0]
add r0, r4, #0
mov r1, #0
add r0, #0x9d
strb r1, [r0]
mov r0, #0x48
bl FUN_0201EB64
str r0, [r4]
bl MOD78_021D7708
add r0, r4, #0
bl MOD78_021D778C
add r0, sp, #0xc
mov r1, #0
str r1, [r0]
str r1, [r0, #4]
str r1, [r0, #8]
str r1, [sp]
str r1, [sp, #4]
ldr r1, [r4]
ldr r2, _021D75C4 ; =0x021D789C
str r1, [sp, #8]
ldr r1, _021D75C8 ; =0x0029AEC1
ldr r3, _021D75CC ; =0x000005C1
bl FUN_0201ECA8
ldr r0, [r4]
bl FUN_0201EB8C
mov r4, #0
mov r7, #2
mov r6, #4
_021D7558:
ldr r2, [r5, #4]
mov r0, #6
add r1, r4, #0
mul r1, r0
add r3, r2, r1
ldrsh r1, [r2, r1]
ldrsh r2, [r3, r7]
ldrsh r3, [r3, r6]
add r0, r4, #0
bl FUN_020B8418
ldr r2, [r5, #4]
lsl r1, r4, #1
add r1, r2, r1
ldrh r1, [r1, #0x18]
add r0, r4, #0
bl FUN_020B8404
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, #4
blo _021D7558
ldr r2, [r5, #4]
ldrh r0, [r2, #0x20]
ldrh r1, [r2, #0x22]
ldr r2, [r2, #0x28]
bl FUN_020B83E0
ldr r2, [r5, #4]
ldrh r0, [r2, #0x24]
ldrh r1, [r2, #0x26]
ldr r2, [r2, #0x2c]
bl FUN_020B83BC
ldr r3, [r5, #4]
ldr r0, [r3, #0x40]
str r0, [sp]
ldr r0, [r3, #0x44]
str r0, [sp, #4]
ldr r0, [r3, #0x30]
ldr r1, [r3, #0x34]
ldr r2, [r3, #0x38]
ldr r3, [r3, #0x3c]
bl FUN_020B8390
mov r0, #0
mov r1, #0x48
bl FUN_02079A70
mov r0, #1
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
nop
_021D75C4: .word 0x021D789C
_021D75C8: .word 0x0029AEC1
_021D75CC: .word 0x000005C1
thumb_func_end MOD78_021D74E0
thumb_func_start MOD78_021D75D0
MOD78_021D75D0: ; 0x021D75D0
push {r3, r4, r5, r6, lr}
sub sp, #0x3c
ldr r6, _021D76AC ; =0x021D78AC
add r2, r0, #0
add r5, r1, #0
add r4, sp, #0x18
mov r3, #4
_021D75DE:
ldmia r6!, {r0, r1}
stmia r4!, {r0, r1}
sub r3, r3, #1
bne _021D75DE
ldr r0, [r6]
add r3, sp, #0xc
str r0, [r4]
ldr r4, _021D76B0 ; =0x021D787C
ldmia r4!, {r0, r1}
stmia r3!, {r0, r1}
ldr r0, [r4]
add r1, sp, #0
str r0, [r3]
mov r0, #0
str r0, [r1]
str r0, [r1, #4]
str r0, [r1, #8]
add r0, r2, #0
bl FUN_02006278
add r4, r0, #0
ldr r0, [r5]
cmp r0, #0
beq _021D7614
cmp r0, #1
beq _021D7622
b _021D7662
_021D7614:
ldr r0, _021D76B4 ; =0x000006DC
bl FUN_020054C8
ldr r0, [r5]
add r0, r0, #1
str r0, [r5]
b _021D7662
_021D7622:
add r0, r4, #0
add r0, #0x9d
ldrb r0, [r0]
cmp r0, #0
bne _021D7654
add r0, r4, #0
add r0, #0x80
ldr r2, [r0]
mov r0, #1
ldr r1, [r2]
lsl r0, r0, #0xc
add r1, r1, r0
ldr r0, [r2, #8]
ldrh r0, [r0, #4]
lsl r0, r0, #0xc
cmp r1, r0
bne _021D7662
add r1, r4, #0
mov r0, #1
add r1, #0x9d
strb r0, [r1]
mov r1, #0x48
bl FUN_02079A70
b _021D7662
_021D7654:
bl FUN_0200E308
cmp r0, #0
beq _021D7662
add sp, #0x3c
mov r0, #1
pop {r3, r4, r5, r6, pc}
_021D7662:
mov r3, #1
mov r2, #0
lsl r3, r3, #0xc
_021D7668:
lsl r0, r2, #2
add r0, r4, r0
add r0, #0x80
ldr r1, [r0]
ldr r5, [r1, #8]
ldr r0, [r1]
ldrh r5, [r5, #4]
add r0, r0, r3
lsl r5, r5, #0xc
cmp r0, r5
bge _021D7680
str r0, [r1]
_021D7680:
add r0, r2, #1
lsl r0, r0, #0x18
lsr r2, r0, #0x18
cmp r2, #4
blo _021D7668
bl FUN_020222AC
bl FUN_0201EBA4
add r0, r4, #4
add r1, sp, #0
add r2, sp, #0x18
add r3, sp, #0xc
bl FUN_0201B26C
mov r0, #1
add r1, r0, #0
bl FUN_020222B4
mov r0, #0
add sp, #0x3c
pop {r3, r4, r5, r6, pc}
.align 2, 0
_021D76AC: .word 0x021D78AC
_021D76B0: .word 0x021D787C
_021D76B4: .word 0x000006DC
thumb_func_end MOD78_021D75D0
thumb_func_start MOD78_021D76B8
MOD78_021D76B8: ; 0x021D76B8
push {r3, r4, r5, r6, r7, lr}
str r0, [sp]
bl FUN_02006278
add r6, r0, #0
add r7, r6, #0
mov r4, #0
add r7, #0x70
_021D76C8:
lsl r0, r4, #2
add r5, r6, r0
add r1, r5, #0
add r1, #0x80
ldr r1, [r1]
add r0, r7, #0
bl thunk_FUN_020ae84c
ldr r0, [r5, #0x60]
bl FUN_02016A18
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, #4
blo _021D76C8
ldr r0, [r6, #0x5c]
bl FUN_02016A18
ldr r0, [r6]
bl FUN_0201EB70
ldr r0, [sp]
bl FUN_0200627C
bl FUN_0201B398
mov r0, #0x48
bl FUN_020168D0
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end MOD78_021D76B8
thumb_func_start MOD78_021D7708
MOD78_021D7708: ; 0x021D7708
push {r3, lr}
mov r0, #0
add r1, r0, #0
bl FUN_02015F10
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
mov r2, #1
lsl r2, r2, #0x1a
ldr r1, [r2]
ldr r0, _021D7758 ; =0xFFFFE0FF
and r1, r0
str r1, [r2]
ldr r2, _021D775C ; =0x04001000
ldr r1, [r2]
and r0, r1
str r0, [r2]
bl MOD78_021D776C
mov r0, #0x48
bl FUN_0201B2EC
ldr r2, _021D7760 ; =0x04000060
ldr r0, _021D7764 ; =0xFFFFCFFF
ldrh r1, [r2]
and r1, r0
mov r0, #0x20
orr r0, r1
strh r0, [r2]
ldr r0, _021D7768 ; =0x021D7888
bl G3X_SetEdgeColorTable
bl FUN_0201E7A0
pop {r3, pc}
nop
_021D7758: .word 0xFFFFE0FF
_021D775C: .word 0x04001000
_021D7760: .word 0x04000060
_021D7764: .word 0xFFFFCFFF
_021D7768: .word 0x021D7888
thumb_func_end MOD78_021D7708
thumb_func_start MOD78_021D776C
MOD78_021D776C: ; 0x021D776C
push {r4, lr}
sub sp, #0x28
ldr r4, _021D7788 ; =0x021D78D0
add r3, sp, #0
mov r2, #5
_021D7776:
ldmia r4!, {r0, r1}
stmia r3!, {r0, r1}
sub r2, r2, #1
bne _021D7776
add r0, sp, #0
bl FUN_0201E66C
add sp, #0x28
pop {r4, pc}
.align 2, 0
_021D7788: .word 0x021D78D0
thumb_func_end MOD78_021D776C
thumb_func_start MOD78_021D778C
MOD78_021D778C: ; 0x021D778C
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r5, r0, #0
mov r0, #0x78
mov r1, #0x48
bl FUN_02006670
str r0, [sp]
add r0, r5, #0
add r0, #0x70
mov r1, #0x48
mov r2, #4
bl FUN_02016B20
add r1, r5, #0
add r1, #0x9c
ldrb r2, [r1]
mov r1, #0xa
ldr r0, [sp]
add r3, r2, #0
mul r3, r1
ldr r1, _021D7878 ; =0x021D7900
mov r2, #0x48
ldrh r1, [r1, r3]
bl FUN_02006704
add r1, r5, #0
add r2, r5, #0
str r0, [r5, #0x5c]
add r0, r5, #4
add r1, #0x58
add r2, #0x5c
bl FUN_0201B234
ldr r0, [r5, #0x5c]
bl FUN_020BC0FC
str r0, [sp, #4]
ldr r0, [r5, #0x58]
mov r1, #0
mov r2, #0x40
bl FUN_020BC094
ldr r0, [r5, #0x58]
mov r1, #0
mov r2, #0x80
bl FUN_020BC094
mov r2, #2
ldr r0, [r5, #0x58]
mov r1, #0
lsl r2, r2, #8
bl FUN_020BC094
mov r2, #1
ldr r0, [r5, #0x58]
mov r1, #0
lsl r2, r2, #0xa
bl FUN_020BC094
add r0, r5, #0
str r0, [sp, #8]
add r0, #0x70
mov r6, #0
str r0, [sp, #8]
_021D780E:
add r1, r5, #0
add r1, #0x9c
ldrb r3, [r1]
lsl r0, r6, #2
add r4, r5, r0
add r2, r3, #0
mov r1, #0xa
mul r2, r1
ldr r3, _021D7878 ; =0x021D7900
lsl r1, r6, #1
add r2, r3, r2
add r1, r1, r2
ldrh r1, [r1, #2]
ldr r0, [sp]
mov r2, #0x48
bl FUN_02006704
str r0, [r4, #0x60]
mov r1, #0
bl FUN_020BC4C8
add r7, r0, #0
ldr r0, [sp, #8]
ldr r2, [r5, #0x58]
add r1, r7, #0
bl FUN_020BB8D0
add r1, r4, #0
add r1, #0x80
str r0, [r1]
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
ldr r2, [r5, #0x58]
ldr r3, [sp, #4]
add r1, r7, #0
bl FUN_020B8110
add r4, #0x80
ldr r1, [r4]
add r0, r5, #4
bl FUN_020B7EFC
add r0, r6, #1
lsl r0, r0, #0x18
lsr r6, r0, #0x18
cmp r6, #4
blo _021D780E
ldr r0, [sp]
bl FUN_020066F4
add sp, #0xc
pop {r4, r5, r6, r7, pc}
.align 2, 0
_021D7878: .word 0x021D7900
thumb_func_end MOD78_021D778C
.section .rodata
; 0x021D787C
.incbin "baserom.nds", 0x2D9B9C, 0x7C
.section .data
; 0x021D7900
.incbin "baserom.nds", 0x2D9C20, 0x40

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More