From 009d3fbcf7e1e3ea94656b5233e0bc96fa7b5a5b Mon Sep 17 00:00:00 2001 From: Made Date: Fri, 1 May 2020 18:59:48 +0200 Subject: decompile FX.s, FX_atan.s and partially decompile FX_ves.s --- arm9/lib/src/FX.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 arm9/lib/src/FX.c (limited to 'arm9/lib/src/FX.c') diff --git a/arm9/lib/src/FX.c b/arm9/lib/src/FX.c new file mode 100644 index 00000000..fa6fa6ba --- /dev/null +++ b/arm9/lib/src/FX.c @@ -0,0 +1,20 @@ +#include "global.h" +#include "main.h" +#include "fx.h" + +void FX_Init(){ + return; +} + +s32 FX_Modf(s32 x, s32 *iptr){ + if (x >= 0) + { + *iptr = x & 0x7FFFF000; + return x & 0xFFF; + } + else + { + *iptr = -(-x & 0x7FFFF000); + return -(-x & 0xFFF); + } +} -- cgit v1.2.3 From ab28b0b37f2fd9fba6010e48e15bd31170d678d7 Mon Sep 17 00:00:00 2001 From: Made Date: Mon, 4 May 2020 17:07:22 +0200 Subject: Add typedefs for fixed point types --- arm9/lib/src/FX.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'arm9/lib/src/FX.c') diff --git a/arm9/lib/src/FX.c b/arm9/lib/src/FX.c index fa6fa6ba..f39b1995 100644 --- a/arm9/lib/src/FX.c +++ b/arm9/lib/src/FX.c @@ -6,7 +6,7 @@ void FX_Init(){ return; } -s32 FX_Modf(s32 x, s32 *iptr){ +fx32 FX_Modf(fx32 x, fx32 *iptr){ if (x >= 0) { *iptr = x & 0x7FFFF000; -- cgit v1.2.3 From f4c61411673207da9d6be013674f95eeb07408b5 Mon Sep 17 00:00:00 2001 From: Made Date: Mon, 4 May 2020 17:48:38 +0200 Subject: Add function attributes and remove thumb pragmas --- arm9/lib/src/FX.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'arm9/lib/src/FX.c') diff --git a/arm9/lib/src/FX.c b/arm9/lib/src/FX.c index f39b1995..4b9c213f 100644 --- a/arm9/lib/src/FX.c +++ b/arm9/lib/src/FX.c @@ -2,11 +2,11 @@ #include "main.h" #include "fx.h" -void FX_Init(){ +ARM_FUNC void FX_Init(){ return; } -fx32 FX_Modf(fx32 x, fx32 *iptr){ +ARM_FUNC fx32 FX_Modf(fx32 x, fx32 *iptr){ if (x >= 0) { *iptr = x & 0x7FFFF000; -- cgit v1.2.3