From 8e415b1cd8e4a6ad4ed615bbb403e984d3e0179a Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 25 May 2024 11:16:50 +0200 Subject: [PATCH] Mangle `TouchControl` functions --- asm/main/main_02000000.s | 20 ++++++++++---------- asm/ov00/Actor/Actor.inc | 4 ++-- asm/ov00/Actor/Actor.s | 4 ++-- asm/ov14/ov14_0213b778.inc | 4 ++-- asm/ov14/ov14_0213b778.s | 8 ++++---- asm/ov15.inc | 4 ++-- asm/ov15.s | 16 ++++++++-------- asm/ov24.inc | 4 ++-- asm/ov24.s | 4 ++-- asm/ov27.inc | 4 ++-- asm/ov27.s | 8 ++++---- asm/ov28.inc | 2 +- asm/ov28.s | 2 +- asm/ov31.inc | 4 ++-- asm/ov31.s | 4 ++-- asm/ov34.inc | 4 ++-- asm/ov34.s | 4 ++-- include/Player/TouchControl.hpp | 4 ++++ 18 files changed, 54 insertions(+), 50 deletions(-) diff --git a/asm/main/main_02000000.s b/asm/main/main_02000000.s index 311245c1..27c7d142 100644 --- a/asm/main/main_02000000.s +++ b/asm/main/main_02000000.s @@ -57936,9 +57936,9 @@ func_0202b7e4: ; 0x0202b7e4 ldmia sp!, {r3, pc} arm_func_end func_0202b7e4 - .global func_0202b864 - arm_func_start func_0202b864 -func_0202b864: ; 0x0202b864 + .global _ZN12TouchControl13func_0202b864EP5Vec3pic + arm_func_start _ZN12TouchControl13func_0202b864EP5Vec3pic +_ZN12TouchControl13func_0202b864EP5Vec3pic: ; 0x0202b864 stmdb sp!, {r3, lr} ldr r3, _0202b890 ; =data_027e0d78 ldrh ip, [r3, #0x34] @@ -57952,11 +57952,11 @@ func_0202b864: ; 0x0202b864 ldmia sp!, {r3, pc} .align 2, 0 _0202b890: .word data_027e0d78 - arm_func_end func_0202b864 + arm_func_end _ZN12TouchControl13func_0202b864EP5Vec3pic - .global func_0202b894 - arm_func_start func_0202b894 -func_0202b894: ; 0x0202b894 + .global _ZN12TouchControl13func_0202b894EP5Vec3pic + arm_func_start _ZN12TouchControl13func_0202b894EP5Vec3pic +_ZN12TouchControl13func_0202b894EP5Vec3pic: ; 0x0202b894 stmdb sp!, {r3, lr} ldr r3, _0202b8e0 ; =data_027e0d78 ldrb ip, [r3, #0xc] @@ -57979,17 +57979,17 @@ _0202b8bc: ldmia sp!, {r3, pc} .align 2, 0 _0202b8e0: .word data_027e0d78 - arm_func_end func_0202b894 + arm_func_end _ZN12TouchControl13func_0202b894EP5Vec3pic .global func_0202b8e4 arm_func_start func_0202b8e4 func_0202b8e4: ; 0x0202b8e4 - ldr ip, _0202b8f4 ; =func_0202b894 + ldr ip, _0202b8f4 ; =_ZN12TouchControl13func_0202b894EP5Vec3pic mov r2, r1 ldr r1, [r0, #0xc] bx ip .align 2, 0 -_0202b8f4: .word func_0202b894 +_0202b8f4: .word _ZN12TouchControl13func_0202b894EP5Vec3pic arm_func_end func_0202b8e4 .global func_0202b8f8 diff --git a/asm/ov00/Actor/Actor.inc b/asm/ov00/Actor/Actor.inc index e66e6307..cba81464 100644 --- a/asm/ov00/Actor/Actor.inc +++ b/asm/ov00/Actor/Actor.inc @@ -43,8 +43,8 @@ .extern _ZN8Cylinder8OverlapsEPS_ .extern _ZN11ItemManager21GetEquipItemUncheckedEi .extern func_01fffd04 -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202d95c .extern func_020313c8 .extern abs diff --git a/asm/ov00/Actor/Actor.s b/asm/ov00/Actor/Actor.s index 08df11c9..3b5d3a30 100644 --- a/asm/ov00/Actor/Actor.s +++ b/asm/ov00/Actor/Actor.s @@ -2273,11 +2273,11 @@ _ZN5Actor15IsHitboxTouchedEb: ; 0x020c3004 mov r2, #8 mov r1, ip beq _020c305c - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic mov r1, r0 b _020c3064 _020c305c: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic mov r1, r0 _020c3064: mov r0, r1 diff --git a/asm/ov14/ov14_0213b778.inc b/asm/ov14/ov14_0213b778.inc index 7d716bf1..646222e8 100644 --- a/asm/ov14/ov14_0213b778.inc +++ b/asm/ov14/ov14_0213b778.inc @@ -281,8 +281,8 @@ .extern func_0202aff0 .extern func_0202b154 .extern func_0202b2e8 -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202bbbc .extern func_0202d5b4 .extern func_0202d77c diff --git a/asm/ov14/ov14_0213b778.s b/asm/ov14/ov14_0213b778.s index 19d5972d..c011f670 100644 --- a/asm/ov14/ov14_0213b778.s +++ b/asm/ov14/ov14_0213b778.s @@ -13665,13 +13665,13 @@ func_ov14_02145974: ; 0x02145974 str r0, [sp, #0x1c] add r0, sp, #0x28 beq _02145a34 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 bne _02145a1c ldr r1, [sp, #0x24] add r0, sp, #0x18 mov r2, #8 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 beq _02145a28 _02145a1c: @@ -13683,13 +13683,13 @@ _02145a28: mov r0, #0 ldmia sp!, {r4, pc} _02145a34: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic cmp r0, #0 bne _02145a58 ldr r1, [sp, #0x24] add r0, sp, #0x18 mov r2, #8 - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic cmp r0, #0 beq _02145a64 _02145a58: diff --git a/asm/ov15.inc b/asm/ov15.inc index a7e9b3a6..0e1de4d8 100644 --- a/asm/ov15.inc +++ b/asm/ov15.inc @@ -365,8 +365,8 @@ .extern func_0202b418 .extern func_0202b4e4 .extern func_0202b734 -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202bac0 .extern func_0202bbbc .extern func_0202bc38 diff --git a/asm/ov15.s b/asm/ov15.s index 3e3d7afc..7ecfa95e 100644 --- a/asm/ov15.s +++ b/asm/ov15.s @@ -58997,11 +58997,11 @@ func_ov15_021515bc: ; 0x021515bc ldr r1, _0215167c ; =0x00000b33 mov r2, #8 beq _0215166c - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} _0215166c: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 @@ -77768,11 +77768,11 @@ func_ov15_021617a8: ; 0x021617a8 ldr r1, _0216187c ; =0x00000b33 mov r2, #8 beq _0216186c - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, r9, pc} _0216186c: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, r9, pc} .align 2, 0 @@ -84567,12 +84567,12 @@ func_ov15_02167690: ; 0x02167690 mov r2, #8 beq _021676d4 ldr r1, [sp, #0xc] - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic mov r1, r0 b _021676e0 _021676d4: ldr r1, [sp, #0xc] - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic mov r1, r0 _021676e0: mov r0, r1 @@ -89249,10 +89249,10 @@ func_ov15_0216b58c: ; 0x0216b58c mov r2, #8 mov r1, r4 beq _0216b5e4 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic b _0216b5e8 _0216b5e4: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic _0216b5e8: cmp r0, #0 addeq sp, sp, #0x80 diff --git a/asm/ov24.inc b/asm/ov24.inc index d6276371..3f22a905 100644 --- a/asm/ov24.inc +++ b/asm/ov24.inc @@ -163,8 +163,8 @@ .extern func_0202b308 .extern func_0202b3bc .extern func_0202b66c -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202bbbc .extern func_0202e310 .extern func_0202e58c diff --git a/asm/ov24.s b/asm/ov24.s index 35c0e789..5ef27d17 100644 --- a/asm/ov24.s +++ b/asm/ov24.s @@ -1826,11 +1826,11 @@ func_ov24_0216ee18: ; 0x0216ee18 mov r2, #8 mov r1, ip beq _0216ee74 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic mov r1, r0 b _0216ee7c _0216ee74: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic mov r1, r0 _0216ee7c: mov r0, r1 diff --git a/asm/ov27.inc b/asm/ov27.inc index c6736d45..0a902c61 100644 --- a/asm/ov27.inc +++ b/asm/ov27.inc @@ -148,8 +148,8 @@ .extern func_0202b2e8 .extern func_0202b2f8 .extern func_0202b4e4 -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202bbbc .extern func_0202da8c .extern func_0202e030 diff --git a/asm/ov27.s b/asm/ov27.s index c1d38080..e2b3a982 100644 --- a/asm/ov27.s +++ b/asm/ov27.s @@ -13127,13 +13127,13 @@ _021788d4: mov r2, #8 mov r1, ip beq _021789c4 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 bne _021789ac ldr r1, [sp, #0x18] add r0, sp, #0xc mov r2, #8 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 beq _021789b8 _021789ac: @@ -13145,13 +13145,13 @@ _021789b8: mov r0, #0 ldmia sp!, {r4, r5, r6, r7, pc} _021789c4: - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic cmp r0, #0 bne _021789e8 ldr r1, [sp, #0x18] add r0, sp, #0xc mov r2, #8 - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic cmp r0, #0 beq _021789f4 _021789e8: diff --git a/asm/ov28.inc b/asm/ov28.inc index a6cb9ed6..184bbc86 100644 --- a/asm/ov28.inc +++ b/asm/ov28.inc @@ -158,7 +158,7 @@ .extern func_0202b154 .extern func_0202b2e8 .extern func_0202b3bc -.extern func_0202b864 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic .extern func_0202e030 .extern func_0202e310 .extern func_0202e544 diff --git a/asm/ov28.s b/asm/ov28.s index 96a77978..bb64b2a9 100644 --- a/asm/ov28.s +++ b/asm/ov28.s @@ -6625,7 +6625,7 @@ func_ov28_02172bc8: ; 0x02172bc8 add r0, r4, #0x48 mov r1, #0x1000 mov r2, #8 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 ldmeqia sp!, {r4, pc} mov r0, r4 diff --git a/asm/ov31.inc b/asm/ov31.inc index 8ba1b024..caef0871 100644 --- a/asm/ov31.inc +++ b/asm/ov31.inc @@ -114,8 +114,8 @@ .extern func_0202ab64 .extern func_0202ab78 .extern func_0202ac0c -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202b8f8 .extern func_0202d77c .extern func_0202e310 diff --git a/asm/ov31.s b/asm/ov31.s index f305a661..f24e0b3b 100644 --- a/asm/ov31.s +++ b/asm/ov31.s @@ -2415,7 +2415,7 @@ _0217db78: beq _0217dbac mov r2, r5 add r0, r0, #0x48 - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic cmp r0, #0 beq _0217dbc4 mov r0, #1 @@ -2423,7 +2423,7 @@ _0217db78: _0217dbac: mov r2, r4 add r0, r0, #0x48 - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic cmp r0, #0 movne r0, #1 ldmneia sp!, {r4, r5, r6, r7, r8, pc} diff --git a/asm/ov34.inc b/asm/ov34.inc index 4b475c1a..d2218a5e 100644 --- a/asm/ov34.inc +++ b/asm/ov34.inc @@ -109,8 +109,8 @@ .extern func_0202b154 .extern func_0202b2e8 .extern func_0202b308 -.extern func_0202b864 -.extern func_0202b894 +.extern _ZN12TouchControl13func_0202b864EP5Vec3pic +.extern _ZN12TouchControl13func_0202b894EP5Vec3pic .extern func_0202bac0 .extern func_0202d95c .extern func_0202de3c diff --git a/asm/ov34.s b/asm/ov34.s index db893a73..4d0e9161 100644 --- a/asm/ov34.s +++ b/asm/ov34.s @@ -8344,12 +8344,12 @@ _021832fc: mov r2, #8 beq _02183324 ldr r1, [sp, #0xc] - bl func_0202b864 + bl _ZN12TouchControl13func_0202b864EP5Vec3pic mov r2, r0 b _02183330 _02183324: ldr r1, [sp, #0xc] - bl func_0202b894 + bl _ZN12TouchControl13func_0202b894EP5Vec3pic mov r2, r0 _02183330: mov r0, r2 diff --git a/include/Player/TouchControl.hpp b/include/Player/TouchControl.hpp index b5c79750..480ee42c 100644 --- a/include/Player/TouchControl.hpp +++ b/include/Player/TouchControl.hpp @@ -3,6 +3,7 @@ #include "global.h" #include "types.h" #include "lib/touch.h" +#include "lib/math.h" typedef u16 TouchFlags; enum TouchFlag_ { @@ -43,4 +44,7 @@ public: void UpdateConditionally(TouchState *state, u16 speed); void func_ov00_0207af38(u16 speed, bool param2); ~TouchControl(); + + static bool func_0202b864(Vec3p *param1, s32 size, unk8 param3); + static bool func_0202b894(Vec3p *param1, s32 size, unk8 param3); };