diff options
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/code_801067F0.c | 13 | ||||
| -rw-r--r-- | src/code/code_80106860.c | 13 | ||||
| -rw-r--r-- | src/code/code_801068B0.c | 28 |
3 files changed, 54 insertions, 0 deletions
diff --git a/src/code/code_801067F0.c b/src/code/code_801067F0.c new file mode 100644 index 000000000..72f59a051 --- /dev/null +++ b/src/code/code_801067F0.c @@ -0,0 +1,13 @@ +#include <ultra64.h> +#include <global.h> + +// fmodf? unused +f32 func_801067F0(f32 arg0, f32 arg1) { + s32 sp4; + + if (arg1 == 0.0f) { + return 0.0f; + } + sp4 = arg0 / arg1; + return arg0 - (sp4 * arg1); +} diff --git a/src/code/code_80106860.c b/src/code/code_80106860.c new file mode 100644 index 000000000..9d862014f --- /dev/null +++ b/src/code/code_80106860.c @@ -0,0 +1,13 @@ +#include <ultra64.h> +#include <global.h> + +// memset used in __osMalloc, z_quake, z_view, and z_camera +void* func_80106860(void* ptr, s32 val, size_t size) { + u8* sp4 = ptr; + register s32 a3; + + for (a3 = size--; a3 != 0; a3 = size--) { + *sp4++ = val; + } + return ptr; +} diff --git a/src/code/code_801068B0.c b/src/code/code_801068B0.c new file mode 100644 index 000000000..bf3ae5744 --- /dev/null +++ b/src/code/code_801068B0.c @@ -0,0 +1,28 @@ +#include <ultra64.h> +#include <global.h> + +// memcpy used in __osMalloc.c +void* func_801068B0(void* dst, void* src, size_t size) { + u8* spC; + u8* sp8; + register s32 a3; + + spC = dst; + sp8 = src; + + if (spC == sp8) { + return dst; + } + if (spC < sp8) { + for (a3 = size--; a3 != 0; a3 = size--) { + *spC++ = *sp8++; + } + } else { + spC += size - 1; + sp8 += size - 1; + for (a3 = size--; a3 != 0; a3 = size--) { + *spC-- = *sp8--; + } + } + return dst; +} |
