diff options
| author | Kenix3 <kenixwhisperwind@gmail.com> | 2020-06-04 23:07:09 -0400 |
|---|---|---|
| committer | Kenix3 <kenixwhisperwind@gmail.com> | 2020-06-04 23:07:09 -0400 |
| commit | 5c97d35841f99bbb23dffa797475f16ec1e3403b (patch) | |
| tree | 3807897f537f4a6ca0a2317332a401d0f35df249 /src/code/z_lib.c | |
| parent | 664182c2899ba341be31f4cd7364a74867ee422c (diff) | |
Added macros header
Additionally, updated code to use PHYSICAL_TO_VIRTUAL and ALIGN16 macros.
Additionally, retyped gRspSegmentPhysAddrs back to u32 as in OOT. These get the straight return value of PHYSICAL_TO_VIRTUAL, so they are u32.
Diffstat (limited to 'src/code/z_lib.c')
| -rw-r--r-- | src/code/z_lib.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/code/z_lib.c b/src/code/z_lib.c index f4209e98b..101af60d9 100644 --- a/src/code/z_lib.c +++ b/src/code/z_lib.c @@ -607,9 +607,8 @@ f32 Lib_PushAwayVec3f(Vec3f* start, Vec3f* pusher, f32 distanceToApproach) { void Lib_Nop801004FC(void) {} void* Lib_PtrSegToVirt(void* ptr) { - // TODO: PHYSICAL_TO_VIRTUAL macro // UB to cast the pointer to u32 - return (void*)(((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)) + 0x80000000); + return (void*)PHYSICAL_TO_VIRTUAL((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)); } void* Lib_PtrSegToVirtNull(void* ptr) { @@ -618,17 +617,15 @@ void* Lib_PtrSegToVirtNull(void* ptr) { return ptr; } - // TODO: PHYSICAL_TO_VIRTUAL macro // UB to cast the pointer to u32 - return (void*)(((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)) + 0x80000000); + return (void*)PHYSICAL_TO_VIRTUAL((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)); } void* Lib_PtrSegToK0(void* ptr) { if (ptr == NULL) { return NULL; } else { - // TODO: PHYSICAL_TO_VIRTUAL macro - return (void*)((u32)ptr + 0x80000000); + return (void*)PHYSICAL_TO_VIRTUAL(ptr); } } @@ -636,7 +633,6 @@ void* Lib_PtrSegToK0Null(void* ptr) { if (ptr == NULL) { return NULL; } else { - // TODO: PHYSICAL_TO_VIRTUAL macro - return (void*)((u32)ptr + 0x80000000); + return (void*)PHYSICAL_TO_VIRTUAL(ptr); } }
\ No newline at end of file |
