diff options
| author | red031000 <rubenru09@aol.com> | 2020-07-28 19:23:03 +0100 | 
|---|---|---|
| committer | PikalaxALT <pikalaxalt@gmail.com> | 2020-08-03 15:58:15 -0400 | 
| commit | bd31e7fd8997259884d220150065b8ff8a3dd9b0 (patch) | |
| tree | 6e2cbd50d4711fb63cced458b72b06c3c1e5bfd6 /arm9 | |
| parent | 4f8301232aa740c78b967232b0bdf2f9f194a45e (diff) | |
start decomping mod63_021DB450
Diffstat (limited to 'arm9')
| -rw-r--r-- | arm9/Makefile | 6 | ||||
| -rw-r--r-- | arm9/arm9.lsf | 1 | ||||
| -rw-r--r-- | arm9/modules/63/asm/mod63_021DB450_asm.s (renamed from arm9/modules/63/asm/mod63_021DB450.s) | 21 | ||||
| -rw-r--r-- | arm9/modules/63/include/mod63_021DB450.h | 8 | ||||
| -rw-r--r-- | arm9/modules/63/src/mod63_021DB450.c | 13 | 
5 files changed, 27 insertions, 22 deletions
| diff --git a/arm9/Makefile b/arm9/Makefile index 42228747..d537fbd7 100644 --- a/arm9/Makefile +++ b/arm9/Makefile @@ -53,6 +53,8 @@ LD_TEMPLATE := ARM9-TS.lcf.template  SRC_DIRS := src lib lib/src $(sort $(wildcard modules/*/src))  ASM_DIRS := asm data files $(sort $(wildcard modules/*/asm))  LIBASM_DIRS := lib/syscall +INCLUDE_RECURSIVE_DIRS := ../include-mw lib/include +INCLUDE_DIRS := ../include $(sort $(wildcard modules/*/include))  C_FILES    := $(foreach dir,$(SRC_DIRS),$(sort $(wildcard $(dir)/*.c)))  CXX_FILES  := $(foreach dir,$(SRC_DIRS),$(sort $(wildcard $(dir)/*.cpp))) @@ -102,8 +104,8 @@ OBJCOPY := $(CROSS)objcopy  # ./tools/mwccarm/2.0/base/mwasmarm.exe -proc arm5te asm/arm9_thumb.s -o arm9.o  ASFLAGS = -proc arm5te -i ../include -i .. -D$(GAME_VERSION) -D$(GAME_LANGUAGE) -CFLAGS = -O4,p -gccext,on -proc arm946e -fp soft -lang c99 -Cpp_exceptions off -i ../include -ir ../include-mw -ir lib/include -interworking -DFS_IMPLEMENT -enum int -W all -D$(GAME_VERSION) -D$(GAME_LANGUAGE) -CXXFLAGS = -O4,p -proc arm946e -fp soft -lang c99 -Cpp_exceptions off -i ../include -ir ../include-mw -ir lib/include -interworking -DFS_IMPLEMENT -enum int -W all -D$(GAME_VERSION) -D$(GAME_LANGUAGE) +CFLAGS = -O4,p -gccext,on -proc arm946e -fp soft -lang c99 -Cpp_exceptions off $(foreach dir,$(INCLUDE_DIRS),-i $(dir)) $(foreach dir,$(INCLUDE_RECURSIVE_DIRS),-ir $(dir)) -interworking -DFS_IMPLEMENT -enum int -W all -D$(GAME_VERSION) -D$(GAME_LANGUAGE) +CXXFLAGS = -O4,p -proc arm946e -fp soft -lang c99 -Cpp_exceptions off $(foreach dir,$(INCLUDE_DIRS),-i $(dir)) $(foreach dir,$(INCLUDE_RECURSIVE_DIRS),-ir $(dir)) -interworking -DFS_IMPLEMENT -enum int -W all -D$(GAME_VERSION) -D$(GAME_LANGUAGE)  LDFLAGS = -nodead -w off -proc v5te -interworking -map closure,unused -symtab sort -m _start  LIBS := -Llib -lsyscall  ARFLAGS = rcS diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf index 27d530ed..225d62cf 100644 --- a/arm9/arm9.lsf +++ b/arm9/arm9.lsf @@ -946,6 +946,7 @@ Overlay MODULE_63  	Object mod63_021DA640.o  	Object mod63_021DAE5C.o  	Object mod63_021DB450.o +	Object mod63_021DB450_asm.o  }  Overlay MODULE_64 diff --git a/arm9/modules/63/asm/mod63_021DB450.s b/arm9/modules/63/asm/mod63_021DB450_asm.s index d93aa5ac..044b2799 100644 --- a/arm9/modules/63/asm/mod63_021DB450.s +++ b/arm9/modules/63/asm/mod63_021DB450_asm.s @@ -1,27 +1,8 @@  	.include "asm/macros.inc"  	.include "global.inc"  	.section .text -	.balign 4, 0 -	thumb_func_start MOD63_021DB450 -MOD63_021DB450: ; 0x021DB450 -	push {r4, lr} -	ldr r3, _021DB470 ; =UNK_021064B8 -	mov r2, #0 -	ldr r3, [r3] -	blx r3 -	add r4, r0, #0 -	bl FUN_0201327C -	cmp r4, #0 -	bne _021DB468 -	bl ErrorHandling -_021DB468: -	lsl r0, r4, #0x10 -	lsr r0, r0, #0xd -	pop {r4, pc} -	nop -_021DB470: .word UNK_021064B8 -	thumb_func_end MOD63_021DB450 +	.extern MOD63_021DB450  	thumb_func_start MOD63_021DB474  MOD63_021DB474: ; 0x021DB474 diff --git a/arm9/modules/63/include/mod63_021DB450.h b/arm9/modules/63/include/mod63_021DB450.h new file mode 100644 index 00000000..df4c6c9e --- /dev/null +++ b/arm9/modules/63/include/mod63_021DB450.h @@ -0,0 +1,8 @@ +#ifndef POKEDIAMOND_MOD63_021DB450_H +#define POKEDIAMOND_MOD63_021DB450_H + +#include "global.h" + +u32 MOD63_021DB450(u32 param0, u32 param1); + +#endif //POKEDIAMOND_MOD63_021DB450_H diff --git a/arm9/modules/63/src/mod63_021DB450.c b/arm9/modules/63/src/mod63_021DB450.c new file mode 100644 index 00000000..d2ce9ef4 --- /dev/null +++ b/arm9/modules/63/src/mod63_021DB450.c @@ -0,0 +1,13 @@ +#include "global.h" +#include "mod63_021DB450.h" + +extern u32 (*UNK_021064B8)(u32 param0, u32 param1, u32 param2); +extern void FUN_0201327C(u32 param0); + +THUMB_FUNC u32 MOD63_021DB450(u32 param0, u32 param1) +{ +    u32 res0 = (UNK_021064B8)(param0, param1, 0); +    FUN_0201327C(res0); +    GF_ASSERT(res0); +    return (u32)((u16)res0 * 8); +} | 
