From 76d97ac18acc37a73b4ae627f2f84fe2bae44fd6 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Wed, 11 Sep 2024 11:02:42 +0200 Subject: [PATCH] [headers 14] libc64 headers (#2177) * [headers 14] libc64 headers * bss * bss --- include/functions.h | 25 ------------------ include/libc64/aprintf.h | 11 ++++++++ include/libc64/malloc.h | 28 +++++++++++++++++++++ include/{fp_math.h => libc64/math64.h} | 4 +-- include/libc64/sleep.h | 12 +++++++++ include/{libc/stdio.h => libc64/sprintf.h} | 8 +++--- include/ultra64.h | 1 - include/variables.h | 1 - include/z64.h | 6 ++++- src/code/sys_math3d.c | 2 +- src/code/z_olib.c | 2 +- src/libc64/aprintf.c | 3 ++- src/libc64/malloc.c | 4 ++- src/libc64/sprintf.c | 2 +- src/overlays/actors/ovl_En_Xc/z_en_xc.c | 2 +- src/overlays/actors/ovl_Fishing/z_fishing.c | 2 +- 16 files changed, 73 insertions(+), 40 deletions(-) create mode 100644 include/libc64/aprintf.h create mode 100644 include/libc64/malloc.h rename include/{fp_math.h => libc64/math64.h} (85%) create mode 100644 include/libc64/sleep.h rename include/{libc/stdio.h => libc64/sprintf.h} (64%) diff --git a/include/functions.h b/include/functions.h index c056003523..f11bea990b 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1366,31 +1366,6 @@ s8 PadUtils_GetRelY(Input* input); void PadUtils_UpdateRelXY(Input* input); s32 PadSetup_Init(OSMesgQueue* mq, u8* outMask, OSContStatus* status); -void* SystemArena_Malloc(u32 size); -void* SystemArena_MallocR(u32 size); -void* SystemArena_Realloc(void* ptr, u32 newSize); -void SystemArena_Free(void* ptr); -void* SystemArena_Calloc(u32 num, u32 size); -void SystemArena_GetSizes(u32* outMaxFree, u32* outFree, u32* outAlloc); -void SystemArena_Check(void); -void SystemArena_Init(void* start, u32 size); -void SystemArena_Cleanup(void); -s32 SystemArena_IsInitialized(void); -#if OOT_DEBUG -void* SystemArena_MallocDebug(u32 size, const char* file, int line); -void* SystemArena_MallocRDebug(u32 size, const char* file, int line); -void* SystemArena_ReallocDebug(void* ptr, u32 newSize, const char* file, int line); -void SystemArena_FreeDebug(void* ptr, const char* file, int line); -void SystemArena_Display(void); -#endif -s32 PrintUtils_VPrintf(PrintCallback* pfn, const char* fmt, va_list args); -s32 PrintUtils_Printf(PrintCallback* pfn, const char* fmt, ...); -void Sleep_Cycles(OSTime cycles); -void Sleep_Nsec(u32 nsec); -void Sleep_Usec(u32 usec); -void Sleep_Msec(u32 ms); -void Sleep_Sec(u32 sec); - s32 osPfsFreeBlocks(OSPfs* pfs, s32* leftoverBytes); void guScale(Mtx* m, f32 x, f32 y, f32 z); OSTask* _VirtualToPhysicalTask(OSTask* intp); diff --git a/include/libc64/aprintf.h b/include/libc64/aprintf.h new file mode 100644 index 0000000000..e6aad4bc79 --- /dev/null +++ b/include/libc64/aprintf.h @@ -0,0 +1,11 @@ +#ifndef LIBC64_APRINTF_H +#define LIBC64_APRINTF_H + +#include "ultra64.h" + +#include "stdarg.h" + +s32 PrintUtils_VPrintf(PrintCallback* pfn, const char* fmt, va_list args); +s32 PrintUtils_Printf(PrintCallback* pfn, const char* fmt, ...); + +#endif diff --git a/include/libc64/malloc.h b/include/libc64/malloc.h new file mode 100644 index 0000000000..b9ae324b96 --- /dev/null +++ b/include/libc64/malloc.h @@ -0,0 +1,28 @@ +#ifndef LIBC64_MALLOC_H +#define LIBC64_MALLOC_H + +#include "ultra64.h" +#include "libc64/os_malloc.h" + +void* SystemArena_Malloc(u32 size); +void* SystemArena_MallocR(u32 size); +void* SystemArena_Realloc(void* ptr, u32 newSize); +void SystemArena_Free(void* ptr); +void* SystemArena_Calloc(u32 num, u32 size); +void SystemArena_GetSizes(u32* outMaxFree, u32* outFree, u32* outAlloc); +void SystemArena_Check(void); +void SystemArena_Init(void* start, u32 size); +void SystemArena_Cleanup(void); +s32 SystemArena_IsInitialized(void); + +#if OOT_DEBUG +void* SystemArena_MallocDebug(u32 size, const char* file, int line); +void* SystemArena_MallocRDebug(u32 size, const char* file, int line); +void* SystemArena_ReallocDebug(void* ptr, u32 newSize, const char* file, int line); +void SystemArena_FreeDebug(void* ptr, const char* file, int line); +void SystemArena_Display(void); +#endif + +extern Arena gSystemArena; + +#endif diff --git a/include/fp_math.h b/include/libc64/math64.h similarity index 85% rename from include/fp_math.h rename to include/libc64/math64.h index 26f9b171b7..acd6992b77 100644 --- a/include/fp_math.h +++ b/include/libc64/math64.h @@ -1,5 +1,5 @@ -#ifndef FP_MATH_H -#define FP_MATH_H +#ifndef LIBC64_MATH64_H +#define LIBC64_MATH64_H #include "ultra64.h" diff --git a/include/libc64/sleep.h b/include/libc64/sleep.h new file mode 100644 index 0000000000..88eba0a785 --- /dev/null +++ b/include/libc64/sleep.h @@ -0,0 +1,12 @@ +#ifndef LIBC64_SLEEP_H +#define LIBC64_SLEEP_H + +#include "ultra64.h" + +void Sleep_Cycles(OSTime cycles); +void Sleep_Nsec(u32 nsec); +void Sleep_Usec(u32 usec); +void Sleep_Msec(u32 ms); +void Sleep_Sec(u32 sec); + +#endif diff --git a/include/libc/stdio.h b/include/libc64/sprintf.h similarity index 64% rename from include/libc/stdio.h rename to include/libc64/sprintf.h index ce91816145..485f938f58 100644 --- a/include/libc/stdio.h +++ b/include/libc64/sprintf.h @@ -1,9 +1,11 @@ -#ifndef STDIO_H -#define STDIO_H +#ifndef LIBC64_SPRINTF_H +#define LIBC64_SPRINTF_H + +#include "ultra64.h" #include "stdarg.h" -int sprintf(char* dst, const char* fmt, ...); int vsprintf(char* dst, const char* fmt, va_list args); +int sprintf(char* dst, const char* fmt, ...); #endif diff --git a/include/ultra64.h b/include/ultra64.h index f6460c5834..ed88bcb0f6 100644 --- a/include/ultra64.h +++ b/include/ultra64.h @@ -7,7 +7,6 @@ #include "libc/stdbool.h" #include "libc/stddef.h" #include "libc/stdint.h" -#include "libc/stdio.h" #include "libc/stdlib.h" #include "libc/string.h" diff --git a/include/variables.h b/include/variables.h index 269f455373..2f96222d58 100644 --- a/include/variables.h +++ b/include/variables.h @@ -223,7 +223,6 @@ extern ActiveSequence gActiveSeqs[4]; extern AudioContext gAudioCtx; extern AudioCustomUpdateFunction gAudioCustomUpdateFunction; -extern Arena gSystemArena; extern OSPifRam __osContPifRam; extern u8 __osContLastCmd; extern u8 __osMaxControllers; diff --git a/include/z64.h b/include/z64.h index 4c797ffaed..a6e4cc4d4a 100644 --- a/include/z64.h +++ b/include/z64.h @@ -66,12 +66,16 @@ #include "libc64/qrand.h" #include "sys_math.h" #include "sys_math3d.h" -#include "fp_math.h" +#include "libc64/math64.h" #include "sys_matrix.h" #include "main.h" #include "segmented_address.h" #include "stackcheck.h" #include "kaleido_manager.h" +#include "libc64/aprintf.h" +#include "libc64/malloc.h" +#include "libc64/sleep.h" +#include "libc64/sprintf.h" #define SCREEN_WIDTH 320 #define SCREEN_HEIGHT 240 diff --git a/src/code/sys_math3d.c b/src/code/sys_math3d.c index 1e81ad6f86..570da1ab01 100644 --- a/src/code/sys_math3d.c +++ b/src/code/sys_math3d.c @@ -5,7 +5,7 @@ #include "macros.h" #include "sys_math3d.h" -#pragma increment_block_number "gc-eu:105 gc-eu-mq:105 gc-jp:105 gc-jp-ce:105 gc-jp-mq:105 gc-us:105 gc-us-mq:105" +#pragma increment_block_number "gc-eu:106 gc-eu-mq:106 gc-jp:106 gc-jp-ce:106 gc-jp-mq:106 gc-us:106 gc-us-mq:106" s32 Math3D_LineVsLineClosestTwoPoints(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB, Vec3f* lineAClosestToB, Vec3f* lineBClosestToA); diff --git a/src/code/z_olib.c b/src/code/z_olib.c index c1f93a0522..298f151e2c 100644 --- a/src/code/z_olib.c +++ b/src/code/z_olib.c @@ -1,5 +1,5 @@ #include "z64math.h" -#include "fp_math.h" +#include "libc64/math64.h" #include "z_lib.h" /** diff --git a/src/libc64/aprintf.c b/src/libc64/aprintf.c index 3fb8cf3672..44cedac975 100644 --- a/src/libc64/aprintf.c +++ b/src/libc64/aprintf.c @@ -1,4 +1,5 @@ -#include "global.h" +#include "libc64/aprintf.h" +#include "ultra64.h" s32 PrintUtils_VPrintf(PrintCallback* pfn, const char* fmt, va_list args) { return _Printf(*pfn, pfn, fmt, args); diff --git a/src/libc64/malloc.c b/src/libc64/malloc.c index a5bd8032ba..57dd88e282 100644 --- a/src/libc64/malloc.c +++ b/src/libc64/malloc.c @@ -1,4 +1,6 @@ -#include "global.h" +#include "libc64/malloc.h" +#include "ultra64.h" +#include "macros.h" #include "libc64/os_malloc.h" #define LOG_SEVERITY_NOLOG 0 diff --git a/src/libc64/sprintf.c b/src/libc64/sprintf.c index d4af36356d..12286697c9 100644 --- a/src/libc64/sprintf.c +++ b/src/libc64/sprintf.c @@ -1,5 +1,5 @@ +#include "libc64/sprintf.h" #include "stdarg.h" -#include "stdio.h" #include "string.h" #include "ultra64/xstdio.h" diff --git a/src/overlays/actors/ovl_En_Xc/z_en_xc.c b/src/overlays/actors/ovl_En_Xc/z_en_xc.c index b8f9cf9d5f..0671dfc6fa 100644 --- a/src/overlays/actors/ovl_En_Xc/z_en_xc.c +++ b/src/overlays/actors/ovl_En_Xc/z_en_xc.c @@ -1395,7 +1395,7 @@ void func_80B3F3D8(void) { Sfx_PlaySfxCentered2(NA_SE_PL_SKIP); } -#pragma increment_block_number "gc-eu:128 gc-eu-mq:64 gc-jp:128 gc-jp-ce:128 gc-jp-mq:64 gc-us:128 gc-us-mq:64" +#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:128 gc-jp-ce:128 gc-jp-mq:64 gc-us:128 gc-us-mq:64" void EnXc_PlayDiveSFX(Vec3f* src, PlayState* play) { static Vec3f D_80B42DA0; diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index dc3691ef03..087e9dfc2f 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -15,7 +15,7 @@ #include "cic6105.h" #endif -#pragma increment_block_number "gc-eu:139 gc-eu-mq:139 gc-jp:141 gc-jp-ce:141 gc-jp-mq:141 gc-us:141 gc-us-mq:141" +#pragma increment_block_number "gc-eu:136 gc-eu-mq:136 gc-jp:138 gc-jp-ce:138 gc-jp-mq:138 gc-us:138 gc-us-mq:138" #define FLAGS ACTOR_FLAG_4